@getbrevo/cli 2.0.2 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +209 -0
- package/README.md +8 -5
- package/agent-context/AGENTS.md +59 -15
- package/agent-context/SKILL.md +70 -14
- package/dist/{templates → bin}/files/AGENTS.md.tmpl +11 -1
- package/dist/{templates → bin}/files/CLAUDE.md.tmpl +8 -0
- package/dist/{templates → bin}/files/README.md.tmpl +11 -14
- package/dist/bin/files/app-config.json.tmpl +16 -0
- package/dist/{templates → bin}/files/src/oauth/.env.example.tmpl +8 -0
- package/dist/{templates → bin}/files/src/oauth/.env.local.tmpl +2 -0
- package/dist/{templates → bin}/files/src/oauth/handler.js.tmpl +49 -7
- package/dist/{templates → bin}/files/src/oauth/server.js.tmpl +20 -14
- package/dist/{templates → bin}/files/src/oauth/token-store.js.tmpl +19 -0
- package/dist/bin/index.js +660 -235
- package/dist/bin/index.js.map +7 -1
- package/package.json +6 -4
- package/dist/api/client.d.ts +0 -25
- package/dist/api/client.d.ts.map +0 -1
- package/dist/api/client.js +0 -205
- package/dist/api/client.js.map +0 -1
- package/dist/bin/index.d.ts +0 -3
- package/dist/bin/index.d.ts.map +0 -1
- package/dist/commands/app/create.d.ts +0 -8
- package/dist/commands/app/create.d.ts.map +0 -1
- package/dist/commands/app/create.js +0 -325
- package/dist/commands/app/create.js.map +0 -1
- package/dist/commands/app/credentials.d.ts +0 -6
- package/dist/commands/app/credentials.d.ts.map +0 -1
- package/dist/commands/app/credentials.js +0 -114
- package/dist/commands/app/credentials.js.map +0 -1
- package/dist/commands/app/delete.d.ts +0 -6
- package/dist/commands/app/delete.d.ts.map +0 -1
- package/dist/commands/app/delete.js +0 -167
- package/dist/commands/app/delete.js.map +0 -1
- package/dist/commands/app/list.d.ts +0 -4
- package/dist/commands/app/list.d.ts.map +0 -1
- package/dist/commands/app/list.js +0 -71
- package/dist/commands/app/list.js.map +0 -1
- package/dist/commands/app/scaffold.d.ts +0 -5
- package/dist/commands/app/scaffold.d.ts.map +0 -1
- package/dist/commands/app/scaffold.js +0 -213
- package/dist/commands/app/scaffold.js.map +0 -1
- package/dist/commands/app/scopes.d.ts +0 -2
- package/dist/commands/app/scopes.d.ts.map +0 -1
- package/dist/commands/app/scopes.js +0 -81
- package/dist/commands/app/scopes.js.map +0 -1
- package/dist/commands/app/start.d.ts +0 -5
- package/dist/commands/app/start.d.ts.map +0 -1
- package/dist/commands/app/start.js +0 -220
- package/dist/commands/app/start.js.map +0 -1
- package/dist/commands/app/update.d.ts +0 -2
- package/dist/commands/app/update.d.ts.map +0 -1
- package/dist/commands/app/update.js +0 -444
- package/dist/commands/app/update.js.map +0 -1
- package/dist/commands/definitions.d.ts +0 -5
- package/dist/commands/definitions.d.ts.map +0 -1
- package/dist/commands/definitions.js +0 -262
- package/dist/commands/definitions.js.map +0 -1
- package/dist/commands/init.d.ts +0 -2
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -138
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/login.d.ts +0 -6
- package/dist/commands/login.d.ts.map +0 -1
- package/dist/commands/login.js +0 -251
- package/dist/commands/login.js.map +0 -1
- package/dist/commands/logout.d.ts +0 -5
- package/dist/commands/logout.d.ts.map +0 -1
- package/dist/commands/logout.js +0 -54
- package/dist/commands/logout.js.map +0 -1
- package/dist/commands/skill/install.d.ts +0 -4
- package/dist/commands/skill/install.d.ts.map +0 -1
- package/dist/commands/skill/install.js +0 -29
- package/dist/commands/skill/install.js.map +0 -1
- package/dist/commands/skill/uninstall.d.ts +0 -4
- package/dist/commands/skill/uninstall.d.ts.map +0 -1
- package/dist/commands/skill/uninstall.js +0 -23
- package/dist/commands/skill/uninstall.js.map +0 -1
- package/dist/commands/whoami.d.ts +0 -4
- package/dist/commands/whoami.d.ts.map +0 -1
- package/dist/commands/whoami.js +0 -85
- package/dist/commands/whoami.js.map +0 -1
- package/dist/container.d.ts +0 -7
- package/dist/container.d.ts.map +0 -1
- package/dist/container.js +0 -28
- package/dist/container.js.map +0 -1
- package/dist/lang/en.d.ts +0 -162
- package/dist/lang/en.d.ts.map +0 -1
- package/dist/lang/en.js +0 -189
- package/dist/lang/en.js.map +0 -1
- package/dist/lib/abort.d.ts +0 -3
- package/dist/lib/abort.d.ts.map +0 -1
- package/dist/lib/abort.js +0 -30
- package/dist/lib/abort.js.map +0 -1
- package/dist/lib/auth-guard.d.ts +0 -13
- package/dist/lib/auth-guard.d.ts.map +0 -1
- package/dist/lib/auth-guard.js +0 -60
- package/dist/lib/auth-guard.js.map +0 -1
- package/dist/lib/browser.d.ts +0 -2
- package/dist/lib/browser.d.ts.map +0 -1
- package/dist/lib/browser.js +0 -16
- package/dist/lib/browser.js.map +0 -1
- package/dist/lib/cli-version.d.ts +0 -2
- package/dist/lib/cli-version.d.ts.map +0 -1
- package/dist/lib/cli-version.js +0 -59
- package/dist/lib/cli-version.js.map +0 -1
- package/dist/lib/command-handler.d.ts +0 -10
- package/dist/lib/command-handler.d.ts.map +0 -1
- package/dist/lib/command-handler.js +0 -16
- package/dist/lib/command-handler.js.map +0 -1
- package/dist/lib/command-registry.d.ts +0 -28
- package/dist/lib/command-registry.d.ts.map +0 -1
- package/dist/lib/command-registry.js +0 -54
- package/dist/lib/command-registry.js.map +0 -1
- package/dist/lib/config.d.ts +0 -83
- package/dist/lib/config.d.ts.map +0 -1
- package/dist/lib/config.js +0 -430
- package/dist/lib/config.js.map +0 -1
- package/dist/lib/constants.d.ts +0 -48
- package/dist/lib/constants.d.ts.map +0 -1
- package/dist/lib/constants.js +0 -121
- package/dist/lib/constants.js.map +0 -1
- package/dist/lib/errors.d.ts +0 -30
- package/dist/lib/errors.d.ts.map +0 -1
- package/dist/lib/errors.js +0 -66
- package/dist/lib/errors.js.map +0 -1
- package/dist/lib/exit-codes.d.ts +0 -9
- package/dist/lib/exit-codes.d.ts.map +0 -1
- package/dist/lib/exit-codes.js +0 -12
- package/dist/lib/exit-codes.js.map +0 -1
- package/dist/lib/hidden-input.d.ts +0 -2
- package/dist/lib/hidden-input.d.ts.map +0 -1
- package/dist/lib/hidden-input.js +0 -78
- package/dist/lib/hidden-input.js.map +0 -1
- package/dist/lib/json-output.d.ts +0 -6
- package/dist/lib/json-output.d.ts.map +0 -1
- package/dist/lib/json-output.js +0 -11
- package/dist/lib/json-output.js.map +0 -1
- package/dist/lib/logger.d.ts +0 -11
- package/dist/lib/logger.d.ts.map +0 -1
- package/dist/lib/logger.js +0 -110
- package/dist/lib/logger.js.map +0 -1
- package/dist/lib/oauth-freshness.d.ts +0 -30
- package/dist/lib/oauth-freshness.d.ts.map +0 -1
- package/dist/lib/oauth-freshness.js +0 -61
- package/dist/lib/oauth-freshness.js.map +0 -1
- package/dist/lib/port.d.ts +0 -25
- package/dist/lib/port.d.ts.map +0 -1
- package/dist/lib/port.js +0 -103
- package/dist/lib/port.js.map +0 -1
- package/dist/lib/telemetry.d.ts +0 -9
- package/dist/lib/telemetry.d.ts.map +0 -1
- package/dist/lib/telemetry.js +0 -57
- package/dist/lib/telemetry.js.map +0 -1
- package/dist/lib/ui.d.ts +0 -14
- package/dist/lib/ui.d.ts.map +0 -1
- package/dist/lib/ui.js +0 -75
- package/dist/lib/ui.js.map +0 -1
- package/dist/lib/update-notifier.d.ts +0 -37
- package/dist/lib/update-notifier.d.ts.map +0 -1
- package/dist/lib/update-notifier.js +0 -298
- package/dist/lib/update-notifier.js.map +0 -1
- package/dist/lib/validators.d.ts +0 -55
- package/dist/lib/validators.d.ts.map +0 -1
- package/dist/lib/validators.js +0 -166
- package/dist/lib/validators.js.map +0 -1
- package/dist/services/account.d.ts +0 -8
- package/dist/services/account.d.ts.map +0 -1
- package/dist/services/account.js +0 -15
- package/dist/services/account.js.map +0 -1
- package/dist/services/app.d.ts +0 -38
- package/dist/services/app.d.ts.map +0 -1
- package/dist/services/app.js +0 -145
- package/dist/services/app.js.map +0 -1
- package/dist/services/browser-auth.d.ts +0 -15
- package/dist/services/browser-auth.d.ts.map +0 -1
- package/dist/services/browser-auth.js +0 -188
- package/dist/services/browser-auth.js.map +0 -1
- package/dist/services/normalize-app-id.d.ts +0 -12
- package/dist/services/normalize-app-id.d.ts.map +0 -1
- package/dist/services/normalize-app-id.js +0 -38
- package/dist/services/normalize-app-id.js.map +0 -1
- package/dist/services/oauth-metadata.d.ts +0 -7
- package/dist/services/oauth-metadata.d.ts.map +0 -1
- package/dist/services/oauth-metadata.js +0 -43
- package/dist/services/oauth-metadata.js.map +0 -1
- package/dist/services/oauth-refresh.d.ts +0 -14
- package/dist/services/oauth-refresh.d.ts.map +0 -1
- package/dist/services/oauth-refresh.js +0 -70
- package/dist/services/oauth-refresh.js.map +0 -1
- package/dist/services/scopes-html.d.ts +0 -3
- package/dist/services/scopes-html.d.ts.map +0 -1
- package/dist/services/scopes-html.js +0 -516
- package/dist/services/scopes-html.js.map +0 -1
- package/dist/services/scopes-web.d.ts +0 -12
- package/dist/services/scopes-web.d.ts.map +0 -1
- package/dist/services/scopes-web.js +0 -95
- package/dist/services/scopes-web.js.map +0 -1
- package/dist/services/skill.d.ts +0 -48
- package/dist/services/skill.d.ts.map +0 -1
- package/dist/services/skill.js +0 -223
- package/dist/services/skill.js.map +0 -1
- package/dist/skills/index.d.ts +0 -47
- package/dist/skills/index.d.ts.map +0 -1
- package/dist/skills/index.js +0 -61
- package/dist/skills/index.js.map +0 -1
- package/dist/templates/files/app-config.json.tmpl +0 -25
- package/dist/templates/index.d.ts +0 -36
- package/dist/templates/index.d.ts.map +0 -1
- package/dist/templates/index.js +0 -105
- package/dist/templates/index.js.map +0 -1
- package/dist/types.d.ts +0 -32
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -3
- package/dist/types.js.map +0 -1
- /package/dist/{templates → bin}/files/gitignore.tmpl +0 -0
- /package/dist/{templates → bin}/files/src/oauth/package.json.tmpl +0 -0
package/dist/commands/login.js
DELETED
|
@@ -1,251 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.loginCommand = void 0;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const config_1 = require("../lib/config");
|
|
9
|
-
const constants_1 = require("../lib/constants");
|
|
10
|
-
const browser_1 = require("../lib/browser");
|
|
11
|
-
const logger_1 = require("../lib/logger");
|
|
12
|
-
const en_1 = require("../lang/en");
|
|
13
|
-
const errors_1 = require("../lib/errors");
|
|
14
|
-
const exit_codes_1 = require("../lib/exit-codes");
|
|
15
|
-
const command_handler_1 = require("../lib/command-handler");
|
|
16
|
-
const create_1 = require("./app/create");
|
|
17
|
-
const container_1 = require("../container");
|
|
18
|
-
const ui_1 = require("../lib/ui");
|
|
19
|
-
const json_output_1 = require("../lib/json-output");
|
|
20
|
-
const browser_auth_1 = require("../services/browser-auth");
|
|
21
|
-
// On re-login, the cached per-app clientId/clientSecret values belong to apps
|
|
22
|
-
// owned by the previously-authenticated organization. A new organization cannot
|
|
23
|
-
// see those apps, so keeping the cache risks surfacing stale or wrong-account
|
|
24
|
-
// secrets. Same organization → keep the cache to avoid an unnecessary refetch.
|
|
25
|
-
function wipeAppsCacheIfAccountChanged(newOrganizationId) {
|
|
26
|
-
const previousOrganizationId = (0, config_1.getOrganizationId)();
|
|
27
|
-
if (previousOrganizationId && previousOrganizationId !== newOrganizationId) {
|
|
28
|
-
(0, config_1.clearAppsCache)();
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
async function promptApiKey() {
|
|
32
|
-
const { key } = await inquirer_1.default.prompt([
|
|
33
|
-
{
|
|
34
|
-
type: 'password',
|
|
35
|
-
name: 'key',
|
|
36
|
-
message: en_1.messages.AUTH_PROMPT_API_KEY,
|
|
37
|
-
mask: '*',
|
|
38
|
-
validate: (input) => input.trim().length > 0 || 'API key cannot be empty',
|
|
39
|
-
},
|
|
40
|
-
]);
|
|
41
|
-
return key;
|
|
42
|
-
}
|
|
43
|
-
// Explicit `--browser` wins over BREVO_API_KEY so users can force the
|
|
44
|
-
// browser flow on machines that have a stale env var. Browser login still
|
|
45
|
-
// needs a TTY (the inquirer prompts after success), so reject early in
|
|
46
|
-
// non-interactive contexts instead of hanging until timeout.
|
|
47
|
-
async function resolveLoginMethod(forceBrowser, apiKey) {
|
|
48
|
-
if (forceBrowser) {
|
|
49
|
-
if (!process.stdin.isTTY) {
|
|
50
|
-
throw new errors_1.CliError(en_1.messages.AUTH_BROWSER_NON_INTERACTIVE);
|
|
51
|
-
}
|
|
52
|
-
return 'browser';
|
|
53
|
-
}
|
|
54
|
-
if (apiKey) {
|
|
55
|
-
return 'api-key';
|
|
56
|
-
}
|
|
57
|
-
if (!process.stdin.isTTY) {
|
|
58
|
-
throw new errors_1.CliError(en_1.messages.AUTH_BROWSER_NON_INTERACTIVE);
|
|
59
|
-
}
|
|
60
|
-
const { chosen } = await inquirer_1.default.prompt([
|
|
61
|
-
{
|
|
62
|
-
type: 'list',
|
|
63
|
-
name: 'chosen',
|
|
64
|
-
message: en_1.messages.AUTH_PROMPT_METHOD,
|
|
65
|
-
choices: [
|
|
66
|
-
{ name: 'Browser (sign in through your browser)', value: 'browser' },
|
|
67
|
-
{ name: 'API key (paste from your Brevo dashboard)', value: 'api-key' },
|
|
68
|
-
],
|
|
69
|
-
default: 'browser',
|
|
70
|
-
},
|
|
71
|
-
]);
|
|
72
|
-
return chosen;
|
|
73
|
-
}
|
|
74
|
-
// One interactive retry on a 401: the first paste is easy to fumble. A second
|
|
75
|
-
// 401 (or any other error) propagates to the command handler.
|
|
76
|
-
async function retryApiKeyValidation(quiet) {
|
|
77
|
-
const retryKey = await promptApiKey();
|
|
78
|
-
const retrySpinner = (0, ui_1.createSpinner)('Validating API key...', { silent: quiet });
|
|
79
|
-
try {
|
|
80
|
-
const account = await container_1.accountService.validateApiKey(retryKey);
|
|
81
|
-
retrySpinner.stop();
|
|
82
|
-
return { account, apiKey: retryKey };
|
|
83
|
-
}
|
|
84
|
-
catch (retryErr) {
|
|
85
|
-
retrySpinner.stop();
|
|
86
|
-
if (retryErr instanceof errors_1.ApiError && retryErr.statusCode === 401) {
|
|
87
|
-
throw new errors_1.CliError(en_1.messages.AUTH_INVALID_KEY, exit_codes_1.EXIT_CODES.AUTH_FAILURE);
|
|
88
|
-
}
|
|
89
|
-
throw retryErr;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
async function validateApiKeyWithRetry(apiKey, quiet) {
|
|
93
|
-
const spinner = (0, ui_1.createSpinner)('Validating API key...', { silent: quiet });
|
|
94
|
-
try {
|
|
95
|
-
const account = await container_1.accountService.validateApiKey(apiKey);
|
|
96
|
-
spinner.stop();
|
|
97
|
-
return { account, apiKey };
|
|
98
|
-
}
|
|
99
|
-
catch (err) {
|
|
100
|
-
spinner.stop();
|
|
101
|
-
if (!(err instanceof errors_1.ApiError && err.statusCode === 401)) {
|
|
102
|
-
throw err;
|
|
103
|
-
}
|
|
104
|
-
(0, logger_1.logError)(en_1.messages.AUTH_INVALID_KEY);
|
|
105
|
-
if (!quiet)
|
|
106
|
-
(0, logger_1.logInfo)(` ${en_1.messages.AUTH_GET_KEY_URL}`);
|
|
107
|
-
if (!process.stdin.isTTY) {
|
|
108
|
-
throw err;
|
|
109
|
-
}
|
|
110
|
-
return retryApiKeyValidation(quiet);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
async function loginWithApiKey(envApiKey, quiet) {
|
|
114
|
-
let apiKey = envApiKey;
|
|
115
|
-
if (!apiKey) {
|
|
116
|
-
(0, browser_1.openBrowser)(constants_1.BREVO_DASHBOARD_API_KEYS_URL);
|
|
117
|
-
if (!quiet) {
|
|
118
|
-
process.stdout.write(en_1.messages.AUTH_HINT(constants_1.BREVO_DASHBOARD_API_KEYS_URL, constants_1.BREVO_API_KEY_DOCS_URL));
|
|
119
|
-
}
|
|
120
|
-
apiKey = await promptApiKey();
|
|
121
|
-
}
|
|
122
|
-
if (!apiKey) {
|
|
123
|
-
throw new errors_1.CliError('No API key provided.');
|
|
124
|
-
}
|
|
125
|
-
const validated = await validateApiKeyWithRetry(apiKey, quiet);
|
|
126
|
-
if (!validated.account) {
|
|
127
|
-
throw new errors_1.CliError('Authentication failed.');
|
|
128
|
-
}
|
|
129
|
-
wipeAppsCacheIfAccountChanged(validated.account.organization_id);
|
|
130
|
-
(0, config_1.saveCredentials)(validated.apiKey, {
|
|
131
|
-
email: validated.account.email,
|
|
132
|
-
organizationId: validated.account.organization_id,
|
|
133
|
-
userId: validated.account.user_id,
|
|
134
|
-
});
|
|
135
|
-
return validated.account;
|
|
136
|
-
}
|
|
137
|
-
async function loginWithBrowser(quiet) {
|
|
138
|
-
if (!quiet)
|
|
139
|
-
(0, logger_1.logInfo)(` ${en_1.messages.AUTH_BROWSER_OPENING}`);
|
|
140
|
-
const tokens = await (0, browser_auth_1.runBrowserLoginFlow)({
|
|
141
|
-
proxyUrl: constants_1.OAUTH_PROXY_URL,
|
|
142
|
-
openBrowser: browser_1.openBrowser,
|
|
143
|
-
onWaiting: (url) => {
|
|
144
|
-
if (quiet)
|
|
145
|
-
return;
|
|
146
|
-
(0, logger_1.logInfo)(` ${en_1.messages.AUTH_BROWSER_FALLBACK_URL(url)}`);
|
|
147
|
-
(0, logger_1.logInfo)(` ${en_1.messages.AUTH_BROWSER_WAITING}`);
|
|
148
|
-
},
|
|
149
|
-
});
|
|
150
|
-
// Persist tokens before validating /v3/account so transient API failures
|
|
151
|
-
// (5xx, 424, network) don't force the user to redo the OAuth dance. Only
|
|
152
|
-
// a 401 unambiguously means the token itself is bad — see catch below.
|
|
153
|
-
const tokensToStore = {
|
|
154
|
-
accessToken: tokens.accessToken,
|
|
155
|
-
refreshToken: tokens.refreshToken,
|
|
156
|
-
expiresIn: tokens.expiresIn,
|
|
157
|
-
tokenType: tokens.tokenType,
|
|
158
|
-
scope: tokens.scope,
|
|
159
|
-
};
|
|
160
|
-
(0, config_1.saveOauthCredentials)(tokensToStore);
|
|
161
|
-
if (!quiet)
|
|
162
|
-
(0, logger_1.logSuccess)(en_1.messages.AUTH_BROWSER_TOKENS_RECEIVED((0, config_1.getCredentialsPath)()));
|
|
163
|
-
const spinner = (0, ui_1.createSpinner)('Finishing login...', { silent: quiet });
|
|
164
|
-
let account;
|
|
165
|
-
try {
|
|
166
|
-
account = await container_1.client.getWithBearer(constants_1.ENDPOINTS.ACCOUNT, tokens.accessToken, tokens.tokenType);
|
|
167
|
-
}
|
|
168
|
-
catch (err) {
|
|
169
|
-
if (err instanceof errors_1.ApiError && err.statusCode === 401) {
|
|
170
|
-
(0, config_1.clearCredentials)();
|
|
171
|
-
}
|
|
172
|
-
throw err;
|
|
173
|
-
}
|
|
174
|
-
finally {
|
|
175
|
-
spinner.stop();
|
|
176
|
-
}
|
|
177
|
-
if (!account) {
|
|
178
|
-
throw new errors_1.CliError('Authentication failed.');
|
|
179
|
-
}
|
|
180
|
-
wipeAppsCacheIfAccountChanged(account.organization_id);
|
|
181
|
-
(0, config_1.saveOauthCredentials)(tokensToStore, {
|
|
182
|
-
email: account.email,
|
|
183
|
-
organizationId: account.organization_id,
|
|
184
|
-
userId: account.user_id,
|
|
185
|
-
});
|
|
186
|
-
return account;
|
|
187
|
-
}
|
|
188
|
-
async function showNextSteps() {
|
|
189
|
-
let apps = [];
|
|
190
|
-
const appsSpinner = (0, ui_1.createSpinner)('Checking your apps...');
|
|
191
|
-
try {
|
|
192
|
-
apps = await container_1.appService.fetchAppsList();
|
|
193
|
-
}
|
|
194
|
-
catch {
|
|
195
|
-
// Best-effort: the next-steps box is a nicety — login already succeeded.
|
|
196
|
-
}
|
|
197
|
-
finally {
|
|
198
|
-
appsSpinner.stop();
|
|
199
|
-
}
|
|
200
|
-
if (apps.length > 0) {
|
|
201
|
-
(0, ui_1.printBox)("What's next?", [
|
|
202
|
-
constants_1.CLI.APP_CREATE,
|
|
203
|
-
constants_1.CLI.APP_LIST,
|
|
204
|
-
constants_1.CLI.APP_SCAFFOLD(),
|
|
205
|
-
constants_1.CLI.APP_CREDENTIALS(),
|
|
206
|
-
]);
|
|
207
|
-
return;
|
|
208
|
-
}
|
|
209
|
-
if (!process.stdin.isTTY) {
|
|
210
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.AUTH_NEXT}\n`);
|
|
211
|
-
return;
|
|
212
|
-
}
|
|
213
|
-
process.stdout.write('\n');
|
|
214
|
-
const { shouldCreate } = await inquirer_1.default.prompt([
|
|
215
|
-
{
|
|
216
|
-
type: 'confirm',
|
|
217
|
-
name: 'shouldCreate',
|
|
218
|
-
message: en_1.messages.AUTH_CREATE_APP_PROMPT,
|
|
219
|
-
default: true,
|
|
220
|
-
},
|
|
221
|
-
]);
|
|
222
|
-
if (shouldCreate) {
|
|
223
|
-
process.stdout.write('\n');
|
|
224
|
-
await (0, create_1.createCommand)({});
|
|
225
|
-
return;
|
|
226
|
-
}
|
|
227
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.AUTH_NEXT}\n`);
|
|
228
|
-
}
|
|
229
|
-
exports.loginCommand = (0, command_handler_1.withCommandHandler)(async (options) => {
|
|
230
|
-
// In --json mode, stdout must be a single JSON document. Suppress the
|
|
231
|
-
// welcome banner and every human-oriented log on stdout below; errors
|
|
232
|
-
// still go to stderr via logError, which is fine for JSON consumers.
|
|
233
|
-
const quiet = !!options.json;
|
|
234
|
-
if (!quiet) {
|
|
235
|
-
process.stdout.write(`\n ${en_1.messages.AUTH_WELCOME}\n`);
|
|
236
|
-
process.stdout.write(' ──────────────────────────────────────\n');
|
|
237
|
-
}
|
|
238
|
-
const apiKey = process.env.BREVO_API_KEY;
|
|
239
|
-
const method = await resolveLoginMethod(options.browser, apiKey);
|
|
240
|
-
const account = method === 'api-key' ? await loginWithApiKey(apiKey, quiet) : await loginWithBrowser(quiet);
|
|
241
|
-
if (options.json) {
|
|
242
|
-
(0, json_output_1.jsonOutput)({ authenticated: true, email: account.email, company: account.companyName });
|
|
243
|
-
return;
|
|
244
|
-
}
|
|
245
|
-
(0, logger_1.logSuccess)(en_1.messages.AUTH_SUCCESS(account.email));
|
|
246
|
-
(0, logger_1.logInfo)(en_1.messages.AUTH_SAVED((0, config_1.getCredentialsPath)()));
|
|
247
|
-
if (options.suppressNextSteps)
|
|
248
|
-
return;
|
|
249
|
-
await showNextSteps();
|
|
250
|
-
});
|
|
251
|
-
//# sourceMappingURL=login.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,aAAa;YACE,OAAO;WAAS,OAAO;mBAyClD,CAAC"}
|
package/dist/commands/logout.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.logoutCommand = void 0;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const config_1 = require("../lib/config");
|
|
9
|
-
const logger_1 = require("../lib/logger");
|
|
10
|
-
const errors_1 = require("../lib/errors");
|
|
11
|
-
const en_1 = require("../lang/en");
|
|
12
|
-
const command_handler_1 = require("../lib/command-handler");
|
|
13
|
-
const json_output_1 = require("../lib/json-output");
|
|
14
|
-
exports.logoutCommand = (0, command_handler_1.withCommandHandler)(async (options) => {
|
|
15
|
-
if (!(0, config_1.isAuthenticated)()) {
|
|
16
|
-
if (options.json) {
|
|
17
|
-
(0, json_output_1.jsonOutput)({ loggedOut: false, reason: 'not_authenticated' });
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.AUTH_NOT_LOGGED_IN}\n`);
|
|
21
|
-
}
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
if (!options.force && !options.json && (0, config_1.hasAppCredentials)()) {
|
|
25
|
-
if (!process.stdin.isTTY) {
|
|
26
|
-
throw new errors_1.CliError(en_1.messages.AUTH_LOGOUT_NON_INTERACTIVE);
|
|
27
|
-
}
|
|
28
|
-
(0, logger_1.logWarn)(en_1.messages.AUTH_LOGOUT_APP_WARNING);
|
|
29
|
-
const { confirmed } = await inquirer_1.default.prompt([
|
|
30
|
-
{
|
|
31
|
-
type: 'confirm',
|
|
32
|
-
name: 'confirmed',
|
|
33
|
-
message: en_1.messages.AUTH_LOGOUT_CONFIRM,
|
|
34
|
-
default: false,
|
|
35
|
-
},
|
|
36
|
-
]);
|
|
37
|
-
if (!confirmed) {
|
|
38
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.ABORTED}\n`);
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
const appCount = (0, config_1.countAppCredentials)();
|
|
43
|
-
(0, config_1.deleteCredentialsFile)();
|
|
44
|
-
if (options.json) {
|
|
45
|
-
(0, json_output_1.jsonOutput)({ loggedOut: true, appsCleared: appCount });
|
|
46
|
-
}
|
|
47
|
-
else if (appCount > 0) {
|
|
48
|
-
(0, logger_1.logSuccess)(en_1.messages.AUTH_LOGGED_OUT_WITH_APPS(appCount));
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
(0, logger_1.logSuccess)(en_1.messages.AUTH_LOGGED_OUT);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
//# sourceMappingURL=logout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAgC;AAChC,0CAKuB;AACvB,0CAA6D;AAC7D,0CAAyC;AACzC,mCAAsC;AACtC,4DAA4D;AAC5D,oDAAgD;AAEnC,QAAA,aAAa,GAAG,IAAA,oCAAkB,EAC7C,KAAK,EAAE,OAA4C,EAAiB,EAAE;IACpE,IAAI,CAAC,IAAA,wBAAe,GAAE,EAAE,CAAC;QACvB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAA,wBAAU,EAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,IAAA,gBAAO,EAAC,OAAO,aAAQ,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAClD,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAA,0BAAiB,GAAE,EAAE,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,iBAAQ,CAAC,aAAQ,CAAC,2BAA2B,CAAC,CAAC;QAC3D,CAAC;QACD,IAAA,gBAAO,EAAC,aAAQ,CAAC,uBAAuB,CAAC,CAAC;QAC1C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAC;YAC1C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,aAAQ,CAAC,mBAAmB;gBACrC,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAA,gBAAO,EAAC,OAAO,aAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,4BAAmB,GAAE,CAAC;IACvC,IAAA,8BAAqB,GAAE,CAAC;IAExB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,IAAA,wBAAU,EAAC,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzD,CAAC;SAAM,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACxB,IAAA,mBAAU,EAAC,aAAQ,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,IAAA,mBAAU,EAAC,aAAQ,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc;WACA,OAAO;mBAsBjC,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.installCommand = void 0;
|
|
4
|
-
const logger_1 = require("../../lib/logger");
|
|
5
|
-
const en_1 = require("../../lang/en");
|
|
6
|
-
const command_handler_1 = require("../../lib/command-handler");
|
|
7
|
-
const json_output_1 = require("../../lib/json-output");
|
|
8
|
-
const skill_1 = require("../../services/skill");
|
|
9
|
-
exports.installCommand = (0, command_handler_1.withCommandHandler)(async (options) => {
|
|
10
|
-
const results = skill_1.skillService.installAll();
|
|
11
|
-
if (options.json) {
|
|
12
|
-
(0, json_output_1.jsonOutput)(results);
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
let installedFresh = false;
|
|
16
|
-
for (const r of results) {
|
|
17
|
-
if (r.status === 'already-installed') {
|
|
18
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.SKILL_INSTALL_ALREADY(r.name, r.version)}`);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
(0, logger_1.logSuccess)(en_1.messages.SKILL_INSTALL_SUCCESS(r.name, r.version, r.path));
|
|
22
|
-
installedFresh = true;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
if (installedFresh) {
|
|
26
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.SKILL_INSTALL_CLAUDE_ONLY}`);
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
//# sourceMappingURL=install.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AACvD,sCAAyC;AACzC,+DAA+D;AAC/D,uDAAmD;AACnD,gDAAoD;AAEvC,QAAA,cAAc,GAAG,IAAA,oCAAkB,EAC9C,KAAK,EAAE,OAA2B,EAAiB,EAAE;IACnD,MAAM,OAAO,GAAG,oBAAY,CAAC,UAAU,EAAE,CAAC;IAE1C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,IAAA,wBAAU,EAAC,OAAO,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YACrC,IAAA,gBAAO,EAAC,OAAO,aAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,IAAA,mBAAU,EAAC,aAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACtE,cAAc,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACnB,IAAA,gBAAO,EAAC,OAAO,aAAQ,CAAC,yBAAyB,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB;WACF,OAAO;mBAiBjC,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.uninstallCommand = void 0;
|
|
4
|
-
const logger_1 = require("../../lib/logger");
|
|
5
|
-
const en_1 = require("../../lang/en");
|
|
6
|
-
const command_handler_1 = require("../../lib/command-handler");
|
|
7
|
-
const json_output_1 = require("../../lib/json-output");
|
|
8
|
-
const skill_1 = require("../../services/skill");
|
|
9
|
-
exports.uninstallCommand = (0, command_handler_1.withCommandHandler)(async (options) => {
|
|
10
|
-
const results = skill_1.skillService.uninstallAll();
|
|
11
|
-
if (options.json) {
|
|
12
|
-
(0, json_output_1.jsonOutput)(results.map((r) => ({ uninstalled: true, ...r })));
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
if (results.length === 0) {
|
|
16
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.SKILL_UNINSTALL_NONE}`);
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
for (const r of results) {
|
|
20
|
-
(0, logger_1.logSuccess)(en_1.messages.SKILL_UNINSTALL_SUCCESS(r.name, r.path));
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
//# sourceMappingURL=uninstall.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AACvD,sCAAyC;AACzC,+DAA+D;AAC/D,uDAAmD;AACnD,gDAAoD;AAEvC,QAAA,gBAAgB,GAAG,IAAA,oCAAkB,EAChD,KAAK,EAAE,OAA2B,EAAiB,EAAE;IACnD,MAAM,OAAO,GAAG,oBAAY,CAAC,YAAY,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,IAAA,wBAAU,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9D,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,IAAA,gBAAO,EAAC,OAAO,aAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAChD,OAAO;IACT,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAA,mBAAU,EAAC,aAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"AA0CA,eAAO,MAAM,aAAa;WACC,OAAO;mBAgDjC,CAAC"}
|
package/dist/commands/whoami.js
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.whoamiCommand = void 0;
|
|
4
|
-
const logger_1 = require("../lib/logger");
|
|
5
|
-
const en_1 = require("../lang/en");
|
|
6
|
-
const errors_1 = require("../lib/errors");
|
|
7
|
-
const config_1 = require("../lib/config");
|
|
8
|
-
const container_1 = require("../container");
|
|
9
|
-
const command_handler_1 = require("../lib/command-handler");
|
|
10
|
-
const json_output_1 = require("../lib/json-output");
|
|
11
|
-
const ui_1 = require("../lib/ui");
|
|
12
|
-
// Check for mismatches between stored credentials and API response
|
|
13
|
-
function findCredentialMismatches(account) {
|
|
14
|
-
const mismatched = [];
|
|
15
|
-
const storedEmail = (0, config_1.getEmail)();
|
|
16
|
-
const storedOrgId = (0, config_1.getOrganizationId)();
|
|
17
|
-
const storedUserId = (0, config_1.getUserId)();
|
|
18
|
-
if (storedEmail && storedEmail !== account.email)
|
|
19
|
-
mismatched.push('email');
|
|
20
|
-
if (storedOrgId && storedOrgId !== account.organization_id)
|
|
21
|
-
mismatched.push('organization');
|
|
22
|
-
if (storedUserId != null && storedUserId !== account.user_id)
|
|
23
|
-
mismatched.push('user id');
|
|
24
|
-
return mismatched;
|
|
25
|
-
}
|
|
26
|
-
function renderAccount(account) {
|
|
27
|
-
const authKind = (0, config_1.getAuthCred)()?.kind;
|
|
28
|
-
let kindLabel = '';
|
|
29
|
-
if (authKind === 'oauth')
|
|
30
|
-
kindLabel = ' (browser login)';
|
|
31
|
-
else if (authKind === 'api-key')
|
|
32
|
-
kindLabel = ' (API key)';
|
|
33
|
-
(0, logger_1.logInfo)(`\n ${en_1.messages.WHOAMI_AUTHENTICATED(account.email, account.companyName || 'N/A')}${kindLabel}\n` +
|
|
34
|
-
` Organization: ${account.organization_id}\n` +
|
|
35
|
-
` User ID: ${account.user_id}\n`);
|
|
36
|
-
}
|
|
37
|
-
exports.whoamiCommand = (0, command_handler_1.withCommandHandler)(async (options) => {
|
|
38
|
-
// No stored key at all
|
|
39
|
-
if (!(0, config_1.isAuthenticated)()) {
|
|
40
|
-
if (options.json) {
|
|
41
|
-
(0, json_output_1.jsonOutput)({ authenticated: false, reason: 'no_key' });
|
|
42
|
-
}
|
|
43
|
-
throw new errors_1.CliError(en_1.messages.WHOAMI_NOT_AUTHENTICATED);
|
|
44
|
-
}
|
|
45
|
-
// Key exists — validate it against the API
|
|
46
|
-
const spinner = (0, ui_1.createSpinner)('Checking credentials...', { silent: options.json });
|
|
47
|
-
try {
|
|
48
|
-
const account = await container_1.accountService.getAccount();
|
|
49
|
-
spinner.stop();
|
|
50
|
-
const mismatched = findCredentialMismatches(account);
|
|
51
|
-
if (mismatched.length > 0) {
|
|
52
|
-
if (options.json) {
|
|
53
|
-
(0, json_output_1.jsonOutput)({
|
|
54
|
-
authenticated: false,
|
|
55
|
-
reason: 'credential_mismatch',
|
|
56
|
-
mismatchedFields: mismatched,
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
throw new errors_1.CliError(en_1.messages.WHOAMI_CREDENTIAL_MISMATCH(mismatched));
|
|
60
|
-
}
|
|
61
|
-
if (options.json) {
|
|
62
|
-
(0, json_output_1.jsonOutput)({
|
|
63
|
-
authenticated: true,
|
|
64
|
-
authKind: (0, config_1.getAuthCred)()?.kind,
|
|
65
|
-
email: account.email,
|
|
66
|
-
company: account.companyName || '',
|
|
67
|
-
organizationId: account.organization_id,
|
|
68
|
-
userId: account.user_id,
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
renderAccount(account);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
catch (err) {
|
|
76
|
-
spinner.stop();
|
|
77
|
-
if (err instanceof errors_1.CliError)
|
|
78
|
-
throw err;
|
|
79
|
-
if (options.json) {
|
|
80
|
-
(0, json_output_1.jsonOutput)({ authenticated: false, reason: 'expired' });
|
|
81
|
-
}
|
|
82
|
-
throw new errors_1.CliError(en_1.messages.AUTH_EXPIRED);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
//# sourceMappingURL=whoami.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"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"}
|
package/dist/container.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ApiClient } from './api/client';
|
|
2
|
-
import { AccountService } from './services/account';
|
|
3
|
-
import { AppService } from './services/app';
|
|
4
|
-
export declare const client: ApiClient;
|
|
5
|
-
export declare const accountService: AccountService;
|
|
6
|
-
export declare const appService: AppService;
|
|
7
|
-
//# sourceMappingURL=container.d.ts.map
|
package/dist/container.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAwB,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAoB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAoB9D,eAAO,MAAM,MAAM,WAAuE,CAAC;AAE3F,eAAO,MAAM,cAAc,EAAE,cAA6C,CAAC;AAC3E,eAAO,MAAM,UAAU,EAAE,UAAqC,CAAC"}
|
package/dist/container.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.appService = exports.accountService = exports.client = void 0;
|
|
4
|
-
const client_1 = require("./api/client");
|
|
5
|
-
const account_1 = require("./services/account");
|
|
6
|
-
const app_1 = require("./services/app");
|
|
7
|
-
const constants_1 = require("./lib/constants");
|
|
8
|
-
const config_1 = require("./lib/config");
|
|
9
|
-
/**
|
|
10
|
-
* Application container — creates and holds all shared instances.
|
|
11
|
-
* Initialized once by bin/index.ts. Commands import services from here.
|
|
12
|
-
*
|
|
13
|
-
* The auth-failure handler is wired in bin/index.ts so it can branch on
|
|
14
|
-
* stored auth kind (oauth: refresh+retry; api-key: prompt for new key)
|
|
15
|
-
* without pulling UI/prompt concerns into the container.
|
|
16
|
-
*/
|
|
17
|
-
function buildAuthHeader() {
|
|
18
|
-
const auth = (0, config_1.getAuthCred)();
|
|
19
|
-
if (!auth)
|
|
20
|
-
return undefined;
|
|
21
|
-
if (auth.kind === 'api-key')
|
|
22
|
-
return { 'api-key': auth.apiKey };
|
|
23
|
-
return { Authorization: `${auth.tokenType} ${auth.accessToken}` };
|
|
24
|
-
}
|
|
25
|
-
exports.client = new client_1.ApiClient({ baseUrl: constants_1.API_BASE, getAuthHeader: buildAuthHeader });
|
|
26
|
-
exports.accountService = (0, account_1.createAccountService)(exports.client);
|
|
27
|
-
exports.appService = (0, app_1.createAppService)(exports.client);
|
|
28
|
-
//# sourceMappingURL=container.js.map
|
package/dist/container.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":";;;AAAA,yCAAyC;AACzC,gDAA0E;AAC1E,wCAA8D;AAC9D,+CAA2C;AAC3C,yCAA2C;AAE3C;;;;;;;GAOG;AAEH,SAAS,eAAe;IACtB,MAAM,IAAI,GAAG,IAAA,oBAAW,GAAE,CAAC;IAC3B,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IAC/D,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;AACpE,CAAC;AAEY,QAAA,MAAM,GAAG,IAAI,kBAAS,CAAC,EAAE,OAAO,EAAE,oBAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC,CAAC;AAE9E,QAAA,cAAc,GAAmB,IAAA,8BAAoB,EAAC,cAAM,CAAC,CAAC;AAC9D,QAAA,UAAU,GAAe,IAAA,sBAAgB,EAAC,cAAM,CAAC,CAAC"}
|