latchkey 3.18.2 → 3.19.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 (44) hide show
  1. package/README.md +3 -0
  2. package/dist/src/apiCredentials/base.d.ts +16 -1
  3. package/dist/src/apiCredentials/base.d.ts.map +1 -1
  4. package/dist/src/apiCredentials/base.js +14 -3
  5. package/dist/src/apiCredentials/base.js.map +1 -1
  6. package/dist/src/apiCredentials/utils.d.ts +4 -0
  7. package/dist/src/apiCredentials/utils.d.ts.map +1 -1
  8. package/dist/src/apiCredentials/utils.js +33 -5
  9. package/dist/src/apiCredentials/utils.js.map +1 -1
  10. package/dist/src/browserStateImport.d.ts +9 -0
  11. package/dist/src/browserStateImport.d.ts.map +1 -1
  12. package/dist/src/browserStateImport.js +47 -10
  13. package/dist/src/browserStateImport.js.map +1 -1
  14. package/dist/src/cliCommands.d.ts.map +1 -1
  15. package/dist/src/cliCommands.js +5 -1
  16. package/dist/src/cliCommands.js.map +1 -1
  17. package/dist/src/errorMessages.d.ts +26 -2
  18. package/dist/src/errorMessages.d.ts.map +1 -1
  19. package/dist/src/errorMessages.js +30 -2
  20. package/dist/src/errorMessages.js.map +1 -1
  21. package/dist/src/index.d.ts +1 -0
  22. package/dist/src/index.d.ts.map +1 -1
  23. package/dist/src/index.js +1 -0
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/services/github.d.ts.map +1 -1
  26. package/dist/src/services/github.js +5 -1
  27. package/dist/src/services/github.js.map +1 -1
  28. package/dist/src/sharedOperations.d.ts +6 -0
  29. package/dist/src/sharedOperations.d.ts.map +1 -1
  30. package/dist/src/sharedOperations.js +9 -1
  31. package/dist/src/sharedOperations.js.map +1 -1
  32. package/dist/src/version.d.ts +1 -1
  33. package/dist/src/version.js +1 -1
  34. package/dist/tests/apiCredentials.test.js +20 -0
  35. package/dist/tests/apiCredentials.test.js.map +1 -1
  36. package/dist/tests/apiCredentialsUtils.test.js +76 -0
  37. package/dist/tests/apiCredentialsUtils.test.js.map +1 -1
  38. package/dist/tests/browserStateImport.test.js +46 -2
  39. package/dist/tests/browserStateImport.test.js.map +1 -1
  40. package/dist/tests/cli.test.js +20 -1
  41. package/dist/tests/cli.test.js.map +1 -1
  42. package/dist/tests/sharedOperations.test.js +41 -1
  43. package/dist/tests/sharedOperations.test.js.map +1 -1
  44. package/package.json +1 -1
package/README.md CHANGED
@@ -280,6 +280,9 @@ Each entry reports a credentials status of:
280
280
  - `valid`
281
281
  - `unknown` (for user-registered services)
282
282
 
283
+ When it is known that the credentials stop working after some
284
+ date the entry also carries a `validUntil` timestamp.
285
+
283
286
  A service with no stored credentials shows an empty `credentials`
284
287
  object.
285
288
 
@@ -42,6 +42,13 @@ export interface ApiCredentials {
42
42
  * Returns true if expired, false if valid, or undefined if expiration is unknown.
43
43
  */
44
44
  isExpired(): boolean | undefined;
45
+ /**
46
+ * The ISO 8601 timestamp after which the credentials stop working for good,
47
+ * when known. Unlike `isExpired()`, which also covers access tokens that a
48
+ * refresh brings back, this is a hard limit: only a new login helps past it.
49
+ * Refreshable credentials leave it out.
50
+ */
51
+ readonly validUntil?: string;
45
52
  }
