@vigilbase/cli 0.1.4 → 0.2.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 (142) hide show
  1. package/CLOUDFLARE.md +2 -0
  2. package/COMMANDS.md +43 -6
  3. package/LOCAL.md +731 -0
  4. package/README.md +58 -6
  5. package/dist/auth/device-auth.d.ts.map +1 -1
  6. package/dist/auth/device-auth.js +7 -3
  7. package/dist/auth/device-auth.js.map +1 -1
  8. package/dist/auth/index.d.ts +3 -0
  9. package/dist/auth/index.d.ts.map +1 -1
  10. package/dist/auth/index.js +2 -0
  11. package/dist/auth/index.js.map +1 -1
  12. package/dist/auth/provider.d.ts +18 -0
  13. package/dist/auth/provider.d.ts.map +1 -0
  14. package/dist/auth/provider.js +62 -0
  15. package/dist/auth/provider.js.map +1 -0
  16. package/dist/auth/refresh.d.ts +10 -0
  17. package/dist/auth/refresh.d.ts.map +1 -0
  18. package/dist/auth/refresh.js +143 -0
  19. package/dist/auth/refresh.js.map +1 -0
  20. package/dist/auth/store.d.ts +27 -2
  21. package/dist/auth/store.d.ts.map +1 -1
  22. package/dist/auth/store.js +23 -8
  23. package/dist/auth/store.js.map +1 -1
  24. package/dist/auth/token-metadata.d.ts +10 -0
  25. package/dist/auth/token-metadata.d.ts.map +1 -0
  26. package/dist/auth/token-metadata.js +22 -0
  27. package/dist/auth/token-metadata.js.map +1 -0
  28. package/dist/auth/types.d.ts +8 -1
  29. package/dist/auth/types.d.ts.map +1 -1
  30. package/dist/cli.d.ts.map +1 -1
  31. package/dist/cli.js +40 -9
  32. package/dist/cli.js.map +1 -1
  33. package/dist/commands/auth.d.ts.map +1 -1
  34. package/dist/commands/auth.js +20 -8
  35. package/dist/commands/auth.js.map +1 -1
  36. package/dist/commands/helpers.d.ts +15 -0
  37. package/dist/commands/helpers.d.ts.map +1 -1
  38. package/dist/commands/helpers.js +2 -2
  39. package/dist/commands/helpers.js.map +1 -1
  40. package/dist/commands/index.d.ts +3 -1
  41. package/dist/commands/index.d.ts.map +1 -1
  42. package/dist/commands/index.js +6 -1
  43. package/dist/commands/index.js.map +1 -1
  44. package/dist/commands/local.d.ts +30 -0
  45. package/dist/commands/local.d.ts.map +1 -0
  46. package/dist/commands/local.js +1520 -0
  47. package/dist/commands/local.js.map +1 -0
  48. package/dist/commands/public-tools.d.ts.map +1 -1
  49. package/dist/commands/public-tools.js +8 -4
  50. package/dist/commands/public-tools.js.map +1 -1
  51. package/dist/index.d.ts +2 -1
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +1 -1
  54. package/dist/index.js.map +1 -1
  55. package/dist/lib/config.d.ts +16 -1
  56. package/dist/lib/config.d.ts.map +1 -1
  57. package/dist/lib/config.js +36 -4
  58. package/dist/lib/config.js.map +1 -1
  59. package/dist/lib/format.d.ts.map +1 -1
  60. package/dist/lib/format.js +9 -0
  61. package/dist/lib/format.js.map +1 -1
  62. package/dist/lib/help.d.ts +1 -1
  63. package/dist/lib/help.d.ts.map +1 -1
  64. package/dist/lib/help.js +9 -0
  65. package/dist/lib/help.js.map +1 -1
  66. package/dist/lib/network.d.ts.map +1 -1
  67. package/dist/lib/network.js +2 -1
  68. package/dist/lib/network.js.map +1 -1
  69. package/dist/lib/one-client.d.ts +3 -2
  70. package/dist/lib/one-client.d.ts.map +1 -1
  71. package/dist/lib/one-client.js +46 -2
  72. package/dist/lib/one-client.js.map +1 -1
  73. package/dist/lib/security-client.d.ts +1 -1
  74. package/dist/lib/tui.d.ts +309 -0
  75. package/dist/lib/tui.d.ts.map +1 -0
  76. package/dist/lib/tui.js +847 -0
  77. package/dist/lib/tui.js.map +1 -0
  78. package/dist/local/cloudflare-checkup/cf/allowlist.d.ts +95 -0
  79. package/dist/local/cloudflare-checkup/cf/allowlist.d.ts.map +1 -0
  80. package/dist/local/cloudflare-checkup/cf/allowlist.js +184 -0
  81. package/dist/local/cloudflare-checkup/cf/allowlist.js.map +1 -0
  82. package/dist/local/cloudflare-checkup/cf/auth-lifecycle.d.ts +113 -0
  83. package/dist/local/cloudflare-checkup/cf/auth-lifecycle.d.ts.map +1 -0
  84. package/dist/local/cloudflare-checkup/cf/auth-lifecycle.js +313 -0
  85. package/dist/local/cloudflare-checkup/cf/auth-lifecycle.js.map +1 -0
  86. package/dist/local/cloudflare-checkup/cf/child-env.d.ts +32 -0
  87. package/dist/local/cloudflare-checkup/cf/child-env.d.ts.map +1 -0
  88. package/dist/local/cloudflare-checkup/cf/child-env.js +81 -0
  89. package/dist/local/cloudflare-checkup/cf/child-env.js.map +1 -0
  90. package/dist/local/cloudflare-checkup/cf/install.d.ts +106 -0
  91. package/dist/local/cloudflare-checkup/cf/install.d.ts.map +1 -0
  92. package/dist/local/cloudflare-checkup/cf/install.js +309 -0
  93. package/dist/local/cloudflare-checkup/cf/install.js.map +1 -0
  94. package/dist/local/cloudflare-checkup/cf/locate.d.ts +44 -0
  95. package/dist/local/cloudflare-checkup/cf/locate.d.ts.map +1 -0
  96. package/dist/local/cloudflare-checkup/cf/locate.js +228 -0
  97. package/dist/local/cloudflare-checkup/cf/locate.js.map +1 -0
  98. package/dist/local/cloudflare-checkup/cf/run-cf.d.ts +89 -0
  99. package/dist/local/cloudflare-checkup/cf/run-cf.d.ts.map +1 -0
  100. package/dist/local/cloudflare-checkup/cf/run-cf.js +275 -0
  101. package/dist/local/cloudflare-checkup/cf/run-cf.js.map +1 -0
  102. package/dist/local/cloudflare-checkup/collector.d.ts +48 -0
  103. package/dist/local/cloudflare-checkup/collector.d.ts.map +1 -0
  104. package/dist/local/cloudflare-checkup/collector.js +296 -0
  105. package/dist/local/cloudflare-checkup/collector.js.map +1 -0
  106. package/dist/local/cloudflare-checkup/contract.d.ts +2793 -0
  107. package/dist/local/cloudflare-checkup/contract.d.ts.map +1 -0
  108. package/dist/local/cloudflare-checkup/contract.js +1614 -0
  109. package/dist/local/cloudflare-checkup/contract.js.map +1 -0
  110. package/dist/local/cloudflare-checkup/email-verification.d.ts +125 -0
  111. package/dist/local/cloudflare-checkup/email-verification.d.ts.map +1 -0
  112. package/dist/local/cloudflare-checkup/email-verification.js +212 -0
  113. package/dist/local/cloudflare-checkup/email-verification.js.map +1 -0
  114. package/dist/local/cloudflare-checkup/errors.d.ts +28 -0
  115. package/dist/local/cloudflare-checkup/errors.d.ts.map +1 -0
  116. package/dist/local/cloudflare-checkup/errors.js +99 -0
  117. package/dist/local/cloudflare-checkup/errors.js.map +1 -0
  118. package/dist/local/cloudflare-checkup/output.d.ts +24 -0
  119. package/dist/local/cloudflare-checkup/output.d.ts.map +1 -0
  120. package/dist/local/cloudflare-checkup/output.js +89 -0
  121. package/dist/local/cloudflare-checkup/output.js.map +1 -0
  122. package/dist/local/cloudflare-checkup/prompts.d.ts +41 -0
  123. package/dist/local/cloudflare-checkup/prompts.d.ts.map +1 -0
  124. package/dist/local/cloudflare-checkup/prompts.js +140 -0
  125. package/dist/local/cloudflare-checkup/prompts.js.map +1 -0
  126. package/dist/local/cloudflare-checkup/rate-budget.d.ts +42 -0
  127. package/dist/local/cloudflare-checkup/rate-budget.d.ts.map +1 -0
  128. package/dist/local/cloudflare-checkup/rate-budget.js +80 -0
  129. package/dist/local/cloudflare-checkup/rate-budget.js.map +1 -0
  130. package/dist/local/cloudflare-checkup/snapshot-file.d.ts +53 -0
  131. package/dist/local/cloudflare-checkup/snapshot-file.d.ts.map +1 -0
  132. package/dist/local/cloudflare-checkup/snapshot-file.js +186 -0
  133. package/dist/local/cloudflare-checkup/snapshot-file.js.map +1 -0
  134. package/dist/local/cloudflare-checkup/submit-client.d.ts +98 -0
  135. package/dist/local/cloudflare-checkup/submit-client.d.ts.map +1 -0
  136. package/dist/local/cloudflare-checkup/submit-client.js +349 -0
  137. package/dist/local/cloudflare-checkup/submit-client.js.map +1 -0
  138. package/dist/local/cloudflare-checkup/terminal-ui.d.ts +171 -0
  139. package/dist/local/cloudflare-checkup/terminal-ui.d.ts.map +1 -0
  140. package/dist/local/cloudflare-checkup/terminal-ui.js +404 -0
  141. package/dist/local/cloudflare-checkup/terminal-ui.js.map +1 -0
  142. package/package.json +8 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/local/cloudflare-checkup/contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ /**
2
+ * Email verification in the CLI: the one command and `submit` start with it.
3
+ *
4
+ * The CLI asks for a work email (or takes `--email`) and POSTs it to
5
+ * `local-session/request`; vigilbase.com creates the checkup and emails a
6
+ * 6-digit code. The CLI asks for the code and POSTs it with the returned
7
+ * verification token to `local-session/verify`, which answers with the
8
+ * session code for the upload. There is no bot check on this path; the server
9
+ * accepts business addresses only and rate-limits per mailbox (`+tag`
10
+ * variants included), per domain, per IP (an IPv6 /64 counts as one) and
11
+ * overall.
12
+ *
13
+ * The address, the emailed code, the token and the session code stay in this
14
+ * process's memory. They are never printed (only the masked address the server
15
+ * returns, `j***@acme.com`), logged, written to disk, put in a URL or JSON
16
+ * output, or passed to cf or npm. The token and the code are kept only so the
17
+ * session can be renewed once when it expires during a long collection.
18
+ */
19
+ import type { LocalEmailLocale } from './contract.js';
20
+ import { LocalCheckupError } from './errors.js';
21
+ import { type PromptIO } from './prompts.js';
22
+ import { type VerificationClient } from './submit-client.js';
23
+ export declare const EMAIL_PROMPT = "Work email for your results: ";
24
+ export declare const CODE_PROMPT = "Code from the email: ";
25
+ /** Addresses asked for before giving up (a malformed one, or one vigilbase.com does not accept). */
26
+ export declare const MAX_EMAIL_ATTEMPTS = 3;
27
+ /** Codes asked for before giving up; One locks a checkup after 5 wrong codes. */
28
+ export declare const MAX_CODE_ATTEMPTS = 5;
29
+ /**
30
+ * On a terminal, how often the code is asked for again after vigilbase.com did
31
+ * not answer the verify (twice: the client already sent it once more). These
32
+ * are not tries: only a wrong code uses one.
33
+ */
34
+ export declare const MAX_UNANSWERED_VERIFIES = 2;
35
+ /** One `@` with text on both sides, no spaces or control characters, at most 254 characters. */
36
+ export declare function isEmailShaped(value: string): boolean;
37
+ /** `--email <address>`: checked before anything runs; the value is never echoed. */
38
+ export declare function parseEmailFlag(value: string): string;
39
+ /** The six digits of a typed code; `123 456` and `123-456` are accepted too. Null for anything else. */
40
+ export declare function normalizeEmailCode(input: string): string | null;
41
+ /** The email language from LC_ALL, LC_MESSAGES or LANG (the first one set): `pt*` → pt-PT, `ar*` → ar, else en. */
42
+ export declare function emailLocale(env: NodeJS.ProcessEnv): LocalEmailLocale;
43
+ /**
44
+ * A verified email and the session code it earned. Private fields keep the
45
+ * token, the emailed code and the session code out of `JSON.stringify` and
46
+ * `util.inspect`.
47
+ */
48
+ export declare class VerifiedEmail {
49
+ #private;
50
+ /** The masked address from vigilbase.com, safe to print. */
51
+ readonly requester: string;
52
+ constructor(client: VerificationClient, token: string, emailCode: string, session: {
53
+ code: string;
54
+ requester: string;
55
+ expiresAt: string;
56
+ });
57
+ /** The current session code: in memory only, sent only as the upload's bearer. */
58
+ get sessionCode(): string;
59
+ get expiresAt(): string;
60
+ /** True until `renew` has been used. */
61
+ get renewable(): boolean;
62
+ /**
63
+ * Once per run: verify again with the same token and code, and vigilbase.com
64
+ * mints the next session code for the same checkup (the previous one stops
65
+ * working). It fails once the emailed code expired or the checkup closed.
66
+ */
67
+ renew(): Promise<void>;
68
+ toJSON(): {
69
+ requester: string;
70
+ };
71
+ }
72
+ /**
73
+ * How the verification asks and reports. The default is the plain prompts
74
+ * (`Work email for your results:` and `Code from the email:`, a visible line or
75
+ * one line of piped stdin) and status lines through `say` and `notice`; the
76
+ * terminal UI brings its own inputs and spinners.
77
+ */
78
+ export type EmailVerificationView = {
79
+ /** The address as entered; null when the input ended. */
80
+ askEmail(): Promise<string | null>;
81
+ /** The emailed code as entered; null when the input ended. */
82
+ askCode(): Promise<string | null>;
83
+ /** The code went to `sentTo` (the masked address) and is valid until `expiresAt`. */
84
+ codeSent(sentTo: string, expiresAt: string): void;
85
+ /** Why the next question is asked again. */
86
+ notice(line: string): void;
87
+ /** The code request to vigilbase.com. */
88
+ requesting<T>(work: () => Promise<T>): Promise<T>;
89
+ /** The code check at vigilbase.com. */
90
+ verifying<T>(work: () => Promise<T>): Promise<T>;
91
+ /**
92
+ * A rate-limited code request (VIGILBASE_RATE_LIMITED): true to ask for
93
+ * another address. Asked only without `--email` and while addresses are
94
+ * left; without it the error stops the run (exit 2).
95
+ */
96
+ rateLimited?(error: LocalCheckupError): Promise<boolean>;
97
+ };
98
+ export type EmailVerificationOptions = {
99
+ client: VerificationClient;
100
+ io: PromptIO;
101
+ locale: LocalEmailLocale;
102
+ /** `--email`, already checked with `parseEmailFlag`; it is never asked for again. */
103
+ email?: string;
104
+ /** A status line ("We emailed a 6-digit code to …"). */
105
+ say(line: string): void;
106
+ /** Why a prompt is asked again (stderr). */
107
+ notice(line: string): void;
108
+ /** Replaces the plain prompts and lines built from `io`, `say` and `notice`. */
109
+ view?: EmailVerificationView;
110
+ };
111
+ /** vigilbase.com starts one checkup per address every 8 minutes (One's creation budget). No final period. */
112
+ export declare const SAME_ADDRESS_WAIT = "The same address can get a new code 8 minutes after the last one";
113
+ /**
114
+ * Request a code, then ask for it until vigilbase.com accepts it (up to 5
115
+ * tries; One locks the checkup after 5 wrong codes). A wrong address is asked
116
+ * for again (up to 3), except with `--email`. An expired verification and a
117
+ * rate limit stop with their own codes (VERIFICATION_EXPIRED, and
118
+ * VIGILBASE_RATE_LIMITED with the retry time, exit 2), unless the view offers
119
+ * another address for a rate limit. A verify vigilbase.com did not answer is
120
+ * sent once more by the client; if that fails too, a terminal asks for the
121
+ * code again (twice at most, without using a try), since a new code for the
122
+ * same address would be refused for 8 minutes.
123
+ */
124
+ export declare function verifyEmail(options: EmailVerificationOptions): Promise<VerifiedEmail>;
125
+ //# sourceMappingURL=email-verification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-verification.d.ts","sourceRoot":"","sources":["../../../src/local/cloudflare-checkup/email-verification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAqC,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC/E,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE9E,eAAO,MAAM,YAAY,kCAAkC,CAAA;AAC3D,eAAO,MAAM,WAAW,0BAA0B,CAAA;AAClD,oGAAoG;AACpG,eAAO,MAAM,kBAAkB,IAAI,CAAA;AACnC,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,IAAI,CAAA;AAClC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAKxC,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD;AAED,wGAAwG;AACxG,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/D;AAED,mHAAmH;AACnH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,gBAAgB,CAIpE;AAED;;;;GAIG;AACH,qBAAa,aAAa;;IAOxB,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;gBAEd,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IASzI,kFAAkF;IAClF,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,wCAAwC;IACxC,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B,MAAM,IAAI;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE;CAGhC;AAED;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,yDAAyD;IACzD,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAClC,8DAA8D;IAC9D,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IACjC,qFAAqF;IACrF,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjD,4CAA4C;IAC5C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,yCAAyC;IACzC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IACjD,uCAAuC;IACvC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAChD;;;;OAIG;IACH,WAAW,CAAC,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACzD,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,kBAAkB,CAAA;IAC1B,EAAE,EAAE,QAAQ,CAAA;IACZ,MAAM,EAAE,gBAAgB,CAAA;IACxB,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,4CAA4C;IAC5C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,gFAAgF;IAChF,IAAI,CAAC,EAAE,qBAAqB,CAAA;CAC7B,CAAA;AAeD,6GAA6G;AAC7G,eAAO,MAAM,iBAAiB,qEAAqE,CAAA;AAmDnG;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC,CAsC3F"}
@@ -0,0 +1,212 @@
1
+ import { LocalCheckupError } from './errors.js';
2
+ import { formatClock } from './output.js';
3
+ import { hasInteractiveInput, promptAnswer } from './prompts.js';
4
+ import { displayRequester } from './submit-client.js';
5
+ export const EMAIL_PROMPT = 'Work email for your results: ';
6
+ export const CODE_PROMPT = 'Code from the email: ';
7
+ /** Addresses asked for before giving up (a malformed one, or one vigilbase.com does not accept). */
8
+ export const MAX_EMAIL_ATTEMPTS = 3;
9
+ /** Codes asked for before giving up; One locks a checkup after 5 wrong codes. */
10
+ export const MAX_CODE_ATTEMPTS = 5;
11
+ /**
12
+ * On a terminal, how often the code is asked for again after vigilbase.com did
13
+ * not answer the verify (twice: the client already sent it once more). These
14
+ * are not tries: only a wrong code uses one.
15
+ */
16
+ export const MAX_UNANSWERED_VERIFIES = 2;
17
+ const MAX_EMAIL_LENGTH = 254;
18
+ const EMAIL_SHAPE = /^[^\s@\p{Cc}\p{Cf}\p{Cs}\p{Zl}\p{Zp}]+@[^\s@\p{Cc}\p{Cf}\p{Cs}\p{Zl}\p{Zp}]+$/u;
19
+ /** One `@` with text on both sides, no spaces or control characters, at most 254 characters. */
20
+ export function isEmailShaped(value) {
21
+ return value.length <= MAX_EMAIL_LENGTH && EMAIL_SHAPE.test(value);
22
+ }
23
+ /** `--email <address>`: checked before anything runs; the value is never echoed. */
24
+ export function parseEmailFlag(value) {
25
+ const email = value.trim();
26
+ if (!isEmailShaped(email))
27
+ throw new LocalCheckupError('EMAIL_INVALID', '--email is not an email address.');
28
+ return email;
29
+ }
30
+ /** The six digits of a typed code; `123 456` and `123-456` are accepted too. Null for anything else. */
31
+ export function normalizeEmailCode(input) {
32
+ const digits = input.replace(/[\s-]/g, '');
33
+ return /^\d{6}$/.test(digits) ? digits : null;
34
+ }
35
+ /** The email language from LC_ALL, LC_MESSAGES or LANG (the first one set): `pt*` → pt-PT, `ar*` → ar, else en. */
36
+ export function emailLocale(env) {
37
+ const value = [env.LC_ALL, env.LC_MESSAGES, env.LANG].find((candidate) => candidate !== undefined && candidate.trim() !== '') ?? '';
38
+ const language = value.trim().toLowerCase();
39
+ return language.startsWith('pt') ? 'pt-PT' : language.startsWith('ar') ? 'ar' : 'en';
40
+ }
41
+ /**
42
+ * A verified email and the session code it earned. Private fields keep the
43
+ * token, the emailed code and the session code out of `JSON.stringify` and
44
+ * `util.inspect`.
45
+ */
46
+ export class VerifiedEmail {
47
+ #client;
48
+ #token;
49
+ #emailCode;
50
+ #sessionCode;
51
+ #expiresAt;
52
+ #renewed = false;
53
+ /** The masked address from vigilbase.com, safe to print. */
54
+ requester;
55
+ constructor(client, token, emailCode, session) {
56
+ this.#client = client;
57
+ this.#token = token;
58
+ this.#emailCode = emailCode;
59
+ this.#sessionCode = session.code;
60
+ this.#expiresAt = session.expiresAt;
61
+ this.requester = displayRequester(session.requester);
62
+ }
63
+ /** The current session code: in memory only, sent only as the upload's bearer. */
64
+ get sessionCode() {
65
+ return this.#sessionCode;
66
+ }
67
+ get expiresAt() {
68
+ return this.#expiresAt;
69
+ }
70
+ /** True until `renew` has been used. */
71
+ get renewable() {
72
+ return !this.#renewed;
73
+ }
74
+ /**
75
+ * Once per run: verify again with the same token and code, and vigilbase.com
76
+ * mints the next session code for the same checkup (the previous one stops
77
+ * working). It fails once the emailed code expired or the checkup closed.
78
+ */
79
+ async renew() {
80
+ if (this.#renewed)
81
+ throw new LocalCheckupError('SESSION_EXPIRED', 'The checkup session expired again after it was renewed.');
82
+ this.#renewed = true;
83
+ const session = await this.#client.verifyCode({ verification: this.#token, code: this.#emailCode });
84
+ this.#sessionCode = session.code;
85
+ this.#expiresAt = session.expiresAt;
86
+ }
87
+ toJSON() {
88
+ return { requester: this.requester };
89
+ }
90
+ }
91
+ /** The plain prompts and status lines. */
92
+ function plainView(options) {
93
+ return {
94
+ askEmail: () => promptAnswer(options.io, EMAIL_PROMPT),
95
+ askCode: () => promptAnswer(options.io, CODE_PROMPT),
96
+ codeSent: (sentTo, expiresAt) => options.say(`We emailed a 6-digit code to ${sentTo} (valid until ${formatClock(expiresAt)}). Check spam if it doesn't arrive.`),
97
+ notice: (line) => options.notice(line),
98
+ requesting: (work) => work(),
99
+ verifying: (work) => work(),
100
+ };
101
+ }
102
+ const PIPE_HINT = 'Run the command in a terminal, or pass --email <address> and pipe the code from the email to it once it asks (`Code from the email:` on stderr).';
103
+ /** vigilbase.com starts one checkup per address every 8 minutes (One's creation budget). No final period. */
104
+ export const SAME_ADDRESS_WAIT = 'The same address can get a new code 8 minutes after the last one';
105
+ /** The input ended (Ctrl-D on a terminal, or the end of piped stdin) before an answer. */
106
+ function noAnswer(options, what) {
107
+ const hint = !hasInteractiveInput(options.io.stdin) ? PIPE_HINT
108
+ : what === 'code' ? `Run the same command again. ${SAME_ADDRESS_WAIT}.` : 'Run the same command again and enter your work email.';
109
+ return new LocalCheckupError('CONFIRMATION_REQUIRED', `No ${what} was entered, and the input ended.`, { hint });
110
+ }
111
+ /**
112
+ * Ask for the address until vigilbase.com accepts one and emails a code (up to
113
+ * 3 addresses). A rate limit stops the run, unless the view offers another
114
+ * address and the user takes it.
115
+ */
116
+ async function requestCode(options, view) {
117
+ for (let attempt = 1;; attempt++) {
118
+ let email = options.email;
119
+ if (email === undefined) {
120
+ const answer = (await view.askEmail())?.trim() ?? null;
121
+ if (answer === null)
122
+ throw noAnswer(options, 'email address');
123
+ if (!isEmailShaped(answer)) {
124
+ if (attempt >= MAX_EMAIL_ATTEMPTS)
125
+ throw new LocalCheckupError('EMAIL_INVALID', 'That is not an email address.');
126
+ view.notice('That is not an email address. Enter your work email.');
127
+ continue;
128
+ }
129
+ email = answer;
130
+ }
131
+ const address = email;
132
+ try {
133
+ return await view.requesting(() => options.client.requestCode({ email: address, locale: options.locale }));
134
+ }
135
+ catch (error) {
136
+ if (!(error instanceof LocalCheckupError))
137
+ throw error;
138
+ if (error.code === 'VIGILBASE_RATE_LIMITED') {
139
+ if (options.email === undefined && attempt < MAX_EMAIL_ATTEMPTS && view.rateLimited && await view.rateLimited(error))
140
+ continue;
141
+ throw error;
142
+ }
143
+ if (error.code !== 'EMAIL_INVALID')
144
+ throw error;
145
+ if (options.email !== undefined) {
146
+ throw new LocalCheckupError('EMAIL_INVALID', 'vigilbase.com does not accept the --email address: use your work email (not a personal or disposable one).', { status: error.status });
147
+ }
148
+ if (attempt >= MAX_EMAIL_ATTEMPTS)
149
+ throw error;
150
+ view.notice('vigilbase.com accepts work email addresses only (not personal or disposable ones). Enter another address.');
151
+ }
152
+ }
153
+ }
154
+ /** No answer to the verify (a network error or a timeout), or a 503: the code may be sent again. */
155
+ function isUnanswered(error) {
156
+ return error.code === 'SUBMIT_FAILED' && (error.status === 0 || error.status === 503);
157
+ }
158
+ /**
159
+ * Request a code, then ask for it until vigilbase.com accepts it (up to 5
160
+ * tries; One locks the checkup after 5 wrong codes). A wrong address is asked
161
+ * for again (up to 3), except with `--email`. An expired verification and a
162
+ * rate limit stop with their own codes (VERIFICATION_EXPIRED, and
163
+ * VIGILBASE_RATE_LIMITED with the retry time, exit 2), unless the view offers
164
+ * another address for a rate limit. A verify vigilbase.com did not answer is
165
+ * sent once more by the client; if that fails too, a terminal asks for the
166
+ * code again (twice at most, without using a try), since a new code for the
167
+ * same address would be refused for 8 minutes.
168
+ */
169
+ export async function verifyEmail(options) {
170
+ const view = options.view ?? plainView(options);
171
+ const pending = await requestCode(options, view);
172
+ view.codeSent(displayRequester(pending.requester, 'the address you entered'), pending.expiresAt);
173
+ let unanswered = 0;
174
+ for (let attempt = 1;; attempt++) {
175
+ const left = MAX_CODE_ATTEMPTS - attempt;
176
+ const answer = await view.askCode();
177
+ if (answer === null)
178
+ throw noAnswer(options, 'code');
179
+ const code = normalizeEmailCode(answer);
180
+ if (code === null) {
181
+ if (left <= 0)
182
+ throw new LocalCheckupError('EMAIL_CODE_INVALID', 'No valid 6-digit code was entered.');
183
+ view.notice(`Enter the 6 digits from the email (${left} ${left === 1 ? 'try' : 'tries'} left).`);
184
+ continue;
185
+ }
186
+ try {
187
+ // The client already sent a verify that got no answer, or a 503, once more.
188
+ const session = await view.verifying(() => options.client.verifyCode({ verification: pending.token, code }));
189
+ return new VerifiedEmail(options.client, pending.token, code, session);
190
+ }
191
+ catch (error) {
192
+ if (error instanceof LocalCheckupError && isUnanswered(error) && unanswered < MAX_UNANSWERED_VERIFIES && hasInteractiveInput(options.io.stdin)) {
193
+ unanswered++;
194
+ // Not one of the 5 tries: the same code is still valid, and asking again costs nothing.
195
+ attempt--;
196
+ view.notice('vigilbase.com did not answer. Enter the same code again to retry.');
197
+ continue;
198
+ }
199
+ if (error instanceof LocalCheckupError && error.code === 'SUBMIT_FAILED') {
200
+ // A new code now would be refused for this address: say how long to wait.
201
+ throw new LocalCheckupError('SUBMIT_FAILED', error.message, {
202
+ hint: `Run the same command again in a few minutes. ${SAME_ADDRESS_WAIT}.`,
203
+ ...(error.status !== undefined ? { status: error.status } : {}),
204
+ });
205
+ }
206
+ if (!(error instanceof LocalCheckupError) || error.code !== 'EMAIL_CODE_INVALID' || left <= 0)
207
+ throw error;
208
+ view.notice(`That code is not correct (${left} ${left === 1 ? 'try' : 'tries'} left).`);
209
+ }
210
+ }
211
+ }
212
+ //# sourceMappingURL=email-verification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-verification.js","sourceRoot":"","sources":["../../../src/local/cloudflare-checkup/email-verification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ export declare const LOCAL_ERROR_CODES: readonly ["NODE_UNSUPPORTED", "CF_NOT_FOUND", "CF_WRONG_BINARY", "CF_UNSUPPORTED_VERSION", "CF_ALLOWLIST_MISMATCH", "CF_INSTALL_FAILED", "CF_AUTH_REQUIRED", "CF_PERMISSION_DENIED", "CF_RATE_LIMITED", "CF_ERROR", "ACCOUNT_SELECTION_REQUIRED", "ACCOUNT_NOT_VISIBLE", "ACCOUNT_TOO_LARGE", "ACCOUNT_MISMATCH", "OUTPUT_EXISTS", "SNAPSHOT_INVALID", "SNAPSHOT_TOO_LARGE", "SNAPSHOT_STALE", "SNAPSHOT_SECRET_LIKE_VALUE", "EMAIL_INVALID", "EMAIL_CODE_INVALID", "VERIFICATION_INVALID", "VERIFICATION_EXPIRED", "SESSION_INVALID", "SESSION_EXPIRED", "SESSION_USED", "SESSION_BUSY", "SESSION_CLOSED", "SUBMIT_ORIGIN_UNTRUSTED", "CONFIRMATION_REQUIRED", "CLI_UPGRADE_REQUIRED", "LOCAL_MODE_DISABLED", "VIGILBASE_RATE_LIMITED", "VIGILBASE_CHALLENGED", "SUBMIT_FAILED"];
2
+ export type LocalCheckupErrorCode = (typeof LOCAL_ERROR_CODES)[number];
3
+ /** One fix per code; shown after the error and in `--json` as `hint`. */
4
+ export declare const LOCAL_ERROR_HINTS: Record<LocalCheckupErrorCode, string>;
5
+ /**
6
+ * CF_AUTH_REQUIRED in env mode (`--cf-auth env`, or `auto` with the variable
7
+ * set): the browser sign-in is never offered while the token is used, so the
8
+ * hint names both ways out.
9
+ */
10
+ export declare const ENV_TOKEN_AUTH_HINT = "Set CLOUDFLARE_API_TOKEN in this shell to a valid read-only Cloudflare API token (read -rs CLOUDFLARE_API_TOKEN && export CLOUDFLARE_API_TOKEN) and run the same command again, or unset it (or use --cf-auth profile) to sign in with your browser instead.";
11
+ /** CF_PERMISSION_DENIED in env mode: the token lacks a read permission; the browser sign-in is the other way out. */
12
+ export declare const ENV_TOKEN_PERMISSION_HINT = "The API token in CLOUDFLARE_API_TOKEN cannot read everything the checkup needs. Add the read permissions to it, or unset it (or use --cf-auth profile) to sign in with your browser instead, then run the same command again.";
13
+ export declare class LocalCheckupError extends Error {
14
+ readonly code: LocalCheckupErrorCode;
15
+ readonly hint: string;
16
+ /** HTTP status of the Cloudflare or Vigilbase response, when one caused the error. */
17
+ readonly status?: number;
18
+ readonly retryAfterSec?: number;
19
+ constructor(code: LocalCheckupErrorCode, message: string, options?: {
20
+ hint?: string;
21
+ status?: number;
22
+ retryAfterSec?: number;
23
+ });
24
+ /** Mapped to exit code 2 by `runCli`. */
25
+ get isRateLimited(): boolean;
26
+ }
27
+ export declare function isLocalCheckupError(error: unknown): error is LocalCheckupError;
28
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/local/cloudflare-checkup/errors.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,iBAAiB,mvBAepB,CAAA;AACV,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;AAItE,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAqCnE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,iQAAkP,CAAA;AAElR,qHAAqH;AACrH,eAAO,MAAM,yBAAyB,kOAA6N,CAAA;AAEnQ,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,sFAAsF;IACtF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;gBAEnB,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAO;IASlI,yCAAyC;IACzC,IAAI,aAAa,IAAI,OAAO,CAE3B;CACF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAE9E"}