rivet-design 0.14.0 → 0.14.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -50,6 +50,8 @@ const SessionBridgeService_1 = require("./services/SessionBridgeService");
50
50
  const DevServerRuntimeService_1 = require("./services/DevServerRuntimeService");
51
51
  const TelemetryService_1 = require("./services/TelemetryService");
52
52
  const harnesses_1 = require("./install/harnesses");
53
+ const mcpRegistration_1 = require("./install/mcpRegistration");
54
+ const globalBootstrap_1 = require("./install/globalBootstrap");
53
55
  const signin_1 = require("./onboarding/signin");
54
56
  const portUtils_1 = require("./utils/portUtils");
55
57
  const VariantsRuntime_1 = require("./services/VariantsRuntime");
@@ -798,10 +800,10 @@ USAGE:
798
800
  COMMANDS:
799
801
  rivet Start Rivet (auto-login if needed)
800
802
  rivet agent Start Rivet with a terminal AI agent generating variants
801
- rivet install Set up Rivet for every detected agent (Claude Code, Cursor, Codex, …)
803
+ rivet install Set up Rivet for every detected agent (Claude Code, Cursor, Codex, …);
804
+ includes the resident MCP server (rivet mcp serve) per host
802
805
  rivet install cursor Set up Rivet for a specific agent only
803
- rivet install --mcp Also register the resident MCP server (rivet mcp serve);
804
- enables Claude Desktop (rivet install claude-desktop --mcp)
806
+ rivet install --no-mcp Skip registering the resident MCP server
805
807
  rivet uninstall <name> Remove Rivet from one agent (claude|claude-desktop|cursor|codex)
806
808
  rivet uninstall all Remove Rivet from all editors
807
809
  rivet update Refresh Rivet's agent guidance and allowlists for installed editors
@@ -907,9 +909,14 @@ const promptYesNo = async (question) => {
907
909
  * their agent. Stays silent-but-helpful in non-interactive / CI runs.
908
910
  */
909
911
  const promptPostInstall = async () => {
912
+ // `npx rivet-design install` leaves no `rivet` on PATH — every follow-up
913
+ // command hint must carry the npx form or it fails with command-not-found.
914
+ const loginCommand = (0, mcpRegistration_1.isEphemeralNpxInstall)()
915
+ ? 'npx -y rivet-design@latest login'
916
+ : 'rivet login';
910
917
  // Non-interactive / CI: don't probe auth or prompt — just leave guidance.
911
918
  if (!process.stdin.isTTY || process.env.CI === 'true') {
912
- console.log('\nOne more step: run `rivet login` to sign in (or create an account) and start using Rivet.\n');
919
+ console.log(`\nOne more step: run \`${loginCommand}\` to sign in (or create an account) and start using Rivet.\n`);
913
920
  return;
914
921
  }
915
922
  // Validate the token (refreshing if stale) rather than trusting its presence,
@@ -926,15 +933,19 @@ const promptPostInstall = async () => {
926
933
  });
927
934
  }
928
935
  else {
929
- console.log("\nNo problem — run `rivet login` whenever you're ready.\n");
936
+ console.log(`\nNo problem — run \`${loginCommand}\` whenever you're ready.\n`);
930
937
  }
931
938
  };
932
939
  const handleInstall = async (installArgs) => {
933
- // `rivet install [editor] [--mcp]` — flags and the editor name can come in
934
- // either order. `--mcp` opts into registering the resident stdio MCP
935
- // server (`rivet mcp serve`) alongside the CLI setup.
940
+ // `rivet install [editor] [--no-mcp]` — flags and the editor name can come
941
+ // in either order. The resident stdio MCP server (`rivet mcp serve`) is
942
+ // registered BY DEFAULT on every host that supports it: shell-less hosts
943
+ // (Claude Desktop) are unusable without it, and the opt-in `--mcp` flag
944
+ // proved a reliable first-run stumble everywhere else. `--no-mcp` skips
945
+ // registration; `--mcp` is accepted for compatibility.
936
946
  const parsed = (0, flags_1.parseFlags)(installArgs, {
937
947
  mcp: { takesValue: false },
948
+ 'no-mcp': { takesValue: false },
938
949
  'no-telemetry': { takesValue: false },
939
950
  });
940
951
  if (parsed.errors.length > 0 || parsed.positionals.length > 1) {
@@ -944,11 +955,22 @@ const handleInstall = async (installArgs) => {
944
955
  ]
945
956
  : [];
946
957
  console.error(`Invalid install arguments: ${[...parsed.errors, ...positionalError].join('; ')}`);
947
- console.error('Usage: rivet install [agent] [--mcp]');
958
+ console.error('Usage: rivet install [agent] [--no-mcp]');
948
959
  process.exit(2);
949
960
  }
950
- const mcp = parsed.values.mcp === true;
961
+ const mcp = parsed.values['no-mcp'] !== true;
951
962
  const editor = parsed.positionals[0];
963
+ // `npx rivet-design install` runs from npm's ephemeral cache — install
964
+ // globally and re-execute from there so registrations and `rivet`
965
+ // commands stay working (see globalBootstrap.ts). Failure is advisory:
966
+ // the local install proceeds and MCP registrations refuse on their own.
967
+ const bootstrap = (0, globalBootstrap_1.bootstrapGlobalInstall)(installArgs);
968
+ if (bootstrap.action === 'reexeced') {
969
+ process.exit(bootstrap.exitCode);
970
+ }
971
+ if (bootstrap.action === 'failed') {
972
+ console.log((0, globalBootstrap_1.bootstrapFailureAdvisory)(bootstrap.reason));
973
+ }
952
974
  const { exitCode } = (0, harnesses_1.installHarnesses)(editor, { mcp });
953
975
  if (exitCode !== 0)
954
976
  process.exit(exitCode);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * `npx rivet-design install` bootstrap.
3
+ *
4
+ * An npx run executes out of npm's ephemeral `_npx` cache, which breaks the
5
+ * whole CLI-first contract: MCP registrations would point at a path that
6
+ * dies on the next cache prune, and the installed guidance/allowlists tell
7
+ * agents to run `rivet …` — a command that doesn't exist on PATH. Rather
8
+ * than special-casing every downstream surface, ephemeral installs first
9
+ * install the SAME version globally (`npm install -g rivet-design@<v>`),
10
+ * then re-execute `rivet install` from the global location — where every
11
+ * existing durable path (absolute-bin registrations, `rivet` on PATH,
12
+ * `rivet update` refresh) just works.
13
+ *
14
+ * Failure is advisory, never fatal: if `npm install -g` fails (permissions
15
+ * on system-node setups), the local install proceeds — CLI artifacts still
16
+ * land, MCP registrations refuse with an actionable error (see
17
+ * `mcpRegistration.ts`), and the user is told the one command to run.
18
+ */
19
+ export type BootstrapExec = (command: string, args: string[], options: {
20
+ stdio: 'inherit' | 'pipe';
21
+ }) => {
22
+ status: number | null;
23
+ stdout?: Buffer | string;
24
+ };
25
+ export type BootstrapResult = {
26
+ action: 'not_needed';
27
+ } | {
28
+ action: 'reexeced';
29
+ exitCode: number;
30
+ } | {
31
+ action: 'failed';
32
+ reason: string;
33
+ };
34
+ /**
35
+ * When running from the npx cache, install globally and re-execute the
36
+ * install there. Returns `reexeced` (caller must exit with `exitCode`),
37
+ * `not_needed` (durable install — carry on), or `failed` (carry on, but
38
+ * warn: registrations will refuse).
39
+ */
40
+ export declare const bootstrapGlobalInstall: (installArgs: string[], options?: {
41
+ exec?: BootstrapExec;
42
+ binPath?: string;
43
+ version?: string;
44
+ }) => BootstrapResult;
45
+ /** Advisory printed when the bootstrap fails and the install continues. */
46
+ export declare const bootstrapFailureAdvisory: (reason: string) => string;
47
+ //# sourceMappingURL=globalBootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalBootstrap.d.ts","sourceRoot":"","sources":["../../src/install/globalBootstrap.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,aAAa,GAAG,CAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAAA;CAAE,KACnC;IAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEzD,MAAM,MAAM,eAAe,GACvB;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GACxB;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAQzC;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GACjC,aAAa,MAAM,EAAE,EACrB,UAAU;IACR,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,KACA,eA+CF,CAAC;AAEF,2EAA2E;AAC3E,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,KAAG,MAKN,CAAC"}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.bootstrapFailureAdvisory = exports.bootstrapGlobalInstall = void 0;
40
+ const childProcess = __importStar(require("child_process"));
41
+ const fs_1 = __importDefault(require("fs"));
42
+ const path_1 = __importDefault(require("path"));
43
+ const mcpRegistration_1 = require("./mcpRegistration");
44
+ const telemetry_1 = require("../config/telemetry");
45
+ const defaultExec = (command, args, options) => {
46
+ const result = childProcess.spawnSync(command, args, options);
47
+ if (result.error)
48
+ throw result.error;
49
+ return { status: result.status, stdout: result.stdout ?? undefined };
50
+ };
51
+ /**
52
+ * When running from the npx cache, install globally and re-execute the
53
+ * install there. Returns `reexeced` (caller must exit with `exitCode`),
54
+ * `not_needed` (durable install — carry on), or `failed` (carry on, but
55
+ * warn: registrations will refuse).
56
+ */
57
+ const bootstrapGlobalInstall = (installArgs, options) => {
58
+ const exec = options?.exec ?? defaultExec;
59
+ if (!(0, mcpRegistration_1.isEphemeralNpxInstall)(options?.binPath)) {
60
+ return { action: 'not_needed' };
61
+ }
62
+ // RIVET_GLOBAL_INSTALL_SPEC is a test seam: pre-publish end-to-end runs
63
+ // point it at a local `npm pack` tarball so the globally-installed copy
64
+ // is the build under test rather than the published version.
65
+ const spec = process.env.RIVET_GLOBAL_INSTALL_SPEC ??
66
+ `rivet-design@${options?.version ?? telemetry_1.RIVET_VERSION}`;
67
+ console.log(`Rivet is running from npx's temporary cache — installing ${spec} globally first so ` +
68
+ 'MCP registrations and `rivet` commands keep working...\n');
69
+ try {
70
+ const installResult = exec('npm', ['install', '-g', spec], {
71
+ stdio: 'inherit',
72
+ });
73
+ if (installResult.status !== 0) {
74
+ return {
75
+ action: 'failed',
76
+ reason: `npm install -g exited ${installResult.status}`,
77
+ };
78
+ }
79
+ const rootResult = exec('npm', ['root', '-g'], { stdio: 'pipe' });
80
+ const globalRoot = String(rootResult.stdout ?? '').trim();
81
+ const globalBin = path_1.default.join(globalRoot, 'rivet-design', 'bin', 'rivet.js');
82
+ if (!globalRoot || !fs_1.default.existsSync(globalBin)) {
83
+ return {
84
+ action: 'failed',
85
+ reason: `global install not found at ${globalBin || 'npm root -g'}`,
86
+ };
87
+ }
88
+ const rerun = exec(process.execPath, [globalBin, 'install', ...installArgs], { stdio: 'inherit' });
89
+ return { action: 'reexeced', exitCode: rerun.status ?? 0 };
90
+ }
91
+ catch (error) {
92
+ return {
93
+ action: 'failed',
94
+ reason: error instanceof Error ? error.message : String(error),
95
+ };
96
+ }
97
+ };
98
+ exports.bootstrapGlobalInstall = bootstrapGlobalInstall;
99
+ /** Advisory printed when the bootstrap fails and the install continues. */
100
+ const bootstrapFailureAdvisory = (reason) => `Warning: could not install Rivet globally (${reason}).\n` +
101
+ 'Continuing with the CLI setup, but MCP registrations are skipped: a\n' +
102
+ "registration pointing into npx's temporary cache would break on the next\n" +
103
+ 'cache prune. To finish setup, run:\n\n' +
104
+ ' npm install -g rivet-design && rivet install\n';
105
+ exports.bootstrapFailureAdvisory = bootstrapFailureAdvisory;
106
+ //# sourceMappingURL=globalBootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalBootstrap.js","sourceRoot":"","sources":["../../src/install/globalBootstrap.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,11 @@ export type InstallOutcome = {
11
11
  changed: boolean;
12
12
  };
13
13
  /**
14
- * Options for one install run. `mcp` is the opt-in from `rivet install
15
- * --mcp`: additionally register the resident `rivet mcp serve` stdio server
16
- * with the host (docs/perf-mcp-design.md, Phase 4). The CLI remains the
17
- * default agent interface; the flag is additive, never a replacement.
14
+ * Options for one install run. `mcp` registers the resident `rivet mcp
15
+ * serve` stdio server with the host (docs/perf-mcp-design.md, Phase 4)
16
+ * ON by default from `rivet install`; `--no-mcp` opts out. The CLI remains
17
+ * the default agent interface; the registration is additive, never a
18
+ * replacement.
18
19
  */
