@managemint-solutions/sdk 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +73 -1
- package/dist/additional-details/index.d.ts +3 -1
- package/dist/additional-details/index.js +15 -28
- package/dist/additional-details/index.js.map +1 -1
- package/dist/audit/dto.d.ts +13 -0
- package/dist/audit/dto.js +90 -0
- package/dist/audit/dto.js.map +1 -0
- package/dist/audit/index.d.ts +89 -0
- package/dist/audit/index.js +285 -0
- package/dist/audit/index.js.map +1 -0
- package/dist/client.d.ts +4 -0
- package/dist/client.js +11 -7
- package/dist/client.js.map +1 -1
- package/dist/clients/index.d.ts +3 -1
- package/dist/clients/index.js +25 -62
- package/dist/clients/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/nest/index.d.ts +11 -0
- package/dist/nest/index.js +12 -1
- package/dist/nest/index.js.map +1 -1
- package/dist/notes/index.d.ts +3 -1
- package/dist/notes/index.js +16 -27
- package/dist/notes/index.js.map +1 -1
- package/dist/projects/index.d.ts +3 -1
- package/dist/projects/index.js +25 -62
- package/dist/projects/index.js.map +1 -1
- package/dist/statuses/index.d.ts +3 -1
- package/dist/statuses/index.js +17 -28
- package/dist/statuses/index.js.map +1 -1
- package/dist/supporting-files/index.d.ts +3 -1
- package/dist/supporting-files/index.js +14 -20
- package/dist/supporting-files/index.js.map +1 -1
- package/dist/tasks/index.d.ts +3 -1
- package/dist/tasks/index.js +21 -50
- package/dist/tasks/index.js.map +1 -1
- package/package.json +1 -1
package/dist/notes/index.d.ts
CHANGED
|
@@ -2,12 +2,14 @@ import type { NoteEntity } from '@managemint-solutions/entities/notes';
|
|
|
2
2
|
import type { AddNoteDto } from '@managemint-solutions/entities/notes/dto';
|
|
3
3
|
import { NotesEntityTypes } from '@managemint-solutions/entities/notes/enum';
|
|
4
4
|
import type { AuthContext } from '../auth';
|
|
5
|
+
import { type AuditResource } from '../audit';
|
|
5
6
|
import type { TypedSupabaseClient } from '../client';
|
|
6
7
|
export * from './dto';
|
|
7
8
|
export declare class NotesResource {
|
|
8
9
|
private readonly supabase;
|
|
9
10
|
private readonly auth;
|
|
10
|
-
|
|
11
|
+
private readonly table;
|
|
12
|
+
constructor(supabase: TypedSupabaseClient, auth: AuthContext, audit: AuditResource);
|
|
11
13
|
getById(noteId: string): Promise<NoteEntity>;
|
|
12
14
|
list(entity: NotesEntityTypes, entityId: string): Promise<NoteEntity[]>;
|
|
13
15
|
create(entity: NotesEntityTypes, entityId: string, input: AddNoteDto): Promise<NoteEntity>;
|
package/dist/notes/index.js
CHANGED
|
@@ -15,6 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.NotesResource = void 0;
|
|
18
|
+
const enum_1 = require("@managemint-solutions/entities/audit-trail/enum");
|
|
19
|
+
const audit_1 = require("../audit");
|
|
18
20
|
const errors_1 = require("../errors");
|
|
19
21
|
__exportStar(require("./dto"), exports);
|
|
20
22
|
// The public contract is the shared NoteEntity from @managemint-solutions/entities; the casts at
|
|
@@ -24,9 +26,14 @@ const NOTE_SELECT = 'mms_id, created_at, content, pinned, user:user_profiles!use
|
|
|
24
26
|
class NotesResource {
|
|
25
27
|
supabase;
|
|
26
28
|
auth;
|
|
27
|
-
|
|
29
|
+
table;
|
|
30
|
+
constructor(supabase, auth, audit) {
|
|
28
31
|
this.supabase = supabase;
|
|
29
32
|
this.auth = auth;
|
|
33
|
+
this.table = (0, audit_1.auditedTable)(supabase, auth, audit, {
|
|
34
|
+
table: 'notes',
|
|
35
|
+
entityType: enum_1.AuditTrailEntityType.NOTES,
|
|
36
|
+
});
|
|
30
37
|
}
|
|
31
38
|
async getById(noteId) {
|
|
32
39
|
const { data, error } = await this.supabase
|
|
@@ -52,44 +59,26 @@ class NotesResource {
|
|
|
52
59
|
return data;
|
|
53
60
|
}
|
|
54
61
|
async create(entity, entityId, input) {
|
|
55
|
-
const
|
|
56
|
-
.from('notes')
|
|
57
|
-
.insert({
|
|
62
|
+
const row = await this.table.insert({
|
|
58
63
|
content: input.content,
|
|
59
64
|
entity_type: entity,
|
|
60
65
|
entity_id: entityId,
|
|
61
66
|
organization_id: this.auth.organization_id,
|
|
62
67
|
user_id: this.auth.mms_id,
|
|
63
|
-
})
|
|
64
|
-
|
|
65
|
-
.single();
|
|
66
|
-
if (error)
|
|
67
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
68
|
-
return data;
|
|
68
|
+
});
|
|
69
|
+
return this.getById(row.mms_id);
|
|
69
70
|
}
|
|
70
71
|
async togglePin(noteId) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
.
|
|
74
|
-
.update({
|
|
75
|
-
pinned: !existing.pinned,
|
|
72
|
+
// The helper pre-reads the row anyway, so the flip is a function of what it read.
|
|
73
|
+
await this.table.update(noteId, (before) => ({
|
|
74
|
+
pinned: !before.pinned,
|
|
76
75
|
updated_at: new Date().toISOString(),
|
|
77
76
|
last_updated_by: this.auth.mms_id,
|
|
78
|
-
})
|
|
79
|
-
.eq('mms_id', noteId)
|
|
80
|
-
.eq('organization_id', this.auth.organization_id);
|
|
81
|
-
if (error)
|
|
82
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
77
|
+
}));
|
|
83
78
|
return this.getById(noteId);
|
|
84
79
|
}
|
|
85
80
|
async remove(noteId) {
|
|
86
|
-
|
|
87
|
-
.from('notes')
|
|
88
|
-
.delete()
|
|
89
|
-
.eq('mms_id', noteId)
|
|
90
|
-
.eq('organization_id', this.auth.organization_id);
|
|
91
|
-
if (error)
|
|
92
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
81
|
+
await this.table.remove(noteId);
|
|
93
82
|
}
|
|
94
83
|
}
|
|
95
84
|
exports.NotesResource = NotesResource;
|
package/dist/notes/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/notes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/notes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,0EAAuF;AAEvF,oCAA+E;AAE/E,sCAA8C;AAE9C,wCAAsB;AAEtB,iGAAiG;AACjG,iGAAiG;AACjG,8BAA8B;AAC9B,MAAM,WAAW,GAAG,oEAA6E,CAAC;AAElG,MAAa,aAAa;IAIL;IACA;IAJF,KAAK,CAAe;IAErC,YACmB,QAA6B,EAC7B,IAAiB,EAClC,KAAoB;QAFH,aAAQ,GAAR,QAAQ,CAAqB;QAC7B,SAAI,GAAJ,IAAI,CAAa;QAGlC,IAAI,CAAC,KAAK,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;YAC/C,KAAK,EAAE,OAAO;YACd,UAAU,EAAE,2BAAoB,CAAC,KAAK;SACvC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ;aACxC,IAAI,CAAC,OAAO,CAAC;aACb,MAAM,CAAC,WAAW,CAAC;aACnB,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;aAChD,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;aACpB,MAAM,EAAE,CAAC;QACZ,IAAI,KAAK;YAAE,MAAM,IAAA,0BAAiB,EAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,IAA6B,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAwB,EAAE,QAAgB;QACnD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ;aACxC,IAAI,CAAC,OAAO,CAAC;aACb,MAAM,CAAC,WAAW,CAAC;aACnB,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;aAChD,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;aACzB,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;aACzB,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,IAAI,KAAK;YAAE,MAAM,IAAA,0BAAiB,EAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,IAA+B,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,MAAM,CACV,MAAwB,EACxB,QAAgB,EAChB,KAAiB;QAEjB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAClC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,MAAM;YACnB,SAAS,EAAE,QAAQ;YACnB,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;YAC1C,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SAC1B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAgB,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc;QAC5B,kFAAkF;QAClF,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC3C,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM;YACtB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SAClC,CAAC,CAAC,CAAC;QAEJ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc;QACzB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;CACF;AAnED,sCAmEC"}
|
package/dist/projects/index.d.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { MmsList } from '@managemint-solutions/entities/common';
|
|
2
2
|
import type { ProjectEntity, ProjectSummary } from '@managemint-solutions/entities/projects';
|
|
3
3
|
import type { AuthContext } from '../auth';
|
|
4
|
+
import { type AuditResource } from '../audit';
|
|
4
5
|
import type { TypedSupabaseClient } from '../client';
|
|
5
6
|
import type { CreateProjectDto, GetProjectsDto, UpdateProjectDto } from './dto';
|
|
6
7
|
export * from './dto';
|
|
7
8
|
export declare class ProjectsResource {
|
|
8
9
|
private readonly supabase;
|
|
9
10
|
private readonly auth;
|
|
10
|
-
|
|
11
|
+
private readonly table;
|
|
12
|
+
constructor(supabase: TypedSupabaseClient, auth: AuthContext, audit: AuditResource);
|
|
11
13
|
list(query: GetProjectsDto): Promise<MmsList<ProjectSummary>>;
|
|
12
14
|
getById(projectId: string): Promise<ProjectEntity>;
|
|
13
15
|
create(input: CreateProjectDto): Promise<ProjectEntity>;
|
package/dist/projects/index.js
CHANGED
|
@@ -15,6 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.ProjectsResource = void 0;
|
|
18
|
+
const enum_1 = require("@managemint-solutions/entities/audit-trail/enum");
|
|
19
|
+
const audit_1 = require("../audit");
|
|
18
20
|
const errors_1 = require("../errors");
|
|
19
21
|
const transforms_1 = require("../transforms");
|
|
20
22
|
__exportStar(require("./dto"), exports);
|
|
@@ -104,9 +106,14 @@ const PROJECT_DETAIL_SELECT = `
|
|
|
104
106
|
class ProjectsResource {
|
|
105
107
|
supabase;
|
|
106
108
|
auth;
|
|
107
|
-
|
|
109
|
+
table;
|
|
110
|
+
constructor(supabase, auth, audit) {
|
|
108
111
|
this.supabase = supabase;
|
|
109
112
|
this.auth = auth;
|
|
113
|
+
this.table = (0, audit_1.auditedTable)(supabase, auth, audit, {
|
|
114
|
+
table: 'projects',
|
|
115
|
+
entityType: enum_1.AuditTrailEntityType.PROJECTS,
|
|
116
|
+
});
|
|
110
117
|
}
|
|
111
118
|
async list(query) {
|
|
112
119
|
const page = query.page;
|
|
@@ -198,101 +205,57 @@ class ProjectsResource {
|
|
|
198
205
|
return data;
|
|
199
206
|
}
|
|
200
207
|
async create(input) {
|
|
201
|
-
const
|
|
202
|
-
.from('projects')
|
|
203
|
-
.insert({
|
|
208
|
+
const row = await this.table.insert({
|
|
204
209
|
...input,
|
|
205
210
|
start_date: (0, transforms_1.toDateInput)(input.start_date),
|
|
206
211
|
end_date: (0, transforms_1.toDateInput)(input.end_date),
|
|
207
212
|
organization_id: this.auth.organization_id,
|
|
208
213
|
created_by: this.auth.mms_id,
|
|
209
214
|
created_at: new Date().toISOString(),
|
|
210
|
-
})
|
|
211
|
-
|
|
212
|
-
.single();
|
|
213
|
-
if (error)
|
|
214
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
215
|
-
return this.getById(data.mms_id);
|
|
215
|
+
});
|
|
216
|
+
return this.getById(row.mms_id);
|
|
216
217
|
}
|
|
217
218
|
async update(projectId, input) {
|
|
218
|
-
|
|
219
|
-
.from('projects')
|
|
220
|
-
.update({
|
|
219
|
+
await this.table.update(projectId, {
|
|
221
220
|
...input,
|
|
222
221
|
start_date: (0, transforms_1.toDateInput)(input.start_date),
|
|
223
222
|
end_date: (0, transforms_1.toDateInput)(input.end_date),
|
|
224
223
|
last_updated_by: this.auth.mms_id,
|
|
225
224
|
updated_at: new Date().toISOString(),
|
|
226
|
-
})
|
|
227
|
-
|
|
228
|
-
.eq('mms_id', projectId)
|
|
229
|
-
.select('mms_id')
|
|
230
|
-
.single();
|
|
231
|
-
if (error)
|
|
232
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
233
|
-
return this.getById(data.mms_id);
|
|
225
|
+
});
|
|
226
|
+
return this.getById(projectId);
|
|
234
227
|
}
|
|
235
228
|
async archive(projectId) {
|
|
236
|
-
|
|
237
|
-
.from('projects')
|
|
238
|
-
.update({
|
|
229
|
+
await this.table.transition(projectId, enum_1.AuditTrailAction.ARCHIVE, {
|
|
239
230
|
archived: true,
|
|
240
231
|
archived_at: new Date().toISOString(),
|
|
241
232
|
archived_by: this.auth.mms_id,
|
|
242
|
-
})
|
|
243
|
-
|
|
244
|
-
.eq('mms_id', projectId)
|
|
245
|
-
.select('mms_id')
|
|
246
|
-
.single();
|
|
247
|
-
if (error)
|
|
248
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
249
|
-
return this.getById(data.mms_id);
|
|
233
|
+
});
|
|
234
|
+
return this.getById(projectId);
|
|
250
235
|
}
|
|
251
236
|
async unarchive(projectId) {
|
|
252
|
-
|
|
253
|
-
.from('projects')
|
|
254
|
-
.update({
|
|
237
|
+
await this.table.transition(projectId, enum_1.AuditTrailAction.UNARCHIVE, {
|
|
255
238
|
archived: false,
|
|
256
239
|
unarchived_at: new Date().toISOString(),
|
|
257
240
|
unarchived_by: this.auth.mms_id,
|
|
258
|
-
})
|
|
259
|
-
|
|
260
|
-
.eq('mms_id', projectId)
|
|
261
|
-
.select('mms_id')
|
|
262
|
-
.single();
|
|
263
|
-
if (error)
|
|
264
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
265
|
-
return this.getById(data.mms_id);
|
|
241
|
+
});
|
|
242
|
+
return this.getById(projectId);
|
|
266
243
|
}
|
|
267
244
|
async restore(projectId) {
|
|
268
|
-
|
|
269
|
-
.from('projects')
|
|
270
|
-
.update({
|
|
245
|
+
await this.table.transition(projectId, enum_1.AuditTrailAction.RESTORE, {
|
|
271
246
|
deleted: false,
|
|
272
247
|
restored_at: new Date().toISOString(),
|
|
273
248
|
restored_by: this.auth.mms_id,
|
|
274
|
-
})
|
|
275
|
-
|
|
276
|
-
.eq('mms_id', projectId)
|
|
277
|
-
.select('mms_id')
|
|
278
|
-
.single();
|
|
279
|
-
if (error)
|
|
280
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
281
|
-
return this.getById(data.mms_id);
|
|
249
|
+
});
|
|
250
|
+
return this.getById(projectId);
|
|
282
251
|
}
|
|
283
252
|
/** Soft delete — the row stays, flagged `deleted`, and `restore()` brings it back. */
|
|
284
253
|
async remove(projectId) {
|
|
285
|
-
|
|
286
|
-
.from('projects')
|
|
287
|
-
.update({
|
|
254
|
+
await this.table.transition(projectId, enum_1.AuditTrailAction.DELETE, {
|
|
288
255
|
deleted: true,
|
|
289
256
|
deleted_at: new Date().toISOString(),
|
|
290
257
|
deleted_by: this.auth.mms_id,
|
|
291
|
-
})
|
|
292
|
-
.eq('organization_id', this.auth.organization_id)
|
|
293
|
-
.eq('mms_id', projectId);
|
|
294
|
-
if (error)
|
|
295
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
258
|
+
});
|
|
296
259
|
}
|
|
297
260
|
}
|
|
298
261
|
exports.ProjectsResource = ProjectsResource;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/projects/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/projects/index.ts"],"names":[],"mappings":"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"}
|
package/dist/statuses/index.d.ts
CHANGED
|
@@ -2,12 +2,14 @@ import type { StatusEntity } from '@managemint-solutions/entities/status';
|
|
|
2
2
|
import type { AddStatusDto, UpdateStatusDto } from '@managemint-solutions/entities/status/dto';
|
|
3
3
|
import { StatusEntityTypes } from '@managemint-solutions/entities/status/enum';
|
|
4
4
|
import type { AuthContext } from '../auth';
|
|
5
|
+
import { type AuditResource } from '../audit';
|
|
5
6
|
import type { TypedSupabaseClient } from '../client';
|
|
6
7
|
export * from './dto';
|
|
7
8
|
export declare class StatusesResource {
|
|
8
9
|
private readonly supabase;
|
|
9
10
|
private readonly auth;
|
|
10
|
-
|
|
11
|
+
private readonly table;
|
|
12
|
+
constructor(supabase: TypedSupabaseClient, auth: AuthContext, audit: AuditResource);
|
|
11
13
|
list(entity: StatusEntityTypes): Promise<StatusEntity[]>;
|
|
12
14
|
create(input: AddStatusDto): Promise<StatusEntity>;
|
|
13
15
|
update(statusId: string, input: UpdateStatusDto): Promise<StatusEntity>;
|
package/dist/statuses/index.js
CHANGED
|
@@ -15,18 +15,27 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.StatusesResource = void 0;
|
|
18
|
+
const enum_1 = require("@managemint-solutions/entities/audit-trail/enum");
|
|
19
|
+
const audit_1 = require("../audit");
|
|
18
20
|
const errors_1 = require("../errors");
|
|
19
21
|
__exportStar(require("./dto"), exports);
|
|
20
22
|
// The public contract is the shared StatusEntity from @managemint-solutions/entities; the
|
|
21
23
|
// `as StatusEntity` casts declare the shape the select string below produces (the columns are
|
|
22
24
|
// defined in the api's supabase/migrations).
|
|
23
25
|
const STATUS_SELECT = 'mms_id, label, colour';
|
|
26
|
+
// The audited write returns the whole row; the wire shape is the STATUS_SELECT columns.
|
|
27
|
+
const toStatus = (row) => ({ mms_id: row.mms_id, label: row.label, colour: row.colour });
|
|
24
28
|
class StatusesResource {
|
|
25
29
|
supabase;
|
|
26
30
|
auth;
|
|
27
|
-
|
|
31
|
+
table;
|
|
32
|
+
constructor(supabase, auth, audit) {
|
|
28
33
|
this.supabase = supabase;
|
|
29
34
|
this.auth = auth;
|
|
35
|
+
this.table = (0, audit_1.auditedTable)(supabase, auth, audit, {
|
|
36
|
+
table: 'statuses',
|
|
37
|
+
entityType: enum_1.AuditTrailEntityType.STATUS,
|
|
38
|
+
});
|
|
30
39
|
}
|
|
31
40
|
async list(entity) {
|
|
32
41
|
const { data, error } = await this.supabase
|
|
@@ -39,46 +48,26 @@ class StatusesResource {
|
|
|
39
48
|
return data;
|
|
40
49
|
}
|
|
41
50
|
async create(input) {
|
|
42
|
-
const
|
|
43
|
-
.from('statuses')
|
|
44
|
-
.insert({
|
|
51
|
+
const row = await this.table.insert({
|
|
45
52
|
label: input.label,
|
|
46
53
|
colour: input.colour,
|
|
47
54
|
entity_type: input.entity,
|
|
48
55
|
organization_id: this.auth.organization_id,
|
|
49
56
|
created_by: this.auth.mms_id,
|
|
50
|
-
})
|
|
51
|
-
|
|
52
|
-
.single();
|
|
53
|
-
if (error)
|
|
54
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
55
|
-
return data;
|
|
57
|
+
});
|
|
58
|
+
return toStatus(row);
|
|
56
59
|
}
|
|
57
60
|
async update(statusId, input) {
|
|
58
|
-
const
|
|
59
|
-
.from('statuses')
|
|
60
|
-
.update({
|
|
61
|
+
const row = await this.table.update(statusId, {
|
|
61
62
|
label: input.label,
|
|
62
63
|
colour: input.colour,
|
|
63
64
|
updated_at: new Date().toISOString(),
|
|
64
65
|
last_updated_by: this.auth.mms_id,
|
|
65
|
-
})
|
|
66
|
-
|
|
67
|
-
.eq('organization_id', this.auth.organization_id)
|
|
68
|
-
.select(STATUS_SELECT)
|
|
69
|
-
.single();
|
|
70
|
-
if (error)
|
|
71
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
72
|
-
return data;
|
|
66
|
+
});
|
|
67
|
+
return toStatus(row);
|
|
73
68
|
}
|
|
74
69
|
async remove(statusId) {
|
|
75
|
-
|
|
76
|
-
.from('statuses')
|
|
77
|
-
.delete()
|
|
78
|
-
.eq('mms_id', statusId)
|
|
79
|
-
.eq('organization_id', this.auth.organization_id);
|
|
80
|
-
if (error)
|
|
81
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
70
|
+
await this.table.remove(statusId);
|
|
82
71
|
}
|
|
83
72
|
}
|
|
84
73
|
exports.StatusesResource = StatusesResource;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/statuses/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/statuses/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,0EAAuF;AAEvF,oCAA8F;AAE9F,sCAA8C;AAE9C,wCAAsB;AAEtB,0FAA0F;AAC1F,8FAA8F;AAC9F,6CAA6C;AAC7C,MAAM,aAAa,GAAG,uBAAgC,CAAC;AAEvD,wFAAwF;AACxF,MAAM,QAAQ,GAAG,CAAC,GAAa,EAAgB,EAAE,CAC/C,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAA4B,CAAC;AAE5F,MAAa,gBAAgB;IAIR;IACA;IAJF,KAAK,CAAe;IAErC,YACmB,QAA6B,EAC7B,IAAiB,EAClC,KAAoB;QAFH,aAAQ,GAAR,QAAQ,CAAqB;QAC7B,SAAI,GAAJ,IAAI,CAAa;QAGlC,IAAI,CAAC,KAAK,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;YAC/C,KAAK,EAAE,UAAU;YACjB,UAAU,EAAE,2BAAoB,CAAC,MAAM;SACxC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAyB;QAClC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ;aACxC,IAAI,CAAC,UAAU,CAAC;aAChB,MAAM,CAAC,aAAa,CAAC;aACrB,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;aAChD,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC7B,IAAI,KAAK;YAAE,MAAM,IAAA,0BAAiB,EAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,IAAsB,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAmB;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAClC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,WAAW,EAAE,KAAK,CAAC,MAAM;YACzB,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;YAC1C,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SAC7B,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB,EAAE,KAAsB;QACnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC5C,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SAClC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;CACF;AAhDD,4CAgDC"}
|
|
@@ -2,13 +2,15 @@ import type { SupportingFileEntity, SupportingFilePresignedUrl } from '@managemi
|
|
|
2
2
|
import type { UploadSupportingFilesDto } from '@managemint-solutions/entities/supporting-files/dto';
|
|
3
3
|
import { SupportingFilesEntityTypes } from '@managemint-solutions/entities/supporting-files/enum';
|
|
4
4
|
import type { AuthContext } from '../auth';
|
|
5
|
+
import { type AuditResource } from '../audit';
|
|
5
6
|
import type { TypedSupabaseClient } from '../client';
|
|
6
7
|
export * from './dto';
|
|
7
8
|
export * from './paths';
|
|
8
9
|
export declare class SupportingFilesResource {
|
|
9
10
|
private readonly supabase;
|
|
10
11
|
private readonly auth;
|
|
11
|
-
|
|
12
|
+
private readonly table;
|
|
13
|
+
constructor(supabase: TypedSupabaseClient, auth: AuthContext, audit: AuditResource);
|
|
12
14
|
getPresignedUrl(supportingFileId: string): Promise<SupportingFilePresignedUrl>;
|
|
13
15
|
list(entity: SupportingFilesEntityTypes, entityId: string): Promise<SupportingFileEntity[]>;
|
|
14
16
|
upload(entity: SupportingFilesEntityTypes, entityId: string, input: UploadSupportingFilesDto): Promise<SupportingFileEntity[]>;
|
|
@@ -15,6 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.SupportingFilesResource = void 0;
|
|
18
|
+
const enum_1 = require("@managemint-solutions/entities/audit-trail/enum");
|
|
19
|
+
const audit_1 = require("../audit");
|
|
18
20
|
const errors_1 = require("../errors");
|
|
19
21
|
const paths_1 = require("./paths");
|
|
20
22
|
__exportStar(require("./dto"), exports);
|
|
@@ -31,9 +33,14 @@ const UPLOAD_BATCH_SIZE = 5;
|
|
|
31
33
|
class SupportingFilesResource {
|
|
32
34
|
supabase;
|
|
33
35
|
auth;
|
|
34
|
-
|
|
36
|
+
table;
|
|
37
|
+
constructor(supabase, auth, audit) {
|
|
35
38
|
this.supabase = supabase;
|
|
36
39
|
this.auth = auth;
|
|
40
|
+
this.table = (0, audit_1.auditedTable)(supabase, auth, audit, {
|
|
41
|
+
table: 'supporting_files',
|
|
42
|
+
entityType: enum_1.AuditTrailEntityType.SUPPORTING_FILES,
|
|
43
|
+
});
|
|
37
44
|
}
|
|
38
45
|
async getPresignedUrl(supportingFileId) {
|
|
39
46
|
const { data, error } = await this.supabase
|
|
@@ -89,7 +96,7 @@ class SupportingFilesResource {
|
|
|
89
96
|
// Only files without an existing row get one — the rest were refreshed in place above.
|
|
90
97
|
const newFiles = input.files.filter((file) => !existingFileNames.includes(file.name));
|
|
91
98
|
if (newFiles.length > 0) {
|
|
92
|
-
|
|
99
|
+
await this.table.insertMany(newFiles.map((file) => ({
|
|
93
100
|
...(0, paths_1.splitFileName)(file.name),
|
|
94
101
|
entity_type: entity,
|
|
95
102
|
entity_id: entityId,
|
|
@@ -97,30 +104,17 @@ class SupportingFilesResource {
|
|
|
97
104
|
created_at: new Date().toISOString(),
|
|
98
105
|
created_by: this.auth.mms_id,
|
|
99
106
|
})));
|
|
100
|
-
if (error)
|
|
101
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
102
107
|
}
|
|
103
108
|
return this.list(entity, entityId);
|
|
104
109
|
}
|
|
105
110
|
async remove(supportingFileId) {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
.select('entity_type, entity_id, name, extension')
|
|
109
|
-
.eq('mms_id', supportingFileId)
|
|
110
|
-
.eq('organization_id', this.auth.organization_id)
|
|
111
|
-
.single();
|
|
112
|
-
if (error)
|
|
113
|
-
throw (0, errors_1.mapPostgrestError)(error);
|
|
114
|
-
const { error: deleteError } = await this.supabase
|
|
115
|
-
.from('supporting_files')
|
|
116
|
-
.delete()
|
|
117
|
-
.eq('mms_id', supportingFileId)
|
|
118
|
-
.eq('organization_id', this.auth.organization_id);
|
|
119
|
-
if (deleteError)
|
|
120
|
-
throw (0, errors_1.mapPostgrestError)(deleteError);
|
|
111
|
+
// The row goes first — the helper's pre-read hands back what the object path is built from.
|
|
112
|
+
const data = await this.table.remove(supportingFileId);
|
|
121
113
|
const { error: storageError } = await this.supabase.storage
|
|
122
114
|
.from(BUCKET)
|
|
123
|
-
.remove([
|
|
115
|
+
.remove([
|
|
116
|
+
(0, paths_1.storagePath)(data.entity_type, data.entity_id, data.name, data.extension),
|
|
117
|
+
]);
|
|
124
118
|
if (storageError) {
|
|
125
119
|
throw (0, errors_1.mapStorageError)(storageError, `Failed to delete file: ${data.name}.${data.extension}`);
|
|
126
120
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/supporting-files/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/supporting-files/index.ts"],"names":[],"mappings":"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"}
|
package/dist/tasks/index.d.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { MmsList } from '@managemint-solutions/entities/common';
|
|
2
2
|
import type { TaskEntity, TaskSummary } from '@managemint-solutions/entities/tasks';
|
|
3
3
|
import type { AuthContext } from '../auth';
|
|
4
|
+
import { type AuditResource } from '../audit';
|
|
4
5
|
import type { TypedSupabaseClient } from '../client';
|
|
5
6
|
import type { CreateTaskDto, GetTasksDto, UpdateTaskDto } from './dto';
|
|
6
7
|
export * from './dto';
|
|
7
8
|
export declare class TasksResource {
|
|
8
9
|
private readonly supabase;
|
|
9
10
|
private readonly auth;
|
|
10
|
-
|
|
11
|
+
private readonly table;
|
|
12
|
+
constructor(supabase: TypedSupabaseClient, auth: AuthContext, audit: AuditResource);
|
|
11
13
|
list(query: GetTasksDto): Promise<MmsList<TaskSummary>>;
|
|
12
14
|
getById(taskId: string): Promise<TaskEntity>;
|
|
13
15
|
create(input: CreateTaskDto): Promise<TaskEntity>;
|