@gofynd/fdk-client-javascript 3.16.3 → 3.17.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/README.md +1 -1
- package/package.json +1 -1
- package/sdk/application/ApplicationClient.d.ts +0 -2
- package/sdk/application/ApplicationClient.js +0 -2
- package/sdk/application/Cart/CartApplicationClient.d.ts +40 -0
- package/sdk/application/Cart/CartApplicationClient.js +176 -0
- package/sdk/application/Catalog/CatalogApplicationClient.d.ts +18 -4
- package/sdk/application/Catalog/CatalogApplicationClient.js +47 -4
- package/sdk/application/Content/ContentApplicationClient.d.ts +21 -1
- package/sdk/application/Content/ContentApplicationClient.js +93 -2
- package/sdk/application/Logistic/LogisticApplicationClient.d.ts +11 -21
- package/sdk/application/Logistic/LogisticApplicationClient.js +34 -83
- package/sdk/application/Order/OrderApplicationClient.d.ts +11 -0
- package/sdk/application/Order/OrderApplicationClient.js +50 -0
- package/sdk/application/Payment/PaymentApplicationClient.d.ts +5 -5
- package/sdk/application/Payment/PaymentApplicationClient.js +5 -4
- package/sdk/partner/Logistics/LogisticsPartnerClient.d.ts +84 -0
- package/sdk/partner/Logistics/LogisticsPartnerClient.js +712 -0
- package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +237 -1
- package/sdk/partner/Logistics/LogisticsPartnerModel.js +157 -0
- package/sdk/partner/Logistics/LogisticsPartnerValidator.d.ts +8 -0
- package/sdk/partner/Logistics/LogisticsPartnerValidator.js +70 -0
- package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +74 -12
- package/sdk/platform/Cart/CartPlatformApplicationClient.js +637 -36
- package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +225 -1
- package/sdk/platform/Cart/CartPlatformApplicationValidator.js +147 -0
- package/sdk/platform/Cart/CartPlatformModel.d.ts +952 -5
- package/sdk/platform/Cart/CartPlatformModel.js +598 -2
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +125 -5
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +831 -41
- package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +205 -7
- package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +154 -3
- package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +5 -16
- package/sdk/platform/Catalog/CatalogPlatformClient.js +8 -85
- package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +1025 -159
- package/sdk/platform/Catalog/CatalogPlatformModel.js +840 -165
- package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +8 -10
- package/sdk/platform/Catalog/CatalogPlatformValidator.js +3 -12
- package/sdk/platform/Common/CommonPlatformModel.d.ts +18 -1
- package/sdk/platform/Common/CommonPlatformModel.js +14 -0
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +1 -73
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +4 -462
- package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +7 -45
- package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +4 -55
- package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +10 -2
- package/sdk/platform/Communication/CommunicationPlatformModel.js +3 -2
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +14 -0
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +6 -0
- package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +92 -1
- package/sdk/platform/Configuration/ConfigurationPlatformModel.js +54 -0
- package/sdk/platform/Discount/DiscountPlatformModel.d.ts +21 -0
- package/sdk/platform/Discount/DiscountPlatformModel.js +9 -0
- package/sdk/platform/Order/OrderPlatformClient.d.ts +27 -19
- package/sdk/platform/Order/OrderPlatformClient.js +176 -108
- package/sdk/platform/Order/OrderPlatformModel.d.ts +359 -45
- package/sdk/platform/Order/OrderPlatformModel.js +218 -44
- package/sdk/platform/Order/OrderPlatformValidator.d.ts +40 -43
- package/sdk/platform/Order/OrderPlatformValidator.js +35 -30
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +14 -3
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +88 -6
- package/sdk/platform/Payment/PaymentPlatformApplicationValidator.d.ts +28 -3
- package/sdk/platform/Payment/PaymentPlatformApplicationValidator.js +22 -2
- package/sdk/platform/Payment/PaymentPlatformModel.d.ts +376 -11
- package/sdk/platform/Payment/PaymentPlatformModel.js +243 -10
- package/sdk/platform/PlatformApplicationClient.d.ts +0 -2
- package/sdk/platform/PlatformApplicationClient.js +0 -4
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +0 -13
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +0 -82
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +1 -10
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +0 -12
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +212 -28
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +133 -13
- package/sdk/platform/User/UserPlatformModel.d.ts +2 -2
- package/sdk/platform/User/UserPlatformModel.js +4 -4
- package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +29 -0
- package/sdk/platform/Webhook/WebhookPlatformModel.js +13 -0
- package/sdk/platform/index.d.ts +0 -1
- package/sdk/platform/index.js +0 -2
- package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +27 -1
- package/sdk/public/Configuration/ConfigurationPublicModel.js +19 -0
- package/sdk/public/Webhook/WebhookPublicModel.d.ts +29 -0
- package/sdk/public/Webhook/WebhookPublicModel.js +13 -0
- package/sdk/application/Rewards/RewardsApplicationClient.d.ts +0 -79
- package/sdk/application/Rewards/RewardsApplicationClient.js +0 -315
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.d.ts +0 -136
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +0 -976
- package/sdk/platform/Rewards/RewardsPlatformApplicationValidator.d.ts +0 -152
- package/sdk/platform/Rewards/RewardsPlatformApplicationValidator.js +0 -157
- package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +0 -387
- package/sdk/platform/Rewards/RewardsPlatformModel.js +0 -410
|
@@ -12,6 +12,11 @@ const Joi = require("joi");
|
|
|
12
12
|
* @property {ValidationError[]} errors - A list of validation errors in the request.
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
|
+
/**
|
|
16
|
+
* @typedef StandardError
|
|
17
|
+
* @property {string} message - A brief description of the error.
|
|
18
|
+
*/
|
|
19
|
+
|
|
15
20
|
/**
|
|
16
21
|
* @typedef AllSizes
|
|
17
22
|
* @property {ValidateIdentifier[]} [identifiers] - A collection of identifiers
|
|
@@ -116,6 +121,144 @@ const Joi = require("joi");
|
|
|
116
121
|
* @property {string} [name] - Name of the application.
|
|
117
122
|
* @property {number} priority - Defines the priority level for this
|
|
118
123
|
* configuration, with 1 being the highest.
|
|
124
|
+
* @property {SortWeights} [weights]
|
|
125
|
+
* @property {CohortSortingConfiguration} [cohorts]
|
|
126
|
+
*/
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* @typedef SortWeights
|
|
130
|
+
* @property {number} [popularity] - Controls how strongly overall product
|
|
131
|
+
* popularity influences ranking. Products with higher engagement and demand
|
|
132
|
+
* are ranked higher.
|
|
133
|
+
* @property {number} [availability] - Controls the importance of product
|
|
134
|
+
* availability and fulfilment readiness in ranking. Products that are more
|
|
135
|
+
* consistently available are prioritized over low-stock or unreliable items.
|
|
136
|
+
* @property {number} [conversion] - Controls the effectiveness of product
|
|
137
|
+
* conversion rates in ranking. Products that convert views into purchases
|
|
138
|
+
* more efficiently are ranked higher.
|
|
139
|
+
* @property {number} [sold_quantity] - Reflects historical sales volume of a
|
|
140
|
+
* product. Products with higher sales volumes are ranked higher.
|
|
141
|
+
* @property {number} [depth] - Measures size or variant depth of a product.
|
|
142
|
+
* Products with more size options and inventory depth are ranked higher.
|
|
143
|
+
* @property {number} [listing] - Represents recency or freshness of the product
|
|
144
|
+
* listing. Products that are recently listed or have fresh inventory are
|
|
145
|
+
* ranked higher.
|
|
146
|
+
* @property {number} [discount] - Indicates the promotional value of a product.
|
|
147
|
+
* Products with higher discounts or promotions are ranked higher.
|
|
148
|
+
* @property {number} [cancelled] - Reflects historical cancellation reliability
|
|
149
|
+
* of a product or seller. Products with lower cancellation rates are ranked higher.
|
|
150
|
+
* @property {number} [returns] - Measures post-purchase return behavior.
|
|
151
|
+
* Products with lower return rates are ranked higher.
|
|
152
|
+
* @property {number} [catalogue] - Represents quality and completeness of
|
|
153
|
+
* catalog content. Products with more complete and high-quality content are
|
|
154
|
+
* ranked higher.
|
|
155
|
+
* @property {number} [revenue] - Represents revenue contribution potential of a
|
|
156
|
+
* product. Products that generate higher revenue are ranked higher.
|
|
157
|
+
*/
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* @typedef CohortWeights
|
|
161
|
+
* @property {SortWeights} weights
|
|
162
|
+
*/
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* @typedef HighSpenderRepeatCustomerWeights
|
|
166
|
+
* @property {SortWeights} weights
|
|
167
|
+
*/
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* @typedef HyperactiveRepeatCustomerWeights
|
|
171
|
+
* @property {SortWeights} weights
|
|
172
|
+
*/
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* @typedef HighSpenderOccasionalCustomerWeights
|
|
176
|
+
* @property {SortWeights} weights
|
|
177
|
+
*/
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* @typedef StandardOccasionalCustomerWeights
|
|
181
|
+
* @property {SortWeights} weights
|
|
182
|
+
*/
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* @typedef DormantPremiumCustomerWeights
|
|
186
|
+
* @property {SortWeights} weights
|
|
187
|
+
*/
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* @typedef BudgetRegularCustomerWeights
|
|
191
|
+
* @property {SortWeights} weights
|
|
192
|
+
*/
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* @typedef HighSpenderRegularCustomerWeights
|
|
196
|
+
* @property {SortWeights} weights
|
|
197
|
+
*/
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* @typedef StandardCustomerAboutToChurnWeights
|
|
201
|
+
* @property {SortWeights} weights
|
|
202
|
+
*/
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* @typedef PremiumCustomerAboutToChurnWeights
|
|
206
|
+
* @property {SortWeights} weights
|
|
207
|
+
*/
|
|
208
|
+
|
|
209
|
+
/**
|
|
210
|
+
* @typedef HighSpenderCustomerAboutToChurnWeights
|
|
211
|
+
* @property {SortWeights} weights
|
|
212
|
+
*/
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* @typedef StandardDormantCustomerWeights
|
|
216
|
+
* @property {SortWeights} weights
|
|
217
|
+
*/
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* @typedef HighSpenderDormantCustomerWeights
|
|
221
|
+
* @property {SortWeights} weights
|
|
222
|
+
*/
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* @typedef PotentialCustomerWeights
|
|
226
|
+
* @property {SortWeights} weights
|
|
227
|
+
*/
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* @typedef NewCustomerWeights
|
|
231
|
+
* @property {SortWeights} weights
|
|
232
|
+
*/
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* @typedef BudgetRepeatCustomerWeights
|
|
236
|
+
* @property {SortWeights} weights
|
|
237
|
+
*/
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* @typedef AverageSpenderRepeatCustomerWeights
|
|
241
|
+
* @property {SortWeights} weights
|
|
242
|
+
*/
|
|
243
|
+
|
|
244
|
+
/**
|
|
245
|
+
* @typedef CohortSortingConfiguration
|
|
246
|
+
* @property {HighSpenderRepeatCustomerWeights} [high_spender_repeat_customer]
|
|
247
|
+
* @property {HyperactiveRepeatCustomerWeights} [hyperactive_premium_repeat_customer]
|
|
248
|
+
* @property {HighSpenderOccasionalCustomerWeights} [high_spender_occasional_customer]
|
|
249
|
+
* @property {StandardOccasionalCustomerWeights} [standard_occasional_customer]
|
|
250
|
+
* @property {DormantPremiumCustomerWeights} [dormant_premium_customer]
|
|
251
|
+
* @property {BudgetRegularCustomerWeights} [budget_regular_customer]
|
|
252
|
+
* @property {HighSpenderRegularCustomerWeights} [high_spender_regular_customer]
|
|
253
|
+
* @property {StandardCustomerAboutToChurnWeights} [standard_customer_about_to_churn]
|
|
254
|
+
* @property {PremiumCustomerAboutToChurnWeights} [premium_customer_about_to_churn]
|
|
255
|
+
* @property {HighSpenderCustomerAboutToChurnWeights} [high_spender_customer_about_to_churn]
|
|
256
|
+
* @property {StandardDormantCustomerWeights} [standard_dormant_customer]
|
|
257
|
+
* @property {HighSpenderDormantCustomerWeights} [high_spender_dormant_customer]
|
|
258
|
+
* @property {PotentialCustomerWeights} [potential_customer]
|
|
259
|
+
* @property {NewCustomerWeights} [new_customer]
|
|
260
|
+
* @property {BudgetRepeatCustomerWeights} [budget_repeat_customer]
|
|
261
|
+
* @property {AverageSpenderRepeatCustomerWeights} [average_spender_repeat_customer]
|
|
119
262
|
*/
|
|
120
263
|
|
|
121
264
|
/**
|
|
@@ -398,25 +541,6 @@ const Joi = require("joi");
|
|
|
398
541
|
* window category|product|no-return
|
|
399
542
|
*/
|
|
400
543
|
|
|
401
|
-
/**
|
|
402
|
-
* @typedef ArticleAssignment
|
|
403
|
-
* @property {string} [level]
|
|
404
|
-
* @property {string} [strategy]
|
|
405
|
-
*/
|
|
406
|
-
|
|
407
|
-
/**
|
|
408
|
-
* @typedef ArticleAssignment1
|
|
409
|
-
* @property {string} [level]
|
|
410
|
-
* @property {string} [strategy]
|
|
411
|
-
*/
|
|
412
|
-
|
|
413
|
-
/**
|
|
414
|
-
* @typedef ArticleQuery
|
|
415
|
-
* @property {number[]} [ignored_stores]
|
|
416
|
-
* @property {number} item_id
|
|
417
|
-
* @property {string} size
|
|
418
|
-
*/
|
|
419
|
-
|
|
420
544
|
/**
|
|
421
545
|
* @typedef ArticleStoreResponseSchema
|
|
422
546
|
* @property {string} [name]
|
|
@@ -425,26 +549,6 @@ const Joi = require("joi");
|
|
|
425
549
|
* @property {number} [uid]
|
|
426
550
|
*/
|
|
427
551
|
|
|
428
|
-
/**
|
|
429
|
-
* @typedef AssignStore
|
|
430
|
-
* @property {string} app_id
|
|
431
|
-
* @property {AssignStoreArticle[]} articles
|
|
432
|
-
* @property {string} [channel_identifier]
|
|
433
|
-
* @property {string} [channel_type]
|
|
434
|
-
* @property {number} [company_id]
|
|
435
|
-
* @property {string} pincode
|
|
436
|
-
* @property {number[]} [store_ids]
|
|
437
|
-
*/
|
|
438
|
-
|
|
439
|
-
/**
|
|
440
|
-
* @typedef AssignStoreArticle
|
|
441
|
-
* @property {ArticleAssignment} [article_assignment]
|
|
442
|
-
* @property {string} [group_id]
|
|
443
|
-
* @property {Object} [meta]
|
|
444
|
-
* @property {number} [quantity]
|
|
445
|
-
* @property {ArticleQuery} [query]
|
|
446
|
-
*/
|
|
447
|
-
|
|
448
552
|
/**
|
|
449
553
|
* @typedef AttributeDetailsGroup
|
|
450
554
|
* @property {string} display_type - The type of display used for the attribute,
|
|
@@ -3089,6 +3193,26 @@ const Joi = require("joi");
|
|
|
3089
3193
|
* @property {Page} [page]
|
|
3090
3194
|
*/
|
|
3091
3195
|
|
|
3196
|
+
/**
|
|
3197
|
+
* @typedef PriceStrategySchema
|
|
3198
|
+
* @property {string} currency - Currency for the pricing strategy
|
|
3199
|
+
* @property {number} adjustment_value - Adjustment value for the pricing strategy
|
|
3200
|
+
* @property {string} adjustment_type - Type of adjustment for the pricing strategy
|
|
3201
|
+
*/
|
|
3202
|
+
|
|
3203
|
+
/**
|
|
3204
|
+
* @typedef PriceFactoryResponseSchema
|
|
3205
|
+
* @property {string} [price_zone_id] - Unique identifier of the price zone
|
|
3206
|
+
* @property {string} [price_factory_id] - Unique identifier of the price factory
|
|
3207
|
+
* @property {string} [modified_by] - User who last modified the price factory
|
|
3208
|
+
* @property {string[]} [currencies] - List of currencies supported by the price factory
|
|
3209
|
+
* @property {string} [name] - Name of the price factory
|
|
3210
|
+
* @property {PriceStrategySchema[]} [price_strategy] - Pricing strategy for the
|
|
3211
|
+
* price factory
|
|
3212
|
+
* @property {boolean} [active] - Whether the price factory is active
|
|
3213
|
+
* @property {string} [created_by] - User who created the price factory
|
|
3214
|
+
*/
|
|
3215
|
+
|
|
3092
3216
|
/**
|
|
3093
3217
|
* @typedef Product
|
|
3094
3218
|
* @property {Object} [_custom_json] - A custom JSON object that can hold any
|
|
@@ -3875,8 +3999,7 @@ const Joi = require("joi");
|
|
|
3875
3999
|
* taxation purposes. This is required for indian products.
|
|
3876
4000
|
* @property {string} [hsn_code] - **Deprecated**: Harmonized System
|
|
3877
4001
|
* Nomenclature (HSN) code for taxation purposes. Please use the `hs_code`
|
|
3878
|
-
* field instead
|
|
3879
|
-
* _Deprecated_*
|
|
4002
|
+
* field instead.
|
|
3880
4003
|
* @property {string} [id] - Unique identifier of the product in the database.
|
|
3881
4004
|
* @property {string} [image_nature] - Describes the nature of the product
|
|
3882
4005
|
* images (e.g., "standard").
|
|
@@ -4385,27 +4508,6 @@ const Joi = require("joi");
|
|
|
4385
4508
|
* @property {string} [title] - The main title of the size guide.
|
|
4386
4509
|
*/
|
|
4387
4510
|
|
|
4388
|
-
/**
|
|
4389
|
-
* @typedef StoreAssignResponseSchema
|
|
4390
|
-
* @property {string} [_id]
|
|
4391
|
-
* @property {ArticleAssignment1} article_assignment
|
|
4392
|
-
* @property {number} [company_id]
|
|
4393
|
-
* @property {string} [group_id]
|
|
4394
|
-
* @property {number} [index]
|
|
4395
|
-
* @property {number} item_id
|
|
4396
|
-
* @property {Object} [meta]
|
|
4397
|
-
* @property {number} [price_effective]
|
|
4398
|
-
* @property {number} [price_marked]
|
|
4399
|
-
* @property {number} quantity
|
|
4400
|
-
* @property {string} [s_city]
|
|
4401
|
-
* @property {string} size
|
|
4402
|
-
* @property {boolean} status
|
|
4403
|
-
* @property {number} [store_id]
|
|
4404
|
-
* @property {number} [store_pincode]
|
|
4405
|
-
* @property {Object[]} [strategy_wise_listing]
|
|
4406
|
-
* @property {string} [uid]
|
|
4407
|
-
*/
|
|
4408
|
-
|
|
4409
4511
|
/**
|
|
4410
4512
|
* @typedef StoreDetail
|
|
4411
4513
|
* @property {Object[]} [additional_contacts]
|
|
@@ -4443,9 +4545,9 @@ const Joi = require("joi");
|
|
|
4443
4545
|
/**
|
|
4444
4546
|
* @typedef TaxIdentifier
|
|
4445
4547
|
* @property {string} [tax_rule_id] - The unique identifier of the tax rule.
|
|
4446
|
-
* @property {string} [hsn_code]
|
|
4447
|
-
* @property {string} [hsn_code_id]
|
|
4448
|
-
* @property {string} [reporting_hsn]
|
|
4548
|
+
* @property {string} [hsn_code]
|
|
4549
|
+
* @property {string} [hsn_code_id]
|
|
4550
|
+
* @property {string} [reporting_hsn]
|
|
4449
4551
|
*/
|
|
4450
4552
|
|
|
4451
4553
|
/**
|
|
@@ -4865,6 +4967,46 @@ const Joi = require("joi");
|
|
|
4865
4967
|
* @typedef TaxReqBodyVersion
|
|
4866
4968
|
* @property {TaxComponent[]} components - List of tax components with their
|
|
4867
4969
|
* respective slabs and rates.
|
|
4970
|
+
* @property {string} [applicable_date] - Optional future effective date for the
|
|
4971
|
+
* version. Must be at least one minute ahead of the current time when supplied.
|
|
4972
|
+
* @property {string} [region_type] - Required whenever areas are supplied to
|
|
4973
|
+
* indicate the granularity of the provided regions.
|
|
4974
|
+
* @property {TaxGeoArea} [areas]
|
|
4975
|
+
* @property {number[]} [store_ids] - Store identifiers for store-level taxation.
|
|
4976
|
+
*/
|
|
4977
|
+
|
|
4978
|
+
/**
|
|
4979
|
+
* @typedef TaxGeoArea
|
|
4980
|
+
* @property {string[]} regions - List of region identifiers based on the
|
|
4981
|
+
* selected region_type.
|
|
4982
|
+
* @property {string} country - Country identifier that groups the regions.
|
|
4983
|
+
*/
|
|
4984
|
+
|
|
4985
|
+
/**
|
|
4986
|
+
* @typedef AreaDetails
|
|
4987
|
+
* @property {string} [uid]
|
|
4988
|
+
* @property {string} [display_name]
|
|
4989
|
+
* @property {string} [sub_type]
|
|
4990
|
+
* @property {string[]} [parent_id]
|
|
4991
|
+
*/
|
|
4992
|
+
|
|
4993
|
+
/**
|
|
4994
|
+
* @typedef Country
|
|
4995
|
+
* @property {string} [uid]
|
|
4996
|
+
* @property {string} [display_name]
|
|
4997
|
+
*/
|
|
4998
|
+
|
|
4999
|
+
/**
|
|
5000
|
+
* @typedef Area
|
|
5001
|
+
* @property {AreaDetails[]} regions
|
|
5002
|
+
* @property {Country} country
|
|
5003
|
+
*/
|
|
5004
|
+
|
|
5005
|
+
/**
|
|
5006
|
+
* @typedef RegionReference
|
|
5007
|
+
* @property {string} [name]
|
|
5008
|
+
* @property {string} [slug]
|
|
5009
|
+
* @property {Area[]} [areas]
|
|
4868
5010
|
*/
|
|
4869
5011
|
|
|
4870
5012
|
/**
|
|
@@ -4877,12 +5019,17 @@ const Joi = require("joi");
|
|
|
4877
5019
|
* @typedef TaxVersion
|
|
4878
5020
|
* @property {string} [_id]
|
|
4879
5021
|
* @property {string} [rule_id] - Tax Rule ID.
|
|
4880
|
-
* @property {string} [applicable_date] -
|
|
4881
|
-
*
|
|
5022
|
+
* @property {string} [applicable_date] - Scheduled effective date for the
|
|
5023
|
+
* version. Must be at least one minute ahead of current time when provided.
|
|
4882
5024
|
* @property {string} [created_on]
|
|
4883
5025
|
* @property {string} [modified_on]
|
|
4884
5026
|
* @property {number} [company_id] - Company ID.
|
|
4885
5027
|
* @property {TaxStatusEnum} [status]
|
|
5028
|
+
* @property {string} [region_type] - Present when the version targets a
|
|
5029
|
+
* specific set of regions rather than the default country-level rule.
|
|
5030
|
+
* @property {TaxGeoArea} [areas]
|
|
5031
|
+
* @property {number[]} [store_ids] - Store identifiers for store-level taxation.
|
|
5032
|
+
* @property {TaxVersionScopeEnum} [scope]
|
|
4886
5033
|
* @property {TaxComponentResponseSchema[]} [components] - List of tax components.
|
|
4887
5034
|
*/
|
|
4888
5035
|
|
|
@@ -4890,15 +5037,24 @@ const Joi = require("joi");
|
|
|
4890
5037
|
* @typedef UpdateTaxVersionRequestBody
|
|
4891
5038
|
* @property {TaxComponentResponseSchema[]} components - List of tax components.
|
|
4892
5039
|
* @property {string} applicable_date - It is the date from when this rule will
|
|
4893
|
-
* come in effect. It should be
|
|
5040
|
+
* come in effect. It should be at least one minute in the future from the
|
|
5041
|
+
* current time.
|
|
5042
|
+
* @property {string} [region_type] - Required when areas are present to denote
|
|
5043
|
+
* the level (city/state/pincode) at which the version applies.
|
|
5044
|
+
* @property {TaxGeoArea} [areas]
|
|
5045
|
+
* @property {number[]} [store_ids] - Store identifiers for store-level taxation.
|
|
4894
5046
|
*/
|
|
4895
5047
|
|
|
4896
5048
|
/**
|
|
4897
5049
|
* @typedef CreateTaxVersionRequestBody
|
|
4898
5050
|
* @property {TaxComponent[]} components - List of tax components.
|
|
4899
|
-
* @property {string} applicable_date -
|
|
4900
|
-
* come in effect. It should be
|
|
4901
|
-
* current time. Date time format YYYY-MM-DDThh:mm:ss±hh:mm.
|
|
5051
|
+
* @property {string} [applicable_date] - Optional scheduled date from when this
|
|
5052
|
+
* rule will come in effect. It should be at least one minute in the future
|
|
5053
|
+
* from the current time. Date time format YYYY-MM-DDThh:mm:ss±hh:mm.
|
|
5054
|
+
* @property {string} [region_type] - Required when areas are present to denote
|
|
5055
|
+
* the level (city/state/pincode) at which the version applies.
|
|
5056
|
+
* @property {TaxGeoArea} [areas]
|
|
5057
|
+
* @property {number[]} [store_ids] - Store identifiers for store-level taxation.
|
|
4902
5058
|
*/
|
|
4903
5059
|
|
|
4904
5060
|
/**
|
|
@@ -4918,12 +5074,19 @@ const Joi = require("joi");
|
|
|
4918
5074
|
* @typedef TaxVersionDetail
|
|
4919
5075
|
* @property {string} _id
|
|
4920
5076
|
* @property {string} rule_id
|
|
4921
|
-
* @property {string} applicable_date
|
|
5077
|
+
* @property {string} applicable_date - It is the date from when this rule comes
|
|
5078
|
+
* in effect. Always present and should be at least one minute in the future
|
|
5079
|
+
* when scheduled.
|
|
4922
5080
|
* @property {string} created_on
|
|
4923
5081
|
* @property {string} modified_on
|
|
4924
5082
|
* @property {number} company_id
|
|
4925
5083
|
* @property {TaxStatusEnum} [status]
|
|
5084
|
+
* @property {string} [region_code] - Region code for areas sent when adding a
|
|
5085
|
+
* region override.
|
|
5086
|
+
* @property {number[]} [store_ids] - Store identifiers for store-level taxation.
|
|
5087
|
+
* @property {RegionReference} [region]
|
|
4926
5088
|
* @property {TaxComponent[]} components - List of components.
|
|
5089
|
+
* @property {TaxVersionScopeEnum} [scope]
|
|
4927
5090
|
* @property {string} version_status - Specifies the type of tax version.
|
|
4928
5091
|
*/
|
|
4929
5092
|
|
|
@@ -4933,12 +5096,6 @@ const Joi = require("joi");
|
|
|
4933
5096
|
* @property {TaxVersion} [versions]
|
|
4934
5097
|
*/
|
|
4935
5098
|
|
|
4936
|
-
/**
|
|
4937
|
-
* @typedef UpdateTaxVersion
|
|
4938
|
-
* @property {TaxComponent[]} components - List of components.
|
|
4939
|
-
* @property {string} applicable_date
|
|
4940
|
-
*/
|
|
4941
|
-
|
|
4942
5099
|
/**
|
|
4943
5100
|
* @typedef UpdateTaxRequestBody
|
|
4944
5101
|
* @property {TaxStatusEnum} status
|
|
@@ -4998,6 +5155,158 @@ const Joi = require("joi");
|
|
|
4998
5155
|
* @property {Page} page
|
|
4999
5156
|
*/
|
|
5000
5157
|
|
|
5158
|
+
/**
|
|
5159
|
+
* @typedef PriceFactoryListItemsSchema
|
|
5160
|
+
* @property {string} [price_factory_id] - Unique identifier for the price factory.
|
|
5161
|
+
* @property {string} [name] - Name of the price factory configuration.
|
|
5162
|
+
* @property {string} [type] - Type of price factory.
|
|
5163
|
+
* @property {string[]} [currencies] - List of currency codes (e.g., INR, USD).
|
|
5164
|
+
* @property {PriceStrategySchema[]} [price_strategy] - List of pricing
|
|
5165
|
+
* strategies to apply for each currency.
|
|
5166
|
+
* @property {string} [price_zone_id] - ID of the price zone.
|
|
5167
|
+
* @property {boolean} [active] - Status of the price factory (active/inactive).
|
|
5168
|
+
* @property {CreatedBy} [modified_by]
|
|
5169
|
+
* @property {CreatedBy} [created_by]
|
|
5170
|
+
* @property {string} [modified_on] - Timestamp of the last modification.
|
|
5171
|
+
*/
|
|
5172
|
+
|
|
5173
|
+
/**
|
|
5174
|
+
* @typedef PriceFactoryListResponseSchema
|
|
5175
|
+
* @property {Page} [page]
|
|
5176
|
+
* @property {PriceFactoryListItemsSchema[]} [data] - List of price factory
|
|
5177
|
+
* configurations.
|
|
5178
|
+
*/
|
|
5179
|
+
|
|
5180
|
+
/**
|
|
5181
|
+
* @typedef CreatePriceFactoryConfigSchema
|
|
5182
|
+
* @property {string} [name] - The name of the price factory configuration.
|
|
5183
|
+
* @property {string} [type] - Defines the type of price factory, either
|
|
5184
|
+
* regional or international.
|
|
5185
|
+
* @property {string[]} [currencies] - List of currency codes applicable for
|
|
5186
|
+
* pricing (e.g., USD, EUR).
|
|
5187
|
+
* @property {PriceStrategySchema[]} [price_strategy] - List of pricing
|
|
5188
|
+
* strategies to apply for each currency.
|
|
5189
|
+
* @property {string} [price_zone_id] - Identifier for the price zone associated
|
|
5190
|
+
* with the price factory.
|
|
5191
|
+
*/
|
|
5192
|
+
|
|
5193
|
+
/**
|
|
5194
|
+
* @typedef UpdatePriceFactoryConfigSchema
|
|
5195
|
+
* @property {string} [name] - The name of the price factory configuration.
|
|
5196
|
+
* @property {string[]} [currencies] - List of currency codes applicable for
|
|
5197
|
+
* pricing (e.g., USD, EUR).
|
|
5198
|
+
* @property {PriceStrategySchema[]} [price_strategy] - List of pricing
|
|
5199
|
+
* strategies to apply for each currency.
|
|
5200
|
+
* @property {string} [price_zone_id] - Identifier for the price zone associated
|
|
5201
|
+
* with the price factory.
|
|
5202
|
+
*/
|
|
5203
|
+
|
|
5204
|
+
/**
|
|
5205
|
+
* @typedef PriceFactoryConfigSchema
|
|
5206
|
+
* @property {string} [name] - The name of the price factory configuration.
|
|
5207
|
+
* @property {string} [type] - Defines the type of price factory, either
|
|
5208
|
+
* regional or international.
|
|
5209
|
+
* @property {string[]} [currencies] - List of currency codes applicable for
|
|
5210
|
+
* pricing (e.g., USD, EUR).
|
|
5211
|
+
* @property {PriceStrategySchema[]} [price_strategy] - List of pricing
|
|
5212
|
+
* strategies to apply for each currency.
|
|
5213
|
+
* @property {string} [price_zone_id] - Identifier for the price zone associated
|
|
5214
|
+
* with the price factory.
|
|
5215
|
+
* @property {CreatedBy} [created_by]
|
|
5216
|
+
* @property {CreatedBy} [modified_by]
|
|
5217
|
+
*/
|
|
5218
|
+
|
|
5219
|
+
/**
|
|
5220
|
+
* @typedef CurrencyPriceSchema
|
|
5221
|
+
* @property {number} marked_price - Original price before any discounts.
|
|
5222
|
+
* @property {number} selling_price - Final price after applying discounts or adjustments.
|
|
5223
|
+
* @property {string} currency - Currency code (e.g., USD, EUR).
|
|
5224
|
+
*/
|
|
5225
|
+
|
|
5226
|
+
/**
|
|
5227
|
+
* @typedef UpsertPriceFactorySizesSchema
|
|
5228
|
+
* @property {string} [size] - The identifier for the product size (e.g., S, M, L, OS).
|
|
5229
|
+
* @property {CurrencyPriceSchema[]} [currency_prices] - The list of currency prices
|
|
5230
|
+
*/
|
|
5231
|
+
|
|
5232
|
+
/**
|
|
5233
|
+
* @typedef UpsertPriceFactoryProductSchema
|
|
5234
|
+
* @property {UpsertPriceFactorySizesSchema[]} [sizes] - List of size-level
|
|
5235
|
+
* pricing configurations.
|
|
5236
|
+
* @property {boolean} [active] - Indicates whether the product configuration is active.
|
|
5237
|
+
*/
|
|
5238
|
+
|
|
5239
|
+
/**
|
|
5240
|
+
* @typedef PriceFactoryCurrencyPriceSchema
|
|
5241
|
+
* @property {boolean} [base_price] - Indicates if this price is the base price.
|
|
5242
|
+
* @property {string} [currency] - Currency code (e.g., INR).
|
|
5243
|
+
* @property {number} [selling_price] - The price at which the item is sold.
|
|
5244
|
+
* @property {number} [marked_price] - The original marked price of the item.
|
|
5245
|
+
*/
|
|
5246
|
+
|
|
5247
|
+
/**
|
|
5248
|
+
* @typedef PriceFactorySizesSchema
|
|
5249
|
+
* @property {string} [price_factory_id] - ID of the price factory entry.
|
|
5250
|
+
* @property {string} [seller_identifier] - Identifier of the seller for the item.
|
|
5251
|
+
* @property {string} [size] - Size of the product (e.g., OS).
|
|
5252
|
+
* @property {string} [price_zone_id] - Price zone identifier for
|
|
5253
|
+
* regional/international pricing.
|
|
5254
|
+
* @property {PriceFactoryCurrencyPriceSchema[]} [currency_prices] - Pricing
|
|
5255
|
+
* information across different currencies.
|
|
5256
|
+
*/
|
|
5257
|
+
|
|
5258
|
+
/**
|
|
5259
|
+
* @typedef PriceFactoryProductResponseSchema
|
|
5260
|
+
* @property {number} [item_id] - Unique identifier for the item in the price
|
|
5261
|
+
* factory response.
|
|
5262
|
+
* @property {string} [item_code] - Code identifying the item.
|
|
5263
|
+
* @property {string} [name] - Name of the item.
|
|
5264
|
+
* @property {boolean} [active] - Indicates if the item is currently active.
|
|
5265
|
+
* @property {string[]} [media] - List of media associated with the item.
|
|
5266
|
+
* @property {PriceFactorySizesSchema[]} [sizes] - List of size and pricing details.
|
|
5267
|
+
*/
|
|
5268
|
+
|
|
5269
|
+
/**
|
|
5270
|
+
* @typedef PriceFactoryProductListResponseSchema
|
|
5271
|
+
* @property {PriceFactoryProductResponseSchema[]} [items] - List of products
|
|
5272
|
+
* details with sizes and prices details.
|
|
5273
|
+
* @property {Page} [page]
|
|
5274
|
+
*/
|
|
5275
|
+
|
|
5276
|
+
/**
|
|
5277
|
+
* @typedef PriceRange
|
|
5278
|
+
* @property {number} [min] - Minimum price.
|
|
5279
|
+
* @property {number} [max] - Maximum price.
|
|
5280
|
+
*/
|
|
5281
|
+
|
|
5282
|
+
/**
|
|
5283
|
+
* @typedef CurrencyPrice
|
|
5284
|
+
* @property {number} [discount] - Discount value applied in percentage.
|
|
5285
|
+
* @property {string} [currency_code] - Currency code (e.g., 'INR', 'EUR').
|
|
5286
|
+
* @property {string} [currency_symbol] - Symbol of the currency.
|
|
5287
|
+
* @property {PriceRange} [marked]
|
|
5288
|
+
* @property {PriceRange} [effective]
|
|
5289
|
+
* @property {PriceRange} [selling]
|
|
5290
|
+
*/
|
|
5291
|
+
|
|
5292
|
+
/**
|
|
5293
|
+
* @typedef ProductPrice
|
|
5294
|
+
* @property {string} [zone_type] - Type of the pricing zone, e.g., 'price' or 'delivery'.
|
|
5295
|
+
* @property {string} [zone_identifier] - Unique identifier for the zone.
|
|
5296
|
+
* @property {CurrencyPrice[]} [currency_prices] - List of prices for different
|
|
5297
|
+
* currencies in this zone.
|
|
5298
|
+
*/
|
|
5299
|
+
|
|
5300
|
+
/**
|
|
5301
|
+
* @typedef AppProductPricesSchema
|
|
5302
|
+
* @property {string} [item_code] - Unique code identifying the item.
|
|
5303
|
+
* @property {number} [brand_uid] - Unique identifier for the brand.
|
|
5304
|
+
* @property {number} [item_id] - Unique identifier for the item.
|
|
5305
|
+
* @property {Object} [discount_meta] - Additional discount metadata.
|
|
5306
|
+
* @property {ProductPrice[]} [product_price] - Pricing information for various
|
|
5307
|
+
* zones and currencies.
|
|
5308
|
+
*/
|
|
5309
|
+
|
|
5001
5310
|
/**
|
|
5002
5311
|
* @typedef ActionPage
|
|
5003
5312
|
* @property {Object} [params] - Parameters that should be considered in path.
|
|
@@ -5048,6 +5357,8 @@ const Joi = require("joi");
|
|
|
5048
5357
|
|
|
5049
5358
|
/** @typedef {"ACTIVE" | "INACTIVE" | "DELETED"} TaxStatusEnum */
|
|
5050
5359
|
|
|
5360
|
+
/** @typedef {"COUNTRY" | "REGION" | "STORE"} TaxVersionScopeEnum */
|
|
5361
|
+
|
|
5051
5362
|
/** @typedef {"HS" | "SAC"} HsTypeEnum */
|
|
5052
5363
|
|
|
5053
5364
|
/**
|
|
@@ -5122,6 +5433,13 @@ class CatalogPlatformModel {
|
|
|
5122
5433
|
});
|
|
5123
5434
|
}
|
|
5124
5435
|
|
|
5436
|
+
/** @returns {StandardError} */
|
|
5437
|
+
static StandardError() {
|
|
5438
|
+
return Joi.object({
|
|
5439
|
+
message: Joi.string().allow("").required(),
|
|
5440
|
+
});
|
|
5441
|
+
}
|
|
5442
|
+
|
|
5125
5443
|
/** @returns {AllSizes} */
|
|
5126
5444
|
static AllSizes() {
|
|
5127
5445
|
return Joi.object({
|
|
@@ -5223,6 +5541,166 @@ class CatalogPlatformModel {
|
|
|
5223
5541
|
logo: Joi.string().allow(""),
|
|
5224
5542
|
name: Joi.string().allow(""),
|
|
5225
5543
|
priority: Joi.number().required(),
|
|
5544
|
+
weights: CatalogPlatformModel.SortWeights(),
|
|
5545
|
+
cohorts: CatalogPlatformModel.CohortSortingConfiguration(),
|
|
5546
|
+
});
|
|
5547
|
+
}
|
|
5548
|
+
|
|
5549
|
+
/** @returns {SortWeights} */
|
|
5550
|
+
static SortWeights() {
|
|
5551
|
+
return Joi.object({
|
|
5552
|
+
popularity: Joi.number(),
|
|
5553
|
+
availability: Joi.number(),
|
|
5554
|
+
conversion: Joi.number(),
|
|
5555
|
+
sold_quantity: Joi.number(),
|
|
5556
|
+
depth: Joi.number(),
|
|
5557
|
+
listing: Joi.number(),
|
|
5558
|
+
discount: Joi.number(),
|
|
5559
|
+
cancelled: Joi.number(),
|
|
5560
|
+
returns: Joi.number(),
|
|
5561
|
+
catalogue: Joi.number(),
|
|
5562
|
+
revenue: Joi.number(),
|
|
5563
|
+
});
|
|
5564
|
+
}
|
|
5565
|
+
|
|
5566
|
+
/** @returns {CohortWeights} */
|
|
5567
|
+
static CohortWeights() {
|
|
5568
|
+
return Joi.object({
|
|
5569
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5570
|
+
});
|
|
5571
|
+
}
|
|
5572
|
+
|
|
5573
|
+
/** @returns {HighSpenderRepeatCustomerWeights} */
|
|
5574
|
+
static HighSpenderRepeatCustomerWeights() {
|
|
5575
|
+
return Joi.object({
|
|
5576
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5577
|
+
});
|
|
5578
|
+
}
|
|
5579
|
+
|
|
5580
|
+
/** @returns {HyperactiveRepeatCustomerWeights} */
|
|
5581
|
+
static HyperactiveRepeatCustomerWeights() {
|
|
5582
|
+
return Joi.object({
|
|
5583
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5584
|
+
});
|
|
5585
|
+
}
|
|
5586
|
+
|
|
5587
|
+
/** @returns {HighSpenderOccasionalCustomerWeights} */
|
|
5588
|
+
static HighSpenderOccasionalCustomerWeights() {
|
|
5589
|
+
return Joi.object({
|
|
5590
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5591
|
+
});
|
|
5592
|
+
}
|
|
5593
|
+
|
|
5594
|
+
/** @returns {StandardOccasionalCustomerWeights} */
|
|
5595
|
+
static StandardOccasionalCustomerWeights() {
|
|
5596
|
+
return Joi.object({
|
|
5597
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5598
|
+
});
|
|
5599
|
+
}
|
|
5600
|
+
|
|
5601
|
+
/** @returns {DormantPremiumCustomerWeights} */
|
|
5602
|
+
static DormantPremiumCustomerWeights() {
|
|
5603
|
+
return Joi.object({
|
|
5604
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5605
|
+
});
|
|
5606
|
+
}
|
|
5607
|
+
|
|
5608
|
+
/** @returns {BudgetRegularCustomerWeights} */
|
|
5609
|
+
static BudgetRegularCustomerWeights() {
|
|
5610
|
+
return Joi.object({
|
|
5611
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5612
|
+
});
|
|
5613
|
+
}
|
|
5614
|
+
|
|
5615
|
+
/** @returns {HighSpenderRegularCustomerWeights} */
|
|
5616
|
+
static HighSpenderRegularCustomerWeights() {
|
|
5617
|
+
return Joi.object({
|
|
5618
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5619
|
+
});
|
|
5620
|
+
}
|
|
5621
|
+
|
|
5622
|
+
/** @returns {StandardCustomerAboutToChurnWeights} */
|
|
5623
|
+
static StandardCustomerAboutToChurnWeights() {
|
|
5624
|
+
return Joi.object({
|
|
5625
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5626
|
+
});
|
|
5627
|
+
}
|
|
5628
|
+
|
|
5629
|
+
/** @returns {PremiumCustomerAboutToChurnWeights} */
|
|
5630
|
+
static PremiumCustomerAboutToChurnWeights() {
|
|
5631
|
+
return Joi.object({
|
|
5632
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5633
|
+
});
|
|
5634
|
+
}
|
|
5635
|
+
|
|
5636
|
+
/** @returns {HighSpenderCustomerAboutToChurnWeights} */
|
|
5637
|
+
static HighSpenderCustomerAboutToChurnWeights() {
|
|
5638
|
+
return Joi.object({
|
|
5639
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5640
|
+
});
|
|
5641
|
+
}
|
|
5642
|
+
|
|
5643
|
+
/** @returns {StandardDormantCustomerWeights} */
|
|
5644
|
+
static StandardDormantCustomerWeights() {
|
|
5645
|
+
return Joi.object({
|
|
5646
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5647
|
+
});
|
|
5648
|
+
}
|
|
5649
|
+
|
|
5650
|
+
/** @returns {HighSpenderDormantCustomerWeights} */
|
|
5651
|
+
static HighSpenderDormantCustomerWeights() {
|
|
5652
|
+
return Joi.object({
|
|
5653
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5654
|
+
});
|
|
5655
|
+
}
|
|
5656
|
+
|
|
5657
|
+
/** @returns {PotentialCustomerWeights} */
|
|
5658
|
+
static PotentialCustomerWeights() {
|
|
5659
|
+
return Joi.object({
|
|
5660
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5661
|
+
});
|
|
5662
|
+
}
|
|
5663
|
+
|
|
5664
|
+
/** @returns {NewCustomerWeights} */
|
|
5665
|
+
static NewCustomerWeights() {
|
|
5666
|
+
return Joi.object({
|
|
5667
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5668
|
+
});
|
|
5669
|
+
}
|
|
5670
|
+
|
|
5671
|
+
/** @returns {BudgetRepeatCustomerWeights} */
|
|
5672
|
+
static BudgetRepeatCustomerWeights() {
|
|
5673
|
+
return Joi.object({
|
|
5674
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5675
|
+
});
|
|
5676
|
+
}
|
|
5677
|
+
|
|
5678
|
+
/** @returns {AverageSpenderRepeatCustomerWeights} */
|
|
5679
|
+
static AverageSpenderRepeatCustomerWeights() {
|
|
5680
|
+
return Joi.object({
|
|
5681
|
+
weights: CatalogPlatformModel.SortWeights().required(),
|
|
5682
|
+
});
|
|
5683
|
+
}
|
|
5684
|
+
|
|
5685
|
+
/** @returns {CohortSortingConfiguration} */
|
|
5686
|
+
static CohortSortingConfiguration() {
|
|
5687
|
+
return Joi.object({
|
|
5688
|
+
high_spender_repeat_customer: CatalogPlatformModel.HighSpenderRepeatCustomerWeights(),
|
|
5689
|
+
hyperactive_premium_repeat_customer: CatalogPlatformModel.HyperactiveRepeatCustomerWeights(),
|
|
5690
|
+
high_spender_occasional_customer: CatalogPlatformModel.HighSpenderOccasionalCustomerWeights(),
|
|
5691
|
+
standard_occasional_customer: CatalogPlatformModel.StandardOccasionalCustomerWeights(),
|
|
5692
|
+
dormant_premium_customer: CatalogPlatformModel.DormantPremiumCustomerWeights(),
|
|
5693
|
+
budget_regular_customer: CatalogPlatformModel.BudgetRegularCustomerWeights(),
|
|
5694
|
+
high_spender_regular_customer: CatalogPlatformModel.HighSpenderRegularCustomerWeights(),
|
|
5695
|
+
standard_customer_about_to_churn: CatalogPlatformModel.StandardCustomerAboutToChurnWeights(),
|
|
5696
|
+
premium_customer_about_to_churn: CatalogPlatformModel.PremiumCustomerAboutToChurnWeights(),
|
|
5697
|
+
high_spender_customer_about_to_churn: CatalogPlatformModel.HighSpenderCustomerAboutToChurnWeights(),
|
|
5698
|
+
standard_dormant_customer: CatalogPlatformModel.StandardDormantCustomerWeights(),
|
|
5699
|
+
high_spender_dormant_customer: CatalogPlatformModel.HighSpenderDormantCustomerWeights(),
|
|
5700
|
+
potential_customer: CatalogPlatformModel.PotentialCustomerWeights(),
|
|
5701
|
+
new_customer: CatalogPlatformModel.NewCustomerWeights(),
|
|
5702
|
+
budget_repeat_customer: CatalogPlatformModel.BudgetRepeatCustomerWeights(),
|
|
5703
|
+
average_spender_repeat_customer: CatalogPlatformModel.AverageSpenderRepeatCustomerWeights(),
|
|
5226
5704
|
});
|
|
5227
5705
|
}
|
|
5228
5706
|
|
|
@@ -5436,31 +5914,6 @@ class CatalogPlatformModel {
|
|
|
5436
5914
|
});
|
|
5437
5915
|
}
|
|
5438
5916
|
|
|
5439
|
-
/** @returns {ArticleAssignment} */
|
|
5440
|
-
static ArticleAssignment() {
|
|
5441
|
-
return Joi.object({
|
|
5442
|
-
level: Joi.string().allow(""),
|
|
5443
|
-
strategy: Joi.string().allow(""),
|
|
5444
|
-
});
|
|
5445
|
-
}
|
|
5446
|
-
|
|
5447
|
-
/** @returns {ArticleAssignment1} */
|
|
5448
|
-
static ArticleAssignment1() {
|
|
5449
|
-
return Joi.object({
|
|
5450
|
-
level: Joi.string().allow(""),
|
|
5451
|
-
strategy: Joi.string().allow(""),
|
|
5452
|
-
});
|
|
5453
|
-
}
|
|
5454
|
-
|
|
5455
|
-
/** @returns {ArticleQuery} */
|
|
5456
|
-
static ArticleQuery() {
|
|
5457
|
-
return Joi.object({
|
|
5458
|
-
ignored_stores: Joi.array().items(Joi.number()),
|
|
5459
|
-
item_id: Joi.number().required(),
|
|
5460
|
-
size: Joi.string().allow("").required(),
|
|
5461
|
-
});
|
|
5462
|
-
}
|
|
5463
|
-
|
|
5464
5917
|
/** @returns {ArticleStoreResponseSchema} */
|
|
5465
5918
|
static ArticleStoreResponseSchema() {
|
|
5466
5919
|
return Joi.object({
|
|
@@ -5471,32 +5924,6 @@ class CatalogPlatformModel {
|
|
|
5471
5924
|
});
|
|
5472
5925
|
}
|
|
5473
5926
|
|
|
5474
|
-
/** @returns {AssignStore} */
|
|
5475
|
-
static AssignStore() {
|
|
5476
|
-
return Joi.object({
|
|
5477
|
-
app_id: Joi.string().allow("").required(),
|
|
5478
|
-
articles: Joi.array()
|
|
5479
|
-
.items(CatalogPlatformModel.AssignStoreArticle())
|
|
5480
|
-
.required(),
|
|
5481
|
-
channel_identifier: Joi.string().allow(""),
|
|
5482
|
-
channel_type: Joi.string().allow(""),
|
|
5483
|
-
company_id: Joi.number(),
|
|
5484
|
-
pincode: Joi.string().allow("").required(),
|
|
5485
|
-
store_ids: Joi.array().items(Joi.number()),
|
|
5486
|
-
});
|
|
5487
|
-
}
|
|
5488
|
-
|
|
5489
|
-
/** @returns {AssignStoreArticle} */
|
|
5490
|
-
static AssignStoreArticle() {
|
|
5491
|
-
return Joi.object({
|
|
5492
|
-
article_assignment: CatalogPlatformModel.ArticleAssignment(),
|
|
5493
|
-
group_id: Joi.string().allow(""),
|
|
5494
|
-
meta: Joi.object().pattern(/\S/, Joi.any()),
|
|
5495
|
-
quantity: Joi.number(),
|
|
5496
|
-
query: CatalogPlatformModel.ArticleQuery(),
|
|
5497
|
-
});
|
|
5498
|
-
}
|
|
5499
|
-
|
|
5500
5927
|
/** @returns {AttributeDetailsGroup} */
|
|
5501
5928
|
static AttributeDetailsGroup() {
|
|
5502
5929
|
return Joi.object({
|
|
@@ -8385,6 +8812,31 @@ class CatalogPlatformModel {
|
|
|
8385
8812
|
});
|
|
8386
8813
|
}
|
|
8387
8814
|
|
|
8815
|
+
/** @returns {PriceStrategySchema} */
|
|
8816
|
+
static PriceStrategySchema() {
|
|
8817
|
+
return Joi.object({
|
|
8818
|
+
currency: Joi.string().allow("").required(),
|
|
8819
|
+
adjustment_value: Joi.number().required(),
|
|
8820
|
+
adjustment_type: Joi.string().allow("").required(),
|
|
8821
|
+
});
|
|
8822
|
+
}
|
|
8823
|
+
|
|
8824
|
+
/** @returns {PriceFactoryResponseSchema} */
|
|
8825
|
+
static PriceFactoryResponseSchema() {
|
|
8826
|
+
return Joi.object({
|
|
8827
|
+
price_zone_id: Joi.string().allow(""),
|
|
8828
|
+
price_factory_id: Joi.string().allow(""),
|
|
8829
|
+
modified_by: Joi.string().allow(""),
|
|
8830
|
+
currencies: Joi.array().items(Joi.string().allow("")),
|
|
8831
|
+
name: Joi.string().allow(""),
|
|
8832
|
+
price_strategy: Joi.array().items(
|
|
8833
|
+
CatalogPlatformModel.PriceStrategySchema()
|
|
8834
|
+
),
|
|
8835
|
+
active: Joi.boolean(),
|
|
8836
|
+
created_by: Joi.string().allow(""),
|
|
8837
|
+
});
|
|
8838
|
+
}
|
|
8839
|
+
|
|
8388
8840
|
/** @returns {Product} */
|
|
8389
8841
|
static Product() {
|
|
8390
8842
|
return Joi.object({
|
|
@@ -9678,31 +10130,6 @@ class CatalogPlatformModel {
|
|
|
9678
10130
|
});
|
|
9679
10131
|
}
|
|
9680
10132
|
|
|
9681
|
-
/** @returns {StoreAssignResponseSchema} */
|
|
9682
|
-
static StoreAssignResponseSchema() {
|
|
9683
|
-
return Joi.object({
|
|
9684
|
-
_id: Joi.string().allow(""),
|
|
9685
|
-
article_assignment: CatalogPlatformModel.ArticleAssignment1().required(),
|
|
9686
|
-
company_id: Joi.number(),
|
|
9687
|
-
group_id: Joi.string().allow(""),
|
|
9688
|
-
index: Joi.number(),
|
|
9689
|
-
item_id: Joi.number().required(),
|
|
9690
|
-
meta: Joi.object().pattern(/\S/, Joi.any()),
|
|
9691
|
-
price_effective: Joi.number(),
|
|
9692
|
-
price_marked: Joi.number(),
|
|
9693
|
-
quantity: Joi.number().required(),
|
|
9694
|
-
s_city: Joi.string().allow(""),
|
|
9695
|
-
size: Joi.string().allow("").required(),
|
|
9696
|
-
status: Joi.boolean().required(),
|
|
9697
|
-
store_id: Joi.number(),
|
|
9698
|
-
store_pincode: Joi.number(),
|
|
9699
|
-
strategy_wise_listing: Joi.array().items(
|
|
9700
|
-
Joi.object().pattern(/\S/, Joi.any())
|
|
9701
|
-
),
|
|
9702
|
-
uid: Joi.string().allow(""),
|
|
9703
|
-
});
|
|
9704
|
-
}
|
|
9705
|
-
|
|
9706
10133
|
/** @returns {StoreDetail} */
|
|
9707
10134
|
static StoreDetail() {
|
|
9708
10135
|
return Joi.object({
|
|
@@ -10216,6 +10643,53 @@ class CatalogPlatformModel {
|
|
|
10216
10643
|
components: Joi.array()
|
|
10217
10644
|
.items(CatalogPlatformModel.TaxComponent())
|
|
10218
10645
|
.required(),
|
|
10646
|
+
applicable_date: Joi.string().allow(""),
|
|
10647
|
+
region_type: Joi.string().allow(""),
|
|
10648
|
+
areas: CatalogPlatformModel.TaxGeoArea(),
|
|
10649
|
+
store_ids: Joi.array().items(Joi.number()),
|
|
10650
|
+
});
|
|
10651
|
+
}
|
|
10652
|
+
|
|
10653
|
+
/** @returns {TaxGeoArea} */
|
|
10654
|
+
static TaxGeoArea() {
|
|
10655
|
+
return Joi.object({
|
|
10656
|
+
regions: Joi.array().items(Joi.string().allow("")).required(),
|
|
10657
|
+
country: Joi.string().allow("").required(),
|
|
10658
|
+
});
|
|
10659
|
+
}
|
|
10660
|
+
|
|
10661
|
+
/** @returns {AreaDetails} */
|
|
10662
|
+
static AreaDetails() {
|
|
10663
|
+
return Joi.object({
|
|
10664
|
+
uid: Joi.string().allow(""),
|
|
10665
|
+
display_name: Joi.string().allow(""),
|
|
10666
|
+
sub_type: Joi.string().allow(""),
|
|
10667
|
+
parent_id: Joi.array().items(Joi.string().allow("")),
|
|
10668
|
+
});
|
|
10669
|
+
}
|
|
10670
|
+
|
|
10671
|
+
/** @returns {Country} */
|
|
10672
|
+
static Country() {
|
|
10673
|
+
return Joi.object({
|
|
10674
|
+
uid: Joi.string().allow(""),
|
|
10675
|
+
display_name: Joi.string().allow(""),
|
|
10676
|
+
});
|
|
10677
|
+
}
|
|
10678
|
+
|
|
10679
|
+
/** @returns {Area} */
|
|
10680
|
+
static Area() {
|
|
10681
|
+
return Joi.object({
|
|
10682
|
+
regions: Joi.array().items(CatalogPlatformModel.AreaDetails()).required(),
|
|
10683
|
+
country: CatalogPlatformModel.Country().required(),
|
|
10684
|
+
});
|
|
10685
|
+
}
|
|
10686
|
+
|
|
10687
|
+
/** @returns {RegionReference} */
|
|
10688
|
+
static RegionReference() {
|
|
10689
|
+
return Joi.object({
|
|
10690
|
+
name: Joi.string().allow(""),
|
|
10691
|
+
slug: Joi.string().allow(""),
|
|
10692
|
+
areas: Joi.array().items(CatalogPlatformModel.Area()),
|
|
10219
10693
|
});
|
|
10220
10694
|
}
|
|
10221
10695
|
|
|
@@ -10239,6 +10713,10 @@ class CatalogPlatformModel {
|
|
|
10239
10713
|
modified_on: Joi.string().allow(""),
|
|
10240
10714
|
company_id: Joi.number(),
|
|
10241
10715
|
status: CatalogPlatformModel.TaxStatusEnum(),
|
|
10716
|
+
region_type: Joi.string().allow(""),
|
|
10717
|
+
areas: CatalogPlatformModel.TaxGeoArea(),
|
|
10718
|
+
store_ids: Joi.array().items(Joi.number()),
|
|
10719
|
+
scope: CatalogPlatformModel.TaxVersionScopeEnum(),
|
|
10242
10720
|
components: Joi.array().items(
|
|
10243
10721
|
CatalogPlatformModel.TaxComponentResponseSchema()
|
|
10244
10722
|
),
|
|
@@ -10252,6 +10730,9 @@ class CatalogPlatformModel {
|
|
|
10252
10730
|
.items(CatalogPlatformModel.TaxComponentResponseSchema())
|
|
10253
10731
|
.required(),
|
|
10254
10732
|
applicable_date: Joi.string().allow("").required(),
|
|
10733
|
+
region_type: Joi.string().allow(""),
|
|
10734
|
+
areas: CatalogPlatformModel.TaxGeoArea(),
|
|
10735
|
+
store_ids: Joi.array().items(Joi.number()),
|
|
10255
10736
|
});
|
|
10256
10737
|
}
|
|
10257
10738
|
|
|
@@ -10261,7 +10742,10 @@ class CatalogPlatformModel {
|
|
|
10261
10742
|
components: Joi.array()
|
|
10262
10743
|
.items(CatalogPlatformModel.TaxComponent())
|
|
10263
10744
|
.required(),
|
|
10264
|
-
applicable_date: Joi.string().allow("")
|
|
10745
|
+
applicable_date: Joi.string().allow(""),
|
|
10746
|
+
region_type: Joi.string().allow(""),
|
|
10747
|
+
areas: CatalogPlatformModel.TaxGeoArea(),
|
|
10748
|
+
store_ids: Joi.array().items(Joi.number()),
|
|
10265
10749
|
});
|
|
10266
10750
|
}
|
|
10267
10751
|
|
|
@@ -10289,9 +10773,13 @@ class CatalogPlatformModel {
|
|
|
10289
10773
|
modified_on: Joi.string().allow("").required(),
|
|
10290
10774
|
company_id: Joi.number().required(),
|
|
10291
10775
|
status: CatalogPlatformModel.TaxStatusEnum(),
|
|
10776
|
+
region_code: Joi.string().allow(""),
|
|
10777
|
+
store_ids: Joi.array().items(Joi.number()),
|
|
10778
|
+
region: CatalogPlatformModel.RegionReference(),
|
|
10292
10779
|
components: Joi.array()
|
|
10293
10780
|
.items(CatalogPlatformModel.TaxComponent())
|
|
10294
10781
|
.required(),
|
|
10782
|
+
scope: CatalogPlatformModel.TaxVersionScopeEnum(),
|
|
10295
10783
|
version_status: Joi.string().allow("").required(),
|
|
10296
10784
|
});
|
|
10297
10785
|
}
|
|
@@ -10304,16 +10792,6 @@ class CatalogPlatformModel {
|
|
|
10304
10792
|
});
|
|
10305
10793
|
}
|
|
10306
10794
|
|
|
10307
|
-
/** @returns {UpdateTaxVersion} */
|
|
10308
|
-
static UpdateTaxVersion() {
|
|
10309
|
-
return Joi.object({
|
|
10310
|
-
components: Joi.array()
|
|
10311
|
-
.items(CatalogPlatformModel.TaxComponent())
|
|
10312
|
-
.required(),
|
|
10313
|
-
applicable_date: Joi.string().allow("").required(),
|
|
10314
|
-
});
|
|
10315
|
-
}
|
|
10316
|
-
|
|
10317
10795
|
/** @returns {UpdateTaxRequestBody} */
|
|
10318
10796
|
static UpdateTaxRequestBody() {
|
|
10319
10797
|
return Joi.object({
|
|
@@ -10392,6 +10870,188 @@ class CatalogPlatformModel {
|
|
|
10392
10870
|
});
|
|
10393
10871
|
}
|
|
10394
10872
|
|
|
10873
|
+
/** @returns {PriceFactoryListItemsSchema} */
|
|
10874
|
+
static PriceFactoryListItemsSchema() {
|
|
10875
|
+
return Joi.object({
|
|
10876
|
+
price_factory_id: Joi.string().allow(""),
|
|
10877
|
+
name: Joi.string().allow(""),
|
|
10878
|
+
type: Joi.string().allow(""),
|
|
10879
|
+
currencies: Joi.array().items(Joi.string().allow("")),
|
|
10880
|
+
price_strategy: Joi.array().items(
|
|
10881
|
+
CatalogPlatformModel.PriceStrategySchema()
|
|
10882
|
+
),
|
|
10883
|
+
price_zone_id: Joi.string().allow(""),
|
|
10884
|
+
active: Joi.boolean(),
|
|
10885
|
+
modified_by: CatalogPlatformModel.CreatedBy(),
|
|
10886
|
+
created_by: CatalogPlatformModel.CreatedBy(),
|
|
10887
|
+
modified_on: Joi.string().allow(""),
|
|
10888
|
+
});
|
|
10889
|
+
}
|
|
10890
|
+
|
|
10891
|
+
/** @returns {PriceFactoryListResponseSchema} */
|
|
10892
|
+
static PriceFactoryListResponseSchema() {
|
|
10893
|
+
return Joi.object({
|
|
10894
|
+
page: CatalogPlatformModel.Page(),
|
|
10895
|
+
data: Joi.array().items(
|
|
10896
|
+
CatalogPlatformModel.PriceFactoryListItemsSchema()
|
|
10897
|
+
),
|
|
10898
|
+
});
|
|
10899
|
+
}
|
|
10900
|
+
|
|
10901
|
+
/** @returns {CreatePriceFactoryConfigSchema} */
|
|
10902
|
+
static CreatePriceFactoryConfigSchema() {
|
|
10903
|
+
return Joi.object({
|
|
10904
|
+
name: Joi.string().allow(""),
|
|
10905
|
+
type: Joi.string().allow(""),
|
|
10906
|
+
currencies: Joi.array().items(Joi.string().allow("")),
|
|
10907
|
+
price_strategy: Joi.array().items(
|
|
10908
|
+
CatalogPlatformModel.PriceStrategySchema()
|
|
10909
|
+
),
|
|
10910
|
+
price_zone_id: Joi.string().allow(""),
|
|
10911
|
+
});
|
|
10912
|
+
}
|
|
10913
|
+
|
|
10914
|
+
/** @returns {UpdatePriceFactoryConfigSchema} */
|
|
10915
|
+
static UpdatePriceFactoryConfigSchema() {
|
|
10916
|
+
return Joi.object({
|
|
10917
|
+
name: Joi.string().allow(""),
|
|
10918
|
+
currencies: Joi.array().items(Joi.string().allow("")),
|
|
10919
|
+
price_strategy: Joi.array().items(
|
|
10920
|
+
CatalogPlatformModel.PriceStrategySchema()
|
|
10921
|
+
),
|
|
10922
|
+
price_zone_id: Joi.string().allow(""),
|
|
10923
|
+
});
|
|
10924
|
+
}
|
|
10925
|
+
|
|
10926
|
+
/** @returns {PriceFactoryConfigSchema} */
|
|
10927
|
+
static PriceFactoryConfigSchema() {
|
|
10928
|
+
return Joi.object({
|
|
10929
|
+
name: Joi.string().allow(""),
|
|
10930
|
+
type: Joi.string().allow(""),
|
|
10931
|
+
currencies: Joi.array().items(Joi.string().allow("")),
|
|
10932
|
+
price_strategy: Joi.array().items(
|
|
10933
|
+
CatalogPlatformModel.PriceStrategySchema()
|
|
10934
|
+
),
|
|
10935
|
+
price_zone_id: Joi.string().allow(""),
|
|
10936
|
+
created_by: CatalogPlatformModel.CreatedBy(),
|
|
10937
|
+
modified_by: CatalogPlatformModel.CreatedBy(),
|
|
10938
|
+
});
|
|
10939
|
+
}
|
|
10940
|
+
|
|
10941
|
+
/** @returns {CurrencyPriceSchema} */
|
|
10942
|
+
static CurrencyPriceSchema() {
|
|
10943
|
+
return Joi.object({
|
|
10944
|
+
marked_price: Joi.number().required(),
|
|
10945
|
+
selling_price: Joi.number().required(),
|
|
10946
|
+
currency: Joi.string().allow("").required(),
|
|
10947
|
+
});
|
|
10948
|
+
}
|
|
10949
|
+
|
|
10950
|
+
/** @returns {UpsertPriceFactorySizesSchema} */
|
|
10951
|
+
static UpsertPriceFactorySizesSchema() {
|
|
10952
|
+
return Joi.object({
|
|
10953
|
+
size: Joi.string().allow(""),
|
|
10954
|
+
currency_prices: Joi.array().items(
|
|
10955
|
+
CatalogPlatformModel.CurrencyPriceSchema()
|
|
10956
|
+
),
|
|
10957
|
+
});
|
|
10958
|
+
}
|
|
10959
|
+
|
|
10960
|
+
/** @returns {UpsertPriceFactoryProductSchema} */
|
|
10961
|
+
static UpsertPriceFactoryProductSchema() {
|
|
10962
|
+
return Joi.object({
|
|
10963
|
+
sizes: Joi.array().items(
|
|
10964
|
+
CatalogPlatformModel.UpsertPriceFactorySizesSchema()
|
|
10965
|
+
),
|
|
10966
|
+
active: Joi.boolean(),
|
|
10967
|
+
});
|
|
10968
|
+
}
|
|
10969
|
+
|
|
10970
|
+
/** @returns {PriceFactoryCurrencyPriceSchema} */
|
|
10971
|
+
static PriceFactoryCurrencyPriceSchema() {
|
|
10972
|
+
return Joi.object({
|
|
10973
|
+
base_price: Joi.boolean(),
|
|
10974
|
+
currency: Joi.string().allow(""),
|
|
10975
|
+
selling_price: Joi.number(),
|
|
10976
|
+
marked_price: Joi.number(),
|
|
10977
|
+
});
|
|
10978
|
+
}
|
|
10979
|
+
|
|
10980
|
+
/** @returns {PriceFactorySizesSchema} */
|
|
10981
|
+
static PriceFactorySizesSchema() {
|
|
10982
|
+
return Joi.object({
|
|
10983
|
+
price_factory_id: Joi.string().allow(""),
|
|
10984
|
+
seller_identifier: Joi.string().allow(""),
|
|
10985
|
+
size: Joi.string().allow(""),
|
|
10986
|
+
price_zone_id: Joi.string().allow(""),
|
|
10987
|
+
currency_prices: Joi.array().items(
|
|
10988
|
+
CatalogPlatformModel.PriceFactoryCurrencyPriceSchema()
|
|
10989
|
+
),
|
|
10990
|
+
});
|
|
10991
|
+
}
|
|
10992
|
+
|
|
10993
|
+
/** @returns {PriceFactoryProductResponseSchema} */
|
|
10994
|
+
static PriceFactoryProductResponseSchema() {
|
|
10995
|
+
return Joi.object({
|
|
10996
|
+
item_id: Joi.number(),
|
|
10997
|
+
item_code: Joi.string().allow(""),
|
|
10998
|
+
name: Joi.string().allow(""),
|
|
10999
|
+
active: Joi.boolean(),
|
|
11000
|
+
media: Joi.array().items(Joi.string().allow("")),
|
|
11001
|
+
sizes: Joi.array().items(CatalogPlatformModel.PriceFactorySizesSchema()),
|
|
11002
|
+
});
|
|
11003
|
+
}
|
|
11004
|
+
|
|
11005
|
+
/** @returns {PriceFactoryProductListResponseSchema} */
|
|
11006
|
+
static PriceFactoryProductListResponseSchema() {
|
|
11007
|
+
return Joi.object({
|
|
11008
|
+
items: Joi.array().items(
|
|
11009
|
+
CatalogPlatformModel.PriceFactoryProductResponseSchema()
|
|
11010
|
+
),
|
|
11011
|
+
page: CatalogPlatformModel.Page(),
|
|
11012
|
+
});
|
|
11013
|
+
}
|
|
11014
|
+
|
|
11015
|
+
/** @returns {PriceRange} */
|
|
11016
|
+
static PriceRange() {
|
|
11017
|
+
return Joi.object({
|
|
11018
|
+
min: Joi.number(),
|
|
11019
|
+
max: Joi.number(),
|
|
11020
|
+
});
|
|
11021
|
+
}
|
|
11022
|
+
|
|
11023
|
+
/** @returns {CurrencyPrice} */
|
|
11024
|
+
static CurrencyPrice() {
|
|
11025
|
+
return Joi.object({
|
|
11026
|
+
discount: Joi.number(),
|
|
11027
|
+
currency_code: Joi.string().allow(""),
|
|
11028
|
+
currency_symbol: Joi.string().allow(""),
|
|
11029
|
+
marked: CatalogPlatformModel.PriceRange(),
|
|
11030
|
+
effective: CatalogPlatformModel.PriceRange(),
|
|
11031
|
+
selling: CatalogPlatformModel.PriceRange(),
|
|
11032
|
+
});
|
|
11033
|
+
}
|
|
11034
|
+
|
|
11035
|
+
/** @returns {ProductPrice} */
|
|
11036
|
+
static ProductPrice() {
|
|
11037
|
+
return Joi.object({
|
|
11038
|
+
zone_type: Joi.string().allow(""),
|
|
11039
|
+
zone_identifier: Joi.string().allow(""),
|
|
11040
|
+
currency_prices: Joi.array().items(CatalogPlatformModel.CurrencyPrice()),
|
|
11041
|
+
});
|
|
11042
|
+
}
|
|
11043
|
+
|
|
11044
|
+
/** @returns {AppProductPricesSchema} */
|
|
11045
|
+
static AppProductPricesSchema() {
|
|
11046
|
+
return Joi.object({
|
|
11047
|
+
item_code: Joi.string().allow(""),
|
|
11048
|
+
brand_uid: Joi.number(),
|
|
11049
|
+
item_id: Joi.number(),
|
|
11050
|
+
discount_meta: Joi.object().pattern(/\S/, Joi.any()),
|
|
11051
|
+
product_price: Joi.array().items(CatalogPlatformModel.ProductPrice()),
|
|
11052
|
+
});
|
|
11053
|
+
}
|
|
11054
|
+
|
|
10395
11055
|
/** @returns {ActionPage} */
|
|
10396
11056
|
static ActionPage() {
|
|
10397
11057
|
return Joi.object({
|
|
@@ -10468,6 +11128,21 @@ class CatalogPlatformModel {
|
|
|
10468
11128
|
);
|
|
10469
11129
|
}
|
|
10470
11130
|
|
|
11131
|
+
/**
|
|
11132
|
+
* Enum: TaxVersionScopeEnum Used By: Catalog
|
|
11133
|
+
*
|
|
11134
|
+
* @returns {TaxVersionScopeEnum}
|
|
11135
|
+
*/
|
|
11136
|
+
static TaxVersionScopeEnum() {
|
|
11137
|
+
return Joi.string().valid(
|
|
11138
|
+
"COUNTRY",
|
|
11139
|
+
|
|
11140
|
+
"REGION",
|
|
11141
|
+
|
|
11142
|
+
"STORE"
|
|
11143
|
+
);
|
|
11144
|
+
}
|
|
11145
|
+
|
|
10471
11146
|
/**
|
|
10472
11147
|
* Enum: HsTypeEnum Used By: Catalog
|
|
10473
11148
|
*
|