tango-api-schema 2.1.9 → 2.1.11

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 (45) hide show
  1. package/index.js +89 -89
  2. package/package.json +27 -27
  3. package/schema/applicationDefault.model.js +24 -24
  4. package/schema/assignAudit.model.js +55 -55
  5. package/schema/auditLogs.model.js +72 -72
  6. package/schema/auditStoreData.model.js +55 -55
  7. package/schema/authentication.model.js +27 -27
  8. package/schema/basePricing.model.js +29 -29
  9. package/schema/billing.model.js +99 -99
  10. package/schema/binaryAudit.model.js +84 -84
  11. package/schema/camera.model.js +146 -146
  12. package/schema/client.model.js +514 -514
  13. package/schema/clientRequest.model.js +40 -40
  14. package/schema/countryCodes.model.js +28 -28
  15. package/schema/dailyPricing.model.js +88 -88
  16. package/schema/dataMismatchDraft.model.js +22 -22
  17. package/schema/edgeAppVersion.model.js +33 -33
  18. package/schema/edgeappAuth.model.js +32 -32
  19. package/schema/externalParameter.model.js +202 -202
  20. package/schema/fitting.model.js +52 -52
  21. package/schema/group.model.js +36 -36
  22. package/schema/infraReason.model.js +44 -44
  23. package/schema/internalAuth.model.js +36 -36
  24. package/schema/invoice.model.js +106 -106
  25. package/schema/ipLogs.model.js +39 -39
  26. package/schema/lead.model.js +78 -78
  27. package/schema/lowcountReason.model.js +44 -44
  28. package/schema/matLog.model.js +26 -26
  29. package/schema/otp.model.js +27 -27
  30. package/schema/paymentAccount.model.js +60 -60
  31. package/schema/quality.model.js +57 -57
  32. package/schema/report.model.js +30 -30
  33. package/schema/standaredRole.model.js +56 -56
  34. package/schema/store.model.js +321 -321
  35. package/schema/storeAudit.model.js +61 -61
  36. package/schema/storeEmpDetection.model.js +61 -61
  37. package/schema/tagging.model.js +44 -44
  38. package/schema/tangoTicket.model.js +210 -210
  39. package/schema/transaction.model.js +54 -54
  40. package/schema/traxAuditData.model.js +60 -60
  41. package/schema/user.model.js +95 -95
  42. package/schema/userAssignedStore.model.js +41 -41
  43. package/schema/userAudit.model.js +76 -76
  44. package/schema/userEmpDetection.model.js +74 -74
  45. package/schema/workstation.model.js +77 -77
