@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.
- package/documentation/application/CATALOG.md +371 -371
- package/documentation/application/ORDER.md +272 -272
- package/documentation/application/PAYMENT.md +269 -269
- package/documentation/platform/CATALOG.md +1678 -1664
- package/documentation/platform/COMPANYPROFILE.md +201 -201
- package/documentation/platform/ORDER.md +1442 -1323
- package/documentation/platform/PAYMENT.md +88 -88
- package/index.js +7 -1
- package/package.json +1 -1
- package/sdk/application/Cart/CartApplicationClient.js +302 -0
- package/sdk/application/Cart/CartApplicationValidator.js +1 -0
- package/sdk/application/Catalog/CatalogApplicationClient.js +378 -0
- package/sdk/application/Catalog/CatalogApplicationModel.d.ts +17 -17
- package/sdk/application/Catalog/CatalogApplicationModel.js +500 -500
- package/sdk/application/Catalog/CatalogApplicationValidator.js +1 -0
- package/sdk/application/Common/CommonApplicationClient.js +22 -0
- package/sdk/application/Common/CommonApplicationValidator.js +1 -0
- package/sdk/application/Communication/CommunicationApplicationClient.js +41 -0
- package/sdk/application/Communication/CommunicationApplicationValidator.js +1 -0
- package/sdk/application/Configuration/ConfigurationApplicationClient.js +200 -0
- package/sdk/application/Configuration/ConfigurationApplicationValidator.js +1 -0
- package/sdk/application/Content/ContentApplicationClient.js +215 -0
- package/sdk/application/Content/ContentApplicationValidator.js +1 -0
- package/sdk/application/FileStorage/FileStorageApplicationClient.js +33 -0
- package/sdk/application/FileStorage/FileStorageApplicationValidator.js +1 -0
- package/sdk/application/Lead/LeadApplicationClient.js +81 -0
- package/sdk/application/Lead/LeadApplicationValidator.js +1 -0
- package/sdk/application/Logistic/LogisticApplicationClient.js +44 -0
- package/sdk/application/Logistic/LogisticApplicationValidator.js +1 -0
- package/sdk/application/Order/OrderApplicationClient.js +146 -0
- package/sdk/application/Order/OrderApplicationModel.d.ts +20 -20
- package/sdk/application/Order/OrderApplicationModel.js +329 -329
- package/sdk/application/Order/OrderApplicationValidator.js +1 -0
- package/sdk/application/Payment/PaymentApplicationClient.js +528 -0
- package/sdk/application/Payment/PaymentApplicationModel.d.ts +5 -5
- package/sdk/application/Payment/PaymentApplicationModel.js +391 -391
- package/sdk/application/Payment/PaymentApplicationValidator.js +1 -0
- package/sdk/application/PosCart/PosCartApplicationClient.js +329 -0
- package/sdk/application/PosCart/PosCartApplicationValidator.js +1 -0
- package/sdk/application/Rewards/RewardsApplicationClient.js +81 -0
- package/sdk/application/Rewards/RewardsApplicationValidator.js +1 -0
- package/sdk/application/Share/ShareApplicationClient.js +87 -0
- package/sdk/application/Share/ShareApplicationValidator.js +1 -0
- package/sdk/application/Theme/ThemeApplicationClient.js +44 -0
- package/sdk/application/Theme/ThemeApplicationValidator.js +1 -0
- package/sdk/application/User/UserApplicationClient.js +405 -0
- package/sdk/application/User/UserApplicationValidator.js +1 -0
- package/sdk/common/AxiosHelper.js +1 -1
- package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.js +114 -0
- package/sdk/platform/Analytics/AnalyticsPlatformClient.js +58 -0
- package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +46 -0
- package/sdk/platform/Billing/BillingPlatformClient.js +160 -0
- package/sdk/platform/Cart/CartPlatformApplicationClient.js +246 -0
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +29 -29
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +839 -48
- package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +3 -3
- package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +9 -9
- package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +54 -54
- package/sdk/platform/Catalog/CatalogPlatformClient.js +1149 -96
- package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +58 -57
- package/sdk/platform/Catalog/CatalogPlatformModel.js +1626 -1614
- package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +6 -6
- package/sdk/platform/Catalog/CatalogPlatformValidator.js +20 -20
- package/sdk/platform/Common/CommonPlatformClient.js +26 -0
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +587 -0
- package/sdk/platform/Communication/CommunicationPlatformClient.js +15 -0
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +179 -0
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +11 -11
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +269 -269
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +382 -0
- package/sdk/platform/Configuration/ConfigurationPlatformClient.js +282 -0
- package/sdk/platform/Content/ContentPlatformApplicationClient.js +866 -0
- package/sdk/platform/Discount/DiscountPlatformClient.js +152 -0
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +54 -0
- package/sdk/platform/FileStorage/FileStoragePlatformClient.js +76 -0
- package/sdk/platform/Inventory/InventoryPlatformClient.js +161 -0
- package/sdk/platform/Lead/LeadPlatformApplicationClient.js +162 -0
- package/sdk/platform/Lead/LeadPlatformClient.js +140 -0
- package/sdk/platform/Order/OrderPlatformApplicationClient.js +55 -0
- package/sdk/platform/Order/OrderPlatformClient.d.ts +15 -6
- package/sdk/platform/Order/OrderPlatformClient.js +674 -15
- package/sdk/platform/Order/OrderPlatformModel.d.ts +67 -60
- package/sdk/platform/Order/OrderPlatformModel.js +1559 -1623
- package/sdk/platform/Order/OrderPlatformValidator.d.ts +2 -1
- package/sdk/platform/Order/OrderPlatformValidator.js +10 -4
- package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +26 -0
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +165 -0
- package/sdk/platform/Payment/PaymentPlatformClient.js +139 -0
- package/sdk/platform/Payment/PaymentPlatformModel.js +137 -137
- package/sdk/platform/PlatformApplicationClient.d.ts +2217 -2243
- package/sdk/platform/PlatformApplicationClient.js +2514 -2524
- package/sdk/platform/PlatformClient.d.ts +2217 -2243
- package/sdk/platform/PlatformClient.js +2514 -2524
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +169 -0
- package/sdk/platform/Share/SharePlatformApplicationClient.js +53 -0
- package/sdk/platform/Theme/ThemePlatformApplicationClient.js +293 -0
- package/sdk/platform/User/UserPlatformApplicationClient.js +145 -0
- package/sdk/platform/Webhook/WebhookPlatformClient.js +90 -0
- package/sdk/public/Configuration/ConfigurationPublicClient.js +25 -0
- package/sdk/public/Configuration/ConfigurationPublicValidator.js +3 -1
- package/sdk/public/Inventory/InventoryPublicClient.js +75 -0
- package/sdk/public/Inventory/InventoryPublicValidator.js +3 -1
- package/sdk/public/Webhook/WebhookPublicClient.js +29 -0
- 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
|
|
4
|
+
static ProductListingActionPage() {
|
|
5
5
|
return Joi.object({
|
|
6
|
-
|
|
6
|
+
type: Joi.string().allow(""),
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
query: Joi.any(),
|
|
9
9
|
|
|
10
|
-
|
|
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
|
-
|
|
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
|
|
40
|
+
static ProductBrand() {
|
|
33
41
|
return Joi.object({
|
|
34
|
-
|
|
42
|
+
description: Joi.string().allow(""),
|
|
35
43
|
|
|
36
|
-
|
|
44
|
+
action: CatalogModel.ProductListingAction(),
|
|
37
45
|
|
|
38
|
-
|
|
39
|
-
});
|
|
40
|
-
}
|
|
46
|
+
uid: Joi.number(),
|
|
41
47
|
|
|
42
|
-
|
|
43
|
-
return Joi.object({
|
|
44
|
-
page: CatalogModel.ProductListingActionPage(),
|
|
48
|
+
name: Joi.string().allow(""),
|
|
45
49
|
|
|
46
|
-
|
|
50
|
+
logo: CatalogModel.Media(),
|
|
47
51
|
});
|
|
48
52
|
}
|
|
49
53
|
|
|
50
|
-
static
|
|
54
|
+
static NetQuantity() {
|
|
51
55
|
return Joi.object({
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
name: Joi.string().allow(""),
|
|
55
|
-
|
|
56
|
-
uid: Joi.number(),
|
|
57
|
-
|
|
58
|
-
action: CatalogModel.ProductListingAction(),
|
|
56
|
+
value: Joi.number(),
|
|
59
57
|
|
|
60
|
-
|
|
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
|
|
72
|
+
static ApplicationItemSEO() {
|
|
75
73
|
return Joi.object({
|
|
76
|
-
|
|
74
|
+
description: Joi.any(),
|
|
77
75
|
|
|
78
|
-
|
|
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
|
-
|
|
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
|
|
118
|
+
static CustomMetaFields() {
|
|
121
119
|
return Joi.object({
|
|
122
|
-
|
|
120
|
+
value: Joi.string().allow("").required(),
|
|
123
121
|
|
|
124
|
-
|
|
122
|
+
key: Joi.string().allow("").required(),
|
|
125
123
|
});
|
|
126
124
|
}
|
|
127
125
|
|
|
128
|
-
static
|
|
126
|
+
static ApplicationItemMOQ() {
|
|
129
127
|
return Joi.object({
|
|
130
|
-
|
|
128
|
+
increment_unit: Joi.number(),
|
|
131
129
|
|
|
132
|
-
|
|
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
|
-
|
|
139
|
-
|
|
140
|
-
type: Joi.string().allow(""),
|
|
141
|
-
|
|
142
|
-
moq: CatalogModel.ApplicationItemMOQ(),
|
|
138
|
+
attributes: Joi.any(),
|
|
143
139
|
|
|
144
|
-
|
|
140
|
+
brand: CatalogModel.ProductBrand(),
|
|
145
141
|
|
|
146
|
-
|
|
142
|
+
highlights: Joi.array().items(Joi.string().allow("")),
|
|
147
143
|
|
|
148
|
-
|
|
144
|
+
teaser_tag: Joi.string().allow(""),
|
|
149
145
|
|
|
150
|
-
|
|
146
|
+
net_quantity: CatalogModel.NetQuantity(),
|
|
151
147
|
|
|
152
|
-
|
|
148
|
+
similars: Joi.array().items(Joi.string().allow("")),
|
|
153
149
|
|
|
154
|
-
|
|
150
|
+
action: CatalogModel.ProductListingAction(),
|
|
155
151
|
|
|
156
|
-
|
|
152
|
+
category_map: CatalogModel.ProductCategoryMap(),
|
|
157
153
|
|
|
158
154
|
color: Joi.string().allow(""),
|
|
159
155
|
|
|
160
|
-
|
|
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
|
-
|
|
158
|
+
slug: Joi.string().allow("").required(),
|
|
169
159
|
|
|
170
|
-
|
|
160
|
+
seo: CatalogModel.ApplicationItemSEO(),
|
|
171
161
|
|
|
172
|
-
|
|
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
|
-
|
|
170
|
+
medias: Joi.array().items(CatalogModel.Media()),
|
|
185
171
|
|
|
186
|
-
|
|
172
|
+
categories: Joi.array().items(CatalogModel.ProductBrand()),
|
|
187
173
|
|
|
188
|
-
|
|
174
|
+
tags: Joi.array().items(Joi.string().allow("")),
|
|
189
175
|
|
|
190
176
|
rating: Joi.number(),
|
|
191
177
|
|
|
192
|
-
|
|
178
|
+
type: Joi.string().allow(""),
|
|
193
179
|
|
|
194
|
-
|
|
180
|
+
rating_count: Joi.number(),
|
|
195
181
|
|
|
196
|
-
|
|
182
|
+
description: Joi.string().allow(""),
|
|
183
|
+
|
|
184
|
+
discount: Joi.string().allow(""),
|
|
197
185
|
|
|
198
186
|
short_description: Joi.string().allow(""),
|
|
199
187
|
|
|
200
|
-
|
|
188
|
+
_custom_json: Joi.any(),
|
|
201
189
|
|
|
202
|
-
|
|
190
|
+
uid: Joi.number(),
|
|
203
191
|
|
|
204
|
-
|
|
192
|
+
image_nature: Joi.string().allow(""),
|
|
205
193
|
|
|
206
|
-
|
|
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
|
-
|
|
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
|
|
258
|
+
static ProductSizeStores() {
|
|
265
259
|
return Joi.object({
|
|
266
|
-
|
|
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
|
-
|
|
275
|
-
|
|
276
|
-
col_4: CatalogModel.ColumnHeader(),
|
|
274
|
+
col_3: CatalogModel.ColumnHeader(),
|
|
277
275
|
|
|
278
|
-
|
|
276
|
+
col_6: CatalogModel.ColumnHeader(),
|
|
279
277
|
|
|
280
278
|
col_5: CatalogModel.ColumnHeader(),
|
|
281
279
|
|
|
282
|
-
|
|
280
|
+
col_1: CatalogModel.ColumnHeader(),
|
|
283
281
|
|
|
284
|
-
|
|
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
|
-
|
|
291
|
-
|
|
292
|
-
col_4: Joi.string().allow(""),
|
|
290
|
+
col_3: Joi.string().allow(""),
|
|
293
291
|
|
|
294
|
-
|
|
292
|
+
col_6: Joi.string().allow(""),
|
|
295
293
|
|
|
296
294
|
col_5: Joi.string().allow(""),
|
|
297
295
|
|
|
298
|
-
|
|
296
|
+
col_1: Joi.string().allow(""),
|
|
299
297
|
|
|
300
|
-
|
|
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
|
-
|
|
311
|
-
|
|
312
|
-
image: Joi.string().allow(""),
|
|
312
|
+
description: Joi.string().allow(""),
|
|
313
313
|
|
|
314
314
|
size_tip: Joi.string().allow(""),
|
|
315
315
|
|
|
316
|
-
|
|
316
|
+
sizes: Joi.array().items(CatalogModel.SizeChartValues()),
|
|
317
317
|
|
|
318
|
-
|
|
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
|
-
|
|
328
|
+
sellable: Joi.boolean(),
|
|
329
329
|
|
|
330
330
|
sizes: Joi.array().items(CatalogModel.ProductSize()),
|
|
331
331
|
|
|
332
332
|
price: CatalogModel.ProductListingPrice(),
|
|
333
333
|
|
|
334
|
-
|
|
334
|
+
stores: CatalogModel.ProductSizeStores(),
|
|
335
335
|
|
|
336
|
-
|
|
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
|
-
|
|
372
|
+
items: Joi.array().items(CatalogModel.ProductDetail()),
|
|
373
373
|
|
|
374
374
|
title: Joi.string().allow(""),
|
|
375
375
|
|
|
376
|
-
|
|
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
|
-
|
|
388
|
+
color_name: Joi.string().allow(""),
|
|
389
389
|
|
|
390
|
-
|
|
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
|
-
|
|
399
|
-
|
|
400
|
-
is_available: Joi.boolean(),
|
|
400
|
+
value: Joi.string().allow(""),
|
|
401
401
|
|
|
402
402
|
name: Joi.string().allow(""),
|
|
403
403
|
|
|
404
|
-
|
|
404
|
+
is_available: Joi.boolean(),
|
|
405
405
|
|
|
406
|
-
|
|
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
|
|
438
|
+
static StoreDetail() {
|
|
447
439
|
return Joi.object({
|
|
440
|
+
id: Joi.number(),
|
|
441
|
+
|
|
448
442
|
name: Joi.string().allow(""),
|
|
449
443
|
|
|
450
|
-
|
|
444
|
+
code: Joi.string().allow(""),
|
|
451
445
|
|
|
452
|
-
|
|
446
|
+
city: Joi.string().allow(""),
|
|
453
447
|
});
|
|
454
448
|
}
|
|
455
449
|
|
|
456
|
-
static
|
|
450
|
+
static Seller() {
|
|
457
451
|
return Joi.object({
|
|
458
452
|
name: Joi.string().allow(""),
|
|
459
453
|
|
|
460
|
-
|
|
454
|
+
uid: Joi.number(),
|
|
461
455
|
|
|
462
|
-
|
|
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
|
-
|
|
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
|
-
|
|
477
|
-
|
|
478
|
-
uid: Joi.string().allow(""),
|
|
480
|
+
store: CatalogModel.StoreDetail(),
|
|
479
481
|
|
|
480
482
|
seller: CatalogModel.Seller(),
|
|
481
483
|
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
size: Joi.string().allow(""),
|
|
484
|
+
item_id: Joi.number(),
|
|
485
485
|
|
|
486
|
-
|
|
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
|
|
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
|
-
|
|
526
|
+
name: Joi.string().allow(""),
|
|
531
527
|
|
|
532
|
-
|
|
528
|
+
is_selected: Joi.boolean(),
|
|
529
|
+
});
|
|
530
|
+
}
|
|
533
531
|
|
|
534
|
-
|
|
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
|
-
|
|
550
|
+
count: Joi.number(),
|
|
543
551
|
|
|
544
|
-
|
|
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
|
-
|
|
551
|
-
|
|
552
|
-
|
|
558
|
+
display_format: Joi.string().allow(""),
|
|
559
|
+
|
|
560
|
+
value: Joi.string().allow(""),
|
|
553
561
|
|
|
554
562
|
display: Joi.string().allow("").required(),
|
|
555
563
|
|
|
556
|
-
|
|
564
|
+
min: Joi.number(),
|
|
557
565
|
|
|
558
|
-
|
|
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
|
-
|
|
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
|
-
|
|
596
|
+
attributes: Joi.any(),
|
|
597
597
|
|
|
598
|
-
|
|
598
|
+
brand: CatalogModel.ProductBrand(),
|
|
599
599
|
|
|
600
|
-
|
|
600
|
+
highlights: Joi.array().items(Joi.string().allow("")),
|
|
601
601
|
|
|
602
|
-
|
|
602
|
+
teaser_tag: Joi.string().allow(""),
|
|
603
603
|
|
|
604
|
-
|
|
604
|
+
net_quantity: CatalogModel.NetQuantity(),
|
|
605
605
|
|
|
606
|
-
|
|
606
|
+
similars: Joi.array().items(Joi.string().allow("")),
|
|
607
607
|
|
|
608
|
-
|
|
608
|
+
action: CatalogModel.ProductListingAction(),
|
|
609
609
|
|
|
610
610
|
category_map: CatalogModel.ProductCategoryMap(),
|
|
611
611
|
|
|
612
|
-
|
|
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
|
-
|
|
619
|
-
|
|
620
|
-
color: Joi.string().allow(""),
|
|
620
|
+
seo: CatalogModel.ApplicationItemSEO(),
|
|
621
621
|
|
|
622
|
-
|
|
622
|
+
has_variant: Joi.boolean(),
|
|
623
623
|
|
|
624
|
-
|
|
624
|
+
sellable: Joi.boolean(),
|
|
625
625
|
|
|
626
|
-
|
|
626
|
+
item_code: Joi.string().allow(""),
|
|
627
627
|
|
|
628
|
-
|
|
628
|
+
grouped_attributes: Joi.array().items(
|
|
629
|
+
CatalogModel.ProductDetailGroupedAttribute()
|
|
630
|
+
),
|
|
629
631
|
|
|
630
|
-
|
|
632
|
+
medias: Joi.array().items(CatalogModel.Media()),
|
|
631
633
|
|
|
632
|
-
|
|
634
|
+
categories: Joi.array().items(CatalogModel.ProductBrand()),
|
|
633
635
|
|
|
634
636
|
identifiers: Joi.array().items(Joi.string().allow("")),
|
|
635
637
|
|
|
636
|
-
|
|
638
|
+
tags: Joi.array().items(Joi.string().allow("")),
|
|
637
639
|
|
|
638
|
-
|
|
640
|
+
rating: Joi.number(),
|
|
639
641
|
|
|
640
|
-
|
|
642
|
+
type: Joi.string().allow(""),
|
|
641
643
|
|
|
642
|
-
|
|
644
|
+
rating_count: Joi.number(),
|
|
643
645
|
|
|
644
|
-
|
|
645
|
-
CatalogModel.ProductDetailGroupedAttribute()
|
|
646
|
-
),
|
|
646
|
+
description: Joi.string().allow(""),
|
|
647
647
|
|
|
648
|
-
|
|
648
|
+
discount: Joi.string().allow(""),
|
|
649
649
|
|
|
650
|
-
|
|
650
|
+
short_description: Joi.string().allow(""),
|
|
651
651
|
|
|
652
|
-
|
|
652
|
+
_custom_json: Joi.any(),
|
|
653
653
|
|
|
654
|
-
|
|
654
|
+
uid: Joi.number(),
|
|
655
655
|
|
|
656
|
-
|
|
656
|
+
image_nature: Joi.string().allow(""),
|
|
657
657
|
|
|
658
|
-
|
|
658
|
+
price: CatalogModel.ProductListingPrice(),
|
|
659
659
|
|
|
660
|
-
|
|
660
|
+
_custom_meta: Joi.array().items(CatalogModel.CustomMetaFields()),
|
|
661
661
|
|
|
662
|
-
|
|
662
|
+
sizes: Joi.array().items(Joi.string().allow("")),
|
|
663
663
|
|
|
664
|
-
|
|
664
|
+
moq: CatalogModel.ApplicationItemMOQ(),
|
|
665
665
|
|
|
666
|
-
|
|
666
|
+
item_type: Joi.string().allow(""),
|
|
667
667
|
|
|
668
|
-
|
|
668
|
+
name: Joi.string().allow(""),
|
|
669
669
|
|
|
670
|
-
|
|
670
|
+
tryouts: Joi.array().items(Joi.string().allow("")),
|
|
671
671
|
|
|
672
|
-
|
|
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
|
-
|
|
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
|
-
|
|
704
|
+
action: CatalogModel.ProductListingAction(),
|
|
709
705
|
|
|
710
706
|
uid: Joi.number(),
|
|
711
707
|
|
|
712
|
-
|
|
708
|
+
banners: CatalogModel.ImageUrls(),
|
|
713
709
|
|
|
714
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
846
|
+
_custom_json: Joi.any(),
|
|
847
847
|
|
|
848
848
|
banners: CatalogModel.ImageUrls(),
|
|
849
849
|
|
|
850
|
-
|
|
850
|
+
uid: Joi.number(),
|
|
851
851
|
|
|
852
|
-
|
|
852
|
+
name: Joi.string().allow(""),
|
|
853
853
|
|
|
854
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
948
|
+
action: CatalogModel.ProductListingAction(),
|
|
949
949
|
|
|
950
|
-
|
|
950
|
+
banners: CatalogModel.ImageUrls(),
|
|
951
951
|
|
|
952
|
-
|
|
952
|
+
slug: Joi.string().allow(""),
|
|
953
953
|
|
|
954
|
-
|
|
954
|
+
sort_on: Joi.string().allow(""),
|
|
955
955
|
|
|
956
|
-
|
|
956
|
+
visible_facets_keys: Joi.array().items(Joi.string().allow("")),
|
|
957
957
|
|
|
958
|
-
|
|
958
|
+
cron: Joi.any(),
|
|
959
|
+
|
|
960
|
+
query: Joi.array().items(CatalogModel.CollectionQuery()),
|
|
959
961
|
|
|
960
962
|
meta: Joi.any(),
|
|
961
963
|
|
|
962
|
-
|
|
964
|
+
is_active: Joi.boolean(),
|
|
963
965
|
|
|
964
|
-
|
|
966
|
+
app_id: Joi.string().allow(""),
|
|
965
967
|
|
|
966
|
-
|
|
968
|
+
type: Joi.string().allow(""),
|
|
967
969
|
|
|
968
|
-
|
|
970
|
+
allow_facets: Joi.boolean(),
|
|
969
971
|
|
|
970
972
|
_schedule: Joi.any(),
|
|
971
973
|
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
app_id: Joi.string().allow(""),
|
|
974
|
+
tag: Joi.array().items(Joi.string().allow("")),
|
|
975
975
|
|
|
976
|
-
|
|
976
|
+
logo: CatalogModel.Media(),
|
|
977
977
|
|
|
978
|
-
|
|
978
|
+
description: Joi.string().allow(""),
|
|
979
979
|
|
|
980
980
|
allow_sort: Joi.boolean(),
|
|
981
981
|
|
|
982
|
-
|
|
982
|
+
priority: Joi.number(),
|
|
983
983
|
|
|
984
|
-
|
|
984
|
+
_custom_json: Joi.any(),
|
|
985
985
|
|
|
986
|
-
|
|
986
|
+
uid: Joi.string().allow(""),
|
|
987
987
|
|
|
988
|
-
|
|
988
|
+
badge: Joi.any(),
|
|
989
989
|
|
|
990
|
-
|
|
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
|
-
|
|
1006
|
+
banners: CatalogModel.ImageUrls(),
|
|
1007
1007
|
|
|
1008
|
-
|
|
1008
|
+
slug: Joi.string().allow(""),
|
|
1009
1009
|
|
|
1010
|
-
|
|
1010
|
+
sort_on: Joi.string().allow(""),
|
|
1011
1011
|
|
|
1012
|
-
|
|
1012
|
+
visible_facets_keys: Joi.array().items(Joi.string().allow("")),
|
|
1013
1013
|
|
|
1014
|
-
|
|
1014
|
+
cron: Joi.any(),
|
|
1015
|
+
|
|
1016
|
+
query: Joi.array().items(CatalogModel.CollectionQuery()),
|
|
1015
1017
|
|
|
1016
1018
|
meta: Joi.any(),
|
|
1017
1019
|
|
|
1018
|
-
|
|
1020
|
+
is_active: Joi.boolean(),
|
|
1019
1021
|
|
|
1020
|
-
|
|
1022
|
+
app_id: Joi.string().allow(""),
|
|
1021
1023
|
|
|
1022
|
-
|
|
1024
|
+
type: Joi.string().allow(""),
|
|
1023
1025
|
|
|
1024
|
-
|
|
1026
|
+
allow_facets: Joi.boolean(),
|
|
1025
1027
|
|
|
1026
1028
|
_schedule: Joi.any(),
|
|
1027
1029
|
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
app_id: Joi.string().allow(""),
|
|
1030
|
+
tag: Joi.array().items(Joi.string().allow("")),
|
|
1031
1031
|
|
|
1032
|
-
|
|
1032
|
+
logo: CatalogModel.Media(),
|
|
1033
1033
|
|
|
1034
|
-
|
|
1034
|
+
description: Joi.string().allow(""),
|
|
1035
1035
|
|
|
1036
1036
|
allow_sort: Joi.boolean(),
|
|
1037
1037
|
|
|
1038
|
-
|
|
1038
|
+
priority: Joi.number(),
|
|
1039
1039
|
|
|
1040
|
-
|
|
1040
|
+
_custom_json: Joi.any(),
|
|
1041
1041
|
|
|
1042
|
-
|
|
1042
|
+
badge: Joi.any(),
|
|
1043
1043
|
|
|
1044
|
-
|
|
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
|
-
|
|
1072
|
+
collections: Joi.array().items(Joi.number()),
|
|
1073
1073
|
|
|
1074
1074
|
brands: Joi.array().items(Joi.number()),
|
|
1075
1075
|
|
|
1076
|
-
|
|
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
|
-
|
|
1097
|
-
|
|
1098
|
-
city: Joi.string().allow(""),
|
|
1096
|
+
store_code: Joi.string().allow(""),
|
|
1099
1097
|
|
|
1100
1098
|
address: Joi.string().allow(""),
|
|
1101
1099
|
|
|
1102
|
-
|
|
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
|
-
|
|
1108
|
+
store_email: Joi.string().allow(""),
|
|
1107
1109
|
|
|
1108
|
-
|
|
1110
|
+
country: Joi.string().allow(""),
|
|
1109
1111
|
|
|
1110
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1150
|
+
address1: Joi.string().allow(""),
|
|
1151
1151
|
|
|
1152
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1174
|
+
uid: Joi.number(),
|
|
1175
1175
|
|
|
1176
1176
|
company_type: Joi.string().allow(""),
|
|
1177
1177
|
|
|
1178
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1284
|
+
slug: Joi.any(),
|
|
1295
1285
|
|
|
1296
|
-
|
|
1286
|
+
images: Joi.array().items(Joi.any()),
|
|
1297
1287
|
|
|
1298
|
-
|
|
1288
|
+
hsn_code: Joi.number(),
|
|
1299
1289
|
|
|
1300
|
-
|
|
1290
|
+
has_variant: Joi.boolean(),
|
|
1291
|
+
|
|
1292
|
+
brand_uid: Joi.number(),
|
|
1301
1293
|
|
|
1302
1294
|
grouped_attributes: Joi.any(),
|
|
1303
1295
|
|
|
1304
|
-
|
|
1296
|
+
item_code: Joi.any(),
|
|
1297
|
+
|
|
1298
|
+
template_tag: Joi.any(),
|
|
1305
1299
|
|
|
1306
1300
|
rating: Joi.number(),
|
|
1307
1301
|
|
|
1308
|
-
|
|
1302
|
+
country_of_origin: Joi.any(),
|
|
1309
1303
|
|
|
1310
|
-
|
|
1304
|
+
rating_count: Joi.number(),
|
|
1311
1305
|
|
|
1312
|
-
|
|
1306
|
+
media: Joi.array().items(Joi.any()),
|
|
1307
|
+
|
|
1308
|
+
description: Joi.any(),
|
|
1313
1309
|
|
|
1314
1310
|
out_of_stock: Joi.boolean(),
|
|
1315
1311
|
|
|
1316
|
-
|
|
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
|
-
|
|
1322
|
+
value: Joi.any(),
|
|
1323
1323
|
|
|
1324
1324
|
display: Joi.any(),
|
|
1325
1325
|
|
|
1326
1326
|
is_available: Joi.boolean(),
|
|
1327
1327
|
|
|
1328
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1370
|
+
choice: Joi.any(),
|
|
1371
1371
|
|
|
1372
|
-
|
|
1372
|
+
meta: Joi.any(),
|
|
1373
1373
|
|
|
1374
|
-
|
|
1374
|
+
verified_by: CatalogModel.UserDetail(),
|
|
1375
1375
|
|
|
1376
|
-
|
|
1376
|
+
is_active: Joi.boolean(),
|
|
1377
1377
|
|
|
1378
|
-
|
|
1378
|
+
same_store_assignment: Joi.boolean(),
|
|
1379
1379
|
|
|
1380
|
-
|
|
1380
|
+
products: Joi.array().items(CatalogModel.ProductInGroup()).required(),
|
|
1381
1381
|
|
|
1382
1382
|
created_on: Joi.string().allow("").required(),
|
|
1383
1383
|
|
|
1384
|
-
|
|
1384
|
+
_id: Joi.any(),
|
|
1385
|
+
|
|
1386
|
+
modified_by: CatalogModel.UserDetail(),
|
|
1385
1387
|
|
|
1386
1388
|
created_by: CatalogModel.UserDetail(),
|
|
1387
1389
|
|
|
1388
|
-
|
|
1390
|
+
company_id: Joi.number(),
|
|
1389
1391
|
|
|
1390
|
-
|
|
1392
|
+
modified_on: Joi.string().allow("").required(),
|
|
1391
1393
|
|
|
1392
1394
|
name: Joi.any().required(),
|
|
1393
1395
|
|
|
1394
|
-
|
|
1396
|
+
page_visibility: Joi.array().items(Joi.any()),
|
|
1395
1397
|
|
|
1396
|
-
|
|
1398
|
+
logo: Joi.string().allow("").allow(null),
|
|
1397
1399
|
|
|
1398
|
-
|
|
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
|
|
1424
|
+
static ArticleAssignmentV3() {
|
|
1425
1425
|
return Joi.object({
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
currency_code: Joi.string().allow(""),
|
|
1429
|
-
|
|
1430
|
-
price: Joi.number(),
|
|
1426
|
+
strategy: Joi.string().allow(""),
|
|
1431
1427
|
|
|
1432
|
-
|
|
1428
|
+
level: Joi.string().allow(""),
|
|
1433
1429
|
});
|
|
1434
1430
|
}
|
|
1435
1431
|
|
|
1436
|
-
static
|
|
1432
|
+
static ReturnConfigSchemaV3() {
|
|
1437
1433
|
return Joi.object({
|
|
1438
|
-
|
|
1434
|
+
time: Joi.number(),
|
|
1439
1435
|
|
|
1440
|
-
|
|
1436
|
+
unit: Joi.string().allow(""),
|
|
1441
1437
|
|
|
1442
|
-
|
|
1438
|
+
returnable: Joi.boolean(),
|
|
1443
1439
|
});
|
|
1444
1440
|
}
|
|
1445
1441
|
|
|
1446
|
-
static
|
|
1442
|
+
static DetailsSchemaV3() {
|
|
1447
1443
|
return Joi.object({
|
|
1448
|
-
|
|
1444
|
+
type: Joi.string().allow(""),
|
|
1449
1445
|
|
|
1450
|
-
|
|
1451
|
-
});
|
|
1452
|
-
}
|
|
1446
|
+
key: Joi.string().allow(""),
|
|
1453
1447
|
|
|
1454
|
-
|
|
1455
|
-
return Joi.object({
|
|
1456
|
-
sizes: Joi.array().items(CatalogModel.ProductSetDistributionSizeV3()),
|
|
1448
|
+
value: Joi.string().allow(""),
|
|
1457
1449
|
});
|
|
1458
1450
|
}
|
|
1459
1451
|
|
|
1460
|
-
static
|
|
1452
|
+
static SellerGroupAttributes() {
|
|
1461
1453
|
return Joi.object({
|
|
1462
|
-
|
|
1454
|
+
details: Joi.array().items(CatalogModel.DetailsSchemaV3()),
|
|
1463
1455
|
|
|
1464
|
-
|
|
1456
|
+
title: Joi.string().allow(""),
|
|
1465
1457
|
});
|
|
1466
1458
|
}
|
|
1467
1459
|
|
|
1468
|
-
static
|
|
1460
|
+
static StoreV3() {
|
|
1469
1461
|
return Joi.object({
|
|
1470
|
-
|
|
1462
|
+
name: Joi.string().allow(""),
|
|
1471
1463
|
|
|
1472
|
-
|
|
1464
|
+
uid: Joi.number(),
|
|
1473
1465
|
|
|
1474
|
-
|
|
1466
|
+
count: Joi.number(),
|
|
1475
1467
|
});
|
|
1476
1468
|
}
|
|
1477
1469
|
|
|
1478
|
-
static
|
|
1470
|
+
static ProductStockUnitPriceV3() {
|
|
1479
1471
|
return Joi.object({
|
|
1480
|
-
|
|
1472
|
+
unit: Joi.string().allow(""),
|
|
1481
1473
|
|
|
1482
|
-
|
|
1474
|
+
currency_code: Joi.string().allow(""),
|
|
1483
1475
|
|
|
1484
|
-
|
|
1476
|
+
currency_symbol: Joi.string().allow(""),
|
|
1477
|
+
|
|
1478
|
+
price: Joi.number(),
|
|
1485
1479
|
});
|
|
1486
1480
|
}
|
|
1487
1481
|
|
|
1488
|
-
static
|
|
1482
|
+
static ProductSetDistributionSizeV3() {
|
|
1489
1483
|
return Joi.object({
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
key: Joi.string().allow(""),
|
|
1484
|
+
size: Joi.string().allow(""),
|
|
1493
1485
|
|
|
1494
|
-
|
|
1486
|
+
pieces: Joi.number(),
|
|
1495
1487
|
});
|
|
1496
1488
|
}
|
|
1497
1489
|
|
|
1498
|
-
static
|
|
1490
|
+
static ProductSetDistributionV3() {
|
|
1499
1491
|
return Joi.object({
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
details: Joi.array().items(CatalogModel.DetailsSchemaV3()),
|
|
1492
|
+
sizes: Joi.array().items(CatalogModel.ProductSetDistributionSizeV3()),
|
|
1503
1493
|
});
|
|
1504
1494
|
}
|
|
1505
1495
|
|
|
1506
|
-
static
|
|
1496
|
+
static ProductSetV3() {
|
|
1507
1497
|
return Joi.object({
|
|
1508
|
-
|
|
1498
|
+
quantity: Joi.number(),
|
|
1509
1499
|
|
|
1510
|
-
|
|
1500
|
+
size_distribution: CatalogModel.ProductSetDistributionV3(),
|
|
1511
1501
|
});
|
|
1512
1502
|
}
|
|
1513
1503
|
|
|
1514
|
-
static
|
|
1504
|
+
static ProductStockPriceV3() {
|
|
1515
1505
|
return Joi.object({
|
|
1516
|
-
|
|
1506
|
+
marked: Joi.number(),
|
|
1517
1507
|
|
|
1518
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1538
|
+
is_gift: Joi.boolean(),
|
|
1539
1539
|
|
|
1540
|
-
|
|
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
|
-
|
|
1550
|
+
article_id: Joi.string().allow(""),
|
|
1545
1551
|
|
|
1546
|
-
|
|
1552
|
+
price_per_unit: CatalogModel.ProductStockUnitPriceV3(),
|
|
1553
|
+
|
|
1554
|
+
set: CatalogModel.ProductSetV3(),
|
|
1547
1555
|
|
|
1548
1556
|
is_cod: Joi.boolean(),
|
|
1549
1557
|
|
|
1550
|
-
|
|
1558
|
+
seller_count: Joi.number(),
|
|
1551
1559
|
|
|
1552
1560
|
special_badge: Joi.string().allow(""),
|
|
1553
1561
|
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
price_per_piece: CatalogModel.ProductStockPriceV3(),
|
|
1562
|
+
quantity: Joi.number(),
|
|
1557
1563
|
|
|
1558
|
-
|
|
1559
|
-
CatalogModel.MarketPlaceSttributesSchemaV3()
|
|
1560
|
-
),
|
|
1564
|
+
discount: Joi.string().allow(""),
|
|
1561
1565
|
|
|
1562
|
-
|
|
1563
|
-
CatalogModel.SellerGroupAttributes()
|
|
1564
|
-
),
|
|
1566
|
+
price_per_piece: CatalogModel.ProductStockPriceV3(),
|
|
1565
1567
|
|
|
1566
1568
|
price: CatalogModel.ProductStockPriceV3(),
|
|
1567
1569
|
|
|
1568
|
-
|
|
1570
|
+
item_type: Joi.string().allow(""),
|
|
1569
1571
|
|
|
1570
1572
|
seller: CatalogModel.SellerV3(),
|
|
1571
1573
|
|
|
1572
|
-
|
|
1574
|
+
long_lat: Joi.array().items(Joi.number()),
|
|
1573
1575
|
|
|
1574
1576
|
pincode: Joi.number(),
|
|
1575
1577
|
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
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
|
}
|