46
53
  /**
47
54
  * How stored credentials of one `objectType` are read back. This is the static
@@ -60,19 +67,27 @@ export interface ApiCredentialsType {
60
67
  export declare const AuthorizationBearerSchema: z.ZodObject<{
61
68
  objectType: z.ZodLiteral<"authorizationBearer">;
62
69
  token: z.ZodString;
70
+ validUntil: z.ZodOptional<z.ZodString>;
63
71
  }, "strip", z.ZodTypeAny, {
64
72
  objectType: "authorizationBearer";
65
73
  token: string;
74
+ validUntil?: string | undefined;
66
75
  }, {
67
76
  objectType: "authorizationBearer";
68
77
  token: string;
78
+ validUntil?: string | undefined;
69
79
  }>;
70
80
  export type AuthorizationBearerData = z.infer<typeof AuthorizationBearerSchema>;
71
81
  export declare class AuthorizationBearer implements ApiCredentials {
72
82
  static readonly objectType: "authorizationBearer";
73
83
  readonly objectType: "authorizationBearer";
74
84
  readonly token: string;
75
- constructor(token: string);
85
+ /**
86
+ * Set by logins that know how long the token they created lasts; a token
87
+ * supplied by hand has no known lifetime.
88
+ */
89
+ readonly validUntil?: string;
90
+ constructor(token: string, validUntil?: string);
76
91
  injectIntoCurlCall(curlArguments: readonly string[]): Promise<readonly string[]>;
77
92
  isExpired(): boolean | undefined;
78
93
  toJSON(): AuthorizationBearerData;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/apiCredentials/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/apiCredentials/base.ts"],"names":[],"mappings":"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"}
@@ -15,29 +15,40 @@ export var ApiCredentialStatus;
15
15
  export const AuthorizationBearerSchema = z.object({
16
16
  objectType: z.literal('authorizationBearer'),
17
17
  token: z.string(),
18
+ validUntil: z.string().optional(),
18
19
  });
19
20
  export class AuthorizationBearer {
20
21
  static objectType = 'authorizationBearer';
21
22
  objectType = AuthorizationBearer.objectType;
22
23
  token;
23
- constructor(token) {
24
+ /**
25
+ * Set by logins that know how long the token they created lasts; a token
26
+ * supplied by hand has no known lifetime.
27
+ */
28
+ validUntil;
29
+ constructor(token, validUntil) {
24
30
  this.token = token;
31
+ this.validUntil = validUntil;
25
32
  }
26
33
  injectIntoCurlCall(curlArguments) {
27
34
  return Promise.resolve(['-H', `Authorization: Bearer ${this.token}`, ...curlArguments]);
28
35
  }
29
36
  isExpired() {
30
- return undefined;
37
+ if (this.validUntil === undefined) {
38
+ return undefined;
39
+ }
40
+ return Date.now() >= new Date(this.validUntil).getTime();
31
41
  }
32
42
  toJSON() {
33
43
  return {
34
44
  objectType: this.objectType,
35
45
  token: this.token,
46
+ validUntil: this.validUntil,
36
47
  };
37
48
  }
38
49
  static fromJSON(data) {
39
50
  const parsed = AuthorizationBearerSchema.parse(data);
40
- return new AuthorizationBearer(parsed.token);
51
+ return new AuthorizationBearer(parsed.token, parsed.validUntil);
41
52
  }
42
53
  }
43
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/apiCredentials/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/apiCredentials/base.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,10 @@ import type { Service } from '../services/core/base.js';
8
8
  * Try to refresh expired credentials if the service supports it.
9
9
  * Returns refreshed credentials if successful, otherwise returns the original credentials.
10
10
  *
11
+ * Only one refresh per service and account runs at a time within the process:
12
+ * concurrent callers wait for the refresh already in flight and share its
13
+ * result instead of issuing their own refresh request.
14
+ *
11
15
  * When `disableRefresh` is true, the credentials are never refreshed. This is
12
16
  * used when the credentials are shared with another machine and refreshing here
13
17
  * would otherwise risk exhausting the refresh token.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/apiCredentials/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAExD;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,UAAQ,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CAUzB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,cAAc,GAAG,IAAI,EAClC,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,UAAQ,EACtB,OAAO,UAAQ,EACf,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAiB9B"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/apiCredentials/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AA8BxD;;;;;;;;;;;GAWG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,UAAQ,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CAczB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,cAAc,GAAG,IAAI,EAClC,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,UAAQ,EACtB,OAAO,UAAQ,EACf,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAiB9B"}
@@ -2,10 +2,34 @@
2
2
  * Shared credential utilities used by both the CLI and the gateway.
3
3
  */
4
4
  import { ApiCredentialStatus } from './base.js';
