affitor 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -6,6 +6,7 @@ import { registerLoginCommand } from "./commands/login.js";
6
6
  import { registerLogoutCommand } from "./commands/logout.js";
7
7
  import { registerWhoamiCommand } from "./commands/whoami.js";
8
8
  import { registerInitCommand } from "./commands/init.js";
9
+ import { registerOnboardCommand } from "./commands/onboard.js";
9
10
  import { registerSetupCommand } from "./commands/setup-stripe.js";
10
11
  import { registerStatusCommand } from "./commands/status.js";
11
12
  import { registerTestCommand } from "./commands/test.js";
@@ -52,6 +53,7 @@ registerLoginCommand(program);
52
53
  registerLogoutCommand(program);
53
54
  registerWhoamiCommand(program);
54
55
  registerInitCommand(program);
56
+ registerOnboardCommand(program);
55
57
  registerSetupCommand(program);
56
58
  registerStatusCommand(program);
57
59
  registerTestCommand(program);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CACV,oFAAoF,CACrF;KACA,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CAAC,QAAQ,EAAE,oCAAoC,EAAE,KAAK,CAAC;KAC7D,MAAM,CAAC,kBAAkB,EAAE,0CAA0C,CAAC;KACtE,MAAM,CAAC,gBAAgB,EAAE,sCAAsC,EAAE,KAAK,CAAC;KACvE,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,KAAK,CAAC;KACzD,MAAM,CAAC,iBAAiB,EAAE,8BAA8B,CAAC;KACzD,MAAM,CAAC,iBAAiB,EAAE,6CAA6C,CAAC;KACxE,MAAM,CAAC,WAAW,EAAE,oBAAoB,EAAE,KAAK,CAAC;KAChD,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACtB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC5B,gBAAgB,CAAC;QACf,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC,CAAC;AACL,CAAC,CAAC;KACD,WAAW,CAAC,WAAW,EAAE,GAAG,EAAE;IAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IAEvC,MAAM,GAAG,GAAG;QACV,sBAAsB;QACtB,gCAAgC;QAChC,iCAAiC;QACjC,+BAA+B;KAChC,CAAC;IAEF,MAAM,KAAK,GAAG;QACZ,EAAE;QACF,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,EAAE,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE;QAC9C,EAAE;KACH,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEL,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC/B,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC/B,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC/B,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAC7B,uBAAuB,CAAC,OAAO,CAAC,CAAC;AAEjC,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -195,7 +195,7 @@ async function runInit(opts, flags) {
195
195
  ` Commission: ${format.green(formatCommission(commissionType, commissionRate, durationMonths))}`,
196
196
  "",
197
197
  ]);
198
- // AI-install wizard: detect stack → install affitor-sdk → wire tracking
198
+ // AI-install wizard: detect stack → install @affitor/sdk → wire tracking
199
199
  // (diff-preview + confirm). Falls back to manual steps when skipped or
200
200
  // non-interactive. Never runs in --json mode.
