@inertiajs/core 2.3.16 → 3.0.0-beta.1
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/index.js +1016 -298
- package/dist/index.js.map +4 -4
- package/dist/server.js +277 -56
- package/dist/server.js.map +4 -4
- package/dist/ssrErrors.js +197 -0
- package/dist/ssrErrors.js.map +7 -0
- package/package.json +29 -15
- package/types/axiosHttpClient.d.ts +16 -0
- package/types/dialog.d.ts +4 -0
- package/types/domUtils.d.ts +1 -1
- package/types/events.d.ts +2 -2
- package/types/http.d.ts +38 -0
- package/types/httpErrors.d.ts +16 -0
- package/types/httpHandlers.d.ts +15 -0
- package/types/index.d.ts +9 -2
- package/types/layout.d.ts +38 -0
- package/types/page.d.ts +4 -1
- package/types/progress.d.ts +2 -8
- package/types/queryString.d.ts +13 -0
- package/types/request.d.ts +12 -5
- package/types/requestParams.d.ts +2 -3
- package/types/requestStream.d.ts +3 -1
- package/types/response.d.ts +17 -5
- package/types/router.d.ts +8 -3
- package/types/server.d.ts +2 -1
- package/types/ssrErrors.d.ts +29 -0
- package/types/ssrUtils.d.ts +2 -0
- package/types/types.d.ts +131 -54
- package/types/url.d.ts +1 -0
- package/types/xhrHttpClient.d.ts +12 -0
- package/dist/index.esm.js +0 -4119
- package/dist/index.esm.js.map +0 -7
- package/dist/server.esm.js +0 -61
- package/dist/server.esm.js.map +0 -7
- package/types/modal.d.ts +0 -12
package/dist/server.esm.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
// src/server.ts
|
|
2
|
-
import { createServer } from "http";
|
|
3
|
-
import cluster from "node:cluster";
|
|
4
|
-
import { availableParallelism } from "node:os";
|
|
5
|
-
import * as process from "process";
|
|
6
|
-
var readableToString = (readable) => new Promise((resolve, reject) => {
|
|
7
|
-
let data = "";
|
|
8
|
-
readable.on("data", (chunk) => data += chunk);
|
|
9
|
-
readable.on("end", () => resolve(data));
|
|
10
|
-
readable.on("error", (err) => reject(err));
|
|
11
|
-
});
|
|
12
|
-
var server_default = (render, options) => {
|
|
13
|
-
const _port = typeof options === "number" ? options : options?.port ?? 13714;
|
|
14
|
-
const _useCluster = typeof options === "object" && options?.cluster !== void 0 ? options.cluster : false;
|
|
15
|
-
const log = (message) => {
|
|
16
|
-
console.log(
|
|
17
|
-
_useCluster && !cluster.isPrimary ? `[${cluster.worker?.id ?? "N/A"} / ${cluster.worker?.process?.pid ?? "N/A"}] ${message}` : message
|
|
18
|
-
);
|
|
19
|
-
};
|
|
20
|
-
if (_useCluster && cluster.isPrimary) {
|
|
21
|
-
log("Primary Inertia SSR server process started...");
|
|
22
|
-
for (let i = 0; i < availableParallelism(); i++) {
|
|
23
|
-
cluster.fork();
|
|
24
|
-
}
|
|
25
|
-
cluster.on("message", (_worker, message) => {
|
|
26
|
-
if (message === "shutdown") {
|
|
27
|
-
for (const id in cluster.workers) {
|
|
28
|
-
cluster.workers[id]?.kill();
|
|
29
|
-
}
|
|
30
|
-
process.exit();
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
const routes = {
|
|
36
|
-
"/health": async () => ({ status: "OK", timestamp: Date.now() }),
|
|
37
|
-
"/shutdown": async () => {
|
|
38
|
-
if (cluster.isWorker) {
|
|
39
|
-
process.send?.("shutdown");
|
|
40
|
-
}
|
|
41
|
-
process.exit();
|
|
42
|
-
},
|
|
43
|
-
"/render": async (request) => render(JSON.parse(await readableToString(request))),
|
|
44
|
-
"/404": async () => ({ status: "NOT_FOUND", timestamp: Date.now() })
|
|
45
|
-
};
|
|
46
|
-
createServer(async (request, response) => {
|
|
47
|
-
const dispatchRoute = routes[request.url] || routes["/404"];
|
|
48
|
-
try {
|
|
49
|
-
response.writeHead(200, { "Content-Type": "application/json", Server: "Inertia.js SSR" });
|
|
50
|
-
response.write(JSON.stringify(await dispatchRoute(request)));
|
|
51
|
-
} catch (e) {
|
|
52
|
-
console.error(e);
|
|
53
|
-
}
|
|
54
|
-
response.end();
|
|
55
|
-
}).listen(_port, () => log("Inertia SSR server started."));
|
|
56
|
-
log(`Starting SSR server on port ${_port}...`);
|
|
57
|
-
};
|
|
58
|
-
export {
|
|
59
|
-
server_default as default
|
|
60
|
-
};
|
|
61
|
-
//# sourceMappingURL=server.esm.js.map
|
package/dist/server.esm.js.map
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/server.ts"],
|
|
4
|
-
"sourcesContent": ["import { createServer, IncomingMessage } from 'http'\nimport cluster from 'node:cluster'\nimport { availableParallelism } from 'node:os'\nimport * as process from 'process'\nimport { InertiaAppResponse, Page } from './types'\n\ntype AppCallback = (page: Page) => InertiaAppResponse\ntype RouteHandler = (request: IncomingMessage) => Promise<unknown>\ntype ServerOptions = {\n port?: number\n cluster?: boolean\n}\ntype Port = number\n\nconst readableToString: (readable: IncomingMessage) => Promise<string> = (readable) =>\n new Promise((resolve, reject) => {\n let data = ''\n readable.on('data', (chunk) => (data += chunk))\n readable.on('end', () => resolve(data))\n readable.on('error', (err) => reject(err))\n })\n\nexport default (render: AppCallback, options?: Port | ServerOptions): void => {\n const _port = typeof options === 'number' ? options : (options?.port ?? 13714)\n const _useCluster = typeof options === 'object' && options?.cluster !== undefined ? options.cluster : false\n\n const log = (message: string) => {\n console.log(\n _useCluster && !cluster.isPrimary\n ? `[${cluster.worker?.id ?? 'N/A'} / ${cluster.worker?.process?.pid ?? 'N/A'}] ${message}`\n : message,\n )\n }\n\n if (_useCluster && cluster.isPrimary) {\n log('Primary Inertia SSR server process started...')\n\n for (let i = 0; i < availableParallelism(); i++) {\n cluster.fork()\n }\n\n cluster.on('message', (_worker, message) => {\n if (message === 'shutdown') {\n for (const id in cluster.workers) {\n cluster.workers[id]?.kill()\n }\n\n process.exit()\n }\n })\n\n return\n }\n\n const routes: Record<string, RouteHandler> = {\n '/health': async () => ({ status: 'OK', timestamp: Date.now() }),\n '/shutdown': async () => {\n if (cluster.isWorker) {\n process.send?.('shutdown')\n }\n\n process.exit()\n },\n '/render': async (request) => render(JSON.parse(await readableToString(request))),\n '/404': async () => ({ status: 'NOT_FOUND', timestamp: Date.now() }),\n }\n\n createServer(async (request, response) => {\n const dispatchRoute = routes[<string>request.url] || routes['/404']\n\n try {\n response.writeHead(200, { 'Content-Type': 'application/json', Server: 'Inertia.js SSR' })\n response.write(JSON.stringify(await dispatchRoute(request)))\n } catch (e) {\n console.error(e)\n }\n\n response.end()\n }).listen(_port, () => log('Inertia SSR server started.'))\n\n log(`Starting SSR server on port ${_port}...`)\n}\n"],
|
|
5
|
-
"mappings": ";AAAA,SAAS,oBAAqC;AAC9C,OAAO,aAAa;AACpB,SAAS,4BAA4B;AACrC,YAAY,aAAa;AAWzB,IAAM,mBAAmE,CAAC,aACxE,IAAI,QAAQ,CAAC,SAAS,WAAW;AAC/B,MAAI,OAAO;AACX,WAAS,GAAG,QAAQ,CAAC,UAAW,QAAQ,KAAM;AAC9C,WAAS,GAAG,OAAO,MAAM,QAAQ,IAAI,CAAC;AACtC,WAAS,GAAG,SAAS,CAAC,QAAQ,OAAO,GAAG,CAAC;AAC3C,CAAC;AAEH,IAAO,iBAAQ,CAAC,QAAqB,YAAyC;AAC5E,QAAM,QAAQ,OAAO,YAAY,WAAW,UAAW,SAAS,QAAQ;AACxE,QAAM,cAAc,OAAO,YAAY,YAAY,SAAS,YAAY,SAAY,QAAQ,UAAU;AAEtG,QAAM,MAAM,CAAC,YAAoB;AAC/B,YAAQ;AAAA,MACN,eAAe,CAAC,QAAQ,YACpB,IAAI,QAAQ,QAAQ,MAAM,KAAK,MAAM,QAAQ,QAAQ,SAAS,OAAO,KAAK,KAAK,OAAO,KACtF;AAAA,IACN;AAAA,EACF;AAEA,MAAI,eAAe,QAAQ,WAAW;AACpC,QAAI,+CAA+C;AAEnD,aAAS,IAAI,GAAG,IAAI,qBAAqB,GAAG,KAAK;AAC/C,cAAQ,KAAK;AAAA,IACf;AAEA,YAAQ,GAAG,WAAW,CAAC,SAAS,YAAY;AAC1C,UAAI,YAAY,YAAY;AAC1B,mBAAW,MAAM,QAAQ,SAAS;AAChC,kBAAQ,QAAQ,EAAE,GAAG,KAAK;AAAA,QAC5B;AAEA,QAAQ,aAAK;AAAA,MACf;AAAA,IACF,CAAC;AAED;AAAA,EACF;AAEA,QAAM,SAAuC;AAAA,IAC3C,WAAW,aAAa,EAAE,QAAQ,MAAM,WAAW,KAAK,IAAI,EAAE;AAAA,IAC9D,aAAa,YAAY;AACvB,UAAI,QAAQ,UAAU;AACpB,QAAQ,eAAO,UAAU;AAAA,MAC3B;AAEA,MAAQ,aAAK;AAAA,IACf;AAAA,IACA,WAAW,OAAO,YAAY,OAAO,KAAK,MAAM,MAAM,iBAAiB,OAAO,CAAC,CAAC;AAAA,IAChF,QAAQ,aAAa,EAAE,QAAQ,aAAa,WAAW,KAAK,IAAI,EAAE;AAAA,EACpE;AAEA,eAAa,OAAO,SAAS,aAAa;AACxC,UAAM,gBAAgB,OAAe,QAAQ,GAAG,KAAK,OAAO,MAAM;AAElE,QAAI;AACF,eAAS,UAAU,KAAK,EAAE,gBAAgB,oBAAoB,QAAQ,iBAAiB,CAAC;AACxF,eAAS,MAAM,KAAK,UAAU,MAAM,cAAc,OAAO,CAAC,CAAC;AAAA,IAC7D,SAAS,GAAG;AACV,cAAQ,MAAM,CAAC;AAAA,IACjB;AAEA,aAAS,IAAI;AAAA,EACf,CAAC,EAAE,OAAO,OAAO,MAAM,IAAI,6BAA6B,CAAC;AAEzD,MAAI,+BAA+B,KAAK,KAAK;AAC/C;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/types/modal.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
declare const _default: {
|
|
2
|
-
modal: null;
|
|
3
|
-
listener: null;
|
|
4
|
-
createIframeAndPage(html: Record<string, unknown> | string): {
|
|
5
|
-
iframe: HTMLIFrameElement;
|
|
6
|
-
page: HTMLElement;
|
|
7
|
-
};
|
|
8
|
-
show(html: Record<string, unknown> | string): void;
|
|
9
|
-
hide(): void;
|
|
10
|
-
hideOnEscape(event: KeyboardEvent): void;
|
|
11
|
-
};
|
|
12
|
-
export default _default;
|