dolphin-server-modules 1.5.1 → 1.5.2
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/DOLPHIN_MASTER_GUIDE_NEPALI.md +369 -478
- package/dist/adapters/mongoose/index.test.d.ts +1 -0
- package/dist/adapters/mongoose/index.test.js +103 -0
- package/dist/adapters/mongoose/index.test.js.map +1 -0
- package/dist/auth/auth.test.d.ts +1 -0
- package/dist/auth/auth.test.js +291 -0
- package/dist/auth/auth.test.js.map +1 -0
- package/dist/authController/authController.test.d.ts +1 -0
- package/dist/authController/authController.test.js +361 -0
- package/dist/authController/authController.test.js.map +1 -0
- package/dist/controller/controller.test.d.ts +1 -0
- package/dist/controller/controller.test.js +39 -0
- package/dist/controller/controller.test.js.map +1 -0
- package/dist/curd/crud.d.ts +2 -0
- package/dist/curd/crud.js +83 -24
- package/dist/curd/crud.js.map +1 -1
- package/dist/curd/crud.test.d.ts +1 -0
- package/dist/curd/crud.test.js +163 -0
- package/dist/curd/crud.test.js.map +1 -0
- package/dist/djson/djson.d.ts +42 -0
- package/dist/djson/djson.js +318 -0
- package/dist/djson/djson.js.map +1 -0
- package/dist/index.d.ts +1 -5
- package/dist/index.js +1 -12
- package/dist/index.js.map +1 -1
- package/dist/middleware/zod.test.d.ts +1 -0
- package/dist/middleware/zod.test.js +76 -0
- package/dist/middleware/zod.test.js.map +1 -0
- package/dist/realtime/core.d.ts +27 -28
- package/dist/realtime/core.js +297 -65
- package/dist/realtime/core.js.map +1 -1
- package/dist/realtime/index.d.ts +1 -1
- package/dist/realtime/index.js +1 -1
- package/dist/realtime/index.js.map +1 -1
- package/dist/realtime/plugins.d.ts +17 -4
- package/dist/realtime/plugins.js +300 -14
- package/dist/realtime/plugins.js.map +1 -1
- package/dist/realtime/realtime.test.d.ts +1 -0
- package/dist/realtime/realtime.test.js +271 -0
- package/dist/realtime/realtime.test.js.map +1 -0
- package/package.json +4 -2
- package/dist/router/router.d.ts +0 -26
- package/dist/router/router.js +0 -71
- package/dist/router/router.js.map +0 -1
- package/dist/server/server.d.ts +0 -23
- package/dist/server/server.js +0 -219
- package/dist/server/server.js.map +0 -1
package/dist/curd/crud.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// crud-lite.ts — World-class lightweight CRUD (2026 style, full-featured)
|
|
3
|
-
//
|
|
3
|
+
// Refactored with Mongoose Adapter compatibility
|
|
4
4
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6
6
|
};
|
|
@@ -8,11 +8,49 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
exports.createCRUD = createCRUD;
|
|
9
9
|
exports.createCrudController = createCrudController;
|
|
10
10
|
const node_crypto_1 = __importDefault(require("node:crypto"));
|
|
11
|
+
// ===== HELPER: ID Mapping for Mongoose Compatibility =====
|
|
12
|
+
const translateId = (query) => {
|
|
13
|
+
if (!query)
|
|
14
|
+
return query;
|
|
15
|
+
// Handle direct id field
|
|
16
|
+
if (query.id !== undefined) {
|
|
17
|
+
query._id = query.id;
|
|
18
|
+
delete query.id;
|
|
19
|
+
}
|
|
20
|
+
// Handle nested operators
|
|
21
|
+
const operators = ['$and', '$or'];
|
|
22
|
+
for (const op of operators) {
|
|
23
|
+
if (query[op] && Array.isArray(query[op])) {
|
|
24
|
+
query[op] = query[op].map((subQuery) => translateId(subQuery));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return query;
|
|
28
|
+
};
|
|
29
|
+
// ===== HELPER: Safe Method Call with Fallbacks =====
|
|
30
|
+
const safeUpdate = async (db, collection, filter, data) => {
|
|
31
|
+
const updateMethod = db.update || db.updateOne;
|
|
32
|
+
if (!updateMethod) {
|
|
33
|
+
throw new Error('Database adapter must implement update() or updateOne()');
|
|
34
|
+
}
|
|
35
|
+
return updateMethod.call(db, collection, translateId(filter), data);
|
|
36
|
+
};
|
|
37
|
+
const safeDelete = async (db, collection, filter) => {
|
|
38
|
+
const deleteMethod = db.delete || db.deleteOne;
|
|
39
|
+
if (!deleteMethod) {
|
|
40
|
+
throw new Error('Database adapter must implement delete() or deleteOne()');
|
|
41
|
+
}
|
|
42
|
+
return deleteMethod.call(db, collection, translateId(filter));
|
|
43
|
+
};
|
|
11
44
|
// ===== CRUD Factory =====
|
|
12
45
|
function createCRUD(db, options = {}) {
|
|
13
46
|
const { enforceOwnership = true, softDelete = false, defaultLimit = 100 } = options;
|
|
14
47
|
const generateId = () => node_crypto_1.default.randomBytes(12).toString('hex');
|
|
15
48
|
const applyOwnership = (query, userId) => {
|
|
49
|
+
// 🔒 Security: If enforceOwnership is true but userId is undefined, return empty filter
|
|
50
|
+
if (enforceOwnership && !userId) {
|
|
51
|
+
// This will cause queries to return empty results
|
|
52
|
+
return { _id: { $eq: null } };
|
|
53
|
+
}
|
|
16
54
|
if (!enforceOwnership || !userId)
|
|
17
55
|
return query;
|
|
18
56
|
return { ...query, userId: { $eq: userId } };
|
|
@@ -102,27 +140,33 @@ function createCRUD(db, options = {}) {
|
|
|
102
140
|
...(userId && { userId }),
|
|
103
141
|
...item
|
|
104
142
|
}));
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
results.push(await db.create(collection, doc));
|
|
108
|
-
}
|
|
143
|
+
// 🚀 Performance: Use Promise.all for parallel execution
|
|
144
|
+
const results = await Promise.all(docs.map(doc => db.create(collection, doc)));
|
|
109
145
|
return results;
|
|
110
146
|
},
|
|
111
147
|
async readOne(collection, id, userId) {
|
|
148
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return null immediately
|
|
149
|
+
if (enforceOwnership && !userId)
|
|
150
|
+
return null;
|
|
112
151
|
const filter = applyOwnership({ id }, userId);
|
|
113
|
-
const
|
|
152
|
+
const translatedFilter = translateId(filter);
|
|
153
|
+
const results = await db.read(collection, translatedFilter);
|
|
114
154
|
const filtered = applySoftDelete(results);
|
|
115
155
|
return filtered[0] || null;
|
|
116
156
|
},
|
|
117
157
|
async read(collection, filter = {}, options = {}, userId) {
|
|
158
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return empty array immediately
|
|
159
|
+
if (enforceOwnership && !userId)
|
|
160
|
+
return [];
|
|
118
161
|
const safeFilter = applyOwnership(filter, userId);
|
|
162
|
+
const translatedFilter = translateId(safeFilter);
|
|
119
163
|
let items = [];
|
|
120
164
|
if (db.advancedRead) {
|
|
121
|
-
items = await db.advancedRead(collection,
|
|
165
|
+
items = await db.advancedRead(collection, translatedFilter, options);
|
|
122
166
|
}
|
|
123
167
|
else {
|
|
124
168
|
const raw = await db.read(collection, {});
|
|
125
|
-
items = applySoftDelete(raw).filter(i => matchFilter(i,
|
|
169
|
+
items = applySoftDelete(raw).filter(i => matchFilter(i, translatedFilter));
|
|
126
170
|
}
|
|
127
171
|
if (options.sort)
|
|
128
172
|
items = applySort(items, options.sort);
|
|
@@ -134,66 +178,81 @@ function createCRUD(db, options = {}) {
|
|
|
134
178
|
return items;
|
|
135
179
|
},
|
|
136
180
|
async updateOne(collection, id, data, userId) {
|
|
181
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return null immediately
|
|
182
|
+
if (enforceOwnership && !userId)
|
|
183
|
+
return null;
|
|
137
184
|
const filter = applyOwnership({ id }, userId);
|
|
138
|
-
const results = await db.read(collection, filter);
|
|
185
|
+
const results = await db.read(collection, translateId(filter));
|
|
139
186
|
if (results.length === 0)
|
|
140
187
|
return null;
|
|
141
188
|
const updateData = { ...data, updatedAt: new Date().toISOString() };
|
|
142
|
-
await db
|
|
189
|
+
await safeUpdate(db, collection, filter, updateData);
|
|
143
190
|
return { ...results[0], ...updateData };
|
|
144
191
|
},
|
|
145
192
|
async updateMany(collection, filter, data, userId) {
|
|
193
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return 0 immediately
|
|
194
|
+
if (enforceOwnership && !userId)
|
|
195
|
+
return 0;
|
|
146
196
|
const safeFilter = applyOwnership(filter, userId);
|
|
147
197
|
const items = await this.read(collection, safeFilter, {}, userId);
|
|
148
198
|
const updateData = { ...data, updatedAt: new Date().toISOString() };
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
}
|
|
199
|
+
// 🚀 Performance: Use Promise.all for parallel execution
|
|
200
|
+
await Promise.all(items.map(item => safeUpdate(db, collection, { id: item.id }, updateData)));
|
|
152
201
|
return items.length;
|
|
153
202
|
},
|
|
154
203
|
async deleteOne(collection, id, userId) {
|
|
204
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return null immediately
|
|
205
|
+
if (enforceOwnership && !userId)
|
|
206
|
+
return null;
|
|
155
207
|
const filter = applyOwnership({ id }, userId);
|
|
156
|
-
const results = await db.read(collection, filter);
|
|
208
|
+
const results = await db.read(collection, translateId(filter));
|
|
157
209
|
if (results.length === 0)
|
|
158
210
|
return null;
|
|
159
211
|
if (softDelete) {
|
|
160
|
-
await db
|
|
212
|
+
await safeUpdate(db, collection, filter, { deletedAt: new Date().toISOString() });
|
|
161
213
|
return results[0];
|
|
162
214
|
}
|
|
163
215
|
else {
|
|
164
|
-
await db
|
|
216
|
+
await safeDelete(db, collection, filter);
|
|
165
217
|
return results[0];
|
|
166
218
|
}
|
|
167
219
|
},
|
|
168
220
|
async deleteMany(collection, filter, userId) {
|
|
221
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return 0 immediately
|
|
222
|
+
if (enforceOwnership && !userId)
|
|
223
|
+
return 0;
|
|
169
224
|
const safeFilter = applyOwnership(filter, userId);
|
|
170
225
|
const items = await this.read(collection, safeFilter, {}, userId);
|
|
171
226
|
if (softDelete) {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
}
|
|
227
|
+
// 🚀 Performance: Use Promise.all for parallel execution
|
|
228
|
+
await Promise.all(items.map(item => safeUpdate(db, collection, { id: item.id }, { deletedAt: new Date().toISOString() })));
|
|
175
229
|
}
|
|
176
230
|
else {
|
|
177
|
-
await db
|
|
231
|
+
await safeDelete(db, collection, translateId(safeFilter));
|
|
178
232
|
}
|
|
179
233
|
return items.length;
|
|
180
234
|
},
|
|
181
235
|
async restore(collection, id, userId) {
|
|
182
236
|
if (!softDelete)
|
|
183
237
|
throw new Error('Soft delete not enabled');
|
|
238
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return null immediately
|
|
239
|
+
if (enforceOwnership && !userId)
|
|
240
|
+
return null;
|
|
184
241
|
const filter = applyOwnership({ id, deletedAt: { $ne: null } }, userId);
|
|
185
|
-
const results = await db.read(collection, filter);
|
|
242
|
+
const results = await db.read(collection, translateId(filter));
|
|
186
243
|
if (results.length === 0)
|
|
187
244
|
return null;
|
|
188
|
-
// ✅ FIX: Set deletedAt to null to explicitly restore
|
|
189
245
|
const updateData = { ...results[0], deletedAt: null, updatedAt: new Date().toISOString() };
|
|
190
|
-
await db
|
|
246
|
+
await safeUpdate(db, collection, filter, updateData);
|
|
191
247
|
return this.readOne(collection, id, userId);
|
|
192
248
|
},
|
|
193
249
|
async count(collection, filter = {}, userId) {
|
|
250
|
+
// 🔒 Security: If enforceOwnership true & userId undefined, return 0 immediately
|
|
251
|
+
if (enforceOwnership && !userId)
|
|
252
|
+
return 0;
|
|
194
253
|
const safeFilter = applyOwnership(filter, userId);
|
|
195
254
|
const raw = await db.read(collection, {});
|
|
196
|
-
return applySoftDelete(raw).filter(i => matchFilter(i, safeFilter)).length;
|
|
255
|
+
return applySoftDelete(raw).filter(i => matchFilter(i, translateId(safeFilter))).length;
|
|
197
256
|
},
|
|
198
257
|
async exists(collection, filter, userId) {
|
|
199
258
|
const count = await this.count(collection, filter, userId);
|
package/dist/curd/crud.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../curd/crud.ts"],"names":[],"mappings":";AAAA,0EAA0E;AAC1E,4CAA4C;;;;;AA8C5C,gCA2NC;AAGD,oDAoDC;AA9TD,8DAAiC;AA2CjC,2BAA2B;AAC3B,SAAgB,UAAU,CACxB,EAAmB,EACnB,UAAuF,EAAE;IAEzF,MAAM,EAAE,gBAAgB,GAAG,IAAI,EAAE,UAAU,GAAG,KAAK,EAAE,YAAY,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC;IAEpF,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,qBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhE,MAAM,cAAc,GAAG,CAAyB,KAAqB,EAAE,MAAe,EAAkB,EAAE;QACxG,IAAI,CAAC,gBAAgB,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAC/C,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;IAC/C,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAyB,IAAS,EAAE,MAAsB,EAAW,EAAE;QACzF,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,GAAQ,EAAE,IAAS,EAAW,EAAE;YAC1D,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,GAAG,KAAK,SAAS,CAAC;YACjD,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,OAAO,GAAG,KAAK,IAAI,CAAC;YAClD,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAO,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC;YAC3C,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAO,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC;YAC3C,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;YACzC,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YAC5C,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;YACzC,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YAC5C,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC5E,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChF,IAAI,OAAO,IAAI,IAAI;gBAAE,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACxF,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,GAAS,MAAc,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAC;YAC1F,CAAC;iBAAM,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAC;YACzF,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,GAAG,EAAG,IAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;oBAAE,OAAO,KAAK,CAAC;YACxD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAAU,EAAO,EAAE;QAC1C,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,IAAwC,EAAE,EAAE;QACzE,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAI,CAAS,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,IAAI,GAAI,CAAS,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,IAAI,KAAK,IAAI;oBAAE,SAAS;gBAC5B,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,IAAgB,EAAE,MAAe;YAChE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG;gBACV,EAAE,EAAE,UAAU,EAAE;gBAChB,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,GAAG;gBACd,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC;gBACzB,GAAG,IAAI;aACH,CAAC;YACP,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACpC,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,KAAwB,EAAE,MAAe;YAC5E,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC9B,EAAE,EAAE,UAAU,EAAE;gBAChB,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,GAAG;gBACd,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC;gBACzB,GAAG,IAAI;aACR,CAAC,CAAQ,CAAC;YAEX,MAAM,OAAO,GAAQ,EAAE,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,UAAkB,EAAE,EAAU,EAAE,MAAe;YAC3D,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAC1C,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QAC7B,CAAC;QAED,KAAK,CAAC,IAAI,CACR,UAAkB,EAClB,SAAyB,EAAE,EAC3B,UAA6B,EAAE,EAC/B,MAAe;YAEf,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClD,IAAI,KAAK,GAAQ,EAAE,CAAC;YAEpB,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;gBACpB,KAAK,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;gBAC1C,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;YACvE,CAAC;YAED,IAAI,OAAO,CAAC,IAAI;gBAAE,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAClD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;gBAClC,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;gBACpD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClC,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,EAAU,EAAE,IAAgB,EAAE,MAAe;YAC/E,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAClD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEtC,MAAM,UAAU,GAAG,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YACpE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;YAChD,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,EAAO,CAAC;QAC/C,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,MAAsB,EAAE,IAAgB,EAAE,MAAe;YAC5F,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAClE,MAAM,UAAU,GAAG,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YAEpE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,EAAU,EAAE,MAAe;YAC7D,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAClD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEtC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBAC7E,OAAO,OAAO,CAAC,CAAC,CAAM,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBACpC,OAAO,OAAO,CAAC,CAAC,CAAM,CAAC;YACzB,CAAC;QACH,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,MAAsB,EAAE,MAAe;YAC1E,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAElE,IAAI,UAAU,EAAE,CAAC;gBACf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1C,CAAC;YACD,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,UAAkB,EAAE,EAAU,EAAE,MAAe;YAC3D,IAAI,CAAC,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YACxE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAClD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEtC,qDAAqD;YACrD,MAAM,UAAU,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YAC3F,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,CAAC,KAAK,CAAC,UAAkB,EAAE,SAAyB,EAAE,EAAE,MAAe;YAC1E,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC1C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7E,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,MAAsB,EAAE,MAAe;YACtE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3D,OAAO,KAAK,GAAG,CAAC,CAAC;QACnB,CAAC;QAED,KAAK,CAAC,QAAQ,CACZ,UAAkB,EAClB,SAAyB,EAAE,EAC3B,OAAe,CAAC,EAChB,QAAgB,YAAY,EAC5B,MAAe;YAEf,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAE3D,OAAO;gBACL,KAAK;gBACL,KAAK;gBACL,IAAI;gBACJ,KAAK;gBACL,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACpC,OAAO,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK;gBAC7B,OAAO,EAAE,IAAI,GAAG,CAAC;aAClB,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,gDAAgD;AAChD,SAAgB,oBAAoB,CAClC,kBAAuB,EACvB,cAAuB;IAEvB,IAAI,OAAwB,CAAC;IAC7B,IAAI,UAAkB,CAAC;IAEvB,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,GAAG,kBAAkB,CAAC;QAC7B,UAAU,GAAG,cAAc,CAAC;IAC9B,CAAC;SAAM,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,OAAO,IAAI,kBAAkB,CAAC,UAAU,EAAE,CAAC;QAC7F,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC;QACrC,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,wGAAwG,CAAC,CAAC;IAC5H,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAI,OAAO,CAAC,CAAC;IAEvC,OAAO;QACL,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACzB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;YAChD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE;gBACtD,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC1C,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;aAC9C,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClF,IAAI,CAAC,MAAM;gBAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5E,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9F,IAAI,CAAC,MAAM;gBAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpF,IAAI,CAAC,MAAM;gBAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/C,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../curd/crud.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const crud_1 = require("./crud");
|
|
4
|
+
class MockDB {
|
|
5
|
+
data = {};
|
|
6
|
+
async createUser() { return {}; }
|
|
7
|
+
async findUserByEmail() { return {}; }
|
|
8
|
+
async findUserById() { return {}; }
|
|
9
|
+
async updateUser() { return {}; }
|
|
10
|
+
async saveRefreshToken() { }
|
|
11
|
+
async findRefreshToken() { }
|
|
12
|
+
async deleteRefreshToken() { }
|
|
13
|
+
async create(collection, doc) {
|
|
14
|
+
if (!this.data[collection])
|
|
15
|
+
this.data[collection] = [];
|
|
16
|
+
this.data[collection].push(doc);
|
|
17
|
+
return doc;
|
|
18
|
+
}
|
|
19
|
+
async read(collection, query) {
|
|
20
|
+
return this.data[collection] || [];
|
|
21
|
+
}
|
|
22
|
+
async update(collection, query, data) {
|
|
23
|
+
if (!this.data[collection])
|
|
24
|
+
return null;
|
|
25
|
+
const docIndex = this.data[collection].findIndex(d => d.id === query.id);
|
|
26
|
+
if (docIndex === -1 && query.id)
|
|
27
|
+
return null;
|
|
28
|
+
// For many
|
|
29
|
+
for (let i = 0; i < this.data[collection].length; i++) {
|
|
30
|
+
if (!query.id || this.data[collection][i].id === query.id) {
|
|
31
|
+
this.data[collection][i] = { ...this.data[collection][i], ...data };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return data;
|
|
35
|
+
}
|
|
36
|
+
async delete(collection, query) {
|
|
37
|
+
if (!this.data[collection])
|
|
38
|
+
return null;
|
|
39
|
+
// Just simple mock for id match or flush
|
|
40
|
+
if (query.id) {
|
|
41
|
+
this.data[collection] = this.data[collection].filter(d => d.id !== query.id?.['$eq'] && d.id !== query.id);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
this.data[collection] = [];
|
|
45
|
+
}
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
describe('CRUD Factory', () => {
|
|
50
|
+
let db;
|
|
51
|
+
beforeEach(() => {
|
|
52
|
+
db = new MockDB();
|
|
53
|
+
});
|
|
54
|
+
it('creates and reads documents with softdelete enabled', async () => {
|
|
55
|
+
const crud = (0, crud_1.createCRUD)(db, { softDelete: true, enforceOwnership: false });
|
|
56
|
+
const user = 'user_1';
|
|
57
|
+
const doc1 = await crud.create('posts', { title: 'Hello', rating: 5 }, user);
|
|
58
|
+
expect(doc1.title).toBe('Hello');
|
|
59
|
+
expect(doc1.userId).toBe(user);
|
|
60
|
+
const doc2 = await crud.create('posts', { title: 'World', rating: 4 }, user);
|
|
61
|
+
let list = await crud.read('posts');
|
|
62
|
+
expect(list.length).toBe(2);
|
|
63
|
+
// Delete one
|
|
64
|
+
await crud.deleteOne('posts', doc1.id);
|
|
65
|
+
list = await crud.read('posts');
|
|
66
|
+
expect(list.length).toBe(1); // One is soft deleted
|
|
67
|
+
// Restore
|
|
68
|
+
await crud.restore('posts', doc1.id);
|
|
69
|
+
list = await crud.read('posts');
|
|
70
|
+
expect(list.length).toBe(2); // Restored
|
|
71
|
+
});
|
|
72
|
+
it('applies complex filters correctly', async () => {
|
|
73
|
+
const crud = (0, crud_1.createCRUD)(db, { enforceOwnership: false });
|
|
74
|
+
await crud.createMany('items', [
|
|
75
|
+
{ category: 'A', price: 10 },
|
|
76
|
+
{ category: 'A', price: 20 },
|
|
77
|
+
{ category: 'B', price: 15 },
|
|
78
|
+
{ category: 'B', price: 5 }
|
|
79
|
+
]);
|
|
80
|
+
const res1 = await crud.read('items', { category: { $in: ['A'] } });
|
|
81
|
+
expect(res1.length).toBe(2);
|
|
82
|
+
const res2 = await crud.read('items', { price: { $gt: 10 } });
|
|
83
|
+
expect(res2.length).toBe(2);
|
|
84
|
+
const res3 = await crud.read('items', {
|
|
85
|
+
$or: [
|
|
86
|
+
{ price: { $lte: 5 } },
|
|
87
|
+
{ category: 'A' }
|
|
88
|
+
]
|
|
89
|
+
});
|
|
90
|
+
expect(res3.length).toBe(3); // A items + price<=5
|
|
91
|
+
});
|
|
92
|
+
it('supports pagination and sorting', async () => {
|
|
93
|
+
const crud = (0, crud_1.createCRUD)(db, { enforceOwnership: false });
|
|
94
|
+
await crud.createMany('scores', [
|
|
95
|
+
{ p: 10 }, { p: 50 }, { p: 20 }, { p: 30 }
|
|
96
|
+
]);
|
|
97
|
+
const page1 = await crud.paginate('scores', {}, 1, 2);
|
|
98
|
+
expect(page1.items.length).toBe(2);
|
|
99
|
+
expect(page1.total).toBe(4);
|
|
100
|
+
expect(page1.totalPages).toBe(2);
|
|
101
|
+
expect(page1.hasNext).toBe(true);
|
|
102
|
+
const sorted = await crud.read('scores', {}, { sort: { p: 'desc' } });
|
|
103
|
+
expect(sorted[0].p).toBe(50);
|
|
104
|
+
expect(sorted[3].p).toBe(10);
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
describe('CRUD Controller', () => {
|
|
108
|
+
let db;
|
|
109
|
+
beforeEach(() => {
|
|
110
|
+
db = new MockDB();
|
|
111
|
+
});
|
|
112
|
+
const mockCtx = (overrides = {}) => ({
|
|
113
|
+
query: {},
|
|
114
|
+
params: {},
|
|
115
|
+
body: {},
|
|
116
|
+
req: { user: { id: 'user_1' } },
|
|
117
|
+
json: jest.fn(),
|
|
118
|
+
status: jest.fn().mockReturnThis(),
|
|
119
|
+
...overrides
|
|
120
|
+
});
|
|
121
|
+
it('handles getAll with query filters', async () => {
|
|
122
|
+
const adapter = new MockDB();
|
|
123
|
+
await adapter.create('posts', { id: '1', title: 'A', userId: 'user_1' });
|
|
124
|
+
await adapter.create('posts', { id: '2', title: 'B', userId: 'user_1' });
|
|
125
|
+
// Model metadata format
|
|
126
|
+
const model = { adapter, collection: 'posts' };
|
|
127
|
+
const controller = require('./crud').createCrudController(model);
|
|
128
|
+
const ctx = mockCtx({ query: { title: 'A' } });
|
|
129
|
+
await controller.getAll(ctx);
|
|
130
|
+
expect(ctx.json).toHaveBeenCalledWith(expect.arrayContaining([expect.objectContaining({ title: 'A' })]));
|
|
131
|
+
expect(ctx.json.mock.calls[0][0].length).toBe(1);
|
|
132
|
+
});
|
|
133
|
+
it('handles create and returns 201', async () => {
|
|
134
|
+
const adapter = new MockDB();
|
|
135
|
+
const model = { adapter, collection: 'items' };
|
|
136
|
+
const controller = require('./crud').createCrudController(model);
|
|
137
|
+
const ctx = mockCtx({ body: { name: 'New Item' } });
|
|
138
|
+
await controller.create(ctx);
|
|
139
|
+
expect(ctx.status).toHaveBeenCalledWith(201);
|
|
140
|
+
expect(ctx.json).toHaveBeenCalledWith(expect.objectContaining({ name: 'New Item', userId: 'user_1' }));
|
|
141
|
+
});
|
|
142
|
+
it('handles getOne and returns 404 if not found', async () => {
|
|
143
|
+
const adapter = new MockDB();
|
|
144
|
+
const model = { adapter, collection: 'items' };
|
|
145
|
+
const controller = require('./crud').createCrudController(model);
|
|
146
|
+
const ctx = mockCtx({ params: { id: 'nonexistent' } });
|
|
147
|
+
await controller.getOne(ctx);
|
|
148
|
+
expect(ctx.status).toHaveBeenCalledWith(404);
|
|
149
|
+
expect(ctx.json).toHaveBeenCalledWith({ error: 'Not Found' });
|
|
150
|
+
});
|
|
151
|
+
it('handles delete and returns success', async () => {
|
|
152
|
+
const adapter = new MockDB();
|
|
153
|
+
const doc = await adapter.create('items', { id: '123', userId: 'user_1' });
|
|
154
|
+
const model = { adapter, collection: 'items' };
|
|
155
|
+
const controller = require('./crud').createCrudController(model);
|
|
156
|
+
const ctx = mockCtx({ params: { id: '123' } });
|
|
157
|
+
await controller.delete(ctx);
|
|
158
|
+
expect(ctx.json).toHaveBeenCalledWith(expect.objectContaining({ success: true }));
|
|
159
|
+
const remaining = await adapter.read('items', { id: '123' });
|
|
160
|
+
expect(remaining.length).toBe(0);
|
|
161
|
+
});
|
|
162
|
+
});
|
|
163
|
+
//# sourceMappingURL=crud.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crud.test.js","sourceRoot":"","sources":["../../curd/crud.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export type InputFormat = 'json' | 'querystring' | 'keyvalue' | 'hex' | 'base64' | 'plain';
|
|
2
|
+
export type OutputFormat = 'json' | 'querystring' | 'keyvalue' | 'hex' | 'base64' | 'buffer';
|
|
3
|
+
export interface DJSONOptions {
|
|
4
|
+
strict?: boolean;
|
|
5
|
+
autoDetect?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface ParseResult {
|
|
8
|
+
success: boolean;
|
|
9
|
+
data: any;
|
|
10
|
+
format?: InputFormat;
|
|
11
|
+
error?: string;
|
|
12
|
+
timestamp: number;
|
|
13
|
+
}
|
|
14
|
+
export declare class DJSON {
|
|
15
|
+
private static opts;
|
|
16
|
+
static configure(o: Partial<DJSONOptions>): void;
|
|
17
|
+
static parse(data: any, format?: InputFormat): any;
|
|
18
|
+
static parseSafe(data: any, format?: InputFormat): ParseResult;
|
|
19
|
+
private static autoDetect;
|
|
20
|
+
private static parseWithFormat;
|
|
21
|
+
private static parseJSON;
|
|
22
|
+
private static parseQS;
|
|
23
|
+
private static parseKV;
|
|
24
|
+
private static parseHex;
|
|
25
|
+
private static parseB64;
|
|
26
|
+
private static parseValue;
|
|
27
|
+
static encode(data: any, fmt?: OutputFormat): string | Buffer;
|
|
28
|
+
private static toQS;
|
|
29
|
+
private static toKV;
|
|
30
|
+
private static toHex;
|
|
31
|
+
private static toB64;
|
|
32
|
+
private static toBuffer;
|
|
33
|
+
}
|
|
34
|
+
export declare const djson: (data: any, format?: InputFormat) => any;
|
|
35
|
+
export declare const djsonSafe: (data: any, format?: InputFormat) => ParseResult;
|
|
36
|
+
export declare const dencode: (data: any, format?: OutputFormat) => string | Buffer<ArrayBufferLike>;
|
|
37
|
+
export declare const toBuffer: (data: any) => Buffer;
|
|
38
|
+
export declare const toQueryString: (data: any) => string;
|
|
39
|
+
export declare const toKeyValue: (data: any) => string;
|
|
40
|
+
export declare const toHex: (data: any) => string;
|
|
41
|
+
export declare const toBase64: (data: any) => string;
|
|
42
|
+
export default DJSON;
|