201
201
  const runWizard = interactive && !flags.json && opts.wizard !== false;
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { Command } from "commander";
2
+ import { type ReadinessResult, type TestChainStatus } from "../types.js";
3
+ export declare function registerOnboardCommand(program: Command): void;
4
+ /**
5
+ * The first failing gate (the blocker). The CMS readiness payload reports the
6
+ * id of the first failing gate at the top-level `blocker` field, and the gate
7
+ * verdicts under the keyed `gates` object — so resolve via `gates[blocker]`
8
+ * (NOT `gates.find`, which would throw: `gates` is an object, not an array).
9
+ * Falls back to scanning the keyed gates for the first non-`pass` status.
10
+ */
11
+ export declare function blockingGate(r: ReadinessResult): {
12
+ id: string;
13
+ next_action?: string;
14
+ } | undefined;
15
+ /**
16
+ * Render a single chain-step verdict. The CMS returns a `TestChainStatus`
17
+ * STRING per step — green ✓ ONLY when it is exactly `'attributed'`; an
18
+ * unattributed/wrong_partner step is a hard fail (✗ + status), pending is ⧗.
19
+ */
20
+ export declare function tick(v: TestChainStatus | undefined): string;
21
+ //# sourceMappingURL=onboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../../src/commands/onboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAezC,OAAO,EAAkC,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAezG,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,QAWtD;AA0ZD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,CAAC,EAAE,eAAe,GACjB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAalD;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,CAI3D"}
@@ -0,0 +1,401 @@
1
+ import { existsSync, readFileSync, writeFileSync } from "node:fs";
2
+ import { dirname, join, relative } from "node:path";
3
+ import { getRecipe } from "@affitor/recipes";
4
+ import * as logger from "../lib/logger.js";
5
+ import { format } from "../lib/logger.js";
6
+ import { getFlags } from "../lib/flags.js";
7
+ import { AffitorAPI, APIError, NetworkError } from "../lib/api-client.js";
8
+ import { resolveApiKey } from "../lib/config.js";
9
+ import { confirmAction } from "../lib/prompts.js";
10
+ import { detectStack } from "../lib/stack-detect.js";
11
+ import { detectPaymentProvider } from "../lib/server-tracking.js";
12
+ import { detectStripeWebhook } from "../lib/webhook-detect.js";
13
+ import { injectStripeTrackSale } from "../lib/inject.js";
14
+ import { runInstallWizard } from "../lib/wizard.js";
15
+ import { DEFAULT_API_URL } from "../types.js";
16
+ export function registerOnboardCommand(program) {
17
+ program
18
+ .command("onboard")
19
+ .description("Wire Affitor into this app end-to-end: detect → install browser tracking → inject the Stripe sale call → verify.")
20
+ .option("--api-key <key>", "Program API key (overrides env / .affitor/.env)")
21
+ .option("--yes", "Auto-confirm all diffs (apply without prompting)", false)
22
+ .action(async (opts, cmd) => {
23
+ await runOnboard(opts, getFlags(cmd));
24
+ });
25
+ }
26
+ /** Map our stack-detect framework to the recipe registry's framework union. */
27
+ function toRecipeFramework(framework) {
28
+ // The two unions are intentionally identical; this is a typed pass-through.
29
+ return framework;
30
+ }
31
+ async function runOnboard(opts, flags) {
32
+ const cwd = process.cwd();
33
+ const interactive = !flags.noInteractive && opts.interactive !== false;
34
+ // --yes (or the global --auto-confirm, or --no-interactive for agents)
35
+ // applies diffs without prompting.
36
+ const autoConfirm = !!opts.yes || flags.autoConfirm || flags.noInteractive;
37
+ const apiUrl = flags.apiUrl ?? DEFAULT_API_URL;
38
+ const steps = [];
39
+ // ── (a) Resolve API key + program ──
40
+ const apiKey = resolveApiKey({ apiKey: opts.apiKey ?? flags.apiKey }, cwd);
41
+ if (!apiKey) {
42
+ logger.error("No API key found. Pass --api-key, set AFFITOR_API_KEY, or run `affitor init` first.");
43
+ if (flags.json)
44
+ logger.json({ error: "no_api_key" });
45
+ process.exit(1);
46
+ }
47
+ const api = new AffitorAPI({ apiUrl, apiKey });
48
+ if (!flags.json) {
49
+ logger.banner();
50
+ logger.titledBox("Onboard", [
51
+ "",
52
+ " Wiring Affitor into your app end-to-end.",
53
+ ` API key: ${format.dim(logger.maskApiKey(apiKey))}`,
54
+ "",
55
+ ]);
56
+ }
57
+ // ── (b) Detect stack + payment provider ──
58
+ const stack = detectStack(cwd);
59
+ const provider = detectPaymentProvider(cwd);
60
+ steps.push({
61
+ step: "detect",
62
+ status: "ok",
63
+ detail: `framework=${stack.framework}, provider=${provider}`,
64
+ });
65
+ if (!flags.json) {
66
+ logger.titledBox("Detected", [
67
+ "",
68
+ ` Framework: ${stack.framework === "unknown" ? format.yellow("not detected") : format.green(stack.framework)}`,
69
+ ` Payment provider: ${provider === "unknown" ? format.yellow("not detected") : format.green(provider)}`,
70
+ "",
71
+ ]);
72
+ }
73
+ // ── (c) Browser tracking — reuse init's wizard (install @affitor/sdk +
74
+ // inject <AffitorTracker/> via diff-preview+confirm + scaffold lib/affitor.ts).
75
+ // Skipped in --json mode (the wizard is interactive/printed output). ──
76
+ if (!flags.json) {
77
+ await runInstallWizard({ cwd, programId: "", apiUrl, autoConfirm });
78
+ steps.push({ step: "browser_tracking", status: "ok", detail: "via install wizard" });
79
+ }
80
+ else {
81
+ steps.push({ step: "browser_tracking", status: "skipped", detail: "json mode" });
82
+ }
83
+ // ── (d) Server payment tracking — the new auto-edit (DIFF + confirm). ──
84
+ const saleStep = await wireServerSale({
85
+ cwd,
86
+ framework: stack.framework,
87
+ provider,
88
+ interactive,
89
+ autoConfirm,
90
+ json: flags.json,
91
+ });
92
+ steps.push(saleStep);
93
+ // ── (f) Persist AFFITOR_API_KEY into .env / .env.local (diff-preview, never
94
+ // overwrite an existing value). ──
95
+ const envStep = writeApiKeyToEnv(cwd, apiKey, { autoConfirm, json: flags.json });
96
+ steps.push(envStep);
97
+ // ── (g) Verify loop: fire the chain, poll readiness. ──
98
+ const verify = await runVerifyLoop(api, { apiKey, apiUrl, json: flags.json });
99
+ // ── (h) Final summary. ──
100
+ if (flags.json) {
101
+ logger.json({
102
+ program_id: verify.readiness?.program_id ?? null,
103
+ steps,
104
+ integration_verified: verify.integration_verified,
105
+ ...(verify.blocker ? { blocker: verify.blocker } : {}),
106
+ ...(verify.next_action ? { next_action: verify.next_action } : {}),
107
+ });
108
+ return;
109
+ }
110
+ if (verify.integration_verified) {
111
+ logger.titledBox("Verified", [
112
+ "",
113
+ ` ${format.green("✓")} Integration verified — clicks, leads and sales are attributing.`,
114
+ "",
115
+ ]);
116
+ }
117
+ else {
118
+ const lines = ["", ` ${format.yellow("⧗")} Not verified yet.`];
119
+ if (verify.blocker)
120
+ lines.push(` Blocked on: ${format.yellow(verify.blocker)}`);
121
+ if (verify.next_action)
122
+ lines.push(` Next action: ${verify.next_action}`);
123
+ lines.push("", ` Re-run ${format.cyan("affitor onboard")} after fixing the blocker.`, "");
124
+ logger.titledBox("Almost there", lines);
125
+ }
126
+ }
127
+ /**
128
+ * The safety-critical part: locate the Stripe webhook, run the PURE
129
+ * `injectStripeTrackSale` transform, and:
130
+ * - `injected` → show the DIFF and confirm before writing.
131
+ * - `already` → no-op (idempotent).
132
+ * - `unrecognized` → PRINT the exact patch (snippet + inject_target + file:line).
133
+ * - no webhook → PRINT the full recipe.
134
+ * NEVER auto-edits when the structure isn't cleanly recognized.
135
+ */
136
+ async function wireServerSale(args) {
137
+ const { cwd, framework, provider, interactive, autoConfirm, json } = args;
138
+ // Only Stripe has the auto-edit path (the recipe's sale snippet is keyed to
139
+ // the verified checkout.session.completed event object). Other providers →
140
+ // print the recipe (no reliable inject site).
141
+ // Use 's2s' mode so a sale snippet exists (Connect mode = metadata only).
142
+ const mode = "s2s";
143
+ const recipe = getRecipe(toRecipeFramework(framework), provider === "stripe" ? "stripe" : "unknown", mode);
144
+ if (provider !== "stripe") {
145
+ if (!json) {
146
+ printRecipe(recipe, null, "Server-side sale (printed — review and add)");
147
+ }
148
+ return { step: "server_sale", status: "manual", detail: `provider=${provider}: printed recipe` };
149
+ }
150
+ const hook = detectStripeWebhook(cwd, framework);
151
+ if (!hook) {
152
+ if (!json) {
153
+ printRecipe(recipe, null, "Stripe sale (no webhook found — add this where you verify webhooks)");
154
+ }
155
+ return { step: "server_sale", status: "manual", detail: "no webhook handler found: printed recipe" };
156
+ }
157
+ const fileAbs = join(cwd, hook.file);
158
+ let original;
159
+ try {
160
+ original = readFileSync(fileAbs, "utf8");
161
+ }
162
+ catch {
163
+ if (!json)
164
+ printRecipe(recipe, hook, "Stripe sale (couldn't read the webhook file — add manually)");
165
+ return { step: "server_sale", status: "manual", detail: `unreadable ${hook.file}: printed recipe` };
166
+ }
167
+ // Compute the import specifier from the webhook file's directory to the
168
+ // scaffolded server client (lib/affitor.ts or src/lib/affitor.ts).
169
+ // Mirror the path logic from wizard.ts: prefer src/lib when src/ exists.
170
+ const clientDir = existsSync(join(cwd, "src")) ? join(cwd, "src", "lib") : join(cwd, "lib");
171
+ const clientAbs = join(clientDir, "affitor.ts");
172
+ const webhookDir = dirname(fileAbs);
173
+ let importSpecifier = relative(webhookDir, clientAbs).replace(/\.ts$/, "");
174
+ // Ensure POSIX separators and a leading ./ or ../
175
+ importSpecifier = importSpecifier.replace(/\\/g, "/");
176
+ if (!importSpecifier.startsWith("."))
177
+ importSpecifier = `./${importSpecifier}`;
178
+ const saleSnippet = recipe.sale?.snippet ?? "";
179
+ const result = injectStripeTrackSale(original, { saleSnippet, importSpecifier });
180
+ if (result.status === "already") {
181
+ if (!json)
182
+ logger.step(`${hook.file} already reports the sale — skipped`);
183
+ return { step: "server_sale", status: "already", detail: hook.file };
184
+ }
185
+ if (result.status === "unrecognized") {
186
+ // NEVER force-edit payment code we can't place confidently — print the patch.
187
+ if (!json) {
188
+ logger.warn(`Found your Stripe webhook (${format.green(`${hook.file}:${hook.line}`)}) but couldn't place the sale call safely.`);
189
+ printRecipe(recipe, hook, "Add the sale call yourself (exact patch)");
190
+ }
191
+ return {
192
+ step: "server_sale",
193
+ status: "manual",
194
+ detail: `unrecognized shape in ${hook.file}: printed patch`,
195
+ };
196
+ }
197
+ // injected → DIFF + confirm before touching payment code.
198
+ if (!json) {
199
+ showDiff(hook.file, result.added);
200
+ }
201
+ const ok = json || autoConfirm || (interactive && (await confirmAction(`Apply this change to ${hook.file}?`)));
202
+ if (!ok) {
203
+ if (!json) {
204
+ logger.step("Skipped. Add the sale call when ready:");
205
+ printRecipe(recipe, hook, "Stripe sale (skipped — add manually)");
206
+ }
207
+ return { step: "server_sale", status: "skipped", detail: `${hook.file}: user declined` };
208
+ }
209
+ // In --json mode we never edit files (no diff was shown to confirm). Treat it
210
+ // as a manual step so agents drive the edit explicitly.
211
+ if (json) {
212
+ return { step: "server_sale", status: "manual", detail: `${hook.file}: json mode (no auto-edit)` };
213
+ }
214
+ writeFileSync(fileAbs, result.content, "utf8");
215
+ logger.success(`Injected affitor.trackSale into ${hook.file}`);
216
+ return { step: "server_sale", status: "ok", detail: hook.file };
217
+ }
218
+ /**
219
+ * (e) Always PRINT the metadata-propagation snippet — we never auto-edit the
220
+ * checkout-session-create call (it can't be located reliably). Plus the sale
221
+ * snippet + inject_target when a `hook` is known (the unrecognized/no-webhook
222
+ * fallbacks). Pure printing — touches no files.
223
+ */
224
+ function printRecipe(recipe, hook, title) {
225
+ const lines = [""];
226
+ // (e) Metadata — ALWAYS printed, NEVER auto-edited.
227
+ lines.push(` ${format.dim("1) At checkout-session creation — plant attribution metadata:")}`);
228
+ lines.push(` ${format.dim(recipe.metadata.why)}`);
229
+ for (const l of recipe.metadata.snippet.split("\n"))
230
+ lines.push(` ${format.cyan(l)}`);
231
+ lines.push("");
232
+ // Sale snippet + where to inject it.
233
+ if (recipe.sale) {
234
+ if (hook) {
235
+ lines.push(` ${format.dim(`2) Report the sale — in ${hook.file}:${hook.line}`)} ${format.dim(`(${hook.handlerHint})`)}`);
236
+ }
237
+ else {
238
+ lines.push(` ${format.dim(`2) Report the sale — ${recipe.sale.inject_target}:`)}`);
239
+ }
240
+ for (const l of recipe.sale.snippet.split("\n"))
241
+ lines.push(` ${format.cyan(l)}`);
242
+ lines.push("");
243
+ }
244
+ lines.push(` ${format.dim("Affitor never auto-edits your checkout/payment code — paste these in.")}`, "");
245
+ logger.titledBox(title, lines);
246
+ }
247
+ function showDiff(file, added) {
248
+ logger.newline();
249
+ logger.info(` ${format.dim("Proposed change to")} ${format.cyan(file)}${format.dim(":")}`);
250
+ for (const line of added) {
251
+ logger.info(` ${format.green("+ " + line)}`);
252
+ }
253
+ logger.newline();
254
+ }
255
+ // ─── (f) Write AFFITOR_API_KEY to .env / .env.local ──────────────────
256
+ /**
257
+ * Persist the program key into the project's env file (.env.local preferred for
258
+ * Next, else .env). NEVER overwrites an existing AFFITOR_API_KEY value; if a
259
+ * different value is present we print a diff-style notice and leave it. Appends
260
+ * a new line when absent (diff-preview, then confirm unless autoConfirm).
261
+ */
262
+ function writeApiKeyToEnv(cwd, apiKey, opts) {
263
+ const envName = existsSync(join(cwd, ".env.local")) ? ".env.local" : ".env";
264
+ const envPath = join(cwd, envName);
265
+ const line = `AFFITOR_API_KEY=${apiKey}`;
266
+ let content = "";
267
+ if (existsSync(envPath)) {
268
+ content = readFileSync(envPath, "utf8");
269
+ const existing = content.match(/^AFFITOR_API_KEY=(.*)$/m);
270
+ if (existing) {
271
+ if (existing[1].trim() === apiKey) {
272
+ if (!opts.json)
273
+ logger.step(`${envName} already has AFFITOR_API_KEY — skipped`);
274
+ return { step: "env_key", status: "already", detail: envName };
275
+ }
276
+ // Different value present — NEVER overwrite a secret. Print a notice.
277
+ if (!opts.json) {
278
+ logger.warn(`${envName} already has a different AFFITOR_API_KEY — left unchanged.`);
279
+ logger.step(`To use this key instead, set: ${line}`);
280
+ }
281
+ return { step: "env_key", status: "manual", detail: `${envName}: existing value kept` };
282
+ }
283
+ }
284
+ // --json (non-interactive auto) mode never edits files — the no-auto-edit
285
+ // contract. Report it as a manual step (mirrors wireServerSale's json branch)
286
+ // instead of silently mutating the user's root .env/.env.local.
287
+ if (opts.json) {
288
+ return { step: "env_key", status: "manual", detail: `${envName}: json mode (no auto-edit)` };
289
+ }
290
+ logger.newline();
291
+ logger.info(` ${format.dim(`Add to ${envName}:`)}`);
292
+ logger.info(` ${format.green("+ " + line)}`);
293
+ logger.newline();
294
+ const needsNewline = content.length > 0 && !content.endsWith("\n");
295
+ const block = `${needsNewline ? "\n" : ""}${line}\n`;
296
+ writeFileSync(envPath, content + block, "utf8");
297
+ if (!opts.json)
298
+ logger.success(`Wrote AFFITOR_API_KEY to ${envName}`);
299
+ return { step: "env_key", status: "ok", detail: envName };
300
+ }
301
+ const POLL_ATTEMPTS = 6;
302
+ const POLL_DELAY_MS = 2000;
303
+ /** Cap the total backoff wait so a rate-limited chain can never hang forever. */
304
+ const MAX_BACKOFF_MS = 30_000;
305
+ const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
306
+ /**
307
+ * Fire the synthetic chain, then poll readiness up to POLL_ATTEMPTS times until
308
+ * `integration_verified` (or a gate blocks). Honors 429: reads
309
+ * `retry_after_seconds`, backs off (capped at MAX_BACKOFF_MS), and never hammers.
310
+ */
311
+ async function runVerifyLoop(api, opts) {
312
+ if (!opts.json) {
313
+ logger.titledBox("Verify", ["", " Firing the synthetic click → lead → sale chain…", ""]);
314
+ }
315
+ // Fire the chain. On 429, back off once (capped) then continue to polling.
316
+ try {
317
+ const chain = await api.runVerificationChain({ apiKey: opts.apiKey, apiUrl: opts.apiUrl });
318
+ if (chain.rate_limited) {
319
+ const wait = Math.min((chain.retry_after_seconds ?? 5) * 1000, MAX_BACKOFF_MS);
320
+ if (!opts.json) {
321
+ logger.step(`Rate limited — backing off ${Math.ceil(wait / 1000)}s (won't hammer).`);
322
+ }
323
+ await sleep(wait);
324
+ }
325
+ else if (!opts.json && chain.verdict) {
326
+ const v = chain.verdict;
327
+ logger.step(`Chain: click ${tick(v.click)} · lead ${tick(v.lead)} · sale ${tick(v.sale)}`);
328
+ }
329
+ }
330
+ catch (err) {
331
+ if (!opts.json) {
332
+ const msg = err instanceof APIError || err instanceof NetworkError ? err.message : err.message;
333
+ logger.warn(`Verification chain didn't run: ${msg}`);
334
+ }
335
+ }
336
+ // Poll readiness until verified or a gate blocks.
337
+ let last;
338
+ for (let attempt = 1; attempt <= POLL_ATTEMPTS; attempt++) {
339
+ try {
340
+ last = await api.getReadiness({ apiKey: opts.apiKey, apiUrl: opts.apiUrl });
341
+ }
342
+ catch (err) {
343
+ if (!opts.json) {
344
+ const msg = err instanceof APIError ? err.message : err.message;
345
+ logger.step(`Readiness check failed (attempt ${attempt}/${POLL_ATTEMPTS}): ${msg}`);
346
+ }
347
+ await sleep(POLL_DELAY_MS);
348
+ continue;
349
+ }
350
+ if (last.integration_verified) {
351
+ return { integration_verified: true, readiness: last };
352
+ }
353
+ const gate = blockingGate(last);
354
+ if (!opts.json && gate) {
355
+ logger.step(`Gate "${gate.id}" not passed (attempt ${attempt}/${POLL_ATTEMPTS}).`);
356
+ }
357
+ if (attempt < POLL_ATTEMPTS)
358
+ await sleep(POLL_DELAY_MS);
359
+ }
360
+ const gate = last ? blockingGate(last) : undefined;
361
+ return {
362
+ integration_verified: false,
363
+ blocker: gate?.id ?? last?.blocker ?? null,
364
+ next_action: gate?.next_action ?? null,
365
+ readiness: last,
366
+ };
367
+ }
368
+ /**
369
+ * The first failing gate (the blocker). The CMS readiness payload reports the
370
+ * id of the first failing gate at the top-level `blocker` field, and the gate
371
+ * verdicts under the keyed `gates` object — so resolve via `gates[blocker]`
372
+ * (NOT `gates.find`, which would throw: `gates` is an object, not an array).
373
+ * Falls back to scanning the keyed gates for the first non-`pass` status.
374
+ */
375
+ export function blockingGate(r) {
376
+ const gates = r.gates;
377
+ if (r.blocker) {
378
+ return { id: r.blocker, next_action: gates?.[r.blocker]?.next_action };
379
+ }
380
+ if (gates) {
381
+ for (const [id, gate] of Object.entries(gates)) {
382
+ if (gate && gate.status !== "pass") {
383
+ return { id, next_action: gate.next_action };
384
+ }
385
+ }
386
+ }
387
+ return undefined;
388
+ }
389
+ /**
390
+ * Render a single chain-step verdict. The CMS returns a `TestChainStatus`
391
+ * STRING per step — green ✓ ONLY when it is exactly `'attributed'`; an
392
+ * unattributed/wrong_partner step is a hard fail (✗ + status), pending is ⧗.
393
+ */
394
+ export function tick(v) {
395
+ if (v === "attributed")
396
+ return format.green("✓");
397
+ if (v === "pending" || v === undefined)
398
+ return format.yellow("⧗");
399
+ return `${format.red("✗")} ${format.dim(v)}`;
400
+ }
401
+ //# sourceMappingURL=onboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboard.js","sourceRoot":"","sources":["../../src/commands/onboard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,SAAS,EAAgD,MAAM,kBAAkB,CAAC;AAC3F,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAkB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,eAAe,EAA6D,MAAM,aAAa,CAAC;AAezG,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CACV,kHAAkH,CACnH;SACA,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,CAAC;SAC5E,MAAM,CAAC,OAAO,EAAE,kDAAkD,EAAE,KAAK,CAAC;SAC1E,MAAM,CAAC,KAAK,EAAE,IAAiB,EAAE,GAAG,EAAE,EAAE;QACvC,MAAM,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,+EAA+E;AAC/E,SAAS,iBAAiB,CAAC,SAAoB;IAC7C,4EAA4E;IAC5E,OAAO,SAA4B,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAiB,EAAE,KAAe;IAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC;IACvE,uEAAuE;IACvE,mCAAmC;IACnC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,aAAa,CAAC;IAC3E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,eAAe,CAAC;IAC/C,MAAM,KAAK,GAAkB,EAAE,CAAC;IAEhC,sCAAsC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CACV,qFAAqF,CACtF,CAAC;QACF,IAAI,KAAK,CAAC,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAE/C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE;YAC1B,EAAE;YACF,4CAA4C;YAC5C,eAAe,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE;YACtD,EAAE;SACH,CAAC,CAAC;IACL,CAAC;IAED,4CAA4C;IAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC;QACT,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,aAAa,KAAK,CAAC,SAAS,cAAc,QAAQ,EAAE;KAC7D,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE;YAC3B,EAAE;YACF,uBAAuB,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;YACtH,uBAAuB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;YACxG,EAAE;SACH,CAAC,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,gFAAgF;IAChF,wEAAwE;IACxE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QACpE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;QACpC,GAAG;QACH,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ;QACR,WAAW;QACX,WAAW;QACX,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC,CAAC;IACH,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAErB,6EAA6E;IAC7E,mCAAmC;IACnC,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACjF,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEpB,yDAAyD;IACzD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9E,2BAA2B;IAC3B,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,IAAI,IAAI;YAChD,KAAK;YACL,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAChC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE;YAC3B,EAAE;YACF,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,kEAAkE;YACxF,EAAE;SACH,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,CAAC,EAAE,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClF,IAAI,MAAM,CAAC,WAAW;YAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3E,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;QAC3F,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAaD;;;;;;;;GAQG;AACH,KAAK,UAAU,cAAc,CAAC,IAAkB;IAC9C,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAE1E,4EAA4E;IAC5E,2EAA2E;IAC3E,8CAA8C;IAC9C,0EAA0E;IAC1E,MAAM,IAAI,GAAS,KAAK,CAAC;IACzB,MAAM,MAAM,GAAG,SAAS,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAE3G,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,6CAA6C,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,QAAQ,kBAAkB,EAAE,CAAC;IACnG,CAAC;IAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAEjD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,qEAAqE,CAAC,CAAC;QACnG,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,0CAA0C,EAAE,CAAC;IACvG,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC,IAAI;YAAE,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,6DAA6D,CAAC,CAAC;QACpG,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC;IACtG,CAAC;IAED,wEAAwE;IACxE,mEAAmE;IACnE,yEAAyE;IACzE,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5F,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,eAAe,GAAG,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC3E,kDAAkD;IAClD,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,eAAe,GAAG,KAAK,eAAe,EAAE,CAAC;IAE/E,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;IAC/C,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;IAEjF,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,qCAAqC,CAAC,CAAC;QAC1E,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACvE,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACrC,8EAA8E;QAC9E,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CACT,8BAA8B,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,4CAA4C,CACpH,CAAC;YACF,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,0CAA0C,CAAC,CAAC;QACxE,CAAC;QACD,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,yBAAyB,IAAI,CAAC,IAAI,iBAAiB;SAC5D,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,EAAE,GACN,IAAI,IAAI,WAAW,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,aAAa,CAAC,wBAAwB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACtG,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACtD,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,sCAAsC,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC;IAC3F,CAAC;IAED,8EAA8E;IAC9E,wDAAwD;IACxD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,4BAA4B,EAAE,CAAC;IACrG,CAAC;IAED,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,CAAC,OAAO,CAAC,mCAAmC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAClE,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAClB,MAAoC,EACpC,IAAgE,EAChE,KAAa;IAEb,MAAM,KAAK,GAAa,CAAC,EAAE,CAAC,CAAC;IAE7B,oDAAoD;IACpD,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,+DAA+D,CAAC,EAAE,CAAC,CAAC;IAC/F,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1F,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,qCAAqC;IACrC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,IAAI,IAAI,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,2BAA2B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5H,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,uEAAuE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3G,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,KAAe;IAC7C,MAAM,CAAC,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5F,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,CAAC,OAAO,EAAE,CAAC;AACnB,CAAC;AAED,wEAAwE;AAExE;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,GAAW,EACX,MAAc,EACd,IAA6C;IAE7C,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,mBAAmB,MAAM,EAAE,CAAC;IAEzC,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC1D,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,wCAAwC,CAAC,CAAC;gBAChF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACjE,CAAC;YACD,sEAAsE;YACtE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,4DAA4D,CAAC,CAAC;gBACpF,MAAM,CAAC,IAAI,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,uBAAuB,EAAE,CAAC;QAC1F,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,8EAA8E;IAC9E,gEAAgE;IAChE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,4BAA4B,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,CAAC,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,UAAU,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAChD,MAAM,CAAC,OAAO,EAAE,CAAC;IAEjB,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC;IACrD,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,OAAO,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;IACtE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC5D,CAAC;AAWD,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,aAAa,GAAG,IAAI,CAAC;AAC3B,iFAAiF;AACjF,MAAM,cAAc,GAAG,MAAM,CAAC;AAE9B,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpE;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAC1B,GAAe,EACf,IAAuD;IAEvD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,mDAAmD,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5F,CAAC;IAED,2EAA2E;IAC3E,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3F,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC,CAAC;YAC/E,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvF,CAAC;YACD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YACxB,MAAM,CAAC,IAAI,CACT,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAC9E,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,IAAI,GAAG,YAAY,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,GAAa,CAAC,OAAO,CAAC;YAC1G,MAAM,CAAC,IAAI,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,IAAI,IAAiC,CAAC;IACtC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,aAAa,EAAE,OAAO,EAAE,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,GAAa,CAAC,OAAO,CAAC;gBAC3E,MAAM,CAAC,IAAI,CAAC,mCAAmC,OAAO,IAAI,aAAa,MAAM,GAAG,EAAE,CAAC,CAAC;YACtF,CAAC;YACD,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACzD,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,yBAAyB,OAAO,IAAI,aAAa,IAAI,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,OAAO,GAAG,aAAa;YAAE,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnD,OAAO;QACL,oBAAoB,EAAE,KAAK;QAC3B,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI;QAC1C,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,IAAI;QACtC,SAAS,EAAE,IAAI;KAChB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,CAAkB;IAElB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACtB,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACzE,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACnC,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,IAAI,CAAC,CAA8B;IACjD,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAClE,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/C,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { InitResponse, StripeConnectResponse, ProgramStatus, ProgramSummary, TestEventResult } from "../types.js";
1
+ import type { InitResponse, StripeConnectResponse, ProgramStatus, ProgramSummary, TestEventResult, ReadinessResult, VerificationChainResult } from "../types.js";
2
2
  export interface AuthStartResponse {
3
3
  state: string;
4
4
  auth_url: string;
@@ -49,6 +49,30 @@ export declare class AffitorAPI {
49
49
  program_id: string;
50
50
  event_type: "click" | "lead" | "sale";
51
51
  }): Promise<TestEventResult>;
