@coreframe/vite 0.2.52 → 0.2.53
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.
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{mkdir as e,writeFile as t}from"node:fs/promises";import n from"node:path";import{readProjectConfig as r}from"@coreframe/config";import{randomUUID as i}from"node:crypto";import{managedDevEnv as a,managedDevEvents as o,managedDevFlutterRestartFileEnv as s,managedDevOperationPhases as c,managedDevSupervisorRecoveryErrorPrefix as l}from"@coreframe/dev-contracts/managed-dev";import{startManagedDevSession as u}from"@coreframe/dev/managed-dev";import{DevDiagnostics as d,connectDevSupervisor as f,connectExistingDevSupervisor as p,devDiagnosticError as m,devDiagnosticPhase as ee}from"@coreframe/dev/supervisor";function te(e){let t,n,r=new Map,i=e=>e<1e3?`${Math.max(0,Math.round(e))}ms`:`${Math.round(e/1e3)}s`;return a=>{let o=a.operation;if(!o)return;let s=`[managed-dev ${o.id.slice(0,8)}]`;t!==o.id&&(t=o.id,n=void 0,r.clear(),e(`${s} ${o.kind===`merge`?`Merge`:o.kind===`fast-forward`?`Sync`:`Rebase`}: ${o.source} ${o.target.slice(0,12)}`));let l=`${o.state}:${o.phase}:${o.cancellationDeferred}`;l!==n&&(n=l,e(`${s} ${o.state===`cancelled`?o.published?`Changes applied; remaining work cancelled`:`Update cancelled; prepared changes were not applied`:o.state===`failed`?`Update failed; review recovery actions in the overlay`:o.state===`interrupted`?`Update interrupted; review recovered state before retrying`:o.state===`succeeded`?`Update ready`:o.state===`cancelling`?o.cancellationDeferred?`Cancellation requested; finishing publication before stopping`:`Cancellation requested; waiting for processes and cleanup`:c[o.phase]}${o.finishedAt?` · ${i(o.finishedAt-o.startedAt)}`:``}`));let u=(t,n,i)=>{r.get(t)!==n&&(r.set(t,n),e(`${s} ${i}`))},d=o.progress;if(d){let e=d.current?.shortCommit,t=o.kind===`merge`?`${d.files?.length??0} conflicted files`:`${d.applied}/${d.total??`?`} commits applied · ${d.skipped} skipped${d.remaining===void 0?``:` · ${d.remaining} remaining`}${e?` · current ${e}`:``}${d.files?.length?` · ${d.files.length} conflicted files`:``}`;u(`progress`,t,t)}let f=new Set([`progress`,...o.steps.map(e=>e.id),...o.turns.map(e=>e.id),...o.activities.map(e=>e.id)]);for(let e of r.keys())f.has(e)||r.delete(e);for(let e of o.steps){let t=`${e.status}:${e.pulse??0}`,n=i((e.finishedAt??o.updatedAt)-e.startedAt);u(e.id,t,`${e.pulse&&e.status===`running`?`Still running: `:``}${e.label} ${e.status===`running`?`started`:e.status} · ${n}`)}for(let[e,t]of o.turns.entries())u(t.id,t.status,`AI ${t.stage===`verify`?`verification`:`resolution`} turn ${e+1} ${t.status}`);for(let e of o.activities){let t=e.command?.match(/^(?:\S*\/)?(?:bash|zsh|sh)\s+-(?:lc|c|cl)\s+(['"])([\s\S]*)\1$/)?.[2]??e.command,n=t&&/^(?:pnpm|npm|yarn|bun) (?:run )?(?:test|typecheck|build|lint|format|codegen|install(?: --frozen-lockfile)?|db (?:ensure|migrate-local|setup))$/.test(t)?t:void 0;u(e.id,e.status,`${n??e.label} ${e.status}${e.finishedAt?` · ${i(e.finishedAt-e.startedAt)}`:``}`)}}}const h=Symbol.for(`@coreframe/vite/managed-dev-session-states`),g=(()=>{let e=globalThis;return e[h]??=new Map})(),ne=[100,500,2e3];function _({connectSupervisor:c,env:h=process.env,recoverSupervisor:g,startSession:_=u}={}){let y=h[a]===`1`,ae=c??p,oe=g??c??f,x,S,C,w,T,E,D,O,k,A=!1,j=!1,M=!1,N=!1,P=!1,F,I=new Map,L=new WeakMap,R=new Set,z=new Map,B=(e,t)=>{let n=L.get(e);return n||(n=i(),L.set(e,n)),`${n}:${t}`},V=(e,t)=>{let n=t?.clientId;typeof n==`string`&&/^[a-zA-Z0-9_-]{1,128}$/.test(n)&&L.set(e,n)},H=(e,t,n)=>{try{e.send(t,n)}catch(e){F?.event(`transport.delivery-failed`,{event:t,...m(e)},`warn`)}},U=(e,t)=>{z.set(B(e,t.requestId),t),z.size>100&&z.delete(z.keys().next().value),F?.event(`action.result-sent`,{operationId:t.requestId,failed:!!t.error,sessionId:t.status?.trace?.sessionId,revision:t.status?.trace?.revision,busy:!!t.status?.busy}),H(e,o.actionResult,t)},W={mode:`waiting`,warnings:[]},G=()=>{let e=S;return w?.(),w=void 0,T?.(),T=void 0,S=void 0,C=void 0,e},K=()=>k??=(async()=>{P=!0,await D,await O,N=!1;let e=x,t=S,n=C;x=void 0,G(),e&&E&&await v(E,e),t&&(n&&await t.release(n).catch(()=>void 0),t.close()),F?.event(`vite.detached`),F?.close()})();return{name:`coreframe:managed-dev`,apply:`serve`,config(){return{define:{"import.meta.env.COREFRAME_MANAGED_DEV":JSON.stringify(y)}}},configureServer(a){if(!y)return;let c=a.config.root;F=new d(c,`vite`),F.event(`vite.attached`),E=c;let u=!1,f=!1,p=()=>x?.getStatus()??W,g,k=te(e=>a.config.logger.info?.(e)),L=(e,t)=>{k(e);let n=JSON.stringify([e.trace,e.mode,e.busy]);n!==g&&(g=n,F?.event(`status.sent`,{sessionId:e.trace?.sessionId,revision:e.trace?.revision,operationId:e.trace?.operationId,mode:e.mode,busy:!!e.busy,delivery:t},`debug`))},q=()=>{if(!P){let e=p();L(e,`broadcast`),H(a.ws,o.status,{status:e})}},J=()=>{if(f||P)return;f=!0,F?.event(`vite.restart-queued`);let e=p().operation;a.config.logger.info?.(`[managed-dev ${e?.id.slice(0,8)??`restart`}] Restarting Vite`),queueMicrotask(()=>{f=!1,Promise.resolve(a.restart()).catch(e=>{F?.event(`vite.restart-failed`,m(e),`error`);let t=e instanceof Error?e.message:String(e);a.config.logger.error(`Coreframe managed development restart failed: ${t}`,{error:e instanceof Error?e:void 0})})})},se=(e,t)=>{if(P||S!==e||!N||t.event!==`managed-dev`)return;if(t.kind===`status`){W=t.status,q();return}if(t.kind===`restart`){u=!0,I.size===0&&(u=!1,J());return}let n=I.get(t.requestId);!n||!t.codex||typeof t.codex!=`object`||H(n.client,o.codex,{...t.codex,requestId:n.requestId})},Y=async e=>{F?.event(`supervisor.connecting`,{supervisorId:e.state?.supervisorId,supervisorPid:e.state?.pid});let t,n=!1,r=e.onEvent(t=>se(e,t)),i=e.onClose(t=>{n=!0,!P&&S===e&&j&&!M&&!O&&(N=!1,X(t))});S=e,w=r,T=i;try{await e.subscribe([`managed-dev`]);let r=await e.acquireManagedDev({env:h});if(F?.event(`supervisor.connected`,{supervisorId:e.state?.supervisorId,leaseId:r.leaseId}),t=r.leaseId,n||P||S!==e)throw Error(`The development supervisor disconnected while managed development was attaching.`);C=r.leaseId,W=r.status,N=!0,j=!0,q()}catch(n){throw S===e?G():(r(),i()),t&&await e.release(t).catch(()=>void 0),e.close(),n}};function X(e,t=!1){if(P||!j)return Promise.resolve();if(O)return O;N=!1,F?.event(`supervisor.recovery-started`,{explicit:t,...m(e)},`warn`),A=!1,G()?.close(),W={message:t?`Managed development supervisor retrying connection.`:`Managed development supervisor disconnected. Reconnecting…`,mode:`waiting`,warnings:[]},q();let n=(async()=>{let t=e;for(let e=0;e<4;e+=1){if(P||(e>0&&await new Promise(t=>setTimeout(t,ne[e-1]??2e3)),P))return;try{let e=await oe({cwd:c,env:h,requiredResources:[`managed-dev`]});if(!e)throw Error(`No managed development supervisor is available.`);if(P){e.close();return}await Y(e),A=!1;return}catch(n){F?.event(`supervisor.recovery-failed`,{attempt:e+1,...m(n)},`warn`),t=n;let r=b(n);a.config.logger.error(`Coreframe managed development supervisor recovery attempt ${e+1} failed: ${r}`,{error:n instanceof Error?n:void 0}),e+1<4&&(W={message:`Managed development supervisor recovery is retrying (${e+2}/4).`,mode:`waiting`,warnings:[]},q())}}if(P)return;let n=b(t),r=`${l}4 attempts: ${n} Retry to reconnect managed development.`;A=!0,W={message:r,mode:`error`,warnings:[r]},a.config.logger.error(`Coreframe managed development supervisor recovery failed: ${n}`,{error:t instanceof Error?t:void 0}),q()})();return O=n,n.then(()=>{O===n&&(O=void 0)},()=>{O===n&&(O=void 0)}),n}let Z=(e,t)=>{j&&S===e&&ie(t)&&(N=!1,X(t))},Q=async(e,t)=>{V(t,e);let n=e?.requestIds;if(Array.isArray(n))for(let e of n.slice(0,100)){let n=typeof e==`string`?z.get(B(t,e)):void 0;n?(F?.event(`action.result-replayed`,{operationId:n.requestId},`debug`),H(t,o.actionResult,n)):typeof e==`string`&&!R.has(B(t,e))&&U(t,{requestId:e,errorCode:`UNKNOWN_REQUEST`,error:`The server has no result for this request. Check the current status before trying again.`})}let r=S;if(r&&N)try{W=(await r.managedDevStatus()).status}catch(e){let t=e instanceof Error?e.message:String(e);a.config.logger.error(`Coreframe managed development status failed: ${t}`,{error:e instanceof Error?e:void 0}),Z(r,e)}let i=p();L(i,`response`),H(t,o.status,{status:i})},$=e=>{if(!e||typeof e!=`object`)return;let t=e;if(![`status-received`,`action-result-received`,`connected`,`disconnected`].includes(t.type))return;let n=e=>typeof e==`string`&&/^[a-zA-Z0-9-]{1,160}$/.test(e)?e:void 0;F?.event(`overlay.${t.type}`,{operationId:n(t.requestId),sessionId:n(t.sessionId),revision:Number.isSafeInteger(t.revision)&&t.revision>=0?t.revision:void 0,busy:typeof t.busy==`boolean`?t.busy:void 0,pending:typeof t.pending==`boolean`?t.pending:void 0},`debug`)},ce=async(e,t)=>{if(e.action.type===`retry-supervisor`){try{if(!j||!A)throw Error(`Managed development supervisor recovery is not available.`);await X(void 0,!0);let n=p();if(A)throw Error(n.message??`Managed development supervisor recovery failed.`);U(t,{requestId:e.requestId,status:n})}catch(n){let r=b(n);a.config.logger.error(`Coreframe managed development action failed: ${r}`,{error:n instanceof Error?n:void 0}),U(t,{error:r,requestId:e.requestId,status:p()})}return}let n;try{if(!N)throw Error(`Managed development is still initializing.`);let n=S;if(n){let r=i();I.set(r,{client:t,requestId:e.requestId});try{let i=await n.managedDevAction({action:e.action,requestId:r,operationId:e.requestId,requestKey:B(t,e.requestId)});i.status&&(W=i.status),U(t,{...i,requestId:e.requestId}),!i.error&&u&&(u=!1,J())}catch(e){throw Z(n,e),e}finally{I.delete(r)}return}let r=x;if(!r)throw Error(`Managed development is still initializing.`);let s=await r.action(e.action,{operationId:e.requestId,requestKey:B(t,e.requestId),onCodexEvent:n=>H(t,o.codex,{...n,requestId:e.requestId})});U(t,{requestId:e.requestId,...s}),u&&(u=!1,queueMicrotask(()=>{K().then(()=>a.restart()).catch(e=>{let t=e instanceof Error?e.message:String(e);a.config.logger.error(`Coreframe managed development restart failed: ${t}`,{error:e instanceof Error?e:void 0})})}));return}catch(e){n=e}let r=n instanceof Error?n.message:String(n);a.config.logger.error(`Coreframe managed development action failed: ${r}`,{error:n instanceof Error?n:void 0}),U(t,{error:r,requestId:e.requestId,status:p()})},le=async(e,t)=>{V(t,e);let n=B(t,e.requestId);if(R.has(n))return;let r=z.get(n);if(r){H(t,o.actionResult,r);return}R.add(n);try{await F.run({operationId:e.requestId,actionType:e.action.type},()=>ee(`vite.action`,()=>ce(e,t)))}finally{R.delete(n)}};a.ws.on(o.statusRequest,Q),a.ws.on(o.action,le),a.ws.on(o.diagnostic,$),D=(async()=>{let o,l;try{if(M=!0,o=await ae({cwd:c,env:h,requiredResources:[`managed-dev`]}),o){if(P){o.close();return}await Y(o);return}let d=await r({cwd:c});if(P)return;if(l=await _({config:d,cwd:c,env:h,onRestart:()=>{u=!0},onFlutterRestart:async()=>{let r=h[s];if(r)try{await e(n.dirname(r),{recursive:!0}),await t(r,`${i()}\n`,{mode:384})}catch(e){let t=e instanceof Error?e.message:String(e);a.config.logger.error(`Coreframe Flutter restart request failed: ${t}`,{error:e instanceof Error?e:void 0})}},onStatusChange:e=>{W=e,q()}}),x=l,W=l.getStatus(),P){x=void 0,await l.close();return}if(await re(c,l),P){x=void 0,await v(c,l);return}N=!0}catch(e){if(F?.event(`vite.initialization-failed`,m(e),`error`),o&&S===o&&(G(),o.close()),x===l&&(x=void 0),!P){let t=e instanceof Error?e.message:String(e);W={message:t,mode:`error`,warnings:[t]},a.config.logger.error(`Coreframe managed development initialization failed: ${t}`,{error:e instanceof Error?e:void 0}),q()}}finally{M=!1}})(),a.httpServer?.once(`close`,()=>{a.ws.off(o.statusRequest,Q),a.ws.off(o.action,le),a.ws.off(o.diagnostic,$),K()})},async closeBundle(){await K()}}}async function re(e,t){await y(e,async e=>{let n=e.session;e.session=void 0,await n?.close();try{await t.activate(),e.session=t}catch(e){throw await t.close(),e}})}async function v(e,t){await y(e,async e=>{e.session===t&&(e.session=void 0),await t.close()})}async function y(e,t){let n=g.get(e);n||(n={transition:Promise.resolve()},g.set(e,n));let r=n.transition,i;n.transition=new Promise(e=>{i=()=>e()}),await r;try{await t(n)}finally{i()}}function b(e){return e instanceof Error?e.message:String(e)}function ie(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.retryable===!0||t.code===`LEASE_EXPIRED`||t.code===`SUPERVISOR_STOPPING`}export{_ as t};
|
|
@@ -1,6 +1,37 @@
|
|
|
1
|
+
import { ManagedDevAction, ManagedDevCodexMessage, ManagedDevCodexOptions, ManagedDevRebasedCommit, ManagedDevRecoveryAction, ManagedDevStatus } from "@coreframe/dev-contracts/managed-dev";
|
|
1
2
|
import { ReactNode } from "react";
|
|
2
3
|
|
|
3
4
|
//#region overlay/managed-dev-overlay.d.ts
|
|
5
|
+
type ActionSuccess = {
|
|
6
|
+
heading: string;
|
|
7
|
+
message: string;
|
|
8
|
+
preserveDuringStatus?: boolean;
|
|
9
|
+
};
|
|
10
|
+
type ManagedDevOverlayAction = ManagedDevAction | ManagedDevRecoveryAction;
|
|
11
|
+
type CodexState = {
|
|
12
|
+
commits: ManagedDevRebasedCommit[];
|
|
13
|
+
messages: ManagedDevCodexMessage[];
|
|
14
|
+
phase: "running" | "complete" | "error";
|
|
15
|
+
requestId: string;
|
|
16
|
+
stage: "resolve" | "verify";
|
|
17
|
+
totalCommits?: number;
|
|
18
|
+
};
|
|
19
|
+
type ManagedDevOverlayDebugScenario = {
|
|
20
|
+
pendingAction?: ManagedDevOverlayAction;
|
|
21
|
+
connected?: boolean;
|
|
22
|
+
controls?: {
|
|
23
|
+
pending?: boolean;
|
|
24
|
+
error?: string;
|
|
25
|
+
success?: string;
|
|
26
|
+
};
|
|
27
|
+
codex?: CodexState;
|
|
28
|
+
description: string;
|
|
29
|
+
error?: string;
|
|
30
|
+
id: string;
|
|
31
|
+
label: string;
|
|
32
|
+
status: ManagedDevStatus;
|
|
33
|
+
success?: ActionSuccess;
|
|
34
|
+
};
|
|
4
35
|
type ManagedDevOverlayIndicatorProps = {
|
|
5
36
|
color?: string;
|
|
6
37
|
paused?: boolean;
|
|
@@ -20,6 +51,31 @@ declare function ManagedDevOverlay({
|
|
|
20
51
|
indicator,
|
|
21
52
|
rightOffset
|
|
22
53
|
}: ManagedDevOverlayProps): import("react").JSX.Element;
|
|
54
|
+
type ManagedDevOverlayDebugSnapshot = {
|
|
55
|
+
available: boolean;
|
|
56
|
+
scenarioId?: string;
|
|
57
|
+
status?: ManagedDevStatus;
|
|
58
|
+
codex?: CodexState;
|
|
59
|
+
error?: string;
|
|
60
|
+
success?: ActionSuccess;
|
|
61
|
+
errorsDismissed: boolean;
|
|
62
|
+
codexOptions: ManagedDevCodexOptions;
|
|
63
|
+
controlSuccess?: string;
|
|
64
|
+
pendingAction?: ManagedDevOverlayAction;
|
|
65
|
+
controls?: ManagedDevOverlayDebugScenario["controls"];
|
|
66
|
+
};
|
|
67
|
+
declare function ManagedDevOverlayDebug({
|
|
68
|
+
scenario: suppliedScenario,
|
|
69
|
+
onSnapshot,
|
|
70
|
+
onAction,
|
|
71
|
+
bottomOffset,
|
|
72
|
+
indicator,
|
|
73
|
+
rightOffset
|
|
74
|
+
}: Pick<ManagedDevOverlayProps, "bottomOffset" | "indicator" | "rightOffset"> & {
|
|
75
|
+
scenario?: ManagedDevOverlayDebugScenario;
|
|
76
|
+
onSnapshot?(snapshot: ManagedDevOverlayDebugSnapshot): void;
|
|
77
|
+
onAction?(action: ManagedDevOverlayAction): void;
|
|
78
|
+
}): import("react").JSX.Element;
|
|
23
79
|
declare function ManagedDevOverlayIndicator({
|
|
24
80
|
color,
|
|
25
81
|
paused,
|
|
@@ -27,4 +83,4 @@ declare function ManagedDevOverlayIndicator({
|
|
|
27
83
|
warningColor
|
|
28
84
|
}: ManagedDevOverlayIndicatorProps): import("react").JSX.Element;
|
|
29
85
|
//#endregion
|
|
30
|
-
export { ManagedDevOverlay, ManagedDevOverlayIndicator, ManagedDevOverlayIndicatorProps, ManagedDevOverlayProps, toggleManagedDevOverlay };
|
|
86
|
+
export { ManagedDevOverlay, ManagedDevOverlayDebug, ManagedDevOverlayDebugScenario, ManagedDevOverlayDebugSnapshot, ManagedDevOverlayIndicator, ManagedDevOverlayIndicatorProps, ManagedDevOverlayProps, toggleManagedDevOverlay };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{SpinnerInline as e}from"@agilek/cli-loaders";import{developmentControlsEvents as t}from"@coreframe/dev-contracts/development-controls";import{
|
|
1
|
+
import{SpinnerInline as e}from"@agilek/cli-loaders";import{developmentControlsEvents as t}from"@coreframe/dev-contracts/development-controls";import{isManagedDevOperationActive as n,managedDevCodexEfforts as r,managedDevCodexModels as i,managedDevEvents as a,managedDevOperationPhases as o,managedDevSupervisorRecoveryErrorPrefix as s,managedDevSupervisorRecoveryPrefix as c}from"@coreframe/dev-contracts/managed-dev";import{cloneElement as l,createContext as u,createElement as d,forwardRef as f,isValidElement as p,useCallback as m,useContext as h,useEffect as g,useId as _,useLayoutEffect as v,useRef as y,useState as b,useSyncExternalStore as x}from"react";import{createPortal as S}from"react-dom";import{Fragment as C,jsx as w,jsxs as T}from"react/jsx-runtime";const E=()=>{if(typeof document>`u`)return;let e=document.querySelector(`meta[name="csp-nonce"]`);if(e?.content)return e.content;let t=document.querySelector(`script[nonce]`),n=t?.nonce||t?.getAttribute(`nonce`);if(n)return n},D=(e,t,n)=>{if(typeof document>`u`)return null;let r=`isolet-style-${e}`,i=typeof CSS<`u`&&CSS.escape?CSS.escape(r):r,a=`getElementById`in n?n.getElementById(r):n.querySelector(`#${i}`);if(a)return a.textContent=t,a;let o=document.createElement(`style`);o.id=r;let s=E();return s&&o.setAttribute(`nonce`,s),o.textContent=t,n.appendChild(o),o},O=`data-isolet`,k=(e,t,n={})=>{if(typeof document>`u`)return{host:null,shadowRoot:null,container:t,target:t};let r=n.isolation??`shadow-dom`;if(r===`none`){let r=`[${O}="${e}"]`,i=t.querySelector(r);if(i)return{host:i,shadowRoot:null,container:i,target:t};let a=document.createElement(`div`);if(a.setAttribute(O,e),n.hostAttributes)for(let[e,t]of Object.entries(n.hostAttributes))a.setAttribute(e,t);return A(a,n),n.css&&D(e,n.css,t),t.appendChild(a),{host:a,shadowRoot:null,container:a,target:t}}let i=`[${O}="${e}"]`,a=t.querySelector(i);if(a){if(r===`shadow-dom`&&a.shadowRoot){let e=a.shadowRoot.querySelector(`[${O}-root]`);if(e)return{host:a,shadowRoot:a.shadowRoot,container:e,target:t}}else if(r===`scoped`)return{host:a,shadowRoot:null,container:a,target:t}}let o=document.createElement(`div`);if(o.setAttribute(O,e),n.hostAttributes)for(let[e,t]of Object.entries(n.hostAttributes))o.setAttribute(e,t);if(r===`shadow-dom`){o.style.all=`initial`;let r=o.attachShadow({mode:n.shadowMode??`open`});n.css&&D(e,n.css,r);let i=document.createElement(`div`);return i.setAttribute(`${O}-root`,``),r.appendChild(i),A(o,n),t.appendChild(o),{host:o,shadowRoot:r,container:i,target:t}}return A(o,n),n.css&&D(e,n.css,t),t.appendChild(o),{host:o,shadowRoot:null,container:o,target:t}},A=(e,t)=>{if(t.hostStyles)for(let[n,r]of Object.entries(t.hostStyles))r==null||typeof r==`function`||e.style.setProperty(n.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`),String(r));t.zIndex!=null&&(e.style.zIndex=String(t.zIndex))},j=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),M=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),N=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),P=e=>{
|
|
2
2
|
/**
|
|
3
3
|
* @license lucide-react v1.24.0 - ISC
|
|
4
4
|
*
|
|
@@ -23,21 +23,21 @@ import{SpinnerInline as e}from"@agilek/cli-loaders";import{developmentControlsEv
|
|
|
23
23
|
* This source code is licensed under the ISC license.
|
|
24
24
|
* See the LICENSE file in the root directory of this source tree.
|
|
25
25
|
*/
|
|
26
|
-
let t=
|
|
26
|
+
let t=N(e);return t.charAt(0).toUpperCase()+t.slice(1)};
|
|
27
27
|
/**
|
|
28
28
|
* @license lucide-react v1.24.0 - ISC
|
|
29
29
|
*
|
|
30
30
|
* This source code is licensed under the ISC license.
|
|
31
31
|
* See the LICENSE file in the root directory of this source tree.
|
|
32
32
|
*/
|
|
33
|
-
var
|
|
33
|
+
var F={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`};
|
|
34
34
|
/**
|
|
35
35
|
* @license lucide-react v1.24.0 - ISC
|
|
36
36
|
*
|
|
37
37
|
* This source code is licensed under the ISC license.
|
|
38
38
|
* See the LICENSE file in the root directory of this source tree.
|
|
39
39
|
*/
|
|
40
|
-
const
|
|
40
|
+
const ee=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},I=u({}),te=()=>h(I),ne=f(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{
|
|
41
41
|
/**
|
|
42
42
|
* @license lucide-react v1.24.0 - ISC
|
|
43
43
|
*
|
|
@@ -50,14 +50,14 @@ const N=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)ret
|
|
|
50
50
|
* This source code is licensed under the ISC license.
|
|
51
51
|
* See the LICENSE file in the root directory of this source tree.
|
|
52
52
|
*/
|
|
53
|
-
let{size:
|
|
53
|
+
let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:f=!1,color:p=`currentColor`,className:m=``}=te()??{},h=r??f?Number(n??u)*24/Number(t??l):n??u;return d(`svg`,{ref:c,...F,width:t??l??F.width,height:t??l??F.height,stroke:e??p,strokeWidth:h,className:j(`lucide`,m,i),...!a&&!ee(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>d(e,t)),...Array.isArray(a)?a:[a]])}),L=(e,t)=>{
|
|
54
54
|
/**
|
|
55
55
|
* @license lucide-react v1.24.0 - ISC
|
|
56
56
|
*
|
|
57
57
|
* This source code is licensed under the ISC license.
|
|
58
58
|
* See the LICENSE file in the root directory of this source tree.
|
|
59
59
|
*/
|
|
60
|
-
let n=
|
|
60
|
+
let n=f(({className:n,...r},i)=>d(ne,{ref:i,iconNode:t,className:j(`lucide-${M(P(e))}`,`lucide-${e}`,n),...r}));return n.displayName=P(e),n},re=L(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),ie=L(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]),R=L(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),ae=L(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),oe=L(`circle-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.35 2.69A10 10 0 0 1 21.3 15.65`,key:`1pfsoa`}],[`path`,{d:`M19.08 19.08A10 10 0 1 1 4.92 4.92`,key:`1ablyi`}]]),se=L(`circle-pause`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`10`,x2:`10`,y1:`15`,y2:`9`,key:`c1nkhi`}],[`line`,{x1:`14`,x2:`14`,y1:`15`,y2:`9`,key:`h65svq`}]]),ce=L(`cloud-download`,[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]]),le=L(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),ue=L(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),de=L(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),fe=L(`git-commit-horizontal`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`line`,{x1:`3`,x2:`9`,y1:`12`,y2:`12`,key:`1dyftd`}],[`line`,{x1:`15`,x2:`21`,y1:`12`,y2:`12`,key:`oup4p8`}]]),pe=L(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),me=L(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),he=L(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),z=L(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),ge=L(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),_e=L(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),ve=L(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),ye=L(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]])
|
|
61
61
|
/**
|
|
62
62
|
* @license lucide-react v1.24.0 - ISC
|
|
63
63
|
*
|
|
@@ -166,12 +166,18 @@ let n=u(({className:n,...r},i)=>l(F,{ref:i,iconNode:t,className:O(`lucide-${k(j(
|
|
|
166
166
|
* This source code is licensed under the ISC license.
|
|
167
167
|
* See the LICENSE file in the root directory of this source tree.
|
|
168
168
|
*/
|
|
169
|
-
;function pe(){return import.meta.hot}const U={connect:`vite:ws:connect`,disconnect:`vite:ws:disconnect`};function me(){return import.meta.hot}var W={actionError:`actionError`,actions:`actions`,actionSuccess:`actionSuccess`,activityCommand:`activityCommand`,activityHeading:`activityHeading`,activityList:`activityList`,activityMeta:`activityMeta`,activityOutput:`activityOutput`,activityRow:`activityRow`,activityStatus:`activityStatus`,activitySummary:`activitySummary`,button:`button`,"button-spin":`button-spin`,buttonContainer:`buttonContainer`,buttonSpinner:`buttonSpinner`,checkbox:`checkbox`,checkCommand:`checkCommand`,checkFailure:`checkFailure`,checkGuidance:`checkGuidance`,codexHistoryList:`codexHistoryList`,codexHistorySummary:`codexHistorySummary`,codexMessage:`codexMessage`,codexMessageAge:`codexMessageAge`,codexMessageAgent:`codexMessageAgent`,codexMessageHeader:`codexMessageHeader`,codexMessageLabel:`codexMessageLabel`,codexMessageText:`codexMessageText`,codexMessageThought:`codexMessageThought`,codexMessageUser:`codexMessageUser`,codexOption:`codexOption`,codexOptionLabel:`codexOptionLabel`,codexOptions:`codexOptions`,codexOptionSelect:`codexOptionSelect`,codexOutput:`codexOutput`,codexTranscript:`codexTranscript`,codexWaiting:`codexWaiting`,codexWorking:`codexWorking`,codexWorkingSpinner:`codexWorkingSpinner`,content:`content`,debugFooter:`debugFooter`,developmentControls:`developmentControls`,developmentControlsDropdown:`developmentControlsDropdown`,dialog:`dialog`,disabledTooltip:`disabledTooltip`,drawerBody:`drawerBody`,errorIcon:`errorIcon`,errorMessage:`errorMessage`,filePath:`filePath`,files:`files`,header:`header`,headerActions:`headerActions`,iconButton:`iconButton`,iconOnly:`iconOnly`,indicatorButton:`indicatorButton`,indicatorDot:`indicatorDot`,message:`message`,paragraph:`paragraph`,pendingCommits:`pendingCommits`,primary:`primary`,radiate:`radiate`,rebaseProgress:`rebaseProgress`,rebaseProgressFill:`rebaseProgressFill`,rebaseProgressLabel:`rebaseProgressLabel`,rebaseProgressTrack:`rebaseProgressTrack`,scenarioButton:`scenarioButton`,scenarioDescription:`scenarioDescription`,scenarioLabel:`scenarioLabel`,scenarioList:`scenarioList`,section:`section`,sectionDescription:`sectionDescription`,sectionHeading:`sectionHeading`,sectionLink:`sectionLink`,sectionTitle:`sectionTitle`,setupFailure:`setupFailure`,srOnly:`srOnly`,successIcon:`successIcon`,surface:`surface`,title:`title`,titleIcon:`titleIcon`,warning:`warning`};const he=`GPT-6 Luna (High)`,ge={effort:`high`,model:`gpt-6-luna`};let G=!1;const K=new Set,_e=[{description:`A clean managed checkout with no available updates.`,id:`idle`,label:`No updates`,status:{mode:`managed`,warnings:[]}},{description:`Tracked and untracked files awaiting review.`,id:`local-changes`,label:`Review local changes`,status:{draft:{fingerprint:`debug-local-changes`,tracked:!0,untracked:[`src/web/new-feature.tsx`,`src/web/new-feature.style.ts`]},mode:`managed`,warnings:[]}},{description:`Local changes with a proposed Conventional Commit message.`,id:`confirm-commit`,label:`Confirm commit`,status:{draft:{fingerprint:`debug-confirm-commit`,tracked:!0,untracked:[`src/web/new-feature.tsx`]},mode:`managed`,proposal:`feat: add the new feature`,warnings:[]}},{description:`A newer commit is available from the local dev branch.`,id:`dev-update`,label:`Local dev update`,status:{mode:`managed`,target:{commit:`1234567890abcdef`,commits:[{commit:`fedcba0987654321`,shortCommit:`fedcba098765`,subject:`feat: add managed preview foundations`},{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: update the managed preview`}],shortCommit:`1234567890ab`,source:`dev`,subject:`feat: update the managed preview`},warnings:[]}},{description:`A newer upstream main commit is ready to refresh.`,id:`upstream-update`,label:`Upstream update`,status:{mode:`managed`,target:{commit:`abcdef1234567890`,commits:[{commit:`0123456789abcdef`,shortCommit:`0123456789ab`,subject:`chore: refresh shared dependencies`},{commit:`abcdef1234567890`,shortCommit:`abcdef123456`,subject:`fix: update shared project defaults`}],shortCommit:`abcdef123456`,source:`upstream`,subject:`fix: update shared project defaults`},warnings:[]}},{description:`The accepted update is currently being integrated.`,id:`busy`,label:`Busy integration`,status:{busy:`Integrating accepted update`,mode:`managed`,warnings:[]}},{description:`Managed development is paused until the checkout returns to main.`,id:`paused`,label:`Paused checkout`,status:{message:`Managed synchronization is paused until the primary checkout is back on local main.`,mode:`waiting`,warnings:[]}},{description:`Managed development cannot run from the current checkout.`,id:`unavailable`,label:`Unavailable checkout`,status:{message:`Managed development only runs from the primary checkout.`,mode:`unmanaged`,warnings:[]}},{description:`A managed-development warning requiring attention.`,id:`warning`,label:`Warning`,status:{mode:`managed`,warnings:[`The remote update could not be checked. The last known project state is shown.`]}},{description:`Typechecking failed after synchronization.`,id:`failed-check`,label:`Failed check`,status:{checks:{commit:`1234567890abcdef`,commands:[{command:`pnpm typecheck`,failureId:`debug-typecheck-failure`,output:`src/web/feature.tsx(12,4): error TS2322: Type mismatch.`,status:`failed`},{command:`pnpm test`,status:`passed`}],trigger:`synchronization`},mode:`managed`,warnings:[]}},{description:`Dependency installation failed after synchronization.`,id:`dependency-failure`,label:`Dependency failure`,status:{mode:`managed`,setupFailure:{command:`pnpm install --frozen-lockfile`,commit:`1234567890abcdef`,message:`The project was synchronized, but dependency installation failed. Fix the package or lockfile issue, then retry the install.`,output:`ERR_PNPM_OUTDATED_LOCKFILE Cannot install with a frozen lockfile.`,restartRequired:!0,stage:`dependencies`},warnings:[]}},{description:`Database migration failed and can be reset.`,id:`migration-failure`,label:`Database failure`,status:{mode:`managed`,setupFailure:{command:`pnpm db migrate-local`,commit:`1234567890abcdef`,message:`The project was synchronized, but its database migration failed. The previous database was restored.`,output:`Migration 0012_add_project_state failed: duplicate column name.`,restartRequired:!1,stage:`migration`},warnings:[]}},{codex:{commits:[{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: add managed development`}],messages:[{kind:`user`,text:`Resolve the current Git rebase conflicts in src/web/root.tsx.`},{kind:`thought`,text:`Inspecting the conflicting layout changes.`},{kind:`thought`,text:`Preserving the behavior introduced on both branches.`}],phase:`running`,requestId:`debug-codex-running`,stage:`resolve`,totalCommits:4},description:`Codex is resolving conflicts with previous thoughts collapsed.`,id:`codex-running`,label:`Codex reasoning`,status:{busy:`Integrating accepted update`,mode:`managed`,warnings:[]}},{codex:{commits:[{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: add managed development`}],messages:[{kind:`user`,text:`Resolve the current Git rebase conflicts in src/web/root.tsx.`},{kind:`thought`,text:`Preserving the behavior introduced on both branches.`},{author:he,kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}],phase:`complete`,requestId:`debug-codex-message`,stage:`verify`,totalCommits:1},description:`Codex has produced its final message while synchronization finishes.`,id:`codex-message`,label:`Codex response`,status:{busy:`Integrating accepted update`,mode:`managed`,warnings:[]}},{codex:{commits:[],messages:[{kind:`user`,text:`Resolve the current Git merge conflicts in src/web/root.tsx.`},{kind:`thought`,text:`The conflict could not be resolved safely.`}],phase:`error`,requestId:`debug-codex-error`,stage:`resolve`},description:`The Codex-assisted conflict resolution failed.`,error:`Codex could not resolve the merge conflicts.`,id:`codex-error`,label:`Codex failure`,status:{mode:`managed`,warnings:[]}},{description:`A durable Codex completion waiting for acknowledgment.`,id:`codex-finished`,label:`Codex finished`,status:{codexCompletion:{commits:[{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: add managed development`}],finalMessage:`Resolved root.tsx while preserving both the command layer and overlay mounting.`,id:`debug-completion`,messages:[{kind:`user`,text:`Resolve the current Git rebase conflicts in src/web/root.tsx.`},{kind:`thought`,text:`Inspecting the conflicting layout changes.`},{author:he,kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}],totalCommits:1},mode:`managed`,warnings:[]}},{description:`A successful synchronization result before it auto-dismisses.`,id:`success`,label:`Refresh success`,status:{mode:`managed`,warnings:[]},success:{heading:`Refresh complete`,message:`Your project is up to date.`}}],ve=[`codex-running`,`codex-finished`,`codex-message`,`codex-error`,`migration-failure`,`dependency-failure`,`failed-check`,`confirm-commit`,`local-changes`,`upstream-update`,`dev-update`,`busy`,`warning`,`paused`,`unavailable`,`success`,`idle`].map(e=>{let t=_e.find(t=>t.id===e);if(!t)throw Error(`Missing managed dev debug scenario: ${e}`);return t});function ye(){q(!G)}function q(e){if(G!==e){G=e;for(let e of K)e()}}function be({bottomOffset:e,debug:t=!1,indicator:n,rightOffset:r}){return x(t?Ce:xe,{bottomOffset:e,indicator:n,rightOffset:r})}function xe({bottomOffset:e,indicator:t,rightOffset:n}){let{act:r,checkFailure:i,codex:a,codexOptions:o,dismissCheckFailure:c,dismissError:l,dismissSuccess:u,error:f,errorsDismissed:p,hmrReady:h,pendingAction:g,setCodexOptions:_,status:v,success:y}=Qe(),b=Xe();m(()=>{if(!y)return;let e=setTimeout(()=>{u(),q(!1)},1600);return()=>clearTimeout(e)},[u,y]);let S=t??x(Y,{}),C=d(S)&&S.type===Y?s(S,{paused:!v?.target}):S;return x(Se,{bottomOffset:e,ready:h,indicator:h&&v&&$(v,i)?C:null,rightOffset:n,children:x(Ee,{act:r,checkFailure:i,codex:a,codexOptions:o,developmentControls:b,dismissCheckFailure:c,dismissError:l,error:f,errorsDismissed:p,onClose:()=>{v?.codexCompletion&&r({id:v.codexCompletion.id,type:`acknowledge-codex`}),q(!1)},pendingAction:g,setCodexOptions:_,status:v,success:y})})}function Se({bottomOffset:e,children:t,indicator:n,openOnMount:r=!1,ready:i=!0,rightOffset:a}){let[o,s]=_(null),c=v($e,et,tt);m(()=>{r&&q(!0);let e=!0,t=E(`coreframe-managed-dev`,document.body,{css:`@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
|
|
169
|
+
/**
|
|
170
|
+
* @license lucide-react v1.24.0 - ISC
|
|
171
|
+
*
|
|
172
|
+
* This source code is licensed under the ISC license.
|
|
173
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
174
|
+
*/
|
|
175
|
+
;function be(){return import.meta.hot}const B={connect:`vite:ws:connect`,disconnect:`vite:ws:disconnect`};function xe(){return import.meta.hot}const Se=`GPT-6 Luna (High)`,V=[{description:`Nothing actionable: neither the drawer nor its indicator renders.`,id:`idle`,label:`Settled — overlay hidden`,status:{mode:`managed`,warnings:[]}},{description:`A scrollable mix of tracked and untracked files, including renamed and long paths.`,id:`local-changes`,label:`Review local changes`,status:{draft:{fingerprint:`debug-local-changes`,tracked:!0,trackedFiles:[{path:`src/web/app.tsx`,status:` M`},{path:`src/web/old-feature.tsx`,status:` D`},{path:`src/web/components/navigation.tsx`,status:`M `},{path:`src/web/components/search.tsx`,status:`A `},{path:`src/web/features/settings/preferences.tsx`,status:`R `,originalPath:`src/web/settings.tsx`},{path:`src/web/features/projects/components/project-activity-history-panel.tsx`,status:` M`},{path:`src/server/routes/projects.ts`,status:` M`},{path:`src/server/services/notifications.ts`,status:`A `},{path:`src/shared/project-types.ts`,status:` M`},{path:`src/web/components/legacy-sidebar.tsx`,status:` D`}],artifactFiles:[`dist/bundle.js`,`tsconfig.tsbuildinfo`],untracked:[`dist/bundle.js`,`tsconfig.tsbuildinfo`,`src/web/new-feature.tsx`,`src/web/new-feature.style.ts`,`src/web/features/projects/components/project-activity-filter.tsx`,`src/web/features/projects/components/project-activity-empty-state.tsx`,`src/server/services/project-activity.ts`,`src/shared/activity-types.ts`]},mode:`managed`,warnings:[]}},{description:`Local changes with a proposed Conventional Commit message.`,id:`confirm-commit`,label:`Confirm commit`,status:{draft:{fingerprint:`debug-confirm-commit`,tracked:!0,trackedFiles:[{path:`src/web/app.tsx`,status:` M`},{path:`src/web/old-feature.tsx`,status:` D`}],untracked:[`src/web/new-feature.tsx`]},mode:`managed`,proposal:`feat: add the new feature`,warnings:[]}},{description:`A newer commit is available from the local dev branch.`,id:`dev-update`,label:`Local dev update`,status:{mode:`managed`,target:{commit:`1234567890abcdef`,commits:[{commit:`fedcba0987654321`,shortCommit:`fedcba098765`,subject:`feat: add managed preview foundations`},{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: update the managed preview`}],shortCommit:`1234567890ab`,source:`dev`,subject:`feat: update the managed preview`},warnings:[]}},{description:`A newer upstream main commit is ready to refresh.`,id:`upstream-update`,label:`Upstream update`,status:{mode:`managed`,target:{commit:`abcdef1234567890`,commits:[{commit:`0123456789abcdef`,shortCommit:`0123456789ab`,subject:`chore: refresh shared dependencies`},{commit:`abcdef1234567890`,shortCommit:`abcdef123456`,subject:`fix: update shared project defaults`}],shortCommit:`abcdef123456`,source:`upstream`,subject:`fix: update shared project defaults`},warnings:[]}},{description:`The accepted update is currently being integrated.`,id:`busy`,label:`Busy integration`,status:{busy:`Integrating accepted update`,mode:`managed`,warnings:[]}},{description:`Managed development is paused until the checkout returns to main.`,id:`paused`,label:`Paused checkout`,status:{message:`Managed synchronization is paused until the primary checkout is back on local main.`,mode:`waiting`,warnings:[]}},{description:`Managed development cannot run from the current checkout.`,id:`unavailable`,label:`Unavailable checkout`,status:{message:`Managed development only runs from the primary checkout.`,mode:`unmanaged`,warnings:[]}},{description:`A managed-development warning requiring attention.`,id:`warning`,label:`Warning`,status:{mode:`managed`,warnings:[`The remote update could not be checked. The last known project state is shown.`]}},{description:`Typechecking failed after synchronization.`,id:`failed-check`,label:`Failed check`,status:{checks:{commit:`1234567890abcdef`,commands:[{command:`pnpm typecheck`,failureId:`debug-typecheck-failure`,output:`src/web/feature.tsx(12,4): error TS2322: Type mismatch.`,status:`failed`},{command:`pnpm test`,status:`passed`}],trigger:`synchronization`},mode:`managed`,warnings:[]}},{description:`Dependency installation failed after synchronization.`,id:`dependency-failure`,label:`Dependency failure`,status:{mode:`managed`,setupFailure:{command:`pnpm install --frozen-lockfile`,commit:`1234567890abcdef`,message:`The project was synchronized, but dependency installation failed. Fix the package or lockfile issue, then retry the install.`,output:`ERR_PNPM_OUTDATED_LOCKFILE Cannot install with a frozen lockfile.`,restartRequired:!0,stage:`dependencies`},warnings:[]}},{description:`Database migration failed and can be reset.`,id:`migration-failure`,label:`Database failure`,status:{mode:`managed`,setupFailure:{command:`pnpm db migrate-local`,commit:`1234567890abcdef`,message:`The project was synchronized, but its database migration failed. The previous database was restored.`,output:`Migration 0012_add_project_state failed: duplicate column name.`,restartRequired:!1,stage:`migration`},warnings:[]}},{codex:{commits:[{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: add managed development`}],messages:[{kind:`user`,text:`Resolve the current Git rebase conflicts in src/web/root.tsx.`},{kind:`thought`,text:`Inspecting the conflicting layout changes.`},{kind:`thought`,text:`Preserving the behavior introduced on both branches.`}],phase:`running`,requestId:`debug-codex-running`,stage:`resolve`,totalCommits:4},description:`Codex is resolving conflicts with previous thoughts collapsed.`,id:`codex-running`,label:`Codex reasoning`,status:{busy:`Integrating accepted update`,mode:`managed`,warnings:[]}},{codex:{commits:[{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: add managed development`}],messages:[{kind:`user`,text:`Resolve the current Git rebase conflicts in src/web/root.tsx.`},{kind:`thought`,text:`Preserving the behavior introduced on both branches.`},{author:Se,kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}],phase:`complete`,requestId:`debug-codex-message`,stage:`verify`,totalCommits:1},description:`Codex has produced its final message while synchronization finishes.`,id:`codex-message`,label:`Codex response`,status:{busy:`Integrating accepted update`,mode:`managed`,warnings:[]}},{codex:{commits:[],messages:[{kind:`user`,text:`Resolve the current Git merge conflicts in src/web/root.tsx.`},{kind:`thought`,text:`The conflict could not be resolved safely.`}],phase:`error`,requestId:`debug-codex-error`,stage:`resolve`},description:`The Codex-assisted conflict resolution failed.`,error:`Codex could not resolve the merge conflicts.`,id:`codex-error`,label:`Codex failure`,status:{mode:`managed`,warnings:[]}},{description:`A durable Codex completion waiting for acknowledgment.`,id:`codex-finished`,label:`Codex finished`,status:{codexCompletion:{commits:[{commit:`1234567890abcdef`,shortCommit:`1234567890ab`,subject:`feat: add managed development`}],finalMessage:`Resolved root.tsx while preserving both the command layer and overlay mounting.`,id:`debug-completion`,messages:[{kind:`user`,text:`Resolve the current Git rebase conflicts in src/web/root.tsx.`},{kind:`thought`,text:`Inspecting the conflicting layout changes.`},{author:Se,kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}],totalCommits:1},mode:`managed`,warnings:[]}},{description:`A successful synchronization result before it auto-dismisses.`,id:`success`,label:`Refresh success`,status:{mode:`managed`,warnings:[]},success:{heading:`Refresh complete`,message:`Your project is up to date.`}}],H=V.find(e=>e.id===`codex-running`),Ce=V.find(e=>e.id===`upstream-update`).status.target,U={mode:`managed`,warnings:[]},W=Date.now()-12e3;V.push({id:`starting`,label:`Starting supervisor`,description:`Waiting for the first managed status.`,status:{mode:`waiting`,warnings:[]}},{id:`error`,label:`Session failure`,description:`Managed development stopped with an actionable error.`,status:{mode:`error`,message:`Managed development could not acquire its checkout lock.`,warnings:[]}},{id:`pending-rebase`,label:`Rebase awaiting approval`,description:`A partial replay stopped at a conflict; original commits remain pinned.`,status:{...U,pendingRebase:{applied:2,commits:[{commit:`cafebabe12345678`,shortCommit:`cafebabe1234`,subject:`feat: retain local navigation`}],files:[`src/web/root.tsx`],target:Ce}}},{...H,id:`merge-running`,label:`Merge resolution`,description:`AI resolving a merge conflict without a rebase commit count.`,codex:{...H.codex,commits:[],totalCommits:void 0,messages:[{kind:`user`,text:`Resolve the current Git merge conflicts in src/web/root.tsx.`},{kind:`agent`,text:`Preserving navigation changes from both branches.`}]}},{...H,id:`verification`,label:`Verification tools`,description:`Verification with concurrent tools and expandable output.`,codex:{...H.codex,stage:`verify`,messages:[{kind:`user`,text:`Verify the prepared rebase result.`},{kind:`agent`,text:`The conflicts are resolved. Running typecheck and tests.`}]},status:{...U,busy:`Verifying prepared update`,activities:[{id:`typecheck`,label:`Typecheck`,command:`pnpm typecheck`,source:`codex`,stage:`verify`,status:`running`,startedAt:W},{id:`tests`,label:`Tests`,command:`pnpm test`,source:`codex`,stage:`verify`,status:`running`,startedAt:W},{id:`install`,label:`Dependencies`,command:`pnpm install --frozen-lockfile`,source:`supervisor`,stage:`verify`,status:`succeeded`,startedAt:W-4e3,finishedAt:W,output:`Lockfile is up to date`}]}},{id:`activity-failure`,label:`Failed and interrupted tools`,description:`Failed output alongside interrupted and cancelled activities.`,status:{...U,activities:[{id:`check`,label:`Typecheck`,command:`pnpm typecheck`,source:`codex`,status:`failed`,startedAt:W,finishedAt:W+1e3,exitCode:1,output:`src/web/root.tsx: Type mismatch`},{id:`build`,label:`Build`,command:`pnpm build`,source:`codex`,status:`interrupted`,startedAt:W,finishedAt:W+2e3},{id:`test`,label:`Tests`,command:`pnpm test`,source:`supervisor`,status:`cancelled`,startedAt:W,finishedAt:W+2e3}]}},{id:`codegen-failure`,label:`Codegen failure`,description:`Synchronized changes require a codegen retry.`,status:{...U,setupFailure:{command:`pnpm codegen`,commit:Ce.commit,message:`Code generation failed. Fix the configuration and retry.`,output:`Invalid Panda configuration`,restartRequired:!1,stage:`codegen`}}},{id:`checks-running`,label:`Checks in progress`,description:`Post-synchronization checks running and pending.`,status:{...U,checks:{commit:Ce.commit,trigger:`synchronization`,commands:[{command:`pnpm typecheck`,status:`running`},{command:`pnpm test`,status:`pending`}]}}},{id:`checks-passed`,label:`Checks passed`,description:`Both post-synchronization checks passed.`,status:{...U,checks:{commit:Ce.commit,trigger:`synchronization`,commands:[{command:`pnpm typecheck`,status:`passed`},{command:`pnpm test`,status:`passed`}]}}},{id:`supervisor-recovering`,label:`Supervisor reconnecting`,description:`Automatic supervisor recovery is in progress.`,status:{mode:`waiting`,message:`Managed development supervisor is reconnecting.`,warnings:[]}},{id:`supervisor-failed`,label:`Supervisor recovery exhausted`,description:`Automatic recovery failed; manual retry remains available.`,status:{mode:`error`,message:`Managed development supervisor recovery failed after 4 attempts.`,warnings:[]}},{id:`cancelled`,label:`Update cancelled`,description:`Simulated cancellation has settled; no work is running.`,status:{...U,message:`The update integration was cancelled.`}}),V.push({...H,id:`cancelling`,label:`Cancellation requested`,description:`Cancel request pending while the operation is still active.`,pendingAction:{type:`cancel-codex`}},{id:`verification-setup`,label:`Verification setup`,description:`Supervisor preparing isolated verification dependencies before AI starts.`,status:{...U,busy:`Preparing verification`,activities:[{id:`install`,label:`Installing verification dependencies`,command:`pnpm install --frozen-lockfile`,source:`supervisor`,stage:`verify`,status:`running`,startedAt:W}]}},{id:`request-error`,label:`Action request failed`,description:`An action failed while the managed checkout remains available.`,status:U,error:`The working tree changed. Review the current changes before retrying.`},{id:`controls-running`,label:`Vite restart pending`,description:`Development controls waiting for a restart acknowledgment.`,status:U,controls:{pending:!0}},{id:`controls-failure`,label:`Vite restart failed`,description:`Development controls have a recoverable error.`,status:U,controls:{error:`Vite restart failed. Try again.`}},{id:`controls-success`,label:`Vite restart acknowledged`,description:`Development controls report a successful restart request.`,status:U,controls:{success:`Vite restart requested.`}});const we={id:`debug-operation-52e3`,requestIds:[`debug-resolve`],revision:8,sessionId:`debug-session`,source:`upstream`,target:Ce.commit,kind:`rebase`,state:`running`,phase:`resolving`,startedAt:W,updatedAt:Date.now(),cancellation:`available`,published:!1,progress:{applied:1,total:4,skipped:0,remaining:3,current:H.codex.commits[0],files:[`src/web/root.tsx`,`src/web/navigation.tsx`]},turns:[{id:`first-stop`,stage:`resolve`,startedAt:W,finishedAt:W+1e3,status:`complete`,messages:[{kind:`agent`,author:Se,text:`Resolved the first conflict while retaining local navigation.`}]},{id:`second-stop`,stage:`resolve`,startedAt:W+1e3,status:`running`,messages:H.codex.messages}],steps:[{id:`prepare`,label:`Prepare integration`,phase:`preparing`,status:`succeeded`,startedAt:W,finishedAt:W+1e3},{id:`replay`,label:`Replay commits`,phase:`replaying`,status:`failed`,startedAt:W+1e3,finishedAt:W+2e3},{id:`resolve`,label:`AI conflict resolution`,phase:`resolving`,status:`running`,startedAt:W+2e3}],activities:[]},Te=V.find(({id:e})=>e===`verification`),G={...we,phase:`verifying`,progress:{applied:4,skipped:0,total:4,remaining:0},turns:[...we.turns.map(e=>({...e,status:`complete`,finishedAt:W+3e3})),{id:`verify-turn`,stage:`verify`,startedAt:W+3e3,status:`running`,messages:Te.codex.messages}],activities:Te.status.activities};for(let e of[{id:`operation-resolving`,label:`Recoverable rebase`,description:`Server-owned progress, grouped AI turns and cancellation.`,operation:we},{id:`operation-verifying`,label:`Recoverable verification`,description:`Concurrent tools and a Cancel control recover from status alone.`,operation:G},{id:`operation-cancelling`,label:`Waiting for cancellation`,description:`Cancellation requested; cleanup and subprocess exit have not settled.`,operation:{...G,state:`cancelling`,cancellation:`requested`}},{id:`operation-publication-cancel`,label:`Finishing publication before stopping`,description:`A cancellation request waits for coherent Git publication.`,operation:{...we,phase:`publishing`,state:`cancelling`,cancellation:`requested`,cancellationDeferred:!0}},{id:`operation-offline`,label:`Disconnected operation`,description:`The last snapshot stays visible; network actions are disabled.`,connected:!1,operation:G},{id:`operation-interrupted`,label:`Interrupted supervisor`,description:`An interrupted owner leaves a persistent, truthful recovery outcome.`,operation:{...G,phase:`finished`,state:`interrupted`,cancellation:`unavailable`,published:!0,finishedAt:Date.now(),message:`Changes were applied before the supervisor stopped. Review setup and checks before continuing.`,activities:[]}},{id:`operation-ready`,label:`Update complete`,description:`Full operation completion, including setup and checks.`,operation:{...G,phase:`finished`,state:`succeeded`,cancellation:`unavailable`,published:!0,startedAt:Date.now()-12e4,finishedAt:Date.now(),message:`Update complete.`,steps:[...G.steps.map((e,t)=>({...e,startedAt:Date.now()-12e4+t*1e3,status:e.status===`running`?`succeeded`:e.status,finishedAt:e.status===`running`?Date.now()-36e3:Date.now()-119e3+t*1e3})),{id:`setup-complete`,label:`Project setup`,phase:`setup`,status:`succeeded`,startedAt:Date.now()-36e3,finishedAt:Date.now()-24e3},{id:`checks-complete`,label:`Typecheck and tests`,phase:`checks`,status:`succeeded`,startedAt:Date.now()-24e3,finishedAt:Date.now()}],turns:G.turns.map(e=>({...e,status:`complete`,finishedAt:Date.now(),...e.stage===`verify`?{messages:[{kind:`agent`,text:`Update applied. Typecheck and tests passed.`}],finalMessage:`Update applied. Typecheck and tests passed.`}:{}})),activities:[]}}])V.push({id:e.id,label:e.label,description:e.description,connected:`connected`in e?e.connected:!0,status:{...U,operation:e.operation,...e.id===`operation-ready`?{currentCommit:`fedcba9876543210`,checks:{commit:`fedcba9876543210`,trigger:`synchronization`,commands:[{command:`pnpm typecheck`,status:`passed`},{command:`pnpm test`,status:`passed`}]}}:{},activities:e.operation.activities}});var K={actionError:`actionError`,actions:`actions`,actionSuccess:`actionSuccess`,activityCommand:`activityCommand`,activityHeading:`activityHeading`,activityList:`activityList`,activityMeta:`activityMeta`,activityOutput:`activityOutput`,activityRow:`activityRow`,activityStatus:`activityStatus`,activitySummary:`activitySummary`,button:`button`,"button-spin":`button-spin`,buttonContainer:`buttonContainer`,buttonSpinner:`buttonSpinner`,changeList:`changeList`,checkbox:`checkbox`,checkCommand:`checkCommand`,checkFailure:`checkFailure`,checkGuidance:`checkGuidance`,checkMessage:`checkMessage`,codexHistoryList:`codexHistoryList`,codexHistorySummary:`codexHistorySummary`,codexMessage:`codexMessage`,codexMessageAge:`codexMessageAge`,codexMessageHeader:`codexMessageHeader`,codexMessageLabel:`codexMessageLabel`,codexMessageText:`codexMessageText`,codexOptionSelect:`codexOptionSelect`,codexOutput:`codexOutput`,codexSettings:`codexSettings`,codexSettingsPopover:`codexSettingsPopover`,codexTranscript:`codexTranscript`,codexWaiting:`codexWaiting`,codexWorking:`codexWorking`,codexWorkingSpinner:`codexWorkingSpinner`,completionDetailBody:`completionDetailBody`,completionDetails:`completionDetails`,completionDialog:`completionDialog`,completionMetadata:`completionMetadata`,completionNote:`completionNote`,completionReceipt:`completionReceipt`,completionSteps:`completionSteps`,content:`content`,debugFooter:`debugFooter`,developmentControls:`developmentControls`,developmentControlsDropdown:`developmentControlsDropdown`,dialog:`dialog`,disabledTooltip:`disabledTooltip`,drawerBody:`drawerBody`,effortControl:`effortControl`,effortEndpoints:`effortEndpoints`,errorIcon:`errorIcon`,errorMessage:`errorMessage`,fileGroup:`fileGroup`,filePath:`filePath`,files:`files`,fileStatus:`fileStatus`,header:`header`,headerActions:`headerActions`,iconButton:`iconButton`,iconOnly:`iconOnly`,indicatorButton:`indicatorButton`,indicatorDot:`indicatorDot`,message:`message`,modelToggle:`modelToggle`,notificationActions:`notificationActions`,paragraph:`paragraph`,pendingCommits:`pendingCommits`,primary:`primary`,rebaseProgress:`rebaseProgress`,rebaseProgressFill:`rebaseProgressFill`,rebaseProgressLabel:`rebaseProgressLabel`,rebaseProgressTrack:`rebaseProgressTrack`,scenarioButton:`scenarioButton`,scenarioDescription:`scenarioDescription`,scenarioLabel:`scenarioLabel`,scenarioList:`scenarioList`,section:`section`,sectionDescription:`sectionDescription`,sectionHeading:`sectionHeading`,sectionLink:`sectionLink`,sectionTitle:`sectionTitle`,setupFailure:`setupFailure`,srOnly:`srOnly`,successIcon:`successIcon`,surface:`surface`,title:`title`,titleIcon:`titleIcon`,trackedFile:`trackedFile`,warning:`warning`};const q={userSelect:`text`,WebkitUserSelect:`text`},Ee={effort:`high`,model:`gpt-6-luna`},De=u(!0);let J;function Oe(){if(J)return J;try{J=sessionStorage.getItem(`coreframe:managed-dev:client`)??void 0}catch{}if(!J){J=globalThis.crypto.getRandomValues(new Uint32Array(4)).join(`-`);try{sessionStorage.setItem(`coreframe:managed-dev:client`,J)}catch{}}return J}let ke=!1;const Ae=new Set,je=1600,Me=[`codex-running`,`codex-finished`,`codex-message`,`codex-error`,`migration-failure`,`dependency-failure`,`failed-check`,`confirm-commit`,`local-changes`,`upstream-update`,`dev-update`,`busy`,`warning`,`paused`,`unavailable`,`success`,`idle`],Ne=[...Me.slice(0,-2),...V.map(({id:e})=>e).filter(e=>!Me.includes(e)),...Me.slice(-2)].map(e=>{let t=V.find(t=>t.id===e);if(!t)throw Error(`Missing managed dev debug scenario: ${e}`);return t}).filter(e=>_t(e));function Pe(){Y(!ke)}function Y(e){if(ke!==e){ke=e;for(let e of Ae)e()}}function Fe({bottomOffset:e,debug:t=!1,indicator:n,rightOffset:r}){return w(t?Re:Ie,{bottomOffset:e,indicator:n,rightOffset:r})}function Ie({bottomOffset:e,indicator:t,rightOffset:r}){let{act:i,checkFailure:a,codex:o,codexOptions:s,dismissCheckFailure:c,dismissError:u,dismissSuccess:d,error:f,errorsDismissed:m,hmrReady:h,pendingAction:_,setCodexOptions:v,status:y,success:x}=Ct(),[S,C]=b(),[T,E]=b(),D=JSON.stringify([y?.mode,y?.message,y?.busy,y?.target?.commit,y?.draft?.fingerprint,y?.pendingRebase,y?.setupFailure,y?.warnings,y?.codexCompletion?.id,y?.operation&&[y.operation.id,y.operation.phase,y.operation.state],a,f,o?.phase,x?.heading]),O=bt(),k=_t({status:y,codex:m&&o?.phase===`error`?void 0:o,error:m?void 0:f,success:x,pendingAction:_,controls:O});g(()=>{if(!x)return;let e=setTimeout(()=>{d(),Y(!1)},je);return()=>clearTimeout(e)},[d,x]),g(()=>{let e=y?.operation;if(e?.state!==`succeeded`||S===e.id||y?.codexCompletion||f||a||$(y))return;let t=Math.max(0,je-(Date.now()-(e.finishedAt??e.updatedAt))),n=setTimeout(()=>{Y(!1),h&&i({type:`acknowledge-operation`,id:e.id})},t);return()=>clearTimeout(n)},[i,y,f,a,h,S]);let A=t??w(He,{}),j=p(A)&&A.type===He?l(A,{paused:!y?.target}):A;return w(Le,{bottomOffset:e,ready:(h||!!y)&&k,indicator:y&&$(y,a)&&T!==D?j:null,rightOffset:r,children:w(De.Provider,{value:h,children:w(Ue,{connectionNotice:!h&&y?`Connection lost; progress may be stale. Reconnecting…`:void 0,act:i,checkFailure:a,codex:o,codexOptions:s,developmentControls:O,dismissCheckFailure:c,dismissError:()=>{E(D),u()},error:f,errorsDismissed:m,onClose:()=>{E(D),y?.operation&&!n(y.operation)&&y.operation.state!==`awaiting-resolution`&&!y.codexCompletion&&h&&i({type:`acknowledge-operation`,id:y.operation.id}),y?.codexCompletion&&h&&i({id:y.codexCompletion.id,type:`acknowledge-codex`}),Y(!1)},onInspectOperation:()=>C(y?.operation?.id),pendingAction:_,setCodexOptions:v,status:y,success:x})})})}function Le({bottomOffset:e,children:t,indicator:n,openOnMount:r=!1,ready:i=!0,rightOffset:a}){let[o,s]=b(null),c=x(wt,Tt,Et);g(()=>{!i&&c&&Y(!1)},[i,c]),g(()=>{r&&Y(!0);let e=!0,t=k(`coreframe-managed-dev`,document.body,{css:`@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:SN Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./files/sn-pro-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
|
|
170
176
|
|
|
171
177
|
@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-adlam-wght-normal.woff2)format("woff2-variations");unicode-range:U+61F,U+640,U+2015,U+201B,U+2020-2021,U+2030,U+204F,U+25CC,U+2E28-2E29,U+2E41,U+1E900-1E95F}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-canadian-aboriginal-wght-normal.woff2)format("woff2-variations");unicode-range:U+2C7,U+2D8-2D9,U+2DB,U+307,U+1400-167F,U+18B0-18F5,U+25CC,U+11AB?}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-cherokee-wght-normal.woff2)format("woff2-variations");unicode-range:U+300-302,U+304,U+30B-30C,U+323-324,U+330-331,U+13A0-13FF,U+AB70-ABBF}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-math-wght-normal.woff2)format("woff2-variations");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-old-permic-wght-normal.woff2)format("woff2-variations");unicode-range:U+300,U+306-308,U+313,U+483,U+20DB,U+25CC,U+10350-1037A}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-symbols-wght-normal.woff2)format("woff2-variations");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-symbols2-wght-normal.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-syriac-wght-normal.woff2)format("woff2-variations");unicode-range:U+303-304,U+307-308,U+30A,U+320,U+323-325,U+32D-32E,U+330-331,U+60C,U+61B-61C,U+61F,U+621,U+640,U+64B-655,U+660-66C,U+670,U+700-74F,U+860-86A,U+1DF8,U+1DFA,U+200C-200F,U+25CC,U+2670-2671}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Google Sans Code Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(./files/google-sans-code-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
|
|
172
178
|
|
|
173
|
-
[data-isolet-root]{--overlay-font-body:"SN Pro Variable", system-ui, sans-serif;--overlay-font-monospace:"Google Sans Code Variable", ui-monospace, monospace;color-scheme:light dark;--oc-white:#fff;--oc-gray-0:#f8f9fa;--oc-gray-1:#f1f3f5;--oc-gray-2:#e9ecef;--oc-gray-3:#dee2e6;--oc-gray-4:#ced4da;--oc-gray-5:#adb5bd;--oc-gray-6:#868e96;--oc-gray-7:#495057;--oc-gray-8:#343a40;--oc-gray-9:#212529;--oc-red-0:#fff5f5;--oc-red-2:#ffc9c9;--oc-red-7:#f03e3e;--oc-red-9:#c92a2a;--oc-grape-0:#f8f0fc;--oc-grape-2:#eebefa;--oc-grape-7:#ae3ec9;--oc-grape-9:#862e9c;--oc-blue-0:#e7f5ff;--oc-blue-2:#a5d8ff;--oc-blue-4:#4dabf7;--oc-blue-6:#228be6;--oc-blue-7:#1c7ed6;--oc-blue-9:#1864ab;--oc-green-0:#ebfbee;--oc-green-2:#b2f2bb;--oc-green-7:#37b24d;--oc-green-9:#2b8a3e;--oc-yellow-0:#fff9db;--oc-yellow-2:#ffec99;--oc-yellow-7:#f59f00;--oc-yellow-9:#e67700;--overlay-background:var(--oc-white);--overlay-surface-subtle:var(--oc-gray-0);--overlay-surface-muted:var(--oc-gray-1);--overlay-border:var(--oc-gray-3);--overlay-border-strong:var(--oc-gray-4);--overlay-text:var(--oc-gray-9);--overlay-text-muted:var(--oc-gray-7);--overlay-text-subtle:var(--oc-gray-6);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:var(--oc-blue-0);--overlay-accent-border:var(--oc-blue-2);--overlay-accent-text:var(--oc-blue-9);--overlay-thought-soft:var(--oc-grape-0);--overlay-thought-border:var(--oc-grape-2);--overlay-thought-text:var(--oc-grape-9);--overlay-success-soft:var(--oc-green-0);--overlay-success-border:var(--oc-green-2);--overlay-success-text:var(--oc-green-9);--overlay-warning-soft:var(--oc-yellow-0);--overlay-warning-border:var(--oc-yellow-2);--overlay-warning-text:var(--oc-yellow-9);--overlay-danger-soft:var(--oc-red-0);--overlay-danger-border:var(--oc-red-2);--overlay-danger-text:var(--oc-red-9);color:var(--overlay-text);font:14px/1.45 var(--overlay-font-body)}.surface{--managed-dev-bottom-offset:0px;--managed-dev-right-offset:0px}.indicatorButton{appearance:none;bottom:calc(10px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset));cursor:pointer;pointer-events:auto;height:44px;right:calc(10px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset));background:0 0;border:0;justify-content:center;align-items:center;width:44px;padding:0;display:flex;position:fixed}.indicatorButton:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:-3px}.indicatorDot{background:var(--managed-dev-indicator-color);box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--overlay-border) 30%, transparent);height:var(--managed-dev-indicator-size);width:var(--managed-dev-indicator-size);border-radius:50%;display:block;position:relative}.indicatorDot:before{border:max(1px, calc(var(--managed-dev-indicator-size) / 9)) solid var(--managed-dev-indicator-color);border-radius:inherit;content:"";animation:1.8s ease-out infinite radiate;position:absolute;inset:0}.dialog{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 18px 60px color-mix(in srgb, var(--oc-gray-9) 28%, transparent), 0 2px 8px color-mix(in srgb, var(--oc-gray-9) 12%, transparent);color:var(--overlay-text);box-sizing:border-box;height:auto;bottom:20px;left:unset;overscroll-behavior:contain;pointer-events:auto;border-radius:12px;width:min(520px,100vw - 18px);max-width:min(520px,100vw - 18px);max-height:none;margin:0;padding:12px 18px;position:fixed;right:20px;overflow:hidden}.dialog[open]{flex-direction:column;gap:12px;display:flex}.drawerBody{align-content:start;gap:16px;min-height:80px;display:grid;overflow:auto}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.headerActions{align-items:center;display:flex}.developmentControlsDropdown{display:flex;position:relative}.title{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.titleIcon{color:var(--overlay-accent);flex:none}.iconButton{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:4px;display:inline-flex}.iconButton:hover{background:var(--overlay-surface-muted);border-radius:8px}.iconButton:focus-visible,.scenarioButton:focus-visible,.sectionLink:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.section{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:12px;gap:12px;padding:14px;display:grid}.sectionHeading{justify-content:space-between;align-items:start;gap:12px;display:flex}.sectionTitle{margin:0;font-size:13px}.sectionDescription{color:var(--overlay-text-muted);margin:3px 0 0;font-size:12px}.sectionLink{color:var(--overlay-accent-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-size:12px}.debugFooter{background:var(--overlay-thought-soft);border-top:.5px solid var(--overlay-thought-border);color:var(--overlay-thought-text);flex:none;margin:0 -18px -12px;padding:4px 18px;font-size:11px;line-height:1.3}.scenarioList{gap:7px;max-height:min(480px,100dvh - 210px);display:grid;overflow:auto}.scenarioButton{background:var(--overlay-surface-subtle);color:inherit;cursor:pointer;font:inherit;text-align:start;border:1px solid #0000;border-radius:10px;gap:3px;padding:10px;display:grid}.scenarioButton:hover{background:var(--overlay-accent-soft);border-color:var(--overlay-accent-border)}.scenarioLabel{font-weight:650}.scenarioDescription{color:var(--overlay-text-muted);font-size:12px}.paragraph{margin:0}.pendingCommits{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;border-radius:10px;max-height:190px;margin:0;padding:10px;overflow:auto}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:280px;margin:0;padding:10px;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 var(--overlay-font-monospace)}.codexWorkingSpinner{color:var(--overlay-accent)}.codexTranscript{gap:10px;max-height:360px;display:grid;overflow:auto}.codexMessage{border:1px solid #0000;border-radius:10px;gap:5px;padding:10px;display:grid}.codexMessageUser{background:var(--overlay-accent-soft);border-color:var(--overlay-accent-border)}.codexMessageThought{background:var(--overlay-thought-soft);border-color:var(--overlay-thought-border)}.codexMessageAgent{background:var(--overlay-success-soft);border-color:var(--overlay-success-border)}.codexMessageHeader{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.codexMessageLabel{color:var(--overlay-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.codexMessageAge{color:var(--overlay-text-subtle);white-space:nowrap;font-size:11px}.codexMessageText,.codexWaiting{font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;word-break:break-word;margin:0}.codexWaiting{color:var(--overlay-text-subtle)}.rebaseProgress{gap:8px;display:grid}.rebaseProgressLabel{color:var(--overlay-text-muted);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.rebaseProgressLabel strong{color:var(--overlay-success-text)}.rebaseProgressTrack{background:var(--overlay-surface-muted);border-radius:999px;height:6px;overflow:hidden}.rebaseProgressFill{background:var(--overlay-success-text);border-radius:inherit;height:100%;transition:width .18s;display:block}.codexHistorySummary{cursor:pointer;font-size:12px;font-weight:600}.codexHistoryList{gap:8px;padding-top:8px;display:grid}.files{gap:7px;max-height:190px;display:grid;overflow:auto}.checkbox{overflow-wrap:anywhere;align-items:start;gap:8px;display:flex}.checkbox input{accent-color:var(--overlay-accent)}.filePath{font-family:var(--overlay-font-monospace)}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);font-family:var(--overlay-font-monospace);resize:vertical;border-radius:10px;width:100%;min-height:92px;padding:10px}.codexOptions{flex-wrap:wrap;gap:8px 16px;display:flex}.codexOption{align-items:center;gap:6px;display:flex}.codexOptionLabel{color:var(--overlay-text-subtle);font-size:12px}.codexOptionSelect{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);color:var(--overlay-text);font:inherit;border-radius:8px;padding:4px 6px}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.developmentControls{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 10px 30px color-mix(in srgb, var(--oc-gray-9) 18%, transparent);box-sizing:border-box;z-index:1;border-radius:10px;gap:4px;min-width:170px;max-width:calc(100vw - 32px);margin:0;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.developmentControls .actions{justify-content:stretch;align-items:stretch;gap:0;width:100%;display:grid}.developmentControls .button{text-align:start;white-space:nowrap;justify-content:start;justify-self:stretch;width:100%;min-height:32px}.button{border:1px solid var(--overlay-border-strong);cursor:pointer;font:inherit;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;transition:opacity .14s;display:inline-flex}.button:hover:not(:disabled){background:var(--overlay-surface-muted)}.primary{background:var(--overlay-accent);border-color:var(--overlay-accent);color:var(--oc-white)}.primary:hover:not(:disabled){background:var(--overlay-accent-hover);border-color:var(--overlay-accent-hover)}.developmentControls .button{color:inherit;background:0 0;border:0}.developmentControls .button:hover:not(:disabled){background:var(--overlay-surface-muted)}.button:disabled{cursor:wait;opacity:.55}.buttonSpinner{animation:.7s linear infinite button-spin}.iconOnly{box-sizing:border-box;flex:0 0 32px;width:32px;min-width:32px;height:32px;padding:7px}.warning{color:var(--overlay-warning-text);white-space:pre-wrap}.checkFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:10px;gap:10px;padding:10px;display:grid}.checkCommand{font-family:var(--overlay-font-monospace);margin:0;font-weight:600}.checkGuidance{margin:3px 0 0;font-size:12px}.setupFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:10px;gap:10px;padding:10px;display:grid}.actionError{background:var(--overlay-warning-soft);border:1px solid var(--overlay-warning-border);color:var(--overlay-warning-text);white-space:pre-wrap;border-radius:10px;gap:10px;padding:10px;display:grid}.errorMessage{grid-template-columns:auto 1fr;align-items:start;gap:8px;display:grid}.actionSuccess{background:var(--overlay-success-soft);border:1px solid var(--overlay-success-border);color:var(--overlay-success-text);border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:10px;display:grid}.errorIcon,.successIcon{margin-top:1px}@media (prefers-color-scheme:dark){[data-isolet-root]{--overlay-background:var(--oc-gray-9);--overlay-surface-subtle:var(--oc-gray-8);--overlay-surface-muted:var(--oc-gray-7);--overlay-border:var(--oc-gray-7);--overlay-border-strong:var(--oc-gray-6);--overlay-text:var(--oc-gray-0);--overlay-text-muted:var(--oc-gray-4);--overlay-text-subtle:var(--oc-gray-5);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:color-mix(in srgb, var(--oc-blue-9) 32%, var(--overlay-background));--overlay-accent-border:var(--oc-blue-7);--overlay-accent-text:var(--oc-blue-2);--overlay-thought-soft:color-mix(in srgb, var(--oc-grape-9) 30%, var(--overlay-background));--overlay-thought-border:var(--oc-grape-7);--overlay-thought-text:var(--oc-grape-2);--overlay-success-soft:color-mix(in srgb, var(--oc-green-9) 30%, var(--overlay-background));--overlay-success-border:var(--oc-green-7);--overlay-success-text:var(--oc-green-2);--overlay-warning-soft:color-mix(in srgb, var(--oc-yellow-9) 24%, var(--overlay-background));--overlay-warning-border:var(--oc-yellow-7);--overlay-warning-text:var(--oc-yellow-2);--overlay-danger-soft:color-mix(in srgb, var(--oc-red-9) 30%, var(--overlay-background));--overlay-danger-border:var(--oc-red-7);--overlay-danger-text:var(--oc-red-2)}}@keyframes radiate{0%{opacity:.75;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@keyframes button-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.buttonSpinner{animation:none}}@media (width<=600px){.dialog{max-width:none;padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));border-radius:0;width:auto;inset:0}.debugFooter{margin:0 calc(-16px - env(safe-area-inset-right,0px)) calc(-16px - env(safe-area-inset-bottom,0px)) calc(-16px - env(safe-area-inset-left,0px));padding:4px calc(16px + env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.button{min-height:44px}.checkbox{align-items:center;min-height:44px}.iconButton{min-width:44px;min-height:44px}.iconOnly{flex-basis:44px;width:44px;min-width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.indicatorDot:before{opacity:.45;animation:none;transform:scale(1.65)}}.buttonContainer{min-width:0;display:inline-flex}.buttonContainer:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px;border-radius:999px}.button:disabled{pointer-events:none}.developmentControls .buttonContainer{width:100%;display:flex}.disabledTooltip{z-index:2147483647;border:1px solid var(--overlay-border-strong);background:var(--overlay-surface-subtle);max-width:min(280px,100vw - 24px);color:var(--overlay-text);pointer-events:none;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.4;position:fixed;transform:translateY(-100%)}.srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.activityList{gap:8px;min-width:0;display:grid}.activityHeading{font-size:13px;font-weight:600}.activityRow{border:1px solid #80808040;border-radius:6px;min-width:0;margin-block:4px;padding:8px 10px}.activitySummary{cursor:pointer;overflow-wrap:anywhere;font-size:13px}.activityStatus{opacity:.7;margin-inline-start:8px;font-size:12px}.activityCommand{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;font-size:12px;display:block}.activityMeta{opacity:.7;margin-block:8px;font-size:12px}.activityOutput{white-space:pre-wrap;overflow-wrap:anywhere;max-height:200px;font-size:12px;overflow:auto}
|
|
174
|
-
`,hostAttributes:{"aria-live":`polite`,id:`coreframe-managed-dev`},hostStyles:{pointerEvents:`none`,position:`fixed`},zIndex:2147483647});return queueMicrotask(()=>{e&&s(t.container)}),()=>{e=!1,t.host?.remove()}},[r]);let l={"--managed-dev-bottom-offset":we(e),"--managed-dev-right-offset":we(a)};return o?y(S(`div`,{className:W.surface,style:l,children:[i?n:null,i&&c?t:null]}),o):null}function Ce({bottomOffset:e,indicator:t,rightOffset:n}){let[r,i]=_(),[a,o]=_(ge),[c,l]=_(),[u,f]=_(),[p,m]=_(!1),h=_e.find(({id:e})=>e===r),g=e=>{i(e),l(void 0),f(void 0),m(!1)},v=async e=>{if(e.type!==`configure-codex`){if(e.type===`acknowledge-codex`){g(void 0);return}f(Ze(e))}},y=t??x(Y,{}),b={dismissError:()=>void 0,pending:!1,reloadPage:()=>l(`Page reload simulated.`),restartVite:()=>l(`Vite restart simulated.`),success:c};return x(Se,{bottomOffset:e,indicator:d(y)&&y.type===Y?s(y,{paused:h?.status.mode===`waiting`}):y,openOnMount:!0,rightOffset:n,children:h?x(Ee,{act:v,checkFailure:p?void 0:Ke(h.status),codex:h.codex,codexOptions:a,developmentControls:b,dismissCheckFailure:()=>m(!0),dismissError:()=>m(!0),error:h.error,errorsDismissed:p,onBack:()=>g(void 0),onClose:()=>q(!1),setCodexOptions:o,status:h.status,success:u??h.success},h.id):x(Te,{developmentControls:b,onClose:()=>q(!1),onSelect:e=>g(e)})})}function we(e){return typeof e==`number`?`${e}px`:e??`0px`}function Te({developmentControls:e,onClose:t,onSelect:n}){return x(J,{debug:!0,developmentControls:e,icon:ne,onClose:t,title:`Managed dev overlay scenarios`,children:x(`div`,{className:W.scenarioList,children:ve.map(e=>S(`button`,{className:W.scenarioButton,onClick:()=>n(e.id),type:`button`,children:[x(`span`,{className:W.scenarioLabel,children:e.label}),x(`span`,{className:W.scenarioDescription,children:e.description})]},e.id))})})}function J({children:e,debug:t=!1,developmentControls:n,icon:r,onBack:i,onClose:a,title:o}){let s=g(null),c=g(null),[l,u]=_(!1);return m(()=>{let e=e=>{let t=e.composedPath(),n=c.current;n&&!t.includes(n)&&u(!1);let r=s.current;r&&!t.includes(r)&&a()},t=e=>{e.key===`Escape`&&(e.preventDefault(),a())};return document.addEventListener(`pointerdown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`pointerdown`,e),document.removeEventListener(`keydown`,t)}},[a]),S(`dialog`,{"aria-labelledby":`coreframe-managed-title`,"aria-modal":`true`,className:W.dialog,id:`coreframe-managed-dev-dialog`,open:!0,ref:s,children:[S(`div`,{className:W.header,children:[S(`h2`,{className:W.title,id:`coreframe-managed-title`,children:[x(r,{"aria-hidden":`true`,className:W.titleIcon,size:18}),o]}),S(`div`,{className:W.headerActions,children:[i?x(`button`,{"aria-label":`Back to scenarios`,className:W.iconButton,onClick:i,type:`button`,children:x(te,{"aria-hidden":`true`,size:18})}):null,n?S(`div`,{className:W.developmentControlsDropdown,ref:c,children:[x(`button`,{"aria-expanded":l,"aria-haspopup":`menu`,"aria-label":`Development controls`,className:W.iconButton,onClick:()=>u(e=>!e),type:`button`,children:x(ce,{"aria-hidden":`true`,size:18})}),l?x(De,{controls:n}):null]}):null,x(`button`,{"aria-label":`Close managed development`,className:W.iconButton,onClick:a,type:`button`,children:x(H,{"aria-hidden":`true`,size:18})})]})]}),x(`div`,{className:W.drawerBody,children:e}),t?x(`footer`,{className:W.debugFooter,children:`Debug preview · project actions are simulated locally`}):null]})}function Y({color:e=`#228be6`,paused:t=!1,size:n=14,warningColor:r=`#fd7e14`}){let i=v($e,et,tt),a={"--managed-dev-indicator-color":t?r:e,"--managed-dev-indicator-size":typeof n==`number`?`${n}px`:n};return x(`button`,{"aria-controls":`coreframe-managed-dev-dialog`,"aria-expanded":i,"aria-label":`${i?`Hide`:`Show`} Coreframe managed development`,className:W.indicatorButton,onClick:ye,style:a,type:`button`,children:x(`span`,{className:W.indicatorDot})})}function Ee({act:e,checkFailure:t,codex:n,codexOptions:r,developmentControls:i,dismissCheckFailure:a,dismissError:o,error:s,errorsDismissed:c,onBack:l,onClose:u,pendingAction:d,setCodexOptions:f,status:p,success:h}){let[v,y]=_({value:``}),[C,w]=_(()=>({paths:new Set})),T=g(null),E=p?.codexCompletion,D=p?.draft,O=p?.pendingRebase,k=p?.target,A=c&&n?.phase===`error`?void 0:n,j=!E&&!h&&!A,M=!!Ve(p,s,n),N=C.fingerprint===D?.fingerprint?C.paths:new Set(D?.untracked??[]),P=v.fingerprint===D?.fingerprint&&v.proposal===p?.proposal?v.value:p?.proposal??``,ee=!!(D?.untracked.length&&D.untracked.every(e=>N.has(e))),F=t=>{f(t),e({codex:t,type:`configure-codex`})};return m(()=>{let e=T.current;e&&n?.phase===`running`&&(e.scrollTop=e.scrollHeight)},[n]),t?x(J,{debug:!!l,developmentControls:i,icon:V,onBack:l,onClose:u,title:`Managed development check failed`,children:S(`div`,{className:W.content,children:[x(`div`,{className:W.checkFailure,role:`alert`,children:S(`div`,{className:W.checkMessage,children:[S(`p`,{className:W.checkCommand,children:[t.check.command,` failed`]}),x(`p`,{className:W.checkGuidance,children:qe(t)}),x(`p`,{className:W.checkGuidance,children:`Copy the output and paste it into your agent orchestration tool.`})]})}),S(Z,{children:[x(Q,{ariaLabel:`Dismiss error`,icon:H,iconOnly:!0,immediatelyEnabled:!0,onClick:()=>a(t),children:`Dismiss`}),x(Q,{ariaLabel:`Copy output for ${t.check.command}`,icon:oe,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(t.check.output??``),children:`Copy output`})]})]})}):x(J,{debug:!!l,developmentControls:i,icon:ze({codex:A,completion:E,status:p,success:h}),onBack:l,onClose:u,title:E?`Codex conflict resolution finished`:h?.heading??(A?.phase===`complete`?A.stage===`verify`?`Finishing synchronization…`:`Finishing conflict resolution…`:A?.phase===`error`?A.stage===`verify`?`Verification failed.`:`Conflict resolution failed.`:A?A.stage===`verify`?`Verifying the update with Codex…`:`Resolving conflicts with Codex…`:c&&!D&&!k&&!O?`Managed development status`:Re(p)),children:S(`div`,{className:W.content,children:[h&&!E?S(`div`,{className:W.actionSuccess,role:`status`,children:[x(L,{"aria-hidden":`true`,className:W.successIcon,size:18}),x(`p`,{className:W.paragraph,children:h.message})]}):null,s&&!c?S(b,{children:[x(`div`,{className:W.actionError,role:`alert`,children:x(Le,{children:s})}),x(Z,{children:x(Q,{ariaLabel:`Dismiss error`,icon:H,iconOnly:!0,immediatelyEnabled:!0,onClick:o,children:`Dismiss`})})]}):null,x(ke,{activities:p?.activities??[]}),E||!h&&A?S(b,{children:[x(Oe,{commits:E?.commits??A?.commits??[],completion:E,messages:E?.messages??A?.messages??[],outputRef:T,stage:A?.stage??`resolve`,totalCommits:E?.totalCommits??A?.totalCommits,working:A?.phase===`running`}),!E&&A?.phase===`running`?x(Z,{children:x(Q,{ariaLabel:A.stage===`verify`?`Cancel verification`:`Cancel conflict resolution`,busy:d?.type===`cancel-codex`,icon:H,onClick:()=>void e({type:`cancel-codex`}),children:`Cancel`})}):null]}):j&&p?.setupFailure?S(b,{children:[c?x(`p`,{className:W.paragraph,children:`Error dismissed. Retry setup when you are ready.`}):S(`div`,{className:W.setupFailure,role:`alert`,children:[x(Le,{children:p.setupFailure.message}),x(`pre`,{className:W.codexOutput,children:p.setupFailure.output})]}),S(Z,{children:[c?null:x(Q,{ariaLabel:`Dismiss error`,icon:H,iconOnly:!0,immediatelyEnabled:!0,onClick:o,children:`Dismiss`}),x(Q,{ariaLabel:`Copy diagnostics`,disabledReason:p.busy,icon:oe,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(Ye(p.setupFailure)),children:`Copy diagnostics`}),p.setupFailure.stage===`dependencies`?x(Q,{ariaLabel:`Retry install`,busy:d?.type===`retry-install`,disabledReason:p.busy,icon:R,iconOnly:!0,onClick:()=>void e({type:`retry-install`}),primary:!0,children:`Retry install`}):p.setupFailure.stage===`codegen`?x(Q,{ariaLabel:`Retry codegen`,busy:d?.type===`retry-codegen`,disabledReason:p.busy,icon:R,iconOnly:!0,onClick:()=>void e({type:`retry-codegen`}),primary:!0,children:`Retry codegen`}):x(Q,{busy:d?.type===`reset-database`,disabledReason:p.busy,icon:z,onClick:()=>{globalThis.confirm(`Reset the local database? This permanently deletes its current data, then reapplies migrations and seed scripts.`)&&e({type:`reset-database`})},primary:!0,children:`Reset database`})]})]}):j&&Ue(p)?S(b,{children:[x(`p`,{className:W.paragraph,children:c?`Error dismissed. Reconnect when you are ready.`:p?.message}),x(Z,{children:x(Q,{ariaLabel:`Retry managed development`,busy:d?.type===`retry-supervisor`,disabledReason:p?.busy,icon:R,immediatelyEnabled:!0,onClick:()=>void e({type:`retry-supervisor`}),primary:!0,children:`Retry managed development`})})]}):j?x(`p`,{className:W.paragraph,children:p?p.busy||(c?`Notification dismissed.`:p.message||Be(p)):`Checking managed development status…`}):null,E&&(!s||c)?x(Z,{children:x(Q,{busy:d?.type===`acknowledge-codex`,disabledReason:p?.busy,icon:L,onClick:()=>void e({id:E.id,type:`acknowledge-codex`}),primary:!0,children:`Continue`})}):null,j&&!c&&p?.mode===`waiting`&&p.message&&!We(p)?S(`p`,{className:W.paragraph,children:[`To re-enable managed development, run `,x(`code`,{children:`git switch main`}),` in the primary checkout. Synchronization will resume automatically.`]}):null,j&&k&&!D?x(`pre`,{className:W.pendingCommits,children:(k.commits??[k]).map(e=>`${e.shortCommit} ${e.subject}`).join(`
|
|
175
|
-
`)}):null,
|
|
176
|
-
`)}):null,x(X,{disabled:!!p.busy,onChange:F,value:r}),S(Z,{children:[x(Q,{busy:d?.type===`decline-rebase`,disabledReason:p.busy,icon:H,onClick:()=>void e({type:`decline-rebase`}),children:`Decline`}),x(Q,{busy:d?.type===`resolve-rebase`,disabledReason:p.busy,icon:B,onClick:()=>void e({codex:r,type:`resolve-rebase`}),primary:!0,children:`Resolve with Codex`})]})]}):j&&k?S(b,{children:[x(X,{disabled:!!p.busy,onChange:F,value:r}),x(Z,{children:x(Q,{busy:d?.type===`prepare`,disabledReason:p.busy,icon:R,onClick:()=>void e({type:`prepare`,target:k.commit,codex:r}),primary:!0,children:k.source===`upstream`?`Refresh`:String(k.source)===`dev`?`Sync with dev`:`Sync with main`})})]}):null,M&&!c&&!s&&!(j&&p?.setupFailure)?x(Z,{children:x(Q,{ariaLabel:`Dismiss error`,icon:H,iconOnly:!0,immediatelyEnabled:!0,onClick:o,children:`Dismiss`})}):null]})})}function X({disabled:e=!1,onChange:t,value:i}){return S(`div`,{className:W.codexOptions,children:[S(`label`,{className:W.codexOption,children:[x(`span`,{className:W.codexOptionLabel,children:`Codex model`}),x(`select`,{"aria-label":`Codex model`,className:W.codexOptionSelect,disabled:e,onChange:e=>t({...i,model:e.target.value}),value:i.model,children:r.map(e=>x(`option`,{value:e,children:e},e))})]}),S(`label`,{className:W.codexOption,children:[x(`span`,{className:W.codexOptionLabel,children:`Reasoning effort`}),x(`select`,{"aria-label":`Reasoning effort`,className:W.codexOptionSelect,disabled:e,onChange:e=>t({...i,effort:e.target.value}),value:i.effort,children:n.map(e=>x(`option`,{value:e,children:e},e))})]})]})}function De({controls:e}){return S(`div`,{"aria-label":`Development controls`,className:W.developmentControls,role:`menu`,children:[S(Z,{children:[x(Q,{immediatelyEnabled:!0,icon:R,onClick:e.reloadPage,role:`menuitem`,children:`Reload page`}),x(Q,{busy:e.pending,immediatelyEnabled:!0,icon:z,onClick:e.restartVite,primary:!0,role:`menuitem`,children:e.pending?`Restarting Vite…`:`Restart Vite`})]}),e.error?S(b,{children:[x(`div`,{className:W.actionError,role:`alert`,children:x(Le,{children:`Vite restart failed: ${e.error}`})}),x(Z,{children:x(Q,{ariaLabel:`Dismiss restart error`,icon:H,iconOnly:!0,immediatelyEnabled:!0,onClick:e.dismissError,role:`menuitem`,children:`Dismiss`})})]}):null,e.success?S(`div`,{className:W.actionSuccess,role:`status`,children:[x(L,{"aria-hidden":`true`,className:W.successIcon,size:18}),x(`p`,{className:W.paragraph,children:e.success})]}):null]})}function Oe({commits:t,completion:n,messages:r,outputRef:i,stage:a,totalCommits:o,working:s}){let c=[...r].reverse().find(e=>e.kind===`user`),l=[...r].reverse().find(e=>e.kind!==`user`),u=n?[...r].reverse().find(e=>e.kind===`agent`&&e.text===n.finalMessage):l,d=r.filter(e=>e.kind!==`user`&&e!==u),f=n?u??{author:[...r].reverse().find(e=>e.kind===`agent`)?.author,kind:`agent`,text:n.finalMessage}:l,p=u?`message-${r.lastIndexOf(u)}`:`completion`;return S(b,{children:[s?x(`div`,{className:W.codexWorking,children:x(e,{className:W.codexWorkingSpinner,label:a===`verify`?`Codex is verifying the update`:`Codex is resolving conflicts`,children:x(je,{})})}):null,S(`div`,{"aria-live":n?void 0:`polite`,className:W.codexTranscript,ref:i,role:`log`,children:[c?x(Ne,{message:c}):null,d.length>0?S(`details`,{children:[S(`summary`,{className:W.codexHistorySummary,children:[`History (`,d.length,`)`]}),x(`div`,{className:W.codexHistoryList,children:d.map((e,t)=>x(Ne,{message:e},`history-${t}`))})]}):null,f?x(Ne,{message:f,showAge:!0},p):x(`p`,{className:W.codexWaiting,children:`Waiting for Codex output…`}),o?x(Me,{rebased:t.length,total:o}):null]})]})}function ke({activities:e}){let t=e.filter(e=>e.status===`running`),n=e.filter(e=>[`failed`,`cancelled`,`interrupted`].includes(e.status)),r=e.filter(e=>e.status===`succeeded`);return e.length?S(`section`,{className:W.activityList,"aria-label":`Activity`,children:[S(`div`,{className:W.activityHeading,"aria-live":`polite`,children:[`Activity`,t.length?` · ${t.length} running`:``]}),[...t,...n].map(e=>x(Ae,{activity:e},e.id)),r.length?S(`details`,{children:[S(`summary`,{className:W.codexHistorySummary,children:[`Recent activity (`,r.length,`)`]}),r.slice().reverse().map(e=>x(Ae,{activity:e},e.id))]}):null]}):null}function Ae({activity:e}){let[t,n]=_(Date.now);m(()=>{if(e.status!==`running`)return;let t=globalThis.setInterval(()=>n(Date.now()),1e3);return()=>globalThis.clearInterval(t)},[e.status]);let r=Math.max(0,Math.floor(((e.finishedAt??t)-e.startedAt)/1e3));return S(`details`,{className:W.activityRow,children:[S(`summary`,{className:W.activitySummary,children:[x(`span`,{children:e.label}),S(`span`,{className:W.activityStatus,children:[e.status,` · `,Fe(r)]}),e.command?x(`code`,{className:W.activityCommand,children:e.command}):null]}),S(`p`,{className:W.activityMeta,children:[e.source===`codex`?`Codex`:`Managed development`,e.stage?` · ${e.stage}`:``,e.exitCode===void 0?``:` · Exit code ${e.exitCode}`]}),e.output?x(`pre`,{className:W.activityOutput,children:e.output}):null]})}function je(){let e=g(0),[t,n]=_(0);return m(()=>{e.current=Date.now();let t=globalThis.setInterval(()=>{n(Math.floor((Date.now()-e.current)/1e3))},1e3);return()=>globalThis.clearInterval(t)},[]),S(b,{children:[`Working for `,Fe(t),`...`]})}function Me({rebased:e,total:t}){let n=Math.min(e,t),r=Math.round(n/t*100);return S(`section`,{"aria-label":`Rebase progress`,className:W.rebaseProgress,children:[S(`div`,{className:W.rebaseProgressLabel,children:[S(`strong`,{children:[r,`% rebased`]}),S(`span`,{children:[n,` of `,t,` commits`]})]}),x(`div`,{"aria-valuemax":t,"aria-valuemin":0,"aria-valuenow":n,className:W.rebaseProgressTrack,role:`progressbar`,children:x(`span`,{className:W.rebaseProgressFill,style:{width:`${r}%`}})})]})}function Ne({message:e,showAge:t=!1}){let n=e.kind===`user`?`Request`:e.kind===`thought`?`Codex thought`:e.author??`Codex`,r=e.kind===`user`?W.codexMessageUser:e.kind===`thought`?W.codexMessageThought:W.codexMessageAgent;return S(`section`,{className:`${W.codexMessage} ${r}`,children:[S(`div`,{className:W.codexMessageHeader,children:[x(`h3`,{className:W.codexMessageLabel,children:n}),t?x(Pe,{}):null]}),x(`p`,{className:W.codexMessageText,children:e.text})]})}function Pe(){let e=g(0),[t,n]=_(0);return m(()=>{e.current=Date.now();let t=globalThis.setInterval(()=>{n(Math.floor((Date.now()-e.current)/1e3))},1e3);return()=>globalThis.clearInterval(t)},[]),S(`span`,{"aria-hidden":`true`,className:W.codexMessageAge,children:[Fe(t),` ago`]})}function Fe(e){let t=Math.floor(e/60),n=e%60;return t>0?`${t}m ${n}s`:`${n}s`}function Ie({checked:e,label:t,onChange:n}){return S(`label`,{className:W.checkbox,children:[x(`input`,{checked:e,onChange:e=>n(e.target.checked),type:`checkbox`}),t]})}function Z({children:e}){return x(`div`,{className:W.actions,children:e})}function Le({children:e}){return S(`div`,{className:W.errorMessage,children:[x(V,{"aria-hidden":`true`,className:W.errorIcon,size:18}),x(`p`,{className:W.paragraph,children:e})]})}function Q({ariaLabel:e,busy:t,children:n,disabledReason:r,icon:i,iconOnly:a=!1,immediatelyEnabled:o=!1,onClick:s,primary:c=!1,role:l}){let[u,d]=_(!0),[f,p]=_(),g=h(),v=r?`Please wait: ${r.replace(/[.\u2026]+$/,``)}.`:t?`Waiting for ${e??(typeof n==`string`?`“${n}”`:`this action`)} to finish.`:u&&!o?`Please wait a moment. This prevents accidental clicks.`:void 0;m(()=>{let e=globalThis.setTimeout(()=>d(!1),1e3);return()=>globalThis.clearTimeout(e)},[]);let b=e=>{let t=e.getBoundingClientRect(),n=e.closest(`[data-isolet-root]`);n&&p({left:Math.max(12,Math.min(t.left,window.innerWidth-292)),top:t.top-8,root:n})};return S(`span`,{"aria-describedby":v?g:void 0,"aria-label":v?e??(typeof n==`string`?n:void 0):void 0,className:W.buttonContainer,onBlur:()=>p(void 0),onFocus:e=>b(e.currentTarget),onKeyDown:e=>{e.key===`Escape`&&v&&f&&(e.stopPropagation(),p(void 0))},onMouseEnter:e=>b(e.currentTarget),onMouseLeave:()=>p(void 0),onPointerDown:e=>{v&&e.currentTarget.focus()},tabIndex:v?0:void 0,children:[S(`button`,{"aria-label":e,"aria-busy":!!t,"aria-describedby":v?g:void 0,className:`${W.button} ${a?W.iconOnly:``} ${c?W.primary:``}`,disabled:!!v,onClick:s,role:l,title:!v&&a?e:void 0,type:`button`,children:[t?x(de,{"aria-hidden":`true`,className:W.buttonSpinner,size:16}):i?x(i,{"aria-hidden":`true`,size:16}):null,a?null:n]}),v?x(`span`,{className:W.srOnly,id:g,children:v}):null,v&&f?y(x(`span`,{className:W.disabledTooltip,role:`tooltip`,style:{left:f.left,top:f.top},children:v}),f.root):null]})}function Re(e){return e?e.mode===`waiting`&&e.message?`Managed development paused`:e.mode===`unmanaged`?`Managed development unavailable`:e.mode===`error`?`Managed development stopped`:e.setupFailure?.stage===`dependencies`?`Dependency installation failed`:e.setupFailure?.stage===`codegen`?`Panda codegen failed`:e.setupFailure?.stage===`migration`?`Database setup failed`:e.draft?e.proposal===void 0?`Review local changes`:`Confirm your commit`:e.pendingRebase?`Resolve update conflicts`:e.target?.source===`upstream`?`Refresh from upstream`:String(e.target?.source)===`dev`?`Sync with local dev`:e.target?`Sync with local main`:e.checks?.commands.some(e=>e.status===`failed`&&!e.dismissed)?`Managed development checks failed`:e.warnings.length>0?`Managed development warning`:`Managed development status`:`Checking managed development`}function ze({codex:e,completion:t,status:n,success:r}){return e||t?B:n?.setupFailure?.stage===`migration`?se:n?.setupFailure?.stage===`dependencies`?fe:n?.setupFailure?.stage===`codegen`?R:n?.draft?le:n?.pendingRebase?B:n?.target?.source===`upstream`?ae:n?.target?R:n?.checks?.commands.some(e=>e.status===`failed`&&!e.dismissed)?ue:r?L:n?n.mode===`waiting`?ie:n.mode===`unmanaged`?re:n.mode===`error`||n.warnings.length>0?V:L:R}function Be(e){return e.mode===`waiting`?`Waiting for managed development to start.`:e.mode===`unmanaged`?`Managed synchronization is unavailable for this session.`:e.mode===`error`?`Managed synchronization stopped.`:e.draft&&!e.target?`Commit the local changes before managed development checks for updates.`:e.pendingRebase?`The update stopped on a conflict and needs Codex to finish replaying your commits.`:e.target&&e.target.source!==`upstream`?String(e.target?.source)===`dev`?`New changes are available in local dev.`:`New changes are available in local main.`:e.target?`A newer main commit is ready.`:`Managed development is active. No updates are available.`}function Ve(e,t,n){let r=[t,n?.phase===`error`?n.requestId:void 0,e?.mode===`error`||e?.mode===`unmanaged`?e.mode:void 0,e?.message,e?.setupFailure,e?.warnings.length?e.warnings:void 0];return r.some(Boolean)?JSON.stringify(r):void 0}function He(e,t){return JSON.stringify([e,t.command,t.output])}function Ue(e){return e?.mode===`error`&&e.message?.startsWith(a)===!0}function We(e){return e?.message?.startsWith(o)===!0}function Ge(e){return e.mode!==`managed`||!!(e.busy||e.codexCompletion||e.draft||e.message||e.pendingRebase||e.setupFailure||e.target||e.warnings.length>0)}function Ke(e){if(!e?.checks||Ge(e))return;let t=e.checks.commands.find(e=>e.status===`failed`&&!e.dismissed);return t?{check:t,commit:e.checks.commit,trigger:e.checks.trigger}:void 0}function qe({commit:e,trigger:t}){let n=e.slice(0,12);return t===`codegen-recovery`?`Managed dev ran this check after Panda codegen recovered for commit ${n}.`:t===`dependency-recovery`?`Managed dev ran this check after dependency installation recovered for commit ${n}.`:t===`database-recovery`?`Managed dev ran this check after database setup recovered for commit ${n}.`:`Managed dev ran this check after synchronizing the accepted update at commit ${n}.`}function $(e,t=Ke(e)){return e?e.mode===`waiting`?!!e.message:!!(t||Ge(e)):!1}function Je(e){let t=new Set(e.filter(e=>e.kind===`user`)),n=[...t].reduce((e,t)=>e+t.text.length,0),r=!1;for(let i of[...e].reverse())if(i.kind!==`user`){if(n+i.text.length>1e5&&r)break;t.add(i),r=!0,n+=i.text.length}return e.filter(e=>t.has(e))}function Ye(e){return[e.message,`Commit: ${e.commit}`,`Command: ${e.command}`,``,e.output].join(`
|
|
177
|
-
`)}function
|
|
179
|
+
[data-isolet-root]{--overlay-font-body:"SN Pro Variable", system-ui, sans-serif;--overlay-font-monospace:"Google Sans Code Variable", ui-monospace, monospace;color-scheme:light dark;--oc-white:#fff;--oc-gray-0:#f8f9fa;--oc-gray-1:#f1f3f5;--oc-gray-2:#e9ecef;--oc-gray-3:#dee2e6;--oc-gray-4:#ced4da;--oc-gray-5:#adb5bd;--oc-gray-6:#868e96;--oc-gray-7:#495057;--oc-gray-8:#343a40;--oc-gray-9:#212529;--oc-red-0:#fff5f5;--oc-red-2:#ffc9c9;--oc-red-7:#f03e3e;--oc-red-9:#c92a2a;--oc-grape-0:#f8f0fc;--oc-grape-2:#eebefa;--oc-grape-7:#ae3ec9;--oc-grape-9:#862e9c;--oc-blue-0:#e7f5ff;--oc-blue-2:#a5d8ff;--oc-blue-4:#4dabf7;--oc-blue-6:#228be6;--oc-blue-7:#1c7ed6;--oc-blue-9:#1864ab;--oc-green-0:#ebfbee;--oc-green-2:#b2f2bb;--oc-green-7:#37b24d;--oc-green-9:#2b8a3e;--oc-yellow-0:#fff9db;--oc-yellow-2:#ffec99;--oc-yellow-7:#f59f00;--oc-yellow-9:#e67700;--overlay-background:var(--oc-white);--overlay-surface-subtle:var(--oc-gray-0);--overlay-surface-muted:var(--oc-gray-1);--overlay-border:var(--oc-gray-3);--overlay-border-strong:var(--oc-gray-4);--overlay-text:var(--oc-gray-9);--overlay-text-muted:var(--oc-gray-7);--overlay-text-subtle:var(--oc-gray-6);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:var(--oc-blue-0);--overlay-accent-border:var(--oc-blue-2);--overlay-accent-text:var(--oc-blue-9);--overlay-thought-soft:var(--oc-grape-0);--overlay-thought-border:var(--oc-grape-2);--overlay-thought-text:var(--oc-grape-9);--overlay-success-soft:var(--oc-green-0);--overlay-success-border:var(--oc-green-2);--overlay-success-text:var(--oc-green-9);--overlay-warning-soft:var(--oc-yellow-0);--overlay-warning-border:var(--oc-yellow-2);--overlay-warning-text:var(--oc-yellow-9);--overlay-danger-soft:var(--oc-red-0);--overlay-danger-border:var(--oc-red-2);--overlay-danger-text:var(--oc-red-9);color:var(--overlay-text);font:14px/1.45 var(--overlay-font-body);-webkit-user-select:text;user-select:text}.surface{--managed-dev-bottom-offset:0px;--managed-dev-right-offset:0px}.indicatorButton{appearance:none;bottom:calc(10px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset));cursor:pointer;pointer-events:auto;height:44px;right:calc(10px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset));background:0 0;border:0;justify-content:center;align-items:center;width:44px;padding:0;display:flex;position:fixed}.indicatorButton:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:-3px}.indicatorDot{background:var(--managed-dev-indicator-color);box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--overlay-border) 30%, transparent);height:var(--managed-dev-indicator-size);width:var(--managed-dev-indicator-size);border-radius:50%;display:block;position:relative}.dialog{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 8px 28px color-mix(in srgb, var(--oc-gray-9) 18%, transparent);color:var(--overlay-text);box-sizing:border-box;height:auto;bottom:20px;left:unset;overscroll-behavior:contain;pointer-events:auto;border-radius:12px;width:min(520px,100vw - 40px);max-width:min(520px,100vw - 40px);max-height:calc(100dvh - 40px);margin:0;padding:12px 18px;position:fixed;right:20px;overflow:hidden}.dialog[open]{flex-direction:column;gap:12px;display:flex}.drawerBody{align-content:start;gap:16px;min-width:0;min-height:0;display:grid;overflow:auto}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.headerActions{align-items:center;display:flex}.developmentControlsDropdown{display:flex;position:relative}.title{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.titleIcon{color:var(--overlay-text-muted);flex:none}.iconButton{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:4px;display:inline-flex}.iconButton:hover{background:var(--overlay-surface-muted);border-radius:8px}.iconButton:focus-visible,.scenarioButton:focus-visible,.sectionLink:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.section{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:12px;gap:12px;padding:14px;display:grid}.sectionHeading{justify-content:space-between;align-items:start;gap:12px;display:flex}.sectionTitle{margin:0;font-size:13px}.sectionDescription{color:var(--overlay-text-muted);margin:3px 0 0;font-size:12px}.sectionLink{color:var(--overlay-accent-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-size:12px}.debugFooter{background:var(--overlay-surface-subtle);border-top:1px solid var(--overlay-border);color:var(--overlay-text-muted);flex:none;margin:0 -18px -12px;padding:4px 18px;font-size:11px;line-height:1.3}.scenarioList{gap:7px;max-height:min(480px,100dvh - 210px);display:grid;overflow:auto}.scenarioButton{background:var(--overlay-surface-subtle);color:inherit;cursor:pointer;font:inherit;text-align:start;border:1px solid #0000;border-radius:6px;gap:3px;padding:10px;display:grid}.scenarioButton:hover{background:var(--overlay-accent-soft);border-color:var(--overlay-accent-border)}.scenarioLabel{font-weight:650}.scenarioDescription{color:var(--overlay-text-muted);font-size:12px}.paragraph{margin:0}.pendingCommits{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;border-radius:6px;max-height:190px;margin:0;padding:10px;overflow:auto}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:280px;margin:0;padding:10px;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 var(--overlay-font-monospace)}.codexWorkingSpinner{color:var(--overlay-accent)}.codexTranscript{gap:10px;max-height:360px;display:grid;overflow:auto}.codexMessage{border-bottom:1px solid var(--overlay-border);gap:5px;padding:8px 0;display:grid}.codexMessage:last-child{border-bottom:0}.codexMessageHeader{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.codexMessageLabel{color:var(--overlay-text-muted);margin:0;font-size:11px;font-weight:650}.codexMessageAge{color:var(--overlay-text-subtle);white-space:nowrap;font-size:11px}.codexMessageText,.codexWaiting{font:13px/1.5 var(--overlay-font-body);white-space:pre-wrap;word-break:break-word;margin:0}.codexWaiting{color:var(--overlay-text-subtle)}.rebaseProgress{gap:8px;display:grid}.rebaseProgressLabel{color:var(--overlay-text-muted);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.rebaseProgressLabel strong{color:var(--overlay-success-text)}.rebaseProgressTrack{background:var(--overlay-surface-muted);border-radius:999px;height:6px;overflow:hidden}.rebaseProgressFill{background:var(--overlay-success-text);border-radius:inherit;height:100%;transition:width .18s;display:block}.codexHistorySummary{cursor:pointer;font-size:12px;font-weight:600}.codexHistoryList{gap:8px;padding-top:8px;display:grid}.files{gap:7px;max-height:190px;display:grid;overflow:auto}.checkbox{overflow-wrap:anywhere;align-items:start;gap:8px;display:flex}.checkbox input{accent-color:var(--overlay-accent)}.filePath{font-family:var(--overlay-font-monospace)}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);font-family:var(--overlay-font-monospace);resize:vertical;border-radius:6px;width:100%;min-height:92px;padding:10px}.codexSettings{justify-self:start}.codexSettingsPopover{z-index:2;box-sizing:border-box;background:var(--overlay-background);border:1px solid var(--overlay-border);border-radius:8px;gap:12px;width:220px;padding:12px;display:grid;position:fixed;box-shadow:0 4px 16px #0000002e}.codexSettingsPopover:before{content:"";z-index:-1;position:absolute;inset:-8px 0}.codexSettingsPopover>.sectionTitle{color:var(--overlay-text-muted);font-size:12px;font-weight:500}.modelToggle{background:var(--overlay-surface-subtle);border-radius:6px;gap:2px;padding:3px;display:flex}.modelToggle button{color:var(--overlay-text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:1;padding:5px 8px;font-size:13px}.modelToggle button[aria-pressed=true]{background:var(--overlay-surface-muted);color:var(--overlay-text)}.modelToggle button:focus-visible,.effortControl input:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px}.modelToggle button:disabled{cursor:default;opacity:.55}.effortControl{gap:4px;font-size:12px;display:grid}.effortControl>span{justify-content:space-between;display:flex}.effortControl input{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0}.effortControl input::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--overlay-accent) var(--effort-progress), var(--overlay-border-strong) var(--effort-progress));border-radius:2px;height:4px}.effortControl input::-webkit-slider-thumb{appearance:none;background:var(--overlay-accent);border-radius:50%;width:12px;height:12px;margin-top:-4px}.effortControl input::-moz-range-track{background:var(--overlay-border-strong);border-radius:2px;height:4px}.effortControl input::-moz-range-progress{background:var(--overlay-accent);height:4px}.effortControl input::-moz-range-thumb{background:var(--overlay-accent);border:0;border-radius:50%;width:12px;height:12px}.effortControl input:disabled{cursor:default;opacity:.55}.effortEndpoints{color:var(--overlay-text-muted)}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.developmentControls{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 10px 30px color-mix(in srgb, var(--oc-gray-9) 18%, transparent);box-sizing:border-box;z-index:1;border-radius:6px;gap:4px;min-width:170px;max-width:calc(100vw - 32px);margin:0;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.developmentControls .actions{justify-content:stretch;align-items:stretch;gap:0;width:100%;display:grid}.developmentControls .button{text-align:start;white-space:nowrap;justify-content:start;justify-self:stretch;width:100%;min-height:32px}.button{border:1px solid var(--overlay-border-strong);cursor:pointer;font:inherit;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;transition:opacity .14s;display:inline-flex}.button:hover:not(:disabled){background:var(--overlay-surface-muted)}.primary{background:var(--overlay-accent);border-color:var(--overlay-accent);color:var(--oc-white)}.primary:hover:not(:disabled){background:var(--overlay-accent-hover);border-color:var(--overlay-accent-hover)}.developmentControls .button{color:inherit;background:0 0;border:0}.developmentControls .button:hover:not(:disabled){background:var(--overlay-surface-muted)}.button:disabled{cursor:default;opacity:.55}.buttonSpinner{animation:.7s linear infinite button-spin}.iconOnly{box-sizing:border-box;flex:0 0 32px;width:32px;min-width:32px;height:32px;padding:7px}.warning{color:var(--overlay-warning-text);white-space:pre-wrap}.checkFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:6px;gap:10px;padding:10px;display:grid}.checkCommand{font-family:var(--overlay-font-monospace);margin:0;font-weight:600}.checkGuidance{margin:3px 0 0;font-size:12px}.setupFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:6px;gap:10px;padding:10px;display:grid}.actionError{background:var(--overlay-warning-soft);border:1px solid var(--overlay-warning-border);color:var(--overlay-warning-text);white-space:pre-wrap;border-radius:6px;gap:10px;padding:10px;display:grid}.errorMessage{grid-template-columns:auto 1fr;align-items:start;gap:8px;display:grid}.actionSuccess{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);color:var(--overlay-success-text);border-radius:6px;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:10px;display:grid}.errorIcon,.successIcon{margin-top:1px}@media (prefers-color-scheme:dark){[data-isolet-root]{--overlay-background:var(--oc-gray-9);--overlay-surface-subtle:var(--oc-gray-8);--overlay-surface-muted:var(--oc-gray-7);--overlay-border:var(--oc-gray-7);--overlay-border-strong:var(--oc-gray-6);--overlay-text:var(--oc-gray-0);--overlay-text-muted:var(--oc-gray-4);--overlay-text-subtle:var(--oc-gray-5);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:color-mix(in srgb, var(--oc-blue-9) 32%, var(--overlay-background));--overlay-accent-border:var(--oc-blue-7);--overlay-accent-text:var(--oc-blue-2);--overlay-thought-soft:color-mix(in srgb, var(--oc-grape-9) 30%, var(--overlay-background));--overlay-thought-border:var(--oc-grape-7);--overlay-thought-text:var(--oc-grape-2);--overlay-success-soft:color-mix(in srgb, var(--oc-green-9) 30%, var(--overlay-background));--overlay-success-border:var(--oc-green-7);--overlay-success-text:var(--oc-green-2);--overlay-warning-soft:color-mix(in srgb, var(--oc-yellow-9) 24%, var(--overlay-background));--overlay-warning-border:var(--oc-yellow-7);--overlay-warning-text:var(--oc-yellow-2);--overlay-danger-soft:color-mix(in srgb, var(--oc-red-9) 30%, var(--overlay-background));--overlay-danger-border:var(--oc-red-7);--overlay-danger-text:var(--oc-red-2)}}@keyframes button-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.buttonSpinner{animation:none}}@media (width<=600px){.dialog{max-width:none;max-height:100dvh;padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));border-radius:0;width:auto;inset:0}.debugFooter{margin:0 calc(-16px - env(safe-area-inset-right,0px)) calc(-16px - env(safe-area-inset-bottom,0px)) calc(-16px - env(safe-area-inset-left,0px));padding:4px calc(16px + env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.button{min-height:44px}.checkbox{align-items:center;min-height:44px}.iconButton{min-width:44px;min-height:44px}.iconOnly{flex-basis:44px;width:44px;min-width:44px;height:44px}}.buttonContainer{min-width:0;display:inline-flex}.buttonContainer:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px;border-radius:6px}.button:disabled{pointer-events:none}.developmentControls .buttonContainer{width:100%;display:flex}.disabledTooltip{z-index:2147483647;border:1px solid var(--overlay-border-strong);background:var(--overlay-surface-subtle);max-width:min(280px,100vw - 24px);color:var(--overlay-text);pointer-events:none;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.4;position:fixed;transform:translateY(-100%)}.srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.activityList{gap:8px;min-width:0;display:grid}.activityHeading{font-size:13px;font-weight:600}.activityRow{border-bottom:1px solid var(--overlay-border);min-width:0;margin-block:4px;padding:8px 0}.activitySummary{cursor:pointer;overflow-wrap:anywhere;font-size:13px}.activityStatus{color:var(--overlay-text-muted);margin-inline-start:8px;font-size:12px}.activityCommand{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;font-size:12px;display:block}.activityMeta{color:var(--overlay-text-muted);margin-block:8px;font-size:12px}.activityOutput{white-space:pre-wrap;overflow-wrap:anywhere;max-height:200px;font-size:12px;overflow:auto}.content,.codexTranscript,.codexMessage,.checkMessage,.setupFailure,.actionError{overflow-wrap:anywhere;min-width:0}.pendingCommits,.codexOutput,.activityOutput{overflow-wrap:anywhere;tab-size:2}.codexOptionSelect:focus-visible,.checkbox input:focus-visible,.codexHistorySummary:focus-visible,.activitySummary:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px}.activityRow:last-child{border-bottom:0}@media (prefers-reduced-motion:reduce){.rebaseProgressFill,.button{transition:none}}.notificationActions{flex-wrap:nowrap;justify-content:flex-start;gap:8px;padding:3px;display:flex;overflow-x:auto}.notificationActions:empty{display:none}.notificationActions>*{flex-shrink:0}.notificationActions>:first-child{margin-inline-start:auto}.notificationActions>.codexSettings{order:-1;margin-inline:0 auto}.notificationActions .button{white-space:nowrap}.changeList{box-sizing:border-box;border-block:1px solid var(--overlay-border);gap:14px;min-height:0;max-height:min(240px,35dvh);padding-block:10px;display:grid;overflow:auto}.fileGroup{gap:8px;min-width:0;display:grid}.trackedFile{overflow-wrap:anywhere;align-items:baseline;gap:8px;display:flex}.fileStatus{font:600 12px/1.5 var(--overlay-font-monospace);text-align:center;flex:0 0 1.5em}.fileStatus[data-tone=added]{color:var(--overlay-success-text)}.fileStatus[data-tone=modified]{color:var(--overlay-warning-text)}.fileStatus[data-tone=deleted]{color:var(--overlay-danger-text)}.fileStatus[data-tone=renamed]{color:var(--overlay-accent-text)}.changeList .filePath{overflow-wrap:anywhere;min-width:0}.changeList:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px}.completionReceipt{gap:16px;display:grid}.completionNote{color:var(--overlay-text-muted);margin:3px 0 0;font-size:13px}.completionDetails{font-size:13px}.completionDetailBody{border-top:1px solid var(--overlay-border);gap:14px;max-height:min(360px,50dvh);margin-top:12px;padding-top:12px;display:grid;overflow:auto}.completionMetadata{color:var(--overlay-text-muted);justify-content:space-between;gap:16px;font-size:12px;display:flex}.completionMetadata>:last-child{white-space:nowrap}.completionSteps{border-collapse:collapse;width:100%;font-size:13px}.completionSteps td{vertical-align:baseline;padding:5px 0}.completionSteps td:first-child{width:22px;color:var(--overlay-text-muted)}.completionSteps td:last-child{text-align:right;color:var(--overlay-text-muted);white-space:nowrap;font-size:12px}@media (width<=600px){.dialog.completionDialog{top:auto;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));border-radius:12px;max-height:calc(100dvh - 16px)}}
|
|
180
|
+
`,hostAttributes:{"aria-live":`polite`,id:`coreframe-managed-dev`},hostStyles:{pointerEvents:`none`,position:`fixed`},zIndex:2147483647});return queueMicrotask(()=>{e&&s(t.container)}),()=>{e=!1,t.host?.remove()}},[r]);let l={"--managed-dev-bottom-offset":ze(e),"--managed-dev-right-offset":ze(a)};return o?S(T(`div`,{className:K.surface,style:l,children:[i?n:null,i&&c?t:null]}),o):null}function Re({scenario:e,onSnapshot:t,onAction:n,bottomOffset:r,indicator:i,rightOffset:a}){let[o,s]=b(),[c,u]=b(),[d,f]=b(Ee),[m,h]=b(),[_,v]=b(),[y,x]=b(!1),S=e??V.find(({id:e})=>e===o),C=e=>{s(e),h(void 0),v(void 0),x(!1)},T=S?.status.checks&&y?{...S.status,checks:{...S.status.checks,commands:S.status.checks.commands.map(e=>({...e,dismissed:!0}))}}:S?.status,E=S?.codex??(T?.operation?St(T.operation):void 0),D=!S||_t({...S,status:T,error:y?void 0:S.error,codex:y&&S.codex?.phase===`error`?void 0:S.codex,success:_??S.success,controls:{...S.controls,success:m??S.controls?.success}});g(()=>{t?.({available:D,scenarioId:S?.id,status:S?.status,codex:S?.codex??(S?.status.operation?St(S.status.operation):void 0),error:S?.error,success:_??S?.success,errorsDismissed:y,codexOptions:d,controlSuccess:m,pendingAction:S?.pendingAction,controls:S?.controls})},[D,S,t,_,y,d,m]);let O=async e=>{if(n){n(e);return}if(e.type!==`configure-codex`){if(e.type===`decline-rebase`){Y(!1);return}if(e.type===`acknowledge-codex`){C(void 0);return}v(xt(e))}},k=i??w(He,{}),A={dismissError:()=>void 0,pending:S?.controls?.pending??!1,error:S?.controls?.error,reloadPage:()=>h(`Page reload simulated.`),restartVite:()=>h(`Vite restart simulated.`),success:m??S?.controls?.success},j=p(k)&&k.type===He?l(k,{paused:S?.status.mode===`waiting`}):k;return w(Le,{bottomOffset:r,indicator:c&&c===S?.id?null:j,ready:D,openOnMount:!0,rightOffset:a,children:S?w(De.Provider,{value:S.connected??!0,children:w(Ue,{connectionNotice:S.connected===!1?`Connection lost; progress may be stale. Reconnecting…`:void 0,act:O,checkFailure:ht(T),codex:E,codexOptions:d,developmentControls:A,dismissCheckFailure:()=>x(!0),dismissError:()=>x(!0),error:S.error,errorsDismissed:y,pendingAction:S.pendingAction,onBack:e?void 0:()=>C(void 0),onClose:()=>{u(S?.id),Y(!1)},setCodexOptions:f,status:T,success:_??S.success},S.id)}):w(Be,{developmentControls:A,onClose:()=>{u(void 0),Y(!1)},onSelect:e=>C(e)})})}function ze(e){return typeof e==`number`?`${e}px`:e??`0px`}function Be({developmentControls:e,onClose:t,onSelect:n}){return w(Ve,{debug:!0,developmentControls:e,icon:ie,onClose:t,title:`Overlay scenarios`,children:w(`div`,{className:K.scenarioList,children:Ne.map(e=>T(`button`,{className:K.scenarioButton,onClick:()=>n(e.id),type:`button`,children:[w(`span`,{className:K.scenarioLabel,children:e.label}),w(`span`,{className:K.scenarioDescription,children:e.description})]},e.id))})})}function Ve({children:e,compact:t=!1,debug:n=!1,developmentControls:r,icon:i,onBack:a,onClose:o,title:s}){let c=y(null),l=y(null),[u,d]=b(!1);return g(()=>{let e=e=>{let t=e.composedPath(),n=l.current;n&&!t.includes(n)&&d(!1);let r=c.current;r&&!t.includes(r)&&o()},t=e=>{e.key===`Escape`&&(e.preventDefault(),o())};return document.addEventListener(`pointerdown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`pointerdown`,e),document.removeEventListener(`keydown`,t)}},[o]),T(`dialog`,{"aria-labelledby":`coreframe-managed-title`,"aria-modal":`true`,className:`${K.dialog} ${t?K.completionDialog:``}`,id:`coreframe-managed-dev-dialog`,open:!0,ref:c,children:[T(`div`,{className:K.header,children:[T(`h2`,{className:K.title,id:`coreframe-managed-title`,children:[w(i,{"aria-hidden":`true`,className:K.titleIcon,size:18}),s]}),T(`div`,{className:K.headerActions,children:[a?w(`button`,{"aria-label":`Back to scenarios`,className:K.iconButton,onClick:a,type:`button`,children:w(re,{"aria-hidden":`true`,size:18})}):null,r?T(`div`,{className:K.developmentControlsDropdown,ref:l,children:[w(`button`,{"aria-expanded":u,"aria-haspopup":`menu`,"aria-label":`Development controls`,className:K.iconButton,onClick:()=>d(e=>!e),type:`button`,children:w(de,{"aria-hidden":`true`,size:18})}),u?w(Ge,{controls:r}):null]}):null,w(`button`,{"aria-label":`Close`,className:K.iconButton,onClick:o,type:`button`,children:w(ye,{"aria-hidden":`true`,size:18})})]})]}),w(`div`,{className:K.drawerBody,children:e}),n?w(`footer`,{className:K.debugFooter,children:`Debug preview · actions are simulated`}):null]})}function He({color:e=`#228be6`,paused:t=!1,size:n=14,warningColor:r=`#fd7e14`}){let i=x(wt,Tt,Et),a={"--managed-dev-indicator-color":t?r:e,"--managed-dev-indicator-size":typeof n==`number`?`${n}px`:n};return w(`button`,{"aria-controls":`coreframe-managed-dev-dialog`,"aria-expanded":i,"aria-label":`${i?`Hide`:`Show`} Coreframe managed development`,className:K.indicatorButton,onClick:Pe,style:a,type:`button`,children:w(`span`,{className:K.indicatorDot})})}function Ue({connectionNotice:e,act:t,checkFailure:r,codex:i,codexOptions:a,developmentControls:o,dismissCheckFailure:s,dismissError:c,error:l,errorsDismissed:u,onBack:d,onClose:f,onInspectOperation:p,pendingAction:m,setCodexOptions:h,status:_,success:v}){let[x,S]=b({value:``}),[E,D]=b(()=>({paths:new Set})),O=y(null),k=_?.operation,A=!k||k.state===`succeeded`?_?.codexCompletion:void 0,j=_?.draft,M=_?.pendingRebase,N=_?.target,P=pt(_)||u&&i?.phase===`error`?void 0:i,F=!A&&!v&&(k?!n(k):!P),ee=!!ut(_,l,i),I=E.fingerprint===j?.fingerprint?E.paths:new Set((j?.untracked??[]).filter(e=>!j?.artifactFiles?.includes(e))),te=!!(j?.tracked||I.size),ne=_?.proposalUntracked&&(_.proposalUntracked.length!==I.size||_.proposalUntracked.some(e=>!I.has(e)))?void 0:_?.proposal,L=x.fingerprint===j?.fingerprint&&x.proposal===ne?x.value:ne??``,re=e=>{h(e),t({codex:e,type:`configure-codex`})};return g(()=>{let e=O.current;e&&i?.phase===`running`&&(e.scrollTop=e.scrollHeight)},[i]),k?.state===`succeeded`&&!$(_)&&!l?w(Ve,{compact:!0,debug:!!d,developmentControls:o,icon:R,onBack:d,onClose:f,title:`Update complete`,children:w(qe,{status:_,operation:k,codex:P,onInspect:p})}):r&&!n(k)?w(Ve,{debug:!!d,developmentControls:o,icon:ve,onBack:d,onClose:f,title:`Check failed`,children:T(at,{children:[e?w(`p`,{className:K.paragraph,role:`status`,children:e}):null,k?w(Je,{operation:k}):null,w(`div`,{className:K.checkFailure,role:`alert`,children:T(`div`,{className:K.checkMessage,children:[T(`p`,{className:K.checkCommand,children:[r.check.command,` failed`]}),w(`p`,{className:K.checkGuidance,children:gt(r)}),w(`p`,{className:K.checkGuidance,children:`Copy the output and share it with your coding agent.`})]})}),T(Z,{children:[w(Q,{ariaLabel:`Dismiss error`,icon:R,immediatelyEnabled:!0,onClick:()=>s(r),children:`Dismiss`}),w(Q,{ariaLabel:`Copy output for ${r.check.command}`,icon:le,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(r.check.output??``),children:`Copy output`})]})]})}):w(Ve,{debug:!!d,developmentControls:o,icon:ct({codex:P,completion:A,status:_,success:v}),onBack:d,onClose:f,title:k&&_?.mode===`managed`?Ke(k):A?`Conflict resolution finished`:v?.heading??(P?.phase===`complete`?P.stage===`verify`?`Finishing sync…`:`Finishing conflict resolution…`:P?.phase===`error`?P.stage===`verify`?`Verification failed`:`Conflict resolution failed`:P?P.stage===`verify`?`Verifying update with Codex…`:`Resolving conflicts with Codex…`:u&&!j&&!N&&!M?`Managed development`:st(_)),children:T(at,{children:[e?w(`p`,{className:K.paragraph,role:`status`,children:e}):null,k?w(Je,{operation:k}):null,v&&!A?T(`div`,{className:K.actionSuccess,role:`status`,children:[w(ae,{"aria-hidden":`true`,className:K.successIcon,size:18}),w(`p`,{className:K.paragraph,children:v.message})]}):null,l&&!u?T(C,{children:[w(`div`,{className:K.actionError,role:`alert`,children:w(ot,{children:l})}),w(Z,{children:w(Q,{ariaLabel:`Dismiss error`,icon:R,immediatelyEnabled:!0,requiresConnection:!1,onClick:c,children:`Dismiss`})})]}):null,w(Xe,{activities:_?.activities??[]}),A||!v&&P&&!_?.setupFailure?T(C,{children:[w(Ye,{commits:A?.commits??P?.commits??[],completion:A,messages:k?P?.messages??[]:A?.messages??P?.messages??[],outputRef:O,stage:P?.stage??`resolve`,totalCommits:A?.totalCommits??P?.totalCommits,working:P?.phase===`running`,turns:k?.turns,historyTruncated:k?.historyTruncated}),!k&&!A&&P?.phase===`running`?w(Z,{children:w(Q,{ariaLabel:P.stage===`verify`?`Cancel verification`:`Cancel conflict resolution`,busy:m?.type===`cancel-codex`,immediatelyEnabled:!0,icon:ye,onClick:()=>void t({type:`cancel-codex`}),children:`Cancel`})}):null]}):null,F&&_?.setupFailure?T(C,{children:[u?w(`p`,{className:K.paragraph,children:`Error dismissed. Retry setup when ready.`}):T(`div`,{className:K.setupFailure,role:`alert`,children:[w(ot,{children:_.setupFailure.message}),w(`pre`,{className:K.codexOutput,children:_.setupFailure.output})]}),T(Z,{children:[u?null:w(Q,{ariaLabel:`Dismiss error`,icon:R,immediatelyEnabled:!0,requiresConnection:!1,onClick:c,children:`Dismiss`}),w(Q,{ariaLabel:`Copy diagnostics`,requiresConnection:!1,disabledReason:_.busy,icon:le,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(yt(_.setupFailure)),children:`Copy diagnostics`}),_.setupFailure.stage===`dependencies`?w(Q,{ariaLabel:`Retry install`,busy:m?.type===`retry-install`,disabledReason:_.busy,icon:z,iconOnly:!0,onClick:()=>void t({type:`retry-install`}),primary:!0,children:`Retry install`}):_.setupFailure.stage===`codegen`?w(Q,{ariaLabel:`Retry codegen`,busy:m?.type===`retry-codegen`,disabledReason:_.busy,icon:z,iconOnly:!0,onClick:()=>void t({type:`retry-codegen`}),primary:!0,children:`Retry codegen`}):w(Q,{busy:m?.type===`reset-database`,disabledReason:_.busy,icon:ge,onClick:()=>{globalThis.confirm(`Reset the local database? This permanently deletes all current data, then reapplies migrations and seed scripts.`)&&t({type:`reset-database`})},primary:!0,children:`Reset database`})]})]}):F&&ft(_)?T(C,{children:[w(`p`,{className:K.paragraph,children:u?`Error dismissed. Reconnect when ready.`:_?.message}),w(Z,{children:w(Q,{ariaLabel:`Retry managed development`,busy:m?.type===`retry-supervisor`,disabledReason:_?.busy,icon:z,immediatelyEnabled:!0,onClick:()=>void t({type:`retry-supervisor`}),primary:!0,children:`Retry`})})]}):F?w(`p`,{className:K.paragraph,children:_?_.busy||(u?`Dismissed.`:_.message||lt(_)):`Checking status…`}):null,A&&(!l||u)?w(Z,{children:w(Q,{busy:m?.type===`acknowledge-codex`,disabledReason:_?.busy,icon:R,onClick:()=>void t({id:A.id,type:`acknowledge-codex`}),primary:!0,children:`Continue`})}):null,F&&!u&&_?.mode===`waiting`&&_.message&&!pt(_)?T(`p`,{className:K.paragraph,children:[`Run `,w(`code`,{children:`git switch main`}),` in the primary checkout to resume synchronization.`]}):null,F&&N&&!j?w(`pre`,{className:K.pendingCommits,children:(N.commits??[N]).map(e=>`${e.shortCommit} ${e.subject}`).join(`
|
|
181
|
+
`)}):null,F&&!u?_?.warnings.map((e,t)=>w(`p`,{className:`${K.paragraph} ${K.warning}`,children:e},`${t}-${e}`)):null,F&&j?T(C,{children:[T(`div`,{className:K.changeList,"aria-label":`Changed files`,tabIndex:0,children:[j.tracked?T(`section`,{className:K.fileGroup,children:[w(`h3`,{className:K.sectionTitle,children:`Tracked changes · included automatically`}),j.trackedFiles?.map(e=>T(`div`,{className:K.trackedFile,children:[w(nt,{status:e.status}),T(`span`,{className:K.filePath,children:[e.originalPath?`${e.originalPath} → `:``,e.path]})]},e.path))]}):null,[{label:`Untracked files`,files:j.untracked.filter(e=>!j.artifactFiles?.includes(e)),toggle:`Include all untracked files`},{label:`Build artifacts · excluded by default`,files:j.artifactFiles??[],toggle:`Include build artifacts`}].filter(e=>e.files.length>0).map(e=>T(`section`,{className:K.fileGroup,children:[w(`h3`,{className:K.sectionTitle,children:e.label}),e.files.length>0?w(rt,{checked:e.files.every(e=>I.has(e)),indeterminate:!e.files.every(e=>I.has(e))&&e.files.some(e=>I.has(e)),label:e.toggle,onChange:t=>D({fingerprint:j.fingerprint,paths:new Set(t?[...I,...e.files]:[...I].filter(t=>!e.files.includes(t)))})}):null,e.files.map(e=>w(rt,{checked:I.has(e),label:T(C,{children:[w(nt,{status:`??`}),w(`span`,{className:K.filePath,children:e})]}),onChange:t=>D(()=>{let n=new Set(I);return t?n.add(e):n.delete(e),{fingerprint:j.fingerprint,paths:n}})},e))]},e.label))]}),te?ne===void 0?T(Z,{children:[N?w(Q,{busy:m?.type===`reject`,disabledReason:_.busy,icon:ge,onClick:()=>void t({type:`reject`}),children:`Reject`}):null,w(Q,{busy:m?.type===`message`,disabledReason:_.busy,icon:_e,onClick:()=>void t({type:`message`,fingerprint:j.fingerprint,untracked:[...I]}),primary:!0,children:`Generate commit message`})]}):T(C,{children:[w(`textarea`,{"aria-label":`Commit message`,className:K.message,onChange:e=>S({fingerprint:j.fingerprint,proposal:ne,value:e.target.value}),value:L}),N?w(We,{disabled:!!_.busy,onChange:re,value:a}):null,T(Z,{children:[N?w(Q,{busy:m?.type===`reject`,disabledReason:_.busy,icon:ge,onClick:()=>void t({type:`reject`}),children:`Reject`}):null,w(Q,{busy:m?.type===(N?`apply`:`commit`),disabledReason:_.busy,icon:fe,onClick:()=>{t(N?{type:`apply`,target:N.commit,fingerprint:j.fingerprint,untracked:[...I],message:L,codex:a}:{type:`commit`,fingerprint:j.fingerprint,untracked:[...I],message:L})},primary:!0,children:N?`Commit and refresh`:`Commit changes`}),ne===``?w(Q,{busy:m?.type===`message`,disabledReason:_.busy,icon:_e,onClick:()=>void t({type:`message`,fingerprint:j.fingerprint,untracked:[...I]}),children:`Retry generation`}):null]})]}):T(C,{children:[w(`p`,{className:K.paragraph,children:`Unchecked files stay on disk and will not be committed.`}),N?T(C,{children:[w(We,{disabled:!!_.busy,onChange:re,value:a}),w(Z,{children:w(Q,{icon:z,primary:!0,disabledReason:_.busy,busy:m?.type===`apply`,onClick:()=>void t({type:`apply`,target:N.commit,fingerprint:j.fingerprint,untracked:[],codex:a}),children:`Refresh`})})]}):w(`p`,{className:K.paragraph,children:`Select files to commit.`})]})]}):F&&M?T(C,{children:[w(`p`,{className:K.paragraph,children:M.applied>0?`The update replayed ${M.applied} of ${M.applied+M.commits.length} commits before stopping on a conflict. The cleanly applied commits are already on your branch; Codex can resolve the rest.`:`The update stopped on a conflict before any commit could be replayed. Codex can resolve your commits.`}),w(`div`,{className:K.files,children:M.files.map(e=>w(`span`,{className:K.filePath,children:e},e))}),M.commits.length>0?w(`pre`,{className:K.pendingCommits,children:M.commits.map(e=>`${e.shortCommit} ${e.subject}`).join(`
|
|
182
|
+
`)}):null,w(We,{disabled:!!_.busy,onChange:re,value:a}),T(Z,{children:[w(Q,{busy:m?.type===`decline-rebase`,disabledReason:_.busy,icon:ye,onClick:()=>void t({type:`decline-rebase`}),children:`Decline`}),w(Q,{busy:m?.type===`resolve-rebase`,disabledReason:_.busy,icon:_e,onClick:()=>void t({codex:a,type:`resolve-rebase`}),primary:!0,children:`Resolve with Codex`})]})]}):F&&N?T(C,{children:[w(We,{disabled:!!_.busy,onChange:re,value:a}),w(Z,{children:w(Q,{busy:m?.type===`prepare`,disabledReason:_.busy,icon:z,onClick:()=>void t({type:`prepare`,target:N.commit,codex:a}),primary:!0,children:N.source===`upstream`?`Refresh`:String(N.source)===`dev`?`Sync with dev`:`Sync with main`})})]}):null,ee&&!u&&!l&&!(F&&_?.setupFailure)?w(Z,{children:w(Q,{ariaLabel:`Dismiss error`,icon:R,immediatelyEnabled:!0,requiresConnection:!1,onClick:c,children:`Dismiss`})}):null,k&&n(k)?w(Z,{children:w(Q,{ariaLabel:`Cancel update`,busy:m?.type===`cancel-codex`||k.cancellation===`requested`,disabledReason:_?.mode===`managed`?k.cancellation===`unavailable`?`Finishing the current step`:void 0:`Reconnecting`,immediatelyEnabled:!0,icon:ye,onClick:()=>void t({type:`cancel-codex`,operationId:k.id}),children:k.cancellation===`requested`?k.cancellationDeferred?`Finishing publication…`:`Cancelling…`:m?.type===`cancel-codex`?`Requesting cancellation…`:`Cancel update`})}):null,!A&&!v&&!j&&!N&&!M&&!n(k)&&!_?.busy&&!(!k&&P&&P.phase!==`error`)&&!(ee&&!u)&&!(F&&_?.setupFailure&&!u)&&(k||_?.message||_?.warnings.length||_&&_.mode!==`managed`)?w(Z,{children:w(Q,{icon:R,immediatelyEnabled:!0,requiresConnection:!1,onClick:f,children:`Dismiss`})}):null]})})}function We({disabled:e=!1,onChange:t,value:n}){let[a,o]=b(!1),[s,c]=b({top:0,left:0}),l=y(null),u=y(null),d=_(),f=y(null);v(()=>{let e=u.current?.getBoundingClientRect();if(a&&e&&f.current){let t=f.current.getBoundingClientRect().height;c({top:e.bottom+8+t<=window.innerHeight-8?e.bottom+8:Math.max(8,e.top-t-8),left:Math.max(8,Math.min(e.left,window.innerWidth-228))})}},[a]);let p=()=>{if(a)return;let e=u.current?.getBoundingClientRect();e&&c({top:Math.max(8,e.top-190),left:Math.max(8,Math.min(e.left,window.innerWidth-228))}),o(!0)};return g(()=>{if(!a)return;let e=e=>{l.current&&!e.composedPath().includes(l.current)&&o(!1)};return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[a]),w(Z,{children:T(`div`,{className:K.codexSettings,ref:l,onMouseEnter:p,onMouseLeave:e=>{e.currentTarget.matches(`:focus-within`)||o(!1)},onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||o(!1)},onKeyDown:e=>{e.key===`Escape`&&a&&(e.stopPropagation(),o(!1),u.current?.focus())},children:[w(`button`,{type:`button`,ref:u,className:K.iconButton,"aria-label":`Codex settings: ${n.model===`gpt-6.1-sol`?`Sol`:`Luna`}, ${n.effort} effort`,"aria-expanded":a,"aria-controls":d,"aria-haspopup":`dialog`,onClick:p,children:w(`svg`,{"aria-hidden":`true`,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`currentColor`,fillRule:`evenodd`,children:w(`path`,{d:`M9.205 8.658v-2.26c0-.19.072-.333.238-.428l4.543-2.616c.619-.357 1.356-.523 2.117-.523 2.854 0 4.662 2.212 4.662 4.566 0 .167 0 .357-.024.547l-4.71-2.759a.797.797 0 00-.856 0l-5.97 3.473zm10.609 8.8V12.06c0-.333-.143-.57-.429-.737l-5.97-3.473 1.95-1.118a.433.433 0 01.476 0l4.543 2.617c1.309.76 2.189 2.378 2.189 3.948 0 1.808-1.07 3.473-2.76 4.163zM7.802 12.703l-1.95-1.142c-.167-.095-.239-.238-.239-.428V5.899c0-2.545 1.95-4.472 4.591-4.472 1 0 1.927.333 2.712.928L8.23 5.067c-.285.166-.428.404-.428.737v6.898zM12 15.128l-2.795-1.57v-3.33L12 8.658l2.795 1.57v3.33L12 15.128zm1.796 7.23c-1 0-1.927-.332-2.712-.927l4.686-2.712c.285-.166.428-.404.428-.737v-6.898l1.974 1.142c.167.095.238.238.238.428v5.233c0 2.545-1.974 4.472-4.614 4.472zm-5.637-5.303l-4.544-2.617c-1.308-.761-2.188-2.378-2.188-3.948A4.482 4.482 0 014.21 6.327v5.423c0 .333.143.571.428.738l5.947 3.449-1.95 1.118a.432.432 0 01-.476 0zm-.262 3.9c-2.688 0-4.662-2.021-4.662-4.519 0-.19.024-.38.047-.57l4.686 2.71c.286.167.571.167.856 0l5.97-3.448v2.26c0 .19-.07.333-.237.428l-4.543 2.616c-.619.357-1.356.523-2.117.523zm5.899 2.83a5.947 5.947 0 005.827-4.756C22.287 18.339 24 15.84 24 13.296c0-1.665-.713-3.282-1.998-4.448.119-.5.19-.999.19-1.498 0-3.401-2.759-5.947-5.946-5.947-.642 0-1.26.095-1.88.31A5.962 5.962 0 0010.205 0a5.947 5.947 0 00-5.827 4.757C1.713 5.447 0 7.945 0 10.49c0 1.666.713 3.283 1.998 4.448-.119.5-.19 1-.19 1.499 0 3.401 2.759 5.946 5.946 5.946.642 0 1.26-.095 1.88-.309a5.96 5.96 0 004.162 1.713z`})})}),a?T(`div`,{role:`dialog`,ref:f,"aria-label":`Codex settings`,id:d,className:K.codexSettingsPopover,style:s,children:[w(`span`,{className:K.sectionTitle,children:`Conflict resolution`}),w(`div`,{role:`group`,"aria-label":`Codex model`,className:K.modelToggle,children:i.map(r=>w(`button`,{type:`button`,"aria-pressed":n.model===r,disabled:e,onClick:()=>t({...n,model:r}),children:r===`gpt-6.1-sol`?`Sol`:`Luna`},r))}),T(`label`,{className:K.effortControl,children:[T(`span`,{children:[`Effort`,` `,w(`strong`,{children:{low:`Low`,medium:`Medium`,high:`High`,xhigh:`Extra high`,max:`Max`}[n.effort]})]}),w(`input`,{"aria-label":`Reasoning effort`,type:`range`,min:0,max:r.length-1,step:1,disabled:e,value:r.indexOf(n.effort),"aria-valuetext":n.effort,style:{"--effort-progress":`${r.indexOf(n.effort)/(r.length-1)*100}%`},onInput:e=>t({...n,effort:r[Number(e.currentTarget.value)]})}),T(`span`,{className:K.effortEndpoints,children:[w(`span`,{children:`Low`}),w(`span`,{children:`Max`})]})]})]}):null]})})}function Ge({controls:e}){return T(`div`,{"aria-label":`Development controls`,className:K.developmentControls,role:`menu`,children:[T(Z,{children:[w(Q,{immediatelyEnabled:!0,icon:z,requiresConnection:!1,onClick:e.reloadPage,role:`menuitem`,children:`Reload page`}),w(Q,{busy:e.pending,immediatelyEnabled:!0,icon:ge,onClick:e.restartVite,primary:!0,role:`menuitem`,children:e.pending?`Restarting Vite…`:`Restart Vite`})]}),e.error?T(C,{children:[w(`div`,{className:K.actionError,role:`alert`,children:w(ot,{children:`Vite restart failed: ${e.error}`})}),w(Z,{children:w(Q,{ariaLabel:`Dismiss restart error`,icon:ye,iconOnly:!0,immediatelyEnabled:!0,onClick:e.dismissError,role:`menuitem`,children:`Dismiss`})})]}):null,e.success?T(`div`,{className:K.actionSuccess,role:`status`,children:[w(ae,{"aria-hidden":`true`,className:K.successIcon,size:18}),w(`p`,{className:K.paragraph,children:e.success})]}):null]})}function Ke(e){return e.state===`cancelled`?`Update cancelled`:e.state===`failed`?`Update failed`:e.state===`interrupted`?`Update interrupted`:e.state===`succeeded`?`Update complete`:e.state===`cancelling`?e.cancellationDeferred?`Finishing publication before stopping…`:`Cancelling update…`:o[e.phase]}function qe({status:e,operation:t,codex:n,onInspect:r}){let i=y(null),a=t.source===`dev`?`local dev`:`upstream`,o=t.progress?.applied,s=t.steps.filter(e=>e.status===`succeeded`),c=t.steps.filter(e=>e.status!==`succeeded`),l=!!(e.checks?.commands.length&&e.checks.commit===e.currentCommit&&e.checks.commands.every(e=>e.status===`passed`)),u=s.some(e=>e.phase===`setup`);return T(`div`,{className:K.completionReceipt,children:[T(`div`,{role:`status`,children:[T(`p`,{className:K.paragraph,children:[t.kind===`rebase`?`Rebased onto ${a}.`:`Changes applied from ${a}.`,o===void 0?``:` ${o} commit${o===1?``:`s`} ${t.kind===`rebase`?`replayed`:`applied`}.`,t.progress?.skipped?` ${t.progress.skipped} skipped.`:``]}),l?w(`p`,{className:K.completionNote,children:u?`Setup and checks passed.`:`Project checks passed.`}):null]}),T(`details`,{className:K.completionDetails,onToggle:e=>{e.currentTarget.open&&r?.()},children:[w(`summary`,{className:K.codexHistorySummary,style:q,children:`Details`}),T(`div`,{className:K.completionDetailBody,children:[T(`div`,{className:K.completionMetadata,children:[T(`span`,{children:[t.kind===`rebase`?`Rebase`:t.kind===`merge`?`Merge`:`Sync`,` `,`· `,a,` `,w(`code`,{children:t.target.slice(0,12)})]}),w(`span`,{children:X(Math.floor(((t.finishedAt??t.updatedAt)-t.startedAt)/1e3))})]}),s.length?w(`table`,{className:K.completionSteps,"aria-label":`Completed update steps`,children:w(`tbody`,{children:s.map(e=>T(`tr`,{children:[w(`td`,{children:w(R,{"aria-label":`Succeeded`,size:14})}),w(`td`,{children:e.label}),w(`td`,{children:e.finishedAt===void 0?``:X(Math.floor((e.finishedAt-e.startedAt)/1e3))})]},e.id))})}):null,c.length?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`Earlier attempts (`,c.length,`)`]}),c.map(e=>T(`p`,{className:K.completionNote,children:[e.label,` ·`,` `,e.status===`running`?`No final status recorded`:e.status===`failed`?`Failed attempt`:`Interrupted attempt`]},e.id))]}):null,t.turns.length?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`Conflict resolution history · `,t.turns.length,` turns`]}),w(Ye,{outputRef:i,turns:t.turns,messages:n?.messages??[],commits:n?.commits??[],stage:n?.stage??`resolve`,working:!1,historyTruncated:t.historyTruncated})]}):null,T(`details`,{children:[w(`summary`,{className:K.codexHistorySummary,style:q,children:`Logs and operation ID`}),w(`p`,{className:K.completionNote,children:w(`code`,{children:t.id})}),w(Xe,{activities:t.activities})]})]})]})]})}function Je({operation:e}){let t=e.progress;return T(`section`,{"aria-label":`Update progress`,className:K.activityList,children:[T(`div`,{className:K.activityHeading,children:[e.kind===`merge`?`Merge`:e.kind===`fast-forward`?`Sync`:`Rebase`,` `,`· `,e.source,` `,w(`code`,{children:e.target.slice(0,12)}),` · #`,e.id.slice(0,8),` ·`,` `,n(e)?w(Qe,{startedAt:e.startedAt}):w(`span`,{children:X(Math.floor(((e.finishedAt??e.updatedAt)-e.startedAt)/1e3))})]}),e.kind===`rebase`&&t?.total?T(`p`,{className:K.paragraph,children:[t.applied,`/`,t.total,` applied · `,t.skipped,` skipped ·`,` `,t.remaining??Math.max(0,t.total-t.applied-t.skipped),` `,`remaining`]}):null,t?.current?T(`p`,{className:K.paragraph,children:[w(`code`,{children:t.current.shortCommit}),` `,t.current.subject]}):null,t?.files?.length?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`Conflicted files (`,t.files.length,`)`]}),w(`div`,{className:K.files,children:t.files.map(e=>w(`span`,{className:K.filePath,children:e},e))})]}):null,e.message?w(`p`,{className:K.paragraph,role:`status`,children:e.state===`succeeded`?`Update complete.`:e.message}):null,e.steps.length?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`Steps (`,e.steps.length,`)`]}),[...e.steps].sort((e,t)=>e.startedAt-t.startedAt).map(e=>T(`p`,{className:K.paragraph,children:[e.label,` · `,e.status,e.finishedAt?` · ${X(Math.floor((e.finishedAt-e.startedAt)/1e3))}`:``]},e.id))]}):null]})}function Ye({turns:t,historyTruncated:n,commits:r,completion:i,messages:a,outputRef:o,stage:s,totalCommits:c,working:l}){let u=[...a].reverse().find(e=>e.kind===`user`),d=[...a].reverse().find(e=>e.kind!==`user`),f=i?[...a].reverse().find(e=>e.kind===`agent`&&e.text===i.finalMessage):d,p=a.filter(e=>e.kind!==`user`&&e!==f),m=i?f??{author:[...a].reverse().find(e=>e.kind===`agent`)?.author,kind:`agent`,text:i.finalMessage}:d,h=f?`message-${a.lastIndexOf(f)}`:`completion`;return T(C,{children:[l?w(`div`,{className:K.codexWorking,children:w(e,{className:K.codexWorkingSpinner,label:s===`verify`?`Codex is verifying the update`:`Codex is resolving conflicts`,children:w(Qe,{})})}):null,T(`div`,{"aria-live":i?void 0:`polite`,className:K.codexTranscript,ref:o,role:`log`,children:[t&&t.length>1?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`Earlier turns (`,t.length-1,`)`]}),t.slice(0,-1).map((e,t)=>T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[e.stage===`verify`?`Verification`:`Resolution`,` `,t+1,` ·`,` `,e.status]}),e.messages.map((e,t)=>w(et,{message:e},t))]},e.id))]}):null,n?w(`p`,{className:K.codexWaiting,children:`Earlier output truncated to limit transcript size.`}):null,u?t?T(`details`,{children:[w(`summary`,{className:K.codexHistorySummary,style:q,children:`Instructions`}),w(et,{message:u})]}):w(et,{message:u}):null,p.length>0?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`History (`,p.length,`)`]}),w(`div`,{className:K.codexHistoryList,children:p.map((e,t)=>w(et,{message:e},`history-${t}`))})]}):null,m?w(et,{message:m,showAge:!0},h):w(`p`,{className:K.codexWaiting,children:`Waiting for Codex output…`}),!t&&c?w($e,{rebased:r.length,total:c}):null]})]})}function Xe({activities:e}){let t=e.filter(e=>e.status===`running`),n=e.filter(e=>[`failed`,`cancelled`,`interrupted`].includes(e.status)),r=e.filter(e=>e.status===`succeeded`);return e.length?T(`section`,{className:K.activityList,"aria-label":`Activity`,children:[T(`div`,{className:K.activityHeading,"aria-live":`polite`,children:[`Activity`,t.length?` · ${t.length} running`:``]}),[...t,...n].map(e=>w(Ze,{activity:e},e.id)),r.length?T(`details`,{children:[T(`summary`,{className:K.codexHistorySummary,style:q,children:[`Recent activity (`,r.length,`)`]}),r.slice().reverse().map(e=>w(Ze,{activity:e},e.id))]}):null]}):null}function Ze({activity:e}){let[t,n]=b(Date.now);g(()=>{if(e.status!==`running`)return;let t=globalThis.setInterval(()=>n(Date.now()),1e3);return()=>globalThis.clearInterval(t)},[e.status]);let r=Math.max(0,Math.floor(((e.finishedAt??t)-e.startedAt)/1e3));return T(`details`,{className:K.activityRow,children:[T(`summary`,{className:K.activitySummary,style:q,children:[w(`span`,{children:e.label}),T(`span`,{className:K.activityStatus,children:[e.status,` · `,X(r)]}),e.command?w(`code`,{className:K.activityCommand,children:e.command}):null]}),T(`p`,{className:K.activityMeta,children:[e.source===`codex`?`Codex`:`Supervisor`,e.stage?` · ${e.stage}`:``,e.exitCode===void 0?``:` · Exit code ${e.exitCode}`]}),e.output?w(`pre`,{className:K.activityOutput,children:e.output}):null]})}function Qe({startedAt:e}={}){let t=y(0),[n,r]=b(0);return g(()=>{t.current=e??Date.now();let n=()=>{r(Math.floor((Date.now()-t.current)/1e3))};n();let i=globalThis.setInterval(n,1e3);return()=>globalThis.clearInterval(i)},[e]),T(C,{children:[`Working for `,X(n),`…`]})}function $e({rebased:e,total:t}){let n=Math.min(e,t),r=Math.round(n/t*100);return T(`section`,{"aria-label":`Rebase progress`,className:K.rebaseProgress,children:[T(`div`,{className:K.rebaseProgressLabel,children:[T(`strong`,{children:[r,`% rebased`]}),T(`span`,{children:[n,` of `,t,` commits`]})]}),w(`div`,{"aria-valuemax":t,"aria-valuemin":0,"aria-valuenow":n,className:K.rebaseProgressTrack,role:`progressbar`,children:w(`span`,{className:K.rebaseProgressFill,style:{width:`${r}%`}})})]})}function et({message:e,showAge:t=!1}){let n=e.kind===`user`?`Request`:e.kind===`thought`?`Thought`:e.author??`Codex`;return T(`section`,{className:K.codexMessage,children:[T(`div`,{className:K.codexMessageHeader,children:[w(`h3`,{className:K.codexMessageLabel,children:n}),t?w(tt,{}):null]}),w(`p`,{className:K.codexMessageText,children:e.text})]})}function tt(){let e=y(0),[t,n]=b(0);return g(()=>{e.current=Date.now();let t=globalThis.setInterval(()=>{n(Math.floor((Date.now()-e.current)/1e3))},1e3);return()=>globalThis.clearInterval(t)},[]),T(`span`,{"aria-hidden":`true`,className:K.codexMessageAge,children:[X(t),` ago`]})}function X(e){let t=Math.floor(e/60),n=e%60;return t>0?`${t}m ${n}s`:`${n}s`}function nt({status:e}){let[t,n,r]=e===`??`?[`U`,`Untracked`,`added`]:e.includes(`U`)||e===`AA`||e===`DD`?[`!`,`Conflict`,`deleted`]:e.includes(`R`)?[`R`,`Renamed`,`renamed`]:e.includes(`C`)?[`C`,`Copied`,`renamed`]:e.includes(`D`)?[`D`,`Deleted`,`deleted`]:e.includes(`A`)?[`A`,`Added`,`added`]:e.includes(`T`)?[`T`,`Type changed`,`modified`]:[`M`,`Modified`,`modified`];return w(`span`,{className:K.fileStatus,"data-tone":r,title:n,"aria-label":n,children:t})}function rt({checked:e,indeterminate:t=!1,label:n,onChange:r}){let i=y(null);return g(()=>{i.current&&(i.current.indeterminate=t)},[t]),T(`label`,{className:K.checkbox,children:[w(`input`,{ref:i,checked:e,onChange:e=>r(e.target.checked),type:`checkbox`}),n]})}const it=u(void 0);function at({children:e}){let[t,n]=b(null);return T(it.Provider,{value:t,children:[w(`div`,{className:K.content,children:e}),w(`div`,{className:K.notificationActions,ref:n})]})}function Z({children:e}){let t=h(it);return t===void 0?w(`div`,{className:K.actions,children:e}):t?S(e,t):null}function ot({children:e}){return T(`div`,{className:K.errorMessage,children:[w(ve,{"aria-hidden":`true`,className:K.errorIcon,size:18}),w(`p`,{className:K.paragraph,children:e})]})}function Q({requiresConnection:e=!0,ariaLabel:t,busy:n,children:r,disabledReason:i,icon:a,iconOnly:o=!1,immediatelyEnabled:s=!1,onClick:c,primary:l=!1,role:u}){let d=h(De),f=i??(!d&&e?`Connection lost; wait for reconnection`:void 0),[p,m]=b(!0),[v,y]=b(),x=_(),C=f?`Please wait: ${f.replace(/[.\u2026]+$/,``)}.`:n?`Waiting for ${t??(typeof r==`string`?`“${r}”`:`this action`)} to finish.`:p&&!s?`Enabled in a moment to prevent accidental clicks.`:void 0;g(()=>{let e=globalThis.setTimeout(()=>m(!1),1e3);return()=>globalThis.clearTimeout(e)},[]);let E=e=>{let t=e.getBoundingClientRect(),n=e.closest(`[data-isolet-root]`);n&&y({left:Math.max(12,Math.min(t.left,window.innerWidth-292)),top:t.top-8,root:n})};return T(`span`,{"aria-describedby":C?x:void 0,"aria-label":C?t??(typeof r==`string`?r:void 0):void 0,className:K.buttonContainer,onBlur:()=>y(void 0),onFocus:e=>E(e.currentTarget),onKeyDown:e=>{e.key===`Escape`&&C&&v&&(e.stopPropagation(),y(void 0))},onMouseEnter:e=>E(e.currentTarget),onMouseLeave:()=>y(void 0),onPointerDown:e=>{C&&e.currentTarget.focus()},tabIndex:C?0:void 0,children:[T(`button`,{"aria-label":t,"aria-busy":!!n,"aria-describedby":C?x:void 0,className:`${K.button} ${o?K.iconOnly:``} ${l?K.primary:``}`,disabled:!!C,onClick:c,role:u,title:!C&&o?t:void 0,type:`button`,children:[n?w(me,{"aria-hidden":`true`,className:K.buttonSpinner,size:16}):a?w(a,{"aria-hidden":`true`,size:16}):null,o?null:r]}),C?w(`span`,{className:K.srOnly,id:x,children:C}):null,C&&v?S(w(`span`,{className:K.disabledTooltip,role:`tooltip`,style:{left:v.left,top:v.top},children:C}),v.root):null]})}function st(e){return e?e.mode===`waiting`&&e.message?`Sync paused`:e.mode===`unmanaged`?`Sync unavailable`:e.mode===`error`?`Sync stopped`:e.setupFailure?.stage===`dependencies`?`Dependency installation failed`:e.setupFailure?.stage===`codegen`?`Panda codegen failed`:e.setupFailure?.stage===`migration`?`Database setup failed`:e.draft?e.proposal===void 0?`Review local changes`:`Confirm your commit`:e.pendingRebase?`Resolve update conflicts`:e.target?.source===`upstream`?`Refresh from upstream`:String(e.target?.source)===`dev`?`Sync with dev`:e.target?`Sync with main`:e.checks?.commands.some(e=>e.status===`failed`&&!e.dismissed)?`Checks failed`:e.warnings.length>0?`Warning`:`Managed development`:`Managed development`}function ct({codex:e,completion:t,status:n,success:r}){return e||t?_e:n?.setupFailure?.stage===`migration`?ue:n?.setupFailure?.stage===`dependencies`?he:n?.setupFailure?.stage===`codegen`?z:n?.draft?fe:n?.pendingRebase?_e:n?.target?.source===`upstream`?ce:n?.target?z:n?.checks?.commands.some(e=>e.status===`failed`&&!e.dismissed)?pe:r?ae:n?n.mode===`waiting`?se:n.mode===`unmanaged`?oe:n.mode===`error`||n.warnings.length>0?ve:ae:z}function lt(e){return e.mode===`waiting`?`Waiting for the supervisor to start.`:e.mode===`unmanaged`?`Managed development is unavailable for this session.`:e.mode===`error`?`The managed development supervisor stopped.`:e.draft&&!e.target?`Review which local changes to include.`:e.pendingRebase?`The update stopped on a conflict.`:e.target&&e.target.source!==`upstream`?String(e.target?.source)===`dev`?`New commits are available on dev.`:`New commits are available on main.`:e.target?`A newer upstream commit is ready.`:``}function ut(e,t,n){let r=[t,n?.phase===`error`?n.requestId:void 0,e?.mode===`error`||e?.mode===`unmanaged`?e.mode:void 0,e?.message,e?.setupFailure,e?.warnings.length?e.warnings:void 0];return r.some(Boolean)?JSON.stringify(r):void 0}function dt(e,t){return JSON.stringify([e,t.command,t.output])}function ft(e){return e?.mode===`error`&&e.message?.startsWith(s)===!0}function pt(e){return e?.message?.startsWith(c)===!0}function mt(e){return e.mode!==`managed`||!!(e.busy||e.codexCompletion||e.draft||e.message||e.pendingRebase||e.setupFailure||e.target||e.warnings.length>0)}function ht(e){if(!e?.checks||mt(e))return;let t=e.checks.commands.find(e=>e.status===`failed`&&!e.dismissed);return t?{check:t,commit:e.checks.commit,trigger:e.checks.trigger}:void 0}function gt({commit:e,trigger:t}){let n=e.slice(0,12);return t===`codegen-recovery`?`Ran after Panda codegen recovered at commit ${n}.`:t===`dependency-recovery`?`Ran after dependency installation recovered at commit ${n}.`:t===`database-recovery`?`Ran after database setup recovered at commit ${n}.`:`Ran after the update was applied at commit ${n}.`}function _t({status:e,codex:t,error:n,success:r,pendingAction:i,controls:a}){return!!($(e)||e?.operation?.state===`succeeded`||t||n||r||i||a?.pending||a?.error||a?.success||e?.activities?.some(e=>e.status!==`succeeded`))}function $(e,t=ht(e)){return e?e.mode===`waiting`?!!e.message:e.operation?.state===`succeeded`?!!(t||e.codexCompletion||e.setupFailure||e.pendingRebase||e.draft||e.target||e.busy||e.warnings.length||e.mode!==`managed`):!!(e.operation||t||mt(e)):!1}function vt(e){let t=new Set(e.filter(e=>e.kind===`user`)),n=[...t].reduce((e,t)=>e+t.text.length,0),r=!1;for(let i of[...e].reverse())if(i.kind!==`user`){if(n+i.text.length>1e5&&r)break;t.add(i),r=!0,n+=i.text.length}return e.filter(e=>t.has(e))}function yt(e){return[e.message,`Commit: ${e.commit}`,`Command: ${e.command}`,``,e.output].join(`
|
|
183
|
+
`)}function bt(){let[e,n]=b(),[r,i]=b(!1),[a,o]=b(),s=be(),c=y(void 0);return g(()=>{if(!s)return;let e=e=>{if(e.requestId===c.current){if(e.state===`busy`){i(!0);return}if(c.current=void 0,i(!1),e.state===`error`){o(void 0),n(e.error??`The Vite restart failed.`);return}n(void 0),o(`Vite restarted.`)}},r=()=>{c.current&&(c.current=void 0,i(!1),o(void 0),n(`The connection was interrupted during the restart. Reconnect before trying again.`))};return s.on(t.actionResult,e),s.on(B.disconnect,r),()=>{s.off(t.actionResult,e),s.off(B.disconnect,r)}},[s]),{dismissError:()=>n(void 0),error:e,pending:r,reloadPage:()=>globalThis.location.reload(),restartVite:()=>{if(r)return;if(n(void 0),o(void 0),!s){n(`The Vite HMR connection is unavailable.`);return}let e=globalThis.crypto.getRandomValues(new Uint32Array(4)).join(`-`);c.current=e,i(!0),s.send(t.action,{action:{type:`restart-vite`},requestId:e})},success:a}}function xt(e){return e.type===`apply`?{heading:`Refresh complete`,message:`Your changes were committed and the project is up to date.`}:e.type===`prepare`?{heading:`Refresh complete`,message:`Your project is up to date.`}:e.type===`commit`?{heading:`Changes committed`,message:`Your local changes are committed. Checking for updates…`,preserveDuringStatus:!0}:e.type===`reject`?{heading:`Update dismissed`,message:`No further action needed.`}:e.type===`configure-codex`?{heading:`Codex preferences saved`,message:`Future Codex runs will use this model and effort.`}:e.type===`decline-rebase`?{heading:`Conflict resolution deferred`,message:`Applied changes stay on your branch. The remaining commits can be resolved later.`}:e.type===`resolve-rebase`?{heading:`Refresh complete`,message:`Codex resolved the remaining conflicts and the project is up to date.`}:e.type===`retry-install`?{heading:`Setup complete`,message:`Dependencies installed and the project is ready.`}:e.type===`retry-codegen`?{heading:`Codegen complete`,message:`Panda codegen finished.`}:e.type===`reset-database`?{heading:`Database reset complete`,message:`The database was recreated, migrated, and seeded.`}:e.type===`retry-supervisor`?{heading:`Reconnected`,message:`The supervisor is connected again.`}:e.type===`cancel-codex`?{heading:`Update cancelled`,message:`Codex conflict resolution cancelled.`}:{heading:`Action complete`,message:`No further action needed.`}}function St(e){let t=e.turns.at(-1);if(t)return{commits:[],messages:t.finalMessage&&!t.messages.some(e=>e.kind===`agent`&&e.text===t.finalMessage)?[...t.messages,{kind:`agent`,text:t.finalMessage}]:t.messages,phase:e.state===`failed`||e.state===`interrupted`?`error`:t.status===`running`&&n(e)?`running`:`complete`,requestId:e.requestIds.at(-1)??e.id,stage:t.stage,totalCommits:e.progress?.total}}function Ct(){let[e,t]=b(),[r,i]=b(),[o,s]=b(!1),[c,l]=b(),[u,d]=b(),[f,p]=b(Ee),[h,_]=b(),[v,x]=b({dismissed:!1}),[S,C]=b(()=>new Set),w=y(void 0),T=y(void 0),E=y(new Map),D=xe(),[O]=b(Oe),k=y(void 0),A=y(new Set),j=y(void 0),M=ut(e,r,u),N=!!(M&&M===v.key&&v.dismissed);M!==v.key&&x({key:M,dismissed:!1});let P=e?.checks&&S.size>0?{...e,checks:{...e.checks,commands:e.checks.commands.map(t=>!t.failureId&&S.has(dt(e.checks.commit,t))?{...t,dismissed:!0}:t)}}:e;g(()=>{if(!D)return;let e=E.current,r=e=>{try{D.send(a.diagnostic,e)}catch{}},o,c=Date.now(),u=()=>{try{e.size?D.send(a.statusRequest,{clientId:O,requestIds:[...e.keys()]}):D.send(a.statusRequest)}catch{s(!1)}},f=()=>{r({type:`connected`}),s(!1),u()},m=()=>{r({type:`disconnected`}),s(!1),o=void 0},h=({status:a})=>{let u=k.current,f=a;if(f.trace&&u?.trace){if(f.trace.sessionId===u.trace.sessionId&&f.trace.revision<u.trace.revision||A.current.has(f.trace.sessionId))return!1;f.trace.sessionId!==u.trace.sessionId&&(A.current.add(u.trace.sessionId),A.current.size>8&&A.current.delete(A.current.values().next().value))}pt(f)&&!f.operation&&u?.operation&&(f={...f,operation:u.operation,activities:u.activities,trace:u.trace}),k.current=f,c=Date.now();let m=JSON.stringify([f.trace,f.mode,f.busy]);m!==o&&(o=m,r({type:`status-received`,sessionId:f.trace?.sessionId,revision:f.trace?.revision,requestId:f.trace?.operationId,busy:!!f.busy}));let h=$(f),g=pt(f);if(g&&(i(void 0),l(void 0)),f.operation){n(f.operation)&&j.current!==f.operation.id&&(j.current=f.operation.id,Y(!0));let t=g?void 0:St(f.operation);w.current=t,d(t);for(let[t,r]of e){let i=!n(f.operation);(f.operation.requestIds.includes(t)&&i||r.type===`cancel-codex`&&(f.operation.cancellation===`requested`||i))&&e.delete(t)}_([...e.values()].at(-1))}else u?.operation&&(w.current=void 0,d(void 0));s(!0),t(f),f.codexOptions&&p(e=>({...e,...f.codexOptions})),f.codexCompletion&&T.current!==f.codexCompletion.id&&(T.current=f.codexCompletion.id,Y(!0));let v=!f.busy&&!f.codexCompletion?[...e.entries()].filter(([,e])=>e.type===`acknowledge-codex`||e.type===`acknowledge-operation`).map(([e])=>e):[];if(v.length>0){for(let t of v)e.delete(t);_([...e.values()].at(-1)),l(void 0),h||Y(!1)}return h&&l(e=>e?.preserveDuringStatus?e:void 0),!0},g=t=>{if(r({type:`action-result-received`,requestId:t.requestId,sessionId:t.status?.trace?.sessionId,revision:t.status?.trace?.revision,busy:!!t.status?.busy,pending:e.has(t.requestId)}),t.errorCode===`UNKNOWN_REQUEST`&&k.current?.operation?.requestIds.includes(t.requestId))return;let n=t.status?h({status:t.status}):!0,a=e.get(t.requestId);if(a&&(e.delete(t.requestId),_([...e.values()].at(-1)),n)){if(a.type===`decline-rebase`&&!t.error&&t.status?.pendingRebase){Y(!1),l(void 0);return}if(t.status?.operation){l(void 0),t.error&&!t.status.operation.requestIds.includes(t.requestId)&&i(t.error);return}t.error?(w.current?.requestId===t.requestId&&(w.current=void 0,d(void 0)),i(t.error),a.type===`acknowledge-codex`&&Y(!0)):t.status?.codexCompletion?(T.current=t.status.codexCompletion.id,w.current=void 0,d(void 0),l(void 0),Y(!0)):a.type===`acknowledge-codex`?(l(void 0),t.status&&!$(t.status)&&Y(!1)):a.type===`dismiss-check`||a.type===`configure-codex`||a.type===`cancel-codex`?l(void 0):t.status&&(a.type===`commit`||!$(t.status))&&l(xt(a))}},v=t=>{if(k.current?.operation||t.phase===`activity`||!e.has(t.requestId))return;if(t.phase===`start`){let e={commits:t.commits,messages:[t.message],phase:`running`,requestId:t.requestId,stage:t.stage??`resolve`,totalCommits:t.totalCommits};w.current=e,d(e),Y(!0);return}let n=w.current;if(!n||n.requestId!==t.requestId)return;let r=t.phase===`message`?{...n,messages:vt([...n.messages,t.message]),phase:t.stage!==void 0&&t.stage!==n.stage?`running`:n.phase,stage:t.stage??n.stage}:t.phase===`complete`?{commits:n.commits,messages:n.messages,phase:`complete`,requestId:t.requestId,stage:t.stage??n.stage,totalCommits:n.totalCommits}:t.phase===`progress`?{...n,commits:t.commits,stage:t.stage??n.stage,totalCommits:t.totalCommits??n.totalCommits}:{...n,phase:`error`};w.current=r,d(r)};D.on(B.connect,f),D.on(B.disconnect,m),D.on(a.status,h),D.on(a.actionResult,g),D.on(a.codex,v),u();let y=globalThis.setInterval(()=>{(n(k.current?.operation)||e.size>0)&&(Date.now()-c>1e4&&s(!1),u())},1e3),b=()=>{document.visibilityState!==`hidden`&&(Date.now()-c>1e4&&s(!1),u())},x=wt(()=>{Tt()&&u()});return globalThis.addEventListener(`online`,b),globalThis.addEventListener(`focus`,b),globalThis.addEventListener(`pageshow`,b),document.addEventListener(`visibilitychange`,b),()=>{globalThis.clearInterval(y),x(),globalThis.removeEventListener(`online`,b),globalThis.removeEventListener(`focus`,b),globalThis.removeEventListener(`pageshow`,b),document.removeEventListener(`visibilitychange`,b),D.off(B.connect,f),D.off(B.disconnect,m),D.off(a.status,h),D.off(a.actionResult,g),D.off(a.codex,v)}},[D,O]);let F=async e=>{if(e.type===`acknowledge-codex`&&(T.current=e.id),i(void 0),x({key:M,dismissed:!1}),l(void 0),e.type!==`cancel-codex`&&(w.current=void 0,d(void 0)),!D||!o){i(`The Vite HMR connection is unavailable. Wait for reconnection before trying again.`);return}let t=globalThis.crypto.getRandomValues(new Uint32Array(4)).join(`-`);E.current.set(t,e),_(e),D.send(a.action,{clientId:O,action:e,requestId:t})},ee=m(()=>l(void 0),[]);return{act:F,checkFailure:(!r||N)&&!c&&(!u||N&&u.phase===`error`||e?.operation?.state===`failed`)&&(!e?.codexCompletion||e?.operation?.state===`failed`)?ht(P):void 0,codex:u,codexOptions:f,dismissCheckFailure:e=>{if(!e.check.failureId){C(t=>new Set(t).add(dt(e.commit,e.check)));return}F({failureId:e.check.failureId,type:`dismiss-check`})},dismissError:()=>x({key:M,dismissed:!0}),dismissSuccess:ee,error:r,errorsDismissed:N,hmrReady:o,pendingAction:h,setCodexOptions:p,status:P,success:c}}function wt(e){return Ae.add(e),()=>Ae.delete(e)}function Tt(){return ke}function Et(){return!1}export{Fe as ManagedDevOverlay,Re as ManagedDevOverlayDebug,He as ManagedDevOverlayIndicator,Pe as toggleManagedDevOverlay};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{t as e}from"../managed-dev-CRL5CLO7.js";export{e as coreframeManagedDevPlugin};
|
package/dist/plugins/preset.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{coreframeAssetsPlugin as e}from"./assets.js";import{coreframeDashboardPlugin as t}from"./dashboard.js";import{coreframeDevJobsPlugin as n}from"./dev-jobs.js";import{coreframeDevelopmentControlsPlugin as r}from"./development-controls.js";import{coreframeEnvironmentPlugin as i}from"./environment.js";import{coreframeFaviconPlugin as a}from"./favicon.js";import{coreframeFlutterDevToolsPlugin as o}from"./flutter-devtools.js";import{t as s}from"../icons-vb_lG-av.js";import{
|
|
1
|
+
import{coreframeAssetsPlugin as e}from"./assets.js";import{coreframeDashboardPlugin as t}from"./dashboard.js";import{coreframeDevJobsPlugin as n}from"./dev-jobs.js";import{coreframeDevelopmentControlsPlugin as r}from"./development-controls.js";import{coreframeEnvironmentPlugin as i}from"./environment.js";import{coreframeFaviconPlugin as a}from"./favicon.js";import{coreframeFlutterDevToolsPlugin as o}from"./flutter-devtools.js";import{t as s}from"../icons-vb_lG-av.js";import{t as c}from"../managed-dev-CRL5CLO7.js";import{coreframePreviewPlugin as l}from"./preview.js";import{coreframeStartupTimingPlugin as u}from"./startup-timing.js";import{t as d}from"../worktree-head-BZrhW1-Q.js";function f(f={}){return[u(),i(),l(f.config??{}),e(),...s(),r(),o(),n(),c(),d(),t(),...a(f.webManifest===void 0?void 0:{webManifest:f.webManifest})]}export{f as coreframeVitePreset};
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[data-isolet-root]{--overlay-font-body:"SN Pro Variable", system-ui, sans-serif;--overlay-font-monospace:"Google Sans Code Variable", ui-monospace, monospace;color-scheme:light dark;--oc-white:#fff;--oc-gray-0:#f8f9fa;--oc-gray-1:#f1f3f5;--oc-gray-2:#e9ecef;--oc-gray-3:#dee2e6;--oc-gray-4:#ced4da;--oc-gray-5:#adb5bd;--oc-gray-6:#868e96;--oc-gray-7:#495057;--oc-gray-8:#343a40;--oc-gray-9:#212529;--oc-red-0:#fff5f5;--oc-red-2:#ffc9c9;--oc-red-7:#f03e3e;--oc-red-9:#c92a2a;--oc-grape-0:#f8f0fc;--oc-grape-2:#eebefa;--oc-grape-7:#ae3ec9;--oc-grape-9:#862e9c;--oc-blue-0:#e7f5ff;--oc-blue-2:#a5d8ff;--oc-blue-4:#4dabf7;--oc-blue-6:#228be6;--oc-blue-7:#1c7ed6;--oc-blue-9:#1864ab;--oc-green-0:#ebfbee;--oc-green-2:#b2f2bb;--oc-green-7:#37b24d;--oc-green-9:#2b8a3e;--oc-yellow-0:#fff9db;--oc-yellow-2:#ffec99;--oc-yellow-7:#f59f00;--oc-yellow-9:#e67700;--overlay-background:var(--oc-white);--overlay-surface-subtle:var(--oc-gray-0);--overlay-surface-muted:var(--oc-gray-1);--overlay-border:var(--oc-gray-3);--overlay-border-strong:var(--oc-gray-4);--overlay-text:var(--oc-gray-9);--overlay-text-muted:var(--oc-gray-7);--overlay-text-subtle:var(--oc-gray-6);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:var(--oc-blue-0);--overlay-accent-border:var(--oc-blue-2);--overlay-accent-text:var(--oc-blue-9);--overlay-thought-soft:var(--oc-grape-0);--overlay-thought-border:var(--oc-grape-2);--overlay-thought-text:var(--oc-grape-9);--overlay-success-soft:var(--oc-green-0);--overlay-success-border:var(--oc-green-2);--overlay-success-text:var(--oc-green-9);--overlay-warning-soft:var(--oc-yellow-0);--overlay-warning-border:var(--oc-yellow-2);--overlay-warning-text:var(--oc-yellow-9);--overlay-danger-soft:var(--oc-red-0);--overlay-danger-border:var(--oc-red-2);--overlay-danger-text:var(--oc-red-9);color:var(--overlay-text);font:14px/1.45 var(--overlay-font-body)}.surface{--managed-dev-bottom-offset:0px;--managed-dev-right-offset:0px}.indicatorButton{appearance:none;bottom:calc(10px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset));cursor:pointer;pointer-events:auto;height:44px;right:calc(10px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset));background:0 0;border:0;justify-content:center;align-items:center;width:44px;padding:0;display:flex;position:fixed}.indicatorButton:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:-3px}.indicatorDot{background:var(--managed-dev-indicator-color);box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--overlay-border) 30%, transparent);height:var(--managed-dev-indicator-size);width:var(--managed-dev-indicator-size);border-radius:50%;display:block;position:relative}.indicatorDot:before{border:max(1px, calc(var(--managed-dev-indicator-size) / 9)) solid var(--managed-dev-indicator-color);border-radius:inherit;content:"";animation:1.8s ease-out infinite radiate;position:absolute;inset:0}.dialog{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 18px 60px color-mix(in srgb, var(--oc-gray-9) 28%, transparent), 0 2px 8px color-mix(in srgb, var(--oc-gray-9) 12%, transparent);color:var(--overlay-text);box-sizing:border-box;height:auto;bottom:20px;left:unset;overscroll-behavior:contain;pointer-events:auto;border-radius:12px;width:min(520px,100vw - 18px);max-width:min(520px,100vw - 18px);max-height:none;margin:0;padding:12px 18px;position:fixed;right:20px;overflow:hidden}.dialog[open]{flex-direction:column;gap:12px;display:flex}.drawerBody{align-content:start;gap:16px;min-height:80px;display:grid;overflow:auto}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.headerActions{align-items:center;display:flex}.developmentControlsDropdown{display:flex;position:relative}.title{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.titleIcon{color:var(--overlay-accent);flex:none}.iconButton{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:4px;display:inline-flex}.iconButton:hover{background:var(--overlay-surface-muted);border-radius:8px}.iconButton:focus-visible,.scenarioButton:focus-visible,.sectionLink:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.section{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:12px;gap:12px;padding:14px;display:grid}.sectionHeading{justify-content:space-between;align-items:start;gap:12px;display:flex}.sectionTitle{margin:0;font-size:13px}.sectionDescription{color:var(--overlay-text-muted);margin:3px 0 0;font-size:12px}.sectionLink{color:var(--overlay-accent-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-size:12px}.debugFooter{background:var(--overlay-thought-soft);border-top:.5px solid var(--overlay-thought-border);color:var(--overlay-thought-text);flex:none;margin:0 -18px -12px;padding:4px 18px;font-size:11px;line-height:1.3}.scenarioList{gap:7px;max-height:min(480px,100dvh - 210px);display:grid;overflow:auto}.scenarioButton{background:var(--overlay-surface-subtle);color:inherit;cursor:pointer;font:inherit;text-align:start;border:1px solid #0000;border-radius:10px;gap:3px;padding:10px;display:grid}.scenarioButton:hover{background:var(--overlay-accent-soft);border-color:var(--overlay-accent-border)}.scenarioLabel{font-weight:650}.scenarioDescription{color:var(--overlay-text-muted);font-size:12px}.paragraph{margin:0}.pendingCommits{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;border-radius:10px;max-height:190px;margin:0;padding:10px;overflow:auto}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:280px;margin:0;padding:10px;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 var(--overlay-font-monospace)}.codexWorkingSpinner{color:var(--overlay-accent)}.codexTranscript{gap:10px;max-height:360px;display:grid;overflow:auto}.codexMessage{border:1px solid #0000;border-radius:10px;gap:5px;padding:10px;display:grid}.codexMessageUser{background:var(--overlay-accent-soft);border-color:var(--overlay-accent-border)}.codexMessageThought{background:var(--overlay-thought-soft);border-color:var(--overlay-thought-border)}.codexMessageAgent{background:var(--overlay-success-soft);border-color:var(--overlay-success-border)}.codexMessageHeader{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.codexMessageLabel{color:var(--overlay-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.codexMessageAge{color:var(--overlay-text-subtle);white-space:nowrap;font-size:11px}.codexMessageText,.codexWaiting{font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;word-break:break-word;margin:0}.codexWaiting{color:var(--overlay-text-subtle)}.rebaseProgress{gap:8px;display:grid}.rebaseProgressLabel{color:var(--overlay-text-muted);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.rebaseProgressLabel strong{color:var(--overlay-success-text)}.rebaseProgressTrack{background:var(--overlay-surface-muted);border-radius:999px;height:6px;overflow:hidden}.rebaseProgressFill{background:var(--overlay-success-text);border-radius:inherit;height:100%;transition:width .18s;display:block}.codexHistorySummary{cursor:pointer;font-size:12px;font-weight:600}.codexHistoryList{gap:8px;padding-top:8px;display:grid}.files{gap:7px;max-height:190px;display:grid;overflow:auto}.checkbox{overflow-wrap:anywhere;align-items:start;gap:8px;display:flex}.checkbox input{accent-color:var(--overlay-accent)}.filePath{font-family:var(--overlay-font-monospace)}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);font-family:var(--overlay-font-monospace);resize:vertical;border-radius:10px;width:100%;min-height:92px;padding:10px}.codexOptions{flex-wrap:wrap;gap:8px 16px;display:flex}.codexOption{align-items:center;gap:6px;display:flex}.codexOptionLabel{color:var(--overlay-text-subtle);font-size:12px}.codexOptionSelect{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);color:var(--overlay-text);font:inherit;border-radius:8px;padding:4px 6px}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.developmentControls{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 10px 30px color-mix(in srgb, var(--oc-gray-9) 18%, transparent);box-sizing:border-box;z-index:1;border-radius:10px;gap:4px;min-width:170px;max-width:calc(100vw - 32px);margin:0;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.developmentControls .actions{justify-content:stretch;align-items:stretch;gap:0;width:100%;display:grid}.developmentControls .button{text-align:start;white-space:nowrap;justify-content:start;justify-self:stretch;width:100%;min-height:32px}.button{border:1px solid var(--overlay-border-strong);cursor:pointer;font:inherit;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;transition:opacity .14s;display:inline-flex}.button:hover:not(:disabled){background:var(--overlay-surface-muted)}.primary{background:var(--overlay-accent);border-color:var(--overlay-accent);color:var(--oc-white)}.primary:hover:not(:disabled){background:var(--overlay-accent-hover);border-color:var(--overlay-accent-hover)}.developmentControls .button{color:inherit;background:0 0;border:0}.developmentControls .button:hover:not(:disabled){background:var(--overlay-surface-muted)}.button:disabled{cursor:wait;opacity:.55}.buttonSpinner{animation:.7s linear infinite button-spin}.iconOnly{box-sizing:border-box;flex:0 0 32px;width:32px;min-width:32px;height:32px;padding:7px}.warning{color:var(--overlay-warning-text);white-space:pre-wrap}.checkFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:10px;gap:10px;padding:10px;display:grid}.checkCommand{font-family:var(--overlay-font-monospace);margin:0;font-weight:600}.checkGuidance{margin:3px 0 0;font-size:12px}.setupFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:10px;gap:10px;padding:10px;display:grid}.actionError{background:var(--overlay-warning-soft);border:1px solid var(--overlay-warning-border);color:var(--overlay-warning-text);white-space:pre-wrap;border-radius:10px;gap:10px;padding:10px;display:grid}.errorMessage{grid-template-columns:auto 1fr;align-items:start;gap:8px;display:grid}.actionSuccess{background:var(--overlay-success-soft);border:1px solid var(--overlay-success-border);color:var(--overlay-success-text);border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:10px;display:grid}.errorIcon,.successIcon{margin-top:1px}@media (prefers-color-scheme:dark){[data-isolet-root]{--overlay-background:var(--oc-gray-9);--overlay-surface-subtle:var(--oc-gray-8);--overlay-surface-muted:var(--oc-gray-7);--overlay-border:var(--oc-gray-7);--overlay-border-strong:var(--oc-gray-6);--overlay-text:var(--oc-gray-0);--overlay-text-muted:var(--oc-gray-4);--overlay-text-subtle:var(--oc-gray-5);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:color-mix(in srgb, var(--oc-blue-9) 32%, var(--overlay-background));--overlay-accent-border:var(--oc-blue-7);--overlay-accent-text:var(--oc-blue-2);--overlay-thought-soft:color-mix(in srgb, var(--oc-grape-9) 30%, var(--overlay-background));--overlay-thought-border:var(--oc-grape-7);--overlay-thought-text:var(--oc-grape-2);--overlay-success-soft:color-mix(in srgb, var(--oc-green-9) 30%, var(--overlay-background));--overlay-success-border:var(--oc-green-7);--overlay-success-text:var(--oc-green-2);--overlay-warning-soft:color-mix(in srgb, var(--oc-yellow-9) 24%, var(--overlay-background));--overlay-warning-border:var(--oc-yellow-7);--overlay-warning-text:var(--oc-yellow-2);--overlay-danger-soft:color-mix(in srgb, var(--oc-red-9) 30%, var(--overlay-background));--overlay-danger-border:var(--oc-red-7);--overlay-danger-text:var(--oc-red-2)}}@keyframes radiate{0%{opacity:.75;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@keyframes button-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.buttonSpinner{animation:none}}@media (width<=600px){.dialog{max-width:none;padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));border-radius:0;width:auto;inset:0}.debugFooter{margin:0 calc(-16px - env(safe-area-inset-right,0px)) calc(-16px - env(safe-area-inset-bottom,0px)) calc(-16px - env(safe-area-inset-left,0px));padding:4px calc(16px + env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.button{min-height:44px}.checkbox{align-items:center;min-height:44px}.iconButton{min-width:44px;min-height:44px}.iconOnly{flex-basis:44px;width:44px;min-width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.indicatorDot:before{opacity:.45;animation:none;transform:scale(1.65)}}.buttonContainer{min-width:0;display:inline-flex}.buttonContainer:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px;border-radius:999px}.button:disabled{pointer-events:none}.developmentControls .buttonContainer{width:100%;display:flex}.disabledTooltip{z-index:2147483647;border:1px solid var(--overlay-border-strong);background:var(--overlay-surface-subtle);max-width:min(280px,100vw - 24px);color:var(--overlay-text);pointer-events:none;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.4;position:fixed;transform:translateY(-100%)}.srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.activityList{gap:8px;min-width:0;display:grid}.activityHeading{font-size:13px;font-weight:600}.activityRow{border:1px solid #80808040;border-radius:6px;min-width:0;margin-block:4px;padding:8px 10px}.activitySummary{cursor:pointer;overflow-wrap:anywhere;font-size:13px}.activityStatus{opacity:.7;margin-inline-start:8px;font-size:12px}.activityCommand{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;font-size:12px;display:block}.activityMeta{opacity:.7;margin-block:8px;font-size:12px}.activityOutput{white-space:pre-wrap;overflow-wrap:anywhere;max-height:200px;font-size:12px;overflow:auto}
|
|
1
|
+
[data-isolet-root]{--overlay-font-body:"SN Pro Variable", system-ui, sans-serif;--overlay-font-monospace:"Google Sans Code Variable", ui-monospace, monospace;color-scheme:light dark;--oc-white:#fff;--oc-gray-0:#f8f9fa;--oc-gray-1:#f1f3f5;--oc-gray-2:#e9ecef;--oc-gray-3:#dee2e6;--oc-gray-4:#ced4da;--oc-gray-5:#adb5bd;--oc-gray-6:#868e96;--oc-gray-7:#495057;--oc-gray-8:#343a40;--oc-gray-9:#212529;--oc-red-0:#fff5f5;--oc-red-2:#ffc9c9;--oc-red-7:#f03e3e;--oc-red-9:#c92a2a;--oc-grape-0:#f8f0fc;--oc-grape-2:#eebefa;--oc-grape-7:#ae3ec9;--oc-grape-9:#862e9c;--oc-blue-0:#e7f5ff;--oc-blue-2:#a5d8ff;--oc-blue-4:#4dabf7;--oc-blue-6:#228be6;--oc-blue-7:#1c7ed6;--oc-blue-9:#1864ab;--oc-green-0:#ebfbee;--oc-green-2:#b2f2bb;--oc-green-7:#37b24d;--oc-green-9:#2b8a3e;--oc-yellow-0:#fff9db;--oc-yellow-2:#ffec99;--oc-yellow-7:#f59f00;--oc-yellow-9:#e67700;--overlay-background:var(--oc-white);--overlay-surface-subtle:var(--oc-gray-0);--overlay-surface-muted:var(--oc-gray-1);--overlay-border:var(--oc-gray-3);--overlay-border-strong:var(--oc-gray-4);--overlay-text:var(--oc-gray-9);--overlay-text-muted:var(--oc-gray-7);--overlay-text-subtle:var(--oc-gray-6);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:var(--oc-blue-0);--overlay-accent-border:var(--oc-blue-2);--overlay-accent-text:var(--oc-blue-9);--overlay-thought-soft:var(--oc-grape-0);--overlay-thought-border:var(--oc-grape-2);--overlay-thought-text:var(--oc-grape-9);--overlay-success-soft:var(--oc-green-0);--overlay-success-border:var(--oc-green-2);--overlay-success-text:var(--oc-green-9);--overlay-warning-soft:var(--oc-yellow-0);--overlay-warning-border:var(--oc-yellow-2);--overlay-warning-text:var(--oc-yellow-9);--overlay-danger-soft:var(--oc-red-0);--overlay-danger-border:var(--oc-red-2);--overlay-danger-text:var(--oc-red-9);color:var(--overlay-text);font:14px/1.45 var(--overlay-font-body);-webkit-user-select:text;user-select:text}.surface{--managed-dev-bottom-offset:0px;--managed-dev-right-offset:0px}.indicatorButton{appearance:none;bottom:calc(10px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset));cursor:pointer;pointer-events:auto;height:44px;right:calc(10px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset));background:0 0;border:0;justify-content:center;align-items:center;width:44px;padding:0;display:flex;position:fixed}.indicatorButton:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:-3px}.indicatorDot{background:var(--managed-dev-indicator-color);box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--overlay-border) 30%, transparent);height:var(--managed-dev-indicator-size);width:var(--managed-dev-indicator-size);border-radius:50%;display:block;position:relative}.dialog{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 8px 28px color-mix(in srgb, var(--oc-gray-9) 18%, transparent);color:var(--overlay-text);box-sizing:border-box;height:auto;bottom:20px;left:unset;overscroll-behavior:contain;pointer-events:auto;border-radius:12px;width:min(520px,100vw - 40px);max-width:min(520px,100vw - 40px);max-height:calc(100dvh - 40px);margin:0;padding:12px 18px;position:fixed;right:20px;overflow:hidden}.dialog[open]{flex-direction:column;gap:12px;display:flex}.drawerBody{align-content:start;gap:16px;min-width:0;min-height:0;display:grid;overflow:auto}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.headerActions{align-items:center;display:flex}.developmentControlsDropdown{display:flex;position:relative}.title{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.titleIcon{color:var(--overlay-text-muted);flex:none}.iconButton{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:4px;display:inline-flex}.iconButton:hover{background:var(--overlay-surface-muted);border-radius:8px}.iconButton:focus-visible,.scenarioButton:focus-visible,.sectionLink:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.section{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:12px;gap:12px;padding:14px;display:grid}.sectionHeading{justify-content:space-between;align-items:start;gap:12px;display:flex}.sectionTitle{margin:0;font-size:13px}.sectionDescription{color:var(--overlay-text-muted);margin:3px 0 0;font-size:12px}.sectionLink{color:var(--overlay-accent-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-size:12px}.debugFooter{background:var(--overlay-surface-subtle);border-top:1px solid var(--overlay-border);color:var(--overlay-text-muted);flex:none;margin:0 -18px -12px;padding:4px 18px;font-size:11px;line-height:1.3}.scenarioList{gap:7px;max-height:min(480px,100dvh - 210px);display:grid;overflow:auto}.scenarioButton{background:var(--overlay-surface-subtle);color:inherit;cursor:pointer;font:inherit;text-align:start;border:1px solid #0000;border-radius:6px;gap:3px;padding:10px;display:grid}.scenarioButton:hover{background:var(--overlay-accent-soft);border-color:var(--overlay-accent-border)}.scenarioLabel{font-weight:650}.scenarioDescription{color:var(--overlay-text-muted);font-size:12px}.paragraph{margin:0}.pendingCommits{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;border-radius:6px;max-height:190px;margin:0;padding:10px;overflow:auto}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;font:12px/1.5 var(--overlay-font-monospace);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:280px;margin:0;padding:10px;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 var(--overlay-font-monospace)}.codexWorkingSpinner{color:var(--overlay-accent)}.codexTranscript{gap:10px;max-height:360px;display:grid;overflow:auto}.codexMessage{border-bottom:1px solid var(--overlay-border);gap:5px;padding:8px 0;display:grid}.codexMessage:last-child{border-bottom:0}.codexMessageHeader{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.codexMessageLabel{color:var(--overlay-text-muted);margin:0;font-size:11px;font-weight:650}.codexMessageAge{color:var(--overlay-text-subtle);white-space:nowrap;font-size:11px}.codexMessageText,.codexWaiting{font:13px/1.5 var(--overlay-font-body);white-space:pre-wrap;word-break:break-word;margin:0}.codexWaiting{color:var(--overlay-text-subtle)}.rebaseProgress{gap:8px;display:grid}.rebaseProgressLabel{color:var(--overlay-text-muted);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.rebaseProgressLabel strong{color:var(--overlay-success-text)}.rebaseProgressTrack{background:var(--overlay-surface-muted);border-radius:999px;height:6px;overflow:hidden}.rebaseProgressFill{background:var(--overlay-success-text);border-radius:inherit;height:100%;transition:width .18s;display:block}.codexHistorySummary{cursor:pointer;font-size:12px;font-weight:600}.codexHistoryList{gap:8px;padding-top:8px;display:grid}.files{gap:7px;max-height:190px;display:grid;overflow:auto}.checkbox{overflow-wrap:anywhere;align-items:start;gap:8px;display:flex}.checkbox input{accent-color:var(--overlay-accent)}.filePath{font-family:var(--overlay-font-monospace)}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);font-family:var(--overlay-font-monospace);resize:vertical;border-radius:6px;width:100%;min-height:92px;padding:10px}.codexSettings{justify-self:start}.codexSettingsPopover{z-index:2;box-sizing:border-box;background:var(--overlay-background);border:1px solid var(--overlay-border);border-radius:8px;gap:12px;width:220px;padding:12px;display:grid;position:fixed;box-shadow:0 4px 16px #0000002e}.codexSettingsPopover:before{content:"";z-index:-1;position:absolute;inset:-8px 0}.codexSettingsPopover>.sectionTitle{color:var(--overlay-text-muted);font-size:12px;font-weight:500}.modelToggle{background:var(--overlay-surface-subtle);border-radius:6px;gap:2px;padding:3px;display:flex}.modelToggle button{color:var(--overlay-text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:1;padding:5px 8px;font-size:13px}.modelToggle button[aria-pressed=true]{background:var(--overlay-surface-muted);color:var(--overlay-text)}.modelToggle button:focus-visible,.effortControl input:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px}.modelToggle button:disabled{cursor:default;opacity:.55}.effortControl{gap:4px;font-size:12px;display:grid}.effortControl>span{justify-content:space-between;display:flex}.effortControl input{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0}.effortControl input::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--overlay-accent) var(--effort-progress), var(--overlay-border-strong) var(--effort-progress));border-radius:2px;height:4px}.effortControl input::-webkit-slider-thumb{appearance:none;background:var(--overlay-accent);border-radius:50%;width:12px;height:12px;margin-top:-4px}.effortControl input::-moz-range-track{background:var(--overlay-border-strong);border-radius:2px;height:4px}.effortControl input::-moz-range-progress{background:var(--overlay-accent);height:4px}.effortControl input::-moz-range-thumb{background:var(--overlay-accent);border:0;border-radius:50%;width:12px;height:12px}.effortControl input:disabled{cursor:default;opacity:.55}.effortEndpoints{color:var(--overlay-text-muted)}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.developmentControls{background:var(--overlay-background);border:1px solid var(--overlay-border);box-shadow:0 10px 30px color-mix(in srgb, var(--oc-gray-9) 18%, transparent);box-sizing:border-box;z-index:1;border-radius:6px;gap:4px;min-width:170px;max-width:calc(100vw - 32px);margin:0;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.developmentControls .actions{justify-content:stretch;align-items:stretch;gap:0;width:100%;display:grid}.developmentControls .button{text-align:start;white-space:nowrap;justify-content:start;justify-self:stretch;width:100%;min-height:32px}.button{border:1px solid var(--overlay-border-strong);cursor:pointer;font:inherit;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;transition:opacity .14s;display:inline-flex}.button:hover:not(:disabled){background:var(--overlay-surface-muted)}.primary{background:var(--overlay-accent);border-color:var(--overlay-accent);color:var(--oc-white)}.primary:hover:not(:disabled){background:var(--overlay-accent-hover);border-color:var(--overlay-accent-hover)}.developmentControls .button{color:inherit;background:0 0;border:0}.developmentControls .button:hover:not(:disabled){background:var(--overlay-surface-muted)}.button:disabled{cursor:default;opacity:.55}.buttonSpinner{animation:.7s linear infinite button-spin}.iconOnly{box-sizing:border-box;flex:0 0 32px;width:32px;min-width:32px;height:32px;padding:7px}.warning{color:var(--overlay-warning-text);white-space:pre-wrap}.checkFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:6px;gap:10px;padding:10px;display:grid}.checkCommand{font-family:var(--overlay-font-monospace);margin:0;font-weight:600}.checkGuidance{margin:3px 0 0;font-size:12px}.setupFailure{background:var(--overlay-danger-soft);border:1px solid var(--overlay-danger-border);color:var(--overlay-danger-text);border-radius:6px;gap:10px;padding:10px;display:grid}.actionError{background:var(--overlay-warning-soft);border:1px solid var(--overlay-warning-border);color:var(--overlay-warning-text);white-space:pre-wrap;border-radius:6px;gap:10px;padding:10px;display:grid}.errorMessage{grid-template-columns:auto 1fr;align-items:start;gap:8px;display:grid}.actionSuccess{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);color:var(--overlay-success-text);border-radius:6px;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:10px;display:grid}.errorIcon,.successIcon{margin-top:1px}@media (prefers-color-scheme:dark){[data-isolet-root]{--overlay-background:var(--oc-gray-9);--overlay-surface-subtle:var(--oc-gray-8);--overlay-surface-muted:var(--oc-gray-7);--overlay-border:var(--oc-gray-7);--overlay-border-strong:var(--oc-gray-6);--overlay-text:var(--oc-gray-0);--overlay-text-muted:var(--oc-gray-4);--overlay-text-subtle:var(--oc-gray-5);--overlay-accent:var(--oc-blue-6);--overlay-accent-hover:var(--oc-blue-7);--overlay-accent-soft:color-mix(in srgb, var(--oc-blue-9) 32%, var(--overlay-background));--overlay-accent-border:var(--oc-blue-7);--overlay-accent-text:var(--oc-blue-2);--overlay-thought-soft:color-mix(in srgb, var(--oc-grape-9) 30%, var(--overlay-background));--overlay-thought-border:var(--oc-grape-7);--overlay-thought-text:var(--oc-grape-2);--overlay-success-soft:color-mix(in srgb, var(--oc-green-9) 30%, var(--overlay-background));--overlay-success-border:var(--oc-green-7);--overlay-success-text:var(--oc-green-2);--overlay-warning-soft:color-mix(in srgb, var(--oc-yellow-9) 24%, var(--overlay-background));--overlay-warning-border:var(--oc-yellow-7);--overlay-warning-text:var(--oc-yellow-2);--overlay-danger-soft:color-mix(in srgb, var(--oc-red-9) 30%, var(--overlay-background));--overlay-danger-border:var(--oc-red-7);--overlay-danger-text:var(--oc-red-2)}}@keyframes button-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.buttonSpinner{animation:none}}@media (width<=600px){.dialog{max-width:none;max-height:100dvh;padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));border-radius:0;width:auto;inset:0}.debugFooter{margin:0 calc(-16px - env(safe-area-inset-right,0px)) calc(-16px - env(safe-area-inset-bottom,0px)) calc(-16px - env(safe-area-inset-left,0px));padding:4px calc(16px + env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.button{min-height:44px}.checkbox{align-items:center;min-height:44px}.iconButton{min-width:44px;min-height:44px}.iconOnly{flex-basis:44px;width:44px;min-width:44px;height:44px}}.buttonContainer{min-width:0;display:inline-flex}.buttonContainer:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px;border-radius:6px}.button:disabled{pointer-events:none}.developmentControls .buttonContainer{width:100%;display:flex}.disabledTooltip{z-index:2147483647;border:1px solid var(--overlay-border-strong);background:var(--overlay-surface-subtle);max-width:min(280px,100vw - 24px);color:var(--overlay-text);pointer-events:none;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.4;position:fixed;transform:translateY(-100%)}.srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.activityList{gap:8px;min-width:0;display:grid}.activityHeading{font-size:13px;font-weight:600}.activityRow{border-bottom:1px solid var(--overlay-border);min-width:0;margin-block:4px;padding:8px 0}.activitySummary{cursor:pointer;overflow-wrap:anywhere;font-size:13px}.activityStatus{color:var(--overlay-text-muted);margin-inline-start:8px;font-size:12px}.activityCommand{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;font-size:12px;display:block}.activityMeta{color:var(--overlay-text-muted);margin-block:8px;font-size:12px}.activityOutput{white-space:pre-wrap;overflow-wrap:anywhere;max-height:200px;font-size:12px;overflow:auto}.content,.codexTranscript,.codexMessage,.checkMessage,.setupFailure,.actionError{overflow-wrap:anywhere;min-width:0}.pendingCommits,.codexOutput,.activityOutput{overflow-wrap:anywhere;tab-size:2}.codexOptionSelect:focus-visible,.checkbox input:focus-visible,.codexHistorySummary:focus-visible,.activitySummary:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px}.activityRow:last-child{border-bottom:0}@media (prefers-reduced-motion:reduce){.rebaseProgressFill,.button{transition:none}}.notificationActions{flex-wrap:nowrap;justify-content:flex-start;gap:8px;padding:3px;display:flex;overflow-x:auto}.notificationActions:empty{display:none}.notificationActions>*{flex-shrink:0}.notificationActions>:first-child{margin-inline-start:auto}.notificationActions>.codexSettings{order:-1;margin-inline:0 auto}.notificationActions .button{white-space:nowrap}.changeList{box-sizing:border-box;border-block:1px solid var(--overlay-border);gap:14px;min-height:0;max-height:min(240px,35dvh);padding-block:10px;display:grid;overflow:auto}.fileGroup{gap:8px;min-width:0;display:grid}.trackedFile{overflow-wrap:anywhere;align-items:baseline;gap:8px;display:flex}.fileStatus{font:600 12px/1.5 var(--overlay-font-monospace);text-align:center;flex:0 0 1.5em}.fileStatus[data-tone=added]{color:var(--overlay-success-text)}.fileStatus[data-tone=modified]{color:var(--overlay-warning-text)}.fileStatus[data-tone=deleted]{color:var(--overlay-danger-text)}.fileStatus[data-tone=renamed]{color:var(--overlay-accent-text)}.changeList .filePath{overflow-wrap:anywhere;min-width:0}.changeList:focus-visible{outline:2px solid var(--overlay-accent);outline-offset:2px}.completionReceipt{gap:16px;display:grid}.completionNote{color:var(--overlay-text-muted);margin:3px 0 0;font-size:13px}.completionDetails{font-size:13px}.completionDetailBody{border-top:1px solid var(--overlay-border);gap:14px;max-height:min(360px,50dvh);margin-top:12px;padding-top:12px;display:grid;overflow:auto}.completionMetadata{color:var(--overlay-text-muted);justify-content:space-between;gap:16px;font-size:12px;display:flex}.completionMetadata>:last-child{white-space:nowrap}.completionSteps{border-collapse:collapse;width:100%;font-size:13px}.completionSteps td{vertical-align:baseline;padding:5px 0}.completionSteps td:first-child{width:22px;color:var(--overlay-text-muted)}.completionSteps td:last-child{text-align:right;color:var(--overlay-text-muted);white-space:nowrap;font-size:12px}@media (width<=600px){.dialog.completionDialog{top:auto;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));border-radius:12px;max-height:calc(100dvh - 16px)}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coreframe/vite",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.53",
|
|
4
4
|
"description": "Vite plugins and build integrations for Coreframe apps",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -57,23 +57,30 @@
|
|
|
57
57
|
"obug": "^2.1.3",
|
|
58
58
|
"unplugin": "^2.3.11",
|
|
59
59
|
"vite-plugin-hashed-favicons": "^2.1.1",
|
|
60
|
-
"@coreframe/assets": "^0.1.22",
|
|
61
60
|
"@coreframe/config": "^0.1.19",
|
|
61
|
+
"@coreframe/assets": "^0.1.22",
|
|
62
62
|
"@coreframe/dashboard": "^0.3.31",
|
|
63
|
-
"@coreframe/dev": "^0.1.
|
|
64
|
-
"@coreframe/
|
|
65
|
-
"@coreframe/lib": "^0.2.17",
|
|
63
|
+
"@coreframe/dev": "^0.1.36",
|
|
64
|
+
"@coreframe/dev-contracts": "^0.1.13",
|
|
66
65
|
"@coreframe/flutter-js": "^0.1.33",
|
|
67
|
-
"@coreframe/
|
|
66
|
+
"@coreframe/flutter-tools": "^0.1.31",
|
|
67
|
+
"@coreframe/lib": "^0.2.17"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
|
+
"@pandacss/dev": "2.4.0",
|
|
71
|
+
"@pandacss/preset-base": "2.4.0",
|
|
72
|
+
"@pandacss/preset-panda": "2.4.0",
|
|
73
|
+
"@playwright/test": "^1.64.1",
|
|
74
|
+
"@tabler/icons-react": "^3.50.0",
|
|
70
75
|
"@tsdown/css": "0.22.3",
|
|
71
76
|
"@types/node": "^26.1.0",
|
|
72
77
|
"@types/react": "19.2.18",
|
|
73
78
|
"@types/react-dom": "19.2.4",
|
|
74
79
|
"isolet-js": "0.0.7",
|
|
75
80
|
"react": "19.2.8",
|
|
81
|
+
"react-aria-components": "^1.22.1",
|
|
76
82
|
"react-dom": "19.2.8",
|
|
83
|
+
"react-json-view-lite": "^2.5.0",
|
|
77
84
|
"state-launcher": "^0.3.0",
|
|
78
85
|
"tsdown": "0.22.3",
|
|
79
86
|
"typescript": "6.0.3",
|
|
@@ -97,6 +104,7 @@
|
|
|
97
104
|
"test": "vitest run --reporter=minimal",
|
|
98
105
|
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
99
106
|
"format": "oxlint --fix && oxfmt",
|
|
100
|
-
"lint": "oxlint"
|
|
107
|
+
"lint": "oxlint",
|
|
108
|
+
"test:browser": "playwright test --config browser-tests/playwright.config.ts"
|
|
101
109
|
}
|
|
102
110
|
}
|