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