@velarscript/server 0.20.0 → 0.21.0

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 CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  The official convention-based VelarScript server application framework. It is
4
4
  activated explicitly in `velar.json`, composes `@velarscript/node`, and owns
5
- root `application.yml` loading, application startup assembly, typed
5
+ the explicit `server.configuration` path, application startup assembly, typed
6
6
  application-scoped connection lifecycle, and a target-specific realtime
7
7
  session module.
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,gCAAgC,EACrC,KAAK,SAAS,EACf,MAAM,iCAAiC,CAAC;AAKzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gCAAgC,GAAG,SAAS,GAAG,SAAS,CAmDrG"}
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,gCAAgC,EACrC,KAAK,SAAS,EACf,MAAM,iCAAiC,CAAC;AAKzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gCAAgC,GAAG,SAAS,GAAG,SAAS,CAkDrG"}
package/dist/analyzer.js CHANGED
@@ -1,4 +1,4 @@
1
- import { describeType, nullType, nonOptional, numberType, optionalOf, stringType, unknownType, } from "@velarscript/compiler/extension";
1
+ import { describeType, nullType, nonOptional, numberType, unknownType, } from "@velarscript/compiler/extension";
2
2
  import { isNodeRouteInputType, nodeProviderType, nodeRouteInputValue } from "@velarscript/node/compiler";
3
3
  const emptyInputsType = { kind: "object", fields: new Map() };
4
4
  export function inferServerIntrinsic(context) {
@@ -35,12 +35,10 @@ export function inferServerIntrinsic(context) {
35
35
  return nodeProviderType(inputs, identity);
36
36
  }
37
37
  case "server.configuration": {
38
- arity(1, 3);
38
+ arity(1, 2);
39
39
  const result = runtimeTypeAt(0);
40
40
  if (argumentAt(1))
41
- inferAt(1, optionalOf(stringType));
42
- if (argumentAt(2))
43
- inferAt(2, numberType);
41
+ inferAt(1, numberType);
44
42
  return { kind: "promise", value: result };
45
43
  }
46
44
  case "server.database": {
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type CompilerExtension, type ModuleInterface } from "@velarscript/compiler";
2
- export declare const VELAR_SERVER_API_VERSION = "0.14";
2
+ export declare const VELAR_SERVER_API_VERSION = "0.15";
3
3
  export declare const serverModuleInterfaces: ReadonlyMap<string, ModuleInterface>;
4
4
  export declare const serverModuleSources: ReadonlyMap<string, string>;
5
5
  export declare const velarCompilerExtension: CompilerExtension;
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAGtB,KAAK,eAAe,EAErB,MAAM,uBAAuB,CAAC;AAiB/B,eAAO,MAAM,wBAAwB,SAAS,CAAC;AA8N/C,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAA4B,CAAC;AASrG,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAyB,CAAC;AAMtF,eAAO,MAAM,sBAAsB,EAAE,iBA+BnC,CAAC;AAEH,OAAO,EAAC,qBAAqB,EAAE,KAAK,iBAAiB,EAAC,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAGtB,KAAK,eAAe,EAErB,MAAM,uBAAuB,CAAC;AAiB/B,eAAO,MAAM,wBAAwB,SAAS,CAAC;AA+N/C,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAA4B,CAAC;AAgBrG,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAyB,CAAC;AAMtF,eAAO,MAAM,sBAAsB,EAAE,iBAsCnC,CAAC;AAEH,OAAO,EAAC,qBAAqB,EAAE,KAAK,iBAAiB,EAAC,MAAM,qBAAqB,CAAC"}
package/dist/compiler.js CHANGED
@@ -3,8 +3,8 @@ import { VELAR_STRICT_JSON_RUNTIME, VELAR_TYPE_REGISTRY_RUNTIME, } from "@velars
3
3
  import { VELAR_NODE_API_VERSION, nodeModuleDependencies, nodeModuleInterfaces, nodeModuleSources, velarNodeCompilerExtension, } from "@velarscript/node/compiler";
4
4
  import { inferServerIntrinsic } from "./analyzer.js";
5
5
  import { VELAR_SERVER_REALTIME_RUNTIME } from "./realtime-runtime.js";
6
- import { VELAR_SERVER_RUNTIME } from "./runtime.js";
7
- export const VELAR_SERVER_API_VERSION = "0.14";
6
+ import { velarServerRuntime } from "./runtime.js";
7
+ export const VELAR_SERVER_API_VERSION = "0.15";
8
8
  const unknownType = { kind: "unknown" };
9
9
  const stringType = { kind: "string" };
10
10
  const numberType = { kind: "number" };
@@ -169,9 +169,10 @@ function moduleInterface(exports, namedTypes = new Map(), namedTypeIdentities =
169
169
  };
170
170
  }
