@gofynd/fdk-client-javascript 3.3.5 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/sdk/application/Cart/CartApplicationClient.d.ts +30 -30
- package/sdk/application/Cart/CartApplicationClient.js +30 -30
- package/sdk/application/Catalog/CatalogApplicationClient.d.ts +36 -33
- package/sdk/application/Catalog/CatalogApplicationClient.js +54 -35
- package/sdk/application/Common/CommonApplicationClient.d.ts +2 -2
- package/sdk/application/Common/CommonApplicationClient.js +2 -2
- package/sdk/application/Communication/CommunicationApplicationClient.d.ts +3 -3
- package/sdk/application/Communication/CommunicationApplicationClient.js +3 -3
- package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +16 -16
- package/sdk/application/Configuration/ConfigurationApplicationClient.js +16 -16
- package/sdk/application/Content/ContentApplicationClient.d.ts +24 -24
- package/sdk/application/Content/ContentApplicationClient.js +24 -24
- package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +3 -3
- package/sdk/application/FileStorage/FileStorageApplicationClient.js +3 -3
- package/sdk/application/Finance/FinanceApplicationClient.d.ts +2 -2
- package/sdk/application/Finance/FinanceApplicationClient.js +2 -2
- package/sdk/application/Lead/LeadApplicationClient.d.ts +5 -5
- package/sdk/application/Lead/LeadApplicationClient.js +5 -5
- package/sdk/application/Logistic/LogisticApplicationClient.d.ts +19 -9
- package/sdk/application/Logistic/LogisticApplicationClient.js +53 -9
- package/sdk/application/Order/OrderApplicationClient.d.ts +12 -12
- package/sdk/application/Order/OrderApplicationClient.js +12 -12
- package/sdk/application/Payment/PaymentApplicationClient.d.ts +46 -46
- package/sdk/application/Payment/PaymentApplicationClient.js +46 -46
- package/sdk/application/Rewards/RewardsApplicationClient.d.ts +7 -7
- package/sdk/application/Rewards/RewardsApplicationClient.js +7 -7
- package/sdk/application/Share/ShareApplicationClient.d.ts +7 -7
- package/sdk/application/Share/ShareApplicationClient.js +7 -7
- package/sdk/application/Theme/ThemeApplicationClient.d.ts +4 -4
- package/sdk/application/Theme/ThemeApplicationClient.js +4 -4
- package/sdk/application/User/UserApplicationClient.d.ts +47 -47
- package/sdk/application/User/UserApplicationClient.js +47 -47
- package/sdk/application/Webhook/WebhookApplicationClient.d.ts +1 -1
- package/sdk/application/Webhook/WebhookApplicationClient.js +1 -1
- package/sdk/partner/FileStorage/FileStoragePartnerClient.d.ts +6 -6
- package/sdk/partner/FileStorage/FileStoragePartnerClient.js +6 -6
- package/sdk/partner/Lead/LeadPartnerClient.d.ts +7 -7
- package/sdk/partner/Lead/LeadPartnerClient.js +7 -7
- package/sdk/partner/Lead/LeadPartnerModel.d.ts +2 -2
- package/sdk/partner/Lead/LeadPartnerModel.js +1 -1
- package/sdk/partner/Logistics/LogisticsPartnerClient.d.ts +25 -25
- package/sdk/partner/Logistics/LogisticsPartnerClient.js +25 -25
- package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +6 -6
- package/sdk/partner/Logistics/LogisticsPartnerModel.js +3 -3
- package/sdk/partner/Theme/ThemePartnerClient.d.ts +24 -24
- package/sdk/partner/Theme/ThemePartnerClient.js +24 -24
- package/sdk/partner/Webhook/WebhookPartnerClient.d.ts +10 -10
- package/sdk/partner/Webhook/WebhookPartnerClient.js +10 -10
- package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +7 -2
- package/sdk/partner/Webhook/WebhookPartnerModel.js +3 -1
- package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.d.ts +3 -3
- package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.js +3 -3
- package/sdk/platform/Analytics/AnalyticsPlatformModel.d.ts +2 -2
- package/sdk/platform/Analytics/AnalyticsPlatformModel.js +1 -1
- package/sdk/platform/AuditTrail/AuditTrailPlatformClient.d.ts +1 -1
- package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +1 -1
- package/sdk/platform/Billing/BillingPlatformClient.d.ts +5 -5
- package/sdk/platform/Billing/BillingPlatformClient.js +5 -5
- package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +62 -62
- package/sdk/platform/Cart/CartPlatformApplicationClient.js +62 -62
- package/sdk/platform/Cart/CartPlatformModel.d.ts +233 -3
- package/sdk/platform/Cart/CartPlatformModel.js +147 -1
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +66 -66
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +66 -66
- package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +81 -79
- package/sdk/platform/Catalog/CatalogPlatformClient.js +93 -80
- package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +89 -5
- package/sdk/platform/Catalog/CatalogPlatformModel.js +57 -3
- package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +7 -2
- package/sdk/platform/Catalog/CatalogPlatformValidator.js +4 -2
- package/sdk/platform/Common/CommonPlatformClient.d.ts +2 -2
- package/sdk/platform/Common/CommonPlatformClient.js +2 -2
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +67 -67
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +67 -67
- package/sdk/platform/Communication/CommunicationPlatformClient.d.ts +1 -1
- package/sdk/platform/Communication/CommunicationPlatformClient.js +1 -1
- package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +2 -2
- package/sdk/platform/Communication/CommunicationPlatformModel.js +1 -1
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +14 -14
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +14 -14
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +2 -2
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +1 -1
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +32 -32
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +32 -32
- package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +11 -11
- package/sdk/platform/Configuration/ConfigurationPlatformClient.js +11 -11
- package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +19 -3
- package/sdk/platform/Configuration/ConfigurationPlatformModel.js +16 -1
- package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +107 -107
- package/sdk/platform/Content/ContentPlatformApplicationClient.js +107 -107
- package/sdk/platform/Content/ContentPlatformClient.d.ts +40 -40
- package/sdk/platform/Content/ContentPlatformClient.js +40 -40
- package/sdk/platform/Content/ContentPlatformModel.d.ts +2 -2
- package/sdk/platform/Content/ContentPlatformModel.js +1 -1
- package/sdk/platform/Discount/DiscountPlatformClient.d.ts +11 -11
- package/sdk/platform/Discount/DiscountPlatformClient.js +11 -11
- package/sdk/platform/Discount/DiscountPlatformModel.d.ts +2 -2
- package/sdk/platform/Discount/DiscountPlatformModel.js +1 -1
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +4 -4
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +4 -4
- package/sdk/platform/FileStorage/FileStoragePlatformClient.d.ts +6 -6
- package/sdk/platform/FileStorage/FileStoragePlatformClient.js +6 -6
- package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +10 -10
- package/sdk/platform/Lead/LeadPlatformApplicationClient.js +10 -10
- package/sdk/platform/Lead/LeadPlatformClient.d.ts +9 -9
- package/sdk/platform/Lead/LeadPlatformClient.js +9 -9
- package/sdk/platform/Lead/LeadPlatformModel.d.ts +2 -2
- package/sdk/platform/Lead/LeadPlatformModel.js +1 -1
- package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +5 -5
- package/sdk/platform/Order/OrderPlatformApplicationClient.js +5 -5
- package/sdk/platform/Order/OrderPlatformClient.d.ts +58 -58
- package/sdk/platform/Order/OrderPlatformClient.js +58 -58
- package/sdk/platform/Order/OrderPlatformModel.d.ts +29 -10
- package/sdk/platform/Order/OrderPlatformModel.js +28 -6
- package/sdk/platform/Partner/PartnerPlatformApplicationClient.d.ts +2 -2
- package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +2 -2
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +51 -51
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +51 -51
- package/sdk/platform/Payment/PaymentPlatformClient.d.ts +10 -10
- package/sdk/platform/Payment/PaymentPlatformClient.js +10 -10
- package/sdk/platform/Payment/PaymentPlatformModel.d.ts +2 -2
- package/sdk/platform/Payment/PaymentPlatformModel.js +1 -1
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.d.ts +12 -12
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +12 -12
- package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +2 -2
- package/sdk/platform/Rewards/RewardsPlatformModel.js +1 -1
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +162 -39
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +840 -73
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +139 -1
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +125 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +30 -30
- package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +36 -30
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +936 -62
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +591 -33
- package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +12 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +5 -0
- package/sdk/platform/Share/SharePlatformApplicationClient.d.ts +5 -5
- package/sdk/platform/Share/SharePlatformApplicationClient.js +5 -5
- package/sdk/platform/Share/SharePlatformModel.d.ts +2 -2
- package/sdk/platform/Share/SharePlatformModel.js +1 -1
- package/sdk/platform/Theme/ThemePlatformApplicationClient.d.ts +22 -22
- package/sdk/platform/Theme/ThemePlatformApplicationClient.js +22 -22
- package/sdk/platform/Theme/ThemePlatformClient.d.ts +4 -4
- package/sdk/platform/Theme/ThemePlatformClient.js +4 -4
- package/sdk/platform/User/UserPlatformApplicationClient.d.ts +70 -34
- package/sdk/platform/User/UserPlatformApplicationClient.js +285 -34
- package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +38 -1
- package/sdk/platform/User/UserPlatformApplicationValidator.js +42 -0
- package/sdk/platform/User/UserPlatformModel.d.ts +430 -10
- package/sdk/platform/User/UserPlatformModel.js +276 -7
- package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +9 -9
- package/sdk/platform/Webhook/WebhookPlatformClient.js +9 -9
- package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +12 -2
- package/sdk/platform/Webhook/WebhookPlatformModel.js +5 -1
- package/sdk/public/Catalog/CatalogPublicClient.d.ts +1 -1
- package/sdk/public/Catalog/CatalogPublicClient.js +1 -1
- package/sdk/public/Configuration/ConfigurationPublicClient.d.ts +2 -2
- package/sdk/public/Configuration/ConfigurationPublicClient.js +2 -2
- package/sdk/public/Content/ContentPublicClient.d.ts +14 -14
- package/sdk/public/Content/ContentPublicClient.js +14 -14
- package/sdk/public/Partner/PartnerPublicClient.d.ts +1 -1
- package/sdk/public/Partner/PartnerPublicClient.js +1 -1
- package/sdk/public/Webhook/WebhookPublicClient.d.ts +5 -5
- package/sdk/public/Webhook/WebhookPublicClient.js +5 -5
|
@@ -1,5 +1,82 @@
|
|
|
1
1
|
const Joi = require("joi");
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* @typedef FulfillmentOption
|
|
5
|
+
* @property {string} [name] - Name of the fulfillment option.
|
|
6
|
+
* @property {string} [slug] - Unique identifier for the fulfillment option.
|
|
7
|
+
* @property {number} [company_id] - The unique identifier of the company.
|
|
8
|
+
* @property {string} [application_id] - The unique identifier of the application.
|
|
9
|
+
* @property {string} [description] - Description of the fulfillment option.
|
|
10
|
+
* @property {boolean} [is_default] - Whether this is the default fulfillment option.
|
|
11
|
+
* @property {string} [type] - Type of fulfillment option.
|
|
12
|
+
* @property {string} [status] - Status of the fulfillment option.
|
|
13
|
+
* @property {BusinessUnit[]} [business_unit]
|
|
14
|
+
* @property {FulfillmentStores} [fulfillment_stores]
|
|
15
|
+
* @property {FulfillmentProducts} [products]
|
|
16
|
+
* @property {CourierPartnerSchemes} [cp_schemes]
|
|
17
|
+
* @property {string} [id] - Unique identifier for the fulfillment option.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @typedef FulfillmentOptionProducts
|
|
22
|
+
* @property {FulfillmentOptionProduct} [items]
|
|
23
|
+
* @property {Page} [page]
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @typedef FulfillmentOptionStores
|
|
28
|
+
* @property {FulfillmentOptionStore[]} [items] - List of stores with their details.
|
|
29
|
+
* @property {Page} [page]
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @typedef FulfillmentOptionBulkValidate
|
|
34
|
+
* @property {string} [store_type] - Type of store related to fulfillment.
|
|
35
|
+
* @property {string} [file_path] - URL of the uploaded file.
|
|
36
|
+
* @property {string} [action] - Action to be performed, such as import.
|
|
37
|
+
* @property {string} [type] - Entity type being processed.
|
|
38
|
+
* @property {string} [fulfillment_option_slug] - Slug representing the
|
|
39
|
+
* fulfillment option.
|
|
40
|
+
* @property {FulfillmentOptionValidate} [request]
|
|
41
|
+
*/
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* @typedef FulfillmentOptionBulkValidateData
|
|
45
|
+
* @property {string} [request_id] - Unique id generated for bulk operation.
|
|
46
|
+
*/
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* @typedef FulfillmentOptionBulk
|
|
50
|
+
* @property {string} [file_path] - The URL of file from which data will be imported.
|
|
51
|
+
* @property {string} [type] - Specifies the type of bulk fulfillment request.
|
|
52
|
+
*/
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* @typedef FulfillmentOptionBulkData
|
|
56
|
+
* @property {string} [request_id] - Unique identifier for the request.
|
|
57
|
+
* @property {FulfillmentOptionValidate} [request]
|
|
58
|
+
* @property {string} [fulfillment_option_slug] - Slug representing the
|
|
59
|
+
* fulfillment option.
|
|
60
|
+
* @property {string} [file_url] - URL of the uploaded file.
|
|
61
|
+
* @property {number} [total] - Total number of records processed.
|
|
62
|
+
* @property {number} [success] - Number of successful records.
|
|
63
|
+
* @property {number} [failed] - Number of failed records.
|
|
64
|
+
* @property {string} [action] - Action performed in the request.
|
|
65
|
+
* @property {string} [updated_at] - Timestamp of the last update.
|
|
66
|
+
* @property {string} [updated_by] - Identifier of the user who updated the request.
|
|
67
|
+
* @property {string} [type] - Type of the bulk import process.
|
|
68
|
+
* @property {number} [company_id] - The unique identifier of the company.
|
|
69
|
+
* @property {string} [application_id] - The unique identifier of the application.
|
|
70
|
+
* @property {string} [stage] - Current stage of the import process.
|
|
71
|
+
*/
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* @typedef OperationResponseSchema
|
|
75
|
+
* @property {boolean} success - Indicates if the operation was successful
|
|
76
|
+
* @property {string} [message] - Optional message providing additional
|
|
77
|
+
* information about the operation
|
|
78
|
+
*/
|
|
79
|
+
|
|
3
80
|
/**
|
|
4
81
|
* @typedef SelfshipSchema
|
|
5
82
|
* @property {number} tat - Turn around time in the specified unit, used to
|
|
@@ -98,11 +175,13 @@ const Joi = require("joi");
|
|
|
98
175
|
|
|
99
176
|
/**
|
|
100
177
|
* @typedef CreateZoneDataSchema
|
|
178
|
+
* @property {string} [fulfillment_option_slug] - Slug representing the
|
|
179
|
+
* fulfillment option.
|
|
101
180
|
* @property {boolean} is_active - Indicates whether the zone is active or not.
|
|
102
181
|
* @property {string} slug - Slug or URL-friendly version of the zone name.
|
|
103
182
|
* @property {string} name - Name of the zone.
|
|
104
|
-
* @property {number} company_id -
|
|
105
|
-
* @property {string} application_id -
|
|
183
|
+
* @property {number} company_id - The unique identifier of the company.
|
|
184
|
+
* @property {string} application_id - The unique identifier of the application.
|
|
106
185
|
* @property {string[]} geo_areas - List of geographical areas associated with the zone.
|
|
107
186
|
* @property {ZoneStores} stores
|
|
108
187
|
* @property {ZoneProduct} product
|
|
@@ -128,9 +207,11 @@ const Joi = require("joi");
|
|
|
128
207
|
/**
|
|
129
208
|
* @typedef ZoneSchema
|
|
130
209
|
* @property {Object} name - Name of the zone.
|
|
210
|
+
* @property {string} [fulfillment_option_slug] - Slug representing the
|
|
211
|
+
* fulfillment option.
|
|
131
212
|
* @property {Object} slug - Slug identifier for the zone.
|
|
132
|
-
* @property {Object} company_id -
|
|
133
|
-
* @property {Object} application_id -
|
|
213
|
+
* @property {Object} company_id - The unique identifier of the company.
|
|
214
|
+
* @property {Object} application_id - The unique identifier of the application.
|
|
134
215
|
* @property {Object} is_active - Whether the zone is active or not.
|
|
135
216
|
* @property {Object} geo_areas - List of geographical areas associated with the zone.
|
|
136
217
|
* @property {Object} stores - List of stores in the zone, referencing a schema
|
|
@@ -889,7 +970,7 @@ const Joi = require("joi");
|
|
|
889
970
|
* @property {string} [extension_id] - Unique identifier of courier partner extension.
|
|
890
971
|
* @property {string} [scheme_id] - Unique identifier for the scheme, used to
|
|
891
972
|
* fetch or modify scheme details.
|
|
892
|
-
* @property {string} [company_id] -
|
|
973
|
+
* @property {string} [company_id] - The unique identifier of the company.
|
|
893
974
|
* @property {string} name - Name of the scheme.
|
|
894
975
|
* @property {ArithmeticOperations} weight
|
|
895
976
|
* @property {ArithmeticOperations} [volumetric_weight]
|
|
@@ -1178,6 +1259,196 @@ const Joi = require("joi");
|
|
|
1178
1259
|
* @property {string[]} [sort] - An array of strings specifying sorting preferences.
|
|
1179
1260
|
*/
|
|
1180
1261
|
|
|
1262
|
+
/**
|
|
1263
|
+
* @typedef BusinessUnit
|
|
1264
|
+
* @property {string} [name] - Name of the business unit.
|
|
1265
|
+
* @property {boolean} [is_active] - Whether the business unit is active.
|
|
1266
|
+
*/
|
|
1267
|
+
|
|
1268
|
+
/**
|
|
1269
|
+
* @typedef FulfillmentStores
|
|
1270
|
+
* @property {number[]} [values] - List of store IDs associated with this
|
|
1271
|
+
* fulfillment option.
|
|
1272
|
+
* @property {string} [type] - Whether fulfillment applies to all stores or
|
|
1273
|
+
* specific stores.
|
|
1274
|
+
*/
|
|
1275
|
+
|
|
1276
|
+
/**
|
|
1277
|
+
* @typedef FulfillmentProducts
|
|
1278
|
+
* @property {number[]} [values] - List of product IDs associated with this
|
|
1279
|
+
* fulfillment option.
|
|
1280
|
+
* @property {string} [type] - Whether fulfillment applies to all products or
|
|
1281
|
+
* specific products.
|
|
1282
|
+
*/
|
|
1283
|
+
|
|
1284
|
+
/**
|
|
1285
|
+
* @typedef CourierPartnerSchemes
|
|
1286
|
+
* @property {CourierPartnerScheme[]} [values] - List of courier partner schemes
|
|
1287
|
+
* associated with this fulfillment option.
|
|
1288
|
+
* @property {string} [type] - Indicates whether all installed courier schemes
|
|
1289
|
+
* are used or only those specified by the seller.
|
|
1290
|
+
*/
|
|
1291
|
+
|
|
1292
|
+
/**
|
|
1293
|
+
* @typedef CourierPartnerScheme
|
|
1294
|
+
* @property {string} [scheme_id] - Unique identifier for the courier partner scheme.
|
|
1295
|
+
* @property {string} [cp_ext_id] - Unique identifier for the courier partner.
|
|
1296
|
+
*/
|
|
1297
|
+
|
|
1298
|
+
/**
|
|
1299
|
+
* @typedef FulfillmentOptionProduct
|
|
1300
|
+
* @property {number} [uid] - Unique identifier for the product.
|
|
1301
|
+
* @property {string} [name] - Name of the product.
|
|
1302
|
+
* @property {string} [slug] - Unique slug identifier for the product.
|
|
1303
|
+
* @property {string} [category_slug] - Slug identifier of the product's category.
|
|
1304
|
+
* @property {number} [category_uid] - Unique identifier for the product's category.
|
|
1305
|
+
* @property {string} [short_description] - Brief description of the product.
|
|
1306
|
+
* @property {string} [description] - Detailed description of the product in HTML format.
|
|
1307
|
+
* @property {number} [brand_uid] - Unique identifier for the brand.
|
|
1308
|
+
* @property {string} [currency] - Currency code used for product pricing.
|
|
1309
|
+
* @property {string} [item_code] - Unique code assigned to the product.
|
|
1310
|
+
* @property {string} [item_type] - Type of product (e.g., standard, set etc.).
|
|
1311
|
+
* @property {NetQuantity} [net_quantity]
|
|
1312
|
+
* @property {boolean} [multi_size] - Indicates if the product supports multiple sizes.
|
|
1313
|
+
* @property {boolean} [is_set] - Indicates if the product is a set of items.
|
|
1314
|
+
* @property {boolean} [is_dependent] - Indicates if the product depends on
|
|
1315
|
+
* another product.
|
|
1316
|
+
* @property {boolean} [is_active] - Status indicating if the product is active.
|
|
1317
|
+
* @property {boolean} [is_image_less_product] - Indicates if the product has no images.
|
|
1318
|
+
* @property {string} [size_guide] - URL or reference to the size guide.
|
|
1319
|
+
* @property {Object} [teaser_tag] - Teaser tag information for the product.
|
|
1320
|
+
* @property {string[]} [highlights] - Key highlights of the product.
|
|
1321
|
+
* @property {string[]} [tags] - Tags associated with the product.
|
|
1322
|
+
* @property {string[]} [product_group_tag] - Group tags assigned to the product.
|
|
1323
|
+
* @property {number[]} [departments] - Department identifiers associated with
|
|
1324
|
+
* the product.
|
|
1325
|
+
* @property {number} [company_id] - The unique identifier of the company.
|
|
1326
|
+
* @property {number[]} [company_ids] - List of company IDs associated with the product.
|
|
1327
|
+
* @property {string} [country_of_origin] - Country where the product is manufactured.
|
|
1328
|
+
* @property {string} [change_request_id] - Identifier for the change request
|
|
1329
|
+
* related to the product.
|
|
1330
|
+
* @property {Trader} [trader]
|
|
1331
|
+
* @property {string} [trader_type] - Type of trader (e.g., Manufacturer, Wholesaler).
|
|
1332
|
+
* @property {ProductPublish} [product_publish]
|
|
1333
|
+
* @property {TaxIdentifier} [tax_identifier]
|
|
1334
|
+
* @property {ReturnConfig} [return_config]
|
|
1335
|
+
* @property {CustomOrder} [custom_order]
|
|
1336
|
+
* @property {Size[]} [sizes] - Available sizes for the product.
|
|
1337
|
+
* @property {string[]} [media] - List of media assets related to the product.
|
|
1338
|
+
* @property {Object} [variant_media] - Media assets for different variants of
|
|
1339
|
+
* the product.
|
|
1340
|
+
* @property {Object} [variants] - Variant-specific details for the product.
|
|
1341
|
+
* @property {number} [no_of_boxes] - Number of boxes required for packaging the product.
|
|
1342
|
+
* @property {Object} [_custom_json] - Custom JSON data associated with the product.
|
|
1343
|
+
*/
|
|
1344
|
+
|
|
1345
|
+
/**
|
|
1346
|
+
* @typedef NetQuantity
|
|
1347
|
+
* @property {number} [value] - The quantity value of the product.
|
|
1348
|
+
* @property {string} [unit] - The unit of measurement for the quantity.
|
|
1349
|
+
*/
|
|
1350
|
+
|
|
1351
|
+
/**
|
|
1352
|
+
* @typedef Trader
|
|
1353
|
+
* @property {string} [name] - Name of the trader.
|
|
1354
|
+
* @property {string} [address] - Address of the trader.
|
|
1355
|
+
*/
|
|
1356
|
+
|
|
1357
|
+
/**
|
|
1358
|
+
* @typedef ProductPublish
|
|
1359
|
+
* @property {string} [product_online_date] - Date when the product went online.
|
|
1360
|
+
* @property {boolean} [is_set] - Indicates if the product is part of a set.
|
|
1361
|
+
*/
|
|
1362
|
+
|
|
1363
|
+
/**
|
|
1364
|
+
* @typedef TaxIdentifier
|
|
1365
|
+
* @property {string} [hsn_code] - HSN code assigned to the product.
|
|
1366
|
+
* @property {string} [hsn_code_id] - Identifier for the HSN code.
|
|
1367
|
+
* @property {string} [reporting_hsn] - Reporting HSN code.
|
|
1368
|
+
*/
|
|
1369
|
+
|
|
1370
|
+
/**
|
|
1371
|
+
* @typedef ReturnConfig
|
|
1372
|
+
* @property {boolean} [returnable] - Indicates if the product is returnable.
|
|
1373
|
+
* @property {number} [time] - Time duration allowed for returns.
|
|
1374
|
+
* @property {string} [unit] - Unit of time for return duration.
|
|
1375
|
+
*/
|
|
1376
|
+
|
|
1377
|
+
/**
|
|
1378
|
+
* @typedef CustomOrder
|
|
1379
|
+
* @property {boolean} [is_custom_order] - Indicates if the product is a custom order.
|
|
1380
|
+
* @property {number} [manufacturing_time] - Time required for manufacturing the product.
|
|
1381
|
+
* @property {string} [manufacturing_time_unit] - Unit of time for manufacturing.
|
|
1382
|
+
*/
|
|
1383
|
+
|
|
1384
|
+
/**
|
|
1385
|
+
* @typedef Size
|
|
1386
|
+
* @property {string} [size] - Size label of the product.
|
|
1387
|
+
* @property {number} [size_priority] - Priority assigned to the size.
|
|
1388
|
+
* @property {string} [item_dimensions_unit_of_measure] - Unit of measure for
|
|
1389
|
+
* item dimensions.
|
|
1390
|
+
* @property {number} [price_transfer] - Transfer price of the product.
|
|
1391
|
+
* @property {number} [item_height] - Height of the product.
|
|
1392
|
+
* @property {number} [item_length] - Length of the product.
|
|
1393
|
+
* @property {number} [item_width] - Width of the product.
|
|
1394
|
+
* @property {number} [item_weight] - Weight of the product.
|
|
1395
|
+
* @property {string} [item_weight_unit_of_measure] - Unit of measure for item weight.
|
|
1396
|
+
* @property {number} [price] - Selling price of the product.
|
|
1397
|
+
* @property {number} [price_effective] - Effective price after discounts.
|
|
1398
|
+
* @property {boolean} [is_set] - Indicates if the size belongs to a set.
|
|
1399
|
+
* @property {boolean} [track_inventory] - Indicates if inventory tracking is enabled.
|
|
1400
|
+
* @property {Identifier[]} [identifiers] - Unique identifiers associated with the size.
|
|
1401
|
+
* @property {Object} [_custom_json] - Custom JSON data associated with the size.
|
|
1402
|
+
*/
|
|
1403
|
+
|
|
1404
|
+
/**
|
|
1405
|
+
* @typedef Identifier
|
|
1406
|
+
* @property {string} [gtin_type] - Type of GTIN identifier (e.g., SKU, UPC, EAN).
|
|
1407
|
+
* @property {string} [gtin_value] - Value of the GTIN identifier.
|
|
1408
|
+
* @property {boolean} [primary] - Indicates if this is the primary identifier.
|
|
1409
|
+
*/
|
|
1410
|
+
|
|
1411
|
+
/**
|
|
1412
|
+
* @typedef Page
|
|
1413
|
+
* @property {number} [item_total] - The total number of all items across all pages.
|
|
1414
|
+
* @property {string} [next_id] - The identifier for the next page.
|
|
1415
|
+
* @property {boolean} [has_previous] - Indicates whether there is a previous page.
|
|
1416
|
+
* @property {boolean} [has_next] - Indicates whether there is a next page.
|
|
1417
|
+
* @property {number} [current] - The current page number.
|
|
1418
|
+
* @property {string} type - The type of the page, such as 'PageType'.
|
|
1419
|
+
* @property {number} [size] - The number of items per page.
|
|
1420
|
+
* @property {number} [page_size] - The number of items per page.
|
|
1421
|
+
*/
|
|
1422
|
+
|
|
1423
|
+
/**
|
|
1424
|
+
* @typedef FulfillmentOptionStore
|
|
1425
|
+
* @property {number} [uid] - Unique identifier for the store.
|
|
1426
|
+
* @property {Address} [address]
|
|
1427
|
+
* @property {number} [company_id] - The unique identifier of the company.
|
|
1428
|
+
* @property {string} [display_name] - Store name displayed in the UI.
|
|
1429
|
+
* @property {string} [name] - Name of the store.
|
|
1430
|
+
* @property {string} [store_type] - Type of store (e.g., high_street, mall).
|
|
1431
|
+
* @property {string[]} [tags] - Tags associated with the store.
|
|
1432
|
+
*/
|
|
1433
|
+
|
|
1434
|
+
/**
|
|
1435
|
+
* @typedef Address
|
|
1436
|
+
* @property {string} [address1] - Primary address line.
|
|
1437
|
+
* @property {string} [country] - Country where the store is located.
|
|
1438
|
+
* @property {string} [pincode] - Postal code of the store location.
|
|
1439
|
+
* @property {string} [city] - City where the store is located.
|
|
1440
|
+
* @property {string} [state] - State where the store is located.
|
|
1441
|
+
* @property {number} [latitude] - Latitude coordinate of the store.
|
|
1442
|
+
* @property {number} [longitude] - Longitude coordinate of the store.
|
|
1443
|
+
* @property {string} [country_code] - ISO country code of the store location.
|
|
1444
|
+
*/
|
|
1445
|
+
|
|
1446
|
+
/**
|
|
1447
|
+
* @typedef FulfillmentOptionValidate
|
|
1448
|
+
* @property {string} [entity_filter_type] - Type of entity filter applied.
|
|
1449
|
+
* @property {string} [fulfillment_option_type] - Type of fulfillment option selected.
|
|
1450
|
+
*/
|
|
1451
|
+
|
|
1181
1452
|
/**
|
|
1182
1453
|
* @typedef ProductSchema
|
|
1183
1454
|
* @property {string} type - The classification of product type used in the
|
|
@@ -1213,8 +1484,8 @@ const Joi = require("joi");
|
|
|
1213
1484
|
* @property {ListViewProduct} stores
|
|
1214
1485
|
* @property {boolean} is_active - Indicates if the zone is active.
|
|
1215
1486
|
* @property {ListViewProduct} product
|
|
1216
|
-
* @property {number} company_id -
|
|
1217
|
-
* @property {string} application_id -
|
|
1487
|
+
* @property {number} company_id - The unique identifier of the company.
|
|
1488
|
+
* @property {string} application_id - The unique identifier of the application.
|
|
1218
1489
|
* @property {CreatedBy} created_by
|
|
1219
1490
|
* @property {ModifiedBy} modified_by
|
|
1220
1491
|
* @property {string} created_on - The timestamp when the record was created.
|
|
@@ -1249,18 +1520,6 @@ const Joi = require("joi");
|
|
|
1249
1520
|
* @property {number} [count] - Count of items in the region.
|
|
1250
1521
|
*/
|
|
1251
1522
|
|
|
1252
|
-
/**
|
|
1253
|
-
* @typedef Page
|
|
1254
|
-
* @property {number} [item_total] - The total number of items on the page.
|
|
1255
|
-
* @property {string} [next_id] - The identifier for the next page.
|
|
1256
|
-
* @property {boolean} [has_previous] - Indicates whether there is a previous page.
|
|
1257
|
-
* @property {boolean} [has_next] - Indicates whether there is a next page.
|
|
1258
|
-
* @property {number} [current] - The current page number.
|
|
1259
|
-
* @property {string} type - The type of the page, such as 'PageType'.
|
|
1260
|
-
* @property {number} [size] - The number of items per page.
|
|
1261
|
-
* @property {number} [page_size] - The number of items per page.
|
|
1262
|
-
*/
|
|
1263
|
-
|
|
1264
1523
|
/**
|
|
1265
1524
|
* @typedef ZoneStores
|
|
1266
1525
|
* @property {Object} type - Type of zone store.
|
|
@@ -2244,6 +2503,100 @@ const Joi = require("joi");
|
|
|
2244
2503
|
*/
|
|
2245
2504
|
|
|
2246
2505
|
class ServiceabilityPlatformModel {
|
|
2506
|
+
/** @returns {FulfillmentOption} */
|
|
2507
|
+
static FulfillmentOption() {
|
|
2508
|
+
return Joi.object({
|
|
2509
|
+
name: Joi.string().allow(""),
|
|
2510
|
+
slug: Joi.string().allow(""),
|
|
2511
|
+
company_id: Joi.number(),
|
|
2512
|
+
application_id: Joi.string().allow(""),
|
|
2513
|
+
description: Joi.string().allow(""),
|
|
2514
|
+
is_default: Joi.boolean(),
|
|
2515
|
+
type: Joi.string().allow(""),
|
|
2516
|
+
status: Joi.string().allow(""),
|
|
2517
|
+
business_unit: Joi.array().items(
|
|
2518
|
+
ServiceabilityPlatformModel.BusinessUnit()
|
|
2519
|
+
),
|
|
2520
|
+
fulfillment_stores: ServiceabilityPlatformModel.FulfillmentStores(),
|
|
2521
|
+
products: ServiceabilityPlatformModel.FulfillmentProducts(),
|
|
2522
|
+
cp_schemes: ServiceabilityPlatformModel.CourierPartnerSchemes(),
|
|
2523
|
+
id: Joi.string().allow(""),
|
|
2524
|
+
});
|
|
2525
|
+
}
|
|
2526
|
+
|
|
2527
|
+
/** @returns {FulfillmentOptionProducts} */
|
|
2528
|
+
static FulfillmentOptionProducts() {
|
|
2529
|
+
return Joi.object({
|
|
2530
|
+
items: ServiceabilityPlatformModel.FulfillmentOptionProduct(),
|
|
2531
|
+
page: ServiceabilityPlatformModel.Page(),
|
|
2532
|
+
});
|
|
2533
|
+
}
|
|
2534
|
+
|
|
2535
|
+
/** @returns {FulfillmentOptionStores} */
|
|
2536
|
+
static FulfillmentOptionStores() {
|
|
2537
|
+
return Joi.object({
|
|
2538
|
+
items: Joi.array().items(
|
|
2539
|
+
ServiceabilityPlatformModel.FulfillmentOptionStore()
|
|
2540
|
+
),
|
|
2541
|
+
page: ServiceabilityPlatformModel.Page(),
|
|
2542
|
+
});
|
|
2543
|
+
}
|
|
2544
|
+
|
|
2545
|
+
/** @returns {FulfillmentOptionBulkValidate} */
|
|
2546
|
+
static FulfillmentOptionBulkValidate() {
|
|
2547
|
+
return Joi.object({
|
|
2548
|
+
store_type: Joi.string().allow(""),
|
|
2549
|
+
file_path: Joi.string().allow(""),
|
|
2550
|
+
action: Joi.string().allow(""),
|
|
2551
|
+
type: Joi.string().allow(""),
|
|
2552
|
+
fulfillment_option_slug: Joi.string().allow(""),
|
|
2553
|
+
request: ServiceabilityPlatformModel.FulfillmentOptionValidate(),
|
|
2554
|
+
});
|
|
2555
|
+
}
|
|
2556
|
+
|
|
2557
|
+
/** @returns {FulfillmentOptionBulkValidateData} */
|
|
2558
|
+
static FulfillmentOptionBulkValidateData() {
|
|
2559
|
+
return Joi.object({
|
|
2560
|
+
request_id: Joi.string().allow(""),
|
|
2561
|
+
});
|
|
2562
|
+
}
|
|
2563
|
+
|
|
2564
|
+
/** @returns {FulfillmentOptionBulk} */
|
|
2565
|
+
static FulfillmentOptionBulk() {
|
|
2566
|
+
return Joi.object({
|
|
2567
|
+
file_path: Joi.string().allow(""),
|
|
2568
|
+
type: Joi.string().allow(""),
|
|
2569
|
+
});
|
|
2570
|
+
}
|
|
2571
|
+
|
|
2572
|
+
/** @returns {FulfillmentOptionBulkData} */
|
|
2573
|
+
static FulfillmentOptionBulkData() {
|
|
2574
|
+
return Joi.object({
|
|
2575
|
+
request_id: Joi.string().allow(""),
|
|
2576
|
+
request: ServiceabilityPlatformModel.FulfillmentOptionValidate(),
|
|
2577
|
+
fulfillment_option_slug: Joi.string().allow(""),
|
|
2578
|
+
file_url: Joi.string().allow(""),
|
|
2579
|
+
total: Joi.number(),
|
|
2580
|
+
success: Joi.number(),
|
|
2581
|
+
failed: Joi.number(),
|
|
2582
|
+
action: Joi.string().allow(""),
|
|
2583
|
+
updated_at: Joi.string().allow(""),
|
|
2584
|
+
updated_by: Joi.string().allow("").allow(null),
|
|
2585
|
+
type: Joi.string().allow(""),
|
|
2586
|
+
company_id: Joi.number(),
|
|
2587
|
+
application_id: Joi.string().allow(""),
|
|
2588
|
+
stage: Joi.string().allow(""),
|
|
2589
|
+
});
|
|
2590
|
+
}
|
|
2591
|
+
|
|
2592
|
+
/** @returns {OperationResponseSchema} */
|
|
2593
|
+
static OperationResponseSchema() {
|
|
2594
|
+
return Joi.object({
|
|
2595
|
+
success: Joi.boolean().required(),
|
|
2596
|
+
message: Joi.string().allow(""),
|
|
2597
|
+
});
|
|
2598
|
+
}
|
|
2599
|
+
|
|
2247
2600
|
/** @returns {SelfshipSchema} */
|
|
2248
2601
|
static SelfshipSchema() {
|
|
2249
2602
|
return Joi.object({
|
|
@@ -2353,6 +2706,7 @@ class ServiceabilityPlatformModel {
|
|
|
2353
2706
|
/** @returns {CreateZoneDataSchema} */
|
|
2354
2707
|
static CreateZoneDataSchema() {
|
|
2355
2708
|
return Joi.object({
|
|
2709
|
+
fulfillment_option_slug: Joi.string().allow("").allow(null),
|
|
2356
2710
|
is_active: Joi.boolean().required(),
|
|
2357
2711
|
slug: Joi.string().allow("").required(),
|
|
2358
2712
|
name: Joi.string().allow("").required(),
|
|
@@ -2390,6 +2744,7 @@ class ServiceabilityPlatformModel {
|
|
|
2390
2744
|
static ZoneSchema() {
|
|
2391
2745
|
return Joi.object({
|
|
2392
2746
|
name: Joi.any().required(),
|
|
2747
|
+
fulfillment_option_slug: Joi.string().allow("").allow(null),
|
|
2393
2748
|
slug: Joi.any().required(),
|
|
2394
2749
|
company_id: Joi.any().required(),
|
|
2395
2750
|
application_id: Joi.any().required(),
|
|
@@ -3493,6 +3848,223 @@ class ServiceabilityPlatformModel {
|
|
|
3493
3848
|
});
|
|
3494
3849
|
}
|
|
3495
3850
|
|
|
3851
|
+
/** @returns {BusinessUnit} */
|
|
3852
|
+
static BusinessUnit() {
|
|
3853
|
+
return Joi.object({
|
|
3854
|
+
name: Joi.string().allow(""),
|
|
3855
|
+
is_active: Joi.boolean(),
|
|
3856
|
+
});
|
|
3857
|
+
}
|
|
3858
|
+
|
|
3859
|
+
/** @returns {FulfillmentStores} */
|
|
3860
|
+
static FulfillmentStores() {
|
|
3861
|
+
return Joi.object({
|
|
3862
|
+
values: Joi.array().items(Joi.number()),
|
|
3863
|
+
type: Joi.string().allow(""),
|
|
3864
|
+
});
|
|
3865
|
+
}
|
|
3866
|
+
|
|
3867
|
+
/** @returns {FulfillmentProducts} */
|
|
3868
|
+
static FulfillmentProducts() {
|
|
3869
|
+
return Joi.object({
|
|
3870
|
+
values: Joi.array().items(Joi.number()),
|
|
3871
|
+
type: Joi.string().allow(""),
|
|
3872
|
+
});
|
|
3873
|
+
}
|
|
3874
|
+
|
|
3875
|
+
/** @returns {CourierPartnerSchemes} */
|
|
3876
|
+
static CourierPartnerSchemes() {
|
|
3877
|
+
return Joi.object({
|
|
3878
|
+
values: Joi.array().items(
|
|
3879
|
+
ServiceabilityPlatformModel.CourierPartnerScheme()
|
|
3880
|
+
),
|
|
3881
|
+
type: Joi.string().allow(""),
|
|
3882
|
+
});
|
|
3883
|
+
}
|
|
3884
|
+
|
|
3885
|
+
/** @returns {CourierPartnerScheme} */
|
|
3886
|
+
static CourierPartnerScheme() {
|
|
3887
|
+
return Joi.object({
|
|
3888
|
+
scheme_id: Joi.string().allow(""),
|
|
3889
|
+
cp_ext_id: Joi.string().allow(""),
|
|
3890
|
+
});
|
|
3891
|
+
}
|
|
3892
|
+
|
|
3893
|
+
/** @returns {FulfillmentOptionProduct} */
|
|
3894
|
+
static FulfillmentOptionProduct() {
|
|
3895
|
+
return Joi.object({
|
|
3896
|
+
uid: Joi.number(),
|
|
3897
|
+
name: Joi.string().allow(""),
|
|
3898
|
+
slug: Joi.string().allow(""),
|
|
3899
|
+
category_slug: Joi.string().allow(""),
|
|
3900
|
+
category_uid: Joi.number(),
|
|
3901
|
+
short_description: Joi.string().allow(""),
|
|
3902
|
+
description: Joi.string().allow(""),
|
|
3903
|
+
brand_uid: Joi.number(),
|
|
3904
|
+
currency: Joi.string().allow(""),
|
|
3905
|
+
item_code: Joi.string().allow(""),
|
|
3906
|
+
item_type: Joi.string().allow(""),
|
|
3907
|
+
net_quantity: ServiceabilityPlatformModel.NetQuantity(),
|
|
3908
|
+
multi_size: Joi.boolean(),
|
|
3909
|
+
is_set: Joi.boolean(),
|
|
3910
|
+
is_dependent: Joi.boolean(),
|
|
3911
|
+
is_active: Joi.boolean(),
|
|
3912
|
+
is_image_less_product: Joi.boolean(),
|
|
3913
|
+
size_guide: Joi.string().allow(""),
|
|
3914
|
+
teaser_tag: Joi.object().pattern(/\S/, Joi.any()),
|
|
3915
|
+
highlights: Joi.array().items(Joi.string().allow("")),
|
|
3916
|
+
tags: Joi.array().items(Joi.string().allow("")),
|
|
3917
|
+
product_group_tag: Joi.array().items(Joi.string().allow("")),
|
|
3918
|
+
departments: Joi.array().items(Joi.number()),
|
|
3919
|
+
company_id: Joi.number(),
|
|
3920
|
+
company_ids: Joi.array().items(Joi.number()),
|
|
3921
|
+
country_of_origin: Joi.string().allow(""),
|
|
3922
|
+
change_request_id: Joi.string().allow(""),
|
|
3923
|
+
trader: ServiceabilityPlatformModel.Trader(),
|
|
3924
|
+
trader_type: Joi.string().allow(""),
|
|
3925
|
+
product_publish: ServiceabilityPlatformModel.ProductPublish(),
|
|
3926
|
+
tax_identifier: ServiceabilityPlatformModel.TaxIdentifier(),
|
|
3927
|
+
return_config: ServiceabilityPlatformModel.ReturnConfig(),
|
|
3928
|
+
custom_order: ServiceabilityPlatformModel.CustomOrder(),
|
|
3929
|
+
sizes: Joi.array().items(ServiceabilityPlatformModel.Size()),
|
|
3930
|
+
media: Joi.array().items(Joi.string().allow("")),
|
|
3931
|
+
variant_media: Joi.object().pattern(/\S/, Joi.any()),
|
|
3932
|
+
variants: Joi.object().pattern(/\S/, Joi.any()),
|
|
3933
|
+
no_of_boxes: Joi.number(),
|
|
3934
|
+
_custom_json: Joi.object().pattern(/\S/, Joi.any()),
|
|
3935
|
+
});
|
|
3936
|
+
}
|
|
3937
|
+
|
|
3938
|
+
/** @returns {NetQuantity} */
|
|
3939
|
+
static NetQuantity() {
|
|
3940
|
+
return Joi.object({
|
|
3941
|
+
value: Joi.number(),
|
|
3942
|
+
unit: Joi.string().allow(""),
|
|
3943
|
+
});
|
|
3944
|
+
}
|
|
3945
|
+
|
|
3946
|
+
/** @returns {Trader} */
|
|
3947
|
+
static Trader() {
|
|
3948
|
+
return Joi.object({
|
|
3949
|
+
name: Joi.string().allow(""),
|
|
3950
|
+
address: Joi.string().allow(""),
|
|
3951
|
+
});
|
|
3952
|
+
}
|
|
3953
|
+
|
|
3954
|
+
/** @returns {ProductPublish} */
|
|
3955
|
+
static ProductPublish() {
|
|
3956
|
+
return Joi.object({
|
|
3957
|
+
product_online_date: Joi.string().allow(""),
|
|
3958
|
+
is_set: Joi.boolean(),
|
|
3959
|
+
});
|
|
3960
|
+
}
|
|
3961
|
+
|
|
3962
|
+
/** @returns {TaxIdentifier} */
|
|
3963
|
+
static TaxIdentifier() {
|
|
3964
|
+
return Joi.object({
|
|
3965
|
+
hsn_code: Joi.string().allow(""),
|
|
3966
|
+
hsn_code_id: Joi.string().allow(""),
|
|
3967
|
+
reporting_hsn: Joi.string().allow(""),
|
|
3968
|
+
});
|
|
3969
|
+
}
|
|
3970
|
+
|
|
3971
|
+
/** @returns {ReturnConfig} */
|
|
3972
|
+
static ReturnConfig() {
|
|
3973
|
+
return Joi.object({
|
|
3974
|
+
returnable: Joi.boolean(),
|
|
3975
|
+
time: Joi.number(),
|
|
3976
|
+
unit: Joi.string().allow(""),
|
|
3977
|
+
});
|
|
3978
|
+
}
|
|
3979
|
+
|
|
3980
|
+
/** @returns {CustomOrder} */
|
|
3981
|
+
static CustomOrder() {
|
|
3982
|
+
return Joi.object({
|
|
3983
|
+
is_custom_order: Joi.boolean(),
|
|
3984
|
+
manufacturing_time: Joi.number(),
|
|
3985
|
+
manufacturing_time_unit: Joi.string().allow(""),
|
|
3986
|
+
});
|
|
3987
|
+
}
|
|
3988
|
+
|
|
3989
|
+
/** @returns {Size} */
|
|
3990
|
+
static Size() {
|
|
3991
|
+
return Joi.object({
|
|
3992
|
+
size: Joi.string().allow(""),
|
|
3993
|
+
size_priority: Joi.number(),
|
|
3994
|
+
item_dimensions_unit_of_measure: Joi.string().allow(""),
|
|
3995
|
+
price_transfer: Joi.number(),
|
|
3996
|
+
item_height: Joi.number(),
|
|
3997
|
+
item_length: Joi.number(),
|
|
3998
|
+
item_width: Joi.number(),
|
|
3999
|
+
item_weight: Joi.number(),
|
|
4000
|
+
item_weight_unit_of_measure: Joi.string().allow(""),
|
|
4001
|
+
price: Joi.number(),
|
|
4002
|
+
price_effective: Joi.number(),
|
|
4003
|
+
is_set: Joi.boolean(),
|
|
4004
|
+
track_inventory: Joi.boolean(),
|
|
4005
|
+
identifiers: Joi.array().items(ServiceabilityPlatformModel.Identifier()),
|
|
4006
|
+
_custom_json: Joi.any(),
|
|
4007
|
+
});
|
|
4008
|
+
}
|
|
4009
|
+
|
|
4010
|
+
/** @returns {Identifier} */
|
|
4011
|
+
static Identifier() {
|
|
4012
|
+
return Joi.object({
|
|
4013
|
+
gtin_type: Joi.string().allow(""),
|
|
4014
|
+
gtin_value: Joi.string().allow(""),
|
|
4015
|
+
primary: Joi.boolean(),
|
|
4016
|
+
});
|
|
4017
|
+
}
|
|
4018
|
+
|
|
4019
|
+
/** @returns {Page} */
|
|
4020
|
+
static Page() {
|
|
4021
|
+
return Joi.object({
|
|
4022
|
+
item_total: Joi.number(),
|
|
4023
|
+
next_id: Joi.string().allow(""),
|
|
4024
|
+
has_previous: Joi.boolean(),
|
|
4025
|
+
has_next: Joi.boolean(),
|
|
4026
|
+
current: Joi.number(),
|
|
4027
|
+
type: Joi.string().allow("").required(),
|
|
4028
|
+
size: Joi.number(),
|
|
4029
|
+
page_size: Joi.number(),
|
|
4030
|
+
});
|
|
4031
|
+
}
|
|
4032
|
+
|
|
4033
|
+
/** @returns {FulfillmentOptionStore} */
|
|
4034
|
+
static FulfillmentOptionStore() {
|
|
4035
|
+
return Joi.object({
|
|
4036
|
+
uid: Joi.number(),
|
|
4037
|
+
address: ServiceabilityPlatformModel.Address(),
|
|
4038
|
+
company_id: Joi.number(),
|
|
4039
|
+
display_name: Joi.string().allow(""),
|
|
4040
|
+
name: Joi.string().allow(""),
|
|
4041
|
+
store_type: Joi.string().allow(""),
|
|
4042
|
+
tags: Joi.array().items(Joi.string().allow("")),
|
|
4043
|
+
});
|
|
4044
|
+
}
|
|
4045
|
+
|
|
4046
|
+
/** @returns {Address} */
|
|
4047
|
+
static Address() {
|
|
4048
|
+
return Joi.object({
|
|
4049
|
+
address1: Joi.string().allow(""),
|
|
4050
|
+
country: Joi.string().allow(""),
|
|
4051
|
+
pincode: Joi.string().allow(""),
|
|
4052
|
+
city: Joi.string().allow(""),
|
|
4053
|
+
state: Joi.string().allow(""),
|
|
4054
|
+
latitude: Joi.number(),
|
|
4055
|
+
longitude: Joi.number(),
|
|
4056
|
+
country_code: Joi.string().allow(""),
|
|
4057
|
+
});
|
|
4058
|
+
}
|
|
4059
|
+
|
|
4060
|
+
/** @returns {FulfillmentOptionValidate} */
|
|
4061
|
+
static FulfillmentOptionValidate() {
|
|
4062
|
+
return Joi.object({
|
|
4063
|
+
entity_filter_type: Joi.string().allow(""),
|
|
4064
|
+
fulfillment_option_type: Joi.string().allow(""),
|
|
4065
|
+
});
|
|
4066
|
+
}
|
|
4067
|
+
|
|
3496
4068
|
/** @returns {ProductSchema} */
|
|
3497
4069
|
static ProductSchema() {
|
|
3498
4070
|
return Joi.object({
|
|
@@ -3580,20 +4152,6 @@ class ServiceabilityPlatformModel {
|
|
|
3580
4152
|
});
|
|
3581
4153
|
}
|
|
3582
4154
|
|
|
3583
|
-
/** @returns {Page} */
|
|
3584
|
-
static Page() {
|
|
3585
|
-
return Joi.object({
|
|
3586
|
-
item_total: Joi.number(),
|
|
3587
|
-
next_id: Joi.string().allow(""),
|
|
3588
|
-
has_previous: Joi.boolean(),
|
|
3589
|
-
has_next: Joi.boolean(),
|
|
3590
|
-
current: Joi.number(),
|
|
3591
|
-
type: Joi.string().allow("").required(),
|
|
3592
|
-
size: Joi.number(),
|
|
3593
|
-
page_size: Joi.number(),
|
|
3594
|
-
});
|
|
3595
|
-
}
|
|
3596
|
-
|
|
3597
4155
|
/** @returns {ZoneStores} */
|
|
3598
4156
|
static ZoneStores() {
|
|
3599
4157
|
return Joi.object({
|