@gofynd/fdk-client-javascript 1.4.3 → 1.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/README.md +1 -10
  2. package/package.json +1 -1
  3. package/sdk/application/Cart/CartApplicationClient.d.ts +48 -48
  4. package/sdk/application/Cart/CartApplicationClient.js +48 -48
  5. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +69 -69
  6. package/sdk/application/Catalog/CatalogApplicationClient.js +69 -69
  7. package/sdk/application/Common/CommonApplicationClient.d.ts +4 -4
  8. package/sdk/application/Common/CommonApplicationClient.js +4 -4
  9. package/sdk/application/Communication/CommunicationApplicationClient.d.ts +6 -6
  10. package/sdk/application/Communication/CommunicationApplicationClient.js +6 -6
  11. package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +32 -32
  12. package/sdk/application/Configuration/ConfigurationApplicationClient.js +32 -32
  13. package/sdk/application/Content/ContentApplicationClient.d.ts +45 -45
  14. package/sdk/application/Content/ContentApplicationClient.js +45 -45
  15. package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +5 -5
  16. package/sdk/application/FileStorage/FileStorageApplicationClient.js +5 -5
  17. package/sdk/application/Lead/LeadApplicationClient.d.ts +9 -9
  18. package/sdk/application/Lead/LeadApplicationClient.js +9 -9
  19. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +22 -22
  20. package/sdk/application/Logistic/LogisticApplicationClient.js +22 -22
  21. package/sdk/application/Order/OrderApplicationClient.d.ts +14 -25
  22. package/sdk/application/Order/OrderApplicationClient.js +14 -94
  23. package/sdk/application/Order/OrderApplicationValidator.d.ts +1 -15
  24. package/sdk/application/Order/OrderApplicationValidator.js +0 -13
  25. package/sdk/application/Payment/PaymentApplicationClient.d.ts +71 -71
  26. package/sdk/application/Payment/PaymentApplicationClient.js +71 -71
  27. package/sdk/application/Rewards/RewardsApplicationClient.d.ts +1 -1
  28. package/sdk/application/Rewards/RewardsApplicationClient.js +1 -1
  29. package/sdk/application/Share/ShareApplicationClient.d.ts +1 -1
  30. package/sdk/application/Share/ShareApplicationClient.js +1 -1
  31. package/sdk/application/Share/ShareApplicationModel.d.ts +2 -0
  32. package/sdk/application/Share/ShareApplicationModel.js +2 -0
  33. package/sdk/application/Theme/ThemeApplicationClient.d.ts +8 -8
  34. package/sdk/application/Theme/ThemeApplicationClient.js +8 -8
  35. package/sdk/application/User/UserApplicationClient.d.ts +74 -74
  36. package/sdk/application/User/UserApplicationClient.js +74 -74
  37. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.d.ts +5 -5
  38. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +5 -5
  39. package/sdk/platform/Billing/BillingPlatformClient.d.ts +13 -13
  40. package/sdk/platform/Billing/BillingPlatformClient.js +13 -13
  41. package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +102 -102
  42. package/sdk/platform/Cart/CartPlatformApplicationClient.js +102 -102
  43. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +132 -131
  44. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +132 -131
  45. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +130 -130
  46. package/sdk/platform/Catalog/CatalogPlatformClient.js +130 -130
  47. package/sdk/platform/Common/CommonPlatformClient.d.ts +2 -2
  48. package/sdk/platform/Common/CommonPlatformClient.js +2 -2
  49. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +118 -118
  50. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +118 -118
  51. package/sdk/platform/Communication/CommunicationPlatformClient.d.ts +1 -1
  52. package/sdk/platform/Communication/CommunicationPlatformClient.js +1 -1
  53. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +22 -22
  54. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +22 -22
  55. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +34 -7
  56. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +35 -5
  57. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.d.ts +4 -4
  58. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.js +4 -4
  59. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +41 -41
  60. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +41 -41
  61. package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +26 -26
  62. package/sdk/platform/Configuration/ConfigurationPlatformClient.js +26 -26
  63. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +93 -93
  64. package/sdk/platform/Content/ContentPlatformApplicationClient.js +93 -93
  65. package/sdk/platform/Content/ContentPlatformClient.d.ts +29 -29
  66. package/sdk/platform/Content/ContentPlatformClient.js +29 -29
  67. package/sdk/platform/Discount/DiscountPlatformClient.d.ts +18 -18
  68. package/sdk/platform/Discount/DiscountPlatformClient.js +18 -18
  69. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +18 -17
  70. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +18 -17
  71. package/sdk/platform/FileStorage/FileStoragePlatformClient.d.ts +6 -6
  72. package/sdk/platform/FileStorage/FileStoragePlatformClient.js +6 -6
  73. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +2 -2
  74. package/sdk/platform/Finance/FinancePlatformClient.d.ts +4 -4
  75. package/sdk/platform/Finance/FinancePlatformClient.js +4 -4
  76. package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +12 -12
  77. package/sdk/platform/Lead/LeadPlatformApplicationClient.js +12 -12
  78. package/sdk/platform/Lead/LeadPlatformClient.d.ts +15 -15
  79. package/sdk/platform/Lead/LeadPlatformClient.js +15 -15
  80. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +10 -10
  81. package/sdk/platform/Order/OrderPlatformApplicationClient.js +10 -10
  82. package/sdk/platform/Order/OrderPlatformClient.d.ts +95 -106
  83. package/sdk/platform/Order/OrderPlatformClient.js +95 -190
  84. package/sdk/platform/Order/OrderPlatformModel.d.ts +10 -0
  85. package/sdk/platform/Order/OrderPlatformModel.js +4 -0
  86. package/sdk/platform/Order/OrderPlatformValidator.d.ts +1 -33
  87. package/sdk/platform/Order/OrderPlatformValidator.js +0 -20
  88. package/sdk/platform/Partner/PartnerPlatformApplicationClient.d.ts +4 -4
  89. package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +4 -4
  90. package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +77 -77
  91. package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +77 -77
  92. package/sdk/platform/Payment/PaymentPlatformClient.d.ts +2 -2
  93. package/sdk/platform/Payment/PaymentPlatformClient.js +2 -2
  94. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +7 -0
  95. package/sdk/platform/Payment/PaymentPlatformModel.js +3 -0
  96. package/sdk/platform/PlatformClient.d.ts +0 -2
  97. package/sdk/platform/PlatformClient.js +0 -4
  98. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.d.ts +7 -7
  99. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +7 -7
  100. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +40 -40
  101. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +40 -40
  102. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +51 -50
  103. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +51 -50
  104. package/sdk/platform/Share/SharePlatformApplicationClient.d.ts +1 -1
  105. package/sdk/platform/Share/SharePlatformApplicationClient.js +1 -1
  106. package/sdk/platform/Share/SharePlatformModel.d.ts +2 -0
  107. package/sdk/platform/Share/SharePlatformModel.js +2 -0
  108. package/sdk/platform/Theme/ThemePlatformApplicationClient.d.ts +34 -104
  109. package/sdk/platform/Theme/ThemePlatformApplicationClient.js +34 -591
  110. package/sdk/platform/Theme/ThemePlatformApplicationValidator.d.ts +1 -100
  111. package/sdk/platform/Theme/ThemePlatformApplicationValidator.js +0 -92
  112. package/sdk/platform/Theme/ThemePlatformClient.d.ts +6 -6
  113. package/sdk/platform/Theme/ThemePlatformClient.js +6 -6
  114. package/sdk/platform/User/UserPlatformApplicationClient.d.ts +35 -35
  115. package/sdk/platform/User/UserPlatformApplicationClient.js +35 -35
  116. package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +7 -6
  117. package/sdk/platform/Webhook/WebhookPlatformClient.js +7 -6
  118. package/sdk/platform/index.d.ts +0 -1
  119. package/sdk/platform/index.js +0 -2
  120. package/sdk/platform/Inventory/InventoryPlatformClient.d.ts +0 -152
  121. package/sdk/platform/Inventory/InventoryPlatformClient.js +0 -1017
  122. package/sdk/platform/Inventory/InventoryPlatformModel.d.ts +0 -1355
  123. package/sdk/platform/Inventory/InventoryPlatformModel.js +0 -1544
  124. package/sdk/platform/Inventory/InventoryPlatformValidator.d.ts +0 -171
  125. package/sdk/platform/Inventory/InventoryPlatformValidator.js +0 -159
