@optique/run 0.9.0-dev.206 → 0.9.0-dev.211
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 +1 -1
- package/dist/index.cjs +1 -3
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/run.cjs +56 -31
- package/dist/run.d.cts +3 -33
- package/dist/run.d.ts +3 -33
- package/dist/run.js +56 -29
- package/dist/valueparser.cjs +0 -1
- package/dist/valueparser.d.cts +1 -1
- package/dist/valueparser.d.ts +1 -1
- package/dist/valueparser.js +0 -1
- package/package.json +2 -2
package/LICENSE
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -6,6 +6,4 @@ exports.createPrinter = require_print.createPrinter;
|
|
|
6
6
|
exports.path = require_valueparser.path;
|
|
7
7
|
exports.print = require_print.print;
|
|
8
8
|
exports.printError = require_print.printError;
|
|
9
|
-
exports.run = require_run.run;
|
|
10
|
-
exports.runAsync = require_run.runAsync;
|
|
11
|
-
exports.runSync = require_run.runSync;
|
|
9
|
+
exports.run = require_run.run;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RunOptions, run
|
|
1
|
+
import { RunOptions, run } from "./run.cjs";
|
|
2
2
|
import { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, path } from "./valueparser.cjs";
|
|
3
3
|
import { PrintErrorOptions, PrintOptions, Printer, PrinterOptions, createPrinter, print, printError } from "./print.cjs";
|
|
4
|
-
export { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, PrintErrorOptions, PrintOptions, Printer, PrinterOptions, RunOptions, createPrinter, path, print, printError, run
|
|
4
|
+
export { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, PrintErrorOptions, PrintOptions, Printer, PrinterOptions, RunOptions, createPrinter, path, print, printError, run };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RunOptions, run
|
|
1
|
+
import { RunOptions, run } from "./run.js";
|
|
2
2
|
import { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, path } from "./valueparser.js";
|
|
3
3
|
import { PrintErrorOptions, PrintOptions, Printer, PrinterOptions, createPrinter, print, printError } from "./print.js";
|
|
4
|
-
export { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, PrintErrorOptions, PrintOptions, Printer, PrinterOptions, RunOptions, createPrinter, path, print, printError, run
|
|
4
|
+
export { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, PrintErrorOptions, PrintOptions, Printer, PrinterOptions, RunOptions, createPrinter, path, print, printError, run };
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { run
|
|
1
|
+
import { run } from "./run.js";
|
|
2
2
|
import { path } from "./valueparser.js";
|
|
3
3
|
import { createPrinter, print, printError } from "./print.js";
|
|
4
4
|
|
|
5
|
-
export { createPrinter, path, print, printError, run
|
|
5
|
+
export { createPrinter, path, print, printError, run };
|
package/dist/run.cjs
CHANGED
|
@@ -4,43 +4,70 @@ const node_path = require_rolldown_runtime.__toESM(require("node:path"));
|
|
|
4
4
|
const node_process = require_rolldown_runtime.__toESM(require("node:process"));
|
|
5
5
|
|
|
6
6
|
//#region src/run.ts
|
|
7
|
-
function run(parser, options = {}) {
|
|
8
|
-
return runImpl(parser, options);
|
|
9
|
-
}
|
|
10
7
|
/**
|
|
11
|
-
* Runs a
|
|
8
|
+
* Runs a command-line parser with automatic process integration.
|
|
12
9
|
*
|
|
13
|
-
* This
|
|
14
|
-
*
|
|
15
|
-
*
|
|
10
|
+
* This function provides a convenient high-level interface for parsing
|
|
11
|
+
* command-line arguments in Node.js, Bun, and Deno environments. It
|
|
12
|
+
* automatically handles `process.argv`, `process.exit()`, and terminal
|
|
13
|
+
* output formatting, eliminating the need to manually pass these values
|
|
14
|
+
* as the lower-level `run()` function (from `@optique/core/facade`) requires.
|
|
16
15
|
*
|
|
17
|
-
*
|
|
18
|
-
* @param parser The synchronous command-line parser to execute.
|
|
19
|
-
* @param options Configuration options for customizing behavior.
|
|
20
|
-
* @returns The parsed result if successful.
|
|
21
|
-
* @since 0.9.0
|
|
22
|
-
*/
|
|
23
|
-
function runSync(parser, options = {}) {
|
|
24
|
-
return runImpl(parser, options);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Runs an asynchronous command-line parser with automatic process integration.
|
|
16
|
+
* The function will automatically:
|
|
28
17
|
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
18
|
+
* - Extract arguments from `process.argv`
|
|
19
|
+
* - Detect terminal capabilities for colors and width
|
|
20
|
+
* - Exit the process with appropriate codes on help or error
|
|
21
|
+
* - Format output according to terminal capabilities
|
|
32
22
|
*
|
|
33
23
|
* @template T The parser type being executed.
|
|
34
24
|
* @param parser The command-line parser to execute.
|
|
35
25
|
* @param options Configuration options for customizing behavior.
|
|
36
|
-
* @
|
|
37
|
-
* @
|
|
26
|
+
* See {@link RunOptions} for available settings.
|
|
27
|
+
* @returns The parsed result if successful. On help display or parse errors,
|
|
28
|
+
* the function will call `process.exit()` and not return.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* import { object, option, run } from "@optique/run";
|
|
33
|
+
* import { string, integer } from "@optique/core/valueparser";
|
|
34
|
+
*
|
|
35
|
+
* const parser = object({
|
|
36
|
+
* name: option("-n", "--name", string()),
|
|
37
|
+
* port: option("-p", "--port", integer()),
|
|
38
|
+
* });
|
|
39
|
+
*
|
|
40
|
+
* // Automatically uses process.argv, handles errors/help, exits on completion
|
|
41
|
+
* const config = run(parser);
|
|
42
|
+
* console.log(`Starting server ${config.name} on port ${config.port}`);
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```typescript
|
|
47
|
+
* // With custom options
|
|
48
|
+
* const result = run(parser, {
|
|
49
|
+
* programName: "myapp",
|
|
50
|
+
* help: "both", // Enable both --help option and help command
|
|
51
|
+
* completion: "both", // Enable both completion command and --completion option
|
|
52
|
+
* colors: true, // Force colored output
|
|
53
|
+
* errorExitCode: 2, // Exit with code 2 on errors
|
|
54
|
+
* });
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* // Shell completion usage
|
|
60
|
+
* const result = run(parser, {
|
|
61
|
+
* completion: "both",
|
|
62
|
+
* });
|
|
63
|
+
*
|
|
64
|
+
* // Users can then:
|
|
65
|
+
* // myapp completion bash > ~/.bash_completion.d/myapp # Generate script
|
|
66
|
+
* // source ~/.bash_completion.d/myapp # Enable completion
|
|
67
|
+
* // myapp --format=<TAB> # Use completion
|
|
68
|
+
* ```
|
|
38
69
|
*/
|
|
39
|
-
function
|
|
40
|
-
const result = runImpl(parser, options);
|
|
41
|
-
return Promise.resolve(result);
|
|
42
|
-
}
|
|
43
|
-
function runImpl(parser, options = {}) {
|
|
70
|
+
function run(parser, options = {}) {
|
|
44
71
|
const { programName = node_path.default.basename(node_process.default.argv[1] || "cli"), args = node_process.default.argv.slice(2), colors = node_process.default.stdout.isTTY, maxWidth = node_process.default.stdout.columns, showDefault, help, version, completion, aboveError = "usage", errorExitCode = 1, brief, description, footer } = options;
|
|
45
72
|
const helpConfig = help ? {
|
|
46
73
|
mode: help,
|
|
@@ -81,6 +108,4 @@ function runImpl(parser, options = {}) {
|
|
|
81
108
|
}
|
|
82
109
|
|
|
83
110
|
//#endregion
|
|
84
|
-
exports.run = run;
|
|
85
|
-
exports.runAsync = runAsync;
|
|
86
|
-
exports.runSync = runSync;
|
|
111
|
+
exports.run = run;
|
package/dist/run.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ShellCompletion } from "@optique/core/completion";
|
|
2
|
-
import {
|
|
2
|
+
import { InferValue, Parser } from "@optique/core/parser";
|
|
3
3
|
import { ShowDefaultOptions } from "@optique/core/doc";
|
|
4
4
|
import { Message } from "@optique/core/message";
|
|
5
5
|
|
|
@@ -187,36 +187,6 @@ interface RunOptions {
|
|
|
187
187
|
* // myapp --format=<TAB> # Use completion
|
|
188
188
|
* ```
|
|
189
189
|
*/
|
|
190
|
-
declare function run<T extends Parser<
|
|
191
|
-
declare function run<T extends Parser<"async", unknown, unknown>>(parser: T, options?: RunOptions): Promise<InferValue<T>>;
|
|
192
|
-
declare function run<T extends Parser<Mode, unknown, unknown>>(parser: T, options?: RunOptions): ModeValue<InferMode<T>, InferValue<T>>;
|
|
193
|
-
/**
|
|
194
|
-
* Runs a synchronous command-line parser with automatic process integration.
|
|
195
|
-
*
|
|
196
|
-
* This is a type-safe version of {@link run} that only accepts sync parsers.
|
|
197
|
-
* Use this when you know your parser is sync-only to get direct return values
|
|
198
|
-
* without Promise wrappers.
|
|
199
|
-
*
|
|
200
|
-
* @template T The sync parser type being executed.
|
|
201
|
-
* @param parser The synchronous command-line parser to execute.
|
|
202
|
-
* @param options Configuration options for customizing behavior.
|
|
203
|
-
* @returns The parsed result if successful.
|
|
204
|
-
* @since 0.9.0
|
|
205
|
-
*/
|
|
206
|
-
declare function runSync<T extends Parser<"sync", unknown, unknown>>(parser: T, options?: RunOptions): InferValue<T>;
|
|
207
|
-
/**
|
|
208
|
-
* Runs an asynchronous command-line parser with automatic process integration.
|
|
209
|
-
*
|
|
210
|
-
* This function accepts any parser (sync or async) and always returns a
|
|
211
|
-
* Promise. Use this when working with parsers that may contain async
|
|
212
|
-
* value parsers.
|
|
213
|
-
*
|
|
214
|
-
* @template T The parser type being executed.
|
|
215
|
-
* @param parser The command-line parser to execute.
|
|
216
|
-
* @param options Configuration options for customizing behavior.
|
|
217
|
-
* @returns A Promise of the parsed result if successful.
|
|
218
|
-
* @since 0.9.0
|
|
219
|
-
*/
|
|
220
|
-
declare function runAsync<T extends Parser<Mode, unknown, unknown>>(parser: T, options?: RunOptions): Promise<InferValue<T>>;
|
|
190
|
+
declare function run<T extends Parser<unknown, unknown>>(parser: T, options?: RunOptions): InferValue<T>;
|
|
221
191
|
//#endregion
|
|
222
|
-
export { RunOptions, run
|
|
192
|
+
export { RunOptions, run };
|
package/dist/run.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Message } from "@optique/core/message";
|
|
2
2
|
import { ShellCompletion } from "@optique/core/completion";
|
|
3
|
-
import {
|
|
3
|
+
import { InferValue, Parser } from "@optique/core/parser";
|
|
4
4
|
import { ShowDefaultOptions } from "@optique/core/doc";
|
|
5
5
|
|
|
6
6
|
//#region src/run.d.ts
|
|
@@ -187,36 +187,6 @@ interface RunOptions {
|
|
|
187
187
|
* // myapp --format=<TAB> # Use completion
|
|
188
188
|
* ```
|
|
189
189
|
*/
|
|
190
|
-
declare function run<T extends Parser<
|
|
191
|
-
declare function run<T extends Parser<"async", unknown, unknown>>(parser: T, options?: RunOptions): Promise<InferValue<T>>;
|
|
192
|
-
declare function run<T extends Parser<Mode, unknown, unknown>>(parser: T, options?: RunOptions): ModeValue<InferMode<T>, InferValue<T>>;
|
|
193
|
-
/**
|
|
194
|
-
* Runs a synchronous command-line parser with automatic process integration.
|
|
195
|
-
*
|
|
196
|
-
* This is a type-safe version of {@link run} that only accepts sync parsers.
|
|
197
|
-
* Use this when you know your parser is sync-only to get direct return values
|
|
198
|
-
* without Promise wrappers.
|
|
199
|
-
*
|
|
200
|
-
* @template T The sync parser type being executed.
|
|
201
|
-
* @param parser The synchronous command-line parser to execute.
|
|
202
|
-
* @param options Configuration options for customizing behavior.
|
|
203
|
-
* @returns The parsed result if successful.
|
|
204
|
-
* @since 0.9.0
|
|
205
|
-
*/
|
|
206
|
-
declare function runSync<T extends Parser<"sync", unknown, unknown>>(parser: T, options?: RunOptions): InferValue<T>;
|
|
207
|
-
/**
|
|
208
|
-
* Runs an asynchronous command-line parser with automatic process integration.
|
|
209
|
-
*
|
|
210
|
-
* This function accepts any parser (sync or async) and always returns a
|
|
211
|
-
* Promise. Use this when working with parsers that may contain async
|
|
212
|
-
* value parsers.
|
|
213
|
-
*
|
|
214
|
-
* @template T The parser type being executed.
|
|
215
|
-
* @param parser The command-line parser to execute.
|
|
216
|
-
* @param options Configuration options for customizing behavior.
|
|
217
|
-
* @returns A Promise of the parsed result if successful.
|
|
218
|
-
* @since 0.9.0
|
|
219
|
-
*/
|
|
220
|
-
declare function runAsync<T extends Parser<Mode, unknown, unknown>>(parser: T, options?: RunOptions): Promise<InferValue<T>>;
|
|
190
|
+
declare function run<T extends Parser<unknown, unknown>>(parser: T, options?: RunOptions): InferValue<T>;
|
|
221
191
|
//#endregion
|
|
222
|
-
export { RunOptions, run
|
|
192
|
+
export { RunOptions, run };
|
package/dist/run.js
CHANGED
|
@@ -3,43 +3,70 @@ import path from "node:path";
|
|
|
3
3
|
import process from "node:process";
|
|
4
4
|
|
|
5
5
|
//#region src/run.ts
|
|
6
|
-
function run(parser, options = {}) {
|
|
7
|
-
return runImpl(parser, options);
|
|
8
|
-
}
|
|
9
6
|
/**
|
|
10
|
-
* Runs a
|
|
7
|
+
* Runs a command-line parser with automatic process integration.
|
|
11
8
|
*
|
|
12
|
-
* This
|
|
13
|
-
*
|
|
14
|
-
*
|
|
9
|
+
* This function provides a convenient high-level interface for parsing
|
|
10
|
+
* command-line arguments in Node.js, Bun, and Deno environments. It
|
|
11
|
+
* automatically handles `process.argv`, `process.exit()`, and terminal
|
|
12
|
+
* output formatting, eliminating the need to manually pass these values
|
|
13
|
+
* as the lower-level `run()` function (from `@optique/core/facade`) requires.
|
|
15
14
|
*
|
|
16
|
-
*
|
|
17
|
-
* @param parser The synchronous command-line parser to execute.
|
|
18
|
-
* @param options Configuration options for customizing behavior.
|
|
19
|
-
* @returns The parsed result if successful.
|
|
20
|
-
* @since 0.9.0
|
|
21
|
-
*/
|
|
22
|
-
function runSync(parser, options = {}) {
|
|
23
|
-
return runImpl(parser, options);
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Runs an asynchronous command-line parser with automatic process integration.
|
|
15
|
+
* The function will automatically:
|
|
27
16
|
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
17
|
+
* - Extract arguments from `process.argv`
|
|
18
|
+
* - Detect terminal capabilities for colors and width
|
|
19
|
+
* - Exit the process with appropriate codes on help or error
|
|
20
|
+
* - Format output according to terminal capabilities
|
|
31
21
|
*
|
|
32
22
|
* @template T The parser type being executed.
|
|
33
23
|
* @param parser The command-line parser to execute.
|
|
34
24
|
* @param options Configuration options for customizing behavior.
|
|
35
|
-
* @
|
|
36
|
-
* @
|
|
25
|
+
* See {@link RunOptions} for available settings.
|
|
26
|
+
* @returns The parsed result if successful. On help display or parse errors,
|
|
27
|
+
* the function will call `process.exit()` and not return.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* import { object, option, run } from "@optique/run";
|
|
32
|
+
* import { string, integer } from "@optique/core/valueparser";
|
|
33
|
+
*
|
|
34
|
+
* const parser = object({
|
|
35
|
+
* name: option("-n", "--name", string()),
|
|
36
|
+
* port: option("-p", "--port", integer()),
|
|
37
|
+
* });
|
|
38
|
+
*
|
|
39
|
+
* // Automatically uses process.argv, handles errors/help, exits on completion
|
|
40
|
+
* const config = run(parser);
|
|
41
|
+
* console.log(`Starting server ${config.name} on port ${config.port}`);
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* // With custom options
|
|
47
|
+
* const result = run(parser, {
|
|
48
|
+
* programName: "myapp",
|
|
49
|
+
* help: "both", // Enable both --help option and help command
|
|
50
|
+
* completion: "both", // Enable both completion command and --completion option
|
|
51
|
+
* colors: true, // Force colored output
|
|
52
|
+
* errorExitCode: 2, // Exit with code 2 on errors
|
|
53
|
+
* });
|
|
54
|
+
* ```
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* // Shell completion usage
|
|
59
|
+
* const result = run(parser, {
|
|
60
|
+
* completion: "both",
|
|
61
|
+
* });
|
|
62
|
+
*
|
|
63
|
+
* // Users can then:
|
|
64
|
+
* // myapp completion bash > ~/.bash_completion.d/myapp # Generate script
|
|
65
|
+
* // source ~/.bash_completion.d/myapp # Enable completion
|
|
66
|
+
* // myapp --format=<TAB> # Use completion
|
|
67
|
+
* ```
|
|
37
68
|
*/
|
|
38
|
-
function
|
|
39
|
-
const result = runImpl(parser, options);
|
|
40
|
-
return Promise.resolve(result);
|
|
41
|
-
}
|
|
42
|
-
function runImpl(parser, options = {}) {
|
|
69
|
+
function run(parser, options = {}) {
|
|
43
70
|
const { programName = path.basename(process.argv[1] || "cli"), args = process.argv.slice(2), colors = process.stdout.isTTY, maxWidth = process.stdout.columns, showDefault, help, version, completion, aboveError = "usage", errorExitCode = 1, brief, description, footer } = options;
|
|
44
71
|
const helpConfig = help ? {
|
|
45
72
|
mode: help,
|
|
@@ -80,4 +107,4 @@ function runImpl(parser, options = {}) {
|
|
|
80
107
|
}
|
|
81
108
|
|
|
82
109
|
//#endregion
|
|
83
|
-
export { run
|
|
110
|
+
export { run };
|
package/dist/valueparser.cjs
CHANGED
|
@@ -46,7 +46,6 @@ function path(options = {}) {
|
|
|
46
46
|
const mustExist = "mustExist" in options ? options.mustExist : false;
|
|
47
47
|
const mustNotExist = "mustNotExist" in options ? options.mustNotExist : false;
|
|
48
48
|
return {
|
|
49
|
-
$mode: "sync",
|
|
50
49
|
metavar,
|
|
51
50
|
parse(input) {
|
|
52
51
|
if (extensions && extensions.length > 0) {
|
package/dist/valueparser.d.cts
CHANGED
|
@@ -169,6 +169,6 @@ type PathOptions = PathOptionsMustExist | PathOptionsMustNotExist | PathOptionsN
|
|
|
169
169
|
* }));
|
|
170
170
|
* ```
|
|
171
171
|
*/
|
|
172
|
-
declare function path(options?: PathOptions): ValueParser<
|
|
172
|
+
declare function path(options?: PathOptions): ValueParser<string>;
|
|
173
173
|
//#endregion
|
|
174
174
|
export { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, path };
|
package/dist/valueparser.d.ts
CHANGED
|
@@ -169,6 +169,6 @@ type PathOptions = PathOptionsMustExist | PathOptionsMustNotExist | PathOptionsN
|
|
|
169
169
|
* }));
|
|
170
170
|
* ```
|
|
171
171
|
*/
|
|
172
|
-
declare function path(options?: PathOptions): ValueParser<
|
|
172
|
+
declare function path(options?: PathOptions): ValueParser<string>;
|
|
173
173
|
//#endregion
|
|
174
174
|
export { PathErrorOptions, PathOptions, PathOptionsBase, PathOptionsMustExist, PathOptionsMustNotExist, PathOptionsNoExistenceCheck, path };
|
package/dist/valueparser.js
CHANGED
|
@@ -45,7 +45,6 @@ function path(options = {}) {
|
|
|
45
45
|
const mustExist = "mustExist" in options ? options.mustExist : false;
|
|
46
46
|
const mustNotExist = "mustNotExist" in options ? options.mustNotExist : false;
|
|
47
47
|
return {
|
|
48
|
-
$mode: "sync",
|
|
49
48
|
metavar,
|
|
50
49
|
parse(input) {
|
|
51
50
|
if (extensions && extensions.length > 0) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@optique/run",
|
|
3
|
-
"version": "0.9.0-dev.
|
|
3
|
+
"version": "0.9.0-dev.211+322b48ee",
|
|
4
4
|
"description": "Type-safe combinatorial command-line interface parser",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"CLI",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
},
|
|
71
71
|
"sideEffects": false,
|
|
72
72
|
"dependencies": {
|
|
73
|
-
"@optique/core": "0.9.0-dev.
|
|
73
|
+
"@optique/core": "0.9.0-dev.211+322b48ee"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@types/node": "^20.19.9",
|