@aigne/cli 1.60.0-beta → 1.74.0-beta
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 +12 -12
- package/dist/_virtual/rolldown_runtime.cjs +29 -0
- package/dist/bunwrapper.cjs +22 -0
- package/dist/bunwrapper.d.cts +1 -0
- package/dist/bunwrapper.d.mts +1 -0
- package/dist/bunwrapper.mjs +23 -0
- package/dist/bunwrapper.mjs.map +1 -0
- package/dist/cli.cjs +42 -0
- package/dist/cli.d.cts +9 -0
- package/dist/cli.d.cts.map +1 -0
- package/dist/cli.d.mts +10 -0
- package/dist/cli.d.mts.map +1 -0
- package/dist/cli.mjs +41 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/commands/aigne.cjs +23 -0
- package/dist/commands/aigne.mjs +22 -0
- package/dist/commands/aigne.mjs.map +1 -0
- package/dist/commands/app/agent.cjs +117 -0
- package/dist/commands/app/agent.mjs +113 -0
- package/dist/commands/app/agent.mjs.map +1 -0
- package/dist/commands/app/app.cjs +92 -0
- package/dist/commands/app/app.mjs +90 -0
- package/dist/commands/app/app.mjs.map +1 -0
- package/dist/commands/app/cli.cjs +6 -0
- package/dist/commands/app/cli.d.cts +1 -0
- package/dist/commands/app/cli.d.mts +1 -0
- package/dist/commands/app/cli.mjs +8 -0
- package/dist/commands/app/cli.mjs.map +1 -0
- package/dist/commands/app/upgrade.cjs +243 -0
- package/dist/commands/app/upgrade.mjs +240 -0
- package/dist/commands/app/upgrade.mjs.map +1 -0
- package/dist/commands/app.cjs +53 -0
- package/dist/commands/app.mjs +53 -0
- package/dist/commands/app.mjs.map +1 -0
- package/dist/commands/create.cjs +66 -0
- package/dist/commands/create.mjs +65 -0
- package/dist/commands/create.mjs.map +1 -0
- package/dist/commands/deploy.cjs +237 -0
- package/dist/commands/deploy.mjs +237 -0
- package/dist/commands/deploy.mjs.map +1 -0
- package/dist/commands/eval.cjs +88 -0
- package/dist/commands/eval.mjs +88 -0
- package/dist/commands/eval.mjs.map +1 -0
- package/dist/commands/hub.cjs +297 -0
- package/dist/commands/hub.mjs +294 -0
- package/dist/commands/hub.mjs.map +1 -0
- package/dist/commands/observe.cjs +49 -0
- package/dist/commands/observe.mjs +46 -0
- package/dist/commands/observe.mjs.map +1 -0
- package/dist/commands/run-skill.cjs +84 -0
- package/dist/commands/run-skill.mjs +81 -0
- package/dist/commands/run-skill.mjs.map +1 -0
- package/dist/commands/run.cjs +172 -0
- package/dist/commands/run.mjs +171 -0
- package/dist/commands/run.mjs.map +1 -0
- package/dist/commands/serve-mcp.cjs +68 -0
- package/dist/commands/serve-mcp.mjs +67 -0
- package/dist/commands/serve-mcp.mjs.map +1 -0
- package/dist/commands/test.cjs +40 -0
- package/dist/commands/test.mjs +39 -0
- package/dist/commands/test.mjs.map +1 -0
- package/dist/constants.cjs +28 -0
- package/dist/constants.d.cts +9 -0
- package/dist/constants.d.cts.map +1 -0
- package/dist/constants.d.mts +9 -0
- package/dist/constants.d.mts.map +1 -0
- package/dist/constants.mjs +24 -0
- package/dist/constants.mjs.map +1 -0
- package/dist/global.d.cjs +0 -0
- package/dist/global.d.cts +6 -0
- package/dist/global.d.cts.map +1 -0
- package/dist/global.d.mts +6 -0
- package/dist/global.d.mts.map +1 -0
- package/dist/index.cjs +0 -0
- package/dist/index.d.cts +2 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.mjs +1 -0
- package/dist/tracer/terminal.cjs +336 -0
- package/dist/tracer/terminal.mjs +332 -0
- package/dist/tracer/terminal.mjs.map +1 -0
- package/dist/type.cjs +0 -0
- package/dist/type.d.cts +10 -0
- package/dist/type.d.cts.map +1 -0
- package/dist/type.d.mts +10 -0
- package/dist/type.d.mts.map +1 -0
- package/dist/type.mjs +1 -0
- package/dist/ui/utils/terminal-input.cjs +145 -0
- package/dist/ui/utils/terminal-input.mjs +144 -0
- package/dist/ui/utils/terminal-input.mjs.map +1 -0
- package/dist/ui/utils/text-buffer.cjs +865 -0
- package/dist/ui/utils/text-buffer.mjs +865 -0
- package/dist/ui/utils/text-buffer.mjs.map +1 -0
- package/dist/ui/utils/text-utils.cjs +85 -0
- package/dist/ui/utils/text-utils.mjs +78 -0
- package/dist/ui/utils/text-utils.mjs.map +1 -0
- package/dist/utils/agent-v1.cjs +180 -0
- package/dist/utils/agent-v1.d.cts +138 -0
- package/dist/utils/agent-v1.d.cts.map +1 -0
- package/dist/utils/agent-v1.d.mts +138 -0
- package/dist/utils/agent-v1.d.mts.map +1 -0
- package/dist/utils/agent-v1.mjs +179 -0
- package/dist/utils/agent-v1.mjs.map +1 -0
- package/dist/utils/aigne-hub/constants.cjs +22 -0
- package/dist/utils/aigne-hub/constants.mjs +18 -0
- package/dist/utils/aigne-hub/constants.mjs.map +1 -0
- package/dist/utils/aigne-hub/credential.cjs +179 -0
- package/dist/utils/aigne-hub/credential.mjs +175 -0
- package/dist/utils/aigne-hub/credential.mjs.map +1 -0
- package/dist/utils/aigne-hub/crypto.cjs +41 -0
- package/dist/utils/aigne-hub/crypto.mjs +33 -0
- package/dist/utils/aigne-hub/crypto.mjs.map +1 -0
- package/dist/utils/aigne-hub/model.cjs +112 -0
- package/dist/utils/aigne-hub/model.d.cts +19 -0
- package/dist/utils/aigne-hub/model.d.cts.map +1 -0
- package/dist/utils/aigne-hub/model.d.mts +19 -0
- package/dist/utils/aigne-hub/model.d.mts.map +1 -0
- package/dist/utils/aigne-hub/model.mjs +106 -0
- package/dist/utils/aigne-hub/model.mjs.map +1 -0
- package/dist/utils/aigne-hub/store/file.cjs +64 -0
- package/dist/utils/aigne-hub/store/file.mjs +64 -0
- package/dist/utils/aigne-hub/store/file.mjs.map +1 -0
- package/dist/utils/aigne-hub/store/index.cjs +37 -0
- package/dist/utils/aigne-hub/store/index.mjs +37 -0
- package/dist/utils/aigne-hub/store/index.mjs.map +1 -0
- package/dist/utils/aigne-hub/store/keytar.cjs +61 -0
- package/dist/utils/aigne-hub/store/keytar.mjs +61 -0
- package/dist/utils/aigne-hub/store/keytar.mjs.map +1 -0
- package/dist/utils/aigne-hub/store/migrate.cjs +46 -0
- package/dist/utils/aigne-hub/store/migrate.mjs +45 -0
- package/dist/utils/aigne-hub/store/migrate.mjs.map +1 -0
- package/dist/utils/aigne-hub/type.d.cts +18 -0
- package/dist/utils/aigne-hub/type.d.cts.map +1 -0
- package/dist/utils/aigne-hub/type.d.mts +18 -0
- package/dist/utils/aigne-hub/type.d.mts.map +1 -0
- package/dist/utils/aigne-hub-user.cjs +11 -0
- package/dist/utils/aigne-hub-user.d.cts +23 -0
- package/dist/utils/aigne-hub-user.d.cts.map +1 -0
- package/dist/utils/aigne-hub-user.d.mts +23 -0
- package/dist/utils/aigne-hub-user.d.mts.map +1 -0
- package/dist/utils/aigne-hub-user.mjs +11 -0
- package/dist/utils/aigne-hub-user.mjs.map +1 -0
- package/dist/utils/ascii-logo.cjs +30 -0
- package/dist/utils/ascii-logo.d.cts +5 -0
- package/dist/utils/ascii-logo.d.cts.map +1 -0
- package/dist/utils/ascii-logo.d.mts +5 -0
- package/dist/utils/ascii-logo.d.mts.map +1 -0
- package/dist/utils/{ascii-logo.js → ascii-logo.mjs} +13 -3
- package/dist/utils/ascii-logo.mjs.map +1 -0
- package/dist/utils/download.cjs +25 -0
- package/dist/utils/download.d.cts +7 -0
- package/dist/utils/download.d.cts.map +1 -0
- package/dist/utils/download.d.mts +7 -0
- package/dist/utils/download.d.mts.map +1 -0
- package/dist/utils/download.mjs +25 -0
- package/dist/utils/download.mjs.map +1 -0
- package/dist/utils/evaluation/core.cjs +84 -0
- package/dist/utils/evaluation/core.mjs +84 -0
- package/dist/utils/evaluation/core.mjs.map +1 -0
- package/dist/utils/evaluation/dataset.cjs +47 -0
- package/dist/utils/evaluation/dataset.mjs +46 -0
- package/dist/utils/evaluation/dataset.mjs.map +1 -0
- package/dist/utils/evaluation/evaluator.cjs +109 -0
- package/dist/utils/evaluation/{evaluator.js → evaluator.mjs} +48 -45
- package/dist/utils/evaluation/evaluator.mjs.map +1 -0
- package/dist/utils/evaluation/reporter.cjs +225 -0
- package/dist/utils/evaluation/reporter.mjs +220 -0
- package/dist/utils/evaluation/reporter.mjs.map +1 -0
- package/dist/utils/evaluation/runner.cjs +85 -0
- package/dist/utils/evaluation/runner.mjs +85 -0
- package/dist/utils/evaluation/runner.mjs.map +1 -0
- package/dist/utils/get-url-origin.cjs +12 -0
- package/dist/utils/get-url-origin.d.cts +5 -0
- package/dist/utils/get-url-origin.d.cts.map +1 -0
- package/dist/utils/get-url-origin.d.mts +5 -0
- package/dist/utils/get-url-origin.d.mts.map +1 -0
- package/dist/utils/get-url-origin.mjs +12 -0
- package/dist/utils/get-url-origin.mjs.map +1 -0
- package/dist/utils/inquirer/checkbox.cjs +265 -0
- package/dist/utils/inquirer/checkbox.mjs +262 -0
- package/dist/utils/inquirer/checkbox.mjs.map +1 -0
- package/dist/utils/listr.cjs +226 -0
- package/dist/utils/listr.d.cts +71 -0
- package/dist/utils/listr.d.cts.map +1 -0
- package/dist/utils/listr.d.mts +71 -0
- package/dist/utils/listr.d.mts.map +1 -0
- package/dist/utils/listr.mjs +222 -0
- package/dist/utils/listr.mjs.map +1 -0
- package/dist/utils/load-aigne.cjs +77 -0
- package/dist/utils/load-aigne.d.cts +29 -0
- package/dist/utils/load-aigne.d.cts.map +1 -0
- package/dist/utils/load-aigne.d.mts +29 -0
- package/dist/utils/load-aigne.d.mts.map +1 -0
- package/dist/utils/load-aigne.mjs +74 -0
- package/dist/utils/load-aigne.mjs.map +1 -0
- package/dist/utils/run-chat-loop.cjs +90 -0
- package/dist/utils/run-chat-loop.d.cts +20 -0
- package/dist/utils/run-chat-loop.d.cts.map +1 -0
- package/dist/utils/run-chat-loop.d.mts +20 -0
- package/dist/utils/run-chat-loop.d.mts.map +1 -0
- package/dist/utils/run-chat-loop.mjs +89 -0
- package/dist/utils/run-chat-loop.mjs.map +1 -0
- package/dist/utils/run-with-aigne.cjs +131 -0
- package/dist/utils/run-with-aigne.d.cts +46 -0
- package/dist/utils/run-with-aigne.d.cts.map +1 -0
- package/dist/utils/run-with-aigne.d.mts +46 -0
- package/dist/utils/run-with-aigne.d.mts.map +1 -0
- package/dist/utils/run-with-aigne.mjs +126 -0
- package/dist/utils/run-with-aigne.mjs.map +1 -0
- package/dist/utils/serve-mcp.cjs +91 -0
- package/dist/utils/serve-mcp.d.cts +20 -0
- package/dist/utils/serve-mcp.d.cts.map +1 -0
- package/dist/utils/serve-mcp.d.mts +20 -0
- package/dist/utils/serve-mcp.d.mts.map +1 -0
- package/dist/utils/serve-mcp.mjs +89 -0
- package/dist/utils/serve-mcp.mjs.map +1 -0
- package/dist/utils/spinner.cjs +19 -0
- package/dist/utils/spinner.d.cts +5 -0
- package/dist/utils/spinner.d.cts.map +1 -0
- package/dist/utils/spinner.d.mts +5 -0
- package/dist/utils/spinner.d.mts.map +1 -0
- package/dist/utils/spinner.mjs +19 -0
- package/dist/utils/spinner.mjs.map +1 -0
- package/dist/utils/string-utils.cjs +11 -0
- package/dist/utils/string-utils.d.cts +5 -0
- package/dist/utils/string-utils.d.cts.map +1 -0
- package/dist/utils/string-utils.d.mts +5 -0
- package/dist/utils/string-utils.d.mts.map +1 -0
- package/dist/utils/string-utils.mjs +10 -0
- package/dist/utils/string-utils.mjs.map +1 -0
- package/dist/utils/time.cjs +14 -0
- package/dist/utils/time.d.cts +5 -0
- package/dist/utils/time.d.cts.map +1 -0
- package/dist/utils/time.d.mts +5 -0
- package/dist/utils/time.d.mts.map +1 -0
- package/dist/utils/time.mjs +14 -0
- package/dist/utils/time.mjs.map +1 -0
- package/dist/utils/url.cjs +8 -0
- package/dist/utils/url.d.cts +5 -0
- package/dist/utils/url.d.cts.map +1 -0
- package/dist/utils/url.d.mts +5 -0
- package/dist/utils/url.d.mts.map +1 -0
- package/dist/utils/url.mjs +8 -0
- package/dist/utils/url.mjs.map +1 -0
- package/dist/utils/yargs.cjs +191 -0
- package/dist/utils/yargs.d.cts +96 -0
- package/dist/utils/yargs.d.cts.map +1 -0
- package/dist/utils/yargs.d.mts +96 -0
- package/dist/utils/yargs.d.mts.map +1 -0
- package/dist/utils/yargs.mjs +186 -0
- package/dist/utils/yargs.mjs.map +1 -0
- package/package.json +122 -45
- package/CHANGELOG.md +0 -5019
- package/dist/bunwrapper.d.ts +0 -2
- package/dist/bunwrapper.js +0 -18
- package/dist/cli.d.ts +0 -7
- package/dist/cli.js +0 -42
- package/dist/commands/aigne.d.ts +0 -4
- package/dist/commands/aigne.js +0 -35
- package/dist/commands/app/agent.d.ts +0 -26
- package/dist/commands/app/agent.js +0 -122
- package/dist/commands/app/app.d.ts +0 -7
- package/dist/commands/app/app.js +0 -92
- package/dist/commands/app/cli.d.ts +0 -1
- package/dist/commands/app/cli.js +0 -2
- package/dist/commands/app/upgrade.d.ts +0 -54
- package/dist/commands/app/upgrade.js +0 -236
- package/dist/commands/app.d.ts +0 -4
- package/dist/commands/app.js +0 -54
- package/dist/commands/create.d.ts +0 -6
- package/dist/commands/create.js +0 -74
- package/dist/commands/deploy.d.ts +0 -11
- package/dist/commands/deploy.js +0 -255
- package/dist/commands/eval.d.ts +0 -11
- package/dist/commands/eval.js +0 -110
- package/dist/commands/hub.d.ts +0 -3
- package/dist/commands/hub.js +0 -323
- package/dist/commands/observe.d.ts +0 -7
- package/dist/commands/observe.js +0 -41
- package/dist/commands/run-skill.d.ts +0 -6
- package/dist/commands/run-skill.js +0 -102
- package/dist/commands/run.d.ts +0 -9
- package/dist/commands/run.js +0 -187
- package/dist/commands/serve-mcp.d.ts +0 -20
- package/dist/commands/serve-mcp.js +0 -67
- package/dist/commands/test.d.ts +0 -9
- package/dist/commands/test.js +0 -33
- package/dist/constants.d.ts +0 -7
- package/dist/constants.js +0 -21
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/tracer/terminal.d.ts +0 -62
- package/dist/tracer/terminal.js +0 -404
- package/dist/type.d.ts +0 -5
- package/dist/type.js +0 -1
- package/dist/ui/utils/terminal-input.d.ts +0 -19
- package/dist/ui/utils/terminal-input.js +0 -123
- package/dist/ui/utils/text-buffer.d.ts +0 -87
- package/dist/ui/utils/text-buffer.js +0 -1059
- package/dist/ui/utils/text-utils.d.ts +0 -37
- package/dist/ui/utils/text-utils.js +0 -185
- package/dist/utils/agent-v1.d.ts +0 -134
- package/dist/utils/agent-v1.js +0 -213
- package/dist/utils/aigne-hub/constants.d.ts +0 -6
- package/dist/utils/aigne-hub/constants.js +0 -12
- package/dist/utils/aigne-hub/credential.d.ts +0 -20
- package/dist/utils/aigne-hub/credential.js +0 -182
- package/dist/utils/aigne-hub/crypto.d.ts +0 -4
- package/dist/utils/aigne-hub/crypto.js +0 -30
- package/dist/utils/aigne-hub/model.d.ts +0 -13
- package/dist/utils/aigne-hub/model.js +0 -122
- package/dist/utils/aigne-hub/store/file.d.ts +0 -15
- package/dist/utils/aigne-hub/store/file.js +0 -69
- package/dist/utils/aigne-hub/store/index.d.ts +0 -5
- package/dist/utils/aigne-hub/store/index.js +0 -43
- package/dist/utils/aigne-hub/store/keytar.d.ts +0 -15
- package/dist/utils/aigne-hub/store/keytar.js +0 -67
- package/dist/utils/aigne-hub/store/migrate.d.ts +0 -2
- package/dist/utils/aigne-hub/store/migrate.js +0 -57
- package/dist/utils/aigne-hub/type.d.ts +0 -38
- package/dist/utils/aigne-hub/type.js +0 -1
- package/dist/utils/aigne-hub-user.d.ts +0 -16
- package/dist/utils/aigne-hub-user.js +0 -10
- package/dist/utils/ascii-logo.d.ts +0 -1
- package/dist/utils/download.d.ts +0 -3
- package/dist/utils/download.js +0 -19
- package/dist/utils/evaluation/core.d.ts +0 -8
- package/dist/utils/evaluation/core.js +0 -83
- package/dist/utils/evaluation/dataset.d.ts +0 -15
- package/dist/utils/evaluation/dataset.js +0 -61
- package/dist/utils/evaluation/evaluator.d.ts +0 -9
- package/dist/utils/evaluation/reporter.d.ts +0 -28
- package/dist/utils/evaluation/reporter.js +0 -221
- package/dist/utils/evaluation/runner.d.ts +0 -16
- package/dist/utils/evaluation/runner.js +0 -129
- package/dist/utils/evaluation/type.d.ts +0 -69
- package/dist/utils/evaluation/type.js +0 -1
- package/dist/utils/get-url-origin.d.ts +0 -1
- package/dist/utils/get-url-origin.js +0 -8
- package/dist/utils/inquirer/checkbox.d.ts +0 -55
- package/dist/utils/inquirer/checkbox.js +0 -319
- package/dist/utils/listr.d.ts +0 -64
- package/dist/utils/listr.js +0 -265
- package/dist/utils/load-aigne.d.ts +0 -18
- package/dist/utils/load-aigne.js +0 -80
- package/dist/utils/run-chat-loop.d.ts +0 -15
- package/dist/utils/run-chat-loop.js +0 -87
- package/dist/utils/run-with-aigne.d.ts +0 -27
- package/dist/utils/run-with-aigne.js +0 -157
- package/dist/utils/serve-mcp.d.ts +0 -9
- package/dist/utils/serve-mcp.js +0 -93
- package/dist/utils/spinner.d.ts +0 -1
- package/dist/utils/spinner.js +0 -14
- package/dist/utils/string-utils.d.ts +0 -1
- package/dist/utils/string-utils.js +0 -4
- package/dist/utils/time.d.ts +0 -1
- package/dist/utils/time.js +0 -12
- package/dist/utils/url.d.ts +0 -1
- package/dist/utils/url.js +0 -3
- package/dist/utils/yargs.d.ts +0 -94
- package/dist/utils/yargs.js +0 -210
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ExitPromptError } from "@inquirer/core";
|
|
3
|
-
import chalk from "chalk";
|
|
4
|
-
import { Box, render, Text, useInput } from "ink";
|
|
5
|
-
import { useRef, useState } from "react";
|
|
6
|
-
import { useTextBuffer } from "./text-buffer.js";
|
|
7
|
-
export async function terminalInput({ render: r = render, ...options } = {}) {
|
|
8
|
-
return new Promise((resolve, reject) => {
|
|
9
|
-
const handleSigInt = () => {
|
|
10
|
-
reject(new Error("Input aborted"));
|
|
11
|
-
};
|
|
12
|
-
process.addListener("SIGINT", handleSigInt);
|
|
13
|
-
const clean = () => process.removeListener("SIGINT", handleSigInt);
|
|
14
|
-
const app = r(_jsx(TerminalInput, { ...options, onSubmit: (value) => {
|
|
15
|
-
if (options.clear)
|
|
16
|
-
app.clear();
|
|
17
|
-
app.unmount();
|
|
18
|
-
resolve(value);
|
|
19
|
-
clean();
|
|
20
|
-
}, onError: (error) => {
|
|
21
|
-
if (options.clear)
|
|
22
|
-
app.clear();
|
|
23
|
-
app.unmount();
|
|
24
|
-
reject(error);
|
|
25
|
-
clean();
|
|
26
|
-
} }), { exitOnCtrlC: false });
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
export function TerminalInput(props) {
|
|
30
|
-
const buffer = useTextBuffer({
|
|
31
|
-
initialText: props.default || "",
|
|
32
|
-
initialCursorOffset: props.default?.length || 0,
|
|
33
|
-
isValidPath: () => false,
|
|
34
|
-
viewport: { width: 80, height: 1 },
|
|
35
|
-
});
|
|
36
|
-
const textRef = useRef(buffer.text);
|
|
37
|
-
textRef.current = buffer.text;
|
|
38
|
-
const [status, setStatus] = useState("input");
|
|
39
|
-
const [errorMessage, setErrorMessage] = useState();
|
|
40
|
-
useInput((character, key) => {
|
|
41
|
-
if (character === "c" && key.ctrl) {
|
|
42
|
-
setStatus("error");
|
|
43
|
-
setTimeout(() => {
|
|
44
|
-
props.onError(new ExitPromptError("Input aborted by user"));
|
|
45
|
-
});
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
if (key.return) {
|
|
49
|
-
const input = textRef.current || props.default || "";
|
|
50
|
-
setStatus("validating");
|
|
51
|
-
setErrorMessage(undefined);
|
|
52
|
-
// Handle validation
|
|
53
|
-
const validateInput = async () => {
|
|
54
|
-
try {
|
|
55
|
-
// Check required validation first
|
|
56
|
-
if (props.required && !input.trim()) {
|
|
57
|
-
setErrorMessage("You must provide a value");
|
|
58
|
-
setStatus("input");
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
// Run custom validation if provided
|
|
62
|
-
if (props.validate) {
|
|
63
|
-
const result = await props.validate(input);
|
|
64
|
-
if (result !== true) {
|
|
65
|
-
setErrorMessage(typeof result === "string" ? result : "You must provide a valid value");
|
|
66
|
-
setStatus("input");
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
// Validation passed
|
|
71
|
-
setStatus("success");
|
|
72
|
-
setTimeout(() => {
|
|
73
|
-
props.onSubmit(input);
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
catch (error) {
|
|
77
|
-
setErrorMessage(error instanceof Error ? error.message : "Validation error");
|
|
78
|
-
setStatus("input");
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
validateInput();
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
else if (key.backspace)
|
|
85
|
-
buffer.backspace();
|
|
86
|
-
else if (key.delete)
|
|
87
|
-
buffer.backspace();
|
|
88
|
-
else if (key.downArrow)
|
|
89
|
-
buffer.move("down");
|
|
90
|
-
else if (key.upArrow)
|
|
91
|
-
buffer.move("up");
|
|
92
|
-
else if (key.leftArrow)
|
|
93
|
-
buffer.move("left");
|
|
94
|
-
else if (key.rightArrow)
|
|
95
|
-
buffer.move("right");
|
|
96
|
-
else if (character === "a" && key.ctrl)
|
|
97
|
-
buffer.move("home");
|
|
98
|
-
else if (character === "e" && key.ctrl)
|
|
99
|
-
buffer.move("end");
|
|
100
|
-
else {
|
|
101
|
-
buffer.handleInput({ ...key, name: character, sequence: character, paste: false });
|
|
102
|
-
setErrorMessage(undefined);
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
const lines = [...buffer.lines];
|
|
106
|
-
if (status === "input") {
|
|
107
|
-
const [row, col] = buffer.cursor;
|
|
108
|
-
const currentLine = lines[row] || "";
|
|
109
|
-
lines[row] =
|
|
110
|
-
currentLine.slice(0, col) +
|
|
111
|
-
chalk.inverse(currentLine[col] || " ") +
|
|
112
|
-
currentLine.slice(col + 1);
|
|
113
|
-
}
|
|
114
|
-
const label = props.message && chalk.bold(props.message);
|
|
115
|
-
const inline = props.inline !== false;
|
|
116
|
-
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { flexDirection: inline ? "row" : "column", children: [_jsxs(Text, { children: [PREFIX[status], " ", !inline && label] }), _jsx(Box, { flexShrink: 1, flexGrow: 1, marginLeft: inline ? 0 : 2, marginRight: 1, children: _jsxs(Text, { children: [!!label && inline && `${label} `, lines.join("\n")] }) })] }), errorMessage && (_jsx(Box, { marginLeft: 2, children: _jsx(Text, { color: "red", children: errorMessage }) }))] }));
|
|
117
|
-
}
|
|
118
|
-
const PREFIX = {
|
|
119
|
-
input: chalk.blue("?"),
|
|
120
|
-
validating: chalk.yellow("⋯"),
|
|
121
|
-
success: chalk.green("✔"),
|
|
122
|
-
error: chalk.red("✘"),
|
|
123
|
-
};
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
export type Direction = "left" | "right" | "up" | "down" | "wordLeft" | "wordRight" | "home" | "end";
|
|
2
|
-
interface Viewport {
|
|
3
|
-
height: number;
|
|
4
|
-
width: number;
|
|
5
|
-
}
|
|
6
|
-
interface UseTextBufferProps {
|
|
7
|
-
initialText?: string;
|
|
8
|
-
initialCursorOffset?: number;
|
|
9
|
-
viewport: Viewport;
|
|
10
|
-
onChange?: (text: string) => void;
|
|
11
|
-
isValidPath: (path: string) => boolean;
|
|
12
|
-
shellModeActive?: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare function useTextBuffer({ initialText, initialCursorOffset, viewport, onChange, isValidPath, shellModeActive, }: UseTextBufferProps): TextBuffer;
|
|
15
|
-
export interface TextBuffer {
|
|
16
|
-
lines: string[];
|
|
17
|
-
text: string;
|
|
18
|
-
cursor: [number, number];
|
|
19
|
-
/**
|
|
20
|
-
* When the user moves the caret vertically we try to keep their original
|
|
21
|
-
* horizontal column even when passing through shorter lines. We remember
|
|
22
|
-
* that *preferred* column in this field while the user is still travelling
|
|
23
|
-
* vertically. Any explicit horizontal movement resets the preference.
|
|
24
|
-
*/
|
|
25
|
-
preferredCol: number | null;
|
|
26
|
-
selectionAnchor: [number, number] | null;
|
|
27
|
-
allVisualLines: string[];
|
|
28
|
-
viewportVisualLines: string[];
|
|
29
|
-
visualCursor: [number, number];
|
|
30
|
-
visualScrollRow: number;
|
|
31
|
-
/**
|
|
32
|
-
* For each visual line (by absolute index in allVisualLines) provides a tuple
|
|
33
|
-
* [logicalLineIndex, startColInLogical] that maps where that visual line
|
|
34
|
-
* begins within the logical buffer. Indices are code-point based.
|
|
35
|
-
*/
|
|
36
|
-
visualToLogicalMap: Array<[number, number]>;
|
|
37
|
-
/**
|
|
38
|
-
* Replaces the entire buffer content with the provided text.
|
|
39
|
-
* The operation is undoable.
|
|
40
|
-
*/
|
|
41
|
-
setText: (text: string) => void;
|
|
42
|
-
/**
|
|
43
|
-
* Insert a single character or string without newlines.
|
|
44
|
-
*/
|
|
45
|
-
insert: (ch: string, opts?: {
|
|
46
|
-
paste?: boolean;
|
|
47
|
-
}) => void;
|
|
48
|
-
newline: () => void;
|
|
49
|
-
backspace: () => void;
|
|
50
|
-
del: () => void;
|
|
51
|
-
move: (dir: Direction) => void;
|
|
52
|
-
undo: () => void;
|
|
53
|
-
redo: () => void;
|
|
54
|
-
/**
|
|
55
|
-
* Delete the word to the *left* of the caret, mirroring common
|
|
56
|
-
* Ctrl/Alt+Backspace behaviour in editors & terminals. Both the adjacent
|
|
57
|
-
* whitespace *and* the word characters immediately preceding the caret are
|
|
58
|
-
* removed. If the caret is already at column‑0 this becomes a no-op.
|
|
59
|
-
*/
|
|
60
|
-
deleteWordLeft: () => void;
|
|
61
|
-
/**
|
|
62
|
-
* Delete the word to the *right* of the caret, akin to many editors'
|
|
63
|
-
* Ctrl/Alt+Delete shortcut. Removes any whitespace/punctuation that
|
|
64
|
-
* follows the caret and the next contiguous run of word characters.
|
|
65
|
-
*/
|
|
66
|
-
deleteWordRight: () => void;
|
|
67
|
-
/**
|
|
68
|
-
* Deletes text from the cursor to the end of the current line.
|
|
69
|
-
*/
|
|
70
|
-
killLineRight: () => void;
|
|
71
|
-
/**
|
|
72
|
-
* Deletes text from the start of the current line to the cursor.
|
|
73
|
-
*/
|
|
74
|
-
killLineLeft: () => void;
|
|
75
|
-
/**
|
|
76
|
-
* High level "handleInput" – receives what Ink gives us.
|
|
77
|
-
*/
|
|
78
|
-
handleInput: (key: {
|
|
79
|
-
name: string;
|
|
80
|
-
ctrl: boolean;
|
|
81
|
-
meta: boolean;
|
|
82
|
-
shift: boolean;
|
|
83
|
-
paste: boolean;
|
|
84
|
-
sequence: string;
|
|
85
|
-
}) => void;
|
|
86
|
-
}
|
|
87
|
-
export {};
|