@@ -1,1544 +0,0 @@
1
- const Joi = require("joi");
2
-
3
- /**
4
- * @typedef DataTresholdDTO
5
- * @property {number} [min_price]
6
- * @property {number} [safe_stock]
7
- * @property {number} [period_threshold]
8
- * @property {string} [period_threshold_type]
9
- * @property {GenericDTO[]} [period_type_list]
10
- */
11
-
12
- /**
13
- * @typedef GenericDTO
14
- * @property {string} [text]
15
- * @property {Object} [value]
16
- */
17
-
18
- /**
19
- * @typedef JobConfigDTO
20
- * @property {Object} [integration_data]
21
- * @property {string} [company_name]
22
- * @property {string} integration
23
- * @property {number} company_id
24
- * @property {TaskDTO} [task_details]
25
- * @property {DataTresholdDTO} [threshold_details]
26
- * @property {string} [job_code]
27
- * @property {string} [alias]
28
- */
29
-
30
- /**
31
- * @typedef TaskDTO
32
- * @property {number} [type]
33
- * @property {GenericDTO[]} [group_list]
34
- */
35
-
36
- /**
37
- * @typedef Page
38
- * @property {number} [item_total]
39
- * @property {string} [next_id]
40
- * @property {boolean} [has_previous]
41
- * @property {boolean} [has_next]
42
- * @property {number} [current]
43
- * @property {string} type
44
- * @property {number} [size]
45
- */
46
-
47
- /**
48
- * @typedef ResponseEnvelopeString
49
- * @property {string} [timestamp]
50
- * @property {number} [status]
51
- * @property {string} [error]
52
- * @property {string} [exception]
53
- * @property {string} [message]
54
- * @property {number} [total_time_taken_in_millis]
55
- * @property {string} [http_status]
56
- * @property {string} [items]
57
- * @property {string} [payload]
58
- * @property {string} [trace_id]
59
- * @property {Page} [page]
60
- */
61
-
62
- /**
63
- * @typedef KafkaMetaModel
64
- * @property {string} [job_type]
65
- * @property {number} [batch_id]
66
- * @property {string} [action]
67
- * @property {string[]} [trace]
68
- * @property {string} [created_on]
69
- * @property {number} [created_timestamp]
70
- */
71
-
72
- /**
73
- * @typedef SuppressStoreModel
74
- * @property {number[]} [stores]
75
- */
76
-
77
- /**
78
- * @typedef SuppressStorePayload
79
- * @property {SuppressStoreModel[]} [payload]
80
- * @property {KafkaMetaModel} [meta]
81
- */
82
-
83
- /**
84
- * @typedef KafkaResponse
85
- * @property {number} [offset]
86
- * @property {number} [partition]
87
- */
88
-
89
- /**
90
- * @typedef ResponseEnvelopeKafkaResponse
91
- * @property {string} [timestamp]
92
- * @property {number} [status]
93
- * @property {string} [error]
94
- * @property {string} [exception]
95
- * @property {string} [message]
96
- * @property {number} [total_time_taken_in_millis]
97
- * @property {string} [http_status]
98
- * @property {KafkaResponse} [items]
99
- * @property {KafkaResponse} [payload]
100
- * @property {string} [trace_id]
101
- * @property {Page} [page]
102
- */
103
-
104
- /**
105
- * @typedef GCompany
106
- * @property {string} [_id]
107
- * @property {string} [integration]
108
- * @property {string} [level]
109
- * @property {number} [uid]
110
- * @property {boolean} [opted]
111
- * @property {string[]} [permissions]
112
- * @property {string} [token]
113
- * @property {string} [name]
114
- * @property {GStore[]} [stores]
115
- */
116
-
117
- /**
118
- * @typedef GStore
119
- * @property {string} [_id]
120
- * @property {string} [integration]
121
- * @property {string} [level]
122
- * @property {number} [uid]
123
- * @property {boolean} [opted]
124
- * @property {string[]} [permissions]
125
- * @property {string} [token]
126
- * @property {string} [code]
127
- * @property {string} [name]
128
- * @property {StoreData} [data]
129
- */
130
-
131
- /**
132
- * @typedef Metum
133
- * @property {string} [_id]
134
- * @property {string} [name]
135
- * @property {string} [value]
136
- */
137
-
138
- /**
139
- * @typedef ResponseEnvelopeListSlingshotConfigurationDetail
140
- * @property {string} [timestamp]
141
- * @property {number} [status]
142
- * @property {string} [error]
143
- * @property {string} [exception]
144
- * @property {string} [message]
145
- * @property {number} [total_time_taken_in_millis]
146
- * @property {string} [http_status]
147
- * @property {SlingshotConfigurationDetail[]} [items]
148
- * @property {SlingshotConfigurationDetail[]} [payload]
149
- * @property {string} [trace_id]
150
- * @property {Page} [page]
151
- */
152
-
153
- /**
154
- * @typedef SlingshotConfigurationDetail
155
- * @property {SlingshotIntegration} [integration]
156
- * @property {GCompany[]} [companies]
157
- */
158
-
159
- /**
160
- * @typedef SlingshotIntegration
161
- * @property {string} [_id]
162
- * @property {string} [description]
163
- * @property {string} [name]
164
- * @property {string} [slug]
165
- * @property {Metum[]} [meta]
166
- */
167
-
168
- /**
169
- * @typedef StoreData
170
- * @property {string} [location_id]
171
- */
172
-
173
- /**
174
- * @typedef AWSS3config
175
- * @property {string} [bucket]
176
- * @property {string} [region]
177
- * @property {string} [dir]
178
- * @property {string} [access_key]
179
- * @property {string} [secret_key]
180
- * @property {string} [local_file_path]
181
- * @property {string} [archive_path]
182
- * @property {boolean} [archive]
183
- * @property {boolean} [delete]
184
- * @property {boolean} [unzip]
185
- * @property {string} [zip_format]
186
- * @property {string} [file_regex]
187
- * @property {ArchiveConfig} [archive_config]
188
- */
189
-
190
- /**
191
- * @typedef ArchiveConfig
192
- * @property {boolean} [delete]
193
- * @property {boolean} [archive]
194
- * @property {string} [archive_dir]
195
- */
196
-
197
- /**
198
- * @typedef Audit
199
- * @property {string} [created_by]
200
- * @property {string} [modified_by]
201
- * @property {string} [created_on]
202
- * @property {string} [modified_on]
203
- */
204
-
205
- /**
206
- * @typedef CatalogMasterConfig
207
- * @property {string} [source_slug]
208
- */
209
-
210
- /**
211
- * @typedef CompanyConfig
212
- * @property {number} [company_id]
213
- * @property {number[]} [exclude_steps]
214
- * @property {string[]} [hidden_closet_keys]
215
- * @property {Object} [open_tags]
216
- * @property {string[]} [tax_identifiers]
217
- * @property {number} [delete_quantity_threshold]
218
- */
219
-
220
- /**
221
- * @typedef DBConfig
222
- * @property {string} [vendor]
223
- * @property {string} [host]
224
- * @property {number} [port]
225
- * @property {string} [username]
226
- * @property {string} [password]
227
- * @property {string} [dbname]
228
- * @property {string} [query]
229
- * @property {boolean} [procedure]
230
- * @property {string} [driver_class]
231
- * @property {string} [jdbc_url]
232
- * @property {Object} [optional_properties]
233
- */
234
-
235
- /**
236
- * @typedef DBConnectionProfile
237
- * @property {string} [inventory]
238
- */
239
-
240
- /**
241
- * @typedef DBParamConfig
242
- * @property {Object} [params]
243
- */
244
-
245
- /**
246
- * @typedef DefaultHeadersDTO
247
- * @property {PropBeanDTO} [store]
248
- * @property {PropBeanDTO} [intf_article_id]
249
- * @property {PropBeanDTO} [price_effective]
250
- * @property {PropBeanDTO} [quantity]
251
- */
252
-
253
- /**
254
- * @typedef DocMappingConfig
255
- * @property {Object} [properties]
256
- * @property {number} [junk_data_threshold_count]
257
- * @property {PropBeanConfig[]} [prop_bean_configs]
258
- * @property {string} [unwind_field]
259
- * @property {DefaultHeadersDTO} [default_headers]
260
- */
261
-
262
- /**
263
- * @typedef EmailConfig
264
- * @property {string} [recepient]
265
- * @property {string} [host]
266
- * @property {string} [username]
267
- * @property {string} [password]
268
- * @property {boolean} [unzip]
269
- * @property {boolean} [read_from_content]
270
- * @property {boolean} [filter_based_on_recepients]
271
- * @property {string} [pcol]
272
- * @property {string} [subject_line_regex]
273
- * @property {string} [sender_address]
274
- * @property {string} [local_dir]
275
- * @property {string[]} [folder_name_hierarchies]
276
- * @property {string} [attachment_regex]
277
- * @property {string} [body_content_regex]
278
- * @property {boolean} [password_protected]
279
- * @property {string} [zip_format]
280
- * @property {boolean} [attachment_mandate]
281
- * @property {boolean} [filter_files_after_extraction]
282
- * @property {ArchiveConfig} [archive_config]
283
- * @property {boolean} [read_all_unread_mails]
284
- * @property {string} [content_type]
285
- * @property {boolean} [downloadable_link]
286
- * @property {Object} [properties]
287
- */
288
-
289
- /**
290
- * @typedef FTPConfig
291
- * @property {string} [host]
292
- * @property {number} [port]
293
- * @property {string} [username]
294
- * @property {string} [password]
295
- * @property {boolean} [unzip]
296
- * @property {number} [retries]
297
- * @property {number} [interval]
298
- * @property {string} [local_dir]
299
- * @property {string} [remote_dir]
300
- * @property {string} [zip_file_regex]
301
- * @property {ArchiveConfig} [archive_config]
302
- * @property {string} [file_regex]
303
- * @property {string} [zip_format]
304
- * @property {boolean} [read_all_files]
305
- */
306
-
307
- /**
308
- * @typedef FileConfig
309
- * @property {string} [delimiter]
310
- * @property {string} [charset]
311
- * @property {Object} [properties]
312
- * @property {boolean} [file_has_header]
313
- * @property {number} [header_index]
314
- * @property {string[]} [header_array]
315
- * @property {number} [data_start_index]
316
- * @property {PropBeanConfig[]} [prop_bean_configs]
317
- * @property {number} [junk_data_threshold_count]
318
- * @property {string} [file_type]
319
- * @property {boolean} [line_validity_check]
320
- * @property {string[]} [sheet_names]
321
- * @property {boolean} [read_all_sheets]
322
- * @property {string} [quote_char]
323
- * @property {string} [escape_char]
324
- * @property {DefaultHeadersDTO} [default_headers]
325
- */
326
-
327
- /**
328
- * @typedef GoogleSpreadSheetConfig
329
- * @property {string} [range]
330
- * @property {string} [sheet_id]
331
- * @property {string} [client_secret_location]
332
- * @property {string} [cred_storage_directory]
333
- * @property {string} [local_dir]
334
- * @property {ArchiveConfig} [archive_config]
335
- */
336
-
337
- /**
338
- * @typedef HttpConfig
339
- * @property {string} [hosturl]
340
- * @property {string} [username]
341
- * @property {string} [password]
342
- * @property {Object} [request_params]
343
- * @property {string} [http_method]
344
- * @property {string} [request_payload]
345
- * @property {string} [local_path]
346
- * @property {ArchiveConfig} [archive_config]
347
- */
348
-
349
- /**
350
- * @typedef JobConfig
351
- * @property {number} [_id]
352
- * @property {string} [job_code]
353
- * @property {string} [task_type]
354
- * @property {number} [sync_delay]
355
- * @property {string} [cron_expression]
356
- * @property {StoreFilter} [store_filter]
357
- * @property {ProcessConfig} [process_config]
358
- * @property {StoreConfig[]} [store_config]
359
- * @property {Object} [properties]
360
- * @property {boolean} [immediate_first_run]
361
- * @property {boolean} [disable]
362
- * @property {string[]} [dependent_job_codes]
363
- * @property {CompanyConfig[]} [company_config]
364
- * @property {number[]} [company_ids]
365
- * @property {string[]} [tax_identifiers]
366
- * @property {string} [priority]
367
- * @property {number} [period_threshold]
368
- * @property {string} [period_threshold_type]
369
- * @property {DBConnectionProfile} [db_connection_profile]
370
- * @property {Object} [params]
371
- * @property {Object} [open_tags]
372
- * @property {number} [delete_quantity_threshold]
373
- * @property {CatalogMasterConfig} [catalog_master_config]
374
- * @property {string[]} [aggregator_types]
375
- * @property {string} [integration_type]
376
- * @property {number} [min_price]
377
- * @property {Audit} [audit]
378
- * @property {number} [version]
379
- * @property {string} [alias]
380
- */
381
-
382
- /**
383
- * @typedef JobConfigRawDTO
384
- * @property {string} company_name
385
- * @property {string} integration
386
- * @property {number} company_id
387
- * @property {JobConfig} [data]
388
- */
389
-
390
- /**
391
- * @typedef JsonDocConfig
392
- * @property {PropBeanConfig[]} [prop_bean_configs]
393
- */
394
-
395
- /**
396
- * @typedef LocalFileConfig
397
- * @property {number} [retries]
398
- * @property {number} [interval]
399
- * @property {string} [local_dir]
400
- * @property {string} [working_dir]
401
- * @property {boolean} [unzip]
402
- * @property {string} [zip_file_regex]
403
- * @property {string} [file_regex]
404
- * @property {string} [zip_format]
405
- * @property {ArchiveConfig} [archive_config]
406
- * @property {boolean} [read_all_files]
407
- */
408
-
409
- /**
410
- * @typedef MongoDocConfig
411
- * @property {string} [collection_name]
412
- * @property {Object} [find_query]
413
- * @property {Object} [projection_query]
414
- * @property {PropBeanConfig[]} [prop_bean_configs]
415
- * @property {Object[]} [aggregate_pipeline]
416
- * @property {boolean} [skip_save]
417
- */
418
-
419
- /**
420
- * @typedef OAuthConfig
421
- * @property {number} [limit]
422
- * @property {number} [pages]
423
- * @property {number} [interval]
424
- * @property {string} [consumer_key]
425
- * @property {string} [consumer_secret]
426
- * @property {string} [token]
427
- * @property {string} [token_secret]
428
- * @property {string} [rest_url]
429
- * @property {string} [rest_base_url]
430
- * @property {string} [function_name]
431
- */
432
-
433
- /**
434
- * @typedef ProcessConfig
435
- * @property {DBConfig} [db_config]
436
- * @property {DBParamConfig} [db_param_config]
437
- * @property {SFTPConfig} [sftp_config]
438
- * @property {AWSS3config} [aws_s3_config]
439
- * @property {MongoDocConfig} [mongo_doc_config]
440
- * @property {FTPConfig} [ftp_config]
441
- * @property {EmailConfig} [email_config]
442
- * @property {FileConfig} [file_config]
443
- * @property {JsonDocConfig} [json_doc_config]
444
- * @property {DocMappingConfig} [doc_mapping_config]
445
- * @property {TaskStepConfig} [task_step_config]
446
- * @property {HttpConfig} [http_config]
447
- * @property {LocalFileConfig} [local_file_config]
448
- * @property {OAuthConfig} [oauth_config]
449
- * @property {GoogleSpreadSheetConfig} [google_spreadsheet_config]
450
- */
451
-
452
- /**
453
- * @typedef PropBeanConfig
454
- * @property {boolean} [required]
455
- * @property {boolean} [optional]
456
- * @property {Send} [send]
457
- * @property {Object[]} [validations]
458
- * @property {string[]} [values]
459
- * @property {boolean} [include]
460
- * @property {string} [source_field]
461
- * @property {string[]} [source_fields]
462
- * @property {string} [destination_field]
463
- * @property {string} [data_type]
464
- * @property {Object} [default_value]
465
- * @property {Object} [const_value]
466
- * @property {string} [concat_str]
467
- * @property {string} [function_name]
468
- * @property {string} [transformer_name]
469
- * @property {string} [all_param_function_name]
470
- * @property {string} [sub_separator]
471
- * @property {string} [index_field]
472
- * @property {boolean} [ignore_if_not_exists]
473
- * @property {string} [identifier_type]
474
- * @property {Object} [projection_query]
475
- * @property {boolean} [enrich_from_master]
476
- */
477
-
478
- /**
479
- * @typedef PropBeanDTO
480
- * @property {boolean} [required]
481
- * @property {boolean} [optional]
482
- * @property {boolean} [include]
483
- * @property {string} [source_field]
484
- * @property {string[]} [source_fields]
485
- * @property {string} [destination_field]
486
- * @property {string} [data_type]
487
- * @property {Object} [default_value]
488
- * @property {Object} [const_value]
489
- * @property {string} [concat_str]
490
- * @property {string} [function_name]
491
- * @property {string} [transformer_name]
492
- * @property {string} [all_param_function_name]
493
- * @property {string} [sub_separator]
494
- * @property {string} [index_field]
495
- * @property {boolean} [ignore_if_not_exists]
496
- * @property {string} [identifier_type]
497
- * @property {Object} [projection_query]
498
- * @property {boolean} [enrich_from_master]
499
- */
500
-
501
- /**
502
- * @typedef ResponseEnvelopeListJobConfigRawDTO
503
- * @property {string} [timestamp]
504
- * @property {number} [status]
505
- * @property {string} [error]
506
- * @property {string} [exception]
507
- * @property {string} [message]
508
- * @property {number} [total_time_taken_in_millis]
509
- * @property {string} [http_status]
510
- * @property {JobConfigRawDTO[]} [items]
511
- * @property {JobConfigRawDTO[]} [payload]
512
- * @property {string} [trace_id]
513
- * @property {Page} [page]
514
- */
515
-
516
- /**
517
- * @typedef SFTPConfig
518
- * @property {string} [host]
519
- * @property {number} [port]
520
- * @property {string} [username]
521
- * @property {string} [password]
522
- * @property {boolean} [unzip]
523
- * @property {number} [retries]
524
- * @property {number} [interval]
525
- * @property {string} [private_key_path]
526
- * @property {boolean} [strict_host_key_checking]
527
- * @property {string} [local_dir]
528
- * @property {string} [remote_dir]
529
- * @property {boolean} [password_protected]
530
- * @property {string} [zip_file_regex]
531
- * @property {string} [file_regex]
532
- * @property {string} [zip_format]
533
- * @property {ArchiveConfig} [archive_config]
534
- * @property {boolean} [read_all_files]
535
- */
536
-
537
- /**
538
- * @typedef Send
539
- * @property {boolean} [raw]
540
- * @property {boolean} [processed]
541
- */
542
-
543
- /**
544
- * @typedef StoreConfig
545
- * @property {string} [job_code]
546
- * @property {string} [storeid]
547
- * @property {string} [store_alias]
548
- * @property {string} [store_file_regex]
549
- * @property {string} [store_file_name]
550
- * @property {ProcessConfig} [process_config]
551
- * @property {Object} [properties]
552
- */
553
-
554
- /**
555
- * @typedef StoreFilter
556
- * @property {string[]} [include_tags]
557
- * @property {string[]} [exclude_tags]
558
- * @property {Object} [query]
559
- */
560
-
561
- /**
562
- * @typedef TaskConfig
563
- * @property {string} [name]
564
- * @property {number} [task_config_id]
565
- * @property {TaskParam[]} [task_params]
566
- */
567
-
568
- /**
569
- * @typedef TaskParam
570
- * @property {string} [name]
571
- * @property {Object} [value]
572
- */
573
-
574
- /**
575
- * @typedef TaskStepConfig
576
- * @property {TaskConfig[]} [task_configs]
577
- * @property {number[]} [task_config_ids]
578
- * @property {number[]} [task_config_group_ids]
579
- */
580
-
581
- /**
582
- * @typedef JobStepsDTO
583
- * @property {string} [step_name]
584
- * @property {string} [type]
585
- * @property {number} [step_execution_time]
586
- * @property {number} [start_count]
587
- * @property {number} [end_count]
588
- * @property {number} [deleted_count]
589
- * @property {string} [processed_start_time]
590
- * @property {string} [processed_at]
591
- */
592
-
593
- /**
594
- * @typedef ResponseEnvelopeListJobStepsDTO
595
- * @property {string} [timestamp]
596
- * @property {number} [status]
597
- * @property {string} [error]
598
- * @property {string} [exception]
599
- * @property {string} [message]
600
- * @property {number} [total_time_taken_in_millis]
601
- * @property {string} [http_status]
602
- * @property {JobStepsDTO[]} [items]
603
- * @property {JobStepsDTO[]} [payload]
604
- * @property {string} [trace_id]
605
- * @property {Page} [page]
606
- */
607
-
608
- /**
609
- * @typedef ResponseEnvelopeListJobConfigDTO
610
- * @property {string} [timestamp]
611
- * @property {number} [status]
612
- * @property {string} [error]
613
- * @property {string} [exception]
614
- * @property {string} [message]
615
- * @property {number} [total_time_taken_in_millis]
616
- * @property {string} [http_status]
617
- * @property {JobConfigDTO[]} [items]
618
- * @property {JobConfigDTO[]} [payload]
619
- * @property {string} [trace_id]
620
- * @property {Page} [page]
621
- */
622
-
623
- /**
624
- * @typedef ResponseEnvelopeJobConfigDTO
625
- * @property {string} [timestamp]
626
- * @property {number} [status]
627
- * @property {string} [error]
628
- * @property {string} [exception]
629
- * @property {string} [message]
630
- * @property {number} [total_time_taken_in_millis]
631
- * @property {string} [http_status]
632
- * @property {JobConfigDTO} [items]
633
- * @property {JobConfigDTO} [payload]
634
- * @property {string} [trace_id]
635
- * @property {Page} [page]
636
- */
637
-
638
- /**
639
- * @typedef JobHistoryDto
640
- * @property {number} [total_added_count]
641
- * @property {number} [total_updated_count]
642
- * @property {number} [total_suppressed_count]
643
- * @property {number} [total_initial_count]
644
- * @property {number} [job_id]
645
- * @property {string} [status]
646
- * @property {string} [job_code]
647
- * @property {string} [processed_on]
648
- * @property {string[]} [filename]
649
- * @property {string} [error_type]
650
- * @property {string} [message]
651
- */
652
-
653
- /**
654
- * @typedef JobMetricsDto
655
- * @property {string} [job_code]
656
- * @property {string} [is_run_more_than_usual]
657
- * @property {JobHistoryDto[]} [job_history]
658
- * @property {number} [total_success_count]
659
- * @property {number} [total_failure_count]
660
- * @property {number} [total_warning_count]
661
- * @property {number} [total_suppressed_count]
662
- * @property {number} [total_job_runs]
663
- */
664
-
665
- /**
666
- * @typedef ResponseEnvelopeJobMetricsDto
667
- * @property {string} [timestamp]
668
- * @property {number} [status]
669
- * @property {string} [error]
670
- * @property {string} [exception]
671
- * @property {string} [message]
672
- * @property {number} [total_time_taken_in_millis]
673
- * @property {string} [http_status]
674
- * @property {JobMetricsDto} [items]
675
- * @property {JobMetricsDto} [payload]
676
- * @property {string} [trace_id]
677
- * @property {Page} [page]
678
- */
679
-
680
- /**
681
- * @typedef JobConfigListDTO
682
- * @property {string} [code]
683
- * @property {string} [alias]
684
- * @property {string} [modified_by]
685
- * @property {string} [created_by]
686
- * @property {string} [modified_on]
687
- * @property {string} [created_on]
688
- * @property {boolean} [active]
689
- * @property {string} [type]
690
- */
691
-
692
- /**
693
- * @typedef ResponseEnvelopeListJobConfigListDTO
694
- * @property {string} [timestamp]
695
- * @property {number} [status]
696
- * @property {string} [error]
697
- * @property {string} [exception]
698
- * @property {string} [message]
699
- * @property {number} [total_time_taken_in_millis]
700
- * @property {string} [http_status]
701
- * @property {JobConfigListDTO[]} [items]
702
- * @property {JobConfigListDTO[]} [payload]
703
- * @property {string} [trace_id]
704
- * @property {Page} [page]
705
- */
706
-
707
- class InventoryPlatformModel {
708
- /** @returns {DataTresholdDTO} */
709
- static DataTresholdDTO() {
710
- return Joi.object({
711
- min_price: Joi.number(),
712
- safe_stock: Joi.number(),
713
- period_threshold: Joi.number(),
714
- period_threshold_type: Joi.string().allow(""),
715
- period_type_list: Joi.array().items(InventoryPlatformModel.GenericDTO()),
716
- });
717
- }
718
-
719
- /** @returns {GenericDTO} */
720
- static GenericDTO() {
721
- return Joi.object({
722
- text: Joi.string().allow(""),
723
- value: Joi.any(),
724
- });
725
- }
726
-
727
- /** @returns {JobConfigDTO} */
728
- static JobConfigDTO() {
729
- return Joi.object({
730
- integration_data: Joi.object().pattern(/\S/, Joi.any()),
731
- company_name: Joi.string().allow(""),
732
- integration: Joi.string().allow("").required(),
733
- company_id: Joi.number().required(),
734
- task_details: InventoryPlatformModel.TaskDTO(),
735
- threshold_details: InventoryPlatformModel.DataTresholdDTO(),
736
- job_code: Joi.string().allow(""),
737
- alias: Joi.string().allow(""),
738
- });
739
- }
740
-
741
- /** @returns {TaskDTO} */
742
- static TaskDTO() {
743
- return Joi.object({
744
- type: Joi.number(),
745
- group_list: Joi.array().items(InventoryPlatformModel.GenericDTO()),
746
- });
747
- }
748
-
749
- /** @returns {Page} */
750
- static Page() {
751
- return Joi.object({
752
- item_total: Joi.number(),
753
- next_id: Joi.string().allow(""),
754
- has_previous: Joi.boolean(),
755
- has_next: Joi.boolean(),
756
- current: Joi.number(),
757
- type: Joi.string().allow("").required(),
758
- size: Joi.number(),
759
- });
760
- }
761
-
762
- /** @returns {ResponseEnvelopeString} */
763
- static ResponseEnvelopeString() {
764
- return Joi.object({
765
- timestamp: Joi.string().allow(""),
766
- status: Joi.number(),
767
- error: Joi.string().allow(""),
768
- exception: Joi.string().allow(""),
769
- message: Joi.string().allow(""),
770
- total_time_taken_in_millis: Joi.number(),
771
- http_status: Joi.string().allow(""),
772
- items: Joi.string().allow(""),
773
- payload: Joi.string().allow(""),
774
- trace_id: Joi.string().allow(""),
775
- page: InventoryPlatformModel.Page(),
776
- });
777
- }
778
-
779
- /** @returns {KafkaMetaModel} */
780
- static KafkaMetaModel() {
781
- return Joi.object({
782
- job_type: Joi.string().allow(""),
783
- batch_id: Joi.number(),
784
- action: Joi.string().allow(""),
785
- trace: Joi.array().items(Joi.string().allow("")),
786
- created_on: Joi.string().allow(""),
787
- created_timestamp: Joi.number(),
788
- });
789
- }
790
-
791
- /** @returns {SuppressStoreModel} */
792
- static SuppressStoreModel() {
793
- return Joi.object({
794
- stores: Joi.array().items(Joi.number()),
795
- });
796
- }
797
-
798
- /** @returns {SuppressStorePayload} */
799
- static SuppressStorePayload() {
800
- return Joi.object({
801
- payload: Joi.array().items(InventoryPlatformModel.SuppressStoreModel()),
802
- meta: InventoryPlatformModel.KafkaMetaModel(),
803
- });
804
- }
805
-
806
- /** @returns {KafkaResponse} */
807
- static KafkaResponse() {
808
- return Joi.object({
809
- offset: Joi.number(),
810
- partition: Joi.number(),
811
- });
812
- }
813
-
814
- /** @returns {ResponseEnvelopeKafkaResponse} */
815
- static ResponseEnvelopeKafkaResponse() {
816
- return Joi.object({
817
- timestamp: Joi.string().allow(""),
818
- status: Joi.number(),
819
- error: Joi.string().allow(""),
820
- exception: Joi.string().allow(""),
821
- message: Joi.string().allow(""),
822
- total_time_taken_in_millis: Joi.number(),
823
- http_status: Joi.string().allow(""),
824
- items: InventoryPlatformModel.KafkaResponse(),
825
- payload: InventoryPlatformModel.KafkaResponse(),
826
- trace_id: Joi.string().allow(""),
827
- page: InventoryPlatformModel.Page(),
828
- });
829
- }
830
-
831
- /** @returns {GCompany} */
832
- static GCompany() {
833
- return Joi.object({
834
- _id: Joi.string().allow(""),
835
- integration: Joi.string().allow(""),
836
- level: Joi.string().allow(""),
837
- uid: Joi.number(),
838
- opted: Joi.boolean(),
839
- permissions: Joi.array().items(Joi.string().allow("")),
840
- token: Joi.string().allow(""),
841
- name: Joi.string().allow(""),
842
- stores: Joi.array().items(InventoryPlatformModel.GStore()),
843
- });
844
- }
845
-
846
- /** @returns {GStore} */
847
- static GStore() {
848
- return Joi.object({
849
- _id: Joi.string().allow(""),
850
- integration: Joi.string().allow(""),
851
- level: Joi.string().allow(""),
852
- uid: Joi.number(),
853
- opted: Joi.boolean(),
854
- permissions: Joi.array().items(Joi.string().allow("")),
855
- token: Joi.string().allow(""),
856
- code: Joi.string().allow(""),
857
- name: Joi.string().allow(""),
858
- data: InventoryPlatformModel.StoreData(),
859
- });
860
- }
861
-
862
- /** @returns {Metum} */
863
- static Metum() {
864
- return Joi.object({
865
- _id: Joi.string().allow(""),
866
- name: Joi.string().allow(""),
867
- value: Joi.string().allow(""),
868
- });
869
- }
870
-
871
- /** @returns {ResponseEnvelopeListSlingshotConfigurationDetail} */
872
- static ResponseEnvelopeListSlingshotConfigurationDetail() {
873
- return Joi.object({
874
- timestamp: Joi.string().allow(""),
875
- status: Joi.number(),
876
- error: Joi.string().allow(""),
877
- exception: Joi.string().allow(""),
878
- message: Joi.string().allow(""),
879
- total_time_taken_in_millis: Joi.number(),
880
- http_status: Joi.string().allow(""),
881
- items: Joi.array().items(
882
- InventoryPlatformModel.SlingshotConfigurationDetail()
883
- ),
884
- payload: Joi.array().items(
885
- InventoryPlatformModel.SlingshotConfigurationDetail()
886
- ),
887
- trace_id: Joi.string().allow(""),
888
- page: InventoryPlatformModel.Page(),
889
- });
890
- }
891
-
892
- /** @returns {SlingshotConfigurationDetail} */
893
- static SlingshotConfigurationDetail() {
894
- return Joi.object({
895
- integration: InventoryPlatformModel.SlingshotIntegration(),
896
- companies: Joi.array().items(InventoryPlatformModel.GCompany()),
897
- });
898
- }
899
-
900
- /** @returns {SlingshotIntegration} */
901
- static SlingshotIntegration() {
902
- return Joi.object({
903
- _id: Joi.string().allow(""),
904
- description: Joi.string().allow(""),
905
- name: Joi.string().allow(""),
906
- slug: Joi.string().allow(""),
907
- meta: Joi.array().items(InventoryPlatformModel.Metum()),
908
- });
909
- }
910
-
911
- /** @returns {StoreData} */
912
- static StoreData() {
913
- return Joi.object({
914
- location_id: Joi.string().allow(""),
915
- });
916
- }
917
-
918
- /** @returns {AWSS3config} */
919
- static AWSS3config() {
920
- return Joi.object({
921
- bucket: Joi.string().allow(""),
922
- region: Joi.string().allow(""),
923
- dir: Joi.string().allow(""),
924
- access_key: Joi.string().allow(""),
925
- secret_key: Joi.string().allow(""),
926
- local_file_path: Joi.string().allow(""),
927
- archive_path: Joi.string().allow(""),
928
- archive: Joi.boolean(),
929
- delete: Joi.boolean(),
930
- unzip: Joi.boolean(),
931
- zip_format: Joi.string().allow(""),
932
- file_regex: Joi.string().allow(""),
933
- archive_config: InventoryPlatformModel.ArchiveConfig(),
934
- });
935
- }
936
-
937
- /** @returns {ArchiveConfig} */
938
- static ArchiveConfig() {
939
- return Joi.object({
940
- delete: Joi.boolean(),
941
- archive: Joi.boolean(),
942
- archive_dir: Joi.string().allow(""),
943
- });
944
- }
945
-
946
- /** @returns {Audit} */
947
- static Audit() {
948
- return Joi.object({
949
- created_by: Joi.string().allow(""),
950
- modified_by: Joi.string().allow(""),
951
- created_on: Joi.string().allow(""),
952
- modified_on: Joi.string().allow(""),
953
- });
954
- }
955
-
956
- /** @returns {CatalogMasterConfig} */
957
- static CatalogMasterConfig() {
958
- return Joi.object({
959
- source_slug: Joi.string().allow(""),
960
- });
961
- }
962
-
963
- /** @returns {CompanyConfig} */
964
- static CompanyConfig() {
965
- return Joi.object({
966
- company_id: Joi.number(),
967
- exclude_steps: Joi.array().items(Joi.number()),
968
- hidden_closet_keys: Joi.array().items(Joi.string().allow("")),
969
- open_tags: Joi.object().pattern(/\S/, Joi.any()),
970
- tax_identifiers: Joi.array().items(Joi.string().allow("")),
971
- delete_quantity_threshold: Joi.number(),
972
- });
973
- }
974
-
975
- /** @returns {DBConfig} */
976
- static DBConfig() {
977
- return Joi.object({
978
- vendor: Joi.string().allow(""),
979
- host: Joi.string().allow(""),
980
- port: Joi.number(),
981
- username: Joi.string().allow(""),
982
- password: Joi.string().allow(""),
983
- dbname: Joi.string().allow(""),
984
- query: Joi.string().allow(""),
985
- procedure: Joi.boolean(),
986
- driver_class: Joi.string().allow(""),
987
- jdbc_url: Joi.string().allow(""),
988
- optional_properties: Joi.object().pattern(/\S/, Joi.string().allow("")),
989
- });
990
- }
991
-
992
- /** @returns {DBConnectionProfile} */
993
- static DBConnectionProfile() {
994
- return Joi.object({
995
- inventory: Joi.string().allow(""),
996
- });
997
- }
998
-
999
- /** @returns {DBParamConfig} */
1000
- static DBParamConfig() {
1001
- return Joi.object({
1002
- params: Joi.object().pattern(/\S/, Joi.any()),
1003
- });
1004
- }
1005
-
1006
- /** @returns {DefaultHeadersDTO} */
1007
- static DefaultHeadersDTO() {
1008
- return Joi.object({
1009
- store: InventoryPlatformModel.PropBeanDTO(),
1010
- intf_article_id: InventoryPlatformModel.PropBeanDTO(),
1011
- price_effective: InventoryPlatformModel.PropBeanDTO(),
1012
- quantity: InventoryPlatformModel.PropBeanDTO(),
1013
- });
1014
- }
1015
-
1016
- /** @returns {DocMappingConfig} */
1017
- static DocMappingConfig() {
1018
- return Joi.object({
1019
- properties: Joi.object().pattern(/\S/, Joi.any()),
1020
- junk_data_threshold_count: Joi.number(),
1021
- prop_bean_configs: Joi.array().items(
1022
- InventoryPlatformModel.PropBeanConfig()
1023
- ),
1024
- unwind_field: Joi.string().allow(""),
1025
- default_headers: InventoryPlatformModel.DefaultHeadersDTO(),
1026
- });
1027
- }
1028
-
1029
- /** @returns {EmailConfig} */
1030
- static EmailConfig() {
1031
- return Joi.object({
1032
- recepient: Joi.string().allow(""),
1033
- host: Joi.string().allow(""),
1034
- username: Joi.string().allow(""),
1035
- password: Joi.string().allow(""),
1036
- unzip: Joi.boolean(),
1037
- read_from_content: Joi.boolean(),
1038
- filter_based_on_recepients: Joi.boolean(),
1039
- pcol: Joi.string().allow(""),
1040
- subject_line_regex: Joi.string().allow(""),
1041
- sender_address: Joi.string().allow(""),
1042
- local_dir: Joi.string().allow(""),
1043
- folder_name_hierarchies: Joi.array().items(Joi.string().allow("")),
1044
- attachment_regex: Joi.string().allow(""),
1045
- body_content_regex: Joi.string().allow(""),
1046
- password_protected: Joi.boolean(),
1047
- zip_format: Joi.string().allow(""),
1048
- attachment_mandate: Joi.boolean(),
1049
- filter_files_after_extraction: Joi.boolean(),
1050
- archive_config: InventoryPlatformModel.ArchiveConfig(),
1051
- read_all_unread_mails: Joi.boolean(),
1052
- content_type: Joi.string().allow(""),
1053
- downloadable_link: Joi.boolean(),
1054
- properties: Joi.object().pattern(/\S/, Joi.string().allow("")),
1055
- });
1056
- }
1057
-
1058
- /** @returns {FTPConfig} */
1059
- static FTPConfig() {
1060
- return Joi.object({
1061
- host: Joi.string().allow(""),
1062
- port: Joi.number(),
1063
- username: Joi.string().allow(""),
1064
- password: Joi.string().allow(""),
1065
- unzip: Joi.boolean(),
1066
- retries: Joi.number(),
1067
- interval: Joi.number(),
1068
- local_dir: Joi.string().allow(""),
1069
- remote_dir: Joi.string().allow(""),
1070
- zip_file_regex: Joi.string().allow(""),
1071
- archive_config: InventoryPlatformModel.ArchiveConfig(),
1072
- file_regex: Joi.string().allow(""),
1073
- zip_format: Joi.string().allow(""),
1074
- read_all_files: Joi.boolean(),
1075
- });
1076
- }
1077
-
1078
- /** @returns {FileConfig} */
1079
- static FileConfig() {
1080
- return Joi.object({
1081
- delimiter: Joi.string().allow(""),
1082
- charset: Joi.string().allow(""),
1083
- properties: Joi.object().pattern(/\S/, Joi.any()),
1084
- file_has_header: Joi.boolean(),
1085
- header_index: Joi.number(),
1086
- header_array: Joi.array().items(Joi.string().allow("")),
1087
- data_start_index: Joi.number(),
1088
- prop_bean_configs: Joi.array().items(
1089
- InventoryPlatformModel.PropBeanConfig()
1090
- ),
1091
- junk_data_threshold_count: Joi.number(),
1092
- file_type: Joi.string().allow(""),
1093
- line_validity_check: Joi.boolean(),
1094
- sheet_names: Joi.array().items(Joi.string().allow("")),
1095
- read_all_sheets: Joi.boolean(),
1096
- quote_char: Joi.string().allow(""),
1097
- escape_char: Joi.string().allow(""),
1098
- default_headers: InventoryPlatformModel.DefaultHeadersDTO(),
1099
- });
1100
- }
1101
-
1102
- /** @returns {GoogleSpreadSheetConfig} */
1103
- static GoogleSpreadSheetConfig() {
1104
- return Joi.object({
1105
- range: Joi.string().allow(""),
1106
- sheet_id: Joi.string().allow(""),
1107
- client_secret_location: Joi.string().allow(""),
1108
- cred_storage_directory: Joi.string().allow(""),
1109
- local_dir: Joi.string().allow(""),
1110
- archive_config: InventoryPlatformModel.ArchiveConfig(),
1111
- });
1112
- }
1113
-
1114
- /** @returns {HttpConfig} */
1115
- static HttpConfig() {
1116
- return Joi.object({
1117
- hosturl: Joi.string().allow(""),
1118
- username: Joi.string().allow(""),
1119
- password: Joi.string().allow(""),
1120
- request_params: Joi.object().pattern(/\S/, Joi.string().allow("")),
1121
- http_method: Joi.string().allow(""),
1122
- request_payload: Joi.string().allow(""),
1123
- local_path: Joi.string().allow(""),
1124
- archive_config: InventoryPlatformModel.ArchiveConfig(),
1125
- });
1126
- }
1127
-
1128
- /** @returns {JobConfig} */
1129
- static JobConfig() {
1130
- return Joi.object({
1131
- _id: Joi.number(),
1132
- job_code: Joi.string().allow(""),
1133
- task_type: Joi.string().allow(""),
1134
- sync_delay: Joi.number(),
1135
- cron_expression: Joi.string().allow(""),
1136
- store_filter: InventoryPlatformModel.StoreFilter(),
1137
- process_config: InventoryPlatformModel.ProcessConfig(),
1138
- store_config: Joi.array().items(InventoryPlatformModel.StoreConfig()),
1139
- properties: Joi.object().pattern(/\S/, Joi.string().allow("")),
1140
- immediate_first_run: Joi.boolean(),
1141
- disable: Joi.boolean(),
1142
- dependent_job_codes: Joi.array().items(Joi.string().allow("")),
1143
- company_config: Joi.array().items(InventoryPlatformModel.CompanyConfig()),
1144
- company_ids: Joi.array().items(Joi.number()),
1145
- tax_identifiers: Joi.array().items(Joi.string().allow("")),
1146
- priority: Joi.string().allow(""),
1147
- period_threshold: Joi.number(),
1148
- period_threshold_type: Joi.string().allow(""),
1149
- db_connection_profile: InventoryPlatformModel.DBConnectionProfile(),
1150
- params: Joi.object().pattern(/\S/, Joi.any()),
1151
- open_tags: Joi.object().pattern(/\S/, Joi.any()),
1152
- delete_quantity_threshold: Joi.number(),
1153
- catalog_master_config: InventoryPlatformModel.CatalogMasterConfig(),
1154
- aggregator_types: Joi.array().items(Joi.string().allow("")),
1155
- integration_type: Joi.string().allow(""),
1156
- min_price: Joi.number(),
1157
- audit: InventoryPlatformModel.Audit(),
1158
- version: Joi.number(),
1159
- alias: Joi.string().allow(""),
1160
- });
1161
- }
1162
-
1163
- /** @returns {JobConfigRawDTO} */
1164
- static JobConfigRawDTO() {
1165
- return Joi.object({
1166
- company_name: Joi.string().allow("").required(),
1167
- integration: Joi.string().allow("").required(),
1168
- company_id: Joi.number().required(),
1169
- data: InventoryPlatformModel.JobConfig(),
1170
- });
1171
- }
1172
-
1173
- /** @returns {JsonDocConfig} */
1174
- static JsonDocConfig() {
1175
- return Joi.object({
1176
- prop_bean_configs: Joi.array().items(
1177
- InventoryPlatformModel.PropBeanConfig()
1178
- ),
1179
- });
1180
- }
1181
-
1182
- /** @returns {LocalFileConfig} */
1183
- static LocalFileConfig() {
1184
- return Joi.object({
1185
- retries: Joi.number(),
1186
- interval: Joi.number(),
1187
- local_dir: Joi.string().allow(""),
1188
- working_dir: Joi.string().allow(""),
1189
- unzip: Joi.boolean(),
1190
- zip_file_regex: Joi.string().allow(""),
1191
- file_regex: Joi.string().allow(""),
1192
- zip_format: Joi.string().allow(""),
1193
- archive_config: InventoryPlatformModel.ArchiveConfig(),
1194
- read_all_files: Joi.boolean(),
1195
- });
1196
- }
1197
-
1198
- /** @returns {MongoDocConfig} */
1199
- static MongoDocConfig() {
1200
- return Joi.object({
1201
- collection_name: Joi.string().allow(""),
1202
- find_query: Joi.object().pattern(/\S/, Joi.any()),
1203
- projection_query: Joi.object().pattern(/\S/, Joi.any()),
1204
- prop_bean_configs: Joi.array().items(
1205
- InventoryPlatformModel.PropBeanConfig()
1206
- ),
1207
- aggregate_pipeline: Joi.array().items(
1208
- Joi.object().pattern(/\S/, Joi.any())
1209
- ),
1210
- skip_save: Joi.boolean(),
1211
- });
1212
- }
1213
-
1214
- /** @returns {OAuthConfig} */
1215
- static OAuthConfig() {
1216
- return Joi.object({
1217
- limit: Joi.number(),
1218
- pages: Joi.number(),
1219
- interval: Joi.number(),
1220
- consumer_key: Joi.string().allow(""),
1221
- consumer_secret: Joi.string().allow(""),
1222
- token: Joi.string().allow(""),
1223
- token_secret: Joi.string().allow(""),
1224
- rest_url: Joi.string().allow(""),
1225
- rest_base_url: Joi.string().allow(""),
1226
- function_name: Joi.string().allow(""),
1227
- });
1228
- }
1229
-
1230
- /** @returns {ProcessConfig} */
1231
- static ProcessConfig() {
1232
- return Joi.object({
1233
- db_config: InventoryPlatformModel.DBConfig(),
1234
- db_param_config: InventoryPlatformModel.DBParamConfig(),
1235
- sftp_config: InventoryPlatformModel.SFTPConfig(),
1236
- aws_s3_config: InventoryPlatformModel.AWSS3config(),
1237
- mongo_doc_config: InventoryPlatformModel.MongoDocConfig(),
1238
- ftp_config: InventoryPlatformModel.FTPConfig(),
1239
- email_config: InventoryPlatformModel.EmailConfig(),
1240
- file_config: InventoryPlatformModel.FileConfig(),
1241
- json_doc_config: InventoryPlatformModel.JsonDocConfig(),
1242
- doc_mapping_config: InventoryPlatformModel.DocMappingConfig(),
1243
- task_step_config: InventoryPlatformModel.TaskStepConfig(),
1244
- http_config: InventoryPlatformModel.HttpConfig(),
1245
- local_file_config: InventoryPlatformModel.LocalFileConfig(),
1246
- oauth_config: InventoryPlatformModel.OAuthConfig(),
1247
- google_spreadsheet_config: InventoryPlatformModel.GoogleSpreadSheetConfig(),
1248
- });
1249
- }
1250
-
1251
- /** @returns {PropBeanConfig} */
1252
- static PropBeanConfig() {
1253
- return Joi.object({
1254
- required: Joi.boolean(),
1255
- optional: Joi.boolean(),
1256
- send: InventoryPlatformModel.Send(),
1257
- validations: Joi.array().items(Joi.object().pattern(/\S/, Joi.any())),
1258
- values: Joi.array().items(Joi.string().allow("")),
1259
- include: Joi.boolean(),
1260
- source_field: Joi.string().allow(""),
1261
- source_fields: Joi.array().items(Joi.string().allow("")),
1262
- destination_field: Joi.string().allow(""),
1263
- data_type: Joi.string().allow(""),
1264
- default_value: Joi.any(),
1265
- const_value: Joi.any(),
1266
- concat_str: Joi.string().allow(""),
1267
- function_name: Joi.string().allow(""),
1268
- transformer_name: Joi.string().allow(""),
1269
- all_param_function_name: Joi.string().allow(""),
1270
- sub_separator: Joi.string().allow(""),
1271
- index_field: Joi.string().allow(""),
1272
- ignore_if_not_exists: Joi.boolean(),
1273
- identifier_type: Joi.string().allow(""),
1274
- projection_query: Joi.object().pattern(/\S/, Joi.any()),
1275
- enrich_from_master: Joi.boolean(),
1276
- });
1277
- }
1278
-
1279
- /** @returns {PropBeanDTO} */
1280
- static PropBeanDTO() {
1281
- return Joi.object({
1282
- required: Joi.boolean(),
1283
- optional: Joi.boolean(),
1284
- include: Joi.boolean(),
1285
- source_field: Joi.string().allow(""),
1286
- source_fields: Joi.array().items(Joi.string().allow("")),
1287
- destination_field: Joi.string().allow(""),
1288
- data_type: Joi.string().allow(""),
1289
- default_value: Joi.any(),
1290
- const_value: Joi.any(),
1291
- concat_str: Joi.string().allow(""),
1292
- function_name: Joi.string().allow(""),
1293
- transformer_name: Joi.string().allow(""),
1294
- all_param_function_name: Joi.string().allow(""),
1295
- sub_separator: Joi.string().allow(""),
1296
- index_field: Joi.string().allow(""),
1297
- ignore_if_not_exists: Joi.boolean(),
1298
- identifier_type: Joi.string().allow(""),
1299
- projection_query: Joi.object().pattern(/\S/, Joi.any()),
1300
- enrich_from_master: Joi.boolean(),
1301
- });
1302
- }
1303
-
1304
- /** @returns {ResponseEnvelopeListJobConfigRawDTO} */
1305
- static ResponseEnvelopeListJobConfigRawDTO() {
1306
- return Joi.object({
1307
- timestamp: Joi.string().allow(""),
1308
- status: Joi.number(),
1309
- error: Joi.string().allow(""),
1310
- exception: Joi.string().allow(""),
1311
- message: Joi.string().allow(""),
1312
- total_time_taken_in_millis: Joi.number(),
1313
- http_status: Joi.string().allow(""),
1314
- items: Joi.array().items(InventoryPlatformModel.JobConfigRawDTO()),
1315
- payload: Joi.array().items(InventoryPlatformModel.JobConfigRawDTO()),
1316
- trace_id: Joi.string().allow(""),
1317
- page: InventoryPlatformModel.Page(),
1318
- });
1319
- }
1320
-
1321
- /** @returns {SFTPConfig} */
1322
- static SFTPConfig() {
1323
- return Joi.object({
1324
- host: Joi.string().allow(""),
1325
- port: Joi.number(),
1326
- username: Joi.string().allow(""),
1327
- password: Joi.string().allow(""),
1328
- unzip: Joi.boolean(),
1329
- retries: Joi.number(),
1330
- interval: Joi.number(),
1331
- private_key_path: Joi.string().allow(""),
1332
- strict_host_key_checking: Joi.boolean(),
1333
- local_dir: Joi.string().allow(""),
1334
- remote_dir: Joi.string().allow(""),
1335
- password_protected: Joi.boolean(),
1336
- zip_file_regex: Joi.string().allow(""),
1337
- file_regex: Joi.string().allow(""),
1338
- zip_format: Joi.string().allow(""),
1339
- archive_config: InventoryPlatformModel.ArchiveConfig(),
1340
- read_all_files: Joi.boolean(),
1341
- });
1342
- }
1343
-
1344
- /** @returns {Send} */
1345
- static Send() {
1346
- return Joi.object({
1347
- raw: Joi.boolean(),
1348
- processed: Joi.boolean(),
1349
- });
1350
- }
1351
-
1352
- /** @returns {StoreConfig} */
1353
- static StoreConfig() {
1354
- return Joi.object({
1355
- job_code: Joi.string().allow(""),
1356
- storeid: Joi.string().allow(""),
1357
- store_alias: Joi.string().allow(""),
1358
- store_file_regex: Joi.string().allow(""),
1359
- store_file_name: Joi.string().allow(""),
1360
- process_config: InventoryPlatformModel.ProcessConfig(),
1361
- properties: Joi.object().pattern(/\S/, Joi.string().allow("")),
1362
- });
1363
- }
1364
-
1365
- /** @returns {StoreFilter} */
1366
- static StoreFilter() {
1367
- return Joi.object({
1368
- include_tags: Joi.array().items(Joi.string().allow("")),
1369
- exclude_tags: Joi.array().items(Joi.string().allow("")),
1370
- query: Joi.object().pattern(/\S/, Joi.any()),
1371
- });
1372
- }
1373
-
1374
- /** @returns {TaskConfig} */
1375
- static TaskConfig() {
1376
- return Joi.object({
1377
- name: Joi.string().allow(""),
1378
- task_config_id: Joi.number(),
1379
- task_params: Joi.array().items(InventoryPlatformModel.TaskParam()),
1380
- });
1381
- }
1382
-
1383
- /** @returns {TaskParam} */
1384
- static TaskParam() {
1385
- return Joi.object({
1386
- name: Joi.string().allow(""),
1387
- value: Joi.any(),
1388
- });
1389
- }
1390
-
1391
- /** @returns {TaskStepConfig} */
1392
- static TaskStepConfig() {
1393
- return Joi.object({
1394
- task_configs: Joi.array().items(InventoryPlatformModel.TaskConfig()),
1395
- task_config_ids: Joi.array().items(Joi.number()),
1396
- task_config_group_ids: Joi.array().items(Joi.number()),
1397
- });
1398
- }
1399
-
1400
- /** @returns {JobStepsDTO} */
1401
- static JobStepsDTO() {
1402
- return Joi.object({
1403
- step_name: Joi.string().allow(""),
1404
- type: Joi.string().allow(""),
1405
- step_execution_time: Joi.number(),
1406
- start_count: Joi.number(),
1407
- end_count: Joi.number(),
1408
- deleted_count: Joi.number(),
1409
- processed_start_time: Joi.string().allow(""),
1410
- processed_at: Joi.string().allow(""),
1411
- });
1412
- }
1413
-
1414
- /** @returns {ResponseEnvelopeListJobStepsDTO} */
1415
- static ResponseEnvelopeListJobStepsDTO() {
1416
- return Joi.object({
1417
- timestamp: Joi.string().allow(""),
1418
- status: Joi.number(),
1419
- error: Joi.string().allow(""),
1420
- exception: Joi.string().allow(""),
1421
- message: Joi.string().allow(""),
1422
- total_time_taken_in_millis: Joi.number(),
1423
- http_status: Joi.string().allow(""),
1424
- items: Joi.array().items(InventoryPlatformModel.JobStepsDTO()),
1425
- payload: Joi.array().items(InventoryPlatformModel.JobStepsDTO()),
1426
- trace_id: Joi.string().allow(""),
1427
- page: InventoryPlatformModel.Page(),
1428
- });
1429
- }
1430
-
1431
- /** @returns {ResponseEnvelopeListJobConfigDTO} */
1432
- static ResponseEnvelopeListJobConfigDTO() {
1433
- return Joi.object({
1434
- timestamp: Joi.string().allow(""),
1435
- status: Joi.number(),
1436
- error: Joi.string().allow(""),
1437
- exception: Joi.string().allow(""),
1438
- message: Joi.string().allow(""),
1439
- total_time_taken_in_millis: Joi.number(),
1440
- http_status: Joi.string().allow(""),
1441
- items: Joi.array().items(InventoryPlatformModel.JobConfigDTO()),
1442
- payload: Joi.array().items(InventoryPlatformModel.JobConfigDTO()),
1443
- trace_id: Joi.string().allow(""),
1444
- page: InventoryPlatformModel.Page(),
1445
- });
1446
- }
1447
-
1448
- /** @returns {ResponseEnvelopeJobConfigDTO} */
1449
- static ResponseEnvelopeJobConfigDTO() {
1450
- return Joi.object({
1451
- timestamp: Joi.string().allow(""),
1452
- status: Joi.number(),
1453
- error: Joi.string().allow(""),
1454
- exception: Joi.string().allow(""),
1455
- message: Joi.string().allow(""),
1456
- total_time_taken_in_millis: Joi.number(),
1457
- http_status: Joi.string().allow(""),
1458
- items: InventoryPlatformModel.JobConfigDTO(),
1459
- payload: InventoryPlatformModel.JobConfigDTO(),
1460
- trace_id: Joi.string().allow(""),
1461
- page: InventoryPlatformModel.Page(),
1462
- });
1463
- }
1464
-
1465
- /** @returns {JobHistoryDto} */
1466
- static JobHistoryDto() {
1467
- return Joi.object({
1468
- total_added_count: Joi.number(),
1469
- total_updated_count: Joi.number(),
1470
- total_suppressed_count: Joi.number(),
1471
- total_initial_count: Joi.number(),
1472
- job_id: Joi.number(),
1473
- status: Joi.string().allow(""),
1474
- job_code: Joi.string().allow(""),
1475
- processed_on: Joi.string().allow(""),
1476
- filename: Joi.array().items(Joi.string().allow("")),
1477
- error_type: Joi.string().allow(""),
1478
- message: Joi.string().allow(""),
1479
- });
1480
- }
1481
-
1482
- /** @returns {JobMetricsDto} */
1483
- static JobMetricsDto() {
1484
- return Joi.object({
1485
- job_code: Joi.string().allow(""),
1486
- is_run_more_than_usual: Joi.string().allow(""),
1487
- job_history: Joi.array().items(InventoryPlatformModel.JobHistoryDto()),
1488
- total_success_count: Joi.number(),
1489
- total_failure_count: Joi.number(),
1490
- total_warning_count: Joi.number(),
1491
- total_suppressed_count: Joi.number(),
1492
- total_job_runs: Joi.number(),
1493
- });
1494
- }
1495
-
1496
- /** @returns {ResponseEnvelopeJobMetricsDto} */
1497
- static ResponseEnvelopeJobMetricsDto() {
1498
- return Joi.object({
1499
- timestamp: Joi.string().allow(""),
1500
- status: Joi.number(),
1501
- error: Joi.string().allow(""),
1502
- exception: Joi.string().allow(""),
1503
- message: Joi.string().allow(""),
1504
- total_time_taken_in_millis: Joi.number(),
1505
- http_status: Joi.string().allow(""),
1506
- items: InventoryPlatformModel.JobMetricsDto(),
1507
- payload: InventoryPlatformModel.JobMetricsDto(),
1508
- trace_id: Joi.string().allow(""),
1509
- page: InventoryPlatformModel.Page(),
1510
- });
1511
- }
1512
-
1513
- /** @returns {JobConfigListDTO} */
1514
- static JobConfigListDTO() {
1515
- return Joi.object({
1516
- code: Joi.string().allow(""),
1517
- alias: Joi.string().allow(""),
1518
- modified_by: Joi.string().allow(""),
1519
- created_by: Joi.string().allow(""),
1520
- modified_on: Joi.string().allow(""),
1521
- created_on: Joi.string().allow(""),
1522
- active: Joi.boolean(),
1523
- type: Joi.string().allow(""),
1524
- });
1525
- }
1526
-
1527
- /** @returns {ResponseEnvelopeListJobConfigListDTO} */
1528
- static ResponseEnvelopeListJobConfigListDTO() {
1529
- return Joi.object({
1530
- timestamp: Joi.string().allow(""),
1531
- status: Joi.number(),
1532
- error: Joi.string().allow(""),
1533
- exception: Joi.string().allow(""),
1534
- message: Joi.string().allow(""),
1535
- total_time_taken_in_millis: Joi.number(),
1536
- http_status: Joi.string().allow(""),
1537
- items: Joi.array().items(InventoryPlatformModel.JobConfigListDTO()),
1538
- payload: Joi.array().items(InventoryPlatformModel.JobConfigListDTO()),
1539
- trace_id: Joi.string().allow(""),
1540
- page: InventoryPlatformModel.Page(),
1541
- });
1542
- }
1543
- }
1544
- module.exports = InventoryPlatformModel;