agent-gateway-mcp 0.5.1 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,8 @@
3
3
  "allow": [
4
4
  "mcp__gateway__discover",
5
5
  "mcp__gateway__call",
6
- "mcp__gateway__list_connections"
6
+ "mcp__gateway__list_connections",
7
+ "mcp__gateway__auth"
7
8
  ]
8
9
  }
9
10
  }
package/dist/auth.d.ts CHANGED
@@ -1,9 +1,19 @@
1
- import type { StoredToken } from "./types.js";
1
+ import type { StoredToken, ServiceGuide } from "./types.js";
2
+ export interface TestResult {
3
+ passed: boolean;
4
+ status_code?: number;
5
+ error_message?: string;
6
+ suggestion?: string;
7
+ }
2
8
  export interface AuthResult {
3
9
  success: boolean;
4
10
  message: string;
5
11
  token?: StoredToken;
12
+ needs_credentials?: boolean;
13
+ setup_instructions?: string;
14
+ guide?: ServiceGuide;
15
+ test_result?: TestResult;
6
16
  }
7
- export declare function authenticate(domain: string): Promise<AuthResult>;
17
+ export declare function authenticate(domain: string, overrideClientId?: string, overrideClientSecret?: string): Promise<AuthResult>;
8
18
  export declare function storeApiKey(domain: string, apiKey: string): Promise<AuthResult>;
9
19
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,YAAY,CAAC;AAExD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAkFtE;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,CAAC,CA8BrB"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAY,YAAY,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,WAAW,CAAC,EAAE,UAAU,CAAC;CAC1B;AAwKD,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,GAC5B,OAAO,CAAC,UAAU,CAAC,CA6FrB;AAID,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,CAAC,CAoDrB"}
package/dist/auth.js CHANGED
@@ -1,7 +1,163 @@
1
1
  import http from "http";
2
- import { loadConfig, getToken, storeToken, storeConnection, getOAuthCredentials } from "./config.js";
2
+ import { loadConfig, getToken, storeToken, storeConnection } from "./config.js";
3
+ import { getCredential, storeCredential } from "./credentials.js";
3
4
  import { fetchManifest } from "./discovery.js";
