@alwaysmeticulous/cli 2.305.0 → 2.307.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/dist/commands/agent/index.js +8 -8
- package/dist/commands/agent/index.js.map +1 -1
- package/dist/commands/agent/js-coverage.command.d.ts +5 -0
- package/dist/commands/agent/js-coverage.command.d.ts.map +1 -1
- package/dist/commands/agent/js-coverage.command.js +120 -24
- package/dist/commands/agent/js-coverage.command.js.map +1 -1
- package/dist/commands/agent/js-coverage.command.spec.js +48 -2
- package/dist/commands/agent/js-coverage.command.spec.js.map +1 -1
- package/dist/commands/agent/screenshot-dom-diff.command.d.ts.map +1 -1
- package/dist/commands/agent/screenshot-dom-diff.command.js +3 -3
- package/dist/commands/agent/screenshot-dom-diff.command.js.map +1 -1
- package/dist/commands/agent/screenshot-image-files.command.d.ts.map +1 -1
- package/dist/commands/agent/screenshot-image-files.command.js +3 -3
- package/dist/commands/agent/screenshot-image-files.command.js.map +1 -1
- package/dist/commands/agent/screenshot-image.command.d.ts.map +1 -1
- package/dist/commands/agent/screenshot-image.command.js +3 -3
- package/dist/commands/agent/screenshot-image.command.js.map +1 -1
- package/dist/commands/agent/test-run-diffs.command.d.ts +1 -1
- package/dist/commands/agent/test-run-diffs.command.d.ts.map +1 -1
- package/dist/commands/agent/test-run-diffs.command.js +39 -31
- package/dist/commands/agent/test-run-diffs.command.js.map +1 -1
- package/dist/commands/agent/test-run-diffs.command.spec.d.ts +2 -0
- package/dist/commands/agent/test-run-diffs.command.spec.d.ts.map +1 -0
- package/dist/commands/agent/test-run-diffs.command.spec.js +148 -0
- package/dist/commands/agent/test-run-diffs.command.spec.js.map +1 -0
- package/dist/commands/agent/test-run-diffs.utils.d.ts +14 -26
- package/dist/commands/agent/test-run-diffs.utils.d.ts.map +1 -1
- package/dist/commands/agent/test-run-diffs.utils.js +23 -35
- package/dist/commands/agent/test-run-diffs.utils.js.map +1 -1
- package/dist/commands/agent/test-run-diffs.utils.spec.js +15 -58
- package/dist/commands/agent/test-run-diffs.utils.spec.js.map +1 -1
- package/dist/commands/agent/test-run-for-commit.command.d.ts +1 -0
- package/dist/commands/agent/test-run-for-commit.command.d.ts.map +1 -1
- package/dist/commands/agent/test-run-for-commit.command.js +11 -12
- package/dist/commands/agent/test-run-for-commit.command.js.map +1 -1
- package/dist/commands/agent/trigger-test-run.command.d.ts +1 -0
- package/dist/commands/agent/trigger-test-run.command.d.ts.map +1 -1
- package/dist/commands/agent/trigger-test-run.command.js +8 -6
- package/dist/commands/agent/trigger-test-run.command.js.map +1 -1
- package/dist/commands/agent/upload-build.command.js +3 -3
- package/dist/commands/agent/upload-build.command.js.map +1 -1
- package/dist/commands/auth/__tests__/get-project.command.spec.d.ts +2 -0
- package/dist/commands/auth/__tests__/get-project.command.spec.d.ts.map +1 -0
- package/dist/commands/auth/__tests__/get-project.command.spec.js +72 -0
- package/dist/commands/auth/__tests__/get-project.command.spec.js.map +1 -0
- package/dist/commands/auth/__tests__/login.command.spec.js +13 -29
- package/dist/commands/auth/__tests__/login.command.spec.js.map +1 -1
- package/dist/commands/auth/__tests__/logout.command.spec.js +3 -6
- package/dist/commands/auth/__tests__/logout.command.spec.js.map +1 -1
- package/dist/commands/auth/__tests__/set-project.command.spec.d.ts +2 -0
- package/dist/commands/auth/__tests__/set-project.command.spec.d.ts.map +1 -0
- package/dist/commands/auth/__tests__/set-project.command.spec.js +60 -0
- package/dist/commands/auth/__tests__/set-project.command.spec.js.map +1 -0
- package/dist/commands/auth/__tests__/whoami.command.spec.js +16 -8
- package/dist/commands/auth/__tests__/whoami.command.spec.js.map +1 -1
- package/dist/commands/auth/get-project.command.d.ts +10 -0
- package/dist/commands/auth/get-project.command.d.ts.map +1 -0
- package/dist/commands/auth/get-project.command.js +49 -0
- package/dist/commands/auth/get-project.command.js.map +1 -0
- package/dist/commands/auth/index.js +4 -4
- package/dist/commands/auth/index.js.map +1 -1
- package/dist/commands/auth/login.command.d.ts.map +1 -1
- package/dist/commands/auth/login.command.js +9 -24
- package/dist/commands/auth/login.command.js.map +1 -1
- package/dist/commands/auth/logout.command.d.ts.map +1 -1
- package/dist/commands/auth/logout.command.js +6 -4
- package/dist/commands/auth/logout.command.js.map +1 -1
- package/dist/commands/auth/whoami.command.d.ts.map +1 -1
- package/dist/commands/auth/whoami.command.js +10 -22
- package/dist/commands/auth/whoami.command.js.map +1 -1
- package/dist/commands/ci/__tests__/session-filter.utils.spec.d.ts +2 -0
- package/dist/commands/ci/__tests__/session-filter.utils.spec.d.ts.map +1 -0
- package/dist/commands/ci/__tests__/session-filter.utils.spec.js +66 -0
- package/dist/commands/ci/__tests__/session-filter.utils.spec.js.map +1 -0
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts +1 -0
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts.map +1 -1
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js +29 -4
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js.map +1 -1
- package/dist/commands/ci/session-filter.utils.d.ts +25 -0
- package/dist/commands/ci/session-filter.utils.d.ts.map +1 -0
- package/dist/commands/ci/session-filter.utils.js +80 -0
- package/dist/commands/ci/session-filter.utils.js.map +1 -0
- package/dist/commands/ci/trigger-test-run.core.js +3 -3
- package/dist/commands/ci/trigger-test-run.core.js.map +1 -1
- package/dist/commands/ci/upload-asset-chunk.command.js +3 -3
- package/dist/commands/ci/upload-asset-chunk.command.js.map +1 -1
- package/dist/commands/debug/index.d.ts.map +1 -1
- package/dist/commands/debug/index.js +6 -9
- package/dist/commands/debug/index.js.map +1 -1
- package/dist/commands/local/relevant-sessions.command.js +3 -3
- package/dist/commands/local/relevant-sessions.command.js.map +1 -1
- package/dist/commands/project/show.command.js +3 -3
- package/dist/commands/project/show.command.js.map +1 -1
- package/dist/commands/record/__tests__/login.command.spec.js +5 -3
- package/dist/commands/record/__tests__/login.command.spec.js.map +1 -1
- package/dist/commands/record/__tests__/session.command.spec.js +5 -3
- package/dist/commands/record/__tests__/session.command.spec.js.map +1 -1
- package/dist/commands/record/login.command.js +3 -3
- package/dist/commands/record/login.command.js.map +1 -1
- package/dist/commands/record/session.command.js +3 -3
- package/dist/commands/record/session.command.js.map +1 -1
- package/dist/utils/__tests__/resolve-project-identifier.spec.js +36 -32
- package/dist/utils/__tests__/resolve-project-identifier.spec.js.map +1 -1
- package/dist/utils/__tests__/select-project.spec.js +135 -47
- package/dist/utils/__tests__/select-project.spec.js.map +1 -1
- package/dist/utils/handle-auth-failure.d.ts +1 -0
- package/dist/utils/handle-auth-failure.d.ts.map +1 -1
- package/dist/utils/handle-auth-failure.js +5 -4
- package/dist/utils/handle-auth-failure.js.map +1 -1
- package/dist/utils/resolve-project-identifier.d.ts +12 -10
- package/dist/utils/resolve-project-identifier.d.ts.map +1 -1
- package/dist/utils/resolve-project-identifier.js +29 -18
- package/dist/utils/resolve-project-identifier.js.map +1 -1
- package/dist/utils/resolve-test-run-from-commit.d.ts +6 -2
- package/dist/utils/resolve-test-run-from-commit.d.ts.map +1 -1
- package/dist/utils/resolve-test-run-from-commit.js +10 -9
- package/dist/utils/resolve-test-run-from-commit.js.map +1 -1
- package/dist/utils/select-project.d.ts +37 -13
- package/dist/utils/select-project.d.ts.map +1 -1
- package/dist/utils/select-project.js +111 -41
- package/dist/utils/select-project.js.map +1 -1
- package/package.json +10 -9
- package/dist/commands/auth/unset-project.command.d.ts +0 -3
- package/dist/commands/auth/unset-project.command.d.ts.map +0 -1
- package/dist/commands/auth/unset-project.command.js +0 -27
- package/dist/commands/auth/unset-project.command.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d586235c-1167-58bb-ba64-c9a7437cf914")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
const vitest_1 = require("vitest");
|
|
@@ -15,12 +15,10 @@ const loggerMock = {
|
|
|
15
15
|
debug: vitest_1.vi.fn(),
|
|
16
16
|
};
|
|
17
17
|
const mocks = vitest_1.vi.hoisted(() => ({
|
|
18
|
-
clearStoredProject: vitest_1.vi.fn(),
|
|
19
18
|
createClient: vitest_1.vi.fn(),
|
|
20
|
-
getStoredProject: vitest_1.vi.fn(),
|
|
21
19
|
isInteractiveContext: vitest_1.vi.fn(),
|
|
22
20
|
performOAuthLogin: vitest_1.vi.fn(),
|
|
23
|
-
|
|
21
|
+
selectProjectOnLogin: vitest_1.vi.fn(),
|
|
24
22
|
logNotice: vitest_1.vi.fn(),
|
|
25
23
|
}));
|
|
26
24
|
vitest_1.vi.mock("@alwaysmeticulous/common", () => ({
|
|
@@ -28,29 +26,25 @@ vitest_1.vi.mock("@alwaysmeticulous/common", () => ({
|
|
|
28
26
|
logNotice: mocks.logNotice,
|
|
29
27
|
}));
|
|
30
28
|
vitest_1.vi.mock("@alwaysmeticulous/client", () => ({
|
|
31
|
-
clearStoredProject: mocks.clearStoredProject,
|
|
32
29
|
createClient: mocks.createClient,
|
|
33
|
-
getStoredProject: mocks.getStoredProject,
|
|
34
30
|
isInteractiveContext: mocks.isInteractiveContext,
|
|
35
31
|
performOAuthLogin: mocks.performOAuthLogin,
|
|
36
32
|
}));
|
|
37
33
|
vitest_1.vi.mock("../../../utils/select-project", () => ({
|
|
38
|
-
|
|
34
|
+
selectProjectOnLogin: mocks.selectProjectOnLogin,
|
|
39
35
|
}));
|
|
40
36
|
const runHandler = (args = {}) => login_command_1.loginCommand.handler(args);
|
|
41
37
|
(0, vitest_1.describe)("login command", () => {
|
|
42
38
|
(0, vitest_1.beforeEach)(() => {
|
|
43
39
|
vitest_1.vi.clearAllMocks();
|
|
44
40
|
mocks.createClient.mockReturnValue({});
|
|
45
|
-
mocks.getStoredProject.mockReturnValue(null);
|
|
46
41
|
mocks.performOAuthLogin.mockResolvedValue({ accessToken: "fresh-jwt" });
|
|
47
|
-
mocks.
|
|
42
|
+
mocks.selectProjectOnLogin.mockResolvedValue(undefined);
|
|
48
43
|
});
|
|
49
44
|
(0, vitest_1.it)("throws a CliUserError in a non-interactive context and does not log in", async () => {
|
|
50
45
|
mocks.isInteractiveContext.mockReturnValue(false);
|
|
51
46
|
await (0, vitest_1.expect)(runHandler()).rejects.toBeInstanceOf(cli_user_error_1.CliUserError);
|
|
52
47
|
(0, vitest_1.expect)(mocks.performOAuthLogin).not.toHaveBeenCalled();
|
|
53
|
-
(0, vitest_1.expect)(mocks.clearStoredProject).not.toHaveBeenCalled();
|
|
54
48
|
});
|
|
55
49
|
(0, vitest_1.it)("with --non-interactive, bypasses the TTY guard and runs headlessly", async () => {
|
|
56
50
|
mocks.isInteractiveContext.mockReturnValue(false);
|
|
@@ -58,7 +52,7 @@ const runHandler = (args = {}) => login_command_1.loginCommand.handler(args);
|
|
|
58
52
|
(0, vitest_1.expect)(mocks.performOAuthLogin).toHaveBeenCalledWith({
|
|
59
53
|
openBrowserAutomatically: false,
|
|
60
54
|
});
|
|
61
|
-
(0, vitest_1.expect)(mocks.
|
|
55
|
+
(0, vitest_1.expect)(mocks.selectProjectOnLogin).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ interactive: false }));
|
|
62
56
|
});
|
|
63
57
|
(0, vitest_1.it)("with --non-interactive on a real TTY, still prints the URL and skips the picker", async () => {
|
|
64
58
|
mocks.isInteractiveContext.mockReturnValue(true);
|
|
@@ -66,46 +60,36 @@ const runHandler = (args = {}) => login_command_1.loginCommand.handler(args);
|
|
|
66
60
|
(0, vitest_1.expect)(mocks.performOAuthLogin).toHaveBeenCalledWith({
|
|
67
61
|
openBrowserAutomatically: false,
|
|
68
62
|
});
|
|
69
|
-
(0, vitest_1.expect)(mocks.
|
|
70
|
-
});
|
|
71
|
-
(0, vitest_1.it)("passes the previously-selected project as a fallback for headless selection", async () => {
|
|
72
|
-
mocks.isInteractiveContext.mockReturnValue(false);
|
|
73
|
-
mocks.getStoredProject.mockReturnValue("Org/Previous");
|
|
74
|
-
mocks.selectAndStoreProject.mockResolvedValue("Org/Previous");
|
|
75
|
-
await runHandler({ nonInteractive: true });
|
|
76
|
-
(0, vitest_1.expect)(mocks.selectAndStoreProject).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ fallbackToProject: "Org/Previous" }));
|
|
63
|
+
(0, vitest_1.expect)(mocks.selectProjectOnLogin).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ interactive: false }));
|
|
77
64
|
});
|
|
78
65
|
(0, vitest_1.it)("propagates the error and skips the hint when no project could be selected", async () => {
|
|
79
66
|
mocks.isInteractiveContext.mockReturnValue(false);
|
|
80
|
-
mocks.
|
|
67
|
+
mocks.selectProjectOnLogin.mockRejectedValue(new cli_user_error_1.CliUserError("no project selected", 1, "warn"));
|
|
81
68
|
await (0, vitest_1.expect)(runHandler({ nonInteractive: true })).rejects.toBeInstanceOf(cli_user_error_1.CliUserError);
|
|
82
69
|
(0, vitest_1.expect)(mocks.logNotice).not.toHaveBeenCalledWith(vitest_1.expect.stringContaining("auth set-project"));
|
|
83
70
|
});
|
|
84
|
-
(0, vitest_1.it)("shows the change-project hint when
|
|
71
|
+
(0, vitest_1.it)("shows the change-project hint when selection succeeds", async () => {
|
|
85
72
|
mocks.isInteractiveContext.mockReturnValue(true);
|
|
86
73
|
await runHandler();
|
|
87
74
|
(0, vitest_1.expect)(mocks.logNotice).toHaveBeenCalledWith(vitest_1.expect.stringContaining("auth set-project"));
|
|
88
75
|
});
|
|
89
|
-
(0, vitest_1.it)("logs in
|
|
76
|
+
(0, vitest_1.it)("logs in, then builds a client from the fresh token and selects a project", async () => {
|
|
90
77
|
mocks.isInteractiveContext.mockReturnValue(true);
|
|
91
78
|
await runHandler();
|
|
92
|
-
// The stale project is cleared only after a successful login, never before.
|
|
93
|
-
(0, vitest_1.expect)(mocks.performOAuthLogin.mock.invocationCallOrder[0]).toBeLessThan(mocks.clearStoredProject.mock.invocationCallOrder[0]);
|
|
94
79
|
(0, vitest_1.expect)(mocks.createClient).toHaveBeenCalledWith({ apiToken: "fresh-jwt" });
|
|
95
|
-
(0, vitest_1.expect)(mocks.
|
|
80
|
+
(0, vitest_1.expect)(mocks.selectProjectOnLogin).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ project: undefined, interactive: true }));
|
|
96
81
|
});
|
|
97
82
|
(0, vitest_1.it)("preserves the existing session when the browser login fails", async () => {
|
|
98
83
|
mocks.isInteractiveContext.mockReturnValue(true);
|
|
99
84
|
mocks.performOAuthLogin.mockRejectedValue(new Error("login cancelled"));
|
|
100
85
|
await (0, vitest_1.expect)(runHandler()).rejects.toThrow("login cancelled");
|
|
101
|
-
(0, vitest_1.expect)(mocks.
|
|
102
|
-
(0, vitest_1.expect)(mocks.selectAndStoreProject).not.toHaveBeenCalled();
|
|
86
|
+
(0, vitest_1.expect)(mocks.selectProjectOnLogin).not.toHaveBeenCalled();
|
|
103
87
|
});
|
|
104
88
|
(0, vitest_1.it)("passes an explicit --project through to selection", async () => {
|
|
105
89
|
mocks.isInteractiveContext.mockReturnValue(true);
|
|
106
90
|
await runHandler({ project: "Org/App" });
|
|
107
|
-
(0, vitest_1.expect)(mocks.
|
|
91
|
+
(0, vitest_1.expect)(mocks.selectProjectOnLogin).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ project: "Org/App" }));
|
|
108
92
|
});
|
|
109
93
|
});
|
|
110
94
|
//# sourceMappingURL=login.command.spec.js.map
|
|
111
|
-
//# debugId=
|
|
95
|
+
//# debugId=d586235c-1167-58bb-ba64-c9a7437cf914
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.command.spec.js","sources":["../../../../src/commands/auth/__tests__/login.command.spec.ts"],"sourceRoot":"","names":[],"mappings":";;;;AAAA,mCAA8D;AAC9D,kEAA6D;AAC7D,oDAAgD;AAEhD,WAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,WAAW,EAAE,CAAC,EAAyC,EAAE,EAAE,CAAC,EAAE;CAC/D,CAAC,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;IACd,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;CACf,CAAC;AAEF,MAAM,KAAK,GAAG,WAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,
|
|
1
|
+
{"version":3,"file":"login.command.spec.js","sources":["../../../../src/commands/auth/__tests__/login.command.spec.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"d586235c-1167-58bb-ba64-c9a7437cf914"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c982f99a-5546-5876-afb1-053439e99c0e")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
const vitest_1 = require("vitest");
|
|
@@ -19,12 +19,10 @@ vitest_1.vi.mock("@alwaysmeticulous/common", () => ({
|
|
|
19
19
|
}));
|
|
20
20
|
const mocks = vitest_1.vi.hoisted(() => ({
|
|
21
21
|
clearOAuthTokens: vitest_1.vi.fn(),
|
|
22
|
-
clearStoredProject: vitest_1.vi.fn(),
|
|
23
22
|
readFileBasedToken: vitest_1.vi.fn(),
|
|
24
23
|
}));
|
|
25
24
|
vitest_1.vi.mock("@alwaysmeticulous/client", () => ({
|
|
26
25
|
clearOAuthTokens: mocks.clearOAuthTokens,
|
|
27
|
-
clearStoredProject: mocks.clearStoredProject,
|
|
28
26
|
readFileBasedToken: mocks.readFileBasedToken,
|
|
29
27
|
}));
|
|
30
28
|
const runHandler = () => logout_command_1.logoutCommand.handler({});
|
|
@@ -44,10 +42,9 @@ const warnedText = () => loggerMock.warn.mock.calls.flat().join("\n");
|
|
|
44
42
|
process.env["METICULOUS_API_TOKEN"] = originalEnvToken;
|
|
45
43
|
}
|
|
46
44
|
});
|
|
47
|
-
(0, vitest_1.it)("clears OAuth tokens
|
|
45
|
+
(0, vitest_1.it)("clears OAuth tokens", async () => {
|
|
48
46
|
await runHandler();
|
|
49
47
|
(0, vitest_1.expect)(mocks.clearOAuthTokens).toHaveBeenCalled();
|
|
50
|
-
(0, vitest_1.expect)(mocks.clearStoredProject).toHaveBeenCalled();
|
|
51
48
|
(0, vitest_1.expect)(warnedText()).toBe("");
|
|
52
49
|
});
|
|
53
50
|
(0, vitest_1.it)("warns when METICULOUS_API_TOKEN is still set", async () => {
|
|
@@ -73,4 +70,4 @@ const warnedText = () => loggerMock.warn.mock.calls.flat().join("\n");
|
|
|
73
70
|
});
|
|
74
71
|
});
|
|
75
72
|
//# sourceMappingURL=logout.command.spec.js.map
|
|
76
|
-
//# debugId=
|
|
73
|
+
//# debugId=c982f99a-5546-5876-afb1-053439e99c0e
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.command.spec.js","sources":["../../../../src/commands/auth/__tests__/logout.command.spec.ts"],"sourceRoot":"","names":[],"mappings":";;;;AAAA,mCAAwE;AACxE,sDAAkD;AAElD,WAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,WAAW,EAAE,CAAC,EAAyC,EAAE,EAAE,CAAC,EAAE;CAC/D,CAAC,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;IACd,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;CACf,CAAC;AAEF,WAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU;IAC5B,SAAS,EAAE,WAAE,CAAC,EAAE,EAAE;CACnB,CAAC,CAAC,CAAC;AAEJ,MAAM,KAAK,GAAG,WAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,gBAAgB,EAAE,WAAE,CAAC,EAAE,EAAE;IACzB,kBAAkB,EAAE,WAAE,CAAC,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"logout.command.spec.js","sources":["../../../../src/commands/auth/__tests__/logout.command.spec.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"c982f99a-5546-5876-afb1-053439e99c0e"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-project.command.spec.d.ts","sourceRoot":"","sources":["../../../../src/commands/auth/__tests__/set-project.command.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e9ce8ab3-5954-5b17-88d6-a3ca9acac0a4")}catch(e){}}();
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
const vitest_1 = require("vitest");
|
|
6
|
+
const cli_user_error_1 = require("../../../utils/cli-user-error");
|
|
7
|
+
const set_project_command_1 = require("../set-project.command");
|
|
8
|
+
vitest_1.vi.mock("../../../command-utils/sentry.utils", () => ({
|
|
9
|
+
wrapHandler: (fn) => fn,
|
|
10
|
+
}));
|
|
11
|
+
const mocks = vitest_1.vi.hoisted(() => ({
|
|
12
|
+
resolveApiTokenWithOAuth: vitest_1.vi.fn(),
|
|
13
|
+
createClientWithOAuth: vitest_1.vi.fn(),
|
|
14
|
+
isInteractiveContext: vitest_1.vi.fn(),
|
|
15
|
+
isOAuthJwt: vitest_1.vi.fn(),
|
|
16
|
+
selectAndStoreProject: vitest_1.vi.fn(),
|
|
17
|
+
}));
|
|
18
|
+
vitest_1.vi.mock("@alwaysmeticulous/common", () => ({
|
|
19
|
+
initLogger: vitest_1.vi.fn(),
|
|
20
|
+
}));
|
|
21
|
+
vitest_1.vi.mock("@alwaysmeticulous/client", () => ({
|
|
22
|
+
createClientWithOAuth: mocks.createClientWithOAuth,
|
|
23
|
+
isInteractiveContext: mocks.isInteractiveContext,
|
|
24
|
+
isOAuthJwt: mocks.isOAuthJwt,
|
|
25
|
+
resolveApiTokenWithOAuth: mocks.resolveApiTokenWithOAuth,
|
|
26
|
+
}));
|
|
27
|
+
vitest_1.vi.mock("../../../utils/select-project", () => ({
|
|
28
|
+
selectAndStoreProject: mocks.selectAndStoreProject,
|
|
29
|
+
}));
|
|
30
|
+
const runHandler = (args = {}) => set_project_command_1.setProjectCommand.handler(args);
|
|
31
|
+
(0, vitest_1.describe)("set-project command", () => {
|
|
32
|
+
(0, vitest_1.beforeEach)(() => {
|
|
33
|
+
vitest_1.vi.clearAllMocks();
|
|
34
|
+
mocks.resolveApiTokenWithOAuth.mockResolvedValue("oauth-jwt");
|
|
35
|
+
mocks.createClientWithOAuth.mockResolvedValue({});
|
|
36
|
+
mocks.isInteractiveContext.mockReturnValue(true);
|
|
37
|
+
mocks.isOAuthJwt.mockReturnValue(true);
|
|
38
|
+
mocks.selectAndStoreProject.mockResolvedValue("Org/App");
|
|
39
|
+
});
|
|
40
|
+
(0, vitest_1.it)("selects a project for an OAuth caller", async () => {
|
|
41
|
+
await runHandler({ project: "Org/App" });
|
|
42
|
+
(0, vitest_1.expect)(mocks.selectAndStoreProject).toHaveBeenCalledWith(vitest_1.expect.objectContaining({
|
|
43
|
+
project: "Org/App",
|
|
44
|
+
allowInteractivePrompt: true,
|
|
45
|
+
}));
|
|
46
|
+
});
|
|
47
|
+
(0, vitest_1.it)("rejects a project-scoped API token", async () => {
|
|
48
|
+
mocks.isOAuthJwt.mockReturnValue(false);
|
|
49
|
+
await (0, vitest_1.expect)(runHandler()).rejects.toBeInstanceOf(cli_user_error_1.CliUserError);
|
|
50
|
+
(0, vitest_1.expect)(mocks.selectAndStoreProject).not.toHaveBeenCalled();
|
|
51
|
+
(0, vitest_1.expect)(mocks.createClientWithOAuth).not.toHaveBeenCalled();
|
|
52
|
+
});
|
|
53
|
+
(0, vitest_1.it)("passes allowInteractivePrompt from the current TTY state", async () => {
|
|
54
|
+
mocks.isInteractiveContext.mockReturnValue(false);
|
|
55
|
+
await runHandler();
|
|
56
|
+
(0, vitest_1.expect)(mocks.selectAndStoreProject).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ allowInteractivePrompt: false }));
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=set-project.command.spec.js.map
|
|
60
|
+
//# debugId=e9ce8ab3-5954-5b17-88d6-a3ca9acac0a4
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-project.command.spec.js","sources":["../../../../src/commands/auth/__tests__/set-project.command.spec.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"e9ce8ab3-5954-5b17-88d6-a3ca9acac0a4"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b18a8d66-f008-53f6-95a5-6823f13a88ff")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
const vitest_1 = require("vitest");
|
|
@@ -21,7 +21,7 @@ const mocks = vitest_1.vi.hoisted(() => ({
|
|
|
21
21
|
createClient: vitest_1.vi.fn(),
|
|
22
22
|
createClientWithOAuth: vitest_1.vi.fn(),
|
|
23
23
|
getWhoami: vitest_1.vi.fn(),
|
|
24
|
-
|
|
24
|
+
getOAuthDefaultProject: vitest_1.vi.fn(),
|
|
25
25
|
getProject: vitest_1.vi.fn(),
|
|
26
26
|
logNotice: vitest_1.vi.fn(),
|
|
27
27
|
}));
|
|
@@ -35,7 +35,7 @@ vitest_1.vi.mock("@alwaysmeticulous/client", () => ({
|
|
|
35
35
|
createClient: mocks.createClient,
|
|
36
36
|
createClientWithOAuth: mocks.createClientWithOAuth,
|
|
37
37
|
getWhoami: mocks.getWhoami,
|
|
38
|
-
|
|
38
|
+
getOAuthDefaultProject: mocks.getOAuthDefaultProject,
|
|
39
39
|
getProject: mocks.getProject,
|
|
40
40
|
}));
|
|
41
41
|
vitest_1.vi.mock("../../../utils/handle-auth-failure", () => ({
|
|
@@ -63,7 +63,7 @@ const FAKE_WHOAMI = {
|
|
|
63
63
|
mocks.createClient.mockReturnValue({});
|
|
64
64
|
mocks.createClientWithOAuth.mockResolvedValue({});
|
|
65
65
|
mocks.getWhoami.mockResolvedValue(FAKE_WHOAMI);
|
|
66
|
-
mocks.
|
|
66
|
+
mocks.getOAuthDefaultProject.mockResolvedValue({ projectId: null });
|
|
67
67
|
mocks.getProject.mockResolvedValue(null);
|
|
68
68
|
logSpy = vitest_1.vi.spyOn(console, "log").mockImplementation(() => { });
|
|
69
69
|
});
|
|
@@ -104,17 +104,25 @@ const FAKE_WHOAMI = {
|
|
|
104
104
|
(0, vitest_1.expect)(stdoutText()).toContain("Acme (owner)");
|
|
105
105
|
});
|
|
106
106
|
(0, vitest_1.it)("prints the selected project when one is stored", async () => {
|
|
107
|
-
mocks.
|
|
107
|
+
mocks.getOAuthDefaultProject.mockResolvedValue({
|
|
108
|
+
projectId: "proj-1",
|
|
109
|
+
name: "my-project",
|
|
110
|
+
organization: { id: "org-1", name: "Acme" },
|
|
111
|
+
});
|
|
108
112
|
await runHandler();
|
|
109
113
|
(0, vitest_1.expect)(stdoutText()).toContain("Acme/my-project");
|
|
110
114
|
});
|
|
111
115
|
(0, vitest_1.it)("prompts (on stderr) to set a project when none is selected", async () => {
|
|
112
|
-
mocks.
|
|
116
|
+
mocks.getOAuthDefaultProject.mockResolvedValue({ projectId: null });
|
|
113
117
|
await runHandler();
|
|
114
118
|
(0, vitest_1.expect)(noticeText()).toContain("auth set-project");
|
|
115
119
|
});
|
|
116
120
|
(0, vitest_1.it)("emits structured JSON with --json", async () => {
|
|
117
|
-
mocks.
|
|
121
|
+
mocks.getOAuthDefaultProject.mockResolvedValue({
|
|
122
|
+
projectId: "proj-1",
|
|
123
|
+
name: "my-project",
|
|
124
|
+
organization: { id: "org-1", name: "Acme" },
|
|
125
|
+
});
|
|
118
126
|
mocks.getWhoami.mockResolvedValue({
|
|
119
127
|
...FAKE_WHOAMI,
|
|
120
128
|
organizations: [{ id: "org-1", name: "Acme", role: "owner" }],
|
|
@@ -179,4 +187,4 @@ const FAKE_WHOAMI = {
|
|
|
179
187
|
});
|
|
180
188
|
});
|
|
181
189
|
//# sourceMappingURL=whoami.command.spec.js.map
|
|
182
|
-
//# debugId=
|
|
190
|
+
//# debugId=b18a8d66-f008-53f6-95a5-6823f13a88ff
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whoami.command.spec.js","sources":["../../../../src/commands/auth/__tests__/whoami.command.spec.ts"],"sourceRoot":"","names":[],"mappings":";;;;AAAA,mCAQgB;AAChB,sDAAkD;AAElD,+EAA+E;AAC/E,iDAAiD;AACjD,WAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,WAAW,EAAE,CAAC,EAAyC,EAAE,EAAE,CAAC,EAAE;CAC/D,CAAC,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;IACd,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;CACf,CAAC;AAEF,MAAM,KAAK,GAAG,WAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,wBAAwB,EAAE,WAAE,CAAC,EAAE,EAAE;IACjC,UAAU,EAAE,WAAE,CAAC,EAAE,EAAE;IACnB,YAAY,EAAE,WAAE,CAAC,EAAE,EAAE;IACrB,qBAAqB,EAAE,WAAE,CAAC,EAAE,EAAE;IAC9B,SAAS,EAAE,WAAE,CAAC,EAAE,EAAE;IAClB,
|
|
1
|
+
{"version":3,"file":"whoami.command.spec.js","sources":["../../../../src/commands/auth/__tests__/whoami.command.spec.ts"],"sourceRoot":"","names":[],"mappings":";;;;AAAA,mCAQgB;AAChB,sDAAkD;AAElD,+EAA+E;AAC/E,iDAAiD;AACjD,WAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,WAAW,EAAE,CAAC,EAAyC,EAAE,EAAE,CAAC,EAAE;CAC/D,CAAC,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;IACb,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;IACd,KAAK,EAAE,WAAE,CAAC,EAAE,EAAE;CACf,CAAC;AAEF,MAAM,KAAK,GAAG,WAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,wBAAwB,EAAE,WAAE,CAAC,EAAE,EAAE;IACjC,UAAU,EAAE,WAAE,CAAC,EAAE,EAAE;IACnB,YAAY,EAAE,WAAE,CAAC,EAAE,EAAE;IACrB,qBAAqB,EAAE,WAAE,CAAC,EAAE,EAAE;IAC9B,SAAS,EAAE,WAAE,CAAC,EAAE,EAAE;IAClB,sBAAsB,EAAE,WAAE,CAAC,EAAE,EAAE;IAC/B,UAAU,EAAE,WAAE,CAAC,EAAE,EAAE;IACnB,SAAS,EAAE,WAAE,CAAC,EAAE,EAAE;CACnB,CAAC,CAAC,CAAC;AAEJ,WAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU;IAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;CAC3B,CAAC,CAAC,CAAC;AAEJ,WAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,wBAAwB,EAAE,KAAK,CAAC,wBAAwB;IACxD,UAAU,EAAE,KAAK,CAAC,UAAU;IAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;IAChC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;IAClD,SAAS,EAAE,KAAK,CAAC,SAAS;IAC1B,sBAAsB,EAAE,KAAK,CAAC,sBAAsB;IACpD,UAAU,EAAE,KAAK,CAAC,UAAU;CAC7B,CAAC,CAAC,CAAC;AAEJ,WAAE,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnD,iBAAiB,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;CAClD,CAAC,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG,CAAC,OAA2B,EAAE,EAAE,EAAE,CAClD,8BAA+D,CAAC,OAAO,CAAC;IACvE,IAAI,EAAE,KAAK;IACX,GAAG,IAAI;CACR,CAAC,CAAC;AAEL,IAAI,MAAmC,CAAC;AACxC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7D,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEtE,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,OAAO;IAClB,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,KAAK;IACd,aAAa,EAAE,EAAE;CAClB,CAAC;AAEF,IAAA,iBAAQ,EAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAE7D,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,WAAE,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAC3C,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACvC,KAAK,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAClD,KAAK,CAAC,SAAS,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC/C,KAAK,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,GAAG,WAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAA,kBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,GAAG,EAAE;QACZ,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,GAAG,gBAAgB,CAAC;QACzD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,IAAA,mBAAU,EAAC,GAAG,EAAE;YACd,KAAK,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAC9D,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,CAAC;YAC3C,IAAA,eAAM,EAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAChD,6DAA6D;YAC7D,IAAA,eAAM,EAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAA,eAAM,EAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAClD,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;YACzB,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;YAClD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;YAC3C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,KAAK,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBAChC,GAAG,WAAW;gBACd,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;aAC9D,CAAC,CAAC;YAEH,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,KAAK,CAAC,sBAAsB,CAAC,iBAAiB,CAAC;gBAC7C,SAAS,EAAE,QAAQ;gBACnB,IAAI,EAAE,YAAY;gBAClB,YAAY,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;aAC5C,CAAC,CAAC;YAEH,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,KAAK,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEpE,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,KAAK,CAAC,sBAAsB,CAAC,iBAAiB,CAAC;gBAC7C,SAAS,EAAE,QAAQ;gBACnB,IAAI,EAAE,YAAY;gBAClB,YAAY,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;aAC5C,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBAChC,GAAG,WAAW;gBACd,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;aAC9D,CAAC,CAAC;YAEH,MAAM,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAEjC,IAAA,eAAM,EAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACvC,gBAAgB,EAAE,OAAO;gBACzB,KAAK,EAAE,mBAAmB;gBAC1B,SAAS,EAAE,OAAO;gBAClB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAChD,eAAe,EAAE,iBAAiB;aACnC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,IAAA,mBAAU,EAAC,GAAG,EAAE;YACd,KAAK,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;YAClE,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,GAAG,eAAe,CAAC;YAEtD,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC/C,iEAAiE;YACjE,IAAA,eAAM,EAAC,KAAK,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;YAC9C,IAAA,eAAM,EAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC3D,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAC5B,+DAA+D,CAChE,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAC5B,+CAA+C,CAChD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBACjC,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE;aACxC,CAAC,CAAC;YAEH,MAAM,UAAU,EAAE,CAAC;YAEnB,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACnE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAEtD,MAAM,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YACpD,IAAA,eAAM,EAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBACjC,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE;aACxC,CAAC,CAAC;YAEH,MAAM,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAEjC,IAAA,eAAM,EAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACvC,gBAAgB,EAAE,mBAAmB;gBACrC,WAAW,EAAE,2BAA2B;gBACxC,aAAa,EAAE,SAAS;aACzB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","debugId":"b18a8d66-f008-53f6-95a5-6823f13a88ff"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
|
+
/**
|
|
3
|
+
* Prints the project that project-scoped CLI commands would currently use —
|
|
4
|
+
* the token's own pinned project for a project/test-run API token, or the
|
|
5
|
+
* OAuth caller's default project (`auth set-project`) otherwise. Scriptable:
|
|
6
|
+
* only the resolved `organization/name` slug goes to stdout; exits non-zero
|
|
7
|
+
* with guidance on stderr if nothing is resolved.
|
|
8
|
+
*/
|
|
9
|
+
export declare const getProjectCommand: CommandModule;
|
|
10
|
+
//# sourceMappingURL=get-project.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-project.command.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/get-project.command.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAM3C;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE,aAoC/B,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0fefde6f-7eda-5efb-9bc0-e4adbec4d34d")}catch(e){}}();
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.getProjectCommand = void 0;
|
|
6
|
+
const client_1 = require("@alwaysmeticulous/client");
|
|
7
|
+
const common_1 = require("@alwaysmeticulous/common");
|
|
8
|
+
const sentry_utils_1 = require("../../command-utils/sentry.utils");
|
|
9
|
+
const cli_user_error_1 = require("../../utils/cli-user-error");
|
|
10
|
+
const resolve_project_identifier_1 = require("../../utils/resolve-project-identifier");
|
|
11
|
+
const select_project_1 = require("../../utils/select-project");
|
|
12
|
+
/**
|
|
13
|
+
* Prints the project that project-scoped CLI commands would currently use —
|
|
14
|
+
* the token's own pinned project for a project/test-run API token, or the
|
|
15
|
+
* OAuth caller's default project (`auth set-project`) otherwise. Scriptable:
|
|
16
|
+
* only the resolved `organization/name` slug goes to stdout; exits non-zero
|
|
17
|
+
* with guidance on stderr if nothing is resolved.
|
|
18
|
+
*/
|
|
19
|
+
exports.getProjectCommand = {
|
|
20
|
+
command: "get-project",
|
|
21
|
+
describe: "Print the project that project-scoped commands would currently use",
|
|
22
|
+
builder: {},
|
|
23
|
+
handler: (0, sentry_utils_1.wrapHandler)(async () => {
|
|
24
|
+
(0, common_1.initLogger)();
|
|
25
|
+
const apiToken = await (0, client_1.resolveApiTokenWithOAuth)({
|
|
26
|
+
apiToken: null,
|
|
27
|
+
enableOAuthLogin: true,
|
|
28
|
+
});
|
|
29
|
+
if (!(0, client_1.isOAuthJwt)(apiToken)) {
|
|
30
|
+
const pinned = await (0, resolve_project_identifier_1.resolvePinnedProjectSlug)(apiToken);
|
|
31
|
+
if (!pinned) {
|
|
32
|
+
throw new cli_user_error_1.CliUserError("Could not resolve the project this API token is bound to.");
|
|
33
|
+
}
|
|
34
|
+
console.log(pinned);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const client = await (0, client_1.createClientWithOAuth)({
|
|
38
|
+
apiToken: null,
|
|
39
|
+
enableOAuthLogin: true,
|
|
40
|
+
});
|
|
41
|
+
const defaultProject = await (0, client_1.getOAuthDefaultProject)(client);
|
|
42
|
+
if (!defaultProject.projectId) {
|
|
43
|
+
throw new cli_user_error_1.CliUserError("No default project set. Run `meticulous auth set-project` to choose one.");
|
|
44
|
+
}
|
|
45
|
+
console.log((0, select_project_1.formatProjectSlug)(defaultProject));
|
|
46
|
+
}),
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=get-project.command.js.map
|
|
49
|
+
//# debugId=0fefde6f-7eda-5efb-9bc0-e4adbec4d34d
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-project.command.js","sources":["../../../src/commands/auth/get-project.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,qDAKkC;AAClC,qDAAsD;AAEtD,mEAA+D;AAC/D,+DAA0D;AAC1D,uFAAkF;AAClF,+DAA+D;AAE/D;;;;;;GAMG;AACU,QAAA,iBAAiB,GAAkB;IAC9C,OAAO,EAAE,aAAa;IACtB,QAAQ,EACN,oEAAoE;IACtE,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,IAAA,0BAAW,EAAC,KAAK,IAAI,EAAE;QAC9B,IAAA,mBAAU,GAAE,CAAC;QAEb,MAAM,QAAQ,GAAG,MAAM,IAAA,iCAAwB,EAAC;YAC9C,QAAQ,EAAE,IAAI;YACd,gBAAgB,EAAE,IAAI;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,IAAA,mBAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,MAAM,IAAA,qDAAwB,EAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,6BAAY,CACpB,2DAA2D,CAC5D,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAqB,EAAC;YACzC,QAAQ,EAAE,IAAI;YACd,gBAAgB,EAAE,IAAI;SACvB,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAA,+BAAsB,EAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,6BAAY,CACpB,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAA,kCAAiB,EAAC,cAAc,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC;CACH,CAAC","debugId":"0fefde6f-7eda-5efb-9bc0-e4adbec4d34d"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="be794109-cf7c-50b5-8b38-1109ec22b803")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.authCommand = void 0;
|
|
6
|
+
const get_project_command_1 = require("./get-project.command");
|
|
6
7
|
const list_projects_command_1 = require("./list-projects.command");
|
|
7
8
|
const login_command_1 = require("./login.command");
|
|
8
9
|
const logout_command_1 = require("./logout.command");
|
|
9
10
|
const set_project_command_1 = require("./set-project.command");
|
|
10
|
-
const unset_project_command_1 = require("./unset-project.command");
|
|
11
11
|
const whoami_command_1 = require("./whoami.command");
|
|
12
12
|
exports.authCommand = {
|
|
13
13
|
command: "auth",
|
|
@@ -16,8 +16,8 @@ exports.authCommand = {
|
|
|
16
16
|
.command(login_command_1.loginCommand)
|
|
17
17
|
.command(whoami_command_1.whoamiCommand)
|
|
18
18
|
.command(logout_command_1.logoutCommand)
|
|
19
|
+
.command(get_project_command_1.getProjectCommand)
|
|
19
20
|
.command(set_project_command_1.setProjectCommand)
|
|
20
|
-
.command(unset_project_command_1.unsetProjectCommand)
|
|
21
21
|
.command(list_projects_command_1.listProjectsCommand)
|
|
22
22
|
.demandCommand()
|
|
23
23
|
.help(),
|
|
@@ -26,4 +26,4 @@ exports.authCommand = {
|
|
|
26
26
|
},
|
|
27
27
|
};
|
|
28
28
|
//# sourceMappingURL=index.js.map
|
|
29
|
-
//# debugId=
|
|
29
|
+
//# debugId=be794109-cf7c-50b5-8b38-1109ec22b803
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/commands/auth/index.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AACA,mEAA8D;AAC9D,mDAA+C;AAC/C,qDAAiD;AACjD,+DAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/commands/auth/index.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AACA,+DAA0D;AAC1D,mEAA8D;AAC9D,mDAA+C;AAC/C,qDAAiD;AACjD,+DAA0D;AAC1D,qDAAiD;AAEpC,QAAA,WAAW,GAAkB;IACxC,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,yBAAyB;IACnC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,OAAO,CAAC,4BAAY,CAAC;SACrB,OAAO,CAAC,8BAAa,CAAC;SACtB,OAAO,CAAC,8BAAa,CAAC;SACtB,OAAO,CAAC,uCAAiB,CAAC;SAC1B,OAAO,CAAC,uCAAiB,CAAC;SAC1B,OAAO,CAAC,2CAAmB,CAAC;SAC5B,aAAa,EAAE;SACf,IAAI,EAAE;IACX,OAAO,EAAE,GAAG,EAAE;QACZ,0BAA0B;IAC5B,CAAC;CACF,CAAC","debugId":"be794109-cf7c-50b5-8b38-1109ec22b803"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.command.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/login.command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"login.command.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/login.command.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAK3C,UAAU,OAAO;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CA2DxD,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c7b9337b-506e-5820-b93a-ec534b09c704")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.loginCommand = void 0;
|
|
@@ -41,35 +41,20 @@ exports.loginCommand = {
|
|
|
41
41
|
}
|
|
42
42
|
// Force a fresh browser login. Don't clear anything beforehand: if the flow
|
|
43
43
|
// is cancelled, times out, or token exchange fails, the existing session
|
|
44
|
-
// and
|
|
44
|
+
// and default project must survive. A successful login overwrites the
|
|
45
45
|
// stored OAuth tokens anyway.
|
|
46
46
|
const tokens = await (0, client_1.performOAuthLogin)({
|
|
47
47
|
openBrowserAutomatically: interactive,
|
|
48
48
|
});
|
|
49
|
-
// Logged in fresh (possibly as a different account), so drop any
|
|
50
|
-
// previously-selected project before re-selecting — keeping it would leave
|
|
51
|
-
// a stale selection the new user may not be able to access if the selection
|
|
52
|
-
// step below is interrupted. Remember it first so we can restore it below
|
|
53
|
-
// when it's still valid and selection would otherwise pick nothing.
|
|
54
|
-
const previousProject = (0, client_1.getStoredProject)();
|
|
55
|
-
(0, client_1.clearStoredProject)();
|
|
56
49
|
const client = (0, client_1.createClient)({ apiToken: tokens.accessToken });
|
|
57
|
-
// Pick a project for the freshly logged-in user
|
|
58
|
-
//
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
//
|
|
62
|
-
|
|
63
|
-
// accessible projects and no `--project`/fallback fails with guidance
|
|
64
|
-
// rather than leaving nothing selected.
|
|
65
|
-
await (0, select_project_1.selectAndStoreProject)({
|
|
66
|
-
client,
|
|
67
|
-
project,
|
|
68
|
-
allowInteractivePrompt: interactive,
|
|
69
|
-
fallbackToProject: previousProject ?? undefined,
|
|
70
|
-
});
|
|
50
|
+
// Pick a project for the freshly logged-in user. An explicit `--project`
|
|
51
|
+
// is persisted; an existing server-side default is respected as-is; a sole
|
|
52
|
+
// accessible project is auto-selected and persisted; and a multi-project
|
|
53
|
+
// account with no default is prompted interactively (or, when headless,
|
|
54
|
+
// pointed at `auth set-project`). See `selectProjectOnLogin`.
|
|
55
|
+
await (0, select_project_1.selectProjectOnLogin)({ client, project, interactive });
|
|
71
56
|
(0, common_1.logNotice)("You can change the selected project at any time with `meticulous auth set-project`.");
|
|
72
57
|
}),
|
|
73
58
|
};
|
|
74
59
|
//# sourceMappingURL=login.command.js.map
|
|
75
|
-
//# debugId=
|
|
60
|
+
//# debugId=c7b9337b-506e-5820-b93a-ec534b09c704
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.command.js","sources":["../../../src/commands/auth/login.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"login.command.js","sources":["../../../src/commands/auth/login.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,qDAIkC;AAClC,qDAAiE;AAEjE,mEAA+D;AAC/D,+DAA0D;AAC1D,+DAAkE;AAOrD,QAAA,YAAY,GAAoC;IAC3D,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,8CAA8C;IACxD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,MAAM,EAAE,IAAI;YACZ,WAAW,EACT,4EAA4E;gBAC5E,+DAA+D;SAClE;QACD,cAAc,EAAE;YACd,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,KAAK;YACd,WAAW,EACT,sEAAsE;gBACtE,uEAAuE;gBACvE,kEAAkE;gBAClE,sEAAsE;gBACtE,uEAAuE;gBACvE,kEAAkE;SACrE;KACF;IACD,OAAO,EAAE,IAAA,0BAAW,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,KAAK,EAAW,EAAE,EAAE;QAC1E,IAAA,mBAAU,GAAE,CAAC;QAEb,yEAAyE;QACzE,+DAA+D;QAC/D,MAAM,MAAM,GAAG,IAAA,6BAAoB,GAAE,CAAC;QACtC,MAAM,WAAW,GAAG,CAAC,cAAc,IAAI,MAAM,CAAC;QAE9C,IAAI,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,6BAAY,CACpB,+DAA+D;gBAC7D,sEAAsE;gBACtE,sEAAsE,CACzE,CAAC;QACJ,CAAC;QAED,4EAA4E;QAC5E,yEAAyE;QACzE,sEAAsE;QACtE,8BAA8B;QAC9B,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAiB,EAAC;YACrC,wBAAwB,EAAE,WAAW;SACtC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAE9D,yEAAyE;QACzE,2EAA2E;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,8DAA8D;QAC9D,MAAM,IAAA,qCAAoB,EAAC,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;QAE7D,IAAA,kBAAS,EACP,qFAAqF,CACtF,CAAC;IACJ,CAAC,CAAC;CACH,CAAC","debugId":"c7b9337b-506e-5820-b93a-ec534b09c704"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.command.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/logout.command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logout.command.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/logout.command.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,eAAO,MAAM,aAAa,EAAE,aAc3B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="accee0c1-eb9f-5f54-9b2a-9b4555bacee1")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.logoutCommand = void 0;
|
|
@@ -8,11 +8,13 @@ const common_1 = require("@alwaysmeticulous/common");
|
|
|
8
8
|
const sentry_utils_1 = require("../../command-utils/sentry.utils");
|
|
9
9
|
exports.logoutCommand = {
|
|
10
10
|
command: "logout",
|
|
11
|
-
describe: "Clear stored OAuth tokens
|
|
11
|
+
describe: "Clear stored OAuth tokens",
|
|
12
12
|
handler: (0, sentry_utils_1.wrapHandler)(() => {
|
|
13
13
|
const logger = (0, common_1.initLogger)();
|
|
14
14
|
(0, client_1.clearOAuthTokens)();
|
|
15
|
-
|
|
15
|
+
// The default project is a server-side, per-user setting (not local
|
|
16
|
+
// machine state), so logging out here deliberately leaves it — it's
|
|
17
|
+
// still there the next time this account logs back in, anywhere.
|
|
16
18
|
(0, common_1.logNotice)("Logged out successfully.");
|
|
17
19
|
warnAboutRemainingCredentials(logger);
|
|
18
20
|
return Promise.resolve();
|
|
@@ -38,4 +40,4 @@ const warnAboutRemainingCredentials = (logger) => {
|
|
|
38
40
|
}
|
|
39
41
|
};
|
|
40
42
|
//# sourceMappingURL=logout.command.js.map
|
|
41
|
-
//# debugId=
|
|
43
|
+
//# debugId=accee0c1-eb9f-5f54-9b2a-9b4555bacee1
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.command.js","sources":["../../../src/commands/auth/logout.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"logout.command.js","sources":["../../../src/commands/auth/logout.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,qDAAgF;AAChF,qDAAiE;AAGjE,mEAA+D;AAElD,QAAA,aAAa,GAAkB;IAC1C,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,2BAA2B;IACrC,OAAO,EAAE,IAAA,0BAAW,EAAC,GAAG,EAAE;QACxB,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QAC5B,IAAA,yBAAgB,GAAE,CAAC;QACnB,oEAAoE;QACpE,oEAAoE;QACpE,iEAAiE;QACjE,IAAA,kBAAS,EAAC,0BAA0B,CAAC,CAAC;QAEtC,6BAA6B,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC,CAAC;CACH,CAAC;AAEF,MAAM,6BAA6B,GAAG,CAAC,MAAc,EAAQ,EAAE;IAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CACT,uEAAuE;YACrE,+DAA+D,CAClE,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,2DAA2D;IAC3D,IAAI,SAAS,GAA0C,IAAI,CAAC;IAC5D,IAAI,CAAC;QACH,SAAS,GAAG,IAAA,2BAAkB,GAAE,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,CACT,yCAAyC,SAAS,CAAC,IAAI,OAAO;YAC5D,sEAAsE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC","debugId":"accee0c1-eb9f-5f54-9b2a-9b4555bacee1"}
|