nmtjs 0.16.1 → 0.17.0-beta.2
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/LICENSE.md +1 -1
- package/README.md +41 -1
- package/dist/index.d.ts +22 -161
- package/dist/index.js +24 -53
- package/dist/index.js.map +1 -1
- package/package.json +11 -63
- package/src/index.ts +71 -91
- package/bin/cli.js +0 -2
- package/dist/cli.d.ts +0 -1
- package/dist/cli.js +0 -137
- package/dist/cli.js.map +0 -1
- package/dist/codegen.d.ts +0 -5
- package/dist/codegen.js +0 -18
- package/dist/codegen.js.map +0 -1
- package/dist/config.d.ts +0 -47
- package/dist/config.js +0 -16
- package/dist/config.js.map +0 -1
- package/dist/entrypoints/cli.d.ts +0 -1
- package/dist/entrypoints/cli.js +0 -12
- package/dist/entrypoints/cli.js.map +0 -1
- package/dist/entrypoints/main.d.ts +0 -5
- package/dist/entrypoints/main.js +0 -248
- package/dist/entrypoints/main.js.map +0 -1
- package/dist/entrypoints/thread.d.ts +0 -16
- package/dist/entrypoints/thread.js +0 -182
- package/dist/entrypoints/thread.js.map +0 -1
- package/dist/entrypoints/worker.d.ts +0 -9
- package/dist/entrypoints/worker.js +0 -143
- package/dist/entrypoints/worker.js.map +0 -1
- package/dist/resolver.d.ts +0 -2
- package/dist/resolver.js +0 -7
- package/dist/resolver.js.map +0 -1
- package/dist/runtime/application/index.d.ts +0 -1
- package/dist/runtime/application/index.js +0 -2
- package/dist/runtime/application/index.js.map +0 -1
- package/dist/runtime/constants.d.ts +0 -8
- package/dist/runtime/constants.js +0 -5
- package/dist/runtime/constants.js.map +0 -1
- package/dist/runtime/enums.d.ts +0 -10
- package/dist/runtime/enums.js +0 -13
- package/dist/runtime/enums.js.map +0 -1
- package/dist/runtime/hooks.d.ts +0 -1
- package/dist/runtime/hooks.js +0 -2
- package/dist/runtime/hooks.js.map +0 -1
- package/dist/runtime/index.d.ts +0 -28
- package/dist/runtime/index.js +0 -29
- package/dist/runtime/index.js.map +0 -1
- package/dist/runtime/injectables.d.ts +0 -69
- package/dist/runtime/injectables.js +0 -40
- package/dist/runtime/injectables.js.map +0 -1
- package/dist/runtime/jobs/job.d.ts +0 -146
- package/dist/runtime/jobs/job.js +0 -89
- package/dist/runtime/jobs/job.js.map +0 -1
- package/dist/runtime/jobs/manager.d.ts +0 -131
- package/dist/runtime/jobs/manager.js +0 -309
- package/dist/runtime/jobs/manager.js.map +0 -1
- package/dist/runtime/jobs/router.d.ts +0 -296
- package/dist/runtime/jobs/router.js +0 -458
- package/dist/runtime/jobs/router.js.map +0 -1
- package/dist/runtime/jobs/runner.d.ts +0 -103
- package/dist/runtime/jobs/runner.js +0 -425
- package/dist/runtime/jobs/runner.js.map +0 -1
- package/dist/runtime/jobs/step.d.ts +0 -26
- package/dist/runtime/jobs/step.js +0 -18
- package/dist/runtime/jobs/step.js.map +0 -1
- package/dist/runtime/jobs/types.d.ts +0 -86
- package/dist/runtime/jobs/types.js +0 -5
- package/dist/runtime/jobs/types.js.map +0 -1
- package/dist/runtime/metrics/metric.d.ts +0 -8
- package/dist/runtime/metrics/metric.js +0 -11
- package/dist/runtime/metrics/metric.js.map +0 -1
- package/dist/runtime/metrics/registry.d.ts +0 -3
- package/dist/runtime/metrics/registry.js +0 -5
- package/dist/runtime/metrics/registry.js.map +0 -1
- package/dist/runtime/metrics/server.d.ts +0 -7
- package/dist/runtime/metrics/server.js +0 -53
- package/dist/runtime/metrics/server.js.map +0 -1
- package/dist/runtime/plugin.d.ts +0 -2
- package/dist/runtime/plugin.js +0 -2
- package/dist/runtime/plugin.js.map +0 -1
- package/dist/runtime/runtime.d.ts +0 -27
- package/dist/runtime/runtime.js +0 -77
- package/dist/runtime/runtime.js.map +0 -1
- package/dist/runtime/scheduler/index.d.ts +0 -22
- package/dist/runtime/scheduler/index.js +0 -20
- package/dist/runtime/scheduler/index.js.map +0 -1
- package/dist/runtime/server/applications.d.ts +0 -91
- package/dist/runtime/server/applications.js +0 -171
- package/dist/runtime/server/applications.js.map +0 -1
- package/dist/runtime/server/config.d.ts +0 -148
- package/dist/runtime/server/config.js +0 -33
- package/dist/runtime/server/config.js.map +0 -1
- package/dist/runtime/server/environment.d.ts +0 -43
- package/dist/runtime/server/environment.js +0 -33
- package/dist/runtime/server/environment.js.map +0 -1
- package/dist/runtime/server/error-policy.d.ts +0 -62
- package/dist/runtime/server/error-policy.js +0 -73
- package/dist/runtime/server/error-policy.js.map +0 -1
- package/dist/runtime/server/hmr-coordinator.d.ts +0 -37
- package/dist/runtime/server/hmr-coordinator.js +0 -94
- package/dist/runtime/server/hmr-coordinator.js.map +0 -1
- package/dist/runtime/server/jobs.d.ts +0 -54
- package/dist/runtime/server/jobs.js +0 -176
- package/dist/runtime/server/jobs.js.map +0 -1
- package/dist/runtime/server/lifecycle.d.ts +0 -85
- package/dist/runtime/server/lifecycle.js +0 -177
- package/dist/runtime/server/lifecycle.js.map +0 -1
- package/dist/runtime/server/managed-worker.d.ts +0 -158
- package/dist/runtime/server/managed-worker.js +0 -420
- package/dist/runtime/server/managed-worker.js.map +0 -1
- package/dist/runtime/server/pool-manager.d.ts +0 -85
- package/dist/runtime/server/pool-manager.js +0 -129
- package/dist/runtime/server/pool-manager.js.map +0 -1
- package/dist/runtime/server/proxy.d.ts +0 -21
- package/dist/runtime/server/proxy.js +0 -76
- package/dist/runtime/server/proxy.js.map +0 -1
- package/dist/runtime/server/server.d.ts +0 -60
- package/dist/runtime/server/server.js +0 -163
- package/dist/runtime/server/server.js.map +0 -1
- package/dist/runtime/server/types.d.ts +0 -31
- package/dist/runtime/server/types.js +0 -2
- package/dist/runtime/server/types.js.map +0 -1
- package/dist/runtime/server/worker-pool.d.ts +0 -121
- package/dist/runtime/server/worker-pool.js +0 -171
- package/dist/runtime/server/worker-pool.js.map +0 -1
- package/dist/runtime/store/index.d.ts +0 -3
- package/dist/runtime/store/index.js +0 -23
- package/dist/runtime/store/index.js.map +0 -1
- package/dist/runtime/subscription/manager.d.ts +0 -49
- package/dist/runtime/subscription/manager.js +0 -170
- package/dist/runtime/subscription/manager.js.map +0 -1
- package/dist/runtime/subscription/redis.d.ts +0 -18
- package/dist/runtime/subscription/redis.js +0 -119
- package/dist/runtime/subscription/redis.js.map +0 -1
- package/dist/runtime/types.d.ts +0 -95
- package/dist/runtime/types.js +0 -2
- package/dist/runtime/types.js.map +0 -1
- package/dist/runtime/workers/application.d.ts +0 -29
- package/dist/runtime/workers/application.js +0 -77
- package/dist/runtime/workers/application.js.map +0 -1
- package/dist/runtime/workers/base.d.ts +0 -14
- package/dist/runtime/workers/base.js +0 -41
- package/dist/runtime/workers/base.js.map +0 -1
- package/dist/runtime/workers/cli.d.ts +0 -1
- package/dist/runtime/workers/cli.js +0 -2
- package/dist/runtime/workers/cli.js.map +0 -1
- package/dist/runtime/workers/job.d.ts +0 -20
- package/dist/runtime/workers/job.js +0 -170
- package/dist/runtime/workers/job.js.map +0 -1
- package/dist/vite/builder.d.ts +0 -5
- package/dist/vite/builder.js +0 -79
- package/dist/vite/builder.js.map +0 -1
- package/dist/vite/config.d.ts +0 -28
- package/dist/vite/config.js +0 -22
- package/dist/vite/config.js.map +0 -1
- package/dist/vite/plugins.d.ts +0 -2
- package/dist/vite/plugins.js +0 -43
- package/dist/vite/plugins.js.map +0 -1
- package/dist/vite/runners/worker.d.ts +0 -3
- package/dist/vite/runners/worker.js +0 -34
- package/dist/vite/runners/worker.js.map +0 -1
- package/dist/vite/server.d.ts +0 -3
- package/dist/vite/server.js +0 -36
- package/dist/vite/server.js.map +0 -1
- package/dist/vite/servers/main.d.ts +0 -8
- package/dist/vite/servers/main.js +0 -24
- package/dist/vite/servers/main.js.map +0 -1
- package/dist/vite/servers/worker.d.ts +0 -13
- package/dist/vite/servers/worker.js +0 -124
- package/dist/vite/servers/worker.js.map +0 -1
- package/src/cli.ts +0 -162
- package/src/codegen.ts +0 -30
- package/src/config.ts +0 -69
- package/src/entrypoints/cli.ts +0 -13
- package/src/entrypoints/main.ts +0 -317
- package/src/entrypoints/thread.ts +0 -223
- package/src/entrypoints/worker.ts +0 -174
- package/src/resolver.ts +0 -7
- package/src/runtime/application/index.ts +0 -1
- package/src/runtime/constants.ts +0 -13
- package/src/runtime/enums.ts +0 -12
- package/src/runtime/hooks.ts +0 -1
- package/src/runtime/index.ts +0 -29
- package/src/runtime/injectables.ts +0 -101
- package/src/runtime/jobs/job.ts +0 -467
- package/src/runtime/jobs/manager.ts +0 -454
- package/src/runtime/jobs/router.ts +0 -967
- package/src/runtime/jobs/runner.ts +0 -583
- package/src/runtime/jobs/step.ts +0 -66
- package/src/runtime/jobs/types.ts +0 -116
- package/src/runtime/metrics/metric.ts +0 -18
- package/src/runtime/metrics/registry.ts +0 -11
- package/src/runtime/metrics/server.ts +0 -69
- package/src/runtime/plugin.ts +0 -2
- package/src/runtime/runtime.ts +0 -103
- package/src/runtime/scheduler/index.ts +0 -39
- package/src/runtime/server/applications.ts +0 -264
- package/src/runtime/server/config.ts +0 -199
- package/src/runtime/server/environment.ts +0 -71
- package/src/runtime/server/error-policy.ts +0 -132
- package/src/runtime/server/hmr-coordinator.ts +0 -116
- package/src/runtime/server/jobs.ts +0 -266
- package/src/runtime/server/lifecycle.ts +0 -234
- package/src/runtime/server/managed-worker.ts +0 -546
- package/src/runtime/server/pool-manager.ts +0 -187
- package/src/runtime/server/proxy.ts +0 -119
- package/src/runtime/server/server.ts +0 -218
- package/src/runtime/server/types.ts +0 -32
- package/src/runtime/server/worker-pool.ts +0 -275
- package/src/runtime/store/index.ts +0 -30
- package/src/runtime/subscription/manager.ts +0 -307
- package/src/runtime/subscription/redis.ts +0 -159
- package/src/runtime/types.ts +0 -84
- package/src/runtime/workers/application.ts +0 -133
- package/src/runtime/workers/base.ts +0 -65
- package/src/runtime/workers/cli.ts +0 -0
- package/src/runtime/workers/job.ts +0 -142
- package/src/vite/builder.ts +0 -94
- package/src/vite/config.ts +0 -45
- package/src/vite/plugins.ts +0 -53
- package/src/vite/runners/worker.ts +0 -55
- package/src/vite/server.ts +0 -55
- package/src/vite/servers/main.ts +0 -41
- package/src/vite/servers/worker.ts +0 -177
package/bin/cli.js
DELETED
package/dist/cli.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/cli.js
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
|
|
2
|
-
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
3
|
-
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
4
|
-
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
5
|
-
});
|
|
6
|
-
}
|
|
7
|
-
return path;
|
|
8
|
-
};
|
|
9
|
-
import { existsSync } from 'node:fs';
|
|
10
|
-
import { relative, resolve } from 'node:path';
|
|
11
|
-
import process from 'node:process';
|
|
12
|
-
import { defineCommand, runMain } from 'citty';
|
|
13
|
-
import { config as dotenv } from 'dotenv';
|
|
14
|
-
import { generateTypings } from './codegen.js';
|
|
15
|
-
import { resolver } from './resolver.js';
|
|
16
|
-
import { createBuilder } from './vite/builder.js';
|
|
17
|
-
import { baseViteConfigOptions } from './vite/config.js';
|
|
18
|
-
import { createMainServer } from './vite/servers/main.js';
|
|
19
|
-
const commonArgs = {
|
|
20
|
-
config: {
|
|
21
|
-
type: 'string',
|
|
22
|
-
alias: 'c',
|
|
23
|
-
description: 'Path to Neemata config file',
|
|
24
|
-
required: false,
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
function resolveConfigPath(configPathArg) {
|
|
28
|
-
if (configPathArg) {
|
|
29
|
-
return resolve(configPathArg);
|
|
30
|
-
}
|
|
31
|
-
const tsConfigPath = resolve('./neemata.config.ts');
|
|
32
|
-
if (existsSync(tsConfigPath)) {
|
|
33
|
-
return tsConfigPath;
|
|
34
|
-
}
|
|
35
|
-
const jsConfigPath = resolve('./neemata.config.js');
|
|
36
|
-
if (existsSync(jsConfigPath)) {
|
|
37
|
-
return jsConfigPath;
|
|
38
|
-
}
|
|
39
|
-
throw new Error('Failed to resolve Neemata config file. Create neemata.config.ts or neemata.config.js, or pass --config.');
|
|
40
|
-
}
|
|
41
|
-
let config;
|
|
42
|
-
let viteConfigOptions;
|
|
43
|
-
let applicationImports;
|
|
44
|
-
async function runPrepare() {
|
|
45
|
-
await generateTypings(applicationImports);
|
|
46
|
-
}
|
|
47
|
-
const mainCommand = defineCommand({
|
|
48
|
-
meta: { description: 'Neemata CLI' },
|
|
49
|
-
args: { ...commonArgs },
|
|
50
|
-
async setup(ctx) {
|
|
51
|
-
const configPath = resolveConfigPath(ctx.args.config);
|
|
52
|
-
config = await import(__rewriteRelativeImportExtension(configPath)).then((m) => m.default);
|
|
53
|
-
for (const env of config.env) {
|
|
54
|
-
if (typeof env === 'string') {
|
|
55
|
-
const { error } = dotenv({ path: env });
|
|
56
|
-
if (error)
|
|
57
|
-
console.warn(error);
|
|
58
|
-
}
|
|
59
|
-
else if (typeof env === 'object') {
|
|
60
|
-
for (const key in env) {
|
|
61
|
-
process.env[key] = env[key];
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
applicationImports = {};
|
|
66
|
-
const currentPkg = resolver.sync(process.cwd(), './package.json');
|
|
67
|
-
for (const [appName, application] of Object.entries(config.applications)) {
|
|
68
|
-
const { specifier: appSpecifier, type } = application;
|
|
69
|
-
const resolution = resolver.sync(process.cwd(), appSpecifier);
|
|
70
|
-
if (resolution.error)
|
|
71
|
-
throw new Error(`Failed to resolve application path for ${appName}: ${resolution.error}`);
|
|
72
|
-
if (!resolution.path)
|
|
73
|
-
throw new Error(`Failed to resolve application path for ${appName}: no path found`);
|
|
74
|
-
const specifier = resolution.packageJsonPath === currentPkg.path
|
|
75
|
-
? relative(resolve('.neemata'), resolution.path)
|
|
76
|
-
: appSpecifier;
|
|
77
|
-
applicationImports[appName] = { path: resolution.path, specifier, type };
|
|
78
|
-
}
|
|
79
|
-
viteConfigOptions = {
|
|
80
|
-
applicationImports,
|
|
81
|
-
serverEntryPath: resolve(config.serverPath),
|
|
82
|
-
...baseViteConfigOptions,
|
|
83
|
-
configPath,
|
|
84
|
-
};
|
|
85
|
-
},
|
|
86
|
-
subCommands: {
|
|
87
|
-
prepare: defineCommand({
|
|
88
|
-
async run(ctx) {
|
|
89
|
-
await runPrepare();
|
|
90
|
-
},
|
|
91
|
-
}),
|
|
92
|
-
dev: defineCommand({
|
|
93
|
-
async run(ctx) {
|
|
94
|
-
await runPrepare();
|
|
95
|
-
const { runner } = await createMainServer(viteConfigOptions, 'development', config);
|
|
96
|
-
await runner.import(viteConfigOptions.entrypointMainPath);
|
|
97
|
-
},
|
|
98
|
-
}),
|
|
99
|
-
preview: defineCommand({
|
|
100
|
-
async run(ctx) {
|
|
101
|
-
await runPrepare();
|
|
102
|
-
const { runner } = await createMainServer(viteConfigOptions, 'production', config);
|
|
103
|
-
await runner.import(viteConfigOptions.entrypointMainPath);
|
|
104
|
-
},
|
|
105
|
-
}),
|
|
106
|
-
build: defineCommand({
|
|
107
|
-
async run(ctx) {
|
|
108
|
-
await runPrepare();
|
|
109
|
-
const builder = await createBuilder(viteConfigOptions, config);
|
|
110
|
-
await builder.build();
|
|
111
|
-
},
|
|
112
|
-
}),
|
|
113
|
-
// command: defineCommand({
|
|
114
|
-
// async run(ctx) {
|
|
115
|
-
// const runner = await createRunner(
|
|
116
|
-
// viteConfigOptions,
|
|
117
|
-
// 'production',
|
|
118
|
-
// config,
|
|
119
|
-
// )
|
|
120
|
-
// const workerModule = await runner.import<
|
|
121
|
-
// typeof import('./entrypoints/worker.ts')
|
|
122
|
-
// >(import.meta.resolve('./entrypoints/worker.js'))
|
|
123
|
-
// const commandModule = await runner.import<
|
|
124
|
-
// typeof import('./command.ts')
|
|
125
|
-
// >(import.meta.resolve('./command.js'))
|
|
126
|
-
// const worker = await workerModule.default({
|
|
127
|
-
// applicationWorkerData: undefined,
|
|
128
|
-
// type: ApplicationType.Command,
|
|
129
|
-
// workerType: ApplicationWorkerType.Command,
|
|
130
|
-
// })
|
|
131
|
-
// await runMain(commandModule.default(worker), { rawArgs: ctx.rawArgs })
|
|
132
|
-
// },
|
|
133
|
-
// }),
|
|
134
|
-
},
|
|
135
|
-
});
|
|
136
|
-
runMain(mainCommand);
|
|
137
|
-
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,OAAO,MAAM,cAAc,CAAA;AAGlC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC9C,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAA;AAIzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,MAAM,UAAU,GAAG;IACjB,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,GAAG;QACV,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,KAAK;KAChB;CAC+B,CAAA;AAElC,SAAS,iBAAiB,CAAC,aAAiC;IAC1D,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,OAAO,CAAC,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACnD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACnD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAA;AACH,CAAC;AAED,IAAI,MAAqB,CAAA;AACzB,IAAI,iBAAoC,CAAA;AACxC,IAAI,kBAGH,CAAA;AAED,KAAK,UAAU,UAAU;IACvB,MAAM,eAAe,CAAC,kBAAkB,CAAC,CAAA;AAC3C,CAAC;AAED,MAAM,WAAW,GAAG,aAAa,CAAC;IAChC,IAAI,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE;IACpC,IAAI,EAAE,EAAE,GAAG,UAAU,EAAE;IACvB,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAA4B,CAAC,CAAA;QAC3E,MAAM,GAAG,MAAM,MAAM,kCAAC,UAAU,EAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAExD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;gBACvC,IAAI,KAAK;oBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;iBAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACnC,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAED,kBAAkB,GAAG,EAAE,CAAA;QACvB,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAA;QAEjE,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;YACzE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;YACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAA;YAC7D,IAAI,UAAU,CAAC,KAAK;gBAClB,MAAM,IAAI,KAAK,CACb,0CAA0C,OAAO,KAAK,UAAU,CAAC,KAAK,EAAE,CACzE,CAAA;YACH,IAAI,CAAC,UAAU,CAAC,IAAI;gBAClB,MAAM,IAAI,KAAK,CACb,0CAA0C,OAAO,iBAAiB,CACnE,CAAA;YACH,MAAM,SAAS,GACb,UAAU,CAAC,eAAe,KAAK,UAAU,CAAC,IAAI;gBAC5C,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;gBAChD,CAAC,CAAC,YAAY,CAAA;YAClB,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;QAC1E,CAAC;QAED,iBAAiB,GAAG;YAClB,kBAAkB;YAClB,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;YAC3C,GAAG,qBAAqB;YACxB,UAAU;SACX,CAAA;IACH,CAAC;IACD,WAAW,EAAE;QACX,OAAO,EAAE,aAAa,CAAC;YACrB,KAAK,CAAC,GAAG,CAAC,GAAG;gBACX,MAAM,UAAU,EAAE,CAAA;YACpB,CAAC;SACF,CAAC;QACF,GAAG,EAAE,aAAa,CAAC;YACjB,KAAK,CAAC,GAAG,CAAC,GAAG;gBACX,MAAM,UAAU,EAAE,CAAA;gBAClB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CACvC,iBAAiB,EACjB,aAAa,EACb,MAAM,CACP,CAAA;gBACD,MAAM,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;YAC3D,CAAC;SACF,CAAC;QACF,OAAO,EAAE,aAAa,CAAC;YACrB,KAAK,CAAC,GAAG,CAAC,GAAG;gBACX,MAAM,UAAU,EAAE,CAAA;gBAClB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CACvC,iBAAiB,EACjB,YAAY,EACZ,MAAM,CACP,CAAA;gBACD,MAAM,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;YAC3D,CAAC;SACF,CAAC;QACF,KAAK,EAAE,aAAa,CAAC;YACnB,KAAK,CAAC,GAAG,CAAC,GAAG;gBACX,MAAM,UAAU,EAAE,CAAA;gBAClB,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;gBAC9D,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;YACvB,CAAC;SACF,CAAC;QACF,2BAA2B;QAC3B,qBAAqB;QACrB,yCAAyC;QACzC,2BAA2B;QAC3B,sBAAsB;QACtB,gBAAgB;QAChB,QAAQ;QACR,gDAAgD;QAChD,iDAAiD;QACjD,wDAAwD;QACxD,iDAAiD;QACjD,sCAAsC;QACtC,6CAA6C;QAC7C,kDAAkD;QAClD,0CAA0C;QAC1C,uCAAuC;QACvC,mDAAmD;QACnD,SAAS;QACT,6EAA6E;QAC7E,OAAO;QACP,MAAM;KACP;CACF,CAAC,CAAA;AAEF,OAAO,CAAC,WAAW,CAAC,CAAA"}
|
package/dist/codegen.d.ts
DELETED
package/dist/codegen.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { mkdir, writeFile } from 'node:fs/promises';
|
|
2
|
-
import { resolve } from 'node:path';
|
|
3
|
-
import dedent from 'dedent';
|
|
4
|
-
export async function generateTypings(applicationImports) {
|
|
5
|
-
await mkdir('.neemata', { recursive: true }).catch(() => { });
|
|
6
|
-
await writeFile(resolve('.neemata', 'types.d.ts'), dedent `
|
|
7
|
-
/// <reference types="nmtjs/runtime/types" />
|
|
8
|
-
|
|
9
|
-
declare module 'nmtjs/runtime/types' {
|
|
10
|
-
interface Applications {
|
|
11
|
-
${Object.entries(applicationImports)
|
|
12
|
-
.map(([appName, { specifier, type }]) => `'${appName}': { type: '${type}'; definition: typeof import('${specifier}').default }`)
|
|
13
|
-
.join('\n')}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
`);
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=codegen.js.map
|
package/dist/codegen.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,kBAGC;IAED,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAC5D,MAAM,SAAS,CACb,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,EACjC,MAAM,CAAA;;;;;UAKA,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;SACjC,GAAG,CACF,CAAC,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CACjC,IAAI,OAAO,eAAe,IAAI,iCAAiC,SAAS,cAAc,CACzF;SACA,IAAI,CAAC,IAAI,CAAC;;;KAGhB,CACF,CAAA;AACH,CAAC"}
|
package/dist/config.d.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { UserConfig } from 'vite';
|
|
2
|
-
export type ExternalDependency = string | RegExp;
|
|
3
|
-
type DeepPartial<T> = {
|
|
4
|
-
[P in keyof T]?: T[P] extends Record<any, unknown> ? DeepPartial<T[P]> : T[P];
|
|
5
|
-
};
|
|
6
|
-
export interface NeemataConfig {
|
|
7
|
-
/**
|
|
8
|
-
* Path to application entry point
|
|
9
|
-
*/
|
|
10
|
-
applications: {
|
|
11
|
-
/**
|
|
12
|
-
* Application name
|
|
13
|
-
*/
|
|
14
|
-
[appName: string]: {
|
|
15
|
-
type: 'neemata' | 'custom';
|
|
16
|
-
specifier: string;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Path to server entry point
|
|
21
|
-
*/
|
|
22
|
-
serverPath: string;
|
|
23
|
-
/**
|
|
24
|
-
* External dependencies to exclude from application bundle
|
|
25
|
-
*
|
|
26
|
-
* 'prod' - exclude production dependencies from package.json
|
|
27
|
-
*
|
|
28
|
-
* 'all' - exclude all dependencies from package.json
|
|
29
|
-
*
|
|
30
|
-
* ExternalDependency[] - array of package names or regular expressions to match package names
|
|
31
|
-
*/
|
|
32
|
-
externalDependencies: 'prod' | 'all' | ExternalDependency[];
|
|
33
|
-
/**
|
|
34
|
-
* Timeout in milliseconds for graceful shutdown of application workers
|
|
35
|
-
*/
|
|
36
|
-
timeout: number;
|
|
37
|
-
/**
|
|
38
|
-
* Environment variables to set for application workers
|
|
39
|
-
*
|
|
40
|
-
* Strings are paths to .env files
|
|
41
|
-
* Records are key-value pairs to set directly
|
|
42
|
-
*/
|
|
43
|
-
env: (Record<string, string> | string)[];
|
|
44
|
-
vite: UserConfig;
|
|
45
|
-
}
|
|
46
|
-
export declare function defineConfig(config?: DeepPartial<NeemataConfig>): NeemataConfig;
|
|
47
|
-
export {};
|
package/dist/config.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { resolve } from 'node:path';
|
|
2
|
-
import { mergeConfig } from 'vite';
|
|
3
|
-
export function defineConfig(config = {}) {
|
|
4
|
-
return {
|
|
5
|
-
serverPath: './src/server.ts',
|
|
6
|
-
externalDependencies: 'prod',
|
|
7
|
-
timeout: 10000,
|
|
8
|
-
env: [],
|
|
9
|
-
plugins: [],
|
|
10
|
-
...config,
|
|
11
|
-
// @ts-expect-error
|
|
12
|
-
applications: config.applications || {},
|
|
13
|
-
vite: mergeConfig({ build: { outDir: resolve('./dist'), minify: true } }, config.vite || {}),
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAgDlC,MAAM,UAAU,YAAY,CAC1B,MAAM,GAA+B,EAAE;IAEvC,OAAO;QACL,UAAU,EAAE,iBAAiB;QAC7B,oBAAoB,EAAE,MAAM;QAC5B,OAAO,EAAE,KAAK;QACd,GAAG,EAAE,EAAE;QACP,OAAO,EAAE,EAAE;QACX,GAAG,MAAM;QACT,mBAAmB;QACnB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;QACvC,IAAI,EAAE,WAAW,CACf,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EACtD,MAAM,CAAC,IAAI,IAAI,EAAE,CAClB;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/entrypoints/cli.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// // import { ApplicationType, ApplicationWorkerType } from '@nmtjs/application'
|
|
2
|
-
// import { runMain } from 'citty'
|
|
3
|
-
export {};
|
|
4
|
-
// import command from '../command.ts'
|
|
5
|
-
// import createWorker from './worker.ts'
|
|
6
|
-
// const worker = await createWorker({
|
|
7
|
-
// applicationWorkerData: undefined,
|
|
8
|
-
// // type: ApplicationType.Command,
|
|
9
|
-
// // workerType: ApplicationWorkerType.Command,
|
|
10
|
-
// })
|
|
11
|
-
// runMain(command(worker))
|
|
12
|
-
//# sourceMappingURL=cli.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/entrypoints/cli.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,kCAAkC;;AAElC,sCAAsC;AACtC,yCAAyC;AAEzC,sCAAsC;AACtC,sCAAsC;AACtC,sCAAsC;AACtC,kDAAkD;AAClD,KAAK;AAEL,2BAA2B"}
|
package/dist/entrypoints/main.js
DELETED
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
|
|
2
|
-
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
3
|
-
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
4
|
-
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
5
|
-
});
|
|
6
|
-
}
|
|
7
|
-
return path;
|
|
8
|
-
};
|
|
9
|
-
import EventEmitter from 'node:events';
|
|
10
|
-
import { fileURLToPath } from 'node:url';
|
|
11
|
-
import { createLogger } from '@nmtjs/core';
|
|
12
|
-
import { ApplicationServer, defaultPoolFactory, defaultWorkerFactory, isServerConfig, } from '../runtime/index.js';
|
|
13
|
-
import { createRuntimeEnvironment } from '../runtime/server/environment.js';
|
|
14
|
-
import { getErrorPolicy } from '../runtime/server/error-policy.js';
|
|
15
|
-
import { HMRCoordinator } from '../runtime/server/hmr-coordinator.js';
|
|
16
|
-
import { ServerLifecycle } from '../runtime/server/lifecycle.js';
|
|
17
|
-
class InvalidServerConfigError extends Error {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(`Server config file does not have a default export, or it is not a valid server config. Please, make sure the server config is defined using defineServer().`);
|
|
20
|
-
this.name = 'InvalidServerConfigError';
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
const _ext = new URL(import.meta.url).pathname.endsWith('.ts') ? '.ts' : '.js';
|
|
24
|
-
const _vite = __VITE_CONFIG__ ? JSON.parse(__VITE_CONFIG__) : undefined;
|
|
25
|
-
const applicationsConfig = __APPLICATIONS_CONFIG__ ? JSON.parse(__APPLICATIONS_CONFIG__) : {};
|
|
26
|
-
// Runtime environment setup
|
|
27
|
-
const mode = _vite?.mode === 'development' ? 'development' : 'production';
|
|
28
|
-
const isDev = mode === 'development';
|
|
29
|
-
const errorPolicy = getErrorPolicy(mode);
|
|
30
|
-
const bootstrapLogger = createLogger({ pinoOptions: { level: isDev ? 'debug' : 'info' } }, 'Main');
|
|
31
|
-
// Logger for main process (created lazily with config-based level)
|
|
32
|
-
let logger = bootstrapLogger;
|
|
33
|
-
// Vite server and events (dev only)
|
|
34
|
-
let _viteServerEvents;
|
|
35
|
-
let _viteServer;
|
|
36
|
-
// Server lifecycle management
|
|
37
|
-
let lifecycle;
|
|
38
|
-
let hmrCoordinator;
|
|
39
|
-
// Current server config (updated on HMR)
|
|
40
|
-
let currentServerConfig;
|
|
41
|
-
// Track termination state
|
|
42
|
-
let isTerminating = false;
|
|
43
|
-
function resolveViteRunnerTimeoutMs() {
|
|
44
|
-
const raw = process.env.NMTJS_VITE_RUNNER_TIMEOUT_MS;
|
|
45
|
-
if (!raw)
|
|
46
|
-
return undefined;
|
|
47
|
-
const parsed = Number.parseInt(raw, 10);
|
|
48
|
-
if (!Number.isFinite(parsed) || parsed <= 0) {
|
|
49
|
-
logger.warn({ value: raw }, 'Invalid NMTJS_VITE_RUNNER_TIMEOUT_MS, falling back to default');
|
|
50
|
-
return undefined;
|
|
51
|
-
}
|
|
52
|
-
return parsed;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Create the ApplicationServer instance using currentServerConfig.
|
|
56
|
-
*/
|
|
57
|
-
function createServer() {
|
|
58
|
-
if (!currentServerConfig) {
|
|
59
|
-
throw new Error('Server config not initialized');
|
|
60
|
-
}
|
|
61
|
-
const workerConfig = {
|
|
62
|
-
path: fileURLToPath(new URL(`./thread${_ext}`, import.meta.url)),
|
|
63
|
-
workerData: {
|
|
64
|
-
vite: _vite?.mode,
|
|
65
|
-
viteModuleRunnerTimeoutMs: resolveViteRunnerTimeoutMs(),
|
|
66
|
-
},
|
|
67
|
-
worker: _viteServerEvents
|
|
68
|
-
? ({ worker, vitePort }) => {
|
|
69
|
-
_viteServerEvents.emit('worker', { worker, vitePort });
|
|
70
|
-
}
|
|
71
|
-
: undefined,
|
|
72
|
-
events: _viteServerEvents,
|
|
73
|
-
};
|
|
74
|
-
return new ApplicationServer(currentServerConfig, applicationsConfig, workerConfig, undefined, // runOptions
|
|
75
|
-
errorPolicy, defaultWorkerFactory, defaultPoolFactory);
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Initialize Vite dev server (dev mode only).
|
|
79
|
-
*/
|
|
80
|
-
async function initializeVite() {
|
|
81
|
-
if (!_vite)
|
|
82
|
-
return;
|
|
83
|
-
const { createViteServer } = await import('../vite/servers/worker.js');
|
|
84
|
-
const neemataConfig = await import(__rewriteRelativeImportExtension(
|
|
85
|
-
/* @vite-ignore */
|
|
86
|
-
_vite.options.configPath)).then((m) => m.default);
|
|
87
|
-
_viteServerEvents = new EventEmitter();
|
|
88
|
-
_viteServerEvents.on('hmr-update', handleHMRUpdate);
|
|
89
|
-
_viteServer = await createViteServer(_vite.options, _vite.mode, neemataConfig, _viteServerEvents);
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Initialize the server lifecycle (called once at startup).
|
|
93
|
-
*/
|
|
94
|
-
function initializeLifecycle(configValue) {
|
|
95
|
-
if (!isServerConfig(configValue))
|
|
96
|
-
throw new InvalidServerConfigError();
|
|
97
|
-
// Store initial config
|
|
98
|
-
currentServerConfig = configValue;
|
|
99
|
-
const loggerOptions = currentServerConfig?.logger ?? {
|
|
100
|
-
pinoOptions: { level: isDev ? 'debug' : 'info' },
|
|
101
|
-
};
|
|
102
|
-
logger = createLogger(loggerOptions, 'Main');
|
|
103
|
-
// Create runtime environment
|
|
104
|
-
const env = createRuntimeEnvironment(mode, {
|
|
105
|
-
vite: _viteServer ?? undefined,
|
|
106
|
-
hmr: undefined, // hmrCoordinator created after lifecycle
|
|
107
|
-
});
|
|
108
|
-
// Create lifecycle (singleton)
|
|
109
|
-
lifecycle = new ServerLifecycle(env, createServer, logger);
|
|
110
|
-
// Create HMR coordinator (dev only, singleton)
|
|
111
|
-
if (isDev) {
|
|
112
|
-
hmrCoordinator = new HMRCoordinator(lifecycle, logger);
|
|
113
|
-
}
|
|
114
|
-
// Listen for lifecycle errors (once)
|
|
115
|
-
lifecycle.on('error', (error, handled) => {
|
|
116
|
-
if (!handled) {
|
|
117
|
-
logger.error(new Error('Unhandled lifecycle error', { cause: error }));
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Set up HMR acceptance for server config changes.
|
|
123
|
-
*/
|
|
124
|
-
function setupHMR() {
|
|
125
|
-
if (!import.meta.env.DEV || !import.meta.hot)
|
|
126
|
-
return;
|
|
127
|
-
import.meta.hot.accept('#server', async (module) => {
|
|
128
|
-
if (!module)
|
|
129
|
-
return;
|
|
130
|
-
if (!isServerConfig(module.default))
|
|
131
|
-
throw new InvalidServerConfigError();
|
|
132
|
-
// Update the config (createServer will use this on next reload)
|
|
133
|
-
currentServerConfig = module.default;
|
|
134
|
-
// Use HMR coordinator to handle the reload
|
|
135
|
-
if (hmrCoordinator) {
|
|
136
|
-
try {
|
|
137
|
-
await hmrCoordinator.scheduleReload();
|
|
138
|
-
}
|
|
139
|
-
catch (cause) {
|
|
140
|
-
logger.error(new Error('Error during HMR reload', { cause }));
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Handle HMR update event.
|
|
147
|
-
* When an application file is updated and there are failed workers, restart them.
|
|
148
|
-
*/
|
|
149
|
-
async function handleHMRUpdate(_event) {
|
|
150
|
-
// If server is in failed state, try to start it
|
|
151
|
-
if (lifecycle?.currentState === 'failed') {
|
|
152
|
-
try {
|
|
153
|
-
await lifecycle.start();
|
|
154
|
-
}
|
|
155
|
-
catch {
|
|
156
|
-
// Error will be handled by lifecycle
|
|
157
|
-
}
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
// If server is running, restart any failed workers
|
|
161
|
-
const server = lifecycle?.getServer();
|
|
162
|
-
if (server) {
|
|
163
|
-
try {
|
|
164
|
-
const restarted = await server.restartFailedWorkers();
|
|
165
|
-
if (restarted > 0) {
|
|
166
|
-
logger.info({ count: restarted }, 'Restarted failed workers after HMR update');
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
catch (error) {
|
|
170
|
-
logger.error(new Error('Failed to restart workers after HMR update', {
|
|
171
|
-
cause: error,
|
|
172
|
-
}));
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Handle startup error.
|
|
178
|
-
*/
|
|
179
|
-
function handleStartupError(error) {
|
|
180
|
-
const normalized = error instanceof Error ? error : new Error(String(error));
|
|
181
|
-
logger.error(new Error('Failed to start application server', { cause: normalized }));
|
|
182
|
-
}
|
|
183
|
-
/**
|
|
184
|
-
* Handle process termination signals.
|
|
185
|
-
*/
|
|
186
|
-
async function handleTermination() {
|
|
187
|
-
if (isTerminating)
|
|
188
|
-
return;
|
|
189
|
-
isTerminating = true;
|
|
190
|
-
logger.info('Shutting down...');
|
|
191
|
-
try {
|
|
192
|
-
await lifecycle?.stop();
|
|
193
|
-
}
|
|
194
|
-
catch (error) {
|
|
195
|
-
logger.error(new Error('Failed to stop server', { cause: error }));
|
|
196
|
-
}
|
|
197
|
-
try {
|
|
198
|
-
await _viteServer?.close();
|
|
199
|
-
}
|
|
200
|
-
catch (error) {
|
|
201
|
-
logger.error(new Error('Failed to close Vite server', { cause: error }));
|
|
202
|
-
}
|
|
203
|
-
process.exit(0);
|
|
204
|
-
}
|
|
205
|
-
/**
|
|
206
|
-
* Handle unexpected errors.
|
|
207
|
-
*/
|
|
208
|
-
function handleUnexpectedError(error) {
|
|
209
|
-
const normalized = error instanceof Error ? error : new Error(String(error));
|
|
210
|
-
logger.error(new Error('Unexpected Error', { cause: normalized }));
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* Main entry point.
|
|
214
|
-
*/
|
|
215
|
-
async function main() {
|
|
216
|
-
// Set up process handlers
|
|
217
|
-
process.once('SIGTERM', handleTermination);
|
|
218
|
-
process.once('SIGINT', handleTermination);
|
|
219
|
-
process.on('uncaughtException', handleUnexpectedError);
|
|
220
|
-
process.on('unhandledRejection', handleUnexpectedError);
|
|
221
|
-
// Initialize Vite (dev mode only)
|
|
222
|
-
await initializeVite();
|
|
223
|
-
// Load server config
|
|
224
|
-
const serverConfig = await import(
|
|
225
|
-
// @ts-expect-error
|
|
226
|
-
'#server').then((m) => m.default);
|
|
227
|
-
// Initialize lifecycle (sync, creates singletons)
|
|
228
|
-
initializeLifecycle(serverConfig);
|
|
229
|
-
// Set up HMR
|
|
230
|
-
setupHMR();
|
|
231
|
-
// Start the server
|
|
232
|
-
try {
|
|
233
|
-
await lifecycle.start();
|
|
234
|
-
}
|
|
235
|
-
catch (error) {
|
|
236
|
-
handleStartupError(error);
|
|
237
|
-
if (!isDev) {
|
|
238
|
-
process.exit(1);
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
main().catch((error) => {
|
|
243
|
-
logger.fatal(new Error('Fatal error during startup', { cause: error }));
|
|
244
|
-
if (!isDev) {
|
|
245
|
-
process.exit(1);
|
|
246
|
-
}
|
|
247
|
-
});
|
|
248
|
-
//# sourceMappingURL=main.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/entrypoints/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { MessagePort } from 'node:worker_threads';
|
|
2
|
-
export type RunWorkerOptions = {
|
|
3
|
-
port: MessagePort;
|
|
4
|
-
vitePort?: MessagePort;
|
|
5
|
-
runtime: {
|
|
6
|
-
type: 'application';
|
|
7
|
-
name: string;
|
|
8
|
-
path: string;
|
|
9
|
-
transportsData: any;
|
|
10
|
-
} | {
|
|
11
|
-
type: 'jobs';
|
|
12
|
-
jobWorkerPool: string;
|
|
13
|
-
};
|
|
14
|
-
vite?: 'development' | 'production';
|
|
15
|
-
viteModuleRunnerTimeoutMs?: number;
|
|
16
|
-
};
|