4
- export async function authenticate(domain) {
5
+ import { getGuide } from "./guides.js";
6
+ // ─── Setup instructions for LLM relay ────────────────────────────
7
+ async function buildSetupInstructions(domain, manifest) {
8
+ const guide = await getGuide(domain);
9
+ if (guide) {
10
+ return { text: formatGuideInstructions(domain, guide), guide };
11
+ }
12
+ // Fallback: generic instructions from manifest
13
+ const auth = manifest.auth;
14
+ const lines = [];
15
+ if (auth.type === "api_key") {
16
+ lines.push(`## Setup: ${manifest.name} (API Key)`);
17
+ lines.push("");
18
+ if (auth.setup_url) {
19
+ lines.push(`1. Go to: ${auth.setup_url}`);
20
+ lines.push("2. Create or copy your API key");
21
+ }
22
+ else {
23
+ lines.push("1. Visit the service's developer portal and create an API key");
24
+ }
25
+ lines.push(`3. Call the auth tool again with: domain="${domain}" and api_key="<your-key>"`);
26
+ lines.push("");
27
+ lines.push(`Header: ${auth.header ?? "Authorization"}${auth.prefix ? ` (prefix: "${auth.prefix}")` : ""}`);
28
+ }
29
+ else if (auth.type === "oauth2") {
30
+ lines.push(`## Setup: ${manifest.name} (OAuth2)`);
31
+ lines.push("");
32
+ if (auth.setup_url) {
33
+ lines.push(`1. Go to: ${auth.setup_url}`);
34
+ }
35
+ else {
36
+ lines.push("1. Go to the service's developer portal / OAuth app settings");
37
+ }
38
+ lines.push("2. Create an OAuth application");
39
+ lines.push("3. Set the redirect URI to: http://localhost:9876/callback");
40
+ if (auth.scopes?.length) {
41
+ lines.push(`4. Required scopes: ${auth.scopes.join(", ")}`);
42
+ }
43
+ lines.push(`${auth.scopes?.length ? "5" : "4"}. Copy the client_id and client_secret`);
44
+ lines.push(`${auth.scopes?.length ? "6" : "5"}. Call the auth tool again with: domain="${domain}", client_id="<id>", client_secret="<secret>"`);
45
+ }
46
+ return { text: lines.join("\n") };
47
+ }
48
+ function formatGuideInstructions(domain, guide) {
49
+ const lines = [];
50
+ lines.push(`## Setup: ${guide.display_name} (${guide.auth_type})`);
51
+ lines.push("");
52
+ // Steps
53
+ for (let i = 0; i < guide.steps.length; i++) {
54
+ lines.push(`${i + 1}. ${guide.steps[i]}`);
55
+ }
56
+ lines.push("");
57
+ // Credential fields
58
+ lines.push("### Credentials needed:");
59
+ for (const field of guide.credential_fields) {
60
+ const masked = field.secret ? " (secret)" : "";
61
+ const placeholder = field.placeholder ? ` — e.g. ${field.placeholder}` : "";
62
+ lines.push(` - **${field.label}**${masked}: ${field.description}${placeholder}`);
63
+ }
64
+ lines.push("");
65
+ // How to provide
66
+ if (guide.auth_type === "api_key") {
67
+ lines.push(`Call auth with: domain="${domain}" and api_key="<your-key>"`);
68
+ }
69
+ else if (guide.auth_type === "oauth2") {
70
+ lines.push(`Call auth with: domain="${domain}", client_id="<id>", client_secret="<secret>"`);
71
+ }
72
+ // Notes
73
+ if (guide.notes.length > 0) {
74
+ lines.push("");
75
+ lines.push("### Notes:");
76
+ for (const note of guide.notes) {
77
+ lines.push(` - ${note}`);
78
+ }
79
+ }
80
+ // Test endpoint info
81
+ if (guide.test_endpoint) {
82
+ lines.push("");
83
+ lines.push(`After setup, credentials will be tested via ${guide.test_endpoint.method} ${guide.test_endpoint.path}${guide.test_endpoint.description ? ` (${guide.test_endpoint.description})` : ""}`);
84
+ }
85
+ return lines.join("\n");
86
+ }
87
+ // ─── Credential testing ─────────────────────────────────────────
88
+ async function testCredential(domain, guide, manifest, token) {
89
+ if (!guide.test_endpoint) {
90
+ return { passed: true };
91
+ }
92
+ const te = guide.test_endpoint;
93
+ const url = `${manifest.base_url}${te.path}`;
94
+ const headers = {
95
+ Accept: "application/json",
96
+ };
97
+ // Inject auth header using same logic as caller.ts
98
+ if (token.access_token !== "none") {
99
+ if (token.type === "api_key") {
100
+ const authHeader = manifest.auth.header ?? "Authorization";
101
+ const prefix = manifest.auth.prefix ?? "Bearer";
102
+ headers[authHeader] = `${prefix} ${token.access_token}`;
103
+ }
104
+ else {
105
+ headers["Authorization"] = `Bearer ${token.access_token}`;
106
+ }
107
+ }
108
+ try {
109
+ const res = await fetch(url, {
110
+ method: te.method,
111
+ headers,
112
+ signal: AbortSignal.timeout(10000),
113
+ });
114
+ const expectedStatus = te.expected_status;
115
+ const passed = expectedStatus
116
+ ? res.status === expectedStatus
117
+ : res.status >= 200 && res.status < 300;
118
+ if (passed) {
119
+ return { passed: true, status_code: res.status };
120
+ }
121
+ // Failure — provide helpful suggestion
122
+ let suggestion;
123
+ if (res.status === 401) {
124
+ suggestion = "The key appears to be invalid or expired. Double-check it and try again.";
125
+ }
126
+ else if (res.status === 403) {
127
+ suggestion = "The key is valid but lacks required permissions/scopes.";
128
+ }
129
+ else if (res.status === 429) {
130
+ suggestion = "Rate limited. The credential may be correct — try again later.";
131
+ }
132
+ else {
133
+ suggestion = `Unexpected status ${res.status}. The credential may still be correct.`;
134
+ }
135
+ return {
136
+ passed: false,
137
+ status_code: res.status,
138
+ error_message: `HTTP ${res.status}`,
139
+ suggestion,
140
+ };
141
+ }
142
+ catch (err) {
143
+ return {
144
+ passed: false,
145
+ error_message: err instanceof Error ? err.message : "unknown error",
146
+ suggestion: "Service may be temporarily unavailable. Credentials may still be correct.",
147
+ };
148
+ }
149
+ }
150
+ // ─── Main authenticate flow ──────────────────────────────────────
151
+ export async function authenticate(domain, overrideClientId, overrideClientSecret) {
152
+ // If override credentials passed, store them first
153
+ if (overrideClientId && overrideClientSecret) {
154
+ storeCredential(domain, {
155
+ type: "oauth2",
156
+ client_id: overrideClientId,
157
+ client_secret: overrideClientSecret,
158
+ added_at: new Date().toISOString(),
159
+ });
160
+ }
5
161
  // Check existing token
6
162
  const existing = getToken(domain);
7
163
  if (existing && existing.access_token) {
@@ -55,19 +211,19 @@ export async function authenticate(domain) {
55
211
  };
56
212
  }
57
213
  if (auth.type === "api_key") {
214
+ // Check credentials.json for a stored API key
215
+ const cred = getCredential(domain);
216
+ if (cred && cred.type === "api_key") {
217
+ return storeApiKey(domain, cred.api_key);
218
+ }
219
+ // No stored key — return setup instructions
220
+ const { text: instructions, guide } = await buildSetupInstructions(domain, manifest);
58
221
  return {
59
222
  success: false,
60
- message: [
61
- `${manifest.name} requires an API key.`,
62
- auth.setup_url ? `Get your key at: ${auth.setup_url}` : "",
63
- `Once you have it, the agent should call the auth tool with:`,
64
- ` domain: "${domain}"`,
65
- `Then provide the API key when prompted.`,
66
- ``,
67
- `Or set the key manually: the header is "${auth.header ?? "Authorization"}"${auth.prefix ? ` with prefix "${auth.prefix}"` : ""}.`,
68
- ]
69
- .filter(Boolean)
70
- .join("\n"),
223
+ needs_credentials: true,
224
+ setup_instructions: instructions,
225
+ guide,
226
+ message: instructions,
71
227
  };
72
228
  }
73
229
  if (auth.type === "oauth2") {
@@ -78,6 +234,7 @@ export async function authenticate(domain) {
78
234
  message: `Unknown auth type: ${auth.type}`,
79
235
  };
80
236
  }
237
+ // ─── Store API key ───────────────────────────────────────────────
81
238
  export async function storeApiKey(domain, apiKey) {
82
239
  let manifest;
83
240
  try {
@@ -94,7 +251,13 @@ export async function storeApiKey(domain, apiKey) {
94
251
  type: "api_key",
95
252
  access_token: apiKey,
96
253
  };
254
+ // Dual-write: tokens.json (runtime) + credentials.json (persistent)
97
255
  storeToken(token);
256
+ storeCredential(domain, {
257
+ type: "api_key",
258
+ api_key: apiKey,
259
+ added_at: new Date().toISOString(),
260
+ });
98
261
  storeConnection({
99
262
  domain,
100
263
  service_name: manifest.name,
@@ -102,30 +265,99 @@ export async function storeApiKey(domain, apiKey) {
102
265
  token,
103
266
  connected_at: new Date().toISOString(),
104
267
  });
268
+ // Test credential if guide has a test endpoint
269
+ const guide = await getGuide(domain);
270
+ let test_result;
271
+ if (guide?.test_endpoint) {
272
+ test_result = await testCredential(domain, guide, manifest, token);
273
+ }
274
+ const testMsg = test_result
275
+ ? test_result.passed
276
+ ? `\nCredential test: PASSED (${guide.test_endpoint.method} ${guide.test_endpoint.path} → ${test_result.status_code ?? "OK"})`
277
+ : `\nCredential test: FAILED — ${test_result.error_message}. ${test_result.suggestion ?? ""}`
278
+ : "";
105
279
  return {
106
280
  success: true,
107
- message: `API key stored for ${manifest.name}. Connected.`,
281
+ message: `API key stored for ${manifest.name}. Connected.${testMsg}`,
108
282
  token,
283
+ guide: guide ?? undefined,
284
+ test_result,
109
285
  };
110
286
  }
287
+ // ─── Registry proxy helpers ──────────────────────────────────────
288
+ async function fetchRegistryOAuthClient(domain) {
289
+ try {
290
+ const config = loadConfig();
291
+ const res = await fetch(`${config.registry_url}/api/services/${encodeURIComponent(domain)}/oauth-client`, {
292
+ signal: AbortSignal.timeout(10000),
293
+ });
294
+ if (!res.ok)
295
+ return null;
296
+ const data = await res.json();
297
+ if (!data.success)
298
+ return null;
299
+ return data.data;
300
+ }
301
+ catch {
302
+ return null;
303
+ }
304
+ }
305
+ async function registryTokenExchange(domain, params) {
306
+ try {
307
+ const config = loadConfig();
308
+ const res = await fetch(`${config.registry_url}/api/services/${encodeURIComponent(domain)}/oauth-token`, {
309
+ method: "POST",
310
+ headers: { "Content-Type": "application/json" },
311
+ body: JSON.stringify(params),
312
+ signal: AbortSignal.timeout(15000),
313
+ });
314
+ if (!res.ok)
315
+ return null;
316
+ const data = await res.json();
317
+ if (!data.success)
318
+ return null;
319
+ return data.data;
320
+ }
321
+ catch {
322
+ return null;
323
+ }
324
+ }
325
+ // ─── Token refresh ───────────────────────────────────────────────
111
326
  async function tryRefreshToken(domain, existing) {
112
327
  try {
113
328
  const manifest = await fetchManifest(domain);
114
329
  if (manifest.auth.type !== "oauth2" || !manifest.auth.token_url) {
115
330
  return null;
116
331
  }
117
- const isGoogle = manifest.auth.authorization_url?.includes("google.com") || manifest.auth.authorization_url?.includes("googleapis.com");
118
- const isGitHub = manifest.auth.authorization_url?.includes("github.com");
119
- const oauthProvider = isGoogle ? "google" : isGitHub ? "github" : null;
120
- const creds = oauthProvider ? getOAuthCredentials(oauthProvider) : null;
332
+ // 1. Try registry proxy first
333
+ const registryResult = await registryTokenExchange(domain, {
334
+ grant_type: "refresh_token",
335
+ refresh_token: existing.refresh_token,
336
+ });
337
+ if (registryResult) {
338
+ const token = {
339
+ domain,
340
+ type: "oauth2",
341
+ access_token: registryResult.access_token,
342
+ refresh_token: registryResult.refresh_token ?? existing.refresh_token,
343
+ expires_at: registryResult.expires_in
344
+ ? Date.now() + registryResult.expires_in * 1000
345
+ : undefined,
346
+ scopes: existing.scopes,
347
+ };
348
+ storeToken(token);
349
+ return token;
350
+ }
351
+ // 2. Try local credentials
352
+ const cred = getCredential(domain);
353
+ if (!cred || cred.type !== "oauth2")
354
+ return null;
121
355
  const refreshParams = {
122
356
  grant_type: "refresh_token",
123
357
  refresh_token: existing.refresh_token,
358
+ client_id: cred.client_id,
359
+ client_secret: cred.client_secret,
124
360
  };
125
- if (creds) {
126
- refreshParams.client_id = creds.clientId;
127
- refreshParams.client_secret = creds.clientSecret;
128
- }
129
361
  const body = new URLSearchParams(refreshParams);
130
362
  const res = await fetch(manifest.auth.token_url, {
131
363
  method: "POST",
@@ -153,6 +385,7 @@ async function tryRefreshToken(domain, existing) {
153
385
  return null;
154
386
  }
155
387
  }
388
+ // ─── OAuth2 flow ─────────────────────────────────────────────────
156
389
  async function startOAuth2Flow(domain, manifest) {
157
390
  const auth = manifest.auth;
158
391
  if (!auth.authorization_url || !auth.token_url) {
@@ -165,16 +398,42 @@ async function startOAuth2Flow(domain, manifest) {
165
398
  const port = config.auth_callback_port;
166
399
  const redirectUri = `http://localhost:${port}/callback`;
167
400
  const state = Math.random().toString(36).substring(2);
168
- // Determine OAuth credentials based on the provider domain
169
401
  const isGoogle = auth.authorization_url.includes("google.com") || auth.authorization_url.includes("googleapis.com");
170
- const isGitHub = auth.authorization_url.includes("github.com");
171
- const oauthProvider = isGoogle ? "google" : isGitHub ? "github" : null;
172
- const credentials = oauthProvider ? getOAuthCredentials(oauthProvider) : null;
402
+ // Resolve OAuth credentials
403
+ let clientId = null;
404
+ let clientSecret = null;
405
+ let useRegistryProxy = false;
406
+ let extraAuthParams = null;
407
+ // 1. Local credentials (user-owned)
408
+ const cred = getCredential(domain);
409
+ if (cred && cred.type === "oauth2") {
410
+ clientId = cred.client_id;
411
+ clientSecret = cred.client_secret;
412
+ }
413
+ // 2. Registry proxy (future paid tier)
414
+ if (!clientId) {
415
+ const registryClient = await fetchRegistryOAuthClient(domain);
416
+ if (registryClient) {
417
+ clientId = registryClient.client_id;
418
+ extraAuthParams = registryClient.extra_params ?? null;
419
+ useRegistryProxy = true;
420
+ }
421
+ }
422
+ // 3. No credentials available — return setup instructions
423
+ if (!clientId) {
424
+ const { text: instructions, guide } = await buildSetupInstructions(domain, manifest);
425
+ return {
426
+ success: false,
427
+ needs_credentials: true,
428
+ setup_instructions: instructions,
429
+ guide,
430
+ message: instructions,
431
+ };
432
+ }
433
+ // Build authorization URL
173
434
  const authUrl = new URL(auth.authorization_url);
174
435
  authUrl.searchParams.set("response_type", "code");
175
- if (credentials) {
176
- authUrl.searchParams.set("client_id", credentials.clientId);
177
- }
436
+ authUrl.searchParams.set("client_id", clientId);
178
437
  authUrl.searchParams.set("redirect_uri", redirectUri);
179
438
  authUrl.searchParams.set("state", state);
180
439
  if (isGoogle) {
@@ -184,6 +443,11 @@ async function startOAuth2Flow(domain, manifest) {
184
443
  if (auth.scopes?.length) {
185
444
  authUrl.searchParams.set("scope", auth.scopes.join(" "));
186
445
  }
446
+ if (extraAuthParams) {
447
+ for (const [key, value] of Object.entries(extraAuthParams)) {
448
+ authUrl.searchParams.set(key, String(value));
449
+ }
450
+ }
187
451
  // Start local callback server
188
452
  const tokenPromise = new Promise((resolve, reject) => {
189
453
  const timeout = setTimeout(() => {
@@ -215,26 +479,39 @@ async function startOAuth2Flow(domain, manifest) {
215
479
  }
216
480
  // Exchange code for token
217
481
  try {
218
- const tokenParams = {
219
- grant_type: "authorization_code",
220
- code,
221
- redirect_uri: redirectUri,
222
- };
223
- if (credentials) {
224
- tokenParams.client_id = credentials.clientId;
225
- tokenParams.client_secret = credentials.clientSecret;
482
+ let tokenData;
483
+ if (useRegistryProxy) {
484
+ const result = await registryTokenExchange(domain, {
485
+ code,
486
+ redirect_uri: redirectUri,
487
+ });
488
+ if (!result)
489
+ throw new Error("Token exchange via registry failed.");
490
+ tokenData = result;
226
491
  }
227
- const tokenBody = new URLSearchParams(tokenParams);
228
- const tokenRes = await fetch(auth.token_url, {
229
- method: "POST",
230
- headers: { "Content-Type": "application/x-www-form-urlencoded" },
231
- body: tokenBody.toString(),
232
- signal: AbortSignal.timeout(10000),
233
- });
234
- if (!tokenRes.ok) {
235
- throw new Error(`Token exchange failed: HTTP ${tokenRes.status}`);
492
+ else {
493
+ // Direct exchange with user's own credentials
494
+ const tokenParams = {
495
+ grant_type: "authorization_code",
496
+ code,
497
+ redirect_uri: redirectUri,
498
+ client_id: clientId,
499
+ };
500
+ if (clientSecret) {
501
+ tokenParams.client_secret = clientSecret;
502
+ }
503
+ const tokenBody = new URLSearchParams(tokenParams);
504
+ const tokenRes = await fetch(auth.token_url, {
505
+ method: "POST",
506
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
507
+ body: tokenBody.toString(),
508
+ signal: AbortSignal.timeout(10000),
509
+ });
510
+ if (!tokenRes.ok) {
511
+ throw new Error(`Token exchange failed: HTTP ${tokenRes.status}`);
512
+ }
513
+ tokenData = (await tokenRes.json());
236
514
  }
237
- const tokenData = (await tokenRes.json());
238
515
  const token = {
239
516
  domain,
240
517
  type: "oauth2",
@@ -282,10 +559,23 @@ async function startOAuth2Flow(domain, manifest) {
282
559
  token,
283
560
  connected_at: new Date().toISOString(),
284
561
  });
562
+ // Test credential if guide has a test endpoint
563
+ const guide = await getGuide(domain);
564
+ let test_result;
565
+ if (guide?.test_endpoint) {
566
+ test_result = await testCredential(domain, guide, manifest, token);
567
+ }
568
+ const testMsg = test_result
569
+ ? test_result.passed
570
+ ? `\nCredential test: PASSED (${guide.test_endpoint.method} ${guide.test_endpoint.path} → ${test_result.status_code ?? "OK"})`
571
+ : `\nCredential test: FAILED — ${test_result.error_message}. ${test_result.suggestion ?? ""}`
572
+ : "";
285
573
  return {
286
574
  success: true,
287
- message: `${openMessage}\n\nConnected to ${manifest.name} via OAuth2.`,
575
+ message: `${openMessage}\n\nConnected to ${manifest.name} via OAuth2.${testMsg}`,
288
576
  token,
577
+ guide: guide ?? undefined,
578
+ test_result,
289
579
  };
290
580
  }
291
581
  catch (err) {
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACrG,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAS/C,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc;IAC/C,uBAAuB;IACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QACtC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,wBAAwB,MAAM,GAAG;YAC1C,KAAK,EAAE,QAAQ;SAChB,CAAC;IACJ,CAAC;IAED,2CAA2C;IAC3C,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QACjE,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1D,IAAI,SAAS,EAAE,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,uBAAuB,MAAM,GAAG;gBACzC,KAAK,EAAE,SAAS;aACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,0CAA0C;IAC1C,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,gBAAgB,MAAM,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;SAC3F,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAE3B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAgB;YACzB,MAAM;YACN,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,MAAM;SACrB,CAAC;QACF,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,eAAe,CAAC;YACd,MAAM;YACN,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,SAAS,EAAE,MAAM;YACjB,KAAK;YACL,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvC,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,GAAG,QAAQ,CAAC,IAAI,yCAAyC;YAClE,KAAK;SACN,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP,GAAG,QAAQ,CAAC,IAAI,uBAAuB;gBACvC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE;gBAC1D,6DAA6D;gBAC7D,cAAc,MAAM,GAAG;gBACvB,yCAAyC;gBACzC,EAAE;gBACF,2CAA2C,IAAI,CAAC,MAAM,IAAI,eAAe,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;aACnI;iBACE,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,IAAI,CAAC;SACd,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,sBAAsB,IAAI,CAAC,IAAI,EAAE;KAC3C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAc,EACd,MAAc;IAEd,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,gBAAgB,MAAM,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;SAC3F,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAgB;QACzB,MAAM;QACN,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAU,CAAC,KAAK,CAAC,CAAC;IAClB,eAAe,CAAC;QACd,MAAM;QACN,YAAY,EAAE,QAAQ,CAAC,IAAI;QAC3B,SAAS,EAAE,SAAS;QACpB,KAAK;QACL,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACvC,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,sBAAsB,QAAQ,CAAC,IAAI,cAAc;QAC1D,KAAK;KACN,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAc,EACd,QAAqB;IAErB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACxI,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;QACzF,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAExE,MAAM,aAAa,GAA2B;YAC5C,UAAU,EAAE,eAAe;YAC3B,aAAa,EAAE,QAAQ,CAAC,aAAc;SACvC,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,aAAa,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;YACzC,aAAa,CAAC,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC;QACnD,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE;YAC/C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;YAChE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;YACrB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QAEzB,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAI7B,CAAC;QAEF,MAAM,KAAK,GAAgB;YACzB,MAAM;YACN,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa;YAC3D,UAAU,EAAE,IAAI,CAAC,UAAU;gBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI;gBACrC,CAAC,CAAC,SAAS;YACb,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;QAEF,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAc,EACd,QAAkB;IAElB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,8DAA8D;SACxE,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,kBAAkB,CAAC;IACvC,MAAM,WAAW,GAAG,oBAAoB,IAAI,WAAW,CAAC;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEtD,2DAA2D;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAkB,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,iBAAkB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACtH,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAkB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE9E,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChD,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAClD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IACtD,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACzC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACnD,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACxB,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,8BAA8B;IAC9B,MAAM,YAAY,GAAG,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAChE,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC,CAAC;QAChF,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAClD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,oBAAoB,IAAI,EAAE,CAAC,CAAC;YAEhE,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACjC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAE5C,IAAI,KAAK,EAAE,CAAC;gBACV,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;gBACpD,GAAG,CAAC,GAAG,CAAC,+CAA+C,KAAK,kDAAkD,CAAC,CAAC;gBAChH,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC3C,OAAO;YACT,CAAC;YAED,IAAI,CAAC,IAAI,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;gBACrC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;gBACpD,GAAG,CAAC,GAAG,CAAC,2FAA2F,CAAC,CAAC;gBACrG,OAAO;YACT,CAAC;YAED,0BAA0B;YAC1B,IAAI,CAAC;gBACH,MAAM,WAAW,GAA2B;oBAC1C,UAAU,EAAE,oBAAoB;oBAChC,IAAI;oBACJ,YAAY,EAAE,WAAW;iBAC1B,CAAC;gBACF,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC;oBAC7C,WAAW,CAAC,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC;gBACvD,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;gBAEnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,SAAU,EAAE;oBAC5C,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;oBAChE,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE;oBAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;iBACnC,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,CAAC;gBAED,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAKvC,CAAC;gBAEF,MAAM,KAAK,GAAgB;oBACzB,MAAM;oBACN,IAAI,EAAE,QAAQ;oBACd,YAAY,EAAE,SAAS,CAAC,YAAY;oBACpC,aAAa,EAAE,SAAS,CAAC,aAAa;oBACtC,UAAU,EAAE,SAAS,CAAC,UAAU;wBAC9B,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,UAAU,GAAG,IAAI;wBAC1C,CAAC,CAAC,SAAS;oBACb,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM;iBACnD,CAAC;gBAEF,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;gBACpD,GAAG,CAAC,GAAG,CACL,gCAAgC,QAAQ,CAAC,IAAI,6EAA6E,CAC3H,CAAC;gBAEF,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;gBACpD,GAAG,CAAC,GAAG,CAAC,gDAAgD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,oBAAoB,CAAC,CAAC;gBAClI,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;YACvB,eAAe;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,eAAe;IACf,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAC5C,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;IAED,MAAM,WAAW,GAAG,+EAA+E,OAAO,CAAC,QAAQ,EAAE,gDAAgD,IAAI,cAAc,CAAC;IAExL,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC;QACjC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,eAAe,CAAC;YACd,MAAM;YACN,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,SAAS,EAAE,QAAQ;YACnB,KAAK;YACL,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvC,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,GAAG,WAAW,oBAAoB,QAAQ,CAAC,IAAI,cAAc;YACtE,KAAK;SACN,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,GAAG,WAAW,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;SAClG,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -13,15 +13,6 @@ export declare function getConnection(domain: string): Connection | undefined;
13
13
  export declare function storeConnection(connection: Connection): void;
14
14
  export declare function getAllConnections(): Connection[];
15
15
  export declare function getAllTokens(): StoredToken[];
16
- export declare function syncTokensToCloud(): Promise<{
17
- success: boolean;
18
- error?: string;
19
- }>;
20
- export declare function syncTokensFromCloud(): Promise<{
21
- success: boolean;
22
- count: number;
23
- error?: string;
24
- }>;
25
16
  export declare function getCachedDiscovery(query: string): RegistryDiscoverResponse | undefined;
26
17
  export declare function setCachedDiscovery(query: string, results: RegistryDiscoverResponse): void;
27
18
  export declare function getCachedManifest(domain: string): Manifest | undefined;
@@ -29,8 +20,4 @@ export declare function setCachedManifest(domain: string, manifest: Manifest): v
29
20
  export declare function getCachedCapability(domain: string, capName: string): CapabilityDetail | undefined;
30
21
  export declare function setCachedCapability(domain: string, capName: string, detail: CapabilityDetail): void;
31
22
  export declare function clearAllCaches(): void;
32
- export declare function getOAuthCredentials(provider: "google" | "github"): {
33
- clientId: string;
34
- clientSecret: string;
35
- };
36
23
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EAIZ,QAAQ,EACR,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAqBpB,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEhD;AAoBD,wBAAgB,UAAU,IAAI,aAAa,CA+B1C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAQtD;AAID,wBAAgB,WAAW,IAAI,YAAY,GAAG,SAAS,CAGtD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAI1D;AAED,wBAAgB,aAAa,IAAI,IAAI,CAKpC;AAED,wBAAgB,aAAa,IAAI,OAAO,CAGvC;AA2BD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAQhE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAInD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAKhD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAGpE;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAI5D;AAED,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAGhD;AAED,wBAAgB,YAAY,IAAI,WAAW,EAAE,CAG5C;AAID,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwCvF;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA+CxG;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS,CAEtF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAEzF;AAGD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE1E;AAGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEjG;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAEnG;AAGD,wBAAgB,cAAc,IAAI,IAAI,CAQrC;AAyBD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAkB7G"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EAEZ,QAAQ,EACR,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAqBpB,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEhD;AAoBD,wBAAgB,UAAU,IAAI,aAAa,CA+B1C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAQtD;AAID,wBAAgB,WAAW,IAAI,YAAY,GAAG,SAAS,CAGtD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAI1D;AAED,wBAAgB,aAAa,IAAI,IAAI,CAIpC;AAED,wBAAgB,aAAa,IAAI,OAAO,CAGvC;AA2BD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAQhE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAInD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAKhD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAGpE;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAI5D;AAED,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAGhD;AAED,wBAAgB,YAAY,IAAI,WAAW,EAAE,CAG5C;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS,CAEtF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAEzF;AAGD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE1E;AAGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEjG;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAEnG;AAGD,wBAAgB,cAAc,IAAI,IAAI,CAQrC"}