@tui-sandbox/library 11.3.3 → 11.4.1
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/src/browser/neovim-client.js +1 -1
- package/dist/src/browser/neovim-client.js.map +1 -1
- package/dist/src/client/MyNeovimConfigModification.test.js +1 -0
- package/dist/src/client/MyNeovimConfigModification.test.js.map +1 -1
- package/dist/src/client/color-utilities.test.js +1 -0
- package/dist/src/client/color-utilities.test.js.map +1 -1
- package/dist/src/client/cypress-assertions.d.ts +14 -0
- package/dist/src/client/cypress-assertions.js +32 -0
- package/dist/src/client/cypress-assertions.js.map +1 -0
- package/dist/src/client/index.d.ts +1 -2
- package/dist/src/client/index.js +1 -2
- package/dist/src/client/index.js.map +1 -1
- package/dist/src/client/terminal-terminal-client.d.ts +0 -1
- package/dist/src/client/terminal-terminal-client.js +0 -1
- package/dist/src/client/terminal-terminal-client.js.map +1 -1
- package/dist/src/scripts/commands/commandTuiNeovimExec.d.ts +2 -0
- package/dist/src/scripts/commands/commandTuiNeovimExec.js +82 -0
- package/dist/src/scripts/commands/commandTuiNeovimExec.js.map +1 -0
- package/dist/src/scripts/commands/commandTuiNeovimPrepare.d.ts +1 -0
- package/dist/src/scripts/commands/commandTuiNeovimPrepare.js +12 -0
- package/dist/src/scripts/commands/commandTuiNeovimPrepare.js.map +1 -0
- package/dist/src/scripts/commands/commandTuiStart.d.ts +1 -0
- package/dist/src/scripts/commands/commandTuiStart.js +30 -0
- package/dist/src/scripts/commands/commandTuiStart.js.map +1 -0
- package/dist/src/scripts/parseArguments.d.ts +7 -4
- package/dist/src/scripts/parseArguments.js +1 -1
- package/dist/src/scripts/parseArguments.js.map +1 -1
- package/dist/src/scripts/parseArguments.test.js +1 -0
- package/dist/src/scripts/parseArguments.test.js.map +1 -1
- package/dist/src/scripts/tui.d.ts +10 -1
- package/dist/src/scripts/tui.js +10 -113
- package/dist/src/scripts/tui.js.map +1 -1
- package/dist/src/server/applications/neovim/NeovimJavascriptApiClient.test.js +1 -0
- package/dist/src/server/applications/neovim/NeovimJavascriptApiClient.test.js.map +1 -1
- package/dist/src/server/applications/neovim/environment/createTempDir.test.js +1 -1
- package/dist/src/server/applications/neovim/environment/createTempDir.test.js.map +1 -1
- package/dist/src/server/applications/neovim/prepareNewTestDirectory.test.js +1 -0
- package/dist/src/server/applications/neovim/prepareNewTestDirectory.test.js.map +1 -1
- package/dist/src/server/applications/terminal/runBlockingShellCommand.test.js +1 -0
- package/dist/src/server/applications/terminal/runBlockingShellCommand.test.js.map +1 -1
- package/dist/src/server/blockingCommandInputSchema.test.js +1 -0
- package/dist/src/server/blockingCommandInputSchema.test.js.map +1 -1
- package/dist/src/server/cypress-support/createCypressSupportFile.test.js +1 -0
- package/dist/src/server/cypress-support/createCypressSupportFile.test.js.map +1 -1
- package/dist/src/server/updateTestdirectorySchemaFile.test.js +1 -0
- package/dist/src/server/updateTestdirectorySchemaFile.test.js.map +1 -1
- package/dist/src/server/utilities/DisposableSingleApplication.test.js +1 -0
- package/dist/src/server/utilities/DisposableSingleApplication.test.js.map +1 -1
- package/dist/src/server/utilities/generator.test.js +1 -0
- package/dist/src/server/utilities/generator.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
- package/src/browser/neovim-client.ts +1 -1
- package/src/client/MyNeovimConfigModification.test.ts +1 -0
- package/src/client/color-utilities.test.ts +1 -0
- package/src/client/cypress-assertions.ts +37 -0
- package/src/client/index.ts +1 -2
- package/src/client/terminal-terminal-client.ts +0 -1
- package/src/scripts/commands/commandTuiNeovimExec.ts +23 -0
- package/src/scripts/commands/commandTuiNeovimPrepare.ts +16 -0
- package/src/scripts/commands/commandTuiStart.ts +29 -0
- package/src/scripts/parseArguments.test.ts +1 -0
- package/src/scripts/parseArguments.ts +15 -8
- package/src/scripts/tui.ts +9 -56
- package/src/server/applications/neovim/NeovimJavascriptApiClient.test.ts +1 -0
- package/src/server/applications/neovim/environment/createTempDir.test.ts +1 -1
- package/src/server/applications/neovim/prepareNewTestDirectory.test.ts +1 -0
- package/src/server/applications/terminal/runBlockingShellCommand.test.ts +1 -0
- package/src/server/blockingCommandInputSchema.test.ts +1 -0
- package/src/server/cypress-support/createCypressSupportFile.test.ts +1 -0
- package/src/server/updateTestdirectorySchemaFile.test.ts +1 -0
- package/src/server/utilities/DisposableSingleApplication.test.ts +1 -0
- package/src/server/utilities/generator.test.ts +1 -0
- package/tsconfig.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [11.4.1](https://github.com/mikavilpas/tui-sandbox/compare/library-v11.4.0...library-v11.4.1) (2025-08-03)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* not being able to import from `@tui-sandbox/library/src/client` ([#550](https://github.com/mikavilpas/tui-sandbox/issues/550)) ([cbb3648](https://github.com/mikavilpas/tui-sandbox/commit/cbb3648592c951cc85bee6d37fd22de774f4334b))
|
|
9
|
+
|
|
10
|
+
## [11.4.0](https://github.com/mikavilpas/tui-sandbox/compare/library-v11.3.3...library-v11.4.0) (2025-08-03)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* add cypress assertions for checking for text in a color ([#548](https://github.com/mikavilpas/tui-sandbox/issues/548)) ([1450931](https://github.com/mikavilpas/tui-sandbox/commit/1450931b4c4e0f4f53b3f8d126110df4ddc62c3f))
|
|
16
|
+
|
|
3
17
|
## [11.3.3](https://github.com/mikavilpas/tui-sandbox/compare/library-v11.3.2...library-v11.3.3) (2025-08-02)
|
|
4
18
|
|
|
5
19
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NeovimTerminalClient } from "../client/neovim-terminal-client.js";
|
|
2
2
|
import { TerminalTerminalClient } from "../client/terminal-terminal-client.js";
|
|
3
3
|
import { Lazy } from "../server/utilities/Lazy.js";
|
|
4
4
|
const app = document.querySelector("#app");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neovim-client.js","sourceRoot":"","sources":["../../../src/browser/neovim-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"neovim-client.js","sourceRoot":"","sources":["../../../src/browser/neovim-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAE1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAiB9E,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;AAWtE,+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;QACvE,WAAW,EAAE,SAAS;QACtB,YAAY,EAAE,SAAS,EAAE,YAAY;KACS,CAAC,CAAA;IAEjD,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,MAAM,CAAC,KAAK;YACV,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B,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;AA6BD,+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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MyNeovimConfigModification.test.js","sourceRoot":"","sources":["../../../src/client/MyNeovimConfigModification.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC;IAChC,4DAA4D;IAC5D,qEAAqE;IACrE,wFAAwF;IACxF,qDAAqD;IACrD,6BAA6B;IAC7B,sBAAsB;CACvB,CAAC,CAAA;AAKF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAClD,UAAU,CAMR,CAAsB,CAAC,CAAA;AAC3B,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"MyNeovimConfigModification.test.js","sourceRoot":"","sources":["../../../src/client/MyNeovimConfigModification.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC;IAChC,4DAA4D;IAC5D,qEAAqE;IACrE,wFAAwF;IACxF,qDAAqD;IACrD,6BAA6B;IAC7B,sBAAsB;CACvB,CAAC,CAAA;AAKF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAClD,UAAU,CAMR,CAAsB,CAAC,CAAA;AAC3B,CAAC,CAAC,CAAA"}
|
|
@@ -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":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Problem: cypress provides the `contains` method, but it only checks the
|
|
2
|
+
* first match on the page.
|
|
3
|
+
*
|
|
4
|
+
* Solution: we need to check all elements on the page and filter them
|
|
5
|
+
* by the text we are looking for. Then we can check if the background
|
|
6
|
+
* color of the element is the same as the one we are looking for.
|
|
7
|
+
*
|
|
8
|
+
* Limitation: text spanning multiple lines will not be detected.
|
|
9
|
+
*/
|
|
10
|
+
export declare function textIsVisibleWithColor(text: string, color: string): Cypress.Chainable<JQuery>;
|
|
11
|
+
/** Like `textIsVisibleWithColor`, but checks the background color instead
|
|
12
|
+
* of the text color.
|
|
13
|
+
*/
|
|
14
|
+
export declare function textIsVisibleWithBackgroundColor(text: string, color: string): Cypress.Chainable<JQuery>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/// <reference types="cypress" />
|
|
2
|
+
/** Problem: cypress provides the `contains` method, but it only checks the
|
|
3
|
+
* first match on the page.
|
|
4
|
+
*
|
|
5
|
+
* Solution: we need to check all elements on the page and filter them
|
|
6
|
+
* by the text we are looking for. Then we can check if the background
|
|
7
|
+
* color of the element is the same as the one we are looking for.
|
|
8
|
+
*
|
|
9
|
+
* Limitation: text spanning multiple lines will not be detected.
|
|
10
|
+
*/
|
|
11
|
+
export function textIsVisibleWithColor(text, color) {
|
|
12
|
+
return cy.get("div.xterm-rows span").and($spans => {
|
|
13
|
+
const matching = $spans.filter((_, el) => !!el.textContent.includes(text));
|
|
14
|
+
const colors = matching.map((_, el) => {
|
|
15
|
+
return window.getComputedStyle(el).color;
|
|
16
|
+
});
|
|
17
|
+
expect(JSON.stringify(colors.toArray())).to.contain(color);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
/** Like `textIsVisibleWithColor`, but checks the background color instead
|
|
21
|
+
* of the text color.
|
|
22
|
+
*/
|
|
23
|
+
export function textIsVisibleWithBackgroundColor(text, color) {
|
|
24
|
+
return cy.get("div.xterm-rows span").and($spans => {
|
|
25
|
+
const matching = $spans.filter((_, el) => !!el.textContent.includes(text));
|
|
26
|
+
const colors = matching.map((_, el) => {
|
|
27
|
+
return window.getComputedStyle(el).backgroundColor;
|
|
28
|
+
});
|
|
29
|
+
expect(JSON.stringify(colors.toArray())).to.contain(color);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=cypress-assertions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cypress-assertions.js","sourceRoot":"","sources":["../../../src/client/cypress-assertions.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,KAAa;IAChE,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,KAAK,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAAC,IAAY,EAAE,KAAa;IAC1E,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,eAAe,CAAA;QACpD,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
export { rgbify } from "./color-utilities.js";
|
|
2
|
-
export {
|
|
3
|
-
export { TerminalTerminalClient } from "./terminal-terminal-client.js";
|
|
2
|
+
export { textIsVisibleWithBackgroundColor, textIsVisibleWithColor } from "./cypress-assertions.js";
|
package/dist/src/client/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// This is the public client api. Semantic versioning will be applied to this.
|
|
2
2
|
export { rgbify } from "./color-utilities.js";
|
|
3
|
-
export {
|
|
4
|
-
export { TerminalTerminalClient } from "./terminal-terminal-client.js";
|
|
3
|
+
export { textIsVisibleWithBackgroundColor, textIsVisibleWithColor } from "./cypress-assertions.js";
|
|
5
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA"}
|
|
@@ -3,7 +3,6 @@ import type { StartTerminalBrowserArguments } from "../browser/neovim-client.js"
|
|
|
3
3
|
import type { BlockingCommandClientInput } from "../server/blockingCommandInputSchema.js";
|
|
4
4
|
import type { BlockingShellCommandOutput, TestDirectory } from "../server/types.js";
|
|
5
5
|
import type { TuiTerminalApi } from "./startTerminal.js";
|
|
6
|
-
import "./style.css";
|
|
7
6
|
/** Manages the terminal state in the browser as well as the (browser's)
|
|
8
7
|
* connection to the server side terminal application api. */
|
|
9
8
|
export declare class TerminalTerminalClient {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { createTRPCClient, httpBatchLink, httpSubscriptionLink, splitLink } from "@trpc/client";
|
|
2
2
|
import "@xterm/xterm/css/xterm.css";
|
|
3
3
|
import { getTabId, startTerminal } from "./startTerminal.js";
|
|
4
|
-
import "./style.css";
|
|
5
4
|
import { supportDA1 } from "./terminal-config.js";
|
|
6
5
|
/** Manages the terminal state in the browser as well as the (browser's)
|
|
7
6
|
* connection to the server side terminal application api. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-terminal-client.js","sourceRoot":"","sources":["../../../src/client/terminal-terminal-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE/F,OAAO,4BAA4B,CAAA;AAMnC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"terminal-terminal-client.js","sourceRoot":"","sources":["../../../src/client/terminal-terminal-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
|
|
2
|
+
if (value !== null && value !== void 0) {
|
|
3
|
+
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
|
|
4
|
+
var dispose, inner;
|
|
5
|
+
if (async) {
|
|
6
|
+
if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
|
|
7
|
+
dispose = value[Symbol.asyncDispose];
|
|
8
|
+
}
|
|
9
|
+
if (dispose === void 0) {
|
|
10
|
+
if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
|
|
11
|
+
dispose = value[Symbol.dispose];
|
|
12
|
+
if (async) inner = dispose;
|
|
13
|
+
}
|
|
14
|
+
if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
|
|
15
|
+
if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
|
|
16
|
+
env.stack.push({ value: value, dispose: dispose, async: async });
|
|
17
|
+
}
|
|
18
|
+
else if (async) {
|
|
19
|
+
env.stack.push({ async: true });
|
|
20
|
+
}
|
|
21
|
+
return value;
|
|
22
|
+
};
|
|
23
|
+
var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
|
|
24
|
+
return function (env) {
|
|
25
|
+
function fail(e) {
|
|
26
|
+
env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
|
|
27
|
+
env.hasError = true;
|
|
28
|
+
}
|
|
29
|
+
var r, s = 0;
|
|
30
|
+
function next() {
|
|
31
|
+
while (r = env.stack.pop()) {
|
|
32
|
+
try {
|
|
33
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
34
|
+
if (r.dispose) {
|
|
35
|
+
var result = r.dispose.call(r.value);
|
|
36
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
|
|
37
|
+
}
|
|
38
|
+
else s |= 1;
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
fail(e);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
45
|
+
if (env.hasError) throw env.error;
|
|
46
|
+
}
|
|
47
|
+
return next();
|
|
48
|
+
};
|
|
49
|
+
})(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
50
|
+
var e = new Error(message);
|
|
51
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
52
|
+
});
|
|
53
|
+
import { NeovimApplication } from "../../server/applications/neovim/NeovimApplication.js";
|
|
54
|
+
import { prepareNewTestDirectory } from "../../server/applications/neovim/prepareNewTestDirectory.js";
|
|
55
|
+
import { config } from "../tui.js";
|
|
56
|
+
export async function commandTuiNeovimExec(command) {
|
|
57
|
+
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
58
|
+
try {
|
|
59
|
+
// automatically dispose of the neovim instance when done
|
|
60
|
+
const app = __addDisposableResource(env_1, new NeovimApplication(config.directories.testEnvironmentPath), true);
|
|
61
|
+
app.events.on("stdout", data => {
|
|
62
|
+
console.log(` neovim output: ${data}`);
|
|
63
|
+
});
|
|
64
|
+
const testDirectory = await prepareNewTestDirectory(config.directories);
|
|
65
|
+
await app.startNextAndKillCurrent(testDirectory, {
|
|
66
|
+
filename: "empty.txt",
|
|
67
|
+
headlessCmd: command.command,
|
|
68
|
+
NVIM_APPNAME: process.env["NVIM_APPNAME"],
|
|
69
|
+
}, { cols: 80, rows: 24 });
|
|
70
|
+
await app.application.untilExit();
|
|
71
|
+
}
|
|
72
|
+
catch (e_1) {
|
|
73
|
+
env_1.error = e_1;
|
|
74
|
+
env_1.hasError = true;
|
|
75
|
+
}
|
|
76
|
+
finally {
|
|
77
|
+
const result_1 = __disposeResources(env_1);
|
|
78
|
+
if (result_1)
|
|
79
|
+
await result_1;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=commandTuiNeovimExec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commandTuiNeovimExec.js","sourceRoot":"","sources":["../../../../src/scripts/commands/commandTuiNeovimExec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAA8B,MAAM,uDAAuD,CAAA;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6DAA6D,CAAA;AAErG,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAmB;;;QAC5D,yDAAyD;QACzD,MAAY,GAAG,kCAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAA,CAAA;QAC/E,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAwC,EAAE,IAAI,CAAC,EAAE;YAC7D,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QACF,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACvE,MAAM,GAAG,CAAC,uBAAuB,CAC/B,aAAa,EACb;YACE,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,OAAO,CAAC,OAAO;YAC5B,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;SAC1C,EACD,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CACvB,CAAA;QACD,MAAM,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,CAAA;;;;;;;;;;;CAClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function commandTuiNeovimPrepare(): Promise<void>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { installDependencies } from "../../server/applications/neovim/api.js";
|
|
2
|
+
import { config } from "../tui.js";
|
|
3
|
+
export async function commandTuiNeovimPrepare() {
|
|
4
|
+
const NVIM_APPNAME = process.env["NVIM_APPNAME"];
|
|
5
|
+
console.log(`🚀 Installing neovim dependencies${NVIM_APPNAME ? ` for NVIM_APPNAME=${NVIM_APPNAME}` : ""}...`);
|
|
6
|
+
await installDependencies(config.directories.testEnvironmentPath, process.env["NVIM_APPNAME"], config.directories).catch((err) => {
|
|
7
|
+
console.error("Error installing neovim dependencies", err);
|
|
8
|
+
process.exit(1);
|
|
9
|
+
});
|
|
10
|
+
process.exit(0);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=commandTuiNeovimPrepare.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commandTuiNeovimPrepare.js","sourceRoot":"","sources":["../../../../src/scripts/commands/commandTuiNeovimPrepare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,oCAAoC,YAAY,CAAC,CAAC,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAC7G,MAAM,mBAAmB,CACvB,MAAM,CAAC,WAAW,CAAC,mBAAmB,EACtC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAC3B,MAAM,CAAC,WAAW,CACnB,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACvB,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function commandTuiStart(): Promise<void>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
import { createCypressSupportFile } from "../../server/cypress-support/createCypressSupportFile.js";
|
|
3
|
+
import { startTestServer } from "../../server/server.js";
|
|
4
|
+
import { updateTestdirectorySchemaFile } from "../../server/updateTestdirectorySchemaFile.js";
|
|
5
|
+
import { config, cwd } from "../tui.js";
|
|
6
|
+
export async function commandTuiStart() {
|
|
7
|
+
try {
|
|
8
|
+
await createCypressSupportFile({
|
|
9
|
+
cypressSupportDirectoryPath: path.join(cwd, "cypress", "support"),
|
|
10
|
+
supportFileName: "tui-sandbox.ts",
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
catch (e) {
|
|
14
|
+
console.error("Failed to createCypressSupportFile", e);
|
|
15
|
+
}
|
|
16
|
+
try {
|
|
17
|
+
await updateTestdirectorySchemaFile(config.directories);
|
|
18
|
+
}
|
|
19
|
+
catch (e) {
|
|
20
|
+
console.error("Failed to updateTestdirectorySchemaFile", e);
|
|
21
|
+
}
|
|
22
|
+
try {
|
|
23
|
+
console.log(`🚀 Starting test server in ${cwd} - this should be the root of your integration-tests directory 🤞🏻`);
|
|
24
|
+
await startTestServer(config);
|
|
25
|
+
}
|
|
26
|
+
catch (e) {
|
|
27
|
+
console.error("Failed to startTestServer", e);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=commandTuiStart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commandTuiStart.js","sourceRoot":"","sources":["../../../../src/scripts/commands/commandTuiStart.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAA;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAA;AAC7F,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAEvC,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,IAAI,CAAC;QACH,MAAM,wBAAwB,CAAC;YAC7B,2BAA2B,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC;YACjE,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,6BAA6B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,qEAAqE,CAAC,CAAA;QACnH,MAAM,eAAe,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
export declare const parseArguments: (args: string[]) => Promise<ParseArgumentsResult | undefined>;
|
|
2
|
-
export type ParseArgumentsResult =
|
|
3
|
-
|
|
4
|
-
} | {
|
|
2
|
+
export type ParseArgumentsResult = NeovimPrepare | NeovimExec | TuiStart;
|
|
3
|
+
export type NeovimExec = {
|
|
5
4
|
action: "neovim exec";
|
|
6
5
|
command: string;
|
|
7
|
-
}
|
|
6
|
+
};
|
|
7
|
+
export type NeovimPrepare = {
|
|
8
|
+
action: "neovim prepare";
|
|
9
|
+
};
|
|
10
|
+
export type TuiStart = {
|
|
8
11
|
action: "start";
|
|
9
12
|
};
|
|
@@ -12,7 +12,7 @@ export const parseArguments = async (args) => {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
{
|
|
15
|
-
// tui neovim exec <command>
|
|
15
|
+
// tui neovim exec <command> <args>
|
|
16
16
|
const schema = z.tuple([z.literal("neovim"), z.literal("exec"), z.string()]);
|
|
17
17
|
const execArguments = schema.safeParse(args);
|
|
18
18
|
if (execArguments.success) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseArguments.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAc,EAA6C,EAAE;IAChG,CAAC;QACC,qBAAqB;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO;gBACL,MAAM,EAAE,gBAAgB;aACzB,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,
|
|
1
|
+
{"version":3,"file":"parseArguments.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAc,EAA6C,EAAE;IAChG,CAAC;QACC,qBAAqB;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO;gBACL,MAAM,EAAE,gBAAgB;aACzB,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,mCAAmC;QACnC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC5E,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAA;YACtD,OAAO;gBACL,MAAM,EAAE,aAAa;gBACrB,OAAO;aACR,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,YAAY;QACZ,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;gBACL,MAAM,EAAE,OAAO;aAChB,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseArguments.test.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACzF,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAC5E,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5G,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;QAChE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;IAChF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;IACjC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAChE,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"parseArguments.test.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACzF,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAC5E,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5G,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;QAChE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;IAChF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;IACjC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAChE,CAAC,CAAC,CAAA"}
|
|
@@ -1 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
/** The cwd in the user's directory when they are running this script. Not the
|
|
2
|
+
* cwd of the script itself. */
|
|
3
|
+
export declare const cwd: string;
|
|
4
|
+
export declare const config: {
|
|
5
|
+
directories: {
|
|
6
|
+
testEnvironmentPath: string;
|
|
7
|
+
outputFilePath: string;
|
|
8
|
+
};
|
|
9
|
+
port: number;
|
|
10
|
+
};
|
package/dist/src/scripts/tui.js
CHANGED
|
@@ -1,61 +1,7 @@
|
|
|
1
|
-
var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
|
|
2
|
-
if (value !== null && value !== void 0) {
|
|
3
|
-
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
|
|
4
|
-
var dispose, inner;
|
|
5
|
-
if (async) {
|
|
6
|
-
if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
|
|
7
|
-
dispose = value[Symbol.asyncDispose];
|
|
8
|
-
}
|
|
9
|
-
if (dispose === void 0) {
|
|
10
|
-
if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
|
|
11
|
-
dispose = value[Symbol.dispose];
|
|
12
|
-
if (async) inner = dispose;
|
|
13
|
-
}
|
|
14
|
-
if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
|
|
15
|
-
if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
|
|
16
|
-
env.stack.push({ value: value, dispose: dispose, async: async });
|
|
17
|
-
}
|
|
18
|
-
else if (async) {
|
|
19
|
-
env.stack.push({ async: true });
|
|
20
|
-
}
|
|
21
|
-
return value;
|
|
22
|
-
};
|
|
23
|
-
var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
|
|
24
|
-
return function (env) {
|
|
25
|
-
function fail(e) {
|
|
26
|
-
env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
|
|
27
|
-
env.hasError = true;
|
|
28
|
-
}
|
|
29
|
-
var r, s = 0;
|
|
30
|
-
function next() {
|
|
31
|
-
while (r = env.stack.pop()) {
|
|
32
|
-
try {
|
|
33
|
-
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
34
|
-
if (r.dispose) {
|
|
35
|
-
var result = r.dispose.call(r.value);
|
|
36
|
-
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
|
|
37
|
-
}
|
|
38
|
-
else s |= 1;
|
|
39
|
-
}
|
|
40
|
-
catch (e) {
|
|
41
|
-
fail(e);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
45
|
-
if (env.hasError) throw env.error;
|
|
46
|
-
}
|
|
47
|
-
return next();
|
|
48
|
-
};
|
|
49
|
-
})(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
50
|
-
var e = new Error(message);
|
|
51
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
52
|
-
});
|
|
53
1
|
import path from "node:path";
|
|
54
|
-
import {
|
|
55
|
-
import {
|
|
56
|
-
import {
|
|
57
|
-
import { createCypressSupportFile } from "../server/cypress-support/createCypressSupportFile.js";
|
|
58
|
-
import { startTestServer, updateTestdirectorySchemaFile } from "../server/index.js";
|
|
2
|
+
import { commandTuiNeovimExec } from "./commands/commandTuiNeovimExec.js";
|
|
3
|
+
import { commandTuiNeovimPrepare } from "./commands/commandTuiNeovimPrepare.js";
|
|
4
|
+
import { commandTuiStart } from "./commands/commandTuiStart.js";
|
|
59
5
|
import { parseArguments } from "./parseArguments.js";
|
|
60
6
|
//
|
|
61
7
|
// This is the main entrypoint to tui-sandbox
|
|
@@ -63,8 +9,8 @@ import { parseArguments } from "./parseArguments.js";
|
|
|
63
9
|
const outputFileName = "MyTestDirectory.ts";
|
|
64
10
|
/** The cwd in the user's directory when they are running this script. Not the
|
|
65
11
|
* cwd of the script itself. */
|
|
66
|
-
const cwd = process.cwd();
|
|
67
|
-
const config = {
|
|
12
|
+
export const cwd = process.cwd();
|
|
13
|
+
export const config = {
|
|
68
14
|
directories: {
|
|
69
15
|
testEnvironmentPath: path.join(cwd, "test-environment/"),
|
|
70
16
|
outputFilePath: path.join(cwd, outputFileName),
|
|
@@ -76,64 +22,15 @@ const args = process.argv.slice(2);
|
|
|
76
22
|
const command = await parseArguments(args);
|
|
77
23
|
switch (command?.action) {
|
|
78
24
|
case "neovim prepare": {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
await installDependencies(config.directories.testEnvironmentPath, process.env["NVIM_APPNAME"], config.directories).catch((err) => {
|
|
82
|
-
console.error("Error installing neovim dependencies", err);
|
|
83
|
-
process.exit(1);
|
|
84
|
-
});
|
|
85
|
-
process.exit(0);
|
|
25
|
+
await commandTuiNeovimPrepare();
|
|
26
|
+
break;
|
|
86
27
|
}
|
|
87
28
|
case "neovim exec": {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
// automatically dispose of the neovim instance when done
|
|
91
|
-
const app = __addDisposableResource(env_1, new NeovimApplication(config.directories.testEnvironmentPath), true);
|
|
92
|
-
app.events.on("stdout", data => {
|
|
93
|
-
console.log(` neovim output: ${data}`);
|
|
94
|
-
});
|
|
95
|
-
const testDirectory = await prepareNewTestDirectory(config.directories);
|
|
96
|
-
await app.startNextAndKillCurrent(testDirectory, {
|
|
97
|
-
filename: "empty.txt",
|
|
98
|
-
headlessCmd: command.command,
|
|
99
|
-
NVIM_APPNAME: process.env["NVIM_APPNAME"],
|
|
100
|
-
}, { cols: 80, rows: 24 });
|
|
101
|
-
await app.application.untilExit();
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
catch (e_1) {
|
|
105
|
-
env_1.error = e_1;
|
|
106
|
-
env_1.hasError = true;
|
|
107
|
-
}
|
|
108
|
-
finally {
|
|
109
|
-
const result_1 = __disposeResources(env_1);
|
|
110
|
-
if (result_1)
|
|
111
|
-
await result_1;
|
|
112
|
-
}
|
|
29
|
+
await commandTuiNeovimExec(command);
|
|
30
|
+
break;
|
|
113
31
|
}
|
|
114
32
|
case "start": {
|
|
115
|
-
|
|
116
|
-
await createCypressSupportFile({
|
|
117
|
-
cypressSupportDirectoryPath: path.join(cwd, "cypress", "support"),
|
|
118
|
-
supportFileName: "tui-sandbox.ts",
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
catch (e) {
|
|
122
|
-
console.error("Failed to createCypressSupportFile", e);
|
|
123
|
-
}
|
|
124
|
-
try {
|
|
125
|
-
await updateTestdirectorySchemaFile(config.directories);
|
|
126
|
-
}
|
|
127
|
-
catch (e) {
|
|
128
|
-
console.error("Failed to updateTestdirectorySchemaFile", e);
|
|
129
|
-
}
|
|
130
|
-
try {
|
|
131
|
-
console.log(`🚀 Starting test server in ${cwd} - this should be the root of your integration-tests directory 🤞🏻`);
|
|
132
|
-
await startTestServer(config);
|
|
133
|
-
}
|
|
134
|
-
catch (e) {
|
|
135
|
-
console.error("Failed to startTestServer", e);
|
|
136
|
-
}
|
|
33
|
+
await commandTuiStart();
|
|
137
34
|
break;
|
|
138
35
|
}
|
|
139
36
|
default: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/scripts/tui.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/scripts/tui.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,EAAE;AACF,6CAA6C;AAC7C,EAAE;AAEF,MAAM,cAAc,GAAG,oBAAoB,CAAA;AAE3C;+BAC+B;AAC/B,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;AAChC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE;QACX,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;QACxD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC;KAC/C;IACD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;CACtC,CAAA;AAE5B,uDAAuD;AACvD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAElC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;AAE1C,QAAQ,OAAO,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,gBAAgB,CAAC,CAAC,CAAC;QACtB,MAAM,uBAAuB,EAAE,CAAA;QAC/B,MAAK;IACP,CAAC;IACD,KAAK,aAAa,CAAC,CAAC,CAAC;QACnB,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAA;QACnC,MAAK;IACP,CAAC;IACD,KAAK,OAAO,CAAC,CAAC,CAAC;QACb,MAAM,eAAe,EAAE,CAAA;QACvB,MAAK;IACP,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;QACR,OAA2B,CAAA;QAC3B,gBAAgB,EAAE,CAAA;IACpB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,CAAC,GAAG,CACT;QACE,EAAE;QACF,mBAAmB;QACnB,eAAe;QACf,oCAAoC;QACpC,wBAAwB;KACzB,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAA;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC"}
|
|
@@ -1 +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;
|
|
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;AAC/B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE9D,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"}
|
|
@@ -52,7 +52,7 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
|
|
|
52
52
|
});
|
|
53
53
|
import fs from "fs";
|
|
54
54
|
import nodePath from "path";
|
|
55
|
-
import { expect, it } from "vitest";
|
|
55
|
+
import { expect, it, vi } from "vitest";
|
|
56
56
|
import { createTempDir } from "./createTempDir.js";
|
|
57
57
|
vi.spyOn(console, "log").mockImplementation(vi.fn());
|
|
58
58
|
class TempDirectory {
|
|
@@ -1 +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;
|
|
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,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEvC,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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { rm } from "fs/promises";
|
|
2
2
|
import path from "path";
|
|
3
|
+
import { assert, describe, expect, it } from "vitest";
|
|
3
4
|
import { prepareNewTestDirectory } from "./prepareNewTestDirectory.js";
|
|
4
5
|
describe("prepareNewTestDirectory when the testEnvironmentPath does not exist", () => {
|
|
5
6
|
it("should be able to create a new test directory", async () => {
|
|
@@ -1 +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
|
+
{"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,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACrD,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"}
|