52
+ /**
53
+ * GET /api/v1/programs/me/readiness — the per-program 5-gate verdict
54
+ * (Bearer key). `integration_verified` flips true when every gate passes;
55
+ * the blocking gate's `next_action` tells the caller what to fix.
56
+ */
57
+ getReadiness(opts?: {
58
+ apiKey?: string;
59
+ apiUrl?: string;
60
+ }): Promise<ReadinessResult>;
61
+ /**
62
+ * POST /api/v1/cli/test-event {type:'chain'} — fire the synthetic
63
+ * click→lead→sale chain through the REAL attribution pipeline (isolated
64
+ * is_test rows). Mirrors the MCP `fireVerificationChain` contract exactly.
65
+ *
66
+ * Does NOT use the shared `request()` helper because that throws on 429. A
67
+ * 429 here is expected (the chain is rate-limited to 10/program/hour) and the
68
+ * caller must read `retry_after_seconds` and back off — so on a non-2xx this
69
+ * returns the parsed body (with `rate_limited` + `retry_after_seconds` merged
70
+ * in for 429) instead of throwing. Only a network/parse failure throws.
71
+ */
72
+ runVerificationChain(opts?: {
73
+ apiKey?: string;
74
+ apiUrl?: string;
75
+ }): Promise<VerificationChainResult>;
52
76
  private request;