19
20
  export type HarnessInstallOptions = {
20
21
  mcp?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"harnesses.d.ts","sourceRoot":"","sources":["../../src/install/harnesses.ts"],"names":[],"mappings":"AAUA,OAAO,EAIL,gBAAgB,EAQjB,MAAM,cAAc,CAAC;AAwBtB;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,OAAO;IACtB,kEAAkE;IAClE,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,MAAM,IAAI,OAAO,CAAC;IAClB,iFAAiF;IACjF,mBAAmB,IAAI,MAAM,CAAC;IAC9B,OAAO,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAAC;IACzD,qDAAqD;IACrD,SAAS,IAAI,OAAO,CAAC;IACrB,yFAAyF;IACzF,MAAM,IAAI,OAAO,CAAC;IAClB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,2FAA2F;IAC3F,WAAW,EAAE,MAAM,CAAC;CACrB;AAgaD,eAAO,MAAM,SAAS,EAAE,OAAO,EAK9B,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,IAAI,MAAM,KAAG,OAAO,GAAG,SACf,CAAC;AAErC,eAAO,MAAM,iBAAiB,GAC5B,UAAU,qBAAqB,KAC9B,OAAO,EAKP,CAAC;AAEJ,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,GAAI,KAAK,MAAM,KAAG,MACkB,CAAC;AAqBpE;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,UAAU,qBAAqB,KAC9B;IAAE,QAAQ,EAAE,MAAM,CAAA;CA2EpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAkCtE,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,eAAe,QAAO,IAUlC,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"harnesses.d.ts","sourceRoot":"","sources":["../../src/install/harnesses.ts"],"names":[],"mappings":"AAUA,OAAO,EAIL,gBAAgB,EAQjB,MAAM,cAAc,CAAC;AAwBtB;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,OAAO;IACtB,kEAAkE;IAClE,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,MAAM,IAAI,OAAO,CAAC;IAClB,iFAAiF;IACjF,mBAAmB,IAAI,MAAM,CAAC;IAC9B,OAAO,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAAC;IACzD,qDAAqD;IACrD,SAAS,IAAI,OAAO,CAAC;IACrB,yFAAyF;IACzF,MAAM,IAAI,OAAO,CAAC;IAClB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,2FAA2F;IAC3F,WAAW,EAAE,MAAM,CAAC;CACrB;AAgaD,eAAO,MAAM,SAAS,EAAE,OAAO,EAK9B,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,IAAI,MAAM,KAAG,OAAO,GAAG,SACf,CAAC;AAErC,eAAO,MAAM,iBAAiB,GAC5B,UAAU,qBAAqB,KAC9B,OAAO,EAKP,CAAC;AAEJ,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,GAAI,KAAK,MAAM,KAAG,MACkB,CAAC;AAqBpE;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,UAAU,qBAAqB,KAC9B;IAAE,QAAQ,EAAE,MAAM,CAAA;CA2EpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAkCtE,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,eAAe,QAAO,IAUlC,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -320,13 +320,13 @@ Next steps:
320
320
  /**
321
321
  * Claude Desktop chat is retired as a CLI install target because it has no
322
322
  * project shell. Claude Code in the desktop app uses the `claude` harness.
323
- * With `--mcp`, this target configures the resident `rivet mcp serve` stdio
324
- * server for chat. Without the flag, install only cleans up prior entries.
323
+ * MCP registration (the default) configures the resident `rivet mcp serve`
324
+ * stdio server for chat; `--no-mcp` installs only clean up prior entries.
325
325
  */
326
- const CLAUDE_DESKTOP_OUT_OF_SCOPE_MESSAGE = `Claude Desktop chat has no project shell for running the \`rivet\` CLI. To use
327
- Rivet from chat, register the MCP server instead:
326
+ const CLAUDE_DESKTOP_OUT_OF_SCOPE_MESSAGE = `Claude Desktop chat has no project shell for running the \`rivet\` CLI the
327
+ MCP server is its only integration, and --no-mcp skipped registering it:
328
328
 
329
- rivet install claude-desktop --mcp
329
+ rivet install claude-desktop
330
330
 
331
331
  For Claude Code in the desktop app, run \`rivet install claude\` instead. A
332
332
  separate terminal installation of Claude Code is not required.`;
@@ -407,9 +407,9 @@ Welcome to Rivet!
407
407
 
408
408
  Rivet is a design agent for your coding agent. Your agent drives it by
409
409
  running \`rivet\` CLI commands — install writes each agent's usage guidance
410
- and its command allowlist so those commands run without approval prompts.
411
- Add --mcp to also register the resident MCP server (\`rivet mcp serve\`),
412
- for hosts without shell access like Claude Desktop.
410
+ and its command allowlist so those commands run without approval prompts,
411
+ and registers the resident MCP server (\`rivet mcp serve\`) with each host
412
+ that supports it. Pass --no-mcp to skip the MCP registration.
413
413
  `;
414
414
  const supportedListBlock = () => exports.HARNESSES.map((h) => ` rivet install ${h.id.padEnd(16)}${h.label}`).join('\n');
415
415
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"harnesses.js","sourceRoot":"","sources":["../../src/install/harnesses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harnesses.js","sourceRoot":"","sources":["../../src/install/harnesses.ts"],"names":[],"mappings":"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"}
@@ -18,16 +18,32 @@ export type McpRegistrationResult = {
18
18
  changed: boolean;
19
19
  error?: string;
20
20
  };
21
+ /**
22
+ * True when this CLI is running out of npm's ephemeral `npx` cache
23
+ * (`~/.npm/_npx/<hash>/…`). Registering that path with a host would break
24
+ * silently the next time the cache is pruned — `npx` installs need a
25
+ * cache-independent invocation instead.
26
+ */
27
+ export declare const isEphemeralNpxInstall: (binPath?: string) => boolean;
21
28
  /**
22
29
  * The invocation hosts should spawn. Absolute node + absolute bin: GUI hosts
23
30
  * (Claude Desktop) spawn servers without a login shell, so `PATH`-dependent
24
31
  * commands (`rivet`, `npx`, nvm shims) are unreliable — and `npx` resolution
25
32
  * would also blow the ~150ms cold-start budget. `rivet update` / re-install
26
33
  * refresh the registration when these paths move.
34
+ *
35
+ * A bin path inside npm's ephemeral `_npx` cache is never durable — the
36
+ * next cache prune kills it. `rivet install` normally never gets here from
37
+ * the cache (`globalBootstrap.ts` re-executes ephemeral installs from a
38
+ * global install first); if it does (bootstrap failed or was declined),
39
+ * callers must REFUSE to register rather than write a dying entry.
27
40
  */
28
- export declare const rivetMcpInvocation: (callerAgent?: "claude" | "codex" | "cursor") => {
41
+ export declare const rivetMcpInvocation: (callerAgent?: "claude" | "codex" | "cursor", overrides?: {
42
+ binPath?: string;
43
+ }) => {
29
44
  command: string;
30
45
  args: string[];
46
+ durable: boolean;
31
47
  };
32
48
  export declare const registerClaudeDesktopMcp: (homeDir?: string) => McpRegistrationResult;
33
49
  export declare const hasClaudeDesktopServeRegistration: (homeDir?: string) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"mcpRegistration.d.ts","sourceRoot":"","sources":["../../src/install/mcpRegistration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAI9C,OAAO,EAGL,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAE/B;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,eAAe,UAAU,CAAC;AAEvC,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,GAC7B,cAAc,QAAQ,GAAG,OAAO,GAAG,QAAQ,KAC1C;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAWlC,CAAC;AA0EH,eAAO,MAAM,wBAAwB,GACnC,UAAS,MAAqB,KAC7B,qBAKqD,CAAC;AAEzD,eAAO,MAAM,iCAAiC,GAC5C,UAAS,MAAqB,KAC7B,OAAyE,CAAC;AAE7E,eAAO,MAAM,0BAA0B,GACrC,UAAS,MAAqB,KAC7B,OAAqE,CAAC;AAEzE,eAAO,MAAM,0BAA0B,GACrC,UAAS,MAAqB,KAC7B,qBACsD,CAAC;AAE1D,eAAO,MAAM,iBAAiB,GAC5B,UAAS,MAAqB,KAC7B,qBAC2D,CAAC;AAE/D,eAAO,MAAM,mBAAmB,GAC9B,UAAS,MAAqB,KAC7B,qBAA4E,CAAC;AAIhF,KAAK,YAAY,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAoCrD,6EAA6E;AAC7E,eAAO,MAAM,8BAA8B,GACzC,KAAK,MAAM,EACX,eAAc,YAAwC,KACrD,OASF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,eAAc,YAAwC,KACrD,qBASA,CAAC;AAEJ,eAAO,MAAM,uBAAuB,GAClC,eAAc,YAAwC,KACrD,qBAOF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,eAAc,YAAwC,KACrD,qBAOA,CAAC;AAEJ,eAAO,MAAM,kBAAkB,GAC7B,eAAc,YAAwC,KACrD,qBAOF,CAAC"}
1
+ {"version":3,"file":"mcpRegistration.d.ts","sourceRoot":"","sources":["../../src/install/mcpRegistration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAI9C,OAAO,EAGL,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAE/B;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,eAAe,UAAU,CAAC;AAEvC,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAIF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,UAAS,MAA2B,KACnC,OAAmD,CAAC;AAEvD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,kBAAkB,GAC7B,cAAc,QAAQ,GAAG,OAAO,GAAG,QAAQ,EAC3C,YAAY;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,KAC/B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAerD,CAAC;AAoFF,eAAO,MAAM,wBAAwB,GACnC,UAAS,MAAqB,KAC7B,qBAKqD,CAAC;AAEzD,eAAO,MAAM,iCAAiC,GAC5C,UAAS,MAAqB,KAC7B,OAAyE,CAAC;AAE7E,eAAO,MAAM,0BAA0B,GACrC,UAAS,MAAqB,KAC7B,OAAqE,CAAC;AAEzE,eAAO,MAAM,0BAA0B,GACrC,UAAS,MAAqB,KAC7B,qBACsD,CAAC;AAE1D,eAAO,MAAM,iBAAiB,GAC5B,UAAS,MAAqB,KAC7B,qBAC2D,CAAC;AAE/D,eAAO,MAAM,mBAAmB,GAC9B,UAAS,MAAqB,KAC7B,qBAA4E,CAAC;AAIhF,KAAK,YAAY,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAuCrD,6EAA6E;AAC7E,eAAO,MAAM,8BAA8B,GACzC,KAAK,MAAM,EACX,eAAc,YAAwC,KACrD,OASF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,eAAc,YAAwC,KACrD,qBASA,CAAC;AAEJ,eAAO,MAAM,uBAAuB,GAClC,eAAc,YAAwC,KACrD,qBAOF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,eAAc,YAAwC,KACrD,qBAOA,CAAC;AAEJ,eAAO,MAAM,kBAAkB,GAC7B,eAAc,YAAwC,KACrD,qBAOF,CAAC"}
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.unregisterCodexMcp = exports.registerCodexMcp = exports.unregisterClaudeCodeMcp = exports.registerClaudeCodeMcp = exports.hasServeRegistrationViaHostCli = exports.unregisterCursorMcp = exports.registerCursorMcp = exports.unregisterClaudeDesktopMcp = exports.hasCursorServeRegistration = exports.hasClaudeDesktopServeRegistration = exports.registerClaudeDesktopMcp = exports.rivetMcpInvocation = exports.MCP_SERVER_NAME = exports.isServeRegistration = void 0;
39
+ exports.unregisterCodexMcp = exports.registerCodexMcp = exports.unregisterClaudeCodeMcp = exports.registerClaudeCodeMcp = exports.hasServeRegistrationViaHostCli = exports.unregisterCursorMcp = exports.registerCursorMcp = exports.unregisterClaudeDesktopMcp = exports.hasCursorServeRegistration = exports.hasClaudeDesktopServeRegistration = exports.registerClaudeDesktopMcp = exports.rivetMcpInvocation = exports.isEphemeralNpxInstall = exports.MCP_SERVER_NAME = exports.isServeRegistration = void 0;
40
40
  const childProcess = __importStar(require("child_process"));
41
41
  const fs_1 = __importDefault(require("fs"));
42
42
  const os_1 = __importDefault(require("os"));
@@ -55,26 +55,50 @@ Object.defineProperty(exports, "isServeRegistration", { enumerable: true, get: f
55
55
  * opted-in registration. Design doc: `docs/perf-mcp-design.md` (Phase 4).
56
56
  */
57
57
  exports.MCP_SERVER_NAME = 'rivet';
58
+ const RESOLVED_RIVET_BIN = path_1.default.resolve(__dirname, '..', '..', 'bin', 'rivet.js');
59
+ /**
60
+ * True when this CLI is running out of npm's ephemeral `npx` cache
61
+ * (`~/.npm/_npx/<hash>/…`). Registering that path with a host would break
62
+ * silently the next time the cache is pruned — `npx` installs need a
63
+ * cache-independent invocation instead.
64
+ */
65
+ const isEphemeralNpxInstall = (binPath = RESOLVED_RIVET_BIN) => binPath.split(path_1.default.sep).includes('_npx');
66
+ exports.isEphemeralNpxInstall = isEphemeralNpxInstall;
58
67
  /**
59
68
  * The invocation hosts should spawn. Absolute node + absolute bin: GUI hosts
60
69
  * (Claude Desktop) spawn servers without a login shell, so `PATH`-dependent
61
70
  * commands (`rivet`, `npx`, nvm shims) are unreliable — and `npx` resolution
62
71
  * would also blow the ~150ms cold-start budget. `rivet update` / re-install
63
72
  * refresh the registration when these paths move.
73
+ *
74
+ * A bin path inside npm's ephemeral `_npx` cache is never durable — the
75
+ * next cache prune kills it. `rivet install` normally never gets here from
76
+ * the cache (`globalBootstrap.ts` re-executes ephemeral installs from a
77
+ * global install first); if it does (bootstrap failed or was declined),
78
+ * callers must REFUSE to register rather than write a dying entry.
64
79
  */
65
- const rivetMcpInvocation = (callerAgent) => ({
66
- command: process.execPath,
67
- args: [
68
- path_1.default.resolve(__dirname, '..', '..', 'bin', 'rivet.js'),
69
- 'mcp',
70
- 'serve',
71
- // Bake the host identity into the registration: MCP-dispatched commands
72
- // otherwise lose --caller-agent entirely, so host-capability features
73
- // (e.g. nextAction.worker) silently degrade to the unknown profile.
74
- ...(callerAgent ? ['--caller-agent', callerAgent] : []),
75
- ],
76
- });
80
+ const rivetMcpInvocation = (callerAgent, overrides) => {
81
+ const binPath = overrides?.binPath ?? RESOLVED_RIVET_BIN;
82
+ // Host identity is baked into the registration: MCP-dispatched commands
83
+ // otherwise lose --caller-agent entirely, so host-capability features
84
+ // (e.g. nextAction.worker) silently degrade to the unknown profile.
85
+ return {
86
+ command: process.execPath,
87
+ args: [
88
+ binPath,
89
+ 'mcp',
90
+ 'serve',
91
+ ...(callerAgent ? ['--caller-agent', callerAgent] : []),
92
+ ],
93
+ durable: !(0, exports.isEphemeralNpxInstall)(binPath),
94
+ };
95
+ };
77
96
  exports.rivetMcpInvocation = rivetMcpInvocation;
97
+ /** Actionable refusal when only an ephemeral invocation exists (the global
98
+ * bootstrap in `globalBootstrap.ts` failed or was skipped). */
99
+ const EPHEMERAL_REGISTRATION_ERROR = "Rivet is running from npm's ephemeral npx cache, so any registration " +
100
+ 'would break on the next cache prune. Install Rivet globally first ' +
101
+ '(npm install -g rivet-design), then re-run the install.';
78
102
  /**
79
103
  * Merge the registration into an `mcpServers` JSON config (Claude Desktop,
80
104
  * Cursor), creating the file if missing and preserving every other entry.
@@ -95,6 +119,9 @@ const writeMcpServersEntry = (configPath, callerAgent) => {
95
119
  }
96
120
  }
97
121
  const invocation = (0, exports.rivetMcpInvocation)(callerAgent);
122
+ if (!invocation.durable) {
123
+ return { ok: false, changed: false, error: EPHEMERAL_REGISTRATION_ERROR };
124
+ }
98
125
  const existing = config.mcpServers?.[exports.MCP_SERVER_NAME];
99
126
  const desired = { command: invocation.command, args: invocation.args };
100
127
  if (existing && JSON.stringify(existing) === JSON.stringify(desired)) {
@@ -166,13 +193,16 @@ exports.unregisterCursorMcp = unregisterCursorMcp;
166
193
  * re-adding also refreshes stale node/bin paths after an update.
167
194
  */
168
195
  const registerViaHostCli = (bin, removeArgs, addArgs, execFileSync, callerAgent) => {
196
+ const invocation = (0, exports.rivetMcpInvocation)(callerAgent);
197
+ if (!invocation.durable) {
198
+ return { ok: false, changed: false, error: EPHEMERAL_REGISTRATION_ERROR };
199
+ }
169
200
  try {
170
201
  execFileSync(bin, removeArgs, { stdio: 'pipe' });
171
202
  }
172
203
  catch {
173
204
  // Not previously registered — fine.
174
205
  }
175
- const invocation = (0, exports.rivetMcpInvocation)(callerAgent);
176
206
  try {
177
207
  execFileSync(bin, [...addArgs, exports.MCP_SERVER_NAME, '--', invocation.command, ...invocation.args], { stdio: 'pipe' });
178
208
  return { ok: true, changed: true };
@@ -1 +1 @@
1
- {"version":3,"file":"mcpRegistration.js","sourceRoot":"","sources":["../../src/install/mcpRegistration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcpRegistration.js","sourceRoot":"","sources":["../../src/install/mcpRegistration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA8C;AAC9C,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AACxB,2CAIqB;AAEZ,oGAHP,+BAAmB,OAGO;AAE5B;;;;;;;;;;GAUG;AAEU,QAAA,eAAe,GAAG,OAAO,CAAC;AAQvC,MAAM,kBAAkB,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AAElF;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,CACnC,UAAkB,kBAAkB,EAC3B,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAF1C,QAAA,qBAAqB,yBAEqB;AAEvD;;;;;;;;;;;;GAYG;AACI,MAAM,kBAAkB,GAAG,CAChC,WAA2C,EAC3C,SAAgC,EACuB,EAAE;IACzD,MAAM,OAAO,GAAG,SAAS,EAAE,OAAO,IAAI,kBAAkB,CAAC;IACzD,wEAAwE;IACxE,sEAAsE;IACtE,oEAAoE;IACpE,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,QAAQ;QACzB,IAAI,EAAE;YACJ,OAAO;YACP,KAAK;YACL,OAAO;YACP,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACxD;QACD,OAAO,EAAE,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC;KACzC,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,kBAAkB,sBAkB7B;AAEF;gEACgE;AAChE,MAAM,4BAA4B,GAChC,uEAAuE;IACvE,oEAAoE;IACpE,yDAAyD,CAAC;AAE5D;;;GAGG;AACH,MAAM,oBAAoB,GAAG,CAC3B,UAAkB,EAClB,WAA2C,EACpB,EAAE;IACzB,IAAI,MAAM,GAA6C,EAAE,CAAC;IAC1D,IAAI,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/D,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC;YAC7E,CAAC;YACD,MAAM,GAAG,MAAM,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,4DAA4D;YAC5D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;QAC1E,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAG,IAAA,0BAAkB,EAAC,WAAW,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC;IAC5E,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,uBAAe,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;IACvE,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QACrE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC;IACD,MAAM,CAAC,UAAU,GAAG,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,uBAAe,CAAC,EAAE,OAAO,EAAE,CAAC;IACzE,IAAI,CAAC;QACH,YAAE,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,2EAA2E;AAC3E,MAAM,qBAAqB,GAAG,CAAC,UAAkB,EAAyB,EAAE;IAC1E,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACpE,IAAI,MAAgD,CAAC;IACrD,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,CAAC,uBAAe,IAAI,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACnE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,MAAM,CAAC,UAAU,CAAC,uBAAe,CAAC,CAAC;IAC1C,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACrC,CAAC,CAAC;AAEF,4EAA4E;AAC5E,MAAM,4BAA4B,GAAG,CAAC,UAAkB,EAAW,EAAE;IACnE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAE5D,CAAC;QACF,OAAO,IAAA,+BAAmB,EAAC,MAAM,EAAE,UAAU,EAAE,CAAC,uBAAe,CAAC,CAAC,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,8EAA8E;AAEvE,MAAM,wBAAwB,GAAG,CACtC,UAAkB,YAAE,CAAC,OAAO,EAAE,EACP,EAAE;AACzB,2EAA2E;AAC3E,4EAA4E;AAC5E,0EAA0E;AAC1E,mEAAmE;AACnE,oBAAoB,CAAC,IAAA,mCAAuB,EAAC,OAAO,CAAC,CAAC,CAAC;AAP5C,QAAA,wBAAwB,4BAOoB;AAElD,MAAM,iCAAiC,GAAG,CAC/C,UAAkB,YAAE,CAAC,OAAO,EAAE,EACrB,EAAE,CAAC,4BAA4B,CAAC,IAAA,mCAAuB,EAAC,OAAO,CAAC,CAAC,CAAC;AAFhE,QAAA,iCAAiC,qCAE+B;AAEtE,MAAM,0BAA0B,GAAG,CACxC,UAAkB,YAAE,CAAC,OAAO,EAAE,EACrB,EAAE,CAAC,4BAA4B,CAAC,IAAA,+BAAmB,EAAC,OAAO,CAAC,CAAC,CAAC;AAF5D,QAAA,0BAA0B,8BAEkC;AAElE,MAAM,0BAA0B,GAAG,CACxC,UAAkB,YAAE,CAAC,OAAO,EAAE,EACP,EAAE,CACzB,qBAAqB,CAAC,IAAA,mCAAuB,EAAC,OAAO,CAAC,CAAC,CAAC;AAH7C,QAAA,0BAA0B,8BAGmB;AAEnD,MAAM,iBAAiB,GAAG,CAC/B,UAAkB,YAAE,CAAC,OAAO,EAAE,EACP,EAAE,CACzB,oBAAoB,CAAC,IAAA,+BAAmB,EAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAHlD,QAAA,iBAAiB,qBAGiC;AAExD,MAAM,mBAAmB,GAAG,CACjC,UAAkB,YAAE,CAAC,OAAO,EAAE,EACP,EAAE,CAAC,qBAAqB,CAAC,IAAA,+BAAmB,EAAC,OAAO,CAAC,CAAC,CAAC;AAFnE,QAAA,mBAAmB,uBAEgD;AAMhF;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CACzB,GAAW,EACX,UAAoB,EACpB,OAAiB,EACjB,YAA0B,EAC1B,WAA2C,EACpB,EAAE;IACzB,MAAM,UAAU,GAAG,IAAA,0BAAkB,EAAC,WAAW,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,CAAC;QACH,YAAY,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;IACD,IAAI,CAAC;QACH,YAAY,CACV,GAAG,EACH,CAAC,GAAG,OAAO,EAAE,uBAAe,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,EAC3E,EAAE,KAAK,EAAE,MAAM,EAAE,CAClB,CAAC;QACF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,6EAA6E;AACtE,MAAM,8BAA8B,GAAG,CAC5C,GAAW,EACX,eAA6B,YAAY,CAAC,YAAY,EAC7C,EAAE;IACX,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,uBAAe,CAAC,EAAE;YAChE,KAAK,EAAE,MAAM;SACd,CAAC,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAZW,QAAA,8BAA8B,kCAYzC;AAEK,MAAM,qBAAqB,GAAG,CACnC,eAA6B,YAAY,CAAC,YAAY,EAC/B,EAAE;AACzB,uEAAuE;AACvE,8CAA8C;AAC9C,kBAAkB,CAChB,QAAQ,EACR,CAAC,KAAK,EAAE,QAAQ,EAAE,uBAAe,CAAC,EAClC,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,EACjC,YAAY,EACZ,QAAQ,CACT,CAAC;AAXS,QAAA,qBAAqB,yBAW9B;AAEG,MAAM,uBAAuB,GAAG,CACrC,eAA6B,YAAY,CAAC,YAAY,EAC/B,EAAE;IACzB,IAAI,CAAC;QACH,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,uBAAe,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC;AACH,CAAC,CAAC;AATW,QAAA,uBAAuB,2BASlC;AAEK,MAAM,gBAAgB,GAAG,CAC9B,eAA6B,YAAY,CAAC,YAAY,EAC/B,EAAE,CACzB,kBAAkB,CAChB,OAAO,EACP,CAAC,KAAK,EAAE,QAAQ,EAAE,uBAAe,CAAC,EAClC,CAAC,KAAK,EAAE,KAAK,CAAC,EACd,YAAY,EACZ,OAAO,CACR,CAAC;AATS,QAAA,gBAAgB,oBASzB;AAEG,MAAM,kBAAkB,GAAG,CAChC,eAA6B,YAAY,CAAC,YAAY,EAC/B,EAAE;IACzB,IAAI,CAAC;QACH,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,uBAAe,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC;AACH,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rivet-design",
3
- "version": "0.14.0",
3
+ "version": "0.14.1",
4
4
  "description": "Local visual web development tool with AI-powered code modification",
5
5
  "main": "dist/index.js",
6
6
  "workspaces": [
@@ -111,7 +111,7 @@ function useAtomValueWithDelay<Value>(
111
111
  `);if(!t.reference)return e;const n=((a=t.projectPath)==null?void 0:a.trim())??"",r=n?` --project '${n.replace(/'/g,"'\\''")}'`:"",s=[`Rivet variant: ${t.reference}`,"To inspect the full variant context, run:",`rivet variants get ${t.reference}${r}`].join(`
112
112
  `);return e?`${e}
113
113
 
114
- ${s}`:s},eG=({rows:t,activeVariantId:e,activePastKey:n,isOriginalSelected:r,busy:s,editingKey:i,onSelectActive:a,onSelectPast:u,onSelectOriginal:c,onActivePointerDown:f,onPastPointerDown:h,onHover:p,onRemove:v,onRemovePast:y,onStartRename:x,onCommitRename:_,onCancelRename:b,onCopyVariantContext:E,activeSessionId:k,projectPath:P})=>{const T=g.useRef(null),{activeIndex:A,itemRects:O,sessionRef:N,handlers:R,registerItem:M}=HT(T),L=(s==null?void 0:s.kind)==="switch",D=A!==null?O[A]:null;return S.jsxs("div",{ref:T,className:"relative",onMouseEnter:R.onMouseEnter,onMouseMove:R.onMouseMove,onMouseLeave:R.onMouseLeave,children:[S.jsx(Gi,{children:D&&S.jsx(sl.div,{className:"bg-hover pointer-events-none absolute z-0 rounded-md",initial:{opacity:0,top:D.top,left:D.left,width:D.width,height:D.height},animate:{opacity:1,top:D.top,left:D.left,width:D.width,height:D.height},exit:{opacity:0,transition:{duration:.06}},transition:{...Vd.fast,opacity:{duration:.08}}},N.current)}),S.jsx("ul",{className:"relative",children:t.map((V,K)=>{const Y=ZW(V);let G=!1;return V.kind==="active"?G=V.variant.workItemId===e:V.kind==="past"?G=`${V.entry.sessionId}:${V.entry.variantId}`===n:G=r,S.jsx(tG,{rowKey:Y,row:V,index:K,isSelected:G,isEditing:i===Y,isSwitchInFlight:L,busy:s,registerItem:M,onSelectActive:a,onSelectPast:u,onSelectOriginal:c,onActivePointerDown:f,onPastPointerDown:h,onHover:p,onRemove:v,onRemovePast:y,onStartRename:x,onCommitRename:_,onCancelRename:b,onCopyVariantContext:E,activeSessionId:k,projectPath:P},Y)})})]})},tG=({rowKey:t,row:e,index:n,isSelected:r,isEditing:s,isSwitchInFlight:i,busy:a,registerItem:u,onSelectActive:c,onSelectPast:f,onSelectOriginal:h,onActivePointerDown:p,onPastPointerDown:v,onHover:y,onRemove:x,onRemovePast:_,onStartRename:b,onCommitRename:E,onCancelRename:k,onCopyVariantContext:P,activeSessionId:T,projectPath:A})=>{var Ce,ae;const O=g.useRef(null);hU(u,n,O);const N=e.kind==="active",R=e.kind==="original",M=e.kind==="active"?e.variant:null,L=e.kind==="past"?e.entry:null,D=N?M.status==="succeeded":!0,V=N?$a(M):!0,K=N?oR(M):!1,Y=N&&(M.status==="pending"||M.status==="running"),G=N?D&&(V||K)||Y:!0,B=N&&M.status==="failed",Q=N&&M.status==="cancelled",$=N&&(!G||i),te=N&&(a==null?void 0:a.kind)==="remove"&&a.variantId===M.workItemId,H=N&&(((Ce=M.refinement)==null?void 0:Ce.status)==="pending"||((ae=M.refinement)==null?void 0:ae.status)==="running");let j=gx;N?j=M.label||`Direction ${n+1}`:L&&(j=L.label.trim()||"Untitled direction");let Z;N?Z=M.runLabel:L&&(Z=L.runLabel);let ee=vx;N?ee=M.description:L&&(ee=L.brief);const ie=ee?QW(ee):null,le=XW(e,T),ue=le?"Copy variant reference":"Copy description";return s?S.jsx("li",{ref:O,"data-proximity-index":n,className:"group relative z-10",children:S.jsx("div",{className:"bg-main-input flex w-full items-start gap-2 rounded-md px-3 py-2",children:S.jsxs("span",{className:"min-w-0 flex-1",children:[S.jsx(nG,{initial:j,onCommit:se=>E(e,se),onCancel:k}),ie&&S.jsx("span",{className:"text-content-muted mt-1 line-clamp-2 block text-xs leading-snug",children:ie})]})})}):S.jsxs("li",{ref:O,"data-proximity-index":n,className:"group relative z-10",children:[S.jsx("div",{role:"button",tabIndex:G?0:-1,"data-variant-id":N?M.workItemId:void 0,"data-variant-key":t,onClick:()=>{if($)return;const se=window.getSelection();se&&!se.isCollapsed||(e.kind==="active"?c(e.variant):e.kind==="past"?f(e.entry):h())},onKeyDown:se=>{$||(se.key==="Enter"||se.key===" ")&&(se.preventDefault(),se.stopPropagation(),e.kind==="active"?c(e.variant):e.kind==="past"?f(e.entry):h())},onPointerDown:se=>{$||(e.kind==="active"?D&&p(e.variant.workItemId,se):e.kind==="past"&&v(e.entry,se))},"aria-pressed":G?r:void 0,"aria-disabled":N?!G:void 0,"aria-busy":Y||H,onMouseEnter:N?()=>y(M.workItemId):void 0,onMouseLeave:N?()=>y(null):void 0,className:ar("focus-visible:ring-content-muted/40 flex w-full items-start gap-2 rounded-md px-3 py-2 text-left transition-colors focus:outline-none focus-visible:ring-1",r&&"bg-main-input ring-content-muted/40 ring-1 ring-inset",D&&V&&"cursor-grab active:cursor-grabbing",(Y||K)&&"cursor-pointer",!D&&!Y&&!K&&"cursor-not-allowed opacity-60",$&&"cursor-not-allowed opacity-50"),style:D?{touchAction:"none"}:void 0,children:S.jsxs("span",{className:"min-w-0 flex-1",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[(Y||H)&&S.jsx(tx,{className:"text-content-muted shrink-0 text-sm","data-testid":H&&!Y?"variant-refining":void 0}),S.jsx(Fo,{label:"Double-click to rename",disabled:R,children:S.jsx("span",{onDoubleClick:se=>{se.stopPropagation(),R||b(t)},className:ar("min-w-0 flex-1 truncate text-sm font-medium select-text",R?"cursor-default":"cursor-text",D||r?"text-content":"text-content-muted"),children:j})}),B&&S.jsx(YC,{label:"Failed"}),Q&&S.jsx(YC,{label:"Cancelled"}),Z&&S.jsx("span",{className:"ml-auto max-w-[8rem] shrink-0 truncate rounded px-1.5 py-0.5 text-[10px] font-medium opacity-100 transition-opacity duration-150 group-hover:opacity-0 group-has-[:focus-visible]:opacity-0",style:$T(Z),children:Z})]}),ie&&S.jsx("span",{className:"text-content-muted mt-0.5 line-clamp-2 block cursor-text text-xs leading-snug select-text",children:ie})]})}),S.jsxs("div",{className:ar("absolute top-1.5 right-2 flex items-center gap-0.5 transition-opacity duration-150","pointer-events-none opacity-0 group-hover:pointer-events-auto group-hover:opacity-100 has-[:focus-visible]:pointer-events-auto has-[:focus-visible]:opacity-100"),children:[ee||le?S.jsx(Fo,{label:ue,children:S.jsx("button",{type:"button","aria-label":ue,onClick:se=>{se.stopPropagation(),P(JW({label:j,description:ee,reference:le,projectPath:A}))},onPointerDown:se=>se.stopPropagation(),className:"text-content-muted hover:bg-main-hover hover:text-content focus-visible:ring-content-muted/40 flex h-6 w-6 items-center justify-center rounded focus:outline-none focus-visible:ring-1",children:S.jsx(Fd,{size:13,weight:"bold"})})}):null,!R&&S.jsx(Fo,{label:"Rename",children:S.jsx("button",{type:"button","aria-label":"Rename direction",onClick:se=>{se.stopPropagation(),b(t)},onPointerDown:se=>se.stopPropagation(),className:"text-content-muted hover:bg-main-hover hover:text-content focus-visible:ring-content-muted/40 flex h-6 w-6 items-center justify-center rounded focus:outline-none focus-visible:ring-1",children:S.jsx(vz,{size:13,weight:"bold"})})}),!R&&S.jsx(Fo,{label:"Remove",children:S.jsx("button",{type:"button","data-variant-remove-id":e.kind==="active"?e.variant.workItemId:void 0,"aria-label":"Remove direction",disabled:te,onClick:se=>{se.stopPropagation(),e.kind==="active"?x(e.variant):_(e.entry)},onPointerDown:se=>se.stopPropagation(),className:"text-content-muted hover:bg-main-hover hover:text-content focus-visible:ring-content-muted/40 ml-1 flex h-6 w-6 items-center justify-center rounded focus:outline-none focus-visible:ring-1 disabled:cursor-not-allowed disabled:opacity-50",children:S.jsx(xz,{size:13,weight:"bold"})})})]})]})},nG=({initial:t,onCommit:e,onCancel:n})=>{const[r,s]=g.useState(t),i=g.useRef(!1),a=g.useCallback(c=>{c&&(c.focus(),c.select())},[]),u=c=>{i.current||(i.current=!0,c?e(r):n())};return S.jsx("input",{ref:a,type:"text",value:r,maxLength:120,"aria-label":"Rename direction",onChange:c=>s(c.target.value),onKeyDown:c=>{c.stopPropagation(),c.key==="Enter"?(c.preventDefault(),u(!0)):c.key==="Escape"&&(c.preventDefault(),u(!1))},onBlur:()=>u(!0),onClick:c=>c.stopPropagation(),onPointerDown:c=>c.stopPropagation(),className:"border-content-muted/40 bg-main text-content focus:ring-content-muted/50 w-full rounded border px-1.5 py-0.5 text-sm font-medium focus:ring-1 focus:outline-none"})},YC=({label:t})=>S.jsx("span",{className:"bg-main-input text-content-muted shrink-0 rounded-full px-1.5 py-0.5 text-[10px] font-medium tracking-wide uppercase",children:t}),rG=({entry:t,deploying:e,deployedUrl:n,onDeploy:r,isDeployDisabled:s=!1})=>{const a=e?"Deploying…":n?"Copy link":"Share";return S.jsxs("div",{className:"border-main-border bg-main-light flex shrink-0 items-center justify-between gap-3 border-t px-3 pt-2 pb-4",children:[S.jsxs("div",{className:"min-w-0",children:[S.jsx("div",{className:"text-content truncate text-sm font-medium",children:t.label.trim()||"Untitled direction"}),n?S.jsx("div",{className:"text-content-muted text-[11px]",children:"Deployed — share link ready"}):null]}),S.jsxs("button",{type:"button",onClick:()=>r(t),disabled:e||s,title:n?`Copy share link (${n})`:"Deploy this direction and get a public link to share",className:"border-main-border text-content hover:bg-main-input flex shrink-0 items-center gap-1 rounded-md border px-2 py-1.5 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:[n&&!e?S.jsx(Fd,{size:12,weight:"bold"}):null,a]})]})},sG={agent_browser:"Browser extracted",cache:"Cached",static:"Bundled catalog",manual:"Manual"},iG={design_context:"DESIGN.md",source_context:"Source",qa_report:"QA",asset:"Asset"},oG=({artifacts:t})=>{const[e,n]=g.useState(null),r=g.useMemo(()=>e&&t.some(i=>i.id===e)?e:null,[t,e]);if(t.length===0)return null;const s=i=>{n(a=>a===i?null:i)};return S.jsxs("section",{"aria-label":"Directions session artifacts",className:"mt-4",children:[S.jsx("div",{className:"flex shrink-0 items-center px-3 py-2",children:S.jsx("span",{className:"text-content truncate text-sm font-medium",children:"Artifacts"})}),S.jsx("ul",{className:"mt-2 space-y-1 px-1",children:t.map(i=>S.jsx(aG,{artifact:i,isExpanded:i.id===r,onToggle:()=>s(i.id)},i.id))})]})},aG=({artifact:t,isExpanded:e,onToggle:n})=>{const r=iG[t.kind],s=t.source?sG[t.source]:null,i=[t.kind==="design_context"?null:s,t.summary].filter(Boolean).join(" · "),a=t.kind==="design_context"&&!!t.viewUrl,u=`${e?"Hide":"View"} ${r} artifact${t.label?`: ${t.label}`:""}`;return a?S.jsx("li",{className:"border-main-border rounded-md border",children:S.jsxs("div",{className:"flex w-full items-center justify-between gap-2 px-3 py-2 text-left text-xs",children:[S.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[S.jsx("span",{className:"border-content-muted/30 bg-main-input text-content-muted shrink-0 rounded-full border px-2 py-0.5 text-[9px] font-semibold tracking-wide uppercase",children:r}),S.jsx("span",{className:"text-content truncate text-xs font-medium",children:t.label})]}),i?S.jsx("span",{className:"text-content-muted mt-0.5 truncate text-[11px]",children:i}):null]}),S.jsx("a",{href:t.viewUrl,target:"_blank",rel:"noreferrer","aria-label":`Open ${r} artifact${t.label?`: ${t.label}`:""}`,className:"text-content-muted hover:bg-main-input hover:text-content focus-visible:ring-content-muted/40 shrink-0 rounded p-1 transition-colors focus:outline-none focus-visible:ring-1",children:S.jsx(fz,{className:"h-3.5 w-3.5",weight:"bold"})})]})}):S.jsxs("li",{className:"border-main-border rounded-md border",children:[S.jsxs("button",{type:"button",onClick:n,"aria-expanded":e,"aria-label":u,className:"hover:bg-main-input flex w-full items-center justify-between gap-2 px-3 py-2 text-left text-xs transition-colors",children:[S.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[S.jsx("span",{className:"text-content-muted text-[10px] font-semibold tracking-wide uppercase",children:r}),S.jsx("span",{className:"text-content truncate text-xs font-medium",children:t.label})]}),i?S.jsx("span",{className:"text-content-muted mt-0.5 truncate text-[11px]",children:i}):null]}),S.jsx("span",{className:"text-content-muted shrink-0 text-[11px]",children:e?"Hide":"View"})]}),e?S.jsx("div",{className:"border-main-border bg-main-light border-t px-3 py-2",children:S.jsx(lG,{artifact:t})}):null]})},lG=({artifact:t})=>S.jsxs("div",{className:"text-content-muted space-y-1 text-[11px]",children:[t.summary?S.jsx("p",{children:t.summary}):null,t.path?S.jsxs("p",{children:["Stored at ",t.path]}):null,!t.summary&&!t.path?S.jsx("p",{children:"No inline content available for this artifact."}):null]}),uG=({selectedVariant:t,busy:e,onSend:n,onDeploy:r,onDeployCanvas:s,canDeploy:i,canDeployCanvas:a,canSendToAgent:u,canvasVariantCount:c,canvasDeployedUrl:f,deployedUrl:h})=>{var N,R,M,L;const p=t?((R=(N=t.actions)==null?void 0:N.commit)==null?void 0:R.enabled)??t.status==="succeeded":!1,v=p&&e===null,y=(e==null?void 0:e.kind)==="commit"&&e.variantId===(t==null?void 0:t.workItemId),x=(e==null?void 0:e.kind)==="deploy"&&e.variantId===(t==null?void 0:t.workItemId),_=(e==null?void 0:e.kind)==="deploy-canvas",b=!i||!p||e!==null,E=a&&c>0,P=x?"Deploying…":h?"Copy link":"Share",A=_?"Sharing…":f?"Copy canvas link":"Share canvas",O=y?"Applying…":"Apply to project";return S.jsxs("div",{className:"border-main-border bg-main-light flex shrink-0 items-center justify-between gap-3 border-t px-3 pt-2 pb-4",children:[S.jsx("div",{className:"min-w-0",children:t?S.jsxs(S.Fragment,{children:[S.jsx("div",{className:"text-content truncate text-sm font-medium",children:t.label.trim()||"Untitled direction"}),h?S.jsx("div",{className:"text-content-muted text-[11px]",children:"Deployed — share link ready"}):null]}):null}),S.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[S.jsx(U5,{primaryLabel:P,primaryIcon:h&&!x?Fd:void 0,primaryAction:()=>{t&&r(t)},isDisabled:b,isDropdownDisabled:e!==null,isLoading:x,loadingLabel:"Deploying…",dropdownAriaLabel:"More share actions",dropdownItems:E?[{label:A,icon:f&&!_?Fd:void 0,onClick:s,isDisabled:e!==null}]:[]}),u?S.jsx("button",{type:"button",onClick:()=>{t&&n(t)},disabled:!v,title:(L=(M=t==null?void 0:t.actions)==null?void 0:M.commit)==null?void 0:L.reason,className:"bg-secondary text-secondary-foreground hover:bg-accent rounded-md px-2 py-1.5 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:O}):null]})]})},aR=()=>S.jsx("div",{"data-testid":"direction-skeleton-row","aria-hidden":"true",className:"flex w-full items-start rounded-md px-3 py-2",children:S.jsxs("span",{className:"min-w-0 flex-1",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[S.jsx(tx,{className:"text-content-muted shrink-0 text-sm"}),S.jsx("span",{className:"bg-muted-foreground/15 h-3.5 w-28 animate-pulse rounded"})]}),S.jsx("span",{className:"mt-1.5 flex",children:S.jsx("span",{className:"bg-muted-foreground/10 h-2.5 w-full max-w-[14rem] animate-pulse rounded"})})]})}),cG=({groups:t})=>S.jsx("div",{className:"space-y-0.5",children:t.flatMap(e=>Array.from({length:Math.max(1,e.count)}).map((n,r)=>S.jsx(aR,{},`${e.requestId}-${r}`)))}),dG=()=>S.jsx("div",{"data-testid":"direction-boot-skeletons",className:"space-y-0.5",children:Array.from({length:3}).map((t,e)=>S.jsx(aR,{},e))}),fG=()=>S.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-8 text-center",children:[S.jsx("div",{className:"text-content text-sm",children:"No directions yet"}),S.jsx("div",{className:"text-content-muted text-xs",children:"They’ll appear here as they generate."})]}),QC="Try different ways to create a dropdown that feels fluid and dynamic",hG=({isMCPSession:t=!1,mcpEditor:e=null})=>{const[n,r]=g.useState(!1),s=VU(e),i=t?s:"your coding agent",a=()=>{navigator.clipboard.writeText(QC).then(()=>{r(!0),setTimeout(()=>r(!1),2e3)})};return S.jsxs("div",{className:"flex flex-col items-start gap-3 px-2 py-2",children:[S.jsx("p",{className:"text-content text-sm font-medium",children:"Create your first direction"}),S.jsxs("p",{className:"text-content-muted text-xs",children:["Use ",i," to generate directions."]}),S.jsxs("div",{className:"w-full",children:[S.jsx("p",{className:"text-content-muted mb-2 text-xs",children:"Here's a sample prompt to use:"}),S.jsxs("div",{className:"border-main-border bg-main-input relative rounded-md border px-3 py-2.5 pr-8",children:[S.jsxs("p",{className:"text-content-muted text-xs leading-snug",children:["“",QC,"”"]}),S.jsx("button",{type:"button",onClick:a,className:"text-content-muted hover:bg-main-border hover:text-content absolute top-2 right-2 rounded p-0.5 transition-colors",title:"Copy to clipboard",children:n?S.jsx(fT,{className:"h-3.5 w-3.5 text-emerald-500",weight:"bold"}):S.jsx(Fd,{className:"h-3.5 w-3.5",weight:"bold"})})]})]})]})},pG=({onClose:t})=>{const e=Je(qT);return t?S.jsxs("div",{className:"z-10 flex flex-shrink-0 items-center justify-between gap-2 border-b border-main-border bg-main-light px-2.5 py-2.5",children:[e?S.jsx("span",{className:"text-content min-w-0 truncate text-sm font-medium",title:e,children:e}):S.jsx("span",{}),S.jsx(Fo,{label:"Close panel",side:"bottom",children:S.jsx("button",{onClick:t,className:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded p-1 text-content-subtle transition-colors hover:bg-main-input hover:text-content",children:S.jsx(yz,{className:"h-4 w-4",weight:"bold"})})})]}):null},mG='[data-menu-item]:not([disabled]):not([aria-disabled="true"])',gG=({itemSelector:t=mG,loop:e=!1}={})=>{const n=g.useRef(null),r=g.useRef(null),s=g.useCallback(a=>{var u;n.current=a,a?r.current=jU():((u=r.current)==null||u.call(r),r.current=null)},[]),i=g.useCallback(a=>{var x;const{key:u}=a;if(u!=="ArrowDown"&&u!=="ArrowUp"&&u!=="Home"&&u!=="End")return;const c=n.current;if(!c)return;const f=Array.from(c.querySelectorAll(t));if(f.length===0)return;a.preventDefault(),a.stopPropagation();const h=f.indexOf(document.activeElement),p=f.length-1,v=_=>{if(h===-1)return _===1?0:p;const b=h+_;return e?(b+f.length)%f.length:Math.min(Math.max(b,0),p)};let y;u==="Home"?y=0:u==="End"?y=p:u==="ArrowDown"?y=v(1):y=v(-1),(x=f[y])==null||x.focus()},[t,e]);return{containerRef:s,onKeyDown:i}},XC="/assets/arena-Db0j1set.png",vG=ds("useIntegrations"),JC=["integrations"],yG="rivet:connect-result",_G=t=>typeof t=="object"&&t!==null&&t.type===yG,xG=tt(null),wG=()=>{const t=f8(),[e,n]=nP(xG),r=U1({queryKey:JC,queryFn:async()=>{const u=await fetch("/api/integrations");if(!u.ok)throw new Error(`Failed to load integrations (${u.status})`);return(await u.json()).integrations??[]},staleTime:1e4}),s=g.useCallback(()=>t.invalidateQueries({queryKey:JC}),[t]),i=g.useCallback(async u=>{const c=window.open("","_blank","width=560,height=720");if(!c)throw new Error("Popup blocked. Allow popups to connect.");n(u);try{const f=await fetch(`/api/integrations/${u}/connect`,{method:"POST"}),h=await f.json().catch(()=>({}));if(!f.ok||!h.authUrl)throw c.close(),new Error(h.error||`Could not connect ${u}`);c.location.href=h.authUrl,await new Promise(p=>{const v=()=>{window.removeEventListener("message",y),clearInterval(x),s(),p()},y=_=>{_G(_.data)&&_.data.provider===u&&(_.data.status==="error"&&vG.warn(`Connect failed for ${u}:`,_.data.message),v())};window.addEventListener("message",y);const x=setInterval(()=>{c.closed&&v()},500)})}finally{n(null)}},[s,n]),a=g.useCallback(async u=>{n(u);try{const c=await fetch(`/api/integrations/${u}`,{method:"DELETE"});if(!c.ok){const f=await c.json().catch(()=>({}));throw new Error(f.error||`Could not disconnect ${u}`)}await s()}finally{n(null)}},[s,n]);return{integrations:r.data??[],isLoading:r.isPending,error:r.error instanceof Error?r.error.message:null,pendingProvider:e,connect:i,disconnect:a,refetch:s}},fu=({onClick:t,title:e,shortcut:n,children:r,disabled:s=!1,className:i="",type:a="button","data-cy":u})=>{const c=S.jsx("button",{onClick:t,disabled:s,className:i,type:a,"data-cy":u,children:r});return e?S.jsx(mx,{content:S.jsxs("div",{className:"flex flex-row items-center gap-2",children:[S.jsx("span",{children:e}),n?S.jsx("span",{className:"rounded bg-white/15 px-1.5 py-0.5 text-[11px]",children:n}):null]}),children:c}):c},ek=ds("ConnectorsModal"),bG=()=>S.jsx("svg",{viewBox:"0 0 24 24",className:"h-6 w-6","aria-hidden":"true",children:S.jsx("path",{fill:"currentColor",d:"M12 0C5.373 0 0 5.372 0 12c0 5.084 3.163 9.426 7.627 11.174-.105-.949-.2-2.405.042-3.441.218-.937 1.407-5.965 1.407-5.965s-.359-.719-.359-1.781c0-1.669.967-2.915 2.171-2.915 1.024 0 1.518.769 1.518 1.69 0 1.029-.655 2.568-.994 3.995-.283 1.194.599 2.169 1.777 2.169 2.132 0 3.772-2.249 3.772-5.495 0-2.873-2.064-4.882-5.012-4.882-3.414 0-5.418 2.561-5.418 5.207 0 1.031.397 2.137.893 2.739.098.119.112.223.083.344-.091.379-.293 1.194-.333 1.361-.052.22-.174.266-.401.16-1.499-.698-2.436-2.889-2.436-4.649 0-3.785 2.75-7.262 7.929-7.262 4.163 0 7.398 2.967 7.398 6.931 0 4.136-2.607 7.464-6.227 7.464-1.216 0-2.36-.631-2.75-1.378l-.748 2.853c-.271 1.043-1.002 2.35-1.492 3.146A12.004 12.004 0 0 0 12 24c6.627 0 12-5.373 12-12C24 5.372 18.627 0 12 0z"})}),SG=()=>S.jsx("span",{"aria-hidden":"true",className:"h-6 w-6 bg-[#b1b1b1]",style:{WebkitMaskImage:`url(${XC})`,maskImage:`url(${XC})`,WebkitMaskSize:"contain",maskSize:"contain",WebkitMaskRepeat:"no-repeat",maskRepeat:"no-repeat",WebkitMaskPosition:"center",maskPosition:"center"}}),EG=[{provider:"pinterest",name:"Pinterest",description:"Pull boards and pins in as visual references.",tileClassName:"bg-[#e60023] text-white",icon:S.jsx(bG,{})},{provider:"arena",name:"Are.na",description:"Connect channels of collected blocks and links.",tileClassName:"bg-[#18181b] text-content",icon:S.jsx(SG,{})}],CG=({meta:t,integration:e,isPending:n,isHighlighted:r,onConnect:s,onDisconnect:i})=>{const a=(e==null?void 0:e.status)==="connected",u=e!=null&&e.externalUsername?`@${e.externalUsername}`:null;return S.jsxs("article",{className:`flex flex-col rounded-xl bg-main-light p-[18px] ${r?"ring-2 ring-secondary":""}`,children:[S.jsx("span",{className:`grid h-[52px] w-[52px] flex-none place-items-center rounded-xl ${t.tileClassName}`,"aria-hidden":"true",children:t.icon}),S.jsxs("div",{className:"mt-4 flex-1",children:[S.jsxs("h2",{className:"text-content flex items-center gap-1.5 text-[15px] font-semibold",children:[t.name,a?S.jsx(fT,{className:"h-3.5 w-3.5",weight:"bold","aria-hidden":"true"}):null]}),S.jsx("p",{className:"text-content-subtle mt-1 text-[13px] leading-relaxed",children:t.description}),a&&u?S.jsx("p",{className:"text-content-muted mt-2.5 text-xs font-medium",children:u}):null]}),a?S.jsx("button",{type:"button",onClick:i,disabled:n,className:"active-push mt-[18px] inline-flex min-h-[38px] w-full items-center justify-center rounded-lg bg-main-input px-3.5 text-[13px] font-semibold text-content-muted transition-colors hover:bg-red-500/10 hover:text-red-300 disabled:cursor-not-allowed disabled:opacity-50",children:n?"Disconnecting…":"Disconnect"}):S.jsx("button",{type:"button",onClick:s,disabled:n,className:"active-push mt-[18px] inline-flex min-h-[38px] w-full items-center justify-center rounded-lg bg-secondary px-3.5 text-[13px] font-semibold text-secondary-foreground transition-colors hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50",children:n?"Connecting…":"Connect"})]})},x_=({isOpen:t,onClose:e,context:n="menu",highlightProvider:r=null})=>{const{integrations:s,isLoading:i,error:a,pendingProvider:u,connect:c,disconnect:f}=wG(),[h,p]=g.useState(null),v=b=>s.find(E=>E.provider===b),y=g.useCallback(b=>{c(b).catch(E=>{const k=E instanceof Error?E.message:"Could not connect.";ek.warn(`Connect error for ${b}:`,k),ht.error(k)})},[c]),x=g.useCallback(b=>{f(b).catch(E=>{const k=E instanceof Error?E.message:"Could not disconnect.";ek.warn(`Disconnect error for ${b}:`,k),ht.error(k)})},[f]),_=n==="onboarding";return S.jsx(Qm,{open:t,onOpenChange:b=>!b&&e(),children:S.jsxs(Xm,{children:[S.jsx(Jm,{className:"fixed inset-0 z-max bg-black/40"}),S.jsx(e0,{ref:p,className:"fixed left-1/2 top-1/2 z-max w-[560px] -translate-x-1/2 -translate-y-1/2 rounded-lg border border-main-border bg-main font-main shadow-2xl outline-none",children:S.jsxs(nR,{value:h,children:[S.jsxs("div",{className:"flex items-center justify-between rounded-t-lg border-b border-main-border bg-main-light px-4 py-2",children:[S.jsx(t0,{className:"text-base font-medium text-content",children:"Connect design references"}),S.jsx(fu,{onClick:e,title:"Close",className:"rounded p-1 text-content-subtle transition-colors hover:bg-main-hover hover:text-content",children:S.jsx(ET,{className:"h-4 w-4",weight:"bold"})})]}),S.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[S.jsx(n0,{className:"text-sm text-content-subtle",children:"Connect your design references to use them with Rivet’s MCP."}),a?S.jsx("p",{className:"rounded-lg bg-red-500/10 px-4 py-3 text-[13px] font-medium text-red-300",children:a}):null,S.jsx("div",{className:"grid grid-cols-2 gap-4",children:EG.map(b=>S.jsx(CG,{meta:b,integration:v(b.provider),isPending:i||u===b.provider,isHighlighted:r===b.provider,onConnect:()=>y(b.provider),onDisconnect:()=>x(b.provider)},b.provider))}),_?S.jsxs("div",{className:"flex items-center justify-between gap-4",children:[S.jsx("p",{className:"text-xs text-content-subtle",children:"You can always do this later from the account menu."}),S.jsx("button",{type:"button",onClick:e,className:"active-push flex-none rounded-lg bg-secondary px-3.5 py-2 text-[13px] font-medium text-secondary-foreground transition-colors hover:bg-accent",children:"Skip for now"})]}):null]})]})})]})})},tk=({className:t=""})=>S.jsx("span",{"aria-hidden":"true",className:`rivet-skeleton block rounded ${t}`.trim()}),kG=ds("SupportTicketModal"),nk=5e3,f1="feedback",PG=t=>{var r;if(!t)return null;const e=(r=t.formErrors)==null?void 0:r[0];if(e)return e;const n=t.fieldErrors??{};for(const s of Object.values(n)){const i=s==null?void 0:s[0];if(i)return i}return null},TG=async t=>{let e;try{e=await t.json()}catch{e=void 0}if(t.status===400){if(typeof(e==null?void 0:e.details)=="string"&&e.details.trim())return e.details;if(typeof(e==null?void 0:e.details)=="object"&&e.details!==null){const n=PG(e.details);if(n)return n}return"Please check your feedback and try again."}return t.status>=500?typeof(e==null?void 0:e.details)=="string"&&e.details.trim()?e.details:"Could not send feedback right now. Please try again later.":typeof(e==null?void 0:e.error)=="string"&&e.error.trim()?e.error:`HTTP ${t.status}`},RG=({isOpen:t,onClose:e,contactEmail:n})=>{const r=nD(),[s,i]=g.useState(""),[a,u]=g.useState(!1),[c,f]=g.useState(null),h=g.useCallback(()=>{i("")},[]),p=g.useCallback(()=>{a||(h(),e())},[a,e,h]),v=g.useCallback(async()=>{const b=s.trim();if(!(!b||a)){u(!0);try{const E=typeof(r==null?void 0:r.get_session_id)=="function"?r.get_session_id():void 0,k=typeof(r==null?void 0:r.get_distinct_id)=="function"?r.get_distinct_id():void 0,P=n==null?void 0:n.trim(),T=await fetch("/api/support/tickets",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:f1,message:b,contactEmail:P||void 0,metadata:{posthogSessionId:E??void 0,posthogDistinctId:k??void 0,appVersion:"0.14.0",appEnvironment:"production",pageUrl:window.location.href,userAgent:navigator.userAgent,submittedAt:new Date().toISOString()}})});if(!T.ok){const A=await TG(T);throw new Error(A)}r==null||r.capture("support_ticket_submitted",{ticket_type:f1,has_posthog_session_id:!!E}),ht.success("Feedback sent",{description:"Thanks for sharing this."}),h(),e()}catch(E){const k=E instanceof Error?E.message:"Failed to send message";r==null||r.capture("support_ticket_submit_failed",{ticket_type:f1,error:k}),kG.error("Failed to submit support ticket:",k),ht.error("Could not send feedback",{description:k})}finally{u(!1)}}},[n,a,s,e,r,h]),y=g.useCallback(b=>{b.key==="Enter"&&(b.metaKey||b.ctrlKey)&&(b.preventDefault(),v())},[v]),x=nk-s.length,_=a||s.trim().length===0;return S.jsx(Qm,{open:t,onOpenChange:b=>!b&&p(),children:S.jsxs(Xm,{children:[S.jsx(Jm,{className:"fixed inset-0 z-max bg-black/40"}),S.jsx(e0,{ref:f,className:"fixed left-1/2 top-1/2 z-max w-[440px] -translate-x-1/2 -translate-y-1/2 rounded-lg border border-main-border bg-main font-main shadow-2xl outline-none",children:S.jsxs(nR,{value:c,children:[S.jsxs("div",{className:"flex items-center justify-between rounded-t-lg border-b border-main-border bg-main-light px-4 py-2",children:[S.jsx(t0,{className:"text-base font-medium text-content",children:"Send feedback"}),S.jsx(fu,{onClick:p,disabled:a,title:"Close",className:"rounded p-1 text-content-subtle transition-colors hover:bg-main-hover hover:text-content disabled:cursor-not-allowed disabled:opacity-50",children:S.jsx(ET,{className:"h-4 w-4",weight:"bold"})})]}),S.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[S.jsx(n0,{className:"text-sm text-content-subtle",children:"Tell us what happened or what we can improve."}),S.jsxs("div",{className:"rounded-lg bg-main-input outline outline-1 outline-transparent transition-[outline-color] focus-within:outline-white/20",children:[S.jsx("textarea",{id:"support-ticket-message","aria-label":"Your feedback",value:s,onChange:b=>i(b.target.value),onKeyDown:y,maxLength:nk,rows:6,disabled:a,placeholder:"What happened?",className:"max-h-64 w-full resize-none overflow-y-auto bg-transparent pb-1 pl-3 pr-3 pt-3 text-sm text-content placeholder-content-subtle focus:outline-none disabled:opacity-50"}),S.jsxs("div",{className:"flex items-center justify-between px-3 pb-3 pt-1",children:[S.jsx("span",{className:"text-xs text-content-subtle",children:"Context details are included automatically."}),S.jsxs("div",{className:"flex items-center gap-2",children:[x<=500&&S.jsx("span",{className:"text-xs text-content-subtle",children:x}),S.jsx(fu,{onClick:v,disabled:_,title:"Send feedback",shortcut:"⌘↵",className:"flex items-center justify-center rounded bg-primary p-1 text-content transition-colors hover:bg-primary-hover disabled:cursor-not-allowed disabled:opacity-80",children:a?S.jsx(r0,{className:"h-5 w-5 animate-spin",weight:"bold"}):S.jsx(hz,{className:"h-5 w-5",weight:"bold"})})]})]})]})]})]})})]})})},AG=ds("ProfileAvatar"),lR=(t,e)=>{const n=(t??"").trim();if(n)return n.split(/\s+/).filter(Boolean)[0]??"";const s=((e??"").split("@")[0]??"").split(/[._\-+]/).filter(Boolean)[0]??"";return s?s[0].toUpperCase()+s.slice(1):""},IG=(t,e)=>lR(t,e).charAt(0).toUpperCase(),MG=({className:t="",side:e="bottom",align:n="end"})=>{const{name:r,email:s}=Je(YT),i=Je(n5),a=Je(t5),[u,c]=g.useState(!1),[f,h]=g.useState(!1),[p,v]=g.useState(!1),[y,x]=g.useState(!1),{containerRef:_,onKeyDown:b}=gG(),E=Je(pf),k=IG(r,s);if(!k)return E?S.jsxs("span",{"data-testid":"profile-avatar-skeleton","aria-hidden":"true",className:`flex shrink-0 items-center gap-2 ${t}`.trim(),children:[S.jsx(tk,{className:"h-7 w-7 rounded-full"}),S.jsx(tk,{className:"h-3 w-16"})]}):null;const P=lR(r,s),T=(r==null?void 0:r.trim())||null,A=(s==null?void 0:s.trim())||null,O=async()=>{x(!0);try{const N=await fetch("/api/auth/logout",{method:"POST",credentials:"same-origin"});if(!N.ok)throw new Error(`Logout failed: ${N.status}`)}catch(N){AG.warn("Logout request failed",N),ht.error("Could not log out. Please try again."),x(!1);return}window.location.reload()};return S.jsxs(S.Fragment,{children:[S.jsxs(V5,{open:u,onOpenChange:c,children:[S.jsx($5,{asChild:!0,children:S.jsxs("button",{type:"button","aria-label":"Account",className:`flex shrink-0 select-none items-center gap-2 text-content-muted transition-colors hover:text-content ${t}`,children:[S.jsx("span",{className:"flex h-7 w-7 items-center justify-center rounded-full border border-main-border bg-main-input text-[11px] font-semibold leading-none",children:k}),P?S.jsx("span",{className:"max-w-[8rem] truncate text-xs font-medium",children:P}):null]})}),S.jsx(H5,{children:S.jsxs(z5,{ref:_,onKeyDown:b,role:"menu",className:"z-[60] min-w-[180px] rounded-lg bg-surface-2 p-1 shadow-lg",side:e,sideOffset:6,align:n,children:[T||A?S.jsxs("div",{className:"border-b border-main-border px-3 py-2",children:[T?S.jsx("div",{className:"truncate text-xs font-medium text-content",children:T}):null,A?S.jsx("div",{className:"truncate text-[11px] text-content-muted",children:A}):null]}):null,S.jsxs("button",{type:"button",role:"menuitem","data-menu-item":!0,onClick:()=>{c(!1),h(!0)},disabled:!i||a,className:"mt-1 flex w-full items-center gap-2 rounded-md px-3 py-1.5 text-xs text-content transition-colors hover:bg-hover focus:bg-hover focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",children:[S.jsx(wT,{className:"h-3.5 w-3.5",weight:"bold"}),"Connect design references"]}),S.jsxs("button",{type:"button",role:"menuitem","data-menu-item":!0,onClick:()=>{c(!1),v(!0)},className:"mt-1 flex w-full items-center gap-2 rounded-md px-3 py-1.5 text-xs text-content transition-colors hover:bg-hover focus:bg-hover focus:outline-none",children:[S.jsx(mz,{className:"h-3.5 w-3.5",weight:"bold"}),"Share feedback"]}),S.jsxs("button",{type:"button",role:"menuitem","data-menu-item":!0,onClick:O,disabled:y,className:"mt-1 flex w-full items-center gap-2 rounded-md px-3 py-1.5 text-xs text-content transition-colors hover:bg-hover focus:bg-hover focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",children:[S.jsx(_z,{className:"h-3.5 w-3.5",weight:"bold"}),y?"Logging out…":"Log out"]})]})})]}),S.jsx(x_,{isOpen:f,onClose:()=>h(!1)}),S.jsx(RG,{isOpen:p,onClose:()=>v(!1),contactEmail:s??void 0})]})},NG=({onClose:t})=>S.jsxs("div",{className:"bg-main font-main scrollbar-hide relative flex h-full w-full cursor-auto flex-col overflow-hidden shadow-2xl","data-cy":"element-inspector",children:[S.jsx(pG,{onClose:t}),S.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:S.jsx(GW,{})}),S.jsx("div",{className:"border-main-border bg-main-light flex flex-shrink-0 items-center border-t px-2.5 py-1.5",children:S.jsx(MG,{side:"top",align:"start"})})]}),OG=ds("useServerConfig"),LG=()=>{const[t,e]=g.useState(null),[n,r]=g.useState(!0),[s,i]=g.useState(null),a=g.useCallback(async()=>{var u;try{r(!0),i(null);const c=await fetch("/api/health");if(!c.ok)throw new Error(`Failed to fetch config: ${c.status}`);const f=await c.json();if(!f.framework)throw new Error("Server did not return framework information");const h={userPort:((u=f.ports)==null?void 0:u.userDevServer)||3e3,framework:f.framework};return e(h),h}catch(c){const f=c instanceof Error?c.message:"Failed to fetch server config";throw i(f),OG.warn("Error fetching server config:",c),c}finally{r(!1)}},[]);return{config:t,fetchConfig:a,isLoading:n,error:s}},DG="#1C1C20",Ai=[118,118,124],rk=.85,jG=3,FG=.15,Jh=36,VG=4.4,$G=.7,HG=3.5,zG=.8,sk=9,UG=11,BG=[1.35,1.12,.95,.85],WG=[0,1.1,2.3,3.1],GG=[0,.35,.16,.13],KG=[.9,.5,.4,.35],Aa=3,h1=[[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.14,y1:.13,x2:.86,y2:.23,level:1},{x1:.14,y1:.28,x2:.3,y2:.87,level:1},{x1:.34,y1:.28,x2:.86,y2:.87,level:1},{x1:.165,y1:.155,x2:.225,y2:.205,level:2},{x1:.7,y1:.155,x2:.755,y2:.205,level:2},{x1:.775,y1:.155,x2:.83,y2:.205,level:2},{x1:.165,y1:.32,x2:.275,y2:.375,level:2},{x1:.165,y1:.415,x2:.275,y2:.47,level:2},{x1:.165,y1:.51,x2:.275,y2:.565,level:2},{x1:.37,y1:.32,x2:.585,y2:.56,level:2},{x1:.615,y1:.32,x2:.83,y2:.56,level:2},{x1:.37,y1:.61,x2:.83,y2:.83,level:2},{hline:!0,x1:.39,x2:.81,y:.685,level:3},{hline:!0,x1:.39,x2:.75,y:.755,level:3}],[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.16,y1:.17,x2:.52,y2:.45,level:1},{x1:.58,y1:.17,x2:.685,y2:.29,level:1},{x1:.715,y1:.17,x2:.84,y2:.29,level:1},{x1:.58,y1:.33,x2:.685,y2:.45,level:1},{x1:.715,y1:.33,x2:.84,y2:.45,level:1},{x1:.16,y1:.55,x2:.84,y2:.85,level:1},{x1:.19,y1:.21,x2:.36,y2:.33,level:2},{hline:!0,x1:.19,x2:.48,y:.37,level:3},{hline:!0,x1:.19,x2:.42,y:.42,level:3},{x1:.19,y1:.6,x2:.49,y2:.8,level:2},{hline:!0,x1:.53,x2:.8,y:.63,level:3},{hline:!0,x1:.53,x2:.76,y:.7,level:3},{hline:!0,x1:.53,x2:.79,y:.77,level:3}],[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.14,y1:.13,x2:.86,y2:.22,level:1},{x1:.14,y1:.28,x2:.36,y2:.87,level:1},{x1:.39,y1:.28,x2:.61,y2:.87,level:1},{x1:.64,y1:.28,x2:.86,y2:.87,level:1},{x1:.165,y1:.15,x2:.225,y2:.2,level:2},{x1:.165,y1:.32,x2:.335,y2:.52,level:2},{x1:.415,y1:.32,x2:.585,y2:.52,level:2},{x1:.665,y1:.32,x2:.835,y2:.52,level:2},{hline:!0,x1:.165,x2:.335,y:.6,level:3},{hline:!0,x1:.165,x2:.3,y:.67,level:3},{hline:!0,x1:.415,x2:.585,y:.6,level:3},{hline:!0,x1:.415,x2:.55,y:.67,level:3},{hline:!0,x1:.665,x2:.835,y:.6,level:3},{hline:!0,x1:.665,x2:.8,y:.67,level:3}],[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.3,y1:.22,x2:.7,y2:.74,level:1},{x1:.34,y1:.27,x2:.55,y2:.34,level:2},{hline:!0,x1:.36,x2:.64,y:.42,level:3},{hline:!0,x1:.36,x2:.6,y:.49,level:3},{hline:!0,x1:.36,x2:.62,y:.56,level:3},{x1:.5,y1:.63,x2:.575,y2:.69,level:2},{x1:.595,y1:.63,x2:.66,y2:.69,level:2}]],ep=t=>{let e=t|0;return e=Math.imul(e^e>>>16,73244475),e=Math.imul(e^e>>>16,73244475),e^=e>>>16,(e>>>0)/4294967296},Ep=t=>{const e=Math.min(1,Math.max(0,t));return e*e*(3-2*e)},Ia=(t,e)=>(Math.round(t/e-.5)+.5)*e,qG=Math.sin(Math.PI/3),ik=(t,e,n,r,s)=>{if(t.beginPath(),e===0)t.arc(n,r,s,0,Math.PI*2);else if(e===1){const i=s*qG;t.moveTo(n,r-s),t.lineTo(n+i,r+s/2),t.lineTo(n-i,r+s/2),t.closePath()}else{const i=s*.85;t.rect(n-i,r-i,i*2,i*2)}t.fill()},ZG=(t,e,n)=>{let r;if(n.hline){const s=Math.max(n.x1-t,t-n.x2,0),i=Math.abs(e-n.y1);r=Math.hypot(s,i)-sk}else{const s=Math.max(n.x1-t,t-n.x2,0),i=Math.max(n.y1-e,e-n.y2,0);s===0&&i===0?r=-Math.min(t-n.x1,n.x2-t,e-n.y1,n.y2-e):r=Math.hypot(s,i),r=Math.abs(r)-sk}return Ep(.5-r/(2*UG))},uR=({className:t="",trackGlobalLoaderCount:e=!0})=>{const n=st(ZT),r=g.useRef(null),s=g.useCallback(i=>{var L;if((L=r.current)==null||L.call(r),r.current=null,!i)return;const a=i.getContext("2d");if(!a)return;e&&n(D=>D+1);const u=window.matchMedia("(prefers-reduced-motion: reduce)").matches;let c=[],f=0,h=0,p=Jh,v=Jh,y=null,x=null,_=0,b=-1;const E=new Array(33),k=D=>{const V=Math.round(D*32);let K=E[V];if(!K){const Y=V/32,G=Math.round(Ai[0]+(255-Ai[0])*Y),B=Math.round(Ai[1]+(255-Ai[1])*Y),Q=Math.round(Ai[2]+(255-Ai[2])*Y);K=`rgba(${G}, ${B}, ${Q}, ${rk})`,E[V]=K}return K},P=D=>{const V=1-.35*D,K=Math.round(Ai[0]*V),Y=Math.round(Ai[1]*V),G=Math.round(Ai[2]*V);return`rgba(${K}, ${Y}, ${G}, ${rk})`},T=D=>{let V=Math.floor(Math.random()*h1.length);V===b&&(V=(V+1)%h1.length),b=V;const K=[0,0,0,0],Y=h1[V].map((j,Z)=>{const ee=j.level,ie=K[ee]++,le=WG[ee]+ie*GG[ee],ue=KG[ee]+ep(V*131+Z*17+5)*.2;if(j.hline){const se=Ia((j.y??0)*h,v);return{hline:!0,x1:Ia(j.x1*f,p),x2:Ia(j.x2*f,p),y1:se,y2:se,level:ee,start:le,dur:ue}}const Ce=Ia(j.x1*f,p),ae=Ia((j.y1??0)*h,v);return{hline:!1,x1:Ce,y1:ae,x2:Math.max(Ia(j.x2*f,p),Ce+p),y2:Math.max(Ia((j.y2??0)*h,v),ae+v),level:ee,start:le,dur:ue}}),G=Y.reduce((j,Z)=>Math.max(j,Z.start+Z.dur),0),B=c.length,Q=new Float32Array(B*Aa),$=new Int16Array(B*Aa).fill(-1),te=new Uint8Array(B),H=Y[0];for(let j=0;j<B;j++){const Z=c[j];Z.x>H.x1&&Z.x<H.x2&&Z.y>H.y1&&Z.y<H.y2&&(te[j]=1);const ee=j*Aa;for(let ie=0;ie<Y.length;ie++){const le=ZG(Z.x,Z.y,Y[ie]);if(le<=.02)continue;let ue=ee;for(let Ce=ee;Ce<ee+Aa;Ce++){if($[Ce]===-1){ue=Ce;break}Q[Ce]<Q[ue]&&(ue=Ce)}($[ue]===-1||le>Q[ue])&&(Q[ue]=le,$[ue]=ie)}}return{startT:D,buildEnd:G,els:Y,frame:H,cellQ:Q,cellEl:$,inFrame:te}},A=()=>{const D=i.getBoundingClientRect();f=Math.max(1,D.width),h=Math.max(1,D.height);const V=Math.min(2,window.devicePixelRatio||1);i.width=Math.round(f*V),i.height=Math.round(h*V),a.setTransform(V,0,0,V,0,0);const K=Math.max(8,Math.round(f/Jh)),Y=Math.max(6,Math.round(h/Jh));p=f/K,v=h/Y,c=[];for(let G=0;G<Y;G++){const B=Y>1?G/(Y-1):.5,Q=VG*(1+$G*.4*(B*2-1));for(let $=0;$<K;$++){const te=G*8191+$*131+1,H={x:($+.5)*p,y:(G+.5)*v,size:Q,seed:te,phase:ep(te),kind:0};H.kind=Math.floor(ep(te*97)*3),c.push(H)}}x=null,y=null},O=new Float32Array(32),N=D=>{a.fillStyle=DG,a.fillRect(0,0,f,h),y||(y=T(D+.2)),D>=y.startT+y.buildEnd+HG&&(x=y,_=D,y=T(D+.2));let V=0;x&&(V=1-Ep((D-_)/zG),V<=0&&(x=null));const K=y;for(let H=0;H<K.els.length;H++){const j=K.els[H];O[H]=Ep(Math.min(1,Math.max(0,(D-K.startT-j.start)/j.dur)))}const Y=O[0],G=P(0),B=P(Y),Q=V>0?P(V):G,$=V>0?P(Math.max(Y,V)):B,te=c.length;for(let H=0;H<te;H++){const j=c[H];let Z=0,ee=0;const ie=H*Aa;for(let we=ie;we<ie+Aa;we++){const Ie=K.cellEl[we];if(Ie<0)break;const qe=K.cellQ[we]*O[Ie];qe>Z&&(Z=qe,ee=K.els[Ie].level)}if(x)for(let we=ie;we<ie+Aa;we++){const Ie=x.cellEl[we];if(Ie<0)break;const qe=x.cellQ[we]*V;qe>Z&&(Z=qe,ee=x.els[Ie].level)}const le=D/jG+j.phase,ue=Math.floor(le),Ce=le-ue,ae=Ep(Math.min(Ce,1-Ce)/FG),se=Math.floor(ep(j.seed*97+ue*7919)*3);se!==j.kind&&Z<.02&&ae<.05&&(j.kind=se);const pe=Math.max(ae*(1-Z),Z);if(!(pe<.01))if(Z<.02){const we=K.inFrame[H]===1,Ie=x?x.inFrame[H]===1:!1;we?a.fillStyle=Ie?$:B:a.fillStyle=Ie?Q:G;const qe=Math.max(we?Y:0,Ie?V:0);ik(a,j.kind,j.x,j.y,j.size*pe*(1-.2*qe))}else{a.fillStyle=k(Z);const we=1+(BG[ee]-1)*Z;ik(a,j.kind,j.x,j.y,j.size*pe*we)}}};A();let R=0;if(u)y=T(-100),N(0);else{const D=performance.now(),V=K=>{N((K-D)/1e3),R=requestAnimationFrame(V)};R=requestAnimationFrame(V)}const M=new ResizeObserver(()=>{A(),u&&(y=T(-100),N(0))});M.observe(i),r.current=()=>{cancelAnimationFrame(R),M.disconnect(),e&&n(D=>D-1)}},[e,n]);return S.jsx("canvas",{ref:s,"aria-hidden":"true",className:`h-full w-full ${t}`.trim()})},YG=async(t=null)=>{if(t)return QG(t);let e;try{e=await fetch("/api/mcp/status")}catch{return{isOk:!1,unavailableReason:"rivet_unreachable"}}if(e.status===404||!(e.headers.get("content-type")??"").toLowerCase().includes("application/json"))return tp();if(!e.ok)return{isOk:!1,unavailableReason:"rivet_unreachable"};let r;try{r=await e.json()}catch{return tp()}const s=r.devServerHealth;return s?s.ownership==="none"?{isOk:!1,unavailableReason:"upstream_unreachable"}:s.isReachable===!0?{isOk:!0,unavailableReason:"upstream_unreachable"}:{isOk:!1,unavailableReason:s.reason==="rivet_unreachable"?"rivet_unreachable":"upstream_unreachable"}:tp()},QG=async t=>{try{const e=await fetch(t);return{isOk:e.status!==502&&e.status!==503,unavailableReason:"upstream_unreachable"}}catch{return{isOk:!1,unavailableReason:"rivet_unreachable"}}},tp=async()=>{try{const t=await fetch("/");return{isOk:t.status!==502&&t.status!==503,unavailableReason:"upstream_unreachable"}}catch{return{isOk:!1,unavailableReason:"rivet_unreachable"}}},ok=ds("usePreviewUpstreamHealth"),XG=500,JG=4e3,eK=15e3,tK=(t,e={})=>{const n=g.useRef(null),r=g.useRef(null),s=e.probeMsWhileDown??XG,i=e.probeMsWhileUp??JG,a=e.firstUnreachableCaptureAfterMs??eK,u=e.rerunProbeImmediatelyOnVersion,c=e.probePath??null,f=e.skip??!1,[h,p]=g.useState(t==="static"),[v,y]=g.useState(0),[x,_]=g.useState(null),[b,E]=g.useState(0),[k,P]=g.useState(!1),[T,A]=g.useState(!1),[O,N]=g.useState(t==="static"?null:"upstream_unreachable");return g.useEffect(()=>{if(t==="static"){p(!0),_(null),E(0),P(!1),A(!0),N(null);return}if(f){p(!1),_(null),E(0),P(!1),A(!0),N("upstream_unreachable"),n.current=null;return}let R=!0;const M=Date.now();_(M),E(0),P(!1),p(!1),A(!1),N("upstream_unreachable");const L={current:!1},D={current:!1},V={current:!1},K={current:null},Y={current:!1};let G=null;const B=()=>{V.current||(V.current=!0,R&&A(!0))},Q=()=>{G!==null&&(clearTimeout(G),G=null)},$=(H,j)=>{Q(),G=setTimeout(j,H)},te=async()=>{if(!R)return;E(ie=>ie+1);const{isOk:H,unavailableReason:j}=await YG(c);if(!R)return;if(B(),H){const ie=!Y.current;Y.current=!0,p(!0),N(null),K.current=null,D.current=!1,P(!1),L.current?ie&&(Pe==null||Pe.capture("preview_upstream_restored",{framework:t})):(L.current=!0,Pe==null||Pe.capture("preview_dev_server_ready",{framework:t,ready_after_ms:Date.now()-M})),$(i,te);return}const Z=Y.current;Y.current=!1,p(!1),N(j),K.current===null&&(K.current=Date.now(),D.current=!1,P(!1)),Z&&(Pe==null||Pe.capture("preview_upstream_lost",{framework:t}),y(ie=>ie+1),ok.warn("Preview upstream became unavailable after it was ready"));const ee=Date.now()-K.current;ee>=a&&!D.current&&(D.current=!0,P(!0),Pe==null||Pe.capture("preview_dev_server_unreachable",{framework:t,elapsed_ms:ee}),ok.warn("Dev server did not become ready within timeout window")),$(s,te)};return n.current=()=>$(0,te),$(0,te),()=>{R=!1,n.current=null,Q()}},[t,s,i,a,c,f]),g.useEffect(()=>{var M;if(t==="static"||u===void 0)return;const R=r.current;r.current=u,R!==null&&R!==u&&((M=n.current)==null||M.call(n))},[t,u]),{isUpstreamReady:h,iframeRemountKey:v,probeStartedAt:x,probeAttemptCount:b,isFirstUnreachableWindowExceeded:k,initialProbeComplete:T,unavailableReason:O}};function nK(t){return t.enteringSplit&&t.isExistingSession&&t.hasActiveVariantProxy}const cR=t=>{var e;return t!=="embedded"||typeof window>"u"?"":((e=window.__RIVET_BOOTSTRAP__)==null?void 0:e.previewOrigin)??`${window.location.protocol}//localhost:${window.location.port}`},dR=({agentApplyMode:t,url:e})=>e.startsWith("/")?`${cR(t)}${e}`:e,rK="allow-scripts allow-same-origin allow-forms allow-popups allow-modals",sK=t=>rK,iK=ds("PreviewSurface"),ak=(t,e)=>t==="about:blank"?"blank":t.includes("/api/variants/")?"static_artifact":e.kind==="variant"?"dev_server":"original",fR=({target:t,src:e,framework:n,remountKey:r})=>(Je(s0),S.jsx("div",{className:"relative h-full w-full",children:S.jsx("iframe",{src:e,className:"h-full w-full border-none",title:"Project Preview",sandbox:sK(),onLoad:()=>{Pe==null||Pe.capture("preview_iframe_loaded",{framework:n,src:e}),t.kind==="variant"&&(Pe==null||Pe.capture("variants_panel.preview_displayed",{sessionId:t.sessionId,variantId:t.variantId,renderedTarget:"variant",iframeSrcKind:ak(e,t),framework:n}))},onError:()=>{Pe==null||Pe.capture("preview_iframe_load_failed",{framework:n,src:e}),t.kind==="variant"&&(Pe==null||Pe.capture("variants_panel.preview_display_failed",{sessionId:t.sessionId,variantId:t.variantId,renderedTarget:"variant",iframeSrcKind:ak(e,t),framework:n})),iK.warn("Preview iframe failed to load",{framework:n,src:e})}},r)})),oK="modulepreload",aK=function(t){return"/"+t},lk={},lK=function(e,n,r){let s=Promise.resolve();if(n&&n.length>0){let a=function(f){return Promise.all(f.map(h=>Promise.resolve(h).then(p=>({status:"fulfilled",value:p}),p=>({status:"rejected",reason:p}))))};document.getElementsByTagName("link");const u=document.querySelector("meta[property=csp-nonce]"),c=(u==null?void 0:u.nonce)||(u==null?void 0:u.getAttribute("nonce"));s=a(n.map(f=>{if(f=aK(f),f in lk)return;lk[f]=!0;const h=f.endsWith(".css"),p=h?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${p}`))return;const v=document.createElement("link");if(v.rel=h?"stylesheet":oK,h||(v.as="script"),v.crossOrigin="",v.href=f,c&&v.setAttribute("nonce",c),document.head.appendChild(v),h)return new Promise((y,x)=>{v.addEventListener("load",y),v.addEventListener("error",()=>x(new Error(`Unable to preload CSS for ${f}`)))})}))}function i(a){const u=new Event("vite:preloadError",{cancelable:!0});if(u.payload=a,window.dispatchEvent(u),!u.defaultPrevented)throw a}return s.then(a=>{for(const u of a||[])u.status==="rejected"&&i(u.reason);return e().catch(i)})},uK=g.lazy(()=>lK(()=>Promise.resolve().then(()=>Hq),void 0)),cK={surface:"relative flex h-full w-full items-center justify-center bg-main px-6",overlay:"absolute inset-0 z-10 flex items-center justify-center bg-main/90 px-6",page:"relative flex h-screen w-full items-center justify-center bg-main px-6"},dK={sm:"text-lg font-semibold text-content",md:"text-2xl font-semibold text-content",lg:"text-3xl font-semibold text-content"},fK={neutral:"rounded-md border border-divider bg-transparent px-5 py-2 text-sm font-medium text-content transition-colors hover:bg-surface-3",ghost:"rounded-md px-5 py-2 text-sm font-medium text-content-muted transition-colors hover:text-content"},_d=({backdrop:t,media:e,title:n,description:r,actions:s,tone:i="neutral",fill:a="surface",size:u="md",children:c,state:f,role:h="status",busy:p=!1,className:v=""})=>{const y=g.useCallback(_=>{_&&f&&(Pe==null||Pe.capture("status_surface_shown",{state:f,tone:i,fill:a}))},[f,i,a]),x=!!(e||n||r||c||s!=null&&s.length);return S.jsxs("div",{ref:y,className:`${cK[a]} ${v}`.trim(),role:h,"aria-live":"polite","aria-busy":p||void 0,"data-state":f,children:[t?S.jsx("div",{className:"absolute inset-0",children:t}):null,x?S.jsxs("div",{className:"relative z-10 flex max-w-sm flex-col items-center gap-5 text-center",children:[e,n?S.jsx("h2",{className:dK[u],children:n}):null,r?S.jsx("p",{className:"text-content-muted text-base leading-relaxed",children:r}):null,c,s!=null&&s.length?S.jsx("div",{className:"flex flex-row items-center gap-3",children:s.map(_=>S.jsx("button",{type:"button",onClick:_.onClick,className:fK[_.variant??"neutral"],children:_.label},_.label))}):null]}):null]})},w_=({loader:t="coalesce",trackGlobalLoaderCount:e,size:n="lg",...r})=>t==="coalesce"?S.jsx(_d,{...r,size:n,busy:!0,backdrop:S.jsx(uR,{trackGlobalLoaderCount:e})}):t==="logo"?S.jsx(_d,{...r,size:n,busy:!0,backdrop:S.jsx(g.Suspense,{fallback:null,children:S.jsx(uK,{className:"absolute inset-0"})})}):S.jsx(_d,{...r,size:n,busy:!0,media:S.jsx(r0,{"aria-hidden":!0,className:"text-content h-8 w-8 shrink-0 animate-spin",weight:"bold"})}),hR=({icon:t,...e})=>S.jsx(_d,{...e,tone:"neutral",media:t?S.jsx("div",{className:"text-content-muted",children:t}):void 0}),Cm=t=>S.jsx(_d,{...t,tone:"error",role:"alert"}),uk="/static/",hK=t=>{try{return new URL(t,"http://localhost").pathname.endsWith(uk)}catch{return t.endsWith(uk)}},pK=({isInteractionDisabled:t=!1,framework:e,userPort:n,activeDemoSessionId:r=null,holdPreviewNavigation:s=!1})=>{const i=Je(u_),a=st(u_),u=Je(xm),c=st(xm),f=Je(hf),h=Je(s0),p=Je(c_),v=Je(d_),y=Je(QT),x=Je(XT),_=st(d_),b=Je(Zo),E=Je(h_),k=st(c_),P=f.active&&f.projectContext.kind==="fresh",T=Je(f_),A=f.active?f.variants.find(je=>je.workItemId===T&&(je.status==="pending"||je.status==="running"||je.status==="succeeded"&&!je.preview&&typeof je.port!="number"&&(!je.previewUnavailable||je.previewUnavailable.reason==="idle_timeout")))??null:null,O=f.active&&f.variants.some(je=>je.status==="pending"||je.status==="running"),N=P||O,R=f.active?f.variants.find(je=>{var Ye;return je.workItemId===T&&je.status==="succeeded"&&!!je.previewUnavailable&&((Ye=je.previewUnavailable)==null?void 0:Ye.reason)!=="idle_timeout"})??null:null,M=e==="static"&&u!==null&&hK(u);g.useEffect(()=>{f.active||k(!1)},[f.active,k]);const L=g.useRef(!1);g.useEffect(()=>{const je=!!(b!=null&&b.left||b!=null&&b.right),Ye=je&&!L.current;L.current=je;const lt=f.active?f.sessionId:null;!lt||!nK({enteringSplit:Ye,isExistingSession:f.active&&f.projectContext.kind==="existing",hasActiveVariantProxy:p&&v!==null})||(k(!1),_(null),a(Xe=>Xe+1),fetch(`/api/variants/${encodeURIComponent(lt)}/preview-port`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({variantId:null})}).catch(()=>{}))},[b,f,p,v,k,_,a]);const V=g.useMemo(()=>{var xn;if(p||u&&!M||!f.active)return null;const{stage:je,variants:Ye}=f,lt=je==="ready"||je==="degraded",Xe=Ye.some(Ut=>{var Rn,Hn;return((Rn=Ut.refinement)==null?void 0:Rn.status)==="pending"||((Hn=Ut.refinement)==null?void 0:Hn.status)==="running"});if(!lt&&!Xe)return null;const vt=Ye.find(Ut=>{var Rn;return Ut.status==="succeeded"&&((Rn=Ut.preview)==null?void 0:Rn.kind)==="static_artifact"});return((xn=vt==null?void 0:vt.preview)==null?void 0:xn.kind)==="static_artifact"?vt.preview.url:null},[M,u,p,f])??u,K=g.useMemo(()=>!f.active||!V?null:f.variants.find(je=>{var Ye;return((Ye=je.preview)==null?void 0:Ye.kind)==="static_artifact"&&V.startsWith(je.preview.url)})??null,[V,f]),Y=g.useMemo(()=>{if((E==null?void 0:E.previewKind)==="static")return{kind:"variant",sessionId:E.sessionId,variantId:E.variantId};if(!f.active)return _m;if(K)return{kind:"variant",sessionId:f.sessionId,variantId:K.workItemId};if(V){const Ye=V.match(/\/__rivet\/preview\/variant\/([^/]+)\/([^/?#]+)/),lt=Ye!=null&&Ye[1]?decodeURIComponent(Ye[1]):null,Xe=Ye!=null&&Ye[2]?decodeURIComponent(Ye[2]):null;if(lt===f.sessionId&&Xe&&f.variants.some(Ut=>Ut.workItemId===Xe))return{kind:"variant",sessionId:f.sessionId,variantId:Xe};const vt=V.match(/\/api\/variants\/[^/]+\/static\/([^/?#]+)/),xn=vt!=null&&vt[1]?decodeURIComponent(vt[1]):null;if(xn&&f.variants.some(Ut=>Ut.workItemId===xn))return{kind:"variant",sessionId:f.sessionId,variantId:xn}}const je=!!(b!=null&&b.left||b!=null&&b.right);return(!je||P)&&!V&&p&&v&&f.variants.some(Ye=>Ye.workItemId===v)?{kind:"variant",sessionId:f.sessionId,variantId:v}:(!je||P)&&!V&&T&&f.variants.some(Ye=>Ye.workItemId===T)?{kind:"variant",sessionId:f.sessionId,variantId:T}:_m},[E,K,f,p,v,V,b,P,T]),G=g.useRef(null);g.useEffect(()=>{var Xe,vt;if(!K||((Xe=K.preview)==null?void 0:Xe.kind)!=="static_artifact"||((vt=K.refinement)==null?void 0:vt.status)!=="succeeded")return;const je=`${K.workItemId}:${K.refinement.workItemId}`;if(G.current===je)return;G.current=je;const Ye=K.preview.url.includes("?")?"&":"?",lt=`${K.preview.url}${Ye}refinement=${encodeURIComponent(K.refinement.workItemId)}`;V!==lt&&(c(lt),a(xn=>xn+1))},[V,K,a,c,f]);const B=V!==null&&VW(V),Q=V!==null&&!B||P&&!p&&!B,{isUpstreamReady:$,iframeRemountKey:te,probeAttemptCount:H,initialProbeComplete:j}=tK(e,{rerunProbeImmediatelyOnVersion:i,probePath:B?V:null,skip:Q}),[Z,ee]=g.useState(()=>y&&$?i:null),ie=g.useRef(null);g.useEffect(()=>{if(!y){ie.current=null,ee(null);return}if(Z===i){ie.current=null;return}const je=ie.current;if(!je||je.remountKey!==i){ie.current={remountKey:i,probeAttemptCount:H};return}$&&H>je.probeAttemptCount&&(ie.current=null,ee(i))},[Z,i,y,H,$]);const ue=V!==null&&!B||$,ae=x||y&&Z!==i||y&&!ue,se=`${te}:${i}`,pe=r?`/try/${encodeURIComponent(r)}`:"",we=sR(window.location.pathname),Ie=e==="static"?`${pe}/static${we??"/"}`:`${pe}${we??"/"}`,qe=cR(h);let it=null;V&&(it=dR({agentApplyMode:h,url:V}));const at=A||ae?"about:blank":(B&&!ue?"about:blank":it)??(s||!ue?"about:blank":`${qe}${Ie}`),At=!!A||!!R||!ue&&j;let mt=null;return ae?mt=S.jsx(w_,{fill:"overlay",loader:"coalesce",trackGlobalLoaderCount:!1,state:"preview_replay_boot"}):A?mt=S.jsx(w_,{fill:"overlay",loader:"coalesce",trackGlobalLoaderCount:!1,state:"variant_building",children:S.jsx("span",{className:"sr-only",children:"Building your direction"})}):R?mt=S.jsx(Cm,{fill:"overlay",state:"preview_unavailable",title:"Preview couldn’t start",description:"Its preview server didn’t start.",actions:[{label:"Reload",onClick:()=>window.location.reload()}]}):At&&(mt=N?S.jsx(hR,{fill:"overlay",state:"preview_no_selection",title:"Nothing to preview yet",description:"Pick a direction from the panel."}):S.jsx(Cm,{fill:"overlay",state:"preview_offline",title:"Preview isn't connected",description:"Rivet lost connection to your project.",actions:[{label:"Reload",onClick:()=>window.location.reload()}]})),S.jsxs("div",{className:"relative h-full w-full",children:[mt,S.jsx(fR,{target:Y,src:at,framework:e,remountKey:se})]})};function ck({side:t,sessionId:e,variantId:n,url:r,label:s,source:i,isFallback:a=!1}){var E;const u=st(Zo),c=Je(hf),f=Je(s0),h=g.useRef(!1),p=g.useCallback(()=>{h.current||(h.current=!0,Kd({source:i,sessionId:e,variantId:n}))},[i,e,n]),v=g.useCallback(()=>{if(a){u(null);return}p(),u(k=>{if(!k)return null;const P={...k};return delete P[t],P.left||P.right?P:null})},[u,t,a,p]),y=g.useMemo(()=>({kind:"variant",sessionId:e,variantId:n}),[e,n]),x=g.useMemo(()=>!c.active||c.sessionId!==e?null:c.variants.find(k=>k.workItemId===n)??null,[e,n,c]),_=g.useMemo(()=>{var P,T;let k=r;if(((P=x==null?void 0:x.preview)==null?void 0:P.kind)==="static_artifact"&&((T=x.refinement)==null?void 0:T.status)==="succeeded"){const A=x.preview.url.includes("?")?"&":"?";k=`${x.preview.url}${A}refinement=${encodeURIComponent(x.refinement.workItemId)}`}return dR({agentApplyMode:f,url:k})},[f,x,r]),b=((E=x==null?void 0:x.refinement)==null?void 0:E.status)==="succeeded"?`${n}:${x.refinement.workItemId}`:n;return S.jsxs("div",{className:"variant-split-secondary","data-cy":"variant-split-pane","data-variant-id":n,children:[S.jsxs("div",{className:"variant-split-secondary-toolbar",children:[S.jsx("span",{className:"variant-split-secondary-label",title:s,children:s}),S.jsx(Fo,{label:"Collapse",children:S.jsx("button",{type:"button",className:"variant-split-secondary-close",onClick:v,"aria-label":"Collapse split view",children:S.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12","aria-hidden":"true",focusable:"false",children:S.jsx("path",{d:"M2.5 2.5 L9.5 9.5 M9.5 2.5 L2.5 9.5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})})})]}),S.jsx("div",{className:"variant-split-secondary-body relative min-h-0 flex-1",children:S.jsx(fR,{target:y,src:_,framework:"static",remountKey:b})})]})}const dk=240;function mK(){const t=Je(Ud),e=Je(ex),n=g.useRef(null);return g.useEffect(()=>{if(!t||!e||!n.current)return;const r=e.x-dk/2,s=e.y-22;n.current.style.transform=`translate3d(${r}px, ${s}px, 0)`},[t,e]),!t||!e?null:S.jsx("div",{ref:n,"aria-hidden":"true",className:"variant-drag-ghost",style:{width:dk},children:S.jsxs("div",{className:"variant-drag-ghost-body",children:[S.jsxs("div",{className:"variant-drag-ghost-row",children:[S.jsx("div",{className:"variant-drag-ghost-title",children:t.label}),t.runLabel?S.jsx("div",{className:"variant-drag-ghost-tag",style:$T(t.runLabel),children:t.runLabel}):null]}),t.description?S.jsx("div",{className:"variant-drag-ghost-desc",children:t.description}):null]})})}function gK(){const t=Je(Ud),e=Je(ex),n=Je(Zo),r=st(Ud),s=st(Zo),i=g.useRef(null),[a,u]=g.useState(null),[c,f]=g.useState("hidden");g.useEffect(()=>{if(!t){f("hidden"),u(null);return}const v=requestAnimationFrame(()=>f("visible"));return()=>cancelAnimationFrame(v)},[t]);const h=g.useCallback((v,y)=>{const x=i.current;if(!x)return null;const _=x.getBoundingClientRect();return v<_.left||v>_.right||y<_.top||y>_.bottom?null:v<(_.left+_.right)/2?"left":"right"},[]);if(g.useEffect(()=>{if(!t||!e)return;const v=h(e.x,e.y);u(y=>y===v?y:v)},[t,e,h]),g.useEffect(()=>{if(!t)return;const v=y=>{const x=h(y.clientX,y.clientY);if(x&&t.url){const _={sessionId:t.sessionId,variantId:t.variantId,label:t.label,url:t.url,source:t.source},b=n==null?void 0:n[x];b&&(b.sessionId!==_.sessionId||b.variantId!==_.variantId)&&Kd(b),s(E=>({...E??{},[x]:_})),f("exiting"),window.setTimeout(()=>r(null),220)}else Kd(t),f("exiting"),window.setTimeout(()=>r(null),220)};return window.addEventListener("pointerup",v),window.addEventListener("pointercancel",v),()=>{window.removeEventListener("pointerup",v),window.removeEventListener("pointercancel",v)}},[t,h,r,s,n]),!t)return null;const p=["variant-drop-zones",c==="visible"&&"is-visible",c==="exiting"&&"is-exiting"].filter(Boolean).join(" ");return S.jsxs("div",{ref:i,className:p,"aria-hidden":"true",children:[S.jsx(fk,{side:"left",hovered:a==="left",canDrop:!!t.url,label:t.label}),S.jsx(fk,{side:"right",hovered:a==="right",canDrop:!!t.url,label:t.label})]})}function fk({side:t,hovered:e,canDrop:n,label:r}){return S.jsxs("div",{className:["variant-drop-zone",`is-${t}`,e&&"is-hover",!n&&"is-disabled"].filter(Boolean).join(" "),children:[S.jsxs("div",{className:"variant-drop-zone-inner",children:[S.jsx("div",{className:`variant-drop-zone-icon is-${t}`}),S.jsx("div",{className:"variant-drop-zone-caption",children:n?`Add ${t} split`:"Split unavailable for this direction"})]}),S.jsx("div",{className:"variant-drop-zone-preview","aria-hidden":"true",children:S.jsx("div",{className:"variant-drop-zone-preview-label",children:r})}),S.jsx("div",{className:"variant-drop-zone-border"})]})}const pR=(t,e,n)=>{var i,a;if(!t.active||t.sessionId!==e)return null;const r=t.variants.find(u=>u.workItemId===n);if(((i=r==null?void 0:r.preview)==null?void 0:i.kind)!=="static_artifact")return null;if(((a=r.refinement)==null?void 0:a.status)!=="succeeded")return r.preview.url;const s=r.preview.url.includes("?")?"&":"?";return`${r.preview.url}${s}refinement=${encodeURIComponent(r.refinement.workItemId)}`},hk=(t,e)=>{if(!t)return;const n=pR(e,t.sessionId,t.variantId);return!n||n===t.url?t:{...t,url:n}},vK=()=>S.jsx("div",{"data-testid":"preview-boot-skeleton",role:"status","aria-busy":"true","aria-label":"Loading preview",className:"bg-main flex h-full min-h-0 w-full flex-1 flex-col p-3",children:S.jsx("div",{className:"border-main-border relative min-h-0 flex-1 overflow-hidden rounded-lg border",children:S.jsx(uR,{trackGlobalLoaderCount:!1})})}),yK=({isLoading:t=!1,isInteractionDisabled:e=!1,activeDemoSessionId:n=null,holdHostedTryoutPreviewNavigation:r=!1})=>{const{config:s,fetchConfig:i,isLoading:a,error:u}=LG();return g.useEffect(()=>{i().catch(c=>{Pe==null||Pe.capture("preview_config_load_failed",{message:c instanceof Error?c.message:"unknown_error"})})},[i]),a?r?S.jsx("div",{className:"bg-main flex h-full min-h-0 w-full flex-1","aria-busy":"true"}):S.jsx(vK,{}):u||!s?S.jsx(Cm,{fill:"surface",size:"sm",state:"preview_config_error",title:"Couldn't load preview",description:"We couldn't load the preview configuration.",actions:[{label:"Retry",onClick:()=>{Pe==null||Pe.capture("preview_config_retry_clicked"),i().catch(c=>{Pe==null||Pe.capture("preview_config_load_failed",{message:c instanceof Error?c.message:"unknown_error"})})}}]}):S.jsx(_K,{isLoading:t,isInteractionDisabled:e,framework:s.framework,userPort:s.userPort,activeDemoSessionId:n,holdHostedTryoutPreviewNavigation:r})};function _K(t){const e=Je(Zo),n=Je(Ud),r=Je(hf),s=Je(xm),i=e==null?void 0:e.left,a=e==null?void 0:e.right,u=g.useMemo(()=>{var A,O;if(!r.active||r.projectContext.kind!=="fresh"||!(!!i!=!!a))return;const _=(A=i??a)==null?void 0:A.variantId,b=r.variants.filter(N=>{var R;return N.status==="succeeded"&&((R=N.preview)==null?void 0:R.kind)==="static_artifact"&&N.workItemId!==_}),E=s==null?void 0:s.replace(/[?&]refinement=[^&]*$/,""),P=b.find(N=>{var R;return((R=N.preview)==null?void 0:R.kind)==="static_artifact"&&N.preview.url===E})??b[0];if(((O=P==null?void 0:P.preview)==null?void 0:O.kind)!=="static_artifact")return;const T=pR(r,r.sessionId,P.workItemId);if(T)return{sessionId:r.sessionId,variantId:P.workItemId,label:P.label,url:T,source:"live"}},[r,i,a,s]),c=hk(i,r)??(a?u:void 0),f=hk(a,r)??(i?u:void 0),h=!i&&!!c,p=!a&&!!f,v=!!(c||f),y=S.jsx(pK,{isInteractionDisabled:t.isInteractionDisabled,framework:t.framework,userPort:t.userPort,activeDemoSessionId:t.activeDemoSessionId,holdPreviewNavigation:t.holdHostedTryoutPreviewNavigation});return S.jsx("div",{className:"relative flex h-full min-h-0 w-full flex-1 flex-col",children:S.jsxs("div",{className:`variant-preview-region relative flex h-full min-h-0 w-full flex-1 flex-col ${n?"is-dragging":""} ${v?"is-split":""}`,children:[S.jsxs("div",{className:"variant-preview-row flex h-full min-h-0 w-full flex-1",children:[c&&S.jsx(ck,{side:"left",sessionId:c.sessionId,variantId:c.variantId,url:c.url,label:c.label,source:c.source,isFallback:h},`left-${c.sessionId}:${c.variantId}:${c.url}`),!(c&&f)&&S.jsx("div",{className:"variant-preview-primary flex h-full min-h-0 flex-1 flex-col",children:y}),f&&S.jsx(ck,{side:"right",sessionId:f.sessionId,variantId:f.variantId,url:f.url,label:f.label,source:f.source,isFallback:p},`right-${f.sessionId}:${f.variantId}:${f.url}`)]}),S.jsx("div",{className:"variant-preview-atmosphere","aria-hidden":"true"}),S.jsx(gK,{}),S.jsx(mK,{})]})})}const mR=({message:t,isLoading:e=!0})=>S.jsxs("div",{className:"flex items-center gap-2 text-sm text-content",children:[e?S.jsx(r0,{className:"h-4 w-4 shrink-0 animate-spin text-primary",weight:"bold"}):null,S.jsx("span",{className:"whitespace-pre-wrap font-sans",children:t})]});function ji(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function gR(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}/*!
114
+ ${s}`:s},eG=({rows:t,activeVariantId:e,activePastKey:n,isOriginalSelected:r,busy:s,editingKey:i,onSelectActive:a,onSelectPast:u,onSelectOriginal:c,onActivePointerDown:f,onPastPointerDown:h,onHover:p,onRemove:v,onRemovePast:y,onStartRename:x,onCommitRename:_,onCancelRename:b,onCopyVariantContext:E,activeSessionId:k,projectPath:P})=>{const T=g.useRef(null),{activeIndex:A,itemRects:O,sessionRef:N,handlers:R,registerItem:M}=HT(T),L=(s==null?void 0:s.kind)==="switch",D=A!==null?O[A]:null;return S.jsxs("div",{ref:T,className:"relative",onMouseEnter:R.onMouseEnter,onMouseMove:R.onMouseMove,onMouseLeave:R.onMouseLeave,children:[S.jsx(Gi,{children:D&&S.jsx(sl.div,{className:"bg-hover pointer-events-none absolute z-0 rounded-md",initial:{opacity:0,top:D.top,left:D.left,width:D.width,height:D.height},animate:{opacity:1,top:D.top,left:D.left,width:D.width,height:D.height},exit:{opacity:0,transition:{duration:.06}},transition:{...Vd.fast,opacity:{duration:.08}}},N.current)}),S.jsx("ul",{className:"relative",children:t.map((V,K)=>{const Y=ZW(V);let G=!1;return V.kind==="active"?G=V.variant.workItemId===e:V.kind==="past"?G=`${V.entry.sessionId}:${V.entry.variantId}`===n:G=r,S.jsx(tG,{rowKey:Y,row:V,index:K,isSelected:G,isEditing:i===Y,isSwitchInFlight:L,busy:s,registerItem:M,onSelectActive:a,onSelectPast:u,onSelectOriginal:c,onActivePointerDown:f,onPastPointerDown:h,onHover:p,onRemove:v,onRemovePast:y,onStartRename:x,onCommitRename:_,onCancelRename:b,onCopyVariantContext:E,activeSessionId:k,projectPath:P},Y)})})]})},tG=({rowKey:t,row:e,index:n,isSelected:r,isEditing:s,isSwitchInFlight:i,busy:a,registerItem:u,onSelectActive:c,onSelectPast:f,onSelectOriginal:h,onActivePointerDown:p,onPastPointerDown:v,onHover:y,onRemove:x,onRemovePast:_,onStartRename:b,onCommitRename:E,onCancelRename:k,onCopyVariantContext:P,activeSessionId:T,projectPath:A})=>{var Ce,ae;const O=g.useRef(null);hU(u,n,O);const N=e.kind==="active",R=e.kind==="original",M=e.kind==="active"?e.variant:null,L=e.kind==="past"?e.entry:null,D=N?M.status==="succeeded":!0,V=N?$a(M):!0,K=N?oR(M):!1,Y=N&&(M.status==="pending"||M.status==="running"),G=N?D&&(V||K)||Y:!0,B=N&&M.status==="failed",Q=N&&M.status==="cancelled",$=N&&(!G||i),te=N&&(a==null?void 0:a.kind)==="remove"&&a.variantId===M.workItemId,H=N&&(((Ce=M.refinement)==null?void 0:Ce.status)==="pending"||((ae=M.refinement)==null?void 0:ae.status)==="running");let j=gx;N?j=M.label||`Direction ${n+1}`:L&&(j=L.label.trim()||"Untitled direction");let Z;N?Z=M.runLabel:L&&(Z=L.runLabel);let ee=vx;N?ee=M.description:L&&(ee=L.brief);const ie=ee?QW(ee):null,le=XW(e,T),ue=le?"Copy variant reference":"Copy description";return s?S.jsx("li",{ref:O,"data-proximity-index":n,className:"group relative z-10",children:S.jsx("div",{className:"bg-main-input flex w-full items-start gap-2 rounded-md px-3 py-2",children:S.jsxs("span",{className:"min-w-0 flex-1",children:[S.jsx(nG,{initial:j,onCommit:se=>E(e,se),onCancel:k}),ie&&S.jsx("span",{className:"text-content-muted mt-1 line-clamp-2 block text-xs leading-snug",children:ie})]})})}):S.jsxs("li",{ref:O,"data-proximity-index":n,className:"group relative z-10",children:[S.jsx("div",{role:"button",tabIndex:G?0:-1,"data-variant-id":N?M.workItemId:void 0,"data-variant-key":t,onClick:()=>{if($)return;const se=window.getSelection();se&&!se.isCollapsed||(e.kind==="active"?c(e.variant):e.kind==="past"?f(e.entry):h())},onKeyDown:se=>{$||(se.key==="Enter"||se.key===" ")&&(se.preventDefault(),se.stopPropagation(),e.kind==="active"?c(e.variant):e.kind==="past"?f(e.entry):h())},onPointerDown:se=>{$||(e.kind==="active"?D&&p(e.variant.workItemId,se):e.kind==="past"&&v(e.entry,se))},"aria-pressed":G?r:void 0,"aria-disabled":N?!G:void 0,"aria-busy":Y||H,onMouseEnter:N?()=>y(M.workItemId):void 0,onMouseLeave:N?()=>y(null):void 0,className:ar("focus-visible:ring-content-muted/40 flex w-full items-start gap-2 rounded-md px-3 py-2 text-left transition-colors focus:outline-none focus-visible:ring-1",r&&"bg-main-input ring-content-muted/40 ring-1 ring-inset",D&&V&&"cursor-grab active:cursor-grabbing",(Y||K)&&"cursor-pointer",!D&&!Y&&!K&&"cursor-not-allowed opacity-60",$&&"cursor-not-allowed opacity-50"),style:D?{touchAction:"none"}:void 0,children:S.jsxs("span",{className:"min-w-0 flex-1",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[(Y||H)&&S.jsx(tx,{className:"text-content-muted shrink-0 text-sm","data-testid":H&&!Y?"variant-refining":void 0}),S.jsx(Fo,{label:"Double-click to rename",disabled:R,children:S.jsx("span",{onDoubleClick:se=>{se.stopPropagation(),R||b(t)},className:ar("min-w-0 flex-1 truncate text-sm font-medium select-text",R?"cursor-default":"cursor-text",D||r?"text-content":"text-content-muted"),children:j})}),B&&S.jsx(YC,{label:"Failed"}),Q&&S.jsx(YC,{label:"Cancelled"}),Z&&S.jsx("span",{className:"ml-auto max-w-[8rem] shrink-0 truncate rounded px-1.5 py-0.5 text-[10px] font-medium opacity-100 transition-opacity duration-150 group-hover:opacity-0 group-has-[:focus-visible]:opacity-0",style:$T(Z),children:Z})]}),ie&&S.jsx("span",{className:"text-content-muted mt-0.5 line-clamp-2 block cursor-text text-xs leading-snug select-text",children:ie})]})}),S.jsxs("div",{className:ar("absolute top-1.5 right-2 flex items-center gap-0.5 transition-opacity duration-150","pointer-events-none opacity-0 group-hover:pointer-events-auto group-hover:opacity-100 has-[:focus-visible]:pointer-events-auto has-[:focus-visible]:opacity-100"),children:[ee||le?S.jsx(Fo,{label:ue,children:S.jsx("button",{type:"button","aria-label":ue,onClick:se=>{se.stopPropagation(),P(JW({label:j,description:ee,reference:le,projectPath:A}))},onPointerDown:se=>se.stopPropagation(),className:"text-content-muted hover:bg-main-hover hover:text-content focus-visible:ring-content-muted/40 flex h-6 w-6 items-center justify-center rounded focus:outline-none focus-visible:ring-1",children:S.jsx(Fd,{size:13,weight:"bold"})})}):null,!R&&S.jsx(Fo,{label:"Rename",children:S.jsx("button",{type:"button","aria-label":"Rename direction",onClick:se=>{se.stopPropagation(),b(t)},onPointerDown:se=>se.stopPropagation(),className:"text-content-muted hover:bg-main-hover hover:text-content focus-visible:ring-content-muted/40 flex h-6 w-6 items-center justify-center rounded focus:outline-none focus-visible:ring-1",children:S.jsx(vz,{size:13,weight:"bold"})})}),!R&&S.jsx(Fo,{label:"Remove",children:S.jsx("button",{type:"button","data-variant-remove-id":e.kind==="active"?e.variant.workItemId:void 0,"aria-label":"Remove direction",disabled:te,onClick:se=>{se.stopPropagation(),e.kind==="active"?x(e.variant):_(e.entry)},onPointerDown:se=>se.stopPropagation(),className:"text-content-muted hover:bg-main-hover hover:text-content focus-visible:ring-content-muted/40 ml-1 flex h-6 w-6 items-center justify-center rounded focus:outline-none focus-visible:ring-1 disabled:cursor-not-allowed disabled:opacity-50",children:S.jsx(xz,{size:13,weight:"bold"})})})]})]})},nG=({initial:t,onCommit:e,onCancel:n})=>{const[r,s]=g.useState(t),i=g.useRef(!1),a=g.useCallback(c=>{c&&(c.focus(),c.select())},[]),u=c=>{i.current||(i.current=!0,c?e(r):n())};return S.jsx("input",{ref:a,type:"text",value:r,maxLength:120,"aria-label":"Rename direction",onChange:c=>s(c.target.value),onKeyDown:c=>{c.stopPropagation(),c.key==="Enter"?(c.preventDefault(),u(!0)):c.key==="Escape"&&(c.preventDefault(),u(!1))},onBlur:()=>u(!0),onClick:c=>c.stopPropagation(),onPointerDown:c=>c.stopPropagation(),className:"border-content-muted/40 bg-main text-content focus:ring-content-muted/50 w-full rounded border px-1.5 py-0.5 text-sm font-medium focus:ring-1 focus:outline-none"})},YC=({label:t})=>S.jsx("span",{className:"bg-main-input text-content-muted shrink-0 rounded-full px-1.5 py-0.5 text-[10px] font-medium tracking-wide uppercase",children:t}),rG=({entry:t,deploying:e,deployedUrl:n,onDeploy:r,isDeployDisabled:s=!1})=>{const a=e?"Deploying…":n?"Copy link":"Share";return S.jsxs("div",{className:"border-main-border bg-main-light flex shrink-0 items-center justify-between gap-3 border-t px-3 pt-2 pb-4",children:[S.jsxs("div",{className:"min-w-0",children:[S.jsx("div",{className:"text-content truncate text-sm font-medium",children:t.label.trim()||"Untitled direction"}),n?S.jsx("div",{className:"text-content-muted text-[11px]",children:"Deployed — share link ready"}):null]}),S.jsxs("button",{type:"button",onClick:()=>r(t),disabled:e||s,title:n?`Copy share link (${n})`:"Deploy this direction and get a public link to share",className:"border-main-border text-content hover:bg-main-input flex shrink-0 items-center gap-1 rounded-md border px-2 py-1.5 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:[n&&!e?S.jsx(Fd,{size:12,weight:"bold"}):null,a]})]})},sG={agent_browser:"Browser extracted",cache:"Cached",static:"Bundled catalog",manual:"Manual"},iG={design_context:"DESIGN.md",source_context:"Source",qa_report:"QA",asset:"Asset"},oG=({artifacts:t})=>{const[e,n]=g.useState(null),r=g.useMemo(()=>e&&t.some(i=>i.id===e)?e:null,[t,e]);if(t.length===0)return null;const s=i=>{n(a=>a===i?null:i)};return S.jsxs("section",{"aria-label":"Directions session artifacts",className:"mt-4",children:[S.jsx("div",{className:"flex shrink-0 items-center px-3 py-2",children:S.jsx("span",{className:"text-content truncate text-sm font-medium",children:"Artifacts"})}),S.jsx("ul",{className:"mt-2 space-y-1 px-1",children:t.map(i=>S.jsx(aG,{artifact:i,isExpanded:i.id===r,onToggle:()=>s(i.id)},i.id))})]})},aG=({artifact:t,isExpanded:e,onToggle:n})=>{const r=iG[t.kind],s=t.source?sG[t.source]:null,i=[t.kind==="design_context"?null:s,t.summary].filter(Boolean).join(" · "),a=t.kind==="design_context"&&!!t.viewUrl,u=`${e?"Hide":"View"} ${r} artifact${t.label?`: ${t.label}`:""}`;return a?S.jsx("li",{className:"border-main-border rounded-md border",children:S.jsxs("div",{className:"flex w-full items-center justify-between gap-2 px-3 py-2 text-left text-xs",children:[S.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[S.jsx("span",{className:"border-content-muted/30 bg-main-input text-content-muted shrink-0 rounded-full border px-2 py-0.5 text-[9px] font-semibold tracking-wide uppercase",children:r}),S.jsx("span",{className:"text-content truncate text-xs font-medium",children:t.label})]}),i?S.jsx("span",{className:"text-content-muted mt-0.5 truncate text-[11px]",children:i}):null]}),S.jsx("a",{href:t.viewUrl,target:"_blank",rel:"noreferrer","aria-label":`Open ${r} artifact${t.label?`: ${t.label}`:""}`,className:"text-content-muted hover:bg-main-input hover:text-content focus-visible:ring-content-muted/40 shrink-0 rounded p-1 transition-colors focus:outline-none focus-visible:ring-1",children:S.jsx(fz,{className:"h-3.5 w-3.5",weight:"bold"})})]})}):S.jsxs("li",{className:"border-main-border rounded-md border",children:[S.jsxs("button",{type:"button",onClick:n,"aria-expanded":e,"aria-label":u,className:"hover:bg-main-input flex w-full items-center justify-between gap-2 px-3 py-2 text-left text-xs transition-colors",children:[S.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[S.jsx("span",{className:"text-content-muted text-[10px] font-semibold tracking-wide uppercase",children:r}),S.jsx("span",{className:"text-content truncate text-xs font-medium",children:t.label})]}),i?S.jsx("span",{className:"text-content-muted mt-0.5 truncate text-[11px]",children:i}):null]}),S.jsx("span",{className:"text-content-muted shrink-0 text-[11px]",children:e?"Hide":"View"})]}),e?S.jsx("div",{className:"border-main-border bg-main-light border-t px-3 py-2",children:S.jsx(lG,{artifact:t})}):null]})},lG=({artifact:t})=>S.jsxs("div",{className:"text-content-muted space-y-1 text-[11px]",children:[t.summary?S.jsx("p",{children:t.summary}):null,t.path?S.jsxs("p",{children:["Stored at ",t.path]}):null,!t.summary&&!t.path?S.jsx("p",{children:"No inline content available for this artifact."}):null]}),uG=({selectedVariant:t,busy:e,onSend:n,onDeploy:r,onDeployCanvas:s,canDeploy:i,canDeployCanvas:a,canSendToAgent:u,canvasVariantCount:c,canvasDeployedUrl:f,deployedUrl:h})=>{var N,R,M,L;const p=t?((R=(N=t.actions)==null?void 0:N.commit)==null?void 0:R.enabled)??t.status==="succeeded":!1,v=p&&e===null,y=(e==null?void 0:e.kind)==="commit"&&e.variantId===(t==null?void 0:t.workItemId),x=(e==null?void 0:e.kind)==="deploy"&&e.variantId===(t==null?void 0:t.workItemId),_=(e==null?void 0:e.kind)==="deploy-canvas",b=!i||!p||e!==null,E=a&&c>0,P=x?"Deploying…":h?"Copy link":"Share",A=_?"Sharing…":f?"Copy canvas link":"Share canvas",O=y?"Applying…":"Apply to project";return S.jsxs("div",{className:"border-main-border bg-main-light flex shrink-0 items-center justify-between gap-3 border-t px-3 pt-2 pb-4",children:[S.jsx("div",{className:"min-w-0",children:t?S.jsxs(S.Fragment,{children:[S.jsx("div",{className:"text-content truncate text-sm font-medium",children:t.label.trim()||"Untitled direction"}),h?S.jsx("div",{className:"text-content-muted text-[11px]",children:"Deployed — share link ready"}):null]}):null}),S.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[S.jsx(U5,{primaryLabel:P,primaryIcon:h&&!x?Fd:void 0,primaryAction:()=>{t&&r(t)},isDisabled:b,isDropdownDisabled:e!==null,isLoading:x,loadingLabel:"Deploying…",dropdownAriaLabel:"More share actions",dropdownItems:E?[{label:A,icon:f&&!_?Fd:void 0,onClick:s,isDisabled:e!==null}]:[]}),u?S.jsx("button",{type:"button",onClick:()=>{t&&n(t)},disabled:!v,title:(L=(M=t==null?void 0:t.actions)==null?void 0:M.commit)==null?void 0:L.reason,className:"bg-secondary text-secondary-foreground hover:bg-accent rounded-md px-2 py-1.5 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:O}):null]})]})},aR=()=>S.jsx("div",{"data-testid":"direction-skeleton-row","aria-hidden":"true",className:"flex w-full items-start rounded-md px-3 py-2",children:S.jsxs("span",{className:"min-w-0 flex-1",children:[S.jsxs("span",{className:"flex items-center gap-2",children:[S.jsx(tx,{className:"text-content-muted shrink-0 text-sm"}),S.jsx("span",{className:"bg-muted-foreground/15 h-3.5 w-28 animate-pulse rounded"})]}),S.jsx("span",{className:"mt-1.5 flex",children:S.jsx("span",{className:"bg-muted-foreground/10 h-2.5 w-full max-w-[14rem] animate-pulse rounded"})})]})}),cG=({groups:t})=>S.jsx("div",{className:"space-y-0.5",children:t.flatMap(e=>Array.from({length:Math.max(1,e.count)}).map((n,r)=>S.jsx(aR,{},`${e.requestId}-${r}`)))}),dG=()=>S.jsx("div",{"data-testid":"direction-boot-skeletons",className:"space-y-0.5",children:Array.from({length:3}).map((t,e)=>S.jsx(aR,{},e))}),fG=()=>S.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-8 text-center",children:[S.jsx("div",{className:"text-content text-sm",children:"No directions yet"}),S.jsx("div",{className:"text-content-muted text-xs",children:"They’ll appear here as they generate."})]}),QC="Try different ways to create a dropdown that feels fluid and dynamic",hG=({isMCPSession:t=!1,mcpEditor:e=null})=>{const[n,r]=g.useState(!1),s=VU(e),i=t?s:"your coding agent",a=()=>{navigator.clipboard.writeText(QC).then(()=>{r(!0),setTimeout(()=>r(!1),2e3)})};return S.jsxs("div",{className:"flex flex-col items-start gap-3 px-2 py-2",children:[S.jsx("p",{className:"text-content text-sm font-medium",children:"Create your first direction"}),S.jsxs("p",{className:"text-content-muted text-xs",children:["Use ",i," to generate directions."]}),S.jsxs("div",{className:"w-full",children:[S.jsx("p",{className:"text-content-muted mb-2 text-xs",children:"Here's a sample prompt to use:"}),S.jsxs("div",{className:"border-main-border bg-main-input relative rounded-md border px-3 py-2.5 pr-8",children:[S.jsxs("p",{className:"text-content-muted text-xs leading-snug",children:["“",QC,"”"]}),S.jsx("button",{type:"button",onClick:a,className:"text-content-muted hover:bg-main-border hover:text-content absolute top-2 right-2 rounded p-0.5 transition-colors",title:"Copy to clipboard",children:n?S.jsx(fT,{className:"h-3.5 w-3.5 text-emerald-500",weight:"bold"}):S.jsx(Fd,{className:"h-3.5 w-3.5",weight:"bold"})})]})]})]})},pG=({onClose:t})=>{const e=Je(qT);return t?S.jsxs("div",{className:"z-10 flex flex-shrink-0 items-center justify-between gap-2 border-b border-main-border bg-main-light px-2.5 py-2.5",children:[e?S.jsx("span",{className:"text-content min-w-0 truncate text-sm font-medium",title:e,children:e}):S.jsx("span",{}),S.jsx(Fo,{label:"Close panel",side:"bottom",children:S.jsx("button",{onClick:t,className:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded p-1 text-content-subtle transition-colors hover:bg-main-input hover:text-content",children:S.jsx(yz,{className:"h-4 w-4",weight:"bold"})})})]}):null},mG='[data-menu-item]:not([disabled]):not([aria-disabled="true"])',gG=({itemSelector:t=mG,loop:e=!1}={})=>{const n=g.useRef(null),r=g.useRef(null),s=g.useCallback(a=>{var u;n.current=a,a?r.current=jU():((u=r.current)==null||u.call(r),r.current=null)},[]),i=g.useCallback(a=>{var x;const{key:u}=a;if(u!=="ArrowDown"&&u!=="ArrowUp"&&u!=="Home"&&u!=="End")return;const c=n.current;if(!c)return;const f=Array.from(c.querySelectorAll(t));if(f.length===0)return;a.preventDefault(),a.stopPropagation();const h=f.indexOf(document.activeElement),p=f.length-1,v=_=>{if(h===-1)return _===1?0:p;const b=h+_;return e?(b+f.length)%f.length:Math.min(Math.max(b,0),p)};let y;u==="Home"?y=0:u==="End"?y=p:u==="ArrowDown"?y=v(1):y=v(-1),(x=f[y])==null||x.focus()},[t,e]);return{containerRef:s,onKeyDown:i}},XC="/assets/arena-Db0j1set.png",vG=ds("useIntegrations"),JC=["integrations"],yG="rivet:connect-result",_G=t=>typeof t=="object"&&t!==null&&t.type===yG,xG=tt(null),wG=()=>{const t=f8(),[e,n]=nP(xG),r=U1({queryKey:JC,queryFn:async()=>{const u=await fetch("/api/integrations");if(!u.ok)throw new Error(`Failed to load integrations (${u.status})`);return(await u.json()).integrations??[]},staleTime:1e4}),s=g.useCallback(()=>t.invalidateQueries({queryKey:JC}),[t]),i=g.useCallback(async u=>{const c=window.open("","_blank","width=560,height=720");if(!c)throw new Error("Popup blocked. Allow popups to connect.");n(u);try{const f=await fetch(`/api/integrations/${u}/connect`,{method:"POST"}),h=await f.json().catch(()=>({}));if(!f.ok||!h.authUrl)throw c.close(),new Error(h.error||`Could not connect ${u}`);c.location.href=h.authUrl,await new Promise(p=>{const v=()=>{window.removeEventListener("message",y),clearInterval(x),s(),p()},y=_=>{_G(_.data)&&_.data.provider===u&&(_.data.status==="error"&&vG.warn(`Connect failed for ${u}:`,_.data.message),v())};window.addEventListener("message",y);const x=setInterval(()=>{c.closed&&v()},500)})}finally{n(null)}},[s,n]),a=g.useCallback(async u=>{n(u);try{const c=await fetch(`/api/integrations/${u}`,{method:"DELETE"});if(!c.ok){const f=await c.json().catch(()=>({}));throw new Error(f.error||`Could not disconnect ${u}`)}await s()}finally{n(null)}},[s,n]);return{integrations:r.data??[],isLoading:r.isPending,error:r.error instanceof Error?r.error.message:null,pendingProvider:e,connect:i,disconnect:a,refetch:s}},fu=({onClick:t,title:e,shortcut:n,children:r,disabled:s=!1,className:i="",type:a="button","data-cy":u})=>{const c=S.jsx("button",{onClick:t,disabled:s,className:i,type:a,"data-cy":u,children:r});return e?S.jsx(mx,{content:S.jsxs("div",{className:"flex flex-row items-center gap-2",children:[S.jsx("span",{children:e}),n?S.jsx("span",{className:"rounded bg-white/15 px-1.5 py-0.5 text-[11px]",children:n}):null]}),children:c}):c},ek=ds("ConnectorsModal"),bG=()=>S.jsx("svg",{viewBox:"0 0 24 24",className:"h-6 w-6","aria-hidden":"true",children:S.jsx("path",{fill:"currentColor",d:"M12 0C5.373 0 0 5.372 0 12c0 5.084 3.163 9.426 7.627 11.174-.105-.949-.2-2.405.042-3.441.218-.937 1.407-5.965 1.407-5.965s-.359-.719-.359-1.781c0-1.669.967-2.915 2.171-2.915 1.024 0 1.518.769 1.518 1.69 0 1.029-.655 2.568-.994 3.995-.283 1.194.599 2.169 1.777 2.169 2.132 0 3.772-2.249 3.772-5.495 0-2.873-2.064-4.882-5.012-4.882-3.414 0-5.418 2.561-5.418 5.207 0 1.031.397 2.137.893 2.739.098.119.112.223.083.344-.091.379-.293 1.194-.333 1.361-.052.22-.174.266-.401.16-1.499-.698-2.436-2.889-2.436-4.649 0-3.785 2.75-7.262 7.929-7.262 4.163 0 7.398 2.967 7.398 6.931 0 4.136-2.607 7.464-6.227 7.464-1.216 0-2.36-.631-2.75-1.378l-.748 2.853c-.271 1.043-1.002 2.35-1.492 3.146A12.004 12.004 0 0 0 12 24c6.627 0 12-5.373 12-12C24 5.372 18.627 0 12 0z"})}),SG=()=>S.jsx("span",{"aria-hidden":"true",className:"h-6 w-6 bg-[#b1b1b1]",style:{WebkitMaskImage:`url(${XC})`,maskImage:`url(${XC})`,WebkitMaskSize:"contain",maskSize:"contain",WebkitMaskRepeat:"no-repeat",maskRepeat:"no-repeat",WebkitMaskPosition:"center",maskPosition:"center"}}),EG=[{provider:"pinterest",name:"Pinterest",description:"Pull boards and pins in as visual references.",tileClassName:"bg-[#e60023] text-white",icon:S.jsx(bG,{})},{provider:"arena",name:"Are.na",description:"Connect channels of collected blocks and links.",tileClassName:"bg-[#18181b] text-content",icon:S.jsx(SG,{})}],CG=({meta:t,integration:e,isPending:n,isHighlighted:r,onConnect:s,onDisconnect:i})=>{const a=(e==null?void 0:e.status)==="connected",u=e!=null&&e.externalUsername?`@${e.externalUsername}`:null;return S.jsxs("article",{className:`flex flex-col rounded-xl bg-main-light p-[18px] ${r?"ring-2 ring-secondary":""}`,children:[S.jsx("span",{className:`grid h-[52px] w-[52px] flex-none place-items-center rounded-xl ${t.tileClassName}`,"aria-hidden":"true",children:t.icon}),S.jsxs("div",{className:"mt-4 flex-1",children:[S.jsxs("h2",{className:"text-content flex items-center gap-1.5 text-[15px] font-semibold",children:[t.name,a?S.jsx(fT,{className:"h-3.5 w-3.5",weight:"bold","aria-hidden":"true"}):null]}),S.jsx("p",{className:"text-content-subtle mt-1 text-[13px] leading-relaxed",children:t.description}),a&&u?S.jsx("p",{className:"text-content-muted mt-2.5 text-xs font-medium",children:u}):null]}),a?S.jsx("button",{type:"button",onClick:i,disabled:n,className:"active-push mt-[18px] inline-flex min-h-[38px] w-full items-center justify-center rounded-lg bg-main-input px-3.5 text-[13px] font-semibold text-content-muted transition-colors hover:bg-red-500/10 hover:text-red-300 disabled:cursor-not-allowed disabled:opacity-50",children:n?"Disconnecting…":"Disconnect"}):S.jsx("button",{type:"button",onClick:s,disabled:n,className:"active-push mt-[18px] inline-flex min-h-[38px] w-full items-center justify-center rounded-lg bg-secondary px-3.5 text-[13px] font-semibold text-secondary-foreground transition-colors hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50",children:n?"Connecting…":"Connect"})]})},x_=({isOpen:t,onClose:e,context:n="menu",highlightProvider:r=null})=>{const{integrations:s,isLoading:i,error:a,pendingProvider:u,connect:c,disconnect:f}=wG(),[h,p]=g.useState(null),v=b=>s.find(E=>E.provider===b),y=g.useCallback(b=>{c(b).catch(E=>{const k=E instanceof Error?E.message:"Could not connect.";ek.warn(`Connect error for ${b}:`,k),ht.error(k)})},[c]),x=g.useCallback(b=>{f(b).catch(E=>{const k=E instanceof Error?E.message:"Could not disconnect.";ek.warn(`Disconnect error for ${b}:`,k),ht.error(k)})},[f]),_=n==="onboarding";return S.jsx(Qm,{open:t,onOpenChange:b=>!b&&e(),children:S.jsxs(Xm,{children:[S.jsx(Jm,{className:"fixed inset-0 z-max bg-black/40"}),S.jsx(e0,{ref:p,className:"fixed left-1/2 top-1/2 z-max w-[560px] -translate-x-1/2 -translate-y-1/2 rounded-lg border border-main-border bg-main font-main shadow-2xl outline-none",children:S.jsxs(nR,{value:h,children:[S.jsxs("div",{className:"flex items-center justify-between rounded-t-lg border-b border-main-border bg-main-light px-4 py-2",children:[S.jsx(t0,{className:"text-base font-medium text-content",children:"Connect design references"}),S.jsx(fu,{onClick:e,title:"Close",className:"rounded p-1 text-content-subtle transition-colors hover:bg-main-hover hover:text-content",children:S.jsx(ET,{className:"h-4 w-4",weight:"bold"})})]}),S.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[S.jsx(n0,{className:"text-sm text-content-subtle",children:"Connect your design references to use them with Rivet’s MCP."}),a?S.jsx("p",{className:"rounded-lg bg-red-500/10 px-4 py-3 text-[13px] font-medium text-red-300",children:a}):null,S.jsx("div",{className:"grid grid-cols-2 gap-4",children:EG.map(b=>S.jsx(CG,{meta:b,integration:v(b.provider),isPending:i||u===b.provider,isHighlighted:r===b.provider,onConnect:()=>y(b.provider),onDisconnect:()=>x(b.provider)},b.provider))}),_?S.jsxs("div",{className:"flex items-center justify-between gap-4",children:[S.jsx("p",{className:"text-xs text-content-subtle",children:"You can always do this later from the account menu."}),S.jsx("button",{type:"button",onClick:e,className:"active-push flex-none rounded-lg bg-secondary px-3.5 py-2 text-[13px] font-medium text-secondary-foreground transition-colors hover:bg-accent",children:"Skip for now"})]}):null]})]})})]})})},tk=({className:t=""})=>S.jsx("span",{"aria-hidden":"true",className:`rivet-skeleton block rounded ${t}`.trim()}),kG=ds("SupportTicketModal"),nk=5e3,f1="feedback",PG=t=>{var r;if(!t)return null;const e=(r=t.formErrors)==null?void 0:r[0];if(e)return e;const n=t.fieldErrors??{};for(const s of Object.values(n)){const i=s==null?void 0:s[0];if(i)return i}return null},TG=async t=>{let e;try{e=await t.json()}catch{e=void 0}if(t.status===400){if(typeof(e==null?void 0:e.details)=="string"&&e.details.trim())return e.details;if(typeof(e==null?void 0:e.details)=="object"&&e.details!==null){const n=PG(e.details);if(n)return n}return"Please check your feedback and try again."}return t.status>=500?typeof(e==null?void 0:e.details)=="string"&&e.details.trim()?e.details:"Could not send feedback right now. Please try again later.":typeof(e==null?void 0:e.error)=="string"&&e.error.trim()?e.error:`HTTP ${t.status}`},RG=({isOpen:t,onClose:e,contactEmail:n})=>{const r=nD(),[s,i]=g.useState(""),[a,u]=g.useState(!1),[c,f]=g.useState(null),h=g.useCallback(()=>{i("")},[]),p=g.useCallback(()=>{a||(h(),e())},[a,e,h]),v=g.useCallback(async()=>{const b=s.trim();if(!(!b||a)){u(!0);try{const E=typeof(r==null?void 0:r.get_session_id)=="function"?r.get_session_id():void 0,k=typeof(r==null?void 0:r.get_distinct_id)=="function"?r.get_distinct_id():void 0,P=n==null?void 0:n.trim(),T=await fetch("/api/support/tickets",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:f1,message:b,contactEmail:P||void 0,metadata:{posthogSessionId:E??void 0,posthogDistinctId:k??void 0,appVersion:"0.14.1",appEnvironment:"production",pageUrl:window.location.href,userAgent:navigator.userAgent,submittedAt:new Date().toISOString()}})});if(!T.ok){const A=await TG(T);throw new Error(A)}r==null||r.capture("support_ticket_submitted",{ticket_type:f1,has_posthog_session_id:!!E}),ht.success("Feedback sent",{description:"Thanks for sharing this."}),h(),e()}catch(E){const k=E instanceof Error?E.message:"Failed to send message";r==null||r.capture("support_ticket_submit_failed",{ticket_type:f1,error:k}),kG.error("Failed to submit support ticket:",k),ht.error("Could not send feedback",{description:k})}finally{u(!1)}}},[n,a,s,e,r,h]),y=g.useCallback(b=>{b.key==="Enter"&&(b.metaKey||b.ctrlKey)&&(b.preventDefault(),v())},[v]),x=nk-s.length,_=a||s.trim().length===0;return S.jsx(Qm,{open:t,onOpenChange:b=>!b&&p(),children:S.jsxs(Xm,{children:[S.jsx(Jm,{className:"fixed inset-0 z-max bg-black/40"}),S.jsx(e0,{ref:f,className:"fixed left-1/2 top-1/2 z-max w-[440px] -translate-x-1/2 -translate-y-1/2 rounded-lg border border-main-border bg-main font-main shadow-2xl outline-none",children:S.jsxs(nR,{value:c,children:[S.jsxs("div",{className:"flex items-center justify-between rounded-t-lg border-b border-main-border bg-main-light px-4 py-2",children:[S.jsx(t0,{className:"text-base font-medium text-content",children:"Send feedback"}),S.jsx(fu,{onClick:p,disabled:a,title:"Close",className:"rounded p-1 text-content-subtle transition-colors hover:bg-main-hover hover:text-content disabled:cursor-not-allowed disabled:opacity-50",children:S.jsx(ET,{className:"h-4 w-4",weight:"bold"})})]}),S.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[S.jsx(n0,{className:"text-sm text-content-subtle",children:"Tell us what happened or what we can improve."}),S.jsxs("div",{className:"rounded-lg bg-main-input outline outline-1 outline-transparent transition-[outline-color] focus-within:outline-white/20",children:[S.jsx("textarea",{id:"support-ticket-message","aria-label":"Your feedback",value:s,onChange:b=>i(b.target.value),onKeyDown:y,maxLength:nk,rows:6,disabled:a,placeholder:"What happened?",className:"max-h-64 w-full resize-none overflow-y-auto bg-transparent pb-1 pl-3 pr-3 pt-3 text-sm text-content placeholder-content-subtle focus:outline-none disabled:opacity-50"}),S.jsxs("div",{className:"flex items-center justify-between px-3 pb-3 pt-1",children:[S.jsx("span",{className:"text-xs text-content-subtle",children:"Context details are included automatically."}),S.jsxs("div",{className:"flex items-center gap-2",children:[x<=500&&S.jsx("span",{className:"text-xs text-content-subtle",children:x}),S.jsx(fu,{onClick:v,disabled:_,title:"Send feedback",shortcut:"⌘↵",className:"flex items-center justify-center rounded bg-primary p-1 text-content transition-colors hover:bg-primary-hover disabled:cursor-not-allowed disabled:opacity-80",children:a?S.jsx(r0,{className:"h-5 w-5 animate-spin",weight:"bold"}):S.jsx(hz,{className:"h-5 w-5",weight:"bold"})})]})]})]})]})]})})]})})},AG=ds("ProfileAvatar"),lR=(t,e)=>{const n=(t??"").trim();if(n)return n.split(/\s+/).filter(Boolean)[0]??"";const s=((e??"").split("@")[0]??"").split(/[._\-+]/).filter(Boolean)[0]??"";return s?s[0].toUpperCase()+s.slice(1):""},IG=(t,e)=>lR(t,e).charAt(0).toUpperCase(),MG=({className:t="",side:e="bottom",align:n="end"})=>{const{name:r,email:s}=Je(YT),i=Je(n5),a=Je(t5),[u,c]=g.useState(!1),[f,h]=g.useState(!1),[p,v]=g.useState(!1),[y,x]=g.useState(!1),{containerRef:_,onKeyDown:b}=gG(),E=Je(pf),k=IG(r,s);if(!k)return E?S.jsxs("span",{"data-testid":"profile-avatar-skeleton","aria-hidden":"true",className:`flex shrink-0 items-center gap-2 ${t}`.trim(),children:[S.jsx(tk,{className:"h-7 w-7 rounded-full"}),S.jsx(tk,{className:"h-3 w-16"})]}):null;const P=lR(r,s),T=(r==null?void 0:r.trim())||null,A=(s==null?void 0:s.trim())||null,O=async()=>{x(!0);try{const N=await fetch("/api/auth/logout",{method:"POST",credentials:"same-origin"});if(!N.ok)throw new Error(`Logout failed: ${N.status}`)}catch(N){AG.warn("Logout request failed",N),ht.error("Could not log out. Please try again."),x(!1);return}window.location.reload()};return S.jsxs(S.Fragment,{children:[S.jsxs(V5,{open:u,onOpenChange:c,children:[S.jsx($5,{asChild:!0,children:S.jsxs("button",{type:"button","aria-label":"Account",className:`flex shrink-0 select-none items-center gap-2 text-content-muted transition-colors hover:text-content ${t}`,children:[S.jsx("span",{className:"flex h-7 w-7 items-center justify-center rounded-full border border-main-border bg-main-input text-[11px] font-semibold leading-none",children:k}),P?S.jsx("span",{className:"max-w-[8rem] truncate text-xs font-medium",children:P}):null]})}),S.jsx(H5,{children:S.jsxs(z5,{ref:_,onKeyDown:b,role:"menu",className:"z-[60] min-w-[180px] rounded-lg bg-surface-2 p-1 shadow-lg",side:e,sideOffset:6,align:n,children:[T||A?S.jsxs("div",{className:"border-b border-main-border px-3 py-2",children:[T?S.jsx("div",{className:"truncate text-xs font-medium text-content",children:T}):null,A?S.jsx("div",{className:"truncate text-[11px] text-content-muted",children:A}):null]}):null,S.jsxs("button",{type:"button",role:"menuitem","data-menu-item":!0,onClick:()=>{c(!1),h(!0)},disabled:!i||a,className:"mt-1 flex w-full items-center gap-2 rounded-md px-3 py-1.5 text-xs text-content transition-colors hover:bg-hover focus:bg-hover focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",children:[S.jsx(wT,{className:"h-3.5 w-3.5",weight:"bold"}),"Connect design references"]}),S.jsxs("button",{type:"button",role:"menuitem","data-menu-item":!0,onClick:()=>{c(!1),v(!0)},className:"mt-1 flex w-full items-center gap-2 rounded-md px-3 py-1.5 text-xs text-content transition-colors hover:bg-hover focus:bg-hover focus:outline-none",children:[S.jsx(mz,{className:"h-3.5 w-3.5",weight:"bold"}),"Share feedback"]}),S.jsxs("button",{type:"button",role:"menuitem","data-menu-item":!0,onClick:O,disabled:y,className:"mt-1 flex w-full items-center gap-2 rounded-md px-3 py-1.5 text-xs text-content transition-colors hover:bg-hover focus:bg-hover focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",children:[S.jsx(_z,{className:"h-3.5 w-3.5",weight:"bold"}),y?"Logging out…":"Log out"]})]})})]}),S.jsx(x_,{isOpen:f,onClose:()=>h(!1)}),S.jsx(RG,{isOpen:p,onClose:()=>v(!1),contactEmail:s??void 0})]})},NG=({onClose:t})=>S.jsxs("div",{className:"bg-main font-main scrollbar-hide relative flex h-full w-full cursor-auto flex-col overflow-hidden shadow-2xl","data-cy":"element-inspector",children:[S.jsx(pG,{onClose:t}),S.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:S.jsx(GW,{})}),S.jsx("div",{className:"border-main-border bg-main-light flex flex-shrink-0 items-center border-t px-2.5 py-1.5",children:S.jsx(MG,{side:"top",align:"start"})})]}),OG=ds("useServerConfig"),LG=()=>{const[t,e]=g.useState(null),[n,r]=g.useState(!0),[s,i]=g.useState(null),a=g.useCallback(async()=>{var u;try{r(!0),i(null);const c=await fetch("/api/health");if(!c.ok)throw new Error(`Failed to fetch config: ${c.status}`);const f=await c.json();if(!f.framework)throw new Error("Server did not return framework information");const h={userPort:((u=f.ports)==null?void 0:u.userDevServer)||3e3,framework:f.framework};return e(h),h}catch(c){const f=c instanceof Error?c.message:"Failed to fetch server config";throw i(f),OG.warn("Error fetching server config:",c),c}finally{r(!1)}},[]);return{config:t,fetchConfig:a,isLoading:n,error:s}},DG="#1C1C20",Ai=[118,118,124],rk=.85,jG=3,FG=.15,Jh=36,VG=4.4,$G=.7,HG=3.5,zG=.8,sk=9,UG=11,BG=[1.35,1.12,.95,.85],WG=[0,1.1,2.3,3.1],GG=[0,.35,.16,.13],KG=[.9,.5,.4,.35],Aa=3,h1=[[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.14,y1:.13,x2:.86,y2:.23,level:1},{x1:.14,y1:.28,x2:.3,y2:.87,level:1},{x1:.34,y1:.28,x2:.86,y2:.87,level:1},{x1:.165,y1:.155,x2:.225,y2:.205,level:2},{x1:.7,y1:.155,x2:.755,y2:.205,level:2},{x1:.775,y1:.155,x2:.83,y2:.205,level:2},{x1:.165,y1:.32,x2:.275,y2:.375,level:2},{x1:.165,y1:.415,x2:.275,y2:.47,level:2},{x1:.165,y1:.51,x2:.275,y2:.565,level:2},{x1:.37,y1:.32,x2:.585,y2:.56,level:2},{x1:.615,y1:.32,x2:.83,y2:.56,level:2},{x1:.37,y1:.61,x2:.83,y2:.83,level:2},{hline:!0,x1:.39,x2:.81,y:.685,level:3},{hline:!0,x1:.39,x2:.75,y:.755,level:3}],[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.16,y1:.17,x2:.52,y2:.45,level:1},{x1:.58,y1:.17,x2:.685,y2:.29,level:1},{x1:.715,y1:.17,x2:.84,y2:.29,level:1},{x1:.58,y1:.33,x2:.685,y2:.45,level:1},{x1:.715,y1:.33,x2:.84,y2:.45,level:1},{x1:.16,y1:.55,x2:.84,y2:.85,level:1},{x1:.19,y1:.21,x2:.36,y2:.33,level:2},{hline:!0,x1:.19,x2:.48,y:.37,level:3},{hline:!0,x1:.19,x2:.42,y:.42,level:3},{x1:.19,y1:.6,x2:.49,y2:.8,level:2},{hline:!0,x1:.53,x2:.8,y:.63,level:3},{hline:!0,x1:.53,x2:.76,y:.7,level:3},{hline:!0,x1:.53,x2:.79,y:.77,level:3}],[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.14,y1:.13,x2:.86,y2:.22,level:1},{x1:.14,y1:.28,x2:.36,y2:.87,level:1},{x1:.39,y1:.28,x2:.61,y2:.87,level:1},{x1:.64,y1:.28,x2:.86,y2:.87,level:1},{x1:.165,y1:.15,x2:.225,y2:.2,level:2},{x1:.165,y1:.32,x2:.335,y2:.52,level:2},{x1:.415,y1:.32,x2:.585,y2:.52,level:2},{x1:.665,y1:.32,x2:.835,y2:.52,level:2},{hline:!0,x1:.165,x2:.335,y:.6,level:3},{hline:!0,x1:.165,x2:.3,y:.67,level:3},{hline:!0,x1:.415,x2:.585,y:.6,level:3},{hline:!0,x1:.415,x2:.55,y:.67,level:3},{hline:!0,x1:.665,x2:.835,y:.6,level:3},{hline:!0,x1:.665,x2:.8,y:.67,level:3}],[{x1:.1,y1:.08,x2:.9,y2:.92,level:0},{x1:.3,y1:.22,x2:.7,y2:.74,level:1},{x1:.34,y1:.27,x2:.55,y2:.34,level:2},{hline:!0,x1:.36,x2:.64,y:.42,level:3},{hline:!0,x1:.36,x2:.6,y:.49,level:3},{hline:!0,x1:.36,x2:.62,y:.56,level:3},{x1:.5,y1:.63,x2:.575,y2:.69,level:2},{x1:.595,y1:.63,x2:.66,y2:.69,level:2}]],ep=t=>{let e=t|0;return e=Math.imul(e^e>>>16,73244475),e=Math.imul(e^e>>>16,73244475),e^=e>>>16,(e>>>0)/4294967296},Ep=t=>{const e=Math.min(1,Math.max(0,t));return e*e*(3-2*e)},Ia=(t,e)=>(Math.round(t/e-.5)+.5)*e,qG=Math.sin(Math.PI/3),ik=(t,e,n,r,s)=>{if(t.beginPath(),e===0)t.arc(n,r,s,0,Math.PI*2);else if(e===1){const i=s*qG;t.moveTo(n,r-s),t.lineTo(n+i,r+s/2),t.lineTo(n-i,r+s/2),t.closePath()}else{const i=s*.85;t.rect(n-i,r-i,i*2,i*2)}t.fill()},ZG=(t,e,n)=>{let r;if(n.hline){const s=Math.max(n.x1-t,t-n.x2,0),i=Math.abs(e-n.y1);r=Math.hypot(s,i)-sk}else{const s=Math.max(n.x1-t,t-n.x2,0),i=Math.max(n.y1-e,e-n.y2,0);s===0&&i===0?r=-Math.min(t-n.x1,n.x2-t,e-n.y1,n.y2-e):r=Math.hypot(s,i),r=Math.abs(r)-sk}return Ep(.5-r/(2*UG))},uR=({className:t="",trackGlobalLoaderCount:e=!0})=>{const n=st(ZT),r=g.useRef(null),s=g.useCallback(i=>{var L;if((L=r.current)==null||L.call(r),r.current=null,!i)return;const a=i.getContext("2d");if(!a)return;e&&n(D=>D+1);const u=window.matchMedia("(prefers-reduced-motion: reduce)").matches;let c=[],f=0,h=0,p=Jh,v=Jh,y=null,x=null,_=0,b=-1;const E=new Array(33),k=D=>{const V=Math.round(D*32);let K=E[V];if(!K){const Y=V/32,G=Math.round(Ai[0]+(255-Ai[0])*Y),B=Math.round(Ai[1]+(255-Ai[1])*Y),Q=Math.round(Ai[2]+(255-Ai[2])*Y);K=`rgba(${G}, ${B}, ${Q}, ${rk})`,E[V]=K}return K},P=D=>{const V=1-.35*D,K=Math.round(Ai[0]*V),Y=Math.round(Ai[1]*V),G=Math.round(Ai[2]*V);return`rgba(${K}, ${Y}, ${G}, ${rk})`},T=D=>{let V=Math.floor(Math.random()*h1.length);V===b&&(V=(V+1)%h1.length),b=V;const K=[0,0,0,0],Y=h1[V].map((j,Z)=>{const ee=j.level,ie=K[ee]++,le=WG[ee]+ie*GG[ee],ue=KG[ee]+ep(V*131+Z*17+5)*.2;if(j.hline){const se=Ia((j.y??0)*h,v);return{hline:!0,x1:Ia(j.x1*f,p),x2:Ia(j.x2*f,p),y1:se,y2:se,level:ee,start:le,dur:ue}}const Ce=Ia(j.x1*f,p),ae=Ia((j.y1??0)*h,v);return{hline:!1,x1:Ce,y1:ae,x2:Math.max(Ia(j.x2*f,p),Ce+p),y2:Math.max(Ia((j.y2??0)*h,v),ae+v),level:ee,start:le,dur:ue}}),G=Y.reduce((j,Z)=>Math.max(j,Z.start+Z.dur),0),B=c.length,Q=new Float32Array(B*Aa),$=new Int16Array(B*Aa).fill(-1),te=new Uint8Array(B),H=Y[0];for(let j=0;j<B;j++){const Z=c[j];Z.x>H.x1&&Z.x<H.x2&&Z.y>H.y1&&Z.y<H.y2&&(te[j]=1);const ee=j*Aa;for(let ie=0;ie<Y.length;ie++){const le=ZG(Z.x,Z.y,Y[ie]);if(le<=.02)continue;let ue=ee;for(let Ce=ee;Ce<ee+Aa;Ce++){if($[Ce]===-1){ue=Ce;break}Q[Ce]<Q[ue]&&(ue=Ce)}($[ue]===-1||le>Q[ue])&&(Q[ue]=le,$[ue]=ie)}}return{startT:D,buildEnd:G,els:Y,frame:H,cellQ:Q,cellEl:$,inFrame:te}},A=()=>{const D=i.getBoundingClientRect();f=Math.max(1,D.width),h=Math.max(1,D.height);const V=Math.min(2,window.devicePixelRatio||1);i.width=Math.round(f*V),i.height=Math.round(h*V),a.setTransform(V,0,0,V,0,0);const K=Math.max(8,Math.round(f/Jh)),Y=Math.max(6,Math.round(h/Jh));p=f/K,v=h/Y,c=[];for(let G=0;G<Y;G++){const B=Y>1?G/(Y-1):.5,Q=VG*(1+$G*.4*(B*2-1));for(let $=0;$<K;$++){const te=G*8191+$*131+1,H={x:($+.5)*p,y:(G+.5)*v,size:Q,seed:te,phase:ep(te),kind:0};H.kind=Math.floor(ep(te*97)*3),c.push(H)}}x=null,y=null},O=new Float32Array(32),N=D=>{a.fillStyle=DG,a.fillRect(0,0,f,h),y||(y=T(D+.2)),D>=y.startT+y.buildEnd+HG&&(x=y,_=D,y=T(D+.2));let V=0;x&&(V=1-Ep((D-_)/zG),V<=0&&(x=null));const K=y;for(let H=0;H<K.els.length;H++){const j=K.els[H];O[H]=Ep(Math.min(1,Math.max(0,(D-K.startT-j.start)/j.dur)))}const Y=O[0],G=P(0),B=P(Y),Q=V>0?P(V):G,$=V>0?P(Math.max(Y,V)):B,te=c.length;for(let H=0;H<te;H++){const j=c[H];let Z=0,ee=0;const ie=H*Aa;for(let we=ie;we<ie+Aa;we++){const Ie=K.cellEl[we];if(Ie<0)break;const qe=K.cellQ[we]*O[Ie];qe>Z&&(Z=qe,ee=K.els[Ie].level)}if(x)for(let we=ie;we<ie+Aa;we++){const Ie=x.cellEl[we];if(Ie<0)break;const qe=x.cellQ[we]*V;qe>Z&&(Z=qe,ee=x.els[Ie].level)}const le=D/jG+j.phase,ue=Math.floor(le),Ce=le-ue,ae=Ep(Math.min(Ce,1-Ce)/FG),se=Math.floor(ep(j.seed*97+ue*7919)*3);se!==j.kind&&Z<.02&&ae<.05&&(j.kind=se);const pe=Math.max(ae*(1-Z),Z);if(!(pe<.01))if(Z<.02){const we=K.inFrame[H]===1,Ie=x?x.inFrame[H]===1:!1;we?a.fillStyle=Ie?$:B:a.fillStyle=Ie?Q:G;const qe=Math.max(we?Y:0,Ie?V:0);ik(a,j.kind,j.x,j.y,j.size*pe*(1-.2*qe))}else{a.fillStyle=k(Z);const we=1+(BG[ee]-1)*Z;ik(a,j.kind,j.x,j.y,j.size*pe*we)}}};A();let R=0;if(u)y=T(-100),N(0);else{const D=performance.now(),V=K=>{N((K-D)/1e3),R=requestAnimationFrame(V)};R=requestAnimationFrame(V)}const M=new ResizeObserver(()=>{A(),u&&(y=T(-100),N(0))});M.observe(i),r.current=()=>{cancelAnimationFrame(R),M.disconnect(),e&&n(D=>D-1)}},[e,n]);return S.jsx("canvas",{ref:s,"aria-hidden":"true",className:`h-full w-full ${t}`.trim()})},YG=async(t=null)=>{if(t)return QG(t);let e;try{e=await fetch("/api/mcp/status")}catch{return{isOk:!1,unavailableReason:"rivet_unreachable"}}if(e.status===404||!(e.headers.get("content-type")??"").toLowerCase().includes("application/json"))return tp();if(!e.ok)return{isOk:!1,unavailableReason:"rivet_unreachable"};let r;try{r=await e.json()}catch{return tp()}const s=r.devServerHealth;return s?s.ownership==="none"?{isOk:!1,unavailableReason:"upstream_unreachable"}:s.isReachable===!0?{isOk:!0,unavailableReason:"upstream_unreachable"}:{isOk:!1,unavailableReason:s.reason==="rivet_unreachable"?"rivet_unreachable":"upstream_unreachable"}:tp()},QG=async t=>{try{const e=await fetch(t);return{isOk:e.status!==502&&e.status!==503,unavailableReason:"upstream_unreachable"}}catch{return{isOk:!1,unavailableReason:"rivet_unreachable"}}},tp=async()=>{try{const t=await fetch("/");return{isOk:t.status!==502&&t.status!==503,unavailableReason:"upstream_unreachable"}}catch{return{isOk:!1,unavailableReason:"rivet_unreachable"}}},ok=ds("usePreviewUpstreamHealth"),XG=500,JG=4e3,eK=15e3,tK=(t,e={})=>{const n=g.useRef(null),r=g.useRef(null),s=e.probeMsWhileDown??XG,i=e.probeMsWhileUp??JG,a=e.firstUnreachableCaptureAfterMs??eK,u=e.rerunProbeImmediatelyOnVersion,c=e.probePath??null,f=e.skip??!1,[h,p]=g.useState(t==="static"),[v,y]=g.useState(0),[x,_]=g.useState(null),[b,E]=g.useState(0),[k,P]=g.useState(!1),[T,A]=g.useState(!1),[O,N]=g.useState(t==="static"?null:"upstream_unreachable");return g.useEffect(()=>{if(t==="static"){p(!0),_(null),E(0),P(!1),A(!0),N(null);return}if(f){p(!1),_(null),E(0),P(!1),A(!0),N("upstream_unreachable"),n.current=null;return}let R=!0;const M=Date.now();_(M),E(0),P(!1),p(!1),A(!1),N("upstream_unreachable");const L={current:!1},D={current:!1},V={current:!1},K={current:null},Y={current:!1};let G=null;const B=()=>{V.current||(V.current=!0,R&&A(!0))},Q=()=>{G!==null&&(clearTimeout(G),G=null)},$=(H,j)=>{Q(),G=setTimeout(j,H)},te=async()=>{if(!R)return;E(ie=>ie+1);const{isOk:H,unavailableReason:j}=await YG(c);if(!R)return;if(B(),H){const ie=!Y.current;Y.current=!0,p(!0),N(null),K.current=null,D.current=!1,P(!1),L.current?ie&&(Pe==null||Pe.capture("preview_upstream_restored",{framework:t})):(L.current=!0,Pe==null||Pe.capture("preview_dev_server_ready",{framework:t,ready_after_ms:Date.now()-M})),$(i,te);return}const Z=Y.current;Y.current=!1,p(!1),N(j),K.current===null&&(K.current=Date.now(),D.current=!1,P(!1)),Z&&(Pe==null||Pe.capture("preview_upstream_lost",{framework:t}),y(ie=>ie+1),ok.warn("Preview upstream became unavailable after it was ready"));const ee=Date.now()-K.current;ee>=a&&!D.current&&(D.current=!0,P(!0),Pe==null||Pe.capture("preview_dev_server_unreachable",{framework:t,elapsed_ms:ee}),ok.warn("Dev server did not become ready within timeout window")),$(s,te)};return n.current=()=>$(0,te),$(0,te),()=>{R=!1,n.current=null,Q()}},[t,s,i,a,c,f]),g.useEffect(()=>{var M;if(t==="static"||u===void 0)return;const R=r.current;r.current=u,R!==null&&R!==u&&((M=n.current)==null||M.call(n))},[t,u]),{isUpstreamReady:h,iframeRemountKey:v,probeStartedAt:x,probeAttemptCount:b,isFirstUnreachableWindowExceeded:k,initialProbeComplete:T,unavailableReason:O}};function nK(t){return t.enteringSplit&&t.isExistingSession&&t.hasActiveVariantProxy}const cR=t=>{var e;return t!=="embedded"||typeof window>"u"?"":((e=window.__RIVET_BOOTSTRAP__)==null?void 0:e.previewOrigin)??`${window.location.protocol}//localhost:${window.location.port}`},dR=({agentApplyMode:t,url:e})=>e.startsWith("/")?`${cR(t)}${e}`:e,rK="allow-scripts allow-same-origin allow-forms allow-popups allow-modals",sK=t=>rK,iK=ds("PreviewSurface"),ak=(t,e)=>t==="about:blank"?"blank":t.includes("/api/variants/")?"static_artifact":e.kind==="variant"?"dev_server":"original",fR=({target:t,src:e,framework:n,remountKey:r})=>(Je(s0),S.jsx("div",{className:"relative h-full w-full",children:S.jsx("iframe",{src:e,className:"h-full w-full border-none",title:"Project Preview",sandbox:sK(),onLoad:()=>{Pe==null||Pe.capture("preview_iframe_loaded",{framework:n,src:e}),t.kind==="variant"&&(Pe==null||Pe.capture("variants_panel.preview_displayed",{sessionId:t.sessionId,variantId:t.variantId,renderedTarget:"variant",iframeSrcKind:ak(e,t),framework:n}))},onError:()=>{Pe==null||Pe.capture("preview_iframe_load_failed",{framework:n,src:e}),t.kind==="variant"&&(Pe==null||Pe.capture("variants_panel.preview_display_failed",{sessionId:t.sessionId,variantId:t.variantId,renderedTarget:"variant",iframeSrcKind:ak(e,t),framework:n})),iK.warn("Preview iframe failed to load",{framework:n,src:e})}},r)})),oK="modulepreload",aK=function(t){return"/"+t},lk={},lK=function(e,n,r){let s=Promise.resolve();if(n&&n.length>0){let a=function(f){return Promise.all(f.map(h=>Promise.resolve(h).then(p=>({status:"fulfilled",value:p}),p=>({status:"rejected",reason:p}))))};document.getElementsByTagName("link");const u=document.querySelector("meta[property=csp-nonce]"),c=(u==null?void 0:u.nonce)||(u==null?void 0:u.getAttribute("nonce"));s=a(n.map(f=>{if(f=aK(f),f in lk)return;lk[f]=!0;const h=f.endsWith(".css"),p=h?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${p}`))return;const v=document.createElement("link");if(v.rel=h?"stylesheet":oK,h||(v.as="script"),v.crossOrigin="",v.href=f,c&&v.setAttribute("nonce",c),document.head.appendChild(v),h)return new Promise((y,x)=>{v.addEventListener("load",y),v.addEventListener("error",()=>x(new Error(`Unable to preload CSS for ${f}`)))})}))}function i(a){const u=new Event("vite:preloadError",{cancelable:!0});if(u.payload=a,window.dispatchEvent(u),!u.defaultPrevented)throw a}return s.then(a=>{for(const u of a||[])u.status==="rejected"&&i(u.reason);return e().catch(i)})},uK=g.lazy(()=>lK(()=>Promise.resolve().then(()=>Hq),void 0)),cK={surface:"relative flex h-full w-full items-center justify-center bg-main px-6",overlay:"absolute inset-0 z-10 flex items-center justify-center bg-main/90 px-6",page:"relative flex h-screen w-full items-center justify-center bg-main px-6"},dK={sm:"text-lg font-semibold text-content",md:"text-2xl font-semibold text-content",lg:"text-3xl font-semibold text-content"},fK={neutral:"rounded-md border border-divider bg-transparent px-5 py-2 text-sm font-medium text-content transition-colors hover:bg-surface-3",ghost:"rounded-md px-5 py-2 text-sm font-medium text-content-muted transition-colors hover:text-content"},_d=({backdrop:t,media:e,title:n,description:r,actions:s,tone:i="neutral",fill:a="surface",size:u="md",children:c,state:f,role:h="status",busy:p=!1,className:v=""})=>{const y=g.useCallback(_=>{_&&f&&(Pe==null||Pe.capture("status_surface_shown",{state:f,tone:i,fill:a}))},[f,i,a]),x=!!(e||n||r||c||s!=null&&s.length);return S.jsxs("div",{ref:y,className:`${cK[a]} ${v}`.trim(),role:h,"aria-live":"polite","aria-busy":p||void 0,"data-state":f,children:[t?S.jsx("div",{className:"absolute inset-0",children:t}):null,x?S.jsxs("div",{className:"relative z-10 flex max-w-sm flex-col items-center gap-5 text-center",children:[e,n?S.jsx("h2",{className:dK[u],children:n}):null,r?S.jsx("p",{className:"text-content-muted text-base leading-relaxed",children:r}):null,c,s!=null&&s.length?S.jsx("div",{className:"flex flex-row items-center gap-3",children:s.map(_=>S.jsx("button",{type:"button",onClick:_.onClick,className:fK[_.variant??"neutral"],children:_.label},_.label))}):null]}):null]})},w_=({loader:t="coalesce",trackGlobalLoaderCount:e,size:n="lg",...r})=>t==="coalesce"?S.jsx(_d,{...r,size:n,busy:!0,backdrop:S.jsx(uR,{trackGlobalLoaderCount:e})}):t==="logo"?S.jsx(_d,{...r,size:n,busy:!0,backdrop:S.jsx(g.Suspense,{fallback:null,children:S.jsx(uK,{className:"absolute inset-0"})})}):S.jsx(_d,{...r,size:n,busy:!0,media:S.jsx(r0,{"aria-hidden":!0,className:"text-content h-8 w-8 shrink-0 animate-spin",weight:"bold"})}),hR=({icon:t,...e})=>S.jsx(_d,{...e,tone:"neutral",media:t?S.jsx("div",{className:"text-content-muted",children:t}):void 0}),Cm=t=>S.jsx(_d,{...t,tone:"error",role:"alert"}),uk="/static/",hK=t=>{try{return new URL(t,"http://localhost").pathname.endsWith(uk)}catch{return t.endsWith(uk)}},pK=({isInteractionDisabled:t=!1,framework:e,userPort:n,activeDemoSessionId:r=null,holdPreviewNavigation:s=!1})=>{const i=Je(u_),a=st(u_),u=Je(xm),c=st(xm),f=Je(hf),h=Je(s0),p=Je(c_),v=Je(d_),y=Je(QT),x=Je(XT),_=st(d_),b=Je(Zo),E=Je(h_),k=st(c_),P=f.active&&f.projectContext.kind==="fresh",T=Je(f_),A=f.active?f.variants.find(je=>je.workItemId===T&&(je.status==="pending"||je.status==="running"||je.status==="succeeded"&&!je.preview&&typeof je.port!="number"&&(!je.previewUnavailable||je.previewUnavailable.reason==="idle_timeout")))??null:null,O=f.active&&f.variants.some(je=>je.status==="pending"||je.status==="running"),N=P||O,R=f.active?f.variants.find(je=>{var Ye;return je.workItemId===T&&je.status==="succeeded"&&!!je.previewUnavailable&&((Ye=je.previewUnavailable)==null?void 0:Ye.reason)!=="idle_timeout"})??null:null,M=e==="static"&&u!==null&&hK(u);g.useEffect(()=>{f.active||k(!1)},[f.active,k]);const L=g.useRef(!1);g.useEffect(()=>{const je=!!(b!=null&&b.left||b!=null&&b.right),Ye=je&&!L.current;L.current=je;const lt=f.active?f.sessionId:null;!lt||!nK({enteringSplit:Ye,isExistingSession:f.active&&f.projectContext.kind==="existing",hasActiveVariantProxy:p&&v!==null})||(k(!1),_(null),a(Xe=>Xe+1),fetch(`/api/variants/${encodeURIComponent(lt)}/preview-port`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({variantId:null})}).catch(()=>{}))},[b,f,p,v,k,_,a]);const V=g.useMemo(()=>{var xn;if(p||u&&!M||!f.active)return null;const{stage:je,variants:Ye}=f,lt=je==="ready"||je==="degraded",Xe=Ye.some(Ut=>{var Rn,Hn;return((Rn=Ut.refinement)==null?void 0:Rn.status)==="pending"||((Hn=Ut.refinement)==null?void 0:Hn.status)==="running"});if(!lt&&!Xe)return null;const vt=Ye.find(Ut=>{var Rn;return Ut.status==="succeeded"&&((Rn=Ut.preview)==null?void 0:Rn.kind)==="static_artifact"});return((xn=vt==null?void 0:vt.preview)==null?void 0:xn.kind)==="static_artifact"?vt.preview.url:null},[M,u,p,f])??u,K=g.useMemo(()=>!f.active||!V?null:f.variants.find(je=>{var Ye;return((Ye=je.preview)==null?void 0:Ye.kind)==="static_artifact"&&V.startsWith(je.preview.url)})??null,[V,f]),Y=g.useMemo(()=>{if((E==null?void 0:E.previewKind)==="static")return{kind:"variant",sessionId:E.sessionId,variantId:E.variantId};if(!f.active)return _m;if(K)return{kind:"variant",sessionId:f.sessionId,variantId:K.workItemId};if(V){const Ye=V.match(/\/__rivet\/preview\/variant\/([^/]+)\/([^/?#]+)/),lt=Ye!=null&&Ye[1]?decodeURIComponent(Ye[1]):null,Xe=Ye!=null&&Ye[2]?decodeURIComponent(Ye[2]):null;if(lt===f.sessionId&&Xe&&f.variants.some(Ut=>Ut.workItemId===Xe))return{kind:"variant",sessionId:f.sessionId,variantId:Xe};const vt=V.match(/\/api\/variants\/[^/]+\/static\/([^/?#]+)/),xn=vt!=null&&vt[1]?decodeURIComponent(vt[1]):null;if(xn&&f.variants.some(Ut=>Ut.workItemId===xn))return{kind:"variant",sessionId:f.sessionId,variantId:xn}}const je=!!(b!=null&&b.left||b!=null&&b.right);return(!je||P)&&!V&&p&&v&&f.variants.some(Ye=>Ye.workItemId===v)?{kind:"variant",sessionId:f.sessionId,variantId:v}:(!je||P)&&!V&&T&&f.variants.some(Ye=>Ye.workItemId===T)?{kind:"variant",sessionId:f.sessionId,variantId:T}:_m},[E,K,f,p,v,V,b,P,T]),G=g.useRef(null);g.useEffect(()=>{var Xe,vt;if(!K||((Xe=K.preview)==null?void 0:Xe.kind)!=="static_artifact"||((vt=K.refinement)==null?void 0:vt.status)!=="succeeded")return;const je=`${K.workItemId}:${K.refinement.workItemId}`;if(G.current===je)return;G.current=je;const Ye=K.preview.url.includes("?")?"&":"?",lt=`${K.preview.url}${Ye}refinement=${encodeURIComponent(K.refinement.workItemId)}`;V!==lt&&(c(lt),a(xn=>xn+1))},[V,K,a,c,f]);const B=V!==null&&VW(V),Q=V!==null&&!B||P&&!p&&!B,{isUpstreamReady:$,iframeRemountKey:te,probeAttemptCount:H,initialProbeComplete:j}=tK(e,{rerunProbeImmediatelyOnVersion:i,probePath:B?V:null,skip:Q}),[Z,ee]=g.useState(()=>y&&$?i:null),ie=g.useRef(null);g.useEffect(()=>{if(!y){ie.current=null,ee(null);return}if(Z===i){ie.current=null;return}const je=ie.current;if(!je||je.remountKey!==i){ie.current={remountKey:i,probeAttemptCount:H};return}$&&H>je.probeAttemptCount&&(ie.current=null,ee(i))},[Z,i,y,H,$]);const ue=V!==null&&!B||$,ae=x||y&&Z!==i||y&&!ue,se=`${te}:${i}`,pe=r?`/try/${encodeURIComponent(r)}`:"",we=sR(window.location.pathname),Ie=e==="static"?`${pe}/static${we??"/"}`:`${pe}${we??"/"}`,qe=cR(h);let it=null;V&&(it=dR({agentApplyMode:h,url:V}));const at=A||ae?"about:blank":(B&&!ue?"about:blank":it)??(s||!ue?"about:blank":`${qe}${Ie}`),At=!!A||!!R||!ue&&j;let mt=null;return ae?mt=S.jsx(w_,{fill:"overlay",loader:"coalesce",trackGlobalLoaderCount:!1,state:"preview_replay_boot"}):A?mt=S.jsx(w_,{fill:"overlay",loader:"coalesce",trackGlobalLoaderCount:!1,state:"variant_building",children:S.jsx("span",{className:"sr-only",children:"Building your direction"})}):R?mt=S.jsx(Cm,{fill:"overlay",state:"preview_unavailable",title:"Preview couldn’t start",description:"Its preview server didn’t start.",actions:[{label:"Reload",onClick:()=>window.location.reload()}]}):At&&(mt=N?S.jsx(hR,{fill:"overlay",state:"preview_no_selection",title:"Nothing to preview yet",description:"Pick a direction from the panel."}):S.jsx(Cm,{fill:"overlay",state:"preview_offline",title:"Preview isn't connected",description:"Rivet lost connection to your project.",actions:[{label:"Reload",onClick:()=>window.location.reload()}]})),S.jsxs("div",{className:"relative h-full w-full",children:[mt,S.jsx(fR,{target:Y,src:at,framework:e,remountKey:se})]})};function ck({side:t,sessionId:e,variantId:n,url:r,label:s,source:i,isFallback:a=!1}){var E;const u=st(Zo),c=Je(hf),f=Je(s0),h=g.useRef(!1),p=g.useCallback(()=>{h.current||(h.current=!0,Kd({source:i,sessionId:e,variantId:n}))},[i,e,n]),v=g.useCallback(()=>{if(a){u(null);return}p(),u(k=>{if(!k)return null;const P={...k};return delete P[t],P.left||P.right?P:null})},[u,t,a,p]),y=g.useMemo(()=>({kind:"variant",sessionId:e,variantId:n}),[e,n]),x=g.useMemo(()=>!c.active||c.sessionId!==e?null:c.variants.find(k=>k.workItemId===n)??null,[e,n,c]),_=g.useMemo(()=>{var P,T;let k=r;if(((P=x==null?void 0:x.preview)==null?void 0:P.kind)==="static_artifact"&&((T=x.refinement)==null?void 0:T.status)==="succeeded"){const A=x.preview.url.includes("?")?"&":"?";k=`${x.preview.url}${A}refinement=${encodeURIComponent(x.refinement.workItemId)}`}return dR({agentApplyMode:f,url:k})},[f,x,r]),b=((E=x==null?void 0:x.refinement)==null?void 0:E.status)==="succeeded"?`${n}:${x.refinement.workItemId}`:n;return S.jsxs("div",{className:"variant-split-secondary","data-cy":"variant-split-pane","data-variant-id":n,children:[S.jsxs("div",{className:"variant-split-secondary-toolbar",children:[S.jsx("span",{className:"variant-split-secondary-label",title:s,children:s}),S.jsx(Fo,{label:"Collapse",children:S.jsx("button",{type:"button",className:"variant-split-secondary-close",onClick:v,"aria-label":"Collapse split view",children:S.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12","aria-hidden":"true",focusable:"false",children:S.jsx("path",{d:"M2.5 2.5 L9.5 9.5 M9.5 2.5 L2.5 9.5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})})})]}),S.jsx("div",{className:"variant-split-secondary-body relative min-h-0 flex-1",children:S.jsx(fR,{target:y,src:_,framework:"static",remountKey:b})})]})}const dk=240;function mK(){const t=Je(Ud),e=Je(ex),n=g.useRef(null);return g.useEffect(()=>{if(!t||!e||!n.current)return;const r=e.x-dk/2,s=e.y-22;n.current.style.transform=`translate3d(${r}px, ${s}px, 0)`},[t,e]),!t||!e?null:S.jsx("div",{ref:n,"aria-hidden":"true",className:"variant-drag-ghost",style:{width:dk},children:S.jsxs("div",{className:"variant-drag-ghost-body",children:[S.jsxs("div",{className:"variant-drag-ghost-row",children:[S.jsx("div",{className:"variant-drag-ghost-title",children:t.label}),t.runLabel?S.jsx("div",{className:"variant-drag-ghost-tag",style:$T(t.runLabel),children:t.runLabel}):null]}),t.description?S.jsx("div",{className:"variant-drag-ghost-desc",children:t.description}):null]})})}function gK(){const t=Je(Ud),e=Je(ex),n=Je(Zo),r=st(Ud),s=st(Zo),i=g.useRef(null),[a,u]=g.useState(null),[c,f]=g.useState("hidden");g.useEffect(()=>{if(!t){f("hidden"),u(null);return}const v=requestAnimationFrame(()=>f("visible"));return()=>cancelAnimationFrame(v)},[t]);const h=g.useCallback((v,y)=>{const x=i.current;if(!x)return null;const _=x.getBoundingClientRect();return v<_.left||v>_.right||y<_.top||y>_.bottom?null:v<(_.left+_.right)/2?"left":"right"},[]);if(g.useEffect(()=>{if(!t||!e)return;const v=h(e.x,e.y);u(y=>y===v?y:v)},[t,e,h]),g.useEffect(()=>{if(!t)return;const v=y=>{const x=h(y.clientX,y.clientY);if(x&&t.url){const _={sessionId:t.sessionId,variantId:t.variantId,label:t.label,url:t.url,source:t.source},b=n==null?void 0:n[x];b&&(b.sessionId!==_.sessionId||b.variantId!==_.variantId)&&Kd(b),s(E=>({...E??{},[x]:_})),f("exiting"),window.setTimeout(()=>r(null),220)}else Kd(t),f("exiting"),window.setTimeout(()=>r(null),220)};return window.addEventListener("pointerup",v),window.addEventListener("pointercancel",v),()=>{window.removeEventListener("pointerup",v),window.removeEventListener("pointercancel",v)}},[t,h,r,s,n]),!t)return null;const p=["variant-drop-zones",c==="visible"&&"is-visible",c==="exiting"&&"is-exiting"].filter(Boolean).join(" ");return S.jsxs("div",{ref:i,className:p,"aria-hidden":"true",children:[S.jsx(fk,{side:"left",hovered:a==="left",canDrop:!!t.url,label:t.label}),S.jsx(fk,{side:"right",hovered:a==="right",canDrop:!!t.url,label:t.label})]})}function fk({side:t,hovered:e,canDrop:n,label:r}){return S.jsxs("div",{className:["variant-drop-zone",`is-${t}`,e&&"is-hover",!n&&"is-disabled"].filter(Boolean).join(" "),children:[S.jsxs("div",{className:"variant-drop-zone-inner",children:[S.jsx("div",{className:`variant-drop-zone-icon is-${t}`}),S.jsx("div",{className:"variant-drop-zone-caption",children:n?`Add ${t} split`:"Split unavailable for this direction"})]}),S.jsx("div",{className:"variant-drop-zone-preview","aria-hidden":"true",children:S.jsx("div",{className:"variant-drop-zone-preview-label",children:r})}),S.jsx("div",{className:"variant-drop-zone-border"})]})}const pR=(t,e,n)=>{var i,a;if(!t.active||t.sessionId!==e)return null;const r=t.variants.find(u=>u.workItemId===n);if(((i=r==null?void 0:r.preview)==null?void 0:i.kind)!=="static_artifact")return null;if(((a=r.refinement)==null?void 0:a.status)!=="succeeded")return r.preview.url;const s=r.preview.url.includes("?")?"&":"?";return`${r.preview.url}${s}refinement=${encodeURIComponent(r.refinement.workItemId)}`},hk=(t,e)=>{if(!t)return;const n=pR(e,t.sessionId,t.variantId);return!n||n===t.url?t:{...t,url:n}},vK=()=>S.jsx("div",{"data-testid":"preview-boot-skeleton",role:"status","aria-busy":"true","aria-label":"Loading preview",className:"bg-main flex h-full min-h-0 w-full flex-1 flex-col p-3",children:S.jsx("div",{className:"border-main-border relative min-h-0 flex-1 overflow-hidden rounded-lg border",children:S.jsx(uR,{trackGlobalLoaderCount:!1})})}),yK=({isLoading:t=!1,isInteractionDisabled:e=!1,activeDemoSessionId:n=null,holdHostedTryoutPreviewNavigation:r=!1})=>{const{config:s,fetchConfig:i,isLoading:a,error:u}=LG();return g.useEffect(()=>{i().catch(c=>{Pe==null||Pe.capture("preview_config_load_failed",{message:c instanceof Error?c.message:"unknown_error"})})},[i]),a?r?S.jsx("div",{className:"bg-main flex h-full min-h-0 w-full flex-1","aria-busy":"true"}):S.jsx(vK,{}):u||!s?S.jsx(Cm,{fill:"surface",size:"sm",state:"preview_config_error",title:"Couldn't load preview",description:"We couldn't load the preview configuration.",actions:[{label:"Retry",onClick:()=>{Pe==null||Pe.capture("preview_config_retry_clicked"),i().catch(c=>{Pe==null||Pe.capture("preview_config_load_failed",{message:c instanceof Error?c.message:"unknown_error"})})}}]}):S.jsx(_K,{isLoading:t,isInteractionDisabled:e,framework:s.framework,userPort:s.userPort,activeDemoSessionId:n,holdHostedTryoutPreviewNavigation:r})};function _K(t){const e=Je(Zo),n=Je(Ud),r=Je(hf),s=Je(xm),i=e==null?void 0:e.left,a=e==null?void 0:e.right,u=g.useMemo(()=>{var A,O;if(!r.active||r.projectContext.kind!=="fresh"||!(!!i!=!!a))return;const _=(A=i??a)==null?void 0:A.variantId,b=r.variants.filter(N=>{var R;return N.status==="succeeded"&&((R=N.preview)==null?void 0:R.kind)==="static_artifact"&&N.workItemId!==_}),E=s==null?void 0:s.replace(/[?&]refinement=[^&]*$/,""),P=b.find(N=>{var R;return((R=N.preview)==null?void 0:R.kind)==="static_artifact"&&N.preview.url===E})??b[0];if(((O=P==null?void 0:P.preview)==null?void 0:O.kind)!=="static_artifact")return;const T=pR(r,r.sessionId,P.workItemId);if(T)return{sessionId:r.sessionId,variantId:P.workItemId,label:P.label,url:T,source:"live"}},[r,i,a,s]),c=hk(i,r)??(a?u:void 0),f=hk(a,r)??(i?u:void 0),h=!i&&!!c,p=!a&&!!f,v=!!(c||f),y=S.jsx(pK,{isInteractionDisabled:t.isInteractionDisabled,framework:t.framework,userPort:t.userPort,activeDemoSessionId:t.activeDemoSessionId,holdPreviewNavigation:t.holdHostedTryoutPreviewNavigation});return S.jsx("div",{className:"relative flex h-full min-h-0 w-full flex-1 flex-col",children:S.jsxs("div",{className:`variant-preview-region relative flex h-full min-h-0 w-full flex-1 flex-col ${n?"is-dragging":""} ${v?"is-split":""}`,children:[S.jsxs("div",{className:"variant-preview-row flex h-full min-h-0 w-full flex-1",children:[c&&S.jsx(ck,{side:"left",sessionId:c.sessionId,variantId:c.variantId,url:c.url,label:c.label,source:c.source,isFallback:h},`left-${c.sessionId}:${c.variantId}:${c.url}`),!(c&&f)&&S.jsx("div",{className:"variant-preview-primary flex h-full min-h-0 flex-1 flex-col",children:y}),f&&S.jsx(ck,{side:"right",sessionId:f.sessionId,variantId:f.variantId,url:f.url,label:f.label,source:f.source,isFallback:p},`right-${f.sessionId}:${f.variantId}:${f.url}`)]}),S.jsx("div",{className:"variant-preview-atmosphere","aria-hidden":"true"}),S.jsx(gK,{}),S.jsx(mK,{})]})})}const mR=({message:t,isLoading:e=!0})=>S.jsxs("div",{className:"flex items-center gap-2 text-sm text-content",children:[e?S.jsx(r0,{className:"h-4 w-4 shrink-0 animate-spin text-primary",weight:"bold"}):null,S.jsx("span",{className:"whitespace-pre-wrap font-sans",children:t})]});function ji(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function gR(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}/*!
115
115
  * GSAP 3.15.0
116
116
  * https://gsap.com
117
117
  *
@@ -419,4 +419,4 @@ ${s}`:s},eG=({rows:t,activeVariantId:e,activePastKey:n,isOriginalSelected:r,busy
419
419
  <body>
420
420
  <div class="panel">${zk}</div>
421
421
  </body>
422
- </html>`,kX="Too many people are trying Rivet right now. Please try again in a few minutes.",dI="Failed to start an isolated demo session.",PX=async t=>{if(t.status===429)return kX;try{const e=await t.json();if(e.error)return e.error;if(e.message)return e.message}catch{}return dI},H_=274,Dm=395,T1=Math.min(Dm,Math.round((H_+Dm)/2*1.1)),Bk="rivet:panelWidth:v2",TX=t=>{if(!(t instanceof HTMLElement))return!1;const e=t.tagName.toLowerCase();return t.isContentEditable||e==="input"||e==="textarea"||e==="select"},RX=({projectPath:t,activeDemoSessionId:e=null,showLoginGate:n=!1,onStartLogin:r,isStartingLogin:s=!1,loginError:i=null,fullPageHostedLoginProgressMessage:a=null,holdHostedTryoutPreviewNavigation:u=!1,hostedTryoutPreviewHoldMessage:c=null,deferInspectorUntilPreviewReady:f=!1})=>{const h=Je(ZT)>0,[p,v]=nP(KT),y=HV(),[x,_]=g.useState(()=>{if(typeof window>"u")return T1;const Y=Number(window.localStorage.getItem(Bk));return Number.isFinite(Y)&&Y>=H_&&Y<=Dm?Y:T1}),[b,E]=g.useState(!1),[k,P]=g.useState(rZ),T=p?x:0,[A,O]=g.useState(p);g.useEffect(()=>{if(!p){O(!1);return}P(Y=>nZ({position:Y,boundsLeftPx:x}))},[p,x]),g.useEffect(()=>{window.localStorage.setItem(Bk,String(x))},[x]),g.useEffect(()=>{if(!p)return;const Y=G=>{G.key==="Escape"&&(TX(G.target)||(G.preventDefault(),v(!1)))};return window.addEventListener("keydown",Y),()=>window.removeEventListener("keydown",Y)},[p,v]);const N=g.useCallback(Y=>{Y.preventDefault(),Y.stopPropagation();const G=Y.clientX,B=x;E(!0);const Q=te=>{const H=Math.min(Dm,Math.max(H_,B+(te.clientX-G)));_(H)},$=()=>{window.removeEventListener("pointermove",Q),window.removeEventListener("pointerup",$),window.removeEventListener("pointercancel",$),E(!1)};window.addEventListener("pointermove",Q),window.addEventListener("pointerup",$),window.addEventListener("pointercancel",$)},[x]),R=g.useCallback(()=>_(T1),[]),M=gZ(),L=Je(pf);_Z({enabled:!L});const D=M.isProcessing?"Completing authentication...":a,V=D!==null,K=st(e5);return g.useEffect(()=>{K(t??null)},[t,K]),g.useEffect(()=>{n&&(document.body.style.cursor="auto")},[n]),S.jsxs(sl.div,{className:"relative flex h-screen overflow-hidden",initial:!1,animate:{opacity:1},transition:{duration:.5,ease:"easeOut"},"data-cy":"rivet-app",children:[D!==null&&!n?S.jsx("div",{className:"absolute inset-0 z-50",children:S.jsx(Uq,{message:D})}):null,n?S.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center bg-black/45 backdrop-blur-[2px]",children:S.jsx(fA,{isSigningIn:s||V,onStartSignIn:()=>{r==null||r()},errorMessage:i,displayMode:"modal"})}):null,S.jsxs("div",{className:`relative flex min-w-0 flex-1 flex-col ${n?"pointer-events-none select-none":""}`,children:[S.jsx(yK,{holdHostedTryoutPreviewNavigation:u,isInteractionDisabled:n,activeDemoSessionId:e}),u&&c?S.jsx("div",{className:"bg-main absolute inset-0 z-30 flex items-center justify-center",children:S.jsx("div",{className:"border-divider bg-main-light rounded-lg border p-6 shadow-lg",children:S.jsx(mR,{message:c})})}):null]}),n?null:S.jsx(S.Fragment,{children:!f&&!h?S.jsxs(S.Fragment,{children:[S.jsx("div",{className:"relative order-first h-full flex-shrink-0",style:{width:A?x:0},children:S.jsxs(sl.div,{className:"absolute inset-y-0 left-0 z-30",initial:!1,animate:{x:p?0:-x},transition:y?{duration:0}:{duration:.2,ease:[.22,1,.36,1]},onAnimationComplete:()=>{p&&O(!0)},style:{width:x,willChange:"transform"},children:[S.jsx(NG,{onClose:()=>v(!1)}),S.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize panel",onPointerDown:N,onDoubleClick:R,className:"group/resize absolute inset-y-0 right-0 z-20 flex w-3 cursor-col-resize touch-none justify-end",children:S.jsx("span",{className:`h-full transition-all duration-150 ${b?"w-0.5 bg-content-muted":"w-px bg-divider group-hover/resize:w-0.5 group-hover/resize:bg-content-muted"}`})})]})}),b&&S.jsx("div",{className:"fixed inset-0 z-[100] cursor-col-resize"}),S.jsx(oZ,{isVisible:!0,isPanelOpen:p,isReducedMotion:!!y,position:k,dragBoundsLeftPx:T,onPositionChange:P,onToggle:()=>v(Y=>!Y)})]}):null}),S.jsx(m$,{duration:5e3,richColors:!0,toastOptions:{style:{maxHeight:"150px",overflow:"hidden"}}})]})},z_="rivet_connect_deep_link",AX=()=>{if(typeof window>"u")return null;const t=new URLSearchParams(window.location.search),e=t.get("connect"),n=e??window.sessionStorage.getItem(z_);if(n!=="pinterest"&&n!=="arena")return null;if(window.sessionStorage.setItem(z_,n),e){t.delete("connect");const r=t.toString();window.history.replaceState(null,document.title,window.location.pathname+(r?`?${r}`:"")+window.location.hash)}return n},IX=AX(),MX=()=>{const[t,e]=g.useState(window.location.hash),[n]=g.useState(()=>typeof window<"u"&&window.sessionStorage.getItem(Rp)==="1"),[r,s]=g.useState(!1),[i,a]=g.useState(IX);g.useEffect(()=>{n&&window.sessionStorage.removeItem(Rp)},[n]);const{config:u,refetchConfig:c,loading:f,error:h}=pZ(),p=st(pf),[v,y]=g.useState(!1),[x,_]=g.useState(null),[b,E]=g.useState(!1),[k,P]=g.useState(!1),[T,A]=g.useState(null),[O,N]=g.useState(!1),R=g.useRef(!1),M=g.useRef(!1),L=wX(window.location.pathname),D=(u==null?void 0:u.activeDemoSessionId)??null,V=L??T??D,K=g.useMemo(()=>vX(u==null?void 0:u.demoMode,u==null?void 0:u.agentModeAvailable,V),[u==null?void 0:u.demoMode,u==null?void 0:u.agentModeAvailable,V]),Y=g.useMemo(()=>gX({configLoading:f,hasConfig:u!==null,demoMode:u==null?void 0:u.demoMode,agentModeAvailable:u==null?void 0:u.agentModeAvailable,pathnameDemoSessionId:L,activeDemoSessionId:T,configuredDemoSessionId:D}),[u,f,L,T,D]);g.useLayoutEffect(()=>{if(!Y){N(!1);return}N(!0)},[Y]);const G=O,B=g.useMemo(()=>yX(G),[G]),Q=(u==null?void 0:u.demoMode)===!0&&G,$=g.useRef(null);$.current=V;const te=g.useCallback(async()=>{if(!R.current)return;A(null);const pe=await c();if((pe==null?void 0:pe.demoMode)===!0&&pe.agentModeAvailable!==!0){P(!1);return}(pe==null?void 0:pe.demoMode)===!0&&P(!0)},[c]);g.useEffect(()=>{if((u==null?void 0:u.demoMode)===!0)return fX(()=>{te()})},[u==null?void 0:u.demoMode,te]),g.useEffect(()=>{if(R.current=(u==null?void 0:u.demoMode)===!0,(u==null?void 0:u.demoMode)!==!0)return;const pe=window.fetch.bind(window);return mX({nativeFetch:pe,pageOrigin:window.location.origin,getShouldIntercept:()=>R.current})},[u==null?void 0:u.demoMode]),g.useEffect(()=>{(u==null?void 0:u.agentModeAvailable)===!0&&P(!1)},[u==null?void 0:u.agentModeAvailable]);const H=g.useCallback(async pe=>{const we=$.current;if(!(pe!=null&&pe.forceRefresh)&&we)return we;if(M.current)return"";M.current=!0;try{const Ie=await fetch("/api/demo/session",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(!Ie.ok){const it=await PX(Ie);throw new Error(it)}const qe=await Ie.json();if(!qe.sessionId)throw new Error("Demo session response missing session id.");return A(qe.sessionId),qe.sessionId}finally{M.current=!1}},[]);g.useEffect(()=>{D&&A(D)},[D]),g.useEffect(()=>{u!=null&&u.userId?(Pe.identify(u.userId,{...u.email?{email:u.email}:{}}),u.email&&Pe.alias(u.email,u.userId)):u!=null&&u.email&&Pe.identify(u.email,{email:u.email})},[u==null?void 0:u.userId,u==null?void 0:u.email]),g.useEffect(()=>{if(!u)return;const pe=!!u.demoMode,we=pe?V:null;Pe.register({source:pe?"tryout":"core",demo_mode:pe,...we?{demo_session_id:we}:{}})},[u,V]);const j=g.useCallback(async()=>{var we;y(!0),_(null);let pe=null;try{if(pe=window.open("","_blank"),!pe)throw new Error("Pop-up blocked. Please allow pop-ups and try again.");try{pe.document.open(),pe.document.write(CX),pe.document.close()}catch(it){P1.warn("Failed to render loading state in auth popup:",it)}const Ie=await fetch(`${Uk}/api/auth/google/start`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:"desktop"})}),qe=await Ie.json();if(!Ie.ok||!qe.success||!qe.authUrl||!qe.sessionId||!qe.pollSecret)throw new Error(qe.error||qe.message||"Failed to start Google login");if(pe.closed)throw new Error("Sign-in window was closed before Google login started.");pe.location.href=qe.authUrl;for(let it=0;it<EX;it+=1){if(pe.closed)throw new Error("Sign-in window was closed before authentication completed.");const at=await(await fetch(`${Uk}/api/auth/google/token`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session:qe.sessionId,pollSecret:qe.pollSecret})})).json();if(at.success&&at.token&&((we=at.user)!=null&&we.email)){if(!(await fetch("/api/auth/store",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:at.user.email,token:at.token,refreshToken:at.refreshToken,userId:at.user.id})})).ok)throw new Error("Signed in, but failed to store session locally.");if(pe.close(),window.sessionStorage.setItem(Rp,"1"),(u==null?void 0:u.demoMode)===!0){await H({forceRefresh:!0}),window.location.reload();return}window.location.reload();return}if(at.error&&at.error!=="Pending")throw new Error(at.error||"Google login failed");await new Promise(At=>setTimeout(At,SX))}throw new Error("Authentication timed out. Please try again.")}catch(Ie){pe&&!pe.closed&&pe.close();const qe=Ie instanceof Error?Ie.message:"Failed to start login flow";P1.warn("Hosted login failed:",qe),_(qe),y(!1)}},[u==null?void 0:u.demoMode,H]),Z=(u==null?void 0:u.demoMode)===!0&&((u==null?void 0:u.agentModeAvailable)!==!0||k||v),ee=u!=null&&u.agentModeAvailable!==!0,ie=bX(t),le=g.useCallback(async()=>{E(!0),p(!0);try{await c()}finally{p(!1),E(!1)}},[c,p]);if(g.useEffect(()=>{if(!Y)return;let pe=!1;return H({forceRefresh:!0}).catch(we=>{const Ie=we instanceof Error?we.message:dI;P1.warn("Hosted session bootstrap failed:",Ie),_(Ie),ht.error(Ie)}).finally(()=>{pe||N(!1)}),()=>{pe=!0}},[Y,H]),g.useEffect(()=>{const pe=()=>{const we=window.location.hash;e(we)};return window.addEventListener("hashchange",pe),()=>window.removeEventListener("hashchange",pe)},[]),ie==="design-system")return S.jsx(lX,{});const ue={pathname:window.location.pathname,configLoading:f,hasConfig:u!==null,isRetryingConfig:b};if(xX(ue)){const pe=h||"Could not load Rivet configuration.";return S.jsx("div",{className:"bg-main flex h-screen items-center justify-center px-6",children:S.jsxs("div",{className:"border-divider bg-main w-full max-w-md rounded-lg border p-6 text-center shadow-lg",children:[S.jsx("p",{className:"text-content text-sm font-medium",children:"We could not start Rivet yet."}),S.jsx("p",{className:"text-content-dim mt-2 text-xs",children:pe}),S.jsx("button",{type:"button",className:"border-divider text-content hover:bg-main/80 mt-4 rounded-md border px-3 py-1.5 text-xs",onClick:()=>{le()},children:"Retry"})]})})}if(ee)return S.jsx(fA,{isSigningIn:v,onStartSignIn:()=>{j()},errorMessage:x,displayMode:"full"});const ae=(u==null?void 0:u.agentModeAvailable)===!0&&(u==null?void 0:u.demoMode)!==!0&&i!==null,se=(u==null?void 0:u.agentModeAvailable)===!0&&(u==null?void 0:u.demoMode)!==!0&&n&&!r&&!ae;return S.jsxs(S.Fragment,{children:[S.jsx(RX,{projectPath:u==null?void 0:u.projectPath,activeDemoSessionId:K,showLoginGate:Z,onStartLogin:j,isStartingLogin:v,loginError:x,fullPageHostedLoginProgressMessage:(u==null?void 0:u.demoMode)===!0&&v?"Completing sign-in...":null,holdHostedTryoutPreviewNavigation:G,hostedTryoutPreviewHoldMessage:B,deferInspectorUntilPreviewReady:Q}),S.jsx(x_,{context:"onboarding",isOpen:se,onClose:()=>s(!0)}),S.jsx(x_,{context:"menu",isOpen:ae,highlightProvider:i,onClose:()=>{window.sessionStorage.removeItem(z_),a(null)}})]})},NX="phc_Ntj9tXHbS64XgYxlTfhglRmFivFsfm0AERph4ZlnNH",OX=new wN,LX={session_recording:{maskAllInputs:!1,maskInputOptions:{password:!0},maskTextSelector:null}},DX=()=>S.jsx("div",{style:{display:"flex",height:"100vh",alignItems:"center",justifyContent:"center"},children:S.jsx("p",{style:{fontSize:"14px",color:"#6b7280"},children:"Something went wrong. Please reload the page."})});fD.createRoot(document.getElementById("root")).render(S.jsx(ge.StrictMode,{children:S.jsx(tD,{apiKey:NX,options:{api_host:"https://rivet-proxy.onrender.com/ingest",ui_host:"https://us.posthog.com",person_profiles:"always",capture_exceptions:!0,autocapture:!0,capture_pageview:!0,capture_performance:!0,persistence:"localStorage",...LX,mask_all_text:!1,mask_all_element_attributes:!1,loaded:t=>{t.register({source:"core",rivet_version:"0.14.0",env:"production"})}},children:S.jsx(oD,{fallback:S.jsx(DX,{}),children:S.jsx(bN,{client:OX,children:S.jsx(LW,{defaultShape:"rounded",children:S.jsx(MQ,{defaultLibrary:"lucide",children:S.jsx(MX,{})})})})})})}));
422
+ </html>`,kX="Too many people are trying Rivet right now. Please try again in a few minutes.",dI="Failed to start an isolated demo session.",PX=async t=>{if(t.status===429)return kX;try{const e=await t.json();if(e.error)return e.error;if(e.message)return e.message}catch{}return dI},H_=274,Dm=395,T1=Math.min(Dm,Math.round((H_+Dm)/2*1.1)),Bk="rivet:panelWidth:v2",TX=t=>{if(!(t instanceof HTMLElement))return!1;const e=t.tagName.toLowerCase();return t.isContentEditable||e==="input"||e==="textarea"||e==="select"},RX=({projectPath:t,activeDemoSessionId:e=null,showLoginGate:n=!1,onStartLogin:r,isStartingLogin:s=!1,loginError:i=null,fullPageHostedLoginProgressMessage:a=null,holdHostedTryoutPreviewNavigation:u=!1,hostedTryoutPreviewHoldMessage:c=null,deferInspectorUntilPreviewReady:f=!1})=>{const h=Je(ZT)>0,[p,v]=nP(KT),y=HV(),[x,_]=g.useState(()=>{if(typeof window>"u")return T1;const Y=Number(window.localStorage.getItem(Bk));return Number.isFinite(Y)&&Y>=H_&&Y<=Dm?Y:T1}),[b,E]=g.useState(!1),[k,P]=g.useState(rZ),T=p?x:0,[A,O]=g.useState(p);g.useEffect(()=>{if(!p){O(!1);return}P(Y=>nZ({position:Y,boundsLeftPx:x}))},[p,x]),g.useEffect(()=>{window.localStorage.setItem(Bk,String(x))},[x]),g.useEffect(()=>{if(!p)return;const Y=G=>{G.key==="Escape"&&(TX(G.target)||(G.preventDefault(),v(!1)))};return window.addEventListener("keydown",Y),()=>window.removeEventListener("keydown",Y)},[p,v]);const N=g.useCallback(Y=>{Y.preventDefault(),Y.stopPropagation();const G=Y.clientX,B=x;E(!0);const Q=te=>{const H=Math.min(Dm,Math.max(H_,B+(te.clientX-G)));_(H)},$=()=>{window.removeEventListener("pointermove",Q),window.removeEventListener("pointerup",$),window.removeEventListener("pointercancel",$),E(!1)};window.addEventListener("pointermove",Q),window.addEventListener("pointerup",$),window.addEventListener("pointercancel",$)},[x]),R=g.useCallback(()=>_(T1),[]),M=gZ(),L=Je(pf);_Z({enabled:!L});const D=M.isProcessing?"Completing authentication...":a,V=D!==null,K=st(e5);return g.useEffect(()=>{K(t??null)},[t,K]),g.useEffect(()=>{n&&(document.body.style.cursor="auto")},[n]),S.jsxs(sl.div,{className:"relative flex h-screen overflow-hidden",initial:!1,animate:{opacity:1},transition:{duration:.5,ease:"easeOut"},"data-cy":"rivet-app",children:[D!==null&&!n?S.jsx("div",{className:"absolute inset-0 z-50",children:S.jsx(Uq,{message:D})}):null,n?S.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center bg-black/45 backdrop-blur-[2px]",children:S.jsx(fA,{isSigningIn:s||V,onStartSignIn:()=>{r==null||r()},errorMessage:i,displayMode:"modal"})}):null,S.jsxs("div",{className:`relative flex min-w-0 flex-1 flex-col ${n?"pointer-events-none select-none":""}`,children:[S.jsx(yK,{holdHostedTryoutPreviewNavigation:u,isInteractionDisabled:n,activeDemoSessionId:e}),u&&c?S.jsx("div",{className:"bg-main absolute inset-0 z-30 flex items-center justify-center",children:S.jsx("div",{className:"border-divider bg-main-light rounded-lg border p-6 shadow-lg",children:S.jsx(mR,{message:c})})}):null]}),n?null:S.jsx(S.Fragment,{children:!f&&!h?S.jsxs(S.Fragment,{children:[S.jsx("div",{className:"relative order-first h-full flex-shrink-0",style:{width:A?x:0},children:S.jsxs(sl.div,{className:"absolute inset-y-0 left-0 z-30",initial:!1,animate:{x:p?0:-x},transition:y?{duration:0}:{duration:.2,ease:[.22,1,.36,1]},onAnimationComplete:()=>{p&&O(!0)},style:{width:x,willChange:"transform"},children:[S.jsx(NG,{onClose:()=>v(!1)}),S.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize panel",onPointerDown:N,onDoubleClick:R,className:"group/resize absolute inset-y-0 right-0 z-20 flex w-3 cursor-col-resize touch-none justify-end",children:S.jsx("span",{className:`h-full transition-all duration-150 ${b?"w-0.5 bg-content-muted":"w-px bg-divider group-hover/resize:w-0.5 group-hover/resize:bg-content-muted"}`})})]})}),b&&S.jsx("div",{className:"fixed inset-0 z-[100] cursor-col-resize"}),S.jsx(oZ,{isVisible:!0,isPanelOpen:p,isReducedMotion:!!y,position:k,dragBoundsLeftPx:T,onPositionChange:P,onToggle:()=>v(Y=>!Y)})]}):null}),S.jsx(m$,{duration:5e3,richColors:!0,toastOptions:{style:{maxHeight:"150px",overflow:"hidden"}}})]})},z_="rivet_connect_deep_link",AX=()=>{if(typeof window>"u")return null;const t=new URLSearchParams(window.location.search),e=t.get("connect"),n=e??window.sessionStorage.getItem(z_);if(n!=="pinterest"&&n!=="arena")return null;if(window.sessionStorage.setItem(z_,n),e){t.delete("connect");const r=t.toString();window.history.replaceState(null,document.title,window.location.pathname+(r?`?${r}`:"")+window.location.hash)}return n},IX=AX(),MX=()=>{const[t,e]=g.useState(window.location.hash),[n]=g.useState(()=>typeof window<"u"&&window.sessionStorage.getItem(Rp)==="1"),[r,s]=g.useState(!1),[i,a]=g.useState(IX);g.useEffect(()=>{n&&window.sessionStorage.removeItem(Rp)},[n]);const{config:u,refetchConfig:c,loading:f,error:h}=pZ(),p=st(pf),[v,y]=g.useState(!1),[x,_]=g.useState(null),[b,E]=g.useState(!1),[k,P]=g.useState(!1),[T,A]=g.useState(null),[O,N]=g.useState(!1),R=g.useRef(!1),M=g.useRef(!1),L=wX(window.location.pathname),D=(u==null?void 0:u.activeDemoSessionId)??null,V=L??T??D,K=g.useMemo(()=>vX(u==null?void 0:u.demoMode,u==null?void 0:u.agentModeAvailable,V),[u==null?void 0:u.demoMode,u==null?void 0:u.agentModeAvailable,V]),Y=g.useMemo(()=>gX({configLoading:f,hasConfig:u!==null,demoMode:u==null?void 0:u.demoMode,agentModeAvailable:u==null?void 0:u.agentModeAvailable,pathnameDemoSessionId:L,activeDemoSessionId:T,configuredDemoSessionId:D}),[u,f,L,T,D]);g.useLayoutEffect(()=>{if(!Y){N(!1);return}N(!0)},[Y]);const G=O,B=g.useMemo(()=>yX(G),[G]),Q=(u==null?void 0:u.demoMode)===!0&&G,$=g.useRef(null);$.current=V;const te=g.useCallback(async()=>{if(!R.current)return;A(null);const pe=await c();if((pe==null?void 0:pe.demoMode)===!0&&pe.agentModeAvailable!==!0){P(!1);return}(pe==null?void 0:pe.demoMode)===!0&&P(!0)},[c]);g.useEffect(()=>{if((u==null?void 0:u.demoMode)===!0)return fX(()=>{te()})},[u==null?void 0:u.demoMode,te]),g.useEffect(()=>{if(R.current=(u==null?void 0:u.demoMode)===!0,(u==null?void 0:u.demoMode)!==!0)return;const pe=window.fetch.bind(window);return mX({nativeFetch:pe,pageOrigin:window.location.origin,getShouldIntercept:()=>R.current})},[u==null?void 0:u.demoMode]),g.useEffect(()=>{(u==null?void 0:u.agentModeAvailable)===!0&&P(!1)},[u==null?void 0:u.agentModeAvailable]);const H=g.useCallback(async pe=>{const we=$.current;if(!(pe!=null&&pe.forceRefresh)&&we)return we;if(M.current)return"";M.current=!0;try{const Ie=await fetch("/api/demo/session",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(!Ie.ok){const it=await PX(Ie);throw new Error(it)}const qe=await Ie.json();if(!qe.sessionId)throw new Error("Demo session response missing session id.");return A(qe.sessionId),qe.sessionId}finally{M.current=!1}},[]);g.useEffect(()=>{D&&A(D)},[D]),g.useEffect(()=>{u!=null&&u.userId?(Pe.identify(u.userId,{...u.email?{email:u.email}:{}}),u.email&&Pe.alias(u.email,u.userId)):u!=null&&u.email&&Pe.identify(u.email,{email:u.email})},[u==null?void 0:u.userId,u==null?void 0:u.email]),g.useEffect(()=>{if(!u)return;const pe=!!u.demoMode,we=pe?V:null;Pe.register({source:pe?"tryout":"core",demo_mode:pe,...we?{demo_session_id:we}:{}})},[u,V]);const j=g.useCallback(async()=>{var we;y(!0),_(null);let pe=null;try{if(pe=window.open("","_blank"),!pe)throw new Error("Pop-up blocked. Please allow pop-ups and try again.");try{pe.document.open(),pe.document.write(CX),pe.document.close()}catch(it){P1.warn("Failed to render loading state in auth popup:",it)}const Ie=await fetch(`${Uk}/api/auth/google/start`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:"desktop"})}),qe=await Ie.json();if(!Ie.ok||!qe.success||!qe.authUrl||!qe.sessionId||!qe.pollSecret)throw new Error(qe.error||qe.message||"Failed to start Google login");if(pe.closed)throw new Error("Sign-in window was closed before Google login started.");pe.location.href=qe.authUrl;for(let it=0;it<EX;it+=1){if(pe.closed)throw new Error("Sign-in window was closed before authentication completed.");const at=await(await fetch(`${Uk}/api/auth/google/token`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session:qe.sessionId,pollSecret:qe.pollSecret})})).json();if(at.success&&at.token&&((we=at.user)!=null&&we.email)){if(!(await fetch("/api/auth/store",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:at.user.email,token:at.token,refreshToken:at.refreshToken,userId:at.user.id})})).ok)throw new Error("Signed in, but failed to store session locally.");if(pe.close(),window.sessionStorage.setItem(Rp,"1"),(u==null?void 0:u.demoMode)===!0){await H({forceRefresh:!0}),window.location.reload();return}window.location.reload();return}if(at.error&&at.error!=="Pending")throw new Error(at.error||"Google login failed");await new Promise(At=>setTimeout(At,SX))}throw new Error("Authentication timed out. Please try again.")}catch(Ie){pe&&!pe.closed&&pe.close();const qe=Ie instanceof Error?Ie.message:"Failed to start login flow";P1.warn("Hosted login failed:",qe),_(qe),y(!1)}},[u==null?void 0:u.demoMode,H]),Z=(u==null?void 0:u.demoMode)===!0&&((u==null?void 0:u.agentModeAvailable)!==!0||k||v),ee=u!=null&&u.agentModeAvailable!==!0,ie=bX(t),le=g.useCallback(async()=>{E(!0),p(!0);try{await c()}finally{p(!1),E(!1)}},[c,p]);if(g.useEffect(()=>{if(!Y)return;let pe=!1;return H({forceRefresh:!0}).catch(we=>{const Ie=we instanceof Error?we.message:dI;P1.warn("Hosted session bootstrap failed:",Ie),_(Ie),ht.error(Ie)}).finally(()=>{pe||N(!1)}),()=>{pe=!0}},[Y,H]),g.useEffect(()=>{const pe=()=>{const we=window.location.hash;e(we)};return window.addEventListener("hashchange",pe),()=>window.removeEventListener("hashchange",pe)},[]),ie==="design-system")return S.jsx(lX,{});const ue={pathname:window.location.pathname,configLoading:f,hasConfig:u!==null,isRetryingConfig:b};if(xX(ue)){const pe=h||"Could not load Rivet configuration.";return S.jsx("div",{className:"bg-main flex h-screen items-center justify-center px-6",children:S.jsxs("div",{className:"border-divider bg-main w-full max-w-md rounded-lg border p-6 text-center shadow-lg",children:[S.jsx("p",{className:"text-content text-sm font-medium",children:"We could not start Rivet yet."}),S.jsx("p",{className:"text-content-dim mt-2 text-xs",children:pe}),S.jsx("button",{type:"button",className:"border-divider text-content hover:bg-main/80 mt-4 rounded-md border px-3 py-1.5 text-xs",onClick:()=>{le()},children:"Retry"})]})})}if(ee)return S.jsx(fA,{isSigningIn:v,onStartSignIn:()=>{j()},errorMessage:x,displayMode:"full"});const ae=(u==null?void 0:u.agentModeAvailable)===!0&&(u==null?void 0:u.demoMode)!==!0&&i!==null,se=(u==null?void 0:u.agentModeAvailable)===!0&&(u==null?void 0:u.demoMode)!==!0&&n&&!r&&!ae;return S.jsxs(S.Fragment,{children:[S.jsx(RX,{projectPath:u==null?void 0:u.projectPath,activeDemoSessionId:K,showLoginGate:Z,onStartLogin:j,isStartingLogin:v,loginError:x,fullPageHostedLoginProgressMessage:(u==null?void 0:u.demoMode)===!0&&v?"Completing sign-in...":null,holdHostedTryoutPreviewNavigation:G,hostedTryoutPreviewHoldMessage:B,deferInspectorUntilPreviewReady:Q}),S.jsx(x_,{context:"onboarding",isOpen:se,onClose:()=>s(!0)}),S.jsx(x_,{context:"menu",isOpen:ae,highlightProvider:i,onClose:()=>{window.sessionStorage.removeItem(z_),a(null)}})]})},NX="phc_Ntj9tXHbS64XgYxlTfhglRmFivFsfm0AERph4ZlnNH",OX=new wN,LX={session_recording:{maskAllInputs:!1,maskInputOptions:{password:!0},maskTextSelector:null}},DX=()=>S.jsx("div",{style:{display:"flex",height:"100vh",alignItems:"center",justifyContent:"center"},children:S.jsx("p",{style:{fontSize:"14px",color:"#6b7280"},children:"Something went wrong. Please reload the page."})});fD.createRoot(document.getElementById("root")).render(S.jsx(ge.StrictMode,{children:S.jsx(tD,{apiKey:NX,options:{api_host:"https://rivet-proxy.onrender.com/ingest",ui_host:"https://us.posthog.com",person_profiles:"always",capture_exceptions:!0,autocapture:!0,capture_pageview:!0,capture_performance:!0,persistence:"localStorage",...LX,mask_all_text:!1,mask_all_element_attributes:!1,loaded:t=>{t.register({source:"core",rivet_version:"0.14.1",env:"production"})}},children:S.jsx(oD,{fallback:S.jsx(DX,{}),children:S.jsx(bN,{client:OX,children:S.jsx(LW,{defaultShape:"rounded",children:S.jsx(MQ,{defaultLibrary:"lucide",children:S.jsx(MX,{})})})})})})}));
@@ -7,7 +7,7 @@
7
7
  <link rel="icon" type="image/x-icon" href="/favicon.ico" />
8
8
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
9
9
  <title>Rivet - The visual editor for design</title>
10
- <script type="module" crossorigin src="/assets/main-DJjaeK_0.js"></script>
10
+ <script type="module" crossorigin src="/assets/main-C-8Mff7k.js"></script>
11
11
  <link rel="stylesheet" crossorigin href="/assets/main-CobdEReL.css">
12
12
  </head>
13
13
  <body>