@@ -1,514 +1,514 @@
1
- import mongoose from 'mongoose';
2
- import mongooseUniqueValidator from 'mongoose-unique-validator';
3
-
4
- const client = new mongoose.Schema(
5
- {
6
- clientName: {
7
- type: String,
8
- trim: true,
9
- required: true,
10
- unique: true,
11
- },
12
- clientId: {
13
- type: String,
14
- trim: true,
15
- required: true,
16
- unique: true,
17
- },
18
- tangoId: {
19
- type: Number,
20
- require: true,
21
- },
22
- userId: {
23
- type: mongoose.Types.ObjectId,
24
- required: true,
25
- },
26
- planDetails: {
27
- totalStores: {
28
- type: String,
29
- require: true,
30
- },
31
- storeSize: {
32
- type: String,
33
- require: true,
34
- },
35
- totalCamera: {
36
- type: Number,
37
- require: true,
38
- },
39
- subscriptionPeriod: {
40
- type: String,
41
- enum: ['monthly','quarterly','annual'],
42
- },
43
- subscriptionType: {
44
- type: String,
45
- enum: ['free','premium','enterprise'],
46
- },
47
- paymentStatus: {
48
- type: String,
49
- enum: ['free','trial','paid','unbilled','due'],
50
- },
51
- product: [
52
- {
53
- productName: {
54
- type: String,
55
- },
56
- trialStartDate: {
57
- type: Date,
58
- },
59
- trialEndDate: {
60
- type: Date,
61
- },
62
- subscribedDate: {
63
- type: Date
64
- },
65
- status: {
66
- type: String,
67
- enum: ['trial','live'],
68
- default: 'trial'
69
- }
70
- }
71
- ],
72
- },
73
- status: {
74
- type: String,
75
- enum: ['active','deactive','hold','suspended'],
76
- default: 'active'
77
- },
78
- profileDetails: {
79
- logo: {
80
- type: String
81
- },
82
- registeredCompanyName: {
83
- type: String,
84
- },
85
- industry: {
86
- type: String,
87
- enum: ['apparel','footwear','skincare','foodandbeverage','techstartup','grooming','leather','furniture','mattress','customerelectronics','jewellery','interiordesign','ev','fintech','perfume','fashionaccessories','innerwear','nutrition','fashionandlifestyle','eyewear']
88
- },
89
- clientType: {
90
- type: String,
91
- enum: ['partnership','proprietorship','pvtltd','person']
92
- },
93
- registeredAddress: {
94
- type: String,
95
- },
96
- headQuarters: {
97
- type: String,
98
- },
99
- website: {
100
- type: String,
101
- },
102
- },
103
- billingDetails: {
104
- tradeName: {
105
- type: String,
106
- },
107
- gstNumber: {
108
- type: String,
109
- },
110
- authorityName: {
111
- type: String,
112
- },
113
- authorityEmail: {
114
- type: String,
115
- },
116
- billingAddress: {
117
- type: String,
118
- },
119
- companyName: {
120
- type: String,
121
- },
122
- PlaceOfSupply: {
123
- type: String,
124
- },
125
- },
126
- signatoryDetail: {
127
- name: {
128
- type: String,
129
- },
130
- email: {
131
- type: String,
132
- },
133
- number: {
134
- type: String,
135
- },
136
- designation: {
137
- type: String,
138
- },
139
- },
140
- ticketConfigs: {
141
- installationReAssign: {
142
- type: Number,
143
- default:0
144
- },
145
- downTimeType: {
146
- type: Number, // 0 for one camera and 1 for multi cameras
147
- enum:[0,1],
148
- default:0
149
- },
150
- infraReport:{
151
- start:{
152
- type:String,
153
- default:"09:00"
154
- },
155
- end:{
156
- type:String,
157
- default:"19:00"
158
-
159
- }
160
- },
161
- infraReport:{
162
- start:{
163
- type:String,
164
- default:"9:00"
165
- },
166
- end:{
167
- type:String,
168
- default:"19:00"
169
-
170
- }
171
- },
172
- infraDownTime: {
173
- type: Number,
174
- default:1,
175
- enum:[1,2,3,4,5,6,8,9,10,11,12]
176
- },
177
- MinFilesCount:{
178
- type: Number,
179
- default:0
180
- },
181
- rcaTicketAssign:{// root cause anlysis
182
- type: Number,
183
- enum:[1,2,3,4,5,6,8,9,10,11,12],
184
- default:1
185
- },
186
- refreshAlert:{
187
- type: Number,
188
- default:1,
189
- enum:[0,1,2,3,4,5,6,8,9,10]
190
- },
191
- statusCheckAlert:{
192
- type: Number,
193
- default:1,
194
- enum:[1,2,3,4,5,6,8,9,10,11,12]
195
- },
196
- accuracyPercentage: {
197
- type: Number, // in less than
198
- default:10
199
- },
200
- reTrain: {
201
- type: Number, // calculate no of past days
202
- enum:[1,2,3,4,5,6,8,9,10,11,12],
203
- default:1
204
- },
205
- emailAlert:{
206
- type: Boolean,
207
- default: false
208
- },
209
- matConfig:{
210
- enabled:{
211
- type: Boolean,
212
- default: false
213
- }
214
- }
215
- },
216
- reportConfigs: {
217
- report: {
218
- type: Boolean,
219
- },
220
- reportName: {
221
- type: String,
222
- },
223
- },
224
- auditConfigs: {
225
- audit: {
226
- type: Boolean,
227
- default: true
228
- },
229
- count:{
230
- type:Number,
231
- default:200
232
- },
233
- ratio:{
234
- type:Number,
235
- default:0.75,
236
- },
237
- queueName: {
238
- type: String,
239
- },
240
- zoneQueueName: {
241
- type: String,
242
- },
243
- trafficQueueName: {
244
- type: String,
245
- },
246
- traxQueueName: {
247
- unattendedCustomer :{
248
- type:String
249
- },
250
- leftInMiddle:{
251
- type:String
252
- },
253
- uniformDetection:{
254
- type:String
255
- },
256
- mobileDetection:{
257
- type:String
258
- },
259
- cameraAngleChange:{
260
- type:String
261
- }
262
- }
263
- },
264
- assignedUsers: {
265
- csm: {
266
- type: Object,
267
- },
268
- ops: {
269
- type: Array,
270
- },
271
- },
272
- ssoLogin: {
273
- isEnable: {
274
- type: Boolean,
275
- default: false,
276
- },
277
- domainName: {
278
- type: Array,
279
- },
280
- },
281
- featureConfigs: {
282
- open: {
283
- type: String,
284
- default: "10:00:00"
285
- },
286
- close: {
287
- type: String,
288
- default: "23:00:00"
289
- },
290
- infraAlert: {
291
- condition: {
292
- type: String,
293
- default:"<"
294
- },
295
- value: {
296
- type: Number,
297
- default:"1"
298
- },
299
- },
300
- bouncedLimit: {
301
- condition: {
302
- type: String,
303
- default:'<='
304
- },
305
- value: {
306
- type: Number,
307
- default: "1"
308
- },
309
- },
310
- missedOpportunityFrom: {
311
- condition: {
312
- type: String,
313
- default: '>'
314
- },
315
- value: {
316
- type: Number,
317
- default:'1'
318
- },
319
- },
320
- missedOpportunityTo: {
321
- condition: {
322
- type: String,
323
- default:"<="
324
- },
325
- value: {
326
- type: Number,
327
- default:"5"
328
- },
329
- },
330
- conversion: {
331
- condition: {
332
- type: String,
333
- default:">"
334
- },
335
- value: {
336
- type: Number,
337
- default:'5'
338
- },
339
- },
340
- billableCalculation: {
341
- type: String,
342
- default:"engagers-count"
343
- },
344
- missedOpportunityCalculation: {
345
- type: String,
346
- default:"engagers-conversion"
347
- },
348
- conversionCalculation: {
349
- type: String,
350
- default:"engagers-count"
351
- },
352
- isNormalized: {
353
- type: Boolean,
354
- default: false,
355
- },
356
- isPasserByData: {
357
- type: Boolean,
358
- default: false,
359
- },
360
- isFootfallDirectory: {
361
- type: Boolean,
362
- default: false,
363
- },
364
- isExcludedArea:{
365
- type:Boolean,
366
- default:true
367
- },
368
- updateFeatureConfig:{
369
- type:Boolean,
370
- default:true
371
- },
372
- isCameraDisabled:{
373
- type:Boolean,
374
- default:false
375
- },
376
- isbillingDisabled:{
377
- type:Boolean,
378
- default:false
379
- },
380
- },
381
- document: {
382
- addressProof: {
383
- path: {
384
- type: String,
385
-
386
- },
387
- },
388
- gst: {
389
- number: {
390
- type: String,
391
- },
392
- path: {
393
- type: String,
394
-
395
- },
396
- },
397
- pan: {
398
- number: {
399
- type: String,
400
- },
401
- path: {
402
- type: String,
403
-
404
- },
405
- },
406
- cin: {
407
- number: {
408
- type: String,
409
- },
410
- path: {
411
- type: String,
412
-
413
- },
414
- },
415
-
416
- },
417
- price:{
418
- type:Number
419
- },
420
- paymentInvoice: {
421
- proRate: {
422
- type: String,
423
- enum: ['before15','after15'],
424
- default: 'before15',
425
- },
426
- paymentType: {
427
- type:String,
428
- enum: ['online','banktransfer'],
429
- default: 'online',
430
- },
431
- paymentCycle: {
432
- type:String,
433
- },
434
- currencyType: {
435
- type:String
436
- },
437
- invoiceTo:{
438
- type:Array
439
- },
440
- paymentAgreementTo:{
441
- type:Array
442
- },
443
- invoiceOn: {
444
- type:String,
445
- enum: ['lastday','25th'],
446
- default: '25th',
447
- },
448
- extendPaymentPeriodDays: {
449
- type:Number,
450
- default: 5,
451
- },
452
- invoiceCC:{
453
- type:Array
454
- },
455
- PomNumber:{
456
- type:String
457
- }
458
- },
459
- priceType:{
460
- type:String,
461
- enum: ['standard','step'],
462
- default: 'standard',
463
- },
464
- virtualAccount:{
465
- accountNo:{
466
- type:String
467
- },
468
- ifscCode:{
469
- type:String
470
- },
471
- swiftCode:{
472
- type:String
473
- },
474
- branch:{
475
- type:String
476
- }
477
- },
478
- clientApi: {
479
- apiKey: {
480
- type: String,
481
- default: null,
482
- },
483
- status: {
484
- type: Boolean,
485
- default: false,
486
- },
487
- allowedIps: {
488
- type: Array,
489
- default: [ '*' ],
490
- },
491
- },
492
- notifyCsmAssign: {
493
- type: Boolean,
494
- default:false
495
- },
496
- edgeApp:{
497
- password:{
498
- type:String,
499
- },
500
- },
501
- averageTransactionValue: {
502
- type: String,
503
- default: ''
504
- },
505
- },
506
- {
507
- strict: true,
508
- versionKey: false,
509
- timestamps: true,
510
- },
511
- );
512
-
513
- client.plugin( mongooseUniqueValidator );
514
- export default mongoose.model( 'client', client );
1
+ import mongoose from 'mongoose';
2
+ import mongooseUniqueValidator from 'mongoose-unique-validator';
3
+
4
+ const client = new mongoose.Schema(
5
+ {
6
+ clientName: {
7
+ type: String,
8
+ trim: true,
9
+ required: true,
10
+ unique: true,
11
+ },
12
+ clientId: {
13
+ type: String,
14
+ trim: true,
15
+ required: true,
16
+ unique: true,
17
+ },
18
+ tangoId: {
19
+ type: Number,
20
+ require: true,
21
+ },
22
+ userId: {
23
+ type: mongoose.Types.ObjectId,
24
+ required: true,
25
+ },
26
+ planDetails: {
27
+ totalStores: {
28
+ type: String,
29
+ require: true,
30
+ },
31
+ storeSize: {
32
+ type: String,
33
+ require: true,
34
+ },
35
+ totalCamera: {
36
+ type: Number,
37
+ require: true,
38
+ },
39
+ subscriptionPeriod: {
40
+ type: String,
41
+ enum: ['monthly','quarterly','annual'],
42
+ },
43
+ subscriptionType: {
44
+ type: String,
45
+ enum: ['free','premium','enterprise'],
46
+ },
47
+ paymentStatus: {
48
+ type: String,
49
+ enum: ['free','trial','paid','unbilled','due'],
50
+ },
51
+ product: [
52
+ {
53
+ productName: {
54
+ type: String,
55
+ },
56
+ trialStartDate: {
57
+ type: Date,
58
+ },
59
+ trialEndDate: {
60
+ type: Date,
61
+ },
62
+ subscribedDate: {
63
+ type: Date
64
+ },
65
+ status: {
66
+ type: String,
67
+ enum: ['trial','live'],
68
+ default: 'trial'
69
+ }
70
+ }
71
+ ],
72
+ },
73
+ status: {
74
+ type: String,
75
+ enum: ['active','deactive','hold','suspended'],
76
+ default: 'active'
77
+ },
78
+ profileDetails: {
79
+ logo: {
80
+ type: String
81
+ },
82
+ registeredCompanyName: {
83
+ type: String,
84
+ },
85
+ industry: {
86
+ type: String,
87
+ enum: ['apparel','footwear','skincare','foodandbeverage','techstartup','grooming','leather','furniture','mattress','customerelectronics','jewellery','interiordesign','ev','fintech','perfume','fashionaccessories','innerwear','nutrition','fashionandlifestyle','eyewear']
88
+ },
89
+ clientType: {
90
+ type: String,
91
+ enum: ['partnership','proprietorship','pvtltd','person']
92
+ },
93
+ registeredAddress: {
94
+ type: String,
95
+ },
96
+ headQuarters: {
97
+ type: String,
98
+ },
99
+ website: {
100
+ type: String,
101
+ },
102
+ },
103
+ billingDetails: {
104
+ tradeName: {
105
+ type: String,
106
+ },
107
+ gstNumber: {
108
+ type: String,
109
+ },
110
+ authorityName: {
111
+ type: String,
112
+ },
113
+ authorityEmail: {
114
+ type: String,
115
+ },
116
+ billingAddress: {
117
+ type: String,
118
+ },
119
+ companyName: {
120
+ type: String,
121
+ },
122
+ PlaceOfSupply: {
123
+ type: String,
124
+ },
125
+ },
126
+ signatoryDetail: {
127
+ name: {
128
+ type: String,
129
+ },
130
+ email: {
131
+ type: String,
132
+ },
133
+ number: {
134
+ type: String,
135
+ },
136
+ designation: {
137
+ type: String,
138
+ },
139
+ },
140
+ ticketConfigs: {
141
+ installationReAssign: {
142
+ type: Number,
143
+ default:0
144
+ },
145
+ downTimeType: {
146
+ type: Number, // 0 for one camera and 1 for multi cameras
147
+ enum:[0,1],
148
+ default:0
149
+ },
150
+ infraReport:{
151
+ start:{
152
+ type:String,
153
+ default:"09:00"
154
+ },
155
+ end:{
156
+ type:String,
157
+ default:"19:00"
158
+
159
+ }
160
+ },
161
+ infraReport:{
162
+ start:{
163
+ type:String,
164
+ default:"9:00"
165
+ },
166
+ end:{
167
+ type:String,
168
+ default:"19:00"
169
+
170
+ }
171
+ },
172
+ infraDownTime: {
173
+ type: Number,
174
+ default:1,
175
+ enum:[1,2,3,4,5,6,8,9,10,11,12]
176
+ },
177
+ MinFilesCount:{
178
+ type: Number,
179
+ default:0
180
+ },
181
+ rcaTicketAssign:{// root cause anlysis
182
+ type: Number,
183
+ enum:[1,2,3,4,5,6,8,9,10,11,12],
184
+ default:1
185
+ },
186
+ refreshAlert:{
187
+ type: Number,
188
+ default:1,
189
+ enum:[0,1,2,3,4,5,6,8,9,10]
190
+ },
191
+ statusCheckAlert:{
192
+ type: Number,
193
+ default:1,
194
+ enum:[1,2,3,4,5,6,8,9,10,11,12]
195
+ },
196
+ accuracyPercentage: {
197
+ type: Number, // in less than
198
+ default:10
199
+ },
200
+ reTrain: {
201
+ type: Number, // calculate no of past days
202
+ enum:[1,2,3,4,5,6,8,9,10,11,12],
203
+ default:1
204
+ },
205
+ emailAlert:{
206
+ type: Boolean,
207
+ default: false
208
+ },
209
+ matConfig:{
210
+ enabled:{
211
+ type: Boolean,
212
+ default: false
213
+ }
214
+ }
215
+ },
216
+ reportConfigs: {
217
+ report: {
218
+ type: Boolean,
219
+ },
220
+ reportName: {
221
+ type: String,
222
+ },
223
+ },
224
+ auditConfigs: {
225
+ audit: {
226
+ type: Boolean,
227
+ default: true
228
+ },
229
+ count:{
230
+ type:Number,
231
+ default:200
232
+ },
233
+ ratio:{
234
+ type:Number,
235
+ default:0.75,
236
+ },
237
+ queueName: {
238
+ type: String,
239
+ },
240
+ zoneQueueName: {
241
+ type: String,
242
+ },
243
+ trafficQueueName: {
244
+ type: String,
245
+ },
246
+ traxQueueName: {
247
+ unattendedCustomer :{
248
+ type:String
249
+ },
250
+ leftInMiddle:{
251
+ type:String
252
+ },
253
+ uniformDetection:{
254
+ type:String
255
+ },
256
+ mobileDetection:{
257
+ type:String
258
+ },
259
+ cameraAngleChange:{
260
+ type:String
261
+ }
262
+ }
263
+ },
264
+ assignedUsers: {
265
+ csm: {
266
+ type: Object,
267
+ },
268
+ ops: {
269
+ type: Array,
270
+ },
271
+ },
272
+ ssoLogin: {
273
+ isEnable: {
274
+ type: Boolean,
275
+ default: false,
276
+ },
277
+ domainName: {
278
+ type: Array,
279
+ },
280
+ },
281
+ featureConfigs: {
282
+ open: {
283
+ type: String,
284
+ default: "10:00:00"
285
+ },
286
+ close: {
287
+ type: String,
288
+ default: "23:00:00"
289
+ },
290
+ infraAlert: {
291
+ condition: {
292
+ type: String,
293
+ default:"<"
294
+ },
295
+ value: {
296
+ type: Number,
297
+ default:"1"
298
+ },
299
+ },
300
+ bouncedLimit: {
301
+ condition: {
302
+ type: String,
303
+ default:'<='
304
+ },
305
+ value: {
306
+ type: Number,
307
+ default: "1"
308
+ },
309
+ },
310
+ missedOpportunityFrom: {
311
+ condition: {
312
+ type: String,
313
+ default: '>'
314
+ },
315
+ value: {
316
+ type: Number,
317
+ default:'1'
318
+ },
319
+ },
320
+ missedOpportunityTo: {
321
+ condition: {
322
+ type: String,
323
+ default:"<="
324
+ },
325
+ value: {
326
+ type: Number,
327
+ default:"5"
328
+ },
329
+ },
330
+ conversion: {
331
+ condition: {
332
+ type: String,
333
+ default:">"
334
+ },
335
+ value: {
336
+ type: Number,
337
+ default:'5'
338
+ },
339
+ },
340
+ billableCalculation: {
341
+ type: String,
342
+ default:"engagers-count"
343
+ },
344
+ missedOpportunityCalculation: {
345
+ type: String,
346
+ default:"engagers-conversion"
347
+ },
348
+ conversionCalculation: {
349
+ type: String,
350
+ default:"engagers-count"
351
+ },
352
+ isNormalized: {
353
+ type: Boolean,
354
+ default: false,
355
+ },
356
+ isPasserByData: {
357
+ type: Boolean,
358
+ default: false,
359
+ },
360
+ isFootfallDirectory: {
361
+ type: Boolean,
362
+ default: false,
363
+ },
364
+ isExcludedArea:{
365
+ type:Boolean,
366
+ default:true
367
+ },
368
+ updateFeatureConfig:{
369
+ type:Boolean,
370
+ default:true
371
+ },
372
+ isCameraDisabled:{
373
+ type:Boolean,
374
+ default:false
375
+ },
376
+ isbillingDisabled:{
377
+ type:Boolean,
378
+ default:false
379
+ },
380
+ },
381
+ document: {
382
+ addressProof: {
383
+ path: {
384
+ type: String,
385
+
386
+ },
387
+ },
388
+ gst: {
389
+ number: {
390
+ type: String,
391
+ },
392
+ path: {
393
+ type: String,
394
+
395
+ },
396
+ },
397
+ pan: {
398
+ number: {
399
+ type: String,
400
+ },
401
+ path: {
402
+ type: String,
403
+
404
+ },
405
+ },
406
+ cin: {
407
+ number: {
408
+ type: String,
409
+ },
410
+ path: {
411
+ type: String,
412
+
413
+ },
414
+ },
415
+
416
+ },
417
+ price:{
418
+ type:Number
419
+ },
420
+ paymentInvoice: {
421
+ proRate: {
422
+ type: String,
423
+ enum: ['before15','after15'],
424
+ default: 'before15',
425
+ },
426
+ paymentType: {
427
+ type:String,
428
+ enum: ['online','banktransfer'],
429
+ default: 'online',
430
+ },
431
+ paymentCycle: {
432
+ type:String,
433
+ },
434
+ currencyType: {
435
+ type:String
436
+ },
437
+ invoiceTo:{
438
+ type:Array
439
+ },
440
+ paymentAgreementTo:{
441
+ type:Array
442
+ },
443
+ invoiceOn: {
444
+ type:String,
445
+ enum: ['lastday','25th'],
446
+ default: '25th',
447
+ },
448
+ extendPaymentPeriodDays: {
449
+ type:Number,
450
+ default: 5,
451
+ },
452
+ invoiceCC:{
453
+ type:Array
454
+ },
455
+ PomNumber:{
456
+ type:String
457
+ }
458
+ },
459
+ priceType:{
460
+ type:String,
461
+ enum: ['standard','step'],
462
+ default: 'standard',
463
+ },
464
+ virtualAccount:{
465
+ accountNo:{
466
+ type:String
467
+ },
468
+ ifscCode:{
469
+ type:String
470
+ },
471
+ swiftCode:{
472
+ type:String
473
+ },
474
+ branch:{
475
+ type:String
476
+ }
477
+ },
478
+ clientApi: {
479
+ apiKey: {
480
+ type: String,
481
+ default: null,
482
+ },
483
+ status: {
484
+ type: Boolean,
485
+ default: false,
486
+ },
487
+ allowedIps: {
488
+ type: Array,
489
+ default: [ '*' ],
490
+ },
491
+ },
492
+ notifyCsmAssign: {
493
+ type: Boolean,
494
+ default:false
495
+ },
496
+ edgeApp:{
497
+ password:{
498
+ type:String,
499
+ },
500
+ },
501
+ averageTransactionValue: {
502
+ type: String,
503
+ default: ''
504
+ },
505
+ },
506
+ {
507
+ strict: true,
508
+ versionKey: false,
509
+ timestamps: true,
510
+ },
511
+ );
512
+
513
+ client.plugin( mongooseUniqueValidator );
514
+ export default mongoose.model( 'client', client );