@oml/server 0.14.0 → 0.14.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/out/cli.d.ts +1 -0
- package/{src/cli.ts → out/cli.js} +23 -45
- package/out/cli.js.map +1 -0
- package/out/index.d.ts +7 -0
- package/{src/index.ts → out/index.js} +1 -1
- package/out/index.js.map +1 -0
- package/out/lsp/diagram-server.d.ts +6 -0
- package/out/lsp/diagram-server.js +36 -0
- package/out/lsp/diagram-server.js.map +1 -0
- package/out/lsp/language-server.d.ts +13 -0
- package/{src/lsp/language-server.ts → out/lsp/language-server.js} +62 -120
- package/out/lsp/language-server.js.map +1 -0
- package/out/lsp/protocol/browser-fs-protocol.d.ts +14 -0
- package/{src/lsp/protocol/browser-fs-protocol.ts → out/lsp/protocol/browser-fs-protocol.js} +2 -14
- package/out/lsp/protocol/browser-fs-protocol.js.map +1 -0
- package/{src/lsp/protocol/reasoner-protocol.ts → out/lsp/protocol/reasoner-protocol.d.ts} +10 -24
- package/out/lsp/protocol/reasoner-protocol.js +12 -0
- package/out/lsp/protocol/reasoner-protocol.js.map +1 -0
- package/out/lsp/providers/browser-fs-provider.d.ts +21 -0
- package/{src/lsp/providers/browser-fs-provider.ts → out/lsp/providers/browser-fs-provider.js} +22 -34
- package/out/lsp/providers/browser-fs-provider.js.map +1 -0
- package/out/lsp/providers/hybrid-fs-provider.d.ts +28 -0
- package/{src/lsp/providers/hybrid-fs-provider.ts → out/lsp/providers/hybrid-fs-provider.js} +22 -44
- package/out/lsp/providers/hybrid-fs-provider.js.map +1 -0
- package/out/rest/export.d.ts +16 -0
- package/{src/rest/export.ts → out/rest/export.js} +14 -35
- package/out/rest/export.js.map +1 -0
- package/out/rest/routes.d.ts +49 -0
- package/{src/rest/routes.ts → out/rest/routes.js} +5 -27
- package/out/rest/routes.js.map +1 -0
- package/out/rest/server.d.ts +15 -0
- package/{src/rest/server.ts → out/rest/server.js} +207 -479
- package/out/rest/server.js.map +1 -0
- package/out/rest/template.d.ts +18 -0
- package/{src/rest/template.ts → out/rest/template.js} +21 -80
- package/out/rest/template.js.map +1 -0
- package/out/rest/validation.d.ts +49 -0
- package/{src/rest/validation.ts → out/rest/validation.js} +59 -163
- package/out/rest/validation.js.map +1 -0
- package/package.json +9 -4
- package/src/lsp/diagram-server.ts +0 -48
- package/tsconfig.json +0 -22
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export declare const REST_ROUTES: readonly [{
|
|
2
|
+
readonly method: "POST";
|
|
3
|
+
readonly path: "/v0/query";
|
|
4
|
+
readonly operationId: "query";
|
|
5
|
+
}, {
|
|
6
|
+
readonly method: "POST";
|
|
7
|
+
readonly path: "/v0/update";
|
|
8
|
+
readonly operationId: "update";
|
|
9
|
+
}, {
|
|
10
|
+
readonly method: "POST";
|
|
11
|
+
readonly path: "/v0/fuzzysearch";
|
|
12
|
+
readonly operationId: "fuzzysearch";
|
|
13
|
+
}, {
|
|
14
|
+
readonly method: "POST";
|
|
15
|
+
readonly path: "/v0/lint";
|
|
16
|
+
readonly operationId: "lint";
|
|
17
|
+
}, {
|
|
18
|
+
readonly method: "POST";
|
|
19
|
+
readonly path: "/v0/reason";
|
|
20
|
+
readonly operationId: "reason";
|
|
21
|
+
}, {
|
|
22
|
+
readonly method: "POST";
|
|
23
|
+
readonly path: "/v0/validate";
|
|
24
|
+
readonly operationId: "validate";
|
|
25
|
+
}, {
|
|
26
|
+
readonly method: "POST";
|
|
27
|
+
readonly path: "/v0/render";
|
|
28
|
+
readonly operationId: "render";
|
|
29
|
+
}, {
|
|
30
|
+
readonly method: "POST";
|
|
31
|
+
readonly path: "/v0/export";
|
|
32
|
+
readonly operationId: "export";
|
|
33
|
+
}];
|
|
34
|
+
export type RestRoute = (typeof REST_ROUTES)[number];
|
|
35
|
+
export type RestRouteClient = {
|
|
36
|
+
queryWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
37
|
+
updateWorkspace: (body: Record<string, unknown>) => Promise<unknown>;
|
|
38
|
+
fuzzySearchWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
39
|
+
lintWorkspace: (body: Record<string, unknown>) => Promise<unknown>;
|
|
40
|
+
reasonWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
41
|
+
validateWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
42
|
+
exportWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
43
|
+
renderWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
44
|
+
};
|
|
45
|
+
export declare function dispatchRestRoute(method: string, pathname: string, body: Record<string, unknown>, client: RestRouteClient): Promise<{
|
|
46
|
+
operationId: string;
|
|
47
|
+
result: unknown;
|
|
48
|
+
} | undefined>;
|
|
49
|
+
export declare function createOpenApiSpec(httpHost: string, httpPort: number): Record<string, unknown>;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// Copyright (c) 2026 Modelware. All rights reserved.
|
|
2
|
-
|
|
3
2
|
export const REST_ROUTES = [
|
|
4
3
|
{ method: 'POST', path: '/v0/query', operationId: 'query' },
|
|
5
4
|
{ method: 'POST', path: '/v0/update', operationId: 'update' },
|
|
@@ -9,27 +8,8 @@ export const REST_ROUTES = [
|
|
|
9
8
|
{ method: 'POST', path: '/v0/validate', operationId: 'validate' },
|
|
10
9
|
{ method: 'POST', path: '/v0/render', operationId: 'render' },
|
|
11
10
|
{ method: 'POST', path: '/v0/export', operationId: 'export' },
|
|
12
|
-
]
|
|
13
|
-
|
|
14
|
-
export type RestRoute = (typeof REST_ROUTES)[number];
|
|
15
|
-
|
|
16
|
-
export type RestRouteClient = {
|
|
17
|
-
queryWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
18
|
-
updateWorkspace: (body: Record<string, unknown>) => Promise<unknown>;
|
|
19
|
-
fuzzySearchWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
20
|
-
lintWorkspace: (body: Record<string, unknown>) => Promise<unknown>;
|
|
21
|
-
reasonWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
22
|
-
validateWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
23
|
-
exportWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
24
|
-
renderWorkspace: (body: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export async function dispatchRestRoute(
|
|
28
|
-
method: string,
|
|
29
|
-
pathname: string,
|
|
30
|
-
body: Record<string, unknown>,
|
|
31
|
-
client: RestRouteClient,
|
|
32
|
-
): Promise<{ operationId: string; result: unknown } | undefined> {
|
|
11
|
+
];
|
|
12
|
+
export async function dispatchRestRoute(method, pathname, body, client) {
|
|
33
13
|
if (method !== 'POST') {
|
|
34
14
|
return undefined;
|
|
35
15
|
}
|
|
@@ -59,9 +39,8 @@ export async function dispatchRestRoute(
|
|
|
59
39
|
}
|
|
60
40
|
return undefined;
|
|
61
41
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
const paths: Record<string, unknown> = {
|
|
42
|
+
export function createOpenApiSpec(httpHost, httpPort) {
|
|
43
|
+
const paths = {
|
|
65
44
|
'/health': {
|
|
66
45
|
get: {
|
|
67
46
|
summary: 'Health check',
|
|
@@ -81,7 +60,6 @@ export function createOpenApiSpec(httpHost: string, httpPort: number): Record<st
|
|
|
81
60
|
},
|
|
82
61
|
},
|
|
83
62
|
};
|
|
84
|
-
|
|
85
63
|
for (const route of REST_ROUTES) {
|
|
86
64
|
paths[route.path] = {
|
|
87
65
|
post: {
|
|
@@ -103,7 +81,6 @@ export function createOpenApiSpec(httpHost: string, httpPort: number): Record<st
|
|
|
103
81
|
},
|
|
104
82
|
};
|
|
105
83
|
}
|
|
106
|
-
|
|
107
84
|
return {
|
|
108
85
|
openapi: '3.0.3',
|
|
109
86
|
info: {
|
|
@@ -115,3 +92,4 @@ export function createOpenApiSpec(httpHost: string, httpPort: number): Record<st
|
|
|
115
92
|
paths,
|
|
116
93
|
};
|
|
117
94
|
}
|
|
95
|
+
//# sourceMappingURL=routes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/rest/routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as http from 'node:http';
|
|
2
|
+
import { type OmlLanguageServerRuntime } from '../lsp/language-server.js';
|
|
3
|
+
export interface OmlRestServerOptions {
|
|
4
|
+
host: string;
|
|
5
|
+
port: number;
|
|
6
|
+
workspaceRoot?: string;
|
|
7
|
+
watchWorkspace?: boolean;
|
|
8
|
+
requestTimeoutMs?: number;
|
|
9
|
+
authToken?: string;
|
|
10
|
+
runtime?: OmlLanguageServerRuntime;
|
|
11
|
+
}
|
|
12
|
+
export declare function startOmlRestServer(options: OmlRestServerOptions): Promise<{
|
|
13
|
+
server: http.Server;
|
|
14
|
+
updateToken: (token: string) => void;
|
|
15
|
+
}>;
|