@gofynd/fdk-client-javascript 0.1.37 → 1.0.1

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 (353) hide show
  1. package/README.md +24 -0
  2. package/application.d.ts +2 -1
  3. package/application.js +2 -1
  4. package/documentation/application/CART.md +315 -289
  5. package/documentation/application/CATALOG.md +438 -415
  6. package/documentation/application/FILESTORAGE.md +2 -0
  7. package/documentation/application/LEAD.md +18 -18
  8. package/documentation/application/LOGISTIC.md +45 -45
  9. package/documentation/application/ORDER.md +277 -277
  10. package/documentation/application/PAYMENT.md +251 -251
  11. package/documentation/application/POSCART.md +318 -292
  12. package/documentation/application/REWARDS.md +1 -0
  13. package/documentation/application/USER.md +19 -14
  14. package/documentation/platform/CART.md +465 -462
  15. package/documentation/platform/CATALOG.md +2792 -2711
  16. package/documentation/platform/COMPANYPROFILE.md +200 -362
  17. package/documentation/platform/DISCOUNT.md +86 -0
  18. package/documentation/platform/FILESTORAGE.md +2 -0
  19. package/documentation/platform/LEAD.md +60 -60
  20. package/documentation/platform/ORDER.md +1451 -1654
  21. package/documentation/platform/PAYMENT.md +94 -94
  22. package/documentation/platform/REWARDS.md +145 -0
  23. package/documentation/platform/USER.md +24 -14
  24. package/index.d.ts +4 -1
  25. package/index.js +13 -4
  26. package/package.json +9 -9
  27. package/platform.d.ts +2 -1
  28. package/platform.js +3 -2
  29. package/public.d.ts +1 -0
  30. package/public.js +3 -2
  31. package/sdk/application/ApplicationAPIClient.js +3 -1
  32. package/sdk/application/ApplicationClient.d.ts +16 -16
  33. package/sdk/application/ApplicationClient.js +32 -16
  34. package/sdk/application/ApplicationConfig.js +3 -2
  35. package/sdk/application/ApplicationModels.d.ts +0 -832
  36. package/sdk/application/ApplicationModels.js +3 -10574
  37. package/sdk/application/{client → Cart}/CartApplicationClient.d.ts +9 -3
  38. package/sdk/application/{client → Cart}/CartApplicationClient.js +316 -8
  39. package/sdk/application/Cart/CartApplicationModel.d.ts +81 -0
  40. package/sdk/application/Cart/CartApplicationModel.js +1136 -0
  41. package/sdk/application/{models/CartValidator.js → Cart/CartApplicationValidator.js} +17 -12
  42. package/sdk/application/{client → Catalog}/CatalogApplicationClient.d.ts +8 -5
  43. package/sdk/application/{client → Catalog}/CatalogApplicationClient.js +389 -8
  44. package/sdk/application/Catalog/CatalogApplicationModel.d.ts +117 -0
  45. package/sdk/application/Catalog/CatalogApplicationModel.js +1606 -0
  46. package/sdk/application/{models/CatalogValidator.js → Catalog/CatalogApplicationValidator.js} +4 -1
  47. package/sdk/application/{client → Common}/CommonApplicationClient.js +24 -2
  48. package/sdk/application/Common/CommonApplicationModel.d.ts +20 -0
  49. package/sdk/application/Common/CommonApplicationModel.js +228 -0
  50. package/sdk/{platform/models/CommonValidator.js → application/Common/CommonApplicationValidator.js} +3 -1
  51. package/sdk/application/{client → Communication}/CommunicationApplicationClient.js +43 -2
  52. package/sdk/application/Communication/CommunicationApplicationModel.d.ts +15 -0
  53. package/sdk/application/Communication/CommunicationApplicationModel.js +144 -0
  54. package/sdk/application/{models/CommunicationValidator.js → Communication/CommunicationApplicationValidator.js} +5 -3
  55. package/sdk/application/{client → Configuration}/ConfigurationApplicationClient.js +202 -2
  56. package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +111 -0
  57. package/sdk/application/Configuration/ConfigurationApplicationModel.js +1182 -0
  58. package/sdk/application/{models/ConfigurationValidator.js → Configuration/ConfigurationApplicationValidator.js} +4 -2
  59. package/sdk/application/{client → Content}/ContentApplicationClient.js +217 -2
  60. package/sdk/application/Content/ContentApplicationModel.d.ts +105 -0
  61. package/sdk/application/Content/ContentApplicationModel.js +1349 -0
  62. package/sdk/application/{models/ContentValidator.js → Content/ContentApplicationValidator.js} +3 -1
  63. package/sdk/application/{client → FileStorage}/FileStorageApplicationClient.js +35 -2
  64. package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +21 -0
  65. package/sdk/application/FileStorage/FileStorageApplicationModel.js +244 -0
  66. package/sdk/application/{models/FileStorageValidator.js → FileStorage/FileStorageApplicationValidator.js} +6 -4
  67. package/sdk/application/{client → Lead}/LeadApplicationClient.js +83 -2
  68. package/sdk/application/Lead/LeadApplicationModel.d.ts +55 -0
  69. package/sdk/application/Lead/LeadApplicationModel.js +690 -0
  70. package/sdk/application/{models/LeadValidator.js → Lead/LeadApplicationValidator.js} +6 -4
  71. package/sdk/application/{client → Logistic}/LogisticApplicationClient.js +46 -2
  72. package/sdk/application/Logistic/LogisticApplicationModel.d.ts +26 -0
  73. package/sdk/application/Logistic/LogisticApplicationModel.js +286 -0
  74. package/sdk/application/{models/LogisticValidator.js → Logistic/LogisticApplicationValidator.js} +5 -3
  75. package/sdk/application/{client → Order}/OrderApplicationClient.js +148 -2
  76. package/sdk/application/Order/OrderApplicationModel.d.ts +67 -0
  77. package/sdk/application/Order/OrderApplicationModel.js +872 -0
  78. package/sdk/application/{models/OrderValidator.js → Order/OrderApplicationValidator.js} +5 -3
  79. package/sdk/application/{client → Payment}/PaymentApplicationClient.js +530 -2
  80. package/sdk/application/Payment/PaymentApplicationModel.d.ts +96 -0
  81. package/sdk/application/Payment/PaymentApplicationModel.js +1318 -0
  82. package/sdk/application/{models/PaymentValidator.js → Payment/PaymentApplicationValidator.js} +25 -23
  83. package/sdk/application/{client → PosCart}/PosCartApplicationClient.d.ts +9 -3
  84. package/sdk/application/{client → PosCart}/PosCartApplicationClient.js +343 -8
  85. package/sdk/application/PosCart/PosCartApplicationModel.d.ts +79 -0
  86. package/sdk/application/PosCart/PosCartApplicationModel.js +1132 -0
  87. package/sdk/application/{models/PosCartValidator.js → PosCart/PosCartApplicationValidator.js} +18 -13
  88. package/sdk/application/{client → Rewards}/RewardsApplicationClient.js +83 -2
  89. package/sdk/application/Rewards/RewardsApplicationModel.d.ts +23 -0
  90. package/sdk/application/Rewards/RewardsApplicationModel.js +276 -0
  91. package/sdk/application/{models/RewardsValidator.js → Rewards/RewardsApplicationValidator.js} +6 -4
  92. package/sdk/application/{client → Share}/ShareApplicationClient.js +89 -2
  93. package/sdk/application/Share/ShareApplicationModel.d.ts +16 -0
  94. package/sdk/application/Share/ShareApplicationModel.js +178 -0
  95. package/sdk/application/{models/ShareValidator.js → Share/ShareApplicationValidator.js} +4 -2
  96. package/sdk/application/{client → Theme}/ThemeApplicationClient.js +46 -2
  97. package/sdk/application/Theme/ThemeApplicationModel.d.ts +49 -0
  98. package/sdk/application/Theme/ThemeApplicationModel.js +486 -0
  99. package/sdk/application/{models/ThemeValidator.js → Theme/ThemeApplicationValidator.js} +3 -1
  100. package/sdk/application/{client → User}/UserApplicationClient.js +407 -2
  101. package/sdk/application/User/UserApplicationModel.d.ts +95 -0
  102. package/sdk/application/User/UserApplicationModel.js +998 -0
  103. package/sdk/application/{models/UserValidator.js → User/UserApplicationValidator.js} +31 -29
  104. package/sdk/application/index.d.ts +18 -0
  105. package/sdk/application/index.js +33 -0
  106. package/sdk/common/AxiosHelper.js +23 -10
  107. package/sdk/common/Logger.d.ts +2 -0
  108. package/sdk/common/Logger.js +6 -0
  109. package/sdk/common/curlHelper.d.ts +2 -0
  110. package/sdk/common/curlHelper.js +95 -0
  111. package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.d.ts +101 -0
  112. package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.js +399 -0
  113. package/sdk/platform/Analytics/AnalyticsPlatformApplicationValidator.d.ts +11 -0
  114. package/sdk/platform/Analytics/AnalyticsPlatformApplicationValidator.js +56 -0
  115. package/sdk/platform/{client → Analytics}/AnalyticsPlatformClient.js +60 -2
  116. package/sdk/platform/Analytics/AnalyticsPlatformModel.d.ts +23 -0
  117. package/sdk/platform/Analytics/AnalyticsPlatformModel.js +252 -0
  118. package/sdk/platform/{models/AnalyticsValidator.js → Analytics/AnalyticsPlatformValidator.js} +5 -4
  119. package/sdk/platform/{client → AuditTrail}/AuditTrailPlatformClient.js +48 -2
  120. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.d.ts +18 -0
  121. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.js +144 -0
  122. package/sdk/platform/{models/AuditTrailValidator.js → AuditTrail/AuditTrailPlatformValidator.js} +3 -2
  123. package/sdk/platform/{client → Billing}/BillingPlatformClient.js +162 -2
  124. package/sdk/platform/Billing/BillingPlatformModel.d.ts +65 -0
  125. package/sdk/platform/Billing/BillingPlatformModel.js +906 -0
  126. package/sdk/platform/{models/BillingValidator.js → Billing/BillingPlatformValidator.js} +6 -5
  127. package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +293 -0
  128. package/sdk/platform/Cart/CartPlatformApplicationClient.js +1001 -0
  129. package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +20 -0
  130. package/sdk/platform/Cart/CartPlatformApplicationValidator.js +138 -0
  131. package/sdk/platform/Cart/CartPlatformModel.d.ts +104 -0
  132. package/sdk/platform/Cart/CartPlatformModel.js +1516 -0
  133. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +856 -0
  134. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +2927 -0
  135. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +56 -0
  136. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +389 -0
  137. package/sdk/platform/{client → Catalog}/CatalogPlatformClient.js +1402 -349
  138. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +317 -0
  139. package/sdk/platform/Catalog/CatalogPlatformModel.js +4702 -0
  140. package/sdk/platform/{models/CatalogValidator.js → Catalog/CatalogPlatformValidator.js} +92 -91
  141. package/sdk/platform/{client → Common}/CommonPlatformClient.js +28 -2
  142. package/sdk/platform/Common/CommonPlatformModel.d.ts +20 -0
  143. package/sdk/platform/Common/CommonPlatformModel.js +228 -0
  144. package/sdk/{application/models/CommonValidator.js → platform/Common/CommonPlatformValidator.js} +2 -1
  145. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +611 -0
  146. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +2243 -0
  147. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +43 -0
  148. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +277 -0
  149. package/sdk/platform/{client → Communication}/CommunicationPlatformClient.js +17 -2
  150. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +102 -0
  151. package/sdk/platform/Communication/CommunicationPlatformModel.js +1312 -0
  152. package/sdk/platform/{models/CommunicationValidator.js → Communication/CommunicationPlatformValidator.js} +2 -1
  153. package/sdk/platform/{client → CompanyProfile}/CompanyProfilePlatformClient.d.ts +0 -9
  154. package/sdk/platform/{client → CompanyProfile}/CompanyProfilePlatformClient.js +176 -28
  155. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +44 -0
  156. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +706 -0
  157. package/sdk/platform/{models/CompanyProfileValidator.d.ts → CompanyProfile/CompanyProfilePlatformValidator.d.ts} +0 -1
  158. package/sdk/platform/{models/CompanyProfileValidator.js → CompanyProfile/CompanyProfilePlatformValidator.js} +9 -14
  159. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +309 -0
  160. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +1322 -0
  161. package/sdk/platform/Configuration/ConfigurationPlatformApplicationValidator.d.ts +31 -0
  162. package/sdk/platform/Configuration/ConfigurationPlatformApplicationValidator.js +164 -0
  163. package/sdk/platform/{client → Configuration}/ConfigurationPlatformClient.js +284 -2
  164. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +185 -0
  165. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +2072 -0
  166. package/sdk/platform/{models/ConfigurationValidator.js → Configuration/ConfigurationPlatformValidator.js} +9 -8
  167. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +781 -0
  168. package/sdk/platform/Content/ContentPlatformApplicationClient.js +3074 -0
  169. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +71 -0
  170. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +422 -0
  171. package/sdk/platform/Content/ContentPlatformModel.d.ts +105 -0
  172. package/sdk/platform/Content/ContentPlatformModel.js +1349 -0
  173. package/sdk/platform/{client → Discount}/DiscountPlatformClient.d.ts +11 -0
  174. package/sdk/platform/{client → Discount}/DiscountPlatformClient.js +187 -2
  175. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +15 -0
  176. package/sdk/platform/Discount/DiscountPlatformModel.js +176 -0
  177. package/sdk/platform/{models/DiscountValidator.d.ts → Discount/DiscountPlatformValidator.d.ts} +1 -0
  178. package/sdk/platform/{models/DiscountValidator.js → Discount/DiscountPlatformValidator.js} +13 -5
  179. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +114 -0
  180. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +301 -0
  181. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.d.ts +7 -0
  182. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.js +38 -0
  183. package/sdk/platform/{client → FileStorage}/FileStoragePlatformClient.js +78 -2
  184. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +21 -0
  185. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +244 -0
  186. package/sdk/platform/{models/FileStorageValidator.js → FileStorage/FileStoragePlatformValidator.js} +6 -5
  187. package/sdk/platform/{client → Inventory}/InventoryPlatformClient.js +163 -2
  188. package/sdk/platform/Inventory/InventoryPlatformModel.d.ts +62 -0
  189. package/sdk/platform/Inventory/InventoryPlatformModel.js +1178 -0
  190. package/sdk/platform/{models/InventoryValidator.js → Inventory/InventoryPlatformValidator.js} +5 -4
  191. package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +138 -0
  192. package/sdk/platform/Lead/LeadPlatformApplicationClient.js +559 -0
  193. package/sdk/platform/Lead/LeadPlatformApplicationValidator.d.ts +16 -0
  194. package/sdk/platform/Lead/LeadPlatformApplicationValidator.js +90 -0
  195. package/sdk/platform/{client → Lead}/LeadPlatformClient.js +142 -2
  196. package/sdk/platform/Lead/LeadPlatformModel.d.ts +55 -0
  197. package/sdk/platform/Lead/LeadPlatformModel.js +690 -0
  198. package/sdk/platform/{models/LeadValidator.js → Lead/LeadPlatformValidator.js} +7 -6
  199. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +59 -0
  200. package/sdk/platform/Order/OrderPlatformApplicationClient.js +207 -0
  201. package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +6 -0
  202. package/sdk/platform/Order/OrderPlatformApplicationValidator.js +37 -0
  203. package/sdk/platform/{client → Order}/OrderPlatformClient.d.ts +24 -55
  204. package/sdk/platform/{client → Order}/OrderPlatformClient.js +693 -146
  205. package/sdk/platform/Order/OrderPlatformModel.d.ts +222 -0
  206. package/sdk/platform/Order/OrderPlatformModel.js +3466 -0
  207. package/sdk/platform/{models/OrderValidator.d.ts → Order/OrderPlatformValidator.d.ts} +2 -3
  208. package/sdk/platform/{models/OrderValidator.js → Order/OrderPlatformValidator.js} +32 -48
  209. package/sdk/platform/Partner/PartnerPlatformApplicationClient.d.ts +30 -0
  210. package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +100 -0
  211. package/sdk/platform/Partner/PartnerPlatformApplicationValidator.d.ts +5 -0
  212. package/sdk/platform/Partner/PartnerPlatformApplicationValidator.js +20 -0
  213. package/sdk/platform/Partner/PartnerPlatformModel.d.ts +7 -0
  214. package/sdk/platform/Partner/PartnerPlatformModel.js +54 -0
  215. package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +108 -0
  216. package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +498 -0
  217. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.d.ts +14 -0
  218. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.js +73 -0
  219. package/sdk/platform/{client → Payment}/PaymentPlatformClient.js +141 -2
  220. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +44 -0
  221. package/sdk/platform/Payment/PaymentPlatformModel.js +552 -0
  222. package/sdk/platform/{models/PaymentValidator.js → Payment/PaymentPlatformValidator.js} +6 -5
  223. package/sdk/platform/PlatformAPIClient.js +2 -1
  224. package/sdk/platform/PlatformApplicationClient.d.ts +2824 -18486
  225. package/sdk/platform/PlatformApplicationClient.js +3772 -13928
  226. package/sdk/platform/PlatformClient.d.ts +2824 -2881
  227. package/sdk/platform/PlatformClient.js +3710 -3145
  228. package/sdk/platform/PlatformConfig.js +2 -1
  229. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.d.ts +150 -0
  230. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +597 -0
  231. package/sdk/platform/Rewards/RewardsPlatformApplicationValidator.d.ts +16 -0
  232. package/sdk/platform/Rewards/RewardsPlatformApplicationValidator.js +91 -0
  233. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +24 -0
  234. package/sdk/platform/Rewards/RewardsPlatformModel.js +294 -0
  235. package/sdk/platform/Share/SharePlatformApplicationClient.d.ts +72 -0
  236. package/sdk/platform/Share/SharePlatformApplicationClient.js +235 -0
  237. package/sdk/platform/Share/SharePlatformApplicationValidator.d.ts +7 -0
  238. package/sdk/platform/Share/SharePlatformApplicationValidator.js +35 -0
  239. package/sdk/platform/Share/SharePlatformModel.d.ts +15 -0
  240. package/sdk/platform/Share/SharePlatformModel.js +170 -0
  241. package/sdk/platform/Theme/ThemePlatformApplicationClient.d.ts +238 -0
  242. package/sdk/platform/Theme/ThemePlatformApplicationClient.js +997 -0
  243. package/sdk/platform/Theme/ThemePlatformApplicationValidator.d.ts +27 -0
  244. package/sdk/platform/Theme/ThemePlatformApplicationValidator.js +155 -0
  245. package/sdk/platform/Theme/ThemePlatformModel.d.ts +49 -0
  246. package/sdk/platform/Theme/ThemePlatformModel.js +486 -0
  247. package/sdk/platform/User/UserPlatformApplicationClient.d.ts +121 -0
  248. package/sdk/platform/User/UserPlatformApplicationClient.js +506 -0
  249. package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +15 -0
  250. package/sdk/platform/User/UserPlatformApplicationValidator.js +79 -0
  251. package/sdk/platform/User/UserPlatformModel.d.ts +95 -0
  252. package/sdk/platform/User/UserPlatformModel.js +998 -0
  253. package/sdk/platform/{client → Webhook}/WebhookPlatformClient.js +92 -2
  254. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +17 -0
  255. package/sdk/platform/Webhook/WebhookPlatformModel.js +208 -0
  256. package/sdk/platform/{models/WebhookValidator.js → Webhook/WebhookPlatformValidator.js} +4 -3
  257. package/sdk/platform/index.d.ts +24 -0
  258. package/sdk/platform/index.js +45 -0
  259. package/sdk/public/{client → Configuration}/ConfigurationPublicClient.js +26 -1
  260. package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +20 -0
  261. package/sdk/public/Configuration/ConfigurationPublicModel.js +230 -0
  262. package/sdk/public/{models/ConfigurationValidator.js → Configuration/ConfigurationPublicValidator.js} +3 -1
  263. package/sdk/public/{client → Inventory}/InventoryPublicClient.js +76 -1
  264. package/sdk/public/Inventory/InventoryPublicModel.d.ts +22 -0
  265. package/sdk/public/Inventory/InventoryPublicModel.js +334 -0
  266. package/sdk/public/{models/InventoryValidator.js → Inventory/InventoryPublicValidator.js} +4 -2
  267. package/sdk/public/PublicClient.d.ts +3 -3
  268. package/sdk/public/PublicClient.js +8 -3
  269. package/sdk/public/{client → Webhook}/WebhookPublicClient.js +30 -1
  270. package/sdk/public/Webhook/WebhookPublicModel.d.ts +17 -0
  271. package/sdk/public/Webhook/WebhookPublicModel.js +208 -0
  272. package/sdk/public/{models/WebhookValidator.js → Webhook/WebhookPublicValidator.js} +4 -2
  273. package/sdk/public/index.d.ts +5 -0
  274. package/sdk/public/index.js +7 -0
  275. package/sdk/platform/PlatformApplicationModels.d.ts +0 -328
  276. package/sdk/platform/PlatformApplicationModels.js +0 -22658
  277. package/sdk/platform/PlatformModels.d.ts +0 -1477
  278. package/sdk/platform/PlatformModels.js +0 -20646
  279. package/sdk/platform/models/CartValidator.d.ts +0 -0
  280. package/sdk/platform/models/CartValidator.js +0 -0
  281. package/sdk/platform/models/ContentValidator.d.ts +0 -0
  282. package/sdk/platform/models/ContentValidator.js +0 -0
  283. package/sdk/platform/models/PartnerValidator.d.ts +0 -0
  284. package/sdk/platform/models/PartnerValidator.js +0 -0
  285. package/sdk/platform/models/RewardsValidator.d.ts +0 -0
  286. package/sdk/platform/models/RewardsValidator.js +0 -0
  287. package/sdk/platform/models/ShareValidator.d.ts +0 -0
  288. package/sdk/platform/models/ShareValidator.js +0 -0
  289. package/sdk/platform/models/ThemeValidator.d.ts +0 -0
  290. package/sdk/platform/models/ThemeValidator.js +0 -0
  291. package/sdk/platform/models/UserValidator.d.ts +0 -0
  292. package/sdk/platform/models/UserValidator.js +0 -0
  293. package/sdk/public/PublicModels.d.ts +0 -50
  294. package/sdk/public/PublicModels.js +0 -712
  295. package/sdk/application/{models/CartValidator.d.ts → Cart/CartApplicationValidator.d.ts} +0 -0
  296. package/sdk/application/{models/CatalogValidator.d.ts → Catalog/CatalogApplicationValidator.d.ts} +0 -0
  297. package/sdk/application/{client → Common}/CommonApplicationClient.d.ts +0 -0
  298. package/sdk/application/{models/CommonValidator.d.ts → Common/CommonApplicationValidator.d.ts} +0 -0
  299. package/sdk/application/{client → Communication}/CommunicationApplicationClient.d.ts +0 -0
  300. package/sdk/application/{models/CommunicationValidator.d.ts → Communication/CommunicationApplicationValidator.d.ts} +0 -0
  301. package/sdk/application/{client → Configuration}/ConfigurationApplicationClient.d.ts +0 -0
  302. package/sdk/application/{models/ConfigurationValidator.d.ts → Configuration/ConfigurationApplicationValidator.d.ts} +0 -0
  303. package/sdk/application/{client → Content}/ContentApplicationClient.d.ts +0 -0
  304. package/sdk/application/{models/ContentValidator.d.ts → Content/ContentApplicationValidator.d.ts} +0 -0
  305. package/sdk/application/{client → FileStorage}/FileStorageApplicationClient.d.ts +0 -0
  306. package/sdk/application/{models/FileStorageValidator.d.ts → FileStorage/FileStorageApplicationValidator.d.ts} +0 -0
  307. package/sdk/application/{client → Lead}/LeadApplicationClient.d.ts +0 -0
  308. package/sdk/application/{models/LeadValidator.d.ts → Lead/LeadApplicationValidator.d.ts} +0 -0
  309. package/sdk/application/{client → Logistic}/LogisticApplicationClient.d.ts +0 -0
  310. package/sdk/application/{models/LogisticValidator.d.ts → Logistic/LogisticApplicationValidator.d.ts} +0 -0
  311. package/sdk/application/{client → Order}/OrderApplicationClient.d.ts +0 -0
  312. package/sdk/application/{models/OrderValidator.d.ts → Order/OrderApplicationValidator.d.ts} +0 -0
  313. package/sdk/application/{client → Payment}/PaymentApplicationClient.d.ts +0 -0
  314. package/sdk/application/{models/PaymentValidator.d.ts → Payment/PaymentApplicationValidator.d.ts} +0 -0
  315. package/sdk/application/{models/PosCartValidator.d.ts → PosCart/PosCartApplicationValidator.d.ts} +0 -0
  316. package/sdk/application/{client → Rewards}/RewardsApplicationClient.d.ts +0 -0
  317. package/sdk/application/{models/RewardsValidator.d.ts → Rewards/RewardsApplicationValidator.d.ts} +0 -0
  318. package/sdk/application/{client → Share}/ShareApplicationClient.d.ts +0 -0
  319. package/sdk/application/{models/ShareValidator.d.ts → Share/ShareApplicationValidator.d.ts} +0 -0
  320. package/sdk/application/{client → Theme}/ThemeApplicationClient.d.ts +0 -0
  321. package/sdk/application/{models/ThemeValidator.d.ts → Theme/ThemeApplicationValidator.d.ts} +0 -0
  322. package/sdk/application/{client → User}/UserApplicationClient.d.ts +0 -0
  323. package/sdk/application/{models/UserValidator.d.ts → User/UserApplicationValidator.d.ts} +0 -0
  324. package/sdk/platform/{client → Analytics}/AnalyticsPlatformClient.d.ts +0 -0
  325. package/sdk/platform/{models/AnalyticsValidator.d.ts → Analytics/AnalyticsPlatformValidator.d.ts} +0 -0
  326. package/sdk/platform/{client → AuditTrail}/AuditTrailPlatformClient.d.ts +0 -0
  327. package/sdk/platform/{models/AuditTrailValidator.d.ts → AuditTrail/AuditTrailPlatformValidator.d.ts} +0 -0
  328. package/sdk/platform/{client → Billing}/BillingPlatformClient.d.ts +0 -0
  329. package/sdk/platform/{models/BillingValidator.d.ts → Billing/BillingPlatformValidator.d.ts} +0 -0
  330. package/sdk/platform/{client → Catalog}/CatalogPlatformClient.d.ts +149 -149
  331. package/sdk/platform/{models/CatalogValidator.d.ts → Catalog/CatalogPlatformValidator.d.ts} +21 -21
  332. /package/sdk/platform/{client → Common}/CommonPlatformClient.d.ts +0 -0
  333. /package/sdk/platform/{models/CommonValidator.d.ts → Common/CommonPlatformValidator.d.ts} +0 -0
  334. /package/sdk/platform/{client → Communication}/CommunicationPlatformClient.d.ts +0 -0
  335. /package/sdk/platform/{models/CommunicationValidator.d.ts → Communication/CommunicationPlatformValidator.d.ts} +0 -0
  336. /package/sdk/platform/{client → Configuration}/ConfigurationPlatformClient.d.ts +0 -0
  337. /package/sdk/platform/{models/ConfigurationValidator.d.ts → Configuration/ConfigurationPlatformValidator.d.ts} +0 -0
  338. /package/sdk/platform/{client → FileStorage}/FileStoragePlatformClient.d.ts +0 -0
  339. /package/sdk/platform/{models/FileStorageValidator.d.ts → FileStorage/FileStoragePlatformValidator.d.ts} +0 -0
  340. /package/sdk/platform/{client → Inventory}/InventoryPlatformClient.d.ts +0 -0
  341. /package/sdk/platform/{models/InventoryValidator.d.ts → Inventory/InventoryPlatformValidator.d.ts} +0 -0
  342. /package/sdk/platform/{client → Lead}/LeadPlatformClient.d.ts +0 -0
  343. /package/sdk/platform/{models/LeadValidator.d.ts → Lead/LeadPlatformValidator.d.ts} +0 -0
  344. /package/sdk/platform/{client → Payment}/PaymentPlatformClient.d.ts +0 -0
  345. /package/sdk/platform/{models/PaymentValidator.d.ts → Payment/PaymentPlatformValidator.d.ts} +0 -0
  346. /package/sdk/platform/{client → Webhook}/WebhookPlatformClient.d.ts +0 -0
  347. /package/sdk/platform/{models/WebhookValidator.d.ts → Webhook/WebhookPlatformValidator.d.ts} +0 -0
  348. /package/sdk/public/{client → Configuration}/ConfigurationPublicClient.d.ts +0 -0
  349. /package/sdk/public/{models/ConfigurationValidator.d.ts → Configuration/ConfigurationPublicValidator.d.ts} +0 -0
  350. /package/sdk/public/{client → Inventory}/InventoryPublicClient.d.ts +0 -0
  351. /package/sdk/public/{models/InventoryValidator.d.ts → Inventory/InventoryPublicValidator.d.ts} +0 -0
  352. /package/sdk/public/{client → Webhook}/WebhookPublicClient.d.ts +0 -0
  353. /package/sdk/public/{models/WebhookValidator.d.ts → Webhook/WebhookPublicValidator.d.ts} +0 -0
