@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.
Files changed (126) hide show
  1. package/dist/commands/agent/index.js +8 -8
  2. package/dist/commands/agent/index.js.map +1 -1
  3. package/dist/commands/agent/js-coverage.command.d.ts +5 -0
  4. package/dist/commands/agent/js-coverage.command.d.ts.map +1 -1
  5. package/dist/commands/agent/js-coverage.command.js +120 -24
  6. package/dist/commands/agent/js-coverage.command.js.map +1 -1
  7. package/dist/commands/agent/js-coverage.command.spec.js +48 -2
  8. package/dist/commands/agent/js-coverage.command.spec.js.map +1 -1
  9. package/dist/commands/agent/screenshot-dom-diff.command.d.ts.map +1 -1
  10. package/dist/commands/agent/screenshot-dom-diff.command.js +3 -3
  11. package/dist/commands/agent/screenshot-dom-diff.command.js.map +1 -1
  12. package/dist/commands/agent/screenshot-image-files.command.d.ts.map +1 -1
  13. package/dist/commands/agent/screenshot-image-files.command.js +3 -3
  14. package/dist/commands/agent/screenshot-image-files.command.js.map +1 -1
  15. package/dist/commands/agent/screenshot-image.command.d.ts.map +1 -1
  16. package/dist/commands/agent/screenshot-image.command.js +3 -3
  17. package/dist/commands/agent/screenshot-image.command.js.map +1 -1
  18. package/dist/commands/agent/test-run-diffs.command.d.ts +1 -1
  19. package/dist/commands/agent/test-run-diffs.command.d.ts.map +1 -1
  20. package/dist/commands/agent/test-run-diffs.command.js +39 -31
  21. package/dist/commands/agent/test-run-diffs.command.js.map +1 -1
  22. package/dist/commands/agent/test-run-diffs.command.spec.d.ts +2 -0
  23. package/dist/commands/agent/test-run-diffs.command.spec.d.ts.map +1 -0
  24. package/dist/commands/agent/test-run-diffs.command.spec.js +148 -0
  25. package/dist/commands/agent/test-run-diffs.command.spec.js.map +1 -0
  26. package/dist/commands/agent/test-run-diffs.utils.d.ts +14 -26
  27. package/dist/commands/agent/test-run-diffs.utils.d.ts.map +1 -1
  28. package/dist/commands/agent/test-run-diffs.utils.js +23 -35
  29. package/dist/commands/agent/test-run-diffs.utils.js.map +1 -1
  30. package/dist/commands/agent/test-run-diffs.utils.spec.js +15 -58
  31. package/dist/commands/agent/test-run-diffs.utils.spec.js.map +1 -1
  32. package/dist/commands/agent/test-run-for-commit.command.d.ts +1 -0
  33. package/dist/commands/agent/test-run-for-commit.command.d.ts.map +1 -1
  34. package/dist/commands/agent/test-run-for-commit.command.js +11 -12
  35. package/dist/commands/agent/test-run-for-commit.command.js.map +1 -1
  36. package/dist/commands/agent/trigger-test-run.command.d.ts +1 -0
  37. package/dist/commands/agent/trigger-test-run.command.d.ts.map +1 -1
  38. package/dist/commands/agent/trigger-test-run.command.js +8 -6
  39. package/dist/commands/agent/trigger-test-run.command.js.map +1 -1
  40. package/dist/commands/agent/upload-build.command.js +3 -3
  41. package/dist/commands/agent/upload-build.command.js.map +1 -1
  42. package/dist/commands/auth/__tests__/get-project.command.spec.d.ts +2 -0
  43. package/dist/commands/auth/__tests__/get-project.command.spec.d.ts.map +1 -0
  44. package/dist/commands/auth/__tests__/get-project.command.spec.js +72 -0
  45. package/dist/commands/auth/__tests__/get-project.command.spec.js.map +1 -0
  46. package/dist/commands/auth/__tests__/login.command.spec.js +13 -29
  47. package/dist/commands/auth/__tests__/login.command.spec.js.map +1 -1
  48. package/dist/commands/auth/__tests__/logout.command.spec.js +3 -6
  49. package/dist/commands/auth/__tests__/logout.command.spec.js.map +1 -1
  50. package/dist/commands/auth/__tests__/set-project.command.spec.d.ts +2 -0
  51. package/dist/commands/auth/__tests__/set-project.command.spec.d.ts.map +1 -0
  52. package/dist/commands/auth/__tests__/set-project.command.spec.js +60 -0
  53. package/dist/commands/auth/__tests__/set-project.command.spec.js.map +1 -0
  54. package/dist/commands/auth/__tests__/whoami.command.spec.js +16 -8
  55. package/dist/commands/auth/__tests__/whoami.command.spec.js.map +1 -1
  56. package/dist/commands/auth/get-project.command.d.ts +10 -0
  57. package/dist/commands/auth/get-project.command.d.ts.map +1 -0
  58. package/dist/commands/auth/get-project.command.js +49 -0
  59. package/dist/commands/auth/get-project.command.js.map +1 -0
  60. package/dist/commands/auth/index.js +4 -4
  61. package/dist/commands/auth/index.js.map +1 -1
  62. package/dist/commands/auth/login.command.d.ts.map +1 -1
  63. package/dist/commands/auth/login.command.js +9 -24
  64. package/dist/commands/auth/login.command.js.map +1 -1
  65. package/dist/commands/auth/logout.command.d.ts.map +1 -1
  66. package/dist/commands/auth/logout.command.js +6 -4
  67. package/dist/commands/auth/logout.command.js.map +1 -1
  68. package/dist/commands/auth/whoami.command.d.ts.map +1 -1
  69. package/dist/commands/auth/whoami.command.js +10 -22
  70. package/dist/commands/auth/whoami.command.js.map +1 -1
  71. package/dist/commands/ci/__tests__/session-filter.utils.spec.d.ts +2 -0
  72. package/dist/commands/ci/__tests__/session-filter.utils.spec.d.ts.map +1 -0
  73. package/dist/commands/ci/__tests__/session-filter.utils.spec.js +66 -0
  74. package/dist/commands/ci/__tests__/session-filter.utils.spec.js.map +1 -0
  75. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts +1 -0
  76. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts.map +1 -1
  77. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js +29 -4
  78. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js.map +1 -1
  79. package/dist/commands/ci/session-filter.utils.d.ts +25 -0
  80. package/dist/commands/ci/session-filter.utils.d.ts.map +1 -0
  81. package/dist/commands/ci/session-filter.utils.js +80 -0
  82. package/dist/commands/ci/session-filter.utils.js.map +1 -0
  83. package/dist/commands/ci/trigger-test-run.core.js +3 -3
  84. package/dist/commands/ci/trigger-test-run.core.js.map +1 -1
  85. package/dist/commands/ci/upload-asset-chunk.command.js +3 -3
  86. package/dist/commands/ci/upload-asset-chunk.command.js.map +1 -1
  87. package/dist/commands/debug/index.d.ts.map +1 -1
  88. package/dist/commands/debug/index.js +6 -9
  89. package/dist/commands/debug/index.js.map +1 -1
  90. package/dist/commands/local/relevant-sessions.command.js +3 -3
  91. package/dist/commands/local/relevant-sessions.command.js.map +1 -1
  92. package/dist/commands/project/show.command.js +3 -3
  93. package/dist/commands/project/show.command.js.map +1 -1
  94. package/dist/commands/record/__tests__/login.command.spec.js +5 -3
  95. package/dist/commands/record/__tests__/login.command.spec.js.map +1 -1
  96. package/dist/commands/record/__tests__/session.command.spec.js +5 -3
  97. package/dist/commands/record/__tests__/session.command.spec.js.map +1 -1
  98. package/dist/commands/record/login.command.js +3 -3
  99. package/dist/commands/record/login.command.js.map +1 -1
  100. package/dist/commands/record/session.command.js +3 -3
  101. package/dist/commands/record/session.command.js.map +1 -1
  102. package/dist/utils/__tests__/resolve-project-identifier.spec.js +36 -32
  103. package/dist/utils/__tests__/resolve-project-identifier.spec.js.map +1 -1
  104. package/dist/utils/__tests__/select-project.spec.js +135 -47
  105. package/dist/utils/__tests__/select-project.spec.js.map +1 -1
  106. package/dist/utils/handle-auth-failure.d.ts +1 -0
  107. package/dist/utils/handle-auth-failure.d.ts.map +1 -1
  108. package/dist/utils/handle-auth-failure.js +5 -4
  109. package/dist/utils/handle-auth-failure.js.map +1 -1
  110. package/dist/utils/resolve-project-identifier.d.ts +12 -10
  111. package/dist/utils/resolve-project-identifier.d.ts.map +1 -1
  112. package/dist/utils/resolve-project-identifier.js +29 -18
  113. package/dist/utils/resolve-project-identifier.js.map +1 -1
  114. package/dist/utils/resolve-test-run-from-commit.d.ts +6 -2
  115. package/dist/utils/resolve-test-run-from-commit.d.ts.map +1 -1
  116. package/dist/utils/resolve-test-run-from-commit.js +10 -9
  117. package/dist/utils/resolve-test-run-from-commit.js.map +1 -1
  118. package/dist/utils/select-project.d.ts +37 -13
  119. package/dist/utils/select-project.d.ts.map +1 -1
  120. package/dist/utils/select-project.js +111 -41
  121. package/dist/utils/select-project.js.map +1 -1
  122. package/package.json +10 -9
  123. package/dist/commands/auth/unset-project.command.d.ts +0 -3
  124. package/dist/commands/auth/unset-project.command.d.ts.map +0 -1
  125. package/dist/commands/auth/unset-project.command.js +0 -27
  126. package/dist/commands/auth/unset-project.command.js.map +0 -1
