@coreframe/vite 0.1.33 → 0.1.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/icons-vb_lG-av.js +25 -0
- package/dist/overlay/managed-dev-overlay.d.ts +5 -1
- package/dist/overlay/managed-dev-overlay.js +3 -3
- package/dist/plugins/icons.js +1 -1
- package/dist/plugins/managed-dev.js +1 -1
- package/dist/plugins/preset.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +4 -4
- package/dist/icons-Dn2tl9hg.js +0 -25
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import{readFile as e}from"node:fs/promises";import{isAbsolute as t,relative as n,resolve as r}from"node:path";import{createHash as i}from"node:crypto";import{buildParsedSVG as a,parseSVGContent as o}from"@iconify/utils";import{loadNodeIcon as s}from"@iconify/utils/lib/loader/node-loader";import{camelize as c}from"@iconify/utils/lib/misc/strings";import{transform as l}from"@svgr/core";import u from"@svgr/plugin-jsx";import{createUnplugin as d}from"unplugin";import f from"node:process";import{createDebug as p}from"obug";const m=(e=>`---
|
|
2
|
+
interface Props extends astroHTML.JSX.SVGAttributes {};
|
|
3
|
+
const props = Astro.props;
|
|
4
|
+
---
|
|
5
|
+
${e.replace(`<svg`,`<svg {...props}`)}`),h=(e=>{let t=e.replace(`<svg`,`<svg ...attributes`);return`import { template } from "@ember/template-compiler";
|
|
6
|
+
|
|
7
|
+
const Icon = template(${JSON.stringify(t)})
|
|
8
|
+
export default Icon;`}),g=(async(e,t,n,r)=>{let i=await import(`@svgr/core`),a=await(i.transform||(i.default?i.default.transform??i.default:i.default)||i)(e,{plugins:[`@svgr/plugin-jsx`],ref:r.jsx===`react`,titleProp:r.jsx===`react`},{componentName:c(`${t}-${n}`)});return r.jsx!==`react`&&(a=a.replace(`import * as React from "react";`,``)),a}),_=(e=>{let t=e.indexOf(`>`,e.indexOf(`<svg `)),n=e.lastIndexOf(`</svg`);return`${`${e.slice(0,t)} ...input>`}${`$!{\`${v(e.slice(t+1,n))}\`}`}${e.slice(n)}`});function v(e){return e.replace(/\\.|[$`]/g,e=>{switch(e){case`$`:return`$`;case"`":return```;default:return e}})}const y=(e=>e),ee=(async(e,t,n,r)=>{let i={importSource:`@builder.io/qwik`,runtime:`automatic`,componentName:c(`${t}-${n}`)},a=Object.assign({},i,r),o=(await importModule(`@svgx/core`)).toJsxComponent;return o(e,{...a,defaultExport:!0})}),b=(e=>`export default ${JSON.stringify(e)}`),te=(e=>`export default (props = {}) => ${e.replace(/([{}])/g,`{'$1'}`).replace(/(?<=<svg[\s\S]*?)(>)/i,`{...props}>`)}`);let x;const S=(async e=>{if(x==null)try{let{VERSION:e}=await import(`svelte/compiler`);x=Number(e.split(`.`)[0])>=5}catch{x=!1}let t=e.indexOf(`>`,e.indexOf(`<svg `)),n=e.lastIndexOf(`</svg`),r=`${e.slice(0,t)} {...${x?`p`:`$$props`}}>`;return x?r+=e.slice(t+1,n):r+=`{@html \`${C(e.slice(t+1,n))}\`}`,r+=e.slice(n),x?`<script>const{...p}=$props()<\/script>${r}`:r});function C(e){return e.replace(/\{/g,`{`).replace(/\}/g,`}`).replace(/`/g,```).replace(/\\([trn])/g,` `)}function w(e){let t=/="url\(#/.test(e),n={},r=``;return t&&(e=e.replace(/\b([\w-]+)="url\(#(.+?)\)"/g,(e,t,r)=>(n[r]=`'${r}':'uicons-'+__randId()`,`:${t}="'url(#'+idMap['${r}']+')'"`)).replace(/\bid="(.+?)"/g,(e,t)=>n[t]?`:id="idMap['${t}']"`:e),r=`const __randId = () => Math.random().toString(36).substr(2, 10);const idMap = {${Object.values(n).join(`,`)}};`),{hasID:t,svg:e,injectScripts:r}}const T={astro:m,ember:h,jsx:g,marko:_,none:y,raw:b,solid:te,svelte:S,vue3:(async(e,t,n)=>{let{compileTemplate:r}=await importModule(`@vue/compiler-sfc`),{injectScripts:i,svg:a}=w(e),{code:o}=r({source:a,id:`${t}:${n}`,filename:`${t}-${n}.vue`});return o=`import { markRaw } from 'vue'\n${o}`,o=o.replace(/^export /gm,``),o+=`\n\nexport default markRaw({ name: '${t}-${n}', render${i?`, setup() {${i};return { idMap }}`:``} })`,o+=`
|
|
9
|
+
/* vite-plugin-components disabled */`,o}),"web-components":((e,t,n,{webComponents:r})=>{let i=`${t}-${n}`;r.iconPrefix&&(i=`${r.iconPrefix}-${i}`);let a=c(i),o=`export default class ${a} extends HTMLElement {`;return r.shadow?o+=`constructor() {
|
|
10
|
+
super()
|
|
11
|
+
this.attachShadow({ mode: 'open' }).innerHTML = ${JSON.stringify(e)}
|
|
12
|
+
}`:o+=`connectedCallback() { this.innerHTML = ${JSON.stringify(e)} }`,o+=`}`,r.autoDefine&&(o+=`\ncustomElements.define('${i}', ${a})`),o}),qwik:ee},E=[`/~icons/`,`~icons/`,`virtual:icons/`,`virtual/icons/`],D=RegExp(`${E.map(e=>`^${e}`).join(`|`)}`);function O(e){return D.test(e)}function k(e){return e.replace(D,E[0])}function A(e){if(!O(e))return null;e=e.replace(D,``);let t={},n=e.indexOf(`?`);if(n!==-1){let r=e.slice(n+1);e=e.slice(0,n),new URLSearchParams(r).forEach((e,n)=>{n===`raw`?t.raw=e===``||e===`true`?`true`:`false`:t[n]=e})}e=e.replace(/\.\w+$/,``);let[r,i]=e.split(`/`);return{collection:r,icon:i,query:t}}async function j({collection:e,icon:t,query:n},r){let i=`${e}/${t}`,{scale:a,defaultStyle:o,defaultClass:c,customCollections:l,iconCustomizer:u,transform:d,autoInstall:f=!1,collectionsNodeResolvePath:p}=r,m=await s(e,t,{addXmlNs:!1,scale:a,customCollections:l,autoInstall:f,defaultClass:c,defaultStyle:o,cwd:p,warn:void 0,customizations:{transform:d,async iconCustomizer(e,t,r){await u?.(e,t,r),Object.keys(n).forEach(e=>{let t=n[e];e!==`raw`&&t!=null&&(r[e]=t)})}}});if(!m)throw Error(`Icon \`${i}\` not found`);let h=n.raw===`true`?`raw`:r.compiler;if(h){let n=typeof h==`string`?T[h]:await h.compiler;if(n)return n(m,e,t,r)}throw Error(`Unknown compiler: ${h}`)}async function M(e,t){let n=A(e);return n?j(n,t):null}const N=p(`unplugin-icons:options`);async function P(e){let{scale:t=1.2,defaultStyle:n=``,defaultClass:r=``,compiler:i=await F(),jsx:a=I(),customCollections:o={},iconCustomizer:s=()=>{},transform:c,autoInstall:l=!1,collectionsNodeResolvePath:u=f.cwd()}=e,d=Object.assign({autoDefine:!1,iconPrefix:`icon`},e.webComponents);return N(`compiler`,i),{scale:t,defaultStyle:n,defaultClass:r,customCollections:o,iconCustomizer:s,compiler:i,jsx:a,webComponents:d,transform:c,autoInstall:l,collectionsNodeResolvePath:u}}async function F(){return`jsx`}function I(){return`react`}var L=d((e={})=>{let t=P(e);return{name:`unplugin-icons`,enforce:`pre`,resolveId(t){if(O(t)){let n=k(t),r=n.indexOf(`?`),i=`${(r>-1?n.slice(0,r):n).replace(/\.\w+$/,``).replace(/^\//,``)}${r>-1?`?${n.slice(r+1)}`:``}`,a=A(i)?.query?.raw===`true`?`raw`:e.compiler;if(a&&typeof a!=`string`){let e=a.extension;if(e)return`${i}.${e.startsWith(`.`)?e.slice(1):e}`}else switch(a){case`astro`:return`${i}.astro`;case`jsx`:return`${i}.jsx`;case`qwik`:return`${i}.jsx`;case`marko`:return`${i}.marko`;case`svelte`:return`${i}.svelte`;case`solid`:return`${i}.tsx`}return i}return null},loadInclude(e){return O(e)},async load(e){let n=await M(e,await t)||null;if(n)return{code:n,map:{version:3,mappings:``,sources:[]}}},rollup:{api:{config:e}}}}).vite;const R=`src/assets/icons`,z=`\0coreframe:sprite-icon:`,B=`__COREFRAME_SPRITE_URL__`,V=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;function ne(t={}){let n=r(t.appIconsDirectory??R);async function i(t){if(V.test(t))try{let i=await e(r(n,`${t}.svg`),`utf8`);Z(i,`app/${t}`);let s=o(i);if(!s||!a(s))throw Error(`Icon \`app/${t}\` must contain a valid viewBox`);return i}catch(e){if(oe(e)&&e.code===`ENOENT`)return;throw e}}return[U({options:t,loadAppIcon:i,setAppIconsDirectory(e){n=e}}),L({compiler:{compiler:H,extension:`jsx`},jsx:`react`,customCollections:{app:i}})]}function H(e,t,n){return l(e,{plugins:[u],ref:!0,titleProp:!0},{componentName:c(`${t}-${n}`)})}function U({options:e,loadAppIcon:t,setAppIconsDirectory:n}){let i=new Map,a=``,o,c;return{name:`coreframe:icons`,enforce:`pre`,configResolved(t){o=t,a=re(t.root,e.appIconsDirectory??R),n(a)},resolveId(e){let t=G(e);return t?`${z}${encodeURIComponent(JSON.stringify(t))}.js`:null},async load(e){let n=W(e);if(!n)return null;n.collection===`app`&&this.addWatchFile(r(a,`${n.icon}.svg`));let c=n.collection===`app`?await t(n.icon):await s(n.collection,n.icon,{addXmlNs:!1,autoInstall:!1,cwd:o.root,scale:1.2});if(!c)throw Error(`Icon \`${n.collection}/${n.icon}\` not found`);let l=K(c,n.collection,n.icon);return i.set(l.id,l),q(l,n.props,o.command===`serve`)},renderStart(){o.command!==`build`||i.size===0||(c=this.emitFile({type:`asset`,name:`coreframe-icons.svg`,source:J(i.values())}))},renderChunk(e){if(!e.includes(B))return null;if(!c)throw Error(`Coreframe sprite asset was not emitted before chunk rendering`);let t=Y(o.base,this.getFileName(c));return e.replaceAll(B,t)},handleHotUpdate(e){if(ie(a,e.file)){for(let t of e.server.moduleGraph.idToModuleMap.values())(t.id?.includes(`~icons/app/`)||t.id?.startsWith(z))&&e.server.moduleGraph.invalidateModule(t);return e.server.ws.send({type:`full-reload`}),[]}}}}function W(e){if(!e.startsWith(z)||!e.endsWith(`.js`))return null;let t=e.slice(23,-3);return JSON.parse(decodeURIComponent(t))}function G(e){let t=e.indexOf(`?`);if(t===-1)return null;let n=new URLSearchParams(e.slice(t+1));if(!n.has(`sprite`))return null;n.delete(`sprite`);let r=e.slice(0,t).replace(/^\/?(?:~icons|virtual:icons|virtual\/icons)\//,``).replace(/\.\w+$/,``).split(`/`);if(r.length!==2||r.some(e=>!V.test(e)))throw Error(`Invalid sprite icon import: ${e}`);let i=Object.create(null);return n.forEach((e,t)=>{if(t===`raw`)throw Error(`An icon import cannot use both ?sprite and ?raw`);if(t===`style`)throw Error(`Pass sprite icon styles through the component style prop`);i[Q(t)]=e}),{collection:r[0],icon:r[1],props:i}}function K(e,t,n){Z(e,`${t}/${n}`);let r=o(e),s=r&&a(r);if(!r||!s)throw Error(`Icon \`${t}/${n}\` must contain a valid viewBox`);let c=`coreframe-icon-${t}-${n}-${i(`sha256`).update(`${t}/${n}\0${s.attributes.viewBox}\0${s.body}`).digest(`hex`).slice(0,12)}`,l=X(s.body,c),u=r.attribs.preserveAspectRatio?` preserveAspectRatio="${$(r.attribs.preserveAspectRatio)}"`:``;return{id:c,markup:`<symbol id="${c}" viewBox="${$(s.attributes.viewBox)}"${u}>${l}</symbol>`,viewBox:s.attributes.viewBox,width:s.attributes.width,height:s.attributes.height}}function q(e,t,n){let r={...e.width?{width:e.width}:{},...e.height?{height:e.height}:{},...t},i=n?`\nregisterSpriteSymbol(${JSON.stringify({id:e.id,markup:e.markup})})\n`:``,a=n?`import { registerSpriteSymbol, SpriteIcon } from "@coreframe/lib/sprite-icon"`:`import { SpriteIcon } from "@coreframe/lib/sprite-icon"`,o=n?`#${e.id}`:`${B}#${e.id}`;return`${a}
|
|
13
|
+
import { createElement } from "react"
|
|
14
|
+
${i}
|
|
15
|
+
const defaultProps = ${JSON.stringify(r)}
|
|
16
|
+
|
|
17
|
+
export default function CoreframeSpriteIcon(props) {
|
|
18
|
+
return createElement(SpriteIcon, {
|
|
19
|
+
...defaultProps,
|
|
20
|
+
...props,
|
|
21
|
+
href: "${o}",
|
|
22
|
+
viewBox: "${e.viewBox}",
|
|
23
|
+
})
|
|
24
|
+
}
|
|
25
|
+
`}function J(e){return`<svg xmlns="http://www.w3.org/2000/svg" id="coreframe-icon-sprite">${Array.from(e,e=>e.markup).join(``)}</svg>`}function Y(e,t){return`${e.endsWith(`/`)?e:`${e}/`}${t}`}function X(e,t){let n=Array.from(e.matchAll(/\bid=(['"])(.*?)\1/g),e=>e[2]),r=e;for(let[e,i]of n.entries()){let n=ae(i),a=`${t}-${e+1}`;r=r.replace(RegExp(`\\bid=(['"])${n}\\1`,`g`),`id="${a}"`).replace(RegExp(`(["#;])${n}(?=[)"']|\\.[a-z])`,`g`),`$1${a}`)}return r}function Z(e,t){if(/<(?:script|foreignObject)\b/i.test(e)||/\son[a-z]+\s*=/i.test(e))throw Error(`Icon \`${t}\` contains executable SVG content`);if(/\b(?:href|xlink:href)\s*=\s*['"](?!#)/i.test(e))throw Error(`Icon \`${t}\` contains an external SVG reference`)}function Q(e){return e===`class`?`className`:e.startsWith(`aria-`)||e.startsWith(`data-`)?e:e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function re(e,n){return t(n)?n:r(e,n)}function ie(e,r){let i=n(e,r);return i!==``&&!i.startsWith(`..`)&&!t(i)}function $(e){return e.replaceAll(`&`,`&`).replaceAll(`"`,`"`)}function ae(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function oe(e){return e instanceof Error&&`code`in e}export{ne as t};
|
|
@@ -8,13 +8,17 @@ type ManagedDevOverlayIndicatorProps = {
|
|
|
8
8
|
warningColor?: string;
|
|
9
9
|
};
|
|
10
10
|
type ManagedDevOverlayProps = {
|
|
11
|
+
bottomOffset?: number | string;
|
|
11
12
|
debug?: boolean;
|
|
12
13
|
indicator?: ReactNode;
|
|
14
|
+
rightOffset?: number | string;
|
|
13
15
|
};
|
|
14
16
|
declare function toggleManagedDevOverlay(): void;
|
|
15
17
|
declare function ManagedDevOverlay({
|
|
18
|
+
bottomOffset,
|
|
16
19
|
debug,
|
|
17
|
-
indicator
|
|
20
|
+
indicator,
|
|
21
|
+
rightOffset
|
|
18
22
|
}: ManagedDevOverlayProps): import("react").JSX.Element;
|
|
19
23
|
declare function ManagedDevOverlayIndicator({
|
|
20
24
|
color,
|
|
@@ -106,6 +106,6 @@ let n=a(({className:n,...r},a)=>i(re,{ref:a,iconNode:t,className:S(`lucide-${C(T
|
|
|
106
106
|
* This source code is licensed under the ISC license.
|
|
107
107
|
* See the LICENSE file in the root directory of this source tree.
|
|
108
108
|
*/
|
|
109
|
-
;function se(){return import.meta.hot}var N={actionError:`actionError`,actions:`actions`,actionSuccess:`actionSuccess`,button:`button`,checkbox:`checkbox`,checkCommand:`checkCommand`,checkFailure:`checkFailure`,checkGuidance:`checkGuidance`,codexMessage:`codexMessage`,codexMessageAgent:`codexMessageAgent`,codexMessageLabel:`codexMessageLabel`,codexMessageText:`codexMessageText`,codexMessageThought:`codexMessageThought`,codexMessageUser:`codexMessageUser`,codexOutput:`codexOutput`,codexTranscript:`codexTranscript`,codexWaiting:`codexWaiting`,codexWorking:`codexWorking`,codexWorkingSpinner:`codexWorkingSpinner`,content:`content`,debugBackButton:`debugBackButton`,debugNotice:`debugNotice`,debugToolbar:`debugToolbar`,dialog:`dialog`,errorIcon:`errorIcon`,errorMessage:`errorMessage`,filePath:`filePath`,files:`files`,header:`header`,iconButton:`iconButton`,iconOnly:`iconOnly`,indicatorButton:`indicatorButton`,indicatorDot:`indicatorDot`,message:`message`,paragraph:`paragraph`,previousThoughtList:`previousThoughtList`,previousThoughts:`previousThoughts`,primary:`primary`,radiate:`radiate`,rebasedCommit:`rebasedCommit`,rebasedCommitList:`rebasedCommitList`,rebasedCommits:`rebasedCommits`,scenarioButton:`scenarioButton`,scenarioDescription:`scenarioDescription`,scenarioLabel:`scenarioLabel`,scenarioList:`scenarioList`,setupFailure:`setupFailure`,successIcon:`successIcon`,title:`title`,warning:`warning`},ce=`[data-isolet-root]{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 system-ui,sans-serif}.indicatorButton{appearance:none;cursor:pointer;pointer-events:auto;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:fixed;bottom:10px;right:10px}.indicatorButton:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:-3px}.indicatorDot{background:var(--managed-dev-indicator-color);box-shadow:0 0 0 2px var(--overlay-background), 0 0 0 3px var(--overlay-border);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;pointer-events:auto;border-radius:14px;width:min(430px,100vw - 36px);max-width:min(430px,100vw - 36px);max-height:min(620px,100dvh - 80px);margin:0;padding:18px;position:fixed;inset:auto 18px 62px auto;overflow:auto}.dialog[open]{gap:12px;display:grid}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.title{margin:0;font-size:16px}.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,.debugBackButton:focus-visible,.scenarioButton:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.debugNotice{background:var(--overlay-thought-soft);border:1px solid var(--overlay-thought-border);color:var(--overlay-thought-text);border-radius:10px;margin:0;padding:9px 10px;font-size:12px}.debugToolbar{color:var(--overlay-thought-text);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.debugBackButton{color:var(--overlay-thought-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-weight:650}.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}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:280px;margin:0;padding:10px;font:12px/1.5 ui-monospace,monospace;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 ui-monospace,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)}.codexMessageLabel{color:var(--overlay-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.codexMessageText,.codexWaiting{white-space:pre-wrap;word-break:break-word;margin:0;font:12px/1.5 ui-monospace,monospace}.codexWaiting{color:var(--overlay-text-subtle)}.rebasedCommits{background:var(--overlay-success-soft);border:1px solid var(--overlay-success-border);border-radius:10px;gap:7px;padding:10px;display:grid}.rebasedCommitList{gap:5px;margin:0;padding:0;list-style:none;display:grid}.rebasedCommit{grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:7px;font-size:12px;display:grid}.rebasedCommit>svg{color:var(--overlay-success-text);align-self:center}.rebasedCommit>code{color:var(--overlay-text-muted);font-size:11px}.rebasedCommit>span{overflow-wrap:anywhere}.previousThoughts{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:10px;padding:8px 10px}.previousThoughts>summary{cursor:pointer;font-size:12px;font-weight:600}.previousThoughtList{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:ui-monospace,monospace}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);resize:vertical;border-radius:10px;width:100%;min-height:92px;padding:10px;font-family:ui-monospace,monospace}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.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)}.button:disabled{cursor:wait;opacity:.55}.iconOnly{min-width: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{margin:0;font-family:ui-monospace,monospace;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)}}@media (width<=600px){.dialog{width:auto;max-height:calc(100dvh - 86px);padding:16px;inset:auto 12px 62px}.button{min-height:44px}.iconOnly{min-width:44px}}@media (prefers-reduced-motion:reduce){.indicatorDot:before{opacity:.45;animation:none;transform:scale(1.65)}}
|
|
110
|
-
`;let P=!1,le=0;const F=new Set,I=[{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`,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`,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`,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`},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.`},{kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}],phase:`complete`,requestId:`debug-codex-message`},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`},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.`},{kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}]},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.`}}];function L(){R(!P)}function R(e){if(P!==e){P=e;for(let e of F)e()}}function ue({debug:e=!1,indicator:t}){return h(e?fe:de,{indicator:t})}function de({indicator:e}){let{act:t,checkFailure:r,codex:i,dismissCheckFailure:a,dismissError:s,dismissSuccess:c,error:u,status:d,success:f}=xe();l(()=>{if(!f)return;let e=setTimeout(()=>{c(),R(!1)},1600);return()=>clearTimeout(e)},[c,f]);let p=d?.mode===`waiting`&&!!d.message,m=e??h(B,{}),g=o(m)&&m.type===B?n(m,{paused:p}):m;return h(z,{indicator:Y(d,r)?g:null,children:h(V,{act:t,checkFailure:r,codex:i,dismissCheckFailure:a,dismissError:s,error:u,onClose:()=>{d?.codexCompletion&&t({id:d.codexCompletion.id,type:`acknowledge-codex`}),R(!1)},status:d,success:f})})}function z({children:e,indicator:t,openOnMount:n=!1}){let[r,i]=d(null),a=f(Z,Q,$);return l(()=>{n&&R(!0);let e=!0,t=b(`coreframe-managed-dev`,document.body,{css:ce,hostAttributes:{"aria-live":`polite`,id:`coreframe-managed-dev`},hostStyles:{inset:`0`,pointerEvents:`none`,position:`fixed`},zIndex:2147483647});return queueMicrotask(()=>{e&&i(t.container)}),()=>{e=!1,t.host?.remove()}},[n]),r?p(g(`div`,{className:N.surface,children:[t,a?e:null]}),r):null}function fe({indicator:e}){let[t,r]=d(),[i,a]=d(),s=I.find(({id:e})=>e===t),c=e=>{r(e),a(void 0)},l=e??h(B,{});return h(z,{indicator:o(l)&&l.type===B?n(l,{paused:s?.status.mode===`waiting`}):l,openOnMount:!0,children:s?h(V,{act:async e=>a(X(e)),checkFailure:J(s.status),codex:s.codex,dismissCheckFailure:()=>void 0,dismissError:()=>void 0,error:s.error,onBack:()=>c(void 0),onClose:()=>R(!1),status:s.status,success:i??s.success},s.id):h(pe,{onClose:()=>R(!1),onSelect:e=>c(e)})})}function pe({onClose:e,onSelect:t}){return g(`dialog`,{"aria-labelledby":`coreframe-managed-title`,className:N.dialog,id:`coreframe-managed-dev-dialog`,open:!0,children:[g(`div`,{className:N.header,children:[h(`h2`,{className:N.title,id:`coreframe-managed-title`,children:`Managed dev overlay scenarios`}),h(`button`,{"aria-label":`Close managed development`,className:N.iconButton,onClick:e,type:`button`,children:h(M,{"aria-hidden":`true`,size:18})})]}),h(`p`,{className:N.debugNotice,children:`Debug preview. Project actions are simulated locally.`}),h(`div`,{className:N.scenarioList,children:I.map(e=>g(`button`,{className:N.scenarioButton,onClick:()=>t(e.id),type:`button`,children:[h(`span`,{className:N.scenarioLabel,children:e.label}),h(`span`,{className:N.scenarioDescription,children:e.description})]},e.id))})]})}function B({color:e=`#228be6`,paused:t=!1,size:n=14,warningColor:r=`#fd7e14`}){let i=f(Z,Q,$),a={"--managed-dev-indicator-color":t?r:e,"--managed-dev-indicator-size":typeof n==`number`?`${n}px`:n};return h(`button`,{"aria-controls":`coreframe-managed-dev-dialog`,"aria-expanded":i,"aria-label":`${i?`Hide`:`Show`} Coreframe managed development`,className:N.indicatorButton,onClick:L,style:a,type:`button`,children:h(`span`,{className:N.indicatorDot})})}function V({act:e,checkFailure:t,codex:n,dismissCheckFailure:r,dismissError:i,error:a,onBack:o,onClose:s,status:c,success:f}){let[p,_]=d({value:``}),[v,y]=d(()=>({paths:new Set})),b=u(null),x=c?.codexCompletion,S=c?.draft,C=c?.target,w=v.fingerprint===S?.fingerprint?v.paths:new Set(S?.untracked??[]),T=p.fingerprint===S?.fingerprint&&p.proposal===c?.proposal?p.value:c?.proposal??``,E=!!(S?.untracked.length&&S.untracked.every(e=>w.has(e)));return l(()=>{let e=b.current;e&&n?.phase===`running`&&(e.scrollTop=e.scrollHeight)},[n]),t?g(`dialog`,{"aria-labelledby":`coreframe-managed-title`,className:N.dialog,id:`coreframe-managed-dev-dialog`,open:!0,children:[g(`div`,{className:N.header,children:[h(`h2`,{className:N.title,id:`coreframe-managed-title`,children:`Managed development check failed`}),h(`button`,{"aria-label":`Close managed development`,className:N.iconButton,onClick:s,type:`button`,children:h(M,{"aria-hidden":`true`,size:18})})]}),g(`div`,{className:N.content,children:[o?g(`div`,{className:N.debugToolbar,children:[h(`button`,{className:N.debugBackButton,onClick:o,type:`button`,children:`All scenarios`}),h(`span`,{children:`Debug preview · actions are simulated`})]}):null,h(`div`,{className:N.checkFailure,role:`alert`,children:g(`div`,{className:N.checkMessage,children:[g(`p`,{className:N.checkCommand,children:[t.check.command,` failed`]}),h(`p`,{className:N.checkGuidance,children:ve(t)}),h(`p`,{className:N.checkGuidance,children:`Copy the output and paste it into your agent orchestration tool.`})]})}),g(W,{children:[h(K,{ariaLabel:`Dismiss error`,icon:M,iconOnly:!0,onClick:()=>r(t),children:`Dismiss`}),h(K,{ariaLabel:`Copy output for ${t.check.command}`,icon:O,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(t.check.output??``),children:`Copy output`})]})]})]}):g(`dialog`,{"aria-labelledby":`coreframe-managed-title`,className:N.dialog,id:`coreframe-managed-dev-dialog`,open:!0,children:[g(`div`,{className:N.header,children:[h(`h2`,{className:N.title,id:`coreframe-managed-title`,children:x?`Codex conflict resolution finished`:f?.heading??(n?.phase===`complete`?`Finishing synchronization…`:n?.phase===`error`?`Conflict resolution failed.`:n?`Resolving conflicts with Codex…`:ge(c))}),h(`button`,{"aria-label":`Close managed development`,className:N.iconButton,onClick:s,type:`button`,children:h(M,{"aria-hidden":`true`,size:18})})]}),g(`div`,{className:N.content,children:[o?g(`div`,{className:N.debugToolbar,children:[h(`button`,{className:N.debugBackButton,onClick:o,type:`button`,children:`All scenarios`}),h(`span`,{children:`Debug preview · actions are simulated`})]}):null,f&&!x?g(`div`,{className:N.actionSuccess,role:`status`,children:[h(ie,{"aria-hidden":`true`,className:N.successIcon,size:18}),h(`p`,{className:N.paragraph,children:f.message})]}):null,a?g(m,{children:[h(`div`,{className:N.actionError,role:`alert`,children:h(G,{children:a})}),h(W,{children:h(K,{ariaLabel:`Dismiss error`,icon:M,iconOnly:!0,onClick:i,children:`Dismiss`})})]}):null,x||!f&&n?h(me,{commits:x?.commits??n?.commits??[],completion:x,messages:x?.messages??n?.messages??[],outputRef:b,working:n?.phase===`running`}):!f&&c?.setupFailure?g(m,{children:[g(`div`,{className:N.setupFailure,role:`alert`,children:[h(G,{children:c.setupFailure.message}),h(`pre`,{className:N.codexOutput,children:c.setupFailure.output})]}),g(W,{children:[h(K,{ariaLabel:`Dismiss error`,icon:M,iconOnly:!0,onClick:s,children:`Dismiss`}),h(K,{ariaLabel:`Copy diagnostics`,busy:c.busy,icon:O,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(be(c.setupFailure)),children:`Copy diagnostics`}),c.setupFailure.stage===`dependencies`?h(K,{ariaLabel:`Retry install`,busy:c.busy,icon:A,iconOnly:!0,onClick:()=>void e({type:`retry-install`}),primary:!0,children:`Retry install`}):h(K,{busy:c.busy,icon:j,onClick:()=>{window.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`})]})]}):f?null:h(`p`,{className:N.paragraph,children:c?c.busy||c.message||_e(c):`Checking managed development status…`}),!f&&!n&&c?.mode===`waiting`&&c.message?g(`p`,{className:N.paragraph,children:[`To re-enable managed development, run `,h(`code`,{children:`git switch main`}),` in the primary checkout. Synchronization will resume automatically.`]}):null,!f&&!n&&C&&!S?g(`p`,{className:N.paragraph,children:[C.subject,` (`,C.shortCommit,`)`]}):null,!f&&!n?c?.warnings.map((e,t)=>h(`p`,{className:`${N.paragraph} ${N.warning}`,children:e},`${t}-${e}`)):null,!f&&!n&&S?g(m,{children:[g(`div`,{className:N.files,children:[S.untracked.map(e=>h(U,{checked:w.has(e),label:h(`span`,{className:N.filePath,children:e}),onChange:t=>y(()=>{let n=new Set(w);return t?n.add(e):n.delete(e),{fingerprint:S.fingerprint,paths:n}})},e)),S.untracked.length>0?h(U,{checked:E,label:`Include all untracked files`,onChange:e=>y({fingerprint:S.fingerprint,paths:e?new Set(S.untracked):new Set})}):null]}),c.proposal===void 0?g(W,{children:[C?h(K,{busy:c.busy,icon:j,onClick:()=>void e({type:`reject`}),children:`Reject`}):null,h(K,{busy:c.busy,icon:ae,onClick:()=>void e({type:`message`,fingerprint:S.fingerprint,untracked:[...w]}),primary:!0,children:`Generate commit message`})]}):g(m,{children:[h(`textarea`,{"aria-label":`Commit message`,className:N.message,onChange:e=>_({fingerprint:S.fingerprint,proposal:c.proposal,value:e.target.value}),value:T}),g(W,{children:[C?h(K,{busy:c.busy,icon:j,onClick:()=>void e({type:`reject`}),children:`Reject`}):null,h(K,{busy:c.busy,icon:k,onClick:()=>{e(C?{type:`apply`,target:C.commit,fingerprint:S.fingerprint,untracked:[...w],message:T}:{type:`commit`,fingerprint:S.fingerprint,untracked:[...w],message:T})},primary:!0,children:C?`Commit and refresh`:`Commit changes`})]})]})]}):!f&&C?h(W,{children:h(K,{busy:c.busy,icon:A,onClick:()=>void e({type:`prepare`,target:C.commit}),primary:!0,children:C.source===`upstream`?`Refresh`:String(C.source)===`dev`?`Sync with dev`:`Sync with main`})}):null]})]})}function me({commits:t,completion:n,messages:r,outputRef:i,working:a}){let o=[...r].reverse().find(e=>e.kind===`user`),s=[...r].reverse().find(e=>e.kind!==`user`),c=r.filter(e=>e.kind===`thought`&&e!==s),l=n?{kind:`agent`,text:n.finalMessage}:s;return g(m,{children:[a?h(`div`,{className:N.codexWorking,children:h(e,{className:N.codexWorkingSpinner,label:`Codex is resolving conflicts`,children:`Working...`})}):null,g(`div`,{"aria-live":n?void 0:`polite`,className:N.codexTranscript,ref:i,role:`log`,children:[t.length>0?h(he,{commits:t}):null,o?h(H,{message:o}):null,c.length>0?g(`details`,{className:N.previousThoughts,children:[g(`summary`,{children:[`Previous thoughts (`,c.length,`)`]}),h(`div`,{className:N.previousThoughtList,children:c.map((e,t)=>h(H,{message:e},`thought-${t}`))})]}):null,l?h(H,{message:l}):h(`p`,{className:N.codexWaiting,children:`Waiting for Codex output…`})]})]})}function he({commits:e}){return g(`section`,{className:N.rebasedCommits,children:[g(`h3`,{className:N.codexMessageLabel,children:[`Rebased commits (`,e.length,`)`]}),h(`ul`,{className:N.rebasedCommitList,children:e.map(e=>g(`li`,{className:N.rebasedCommit,children:[h(k,{"aria-hidden":`true`,size:14}),h(`code`,{children:e.shortCommit}),h(`span`,{children:e.subject})]},e.commit))})]})}function H({message:e}){let t=e.kind===`user`?`Request`:e.kind===`thought`?`Codex thought`:`Codex`,n=e.kind===`user`?N.codexMessageUser:e.kind===`thought`?N.codexMessageThought:N.codexMessageAgent;return g(`section`,{className:`${N.codexMessage} ${n}`,children:[h(`h3`,{className:N.codexMessageLabel,children:t}),h(`p`,{className:N.codexMessageText,children:e.text})]})}function U({checked:e,label:t,onChange:n}){return g(`label`,{className:N.checkbox,children:[h(`input`,{checked:e,onChange:e=>n(e.target.checked),type:`checkbox`}),t]})}function W({children:e}){return h(`div`,{className:N.actions,children:e})}function G({children:e}){return g(`div`,{className:N.errorMessage,children:[h(oe,{"aria-hidden":`true`,className:N.errorIcon,size:18}),h(`p`,{className:N.paragraph,children:e})]})}function K({ariaLabel:e,busy:t,children:n,icon:r,iconOnly:i=!1,onClick:a,primary:o=!1}){return g(`button`,{"aria-label":e,"aria-busy":!!t,className:`${N.button} ${i?N.iconOnly:``} ${o?N.primary:``}`,disabled:!!t,onClick:a,title:i?e:void 0,type:`button`,children:[r?h(r,{"aria-hidden":`true`,size:16}):null,i?null:n]})}function ge(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===`migration`?`Database setup failed`:e.draft?e.proposal===void 0?`Review local changes`:`Confirm your commit`: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`)?`Managed development checks failed`:e.warnings.length>0?`Managed development warning`:`Managed development status`:`Checking managed development`}function _e(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.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 q(e){return e.mode!==`managed`||!!(e.busy||e.codexCompletion||e.draft||e.message||e.setupFailure||e.target||e.warnings.length>0)}function J(e){if(!e?.checks||q(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 ve({commit:e,trigger:t}){let n=e.slice(0,12);return 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 Y(e,t=J(e)){return e?e.mode===`waiting`?!!e.message:!!(t||q(e)):!1}function ye(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 be(e){return[e.message,`Commit: ${e.commit}`,`Command: ${e.command}`,``,e.output].join(`
|
|
111
|
-
`)}function
|
|
109
|
+
;function se(){return import.meta.hot}var N={actionError:`actionError`,actions:`actions`,actionSuccess:`actionSuccess`,button:`button`,checkbox:`checkbox`,checkCommand:`checkCommand`,checkFailure:`checkFailure`,checkGuidance:`checkGuidance`,codexMessage:`codexMessage`,codexMessageAgent:`codexMessageAgent`,codexMessageLabel:`codexMessageLabel`,codexMessageText:`codexMessageText`,codexMessageThought:`codexMessageThought`,codexMessageUser:`codexMessageUser`,codexOutput:`codexOutput`,codexTranscript:`codexTranscript`,codexWaiting:`codexWaiting`,codexWorking:`codexWorking`,codexWorkingSpinner:`codexWorkingSpinner`,content:`content`,debugBackButton:`debugBackButton`,debugNotice:`debugNotice`,debugToolbar:`debugToolbar`,dialog:`dialog`,errorIcon:`errorIcon`,errorMessage:`errorMessage`,filePath:`filePath`,files:`files`,header:`header`,iconButton:`iconButton`,iconOnly:`iconOnly`,indicatorButton:`indicatorButton`,indicatorDot:`indicatorDot`,message:`message`,paragraph:`paragraph`,previousThoughtList:`previousThoughtList`,previousThoughts:`previousThoughts`,primary:`primary`,radiate:`radiate`,rebasedCommit:`rebasedCommit`,rebasedCommitList:`rebasedCommitList`,rebasedCommits:`rebasedCommits`,scenarioButton:`scenarioButton`,scenarioDescription:`scenarioDescription`,scenarioLabel:`scenarioLabel`,scenarioList:`scenarioList`,setupFailure:`setupFailure`,successIcon:`successIcon`,surface:`surface`,title:`title`,warning:`warning`},ce=`[data-isolet-root]{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 system-ui,sans-serif}.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:0 0 0 2px var(--overlay-background), 0 0 0 3px var(--overlay-border);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:max-content;inset:auto calc(18px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset)) calc(62px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset)) auto;pointer-events:auto;border-radius:14px;width:min(430px,100vw - 36px);max-width:min(430px,100vw - 36px);max-height:min(620px,100dvh - 80px);margin:0;padding:18px;position:fixed;overflow:auto}.dialog[open]{align-content:start;gap:12px;display:grid}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.title{margin:0;font-size:16px}.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,.debugBackButton:focus-visible,.scenarioButton:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.debugNotice{background:var(--overlay-thought-soft);border:1px solid var(--overlay-thought-border);color:var(--overlay-thought-text);border-radius:10px;margin:0;padding:9px 10px;font-size:12px}.debugToolbar{color:var(--overlay-thought-text);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.debugBackButton{color:var(--overlay-thought-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-weight:650}.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}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:280px;margin:0;padding:10px;font:12px/1.5 ui-monospace,monospace;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 ui-monospace,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)}.codexMessageLabel{color:var(--overlay-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.codexMessageText,.codexWaiting{white-space:pre-wrap;word-break:break-word;margin:0;font:12px/1.5 ui-monospace,monospace}.codexWaiting{color:var(--overlay-text-subtle)}.rebasedCommits{background:var(--overlay-success-soft);border:1px solid var(--overlay-success-border);border-radius:10px;gap:7px;padding:10px;display:grid}.rebasedCommitList{gap:5px;margin:0;padding:0;list-style:none;display:grid}.rebasedCommit{grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:7px;font-size:12px;display:grid}.rebasedCommit>svg{color:var(--overlay-success-text);align-self:center}.rebasedCommit>code{color:var(--overlay-text-muted);font-size:11px}.rebasedCommit>span{overflow-wrap:anywhere}.previousThoughts{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:10px;padding:8px 10px}.previousThoughts>summary{cursor:pointer;font-size:12px;font-weight:600}.previousThoughtList{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:ui-monospace,monospace}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);resize:vertical;border-radius:10px;width:100%;min-height:92px;padding:10px;font-family:ui-monospace,monospace}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.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)}.button:disabled{cursor:wait;opacity:.55}.iconOnly{min-width: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{margin:0;font-family:ui-monospace,monospace;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)}}@media (width<=600px){.dialog{inset:auto calc(12px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset)) calc(62px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset)) calc(12px + env(safe-area-inset-left,0px));width:auto;max-height:calc(100dvh - 86px);padding:16px}.button{min-height:44px}.checkbox{align-items:center;min-height:44px}.iconButton{min-width:44px;min-height:44px}.iconOnly{min-width:44px}}@media (prefers-reduced-motion:reduce){.indicatorDot:before{opacity:.45;animation:none;transform:scale(1.65)}}
|
|
110
|
+
`;let P=!1,le=0;const F=new Set,I=[{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`,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`,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`,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`},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.`},{kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}],phase:`complete`,requestId:`debug-codex-message`},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`},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.`},{kind:`agent`,text:`Resolved root.tsx while preserving both the command layer and overlay mounting.`}]},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.`}}];function L(){R(!P)}function R(e){if(P!==e){P=e;for(let e of F)e()}}function ue({bottomOffset:e,debug:t=!1,indicator:n,rightOffset:r}){return h(t?fe:de,{bottomOffset:e,indicator:n,rightOffset:r})}function de({bottomOffset:e,indicator:t,rightOffset:r}){let{act:i,checkFailure:a,codex:s,dismissCheckFailure:c,dismissError:u,dismissSuccess:d,error:f,status:p,success:m}=xe();l(()=>{if(!m)return;let e=setTimeout(()=>{d(),R(!1)},1600);return()=>clearTimeout(e)},[d,m]);let g=p?.mode===`waiting`&&!!p.message,_=t??h(V,{}),v=o(_)&&_.type===V?n(_,{paused:g}):_;return h(z,{bottomOffset:e,indicator:X(p,a)?v:null,rightOffset:r,children:h(H,{act:i,checkFailure:a,codex:s,dismissCheckFailure:c,dismissError:u,error:f,onClose:()=>{p?.codexCompletion&&i({id:p.codexCompletion.id,type:`acknowledge-codex`}),R(!1)},status:p,success:m})})}function z({bottomOffset:e,children:t,indicator:n,openOnMount:r=!1,rightOffset:i}){let[a,o]=d(null),s=f(Q,Se,$);l(()=>{r&&R(!0);let e=!0,t=b(`coreframe-managed-dev`,document.body,{css:ce,hostAttributes:{"aria-live":`polite`,id:`coreframe-managed-dev`},hostStyles:{inset:`0`,pointerEvents:`none`,position:`fixed`},zIndex:2147483647});return queueMicrotask(()=>{e&&o(t.container)}),()=>{e=!1,t.host?.remove()}},[r]);let c={"--managed-dev-bottom-offset":B(e),"--managed-dev-right-offset":B(i)};return a?p(g(`div`,{className:N.surface,style:c,children:[n,s?t:null]}),a):null}function fe({bottomOffset:e,indicator:t,rightOffset:r}){let[i,a]=d(),[s,c]=d(),l=I.find(({id:e})=>e===i),u=e=>{a(e),c(void 0)},f=t??h(V,{});return h(z,{bottomOffset:e,indicator:o(f)&&f.type===V?n(f,{paused:l?.status.mode===`waiting`}):f,openOnMount:!0,rightOffset:r,children:l?h(H,{act:async e=>c(Z(e)),checkFailure:Y(l.status),codex:l.codex,dismissCheckFailure:()=>void 0,dismissError:()=>void 0,error:l.error,onBack:()=>u(void 0),onClose:()=>R(!1),status:l.status,success:s??l.success},l.id):h(pe,{onClose:()=>R(!1),onSelect:e=>u(e)})})}function B(e){return typeof e==`number`?`${e}px`:e??`0px`}function pe({onClose:e,onSelect:t}){return g(`dialog`,{"aria-labelledby":`coreframe-managed-title`,className:N.dialog,id:`coreframe-managed-dev-dialog`,open:!0,children:[g(`div`,{className:N.header,children:[h(`h2`,{className:N.title,id:`coreframe-managed-title`,children:`Managed dev overlay scenarios`}),h(`button`,{"aria-label":`Close managed development`,className:N.iconButton,onClick:e,type:`button`,children:h(M,{"aria-hidden":`true`,size:18})})]}),h(`p`,{className:N.debugNotice,children:`Debug preview. Project actions are simulated locally.`}),h(`div`,{className:N.scenarioList,children:I.map(e=>g(`button`,{className:N.scenarioButton,onClick:()=>t(e.id),type:`button`,children:[h(`span`,{className:N.scenarioLabel,children:e.label}),h(`span`,{className:N.scenarioDescription,children:e.description})]},e.id))})]})}function V({color:e=`#228be6`,paused:t=!1,size:n=14,warningColor:r=`#fd7e14`}){let i=f(Q,Se,$),a={"--managed-dev-indicator-color":t?r:e,"--managed-dev-indicator-size":typeof n==`number`?`${n}px`:n};return h(`button`,{"aria-controls":`coreframe-managed-dev-dialog`,"aria-expanded":i,"aria-label":`${i?`Hide`:`Show`} Coreframe managed development`,className:N.indicatorButton,onClick:L,style:a,type:`button`,children:h(`span`,{className:N.indicatorDot})})}function H({act:e,checkFailure:t,codex:n,dismissCheckFailure:r,dismissError:i,error:a,onBack:o,onClose:s,status:c,success:f}){let[p,_]=d({value:``}),[v,y]=d(()=>({paths:new Set})),b=u(null),x=c?.codexCompletion,S=c?.draft,C=c?.target,w=v.fingerprint===S?.fingerprint?v.paths:new Set(S?.untracked??[]),T=p.fingerprint===S?.fingerprint&&p.proposal===c?.proposal?p.value:c?.proposal??``,E=!!(S?.untracked.length&&S.untracked.every(e=>w.has(e)));return l(()=>{let e=b.current;e&&n?.phase===`running`&&(e.scrollTop=e.scrollHeight)},[n]),t?g(`dialog`,{"aria-labelledby":`coreframe-managed-title`,className:N.dialog,id:`coreframe-managed-dev-dialog`,open:!0,children:[g(`div`,{className:N.header,children:[h(`h2`,{className:N.title,id:`coreframe-managed-title`,children:`Managed development check failed`}),h(`button`,{"aria-label":`Close managed development`,className:N.iconButton,onClick:s,type:`button`,children:h(M,{"aria-hidden":`true`,size:18})})]}),g(`div`,{className:N.content,children:[o?g(`div`,{className:N.debugToolbar,children:[h(`button`,{className:N.debugBackButton,onClick:o,type:`button`,children:`All scenarios`}),h(`span`,{children:`Debug preview · actions are simulated`})]}):null,h(`div`,{className:N.checkFailure,role:`alert`,children:g(`div`,{className:N.checkMessage,children:[g(`p`,{className:N.checkCommand,children:[t.check.command,` failed`]}),h(`p`,{className:N.checkGuidance,children:ve(t)}),h(`p`,{className:N.checkGuidance,children:`Copy the output and paste it into your agent orchestration tool.`})]})}),g(G,{children:[h(q,{ariaLabel:`Dismiss error`,icon:M,iconOnly:!0,onClick:()=>r(t),children:`Dismiss`}),h(q,{ariaLabel:`Copy output for ${t.check.command}`,icon:O,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(t.check.output??``),children:`Copy output`})]})]})]}):g(`dialog`,{"aria-labelledby":`coreframe-managed-title`,className:N.dialog,id:`coreframe-managed-dev-dialog`,open:!0,children:[g(`div`,{className:N.header,children:[h(`h2`,{className:N.title,id:`coreframe-managed-title`,children:x?`Codex conflict resolution finished`:f?.heading??(n?.phase===`complete`?`Finishing synchronization…`:n?.phase===`error`?`Conflict resolution failed.`:n?`Resolving conflicts with Codex…`:ge(c))}),h(`button`,{"aria-label":`Close managed development`,className:N.iconButton,onClick:s,type:`button`,children:h(M,{"aria-hidden":`true`,size:18})})]}),g(`div`,{className:N.content,children:[o?g(`div`,{className:N.debugToolbar,children:[h(`button`,{className:N.debugBackButton,onClick:o,type:`button`,children:`All scenarios`}),h(`span`,{children:`Debug preview · actions are simulated`})]}):null,f&&!x?g(`div`,{className:N.actionSuccess,role:`status`,children:[h(ie,{"aria-hidden":`true`,className:N.successIcon,size:18}),h(`p`,{className:N.paragraph,children:f.message})]}):null,a?g(m,{children:[h(`div`,{className:N.actionError,role:`alert`,children:h(K,{children:a})}),h(G,{children:h(q,{ariaLabel:`Dismiss error`,icon:M,iconOnly:!0,onClick:i,children:`Dismiss`})})]}):null,x||!f&&n?h(me,{commits:x?.commits??n?.commits??[],completion:x,messages:x?.messages??n?.messages??[],outputRef:b,working:n?.phase===`running`}):!f&&c?.setupFailure?g(m,{children:[g(`div`,{className:N.setupFailure,role:`alert`,children:[h(K,{children:c.setupFailure.message}),h(`pre`,{className:N.codexOutput,children:c.setupFailure.output})]}),g(G,{children:[h(q,{ariaLabel:`Dismiss error`,icon:M,iconOnly:!0,onClick:s,children:`Dismiss`}),h(q,{ariaLabel:`Copy diagnostics`,busy:c.busy,icon:O,iconOnly:!0,onClick:()=>void navigator.clipboard.writeText(be(c.setupFailure)),children:`Copy diagnostics`}),c.setupFailure.stage===`dependencies`?h(q,{ariaLabel:`Retry install`,busy:c.busy,icon:A,iconOnly:!0,onClick:()=>void e({type:`retry-install`}),primary:!0,children:`Retry install`}):h(q,{busy:c.busy,icon:j,onClick:()=>{window.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`})]})]}):f?null:h(`p`,{className:N.paragraph,children:c?c.busy||c.message||_e(c):`Checking managed development status…`}),!f&&!n&&c?.mode===`waiting`&&c.message?g(`p`,{className:N.paragraph,children:[`To re-enable managed development, run `,h(`code`,{children:`git switch main`}),` in the primary checkout. Synchronization will resume automatically.`]}):null,!f&&!n&&C&&!S?g(`p`,{className:N.paragraph,children:[C.subject,` (`,C.shortCommit,`)`]}):null,!f&&!n?c?.warnings.map((e,t)=>h(`p`,{className:`${N.paragraph} ${N.warning}`,children:e},`${t}-${e}`)):null,!f&&!n&&S?g(m,{children:[g(`div`,{className:N.files,children:[S.untracked.map(e=>h(W,{checked:w.has(e),label:h(`span`,{className:N.filePath,children:e}),onChange:t=>y(()=>{let n=new Set(w);return t?n.add(e):n.delete(e),{fingerprint:S.fingerprint,paths:n}})},e)),S.untracked.length>0?h(W,{checked:E,label:`Include all untracked files`,onChange:e=>y({fingerprint:S.fingerprint,paths:e?new Set(S.untracked):new Set})}):null]}),c.proposal===void 0?g(G,{children:[C?h(q,{busy:c.busy,icon:j,onClick:()=>void e({type:`reject`}),children:`Reject`}):null,h(q,{busy:c.busy,icon:ae,onClick:()=>void e({type:`message`,fingerprint:S.fingerprint,untracked:[...w]}),primary:!0,children:`Generate commit message`})]}):g(m,{children:[h(`textarea`,{"aria-label":`Commit message`,className:N.message,onChange:e=>_({fingerprint:S.fingerprint,proposal:c.proposal,value:e.target.value}),value:T}),g(G,{children:[C?h(q,{busy:c.busy,icon:j,onClick:()=>void e({type:`reject`}),children:`Reject`}):null,h(q,{busy:c.busy,icon:k,onClick:()=>{e(C?{type:`apply`,target:C.commit,fingerprint:S.fingerprint,untracked:[...w],message:T}:{type:`commit`,fingerprint:S.fingerprint,untracked:[...w],message:T})},primary:!0,children:C?`Commit and refresh`:`Commit changes`})]})]})]}):!f&&C?h(G,{children:h(q,{busy:c.busy,icon:A,onClick:()=>void e({type:`prepare`,target:C.commit}),primary:!0,children:C.source===`upstream`?`Refresh`:String(C.source)===`dev`?`Sync with dev`:`Sync with main`})}):null]})]})}function me({commits:t,completion:n,messages:r,outputRef:i,working:a}){let o=[...r].reverse().find(e=>e.kind===`user`),s=[...r].reverse().find(e=>e.kind!==`user`),c=r.filter(e=>e.kind===`thought`&&e!==s),l=n?{kind:`agent`,text:n.finalMessage}:s;return g(m,{children:[a?h(`div`,{className:N.codexWorking,children:h(e,{className:N.codexWorkingSpinner,label:`Codex is resolving conflicts`,children:`Working...`})}):null,g(`div`,{"aria-live":n?void 0:`polite`,className:N.codexTranscript,ref:i,role:`log`,children:[t.length>0?h(he,{commits:t}):null,o?h(U,{message:o}):null,c.length>0?g(`details`,{className:N.previousThoughts,children:[g(`summary`,{children:[`Previous thoughts (`,c.length,`)`]}),h(`div`,{className:N.previousThoughtList,children:c.map((e,t)=>h(U,{message:e},`thought-${t}`))})]}):null,l?h(U,{message:l}):h(`p`,{className:N.codexWaiting,children:`Waiting for Codex output…`})]})]})}function he({commits:e}){return g(`section`,{className:N.rebasedCommits,children:[g(`h3`,{className:N.codexMessageLabel,children:[`Rebased commits (`,e.length,`)`]}),h(`ul`,{className:N.rebasedCommitList,children:e.map(e=>g(`li`,{className:N.rebasedCommit,children:[h(k,{"aria-hidden":`true`,size:14}),h(`code`,{children:e.shortCommit}),h(`span`,{children:e.subject})]},e.commit))})]})}function U({message:e}){let t=e.kind===`user`?`Request`:e.kind===`thought`?`Codex thought`:`Codex`,n=e.kind===`user`?N.codexMessageUser:e.kind===`thought`?N.codexMessageThought:N.codexMessageAgent;return g(`section`,{className:`${N.codexMessage} ${n}`,children:[h(`h3`,{className:N.codexMessageLabel,children:t}),h(`p`,{className:N.codexMessageText,children:e.text})]})}function W({checked:e,label:t,onChange:n}){return g(`label`,{className:N.checkbox,children:[h(`input`,{checked:e,onChange:e=>n(e.target.checked),type:`checkbox`}),t]})}function G({children:e}){return h(`div`,{className:N.actions,children:e})}function K({children:e}){return g(`div`,{className:N.errorMessage,children:[h(oe,{"aria-hidden":`true`,className:N.errorIcon,size:18}),h(`p`,{className:N.paragraph,children:e})]})}function q({ariaLabel:e,busy:t,children:n,icon:r,iconOnly:i=!1,onClick:a,primary:o=!1}){return g(`button`,{"aria-label":e,"aria-busy":!!t,className:`${N.button} ${i?N.iconOnly:``} ${o?N.primary:``}`,disabled:!!t,onClick:a,title:i?e:void 0,type:`button`,children:[r?h(r,{"aria-hidden":`true`,size:16}):null,i?null:n]})}function ge(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===`migration`?`Database setup failed`:e.draft?e.proposal===void 0?`Review local changes`:`Confirm your commit`: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`)?`Managed development checks failed`:e.warnings.length>0?`Managed development warning`:`Managed development status`:`Checking managed development`}function _e(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.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 J(e){return e.mode!==`managed`||!!(e.busy||e.codexCompletion||e.draft||e.message||e.setupFailure||e.target||e.warnings.length>0)}function Y(e){if(!e?.checks||J(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 ve({commit:e,trigger:t}){let n=e.slice(0,12);return 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 X(e,t=Y(e)){return e?e.mode===`waiting`?!!e.message:!!(t||J(e)):!1}function ye(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 be(e){return[e.message,`Commit: ${e.commit}`,`Command: ${e.command}`,``,e.output].join(`
|
|
111
|
+
`)}function Z(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 managed development updates…`,preserveDuringStatus:!0}:e.type===`reject`?{heading:`Update dismissed`,message:`No further action is required.`}:e.type===`retry-install`?{heading:`Setup complete`,message:`Dependencies installed and the project is ready.`}:e.type===`reset-database`?{heading:`Database reset complete`,message:`The database was recreated, migrated, and seeded.`}:{heading:`Action complete`,message:`No further action is required.`}}function xe(){let[e,n]=d(),[r,i]=d(),[a,o]=d(),[c,f]=d(),p=u(void 0),m=u(void 0),h=u(new Map),g=se();l(()=>{if(!g)return;let e=h.current,r=({status:e})=>{n(e),e.codexCompletion&&m.current!==e.codexCompletion.id&&(m.current=e.codexCompletion.id,R(!0)),X(e)&&o(e=>e?.preserveDuringStatus?e:void 0)},a=t=>{let r=e.get(t.requestId);r&&(e.delete(t.requestId),t.status&&n(t.status),t.error?(i(t.error),r.type===`acknowledge-codex`&&R(!0)):t.status?.codexCompletion?(m.current=t.status.codexCompletion.id,p.current=void 0,f(void 0),o(void 0),R(!0)):r.type===`acknowledge-codex`?o(void 0):r.type===`dismiss-check`?(o(void 0),t.status&&!X(t.status)&&R(!1)):t.status&&(r.type===`commit`||!X(t.status))&&o(Z(r)))},s=t=>{if(!e.has(t.requestId))return;if(t.phase===`start`){let e={commits:t.commits,messages:[t.message],phase:`running`,requestId:t.requestId};p.current=e,f(e),R(!0);return}let n=p.current;if(!n||n.requestId!==t.requestId)return;let r=t.phase===`message`?{...n,messages:ye([...n.messages,t.message])}:t.phase===`complete`?{commits:n.commits,messages:n.messages,phase:`complete`,requestId:t.requestId}:t.phase===`progress`?{...n,commits:t.commits}:{...n,phase:`error`};p.current=r,f(r)};return g.on(t.status,r),g.on(t.actionResult,a),g.on(t.codex,s),g.send(t.statusRequest),()=>{e.clear(),p.current=void 0,g.off(t.status,r),g.off(t.actionResult,a),g.off(t.codex,s)}},[g]);let _=async e=>{if(e.type===`acknowledge-codex`&&(m.current=e.id),i(void 0),o(void 0),p.current=void 0,f(void 0),!g){i(`The Vite HMR connection is unavailable.`);return}let n=String(++le);h.current.set(n,e),g.send(t.action,{action:e,requestId:n})},v=s(()=>o(void 0),[]);return{act:_,checkFailure:!r&&!a&&!c&&!e?.codexCompletion?Y(e):void 0,codex:c,dismissCheckFailure:e=>{if(!e.check.failureId){R(!1);return}_({failureId:e.check.failureId,type:`dismiss-check`})},dismissError:()=>i(void 0),dismissSuccess:v,error:r,status:e,success:a}}function Q(e){return F.add(e),()=>F.delete(e)}function Se(){return P}function $(){return!1}export{ue as ManagedDevOverlay,V as ManagedDevOverlayIndicator,L as toggleManagedDevOverlay};
|
package/dist/plugins/icons.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"../icons-
|
|
1
|
+
import{t as e}from"../icons-vb_lG-av.js";export{e as coreframeIconsPlugin};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{readProjectConfig as e}from"@coreframe/scripts/config";import{startManagedDevSession as t}from"@coreframe/scripts/managed-dev";import{managedDevEnv as n,managedDevEvents as r}from"@coreframe/scripts/managed-dev-protocol";const i=Symbol.for(`@coreframe/vite/managed-dev-session-states`),a=(()=>{let e=globalThis;return e[i]??=new Map})();function o({env:i=process.env,startSession:a=t}={}){let o=i[n]===`1`,l,u;return{name:`coreframe:managed-dev`,apply:`serve`,config(){return{define:{"import.meta.env.COREFRAME_MANAGED_DEV":JSON.stringify(o)}}},async configureServer(t){if(!o)return;let n=t.config.root;u=n;let d=!1,
|
|
1
|
+
import{readProjectConfig as e}from"@coreframe/scripts/config";import{startManagedDevSession as t}from"@coreframe/scripts/managed-dev";import{managedDevEnv as n,managedDevEvents as r}from"@coreframe/scripts/managed-dev-protocol";const i=Symbol.for(`@coreframe/vite/managed-dev-session-states`),a=(()=>{let e=globalThis;return e[i]??=new Map})();function o({env:i=process.env,startSession:a=t}={}){let o=i[n]===`1`,l,u;return{name:`coreframe:managed-dev`,apply:`serve`,config(){return{define:{"import.meta.env.COREFRAME_MANAGED_DEV":JSON.stringify(o)}}},async configureServer(t){if(!o)return;let n=t.config.root;u=n;let d=!1,p=new WeakMap,m=(e,t)=>{p.set(t,{forwardedFor:h(e.headers[`x-forwarded-for`]),forwardedHost:h(e.headers[`x-forwarded-host`]),forwardedProto:h(e.headers[`x-forwarded-proto`]),host:h(e.headers.host),origin:h(e.headers.origin)})};t.httpServer?.prependListener(`upgrade`,m),l=await a({config:await e({cwd:n}),cwd:n,env:i,onRestart:()=>{d=!0},onStatusChange:()=>t.ws.send(r.status,{status:l.getStatus()})}),await s(n,l);let g=(e,t)=>t.send(r.status,{status:l.getStatus()}),_=async(e,a)=>{let o;if(!f(a,i,p))o=Error(`Managed development actions require a trusted local browser origin.`);else try{let i=await l.action(e.action,{onCodexEvent:t=>a.send(r.codex,{...t,requestId:e.requestId})});a.send(r.actionResult,{requestId:e.requestId,...i}),d&&(d=!1,queueMicrotask(()=>{c(n,l).then(()=>t.restart()).catch(e=>{let n=e instanceof Error?e.message:String(e);t.config.logger.error(`Coreframe managed development restart failed: ${n}`,{error:e instanceof Error?e:void 0})})}));return}catch(e){o=e}let s=o instanceof Error?o.message:String(o);t.config.logger.error(`Coreframe managed development action failed: ${s}`,{error:o instanceof Error?o:void 0}),a.send(r.actionResult,{error:s,requestId:e.requestId,status:l.getStatus()})};t.ws.on(r.statusRequest,g),t.ws.on(r.action,_),t.httpServer?.once(`close`,()=>{t.httpServer?.off(`upgrade`,m),t.ws.off(r.statusRequest,g),t.ws.off(r.action,_),l&&c(n,l)})},async closeBundle(){l&&u&&await c(u,l)}}}async function s(e,t){await l(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 c(e,t){await l(e,async e=>{e.session===t&&(e.session=void 0),await t.close()})}async function l(e,t){let n=a.get(e);n||(n={transition:Promise.resolve()},a.set(e,n));let r=n.transition,i;n.transition=new Promise(e=>{i=()=>e()}),await r;try{await t(n)}finally{i()}}function u(e){return e.socket._socket?.remoteAddress}function d(e){return e.socket._socket}function f(e,t,n){if(!_(u(e))||g(t))return!1;let r=d(e),i=r&&n.get(r);if(!i)return!1;if(i.forwardedFor===void 0&&i.forwardedHost===void 0&&i.forwardedProto===void 0)return p(i);let a=m(t.PORTLESS_URL);if(!a||a.protocol!==`https:`||i.origin!==a.origin)return!1;let o=a.protocol.slice(0,-1),s=i.forwardedFor?.split(`,`).map(e=>e.trim());return a.protocol===`https:`&&i.forwardedHost?.toLowerCase()===a.host&&i.forwardedProto?.toLowerCase()===o&&s!==void 0&&s.length>0&&s.every(e=>e.length>0&&_(e))}function p(e){let t=m(e.origin);return t!==void 0&&e.host?.toLowerCase()===t.host.toLowerCase()&&(t.hostname===`localhost`||t.hostname===`127.0.0.1`||t.hostname===`[::1]`)}function m(e){if(e)try{let t=new URL(e);return(t.protocol===`http:`||t.protocol===`https:`)&&t.origin===e?t:void 0}catch{return}}function h(e){return typeof e==`string`?e:void 0}function g(e){return e.PORTLESS_LAN===`1`||e.PORTLESS_TAILSCALE===`1`||e.PORTLESS_FUNNEL===`1`||e.PORTLESS_NGROK===`1`||!!e.PORTLESS_TAILSCALE_URL||!!e.PORTLESS_NGROK_URL}function _(e){return e===`127.0.0.1`||e===`::1`||e?.startsWith(`::ffff:127.`)}export{o 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{t as n}from"../icons-
|
|
1
|
+
import{coreframeAssetsPlugin as e}from"./assets.js";import{coreframeDashboardPlugin as t}from"./dashboard.js";import{t as n}from"../icons-vb_lG-av.js";import{coreframeManagedDevPlugin as r}from"./managed-dev.js";import{t as i}from"../worktree-head-BZrhW1-Q.js";function a(){return[e(),...n(),r(),i(),t()]}export{a as coreframeVitePreset};
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[data-isolet-root]{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 system-ui,sans-serif}.indicatorButton{appearance:none;cursor:pointer;pointer-events:auto;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:fixed;bottom:10px;right:10px}.indicatorButton:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:-3px}.indicatorDot{background:var(--managed-dev-indicator-color);box-shadow:0 0 0 2px var(--overlay-background), 0 0 0 3px var(--overlay-border);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;pointer-events:auto;border-radius:14px;width:min(430px,100vw - 36px);max-width:min(430px,100vw - 36px);max-height:min(620px,100dvh - 80px);margin:0;padding:18px;position:fixed;inset:auto 18px 62px auto;overflow:auto}.dialog[open]{gap:12px;display:grid}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.title{margin:0;font-size:16px}.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,.debugBackButton:focus-visible,.scenarioButton:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.debugNotice{background:var(--overlay-thought-soft);border:1px solid var(--overlay-thought-border);color:var(--overlay-thought-text);border-radius:10px;margin:0;padding:9px 10px;font-size:12px}.debugToolbar{color:var(--overlay-thought-text);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.debugBackButton{color:var(--overlay-thought-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-weight:650}.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}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:280px;margin:0;padding:10px;font:12px/1.5 ui-monospace,monospace;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 ui-monospace,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)}.codexMessageLabel{color:var(--overlay-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.codexMessageText,.codexWaiting{white-space:pre-wrap;word-break:break-word;margin:0;font:12px/1.5 ui-monospace,monospace}.codexWaiting{color:var(--overlay-text-subtle)}.rebasedCommits{background:var(--overlay-success-soft);border:1px solid var(--overlay-success-border);border-radius:10px;gap:7px;padding:10px;display:grid}.rebasedCommitList{gap:5px;margin:0;padding:0;list-style:none;display:grid}.rebasedCommit{grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:7px;font-size:12px;display:grid}.rebasedCommit>svg{color:var(--overlay-success-text);align-self:center}.rebasedCommit>code{color:var(--overlay-text-muted);font-size:11px}.rebasedCommit>span{overflow-wrap:anywhere}.previousThoughts{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:10px;padding:8px 10px}.previousThoughts>summary{cursor:pointer;font-size:12px;font-weight:600}.previousThoughtList{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:ui-monospace,monospace}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);resize:vertical;border-radius:10px;width:100%;min-height:92px;padding:10px;font-family:ui-monospace,monospace}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.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)}.button:disabled{cursor:wait;opacity:.55}.iconOnly{min-width: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{margin:0;font-family:ui-monospace,monospace;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)}}@media (width<=600px){.dialog{width:auto;max-height:calc(100dvh - 86px);padding:16px;inset:auto 12px 62px}.button{min-height:44px}.iconOnly{min-width:44px}}@media (prefers-reduced-motion:reduce){.indicatorDot:before{opacity:.45;animation:none;transform:scale(1.65)}}
|
|
1
|
+
[data-isolet-root]{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 system-ui,sans-serif}.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:0 0 0 2px var(--overlay-background), 0 0 0 3px var(--overlay-border);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:max-content;inset:auto calc(18px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset)) calc(62px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset)) auto;pointer-events:auto;border-radius:14px;width:min(430px,100vw - 36px);max-width:min(430px,100vw - 36px);max-height:min(620px,100dvh - 80px);margin:0;padding:18px;position:fixed;overflow:auto}.dialog[open]{align-content:start;gap:12px;display:grid}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.title{margin:0;font-size:16px}.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,.debugBackButton:focus-visible,.scenarioButton:focus-visible,.button:focus-visible,.message:focus-visible{outline:3px solid var(--overlay-accent-border);outline-offset:2px}.content{gap:12px;display:grid}.debugNotice{background:var(--overlay-thought-soft);border:1px solid var(--overlay-thought-border);color:var(--overlay-thought-text);border-radius:10px;margin:0;padding:9px 10px;font-size:12px}.debugToolbar{color:var(--overlay-thought-text);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.debugBackButton{color:var(--overlay-thought-text);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px;font-weight:650}.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}.codexOutput{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);box-sizing:border-box;white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:280px;margin:0;padding:10px;font:12px/1.5 ui-monospace,monospace;overflow:auto}.codexWorking{color:var(--overlay-text-muted);font:12px/1.5 ui-monospace,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)}.codexMessageLabel{color:var(--overlay-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.codexMessageText,.codexWaiting{white-space:pre-wrap;word-break:break-word;margin:0;font:12px/1.5 ui-monospace,monospace}.codexWaiting{color:var(--overlay-text-subtle)}.rebasedCommits{background:var(--overlay-success-soft);border:1px solid var(--overlay-success-border);border-radius:10px;gap:7px;padding:10px;display:grid}.rebasedCommitList{gap:5px;margin:0;padding:0;list-style:none;display:grid}.rebasedCommit{grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:7px;font-size:12px;display:grid}.rebasedCommit>svg{color:var(--overlay-success-text);align-self:center}.rebasedCommit>code{color:var(--overlay-text-muted);font-size:11px}.rebasedCommit>span{overflow-wrap:anywhere}.previousThoughts{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border);border-radius:10px;padding:8px 10px}.previousThoughts>summary{cursor:pointer;font-size:12px;font-weight:600}.previousThoughtList{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:ui-monospace,monospace}.message{background:var(--overlay-surface-subtle);border:1px solid var(--overlay-border-strong);box-sizing:border-box;color:var(--overlay-text);resize:vertical;border-radius:10px;width:100%;min-height:92px;padding:10px;font-family:ui-monospace,monospace}.actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.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)}.button:disabled{cursor:wait;opacity:.55}.iconOnly{min-width: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{margin:0;font-family:ui-monospace,monospace;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)}}@media (width<=600px){.dialog{inset:auto calc(12px + env(safe-area-inset-right,0px) + var(--managed-dev-right-offset)) calc(62px + env(safe-area-inset-bottom,0px) + var(--managed-dev-bottom-offset)) calc(12px + env(safe-area-inset-left,0px));width:auto;max-height:calc(100dvh - 86px);padding:16px}.button{min-height:44px}.checkbox{align-items:center;min-height:44px}.iconButton{min-width:44px;min-height:44px}.iconOnly{min-width:44px}}@media (prefers-reduced-motion:reduce){.indicatorDot:before{opacity:.45;animation:none;transform:scale(1.65)}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coreframe/vite",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.35",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/airlock-labs/coreframe.git",
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"lucide-react": "^1.24.0",
|
|
37
37
|
"obug": "^2.1.3",
|
|
38
38
|
"unplugin": "^2.3.11",
|
|
39
|
-
"@coreframe/
|
|
40
|
-
"@coreframe/
|
|
41
|
-
"@coreframe/
|
|
39
|
+
"@coreframe/lib": "^0.1.17",
|
|
40
|
+
"@coreframe/scripts": "^0.1.45",
|
|
41
|
+
"@coreframe/dashboard": "^0.2.23"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@tsdown/css": "0.22.3",
|
package/dist/icons-Dn2tl9hg.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import{readFile as e}from"node:fs/promises";import{isAbsolute as t,relative as n,resolve as r}from"node:path";import{createHash as i}from"node:crypto";import{buildParsedSVG as a,parseSVGContent as o}from"@iconify/utils";import{loadNodeIcon as s}from"@iconify/utils/lib/loader/node-loader";import{createUnplugin as c}from"unplugin";import{camelize as l}from"@iconify/utils/lib/misc/strings";import u from"node:process";import{createDebug as d}from"obug";const f=(e=>`---
|
|
2
|
-
interface Props extends astroHTML.JSX.SVGAttributes {};
|
|
3
|
-
const props = Astro.props;
|
|
4
|
-
---
|
|
5
|
-
${e.replace(`<svg`,`<svg {...props}`)}`),p=(e=>{let t=e.replace(`<svg`,`<svg ...attributes`);return`import { template } from "@ember/template-compiler";
|
|
6
|
-
|
|
7
|
-
const Icon = template(${JSON.stringify(t)})
|
|
8
|
-
export default Icon;`}),m=(async(e,t,n,r)=>{let i=await import(`@svgr/core`),a=await(i.transform||(i.default?i.default.transform??i.default:i.default)||i)(e,{plugins:[`@svgr/plugin-jsx`],ref:r.jsx===`react`,titleProp:r.jsx===`react`},{componentName:l(`${t}-${n}`)});return r.jsx!==`react`&&(a=a.replace(`import * as React from "react";`,``)),a}),h=(e=>{let t=e.indexOf(`>`,e.indexOf(`<svg `)),n=e.lastIndexOf(`</svg`);return`${`${e.slice(0,t)} ...input>`}${`$!{\`${g(e.slice(t+1,n))}\`}`}${e.slice(n)}`});function g(e){return e.replace(/\\.|[$`]/g,e=>{switch(e){case`$`:return`$`;case"`":return```;default:return e}})}const _=(e=>e),ee=(async(e,t,n,r)=>{let i={importSource:`@builder.io/qwik`,runtime:`automatic`,componentName:l(`${t}-${n}`)},a=Object.assign({},i,r),o=(await importModule(`@svgx/core`)).toJsxComponent;return o(e,{...a,defaultExport:!0})}),v=(e=>`export default ${JSON.stringify(e)}`),y=(e=>`export default (props = {}) => ${e.replace(/([{}])/g,`{'$1'}`).replace(/(?<=<svg[\s\S]*?)(>)/i,`{...props}>`)}`);let b;const x=(async e=>{if(b==null)try{let{VERSION:e}=await import(`svelte/compiler`);b=Number(e.split(`.`)[0])>=5}catch{b=!1}let t=e.indexOf(`>`,e.indexOf(`<svg `)),n=e.lastIndexOf(`</svg`),r=`${e.slice(0,t)} {...${b?`p`:`$$props`}}>`;return b?r+=e.slice(t+1,n):r+=`{@html \`${S(e.slice(t+1,n))}\`}`,r+=e.slice(n),b?`<script>const{...p}=$props()<\/script>${r}`:r});function S(e){return e.replace(/\{/g,`{`).replace(/\}/g,`}`).replace(/`/g,```).replace(/\\([trn])/g,` `)}function C(e){let t=/="url\(#/.test(e),n={},r=``;return t&&(e=e.replace(/\b([\w-]+)="url\(#(.+?)\)"/g,(e,t,r)=>(n[r]=`'${r}':'uicons-'+__randId()`,`:${t}="'url(#'+idMap['${r}']+')'"`)).replace(/\bid="(.+?)"/g,(e,t)=>n[t]?`:id="idMap['${t}']"`:e),r=`const __randId = () => Math.random().toString(36).substr(2, 10);const idMap = {${Object.values(n).join(`,`)}};`),{hasID:t,svg:e,injectScripts:r}}const w={astro:f,ember:p,jsx:m,marko:h,none:_,raw:v,solid:y,svelte:x,vue3:(async(e,t,n)=>{let{compileTemplate:r}=await importModule(`@vue/compiler-sfc`),{injectScripts:i,svg:a}=C(e),{code:o}=r({source:a,id:`${t}:${n}`,filename:`${t}-${n}.vue`});return o=`import { markRaw } from 'vue'\n${o}`,o=o.replace(/^export /gm,``),o+=`\n\nexport default markRaw({ name: '${t}-${n}', render${i?`, setup() {${i};return { idMap }}`:``} })`,o+=`
|
|
9
|
-
/* vite-plugin-components disabled */`,o}),"web-components":((e,t,n,{webComponents:r})=>{let i=`${t}-${n}`;r.iconPrefix&&(i=`${r.iconPrefix}-${i}`);let a=l(i),o=`export default class ${a} extends HTMLElement {`;return r.shadow?o+=`constructor() {
|
|
10
|
-
super()
|
|
11
|
-
this.attachShadow({ mode: 'open' }).innerHTML = ${JSON.stringify(e)}
|
|
12
|
-
}`:o+=`connectedCallback() { this.innerHTML = ${JSON.stringify(e)} }`,o+=`}`,r.autoDefine&&(o+=`\ncustomElements.define('${i}', ${a})`),o}),qwik:ee},T=[`/~icons/`,`~icons/`,`virtual:icons/`,`virtual/icons/`],E=RegExp(`${T.map(e=>`^${e}`).join(`|`)}`);function D(e){return E.test(e)}function O(e){return e.replace(E,T[0])}function k(e){if(!D(e))return null;e=e.replace(E,``);let t={},n=e.indexOf(`?`);if(n!==-1){let r=e.slice(n+1);e=e.slice(0,n),new URLSearchParams(r).forEach((e,n)=>{n===`raw`?t.raw=e===``||e===`true`?`true`:`false`:t[n]=e})}e=e.replace(/\.\w+$/,``);let[r,i]=e.split(`/`);return{collection:r,icon:i,query:t}}async function A({collection:e,icon:t,query:n},r){let i=`${e}/${t}`,{scale:a,defaultStyle:o,defaultClass:c,customCollections:l,iconCustomizer:u,transform:d,autoInstall:f=!1,collectionsNodeResolvePath:p}=r,m=await s(e,t,{addXmlNs:!1,scale:a,customCollections:l,autoInstall:f,defaultClass:c,defaultStyle:o,cwd:p,warn:void 0,customizations:{transform:d,async iconCustomizer(e,t,r){await u?.(e,t,r),Object.keys(n).forEach(e=>{let t=n[e];e!==`raw`&&t!=null&&(r[e]=t)})}}});if(!m)throw Error(`Icon \`${i}\` not found`);let h=n.raw===`true`?`raw`:r.compiler;if(h){let n=typeof h==`string`?w[h]:await h.compiler;if(n)return n(m,e,t,r)}throw Error(`Unknown compiler: ${h}`)}async function j(e,t){let n=k(e);return n?A(n,t):null}const M=d(`unplugin-icons:options`);async function N(e){let{scale:t=1.2,defaultStyle:n=``,defaultClass:r=``,compiler:i=await P(),jsx:a=F(),customCollections:o={},iconCustomizer:s=()=>{},transform:c,autoInstall:l=!1,collectionsNodeResolvePath:d=u.cwd()}=e,f=Object.assign({autoDefine:!1,iconPrefix:`icon`},e.webComponents);return M(`compiler`,i),{scale:t,defaultStyle:n,defaultClass:r,customCollections:o,iconCustomizer:s,compiler:i,jsx:a,webComponents:f,transform:c,autoInstall:l,collectionsNodeResolvePath:d}}async function P(){return`jsx`}function F(){return`react`}var I=c((e={})=>{let t=N(e);return{name:`unplugin-icons`,enforce:`pre`,resolveId(t){if(D(t)){let n=O(t),r=n.indexOf(`?`),i=`${(r>-1?n.slice(0,r):n).replace(/\.\w+$/,``).replace(/^\//,``)}${r>-1?`?${n.slice(r+1)}`:``}`,a=k(i)?.query?.raw===`true`?`raw`:e.compiler;if(a&&typeof a!=`string`){let e=a.extension;if(e)return`${i}.${e.startsWith(`.`)?e.slice(1):e}`}else switch(a){case`astro`:return`${i}.astro`;case`jsx`:return`${i}.jsx`;case`qwik`:return`${i}.jsx`;case`marko`:return`${i}.marko`;case`svelte`:return`${i}.svelte`;case`solid`:return`${i}.tsx`}return i}return null},loadInclude(e){return D(e)},async load(e){let n=await j(e,await t)||null;if(n)return{code:n,map:{version:3,mappings:``,sources:[]}}},rollup:{api:{config:e}}}}).vite;const L=`src/assets/icons`,R=`\0coreframe:sprite-icon:`,z=`__COREFRAME_SPRITE_URL__`,B=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;function V(t={}){let n=r(t.appIconsDirectory??L);async function i(t){if(B.test(t))try{let i=await e(r(n,`${t}.svg`),`utf8`);X(i,`app/${t}`);let s=o(i);if(!s||!a(s))throw Error(`Icon \`app/${t}\` must contain a valid viewBox`);return i}catch(e){if(re(e)&&e.code===`ENOENT`)return;throw e}}return[H({options:t,loadAppIcon:i,setAppIconsDirectory(e){n=e}}),I({compiler:`jsx`,jsx:`react`,customCollections:{app:i}})]}function H({options:e,loadAppIcon:t,setAppIconsDirectory:n}){let i=new Map,a=``,o,c;return{name:`coreframe:icons`,enforce:`pre`,configResolved(t){o=t,a=Q(t.root,e.appIconsDirectory??L),n(a)},resolveId(e){let t=W(e);return t?`${R}${encodeURIComponent(JSON.stringify(t))}.js`:null},async load(e){let n=U(e);if(!n)return null;n.collection===`app`&&this.addWatchFile(r(a,`${n.icon}.svg`));let c=n.collection===`app`?await t(n.icon):await s(n.collection,n.icon,{addXmlNs:!1,autoInstall:!1,cwd:o.root,scale:1.2});if(!c)throw Error(`Icon \`${n.collection}/${n.icon}\` not found`);let l=G(c,n.collection,n.icon);return i.set(l.id,l),K(l,n.props,o.command===`serve`)},renderStart(){o.command!==`build`||i.size===0||(c=this.emitFile({type:`asset`,name:`coreframe-icons.svg`,source:q(i.values())}))},renderChunk(e){if(!e.includes(z))return null;if(!c)throw Error(`Coreframe sprite asset was not emitted before chunk rendering`);let t=J(o.base,this.getFileName(c));return e.replaceAll(z,t)},handleHotUpdate(e){if(te(a,e.file)){for(let t of e.server.moduleGraph.idToModuleMap.values())(t.id?.includes(`~icons/app/`)||t.id?.startsWith(R))&&e.server.moduleGraph.invalidateModule(t);return e.server.ws.send({type:`full-reload`}),[]}}}}function U(e){if(!e.startsWith(R)||!e.endsWith(`.js`))return null;let t=e.slice(23,-3);return JSON.parse(decodeURIComponent(t))}function W(e){let t=e.indexOf(`?`);if(t===-1)return null;let n=new URLSearchParams(e.slice(t+1));if(!n.has(`sprite`))return null;n.delete(`sprite`);let r=e.slice(0,t).replace(/^\/?(?:~icons|virtual:icons|virtual\/icons)\//,``).replace(/\.\w+$/,``).split(`/`);if(r.length!==2||r.some(e=>!B.test(e)))throw Error(`Invalid sprite icon import: ${e}`);let i=Object.create(null);return n.forEach((e,t)=>{if(t===`raw`)throw Error(`An icon import cannot use both ?sprite and ?raw`);if(t===`style`)throw Error(`Pass sprite icon styles through the component style prop`);i[Z(t)]=e}),{collection:r[0],icon:r[1],props:i}}function G(e,t,n){X(e,`${t}/${n}`);let r=o(e),s=r&&a(r);if(!r||!s)throw Error(`Icon \`${t}/${n}\` must contain a valid viewBox`);let c=`coreframe-icon-${t}-${n}-${i(`sha256`).update(`${t}/${n}\0${s.attributes.viewBox}\0${s.body}`).digest(`hex`).slice(0,12)}`,l=Y(s.body,c),u=r.attribs.preserveAspectRatio?` preserveAspectRatio="${$(r.attribs.preserveAspectRatio)}"`:``;return{id:c,markup:`<symbol id="${c}" viewBox="${$(s.attributes.viewBox)}"${u}>${l}</symbol>`,viewBox:s.attributes.viewBox,width:s.attributes.width,height:s.attributes.height}}function K(e,t,n){let r={...e.width?{width:e.width}:{},...e.height?{height:e.height}:{},...t},i=n?`\nregisterSpriteSymbol(${JSON.stringify({id:e.id,markup:e.markup})})\n`:``,a=n?`import { registerSpriteSymbol, SpriteIcon } from "@coreframe/lib/sprite-icon"`:`import { SpriteIcon } from "@coreframe/lib/sprite-icon"`,o=n?`#${e.id}`:`${z}#${e.id}`;return`${a}
|
|
13
|
-
import { createElement } from "react"
|
|
14
|
-
${i}
|
|
15
|
-
const defaultProps = ${JSON.stringify(r)}
|
|
16
|
-
|
|
17
|
-
export default function CoreframeSpriteIcon(props) {
|
|
18
|
-
return createElement(SpriteIcon, {
|
|
19
|
-
...defaultProps,
|
|
20
|
-
...props,
|
|
21
|
-
href: "${o}",
|
|
22
|
-
viewBox: "${e.viewBox}",
|
|
23
|
-
})
|
|
24
|
-
}
|
|
25
|
-
`}function q(e){return`<svg xmlns="http://www.w3.org/2000/svg" id="coreframe-icon-sprite">${Array.from(e,e=>e.markup).join(``)}</svg>`}function J(e,t){return`${e.endsWith(`/`)?e:`${e}/`}${t}`}function Y(e,t){let n=Array.from(e.matchAll(/\bid=(['"])(.*?)\1/g),e=>e[2]),r=e;for(let[e,i]of n.entries()){let n=ne(i),a=`${t}-${e+1}`;r=r.replace(RegExp(`\\bid=(['"])${n}\\1`,`g`),`id="${a}"`).replace(RegExp(`(["#;])${n}(?=[)"']|\\.[a-z])`,`g`),`$1${a}`)}return r}function X(e,t){if(/<(?:script|foreignObject)\b/i.test(e)||/\son[a-z]+\s*=/i.test(e))throw Error(`Icon \`${t}\` contains executable SVG content`);if(/\b(?:href|xlink:href)\s*=\s*['"](?!#)/i.test(e))throw Error(`Icon \`${t}\` contains an external SVG reference`)}function Z(e){return e===`class`?`className`:e.startsWith(`aria-`)||e.startsWith(`data-`)?e:e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function Q(e,n){return t(n)?n:r(e,n)}function te(e,r){let i=n(e,r);return i!==``&&!i.startsWith(`..`)&&!t(i)}function $(e){return e.replaceAll(`&`,`&`).replaceAll(`"`,`"`)}function ne(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function re(e){return e instanceof Error&&`code`in e}export{V as t};
|