@universal-deploy/node 0.0.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/README.md ADDED
@@ -0,0 +1 @@
1
+ Wraps `@universal-deploy/store` entries with [srvx](https://srvx.h3.dev/) + [sirv](https://universal-middleware.dev/middlewares/sirv)
@@ -0,0 +1 @@
1
+ export { };
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
package/dist/serve.js ADDED
@@ -0,0 +1,17 @@
1
+ import userServerEntry from "virtual:ud:catch-all";
2
+ import { assertFetchable } from "@universal-deploy/store/utils";
3
+ import sirv from "@universal-middleware/sirv/srvx";
4
+ import { serve } from "srvx";
5
+
6
+ //#region src/serve.ts
7
+ function startServer() {
8
+ assertFetchable(userServerEntry, "virtual:ud:catch-all");
9
+ return serve({
10
+ ...userServerEntry,
11
+ middleware: [sirv("dist/client")]
12
+ }).ready();
13
+ }
14
+ await startServer();
15
+
16
+ //#endregion
17
+ export { };
package/dist/vite.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import { Plugin } from "vite";
2
+
3
+ //#region src/vite.d.ts
4
+ declare function node(): Plugin[];
5
+ //#endregion
6
+ export { node };
package/dist/vite.js ADDED
@@ -0,0 +1,50 @@
1
+ import { builtinModules } from "node:module";
2
+ import { defaultClientConditions, defaultExternalConditions, defaultServerConditions } from "vite";
3
+
4
+ //#region src/vite.ts
5
+ const isBun = typeof Bun !== "undefined";
6
+ const isDeno = typeof Deno !== "undefined";
7
+ const re_photonNode = /^virtual:photon:node-entry$/;
8
+ function node() {
9
+ return [
10
+ {
11
+ name: "photon:node:node-entry",
12
+ apply: "build",
13
+ resolveId: {
14
+ filter: { id: re_photonNode },
15
+ async handler(id, importer) {
16
+ const resolved = await this.resolve("@universal-deploy/node/serve", importer);
17
+ if (!resolved) throw new Error(`Cannot find server entry ${JSON.stringify(id)}`);
18
+ return { id: resolved.id };
19
+ }
20
+ }
21
+ },
22
+ {
23
+ name: "photon:node:node-like",
24
+ configEnvironment(name, config) {
25
+ const defaultCondition = config.consumer === "client" ? defaultClientConditions : defaultServerConditions;
26
+ const additionalCondition = isBun ? ["bun"] : isDeno ? ["deno"] : [];
27
+ return { resolve: {
28
+ conditions: [...additionalCondition, ...defaultCondition],
29
+ externalConditions: [...additionalCondition, ...defaultExternalConditions]
30
+ } };
31
+ }
32
+ },
33
+ {
34
+ name: "photon:node:emit",
35
+ apply: "build",
36
+ config: {
37
+ order: "post",
38
+ handler() {
39
+ return {
40
+ environments: { ssr: { build: { rollupOptions: { input: { index: "virtual:photon:node-entry" } } } } },
41
+ resolve: { alias: Object.fromEntries(builtinModules.filter((m) => !m.startsWith("node:")).map((m) => [m, `node:${m}`])) }
42
+ };
43
+ }
44
+ }
45
+ }
46
+ ];
47
+ }
48
+
49
+ //#endregion
50
+ export { node };
package/package.json ADDED
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "@universal-deploy/node",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "exports": {
8
+ ".": "./dist/index.js",
9
+ "./serve": "./dist/serve.js",
10
+ "./vite": "./dist/vite.js"
11
+ },
12
+ "dependencies": {
13
+ "@universal-middleware/sirv": "^0.1.24",
14
+ "srvx": "^0.9.8",
15
+ "@universal-deploy/store": "^0.0.5"
16
+ },
17
+ "peerDependencies": {
18
+ "vite": ">=7.1"
19
+ },
20
+ "peerDependenciesMeta": {
21
+ "vite": {
22
+ "optional": true
23
+ }
24
+ },
25
+ "devDependencies": {
26
+ "@types/node": "^22.19.3",
27
+ "tsdown": "^0.18.0",
28
+ "typescript": "^5.9.3",
29
+ "vite": "^7.3.0"
30
+ },
31
+ "files": [
32
+ "dist/"
33
+ ],
34
+ "repository": "github:photon-js/universal-deploy",
35
+ "license": "MIT",
36
+ "scripts": {
37
+ "dev": "tsdown --watch",
38
+ "build": "tsdown",
39
+ "test:types": "tsc --noEmit"
40
+ }
41
+ }