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