@open-nav/cli 0.1.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/LICENSE +29 -0
- package/README.md +89 -0
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +8 -0
- package/dist/bin.js.map +1 -0
- package/dist/commands.d.ts +37 -0
- package/dist/commands.d.ts.map +1 -0
- package/dist/commands.js +711 -0
- package/dist/commands.js.map +1 -0
- package/dist/config.d.ts +93 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +192 -0
- package/dist/config.js.map +1 -0
- package/dist/errors.d.ts +26 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +25 -0
- package/dist/errors.js.map +1 -0
- package/dist/main.d.ts +23 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +237 -0
- package/dist/main.js.map +1 -0
- package/dist/output.d.ts +37 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +43 -0
- package/dist/output.js.map +1 -0
- package/dist/version.d.ts +7 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +8 -0
- package/dist/version.js.map +1 -0
- package/package.json +57 -0
- package/src/bin.ts +8 -0
- package/src/commands.ts +860 -0
- package/src/config.ts +246 -0
- package/src/errors.ts +27 -0
- package/src/main.ts +264 -0
- package/src/output.ts +85 -0
- package/src/version.ts +10 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { SoftwareType } from '@open-nav/core';
|
|
2
|
+
import type { NavCredentials } from '@open-nav/client';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration comes from the environment, optionally seeded from a local
|
|
5
|
+
* env file. Credentials are never accepted as command line arguments: they
|
|
6
|
+
* would end up in shell history, in process listings and in any agent
|
|
7
|
+
* transcript that records the command.
|
|
8
|
+
*/
|
|
9
|
+
export declare const ENV_VARS: {
|
|
10
|
+
readonly environment: "NAV_ENVIRONMENT";
|
|
11
|
+
readonly login: "NAV_LOGIN";
|
|
12
|
+
readonly password: "NAV_PASSWORD";
|
|
13
|
+
readonly signKey: "NAV_SIGN_KEY";
|
|
14
|
+
readonly exchangeKey: "NAV_EXCHANGE_KEY";
|
|
15
|
+
readonly taxNumber: "NAV_TAX_NUMBER";
|
|
16
|
+
readonly softwareId: "NAV_SOFTWARE_ID";
|
|
17
|
+
readonly softwareName: "NAV_SOFTWARE_NAME";
|
|
18
|
+
readonly softwareVersion: "NAV_SOFTWARE_VERSION";
|
|
19
|
+
readonly softwareDevName: "NAV_SOFTWARE_DEV_NAME";
|
|
20
|
+
readonly softwareDevContact: "NAV_SOFTWARE_DEV_CONTACT";
|
|
21
|
+
readonly softwareDevTaxNumber: "NAV_SOFTWARE_DEV_TAX_NUMBER";
|
|
22
|
+
readonly softwareOperation: "NAV_SOFTWARE_OPERATION";
|
|
23
|
+
readonly baseUrl: "NAV_BASE_URL";
|
|
24
|
+
};
|
|
25
|
+
/** Variables that hold secrets and must never be printed. */
|
|
26
|
+
export declare const SECRET_VARS: Set<string>;
|
|
27
|
+
/** Variables without which nothing can talk to NAV. */
|
|
28
|
+
export declare const REQUIRED_VARS: readonly string[];
|
|
29
|
+
/** Defaults applied when an optional variable is unset. */
|
|
30
|
+
export declare const DEFAULTS: Readonly<Record<string, string>>;
|
|
31
|
+
export interface LoadedConfig {
|
|
32
|
+
credentials: NavCredentials;
|
|
33
|
+
software: SoftwareType;
|
|
34
|
+
environment: 'test' | 'production';
|
|
35
|
+
baseUrl?: string;
|
|
36
|
+
/** Env files that were read, nearest first. */
|
|
37
|
+
envFiles: string[];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Parse a `.env` file.
|
|
41
|
+
*
|
|
42
|
+
* Deliberately minimal: `KEY=value`, `#` comments, optional `export`, and
|
|
43
|
+
* single or double quotes stripped. Anything more elaborate belongs in a real
|
|
44
|
+
* secret manager, not in a file next to the source.
|
|
45
|
+
*/
|
|
46
|
+
export declare function parseEnvFile(contents: string): Record<string, string>;
|
|
47
|
+
/**
|
|
48
|
+
* Find env files, walking up from a starting directory.
|
|
49
|
+
*
|
|
50
|
+
* Walking up means a project-level env file is picked up from any
|
|
51
|
+
* subdirectory, which is how an agent invoked in a nested working directory
|
|
52
|
+
* still finds the credentials.
|
|
53
|
+
*/
|
|
54
|
+
export declare function discoverEnvFiles(from: string): string[];
|
|
55
|
+
export interface LoadOptions {
|
|
56
|
+
/** Explicit env file, from `--env-file`. Takes precedence over discovery. */
|
|
57
|
+
envFile?: string;
|
|
58
|
+
/** Where to start looking. Defaults to the working directory. */
|
|
59
|
+
cwd?: string;
|
|
60
|
+
/** Process environment. Injectable for tests. */
|
|
61
|
+
env?: Record<string, string | undefined>;
|
|
62
|
+
/** Skip env file discovery entirely. */
|
|
63
|
+
noEnvFile?: boolean;
|
|
64
|
+
}
|
|
65
|
+
/** Read the environment, seeded from env files, without requiring credentials. */
|
|
66
|
+
export declare function loadEnvironment(options?: LoadOptions): {
|
|
67
|
+
env: Record<string, string | undefined>;
|
|
68
|
+
envFiles: string[];
|
|
69
|
+
};
|
|
70
|
+
export interface ConfigVariableReport {
|
|
71
|
+
variable: string;
|
|
72
|
+
set: boolean;
|
|
73
|
+
required: boolean;
|
|
74
|
+
secret: boolean;
|
|
75
|
+
/** Present for non-secret variables that are set. */
|
|
76
|
+
value?: string;
|
|
77
|
+
/** Value that applies when the variable is left unset. */
|
|
78
|
+
default?: string;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Which configuration variables are present, for the `config` command.
|
|
82
|
+
*
|
|
83
|
+
* Required and optional are reported separately: an unset optional variable
|
|
84
|
+
* with a working default is not a problem, and listing it as "missing" sends
|
|
85
|
+
* people hunting for something that is not wrong.
|
|
86
|
+
*/
|
|
87
|
+
export declare function describeConfig(env: Record<string, string | undefined>): ConfigVariableReport[];
|
|
88
|
+
/**
|
|
89
|
+
* Assemble the full configuration, failing with a list of everything missing
|
|
90
|
+
* rather than one variable at a time.
|
|
91
|
+
*/
|
|
92
|
+
export declare function loadConfig(options?: LoadOptions): LoadedConfig;
|
|
93
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;CAeX,CAAC;AAEX,6DAA6D;AAC7D,eAAO,MAAM,WAAW,aAItB,CAAC;AAIH,uDAAuD;AACvD,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAO1C,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOrD,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,cAAc,CAAC;IAC5B,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmBrE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAavD;AAED,MAAM,WAAW,WAAW;IAC1B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,OAAO,GAAE,WAAgB,GAAG;IAC1D,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAsBA;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,oBAAoB,EAAE,CAe9F;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,WAAgB,GAAG,YAAY,CAiDlE"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
+
import { dirname, resolve } from 'node:path';
|
|
3
|
+
import { UsageError } from './errors.js';
|
|
4
|
+
import { VERSION } from './version.js';
|
|
5
|
+
/**
|
|
6
|
+
* Configuration comes from the environment, optionally seeded from a local
|
|
7
|
+
* env file. Credentials are never accepted as command line arguments: they
|
|
8
|
+
* would end up in shell history, in process listings and in any agent
|
|
9
|
+
* transcript that records the command.
|
|
10
|
+
*/
|
|
11
|
+
export const ENV_VARS = {
|
|
12
|
+
environment: 'NAV_ENVIRONMENT',
|
|
13
|
+
login: 'NAV_LOGIN',
|
|
14
|
+
password: 'NAV_PASSWORD',
|
|
15
|
+
signKey: 'NAV_SIGN_KEY',
|
|
16
|
+
exchangeKey: 'NAV_EXCHANGE_KEY',
|
|
17
|
+
taxNumber: 'NAV_TAX_NUMBER',
|
|
18
|
+
softwareId: 'NAV_SOFTWARE_ID',
|
|
19
|
+
softwareName: 'NAV_SOFTWARE_NAME',
|
|
20
|
+
softwareVersion: 'NAV_SOFTWARE_VERSION',
|
|
21
|
+
softwareDevName: 'NAV_SOFTWARE_DEV_NAME',
|
|
22
|
+
softwareDevContact: 'NAV_SOFTWARE_DEV_CONTACT',
|
|
23
|
+
softwareDevTaxNumber: 'NAV_SOFTWARE_DEV_TAX_NUMBER',
|
|
24
|
+
softwareOperation: 'NAV_SOFTWARE_OPERATION',
|
|
25
|
+
baseUrl: 'NAV_BASE_URL',
|
|
26
|
+
};
|
|
27
|
+
/** Variables that hold secrets and must never be printed. */
|
|
28
|
+
export const SECRET_VARS = new Set([
|
|
29
|
+
ENV_VARS.password,
|
|
30
|
+
ENV_VARS.signKey,
|
|
31
|
+
ENV_VARS.exchangeKey,
|
|
32
|
+
]);
|
|
33
|
+
const ENV_FILE_NAMES = ['.env.open-nav', '.env.local', '.env'];
|
|
34
|
+
/** Variables without which nothing can talk to NAV. */
|
|
35
|
+
export const REQUIRED_VARS = [
|
|
36
|
+
ENV_VARS.login,
|
|
37
|
+
ENV_VARS.password,
|
|
38
|
+
ENV_VARS.signKey,
|
|
39
|
+
ENV_VARS.exchangeKey,
|
|
40
|
+
ENV_VARS.taxNumber,
|
|
41
|
+
ENV_VARS.softwareId,
|
|
42
|
+
];
|
|
43
|
+
/** Defaults applied when an optional variable is unset. */
|
|
44
|
+
export const DEFAULTS = {
|
|
45
|
+
[ENV_VARS.environment]: 'test',
|
|
46
|
+
[ENV_VARS.softwareName]: 'open-nav',
|
|
47
|
+
[ENV_VARS.softwareVersion]: VERSION,
|
|
48
|
+
[ENV_VARS.softwareOperation]: 'LOCAL_SOFTWARE',
|
|
49
|
+
[ENV_VARS.softwareDevName]: 'open-nav',
|
|
50
|
+
[ENV_VARS.softwareDevContact]: 'unknown',
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Parse a `.env` file.
|
|
54
|
+
*
|
|
55
|
+
* Deliberately minimal: `KEY=value`, `#` comments, optional `export`, and
|
|
56
|
+
* single or double quotes stripped. Anything more elaborate belongs in a real
|
|
57
|
+
* secret manager, not in a file next to the source.
|
|
58
|
+
*/
|
|
59
|
+
export function parseEnvFile(contents) {
|
|
60
|
+
const values = {};
|
|
61
|
+
for (const rawLine of contents.split(/\r?\n/)) {
|
|
62
|
+
const line = rawLine.trim();
|
|
63
|
+
if (line === '' || line.startsWith('#'))
|
|
64
|
+
continue;
|
|
65
|
+
const withoutExport = line.startsWith('export ') ? line.slice('export '.length) : line;
|
|
66
|
+
const separator = withoutExport.indexOf('=');
|
|
67
|
+
if (separator === -1)
|
|
68
|
+
continue;
|
|
69
|
+
const key = withoutExport.slice(0, separator).trim();
|
|
70
|
+
let value = withoutExport.slice(separator + 1).trim();
|
|
71
|
+
if ((value.startsWith('"') && value.endsWith('"') && value.length > 1) ||
|
|
72
|
+
(value.startsWith("'") && value.endsWith("'") && value.length > 1)) {
|
|
73
|
+
value = value.slice(1, -1);
|
|
74
|
+
}
|
|
75
|
+
if (key !== '')
|
|
76
|
+
values[key] = value;
|
|
77
|
+
}
|
|
78
|
+
return values;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Find env files, walking up from a starting directory.
|
|
82
|
+
*
|
|
83
|
+
* Walking up means a project-level env file is picked up from any
|
|
84
|
+
* subdirectory, which is how an agent invoked in a nested working directory
|
|
85
|
+
* still finds the credentials.
|
|
86
|
+
*/
|
|
87
|
+
export function discoverEnvFiles(from) {
|
|
88
|
+
const found = [];
|
|
89
|
+
let directory = resolve(from);
|
|
90
|
+
for (;;) {
|
|
91
|
+
for (const name of ENV_FILE_NAMES) {
|
|
92
|
+
const candidate = resolve(directory, name);
|
|
93
|
+
if (existsSync(candidate))
|
|
94
|
+
found.push(candidate);
|
|
95
|
+
}
|
|
96
|
+
const parent = dirname(directory);
|
|
97
|
+
if (parent === directory)
|
|
98
|
+
break;
|
|
99
|
+
directory = parent;
|
|
100
|
+
}
|
|
101
|
+
return found;
|
|
102
|
+
}
|
|
103
|
+
/** Read the environment, seeded from env files, without requiring credentials. */
|
|
104
|
+
export function loadEnvironment(options = {}) {
|
|
105
|
+
const base = { ...(options.env ?? process.env) };
|
|
106
|
+
const envFiles = [];
|
|
107
|
+
if (options.envFile) {
|
|
108
|
+
if (!existsSync(options.envFile)) {
|
|
109
|
+
throw new UsageError(`Env file not found: ${options.envFile}`);
|
|
110
|
+
}
|
|
111
|
+
envFiles.push(resolve(options.envFile));
|
|
112
|
+
}
|
|
113
|
+
else if (!options.noEnvFile) {
|
|
114
|
+
envFiles.push(...discoverEnvFiles(options.cwd ?? process.cwd()));
|
|
115
|
+
}
|
|
116
|
+
// Real environment variables win over files, and a nearer file wins over a
|
|
117
|
+
// more distant one.
|
|
118
|
+
for (const file of envFiles) {
|
|
119
|
+
for (const [key, value] of Object.entries(parseEnvFile(readFileSync(file, 'utf8')))) {
|
|
120
|
+
base[key] ??= value;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return { env: base, envFiles };
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Which configuration variables are present, for the `config` command.
|
|
127
|
+
*
|
|
128
|
+
* Required and optional are reported separately: an unset optional variable
|
|
129
|
+
* with a working default is not a problem, and listing it as "missing" sends
|
|
130
|
+
* people hunting for something that is not wrong.
|
|
131
|
+
*/
|
|
132
|
+
export function describeConfig(env) {
|
|
133
|
+
return Object.values(ENV_VARS).map((variable) => {
|
|
134
|
+
const value = env[variable];
|
|
135
|
+
const secret = SECRET_VARS.has(variable);
|
|
136
|
+
const set = value !== undefined && value !== '';
|
|
137
|
+
const fallback = DEFAULTS[variable];
|
|
138
|
+
return {
|
|
139
|
+
variable,
|
|
140
|
+
set,
|
|
141
|
+
required: REQUIRED_VARS.includes(variable),
|
|
142
|
+
secret,
|
|
143
|
+
...(set && !secret ? { value } : {}),
|
|
144
|
+
...(!set && fallback !== undefined ? { default: fallback } : {}),
|
|
145
|
+
};
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Assemble the full configuration, failing with a list of everything missing
|
|
150
|
+
* rather than one variable at a time.
|
|
151
|
+
*/
|
|
152
|
+
export function loadConfig(options = {}) {
|
|
153
|
+
const { env, envFiles } = loadEnvironment(options);
|
|
154
|
+
const missing = REQUIRED_VARS.filter((variable) => !env[variable]);
|
|
155
|
+
if (missing.length > 0) {
|
|
156
|
+
throw new UsageError(`Missing configuration: ${missing.join(', ')}.\n` +
|
|
157
|
+
`Set them in the environment or in a .env file, then run "open-nav config" to check.\n` +
|
|
158
|
+
`See "open-nav help config" for the full list.`);
|
|
159
|
+
}
|
|
160
|
+
const environmentRaw = env[ENV_VARS.environment] ?? 'test';
|
|
161
|
+
if (environmentRaw !== 'test' && environmentRaw !== 'production') {
|
|
162
|
+
throw new UsageError(`${ENV_VARS.environment} must be "test" or "production", got ${JSON.stringify(environmentRaw)}`);
|
|
163
|
+
}
|
|
164
|
+
const operationRaw = env[ENV_VARS.softwareOperation] ?? 'LOCAL_SOFTWARE';
|
|
165
|
+
if (operationRaw !== 'LOCAL_SOFTWARE' && operationRaw !== 'ONLINE_SERVICE') {
|
|
166
|
+
throw new UsageError(`${ENV_VARS.softwareOperation} must be "LOCAL_SOFTWARE" or "ONLINE_SERVICE", got ${JSON.stringify(operationRaw)}`);
|
|
167
|
+
}
|
|
168
|
+
return {
|
|
169
|
+
credentials: {
|
|
170
|
+
login: env[ENV_VARS.login],
|
|
171
|
+
password: env[ENV_VARS.password],
|
|
172
|
+
signKey: env[ENV_VARS.signKey],
|
|
173
|
+
exchangeKey: env[ENV_VARS.exchangeKey],
|
|
174
|
+
taxNumber: env[ENV_VARS.taxNumber],
|
|
175
|
+
},
|
|
176
|
+
software: {
|
|
177
|
+
softwareId: env[ENV_VARS.softwareId],
|
|
178
|
+
softwareName: env[ENV_VARS.softwareName] ?? 'open-nav',
|
|
179
|
+
softwareOperation: operationRaw,
|
|
180
|
+
softwareMainVersion: env[ENV_VARS.softwareVersion] ?? VERSION,
|
|
181
|
+
softwareDevName: env[ENV_VARS.softwareDevName] ?? 'open-nav',
|
|
182
|
+
softwareDevContact: env[ENV_VARS.softwareDevContact] ?? 'unknown',
|
|
183
|
+
...(env[ENV_VARS.softwareDevTaxNumber]
|
|
184
|
+
? { softwareDevTaxNumber: env[ENV_VARS.softwareDevTaxNumber] }
|
|
185
|
+
: {}),
|
|
186
|
+
},
|
|
187
|
+
environment: environmentRaw,
|
|
188
|
+
...(env[ENV_VARS.baseUrl] ? { baseUrl: env[ENV_VARS.baseUrl] } : {}),
|
|
189
|
+
envFiles,
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exit codes, so a caller — a shell script or an agent — can branch on the
|
|
3
|
+
* outcome without parsing the output.
|
|
4
|
+
*/
|
|
5
|
+
export declare const EXIT: {
|
|
6
|
+
readonly ok: 0;
|
|
7
|
+
/** Something went wrong that the tool did not anticipate. */
|
|
8
|
+
readonly failure: 1;
|
|
9
|
+
/** The command line or configuration was wrong. */
|
|
10
|
+
readonly usage: 2;
|
|
11
|
+
/** A document failed local validation and was not sent. */
|
|
12
|
+
readonly invalid: 3;
|
|
13
|
+
/** NAV rejected the request or the invoices in it. */
|
|
14
|
+
readonly rejected: 4;
|
|
15
|
+
/**
|
|
16
|
+
* The work could not be completed because something it depends on was
|
|
17
|
+
* unavailable: the network, a NAV verdict that has not arrived, or a
|
|
18
|
+
* browser to convert a document with.
|
|
19
|
+
*/
|
|
20
|
+
readonly unavailable: 5;
|
|
21
|
+
};
|
|
22
|
+
export type ExitCode = (typeof EXIT)[keyof typeof EXIT];
|
|
23
|
+
export declare class UsageError extends Error {
|
|
24
|
+
readonly exitCode: 2;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,IAAI;;IAEf,6DAA6D;;IAE7D,mDAAmD;;IAEnD,2DAA2D;;IAE3D,sDAAsD;;IAEtD;;;;OAIG;;CAEK,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,CAAC;AAExD,qBAAa,UAAW,SAAQ,KAAK;IACnC,QAAQ,CAAC,QAAQ,IAAc;CAChC"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exit codes, so a caller — a shell script or an agent — can branch on the
|
|
3
|
+
* outcome without parsing the output.
|
|
4
|
+
*/
|
|
5
|
+
export const EXIT = {
|
|
6
|
+
ok: 0,
|
|
7
|
+
/** Something went wrong that the tool did not anticipate. */
|
|
8
|
+
failure: 1,
|
|
9
|
+
/** The command line or configuration was wrong. */
|
|
10
|
+
usage: 2,
|
|
11
|
+
/** A document failed local validation and was not sent. */
|
|
12
|
+
invalid: 3,
|
|
13
|
+
/** NAV rejected the request or the invoices in it. */
|
|
14
|
+
rejected: 4,
|
|
15
|
+
/**
|
|
16
|
+
* The work could not be completed because something it depends on was
|
|
17
|
+
* unavailable: the network, a NAV verdict that has not arrived, or a
|
|
18
|
+
* browser to convert a document with.
|
|
19
|
+
*/
|
|
20
|
+
unavailable: 5,
|
|
21
|
+
};
|
|
22
|
+
export class UsageError extends Error {
|
|
23
|
+
exitCode = EXIT.usage;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,EAAE,EAAE,CAAC;IACL,6DAA6D;IAC7D,OAAO,EAAE,CAAC;IACV,mDAAmD;IACnD,KAAK,EAAE,CAAC;IACR,2DAA2D;IAC3D,OAAO,EAAE,CAAC;IACV,sDAAsD;IACtD,QAAQ,EAAE,CAAC;IACX;;;;OAIG;IACH,WAAW,EAAE,CAAC;CACN,CAAC;AAIX,MAAM,OAAO,UAAW,SAAQ,KAAK;IAC1B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;CAChC"}
|
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type ExitCode } from './errors.js';
|
|
2
|
+
import { type Writer } from './output.js';
|
|
3
|
+
export interface RunOptions {
|
|
4
|
+
argv: string[];
|
|
5
|
+
writer?: Writer;
|
|
6
|
+
/** Whether stdout is a terminal, which decides the default output format. */
|
|
7
|
+
isTty?: boolean;
|
|
8
|
+
env?: Record<string, string | undefined>;
|
|
9
|
+
cwd?: string;
|
|
10
|
+
readFile?: (path: string) => string;
|
|
11
|
+
writeFile?: (path: string, contents: string) => void;
|
|
12
|
+
writeBinaryFile?: (path: string, contents: Buffer) => void;
|
|
13
|
+
readBinaryFile?: (path: string) => Buffer;
|
|
14
|
+
fileExists?: (path: string) => boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Run the CLI and return an exit code.
|
|
18
|
+
*
|
|
19
|
+
* Everything is injectable so the whole surface can be tested without
|
|
20
|
+
* spawning a process or touching the filesystem.
|
|
21
|
+
*/
|
|
22
|
+
export declare function run(options: RunOptions): Promise<ExitCode>;
|
|
23
|
+
//# sourceMappingURL=main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAKA,OAAO,EAAoB,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAyD,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAGjG,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACxC;AAYD;;;;;GAKG;AACH,wBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAgGhE"}
|