53
77
  }
54
78
  export declare class APIError extends Error {
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EAChB,MAAM,aAAa,CAAC;AAIrB,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AASD,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO;IAK3D;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU;IAQjF,WAAW,CAAC,IAAI,EAAE;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,YAAY,CAAC;IAOnB,oBAAoB,CAAC,IAAI,EAAE;QAC/B,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAO5B,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAQpD,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAMvC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQlD,YAAY,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAIzC,aAAa,CAAC,IAAI,EAAE;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KACvC,GAAG,OAAO,CAAC,eAAe,CAAC;YAOd,OAAO;CAuDtB;AAED,qBAAa,QAAS,SAAQ,KAAK;IAExB,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;CAKlB;AAED,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B"}
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,eAAe,EACf,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAIrB,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AASD,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO;IAK3D;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU;IAQjF,WAAW,CAAC,IAAI,EAAE;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,YAAY,CAAC;IAOnB,oBAAoB,CAAC,IAAI,EAAE;QAC/B,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAO5B,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAQpD,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAMvC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQlD,YAAY,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAIzC,aAAa,CAAC,IAAI,EAAE;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KACvC,GAAG,OAAO,CAAC,eAAe,CAAC;IAS5B;;;;OAIG;IACG,YAAY,CAAC,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAO7F;;;;;;;;;;OAUG;IACG,oBAAoB,CACxB,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAC9C,OAAO,CAAC,uBAAuB,CAAC;YA8CrB,OAAO;CA+DtB;AAED,qBAAa,QAAS,SAAQ,KAAK;IAExB,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;CAKlB;AAED,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B"}