@@ -1,11 +1,11 @@
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]="ebb174ae-4b88-5a86-9211-d9a54ec34440")}catch(e){}}();
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]="e3dd5fa0-bef9-583c-8433-9978a18d5a5d")}catch(e){}}();
3
3
 
4
4
  var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  return (mod && mod.__esModule) ? mod : { "default": mod };
6
6
  };
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.selectAndStoreProject = exports.fetchAccessibleProjects = void 0;
8
+ exports.selectProjectOnLogin = exports.selectAndStoreProject = exports.formatProjectSlug = exports.fetchAccessibleProjects = void 0;
9
9
  const client_1 = require("@alwaysmeticulous/client");
10
10
  const common_1 = require("@alwaysmeticulous/common");
11
11
  const inquirer_1 = __importDefault(require("inquirer"));
@@ -14,10 +14,16 @@ const handle_auth_failure_1 = require("./handle-auth-failure");
14
14
  /**
15
15
  * Fetches the projects accessible to the OAuth caller, surfacing auth failures
16
16
  * via `handleAuthFailure`. Shared by the project selection and listing flows.
17
+ *
18
+ * Results are sorted alphabetically by `organization/project` slug
19
+ * (case-insensitive) so the interactive picker, listing output, and error
20
+ * messages present projects in a predictable order regardless of what the API
21
+ * returns.
17
22
  */
