hatchkit 0.1.47 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/adopt.d.ts +61 -1
  2. package/dist/adopt.d.ts.map +1 -1
  3. package/dist/adopt.js +90 -86
  4. package/dist/adopt.js.map +1 -1
  5. package/dist/completion.d.ts.map +1 -1
  6. package/dist/completion.js +19 -1
  7. package/dist/completion.js.map +1 -1
  8. package/dist/config.d.ts +32 -1
  9. package/dist/config.d.ts.map +1 -1
  10. package/dist/config.js +364 -1
  11. package/dist/config.js.map +1 -1
  12. package/dist/deploy/coolify.d.ts +5 -0
  13. package/dist/deploy/coolify.d.ts.map +1 -1
  14. package/dist/deploy/coolify.js +67 -4
  15. package/dist/deploy/coolify.js.map +1 -1
  16. package/dist/deploy/ghcr.d.ts +1 -0
  17. package/dist/deploy/ghcr.d.ts.map +1 -1
  18. package/dist/deploy/ghcr.js +2 -2
  19. package/dist/deploy/ghcr.js.map +1 -1
  20. package/dist/deploy/github.d.ts.map +1 -1
  21. package/dist/deploy/github.js +3 -2
  22. package/dist/deploy/github.js.map +1 -1
  23. package/dist/deploy/rollback.d.ts.map +1 -1
  24. package/dist/deploy/rollback.js +9 -0
  25. package/dist/deploy/rollback.js.map +1 -1
  26. package/dist/dev-setup.d.ts +10 -4
  27. package/dist/dev-setup.d.ts.map +1 -1
  28. package/dist/dev-setup.js +166 -57
  29. package/dist/dev-setup.js.map +1 -1
  30. package/dist/doctor.d.ts.map +1 -1
  31. package/dist/doctor.js +65 -1
  32. package/dist/doctor.js.map +1 -1
  33. package/dist/email/index.js +5 -5
  34. package/dist/email/index.js.map +1 -1
  35. package/dist/email/setup.d.ts +1 -1
  36. package/dist/email/setup.d.ts.map +1 -1
  37. package/dist/email/setup.js +3 -3
  38. package/dist/email/setup.js.map +1 -1
  39. package/dist/explain.d.ts.map +1 -1
  40. package/dist/explain.js +8 -7
  41. package/dist/explain.js.map +1 -1
  42. package/dist/index.js +277 -60
  43. package/dist/index.js.map +1 -1
  44. package/dist/inventory.d.ts +1 -0
  45. package/dist/inventory.d.ts.map +1 -1
  46. package/dist/inventory.js +2 -0
  47. package/dist/inventory.js.map +1 -1
  48. package/dist/onboarding/plan.d.ts +54 -0
  49. package/dist/onboarding/plan.d.ts.map +1 -0
  50. package/dist/onboarding/plan.js +143 -0
  51. package/dist/onboarding/plan.js.map +1 -0
  52. package/dist/onboarding/review.d.ts +27 -0
  53. package/dist/onboarding/review.d.ts.map +1 -0
  54. package/dist/onboarding/review.js +55 -0
  55. package/dist/onboarding/review.js.map +1 -0
  56. package/dist/prompts.d.ts +13 -0
  57. package/dist/prompts.d.ts.map +1 -1
  58. package/dist/prompts.js +107 -89
  59. package/dist/prompts.js.map +1 -1
  60. package/dist/provision/index.d.ts +21 -3
  61. package/dist/provision/index.d.ts.map +1 -1
  62. package/dist/provision/index.js +112 -5
  63. package/dist/provision/index.js.map +1 -1
  64. package/dist/provision/plausible.d.ts +10 -0
  65. package/dist/provision/plausible.d.ts.map +1 -0
  66. package/dist/provision/plausible.js +103 -0
  67. package/dist/provision/plausible.js.map +1 -0
  68. package/dist/provision/search-console.d.ts +17 -0
  69. package/dist/provision/search-console.d.ts.map +1 -0
  70. package/dist/provision/search-console.js +142 -0
  71. package/dist/provision/search-console.js.map +1 -0
  72. package/dist/scaffold/app.d.ts +1 -0
  73. package/dist/scaffold/app.d.ts.map +1 -1
  74. package/dist/scaffold/app.js +4 -1
  75. package/dist/scaffold/app.js.map +1 -1
  76. package/dist/scaffold/infra.js +2 -0
  77. package/dist/scaffold/infra.js.map +1 -1
  78. package/dist/scaffold/manifest.d.ts +4 -2
  79. package/dist/scaffold/manifest.d.ts.map +1 -1
  80. package/dist/scaffold/manifest.js +7 -1
  81. package/dist/scaffold/manifest.js.map +1 -1
  82. package/dist/scaffold/server-add.d.ts +21 -0
  83. package/dist/scaffold/server-add.d.ts.map +1 -0
  84. package/dist/scaffold/server-add.js +273 -0
  85. package/dist/scaffold/server-add.js.map +1 -0
  86. package/dist/scaffold/update.d.ts +1 -0
  87. package/dist/scaffold/update.d.ts.map +1 -1
  88. package/dist/scaffold/update.js +8 -5
  89. package/dist/scaffold/update.js.map +1 -1
  90. package/dist/status.d.ts.map +1 -1
  91. package/dist/status.js +27 -1
  92. package/dist/status.js.map +1 -1
  93. package/dist/templates/base/env.example.hbs +3 -0
  94. package/dist/utils/cloudflare-api.d.ts +5 -0
  95. package/dist/utils/cloudflare-api.d.ts.map +1 -1
  96. package/dist/utils/cloudflare-api.js +19 -0
  97. package/dist/utils/cloudflare-api.js.map +1 -1
  98. package/dist/utils/coolify-api.d.ts +3 -2
  99. package/dist/utils/coolify-api.d.ts.map +1 -1
  100. package/dist/utils/coolify-api.js +19 -5
  101. package/dist/utils/coolify-api.js.map +1 -1
  102. package/dist/utils/flags.d.ts.map +1 -1
  103. package/dist/utils/flags.js +16 -0
  104. package/dist/utils/flags.js.map +1 -1
  105. package/dist/utils/run-ledger.d.ts +3 -0
  106. package/dist/utils/run-ledger.d.ts.map +1 -1
  107. package/dist/utils/run-ledger.js.map +1 -1
  108. package/dist/utils/secrets.d.ts +5 -0
  109. package/dist/utils/secrets.d.ts.map +1 -1
  110. package/dist/utils/secrets.js +5 -0
  111. package/dist/utils/secrets.js.map +1 -1
  112. package/package.json +24 -3
