@emkodev/emroute 1.7.1-beta.1 → 1.7.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.
|
@@ -52,12 +52,18 @@ export async function buildClientBundles(options) {
|
|
|
52
52
|
const emrouteJs = await readFile(emrouteJsPath);
|
|
53
53
|
await runtime.command(paths.emroute, { body: emrouteJs });
|
|
54
54
|
// App bundle — consumer's main.ts bundled with esbuild.
|
|
55
|
-
//
|
|
55
|
+
// Try filesystem first (where node_modules lives), then runtime, then generate.
|
|
56
56
|
const ep = entryPoint ?? '/main.ts';
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
let source;
|
|
58
|
+
try {
|
|
59
|
+
source = await readFile(root + ep, 'utf-8');
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
const epResponse = await runtime.query(ep);
|
|
63
|
+
if (epResponse.status !== 404)
|
|
64
|
+
source = await epResponse.text();
|
|
65
|
+
}
|
|
66
|
+
source ??= generateMainTs(spa, '@emkodev/emroute');
|
|
61
67
|
const result = await esbuild.build({
|
|
62
68
|
bundle: true,
|
|
63
69
|
write: false,
|
|
@@ -70,6 +76,14 @@ export async function buildClientBundles(options) {
|
|
|
70
76
|
for (const file of result.outputFiles) {
|
|
71
77
|
await runtime.command(paths.app, { body: file.contents });
|
|
72
78
|
}
|
|
79
|
+
// Copy main.css from disk into runtime if it exists (and runtime doesn't have it)
|
|
80
|
+
if ((await runtime.query('/main.css')).status === 404) {
|
|
81
|
+
try {
|
|
82
|
+
const css = await readFile(root + '/main.css');
|
|
83
|
+
await runtime.command('/main.css', { body: css });
|
|
84
|
+
}
|
|
85
|
+
catch { /* no main.css on disk — fine */ }
|
|
86
|
+
}
|
|
73
87
|
// Write shell (index.html) if not already present
|
|
74
88
|
await writeShell(runtime, paths);
|
|
75
89
|
await esbuild.stop();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.util.js","sourceRoot":"","sources":["../../server/build.util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,sBAAsB;IACtB,0BAA0B;IAC1B,kBAAkB;IAClB,yBAAyB;IACzB,gCAAgC;CACxB,CAAC;AAEX,kFAAkF;AAClF,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAe5C,MAAM,oBAAoB,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;AAExE;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAqB;IAC5D,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACnD,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO;IAE3B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,IAAI,oBAAoB,CAAC;IAE1D,oEAAoE;IACpE,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAE5B,8DAA8D;IAC9D,MAAM,OAAO,GAAG,MAAM,WAAW,EAAS,CAAC;IAE3C,mDAAmD;IACnD,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1D,wDAAwD;IACxD,
|
|
1
|
+
{"version":3,"file":"build.util.js","sourceRoot":"","sources":["../../server/build.util.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@emkodev/emroute",
|
|
3
|
-
"version": "1.7.1
|
|
3
|
+
"version": "1.7.1",
|
|
4
4
|
"description": "File-based (but storage-agnostic) router with triple rendering (SPA, SSR HTML, SSR Markdown). Zero dependencies.",
|
|
5
5
|
"license": "BSD-3-Clause",
|
|
6
6
|
"author": "emko.dev",
|
package/server/build.util.ts
CHANGED
|
@@ -81,12 +81,16 @@ export async function buildClientBundles(options: BuildOptions): Promise<void> {
|
|
|
81
81
|
await runtime.command(paths.emroute, { body: emrouteJs });
|
|
82
82
|
|
|
83
83
|
// App bundle — consumer's main.ts bundled with esbuild.
|
|
84
|
-
//
|
|
84
|
+
// Try filesystem first (where node_modules lives), then runtime, then generate.
|
|
85
85
|
const ep = entryPoint ?? '/main.ts';
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
86
|
+
let source: string | undefined;
|
|
87
|
+
try {
|
|
88
|
+
source = await readFile(root + ep, 'utf-8');
|
|
89
|
+
} catch {
|
|
90
|
+
const epResponse = await runtime.query(ep);
|
|
91
|
+
if (epResponse.status !== 404) source = await epResponse.text();
|
|
92
|
+
}
|
|
93
|
+
source ??= generateMainTs(spa, '@emkodev/emroute');
|
|
90
94
|
|
|
91
95
|
const result = await esbuild.build({
|
|
92
96
|
bundle: true,
|
|
@@ -102,6 +106,14 @@ export async function buildClientBundles(options: BuildOptions): Promise<void> {
|
|
|
102
106
|
await runtime.command(paths.app, { body: file.contents as unknown as BodyInit });
|
|
103
107
|
}
|
|
104
108
|
|
|
109
|
+
// Copy main.css from disk into runtime if it exists (and runtime doesn't have it)
|
|
110
|
+
if ((await runtime.query('/main.css')).status === 404) {
|
|
111
|
+
try {
|
|
112
|
+
const css = await readFile(root + '/main.css');
|
|
113
|
+
await runtime.command('/main.css', { body: css });
|
|
114
|
+
} catch { /* no main.css on disk — fine */ }
|
|
115
|
+
}
|
|
116
|
+
|
|
105
117
|
// Write shell (index.html) if not already present
|
|
106
118
|
await writeShell(runtime, paths);
|
|
107
119
|
|