@@ -0,0 +1,1606 @@
1
+ const Joi = require("joi");
2
+
3
+ class CatalogModel {
4
+ static ProductListingActionPage() {
5
+ return Joi.object({
6
+ type: Joi.string().allow(""),
7
+
8
+ query: Joi.any(),
9
+
10
+ params: Joi.any(),
11
+ });
12
+ }
13
+
14
+ static ProductListingAction() {
15
+ return Joi.object({
16
+ type: Joi.string().allow(""),
17
+
18
+ page: CatalogModel.ProductListingActionPage(),
19
+ });
20
+ }
21
+
22
+ static Meta() {
23
+ return Joi.object({
24
+ source: Joi.string().allow(""),
25
+ });
26
+ }
27
+
28
+ static Media() {
29
+ return Joi.object({
30
+ type: Joi.string().allow(""),
31
+
32
+ meta: CatalogModel.Meta(),
33
+
34
+ alt: Joi.string().allow(""),
35
+
36
+ url: Joi.string().allow(""),
37
+ });
38
+ }
39
+
40
+ static ProductBrand() {
41
+ return Joi.object({
42
+ description: Joi.string().allow(""),
43
+
44
+ action: CatalogModel.ProductListingAction(),
45
+
46
+ uid: Joi.number(),
47
+
48
+ name: Joi.string().allow(""),
49
+
50
+ logo: CatalogModel.Media(),
51
+ });
52
+ }
53
+
54
+ static NetQuantity() {
55
+ return Joi.object({
56
+ value: Joi.number(),
57
+
58
+ unit: Joi.any(),
59
+ });
60
+ }
61
+
62
+ static ProductCategoryMap() {
63
+ return Joi.object({
64
+ l1: CatalogModel.ProductBrand(),
65
+
66
+ l2: CatalogModel.ProductBrand(),
67
+
68
+ l3: CatalogModel.ProductBrand(),
69
+ });
70
+ }
71
+
72
+ static ApplicationItemSEO() {
73
+ return Joi.object({
74
+ description: Joi.any(),
75
+
76
+ title: Joi.any(),
77
+ });
78
+ }
79
+
80
+ static ProductDetailAttribute() {
81
+ return Joi.object({
82
+ type: Joi.string().allow(""),
83
+
84
+ key: Joi.string().allow(""),
85
+
86
+ value: Joi.string().allow(""),
87
+ });
88
+ }
89
+
90
+ static ProductDetailGroupedAttribute() {
91
+ return Joi.object({
92
+ details: Joi.array().items(CatalogModel.ProductDetailAttribute()),
93
+
94
+ title: Joi.string().allow(""),
95
+ });
96
+ }
97
+
98
+ static Price() {
99
+ return Joi.object({
100
+ min: Joi.number(),
101
+
102
+ max: Joi.number(),
103
+
104
+ currency_code: Joi.string().allow(""),
105
+
106
+ currency_symbol: Joi.string().allow(""),
107
+ });
108
+ }
109
+
110
+ static ProductListingPrice() {
111
+ return Joi.object({
112
+ marked: CatalogModel.Price(),
113
+
114
+ effective: CatalogModel.Price(),
115
+ });
116
+ }
117
+
118
+ static CustomMetaFields() {
119
+ return Joi.object({
120
+ value: Joi.string().allow("").required(),
121
+
122
+ key: Joi.string().allow("").required(),
123
+ });
124
+ }
125
+
126
+ static ApplicationItemMOQ() {
127
+ return Joi.object({
128
+ increment_unit: Joi.number(),
129
+
130
+ maximum: Joi.number(),
131
+
132
+ minimum: Joi.number(),
133
+ });
134
+ }
135
+
136
+ static ProductDetail() {
137
+ return Joi.object({
138
+ attributes: Joi.any(),
139
+
140
+ brand: CatalogModel.ProductBrand(),
141
+
142
+ highlights: Joi.array().items(Joi.string().allow("")),
143
+
144
+ teaser_tag: Joi.string().allow(""),
145
+
146
+ net_quantity: CatalogModel.NetQuantity(),
147
+
148
+ similars: Joi.array().items(Joi.string().allow("")),
149
+
150
+ action: CatalogModel.ProductListingAction(),
151
+
152
+ category_map: CatalogModel.ProductCategoryMap(),
153
+
154
+ color: Joi.string().allow(""),
155
+
156
+ is_dependent: Joi.boolean(),
157
+
158
+ slug: Joi.string().allow("").required(),
159
+
160
+ seo: CatalogModel.ApplicationItemSEO(),
161
+
162
+ has_variant: Joi.boolean(),
163
+
164
+ item_code: Joi.string().allow(""),
165
+
166
+ grouped_attributes: Joi.array().items(
167
+ CatalogModel.ProductDetailGroupedAttribute()
168
+ ),
169
+
170
+ medias: Joi.array().items(CatalogModel.Media()),
171
+
172
+ categories: Joi.array().items(CatalogModel.ProductBrand()),
173
+
174
+ tags: Joi.array().items(Joi.string().allow("")),
175
+
176
+ rating: Joi.number(),
177
+
178
+ type: Joi.string().allow(""),
179
+
180
+ rating_count: Joi.number(),
181
+
182
+ description: Joi.string().allow(""),
183
+
184
+ discount: Joi.string().allow(""),
185
+
186
+ short_description: Joi.string().allow(""),
187
+
188
+ _custom_json: Joi.any(),
189
+
190
+ uid: Joi.number(),
191
+
192
+ image_nature: Joi.string().allow(""),
193
+
194
+ price: CatalogModel.ProductListingPrice(),
195
+
196
+ _custom_meta: Joi.array().items(CatalogModel.CustomMetaFields()),
197
+
198
+ moq: CatalogModel.ApplicationItemMOQ(),
199
+
200
+ item_type: Joi.string().allow(""),
201
+
202
+ name: Joi.string().allow(""),
203
+
204
+ tryouts: Joi.array().items(Joi.string().allow("")),
205
+
206
+ product_online_date: Joi.string().allow(""),
207
+ });
208
+ }
209
+
210
+ static ErrorResponse() {
211
+ return Joi.object({
212
+ error: Joi.string().allow(""),
213
+ });
214
+ }
215
+
216
+ static Dimension() {
217
+ return Joi.object({
218
+ length: Joi.number().required(),
219
+
220
+ unit: Joi.string().allow("").required(),
221
+
222
+ height: Joi.number().required(),
223
+
224
+ width: Joi.number().required(),
225
+
226
+ is_default: Joi.boolean().required(),
227
+ });
228
+ }
229
+
230
+ static Weight() {
231
+ return Joi.object({
232
+ unit: Joi.string().allow("").required(),
233
+
234
+ shipping: Joi.number().required(),
235
+
236
+ is_default: Joi.boolean().required(),
237
+ });
238
+ }
239
+
240
+ static ProductSize() {
241
+ return Joi.object({
242
+ quantity: Joi.number(),
243
+
244
+ dimension: CatalogModel.Dimension(),
245
+
246
+ value: Joi.string().allow(""),
247
+
248
+ display: Joi.string().allow(""),
249
+
250
+ is_available: Joi.boolean(),
251
+
252
+ seller_identifiers: Joi.array().items(Joi.string().allow("")),
253
+
254
+ weight: CatalogModel.Weight(),
255
+ });
256
+ }
257
+
258
+ static ProductSizeStores() {
259
+ return Joi.object({
260
+ count: Joi.number(),
261
+ });
262
+ }
263
+
264
+ static ColumnHeader() {
265
+ return Joi.object({
266
+ value: Joi.string().allow(""),
267
+
268
+ convertable: Joi.boolean(),
269
+ });
270
+ }
271
+
272
+ static ColumnHeaders() {
273
+ return Joi.object({
274
+ col_3: CatalogModel.ColumnHeader(),
275
+
276
+ col_6: CatalogModel.ColumnHeader(),
277
+
278
+ col_5: CatalogModel.ColumnHeader(),
279
+
280
+ col_1: CatalogModel.ColumnHeader(),
281
+
282
+ col_2: CatalogModel.ColumnHeader(),
283
+
284
+ col_4: CatalogModel.ColumnHeader(),
285
+ });
286
+ }
287
+
288
+ static SizeChartValues() {
289
+ return Joi.object({
290
+ col_3: Joi.string().allow(""),
291
+
292
+ col_6: Joi.string().allow(""),
293
+
294
+ col_5: Joi.string().allow(""),
295
+
296
+ col_1: Joi.string().allow(""),
297
+
298
+ col_2: Joi.string().allow(""),
299
+
300
+ col_4: Joi.string().allow(""),
301
+ });
302
+ }
303
+
304
+ static SizeChart() {
305
+ return Joi.object({
306
+ image: Joi.string().allow(""),
307
+
308
+ unit: Joi.string().allow(""),
309
+
310
+ headers: CatalogModel.ColumnHeaders(),
311
+
312
+ description: Joi.string().allow(""),
313
+
314
+ size_tip: Joi.string().allow(""),
315
+
316
+ sizes: Joi.array().items(CatalogModel.SizeChartValues()),
317
+
318
+ title: Joi.string().allow(""),
319
+ });
320
+ }
321
+
322
+ static ProductSizes() {
323
+ return Joi.object({
324
+ discount: Joi.string().allow(""),
325
+
326
+ multi_size: Joi.boolean(),
327
+
328
+ sellable: Joi.boolean(),
329
+
330
+ sizes: Joi.array().items(CatalogModel.ProductSize()),
331
+
332
+ price: CatalogModel.ProductListingPrice(),
333
+
334
+ stores: CatalogModel.ProductSizeStores(),
335
+
336
+ size_chart: CatalogModel.SizeChart(),
337
+ });
338
+ }
339
+
340
+ static AttributeDetail() {
341
+ return Joi.object({
342
+ display: Joi.string().allow(""),
343
+
344
+ key: Joi.string().allow(""),
345
+
346
+ logo: Joi.string().allow(""),
347
+
348
+ description: Joi.string().allow(""),
349
+ });
350
+ }
351
+
352
+ static AttributeMetadata() {
353
+ return Joi.object({
354
+ details: Joi.array().items(CatalogModel.AttributeDetail()),
355
+
356
+ title: Joi.string().allow(""),
357
+ });
358
+ }
359
+
360
+ static ProductsComparisonResponse() {
361
+ return Joi.object({
362
+ items: Joi.array().items(CatalogModel.ProductDetail()),
363
+
364
+ attributes_metadata: Joi.array().items(CatalogModel.AttributeMetadata()),
365
+ });
366
+ }
367
+
368
+ static ProductCompareResponse() {
369
+ return Joi.object({
370
+ subtitle: Joi.string().allow(""),
371
+
372
+ items: Joi.array().items(CatalogModel.ProductDetail()),
373
+
374
+ title: Joi.string().allow(""),
375
+
376
+ attributes_metadata: Joi.array().items(CatalogModel.AttributeMetadata()),
377
+ });
378
+ }
379
+
380
+ static ProductFrequentlyComparedSimilarResponse() {
381
+ return Joi.object({
382
+ similars: CatalogModel.ProductCompareResponse(),
383
+ });
384
+ }
385
+
386
+ static ProductVariantItemResponse() {
387
+ return Joi.object({
388
+ color_name: Joi.string().allow(""),
389
+
390
+ action: CatalogModel.ProductListingAction(),
391
+
392
+ uid: Joi.number(),
393
+
394
+ _custom_meta: Joi.array().items(CatalogModel.CustomMetaFields()),
395
+
396
+ color: Joi.string().allow(""),
397
+
398
+ medias: Joi.array().items(CatalogModel.Media()),
399
+
400
+ value: Joi.string().allow(""),
401
+
402
+ name: Joi.string().allow(""),
403
+
404
+ is_available: Joi.boolean(),
405
+
406
+ slug: Joi.string().allow(""),
407
+ });
408
+ }
409
+
410
+ static ProductVariantResponse() {
411
+ return Joi.object({
412
+ key: Joi.string().allow(""),
413
+
414
+ items: Joi.array().items(CatalogModel.ProductVariantItemResponse()),
415
+
416
+ header: Joi.string().allow(""),
417
+
418
+ display_type: Joi.string().allow(""),
419
+ });
420
+ }
421
+
422
+ static ProductVariantsResponse() {
423
+ return Joi.object({
424
+ variants: Joi.array().items(CatalogModel.ProductVariantResponse()),
425
+ });
426
+ }
427
+
428
+ static ProductStockPrice() {
429
+ return Joi.object({
430
+ marked: Joi.number(),
431
+
432
+ currency: Joi.string().allow(""),
433
+
434
+ effective: Joi.number(),
435
+ });
436
+ }
437
+
438
+ static StoreDetail() {
439
+ return Joi.object({
440
+ id: Joi.number(),
441
+
442
+ name: Joi.string().allow(""),
443
+
444
+ code: Joi.string().allow(""),
445
+
446
+ city: Joi.string().allow(""),
447
+ });
448
+ }
449
+
450
+ static Seller() {
451
+ return Joi.object({
452
+ name: Joi.string().allow(""),
453
+
454
+ uid: Joi.number(),
455
+
456
+ count: Joi.number(),
457
+ });
458
+ }
459
+
460
+ static CompanyDetail() {
461
+ return Joi.object({
462
+ id: Joi.number(),
463
+
464
+ name: Joi.string().allow(""),
465
+ });
466
+ }
467
+
468
+ static ProductStockStatusItem() {
469
+ return Joi.object({
470
+ quantity: Joi.number(),
471
+
472
+ size: Joi.string().allow(""),
473
+
474
+ uid: Joi.string().allow(""),
475
+
476
+ price: CatalogModel.ProductStockPrice(),
477
+
478
+ identifier: Joi.any(),
479
+
480
+ store: CatalogModel.StoreDetail(),
481
+
482
+ seller: CatalogModel.Seller(),
483
+
484
+ item_id: Joi.number(),
485
+
486
+ company: CatalogModel.CompanyDetail(),
487
+ });
488
+ }
489
+
490
+ static ProductStockStatusResponse() {
491
+ return Joi.object({
492
+ items: Joi.array().items(CatalogModel.ProductStockStatusItem()),
493
+ });
494
+ }
495
+
496
+ static Page() {
497
+ return Joi.object({
498
+ item_total: Joi.number(),
499
+
500
+ next_id: Joi.string().allow(""),
501
+
502
+ has_previous: Joi.boolean(),
503
+
504
+ has_next: Joi.boolean(),
505
+
506
+ current: Joi.number(),
507
+
508
+ type: Joi.string().allow("").required(),
509
+
510
+ size: Joi.number(),
511
+ });
512
+ }
513
+
514
+ static ProductStockPolling() {
515
+ return Joi.object({
516
+ items: Joi.array().items(CatalogModel.ProductStockStatusItem()),
517
+
518
+ page: CatalogModel.Page().required(),
519
+ });
520
+ }
521
+
522
+ static ProductSortOn() {
523
+ return Joi.object({
524
+ value: Joi.string().allow(""),
525
+
526
+ name: Joi.string().allow(""),
527
+
528
+ is_selected: Joi.boolean(),
529
+ });
530
+ }
531
+
532
+ static ProductFiltersKey() {
533
+ return Joi.object({
534
+ name: Joi.string().allow("").required(),
535
+
536
+ display: Joi.string().allow("").required(),
537
+
538
+ logo: Joi.string().allow(""),
539
+
540
+ kind: Joi.string().allow(""),
541
+ });
542
+ }
543
+
544
+ static ProductFiltersValue() {
545
+ return Joi.object({
546
+ is_selected: Joi.boolean().required(),
547
+
548
+ query_format: Joi.string().allow(""),
549
+
550
+ count: Joi.number(),
551
+
552
+ selected_min: Joi.number(),
553
+
554
+ currency_symbol: Joi.string().allow(""),
555
+
556
+ selected_max: Joi.number(),
557
+
558
+ display_format: Joi.string().allow(""),
559
+
560
+ value: Joi.string().allow(""),
561
+
562
+ display: Joi.string().allow("").required(),
563
+
564
+ min: Joi.number(),
565
+
566
+ max: Joi.number(),
567
+
568
+ currency_code: Joi.string().allow(""),
569
+ });
570
+ }
571
+
572
+ static ProductFilters() {
573
+ return Joi.object({
574
+ key: CatalogModel.ProductFiltersKey().required(),
575
+
576
+ values: Joi.array().items(CatalogModel.ProductFiltersValue()).required(),
577
+ });
578
+ }
579
+
580
+ static ProductVariantListingResponse() {
581
+ return Joi.object({
582
+ total: Joi.number(),
583
+
584
+ items: Joi.array().items(CatalogModel.ProductVariantItemResponse()),
585
+
586
+ header: Joi.string().allow(""),
587
+
588
+ display_type: Joi.string().allow(""),
589
+
590
+ key: Joi.string().allow(""),
591
+ });
592
+ }
593
+
594
+ static ProductListingDetail() {
595
+ return Joi.object({
596
+ attributes: Joi.any(),
597
+
598
+ brand: CatalogModel.ProductBrand(),
599
+
600
+ highlights: Joi.array().items(Joi.string().allow("")),
601
+
602
+ teaser_tag: Joi.string().allow(""),
603
+
604
+ net_quantity: CatalogModel.NetQuantity(),
605
+
606
+ similars: Joi.array().items(Joi.string().allow("")),
607
+
608
+ action: CatalogModel.ProductListingAction(),
609
+
610
+ category_map: CatalogModel.ProductCategoryMap(),
611
+
612
+ color: Joi.string().allow(""),
613
+
614
+ is_dependent: Joi.boolean(),
615
+
616
+ slug: Joi.string().allow("").required(),
617
+
618
+ variants: Joi.array().items(CatalogModel.ProductVariantListingResponse()),
619
+
620
+ seo: CatalogModel.ApplicationItemSEO(),
621
+
622
+ has_variant: Joi.boolean(),
623
+
624
+ sellable: Joi.boolean(),
625
+
626
+ item_code: Joi.string().allow(""),
627
+
628
+ grouped_attributes: Joi.array().items(
629
+ CatalogModel.ProductDetailGroupedAttribute()
630
+ ),
631
+
632
+ medias: Joi.array().items(CatalogModel.Media()),
633
+
634
+ categories: Joi.array().items(CatalogModel.ProductBrand()),
635
+
636
+ identifiers: Joi.array().items(Joi.string().allow("")),
637
+
638
+ tags: Joi.array().items(Joi.string().allow("")),
639
+
640
+ rating: Joi.number(),
641
+
642
+ type: Joi.string().allow(""),
643
+
644
+ rating_count: Joi.number(),
645
+
646
+ description: Joi.string().allow(""),
647
+
648
+ discount: Joi.string().allow(""),
649
+
650
+ short_description: Joi.string().allow(""),
651
+
652
+ _custom_json: Joi.any(),
653
+
654
+ uid: Joi.number(),
655
+
656
+ image_nature: Joi.string().allow(""),
657
+
658
+ price: CatalogModel.ProductListingPrice(),
659
+
660
+ _custom_meta: Joi.array().items(CatalogModel.CustomMetaFields()),
661
+
662
+ sizes: Joi.array().items(Joi.string().allow("")),
663
+
664
+ moq: CatalogModel.ApplicationItemMOQ(),
665
+
666
+ item_type: Joi.string().allow(""),
667
+
668
+ name: Joi.string().allow(""),
669
+
670
+ tryouts: Joi.array().items(Joi.string().allow("")),
671
+
672
+ product_online_date: Joi.string().allow(""),
673
+ });
674
+ }
675
+
676
+ static ProductListingResponse() {
677
+ return Joi.object({
678
+ sort_on: Joi.array().items(CatalogModel.ProductSortOn()),
679
+
680
+ filters: Joi.array().items(CatalogModel.ProductFilters()),
681
+
682
+ items: Joi.array().items(CatalogModel.ProductListingDetail()),
683
+
684
+ page: CatalogModel.Page().required(),
685
+ });
686
+ }
687
+
688
+ static ImageUrls() {
689
+ return Joi.object({
690
+ landscape: CatalogModel.Media(),
691
+
692
+ portrait: CatalogModel.Media(),
693
+ });
694
+ }
695
+
696
+ static BrandItem() {
697
+ return Joi.object({
698
+ description: Joi.string().allow(""),
699
+
700
+ discount: Joi.string().allow(""),
701
+
702
+ departments: Joi.array().items(Joi.string().allow("")),
703
+
704
+ action: CatalogModel.ProductListingAction(),
705
+
706
+ uid: Joi.number(),
707
+
708
+ banners: CatalogModel.ImageUrls(),
709
+
710
+ name: Joi.string().allow(""),
711
+
712
+ logo: CatalogModel.Media(),
713
+
714
+ slug: Joi.string().allow(""),
715
+ });
716
+ }
717
+
718
+ static BrandListingResponse() {
719
+ return Joi.object({
720
+ items: Joi.array().items(CatalogModel.BrandItem()),
721
+
722
+ page: CatalogModel.Page().required(),
723
+ });
724
+ }
725
+
726
+ static BrandDetailResponse() {
727
+ return Joi.object({
728
+ description: Joi.string().allow(""),
729
+
730
+ _custom_json: Joi.any(),
731
+
732
+ banners: CatalogModel.ImageUrls(),
733
+
734
+ uid: Joi.number(),
735
+
736
+ name: Joi.string().allow(""),
737
+
738
+ logo: CatalogModel.Media(),
739
+ });
740
+ }
741
+
742
+ static DepartmentIdentifier() {
743
+ return Joi.object({
744
+ uid: Joi.number(),
745
+
746
+ slug: Joi.string().allow(""),
747
+ });
748
+ }
749
+
750
+ static ThirdLevelChild() {
751
+ return Joi.object({
752
+ childs: Joi.array().items(Joi.any()),
753
+
754
+ _custom_json: Joi.any(),
755
+
756
+ uid: Joi.number(),
757
+
758
+ banners: CatalogModel.ImageUrls(),
759
+
760
+ action: CatalogModel.ProductListingAction(),
761
+
762
+ name: Joi.string().allow(""),
763
+
764
+ slug: Joi.string().allow(""),
765
+ });
766
+ }
767
+
768
+ static SecondLevelChild() {
769
+ return Joi.object({
770
+ childs: Joi.array().items(CatalogModel.ThirdLevelChild()),
771
+
772
+ _custom_json: Joi.any(),
773
+
774
+ uid: Joi.number(),
775
+
776
+ banners: CatalogModel.ImageUrls(),
777
+
778
+ action: CatalogModel.ProductListingAction(),
779
+
780
+ name: Joi.string().allow(""),
781
+
782
+ slug: Joi.string().allow(""),
783
+ });
784
+ }
785
+
786
+ static Child() {
787
+ return Joi.object({
788
+ childs: Joi.array().items(CatalogModel.SecondLevelChild()),
789
+
790
+ _custom_json: Joi.any(),
791
+
792
+ uid: Joi.number(),
793
+
794
+ banners: CatalogModel.ImageUrls(),
795
+
796
+ action: CatalogModel.ProductListingAction(),
797
+
798
+ name: Joi.string().allow(""),
799
+
800
+ slug: Joi.string().allow(""),
801
+ });
802
+ }
803
+
804
+ static CategoryBanner() {
805
+ return Joi.object({
806
+ landscape: CatalogModel.Media().required(),
807
+
808
+ portrait: CatalogModel.Media().required(),
809
+ });
810
+ }
811
+
812
+ static CategoryItems() {
813
+ return Joi.object({
814
+ childs: Joi.array().items(CatalogModel.Child()),
815
+
816
+ action: CatalogModel.ProductListingAction().required(),
817
+
818
+ uid: Joi.number().required(),
819
+
820
+ banners: CatalogModel.CategoryBanner().required(),
821
+
822
+ name: Joi.string().allow("").required(),
823
+
824
+ slug: Joi.string().allow("").required(),
825
+ });
826
+ }
827
+
828
+ static DepartmentCategoryTree() {
829
+ return Joi.object({
830
+ items: Joi.array().items(CatalogModel.CategoryItems()),
831
+
832
+ department: Joi.string().allow("").required(),
833
+ });
834
+ }
835
+
836
+ static CategoryListingResponse() {
837
+ return Joi.object({
838
+ departments: Joi.array().items(CatalogModel.DepartmentIdentifier()),
839
+
840
+ data: Joi.array().items(CatalogModel.DepartmentCategoryTree()),
841
+ });
842
+ }
843
+
844
+ static CategoryMetaResponse() {
845
+ return Joi.object({
846
+ _custom_json: Joi.any(),
847
+
848
+ banners: CatalogModel.ImageUrls(),
849
+
850
+ uid: Joi.number(),
851
+
852
+ name: Joi.string().allow(""),
853
+
854
+ logo: CatalogModel.Media(),
855
+ });
856
+ }
857
+
858
+ static HomeListingResponse() {
859
+ return Joi.object({
860
+ message: Joi.string().allow(""),
861
+
862
+ items: Joi.array().items(CatalogModel.ProductListingDetail()),
863
+
864
+ page: CatalogModel.Page().required(),
865
+ });
866
+ }
867
+
868
+ static Department() {
869
+ return Joi.object({
870
+ priority_order: Joi.number(),
871
+
872
+ uid: Joi.number(),
873
+
874
+ name: Joi.string().allow(""),
875
+
876
+ logo: CatalogModel.Media(),
877
+
878
+ slug: Joi.string().allow(""),
879
+ });
880
+ }
881
+
882
+ static DepartmentResponse() {
883
+ return Joi.object({
884
+ items: Joi.array().items(CatalogModel.Department()),
885
+ });
886
+ }
887
+
888
+ static AutocompleteItem() {
889
+ return Joi.object({
890
+ action: CatalogModel.ProductListingAction(),
891
+
892
+ _custom_json: Joi.any(),
893
+
894
+ type: Joi.string().allow(""),
895
+
896
+ display: Joi.string().allow(""),
897
+
898
+ logo: CatalogModel.Media(),
899
+ });
900
+ }
901
+
902
+ static AutoCompleteResponse() {
903
+ return Joi.object({
904
+ items: Joi.array().items(CatalogModel.AutocompleteItem()),
905
+ });
906
+ }
907
+
908
+ static CollectionListingFilterType() {
909
+ return Joi.object({
910
+ name: Joi.string().allow(""),
911
+
912
+ is_selected: Joi.boolean(),
913
+
914
+ display: Joi.string().allow(""),
915
+ });
916
+ }
917
+
918
+ static CollectionListingFilterTag() {
919
+ return Joi.object({
920
+ name: Joi.string().allow(""),
921
+
922
+ is_selected: Joi.boolean(),
923
+
924
+ display: Joi.string().allow(""),
925
+ });
926
+ }
927
+
928
+ static CollectionListingFilter() {
929
+ return Joi.object({
930
+ type: Joi.array().items(CatalogModel.CollectionListingFilterType()),
931
+
932
+ tags: Joi.array().items(CatalogModel.CollectionListingFilterTag()),
933
+ });
934
+ }
935
+
936
+ static CollectionQuery() {
937
+ return Joi.object({
938
+ value: Joi.array().items(Joi.any()).required(),
939
+
940
+ op: Joi.string().allow("").required(),
941
+
942
+ attribute: Joi.string().allow("").required(),
943
+ });
944
+ }
945
+
946
+ static GetCollectionDetailNest() {
947
+ return Joi.object({
948
+ action: CatalogModel.ProductListingAction(),
949
+
950
+ banners: CatalogModel.ImageUrls(),
951
+
952
+ slug: Joi.string().allow(""),
953
+
954
+ sort_on: Joi.string().allow(""),
955
+
956
+ visible_facets_keys: Joi.array().items(Joi.string().allow("")),
957
+
958
+ cron: Joi.any(),
959
+
960
+ query: Joi.array().items(CatalogModel.CollectionQuery()),
961
+
962
+ meta: Joi.any(),
963
+
964
+ is_active: Joi.boolean(),
965
+
966
+ app_id: Joi.string().allow(""),
967
+
968
+ type: Joi.string().allow(""),
969
+
970
+ allow_facets: Joi.boolean(),
971
+
972
+ _schedule: Joi.any(),
973
+
974
+ tag: Joi.array().items(Joi.string().allow("")),
975
+
976
+ logo: CatalogModel.Media(),
977
+
978
+ description: Joi.string().allow(""),
979
+
980
+ allow_sort: Joi.boolean(),
981
+
982
+ priority: Joi.number(),
983
+
984
+ _custom_json: Joi.any(),
985
+
986
+ uid: Joi.string().allow(""),
987
+
988
+ badge: Joi.any(),
989
+
990
+ name: Joi.string().allow(""),
991
+ });
992
+ }
993
+
994
+ static GetCollectionListingResponse() {
995
+ return Joi.object({
996
+ filters: CatalogModel.CollectionListingFilter(),
997
+
998
+ items: Joi.array().items(CatalogModel.GetCollectionDetailNest()),
999
+
1000
+ page: CatalogModel.Page().required(),
1001
+ });
1002
+ }
1003
+
1004
+ static CollectionDetailResponse() {
1005
+ return Joi.object({
1006
+ banners: CatalogModel.ImageUrls(),
1007
+
1008
+ slug: Joi.string().allow(""),
1009
+
1010
+ sort_on: Joi.string().allow(""),
1011
+
1012
+ visible_facets_keys: Joi.array().items(Joi.string().allow("")),
1013
+
1014
+ cron: Joi.any(),
1015
+
1016
+ query: Joi.array().items(CatalogModel.CollectionQuery()),
1017
+
1018
+ meta: Joi.any(),
1019
+
1020
+ is_active: Joi.boolean(),
1021
+
1022
+ app_id: Joi.string().allow(""),
1023
+
1024
+ type: Joi.string().allow(""),
1025
+
1026
+ allow_facets: Joi.boolean(),
1027
+
1028
+ _schedule: Joi.any(),
1029
+
1030
+ tag: Joi.array().items(Joi.string().allow("")),
1031
+
1032
+ logo: CatalogModel.Media(),
1033
+
1034
+ description: Joi.string().allow(""),
1035
+
1036
+ allow_sort: Joi.boolean(),
1037
+
1038
+ priority: Joi.number(),
1039
+
1040
+ _custom_json: Joi.any(),
1041
+
1042
+ badge: Joi.any(),
1043
+
1044
+ name: Joi.string().allow(""),
1045
+ });
1046
+ }
1047
+
1048
+ static GetFollowListingResponse() {
1049
+ return Joi.object({
1050
+ items: Joi.array().items(CatalogModel.ProductListingDetail()).required(),
1051
+
1052
+ page: CatalogModel.Page().required(),
1053
+ });
1054
+ }
1055
+
1056
+ static FollowPostResponse() {
1057
+ return Joi.object({
1058
+ id: Joi.string().allow("").required(),
1059
+
1060
+ message: Joi.string().allow("").required(),
1061
+ });
1062
+ }
1063
+
1064
+ static FollowerCountResponse() {
1065
+ return Joi.object({
1066
+ count: Joi.number(),
1067
+ });
1068
+ }
1069
+
1070
+ static FollowIdsData() {
1071
+ return Joi.object({
1072
+ collections: Joi.array().items(Joi.number()),
1073
+
1074
+ brands: Joi.array().items(Joi.number()),
1075
+
1076
+ products: Joi.array().items(Joi.number()),
1077
+ });
1078
+ }
1079
+
1080
+ static FollowIdsResponse() {
1081
+ return Joi.object({
1082
+ data: CatalogModel.FollowIdsData(),
1083
+ });
1084
+ }
1085
+
1086
+ static LatLong() {
1087
+ return Joi.object({
1088
+ type: Joi.string().allow(""),
1089
+
1090
+ coordinates: Joi.array().items(Joi.number()),
1091
+ });
1092
+ }
1093
+
1094
+ static Store() {
1095
+ return Joi.object({
1096
+ store_code: Joi.string().allow(""),
1097
+
1098
+ address: Joi.string().allow(""),
1099
+
1100
+ state: Joi.string().allow(""),
1101
+
1102
+ uid: Joi.number(),
1103
+
1104
+ city: Joi.string().allow(""),
1105
+
1106
+ name: Joi.string().allow(""),
1107
+
1108
+ store_email: Joi.string().allow(""),
1109
+
1110
+ country: Joi.string().allow(""),
1111
+
1112
+ pincode: Joi.number(),
1113
+
1114
+ lat_long: CatalogModel.LatLong(),
1115
+ });
1116
+ }
1117
+
1118
+ static StoreListingResponse() {
1119
+ return Joi.object({
1120
+ items: Joi.array().items(CatalogModel.Store()).required(),
1121
+
1122
+ page: CatalogModel.Page().required(),
1123
+ });
1124
+ }
1125
+
1126
+ static StoreDepartments() {
1127
+ return Joi.object({
1128
+ priority_order: Joi.number(),
1129
+
1130
+ uid: Joi.number(),
1131
+
1132
+ name: Joi.string().allow(""),
1133
+
1134
+ logo: Joi.string().allow(""),
1135
+
1136
+ slug: Joi.string().allow(""),
1137
+ });
1138
+ }
1139
+
1140
+ static SellerPhoneNumber() {
1141
+ return Joi.object({
1142
+ country_code: Joi.number().required(),
1143
+
1144
+ number: Joi.string().allow("").required(),
1145
+ });
1146
+ }
1147
+
1148
+ static StoreAddressSerializer() {
1149
+ return Joi.object({
1150
+ address1: Joi.string().allow(""),
1151
+
1152
+ pincode: Joi.number(),
1153
+
1154
+ longitude: Joi.number(),
1155
+
1156
+ state: Joi.string().allow(""),
1157
+
1158
+ city: Joi.string().allow(""),
1159
+
1160
+ country: Joi.string().allow(""),
1161
+
1162
+ landmark: Joi.string().allow(""),
1163
+
1164
+ latitude: Joi.number(),
1165
+
1166
+ address2: Joi.string().allow(""),
1167
+ });
1168
+ }
1169
+
1170
+ static CompanyStore() {
1171
+ return Joi.object({
1172
+ name: Joi.string().allow(""),
1173
+
1174
+ uid: Joi.number(),
1175
+
1176
+ company_type: Joi.string().allow(""),
1177
+
1178
+ business_type: Joi.string().allow(""),
1179
+ });
1180
+ }
1181
+
1182
+ static StoreManagerSerializer() {
1183
+ return Joi.object({
1184
+ name: Joi.string().allow(""),
1185
+
1186
+ email: Joi.string().allow(""),
1187
+
1188
+ mobile_no: CatalogModel.SellerPhoneNumber(),
1189
+ });
1190
+ }
1191
+
1192
+ static AppStore() {
1193
+ return Joi.object({
1194
+ contact_numbers: Joi.array().items(CatalogModel.SellerPhoneNumber()),
1195
+
1196
+ departments: Joi.array().items(CatalogModel.StoreDepartments()),
1197
+
1198
+ uid: Joi.number(),
1199
+
1200
+ name: Joi.string().allow(""),
1201
+
1202
+ address: CatalogModel.StoreAddressSerializer(),
1203
+
1204
+ company: CatalogModel.CompanyStore(),
1205
+
1206
+ manager: CatalogModel.StoreManagerSerializer(),
1207
+ });
1208
+ }
1209
+
1210
+ static ApplicationStoreListing() {
1211
+ return Joi.object({
1212
+ filters: Joi.array().items(CatalogModel.StoreDepartments()),
1213
+
1214
+ items: Joi.array().items(CatalogModel.AppStore()),
1215
+
1216
+ page: CatalogModel.Page(),
1217
+ });
1218
+ }
1219
+
1220
+ static Time() {
1221
+ return Joi.object({
1222
+ minute: Joi.number(),
1223
+
1224
+ hour: Joi.number(),
1225
+ });
1226
+ }
1227
+
1228
+ static StoreTiming() {
1229
+ return Joi.object({
1230
+ weekday: Joi.string().allow(""),
1231
+
1232
+ open: Joi.boolean(),
1233
+
1234
+ opening: CatalogModel.Time(),
1235
+
1236
+ closing: CatalogModel.Time(),
1237
+ });
1238
+ }
1239
+
1240
+ static StoreDetails() {
1241
+ return Joi.object({
1242
+ contact_numbers: Joi.array().items(CatalogModel.SellerPhoneNumber()),
1243
+
1244
+ departments: Joi.array().items(CatalogModel.StoreDepartments()),
1245
+
1246
+ _custom_json: Joi.any(),
1247
+
1248
+ uid: Joi.number(),
1249
+
1250
+ timing: Joi.array().items(CatalogModel.StoreTiming()),
1251
+
1252
+ name: Joi.string().allow(""),
1253
+
1254
+ address: CatalogModel.StoreAddressSerializer(),
1255
+
1256
+ company: CatalogModel.CompanyStore(),
1257
+
1258
+ manager: CatalogModel.StoreManagerSerializer(),
1259
+ });
1260
+ }
1261
+
1262
+ static UserDetail() {
1263
+ return Joi.object({
1264
+ super_user: Joi.boolean(),
1265
+
1266
+ user_id: Joi.string().allow("").required(),
1267
+
1268
+ contact: Joi.string().allow(""),
1269
+
1270
+ username: Joi.string().allow("").required(),
1271
+ });
1272
+ }
1273
+
1274
+ static ProductDetails() {
1275
+ return Joi.object({
1276
+ attributes: Joi.any(),
1277
+
1278
+ is_set: Joi.boolean(),
1279
+
1280
+ highlights: Joi.array().items(Joi.any()),
1281
+
1282
+ identifier: Joi.any(),
1283
+
1284
+ slug: Joi.any(),
1285
+
1286
+ images: Joi.array().items(Joi.any()),
1287
+
1288
+ hsn_code: Joi.number(),
1289
+
1290
+ has_variant: Joi.boolean(),
1291
+
1292
+ brand_uid: Joi.number(),
1293
+
1294
+ grouped_attributes: Joi.any(),
1295
+
1296
+ item_code: Joi.any(),
1297
+
1298
+ template_tag: Joi.any(),
1299
+
1300
+ rating: Joi.number(),
1301
+
1302
+ country_of_origin: Joi.any(),
1303
+
1304
+ rating_count: Joi.number(),
1305
+
1306
+ media: Joi.array().items(Joi.any()),
1307
+
1308
+ description: Joi.any(),
1309
+
1310
+ out_of_stock: Joi.boolean(),
1311
+
1312
+ short_description: Joi.any(),
1313
+
1314
+ image_nature: Joi.any(),
1315
+
1316
+ name: Joi.any(),
1317
+ });
1318
+ }
1319
+
1320
+ static Size() {
1321
+ return Joi.object({
1322
+ value: Joi.any(),
1323
+
1324
+ display: Joi.any(),
1325
+
1326
+ is_available: Joi.boolean(),
1327
+
1328
+ quantity: Joi.number(),
1329
+ });
1330
+ }
1331
+
1332
+ static ProductGroupPrice() {
1333
+ return Joi.object({
1334
+ min_marked: Joi.number(),
1335
+
1336
+ min_effective: Joi.number(),
1337
+
1338
+ max_marked: Joi.number(),
1339
+
1340
+ currency: Joi.any(),
1341
+
1342
+ max_effective: Joi.number(),
1343
+ });
1344
+ }
1345
+
1346
+ static ProductInGroup() {
1347
+ return Joi.object({
1348
+ max_quantity: Joi.number().required(),
1349
+
1350
+ product_details: CatalogModel.ProductDetails(),
1351
+
1352
+ sizes: Joi.array().items(CatalogModel.Size()),
1353
+
1354
+ min_quantity: Joi.number(),
1355
+
1356
+ price: CatalogModel.ProductGroupPrice(),
1357
+
1358
+ allow_remove: Joi.boolean(),
1359
+
1360
+ product_uid: Joi.number().required(),
1361
+
1362
+ auto_select: Joi.boolean(),
1363
+
1364
+ auto_add_to_cart: Joi.boolean(),
1365
+ });
1366
+ }
1367
+
1368
+ static ProductGroupingModel() {
1369
+ return Joi.object({
1370
+ choice: Joi.any(),
1371
+
1372
+ meta: Joi.any(),
1373
+
1374
+ verified_by: CatalogModel.UserDetail(),
1375
+
1376
+ is_active: Joi.boolean(),
1377
+
1378
+ same_store_assignment: Joi.boolean(),
1379
+
1380
+ products: Joi.array().items(CatalogModel.ProductInGroup()).required(),
1381
+
1382
+ created_on: Joi.string().allow("").required(),
1383
+
1384
+ _id: Joi.any(),
1385
+
1386
+ modified_by: CatalogModel.UserDetail(),
1387
+
1388
+ created_by: CatalogModel.UserDetail(),
1389
+
1390
+ company_id: Joi.number(),
1391
+
1392
+ modified_on: Joi.string().allow("").required(),
1393
+
1394
+ name: Joi.any().required(),
1395
+
1396
+ page_visibility: Joi.array().items(Joi.any()),
1397
+
1398
+ logo: Joi.string().allow("").allow(null),
1399
+
1400
+ slug: Joi.any(),
1401
+
1402
+ verified_on: Joi.string().allow(""),
1403
+ });
1404
+ }
1405
+
1406
+ static ProductBundle() {
1407
+ return Joi.object({
1408
+ items: Joi.array().items(CatalogModel.ProductGroupingModel()),
1409
+ });
1410
+ }
1411
+
1412
+ static StrategyWiseListingSchemaV3() {
1413
+ return Joi.object({
1414
+ tat: Joi.number(),
1415
+
1416
+ distance: Joi.number(),
1417
+
1418
+ pincode: Joi.number(),
1419
+
1420
+ quantity: Joi.number(),
1421
+ });
1422
+ }
1423
+
1424
+ static ArticleAssignmentV3() {
1425
+ return Joi.object({
1426
+ strategy: Joi.string().allow(""),
1427
+
1428
+ level: Joi.string().allow(""),
1429
+ });
1430
+ }
1431
+
1432
+ static ReturnConfigSchemaV3() {
1433
+ return Joi.object({
1434
+ time: Joi.number(),
1435
+
1436
+ unit: Joi.string().allow(""),
1437
+
1438
+ returnable: Joi.boolean(),
1439
+ });
1440
+ }
1441
+
1442
+ static DetailsSchemaV3() {
1443
+ return Joi.object({
1444
+ type: Joi.string().allow(""),
1445
+
1446
+ key: Joi.string().allow(""),
1447
+
1448
+ value: Joi.string().allow(""),
1449
+ });
1450
+ }
1451
+
1452
+ static SellerGroupAttributes() {
1453
+ return Joi.object({
1454
+ details: Joi.array().items(CatalogModel.DetailsSchemaV3()),
1455
+
1456
+ title: Joi.string().allow(""),
1457
+ });
1458
+ }
1459
+
1460
+ static StoreV3() {
1461
+ return Joi.object({
1462
+ name: Joi.string().allow(""),
1463
+
1464
+ uid: Joi.number(),
1465
+
1466
+ count: Joi.number(),
1467
+ });
1468
+ }
1469
+
1470
+ static ProductStockUnitPriceV3() {
1471
+ return Joi.object({
1472
+ unit: Joi.string().allow(""),
1473
+
1474
+ currency_code: Joi.string().allow(""),
1475
+
1476
+ currency_symbol: Joi.string().allow(""),
1477
+
1478
+ price: Joi.number(),
1479
+ });
1480
+ }
1481
+
1482
+ static ProductSetDistributionSizeV3() {
1483
+ return Joi.object({
1484
+ size: Joi.string().allow(""),
1485
+
1486
+ pieces: Joi.number(),
1487
+ });
1488
+ }
1489
+
1490
+ static ProductSetDistributionV3() {
1491
+ return Joi.object({
1492
+ sizes: Joi.array().items(CatalogModel.ProductSetDistributionSizeV3()),
1493
+ });
1494
+ }
1495
+
1496
+ static ProductSetV3() {
1497
+ return Joi.object({
1498
+ quantity: Joi.number(),
1499
+
1500
+ size_distribution: CatalogModel.ProductSetDistributionV3(),
1501
+ });
1502
+ }
1503
+
1504
+ static ProductStockPriceV3() {
1505
+ return Joi.object({
1506
+ marked: Joi.number(),
1507
+
1508
+ currency: Joi.string().allow(""),
1509
+
1510
+ effective: Joi.number(),
1511
+ });
1512
+ }
1513
+
1514
+ static SellerV3() {
1515
+ return Joi.object({
1516
+ name: Joi.string().allow(""),
1517
+
1518
+ uid: Joi.number(),
1519
+
1520
+ count: Joi.number(),
1521
+ });
1522
+ }
1523
+
1524
+ static MarketPlaceSttributesSchemaV3() {
1525
+ return Joi.object({
1526
+ details: Joi.array().items(CatalogModel.DetailsSchemaV3()),
1527
+
1528
+ title: Joi.string().allow(""),
1529
+ });
1530
+ }
1531
+
1532
+ static ProductSizePriceResponseV3() {
1533
+ return Joi.object({
1534
+ strategy_wise_listing: Joi.array().items(
1535
+ CatalogModel.StrategyWiseListingSchemaV3()
1536
+ ),
1537
+
1538
+ is_gift: Joi.boolean(),
1539
+
1540
+ article_assignment: CatalogModel.ArticleAssignmentV3(),
1541
+
1542
+ return_config: CatalogModel.ReturnConfigSchemaV3(),
1543
+
1544
+ grouped_attributes: Joi.array().items(
1545
+ CatalogModel.SellerGroupAttributes()
1546
+ ),
1547
+
1548
+ store: CatalogModel.StoreV3(),
1549
+
1550
+ article_id: Joi.string().allow(""),
1551
+
1552
+ price_per_unit: CatalogModel.ProductStockUnitPriceV3(),
1553
+
1554
+ set: CatalogModel.ProductSetV3(),
1555
+
1556
+ is_cod: Joi.boolean(),
1557
+
1558
+ seller_count: Joi.number(),
1559
+
1560
+ special_badge: Joi.string().allow(""),
1561
+
1562
+ quantity: Joi.number(),
1563
+
1564
+ discount: Joi.string().allow(""),
1565
+
1566
+ price_per_piece: CatalogModel.ProductStockPriceV3(),
1567
+
1568
+ price: CatalogModel.ProductStockPriceV3(),
1569
+
1570
+ item_type: Joi.string().allow(""),
1571
+
1572
+ seller: CatalogModel.SellerV3(),
1573
+
1574
+ long_lat: Joi.array().items(Joi.number()),
1575
+
1576
+ pincode: Joi.number(),
1577
+
1578
+ marketplace_attributes: Joi.array().items(
1579
+ CatalogModel.MarketPlaceSttributesSchemaV3()
1580
+ ),
1581
+ });
1582
+ }
1583
+
1584
+ static ProductSizeSellerFilterSchemaV3() {
1585
+ return Joi.object({
1586
+ value: Joi.string().allow(""),
1587
+
1588
+ name: Joi.string().allow(""),
1589
+
1590
+ is_selected: Joi.boolean(),
1591
+ });
1592
+ }
1593
+
1594
+ static ProductSizeSellersResponseV3() {
1595
+ return Joi.object({
1596
+ sort_on: Joi.array().items(
1597
+ CatalogModel.ProductSizeSellerFilterSchemaV3()
1598
+ ),
1599
+
1600
+ items: Joi.array().items(CatalogModel.ProductSizePriceResponseV3()),
1601
+
1602
+ page: CatalogModel.Page().required(),
1603
+ });
1604
+ }
1605
+ }
1606
+ module.exports = CatalogModel;