5
+ /**
6
+ * Refreshes currently in flight, keyed by service and account. A long-running
7
+ * process such as the gateway can receive many requests for the same expired
8
+ * credentials at once; without this, each of them would call the service's
9
+ * refresh endpoint with the same refresh token, which risks exhausting it
10
+ * (many providers rotate refresh tokens and invalidate the old one).
11
+ */
12
+ const inFlightRefreshes = new Map();
13
+ function refreshKey(serviceName, account) {
14
+ // An unspecified account always resolves to the service's single stored
15
+ // account, so it is safe to treat it as its own key.
16
+ return `${serviceName}\u0000${account ?? ''}`;
17
+ }
18
+ async function refreshAndSave(service, apiCredentials, apiCredentialStore, account) {
19
+ const refreshedCredentials = await service.refreshCredentials(apiCredentials);
20
+ if (refreshedCredentials !== null) {
21
+ apiCredentialStore.save(service.name, refreshedCredentials, account);
22
+ }
23
+ return refreshedCredentials;
24
+ }
5
25
  /**
6
26
  * Try to refresh expired credentials if the service supports it.
7
27
  * Returns refreshed credentials if successful, otherwise returns the original credentials.
8
28
  *
29
+ * Only one refresh per service and account runs at a time within the process:
30
+ * concurrent callers wait for the refresh already in flight and share its
31
+ * result instead of issuing their own refresh request.
32
+ *
9
33
  * When `disableRefresh` is true, the credentials are never refreshed. This is
10
34
  * used when the credentials are shared with another machine and refreshing here
11
35
  * would otherwise risk exhausting the refresh token.
@@ -14,12 +38,16 @@ export async function maybeRefreshCredentials(service, apiCredentials, apiCreden
14
38
  if (disableRefresh || apiCredentials.isExpired() !== true || !service.refreshCredentials) {
15
39
  return apiCredentials;
16
40
  }
17
- const refreshedCredentials = await service.refreshCredentials(apiCredentials);
18
- if (refreshedCredentials !== null) {
19
- apiCredentialStore.save(service.name, refreshedCredentials, account);
20
- return refreshedCredentials;
41
+ const key = refreshKey(service.name, account);
42
+ let refresh = inFlightRefreshes.get(key);
43
+ if (refresh === undefined) {
44
+ refresh = refreshAndSave(service, apiCredentials, apiCredentialStore, account).finally(() => {
45
+ inFlightRefreshes.delete(key);
46
+ });
47
+ inFlightRefreshes.set(key, refresh);
21
48
  }
22
- return apiCredentials;
49
+ const refreshedCredentials = await refresh;
50
+ return refreshedCredentials ?? apiCredentials;
23
51
  }
24
52
  export async function getCredentialStatus(service, credentials, apiCredentialStore, disableRefresh = false, offline = false, account) {
25
53
  if (credentials === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/apiCredentials/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAuB,MAAM,WAAW,CAAC;AAIrE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAgB,EAChB,cAA8B,EAC9B,kBAAsC,EACtC,cAAc,GAAG,KAAK,EACtB,OAAgB;IAEhB,IAAI,cAAc,IAAI,cAAc,CAAC,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACzF,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAC9E,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAClC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAgB,EAChB,WAAkC,EAClC,kBAAsC,EACtC,cAAc,GAAG,KAAK,EACtB,OAAO,GAAG,KAAK,EACf,OAAgB;IAEhB,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,mBAAmB,CAAC,OAAO,CAAC;IACrC,CAAC;IACD,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,mBAAmB,CAAC,OAAO,CAAC;IACrC,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAC7C,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,OAAO,CACR,CAAC;IACF,OAAO,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/apiCredentials/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAuB,MAAM,WAAW,CAAC;AAIrE;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA0C,CAAC;AAE5E,SAAS,UAAU,CAAC,WAAmB,EAAE,OAA2B;IAClE,wEAAwE;IACxE,qDAAqD;IACrD,OAAO,GAAG,WAAW,SAAS,OAAO,IAAI,EAAE,EAAE,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,OAAgB,EAChB,cAA8B,EAC9B,kBAAsC,EACtC,OAA2B;IAE3B,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,kBAAmB,CAAC,cAAc,CAAC,CAAC;IAC/E,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAClC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAgB,EAChB,cAA8B,EAC9B,kBAAsC,EACtC,cAAc,GAAG,KAAK,EACtB,OAAgB;IAEhB,IAAI,cAAc,IAAI,cAAc,CAAC,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACzF,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,IAAI,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1F,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC;IAC3C,OAAO,oBAAoB,IAAI,cAAc,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAgB,EAChB,WAAkC,EAClC,kBAAsC,EACtC,cAAc,GAAG,KAAK,EACtB,OAAO,GAAG,KAAK,EACf,OAAgB;IAEhB,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,mBAAmB,CAAC,OAAO,CAAC;IACrC,CAAC;IACD,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,mBAAmB,CAAC,OAAO,CAAC;IACrC,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAC7C,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,OAAO,CACR,CAAC;IACF,OAAO,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC"}
@@ -10,6 +10,7 @@
10
10
  */
