@oml/cli 0.7.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 +75 -0
- package/bin/cli.js +6 -0
- package/out/auth.d.ts +25 -0
- package/out/auth.js +253 -0
- package/out/auth.js.map +1 -0
- package/out/backend/backend-types.d.ts +19 -0
- package/out/backend/backend-types.js +3 -0
- package/out/backend/backend-types.js.map +1 -0
- package/out/backend/create-backend.d.ts +2 -0
- package/out/backend/create-backend.js +6 -0
- package/out/backend/create-backend.js.map +1 -0
- package/out/backend/direct-backend.d.ts +17 -0
- package/out/backend/direct-backend.js +97 -0
- package/out/backend/direct-backend.js.map +1 -0
- package/out/backend/reasoned-output.d.ts +38 -0
- package/out/backend/reasoned-output.js +568 -0
- package/out/backend/reasoned-output.js.map +1 -0
- package/out/cli.d.ts +1 -0
- package/out/cli.js +132 -0
- package/out/cli.js.map +1 -0
- package/out/commands/closure.d.ts +33 -0
- package/out/commands/closure.js +537 -0
- package/out/commands/closure.js.map +1 -0
- package/out/commands/compile.d.ts +11 -0
- package/out/commands/compile.js +63 -0
- package/out/commands/compile.js.map +1 -0
- package/out/commands/lint.d.ts +5 -0
- package/out/commands/lint.js +31 -0
- package/out/commands/lint.js.map +1 -0
- package/out/commands/reason.d.ts +13 -0
- package/out/commands/reason.js +62 -0
- package/out/commands/reason.js.map +1 -0
- package/out/commands/render.d.ts +15 -0
- package/out/commands/render.js +753 -0
- package/out/commands/render.js.map +1 -0
- package/out/commands/validate.d.ts +5 -0
- package/out/commands/validate.js +186 -0
- package/out/commands/validate.js.map +1 -0
- package/out/main.d.ts +1 -0
- package/out/main.js +4 -0
- package/out/main.js.map +1 -0
- package/out/update.d.ts +1 -0
- package/out/update.js +79 -0
- package/out/update.js.map +1 -0
- package/out/util.d.ts +10 -0
- package/out/util.js +63 -0
- package/out/util.js.map +1 -0
- package/package.json +36 -0
- package/src/auth.ts +315 -0
- package/src/backend/backend-types.ts +25 -0
- package/src/backend/create-backend.ts +8 -0
- package/src/backend/direct-backend.ts +114 -0
- package/src/backend/reasoned-output.ts +697 -0
- package/src/cli.ts +147 -0
- package/src/commands/closure.ts +624 -0
- package/src/commands/compile.ts +88 -0
- package/src/commands/lint.ts +35 -0
- package/src/commands/reason.ts +79 -0
- package/src/commands/render.ts +1021 -0
- package/src/commands/validate.ts +226 -0
- package/src/main.ts +5 -0
- package/src/update.ts +103 -0
- package/src/util.ts +83 -0
package/out/cli.js
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// Copyright (c) 2026 Modelware. All rights reserved.
|
|
2
|
+
import { OmlLanguageMetaData } from '@oml/language';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { Command } from 'commander';
|
|
5
|
+
import * as fs from 'node:fs/promises';
|
|
6
|
+
import * as path from 'node:path';
|
|
7
|
+
import * as url from 'node:url';
|
|
8
|
+
import { OmlCliAuthService } from './auth.js';
|
|
9
|
+
import { compileAction } from './commands/compile.js';
|
|
10
|
+
import { lintAction } from './commands/lint.js';
|
|
11
|
+
import { renderAction } from './commands/render.js';
|
|
12
|
+
import { notifyIfCliUpdateAvailable } from './update.js';
|
|
13
|
+
import { validateAction } from './commands/validate.js';
|
|
14
|
+
const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
|
|
15
|
+
export async function runCli(argv = process.argv) {
|
|
16
|
+
const packagePath = path.resolve(__dirname, '..', 'package.json');
|
|
17
|
+
const packageContent = await fs.readFile(packagePath, 'utf-8');
|
|
18
|
+
const packageJson = JSON.parse(packageContent);
|
|
19
|
+
const updateCheck = notifyIfCliUpdateAvailable(packageJson.version);
|
|
20
|
+
const program = new Command();
|
|
21
|
+
program.version(packageJson.version);
|
|
22
|
+
const authService = new OmlCliAuthService();
|
|
23
|
+
program
|
|
24
|
+
.command('login')
|
|
25
|
+
.description('run GitHub device-flow sign-in for CLI authorization checks')
|
|
26
|
+
.action(async () => {
|
|
27
|
+
await authService.login({});
|
|
28
|
+
});
|
|
29
|
+
program
|
|
30
|
+
.command('logout')
|
|
31
|
+
.description('remove the local beta sign-in session')
|
|
32
|
+
.action(async () => {
|
|
33
|
+
await authService.logout();
|
|
34
|
+
});
|
|
35
|
+
program
|
|
36
|
+
.command('whoami')
|
|
37
|
+
.description('print the current beta sign-in session and authorization state')
|
|
38
|
+
.action(async () => {
|
|
39
|
+
await authService.whoami();
|
|
40
|
+
});
|
|
41
|
+
const fileExtensions = OmlLanguageMetaData.fileExtensions.join(', ');
|
|
42
|
+
program
|
|
43
|
+
.command('lint')
|
|
44
|
+
.argument('[file]', `source file (possible file extensions: ${fileExtensions})`)
|
|
45
|
+
.option('-w, --workspace <dir>', 'workspace root used to resolve cross-file references', '.')
|
|
46
|
+
.description('lints OML files and prints any syntax or validation errors')
|
|
47
|
+
.action(lintAction);
|
|
48
|
+
program
|
|
49
|
+
.command('render')
|
|
50
|
+
.option('-w, --workspace <workspace-folder>', 'workspace root used to resolve workspace:/ links (default: current directory)')
|
|
51
|
+
.requiredOption('-md, --md <input-folder>', 'folder containing markdown files to render')
|
|
52
|
+
.requiredOption('-web, --web <output-folder>', 'folder where rendered static site files are written')
|
|
53
|
+
.option('-owl, --owl <dir>', 'folder where compiled RDF and entailment files are written')
|
|
54
|
+
.option('-f, --format <ext>', 'RDF format extension for compile/reason output: ttl, trig, nt, nq, or n3', 'ttl')
|
|
55
|
+
.option('-c, --context <model-uri>', 'default model URI/path used for markdown files without contextUri; also enables wikilink template page generation')
|
|
56
|
+
.option('--clean', 'remove output folders before rebuilding')
|
|
57
|
+
.option('--only', 'skip reason/compile/lint and render from the existing owl output folder')
|
|
58
|
+
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
59
|
+
.option('-u, --unique-names-assumption [value]', 'enable or disable the unique names assumption', parseBooleanOption, true)
|
|
60
|
+
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
61
|
+
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
62
|
+
.description('reason the workspace, then render markdown files under the selected markdown folder to static html and copy referenced non-markdown assets')
|
|
63
|
+
.action(renderAction);
|
|
64
|
+
program
|
|
65
|
+
.command('compile')
|
|
66
|
+
.option('-w, --workspace <dir>', 'workspace root used to resolve and compile OML files', '.')
|
|
67
|
+
.option('-owl, --owl <dir>', 'folder where compiled RDF files are written')
|
|
68
|
+
.option('-f, --format <ext>', 'RDF format extension: ttl, trig, nt, nq, or n3', 'ttl')
|
|
69
|
+
.option('--clean', 'remove output folder before compiling')
|
|
70
|
+
.option('--only', 'skip lint and compile from the current workspace state')
|
|
71
|
+
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
72
|
+
.description('compile OML files to RDF and write them to an output folder')
|
|
73
|
+
.action(compileAction);
|
|
74
|
+
program
|
|
75
|
+
.command('reason')
|
|
76
|
+
.option('-w, --workspace <dir>', 'workspace root used to resolve and compile OML files', '.')
|
|
77
|
+
.option('-owl, --owl <dir>', 'folder where compiled RDF and entailment files are written')
|
|
78
|
+
.option('-f, --format <ext>', 'RDF format extension for compile output: ttl, trig, nt, nq, or n3', 'ttl')
|
|
79
|
+
.option('--clean', 'remove output folder before compiling')
|
|
80
|
+
.option('--only', 'skip compile/lint and reason from the existing owl output folder')
|
|
81
|
+
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
82
|
+
.option('-c, --check-only', 'only check consistency; skip entailment materialization and file output')
|
|
83
|
+
.option('-u, --unique-names-assumption [value]', 'enable or disable the unique names assumption', parseBooleanOption, true)
|
|
84
|
+
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
85
|
+
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
86
|
+
.description('compile OML files, then run consistency checking for every ontology in dependency order')
|
|
87
|
+
.action(async (opts) => {
|
|
88
|
+
const { reasonAction } = await import('./commands/reason.js');
|
|
89
|
+
await reasonAction(opts);
|
|
90
|
+
});
|
|
91
|
+
program
|
|
92
|
+
.command('validate')
|
|
93
|
+
.requiredOption('-md, --md <input-folder>', 'folder containing markdown files to validate recursively')
|
|
94
|
+
.option('-w, --workspace <dir>', 'workspace root used to resolve and compile OML files', '.')
|
|
95
|
+
.option('-owl, --owl <dir>', 'folder where compiled RDF and entailment files are written')
|
|
96
|
+
.option('-f, --format <ext>', 'RDF format extension for compile output: ttl, trig, nt, nq, or n3', 'ttl')
|
|
97
|
+
.option('--clean', 'remove output folder before compiling')
|
|
98
|
+
.option('--only', 'skip compile/lint and reason from the existing owl output folder')
|
|
99
|
+
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
100
|
+
.option('-u, --unique-names-assumption [value]', 'enable or disable the unique names assumption', parseBooleanOption, true)
|
|
101
|
+
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
102
|
+
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
103
|
+
.description('compile and reason the workspace, then validate nested markdown table-editor SHACL blocks against their context models')
|
|
104
|
+
.action(validateAction);
|
|
105
|
+
program.hook('preAction', async (_thisCommand, actionCommand) => {
|
|
106
|
+
if (actionCommand.name() === 'login' || actionCommand.name() === 'logout' || actionCommand.name() === 'whoami') {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
await authService.ensureAuthenticated('OML CLI');
|
|
110
|
+
});
|
|
111
|
+
await program.parseAsync(argv);
|
|
112
|
+
await updateCheck;
|
|
113
|
+
}
|
|
114
|
+
function parseBooleanOption(value) {
|
|
115
|
+
if (typeof value === 'boolean') {
|
|
116
|
+
return value;
|
|
117
|
+
}
|
|
118
|
+
const normalized = value.trim().toLowerCase();
|
|
119
|
+
if (normalized === 'true') {
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
if (normalized === 'false') {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
throw new Error(`Expected a boolean value, received '${value}'.`);
|
|
126
|
+
}
|
|
127
|
+
process.on('unhandledRejection', (error) => {
|
|
128
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
129
|
+
console.error(chalk.red(message));
|
|
130
|
+
process.exit(1);
|
|
131
|
+
});
|
|
132
|
+
//# sourceMappingURL=cli.js.map
|
package/out/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Quad } from '@rdfjs/types';
|
|
2
|
+
import type { Ontology, VocabularyBundle } from '@oml/language';
|
|
3
|
+
export declare class VocabularyBundleClosureBuilder {
|
|
4
|
+
private readonly ontologyByNamespace;
|
|
5
|
+
constructor(ontologyByNamespace: ReadonlyMap<string, Ontology>);
|
|
6
|
+
buildClosureQuads(bundle: VocabularyBundle): Quad[];
|
|
7
|
+
private collectBundledVocabularies;
|
|
8
|
+
private collectClosureMembers;
|
|
9
|
+
private collectNamedEdges;
|
|
10
|
+
private transitiveReduce;
|
|
11
|
+
private rootAtUniversal;
|
|
12
|
+
private treeify;
|
|
13
|
+
private bypassIsolate;
|
|
14
|
+
private reduceChild;
|
|
15
|
+
private generateClosureAxioms;
|
|
16
|
+
private serializeAxioms;
|
|
17
|
+
private createTaxonomy;
|
|
18
|
+
private cloneTaxonomy;
|
|
19
|
+
private ensureNode;
|
|
20
|
+
private addEdge;
|
|
21
|
+
private childrenOf;
|
|
22
|
+
private parentsOf;
|
|
23
|
+
private ancestorsOf;
|
|
24
|
+
private directParentsOf;
|
|
25
|
+
private lowestMultiParentChild;
|
|
26
|
+
private named;
|
|
27
|
+
private complement;
|
|
28
|
+
private intersection;
|
|
29
|
+
private difference;
|
|
30
|
+
private combine;
|
|
31
|
+
private memberIri;
|
|
32
|
+
private importedOntologyNamespace;
|
|
33
|
+
}
|