@tui-sandbox/library 10.2.3 → 10.4.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/CHANGELOG.md +14 -0
- package/dist/browser/assets/index-CO9qJUD3.js +9 -0
- package/dist/browser/index.html +1 -1
- package/dist/src/browser/neovim-client.d.ts +2 -2
- package/dist/src/browser/neovim-client.js.map +1 -1
- package/dist/src/client/color-utilities.d.ts +1 -2
- package/dist/src/client/color-utilities.test.js.map +1 -1
- package/dist/src/client/neovim-terminal-client.d.ts +1 -1
- package/dist/src/client/neovim-terminal-client.js.map +1 -1
- package/dist/src/client/terminal-terminal-client.d.ts +1 -1
- package/dist/src/client/websocket-client.js +1 -1
- package/dist/src/client/websocket-client.js.map +1 -1
- package/dist/src/scripts/tui.js +3 -3
- package/dist/src/scripts/tui.js.map +1 -1
- package/dist/src/server/{neovim → applications/neovim}/NeovimApplication.d.ts +3 -3
- package/dist/src/server/{neovim → applications/neovim}/NeovimApplication.js +2 -2
- package/dist/src/server/applications/neovim/NeovimApplication.js.map +1 -0
- package/dist/src/server/{neovim → applications/neovim}/NeovimJavascriptApiClient.d.ts +1 -1
- package/dist/src/server/{neovim → applications/neovim}/NeovimJavascriptApiClient.js +20 -2
- package/dist/src/server/applications/neovim/NeovimJavascriptApiClient.js.map +1 -0
- package/dist/src/server/{neovim → applications/neovim}/NeovimJavascriptApiClient.test.js +6 -1
- package/dist/src/server/applications/neovim/NeovimJavascriptApiClient.test.js.map +1 -0
- package/dist/src/server/{neovim/index.d.ts → applications/neovim/api.d.ts} +5 -5
- package/dist/src/server/{neovim/index.js → applications/neovim/api.js} +4 -4
- package/dist/src/server/applications/neovim/api.js.map +1 -0
- package/dist/src/server/{neovim → applications/neovim}/environment/createTempDir.d.ts +2 -2
- package/dist/src/server/{neovim → applications/neovim}/environment/createTempDir.js +2 -2
- package/dist/src/server/applications/neovim/environment/createTempDir.js.map +1 -0
- package/dist/src/server/applications/neovim/environment/createTempDir.test.js.map +1 -0
- package/dist/src/server/applications/neovim/neovimRouter.d.ts +134 -0
- package/dist/src/server/applications/neovim/neovimRouter.js +68 -0
- package/dist/src/server/applications/neovim/neovimRouter.js.map +1 -0
- package/dist/src/server/applications/neovim/prepareNewTestDirectory.d.ts +3 -0
- package/dist/src/server/applications/neovim/prepareNewTestDirectory.js.map +1 -0
- package/dist/src/server/applications/neovim/prepareNewTestDirectory.test.js.map +1 -0
- package/dist/src/server/{terminal → applications/terminal}/TerminalTestApplication.d.ts +2 -2
- package/dist/src/server/{terminal → applications/terminal}/TerminalTestApplication.js +2 -2
- package/dist/src/server/applications/terminal/TerminalTestApplication.js.map +1 -0
- package/dist/src/server/{terminal/index.d.ts → applications/terminal/api.d.ts} +4 -4
- package/dist/src/server/{terminal/index.js → applications/terminal/api.js} +3 -3
- package/dist/src/server/applications/terminal/api.js.map +1 -0
- package/dist/src/server/{terminal → applications/terminal}/runBlockingShellCommand.d.ts +2 -2
- package/dist/src/server/applications/terminal/runBlockingShellCommand.js.map +1 -0
- package/dist/src/server/applications/terminal/runBlockingShellCommand.test.js.map +1 -0
- package/dist/src/server/applications/terminal/terminalRouter.d.ts +62 -0
- package/dist/src/server/applications/terminal/terminalRouter.js +38 -0
- package/dist/src/server/applications/terminal/terminalRouter.js.map +1 -0
- package/dist/src/server/connection/trpc.d.ts +6 -28
- package/dist/src/server/index.d.ts +1 -0
- package/dist/src/server/index.js +1 -0
- package/dist/src/server/index.js.map +1 -1
- package/dist/src/server/server.d.ts +21 -37
- package/dist/src/server/server.js +4 -88
- package/dist/src/server/server.js.map +1 -1
- package/dist/src/server/types.d.ts +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -9
- package/src/browser/neovim-client.ts +6 -2
- package/src/client/color-utilities.test.ts +2 -1
- package/src/client/color-utilities.ts +1 -1
- package/src/client/neovim-terminal-client.ts +6 -1
- package/src/client/terminal-terminal-client.ts +1 -1
- package/src/client/websocket-client.ts +1 -1
- package/src/scripts/tui.ts +4 -4
- package/src/server/{neovim → applications/neovim}/NeovimApplication.ts +4 -4
- package/src/server/{neovim → applications/neovim}/NeovimJavascriptApiClient.test.ts +6 -1
- package/src/server/{neovim → applications/neovim}/NeovimJavascriptApiClient.ts +21 -2
- package/src/server/{neovim/index.ts → applications/neovim/api.ts} +9 -9
- package/src/server/{neovim → applications/neovim}/environment/createTempDir.ts +4 -4
- package/src/server/applications/neovim/neovimRouter.ts +90 -0
- package/src/server/{neovim → applications/neovim}/prepareNewTestDirectory.ts +2 -2
- package/src/server/{terminal → applications/terminal}/TerminalTestApplication.ts +3 -3
- package/src/server/{terminal/index.ts → applications/terminal/api.ts} +6 -6
- package/src/server/{terminal → applications/terminal}/runBlockingShellCommand.ts +2 -2
- package/src/server/applications/terminal/terminalRouter.ts +50 -0
- package/src/server/index.ts +1 -0
- package/src/server/server.ts +4 -119
- package/src/server/types.ts +1 -1
- package/dist/browser/assets/index-dlAbCuMv.js +0 -37
- package/dist/src/server/neovim/NeovimApplication.js.map +0 -1
- package/dist/src/server/neovim/NeovimJavascriptApiClient.js.map +0 -1
- package/dist/src/server/neovim/NeovimJavascriptApiClient.test.js.map +0 -1
- package/dist/src/server/neovim/environment/createTempDir.js.map +0 -1
- package/dist/src/server/neovim/environment/createTempDir.test.js.map +0 -1
- package/dist/src/server/neovim/index.js.map +0 -1
- package/dist/src/server/neovim/prepareNewTestDirectory.d.ts +0 -3
- package/dist/src/server/neovim/prepareNewTestDirectory.js.map +0 -1
- package/dist/src/server/neovim/prepareNewTestDirectory.test.js.map +0 -1
- package/dist/src/server/terminal/TerminalTestApplication.js.map +0 -1
- package/dist/src/server/terminal/index.js.map +0 -1
- package/dist/src/server/terminal/runBlockingShellCommand.js.map +0 -1
- package/dist/src/server/terminal/runBlockingShellCommand.test.js.map +0 -1
- /package/dist/src/server/{neovim → applications/neovim}/NeovimJavascriptApiClient.test.d.ts +0 -0
- /package/dist/src/server/{neovim → applications/neovim}/environment/createTempDir.test.d.ts +0 -0
- /package/dist/src/server/{neovim → applications/neovim}/environment/createTempDir.test.js +0 -0
- /package/dist/src/server/{neovim → applications/neovim}/prepareNewTestDirectory.js +0 -0
- /package/dist/src/server/{neovim → applications/neovim}/prepareNewTestDirectory.test.d.ts +0 -0
- /package/dist/src/server/{neovim → applications/neovim}/prepareNewTestDirectory.test.js +0 -0
- /package/dist/src/server/{terminal → applications/terminal}/runBlockingShellCommand.js +0 -0
- /package/dist/src/server/{terminal → applications/terminal}/runBlockingShellCommand.test.d.ts +0 -0
- /package/dist/src/server/{terminal → applications/terminal}/runBlockingShellCommand.test.js +0 -0
- /package/src/server/{neovim → applications/neovim}/environment/createTempDir.test.ts +0 -0
- /package/src/server/{neovim → applications/neovim}/prepareNewTestDirectory.test.ts +0 -0
- /package/src/server/{terminal → applications/terminal}/runBlockingShellCommand.test.ts +0 -0
package/dist/browser/index.html
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<title>tui-sandbox integration tests</title>
|
|
6
|
-
<script type="module" crossorigin src="/assets/index-
|
|
6
|
+
<script type="module" crossorigin src="/assets/index-CO9qJUD3.js"></script>
|
|
7
7
|
<link rel="stylesheet" crossorigin href="/assets/index-D6fBrqAi.css">
|
|
8
8
|
</head>
|
|
9
9
|
<body>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { ExCommandClientInput, LuaCodeClientInput, PollLuaCodeClientInput } from "../server/applications/neovim/neovimRouter.js";
|
|
2
|
+
import type { StartTerminalGenericArguments } from "../server/applications/terminal/TerminalTestApplication.js";
|
|
1
3
|
import type { BlockingCommandClientInput } from "../server/blockingCommandInputSchema.js";
|
|
2
|
-
import type { ExCommandClientInput, LuaCodeClientInput, PollLuaCodeClientInput } from "../server/server.js";
|
|
3
|
-
import type { StartTerminalGenericArguments } from "../server/terminal/TerminalTestApplication.js";
|
|
4
4
|
import type { BlockingShellCommandOutput, RunExCommandOutput, RunLuaCodeOutput, StartNeovimGenericArguments, TestDirectory } from "../server/types.js";
|
|
5
5
|
export type GenericNeovimBrowserApi = {
|
|
6
6
|
runBlockingShellCommand(input: BlockingCommandClientInput): Promise<BlockingShellCommandOutput>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neovim-client.js","sourceRoot":"","sources":["../../../src/browser/neovim-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;
|
|
1
|
+
{"version":3,"file":"neovim-client.js","sourceRoot":"","sources":["../../../src/browser/neovim-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAe9E,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAElD,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAc,MAAM,CAAC,CAAA;AACvD,IAAI,CAAC,GAAG,EAAE,CAAC;IACT,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;AACzC,CAAC;AAED,qEAAqE;AACrE,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;AAClE,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAA;AAUtE,+CAA+C;AAC/C,MAAM,CAAC,WAAW,GAAG,KAAK,WAAW,SAAuC;IAC1E,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,CAAA;IACjC,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;QAC7C,8BAA8B,EAAE,SAAS,EAAE,8BAA8B;QACzE,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,kBAAkB;QACnD,0BAA0B,EAAE,SAAS,EAAE,0BAA0B,IAAI,EAAE;KACxE,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAA4B;QAChD,uBAAuB,CAAC,KAAiC;YACvD,OAAO,MAAM,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC;QACD,UAAU,CAAC,KAAK;YACd,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACjC,CAAC;QACD,cAAc,CAAC,KAAK;YAClB,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;QACD,GAAG,EAAE,aAAa;KACnB,CAAA;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC,CAAA;AAcD,+CAA+C;AAC/C,MAAM,CAAC,wBAAwB,GAAG,KAAK,WACrC,IAAmC;IAEnC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,EAAE,CAAA;IACrC,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAA;IAEnE,MAAM,kBAAkB,GAA8B;QACpD,GAAG,EAAE,aAAa;QAClB,uBAAuB,CAAC,KAAK;YAC3B,OAAO,QAAQ,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAChD,CAAC;KACF,CAAA;IACD,OAAO,kBAAkB,CAAA;AAC3B,CAAC,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { flavors } from "@catppuccin/palette";
|
|
2
|
-
type RgbColor = (typeof flavors.macchiato.colors)["surface0"]["rgb"];
|
|
2
|
+
export type RgbColor = (typeof flavors.macchiato.colors)["surface0"]["rgb"];
|
|
3
3
|
/** Convert a catppuccin RGB color to a CSS color string. This way you can
|
|
4
4
|
* assert that text that's visible on the screen has a specific color. */
|
|
5
5
|
export declare function rgbify(color: RgbColor): string;
|
|
6
|
-
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-utilities.test.js","sourceRoot":"","sources":["../../../src/client/color-utilities.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"color-utilities.test.js","sourceRoot":"","sources":["../../../src/client/color-utilities.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAE7C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAqB,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "@xterm/xterm/css/xterm.css";
|
|
2
|
+
import type { ExCommandClientInput, LuaCodeClientInput, PollLuaCodeClientInput } from "../server/applications/neovim/neovimRouter.js";
|
|
2
3
|
import type { BlockingCommandClientInput } from "../server/blockingCommandInputSchema.js";
|
|
3
|
-
import type { ExCommandClientInput, LuaCodeClientInput, PollLuaCodeClientInput } from "../server/server.js";
|
|
4
4
|
import type { BlockingShellCommandOutput, RunExCommandOutput, RunLuaCodeOutput, StartNeovimGenericArguments, TestDirectory } from "../server/types.js";
|
|
5
5
|
import "./style.css";
|
|
6
6
|
/** Manages the terminal state in the browser as well as the (browser's)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neovim-terminal-client.js","sourceRoot":"","sources":["../../../src/client/neovim-terminal-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE/F,OAAO,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"neovim-terminal-client.js","sourceRoot":"","sources":["../../../src/client/neovim-terminal-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE/F,OAAO,4BAA4B,CAAA;AAenC,OAAO,aAAa,CAAA;AACpB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE/D;6DAC6D;AAC7D,MAAM,OAAO,oBAAoB;IACd,KAAK,CAAe;IACpB,KAAK,CAAmB;IACxB,QAAQ,CAAU;IAClB,IAAI,CAAgD;IAErE,YAAY,GAAgB;QAC1B,MAAM,IAAI,GAAG,gBAAgB,CAAY;YACvC,KAAK,EAAE;gBACL,SAAS,CAAC;oBACR,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,cAAc;oBACzD,IAAI,EAAE,oBAAoB,CAAC;wBACzB,GAAG,EAAE,OAAO;qBACb,CAAC;oBACF,KAAK,EAAE,aAAa,CAAC;wBACnB,GAAG,EAAE,OAAO;qBACb,CAAC;iBACH,CAAC;aACH;SACF,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAEhB,IAAI,CAAC,KAAK,GAAG,QAAQ,EAAE,CAAA;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAE;YAClC,YAAY,CAAC,IAAY;gBACvB,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;oBAC1E,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;gBACnD,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,UAAU,CAAC,KAAK;gBACd,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;YAC/D,CAAC;SACF,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QAExB,2EAA2E;QAC3E,mBAAmB;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;YACvC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;YACpC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CACpC,EAAE,MAAM,EAAE,KAAK,EAAE,EACjB;gBACE,SAAS;oBACP,OAAO,EAAE,CAAA;gBACX,CAAC;gBACD,MAAM,CAAC,IAAY;oBACjB,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACtB,CAAC;gBACD,OAAO,CAAC,GAAY;oBAClB,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAA;gBAClD,CAAC;aACF,CACF,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAiC;QACxD,MAAM,IAAI,CAAC,KAAK,CAAA;QAEhB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YACxD,oBAAoB,EAAE;gBACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,8BAA8B,EAAE,IAAI,CAAC,8BAA8B;gBACnE,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;gBAC3D,kBAAkB,EAAE;oBAClB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;oBACxB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;iBACzB;aACF;YACD,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAA;QAEF,OAAO,aAAa,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,KAAiC;QACpE,MAAM,IAAI,CAAC,KAAK,CAAA;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IACzF,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,KAAyB;QAC/C,MAAM,IAAI,CAAC,KAAK,CAAA;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IAC5E,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,KAA6B;QACvD,MAAM,IAAI,CAAC,KAAK,CAAA;QAChB,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QACtF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,CAAA;QACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,KAA2B;QACnD,MAAM,IAAI,CAAC,KAAK,CAAA;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IAC9E,CAAC;CACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "@xterm/xterm/css/xterm.css";
|
|
2
|
+
import type { StartTerminalGenericArguments } from "../server/applications/terminal/TerminalTestApplication.js";
|
|
2
3
|
import type { BlockingCommandClientInput } from "../server/blockingCommandInputSchema.js";
|
|
3
|
-
import type { StartTerminalGenericArguments } from "../server/terminal/TerminalTestApplication.js";
|
|
4
4
|
import type { BlockingShellCommandOutput, TestDirectory } from "../server/types.js";
|
|
5
5
|
import "./style.css";
|
|
6
6
|
/** Manages the terminal state in the browser as well as the (browser's)
|
|
@@ -2,7 +2,7 @@ import { flavors } from "@catppuccin/palette";
|
|
|
2
2
|
import { FitAddon } from "@xterm/addon-fit";
|
|
3
3
|
import { Terminal } from "@xterm/xterm";
|
|
4
4
|
import "@xterm/xterm/css/xterm.css";
|
|
5
|
-
import z from "zod";
|
|
5
|
+
import { z } from "zod";
|
|
6
6
|
import "./style.css";
|
|
7
7
|
import { validateMouseEvent } from "./validateMouseEvent.js";
|
|
8
8
|
export function startTerminal(app, options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../../../src/client/websocket-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,4BAA4B,CAAA;AACnC,OAAO,CAAC,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../../../src/client/websocket-client.ts"],"names":[],"mappings":"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"}
|
package/dist/src/scripts/tui.js
CHANGED
|
@@ -52,11 +52,11 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
|
|
|
52
52
|
});
|
|
53
53
|
import assert from "node:assert";
|
|
54
54
|
import path from "node:path";
|
|
55
|
+
import { installDependencies } from "../server/applications/neovim/api.js";
|
|
56
|
+
import { NeovimApplication } from "../server/applications/neovim/NeovimApplication.js";
|
|
57
|
+
import { prepareNewTestDirectory } from "../server/applications/neovim/prepareNewTestDirectory.js";
|
|
55
58
|
import { createCypressSupportFile } from "../server/cypress-support/createCypressSupportFile.js";
|
|
56
59
|
import { startTestServer, updateTestdirectorySchemaFile } from "../server/index.js";
|
|
57
|
-
import { installDependencies } from "../server/neovim/index.js";
|
|
58
|
-
import { NeovimApplication } from "../server/neovim/NeovimApplication.js";
|
|
59
|
-
import { prepareNewTestDirectory } from "../server/neovim/prepareNewTestDirectory.js";
|
|
60
60
|
//
|
|
61
61
|
// This is the main entrypoint to tui-sandbox
|
|
62
62
|
//
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/scripts/tui.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/scripts/tui.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import EventEmitter from "events";
|
|
2
2
|
import type { NeovimClient as NeovimApiClient } from "neovim";
|
|
3
|
-
import type { TestDirectory } from "
|
|
4
|
-
import { DisposableSingleApplication } from "
|
|
5
|
-
import type { Lazy } from "
|
|
3
|
+
import type { TestDirectory } from "../../types.js";
|
|
4
|
+
import { DisposableSingleApplication } from "../../utilities/DisposableSingleApplication.js";
|
|
5
|
+
import type { Lazy } from "../../utilities/Lazy.js";
|
|
6
6
|
export type StdoutOrStderrMessage = "stdout";
|
|
7
7
|
export type StartNeovimGenericArguments = {
|
|
8
8
|
filename: string | {
|
|
@@ -4,8 +4,8 @@ import EventEmitter from "events";
|
|
|
4
4
|
import { access } from "fs/promises";
|
|
5
5
|
import { tmpdir } from "os";
|
|
6
6
|
import path, { join } from "path";
|
|
7
|
-
import { DisposableSingleApplication } from "
|
|
8
|
-
import { TerminalApplication } from "
|
|
7
|
+
import { DisposableSingleApplication } from "../../utilities/DisposableSingleApplication.js";
|
|
8
|
+
import { TerminalApplication } from "../../utilities/TerminalApplication.js";
|
|
9
9
|
import { connectNeovimApi } from "./NeovimJavascriptApiClient.js";
|
|
10
10
|
export class NeovimApplication {
|
|
11
11
|
testEnvironmentPath;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NeovimApplication.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/NeovimApplication.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NeovimClient as NeovimApiClient } from "neovim";
|
|
2
|
-
import { Lazy } from "
|
|
2
|
+
import { Lazy } from "../../utilities/Lazy.js";
|
|
3
3
|
export type NeovimJavascriptApiClient = NeovimApiClient;
|
|
4
4
|
export type PollingInterval = 100;
|
|
5
5
|
export declare function connectNeovimApi(socketPath: string): Lazy<Promise<NeovimJavascriptApiClient>>;
|
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
import { access } from "fs/promises";
|
|
2
2
|
import { attach } from "neovim";
|
|
3
|
-
import {
|
|
3
|
+
import { createLogger, format, transports } from "winston";
|
|
4
|
+
import { Lazy } from "../../utilities/Lazy.js";
|
|
4
5
|
export function connectNeovimApi(socketPath) {
|
|
6
|
+
// When a custom logger is provided to attach(), we can hide debug level log
|
|
7
|
+
// messages
|
|
8
|
+
//
|
|
9
|
+
// https://github.com/neovim/node-client/blob/e0568e32e0fc8837ad900146bfd5ca27b9416235/README.md#logging
|
|
10
|
+
const logger = createLogger({
|
|
11
|
+
level: "warn",
|
|
12
|
+
transports: [
|
|
13
|
+
new transports.Console({
|
|
14
|
+
format: format.combine(format.colorize(), format.simple()),
|
|
15
|
+
}),
|
|
16
|
+
],
|
|
17
|
+
});
|
|
5
18
|
// it takes about 100ms for the socket file to be created - best make this
|
|
6
19
|
// Lazy so that we don't wait for it unnecessarily.
|
|
7
20
|
return new Lazy(async () => {
|
|
@@ -20,7 +33,12 @@ export function connectNeovimApi(socketPath) {
|
|
|
20
33
|
// a separate process entirely, so there doesn't seem to be any benefit to
|
|
21
34
|
// this.
|
|
22
35
|
process.env["ALLOW_CONSOLE"] = "1";
|
|
23
|
-
return attach({
|
|
36
|
+
return attach({
|
|
37
|
+
socket: socketPath,
|
|
38
|
+
options: {
|
|
39
|
+
logger,
|
|
40
|
+
},
|
|
41
|
+
});
|
|
24
42
|
});
|
|
25
43
|
}
|
|
26
44
|
//# sourceMappingURL=NeovimJavascriptApiClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NeovimJavascriptApiClient.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/NeovimJavascriptApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AAM9C,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,4EAA4E;IAC5E,WAAW;IACX,EAAE;IACF,wGAAwG;IACxG,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,KAAK,EAAE,MAAM;QACb,UAAU,EAAE;YACV,IAAI,UAAU,CAAC,OAAO,CAAC;gBACrB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;aAC3D,CAAC;SACH;KACF,CAAC,CAAA;IAEF,0EAA0E;IAC1E,mDAAmD;IACnD,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAA;gBACxB,6EAA6E;gBAC7E,MAAK;YACP,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,wFAAwF;gBACxF,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAA6B,CAAC,CAAC,CAAA;YAClF,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,0EAA0E;QAC1E,QAAQ;QACR,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,GAAG,CAAA;QAElC,OAAO,MAAM,CAAC;YACZ,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE;gBACP,MAAM;aACP;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -28,7 +28,12 @@ it("connects right away if the socket file is already there", async () => {
|
|
|
28
28
|
const lazyClient = connectNeovimApi("foosocket");
|
|
29
29
|
await lazyClient.get();
|
|
30
30
|
vi.advanceTimersByTime(pollingInterval);
|
|
31
|
-
expect(mocked.attach).toHaveBeenCalledWith({
|
|
31
|
+
expect(mocked.attach).toHaveBeenCalledWith({
|
|
32
|
+
socket: "foosocket",
|
|
33
|
+
options: {
|
|
34
|
+
logger: expect.any(Object),
|
|
35
|
+
},
|
|
36
|
+
});
|
|
32
37
|
expect(mocked.attach).toHaveBeenCalledTimes(1);
|
|
33
38
|
});
|
|
34
39
|
//# sourceMappingURL=NeovimJavascriptApiClient.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NeovimJavascriptApiClient.test.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/NeovimJavascriptApiClient.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEjE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjB,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AAEtB,MAAM,MAAM,GAAG;IACb,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;QACpD,EAAE;IACJ,CAAC,CAAC;CACH,CAAA;AACD,MAAM,eAAe,GAAG,GAA6B,CAAA;AAErD,UAAU,CAAC,GAAG,EAAE;IACd,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,SAAS,CAAC,GAAG,EAAE;IACb,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;IACvE,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAE7B,EAAE,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;AAC9C,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACvE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAC1C,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAChD,MAAM,UAAU,CAAC,GAAG,EAAE,CAAA;IAEtB,EAAE,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;QACzC,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAU;SACpC;KAC8C,CAAC,CAAA;IAClD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;AAChD,CAAC,CAAC,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import "core-js/proposals/async-explicit-resource-management.js";
|
|
2
|
-
import type { BlockingCommandInput } from "
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
6
|
-
import type { TabId } from "../utilities/tabId.js";
|
|
2
|
+
import type { BlockingCommandInput } from "../../blockingCommandInputSchema.js";
|
|
3
|
+
import type { BlockingShellCommandOutput, RunExCommandOutput, RunLuaCodeOutput, StartNeovimGenericArguments, TestDirectory } from "../../types.js";
|
|
4
|
+
import type { DirectoriesConfig } from "../../updateTestdirectorySchemaFile.js";
|
|
5
|
+
import type { TabId } from "../../utilities/tabId.js";
|
|
7
6
|
import type { TerminalDimensions } from "./NeovimApplication.js";
|
|
7
|
+
import type { ExCommandInput, LuaCodeInput } from "./neovimRouter.js";
|
|
8
8
|
export declare function installDependencies(testEnvironmentPath: string, config: DirectoriesConfig): Promise<void>;
|
|
9
9
|
export declare function initializeStdout(options: {
|
|
10
10
|
client: TabId;
|
|
@@ -54,10 +54,10 @@ import assert from "assert";
|
|
|
54
54
|
import "core-js/proposals/async-explicit-resource-management.js";
|
|
55
55
|
import { access } from "fs/promises";
|
|
56
56
|
import path from "path";
|
|
57
|
+
import { convertEventEmitterToAsyncGenerator } from "../../utilities/generator.js";
|
|
58
|
+
import { Lazy } from "../../utilities/Lazy.js";
|
|
59
|
+
import { timeout } from "../../utilities/timeout.js";
|
|
57
60
|
import { executeBlockingShellCommand } from "../terminal/runBlockingShellCommand.js";
|
|
58
|
-
import { convertEventEmitterToAsyncGenerator } from "../utilities/generator.js";
|
|
59
|
-
import { Lazy } from "../utilities/Lazy.js";
|
|
60
|
-
import { timeout } from "../utilities/timeout.js";
|
|
61
61
|
import { NeovimApplication } from "./NeovimApplication.js";
|
|
62
62
|
import { prepareNewTestDirectory } from "./prepareNewTestDirectory.js";
|
|
63
63
|
const neovims = new Map();
|
|
@@ -210,4 +210,4 @@ export async function runExCommand(options) {
|
|
|
210
210
|
throw new Error(`Error running Ex command: ${options.command}`, { cause: e });
|
|
211
211
|
}
|
|
212
212
|
}
|
|
213
|
-
//# sourceMappingURL=
|
|
213
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { TestDirectory } from "
|
|
2
|
-
import type { DirectoriesConfig } from "
|
|
1
|
+
import type { TestDirectory } from "../../../types.js";
|
|
2
|
+
import type { DirectoriesConfig } from "../../../updateTestdirectorySchemaFile.js";
|
|
3
3
|
export declare function createTempDir(config: DirectoriesConfig): Promise<TestDirectory>;
|
|
4
4
|
export type TestDirsPath = "testdirs";
|
|
5
5
|
export declare function removeTestDirectories(testEnvironmentPath: string): Promise<void>;
|
|
@@ -4,8 +4,8 @@ import { Type } from "dree";
|
|
|
4
4
|
import { constants, readdirSync, statSync } from "fs";
|
|
5
5
|
import { access, mkdir, mkdtemp } from "fs/promises";
|
|
6
6
|
import path from "path";
|
|
7
|
-
import { convertDree, getDirectoryTree } from "
|
|
8
|
-
import { updateTestdirectorySchemaFile } from "
|
|
7
|
+
import { convertDree, getDirectoryTree } from "../../../dirtree/index.js";
|
|
8
|
+
import { updateTestdirectorySchemaFile } from "../../../updateTestdirectorySchemaFile.js";
|
|
9
9
|
export async function createTempDir(config) {
|
|
10
10
|
try {
|
|
11
11
|
// before calling this function, the testEnvironmentPath should already exist
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createTempDir.js","sourceRoot":"","sources":["../../../../../../src/server/applications/neovim/environment/createTempDir.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAGzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAA;AAEzF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAyB;IAC3D,IAAI,CAAC;QACH,6EAA6E;QAC7E,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;QACpC,MAAM,GAAG,GAAG,MAAM,qBAAqB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;QAEnE,WAAW,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtD,IAAI,KAAK,KAAM,UAAkC;gBAAE,OAAM;YACzD,IAAI,KAAK,KAAK,QAAQ;gBAAE,OAAM;YAE9B,QAAQ,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAA;QAC7E,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAA;QAE/C,MAAM,IAAI,GAAG,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,CAAA;QAEpC,MAAM,6BAA6B,CAAC,MAAM,CAAC,CAAA;QAC3C,OAAO;YACL,gBAAgB,EAAE,GAAG;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,2BAA2B,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,mBAAmB,EAAE,GAAG,CAAC;SAC5E,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC;AAID,KAAK,UAAU,qBAAqB,CAAC,mBAA2B;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,UAAiC,CAAC,CAAA;IAClF,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAA;IACvB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IACtD,MAAM,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAA;IAE/B,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,mBAA2B;IACrE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,UAAiC,CAAC,CAAA;QAClF,MAAM,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QACtC,QAAQ,CAAC,UAAU,QAAQ,IAAI,CAAC,CAAA;IAClC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,+DAA+D,EAAE,CAAC,CAAC,CAAA;IACnF,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createTempDir.test.js","sourceRoot":"","sources":["../../../../../../src/server/applications/neovim/environment/createTempDir.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,QAAQ,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;AAIpD,MAAM,aAAa;IACW;IAA5B,YAA4B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAErC,MAAM,CAAC,MAAM;QAClB,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,gBAA4C,CAAC,CAAA;QACxE,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1C,OAAO,IAAI,aAAa,CAAC,YAAY,CAAC,CAAA;IACxC,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAA;IAC7D,CAAC;CACF;AAED,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;;;QACzD,iFAAiF;QACjF,MAAM,GAAG,kCAAG,aAAa,CAAC,MAAM,EAAE,QAAA,CAAA;QAClC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;YACjC,mBAAmB,EAAE,GAAG,CAAC,IAAI;YAC7B,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,oBAAoB,CAAC;SAC9D,CAAC,CAAA;QAEF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACnC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,gBAA4C,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACtG,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC,QAAQ,CAAC,UAAiC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;;;;;;;;;CACpG,CAAC,CAAA"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import "core-js/proposals/async-explicit-resource-management.js";
|
|
2
|
+
import type { Except } from "type-fest";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import type { DirectoriesConfig } from "../../updateTestdirectorySchemaFile.js";
|
|
5
|
+
declare const luaCodeInputSchema: z.ZodObject<{
|
|
6
|
+
tabId: z.ZodObject<{
|
|
7
|
+
tabId: z.ZodString;
|
|
8
|
+
}, {}, {}>;
|
|
9
|
+
luaCode: z.ZodString;
|
|
10
|
+
}, {}, {}>;
|
|
11
|
+
export type LuaCodeClientInput = Except<LuaCodeInput, "tabId">;
|
|
12
|
+
export type LuaCodeInput = z.infer<typeof luaCodeInputSchema>;
|
|
13
|
+
declare const pollLuaCodeInputSchema: z.ZodObject<{
|
|
14
|
+
tabId: z.ZodObject<{
|
|
15
|
+
tabId: z.ZodString;
|
|
16
|
+
}, {}, {}>;
|
|
17
|
+
luaAssertion: z.ZodString;
|
|
18
|
+
timeoutMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
19
|
+
}, {}, {}>;
|
|
20
|
+
export type PollLuaCodeClientInput = Except<z.input<typeof pollLuaCodeInputSchema>, "tabId">;
|
|
21
|
+
declare const exCommandInputSchema: z.ZodObject<{
|
|
22
|
+
tabId: z.ZodObject<{
|
|
23
|
+
tabId: z.ZodString;
|
|
24
|
+
}, {}, {}>;
|
|
25
|
+
command: z.ZodString;
|
|
26
|
+
log: z.ZodOptional<z.ZodBoolean>;
|
|
27
|
+
}, {}, {}>;
|
|
28
|
+
export type ExCommandClientInput = Except<ExCommandInput, "tabId">;
|
|
29
|
+
export type ExCommandInput = z.infer<typeof exCommandInputSchema>;
|
|
30
|
+
export declare function createNeovimRouter(config: DirectoriesConfig): import("@trpc/server").TRPCBuiltRouter<{
|
|
31
|
+
ctx: object;
|
|
32
|
+
meta: object;
|
|
33
|
+
errorShape: import("@trpc/server").TRPCDefaultErrorShape;
|
|
34
|
+
transformer: false;
|
|
35
|
+
}, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
|
|
36
|
+
start: import("@trpc/server").TRPCMutationProcedure<{
|
|
37
|
+
input: {
|
|
38
|
+
tabId: {
|
|
39
|
+
tabId: string;
|
|
40
|
+
};
|
|
41
|
+
startNeovimArguments: {
|
|
42
|
+
filename: string | {
|
|
43
|
+
openInVerticalSplits: string[];
|
|
44
|
+
};
|
|
45
|
+
terminalDimensions: {
|
|
46
|
+
cols: number;
|
|
47
|
+
rows: number;
|
|
48
|
+
};
|
|
49
|
+
startupScriptModifications?: string[] | undefined;
|
|
50
|
+
additionalEnvironmentVariables?: Record<string, string> | undefined;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
output: import("../../types.js").TestDirectory;
|
|
54
|
+
meta: object;
|
|
55
|
+
}>;
|
|
56
|
+
onStdout: import("@trpc/server").TRPCSubscriptionProcedure<{
|
|
57
|
+
input: {
|
|
58
|
+
client: {
|
|
59
|
+
tabId: string;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
output: AsyncIterable<string, void, unknown>;
|
|
63
|
+
meta: object;
|
|
64
|
+
}>;
|
|
65
|
+
initializeStdout: import("@trpc/server").TRPCSubscriptionProcedure<{
|
|
66
|
+
input: {
|
|
67
|
+
client: {
|
|
68
|
+
tabId: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
output: AsyncIterable<string, void, unknown>;
|
|
72
|
+
meta: object;
|
|
73
|
+
}>;
|
|
74
|
+
sendStdin: import("@trpc/server").TRPCMutationProcedure<{
|
|
75
|
+
input: {
|
|
76
|
+
tabId: {
|
|
77
|
+
tabId: string;
|
|
78
|
+
};
|
|
79
|
+
data: string;
|
|
80
|
+
};
|
|
81
|
+
output: void;
|
|
82
|
+
meta: object;
|
|
83
|
+
}>;
|
|
84
|
+
runBlockingShellCommand: import("@trpc/server").TRPCMutationProcedure<{
|
|
85
|
+
input: {
|
|
86
|
+
command: string;
|
|
87
|
+
tabId: {
|
|
88
|
+
tabId: string;
|
|
89
|
+
};
|
|
90
|
+
shell?: string | undefined;
|
|
91
|
+
allowFailure?: boolean | undefined;
|
|
92
|
+
cwd?: string | undefined;
|
|
93
|
+
cwdRelative?: string | undefined;
|
|
94
|
+
envOverrides?: Record<string, string> | undefined;
|
|
95
|
+
uid?: number | undefined;
|
|
96
|
+
gid?: number | undefined;
|
|
97
|
+
};
|
|
98
|
+
output: import("../../types.js").BlockingShellCommandOutput;
|
|
99
|
+
meta: object;
|
|
100
|
+
}>;
|
|
101
|
+
runLuaCode: import("@trpc/server").TRPCMutationProcedure<{
|
|
102
|
+
input: {
|
|
103
|
+
tabId: {
|
|
104
|
+
tabId: string;
|
|
105
|
+
};
|
|
106
|
+
luaCode: string;
|
|
107
|
+
};
|
|
108
|
+
output: import("../../types.js").RunLuaCodeOutput;
|
|
109
|
+
meta: object;
|
|
110
|
+
}>;
|
|
111
|
+
waitForLuaCode: import("@trpc/server").TRPCMutationProcedure<{
|
|
112
|
+
input: {
|
|
113
|
+
tabId: {
|
|
114
|
+
tabId: string;
|
|
115
|
+
};
|
|
116
|
+
luaAssertion: string;
|
|
117
|
+
timeoutMs?: number | undefined;
|
|
118
|
+
};
|
|
119
|
+
output: import("../../types.js").RunLuaCodeOutput;
|
|
120
|
+
meta: object;
|
|
121
|
+
}>;
|
|
122
|
+
runExCommand: import("@trpc/server").TRPCMutationProcedure<{
|
|
123
|
+
input: {
|
|
124
|
+
tabId: {
|
|
125
|
+
tabId: string;
|
|
126
|
+
};
|
|
127
|
+
command: string;
|
|
128
|
+
log?: boolean | undefined;
|
|
129
|
+
};
|
|
130
|
+
output: import("../../types.js").RunExCommandOutput;
|
|
131
|
+
meta: object;
|
|
132
|
+
}>;
|
|
133
|
+
}>>;
|
|
134
|
+
export {};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import "core-js/proposals/async-explicit-resource-management.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { blockingCommandInputSchema } from "../../blockingCommandInputSchema.js";
|
|
4
|
+
import { trpc } from "../../connection/trpc.js";
|
|
5
|
+
import { tabIdSchema } from "../../utilities/tabId.js";
|
|
6
|
+
import { timeoutable } from "../../utilities/timeoutable.js";
|
|
7
|
+
import * as neovim from "./api.js";
|
|
8
|
+
const luaCodeInputSchema = z.object({ tabId: tabIdSchema, luaCode: z.string() });
|
|
9
|
+
const pollLuaCodeInputSchema = z.object({
|
|
10
|
+
tabId: tabIdSchema,
|
|
11
|
+
luaAssertion: z.string(),
|
|
12
|
+
timeoutMs: z.number().optional().default(10_000),
|
|
13
|
+
});
|
|
14
|
+
const exCommandInputSchema = z.object({
|
|
15
|
+
tabId: tabIdSchema,
|
|
16
|
+
command: z.string(),
|
|
17
|
+
log: z.boolean().optional(),
|
|
18
|
+
});
|
|
19
|
+
// let trpc infer the type as that is what it is designed to do
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
21
|
+
export function createNeovimRouter(config) {
|
|
22
|
+
return trpc.router({
|
|
23
|
+
start: trpc.procedure
|
|
24
|
+
.input(z.object({
|
|
25
|
+
tabId: tabIdSchema,
|
|
26
|
+
startNeovimArguments: z.object({
|
|
27
|
+
filename: z.union([
|
|
28
|
+
z.string(),
|
|
29
|
+
z.object({
|
|
30
|
+
openInVerticalSplits: z.array(z.string()),
|
|
31
|
+
}),
|
|
32
|
+
]),
|
|
33
|
+
startupScriptModifications: z.array(z.string()).optional(),
|
|
34
|
+
terminalDimensions: z.object({
|
|
35
|
+
cols: z.number(),
|
|
36
|
+
rows: z.number(),
|
|
37
|
+
}),
|
|
38
|
+
additionalEnvironmentVariables: z.record(z.string(), z.string()).optional(),
|
|
39
|
+
}),
|
|
40
|
+
}))
|
|
41
|
+
.mutation(options => {
|
|
42
|
+
return neovim.start(options.input.startNeovimArguments, options.input.startNeovimArguments.terminalDimensions, options.input.tabId, config);
|
|
43
|
+
}),
|
|
44
|
+
onStdout: trpc.procedure.input(z.object({ client: tabIdSchema })).subscription(options => {
|
|
45
|
+
return neovim.initializeStdout(options.input, options.signal, config.testEnvironmentPath);
|
|
46
|
+
}),
|
|
47
|
+
initializeStdout: trpc.procedure.input(z.object({ client: tabIdSchema })).subscription(options => {
|
|
48
|
+
return neovim.initializeStdout(options.input, options.signal, config.testEnvironmentPath);
|
|
49
|
+
}),
|
|
50
|
+
sendStdin: trpc.procedure.input(z.object({ tabId: tabIdSchema, data: z.string() })).mutation(options => {
|
|
51
|
+
return neovim.sendStdin(options.input);
|
|
52
|
+
}),
|
|
53
|
+
runBlockingShellCommand: trpc.procedure.input(blockingCommandInputSchema).mutation(async (options) => {
|
|
54
|
+
return neovim.runBlockingShellCommand(options.signal, options.input, options.input.allowFailure ?? false);
|
|
55
|
+
}),
|
|
56
|
+
runLuaCode: trpc.procedure.input(luaCodeInputSchema).mutation(options => {
|
|
57
|
+
return timeoutable(10_000, neovim.runLuaCode(options.input));
|
|
58
|
+
}),
|
|
59
|
+
waitForLuaCode: trpc.procedure.input(pollLuaCodeInputSchema).mutation(async (options) => {
|
|
60
|
+
const result = await timeoutable(options.input.timeoutMs, neovim.waitForLuaCode(options.input, options.signal));
|
|
61
|
+
return result;
|
|
62
|
+
}),
|
|
63
|
+
runExCommand: trpc.procedure.input(exCommandInputSchema).mutation(options => {
|
|
64
|
+
return timeoutable(10_000, neovim.runExCommand(options.input));
|
|
65
|
+
}),
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=neovimRouter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"neovimRouter.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/neovimRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareNewTestDirectory.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/prepareNewTestDirectory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAG3C,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAErF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,MAAyB;IACrE,IAAI,CAAC;QACH,6CAA6C;QAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,6CAA6C,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAA;QACtF,MAAM,KAAK,CAAC,MAAM,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9D,CAAC;IAED,MAAM,qBAAqB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;IACvD,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAA;IACjD,OAAO,aAAa,CAAA;AACtB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareNewTestDirectory.test.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/prepareNewTestDirectory.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAEtE,QAAQ,CAAC,qEAAqE,EAAE,GAAG,EAAE;IACnF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,wEAAwE;QACxE,2BAA2B;QAC3B,MAAM,mBAAmB,GAAG,WAAW,CAAA;QACvC,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC;YAClD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;YACxD,mBAAmB;SACpB,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC1C,MAAM,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAChE,CAAC;gBAAS,CAAC;YACT,sCAAsC;YACtC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;YAC/C,MAAM,EAAE,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACpD,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import EventEmitter from "events";
|
|
2
|
+
import type { TestDirectory } from "../../types.js";
|
|
3
|
+
import { DisposableSingleApplication } from "../../utilities/DisposableSingleApplication.js";
|
|
2
4
|
import type { TerminalDimensions } from "../neovim/NeovimApplication.js";
|
|
3
|
-
import type { TestDirectory } from "../types.js";
|
|
4
|
-
import { DisposableSingleApplication } from "../utilities/DisposableSingleApplication.js";
|
|
5
5
|
type ResettableState = {
|
|
6
6
|
testDirectory: TestDirectory;
|
|
7
7
|
};
|
|
@@ -2,8 +2,8 @@ import assert from "assert";
|
|
|
2
2
|
import { exec } from "child_process";
|
|
3
3
|
import EventEmitter from "events";
|
|
4
4
|
import { join } from "path";
|
|
5
|
-
import { DisposableSingleApplication } from "
|
|
6
|
-
import { TerminalApplication } from "
|
|
5
|
+
import { DisposableSingleApplication } from "../../utilities/DisposableSingleApplication.js";
|
|
6
|
+
import { TerminalApplication } from "../../utilities/TerminalApplication.js";
|
|
7
7
|
export default class TerminalTestApplication {
|
|
8
8
|
testEnvironmentPath;
|
|
9
9
|
application;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TerminalTestApplication.js","sourceRoot":"","sources":["../../../../../src/server/applications/terminal/TerminalTestApplication.ts"],"names":[],"mappings":"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"}
|