11
11
  import type { BrowserContext } from 'playwright';
12
12
  import type { EncryptedStorage } from './encryptedStorage.js';
13
+ import { CodedError } from './errorMessages.js';
13
14
  import type { Service } from './services/index.js';
14
15
  export declare class ChromeNotFoundError extends Error {
15
16
  constructor();
@@ -20,6 +21,9 @@ export declare class ChromeProfileNotFoundError extends Error {
20
21
  export declare class ChromeProfileTooLargeError extends Error {
21
22
  constructor(sizeInBytes: number, limitInBytes: number);
22
23
  }
24
+ export declare class ChromeProfileNotReadableError extends CodedError {
25
+ constructor(profilePath: string, cause: Error);
26
+ }
23
27
  export declare class InvalidBrowserStateError extends Error {
24
28
  constructor(message: string);
25
29
  }
@@ -36,6 +40,11 @@ export declare function mergeBrowserStorageStates(existing: BrowserStorageState,
36
40
  export declare function parseBrowserStorageState(content: string): BrowserStorageState;
37
41
  /** Total size of what {@link copyDefaultProfile} would copy. */
38
42
  export declare function measureCopiedUserDataSizeInBytes(chromeUserDataDirectory: string): number;
43
+ /**
44
+ * Copy the cookies and localStorage of the default profile into a fresh user
45
+ * data directory and return its path.
46
+ */
47
+ export declare function copyDefaultProfile(chromeUserDataDirectory: string): string;
39
48
  export interface BrowserStateImportResult {
40
49
  readonly importedCookieCount: number;
41
50
  /** Origins (among those asked for) that had localStorage to import. */
@@ -1 +1 @@
1
- {"version":3,"file":"browserStateImport.d.ts","sourceRoot":"","sources":["../../src/browserStateImport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,qBAAa,mBAAoB,SAAQ,KAAK;;CAK7C;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,WAAW,EAAE,MAAM;CAIhC;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;CAQtD;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AA+CtF,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,0BAA0B,IAAI,MAAM,CAmBnD;AAED,4DAA4D;AAC5D,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAOnF;AAMD;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,EAAE,mBAAmB,GAC5B,mBAAmB,CAUrB;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAe7E;AAkBD,gEAAgE;AAChE,wBAAgB,gCAAgC,CAAC,uBAAuB,EAAE,MAAM,GAAG,MAAM,CAKxF;AAoFD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,uEAAuE;IACvE,QAAQ,CAAC,2BAA2B,EAAE,SAAS,MAAM,EAAE,CAAC;CACzD;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,EAAE,SAAS,MAAM,EAAE,GACrC,OAAO,CAAC,wBAAwB,CAAC,CA+BnC"}
1
+ {"version":3,"file":"browserStateImport.d.ts","sourceRoot":"","sources":["../../src/browserStateImport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAc,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,qBAAa,mBAAoB,SAAQ,KAAK;;CAK7C;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,WAAW,EAAE,MAAM;CAIhC;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;CAQtD;AAmBD,qBAAa,6BAA8B,SAAQ,UAAU;gBAC/C,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK;CAI9C;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AA+CtF,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,0BAA0B,IAAI,MAAM,CAmBnD;AAED,4DAA4D;AAC5D,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAOnF;AAMD;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,EAAE,mBAAmB,GAC5B,mBAAmB,CAUrB;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAe7E;AAkBD,gEAAgE;AAChE,wBAAgB,gCAAgC,CAAC,uBAAuB,EAAE,MAAM,GAAG,MAAM,CAKxF;AAeD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,uBAAuB,EAAE,MAAM,GAAG,MAAM,CAwB1E;AA6DD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,uEAAuE;IACvE,QAAQ,CAAC,2BAA2B,EAAE,SAAS,MAAM,EAAE,CAAC;CACzD;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,EAAE,SAAS,MAAM,EAAE,GACrC,OAAO,CAAC,wBAAwB,CAAC,CA+BnC"}
@@ -11,6 +11,7 @@
11
11
  import { cpSync, existsSync, mkdtempSync, readdirSync, rmSync, statSync } from 'node:fs';
12
12
  import { homedir, platform, tmpdir } from 'node:os';
13
13
  import { join } from 'node:path';
14
+ import { CodedError, ErrorCodes } from './errorMessages.js';
14
15
  import { loadPlaywright } from './playwrightLoader.js';
15
16
  export class ChromeNotFoundError extends Error {
16
17
  constructor() {
@@ -32,6 +33,24 @@ export class ChromeProfileTooLargeError extends Error {
32
33
  this.name = 'ChromeProfileTooLargeError';
33
34
  }
34
35
  }
36
+ /** Opens System Settings on the list of applications with Full Disk Access. */
37
+ const MACOS_FULL_DISK_ACCESS_SETTINGS_URL = 'x-apple.systempreferences:com.apple.preference.security?Privacy_AllFiles';
38
+ function describeUnreadableProfile(profilePath, cause) {
39
+ const base = `The Google Chrome profile at ${profilePath} could not be read: ${cause.message}.`;
40
+ if (platform() !== 'darwin') {
41
+ return base;
42
+ }
43
+ return (`${base} On macOS this means that the application running Latchkey (your terminal, ` +
44
+ 'or the application that invoked it) does not have Full Disk Access. Grant it under ' +
45
+ 'System Settings > Privacy & Security > Full Disk Access (or open ' +
46
+ `${MACOS_FULL_DISK_ACCESS_SETTINGS_URL} ), then restart that application and try again.`);
47
+ }
48
+ export class ChromeProfileNotReadableError extends CodedError {
49
+ constructor(profilePath, cause) {
50
+ super(ErrorCodes.chromeProfileNotReadable, describeUnreadableProfile(profilePath, cause));
51
+ this.name = 'ChromeProfileNotReadableError';
52
+ }
53
+ }
35
54
  export class InvalidBrowserStateError extends Error {
36
55
  constructor(message) {
37
56
  super(message);
@@ -156,27 +175,45 @@ export function measureCopiedUserDataSizeInBytes(chromeUserDataDirectory) {
156
175
  .map(measureSizeInBytes)
157
176
  .reduce((total, size) => total + size, 0);
158
177
  }
178
+ /**
179
+ * Whether the error is the operating system refusing access to a file. On
180
+ * macOS, privacy protection (the lack of Full Disk Access) shows up as EPERM
181
+ * even though `stat` on the same path succeeds.
182
+ */
183
+ function isPermissionDeniedError(error) {
184
+ return (error instanceof Error &&
185
+ (error.code === 'EPERM' ||
186
+ error.code === 'EACCES'));
187
+ }
159
188
  /**
160
189
  * Copy the cookies and localStorage of the default profile into a fresh user
161
190
  * data directory and return its path.
162
191
  */
163
- function copyDefaultProfile(chromeUserDataDirectory) {
192
+ export function copyDefaultProfile(chromeUserDataDirectory) {
164
193
  const profileDirectory = join(chromeUserDataDirectory, DEFAULT_PROFILE_DIRECTORY_NAME);
165
194
  if (!existsSync(profileDirectory)) {
166
195
  throw new ChromeProfileNotFoundError(profileDirectory);
167
196
  }
168
- const copySizeInBytes = measureCopiedUserDataSizeInBytes(chromeUserDataDirectory);
169
- if (copySizeInBytes > MAXIMUM_COPY_SIZE_IN_BYTES) {
170
- throw new ChromeProfileTooLargeError(copySizeInBytes, MAXIMUM_COPY_SIZE_IN_BYTES);
197
+ try {
198
+ const copySizeInBytes = measureCopiedUserDataSizeInBytes(chromeUserDataDirectory);
199
+ if (copySizeInBytes > MAXIMUM_COPY_SIZE_IN_BYTES) {
200
+ throw new ChromeProfileTooLargeError(copySizeInBytes, MAXIMUM_COPY_SIZE_IN_BYTES);
201
+ }
202
+ const temporaryUserDataDirectory = mkdtempSync(join(tmpdir(), 'latchkey-chrome-profile-'));
203
+ for (const relativePath of COPIED_USER_DATA_PATHS) {
204
+ const source = join(chromeUserDataDirectory, relativePath);
205
+ if (existsSync(source)) {
206
+ cpSync(source, join(temporaryUserDataDirectory, relativePath), { recursive: true });
207
+ }
208
+ }
209
+ return temporaryUserDataDirectory;
171
210
  }
172
- const temporaryUserDataDirectory = mkdtempSync(join(tmpdir(), 'latchkey-chrome-profile-'));
173
- for (const relativePath of COPIED_USER_DATA_PATHS) {
174
- const source = join(chromeUserDataDirectory, relativePath);
175
- if (existsSync(source)) {
176
- cpSync(source, join(temporaryUserDataDirectory, relativePath), { recursive: true });
211
+ catch (error) {
212
+ if (isPermissionDeniedError(error)) {
213
+ throw new ChromeProfileNotReadableError(profileDirectory, error);
177
214
  }
215
+ throw error;
178
216
  }
179
- return temporaryUserDataDirectory;
180
217
  }
181
218
  /**
182
219
  * Read the localStorage of the given origins. Every request is answered with an
@@ -1 +1 @@
1
- {"version":3,"file":"browserStateImport.js","sourceRoot":"","sources":["../../src/browserStateImport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserStateImport.js","sourceRoot":"","sources":["../../src/browserStateImport.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cliCommands.d.ts","sourceRoot":"","sources":["../../src/cliCommands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,EAEL,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AA0BlC,OAAO,EAAE,MAAM,EAAU,MAAM,aAAa,CAAC;AAQ7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,OAAO,EAKL,eAAe,EAEhB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EASL,OAAO,EAIR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,QAAQ,IAAI,YAAY,EACzB,MAAM,WAAW,CAAC;AACnB,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAC;AAqC1B;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,OAAO,EAAE,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,UAAU,CAAC;IAC1D,QAAQ,CAAC,YAAY,EAAE,OAAO,YAAY,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,CACxB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,sBAAsB,EAAE,OAAO,EAC/B,QAAQ,CAAC,EAAE,uBAAuB,KAC/B,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,eAAe,CAAC,CAgC1E;AAqQD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,IAAI,CAmpC9E"}
1
+ {"version":3,"file":"cliCommands.d.ts","sourceRoot":"","sources":["../../src/cliCommands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,EAEL,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AA0BlC,OAAO,EAAE,MAAM,EAAU,MAAM,aAAa,CAAC;AAQ7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,OAAO,EAKL,eAAe,EAEhB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EASL,OAAO,EAIR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,QAAQ,IAAI,YAAY,EACzB,MAAM,WAAW,CAAC;AACnB,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAC;AAqC1B;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,OAAO,EAAE,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,UAAU,CAAC;IAC1D,QAAQ,CAAC,YAAY,EAAE,OAAO,YAAY,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,CACxB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,sBAAsB,EAAE,OAAO,EAC/B,QAAQ,CAAC,EAAE,uBAAuB,KAC/B,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,eAAe,CAAC,CAgC1E;AAqQD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,IAAI,CAupC9E"}
@@ -23,7 +23,7 @@ import { createLatchkeySdk } from './pluginSdk.js';
23
23
  import { LOGIN_FLOWS, LoginCancelledError, LoginFailedError, LoginFlowParamsInvalidError, NoCurlCredentialsNotSupportedError, PrepareInputInvalidError, PrepareNotSupportedError, resolveLoginFlow, UnknownLoginFlowError, formatLoginFlowsHelp, } from './services/index.js';
24
24
  import { CurlParseError, extractUrlFromCurlArguments, run as curlRun, runAsync as curlRunAsync, } from './curl.js';
25
25
  import { checkPermission, PermissionCheckError, } from './permissions.js';
26
- import { ErrorMessages } from './errorMessages.js';
26
+ import { CodedError, ErrorMessages, formatCodedErrorAsJson } from './errorMessages.js';
27
27
  import { LATEST_VERSION, MigrationError, readDataFormatVersionOfDirectory, writeDataFormatVersionOfDirectory, } from './migrations.js';
28
28
  import { getSkillMdContent } from './skillMd.js';
29
29
  import { startGateway } from './gateway/server.js';
@@ -785,6 +785,10 @@ export function registerCommands(program, deps) {
785
785
  }
786
786
  }
787
787
  catch (error) {
788
+ if (error instanceof CodedError) {
789
+ deps.errorLog(formatCodedErrorAsJson(error));
790
+ deps.exit(1);
791
+ }
788
792
  if (error instanceof ChromeNotFoundError ||
789
793
  error instanceof ChromeProfileNotFoundError ||
790
794
  error instanceof ChromeProfileTooLargeError ||