18
23
  const fetchAccessibleProjects = async (client) => {
19
24
  try {
20
- return await (0, client_1.getOAuthProjects)(client);
25
+ const projects = await (0, client_1.getOAuthProjects)(client);
26
+ return [...projects].sort(compareProjectsBySlug);
21
27
  }
22
28
  catch (error) {
23
29
  (0, handle_auth_failure_1.handleAuthFailure)(error);
@@ -25,70 +31,134 @@ const fetchAccessibleProjects = async (client) => {
25
31
  }
26
32
  };
27
33
  exports.fetchAccessibleProjects = fetchAccessibleProjects;
34
+ const compareProjectsBySlug = (a, b) => {
35
+ const orgComparison = a.organization.name.localeCompare(b.organization.name, undefined, {
36
+ sensitivity: "base",
37
+ });
38
+ if (orgComparison !== 0) {
39
+ return orgComparison;
40
+ }
41
+ return a.name.localeCompare(b.name, undefined, { sensitivity: "base" });
42
+ };
43
+ /** `"organization/name"` slug, falling back to the bare id if unnamed. */
44
+ const formatProjectSlug = (project) => project.organization && project.name
45
+ ? `${project.organization.name}/${project.name}`
46
+ : (project.projectId ?? "");
47
+ exports.formatProjectSlug = formatProjectSlug;
28
48
  /**
29
- * Picks a project, stores it as the selected project, and logs the selection.
30
- * Shared by `auth login` and `auth set-project`.
49
+ * Picks a project and persists it as the caller's default (via the backend —
50
+ * see `setOAuthDefaultProject`, consistent across machines and visible to the
51
+ * MCP server). Shared by `auth login` and `auth set-project`.
31
52
  *
32
- * - When `project` (an `organization/project` slug) is given, selects that
33
- * project non-interactively, erroring with the available list if it does
34
- * not match.
53
+ * - When `project` is given, it's resolved by the backend, which accepts any of
54
+ * a bare id, an `organization/name` slug, or a unique bare name (see
55
+ * `ProjectService.resolveForUserByIdentifier`). We deliberately do NOT match
56
+ * client-side — the CLI would only understand the slug form and diverge from
57
+ * the backend (and from the `--project` override on agent commands).
35
58
  * - Otherwise auto-selects the only project, or prompts interactively when
36
59
  * there are several — unless `allowInteractivePrompt` is `false` (e.g. a
37
- * headless login), in which case it keeps `fallbackToProject` if that is
38
- * still accessible, and otherwise throws with guidance rather than blocking
39
- * on a prompt that no terminal can answer.
60
+ * headless login), in which case it throws with guidance rather than
61
+ * blocking on a prompt that no terminal can answer.
40
62
  *
41
- * Throws `CliUserError` when the caller has no accessible projects, or when a
42
- * project cannot be resolved without an interactive prompt.
63
+ * Throws `CliUserError` when the identifier can't be resolved, the caller has
64
+ * no accessible projects, or a project can't be resolved without a prompt.
43
65
  */
44
- const selectAndStoreProject = async ({ client, project, allowInteractivePrompt = true, fallbackToProject, }) => {
66
+ const selectAndStoreProject = async ({ client, project, allowInteractivePrompt = true, }) => {
67
+ if (project) {
68
+ // Tolerate accidental surrounding whitespace (e.g. from copy-paste). The
69
+ // backend resolves the identifier flexibly and returns the resolved
70
+ // project, so there's no client-side lookup here.
71
+ const trimmedProject = project.trim();
72
+ let stored;
73
+ try {
74
+ stored = await (0, client_1.setOAuthDefaultProject)(client, trimmedProject);
75
+ }
76
+ catch (error) {
77
+ (0, handle_auth_failure_1.handleAuthFailure)(error);
78
+ throw await toProjectResolutionError(client, trimmedProject, error);
79
+ }
80
+ const projectSlug = (0, exports.formatProjectSlug)(stored);
81
+ (0, common_1.logNotice)(`Selected project: ${projectSlug}`);
82
+ return projectSlug;
83
+ }
45
84
  const projects = await (0, exports.fetchAccessibleProjects)(client);
46
85
  if (projects.length === 0) {
47
86
  throw new cli_user_error_1.CliUserError("No projects are accessible to your account. Ask an organization " +
48
87
  "admin to add you to a project.");
49
88
  }
50
89
  let selected;
51
- if (project) {
52
- // Tolerate accidental surrounding whitespace (e.g. from copy-paste), but
53
- // keep the match case-sensitive: organization/project names are
54
- // case-sensitive, so two projects could differ only by case and a
55
- // case-insensitive match would be ambiguous.
56
- const trimmedProject = project.trim();
57
- const match = projects.find((p) => `${p.organization.name}/${p.name}` === trimmedProject);
58
- if (!match) {
59
- throw new cli_user_error_1.CliUserError(`Project '${trimmedProject}' not found. Available projects:\n${formatProjectList(projects)}`);
60
- }
61
- selected = match;
62
- }
63
- else if (projects.length === 1) {
90
+ if (projects.length === 1) {
64
91
  selected = projects[0];
65
92
  }
66
93
  else if (allowInteractivePrompt) {
67
94
  selected = await promptForProject(projects);
68
95
  }
69
96
  else {
70
- // No interactive terminal to answer the picker. Keep the previously
71
- // selected project if it's still accessible; otherwise fail with guidance
72
- // on how to choose one, so callers (and scripts) know no project is set.
73
- const fallback = fallbackToProject
74
- ? projects.find((p) => `${p.organization.name}/${p.name}` === fallbackToProject)
75
- : undefined;
76
- if (fallback) {
77
- const fallbackSlug = `${fallback.organization.name}/${fallback.name}`;
78
- (0, client_1.setStoredProject)({ project: fallbackSlug, projectId: fallback.id });
79
- (0, common_1.logNotice)(`Kept previously selected project: ${fallbackSlug}`);
80
- return fallbackSlug;
81
- }
82
97
  throw new cli_user_error_1.CliUserError("Multiple projects are accessible but none was selected (no interactive " +
83
98
  "terminal). Pass `--project` or run `meticulous auth set-project` to " +
84
99
  "choose one.", 1, "warn");
85
100
  }
86
101
  const projectSlug = `${selected.organization.name}/${selected.name}`;
87
- (0, client_1.setStoredProject)({ project: projectSlug, projectId: selected.id });
102
+ await (0, client_1.setOAuthDefaultProject)(client, selected.id);
88
103
  (0, common_1.logNotice)(`Selected project: ${projectSlug}`);
89
104
  return projectSlug;
90
105
  };
91
106
  exports.selectAndStoreProject = selectAndStoreProject;
107
+ /**
108
+ * Turns a failed explicit-project resolution into a helpful `CliUserError`: the
109
+ * backend's own message (not found / not accessible / ambiguous name) plus the
110
+ * list of accessible projects to pick from.
111
+ */
112
+ const toProjectResolutionError = async (client, identifier, error) => {
113
+ const serverMessage = (0, client_1.isFetchError)(error)
114
+ ? (0, handle_auth_failure_1.extractServerMessage)(error.response?.data)
115
+ : null;
116
+ const projects = await (0, exports.fetchAccessibleProjects)(client).catch(() => []);
117
+ const list = projects.length
118
+ ? `\n\nAvailable projects:\n${formatProjectList(projects)}`
119
+ : "";
120
+ const detail = serverMessage ?? `Project '${identifier}' not found or not accessible.`;
121
+ return new cli_user_error_1.CliUserError(`${detail}${list}`);
122
+ };
123
+ /**
124
+ * Project selection for `auth login`. Behaves like `selectAndStoreProject`
125
+ * (persist an explicit `--project`, auto-select+persist a sole project, prompt
126
+ * among several) with one addition: if the user already has a stored default,
127
+ * respect it rather than re-prompting or failing — so a returning user (in
128
+ * particular a headless `--non-interactive` login) succeeds without re-picking.
129
+ *
130
+ * There's no "cleared default" to preserve here: clearing isn't user-reachable
131
+ * (no `unset-project` command, no web "no default" option), so always selecting
132
+ * a sole project can't silently undo an intentional clear.
133
+ */
134
+ const selectProjectOnLogin = async ({ client, project, interactive, }) => {
135
+ // An explicit `--project` always wins.
136
+ if (project) {
137
+ await (0, exports.selectAndStoreProject)({
138
+ client,
139
+ project,
140
+ allowInteractivePrompt: interactive,
141
+ });
142
+ return;
143
+ }
144
+ // With several accessible projects, respect an already-stored default (the
145
+ // backend only auto-picks when there's exactly one project, so a non-null
146
+ // result here is necessarily the stored preference). This is what lets a
147
+ // returning `--non-interactive` login succeed instead of failing for lack of
148
+ // a picker.
149
+ const projects = await (0, exports.fetchAccessibleProjects)(client);
150
+ if (projects.length > 1) {
151
+ const existing = await (0, client_1.getOAuthDefaultProject)(client);
152
+ if (existing.projectId) {
153
+ (0, common_1.logNotice)(`Using your default project: ${(0, exports.formatProjectSlug)(existing)}.`);
154
+ return;
155
+ }
156
+ }
157
+ // Otherwise select-and-persist: a sole project is auto-selected, several
158
+ // prompt interactively (or, headless, error with guidance).
159
+ await (0, exports.selectAndStoreProject)({ client, allowInteractivePrompt: interactive });
160
+ };
161
+ exports.selectProjectOnLogin = selectProjectOnLogin;
92
162
  const promptForProject = async (projects) => {
93
163
  const { projectId } = await inquirer_1.default.prompt([
94
164
  {
@@ -109,4 +179,4 @@ const promptForProject = async (projects) => {
109
179
  };
110
180
  const formatProjectList = (projects) => projects.map((p) => ` - ${p.organization.name}/${p.name}`).join("\n");
111
181
  //# sourceMappingURL=select-project.js.map
112
- //# debugId=ebb174ae-4b88-5a86-9211-d9a54ec34440
182
+ //# debugId=e3dd5fa0-bef9-583c-8433-9978a18d5a5d
@@ -1 +1 @@
1
- {"version":3,"file":"select-project.js","sources":["../../src/utils/select-project.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"ebb174ae-4b88-5a86-9211-d9a54ec34440"}
1
+ {"version":3,"file":"select-project.js","sources":["../../src/utils/select-project.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"e3dd5fa0-bef9-583c-8433-9978a18d5a5d"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alwaysmeticulous/cli",
3
- "version": "2.305.0",
3
+ "version": "2.307.0",
4
4
  "description": "The Meticulous CLI",
5
5
  "license": "ISC",
6
6
  "main": "dist/index.js",
@@ -23,17 +23,18 @@
23
23
  "puppeteer-core": "24.14.0",
24
24
  "tar": "^7.5.8",
25
25
  "yargs": "^17.5.1",
26
- "@alwaysmeticulous/api": "2.301.0",
26
+ "@alwaysmeticulous/api": "2.307.0",
27
+ "@alwaysmeticulous/client": "2.307.0",
27
28
  "@alwaysmeticulous/common": "2.301.0",
28
- "@alwaysmeticulous/debug-workspace": "2.305.0",
29
- "@alwaysmeticulous/client": "2.305.0",
30
- "@alwaysmeticulous/downloading-helpers": "2.305.0",
31
- "@alwaysmeticulous/replay-orchestrator-launcher": "2.305.0",
32
- "@alwaysmeticulous/sdk-bundles-api": "2.305.0",
29
+ "@alwaysmeticulous/debug-workspace": "2.307.0",
30
+ "@alwaysmeticulous/downloading-helpers": "2.307.0",
31
+ "@alwaysmeticulous/record": "2.307.0",
32
+ "@alwaysmeticulous/remote-replay-launcher": "2.307.0",
33
33
  "@alwaysmeticulous/replay-debugger-ui": "2.283.1",
34
- "@alwaysmeticulous/record": "2.301.0",
35
- "@alwaysmeticulous/remote-replay-launcher": "2.305.0",
34
+ "@alwaysmeticulous/replay-orchestrator-launcher": "2.307.0",
36
35
  "@alwaysmeticulous/sentry": "2.301.0",
36
+ "@alwaysmeticulous/sdk-bundles-api": "2.307.0",
37
+ "@alwaysmeticulous/session-filters": "2.307.0",
37
38
  "@alwaysmeticulous/tunnels-client": "2.301.0"
38
39
  },
39
40
  "devDependencies": {
@@ -1,3 +0,0 @@
1
- import type { CommandModule } from "yargs";
2
- export declare const unsetProjectCommand: CommandModule;
3
- //# sourceMappingURL=unset-project.command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unset-project.command.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/unset-project.command.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,eAAO,MAAM,mBAAmB,EAAE,aAejC,CAAC"}
@@ -1,27 +0,0 @@
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]="e3ecc8cf-a4f8-5ae3-bcfa-04079472df76")}catch(e){}}();
3
-
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.unsetProjectCommand = 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
- exports.unsetProjectCommand = {
10
- command: "unset-project",
11
- describe: "Clear the project selected via `auth set-project`",
12
- builder: {},
13
- handler: (0, sentry_utils_1.wrapHandler)(() => {
14
- (0, common_1.initLogger)();
15
- const previous = (0, client_1.getStoredProject)();
16
- (0, client_1.clearStoredProject)();
17
- if (previous) {
18
- (0, common_1.logNotice)(`Cleared selected project (was: ${previous}).`);
19
- }
20
- else {
21
- (0, common_1.logNotice)("No project was selected.");
22
- }
23
- return Promise.resolve();
24
- }),
25
- };
26
- //# sourceMappingURL=unset-project.command.js.map
27
- //# debugId=e3ecc8cf-a4f8-5ae3-bcfa-04079472df76
@@ -1 +0,0 @@
1
- {"version":3,"file":"unset-project.command.js","sources":["../../../src/commands/auth/unset-project.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,qDAAgF;AAChF,qDAAiE;AAEjE,mEAA+D;AAElD,QAAA,mBAAmB,GAAkB;IAChD,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,mDAAmD;IAC7D,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,IAAA,0BAAW,EAAC,GAAG,EAAE;QACxB,IAAA,mBAAU,GAAE,CAAC;QACb,MAAM,QAAQ,GAAG,IAAA,yBAAgB,GAAE,CAAC;QACpC,IAAA,2BAAkB,GAAE,CAAC;QACrB,IAAI,QAAQ,EAAE,CAAC;YACb,IAAA,kBAAS,EAAC,kCAAkC,QAAQ,IAAI,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,IAAA,kBAAS,EAAC,0BAA0B,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC,CAAC;CACH,CAAC","debugId":"e3ecc8cf-a4f8-5ae3-bcfa-04079472df76"}