remult 0.23.5 → 0.23.6
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/esm/package.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { readBody } from 'h3';
|
|
2
|
+
import { createRemultServer, } from './server/index.js';
|
|
3
|
+
export function remultNuxt(options) {
|
|
4
|
+
const result = createRemultServer(options, {
|
|
5
|
+
buildGenericRequestInfo: (event) => {
|
|
6
|
+
return {
|
|
7
|
+
method: event.node.req.method,
|
|
8
|
+
url: event.node.req.url,
|
|
9
|
+
on: (a, b) => event.node.req.on('close', () => {
|
|
10
|
+
b();
|
|
11
|
+
}),
|
|
12
|
+
};
|
|
13
|
+
},
|
|
14
|
+
getRequestBody: async (event) => await readBody(event),
|
|
15
|
+
});
|
|
16
|
+
const handler = async (event) => {
|
|
17
|
+
let sse = false;
|
|
18
|
+
const response = {
|
|
19
|
+
end: () => { },
|
|
20
|
+
json: () => { },
|
|
21
|
+
status: () => {
|
|
22
|
+
return response;
|
|
23
|
+
},
|
|
24
|
+
write: (what) => {
|
|
25
|
+
event.node.res.write(what);
|
|
26
|
+
},
|
|
27
|
+
writeHead: (status, headers) => {
|
|
28
|
+
sse = true;
|
|
29
|
+
event.node.res.writeHead(status, headers);
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
const r = await result.handle(event, response);
|
|
33
|
+
if (sse) {
|
|
34
|
+
await new Promise((resolve) => {
|
|
35
|
+
event.node.req.on('close', () => resolve({}));
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if (r) {
|
|
39
|
+
return r.data;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
return Object.assign(handler, {
|
|
43
|
+
getRemult: (req) => result.getRemult(req),
|
|
44
|
+
openApiDoc: (options) => result.openApiDoc(options),
|
|
45
|
+
withRemult(event, what) {
|
|
46
|
+
return result.withRemultAsync(event, what);
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
}
|
|
@@ -176,11 +176,21 @@ export class RepositoryImplementation {
|
|
|
176
176
|
return x;
|
|
177
177
|
}
|
|
178
178
|
async delete(item) {
|
|
179
|
+
const ref = getEntityRef(item, false);
|
|
180
|
+
if (ref)
|
|
181
|
+
return ref.delete();
|
|
179
182
|
if (typeof item === 'string' || typeof item === 'number')
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
183
|
+
if (this.dataProvider.isProxy)
|
|
184
|
+
return this.edp.delete(item);
|
|
185
|
+
else {
|
|
186
|
+
let ref2 = await this.findId(item);
|
|
187
|
+
if (ref2)
|
|
188
|
+
return await getEntityRef(ref2).delete();
|
|
189
|
+
}
|
|
190
|
+
let ref2 = this.getRefForExistingRow(item, undefined);
|
|
191
|
+
if (!this.dataProvider.isProxy)
|
|
192
|
+
await ref2.reload();
|
|
193
|
+
return ref2.delete();
|
|
184
194
|
}
|
|
185
195
|
async insert(entity) {
|
|
186
196
|
if (Array.isArray(entity)) {
|
package/package.json
CHANGED
package/remult-nuxt.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { H3Event } from 'h3';
|
|
2
|
+
import { RemultServerCore, RemultServerOptions, RemultServer } from './server/index.js';
|
|
3
|
+
export declare function remultNuxt(options: RemultServerOptions<H3Event>): RemultNuxtServer;
|
|
4
|
+
export type RemultNuxtServer = RemultServerCore<H3Event> & ((event: H3Event) => Promise<any>) & {
|
|
5
|
+
withRemult: RemultServer<H3Event>['withRemultAsync'];
|
|
6
|
+
};
|
package/remult-nuxt.js
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.remultNuxt = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var h3_1 = require("h3");
|
|
6
|
+
var index_js_1 = require("./server/index.js");
|
|
7
|
+
function remultNuxt(options) {
|
|
8
|
+
var _this = this;
|
|
9
|
+
var result = (0, index_js_1.createRemultServer)(options, {
|
|
10
|
+
buildGenericRequestInfo: function (event) {
|
|
11
|
+
return {
|
|
12
|
+
method: event.node.req.method,
|
|
13
|
+
url: event.node.req.url,
|
|
14
|
+
on: function (a, b) {
|
|
15
|
+
return event.node.req.on('close', function () {
|
|
16
|
+
b();
|
|
17
|
+
});
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
},
|
|
21
|
+
getRequestBody: function (event) { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
|
|
22
|
+
switch (_a.label) {
|
|
23
|
+
case 0: return [4 /*yield*/, (0, h3_1.readBody)(event)];
|
|
24
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
25
|
+
}
|
|
26
|
+
}); }); },
|
|
27
|
+
});
|
|
28
|
+
var handler = function (event) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
29
|
+
var sse, response, r;
|
|
30
|
+
return tslib_1.__generator(this, function (_a) {
|
|
31
|
+
switch (_a.label) {
|
|
32
|
+
case 0:
|
|
33
|
+
sse = false;
|
|
34
|
+
response = {
|
|
35
|
+
end: function () { },
|
|
36
|
+
json: function () { },
|
|
37
|
+
status: function () {
|
|
38
|
+
return response;
|
|
39
|
+
},
|
|
40
|
+
write: function (what) {
|
|
41
|
+
event.node.res.write(what);
|
|
42
|
+
},
|
|
43
|
+
writeHead: function (status, headers) {
|
|
44
|
+
sse = true;
|
|
45
|
+
event.node.res.writeHead(status, headers);
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
return [4 /*yield*/, result.handle(event, response)];
|
|
49
|
+
case 1:
|
|
50
|
+
r = _a.sent();
|
|
51
|
+
if (!sse) return [3 /*break*/, 3];
|
|
52
|
+
return [4 /*yield*/, new Promise(function (resolve) {
|
|
53
|
+
event.node.req.on('close', function () { return resolve({}); });
|
|
54
|
+
})];
|
|
55
|
+
case 2:
|
|
56
|
+
_a.sent();
|
|
57
|
+
_a.label = 3;
|
|
58
|
+
case 3:
|
|
59
|
+
if (r) {
|
|
60
|
+
return [2 /*return*/, r.data];
|
|
61
|
+
}
|
|
62
|
+
return [2 /*return*/];
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}); };
|
|
66
|
+
return Object.assign(handler, {
|
|
67
|
+
getRemult: function (req) { return result.getRemult(req); },
|
|
68
|
+
openApiDoc: function (options) { return result.openApiDoc(options); },
|
|
69
|
+
withRemult: function (event, what) {
|
|
70
|
+
return result.withRemultAsync(event, what);
|
|
71
|
+
},
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
exports.remultNuxt = remultNuxt;
|
|
@@ -233,13 +233,31 @@ var RepositoryImplementation = /** @class */ (function () {
|
|
|
233
233
|
};
|
|
234
234
|
RepositoryImplementation.prototype.delete = function (item) {
|
|
235
235
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
236
|
+
var ref, ref2_1, ref2;
|
|
236
237
|
return tslib_1.__generator(this, function (_a) {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
238
|
+
switch (_a.label) {
|
|
239
|
+
case 0:
|
|
240
|
+
ref = (0, getEntityRef_1.getEntityRef)(item, false);
|
|
241
|
+
if (ref)
|
|
242
|
+
return [2 /*return*/, ref.delete()];
|
|
243
|
+
if (!(typeof item === 'string' || typeof item === 'number')) return [3 /*break*/, 4];
|
|
244
|
+
if (!this.dataProvider.isProxy) return [3 /*break*/, 1];
|
|
245
|
+
return [2 /*return*/, this.edp.delete(item)];
|
|
246
|
+
case 1: return [4 /*yield*/, this.findId(item)];
|
|
247
|
+
case 2:
|
|
248
|
+
ref2_1 = _a.sent();
|
|
249
|
+
if (!ref2_1) return [3 /*break*/, 4];
|
|
250
|
+
return [4 /*yield*/, (0, getEntityRef_1.getEntityRef)(ref2_1).delete()];
|
|
251
|
+
case 3: return [2 /*return*/, _a.sent()];
|
|
252
|
+
case 4:
|
|
253
|
+
ref2 = this.getRefForExistingRow(item, undefined);
|
|
254
|
+
if (!!this.dataProvider.isProxy) return [3 /*break*/, 6];
|
|
255
|
+
return [4 /*yield*/, ref2.reload()];
|
|
256
|
+
case 5:
|
|
257
|
+
_a.sent();
|
|
258
|
+
_a.label = 6;
|
|
259
|
+
case 6: return [2 /*return*/, ref2.delete()];
|
|
241
260
|
}
|
|
242
|
-
return [2 /*return*/];
|
|
243
261
|
});
|
|
244
262
|
});
|
|
245
263
|
};
|