171
171
  const serverModuleInterface = moduleInterface(new Map([
172
- ["application", functionType(["app", "path"], [serveAppType, { kind: "union", members: [stringType, { kind: "null" }] }], functionType([], [], promise(serverType)), 1)],
172
+ ["application", functionType(["app"], [serveAppType], promise(serverType))],
173
+ ["applicationConfigurationPath", stringType],
173
174
  ["authenticate", intrinsic("server.authenticate", ["credential", "verify"], [unknownType, unknownType], providerType)],
174
- ["configuration", intrinsic("server.configuration", ["target", "path", "maxBytes"], [unknownType, { kind: "union", members: [stringType, { kind: "null" }] }, numberType], promise(unknownType), 1)],
175
+ ["configuration", intrinsic("server.configuration", ["target", "maxBytes"], [unknownType, numberType], promise(unknownType), 1)],
175
176
  ["database", intrinsic("server.database", ["connect", "disconnect"], [unknownType, unknownType], providerType)],
176
177
  ]));
177
178
  const serverRealtimeModuleInterface = moduleInterface(new Map([
@@ -190,12 +191,18 @@ const composedModuleInterfaces = new Map(nodeModuleInterfaces);
190
191
  composedModuleInterfaces.set("velar/server", serverModuleInterface);
191
192
  composedModuleInterfaces.set("velar/realtime", serverRealtimeModuleInterface);
192
193
  export const serverModuleInterfaces = composedModuleInterfaces;
193
- const composedModuleSources = new Map(nodeModuleSources);
194
- composedModuleSources.set("velar/server", String.raw `
194
+ function serverRuntimeSource(configurationPath) {
195
+ return String.raw `
195
196
  ${VELAR_STRICT_JSON_RUNTIME}
196
197
  ${VELAR_TYPE_REGISTRY_RUNTIME}
197
- ${VELAR_SERVER_RUNTIME}
198
- `.trimStart());
198
+ ${velarServerRuntime(configurationPath)}
199
+ `.trimStart();
200
+ }
201
+ const composedModuleSources = new Map(nodeModuleSources);
202
+ // 这份无项目上下文的公开源码只用于编译器能力枚举,不替任何应用猜配置
203
+ // 文件。实际项目会由 modules.source 注入 velar.json 中已校验的路径;若宿主
204
+ // 绕过项目装配直接执行此源码,运行时会给出缺少 server.configuration 的错误。
205
+ composedModuleSources.set("velar/server", serverRuntimeSource(""));
199
206
  composedModuleSources.set("velar/realtime", VELAR_SERVER_REALTIME_RUNTIME);
200
207
  export const serverModuleSources = composedModuleSources;
201
208
  const serverModuleDependencies = new Map(nodeModuleDependencies);
@@ -231,6 +238,14 @@ export const velarCompilerExtension = Object.freeze({
231
238
  interfaces: serverModuleInterfaces,
232
239
  sources: serverModuleSources,
233
240
  dependencies: serverModuleDependencies,
241
+ source(specifier, projectConfig) {
242
+ if (specifier !== "velar/server")
243
+ return serverModuleSources.get(specifier) ?? null;
244
+ const configured = projectConfig && typeof projectConfig === "object" && !Array.isArray(projectConfig)
245
+ ? projectConfig.configuration
246
+ : undefined;
247
+ return serverRuntimeSource(typeof configured === "string" ? configured : "");
248
+ },
234
249
  }),
235
250
  });
236
251
  export { velarProjectExtension } from "./project-config.js";
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,12 +1,10 @@
1
1
  export { VELAR_SERVER_API_VERSION } from "./compiler.ts";
2
2
  export { velarProjectExtension, type VelarServerConfig } from "./project-config.ts";
3
3
  export declare const VELAR_SERVER_MODULES: readonly ["velar/server", "velar/realtime"];
4
- export declare const VELAR_SERVER_CONFIGURATION_FILES: readonly ["application.yml"];
5
4
  export interface VelarServerFrameworkManifest {
6
5
  readonly name: "@velarscript/server";
7
6
  readonly apiVersion: string;
8
7
  readonly modules: typeof VELAR_SERVER_MODULES;
9
- readonly configurationFiles: typeof VELAR_SERVER_CONFIGURATION_FILES;
10
8
  }
11
9
  export declare const velarServerFramework: VelarServerFrameworkManifest;
12
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAC,qBAAqB,EAAE,KAAK,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAElF,eAAO,MAAM,oBAAoB,6CAGtB,CAAC;AAEZ,eAAO,MAAM,gCAAgC,8BAElC,CAAC;AAEZ,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,EAAE,OAAO,gCAAgC,CAAC;CACtE;AAED,eAAO,MAAM,oBAAoB,EAAE,4BAKjC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAC,qBAAqB,EAAE,KAAK,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAElF,eAAO,MAAM,oBAAoB,6CAGtB,CAAC;AAEZ,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,oBAAoB,CAAC;CAC/C;AAED,eAAO,MAAM,oBAAoB,EAAE,4BAIjC,CAAC"}
package/dist/index.js CHANGED
@@ -5,13 +5,9 @@ export const VELAR_SERVER_MODULES = Object.freeze([
5
5
  "velar/server",
6
6
  "velar/realtime",
7
7
  ]);
8
- export const VELAR_SERVER_CONFIGURATION_FILES = Object.freeze([
9
- "application.yml",
10
- ]);
11
8
  export const velarServerFramework = Object.freeze({
12
9
  name: "@velarscript/server",
13
10
  apiVersion: VELAR_SERVER_API_VERSION,
14
11
  modules: VELAR_SERVER_MODULES,
15
- configurationFiles: VELAR_SERVER_CONFIGURATION_FILES,
16
12
  });
17
13
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAC,qBAAqB,EAAyB,MAAM,qBAAqB,CAAC;AAElF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,cAAc;IACd,gBAAgB;CACR,CAAC,CAAC;AAEZ,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5D,iBAAiB;CACT,CAAC,CAAC;AASZ,MAAM,CAAC,MAAM,oBAAoB,GAAiC,MAAM,CAAC,MAAM,CAAC;IAC9E,IAAI,EAAE,qBAAqB;IAC3B,UAAU,EAAE,wBAAwB;IACpC,OAAO,EAAE,oBAAoB;IAC7B,kBAAkB,EAAE,gCAAgC;CACrD,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAC,qBAAqB,EAAyB,MAAM,qBAAqB,CAAC;AAElF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,cAAc;IACd,gBAAgB;CACR,CAAC,CAAC;AAQZ,MAAM,CAAC,MAAM,oBAAoB,GAAiC,MAAM,CAAC,MAAM,CAAC;IAC9E,IAAI,EAAE,qBAAqB;IAC3B,UAAU,EAAE,wBAAwB;IACpC,OAAO,EAAE,oBAAoB;CAC9B,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export interface VelarServerConfig {
2
- /** Exported zero-argument startup function in the project entry module. */
3
- readonly app: string;
2
+ /** Project-root-relative runtime configuration copied to the same build path. */
3
+ readonly configuration: string;
4
4
  }
5
5
  export declare const velarProjectExtension: Readonly<{
6
6
  id: "@velarscript/server";
@@ -1 +1 @@
1
- {"version":3,"file":"project-config.d.ts","sourceRoot":"","sources":["../src/project-config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,qBAAqB;;;iBAGnB,OAAO,gBAAgB,MAAM,GAAG,iBAAiB;EAG9D,CAAC"}
1
+ {"version":3,"file":"project-config.d.ts","sourceRoot":"","sources":["../src/project-config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,eAAO,MAAM,qBAAqB;;;iBAGnB,OAAO,gBAAgB,MAAM,GAAG,iBAAiB;EAG9D,CAAC"}
@@ -6,23 +6,26 @@ export const velarProjectExtension = Object.freeze({
6
6
  },
7
7
  });
8
8
  function serverConfig(value, manifestPath) {
9
- if (value !== undefined && (!value || typeof value !== "object" || Array.isArray(value))) {
9
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
10
10
  throw new Error(`${manifestPath}: 'server' must be an object`);
11
11
  }
12
12
  const server = value;
13
- if (server)
14
- knownFields(server, new Set(["app"]), "server", manifestPath);
15
- const app = stringField(server?.app, "server.app", "start", 128);
16
- if (!/^[A-Za-z_][A-Za-z0-9_]*$/u.test(app)) {
17
- throw new Error(`${manifestPath}: 'server.app' must name an exported VelarScript binding`);
18
- }
19
- return Object.freeze({ app });
13
+ knownFields(server, new Set(["configuration"]), "server", manifestPath);
14
+ return Object.freeze({ configuration: configurationPath(server.configuration, manifestPath) });
20
15
  }
21
- function stringField(value, field, fallback, maximum) {
22
- if (value === undefined)
23
- return fallback;
24
- if (typeof value !== "string" || value.length === 0 || value.length > maximum || value.includes("\0")) {
25
- throw new Error(`'${field}' must be a bounded non-empty string`);
16
+ function configurationPath(value, manifestPath) {
17
+ if (typeof value !== "string" || value.length === 0 || value.length > 1024 || value.includes("\0")) {
18
+ throw new Error(`${manifestPath}: 'server.configuration' must be bounded non-empty text`);
19
+ }
20
+ if (value.startsWith("/") || /^[A-Za-z]:[\\/]/u.test(value) || value.includes("\\")) {
21
+ throw new Error(`${manifestPath}: 'server.configuration' must be a project-relative path using '/' separators`);
22
+ }
23
+ const segments = value.split("/");
24
+ if (segments.some((segment) => segment.length === 0 || segment === "." || segment === "..")) {
25
+ throw new Error(`${manifestPath}: 'server.configuration' must stay inside the project root`);
26
+ }
27
+ if (!/\.(?:json|ya?ml)$/iu.test(value)) {
28
+ throw new Error(`${manifestPath}: 'server.configuration' must end in .yml, .yaml, or .json`);
26
29
  }
27
30
  return value;
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project-config.js","sourceRoot":"","sources":["../src/project-config.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,EAAE,EAAE,qBAAqB;IACzB,WAAW,EAAE,QAAQ;IACrB,KAAK,CAAC,KAAc,EAAE,YAAoB;QACxC,OAAO,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,YAAY,CAAC,KAAc,EAAE,YAAoB;IACxD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,8BAA8B,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,MAAM,GAAG,KAA6C,CAAC;IAC7D,IAAI,MAAM;QAAE,WAAW,CAAC,MAAiC,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IACrG,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACjE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,0DAA0D,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAC,GAAG,EAAC,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,KAAa,EAAE,QAAgB,EAAE,OAAe;IACnF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtG,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,sCAAsC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAA8B,EAAE,OAA4B,EAAE,KAAa,EAAE,YAAoB;IACpH,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,cAAc,KAAK,YAAY,GAAG,GAAG,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"project-config.js","sourceRoot":"","sources":["../src/project-config.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,EAAE,EAAE,qBAAqB;IACzB,WAAW,EAAE,QAAQ;IACrB,KAAK,CAAC,KAAc,EAAE,YAAoB;QACxC,OAAO,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,YAAY,CAAC,KAAc,EAAE,YAAoB;IACxD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,8BAA8B,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,MAAM,GAAG,KAA2C,CAAC;IAC3D,WAAW,CAAC,MAAiC,EAAE,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IACnG,OAAO,MAAM,CAAC,MAAM,CAAC,EAAC,aAAa,EAAE,iBAAiB,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,EAAC,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc,EAAE,YAAoB;IAC7D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnG,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,yDAAyD,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpF,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,+EAA+E,CAAC,CAAC;IAClH,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,IAAI,CAAC,EAAE,CAAC;QAC5F,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,4DAA4D,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,4DAA4D,CAAC,CAAC;IAC/F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAA8B,EAAE,OAA4B,EAAE,KAAa,EAAE,YAAoB;IACpH,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,cAAc,KAAK,YAAY,GAAG,GAAG,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC"}
package/dist/runtime.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VELAR_SERVER_RUNTIME: string;
1
+ export declare function velarServerRuntime(configurationPath: string): string;
2
2
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,QAiLpB,CAAC"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAiKpE"}
package/dist/runtime.js CHANGED
@@ -1,8 +1,10 @@
1
- // Convention-based server application assembly. The Node extension owns the
2
- // transport and route primitives; this application extension owns only root
3
- // configuration discovery, startup assembly, and connection lifetime.
4
- export const VELAR_SERVER_RUNTIME = String.raw `
5
- import { exists as __velarServerExists, readText as __velarServerReadText } from "velar/fs";
1
+ // Server application assembly. The Node extension owns transport and route
2
+ // primitives; this application extension owns the manifest-selected
3
+ // configuration, startup assembly, and connection lifetime.
4
+ export function velarServerRuntime(configurationPath) {
5
+ const encodedConfigurationPath = JSON.stringify(configurationPath);
6
+ return String.raw `
7
+ import { readText as __velarServerReadText } from "velar/fs";
6
8
  import { ServeApp as __velarServerServeApp, __velarServeAuthenticationCredential as __velarServerAuthenticationCredential, __velarServeAuthenticationError as __velarServerAuthenticationError, provide as __velarServerProvide, serve as __velarServerServe } from "velar/serve";
7
9
  import { parseDocument as __velarServerParseYamlDocument } from "yaml";
8
10
 
@@ -26,8 +28,7 @@ const __velarServerRegExpTest = __velarServerRegExp.prototype.test;
26
28
  const __velarServerStringEndsWith = __velarServerString.prototype.endsWith;
27
29
  const __velarServerStringIncludes = __velarServerString.prototype.includes;
28
30
  const __velarServerStringToLowerCase = __velarServerString.prototype.toLowerCase;
29
- const __velarServerConfigurationPathName = "application.yml";
30
- const __velarServerUnsupportedConfigurationPaths = __velarServerObjectFreeze(["application.yaml", "application.json"]);
31
+ export const applicationConfigurationPath = ${encodedConfigurationPath};
31
32
  const __velarServerOptionFields = __velarServerObjectFreeze(["host", "port", "maxBodyBytes"]);
32
33
  const __velarServerMaximumConfigurationBytes = 1024 * 1024;
33
34
  const __velarServerDefaultConfigurationBytes = 64 * 1024;
@@ -72,24 +73,6 @@ function __velarServerConfigurationExtension(path) {
72
73
  throw new __velarServerTypeError("Server configuration path must end in .yml, .yaml, or .json");
73
74
  }
74
75
 
75
- async function __velarServerConfigurationPath(path, required) {
76
- if (path !== null) {
77
- __velarServerConfigurationExtension(path);
78
- return path;
79
- }
80
- for (let index = 0; index < __velarServerUnsupportedConfigurationPaths.length; index += 1) {
81
- const unsupported = __velarServerUnsupportedConfigurationPaths[index];
82
- if (await __velarServerExists(unsupported)) {
83
- throw new __velarServerTypeError("Unsupported conventional Server configuration '" + unsupported + "'; rename it to application.yml or pass it as an explicit configuration path");
84
- }
85
- }
86
- if (!await __velarServerExists(__velarServerConfigurationPathName)) {
87
- if (!required) return null;
88
- throw new __velarServerTypeError("Server configuration is missing; create application.yml in the project root");
89
- }
90
- return __velarServerConfigurationPathName;
91
- }
92
-
93
76
  function __velarServerYaml(source, path) {
94
77
  let document;
95
78
  try {
@@ -101,9 +84,12 @@ function __velarServerYaml(source, path) {
101
84
  return document.toJS({maxAliasCount: 100});
102
85
  }
103
86
 
104
- async function __velarServerReadConfiguration(path, maxBytes, required) {
105
- const resolved = await __velarServerConfigurationPath(path, required);
106
- if (resolved === null) return null;
87
+ async function __velarServerReadConfiguration(path, maxBytes) {
88
+ const resolved = path;
89
+ if (resolved === "") {
90
+ throw new __velarServerTypeError("Server configuration path is missing; declare 'server.configuration' in velar.json");
91
+ }
92
+ __velarServerConfigurationExtension(resolved);
107
93
  let source;
108
94
  try { source = await __velarServerReadText(resolved, maxBytes); }
109
95
  catch (error) { throw new __velarServerTypeError("Cannot read server configuration '" + resolved + "': " + (error instanceof __velarServerError ? error.message : "read failed")); }
@@ -134,21 +120,18 @@ function __velarServerOptions(configuration) {
134
120
  return {host, port, maxBodyBytes};
135
121
  }
136
122
 
137
- export async function configuration(Type, path = null, maxBytes = __velarServerDefaultConfigurationBytes) {
123
+ export async function configuration(Type, maxBytes = __velarServerDefaultConfigurationBytes) {
138
124
  Type = __velarRequireRuntimeType(Type, "server.configuration");
139
125
  if (!__velarServerCall(__velarServerNumberIsSafeInteger, __velarServerNumber, [maxBytes]) || maxBytes < 1 || maxBytes > __velarServerMaximumConfigurationBytes) {
140
126
  throw new __velarServerRangeError("server.configuration maxBytes must be an integer from 1 through 1048576");
141
127
  }
142
- return Type.parse(await __velarServerReadConfiguration(path, maxBytes, true));
128
+ return Type.parse(await __velarServerReadConfiguration(applicationConfigurationPath, maxBytes));
143
129
  }
144
130
 
145
- export function application(app, path = null) {
131
+ export async function application(app) {
146
132
  app = __velarServerServeApp.parse(app);
147
- if (path !== null) __velarServerConfigurationExtension(path);
148
- return async () => {
149
- const options = __velarServerOptions(await __velarServerReadConfiguration(path, __velarServerDefaultConfigurationBytes, false));
150
- return await __velarServerServe(app, options.port, options.host, options.maxBodyBytes);
151
- };
133
+ const options = __velarServerOptions(await __velarServerReadConfiguration(applicationConfigurationPath, __velarServerDefaultConfigurationBytes));
134
+ return await __velarServerServe(app, options.port, options.host, options.maxBodyBytes);
152
135
  }
153
136
 
154
137
  export function authenticate(credential, verify) {
@@ -179,4 +162,5 @@ export function database(connect, disconnect) {
179
162
  }
180
163
 
181
164
  `.trimStart();
165
+ }
182
166
  //# sourceMappingURL=runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,4EAA4E;AAC5E,sEAAsE;AAEtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiL7C,CAAC,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,oEAAoE;AACpE,4DAA4D;AAE5D,MAAM,UAAU,kBAAkB,CAAC,iBAAyB;IAC1D,MAAM,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;IACnE,OAAO,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;8CAyB2B,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqIrE,CAAC,SAAS,EAAE,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@velarscript/server",
3
- "version": "0.20.0",
4
- "description": "The official convention-based VelarScript server application framework.",
3
+ "version": "0.21.0",
4
+ "description": "The official explicit-configuration VelarScript server application framework.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "files": [
@@ -27,16 +27,16 @@
27
27
  "velar": {
28
28
  "extension": {
29
29
  "kind": "application",
30
- "apiVersion": "0.14",
30
+ "apiVersion": "0.15",
31
31
  "manifestKey": "server",
32
32
  "composes": {
33
- "@velarscript/node": "0.14"
33
+ "@velarscript/node": "0.15"
34
34
  }
35
35
  }
36
36
  },
37
37
  "dependencies": {
38
- "@velarscript/compiler": "0.20.0",
39
- "@velarscript/node": "0.20.0",
38
+ "@velarscript/compiler": "0.21.0",
39
+ "@velarscript/node": "0.21.0",
40
40
  "yaml": "^2.9.0"
41
41
  },
42
42
  "exports": {