nuudel-main 1.0.85 → 1.0.86
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.
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import type { FastifyInstance } from 'fastify';
|
|
2
|
+
export declare const nextPlugin: (fastify: FastifyInstance, nextOptions: any, next: (err?: Error) => void) => Promise<void>;
|
|
@@ -1,38 +1,51 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
2
13
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
15
|
};
|
|
5
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
17
|
exports.nextPlugin = void 0;
|
|
7
18
|
const next_1 = __importDefault(require("next"));
|
|
8
|
-
const nextPlugin = async (fastify,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
delete options.noServeAssets;
|
|
13
|
-
}
|
|
14
|
-
const app = (0, next_1.default)(Object.assign({}, { dev: process.env.NODE_ENV !== 'production' }, options));
|
|
19
|
+
const nextPlugin = async (fastify, nextOptions = {}, next) => {
|
|
20
|
+
var _a, _b, _c;
|
|
21
|
+
const { underPressure, noServeAssets = false, basePath = '' } = nextOptions, options = __rest(nextOptions, ["underPressure", "noServeAssets", "basePath"]);
|
|
22
|
+
const app = (0, next_1.default)(Object.assign({ dev: 'production' !== ((_a = process === null || process === void 0 ? void 0 : process.env) === null || _a === void 0 ? void 0 : _a.NODE_ENV) }, options));
|
|
15
23
|
const handleNextRequests = app.getRequestHandler();
|
|
16
|
-
app
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
24
|
+
await app.prepare();
|
|
25
|
+
fastify.decorate('next', route.bind(fastify));
|
|
26
|
+
fastify.decorateReply('nextRender', render);
|
|
27
|
+
fastify.decorateReply('nextRenderError', renderError);
|
|
28
|
+
fastify.get('/*', async (req, reply) => {
|
|
29
|
+
await handleNextRequests(req.raw, reply.raw);
|
|
30
|
+
reply.sent = true;
|
|
31
|
+
});
|
|
32
|
+
fastify.addHook('onClose', function () {
|
|
33
|
+
return app.close();
|
|
34
|
+
});
|
|
35
|
+
if (!noServeAssets) {
|
|
36
|
+
const basepath = basePath || ((_c = (_b = app === null || app === void 0 ? void 0 : app.server) === null || _b === void 0 ? void 0 : _b.nextConfig) === null || _c === void 0 ? void 0 : _c.basePath) || '';
|
|
37
|
+
const nextAssetsPath = `${basepath}/_next/*`;
|
|
38
|
+
fastify.after(() => {
|
|
39
|
+
fastify.next(nextAssetsPath);
|
|
25
40
|
});
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
fastify.after(() => {
|
|
30
|
-
fastify.next(nextAssetsPath);
|
|
31
|
-
});
|
|
32
|
-
}
|
|
41
|
+
}
|
|
42
|
+
fastify.log.info('next registered');
|
|
43
|
+
try {
|
|
33
44
|
next();
|
|
34
|
-
}
|
|
35
|
-
|
|
45
|
+
}
|
|
46
|
+
catch (err) {
|
|
47
|
+
next(err);
|
|
48
|
+
}
|
|
36
49
|
function route(path, opts, callback) {
|
|
37
50
|
opts = opts || {
|
|
38
51
|
logLevel: options.logLevel,
|
|
@@ -83,4 +96,4 @@ const nextPlugin = async (fastify, options, next) => {
|
|
|
83
96
|
}
|
|
84
97
|
};
|
|
85
98
|
exports.nextPlugin = nextPlugin;
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV4dFBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvcGx1Z2luL25leHQvTmV4dFBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUF3QjtBQUdqQixNQUFNLFVBQVUsR0FBRyxLQUFLLEVBQzdCLE9BQXdCLEVBQ3hCLGNBQW1CLEVBQUUsRUFDckIsSUFBMkIsRUFDM0IsRUFBRTs7SUFDRixNQUFNLEVBQ0osYUFBYSxFQUNiLGFBQWEsR0FBRyxLQUFLLEVBQ3JCLFFBQVEsR0FBRyxFQUFFLEtBRVgsV0FBVyxFQURWLE9BQU8sVUFDUixXQUFXLEVBTFQsOENBS0wsQ0FBYyxDQUFDO0lBQ2hCLE1BQU0sR0FBRyxHQUFHLElBQUEsY0FBSSxrQkFDZCxHQUFHLEVBQUUsWUFBWSxNQUFLLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEdBQUcsMENBQUUsUUFBUSxDQUFBLElBQ3pDLE9BQU8sRUFDVixDQUFDO0lBUUgsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNuRCxNQUFNLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUVwQixPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDOUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUV0RCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBbUIsRUFBRSxLQUFtQixFQUFFLEVBQUU7UUFDbkUsTUFBTSxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1FBQ3pCLE9BQU8sR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLGFBQWEsRUFBRTtRQUNsQixNQUFNLFFBQVEsR0FDWixRQUFRLEtBQUksTUFBQSxNQUFDLEdBQVcsYUFBWCxHQUFHLHVCQUFILEdBQUcsQ0FBVSxNQUFNLDBDQUFFLFVBQVUsMENBQUUsUUFBUSxDQUFBLElBQUksRUFBRSxDQUFDO1FBQy9ELE1BQU0sY0FBYyxHQUFHLEdBQUcsUUFBUSxVQUFVLENBQUM7UUFDN0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFDaEIsT0FBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztLQUNKO0lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUVwQyxJQUFJO1FBQ0YsSUFBSSxFQUFFLENBQUM7S0FDUjtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ1g7SUFFRCxTQUFTLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVE7UUFDakMsSUFBSSxHQUFHLElBQUksSUFBSTtZQUNiLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtTQUMzQixDQUFDO1FBQ0YsSUFBSSxPQUFPLElBQUksS0FBSyxVQUFVLEVBQUU7WUFDOUIsUUFBUSxHQUFHLElBQUksQ0FBQztZQUNoQixJQUFJLEdBQUc7Z0JBQ0wsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO2FBQzNCLENBQUM7U0FDSDtRQUVELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWhELFNBQVMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLO1lBQ3pCLEtBQUssTUFBTSxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUNwRCxLQUFLLENBQUMsVUFBVSxFQUFFLENBQ25CLEVBQUU7Z0JBQ0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQzlDO1lBRUQsSUFBSSxRQUFRLEVBQUU7Z0JBQ1osT0FBTyxRQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUNsQztZQUVELE9BQU8sa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDdEQsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssVUFBVSxNQUFNLENBQUMsSUFBSTtRQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbkIsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQztRQUcxQixLQUFLLE1BQU0sQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FDcEQsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUNuQixFQUFFO1lBRUQsSUFBSSxVQUFVLEtBQUssZ0JBQWdCLElBQUksV0FBVyxLQUFLLFNBQVMsRUFBRTtnQkFDaEUsU0FBUzthQUNWO1lBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQzlDO1FBRUQsTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlELEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxLQUFLLFVBQVUsV0FBVyxDQUFDLEdBQUc7UUFDNUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ25CLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFHMUIsS0FBSyxNQUFNLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQ3BELEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FDbkIsRUFBRTtZQUVELElBQUksVUFBVSxLQUFLLGdCQUFnQixJQUFJLFdBQVcsS0FBSyxTQUFTLEVBQUU7Z0JBQ2hFLFNBQVM7YUFDVjtZQUVELEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsQ0FBQztTQUM5QztRQUVELE1BQU0sR0FBRyxDQUFDLFdBQVcsQ0FDbkIsR0FBRyxFQUNILE9BQU8sQ0FBQyxHQUFHLEVBQ1gsS0FBSyxDQUFDLEdBQUcsRUFDVCxPQUFPLENBQUMsR0FBRyxFQUNYLE9BQU8sQ0FBQyxLQUFLLENBQ2QsQ0FBQztRQUVGLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7QUFDSCxDQUFDLENBQUM7QUFwSVcsUUFBQSxVQUFVLGNBb0lyQiJ9
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import type { FastifyInstance } from 'fastify';
|
|
2
|
+
export declare const nextPlugin: (fastify: FastifyInstance, nextOptions: any, next: (err?: Error) => void) => Promise<void>;
|
|
@@ -1,32 +1,36 @@
|
|
|
1
1
|
import Next from 'next';
|
|
2
|
-
export const nextPlugin = async (fastify,
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
const app = Next(Object.assign({}, { dev: process.env.NODE_ENV !== 'production' }, options));
|
|
2
|
+
export const nextPlugin = async (fastify, nextOptions = {}, next) => {
|
|
3
|
+
const { underPressure, noServeAssets = false, basePath = '', ...options } = nextOptions;
|
|
4
|
+
const app = Next({
|
|
5
|
+
dev: 'production' !== process?.env?.NODE_ENV,
|
|
6
|
+
...options,
|
|
7
|
+
});
|
|
9
8
|
const handleNextRequests = app.getRequestHandler();
|
|
10
|
-
app
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
9
|
+
await app.prepare();
|
|
10
|
+
fastify.decorate('next', route.bind(fastify));
|
|
11
|
+
fastify.decorateReply('nextRender', render);
|
|
12
|
+
fastify.decorateReply('nextRenderError', renderError);
|
|
13
|
+
fastify.get('/*', async (req, reply) => {
|
|
14
|
+
await handleNextRequests(req.raw, reply.raw);
|
|
15
|
+
reply.sent = true;
|
|
16
|
+
});
|
|
17
|
+
fastify.addHook('onClose', function () {
|
|
18
|
+
return app.close();
|
|
19
|
+
});
|
|
20
|
+
if (!noServeAssets) {
|
|
21
|
+
const basepath = basePath || app?.server?.nextConfig?.basePath || '';
|
|
22
|
+
const nextAssetsPath = `${basepath}/_next/*`;
|
|
23
|
+
fastify.after(() => {
|
|
24
|
+
fastify.next(nextAssetsPath);
|
|
19
25
|
});
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
fastify.after(() => {
|
|
24
|
-
fastify.next(nextAssetsPath);
|
|
25
|
-
});
|
|
26
|
-
}
|
|
26
|
+
}
|
|
27
|
+
fastify.log.info('next registered');
|
|
28
|
+
try {
|
|
27
29
|
next();
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
next(err);
|
|
33
|
+
}
|
|
30
34
|
function route(path, opts, callback) {
|
|
31
35
|
opts = opts || {
|
|
32
36
|
logLevel: options.logLevel,
|
|
@@ -76,4 +80,4 @@ export const nextPlugin = async (fastify, options, next) => {
|
|
|
76
80
|
reply.sent = true;
|
|
77
81
|
}
|
|
78
82
|
};
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV4dFBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvcGx1Z2luL25leHQvTmV4dFBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFHeEIsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLEtBQUssRUFDN0IsT0FBd0IsRUFDeEIsY0FBbUIsRUFBRSxFQUNyQixJQUEyQixFQUMzQixFQUFFO0lBQ0YsTUFBTSxFQUNKLGFBQWEsRUFDYixhQUFhLEdBQUcsS0FBSyxFQUNyQixRQUFRLEdBQUcsRUFBRSxFQUNiLEdBQUcsT0FBTyxFQUNYLEdBQUcsV0FBVyxDQUFDO0lBQ2hCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQztRQUNmLEdBQUcsRUFBRSxZQUFZLEtBQUssT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRO1FBQzVDLEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztJQVFILE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDbkQsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFcEIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzlDLE9BQU8sQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVDLE9BQU8sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFFdEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQW1CLEVBQUUsS0FBbUIsRUFBRSxFQUFFO1FBQ25FLE1BQU0sa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0MsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJ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
|