@@ -1,4 +1,4 @@
1
- export type ProvisionService = "glitchtip" | "openpanel" | "resend" | "s3" | "email";
1
+ export type ProvisionService = "glitchtip" | "openpanel" | "plausible" | "resend" | "s3" | "email" | "search-console";
2
2
  export type SurfaceMode = "shared" | "separate" | "server-only" | "client-only";
3
3
  export interface Surfaces {
4
4
  /** Which SDK surfaces the project has. Drives where env values land
@@ -12,8 +12,8 @@ export interface Surfaces {
12
12
  * `mode` is `"server-only"`. */
13
13
  clientEnvDir?: string;
14
14
  /** Absolute path to the project root (where `.hatchkit.json` lives).
15
- * Optional for the legacy services (GlitchTip / OpenPanel / Resend
16
- * don't read the manifest), required for `s3` — the s3 handler
15
+ * Optional for most services, useful for Plausible to infer the
16
+ * project domain, and required for `s3` — the s3 handler
17
17
  * reads `s3Buckets` from the manifest to decide which buckets to
18
18
  * mint scoped tokens for. */
19
19
  projectDir?: string;
@@ -29,6 +29,10 @@ export type ProvisionedEvent = {
29
29
  } | {
30
30
  service: "openpanel";
31
31
  project: string;
32
+ } | {
33
+ service: "plausible";
34
+ project: string;
35
+ domain: string;
32
36
  } | {
33
37
  service: "resend";
34
38
  client: string;
@@ -56,6 +60,18 @@ export type ProvisionedEvent = {
56
60
  address: string;
57
61
  created: boolean;
58
62
  }>;
63
+ } | {
64
+ service: "search-console";
65
+ domain: string;
66
+ siteUrl: string;
67
+ dnsRecord?: {
68
+ id: string;
69
+ zoneId: string;
70
+ name: string;
71
+ type: "TXT";
72
+ created: boolean;
73
+ updated: boolean;
74
+ };
59
75
  };
60
76
  export interface ProvisionOptions {
61
77
  baseName: string;
@@ -68,6 +84,8 @@ export interface ProvisionOptions {
68
84
  /** Also write observability values to `.env.development`. Off by
69
85
  * default — see the file header. */
70
86
  enableDevObs?: boolean;
87
+ /** Domain for services that are site/domain-scoped, e.g. Plausible. */
88
+ domain?: string;
71
89
  /** Fired after each provider successfully creates a resource. The
72
90
  * callback runs synchronously between the `withSpinner` succeed
73
91
  * and the next provider, so it can append to a ledger / log
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/provision/index.ts"],"names":[],"mappings":"AAkEA,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC;AAErF,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,aAAa,CAAC;AAEhF,MAAM,WAAW,QAAQ;IACvB;4EACwE;IACxE,IAAI,EAAE,WAAW,CAAC;IAClB;;2BAEuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;qCACiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;kCAI8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;+CAI+C;AAC/C,MAAM,MAAM,gBAAgB,GACxB;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACzE;IACE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,yBAAyB,EAAE,OAAO,CAAC;IACnC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,UAAU,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,GAAG,KAAK,CAAA;KAAE,CAAC,CAAC;IACpE,KAAK,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACjE,CAAC;AAEN,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;6DACyD;IACzD,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC5B;yCACqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;4CAGwC;IACxC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnD;AAeD,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuRxE;AA8JD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;uEAEmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4G5E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/provision/index.ts"],"names":[],"mappings":"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"}
@@ -29,12 +29,14 @@ import { existsSync, mkdirSync, rmSync, writeFileSync } from "node:fs";
29
29
  import { dirname, join, relative, resolve } from "node:path";
30
30
  import { confirm, input, select } from "@inquirer/prompts";
31
31
  import chalk from "chalk";
32
- import { ensureGlitchtip, ensureOpenpanel, ensureResend, ensureS3, getConfigPath, } from "../config.js";
33
- import { validateProjectName } from "../utils/validate.js";
32
+ import { ensureGlitchtip, ensureGoogleSearchConsole, ensureOpenpanel, ensurePlausible, ensureResend, ensureS3, getConfigPath, } from "../config.js";
33
+ import { validateDomain, validateProjectName } from "../utils/validate.js";
34
34
  import { deleteGlitchtipClient, provisionGlitchtipClient, } from "./glitchtip.js";
35
35
  import { deleteOpenpanelClient, provisionOpenpanelClient, } from "./openpanel.js";
36
+ import { deletePlausibleSite, provisionPlausibleSite } from "./plausible.js";
36
37
  import { createResendDomain, deleteResendClient, listResendDomains, normalizeDomainInput, provisionResendClient, } from "./resend.js";
37
38
  import { provisionR2BucketTokens, renderR2BucketTokensEnv, unprovisionR2BucketTokens, } from "./s3.js";
39
+ import { provisionSearchConsoleForDomain, unprovisionSearchConsoleForDomain, } from "./search-console.js";
38
40
  import { parseEnvLines, writeDevEnv, writeProdEnv } from "./write-env.js";
39
41
  export async function runProvision(opts) {
40
42
  const nameCheck = validateProjectName(opts.baseName);
@@ -47,8 +49,12 @@ export async function runProvision(opts) {
47
49
  await ensureGlitchtip();
48
50
  if (opts.services.includes("openpanel"))
49
51
  await ensureOpenpanel();
52
+ if (opts.services.includes("plausible"))
53
+ await ensurePlausible();
50
54
  if (opts.services.includes("resend"))
51
55
  await ensureResend();
56
+ if (opts.services.includes("search-console"))
57
+ await ensureGoogleSearchConsole();
52
58
  // S3 is currently R2-only — `ensureS3("r2")` prompts for the admin
53
59
  // token (Account>R2:Edit + User>API Tokens:Edit) and stores the
54
60
  // endpoint metadata. Same lazy-config-before-spinner contract.
@@ -59,6 +65,10 @@ export async function runProvision(opts) {
59
65
  await ensureDns();
60
66
  await ensureDefaultForwardingEmail();
61
67
  }
68
+ if (opts.services.includes("search-console")) {
69
+ const { ensureDns } = await import("../config.js");
70
+ await ensureDns();
71
+ }
62
72
  const surfaces = await resolveSurfaces(opts);
63
73
  const enableDevObs = opts.enableDevObs ?? false;
64
74
  // Resend domain: pick once, reused across dev + prod.
@@ -67,6 +77,9 @@ export async function runProvision(opts) {
67
77
  resendDomainId = await pickResendDomain();
68
78
  }
69
79
  const buckets = initBuckets(surfaces);
80
+ const plausibleDomain = opts.services.includes("plausible")
81
+ ? await resolvePlausibleDomain(opts, surfaces)
82
+ : undefined;
70
83
  console.log(chalk.bold(`\n ── Provisioning ${opts.baseName} ──────────────────────────\n`));
71
84
  // ── GlitchTip ──
72
85
  if (opts.services.includes("glitchtip")) {
@@ -116,6 +129,21 @@ export async function runProvision(opts) {
116
129
  }
117
130
  }
118
131
  }
132
+ // ── Plausible ── (site-scoped browser analytics)
133
+ if (opts.services.includes("plausible")) {
134
+ const clientBucket = buckets.find((b) => b.label === "client");
135
+ if (!clientBucket) {
136
+ console.log(chalk.yellow(` Skipping Plausible — this project has no client surface, so there's nowhere to put NEXT_PUBLIC_PLAUSIBLE_*.`));
137
+ }
138
+ else if (!plausibleDomain) {
139
+ console.log(chalk.yellow(` Skipping Plausible — couldn't resolve the public site domain for ${opts.baseName}.`));
140
+ }
141
+ else {
142
+ const res = await withSpinner(`Plausible: creating site ${plausibleDomain}`, () => provisionPlausibleSite(opts.baseName, plausibleDomain));
143
+ opts.onProvisioned?.({ service: "plausible", project: opts.baseName, domain: res.domain });
144
+ pushObsLines(buckets, "client", renderPlausibleEnv(res), enableDevObs);
145
+ }
146
+ }
119
147
  // ── Resend ── (always server-side; dev/prod keys are not observability)
120
148
  if (opts.services.includes("resend")) {
121
149
  const serverBucket = buckets.find((b) => b.label === "server");
@@ -176,6 +204,33 @@ export async function runProvision(opts) {
176
204
  }
177
205
  }
178
206
  }
207
+ // ── Google Search Console ── (domain verification + property add)
208
+ //
209
+ // Uses Google OAuth stored once during setup, then proves ownership
210
+ // with a Cloudflare DNS TXT record. It writes no runtime env because
211
+ // Search Console is account state, not app config.
212
+ if (opts.services.includes("search-console")) {
213
+ const projectDir = surfaces?.projectDir;
214
+ if (!projectDir) {
215
+ console.log(chalk.yellow(" Skipping Search Console — need a project dir (.hatchkit.json) to read the domain. Pass --project-dir."));
216
+ }
217
+ else {
218
+ const { readManifest } = await import("../scaffold/manifest.js");
219
+ const manifest = readManifest(projectDir);
220
+ if (!manifest?.domain) {
221
+ console.log(chalk.yellow(" Skipping Search Console — manifest has no `domain` field."));
222
+ }
223
+ else {
224
+ const result = await withSpinner(`Search Console: verifying ${manifest.domain}`, () => provisionSearchConsoleForDomain(manifest.domain));
225
+ opts.onProvisioned?.({
226
+ service: "search-console",
227
+ domain: result.domain,
228
+ siteUrl: result.siteUrl,
229
+ dnsRecord: result.dnsRecord,
230
+ });
231
+ }
232
+ }
233
+ }
179
234
  // ── S3 / R2 ── (server-side only; per-bucket scoped tokens)
180
235
  if (opts.services.includes("s3")) {
181
236
  const serverBucket = buckets.find((b) => b.label === "server");
@@ -261,8 +316,10 @@ export async function runProvision(opts) {
261
316
  }
262
317
  console.log();
263
318
  if (!enableDevObs &&
264
- (opts.services.includes("glitchtip") || opts.services.includes("openpanel"))) {
265
- console.log(chalk.dim(" Note: observability (GlitchTip/OpenPanel) values went to prod only.\n" +
319
+ (opts.services.includes("glitchtip") ||
320
+ opts.services.includes("openpanel") ||
321
+ opts.services.includes("plausible"))) {
322
+ console.log(chalk.dim(" Note: observability (GlitchTip/OpenPanel/Plausible) values went to prod only.\n" +
266
323
  " Dev errors/events would pollute real metrics — pass --enable-dev-obs to\n" +
267
324
  " also populate .env.development when you need to debug SDK wiring."));
268
325
  }
@@ -357,6 +414,27 @@ async function resolveSurfaces(opts) {
357
414
  }
358
415
  return surfaces;
359
416
  }
417
+ async function resolvePlausibleDomain(opts, surfaces) {
418
+ if (opts.domain)
419
+ return opts.domain.trim().toLowerCase();
420
+ if (surfaces?.projectDir) {
421
+ try {
422
+ const { readManifest } = await import("../scaffold/manifest.js");
423
+ const manifest = readManifest(surfaces.projectDir);
424
+ if (manifest?.domain)
425
+ return manifest.domain.trim().toLowerCase();
426
+ }
427
+ catch {
428
+ // Fall through to prompt below.
429
+ }
430
+ }
431
+ const picked = (await input({
432
+ message: "Plausible site domain:",
433
+ default: `${opts.baseName}.com`,
434
+ validate: (v) => validateDomain(v.trim()),
435
+ })).trim();
436
+ return picked ? picked.toLowerCase() : undefined;
437
+ }
360
438
  function detectSurfaceDir(projectDir, candidates) {
361
439
  for (const c of candidates) {
362
440
  if (existsSync(join(projectDir, c)))
@@ -405,6 +483,8 @@ export async function runUnprovision(opts) {
405
483
  await ensureGlitchtip();
406
484
  if (opts.services.includes("openpanel"))
407
485
  await ensureOpenpanel();
486
+ if (opts.services.includes("plausible"))
487
+ await ensurePlausible();
408
488
  if (opts.services.includes("resend"))
409
489
  await ensureResend();
410
490
  if (opts.dryRun) {
@@ -424,6 +504,9 @@ export async function runUnprovision(opts) {
424
504
  await runDelete(`OpenPanel: deleting project ${name}`, opts.dryRun, () => deleteOpenpanelClient(name));
425
505
  }
426
506
  }
507
+ if (opts.services.includes("plausible")) {
508
+ await runDelete(`Plausible: deleting site for ${opts.baseName}`, opts.dryRun, () => deletePlausibleSite(opts.baseName));
509
+ }
427
510
  // Resend keeps the -dev/-prod pair.
428
511
  if (opts.services.includes("resend")) {
429
512
  for (const env of ["dev", "prod"]) {
@@ -431,6 +514,22 @@ export async function runUnprovision(opts) {
431
514
  await runDelete(`Resend: deleting API key ${name}`, opts.dryRun, () => deleteResendClient(name));
432
515
  }
433
516
  }
517
+ // Search Console: remove the property from the configured Google
518
+ // account. Ownership verification is left alone; Google may share it
519
+ // with other services/properties for the same domain.
520
+ if (opts.services.includes("search-console")) {
521
+ let domain;
522
+ if (opts.projectDir) {
523
+ const { readManifest } = await import("../scaffold/manifest.js");
524
+ domain = readManifest(opts.projectDir)?.domain;
525
+ }
526
+ if (!domain) {
527
+ console.log(chalk.yellow(" Skipping Search Console — need --project-dir with .hatchkit.json to read the domain."));
528
+ }
529
+ else {
530
+ await runDelete(`Search Console: removing property for ${domain}`, opts.dryRun, () => unprovisionSearchConsoleForDomain(domain));
531
+ }
532
+ }
434
533
  // Email — delete every Email Routing rule on the project's zone that
435
534
  // matches an address on `<project-domain>`. MX/SPF/DMARC records and
436
535
  // the destination address are intentionally left in place: multiple
@@ -530,7 +629,7 @@ async function unprovisionEmailForProject(args) {
530
629
  return;
531
630
  }
532
631
  const cf = new CloudflareApi({ token: dns.apiToken, accountId: dns.accountId });
533
- const zone = await cf.getZoneByName(manifest.domain);
632
+ const zone = await cf.resolveZoneForName(manifest.domain);
534
633
  if (!zone) {
535
634
  console.log(chalk.dim(` · No zone for ${manifest.domain} — nothing to tear down.`));
536
635
  return;
@@ -658,6 +757,14 @@ function renderOpenpanelEnv(c, forClient) {
658
757
  `OPENPANEL_CLIENT_SECRET=${c.clientSecret}`,
659
758
  ];
660
759
  }
760
+ function renderPlausibleEnv(c) {
761
+ return [
762
+ `PUBLIC_PLAUSIBLE_DOMAIN=${c.domain}`,
763
+ `PUBLIC_PLAUSIBLE_SCRIPT_URL=${c.scriptUrl}`,
764
+ `NEXT_PUBLIC_PLAUSIBLE_DOMAIN=${c.domain}`,
765
+ `NEXT_PUBLIC_PLAUSIBLE_SCRIPT_URL=${c.scriptUrl}`,
766
+ ];
767
+ }
661
768
  function renderResendEnv(c) {
662
769
  return [`RESEND_API_KEY=${c.apiKey}`];
663
770
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/provision/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/provision/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export interface PlausibleSite {
2
+ projectName: string;
3
+ domain: string;
4
+ baseUrl: string;
5
+ scriptUrl: string;
6
+ }
7
+ export type DeleteResult = "deleted" | "not-found";
8
+ export declare function provisionPlausibleSite(projectName: string, domain: string): Promise<PlausibleSite>;
9
+ export declare function deletePlausibleSite(projectName: string): Promise<DeleteResult>;
10
+ //# sourceMappingURL=plausible.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plausible.d.ts","sourceRoot":"","sources":["../../src/provision/plausible.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,CAAC;AA8BnD,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC,CA6DxB;AAED,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAkBpF"}
@@ -0,0 +1,103 @@
1
+ /*
2
+ * Plausible provisioning — creates a site for a project domain through
3
+ * the Plausible Sites API and caches the domain under the project name.
4
+ *
5
+ * Plausible's runtime integration is intentionally public: browser
6
+ * bundles only need the tracked domain and script URL. The API key stays
7
+ * in the OS keychain and is used only by hatchkit.
8
+ */
9
+ import { ensurePlausible } from "../config.js";
10
+ import { SECRET_KEYS, deleteSecret, getSecret, setSecret } from "../utils/secrets.js";
11
+ function siteDomainKey(projectName) {
12
+ return SECRET_KEYS.plausibleSiteDomain(projectName);
13
+ }
14
+ function authHeaders(apiKey) {
15
+ return {
16
+ Authorization: `Bearer ${apiKey}`,
17
+ Accept: "application/json",
18
+ "Content-Type": "application/json",
19
+ };
20
+ }
21
+ function siteUrl(baseUrl, domain) {
22
+ return `${baseUrl.replace(/\/$/, "")}/api/v1/sites/${encodeURIComponent(domain)}`;
23
+ }
24
+ async function getSite(baseUrl, apiKey, domain) {
25
+ const res = await fetch(siteUrl(baseUrl, domain), { headers: authHeaders(apiKey) });
26
+ if (res.status === 404)
27
+ return false;
28
+ if (!res.ok) {
29
+ const text = await res.text().catch(() => "");
30
+ throw new Error(`Plausible get site failed: ${res.status} ${res.statusText}${text ? ` — ${text}` : ""}`);
31
+ }
32
+ return true;
33
+ }
34
+ export async function provisionPlausibleSite(projectName, domain) {
35
+ const cfg = await ensurePlausible();
36
+ const baseUrl = cfg.url.replace(/\/$/, "");
37
+ const normalizedDomain = domain.trim().toLowerCase();
38
+ const cachedDomain = await getSecret(siteDomainKey(projectName));
39
+ if (cachedDomain) {
40
+ const exists = await getSite(baseUrl, cfg.apiKey, cachedDomain);
41
+ if (exists) {
42
+ return {
43
+ projectName,
44
+ domain: cachedDomain,
45
+ baseUrl,
46
+ scriptUrl: `${baseUrl}/js/script.js`,
47
+ };
48
+ }
49
+ }
50
+ const body = {
51
+ domain: normalizedDomain,
52
+ timezone: cfg.timezone ?? "Etc/UTC",
53
+ tracker_script_configuration: {
54
+ outbound_links: true,
55
+ file_downloads: true,
56
+ form_submissions: true,
57
+ },
58
+ };
59
+ if (cfg.teamId)
60
+ body.team_id = cfg.teamId;
61
+ const res = await fetch(`${baseUrl}/api/v1/sites`, {
62
+ method: "POST",
63
+ headers: authHeaders(cfg.apiKey),
64
+ body: JSON.stringify(body),
65
+ });
66
+ if (!res.ok) {
67
+ const text = await res.text().catch(() => "");
68
+ const alreadyExists = res.status === 409 ||
69
+ (res.status === 422 && /already|taken|exists/i.test(text)) ||
70
+ (res.status === 400 && /already|taken|exists/i.test(text));
71
+ if (!alreadyExists) {
72
+ throw new Error(`Plausible create site failed: ${res.status} ${res.statusText}${text ? ` — ${text}` : ""}`);
73
+ }
74
+ const exists = await getSite(baseUrl, cfg.apiKey, normalizedDomain);
75
+ if (!exists) {
76
+ throw new Error(`Plausible reports ${normalizedDomain} already exists, but it is not readable.`);
77
+ }
78
+ }
79
+ await setSecret(siteDomainKey(projectName), normalizedDomain);
80
+ return {
81
+ projectName,
82
+ domain: normalizedDomain,
83
+ baseUrl,
84
+ scriptUrl: `${baseUrl}/js/script.js`,
85
+ };
86
+ }
87
+ export async function deletePlausibleSite(projectName) {
88
+ const cfg = await ensurePlausible();
89
+ const domain = (await getSecret(siteDomainKey(projectName))) ?? projectName;
90
+ const res = await fetch(siteUrl(cfg.url, domain), {
91
+ method: "DELETE",
92
+ headers: authHeaders(cfg.apiKey),
93
+ });
94
+ await deleteSecret(siteDomainKey(projectName));
95
+ if (res.status === 404)
96
+ return "not-found";
97
+ if (!res.ok) {
98
+ const text = await res.text().catch(() => "");
99
+ throw new Error(`Plausible delete site failed: ${res.status} ${res.statusText}${text ? ` — ${text}` : ""}`);
100
+ }
101
+ return "deleted";
102
+ }
103
+ //# sourceMappingURL=plausible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plausible.js","sourceRoot":"","sources":["../../src/provision/plausible.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface SearchConsoleProvisionResult {
2
+ domain: string;
3
+ siteUrl: string;
4
+ webResourceId?: string;
5
+ dnsRecord?: {
6
+ id: string;
7
+ zoneId: string;
8
+ name: string;
9
+ type: "TXT";
10
+ created: boolean;
11
+ updated: boolean;
12
+ };
13
+ }
14
+ export declare function normalizeSearchConsoleDomain(input: string): string;
15
+ export declare function provisionSearchConsoleForDomain(domainInput: string): Promise<SearchConsoleProvisionResult>;
16
+ export declare function unprovisionSearchConsoleForDomain(domainInput: string): Promise<"deleted" | "not-found">;
17
+ //# sourceMappingURL=search-console.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-console.d.ts","sourceRoot":"","sources":["../../src/provision/search-console.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,KAAK,CAAC;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAMD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOlE;AA8FD,wBAAsB,+BAA+B,CACnD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,4BAA4B,CAAC,CAgEvC;AAED,wBAAsB,iCAAiC,CACrD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,CAUlC"}