@oml/cli 0.7.0 → 0.9.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 +14 -7
- package/out/auth.d.ts +3 -17
- package/out/auth.js +64 -69
- package/out/auth.js.map +1 -1
- package/out/cli.js +69 -14
- package/out/cli.js.map +1 -1
- package/out/commands/compile.js +1 -1
- package/out/commands/compile.js.map +1 -1
- package/out/commands/lint.d.ts +1 -1
- package/out/commands/lint.js +2 -6
- package/out/commands/lint.js.map +1 -1
- package/out/commands/render.js +0 -17
- package/out/commands/render.js.map +1 -1
- package/out/platform-constants.d.ts +3 -0
- package/out/platform-constants.js +5 -0
- package/out/platform-constants.js.map +1 -0
- package/out/platform.d.ts +28 -0
- package/out/platform.js +81 -0
- package/out/platform.js.map +1 -0
- package/package.json +7 -5
- package/src/auth.ts +82 -80
- package/src/cli.ts +63 -14
- package/src/commands/compile.ts +1 -1
- package/src/commands/lint.ts +2 -6
- package/src/commands/render.ts +0 -18
- package/src/platform-constants.ts +5 -0
- package/src/platform.ts +102 -0
package/README.md
CHANGED
|
@@ -28,12 +28,18 @@ node ./packages/cli/bin/cli.js --help
|
|
|
28
28
|
|
|
29
29
|
When installed, the command name is `oml`.
|
|
30
30
|
|
|
31
|
+
The CLI uses the built-in production OML Platform endpoint by default. Set `OML_PLATFORM_API_URL=<url>` to override it.
|
|
32
|
+
|
|
31
33
|
### Quick Start
|
|
32
34
|
|
|
33
35
|
```bash
|
|
34
36
|
# Lint the current workspace
|
|
35
37
|
node ./packages/cli/bin/cli.js lint
|
|
36
38
|
|
|
39
|
+
# Lint against a local platform dev server
|
|
40
|
+
OML_PLATFORM_API_URL=http://127.0.0.1:8787 \
|
|
41
|
+
node ./packages/cli/bin/cli.js lint
|
|
42
|
+
|
|
37
43
|
# Compile RDF output
|
|
38
44
|
node ./packages/cli/bin/cli.js compile -w . -owl build/owl
|
|
39
45
|
|
|
@@ -47,12 +53,12 @@ node ./packages/cli/bin/cli.js render -w . -md src/md -web build/web -owl build/
|
|
|
47
53
|
### Commands
|
|
48
54
|
|
|
49
55
|
- `login`
|
|
50
|
-
Runs GitHub device-flow sign-in,
|
|
56
|
+
Runs GitHub device-flow sign-in, exchanges the GitHub token with the OML Platform, and stores the returned platform session.
|
|
51
57
|
- `logout`
|
|
52
|
-
Removes the local
|
|
58
|
+
Removes the local sign-in session.
|
|
53
59
|
- `whoami`
|
|
54
|
-
Prints the current
|
|
55
|
-
- `lint [
|
|
60
|
+
Prints the current sign-in session.
|
|
61
|
+
- `lint [-w <workspace>]`
|
|
56
62
|
Validates one file, or the current workspace when no file is given.
|
|
57
63
|
- `compile [-w <workspace>] [-owl <dir>] [-f <ttl|trig|nt|nq|n3>] [--clean] [--only] [--pretty]`
|
|
58
64
|
Compiles OML to RDF.
|
|
@@ -65,10 +71,11 @@ node ./packages/cli/bin/cli.js render -w . -md src/md -web build/web -owl build/
|
|
|
65
71
|
|
|
66
72
|
### Notes
|
|
67
73
|
|
|
68
|
-
- The CLI
|
|
74
|
+
- The CLI uses `OML_PLATFORM_API_KEY` when it is set. Otherwise, operational commands use the token from `oml login` for platform authorization.
|
|
75
|
+
- OAuth login refresh uses built-in Supabase defaults. Set `OML_SUPABASE_URL` or `OML_SUPABASE_ANON_KEY` to override them.
|
|
69
76
|
- GitHub device-flow login requires `OML_AUTH_GITHUB_CLIENT_ID`, unless you embed `DEFAULT_GITHUB_CLIENT_ID` in [`src/auth.ts`](./src/auth.ts).
|
|
70
|
-
-
|
|
71
|
-
- The CLI currently depends on `@oml/reasoner@^0.
|
|
77
|
+
- `oml login` exchanges the GitHub token with the platform at `OML_PLATFORM_API_URL` or the built-in default endpoint, then stores the platform session locally.
|
|
78
|
+
- The CLI currently depends on `@oml/reasoner@^0.2.0`.
|
|
72
79
|
- `reason` runs ontology consistency checks in dependency order.
|
|
73
80
|
- `render` runs the compile/reason pipeline unless `--only` is provided, then renders markdown, resolves `workspace:/` links, executes markdown blocks, and copies referenced non-markdown assets.
|
|
74
81
|
- If the reasoner reports an inconsistent ontology, the CLI exits with code `1` and prints the raw JSON result returned by the reasoner.
|
package/out/auth.d.ts
CHANGED
|
@@ -1,25 +1,11 @@
|
|
|
1
|
-
type Provider = 'github';
|
|
2
|
-
type StoredSession = {
|
|
3
|
-
provider: Provider;
|
|
4
|
-
userId: string;
|
|
5
|
-
userLabel?: string;
|
|
6
|
-
signedInAt: string;
|
|
7
|
-
};
|
|
8
1
|
type LoginOptions = {};
|
|
9
|
-
type AuthStatus = {
|
|
10
|
-
session: StoredSession;
|
|
11
|
-
authorized: boolean;
|
|
12
|
-
};
|
|
13
2
|
export declare class OmlCliAuthService {
|
|
14
|
-
private whitelistCache;
|
|
15
|
-
private whitelistCacheTime;
|
|
16
3
|
login(options: LoginOptions): Promise<void>;
|
|
17
4
|
logout(): Promise<void>;
|
|
18
5
|
whoami(): Promise<void>;
|
|
19
|
-
ensureAuthenticated(operationName: string): Promise<
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
private clearWhitelistCache;
|
|
6
|
+
ensureAuthenticated(operationName: string): Promise<void>;
|
|
7
|
+
getAccessToken(): Promise<string>;
|
|
8
|
+
refreshAccessToken(): Promise<string>;
|
|
23
9
|
private authenticate;
|
|
24
10
|
}
|
|
25
11
|
export {};
|
package/out/auth.js
CHANGED
|
@@ -1,32 +1,26 @@
|
|
|
1
1
|
// Copyright (c) 2026 Modelware. All rights reserved.
|
|
2
|
+
import { exchangeGitHubToken, refreshSupabaseAccessToken } from '@oml/platform';
|
|
2
3
|
import chalk from 'chalk';
|
|
3
4
|
import * as fs from 'node:fs/promises';
|
|
4
5
|
import * as os from 'node:os';
|
|
5
6
|
import * as path from 'node:path';
|
|
6
|
-
|
|
7
|
-
const CACHE_DURATION_MS = 5 * 60 * 1000;
|
|
7
|
+
import { DEFAULT_API_BASE_URL, DEFAULT_SUPABASE_ANON_KEY, DEFAULT_SUPABASE_URL } from './platform-constants.js';
|
|
8
8
|
const GITHUB_DEVICE_CODE_URL = 'https://github.com/login/device/code';
|
|
9
9
|
const GITHUB_TOKEN_URL = 'https://github.com/login/oauth/access_token';
|
|
10
10
|
const GITHUB_USER_URL = 'https://api.github.com/user';
|
|
11
11
|
const DEFAULT_GITHUB_CLIENT_ID = 'Ov23liQkHYczdOAvHp5P';
|
|
12
|
+
const API_BASE_URL_ENV = 'OML_PLATFORM_API_URL';
|
|
13
|
+
const SUPABASE_URL_ENV = 'OML_SUPABASE_URL';
|
|
14
|
+
const SUPABASE_ANON_KEY_ENV = 'OML_SUPABASE_ANON_KEY';
|
|
12
15
|
export class OmlCliAuthService {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.whitelistCache = null;
|
|
15
|
-
this.whitelistCacheTime = 0;
|
|
16
|
-
}
|
|
17
16
|
async login(options) {
|
|
18
17
|
const session = await this.authenticate();
|
|
19
|
-
const authorized = await this.isAuthorized(session);
|
|
20
|
-
if (!authorized) {
|
|
21
|
-
throw new Error('Sign in succeeded, but this account is not authorized.');
|
|
22
|
-
}
|
|
23
18
|
await writeSession(session);
|
|
24
|
-
const summary = session.userLabel
|
|
19
|
+
const summary = session.userLabel ?? session.email ?? 'signed-in user';
|
|
25
20
|
console.error(chalk.green(`Signed in as ${summary} via ${session.provider}.`));
|
|
26
21
|
}
|
|
27
22
|
async logout() {
|
|
28
23
|
await deleteSession();
|
|
29
|
-
this.clearWhitelistCache();
|
|
30
24
|
console.error(chalk.green('Signed out.'));
|
|
31
25
|
}
|
|
32
26
|
async whoami() {
|
|
@@ -35,80 +29,53 @@ export class OmlCliAuthService {
|
|
|
35
29
|
console.error(chalk.yellow('Not signed in.'));
|
|
36
30
|
return;
|
|
37
31
|
}
|
|
38
|
-
const authorized = await this.isAuthorized(session);
|
|
39
32
|
console.error(`Provider: ${session.provider}`);
|
|
40
33
|
console.error(`User ID: ${session.userId}`);
|
|
41
34
|
console.error(`User label: ${session.userLabel ?? '(not set)'}`);
|
|
35
|
+
console.error(`Email: ${session.email ?? '(not set)'}`);
|
|
36
|
+
console.error(`Tier: ${session.tier ?? '(not set)'}`);
|
|
42
37
|
console.error(`Signed in at: ${session.signedInAt}`);
|
|
43
|
-
console.error(`Authorized: ${authorized ? 'yes' : 'no'}`);
|
|
44
38
|
}
|
|
45
39
|
async ensureAuthenticated(operationName) {
|
|
46
40
|
const session = await readSession();
|
|
47
41
|
if (!session) {
|
|
48
42
|
throw new Error(`${operationName} requires authentication. Run 'oml login' first.`);
|
|
49
43
|
}
|
|
50
|
-
const authorized = await this.isAuthorized(session);
|
|
51
|
-
if (!authorized) {
|
|
52
|
-
throw new Error(`${operationName} requires authorization. Your account is not authorized.`);
|
|
53
|
-
}
|
|
54
|
-
return { session, authorized };
|
|
55
44
|
}
|
|
56
|
-
async
|
|
57
|
-
const
|
|
58
|
-
if (!
|
|
59
|
-
|
|
45
|
+
async getAccessToken() {
|
|
46
|
+
const session = await readSession();
|
|
47
|
+
if (!session?.accessToken) {
|
|
48
|
+
throw new Error('OML CLI authentication is required. Run \'oml login\' first.');
|
|
60
49
|
}
|
|
61
|
-
|
|
62
|
-
return whitelist.has(userId);
|
|
50
|
+
return session.accessToken;
|
|
63
51
|
}
|
|
64
|
-
async
|
|
65
|
-
const
|
|
66
|
-
if (!
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
const now = Date.now();
|
|
70
|
-
if (this.whitelistCache && (now - this.whitelistCacheTime) < CACHE_DURATION_MS) {
|
|
71
|
-
return this.whitelistCache;
|
|
52
|
+
async refreshAccessToken() {
|
|
53
|
+
const session = await readSession();
|
|
54
|
+
if (!session?.refreshToken) {
|
|
55
|
+
throw new Error('OML CLI authentication is required. Run \'oml login\' first.');
|
|
72
56
|
}
|
|
57
|
+
let refreshed;
|
|
73
58
|
try {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
clearWhitelistCache() {
|
|
90
|
-
this.whitelistCache = null;
|
|
91
|
-
this.whitelistCacheTime = 0;
|
|
59
|
+
refreshed = await refreshSupabaseAccessToken(resolveSupabaseUrl(), resolveSupabaseAnonKey(), session.refreshToken);
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
throw new Error('Authentication refresh failed. Check your network connection or sign in again with \'oml login\'.');
|
|
63
|
+
}
|
|
64
|
+
const updatedSession = {
|
|
65
|
+
...session,
|
|
66
|
+
accessToken: refreshed.access_token,
|
|
67
|
+
refreshToken: refreshed.refresh_token,
|
|
68
|
+
tokenType: refreshed.token_type,
|
|
69
|
+
expiresIn: refreshed.expires_in,
|
|
70
|
+
email: refreshed.email ?? session.email,
|
|
71
|
+
};
|
|
72
|
+
await writeSession(updatedSession);
|
|
73
|
+
return updatedSession.accessToken;
|
|
92
74
|
}
|
|
93
75
|
async authenticate() {
|
|
94
76
|
return authenticateWithGitHub();
|
|
95
77
|
}
|
|
96
78
|
}
|
|
97
|
-
function extractWhitelistEntries(data) {
|
|
98
|
-
if (Array.isArray(data)) {
|
|
99
|
-
return data.map((value) => String(value));
|
|
100
|
-
}
|
|
101
|
-
if (typeof data === 'object' && data !== null) {
|
|
102
|
-
const record = data;
|
|
103
|
-
if (Array.isArray(record.allowedUsers)) {
|
|
104
|
-
return record.allowedUsers.map((value) => String(value));
|
|
105
|
-
}
|
|
106
|
-
if (Array.isArray(record.users)) {
|
|
107
|
-
return record.users.map((value) => String(value));
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
throw new Error('Invalid whitelist format. Expected array or object with "allowedUsers" or "users" property.');
|
|
111
|
-
}
|
|
112
79
|
async function readSession() {
|
|
113
80
|
try {
|
|
114
81
|
const content = await fs.readFile(getSessionPath(), 'utf-8');
|
|
@@ -116,13 +83,25 @@ async function readSession() {
|
|
|
116
83
|
if (!data.userId || !data.provider || !data.signedInAt) {
|
|
117
84
|
return undefined;
|
|
118
85
|
}
|
|
119
|
-
if (data.
|
|
86
|
+
if (!data.accessToken) {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
if (!data.refreshToken || !data.tokenType || typeof data.expiresIn !== 'number') {
|
|
90
|
+
return undefined;
|
|
91
|
+
}
|
|
92
|
+
if (data.provider !== 'github') {
|
|
120
93
|
return undefined;
|
|
121
94
|
}
|
|
122
95
|
return {
|
|
123
96
|
provider: data.provider,
|
|
124
97
|
userId: data.userId,
|
|
125
98
|
userLabel: data.userLabel,
|
|
99
|
+
email: data.email ?? null,
|
|
100
|
+
tier: data.tier,
|
|
101
|
+
accessToken: data.accessToken,
|
|
102
|
+
refreshToken: data.refreshToken,
|
|
103
|
+
tokenType: data.tokenType,
|
|
104
|
+
expiresIn: data.expiresIn,
|
|
126
105
|
signedInAt: data.signedInAt
|
|
127
106
|
};
|
|
128
107
|
}
|
|
@@ -152,7 +131,7 @@ async function authenticateWithGitHub() {
|
|
|
152
131
|
const clientId = resolveClientId();
|
|
153
132
|
const params = new URLSearchParams({
|
|
154
133
|
client_id: clientId,
|
|
155
|
-
scope: 'read:user'
|
|
134
|
+
scope: 'read:user user:email'
|
|
156
135
|
});
|
|
157
136
|
const response = await fetch(GITHUB_DEVICE_CODE_URL, {
|
|
158
137
|
method: 'POST',
|
|
@@ -184,10 +163,17 @@ async function authenticateWithGitHub() {
|
|
|
184
163
|
if (!user.login) {
|
|
185
164
|
throw new Error('GitHub user lookup did not return a login name.');
|
|
186
165
|
}
|
|
166
|
+
const platformSession = await exchangeGitHubToken(resolveApiBaseUrl(), token);
|
|
187
167
|
return {
|
|
188
168
|
provider: 'github',
|
|
189
|
-
userId:
|
|
169
|
+
userId: platformSession.user_id,
|
|
190
170
|
userLabel: user.login,
|
|
171
|
+
email: platformSession.email,
|
|
172
|
+
tier: platformSession.tier,
|
|
173
|
+
accessToken: platformSession.access_token,
|
|
174
|
+
refreshToken: platformSession.refresh_token,
|
|
175
|
+
tokenType: platformSession.token_type,
|
|
176
|
+
expiresIn: platformSession.expires_in,
|
|
191
177
|
signedInAt: new Date().toISOString()
|
|
192
178
|
};
|
|
193
179
|
}
|
|
@@ -247,6 +233,15 @@ function resolveClientId() {
|
|
|
247
233
|
}
|
|
248
234
|
throw new Error('GitHub login is not configured. Set OML_AUTH_GITHUB_CLIENT_ID or embed DEFAULT_GITHUB_CLIENT_ID in packages/cli/src/auth.ts.');
|
|
249
235
|
}
|
|
236
|
+
function resolveApiBaseUrl() {
|
|
237
|
+
return process.env[API_BASE_URL_ENV]?.trim() || DEFAULT_API_BASE_URL;
|
|
238
|
+
}
|
|
239
|
+
function resolveSupabaseUrl() {
|
|
240
|
+
return process.env[SUPABASE_URL_ENV]?.trim() || DEFAULT_SUPABASE_URL;
|
|
241
|
+
}
|
|
242
|
+
function resolveSupabaseAnonKey() {
|
|
243
|
+
return process.env[SUPABASE_ANON_KEY_ENV]?.trim() || DEFAULT_SUPABASE_ANON_KEY;
|
|
244
|
+
}
|
|
250
245
|
function delay(ms) {
|
|
251
246
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
252
247
|
}
|
package/out/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/out/cli.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// Copyright (c) 2026 Modelware. All rights reserved.
|
|
2
|
-
import { OmlLanguageMetaData } from '@oml/language';
|
|
3
2
|
import chalk from 'chalk';
|
|
4
3
|
import { Command } from 'commander';
|
|
5
4
|
import * as fs from 'node:fs/promises';
|
|
@@ -11,6 +10,7 @@ import { lintAction } from './commands/lint.js';
|
|
|
11
10
|
import { renderAction } from './commands/render.js';
|
|
12
11
|
import { notifyIfCliUpdateAvailable } from './update.js';
|
|
13
12
|
import { validateAction } from './commands/validate.js';
|
|
13
|
+
import { initializePlatform, disposePlatform, trackCommand } from './platform.js';
|
|
14
14
|
const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
|
|
15
15
|
export async function runCli(argv = process.argv) {
|
|
16
16
|
const packagePath = path.resolve(__dirname, '..', 'package.json');
|
|
@@ -22,29 +22,37 @@ export async function runCli(argv = process.argv) {
|
|
|
22
22
|
const authService = new OmlCliAuthService();
|
|
23
23
|
program
|
|
24
24
|
.command('login')
|
|
25
|
-
.description('
|
|
25
|
+
.description('sign in with GitHub for CLI authorization')
|
|
26
26
|
.action(async () => {
|
|
27
27
|
await authService.login({});
|
|
28
28
|
});
|
|
29
29
|
program
|
|
30
30
|
.command('logout')
|
|
31
|
-
.description('remove the local
|
|
31
|
+
.description('remove the local sign-in session')
|
|
32
32
|
.action(async () => {
|
|
33
33
|
await authService.logout();
|
|
34
34
|
});
|
|
35
35
|
program
|
|
36
36
|
.command('whoami')
|
|
37
|
-
.description('print the current
|
|
37
|
+
.description('print the current sign-in session')
|
|
38
38
|
.action(async () => {
|
|
39
39
|
await authService.whoami();
|
|
40
40
|
});
|
|
41
|
-
const fileExtensions = OmlLanguageMetaData.fileExtensions.join(', ');
|
|
42
41
|
program
|
|
43
42
|
.command('lint')
|
|
44
|
-
.argument('[file]', `source file (possible file extensions: ${fileExtensions})`)
|
|
45
43
|
.option('-w, --workspace <dir>', 'workspace root used to resolve cross-file references', '.')
|
|
46
44
|
.description('lints OML files and prints any syntax or validation errors')
|
|
47
|
-
.action(
|
|
45
|
+
.action(async (...args) => {
|
|
46
|
+
const done = trackCommand('oml-lint');
|
|
47
|
+
try {
|
|
48
|
+
await lintAction(...args);
|
|
49
|
+
done();
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
done(err);
|
|
53
|
+
throw err;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
48
56
|
program
|
|
49
57
|
.command('render')
|
|
50
58
|
.option('-w, --workspace <workspace-folder>', 'workspace root used to resolve workspace:/ links (default: current directory)')
|
|
@@ -60,7 +68,17 @@ export async function runCli(argv = process.argv) {
|
|
|
60
68
|
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
61
69
|
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
62
70
|
.description('reason the workspace, then render markdown files under the selected markdown folder to static html and copy referenced non-markdown assets')
|
|
63
|
-
.action(
|
|
71
|
+
.action(async (...args) => {
|
|
72
|
+
const done = trackCommand('oml-render');
|
|
73
|
+
try {
|
|
74
|
+
await renderAction(...args);
|
|
75
|
+
done();
|
|
76
|
+
}
|
|
77
|
+
catch (err) {
|
|
78
|
+
done(err);
|
|
79
|
+
throw err;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
64
82
|
program
|
|
65
83
|
.command('compile')
|
|
66
84
|
.option('-w, --workspace <dir>', 'workspace root used to resolve and compile OML files', '.')
|
|
@@ -70,7 +88,17 @@ export async function runCli(argv = process.argv) {
|
|
|
70
88
|
.option('--only', 'skip lint and compile from the current workspace state')
|
|
71
89
|
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
72
90
|
.description('compile OML files to RDF and write them to an output folder')
|
|
73
|
-
.action(
|
|
91
|
+
.action(async (...args) => {
|
|
92
|
+
const done = trackCommand('oml-compile');
|
|
93
|
+
try {
|
|
94
|
+
await compileAction(...args);
|
|
95
|
+
done();
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
done(err);
|
|
99
|
+
throw err;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
74
102
|
program
|
|
75
103
|
.command('reason')
|
|
76
104
|
.option('-w, --workspace <dir>', 'workspace root used to resolve and compile OML files', '.')
|
|
@@ -85,8 +113,16 @@ export async function runCli(argv = process.argv) {
|
|
|
85
113
|
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
86
114
|
.description('compile OML files, then run consistency checking for every ontology in dependency order')
|
|
87
115
|
.action(async (opts) => {
|
|
88
|
-
const
|
|
89
|
-
|
|
116
|
+
const done = trackCommand('oml-reason');
|
|
117
|
+
try {
|
|
118
|
+
const { reasonAction } = await import('./commands/reason.js');
|
|
119
|
+
await reasonAction(opts);
|
|
120
|
+
done();
|
|
121
|
+
}
|
|
122
|
+
catch (err) {
|
|
123
|
+
done(err);
|
|
124
|
+
throw err;
|
|
125
|
+
}
|
|
90
126
|
});
|
|
91
127
|
program
|
|
92
128
|
.command('validate')
|
|
@@ -101,14 +137,33 @@ export async function runCli(argv = process.argv) {
|
|
|
101
137
|
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
102
138
|
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
103
139
|
.description('compile and reason the workspace, then validate nested markdown table-editor SHACL blocks against their context models')
|
|
104
|
-
.action(
|
|
140
|
+
.action(async (...args) => {
|
|
141
|
+
const done = trackCommand('oml-validate');
|
|
142
|
+
try {
|
|
143
|
+
await validateAction(...args);
|
|
144
|
+
done();
|
|
145
|
+
}
|
|
146
|
+
catch (err) {
|
|
147
|
+
done(err);
|
|
148
|
+
throw err;
|
|
149
|
+
}
|
|
150
|
+
});
|
|
105
151
|
program.hook('preAction', async (_thisCommand, actionCommand) => {
|
|
106
152
|
if (actionCommand.name() === 'login' || actionCommand.name() === 'logout' || actionCommand.name() === 'whoami') {
|
|
107
153
|
return;
|
|
108
154
|
}
|
|
109
|
-
|
|
155
|
+
// Require either GitHub auth or API key, then connect to platform
|
|
156
|
+
if (!process.env.OML_PLATFORM_API_KEY) {
|
|
157
|
+
await authService.ensureAuthenticated('OML CLI');
|
|
158
|
+
}
|
|
159
|
+
await initializePlatform(authService);
|
|
110
160
|
});
|
|
111
|
-
|
|
161
|
+
try {
|
|
162
|
+
await program.parseAsync(argv);
|
|
163
|
+
}
|
|
164
|
+
finally {
|
|
165
|
+
await disposePlatform();
|
|
166
|
+
}
|
|
112
167
|
await updateCheck;
|
|
113
168
|
}
|
|
114
169
|
function parseBooleanOption(value) {
|
package/out/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/out/commands/compile.js
CHANGED
|
@@ -13,7 +13,7 @@ export const compileAction = async (opts) => {
|
|
|
13
13
|
const outputRoot = resolveCompileOutputRoot(workspaceRoot, opts.owl);
|
|
14
14
|
const format = normalizeFormatExtension(opts.format);
|
|
15
15
|
if (!opts.only) {
|
|
16
|
-
await lintAction(
|
|
16
|
+
await lintAction({ workspace: workspaceRoot });
|
|
17
17
|
}
|
|
18
18
|
const workspaceStat = await fs.stat(workspaceRoot).catch(() => undefined);
|
|
19
19
|
if (!workspaceStat || !workspaceStat.isDirectory()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/commands/compile.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAWvC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,IAAoB,EAAiB,EAAE;IACvE,MAAM,aAAa,GAAG,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,wBAAwB,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAErD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACb,MAAM,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/commands/compile.ts"],"names":[],"mappings":"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"}
|
package/out/commands/lint.d.ts
CHANGED
package/out/commands/lint.js
CHANGED
|
@@ -2,20 +2,16 @@
|
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
import { createBackend } from '../backend/create-backend.js';
|
|
4
4
|
import { formatDuration } from '../util.js';
|
|
5
|
-
export const lintAction = async (
|
|
5
|
+
export const lintAction = async (opts) => {
|
|
6
6
|
const startedAt = Date.now();
|
|
7
7
|
const workspaceRoot = opts.workspace ?? opts.workspaceRoot ?? '.';
|
|
8
8
|
const backend = createBackend();
|
|
9
9
|
try {
|
|
10
|
-
const result = await backend.validate(
|
|
10
|
+
const result = await backend.validate(undefined, workspaceRoot);
|
|
11
11
|
if (result.filesChecked === 0) {
|
|
12
12
|
console.log(chalk.yellow(`No .oml files found under ${workspaceRoot}.`));
|
|
13
13
|
return;
|
|
14
14
|
}
|
|
15
|
-
if (fileName && result.warnings === 0) {
|
|
16
|
-
console.log(chalk.green('lint: no syntax or validation errors found.'));
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
15
|
if (result.warnings > 0) {
|
|
20
16
|
console.log(chalk.yellow(`lint: ${result.filesChecked} OML file(s) checked with ${result.warnings} warning(s). [${formatDuration(Date.now() - startedAt)}]`));
|
|
21
17
|
process.exit(1);
|
package/out/commands/lint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAO5C,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAO5C,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,IAAiB,EAAiB,EAAE;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,IAAI,GAAG,CAAC;IAClE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,6BAA6B,aAAa,GAAG,CAAC,CAAC,CAAC;YACzE,OAAO;QACX,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,YAAY,6BAA6B,MAAM,CAAC,QAAQ,iBAAiB,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9J,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,YAAY,0BAA0B,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9H,CAAC;IACL,CAAC;YAAS,CAAC;QACP,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;AACL,CAAC,CAAC"}
|