@dynamatix/gb-schemas 2.3.328 → 2.3.330

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.
@@ -42,8 +42,11 @@ declare const ApplicationModel: mongoose.Model<{
42
42
  statusLid: mongoose.Types.ObjectId;
43
43
  applicationNumber: string;
44
44
  queueId: mongoose.Types.ObjectId[];
45
+ underwriterReviewDate: NativeDate;
45
46
  assignedToUserId: mongoose.Types.ObjectId;
46
47
  assignedToUserDate: NativeDate;
48
+ slaClockStart: NativeDate;
49
+ slaClockStop: NativeDate;
47
50
  isApplicationFeePaid: string;
48
51
  bankSolicitor: string;
49
52
  brokerId: mongoose.Types.ObjectId;
@@ -122,8 +125,11 @@ declare const ApplicationModel: mongoose.Model<{
122
125
  statusLid: mongoose.Types.ObjectId;
123
126
  applicationNumber: string;
124
127
  queueId: mongoose.Types.ObjectId[];
128
+ underwriterReviewDate: NativeDate;
125
129
  assignedToUserId: mongoose.Types.ObjectId;
126
130
  assignedToUserDate: NativeDate;
131
+ slaClockStart: NativeDate;
132
+ slaClockStop: NativeDate;
127
133
  isApplicationFeePaid: string;
128
134
  bankSolicitor: string;
129
135
  brokerId: mongoose.Types.ObjectId;
@@ -202,8 +208,11 @@ declare const ApplicationModel: mongoose.Model<{
202
208
  statusLid: mongoose.Types.ObjectId;
203
209
  applicationNumber: string;
204
210
  queueId: mongoose.Types.ObjectId[];
211
+ underwriterReviewDate: NativeDate;
205
212
  assignedToUserId: mongoose.Types.ObjectId;
206
213
  assignedToUserDate: NativeDate;
214
+ slaClockStart: NativeDate;
215
+ slaClockStop: NativeDate;
207
216
  isApplicationFeePaid: string;
208
217
  bankSolicitor: string;
209
218
  brokerId: mongoose.Types.ObjectId;
@@ -294,8 +303,11 @@ declare const ApplicationModel: mongoose.Model<{
294
303
  statusLid: mongoose.Types.ObjectId;
295
304
  applicationNumber: string;
296
305
  queueId: mongoose.Types.ObjectId[];
306
+ underwriterReviewDate: NativeDate;
297
307
  assignedToUserId: mongoose.Types.ObjectId;
298
308
  assignedToUserDate: NativeDate;
309
+ slaClockStart: NativeDate;
310
+ slaClockStop: NativeDate;
299
311
  isApplicationFeePaid: string;
300
312
  bankSolicitor: string;
301
313
  brokerId: mongoose.Types.ObjectId;
@@ -374,8 +386,11 @@ declare const ApplicationModel: mongoose.Model<{
374
386
  statusLid: mongoose.Types.ObjectId;
375
387
  applicationNumber: string;
376
388
  queueId: mongoose.Types.ObjectId[];
389
+ underwriterReviewDate: NativeDate;
377
390
  assignedToUserId: mongoose.Types.ObjectId;
378
391
  assignedToUserDate: NativeDate;
392
+ slaClockStart: NativeDate;
393
+ slaClockStop: NativeDate;
379
394
  isApplicationFeePaid: string;
380
395
  bankSolicitor: string;
381
396
  brokerId: mongoose.Types.ObjectId;
@@ -454,8 +469,11 @@ declare const ApplicationModel: mongoose.Model<{
454
469
  statusLid: mongoose.Types.ObjectId;
455
470
  applicationNumber: string;
456
471
  queueId: mongoose.Types.ObjectId[];
472
+ underwriterReviewDate: NativeDate;
457
473
  assignedToUserId: mongoose.Types.ObjectId;
458
474
  assignedToUserDate: NativeDate;
475
+ slaClockStart: NativeDate;
476
+ slaClockStop: NativeDate;
459
477
  isApplicationFeePaid: string;
460
478
  bankSolicitor: string;
461
479
  brokerId: mongoose.Types.ObjectId;
@@ -1 +1 @@
1
- {"version":3,"file":"application.model.d.ts","sourceRoot":"","sources":["../../applications/application.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA+PhC,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAmD,CAAC;AAC1E,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"application.model.d.ts","sourceRoot":"","sources":["../../applications/application.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAkQhC,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAmD,CAAC;AAC1E,eAAe,gBAAgB,CAAC"}
@@ -8,8 +8,11 @@ const applicationSchema = new mongoose.Schema({
8
8
  ref: "Queue",
9
9
  default: null,
10
10
  }],
11
+ underwriterReviewDate: { type: Date, default: null },
11
12
  assignedToUserId: { type: mongoose.Schema.Types.ObjectId, ref: "User", default: null },
12
13
  assignedToUserDate: { type: Date, default: null },
14
+ slaClockStart: { type: Date, default: null },
15
+ slaClockStop: { type: Date, default: null },
13
16
  applicationId: { type: String, required: true },
14
17
  isApplicationFeePaid: { type: String, required: true },
15
18
  applicationNumber: { type: String, required: true },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamatix/gb-schemas",
3
- "version": "2.3.328",
3
+ "version": "2.3.330",
4
4
  "description": "All the schemas for gatehouse bank back-end",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,180 +0,0 @@
1
- /// <reference path="../value-objects/pound.d.ts" />
2
- /// <reference path="../value-objects/account-number.d.ts" />
3
- /// <reference path="../value-objects/sort-code.d.ts" />
4
- /// <reference types="mongoose/types/aggregate" />
5
- /// <reference types="mongoose/types/callback" />
6
- /// <reference types="mongoose/types/collection" />
7
- /// <reference types="mongoose/types/connection" />
8
- /// <reference types="mongoose/types/cursor" />
9
- /// <reference types="mongoose/types/document" />
10
- /// <reference types="mongoose/types/error" />
11
- /// <reference types="mongoose/types/expressions" />
12
- /// <reference types="mongoose/types/helpers" />
13
- /// <reference types="mongoose/types/middlewares" />
14
- /// <reference types="mongoose/types/indexes" />
15
- /// <reference types="mongoose/types/models" />
16
- /// <reference types="mongoose/types/mongooseoptions" />
17
- /// <reference types="mongoose/types/pipelinestage" />
18
- /// <reference types="mongoose/types/populate" />
19
- /// <reference types="mongoose/types/query" />
20
- /// <reference types="mongoose/types/schemaoptions" />
21
- /// <reference types="mongoose/types/session" />
22
- /// <reference types="mongoose/types/types" />
23
- /// <reference types="mongoose/types/utility" />
24
- /// <reference types="mongoose/types/validation" />
25
- /// <reference types="mongoose/types/virtuals" />
26
- /// <reference types="mongoose/types/schematypes" />
27
- /// <reference types="mongoose/types/inferschematype" />
28
- /// <reference types="mongoose/types/inferrawdoctype" />
29
- import mongoose from "mongoose";
30
- declare const AuditLogModel: mongoose.Model<{
31
- name: string;
32
- action: "read" | "create" | "update" | "delete";
33
- timestamp: NativeDate;
34
- recordId: mongoose.Types.ObjectId;
35
- isSystemGenerated: boolean;
36
- metadata?: any;
37
- source?: string | null | undefined;
38
- oldValue?: any;
39
- newValue?: any;
40
- fieldName?: string | null | undefined;
41
- userId?: mongoose.Types.ObjectId | null | undefined;
42
- ipAddress?: string | null | undefined;
43
- userAgent?: string | null | undefined;
44
- sessionId?: string | null | undefined;
45
- externalData?: {
46
- apprivoAuditId?: string | null | undefined;
47
- syncStatus?: "pending" | "synced" | "failed" | null | undefined;
48
- syncedAt?: NativeDate | null | undefined;
49
- externalSystemId?: string | null | undefined;
50
- } | null | undefined;
51
- severity?: "low" | "medium" | "high" | "critical" | null | undefined;
52
- }, {}, {}, {}, mongoose.Document<unknown, {}, {
53
- name: string;
54
- action: "read" | "create" | "update" | "delete";
55
- timestamp: NativeDate;
56
- recordId: mongoose.Types.ObjectId;
57
- isSystemGenerated: boolean;
58
- metadata?: any;
59
- source?: string | null | undefined;
60
- oldValue?: any;
61
- newValue?: any;
62
- fieldName?: string | null | undefined;
63
- userId?: mongoose.Types.ObjectId | null | undefined;
64
- ipAddress?: string | null | undefined;
65
- userAgent?: string | null | undefined;
66
- sessionId?: string | null | undefined;
67
- externalData?: {
68
- apprivoAuditId?: string | null | undefined;
69
- syncStatus?: "pending" | "synced" | "failed" | null | undefined;
70
- syncedAt?: NativeDate | null | undefined;
71
- externalSystemId?: string | null | undefined;
72
- } | null | undefined;
73
- severity?: "low" | "medium" | "high" | "critical" | null | undefined;
74
- }, {}> & {
75
- name: string;
76
- action: "read" | "create" | "update" | "delete";
77
- timestamp: NativeDate;
78
- recordId: mongoose.Types.ObjectId;
79
- isSystemGenerated: boolean;
80
- metadata?: any;
81
- source?: string | null | undefined;
82
- oldValue?: any;
83
- newValue?: any;
84
- fieldName?: string | null | undefined;
85
- userId?: mongoose.Types.ObjectId | null | undefined;
86
- ipAddress?: string | null | undefined;
87
- userAgent?: string | null | undefined;
88
- sessionId?: string | null | undefined;
89
- externalData?: {
90
- apprivoAuditId?: string | null | undefined;
91
- syncStatus?: "pending" | "synced" | "failed" | null | undefined;
92
- syncedAt?: NativeDate | null | undefined;
93
- externalSystemId?: string | null | undefined;
94
- } | null | undefined;
95
- severity?: "low" | "medium" | "high" | "critical" | null | undefined;
96
- } & {
97
- _id: mongoose.Types.ObjectId;
98
- } & {
99
- __v: number;
100
- }, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
101
- timestamps: false;
102
- toJSON: {
103
- virtuals: true;
104
- };
105
- toObject: {
106
- virtuals: true;
107
- };
108
- }, {
109
- name: string;
110
- action: "read" | "create" | "update" | "delete";
111
- timestamp: NativeDate;
112
- recordId: mongoose.Types.ObjectId;
113
- isSystemGenerated: boolean;
114
- metadata?: any;
115
- source?: string | null | undefined;
116
- oldValue?: any;
117
- newValue?: any;
118
- fieldName?: string | null | undefined;
119
- userId?: mongoose.Types.ObjectId | null | undefined;
120
- ipAddress?: string | null | undefined;
121
- userAgent?: string | null | undefined;
122
- sessionId?: string | null | undefined;
123
- externalData?: {
124
- apprivoAuditId?: string | null | undefined;
125
- syncStatus?: "pending" | "synced" | "failed" | null | undefined;
126
- syncedAt?: NativeDate | null | undefined;
127
- externalSystemId?: string | null | undefined;
128
- } | null | undefined;
129
- severity?: "low" | "medium" | "high" | "critical" | null | undefined;
130
- }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
131
- name: string;
132
- action: "read" | "create" | "update" | "delete";
133
- timestamp: NativeDate;
134
- recordId: mongoose.Types.ObjectId;
135
- isSystemGenerated: boolean;
136
- metadata?: any;
137
- source?: string | null | undefined;
138
- oldValue?: any;
139
- newValue?: any;
140
- fieldName?: string | null | undefined;
141
- userId?: mongoose.Types.ObjectId | null | undefined;
142
- ipAddress?: string | null | undefined;
143
- userAgent?: string | null | undefined;
144
- sessionId?: string | null | undefined;
145
- externalData?: {
146
- apprivoAuditId?: string | null | undefined;
147
- syncStatus?: "pending" | "synced" | "failed" | null | undefined;
148
- syncedAt?: NativeDate | null | undefined;
149
- externalSystemId?: string | null | undefined;
150
- } | null | undefined;
151
- severity?: "low" | "medium" | "high" | "critical" | null | undefined;
152
- }>, {}> & mongoose.FlatRecord<{
153
- name: string;
154
- action: "read" | "create" | "update" | "delete";
155
- timestamp: NativeDate;
156
- recordId: mongoose.Types.ObjectId;
157
- isSystemGenerated: boolean;
158
- metadata?: any;
159
- source?: string | null | undefined;
160
- oldValue?: any;
161
- newValue?: any;
162
- fieldName?: string | null | undefined;
163
- userId?: mongoose.Types.ObjectId | null | undefined;
164
- ipAddress?: string | null | undefined;
165
- userAgent?: string | null | undefined;
166
- sessionId?: string | null | undefined;
167
- externalData?: {
168
- apprivoAuditId?: string | null | undefined;
169
- syncStatus?: "pending" | "synced" | "failed" | null | undefined;
170
- syncedAt?: NativeDate | null | undefined;
171
- externalSystemId?: string | null | undefined;
172
- } | null | undefined;
173
- severity?: "low" | "medium" | "high" | "critical" | null | undefined;
174
- }> & {
175
- _id: mongoose.Types.ObjectId;
176
- } & {
177
- __v: number;
178
- }>>;
179
- export default AuditLogModel;
180
- //# sourceMappingURL=audit-log.model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit-log.model.d.ts","sourceRoot":"","sources":["../../shared/audit-log.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA6ChC,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA6C,CAAC;AACjE,eAAe,aAAa,CAAC"}
@@ -1,43 +0,0 @@
1
- import mongoose from "mongoose";
2
- const auditLogSchema = new mongoose.Schema({
3
- name: { type: String, required: true }, // Collection/model name
4
- recordId: { type: mongoose.Schema.Types.ObjectId, required: true }, // ID of the record being audited
5
- action: { type: String, required: true, enum: ['create', 'update', 'delete', 'read'] },
6
- userId: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: false }, // User who performed the action
7
- timestamp: { type: Date, default: Date.now, required: true },
8
- oldValue: { type: mongoose.Schema.Types.Mixed, required: false }, // Previous value
9
- newValue: { type: mongoose.Schema.Types.Mixed, required: false }, // New value
10
- fieldName: { type: String, required: false }, // Specific field that changed
11
- ipAddress: { type: String, required: false },
12
- userAgent: { type: String, required: false },
13
- sessionId: { type: String, required: false },
14
- source: { type: String, required: false, default: 'application' }, // Source of the change
15
- metadata: { type: mongoose.Schema.Types.Mixed, required: false },
16
- externalData: {
17
- apprivoAuditId: { type: String, required: false }, // External system audit ID
18
- syncStatus: { type: String, required: false, enum: ['pending', 'synced', 'failed'] },
19
- syncedAt: { type: Date, required: false },
20
- externalSystemId: { type: String, required: false }
21
- },
22
- isSystemGenerated: { type: Boolean, default: false },
23
- severity: { type: String, required: false, enum: ['low', 'medium', 'high', 'critical'], default: 'low' }
24
- }, {
25
- timestamps: false, // We use our own timestamp field
26
- toJSON: { virtuals: true },
27
- toObject: { virtuals: true }
28
- });
29
- // Virtual for formatted timestamp
30
- auditLogSchema.virtual('formattedTimestamp').get(function () {
31
- return this.timestamp ? this.timestamp.toISOString() : null;
32
- });
33
- // Add indexes to match database
34
- auditLogSchema.index({ 'externalData.apprivoAuditId': 1 }); // External audit ID lookup
35
- auditLogSchema.index({ name: 1, newValue: 1, recordId: 1, timestamp: -1 }); // Complex compound index
36
- auditLogSchema.index({ name: 1, recordId: 1 }); // Filter by collection and record
37
- auditLogSchema.index({ recordId: 1, timestamp: -1, _id: -1 }); // Record history with fallback sort
38
- auditLogSchema.index({ timestamp: -1 }); // Sort by recent changes
39
- auditLogSchema.index({ userId: 1, timestamp: -1 }); // User activity history
40
- auditLogSchema.index({ action: 1, timestamp: -1 }); // Filter by action type
41
- auditLogSchema.index({ name: 1, action: 1, timestamp: -1 }); // Collection-specific action history
42
- const AuditLogModel = mongoose.model("AuditLog", auditLogSchema);
43
- export default AuditLogModel;
@@ -1,180 +0,0 @@
1
- /// <reference path="../value-objects/pound.d.ts" />
2
- /// <reference path="../value-objects/account-number.d.ts" />
3
- /// <reference path="../value-objects/sort-code.d.ts" />
4
- /// <reference types="mongoose/types/aggregate" />
5
- /// <reference types="mongoose/types/callback" />
6
- /// <reference types="mongoose/types/collection" />
7
- /// <reference types="mongoose/types/connection" />
8
- /// <reference types="mongoose/types/cursor" />
9
- /// <reference types="mongoose/types/document" />
10
- /// <reference types="mongoose/types/error" />
11
- /// <reference types="mongoose/types/expressions" />
12
- /// <reference types="mongoose/types/helpers" />
13
- /// <reference types="mongoose/types/middlewares" />
14
- /// <reference types="mongoose/types/indexes" />
15
- /// <reference types="mongoose/types/models" />
16
- /// <reference types="mongoose/types/mongooseoptions" />
17
- /// <reference types="mongoose/types/pipelinestage" />
18
- /// <reference types="mongoose/types/populate" />
19
- /// <reference types="mongoose/types/query" />
20
- /// <reference types="mongoose/types/schemaoptions" />
21
- /// <reference types="mongoose/types/session" />
22
- /// <reference types="mongoose/types/types" />
23
- /// <reference types="mongoose/types/utility" />
24
- /// <reference types="mongoose/types/validation" />
25
- /// <reference types="mongoose/types/virtuals" />
26
- /// <reference types="mongoose/types/schematypes" />
27
- /// <reference types="mongoose/types/inferschematype" />
28
- /// <reference types="mongoose/types/inferrawdoctype" />
29
- import mongoose from "mongoose";
30
- declare const DocumentModel: mongoose.Model<{
31
- createdAt: NativeDate;
32
- updatedAt: NativeDate;
33
- } & {
34
- isActive: boolean;
35
- applicationId: mongoose.Types.ObjectId;
36
- status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
37
- category: string;
38
- fileName: string;
39
- originalName: string;
40
- mimeType: string;
41
- fileSize: number;
42
- filePath: string;
43
- uploadedBy: mongoose.Types.ObjectId;
44
- tags: string[];
45
- metadata?: any;
46
- contextId?: mongoose.Types.ObjectId | null | undefined;
47
- rejectionReason?: string | null | undefined;
48
- subCategory?: string | null | undefined;
49
- verifiedBy?: mongoose.Types.ObjectId | null | undefined;
50
- verifiedAt?: NativeDate | null | undefined;
51
- expiresAt?: NativeDate | null | undefined;
52
- }, {}, {}, {}, mongoose.Document<unknown, {}, {
53
- createdAt: NativeDate;
54
- updatedAt: NativeDate;
55
- } & {
56
- isActive: boolean;
57
- applicationId: mongoose.Types.ObjectId;
58
- status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
59
- category: string;
60
- fileName: string;
61
- originalName: string;
62
- mimeType: string;
63
- fileSize: number;
64
- filePath: string;
65
- uploadedBy: mongoose.Types.ObjectId;
66
- tags: string[];
67
- metadata?: any;
68
- contextId?: mongoose.Types.ObjectId | null | undefined;
69
- rejectionReason?: string | null | undefined;
70
- subCategory?: string | null | undefined;
71
- verifiedBy?: mongoose.Types.ObjectId | null | undefined;
72
- verifiedAt?: NativeDate | null | undefined;
73
- expiresAt?: NativeDate | null | undefined;
74
- }, {}> & {
75
- createdAt: NativeDate;
76
- updatedAt: NativeDate;
77
- } & {
78
- isActive: boolean;
79
- applicationId: mongoose.Types.ObjectId;
80
- status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
81
- category: string;
82
- fileName: string;
83
- originalName: string;
84
- mimeType: string;
85
- fileSize: number;
86
- filePath: string;
87
- uploadedBy: mongoose.Types.ObjectId;
88
- tags: string[];
89
- metadata?: any;
90
- contextId?: mongoose.Types.ObjectId | null | undefined;
91
- rejectionReason?: string | null | undefined;
92
- subCategory?: string | null | undefined;
93
- verifiedBy?: mongoose.Types.ObjectId | null | undefined;
94
- verifiedAt?: NativeDate | null | undefined;
95
- expiresAt?: NativeDate | null | undefined;
96
- } & {
97
- _id: mongoose.Types.ObjectId;
98
- } & {
99
- __v: number;
100
- }, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
101
- timestamps: true;
102
- toJSON: {
103
- virtuals: true;
104
- };
105
- toObject: {
106
- virtuals: true;
107
- };
108
- }, {
109
- createdAt: NativeDate;
110
- updatedAt: NativeDate;
111
- } & {
112
- isActive: boolean;
113
- applicationId: mongoose.Types.ObjectId;
114
- status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
115
- category: string;
116
- fileName: string;
117
- originalName: string;
118
- mimeType: string;
119
- fileSize: number;
120
- filePath: string;
121
- uploadedBy: mongoose.Types.ObjectId;
122
- tags: string[];
123
- metadata?: any;
124
- contextId?: mongoose.Types.ObjectId | null | undefined;
125
- rejectionReason?: string | null | undefined;
126
- subCategory?: string | null | undefined;
127
- verifiedBy?: mongoose.Types.ObjectId | null | undefined;
128
- verifiedAt?: NativeDate | null | undefined;
129
- expiresAt?: NativeDate | null | undefined;
130
- }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
131
- createdAt: NativeDate;
132
- updatedAt: NativeDate;
133
- } & {
134
- isActive: boolean;
135
- applicationId: mongoose.Types.ObjectId;
136
- status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
137
- category: string;
138
- fileName: string;
139
- originalName: string;
140
- mimeType: string;
141
- fileSize: number;
142
- filePath: string;
143
- uploadedBy: mongoose.Types.ObjectId;
144
- tags: string[];
145
- metadata?: any;
146
- contextId?: mongoose.Types.ObjectId | null | undefined;
147
- rejectionReason?: string | null | undefined;
148
- subCategory?: string | null | undefined;
149
- verifiedBy?: mongoose.Types.ObjectId | null | undefined;
150
- verifiedAt?: NativeDate | null | undefined;
151
- expiresAt?: NativeDate | null | undefined;
152
- }>, {}> & mongoose.FlatRecord<{
153
- createdAt: NativeDate;
154
- updatedAt: NativeDate;
155
- } & {
156
- isActive: boolean;
157
- applicationId: mongoose.Types.ObjectId;
158
- status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
159
- category: string;
160
- fileName: string;
161
- originalName: string;
162
- mimeType: string;
163
- fileSize: number;
164
- filePath: string;
165
- uploadedBy: mongoose.Types.ObjectId;
166
- tags: string[];
167
- metadata?: any;
168
- contextId?: mongoose.Types.ObjectId | null | undefined;
169
- rejectionReason?: string | null | undefined;
170
- subCategory?: string | null | undefined;
171
- verifiedBy?: mongoose.Types.ObjectId | null | undefined;
172
- verifiedAt?: NativeDate | null | undefined;
173
- expiresAt?: NativeDate | null | undefined;
174
- }> & {
175
- _id: mongoose.Types.ObjectId;
176
- } & {
177
- __v: number;
178
- }>>;
179
- export default DocumentModel;
180
- //# sourceMappingURL=document.model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document.model.d.ts","sourceRoot":"","sources":["../../shared/document.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA0ChC,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA6C,CAAC;AACjE,eAAe,aAAa,CAAC"}
@@ -1,40 +0,0 @@
1
- import mongoose from "mongoose";
2
- import { applyAuditMiddleware } from "@dynamatix/cat-shared/middlewares";
3
- import { applyWorkflowPlugin } from "./workflow.plugin";
4
- const documentSchema = new mongoose.Schema({
5
- applicationId: { type: mongoose.Schema.Types.ObjectId, ref: "Application", required: true },
6
- contextId: { type: mongoose.Schema.Types.ObjectId, required: false },
7
- status: { type: String, required: true, enum: ['pending', 'uploaded', 'verified', 'rejected', 'archived'] },
8
- category: { type: String, required: true },
9
- subCategory: { type: String, required: false },
10
- fileName: { type: String, required: true },
11
- originalName: { type: String, required: true },
12
- mimeType: { type: String, required: true },
13
- fileSize: { type: Number, required: true },
14
- filePath: { type: String, required: true },
15
- uploadedBy: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: true },
16
- verifiedBy: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: false },
17
- verifiedAt: { type: Date, required: false },
18
- rejectionReason: { type: String, required: false },
19
- metadata: { type: mongoose.Schema.Types.Mixed, required: false },
20
- tags: [{ type: String }],
21
- isActive: { type: Boolean, default: true },
22
- expiresAt: { type: Date, required: false }
23
- }, {
24
- timestamps: true,
25
- toJSON: { virtuals: true },
26
- toObject: { virtuals: true }
27
- });
28
- applyAuditMiddleware(documentSchema, "Document");
29
- applyWorkflowPlugin(documentSchema, 'document');
30
- // Add indexes to match database
31
- documentSchema.index({ applicationId: 1 }); // Filter by application
32
- documentSchema.index({ contextId: 1 }); // Filter by context
33
- documentSchema.index({ status: 1 }); // Filter by status
34
- documentSchema.index({ category: 1 }); // Filter by category
35
- documentSchema.index({ subCategory: 1 }); // Filter by subcategory
36
- documentSchema.index({ applicationId: 1, status: 1 }); // Compound: application + status
37
- documentSchema.index({ contextId: 1, status: 1 }); // Compound: context + status
38
- documentSchema.index({ category: 1, status: 1 }); // Compound: category + status
39
- const DocumentModel = mongoose.model("Document", documentSchema);
40
- export default DocumentModel;
@@ -1,180 +0,0 @@
1
- /// <reference path="../value-objects/pound.d.ts" />
2
- /// <reference path="../value-objects/account-number.d.ts" />
3
- /// <reference path="../value-objects/sort-code.d.ts" />
4
- /// <reference types="mongoose/types/aggregate" />
5
- /// <reference types="mongoose/types/callback" />
6
- /// <reference types="mongoose/types/collection" />
7
- /// <reference types="mongoose/types/connection" />
8
- /// <reference types="mongoose/types/cursor" />
9
- /// <reference types="mongoose/types/document" />
10
- /// <reference types="mongoose/types/error" />
11
- /// <reference types="mongoose/types/expressions" />
12
- /// <reference types="mongoose/types/helpers" />
13
- /// <reference types="mongoose/types/middlewares" />
14
- /// <reference types="mongoose/types/indexes" />
15
- /// <reference types="mongoose/types/models" />
16
- /// <reference types="mongoose/types/mongooseoptions" />
17
- /// <reference types="mongoose/types/pipelinestage" />
18
- /// <reference types="mongoose/types/populate" />
19
- /// <reference types="mongoose/types/query" />
20
- /// <reference types="mongoose/types/schemaoptions" />
21
- /// <reference types="mongoose/types/session" />
22
- /// <reference types="mongoose/types/types" />
23
- /// <reference types="mongoose/types/utility" />
24
- /// <reference types="mongoose/types/validation" />
25
- /// <reference types="mongoose/types/virtuals" />
26
- /// <reference types="mongoose/types/schematypes" />
27
- /// <reference types="mongoose/types/inferschematype" />
28
- /// <reference types="mongoose/types/inferrawdoctype" />
29
- import mongoose from "mongoose";
30
- declare const QueueModel: mongoose.Model<{
31
- createdAt: NativeDate;
32
- updatedAt: NativeDate;
33
- } & {
34
- isActive: boolean;
35
- name: string;
36
- retryAttempts: number;
37
- retryDelay: number;
38
- priority: number;
39
- maxConcurrency: number;
40
- processingTimeout: number;
41
- assignedUsers: mongoose.Types.ObjectId[];
42
- description?: string | null | undefined;
43
- departmentId?: mongoose.Types.ObjectId | null | undefined;
44
- workflowId?: mongoose.Types.ObjectId | null | undefined;
45
- settings?: any;
46
- statistics?: {
47
- totalProcessed: number;
48
- totalFailed: number;
49
- averageProcessingTime: number;
50
- lastProcessedAt?: NativeDate | null | undefined;
51
- } | null | undefined;
52
- }, {}, {}, {}, mongoose.Document<unknown, {}, {
53
- createdAt: NativeDate;
54
- updatedAt: NativeDate;
55
- } & {
56
- isActive: boolean;
57
- name: string;
58
- retryAttempts: number;
59
- retryDelay: number;
60
- priority: number;
61
- maxConcurrency: number;
62
- processingTimeout: number;
63
- assignedUsers: mongoose.Types.ObjectId[];
64
- description?: string | null | undefined;
65
- departmentId?: mongoose.Types.ObjectId | null | undefined;
66
- workflowId?: mongoose.Types.ObjectId | null | undefined;
67
- settings?: any;
68
- statistics?: {
69
- totalProcessed: number;
70
- totalFailed: number;
71
- averageProcessingTime: number;
72
- lastProcessedAt?: NativeDate | null | undefined;
73
- } | null | undefined;
74
- }, {}> & {
75
- createdAt: NativeDate;
76
- updatedAt: NativeDate;
77
- } & {
78
- isActive: boolean;
79
- name: string;
80
- retryAttempts: number;
81
- retryDelay: number;
82
- priority: number;
83
- maxConcurrency: number;
84
- processingTimeout: number;
85
- assignedUsers: mongoose.Types.ObjectId[];
86
- description?: string | null | undefined;
87
- departmentId?: mongoose.Types.ObjectId | null | undefined;
88
- workflowId?: mongoose.Types.ObjectId | null | undefined;
89
- settings?: any;
90
- statistics?: {
91
- totalProcessed: number;
92
- totalFailed: number;
93
- averageProcessingTime: number;
94
- lastProcessedAt?: NativeDate | null | undefined;
95
- } | null | undefined;
96
- } & {
97
- _id: mongoose.Types.ObjectId;
98
- } & {
99
- __v: number;
100
- }, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
101
- timestamps: true;
102
- toJSON: {
103
- virtuals: true;
104
- };
105
- toObject: {
106
- virtuals: true;
107
- };
108
- }, {
109
- createdAt: NativeDate;
110
- updatedAt: NativeDate;
111
- } & {
112
- isActive: boolean;
113
- name: string;
114
- retryAttempts: number;
115
- retryDelay: number;
116
- priority: number;
117
- maxConcurrency: number;
118
- processingTimeout: number;
119
- assignedUsers: mongoose.Types.ObjectId[];
120
- description?: string | null | undefined;
121
- departmentId?: mongoose.Types.ObjectId | null | undefined;
122
- workflowId?: mongoose.Types.ObjectId | null | undefined;
123
- settings?: any;
124
- statistics?: {
125
- totalProcessed: number;
126
- totalFailed: number;
127
- averageProcessingTime: number;
128
- lastProcessedAt?: NativeDate | null | undefined;
129
- } | null | undefined;
130
- }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
131
- createdAt: NativeDate;
132
- updatedAt: NativeDate;
133
- } & {
134
- isActive: boolean;
135
- name: string;
136
- retryAttempts: number;
137
- retryDelay: number;
138
- priority: number;
139
- maxConcurrency: number;
140
- processingTimeout: number;
141
- assignedUsers: mongoose.Types.ObjectId[];
142
- description?: string | null | undefined;
143
- departmentId?: mongoose.Types.ObjectId | null | undefined;
144
- workflowId?: mongoose.Types.ObjectId | null | undefined;
145
- settings?: any;
146
- statistics?: {
147
- totalProcessed: number;
148
- totalFailed: number;
149
- averageProcessingTime: number;
150
- lastProcessedAt?: NativeDate | null | undefined;
151
- } | null | undefined;
152
- }>, {}> & mongoose.FlatRecord<{
153
- createdAt: NativeDate;
154
- updatedAt: NativeDate;
155
- } & {
156
- isActive: boolean;
157
- name: string;
158
- retryAttempts: number;
159
- retryDelay: number;
160
- priority: number;
161
- maxConcurrency: number;
162
- processingTimeout: number;
163
- assignedUsers: mongoose.Types.ObjectId[];
164
- description?: string | null | undefined;
165
- departmentId?: mongoose.Types.ObjectId | null | undefined;
166
- workflowId?: mongoose.Types.ObjectId | null | undefined;
167
- settings?: any;
168
- statistics?: {
169
- totalProcessed: number;
170
- totalFailed: number;
171
- averageProcessingTime: number;
172
- lastProcessedAt?: NativeDate | null | undefined;
173
- } | null | undefined;
174
- }> & {
175
- _id: mongoose.Types.ObjectId;
176
- } & {
177
- __v: number;
178
- }>>;
179
- export default QueueModel;
180
- //# sourceMappingURL=queue.model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queue.model.d.ts","sourceRoot":"","sources":["../../shared/queue.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA6ChC,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAuC,CAAC;AACxD,eAAe,UAAU,CAAC"}
@@ -1,42 +0,0 @@
1
- import mongoose from "mongoose";
2
- import { applyAuditMiddleware } from "@dynamatix/cat-shared/middlewares";
3
- import { applyWorkflowPlugin } from "./workflow.plugin";
4
- const queueSchema = new mongoose.Schema({
5
- name: { type: String, required: true, unique: true },
6
- description: { type: String, required: false },
7
- isActive: { type: Boolean, default: true },
8
- priority: { type: Number, default: 0 },
9
- maxConcurrency: { type: Number, default: 1 },
10
- retryAttempts: { type: Number, default: 3 },
11
- retryDelay: { type: Number, default: 5000 }, // milliseconds
12
- processingTimeout: { type: Number, default: 300000 }, // 5 minutes in milliseconds
13
- assignedUsers: [{ type: mongoose.Schema.Types.ObjectId, ref: "User" }],
14
- departmentId: { type: mongoose.Schema.Types.ObjectId, ref: "Department", required: false },
15
- workflowId: { type: mongoose.Schema.Types.ObjectId, ref: "Workflow", required: false },
16
- settings: { type: mongoose.Schema.Types.Mixed, required: false },
17
- statistics: {
18
- totalProcessed: { type: Number, default: 0 },
19
- totalFailed: { type: Number, default: 0 },
20
- averageProcessingTime: { type: Number, default: 0 },
21
- lastProcessedAt: { type: Date, required: false }
22
- }
23
- }, {
24
- timestamps: true,
25
- toJSON: { virtuals: true },
26
- toObject: { virtuals: true }
27
- });
28
- // Virtual for current queue size (would need to be populated from related collections)
29
- queueSchema.virtual('currentSize').get(function () {
30
- // This would typically be calculated by counting related queue items
31
- return 0;
32
- });
33
- applyAuditMiddleware(queueSchema, "Queue");
34
- applyWorkflowPlugin(queueSchema, 'queue');
35
- // Add indexes to match database
36
- queueSchema.index({ name: 1 }, { unique: true }); // Unique queue name
37
- queueSchema.index({ isActive: 1 }); // Filter by active status
38
- queueSchema.index({ priority: -1 }); // Sort by priority (highest first)
39
- queueSchema.index({ departmentId: 1 }); // Filter by department
40
- queueSchema.index({ isActive: 1, priority: -1 }); // Compound: active + priority
41
- const QueueModel = mongoose.model("Queue", queueSchema);
42
- export default QueueModel;