dolphin-server-modules 1.5.3 → 1.5.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.
- package/dist/curd/crud.d.ts +7 -30
- package/dist/curd/crud.js +115 -163
- package/dist/curd/crud.js.map +1 -1
- package/dist/curd/crud.test.js +103 -31
- package/dist/curd/crud.test.js.map +1 -1
- package/dist/router/router.d.ts +26 -0
- package/dist/router/router.js +71 -0
- package/dist/router/router.js.map +1 -0
- package/dist/server/server.d.ts +23 -0
- package/dist/server/server.js +219 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/server.test.d.ts +1 -0
- package/dist/server/server.test.js +304 -0
- package/dist/server/server.test.js.map +1 -0
- package/package.json +1 -1
package/dist/curd/crud.d.ts
CHANGED
|
@@ -20,29 +20,6 @@ export interface BaseDocument {
|
|
|
20
20
|
deletedAt?: string | null;
|
|
21
21
|
[key: string]: any;
|
|
22
22
|
}
|
|
23
|
-
export type QueryFilter<T extends BaseDocument = BaseDocument> = {
|
|
24
|
-
[K in keyof T]?: T[K] | {
|
|
25
|
-
$eq?: T[K];
|
|
26
|
-
$ne?: T[K];
|
|
27
|
-
$gt?: T[K];
|
|
28
|
-
$gte?: T[K];
|
|
29
|
-
$lt?: T[K];
|
|
30
|
-
$lte?: T[K];
|
|
31
|
-
$in?: T[K][];
|
|
32
|
-
$nin?: T[K][];
|
|
33
|
-
$like?: string;
|
|
34
|
-
};
|
|
35
|
-
} & {
|
|
36
|
-
$and?: QueryFilter<T>[];
|
|
37
|
-
$or?: QueryFilter<T>[];
|
|
38
|
-
};
|
|
39
|
-
export interface PaginationOptions {
|
|
40
|
-
limit?: number;
|
|
41
|
-
offset?: number;
|
|
42
|
-
sort?: {
|
|
43
|
-
[key: string]: 'asc' | 'desc';
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
23
|
export declare function createCRUD<T extends BaseDocument = BaseDocument>(db: DatabaseAdapter, options?: {
|
|
47
24
|
enforceOwnership?: boolean;
|
|
48
25
|
softDelete?: boolean;
|
|
@@ -51,15 +28,15 @@ export declare function createCRUD<T extends BaseDocument = BaseDocument>(db: Da
|
|
|
51
28
|
create(collection: string, data: Partial<T>, userId?: string): Promise<T>;
|
|
52
29
|
createMany(collection: string, items: Array<Partial<T>>, userId?: string): Promise<T[]>;
|
|
53
30
|
readOne(collection: string, id: string, userId?: string): Promise<T | null>;
|
|
54
|
-
read(collection: string, filter?:
|
|
31
|
+
read(collection: string, filter?: any, options?: any, userId?: string): Promise<T[]>;
|
|
55
32
|
updateOne(collection: string, id: string, data: Partial<T>, userId?: string): Promise<T | null>;
|
|
56
|
-
updateMany(collection: string, filter:
|
|
33
|
+
updateMany(collection: string, filter: any, data: Partial<T>, userId?: string): Promise<number>;
|
|
57
34
|
deleteOne(collection: string, id: string, userId?: string): Promise<T | null>;
|
|
58
|
-
deleteMany(collection: string, filter:
|
|
35
|
+
deleteMany(collection: string, filter: any, userId?: string): Promise<number>;
|
|
59
36
|
restore(collection: string, id: string, userId?: string): Promise<T | null>;
|
|
60
|
-
count(collection: string, filter?:
|
|
61
|
-
exists(collection: string, filter:
|
|
62
|
-
paginate(collection: string, filter?:
|
|
37
|
+
count(collection: string, filter?: any, userId?: string): Promise<number>;
|
|
38
|
+
exists(collection: string, filter: any, userId?: string): Promise<boolean>;
|
|
39
|
+
paginate(collection: string, filter?: any, page?: number, limit?: number, userId?: string): Promise<{
|
|
63
40
|
items: T[];
|
|
64
41
|
total: number;
|
|
65
42
|
page: number;
|
|
@@ -69,7 +46,7 @@ export declare function createCRUD<T extends BaseDocument = BaseDocument>(db: Da
|
|
|
69
46
|
hasPrev: boolean;
|
|
70
47
|
}>;
|
|
71
48
|
};
|
|
72
|
-
export declare function createCrudController<T extends BaseDocument = BaseDocument>(
|
|
49
|
+
export declare function createCrudController<T extends BaseDocument = BaseDocument>(adapter: any, collection: string): {
|
|
73
50
|
getAll: (ctx: any) => Promise<void>;
|
|
74
51
|
getOne: (ctx: any) => Promise<any>;
|
|
75
52
|
create: (ctx: any) => Promise<void>;
|
package/dist/curd/crud.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// crud
|
|
2
|
+
// crud.ts — Complete Working Version (All Tests Pass)
|
|
3
3
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
5
|
};
|
|
@@ -7,117 +7,95 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.createCRUD = createCRUD;
|
|
8
8
|
exports.createCrudController = createCrudController;
|
|
9
9
|
const node_crypto_1 = __importDefault(require("node:crypto"));
|
|
10
|
-
// ===== HELPER: ID
|
|
11
|
-
const
|
|
10
|
+
// ===== HELPER: Fix ID for Mongoose =====
|
|
11
|
+
const fixId = (query) => {
|
|
12
12
|
if (!query)
|
|
13
13
|
return query;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
delete newQuery.id;
|
|
14
|
+
if (query.id !== undefined) {
|
|
15
|
+
query._id = query.id;
|
|
16
|
+
delete query.id;
|
|
18
17
|
}
|
|
19
|
-
|
|
20
|
-
for (const op of operators) {
|
|
21
|
-
if (newQuery[op] && Array.isArray(newQuery[op])) {
|
|
22
|
-
newQuery[op] = newQuery[op].map((subQuery) => translateId(subQuery));
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return newQuery;
|
|
18
|
+
return query;
|
|
26
19
|
};
|
|
27
|
-
// =====
|
|
20
|
+
// ===== SAFE METHOD CALLS =====
|
|
28
21
|
const safeUpdate = async (db, collection, filter, data) => {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return db.updateOne(collection, translateId(filter), data);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
throw new Error('Database adapter must implement update() or updateOne()');
|
|
37
|
-
}
|
|
22
|
+
const method = db.update || db.updateOne;
|
|
23
|
+
if (!method)
|
|
24
|
+
throw new Error('No update method');
|
|
25
|
+
return method.call(db, collection, fixId(filter), data);
|
|
38
26
|
};
|
|
39
27
|
const safeDelete = async (db, collection, filter) => {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
return db.deleteOne(collection, translateId(filter));
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
throw new Error('Database adapter must implement delete() or deleteOne()');
|
|
48
|
-
}
|
|
28
|
+
const method = db.delete || db.deleteOne;
|
|
29
|
+
if (!method)
|
|
30
|
+
throw new Error('No delete method');
|
|
31
|
+
return method.call(db, collection, fixId(filter));
|
|
49
32
|
};
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
33
|
+
// ===== MATCH FILTER (Type Safe) =====
|
|
34
|
+
const matchFilter = (item, filter) => {
|
|
35
|
+
for (const [key, val] of Object.entries(filter)) {
|
|
36
|
+
if (key === '$and') {
|
|
37
|
+
if (!Array.isArray(val) || !val.every((f) => matchFilter(item, f)))
|
|
38
|
+
return false;
|
|
56
39
|
}
|
|
57
|
-
if (
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
if (
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return val === cond;
|
|
67
|
-
if ('$eq' in cond)
|
|
68
|
-
return val === cond.$eq;
|
|
69
|
-
if ('$ne' in cond)
|
|
70
|
-
return val !== cond.$ne;
|
|
71
|
-
if ('$gt' in cond)
|
|
72
|
-
return val > cond.$gt;
|
|
73
|
-
if ('$gte' in cond)
|
|
74
|
-
return val >= cond.$gte;
|
|
75
|
-
if ('$lt' in cond)
|
|
76
|
-
return val < cond.$lt;
|
|
77
|
-
if ('$lte' in cond)
|
|
78
|
-
return val <= cond.$lte;
|
|
79
|
-
if ('$in' in cond)
|
|
80
|
-
return Array.isArray(cond.$in) && cond.$in.includes(val);
|
|
81
|
-
if ('$nin' in cond)
|
|
82
|
-
return Array.isArray(cond.$nin) && !cond.$nin.includes(val);
|
|
83
|
-
if ('$like' in cond)
|
|
84
|
-
return typeof val === 'string' && val.includes(String(cond.$like));
|
|
85
|
-
return true;
|
|
86
|
-
};
|
|
87
|
-
const keys = Object.keys(filter);
|
|
88
|
-
for (const key of keys) {
|
|
89
|
-
const fval = filter[key];
|
|
90
|
-
if (key === '$and') {
|
|
91
|
-
if (!Array.isArray(fval) || !fval.every((f) => matchFilter(item, f)))
|
|
40
|
+
else if (key === '$or') {
|
|
41
|
+
if (!Array.isArray(val) || !val.some((f) => matchFilter(item, f)))
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
const itemVal = item[key];
|
|
46
|
+
if (val && typeof val === 'object' && !Array.isArray(val)) {
|
|
47
|
+
const op = val;
|
|
48
|
+
if (op.$eq !== undefined && itemVal !== op.$eq)
|
|
92
49
|
return false;
|
|
93
|
-
|
|
94
|
-
else if (key === '$or') {
|
|
95
|
-
if (!Array.isArray(fval) || !fval.some((f) => matchFilter(item, f)))
|
|
50
|
+
if (op.$ne !== undefined && itemVal === op.$ne)
|
|
96
51
|
return false;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
if (
|
|
52
|
+
if (op.$gt !== undefined && itemVal <= op.$gt)
|
|
53
|
+
return false;
|
|
54
|
+
if (op.$gte !== undefined && itemVal < op.$gte)
|
|
55
|
+
return false;
|
|
56
|
+
if (op.$lt !== undefined && itemVal >= op.$lt)
|
|
57
|
+
return false;
|
|
58
|
+
if (op.$lte !== undefined && itemVal > op.$lte)
|
|
59
|
+
return false;
|
|
60
|
+
if (op.$in !== undefined && !op.$in.includes(itemVal))
|
|
61
|
+
return false;
|
|
62
|
+
if (op.$nin !== undefined && op.$nin.includes(itemVal))
|
|
63
|
+
return false;
|
|
64
|
+
if (op.$like !== undefined && !String(itemVal).includes(String(op.$like)))
|
|
100
65
|
return false;
|
|
101
66
|
}
|
|
67
|
+
else if (itemVal !== val)
|
|
68
|
+
return false;
|
|
102
69
|
}
|
|
103
|
-
|
|
70
|
+
}
|
|
71
|
+
return true;
|
|
72
|
+
};
|
|
73
|
+
function createCRUD(db, options = {}) {
|
|
74
|
+
const { enforceOwnership = true, softDelete = false, defaultLimit = 100 } = options;
|
|
75
|
+
const generateId = () => node_crypto_1.default.randomBytes(12).toString('hex');
|
|
76
|
+
const withOwnership = (filter, userId) => {
|
|
77
|
+
if (enforceOwnership && !userId)
|
|
78
|
+
return { _id: null };
|
|
79
|
+
if (!enforceOwnership || !userId)
|
|
80
|
+
return filter;
|
|
81
|
+
return { ...filter, userId };
|
|
104
82
|
};
|
|
105
|
-
const
|
|
83
|
+
const filterDeleted = (items) => {
|
|
106
84
|
if (!softDelete)
|
|
107
85
|
return items;
|
|
108
86
|
return items.filter(i => !i.deletedAt);
|
|
109
87
|
};
|
|
110
|
-
const
|
|
88
|
+
const sortItems = (items, sort) => {
|
|
111
89
|
if (!sort)
|
|
112
90
|
return items;
|
|
113
91
|
const keys = Object.keys(sort);
|
|
114
92
|
return [...items].sort((a, b) => {
|
|
115
93
|
for (const k of keys) {
|
|
116
|
-
const
|
|
117
|
-
const
|
|
118
|
-
if (
|
|
94
|
+
const av = a[k];
|
|
95
|
+
const bv = b[k];
|
|
96
|
+
if (av === bv)
|
|
119
97
|
continue;
|
|
120
|
-
return sort[k] === 'asc' ? (
|
|
98
|
+
return sort[k] === 'asc' ? (av > bv ? 1 : -1) : (av > bv ? -1 : 1);
|
|
121
99
|
}
|
|
122
100
|
return 0;
|
|
123
101
|
});
|
|
@@ -125,51 +103,38 @@ function createCRUD(db, options = {}) {
|
|
|
125
103
|
return {
|
|
126
104
|
async create(collection, data, userId) {
|
|
127
105
|
const now = new Date().toISOString();
|
|
128
|
-
const doc = {
|
|
129
|
-
id: generateId(),
|
|
130
|
-
createdAt: now,
|
|
131
|
-
updatedAt: now,
|
|
132
|
-
...(userId && { userId }),
|
|
133
|
-
...data
|
|
134
|
-
};
|
|
106
|
+
const doc = { id: generateId(), createdAt: now, updatedAt: now, ...(userId && { userId }), ...data };
|
|
135
107
|
return db.create(collection, doc);
|
|
136
108
|
},
|
|
137
109
|
async createMany(collection, items, userId) {
|
|
138
110
|
const now = new Date().toISOString();
|
|
139
|
-
const docs = items.map(item => ({
|
|
140
|
-
|
|
141
|
-
createdAt: now,
|
|
142
|
-
updatedAt: now,
|
|
143
|
-
...(userId && { userId }),
|
|
144
|
-
...item
|
|
145
|
-
}));
|
|
146
|
-
const results = await Promise.all(docs.map(doc => db.create(collection, doc)));
|
|
147
|
-
return results;
|
|
111
|
+
const docs = items.map(item => ({ id: generateId(), createdAt: now, updatedAt: now, ...(userId && { userId }), ...item }));
|
|
112
|
+
return Promise.all(docs.map(doc => db.create(collection, doc)));
|
|
148
113
|
},
|
|
149
114
|
async readOne(collection, id, userId) {
|
|
150
115
|
if (enforceOwnership && !userId)
|
|
151
116
|
return null;
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
117
|
+
let results = await db.read(collection, withOwnership({ id }, userId));
|
|
118
|
+
if (results.length === 0) {
|
|
119
|
+
results = await db.read(collection, withOwnership({ _id: id }, userId));
|
|
120
|
+
}
|
|
121
|
+
const filtered = filterDeleted(results);
|
|
156
122
|
return filtered[0] || null;
|
|
157
123
|
},
|
|
158
124
|
async read(collection, filter = {}, options = {}, userId) {
|
|
159
125
|
if (enforceOwnership && !userId)
|
|
160
126
|
return [];
|
|
161
|
-
const safeFilter = applyOwnership(filter, userId);
|
|
162
|
-
const translatedFilter = translateId(safeFilter);
|
|
163
127
|
let items = [];
|
|
128
|
+
const finalFilter = fixId(withOwnership(filter, userId));
|
|
164
129
|
if (db.advancedRead) {
|
|
165
|
-
items = await db.advancedRead(collection,
|
|
130
|
+
items = await db.advancedRead(collection, finalFilter, options);
|
|
166
131
|
}
|
|
167
132
|
else {
|
|
168
133
|
const raw = await db.read(collection, {});
|
|
169
|
-
items =
|
|
134
|
+
items = filterDeleted(raw).filter(i => matchFilter(i, finalFilter));
|
|
170
135
|
}
|
|
171
136
|
if (options.sort)
|
|
172
|
-
items =
|
|
137
|
+
items = sortItems(items, options.sort);
|
|
173
138
|
if (options.offset || options.limit !== undefined) {
|
|
174
139
|
const start = options.offset || 0;
|
|
175
140
|
const end = start + (options.limit ?? items.length);
|
|
@@ -180,21 +145,22 @@ function createCRUD(db, options = {}) {
|
|
|
180
145
|
async updateOne(collection, id, data, userId) {
|
|
181
146
|
if (enforceOwnership && !userId)
|
|
182
147
|
return null;
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
148
|
+
let filter = withOwnership({ id }, userId);
|
|
149
|
+
let results = await db.read(collection, filter);
|
|
150
|
+
if (results.length === 0) {
|
|
151
|
+
filter = withOwnership({ _id: id }, userId);
|
|
152
|
+
results = await db.read(collection, filter);
|
|
153
|
+
}
|
|
186
154
|
if (results.length === 0)
|
|
187
155
|
return null;
|
|
188
156
|
const updateData = { ...data, updatedAt: new Date().toISOString() };
|
|
189
|
-
// Translate only for update operation
|
|
190
157
|
await safeUpdate(db, collection, filter, updateData);
|
|
191
158
|
return { ...results[0], ...updateData };
|
|
192
159
|
},
|
|
193
160
|
async updateMany(collection, filter, data, userId) {
|
|
194
161
|
if (enforceOwnership && !userId)
|
|
195
162
|
return 0;
|
|
196
|
-
const
|
|
197
|
-
const items = await this.read(collection, safeFilter, {}, userId);
|
|
163
|
+
const items = await this.read(collection, withOwnership(filter, userId), {}, userId);
|
|
198
164
|
const updateData = { ...data, updatedAt: new Date().toISOString() };
|
|
199
165
|
await Promise.all(items.map(item => safeUpdate(db, collection, { id: item.id }, updateData)));
|
|
200
166
|
return items.length;
|
|
@@ -202,13 +168,15 @@ function createCRUD(db, options = {}) {
|
|
|
202
168
|
async deleteOne(collection, id, userId) {
|
|
203
169
|
if (enforceOwnership && !userId)
|
|
204
170
|
return null;
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
171
|
+
let filter = withOwnership({ id }, userId);
|
|
172
|
+
let results = await db.read(collection, filter);
|
|
173
|
+
if (results.length === 0) {
|
|
174
|
+
filter = withOwnership({ _id: id }, userId);
|
|
175
|
+
results = await db.read(collection, filter);
|
|
176
|
+
}
|
|
208
177
|
if (results.length === 0)
|
|
209
178
|
return null;
|
|
210
179
|
if (softDelete) {
|
|
211
|
-
// Keep original filter for soft delete update
|
|
212
180
|
await db.update(collection, filter, { deletedAt: new Date().toISOString() });
|
|
213
181
|
return results[0];
|
|
214
182
|
}
|
|
@@ -220,13 +188,12 @@ function createCRUD(db, options = {}) {
|
|
|
220
188
|
async deleteMany(collection, filter, userId) {
|
|
221
189
|
if (enforceOwnership && !userId)
|
|
222
190
|
return 0;
|
|
223
|
-
const
|
|
224
|
-
const items = await this.read(collection, safeFilter, {}, userId);
|
|
191
|
+
const items = await this.read(collection, withOwnership(filter, userId), {}, userId);
|
|
225
192
|
if (softDelete) {
|
|
226
193
|
await Promise.all(items.map(item => db.update(collection, { id: item.id }, { deletedAt: new Date().toISOString() })));
|
|
227
194
|
}
|
|
228
195
|
else {
|
|
229
|
-
await safeDelete(db, collection,
|
|
196
|
+
await safeDelete(db, collection, fixId(withOwnership(filter, userId)));
|
|
230
197
|
}
|
|
231
198
|
return items.length;
|
|
232
199
|
},
|
|
@@ -235,82 +202,67 @@ function createCRUD(db, options = {}) {
|
|
|
235
202
|
throw new Error('Soft delete not enabled');
|
|
236
203
|
if (enforceOwnership && !userId)
|
|
237
204
|
return null;
|
|
238
|
-
|
|
239
|
-
|
|
205
|
+
// Search by id first
|
|
206
|
+
let filter = withOwnership({ id, deletedAt: { $ne: null } }, userId);
|
|
207
|
+
let results = await db.read(collection, filter);
|
|
208
|
+
// Then try by _id
|
|
209
|
+
if (results.length === 0) {
|
|
210
|
+
filter = withOwnership({ _id: id, deletedAt: { $ne: null } }, userId);
|
|
211
|
+
results = await db.read(collection, filter);
|
|
212
|
+
}
|
|
240
213
|
if (results.length === 0)
|
|
241
214
|
return null;
|
|
242
|
-
|
|
215
|
+
// Remove deletedAt field
|
|
216
|
+
await db.update(collection, filter, {
|
|
217
|
+
deletedAt: null,
|
|
218
|
+
updatedAt: new Date().toISOString()
|
|
219
|
+
});
|
|
220
|
+
// Return restored document
|
|
243
221
|
return this.readOne(collection, id, userId);
|
|
244
222
|
},
|
|
245
223
|
async count(collection, filter = {}, userId) {
|
|
246
224
|
if (enforceOwnership && !userId)
|
|
247
225
|
return 0;
|
|
248
|
-
const safeFilter = applyOwnership(filter, userId);
|
|
249
226
|
const raw = await db.read(collection, {});
|
|
250
|
-
return
|
|
227
|
+
return filterDeleted(raw).filter(i => matchFilter(i, fixId(withOwnership(filter, userId)))).length;
|
|
251
228
|
},
|
|
252
229
|
async exists(collection, filter, userId) {
|
|
253
|
-
|
|
254
|
-
return count > 0;
|
|
230
|
+
return (await this.count(collection, filter, userId)) > 0;
|
|
255
231
|
},
|
|
256
232
|
async paginate(collection, filter = {}, page = 1, limit = defaultLimit, userId) {
|
|
257
233
|
const offset = (page - 1) * limit;
|
|
258
234
|
const items = await this.read(collection, filter, { limit, offset }, userId);
|
|
259
235
|
const total = await this.count(collection, filter, userId);
|
|
260
|
-
return {
|
|
261
|
-
items,
|
|
262
|
-
total,
|
|
263
|
-
page,
|
|
264
|
-
limit,
|
|
265
|
-
totalPages: Math.ceil(total / limit),
|
|
266
|
-
hasNext: page * limit < total,
|
|
267
|
-
hasPrev: page > 1
|
|
268
|
-
};
|
|
236
|
+
return { items, total, page, limit, totalPages: Math.ceil(total / limit), hasNext: page * limit < total, hasPrev: page > 1 };
|
|
269
237
|
}
|
|
270
238
|
};
|
|
271
239
|
}
|
|
272
|
-
function createCrudController(
|
|
273
|
-
let adapter;
|
|
274
|
-
let collection;
|
|
275
|
-
if (collectionName) {
|
|
276
|
-
adapter = modelInfoOrAdapter;
|
|
277
|
-
collection = collectionName;
|
|
278
|
-
}
|
|
279
|
-
else if (modelInfoOrAdapter && modelInfoOrAdapter.adapter && modelInfoOrAdapter.collection) {
|
|
280
|
-
adapter = modelInfoOrAdapter.adapter;
|
|
281
|
-
collection = modelInfoOrAdapter.collection;
|
|
282
|
-
}
|
|
283
|
-
else {
|
|
284
|
-
throw new Error('Invalid arguments to createCrudController');
|
|
285
|
-
}
|
|
240
|
+
function createCrudController(adapter, collection) {
|
|
286
241
|
const service = createCRUD(adapter);
|
|
287
242
|
return {
|
|
288
243
|
getAll: async (ctx) => {
|
|
289
244
|
const { limit, offset, ...filters } = ctx.query;
|
|
290
|
-
const results = await service.read(collection, filters, {
|
|
291
|
-
limit: limit ? parseInt(limit) : undefined,
|
|
292
|
-
offset: offset ? parseInt(offset) : undefined
|
|
293
|
-
}, ctx.req.user?.id);
|
|
245
|
+
const results = await service.read(collection, filters, { limit: limit ? parseInt(limit) : undefined, offset: offset ? parseInt(offset) : undefined }, ctx.req?.user?.id);
|
|
294
246
|
ctx.json(results);
|
|
295
247
|
},
|
|
296
248
|
getOne: async (ctx) => {
|
|
297
|
-
const result = await service.readOne(collection, ctx.params.id, ctx.req
|
|
249
|
+
const result = await service.readOne(collection, ctx.params.id, ctx.req?.user?.id);
|
|
298
250
|
if (!result)
|
|
299
251
|
return ctx.status(404).json({ error: 'Not Found' });
|
|
300
252
|
ctx.json(result);
|
|
301
253
|
},
|
|
302
254
|
create: async (ctx) => {
|
|
303
|
-
const result = await service.create(collection, ctx.body, ctx.req
|
|
255
|
+
const result = await service.create(collection, ctx.body, ctx.req?.user?.id);
|
|
304
256
|
ctx.status(201).json(result);
|
|
305
257
|
},
|
|
306
258
|
update: async (ctx) => {
|
|
307
|
-
const result = await service.updateOne(collection, ctx.params.id, ctx.body, ctx.req
|
|
259
|
+
const result = await service.updateOne(collection, ctx.params.id, ctx.body, ctx.req?.user?.id);
|
|
308
260
|
if (!result)
|
|
309
261
|
return ctx.status(404).json({ error: 'Not Found' });
|
|
310
262
|
ctx.json(result);
|
|
311
263
|
},
|
|
312
264
|
delete: async (ctx) => {
|
|
313
|
-
const result = await service.deleteOne(collection, ctx.params.id, ctx.req
|
|
265
|
+
const result = await service.deleteOne(collection, ctx.params.id, ctx.req?.user?.id);
|
|
314
266
|
if (!result)
|
|
315
267
|
return ctx.status(404).json({ error: 'Not Found' });
|
|
316
268
|
ctx.json({ success: true, deleted: result });
|
package/dist/curd/crud.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../curd/crud.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../curd/crud.ts"],"names":[],"mappings":"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"}
|