jinn-cli 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/jimmy.js +1 -1
- package/dist/src/connectors/cron/index.d.ts +21 -0
- package/dist/src/connectors/cron/index.d.ts.map +1 -0
- package/dist/src/connectors/cron/index.js +75 -0
- package/dist/src/connectors/cron/index.js.map +1 -0
- package/dist/src/connectors/slack/index.d.ts +13 -5
- package/dist/src/connectors/slack/index.d.ts.map +1 -1
- package/dist/src/connectors/slack/index.js +80 -3
- package/dist/src/connectors/slack/index.js.map +1 -1
- package/dist/src/connectors/slack/threads.d.ts +14 -1
- package/dist/src/connectors/slack/threads.d.ts.map +1 -1
- package/dist/src/connectors/slack/threads.js +23 -2
- package/dist/src/connectors/slack/threads.js.map +1 -1
- package/dist/src/connectors/slack/threads.test.d.ts +2 -0
- package/dist/src/connectors/slack/threads.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/threads.test.js +45 -0
- package/dist/src/connectors/slack/threads.test.js.map +1 -0
- package/dist/src/cron/runner.d.ts +3 -2
- package/dist/src/cron/runner.d.ts.map +1 -1
- package/dist/src/cron/runner.js +48 -89
- package/dist/src/cron/runner.js.map +1 -1
- package/dist/src/cron/scheduler.d.ts +5 -2
- package/dist/src/cron/scheduler.d.ts.map +1 -1
- package/dist/src/cron/scheduler.js +29 -4
- package/dist/src/cron/scheduler.js.map +1 -1
- package/dist/src/engines/claude.js +1 -1
- package/dist/src/engines/claude.js.map +1 -1
- package/dist/src/gateway/api.d.ts.map +1 -1
- package/dist/src/gateway/api.js +58 -26
- package/dist/src/gateway/api.js.map +1 -1
- package/dist/src/gateway/server.d.ts.map +1 -1
- package/dist/src/gateway/server.js +5 -3
- package/dist/src/gateway/server.js.map +1 -1
- package/dist/src/sessions/manager.d.ts +12 -25
- package/dist/src/sessions/manager.d.ts.map +1 -1
- package/dist/src/sessions/manager.js +171 -96
- package/dist/src/sessions/manager.js.map +1 -1
- package/dist/src/sessions/queue.d.ts +5 -0
- package/dist/src/sessions/queue.d.ts.map +1 -1
- package/dist/src/sessions/queue.js +26 -0
- package/dist/src/sessions/queue.js.map +1 -1
- package/dist/src/sessions/queue.test.d.ts +2 -0
- package/dist/src/sessions/queue.test.d.ts.map +1 -0
- package/dist/src/sessions/queue.test.js +28 -0
- package/dist/src/sessions/queue.test.js.map +1 -0
- package/dist/src/sessions/registry.d.ts +12 -1
- package/dist/src/sessions/registry.d.ts.map +1 -1
- package/dist/src/sessions/registry.js +89 -11
- package/dist/src/sessions/registry.js.map +1 -1
- package/dist/src/sessions/registry.test.d.ts +2 -0
- package/dist/src/sessions/registry.test.d.ts.map +1 -0
- package/dist/src/sessions/registry.test.js +41 -0
- package/dist/src/sessions/registry.test.js.map +1 -0
- package/dist/src/shared/types.d.ts +43 -1
- package/dist/src/shared/types.d.ts.map +1 -1
- package/dist/web/404.html +1 -1
- package/dist/web/_next/static/chunks/app/sessions/page-c83c890177c18258.js +1 -0
- package/dist/web/_next/static/chunks/app/settings/page-2583d55551abdf72.js +1 -0
- package/dist/web/chat.html +1 -1
- package/dist/web/chat.txt +1 -1
- package/dist/web/costs.html +2 -2
- package/dist/web/costs.txt +1 -1
- package/dist/web/cron.html +1 -1
- package/dist/web/cron.txt +1 -1
- package/dist/web/index.html +1 -1
- package/dist/web/index.txt +1 -1
- package/dist/web/kanban.html +1 -1
- package/dist/web/kanban.txt +1 -1
- package/dist/web/logs.html +2 -2
- package/dist/web/logs.txt +1 -1
- package/dist/web/org.html +1 -1
- package/dist/web/org.txt +1 -1
- package/dist/web/sessions.html +1 -1
- package/dist/web/sessions.txt +2 -2
- package/dist/web/settings.html +1 -1
- package/dist/web/settings.txt +2 -2
- package/dist/web/skills.html +1 -1
- package/dist/web/skills.txt +1 -1
- package/package.json +9 -8
- package/template/config.default.yaml +5 -2
- package/template/migrations/0.2.0/MIGRATION.md +41 -0
- package/template/migrations/0.2.0/files/config.default.yaml +30 -0
- package/LICENSE +0 -21
- package/dist/web/_next/static/chunks/app/sessions/page-2eef6ac7882a28ba.js +0 -1
- package/dist/web/_next/static/chunks/app/settings/page-4fb01b9b09500170.js +0 -1
- /package/dist/web/_next/static/{vLvOwhC8JocJzSHTHKKOv → jt8R5JvUgfB9CMfFwWFr0}/_buildManifest.js +0 -0
- /package/dist/web/_next/static/{vLvOwhC8JocJzSHTHKKOv → jt8R5JvUgfB9CMfFwWFr0}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[662],{7649:(e,a,l)=>{Promise.resolve().then(l.bind(l,7774))},7774:(e,a,l)=>{"use strict";l.r(a),l.d(a,{default:()=>k});var t=l(8111),r=l(5271),n=l(1509),o=l(1983);let i=(0,o.A)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]),s=(0,o.A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]),d=(0,o.A)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]),c=(0,o.A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);var u=l(3073),v=l(2755),p=l(7460),g=l(9834),x=l(3176);let h=[{label:"Red",value:"#EF4444"},{label:"Orange",value:"#F97316"},{label:"Amber",value:"#F59E0B"},{label:"Yellow",value:"#EAB308"},{label:"Lime",value:"#84CC16"},{label:"Green",value:"#22C55E"},{label:"Emerald",value:"#10B981"},{label:"Cyan",value:"#06B6D4"},{label:"Blue",value:"#3B82F6"},{label:"Indigo",value:"#6366F1"},{label:"Violet",value:"#8B5CF6"},{label:"Pink",value:"#EC4899"}];function b(e){let{title:a,children:l}=e;return(0,t.jsxs)("section",{style:{marginBottom:"var(--space-6)"},children:[(0,t.jsx)("div",{style:{fontSize:"var(--text-caption1)",fontWeight:"var(--weight-semibold)",letterSpacing:"var(--tracking-wide)",textTransform:"uppercase",color:"var(--text-tertiary)",padding:"0 var(--space-2) var(--space-2)"},children:a}),(0,t.jsx)("div",{style:{background:"var(--material-regular)",borderRadius:"var(--radius-md)",border:"1px solid var(--separator)",padding:"var(--space-4)"},children:l})]})}function m(e){let{label:a,children:l}=e;return(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"var(--space-2) 0",gap:"var(--space-4)"},children:[(0,t.jsx)("label",{style:{fontSize:"var(--text-subheadline)",color:"var(--text-secondary)",flexShrink:0},children:a}),(0,t.jsx)("div",{style:{width:240,flexShrink:0},children:l})]})}function f(e){let{value:a,onChange:l,type:r="text",placeholder:n}=e;return(0,t.jsx)("input",{type:r,value:a,onChange:e=>l(e.target.value),placeholder:n,className:"apple-input",style:{width:"100%",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",padding:"6px 10px",fontSize:"var(--text-footnote)",color:"var(--text-primary)"}})}function y(e){let{value:a,onChange:l,options:r}=e;return(0,t.jsx)("select",{value:a,onChange:e=>l(e.target.value),style:{width:"100%",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",padding:"6px 10px",fontSize:"var(--text-footnote)",color:"var(--text-primary)",cursor:"pointer"},children:r.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))})}function j(e){let{checked:a,onChange:l}=e;return(0,t.jsx)("button",{role:"switch","aria-checked":a,onClick:()=>l(!a),style:{width:44,height:24,borderRadius:12,background:a?"var(--system-green)":"var(--fill-primary)",border:"none",cursor:"pointer",position:"relative",flexShrink:0,transition:"background 200ms var(--ease-smooth)"},children:(0,t.jsx)("span",{style:{position:"absolute",top:2,left:a?22:2,width:20,height:20,borderRadius:"50%",background:"#fff",boxShadow:"0 1px 3px rgba(0,0,0,0.2)",transition:"left 200ms var(--ease-spring)"}})})}function k(){var e,a,l,o,k,C,S,w,z,B,R,E,F,W,N,I,M,T,A,D,P,L,O,G,H,_,V,U,q,J,K,Y,$,Q,X,Z,ee,ea,el,et,er,en,eo,ei,es,ed,ec,eu,ev,ep,eg,ex,eh,eb,em,ef,ey,ej,ek,eC,eS,ew,ez,eB,eR;let{settings:eE,setAccentColor:eF,setPortalName:eW,setPortalSubtitle:eN,setOperatorName:eI,setPortalEmoji:eM,setLanguage:eT,resetAll:eA}=(0,v.t0)(),{theme:eD,setTheme:eP}=(0,p.D)(),[eL,eO]=(0,r.useState)(null!=(et=eE.portalName)?et:""),[eG,eH]=(0,r.useState)(null!=(er=eE.portalSubtitle)?er:""),[e_,eV]=(0,r.useState)(null!=(en=eE.operatorName)?en:""),[eU,eq]=(0,r.useState)(null!=(eo=eE.portalEmoji)?eo:""),[eJ,eK]=(0,r.useState)(null!=(ei=eE.language)?ei:"English"),[eY,e$]=(0,r.useState)(null!=(es=eE.accentColor)?es:""),[eQ,eX]=(0,r.useState)({}),[eZ,e0]=(0,r.useState)(!0),[e1,e2]=(0,r.useState)(null),[e4,e3]=(0,r.useState)(!1),[e6,e5]=(0,r.useState)(null);function e7(){e0(!0),x.F.getConfig().then(e=>{eX(e),e2(null)}).catch(e=>e2(e.message)).finally(()=>e0(!1))}function e8(e,a){eX(l=>{let t=structuredClone(l),r=t;for(let a=0;a<e.length-1;a++)r[e[a]]&&"object"==typeof r[e[a]]||(r[e[a]]={}),r=r[e[a]];return r[e[e.length-1]]=a,t})}return(0,r.useEffect)(()=>{var e,a,l,t,r,n;eO(null!=(e=eE.portalName)?e:""),eH(null!=(a=eE.portalSubtitle)?a:""),eV(null!=(l=eE.operatorName)?l:""),eq(null!=(t=eE.portalEmoji)?t:""),eK(null!=(r=eE.language)?r:"English"),e$(null!=(n=eE.accentColor)?n:"")},[eE.portalName,eE.portalSubtitle,eE.operatorName,eE.portalEmoji,eE.language,eE.accentColor]),(0,r.useEffect)(()=>{e7()},[]),(0,t.jsx)(u.M,{children:(0,t.jsx)("div",{className:"h-full overflow-y-auto",style:{background:"var(--bg)"},children:(0,t.jsxs)("div",{style:{maxWidth:640,margin:"0 auto",padding:"var(--space-6) var(--space-4) var(--space-12)"},children:[(0,t.jsx)("h1",{style:{fontSize:"var(--text-title1)",fontWeight:"var(--weight-bold)",letterSpacing:"var(--tracking-tight)",color:"var(--text-primary)",margin:"0 0 var(--space-6)"},children:"Settings"}),(0,t.jsxs)(b,{title:"Appearance",children:[(0,t.jsx)("div",{style:{fontSize:"var(--text-footnote)",fontWeight:"var(--weight-medium)",color:"var(--text-secondary)",marginBottom:"var(--space-2)"},children:"Theme"}),(0,t.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(5, 1fr)",gap:"var(--space-2)",marginBottom:"var(--space-4)"},children:g.z.map(e=>{let a=eD===e.id;return(0,t.jsxs)("button",{onClick:()=>eP(e.id),style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"var(--space-1)",padding:"var(--space-3) var(--space-2)",borderRadius:"var(--radius-md)",background:"var(--fill-quaternary)",border:a?"2px solid var(--accent)":"2px solid var(--separator)",cursor:"pointer",transition:"all 150ms var(--ease-smooth)"},children:[(0,t.jsx)("span",{style:{fontSize:24},children:e.emoji}),(0,t.jsx)("span",{style:{fontSize:"var(--text-caption2)",fontWeight:a?"var(--weight-semibold)":"var(--weight-medium)",color:a?"var(--accent)":"var(--text-secondary)"},children:e.label})]},e.id)})}),(0,t.jsx)("div",{style:{fontSize:"var(--text-footnote)",fontWeight:"var(--weight-medium)",color:"var(--text-secondary)",marginBottom:"var(--space-2)"},children:"Accent Color"}),(0,t.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:"var(--space-2)",marginBottom:"var(--space-3)"},children:h.map(e=>{let a=eE.accentColor===e.value;return(0,t.jsx)("button",{onClick:()=>eF(e.value),"aria-label":e.label,title:e.label,style:{width:32,height:32,borderRadius:"50%",background:e.value,border:a?"2px solid var(--text-primary)":"2px solid transparent",outline:a?"2px solid ".concat(e.value):"none",outlineOffset:2,cursor:"pointer",transition:"all 100ms var(--ease-smooth)",display:"flex",alignItems:"center",justifyContent:"center"},children:a&&(0,t.jsx)(n.A,{size:14,color:"#fff",strokeWidth:3})},e.value)})}),(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-3)"},children:[(0,t.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:"var(--space-2)",fontSize:"var(--text-footnote)",color:"var(--text-secondary)",cursor:"pointer"},children:["Custom:",(0,t.jsx)("input",{type:"color",value:null!=(ed=eE.accentColor)?ed:"#3B82F6",onChange:e=>eF(e.target.value),style:{width:28,height:28,border:"none",borderRadius:"50%",cursor:"pointer",background:"none",padding:0}})]}),(0,t.jsx)("input",{type:"text",placeholder:"#3B82F6",value:eY,onChange:e=>{e$(e.target.value),/^#[0-9a-fA-F]{6}$/.test(e.target.value)&&eF(e.target.value)},className:"apple-input",style:{width:90,padding:"4px 8px",fontSize:"var(--text-caption1)",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",color:"var(--text-primary)",fontFamily:"monospace"}}),eE.accentColor&&(0,t.jsxs)("button",{onClick:()=>eF(null),style:{fontSize:"var(--text-footnote)",color:"var(--system-blue)",background:"none",border:"none",cursor:"pointer",padding:0,display:"inline-flex",alignItems:"center",gap:4},children:[(0,t.jsx)(i,{size:12}),"Reset"]})]})]}),(0,t.jsx)(b,{title:"Branding",children:(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:"var(--space-3)"},children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{display:"block",fontSize:"var(--text-caption1)",color:"var(--text-tertiary)",marginBottom:"var(--space-1)"},children:"Portal Name"}),(0,t.jsx)("input",{type:"text",className:"apple-input",placeholder:"Jinn",value:eL,onChange:e=>eO(e.target.value),onBlur:()=>{eW(eL||null),x.F.completeOnboarding({portalName:eL||void 0}).catch(()=>{})},style:{width:"100%",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",padding:"6px 10px",fontSize:"var(--text-footnote)",color:"var(--text-primary)"}})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{display:"block",fontSize:"var(--text-caption1)",color:"var(--text-tertiary)",marginBottom:"var(--space-1)"},children:"Portal Subtitle"}),(0,t.jsx)("input",{type:"text",className:"apple-input",placeholder:"Command Centre",value:eG,onChange:e=>eH(e.target.value),onBlur:()=>eN(eG||null),style:{width:"100%",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",padding:"6px 10px",fontSize:"var(--text-footnote)",color:"var(--text-primary)"}})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{display:"block",fontSize:"var(--text-caption1)",color:"var(--text-tertiary)",marginBottom:"var(--space-1)"},children:"Operator Name"}),(0,t.jsx)("input",{type:"text",className:"apple-input",placeholder:"Your Name",value:e_,onChange:e=>eV(e.target.value),onBlur:()=>{eI(e_||null),x.F.completeOnboarding({operatorName:e_||void 0}).catch(()=>{})},style:{width:"100%",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",padding:"6px 10px",fontSize:"var(--text-footnote)",color:"var(--text-primary)"}})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{display:"block",fontSize:"var(--text-caption1)",color:"var(--text-tertiary)",marginBottom:"var(--space-1)"},children:"Portal Emoji"}),(0,t.jsx)("input",{type:"text",className:"apple-input",placeholder:"\ud83e\udd16",value:eU,onChange:e=>eq(e.target.value),onBlur:()=>eM(eU||null),style:{width:80,textAlign:"center",fontSize:"var(--text-title2)",padding:"6px 8px",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)"}})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{display:"block",fontSize:"var(--text-caption1)",color:"var(--text-tertiary)",marginBottom:"var(--space-1)"},children:"Language"}),(0,t.jsxs)("select",{value:eJ,onChange:e=>eK(e.target.value),onBlur:()=>{eT(eJ||"English"),x.F.completeOnboarding({language:eJ||void 0}).catch(()=>{})},style:{width:"100%",background:"var(--bg-secondary)",border:"1px solid var(--separator)",borderRadius:"var(--radius-sm)",padding:"6px 10px",fontSize:"var(--text-footnote)",color:"var(--text-primary)",cursor:"pointer"},children:[(0,t.jsx)("option",{value:"English",children:"English"}),(0,t.jsx)("option",{value:"Spanish",children:"Spanish"}),(0,t.jsx)("option",{value:"French",children:"French"}),(0,t.jsx)("option",{value:"German",children:"German"}),(0,t.jsx)("option",{value:"Portuguese",children:"Portuguese"}),(0,t.jsx)("option",{value:"Italian",children:"Italian"}),(0,t.jsx)("option",{value:"Dutch",children:"Dutch"}),(0,t.jsx)("option",{value:"Russian",children:"Russian"}),(0,t.jsx)("option",{value:"Chinese",children:"Chinese"}),(0,t.jsx)("option",{value:"Japanese",children:"Japanese"}),(0,t.jsx)("option",{value:"Korean",children:"Korean"}),(0,t.jsx)("option",{value:"Arabic",children:"Arabic"}),(0,t.jsx)("option",{value:"Hindi",children:"Hindi"}),(0,t.jsx)("option",{value:"Bulgarian",children:"Bulgarian"})]})]})]})}),e6&&(0,t.jsx)("div",{style:{marginBottom:"var(--space-4)",padding:"var(--space-3) var(--space-4)",borderRadius:"var(--radius-md)",background:"success"===e6.type?"rgba(34,197,94,0.1)":"rgba(239,68,68,0.1)",border:"1px solid ".concat("success"===e6.type?"rgba(34,197,94,0.3)":"rgba(239,68,68,0.3)"),fontSize:"var(--text-footnote)",color:"success"===e6.type?"var(--system-green)":"var(--system-red)"},children:e6.message}),eZ?(0,t.jsxs)("div",{style:{textAlign:"center",padding:"var(--space-8)",color:"var(--text-tertiary)",fontSize:"var(--text-footnote)"},children:[(0,t.jsx)(s,{size:20,style:{animation:"spin 1s linear infinite",margin:"0 auto var(--space-2)"}}),"Loading gateway config..."]}):e1?(0,t.jsxs)("div",{style:{marginBottom:"var(--space-6)",padding:"var(--space-3) var(--space-4)",borderRadius:"var(--radius-md)",background:"rgba(239,68,68,0.1)",border:"1px solid rgba(239,68,68,0.3)",fontSize:"var(--text-footnote)",color:"var(--system-red)"},children:["Failed to load config: ",e1]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(b,{title:"Gateway Configuration",children:[(0,t.jsx)(m,{label:"Port",children:(0,t.jsx)(f,{type:"number",value:String(null!=(ec=null==(e=eQ.gateway)?void 0:e.port)?ec:""),onChange:e=>e8(["gateway","port"],Number(e)||0),placeholder:"7777"})}),(0,t.jsx)(m,{label:"Host",children:(0,t.jsx)(f,{value:null!=(eu=null==(a=eQ.gateway)?void 0:a.host)?eu:"",onChange:e=>e8(["gateway","host"],e),placeholder:"127.0.0.1"})}),(0,t.jsx)(m,{label:"Default Engine",children:(0,t.jsx)(y,{value:null!=(ev=null==(l=eQ.engines)?void 0:l.default)?ev:"claude",onChange:e=>e8(["engines","default"],e),options:[{value:"claude",label:"Claude"},{value:"codex",label:"Codex"}]})})]}),(0,t.jsxs)(b,{title:"Engine Configuration",children:[(0,t.jsx)("div",{style:{fontSize:"var(--text-caption1)",fontWeight:"var(--weight-semibold)",color:"var(--text-tertiary)",marginBottom:"var(--space-2)"},children:"Claude"}),(0,t.jsx)(m,{label:"Binary Path",children:(0,t.jsx)(f,{value:null!=(ep=null==(k=eQ.engines)||null==(o=k.claude)?void 0:o.bin)?ep:"",onChange:e=>e8(["engines","claude","bin"],e),placeholder:"claude"})}),(0,t.jsx)(m,{label:"Model",children:(0,t.jsx)(y,{value:null!=(eg=null==(S=eQ.engines)||null==(C=S.claude)?void 0:C.model)?eg:"opus",onChange:e=>e8(["engines","claude","model"],e),options:[{value:"opus",label:"Opus (claude-opus-4-6)"},{value:"sonnet",label:"Sonnet (claude-sonnet-4-6)"},{value:"haiku",label:"Haiku (claude-haiku-4-5)"}]})}),(0,t.jsx)(m,{label:"Effort Level",children:(0,t.jsx)(y,{value:null!=(ex=null==(z=eQ.engines)||null==(w=z.claude)?void 0:w.effortLevel)?ex:"default",onChange:e=>e8(["engines","claude","effortLevel"],e),options:[{value:"default",label:"Default"},{value:"low",label:"Low"},{value:"medium",label:"Medium"},{value:"high",label:"High"}]})}),(0,t.jsx)("div",{style:{borderTop:"1px solid var(--separator)",marginTop:"var(--space-3)",paddingTop:"var(--space-3)"}}),(0,t.jsx)("div",{style:{fontSize:"var(--text-caption1)",fontWeight:"var(--weight-semibold)",color:"var(--text-tertiary)",marginBottom:"var(--space-2)"},children:"Codex"}),(0,t.jsx)(m,{label:"Binary Path",children:(0,t.jsx)(f,{value:null!=(eh=null==(R=eQ.engines)||null==(B=R.codex)?void 0:B.bin)?eh:"",onChange:e=>e8(["engines","codex","bin"],e),placeholder:"codex"})}),(0,t.jsx)(m,{label:"Model",children:(0,t.jsx)(y,{value:null!=(eb=null==(F=eQ.engines)||null==(E=F.codex)?void 0:E.model)?eb:"gpt-5.4",onChange:e=>e8(["engines","codex","model"],e),options:[{value:"gpt-5.4",label:"GPT-5.4"},{value:"gpt-5.3-codex",label:"GPT-5.3 Codex"},{value:"gpt-5.2-codex",label:"GPT-5.2 Codex"},{value:"gpt-5.2",label:"GPT-5.2"},{value:"gpt-5.1-codex-max",label:"GPT-5.1 Codex Max"},{value:"gpt-5.1-codex-mini",label:"GPT-5.1 Codex Mini"}]})}),(0,t.jsx)(m,{label:"Effort Level",children:(0,t.jsx)(y,{value:null!=(em=null==(N=eQ.engines)||null==(W=N.codex)?void 0:W.effortLevel)?em:"default",onChange:e=>e8(["engines","codex","effortLevel"],e),options:[{value:"default",label:"Default"},{value:"low",label:"Low"},{value:"medium",label:"Medium"},{value:"high",label:"High"},{value:"xhigh",label:"Extra High"}]})})]}),(0,t.jsxs)(b,{title:"Connectors",children:[(0,t.jsx)("div",{style:{fontSize:"var(--text-caption1)",fontWeight:"var(--weight-semibold)",color:"var(--text-tertiary)",marginBottom:"var(--space-2)"},children:"Slack"}),(0,t.jsx)(m,{label:"App Token",children:(0,t.jsx)(f,{type:"password",value:null!=(ef=null==(M=eQ.connectors)||null==(I=M.slack)?void 0:I.appToken)?ef:"",onChange:e=>e8(["connectors","slack","appToken"],e),placeholder:"xapp-..."})}),(0,t.jsx)(m,{label:"Bot Token",children:(0,t.jsx)(f,{type:"password",value:null!=(ey=null==(A=eQ.connectors)||null==(T=A.slack)?void 0:T.botToken)?ey:"",onChange:e=>e8(["connectors","slack","botToken"],e),placeholder:"xoxb-..."})}),(0,t.jsx)(m,{label:"Share Session in Channel",children:(0,t.jsx)(j,{checked:null!=(ej=null==(P=eQ.connectors)||null==(D=P.slack)?void 0:D.shareSessionInChannel)&&ej,onChange:e=>e8(["connectors","slack","shareSessionInChannel"],e)})}),(0,t.jsx)(m,{label:"Allowed Users",children:(0,t.jsx)(f,{value:Array.isArray(null==(O=eQ.connectors)||null==(L=O.slack)?void 0:L.allowFrom)?null==(_=eQ.connectors)||null==(H=_.slack)||null==(G=H.allowFrom)?void 0:G.join(", "):null!=(ek=null==(U=eQ.connectors)||null==(V=U.slack)?void 0:V.allowFrom)?ek:"",onChange:e=>e8(["connectors","slack","allowFrom"],e.trim()?e.split(",").map(e=>e.trim()).filter(Boolean):void 0),placeholder:"U123, U456"})}),(0,t.jsx)(m,{label:"Ignore Old Messages on Boot",children:(0,t.jsx)(j,{checked:null==(eC=null==(J=eQ.connectors)||null==(q=J.slack)?void 0:q.ignoreOldMessagesOnBoot)||eC,onChange:e=>e8(["connectors","slack","ignoreOldMessagesOnBoot"],e)})}),(0,t.jsx)("div",{style:{borderTop:"1px solid var(--separator)",marginTop:"var(--space-3)",paddingTop:"var(--space-3)"}}),(0,t.jsx)("div",{style:{fontSize:"var(--text-caption1)",fontWeight:"var(--weight-semibold)",color:"var(--text-tertiary)",marginBottom:"var(--space-2)"},children:"Web UI"}),(0,t.jsx)("div",{style:{fontSize:"var(--text-caption2)",color:"var(--text-tertiary)"},children:"Web conversations use queued one-shot resume flow for both engines."})]}),(0,t.jsxs)(b,{title:"Cron",children:[(0,t.jsx)("div",{style:{fontSize:"var(--text-caption1)",fontWeight:"var(--weight-semibold)",color:"var(--text-tertiary)",marginBottom:"var(--space-2)"},children:"Default Delivery"}),(0,t.jsx)("div",{style:{fontSize:"var(--text-caption2)",color:"var(--text-tertiary)",marginBottom:"var(--space-3)"},children:"When a cron job has no delivery configured, results will be sent here."}),(0,t.jsx)(m,{label:"Connector",children:(0,t.jsx)(y,{value:null!=(eS=null==(Y=eQ.cron)||null==(K=Y.defaultDelivery)?void 0:K.connector)?eS:"",onChange:e=>e8(["cron","defaultDelivery","connector"],e||void 0),options:[{value:"",label:"None (fire & forget)"},{value:"web",label:"Web"},{value:"slack",label:"Slack"}]})}),(null==(Q=eQ.cron)||null==($=Q.defaultDelivery)?void 0:$.connector)&&(0,t.jsx)(m,{label:"Channel",children:(0,t.jsx)(f,{value:null!=(ew=null==(Z=eQ.cron)||null==(X=Z.defaultDelivery)?void 0:X.channel)?ew:"",onChange:e=>e8(["cron","defaultDelivery","channel"],e),placeholder:"#general"})})]}),(0,t.jsxs)(b,{title:"Logging",children:[(0,t.jsx)(m,{label:"Level",children:(0,t.jsx)(y,{value:null!=(ez=null==(ee=eQ.logging)?void 0:ee.level)?ez:"info",onChange:e=>e8(["logging","level"],e),options:[{value:"debug",label:"Debug"},{value:"info",label:"Info"},{value:"warn",label:"Warn"},{value:"error",label:"Error"}]})}),(0,t.jsx)(m,{label:"Stdout",children:(0,t.jsx)(j,{checked:null==(eB=null==(ea=eQ.logging)?void 0:ea.stdout)||eB,onChange:e=>e8(["logging","stdout"],e)})}),(0,t.jsx)(m,{label:"File Logging",children:(0,t.jsx)(j,{checked:null!=(eR=null==(el=eQ.logging)?void 0:el.file)&&eR,onChange:e=>e8(["logging","file"],e)})})]}),(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:"var(--space-3)",marginBottom:"var(--space-6)"},children:[(0,t.jsxs)("button",{onClick:()=>e7(),style:{padding:"var(--space-2) var(--space-4)",borderRadius:"var(--radius-md)",background:"var(--fill-tertiary)",color:"var(--text-secondary)",border:"none",cursor:"pointer",fontSize:"var(--text-footnote)",fontWeight:"var(--weight-medium)",display:"inline-flex",alignItems:"center",gap:6},children:[(0,t.jsx)(i,{size:14}),"Reload"]}),(0,t.jsxs)("button",{onClick:function(){e3(!0),e5(null),x.F.updateConfig(eQ).then(()=>e5({type:"success",message:"Settings saved successfully"})).catch(e=>e5({type:"error",message:"Failed to save: ".concat(e.message)})).finally(()=>e3(!1))},disabled:e4,style:{padding:"var(--space-2) var(--space-5)",borderRadius:"var(--radius-md)",background:"var(--accent)",color:"var(--accent-contrast)",border:"none",cursor:e4?"wait":"pointer",fontSize:"var(--text-footnote)",fontWeight:"var(--weight-semibold)",display:"inline-flex",alignItems:"center",gap:6,opacity:e4?.7:1,transition:"all 150ms var(--ease-smooth)"},children:[(0,t.jsx)(d,{size:14}),e4?"Saving...":"Save Config"]})]})]}),(0,t.jsx)(b,{title:"Reset",children:(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:"var(--space-3)",flexWrap:"wrap"},children:[(0,t.jsxs)("button",{onClick:()=>{localStorage.removeItem("jinn-onboarded"),window.location.reload()},style:{padding:"var(--space-2) var(--space-5)",borderRadius:"var(--radius-md)",background:"var(--accent)",color:"var(--accent-contrast)",border:"none",cursor:"pointer",fontSize:"var(--text-footnote)",fontWeight:"var(--weight-semibold)",transition:"all 150ms var(--ease-spring)",display:"inline-flex",alignItems:"center",gap:"var(--space-2)"},children:[(0,t.jsx)(i,{size:14}),"Re-run Onboarding Wizard"]}),(0,t.jsxs)("button",{onClick:()=>{window.confirm("Reset all settings to defaults?")&&(localStorage.removeItem("jinn-settings"),localStorage.removeItem("jinn-theme"),eA(),window.location.reload())},style:{padding:"var(--space-2) var(--space-5)",borderRadius:"var(--radius-md)",background:"var(--system-red)",color:"#fff",border:"none",cursor:"pointer",fontSize:"var(--text-footnote)",fontWeight:"var(--weight-semibold)",transition:"all 150ms var(--ease-spring)",display:"inline-flex",alignItems:"center",gap:"var(--space-2)"},children:[(0,t.jsx)(c,{size:14}),"Reset All Settings"]})]})})]})})})}}},e=>{e.O(0,[704,73,814,743,358],()=>e(e.s=7649)),_N_E=e.O()}]);
|
package/dist/web/chat.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--vLvOwhC8JocJzSHTHKKOv--><html lang="en" data-theme="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/4a6a5bca9238c104.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-0f39b7e91dce9791.js"/><script src="/_next/static/chunks/8e6518bb-c26e82767f1faf66.js" async=""></script><script src="/_next/static/chunks/743-5bb03adbb0e4ddec.js" async=""></script><script src="/_next/static/chunks/main-app-437f51faf74fbb3b.js" async=""></script><script src="/_next/static/chunks/app/layout-5129b67d5f126cf0.js" async=""></script><script src="/_next/static/chunks/704-af2893821e1d18dc.js" async=""></script><script src="/_next/static/chunks/73-c226535579393e21.js" async=""></script><script src="/_next/static/chunks/app/chat/page-6d5bc707a45c92c6.js" async=""></script><meta name="description" content="AI Gateway Dashboard"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div class="flex h-screen overflow-hidden" style="background:var(--bg)"><aside style="position:fixed;left:0;top:0;bottom:0;width:56px;background:var(--bg-secondary);border-right:1px solid var(--separator);flex-direction:column;z-index:50;transition:width 200ms var(--ease-smooth);overflow:hidden" class="hidden lg:flex"><div style="display:flex;align-items:center;gap:10px;padding:16px 14px 12px;min-height:56px;flex-shrink:0"><span style="font-size:24px;line-height:1;flex-shrink:0;width:28px;text-align:center">🤖</span><span style="font-size:17px;font-weight:600;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity 200ms var(--ease-smooth)">Jinn</span></div><nav style="flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px"><a class="nav-item" aria-label="Home" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Home</span></a><a class="nav-item" aria-label="Chat" aria-current="page" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--accent);background:var(--accent-fill);font-weight:600;font-size:13px;white-space:nowrap" href="/chat"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square" aria-hidden="true" style="flex-shrink:0;color:var(--accent)"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Chat</span></a><a class="nav-item" aria-label="Sessions" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/sessions"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Sessions</span></a><a class="nav-item" aria-label="Organization" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/org"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Organization</span></a><a class="nav-item" aria-label="Kanban" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/kanban"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Kanban</span></a><a class="nav-item" aria-label="Cron" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/cron"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Cron</span></a><a class="nav-item" aria-label="Costs" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/costs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-dollar-sign" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><line x1="12" x2="12" y1="2" y2="22"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Costs</span></a><a class="nav-item" aria-label="Activity" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/logs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Activity</span></a><a class="nav-item" aria-label="Skills" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/skills"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Skills</span></a><a class="nav-item" aria-label="Settings" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Settings</span></a></nav><div style="padding:8px 8px 12px;flex-shrink:0"><button class="nav-item" aria-label="Theme: dark. Click to cycle." style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;width:100%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap"><span style="flex-shrink:0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span><span style="opacity:0;transition:opacity 200ms var(--ease-smooth);text-transform:capitalize">dark</span></button></div></aside><main class="flex-1 overflow-hidden lg:ml-[56px]"><div style="height:48px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--separator);background:var(--material-thick);flex-shrink:0;position:relative;z-index:60" class="jsx-906cbf20b7aa1777 lg:hidden"><button aria-label="Open menu" style="width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-primary)" class="jsx-906cbf20b7aa1777"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><div style="flex:1;text-align:center" class="jsx-906cbf20b7aa1777"><span style="font-size:18px;margin-right:6px" class="jsx-906cbf20b7aa1777">🤖</span><span style="font-size:15px;font-weight:600;color:var(--text-primary)" class="jsx-906cbf20b7aa1777">Jinn</span></div><div style="width:36px" class="jsx-906cbf20b7aa1777"></div></div><div style="display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary)">Loading...</div></main></div><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-0f39b7e91dce9791.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1150,[\"177\",\"static/chunks/app/layout-5129b67d5f126cf0.js\"],\"ClientProviders\"]\n3:I[8954,[],\"\"]\n4:I[5640,[],\"\"]\n5:I[3339,[],\"ClientPageRoot\"]\n6:I[3006,[\"704\",\"static/chunks/704-af2893821e1d18dc.js\",\"73\",\"static/chunks/73-c226535579393e21.js\",\"457\",\"static/chunks/app/chat/page-6d5bc707a45c92c6.js\"],\"default\"]\n9:I[2051,[],\"OutletBoundary\"]\nb:I[6658,[],\"AsyncMetadataOutlet\"]\nd:I[2051,[],\"ViewportBoundary\"]\nf:I[2051,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[7698,[],\"\"]\n:HL[\"/_next/static/css/4a6a5bca9238c104.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"vLvOwhC8JocJzSHTHKKOv\",\"p\":\"\",\"c\":[\"\",\"chat\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"chat\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/4a6a5bca9238c104.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"data-theme\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"chat\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"meta\",\"0\",{\"name\":\"description\",\"content\":\"AI Gateway Dashboard\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><!--jt8R5JvUgfB9CMfFwWFr0--><html lang="en" data-theme="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/4a6a5bca9238c104.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-0f39b7e91dce9791.js"/><script src="/_next/static/chunks/8e6518bb-c26e82767f1faf66.js" async=""></script><script src="/_next/static/chunks/743-5bb03adbb0e4ddec.js" async=""></script><script src="/_next/static/chunks/main-app-437f51faf74fbb3b.js" async=""></script><script src="/_next/static/chunks/app/layout-5129b67d5f126cf0.js" async=""></script><script src="/_next/static/chunks/704-af2893821e1d18dc.js" async=""></script><script src="/_next/static/chunks/73-c226535579393e21.js" async=""></script><script src="/_next/static/chunks/app/chat/page-6d5bc707a45c92c6.js" async=""></script><meta name="description" content="AI Gateway Dashboard"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div class="flex h-screen overflow-hidden" style="background:var(--bg)"><aside style="position:fixed;left:0;top:0;bottom:0;width:56px;background:var(--bg-secondary);border-right:1px solid var(--separator);flex-direction:column;z-index:50;transition:width 200ms var(--ease-smooth);overflow:hidden" class="hidden lg:flex"><div style="display:flex;align-items:center;gap:10px;padding:16px 14px 12px;min-height:56px;flex-shrink:0"><span style="font-size:24px;line-height:1;flex-shrink:0;width:28px;text-align:center">🤖</span><span style="font-size:17px;font-weight:600;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity 200ms var(--ease-smooth)">Jinn</span></div><nav style="flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px"><a class="nav-item" aria-label="Home" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Home</span></a><a class="nav-item" aria-label="Chat" aria-current="page" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--accent);background:var(--accent-fill);font-weight:600;font-size:13px;white-space:nowrap" href="/chat"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square" aria-hidden="true" style="flex-shrink:0;color:var(--accent)"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Chat</span></a><a class="nav-item" aria-label="Sessions" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/sessions"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Sessions</span></a><a class="nav-item" aria-label="Organization" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/org"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Organization</span></a><a class="nav-item" aria-label="Kanban" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/kanban"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Kanban</span></a><a class="nav-item" aria-label="Cron" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/cron"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Cron</span></a><a class="nav-item" aria-label="Costs" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/costs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-dollar-sign" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><line x1="12" x2="12" y1="2" y2="22"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Costs</span></a><a class="nav-item" aria-label="Activity" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/logs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Activity</span></a><a class="nav-item" aria-label="Skills" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/skills"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Skills</span></a><a class="nav-item" aria-label="Settings" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Settings</span></a></nav><div style="padding:8px 8px 12px;flex-shrink:0"><button class="nav-item" aria-label="Theme: dark. Click to cycle." style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;width:100%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap"><span style="flex-shrink:0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span><span style="opacity:0;transition:opacity 200ms var(--ease-smooth);text-transform:capitalize">dark</span></button></div></aside><main class="flex-1 overflow-hidden lg:ml-[56px]"><div style="height:48px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--separator);background:var(--material-thick);flex-shrink:0;position:relative;z-index:60" class="jsx-906cbf20b7aa1777 lg:hidden"><button aria-label="Open menu" style="width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-primary)" class="jsx-906cbf20b7aa1777"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><div style="flex:1;text-align:center" class="jsx-906cbf20b7aa1777"><span style="font-size:18px;margin-right:6px" class="jsx-906cbf20b7aa1777">🤖</span><span style="font-size:15px;font-weight:600;color:var(--text-primary)" class="jsx-906cbf20b7aa1777">Jinn</span></div><div style="width:36px" class="jsx-906cbf20b7aa1777"></div></div><div style="display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary)">Loading...</div></main></div><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-0f39b7e91dce9791.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1150,[\"177\",\"static/chunks/app/layout-5129b67d5f126cf0.js\"],\"ClientProviders\"]\n3:I[8954,[],\"\"]\n4:I[5640,[],\"\"]\n5:I[3339,[],\"ClientPageRoot\"]\n6:I[3006,[\"704\",\"static/chunks/704-af2893821e1d18dc.js\",\"73\",\"static/chunks/73-c226535579393e21.js\",\"457\",\"static/chunks/app/chat/page-6d5bc707a45c92c6.js\"],\"default\"]\n9:I[2051,[],\"OutletBoundary\"]\nb:I[6658,[],\"AsyncMetadataOutlet\"]\nd:I[2051,[],\"ViewportBoundary\"]\nf:I[2051,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[7698,[],\"\"]\n:HL[\"/_next/static/css/4a6a5bca9238c104.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"jt8R5JvUgfB9CMfFwWFr0\",\"p\":\"\",\"c\":[\"\",\"chat\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"chat\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/4a6a5bca9238c104.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"data-theme\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"chat\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"meta\",\"0\",{\"name\":\"description\",\"content\":\"AI Gateway Dashboard\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
|
package/dist/web/chat.txt
CHANGED
|
@@ -11,7 +11,7 @@ f:I[2051,[],"MetadataBoundary"]
|
|
|
11
11
|
10:"$Sreact.suspense"
|
|
12
12
|
12:I[7698,[],""]
|
|
13
13
|
:HL["/_next/static/css/4a6a5bca9238c104.css","style"]
|
|
14
|
-
0:{"P":null,"b":"
|
|
14
|
+
0:{"P":null,"b":"jt8R5JvUgfB9CMfFwWFr0","p":"","c":["","chat"],"i":false,"f":[[["",{"children":["chat",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/4a6a5bca9238c104.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","data-theme":"dark","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["chat",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","searchParams":{},"params":{},"promises":["$@7","$@8"]}],null,["$","$L9",null,{"children":["$La",["$","$Lb",null,{"promise":"$@c"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Ld",null,{"children":"$Le"}],null],["$","$Lf",null,{"children":["$","div",null,{"hidden":true,"children":["$","$10",null,{"fallback":null,"children":"$L11"}]}]}]]}],false]],"m":"$undefined","G":["$12",[]],"s":false,"S":true}
|
|
15
15
|
7:{}
|
|
16
16
|
8:"$0:f:0:1:2:children:2:children:1:props:children:0:props:params"
|
|
17
17
|
e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
package/dist/web/costs.html
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><!--vLvOwhC8JocJzSHTHKKOv--><html lang="en" data-theme="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/4a6a5bca9238c104.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-0f39b7e91dce9791.js"/><script src="/_next/static/chunks/8e6518bb-c26e82767f1faf66.js" async=""></script><script src="/_next/static/chunks/743-5bb03adbb0e4ddec.js" async=""></script><script src="/_next/static/chunks/main-app-437f51faf74fbb3b.js" async=""></script><script src="/_next/static/chunks/app/layout-5129b67d5f126cf0.js" async=""></script><script src="/_next/static/chunks/704-af2893821e1d18dc.js" async=""></script><script src="/_next/static/chunks/590-2c34156c7417317e.js" async=""></script><script src="/_next/static/chunks/73-c226535579393e21.js" async=""></script><script src="/_next/static/chunks/app/costs/page-d6c03718defdb599.js" async=""></script><meta name="description" content="AI Gateway Dashboard"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="flex h-screen overflow-hidden" style="background:var(--bg)"><aside style="position:fixed;left:0;top:0;bottom:0;width:56px;background:var(--bg-secondary);border-right:1px solid var(--separator);flex-direction:column;z-index:50;transition:width 200ms var(--ease-smooth);overflow:hidden" class="hidden lg:flex"><div style="display:flex;align-items:center;gap:10px;padding:16px 14px 12px;min-height:56px;flex-shrink:0"><span style="font-size:24px;line-height:1;flex-shrink:0;width:28px;text-align:center">🤖</span><span style="font-size:17px;font-weight:600;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity 200ms var(--ease-smooth)">Jinn</span></div><nav style="flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px"><a class="nav-item" aria-label="Home" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Home</span></a><a class="nav-item" aria-label="Chat" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/chat"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Chat</span></a><a class="nav-item" aria-label="Sessions" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/sessions"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Sessions</span></a><a class="nav-item" aria-label="Organization" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/org"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Organization</span></a><a class="nav-item" aria-label="Kanban" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/kanban"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Kanban</span></a><a class="nav-item" aria-label="Cron" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/cron"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Cron</span></a><a class="nav-item" aria-label="Costs" aria-current="page" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--accent);background:var(--accent-fill);font-weight:600;font-size:13px;white-space:nowrap" href="/costs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-dollar-sign" aria-hidden="true" style="flex-shrink:0;color:var(--accent)"><line x1="12" x2="12" y1="2" y2="22"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Costs</span></a><a class="nav-item" aria-label="Activity" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/logs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Activity</span></a><a class="nav-item" aria-label="Skills" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/skills"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Skills</span></a><a class="nav-item" aria-label="Settings" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Settings</span></a></nav><div style="padding:8px 8px 12px;flex-shrink:0"><button class="nav-item" aria-label="Theme: dark. Click to cycle." style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;width:100%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap"><span style="flex-shrink:0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span><span style="opacity:0;transition:opacity 200ms var(--ease-smooth);text-transform:capitalize">dark</span></button></div></aside><main class="flex-1 overflow-hidden lg:ml-[56px]"><div style="height:48px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--separator);background:var(--material-thick);flex-shrink:0;position:relative;z-index:60" class="jsx-906cbf20b7aa1777 lg:hidden"><button aria-label="Open menu" style="width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-primary)" class="jsx-906cbf20b7aa1777"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><div style="flex:1;text-align:center" class="jsx-906cbf20b7aa1777"><span style="font-size:18px;margin-right:6px" class="jsx-906cbf20b7aa1777">🤖</span><span style="font-size:15px;font-weight:600;color:var(--text-primary)" class="jsx-906cbf20b7aa1777">Jinn</span></div><div style="width:36px" class="jsx-906cbf20b7aa1777"></div></div><div class="h-full flex flex-col overflow-hidden" style="background:var(--bg)"><header class="sticky top-0 z-10 flex-shrink-0" style="background:var(--material-regular);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border-bottom:1px solid var(--separator);padding:var(--space-4) var(--space-6)"><h1 style="font-size:var(--text-title1);font-weight:700;color:var(--text-primary);letter-spacing:-0.5px;line-height:1.2">Costs</h1></header><div class="flex-1 overflow-y-auto" style="padding:var(--space-4) var(--space-6) var(--space-6);min-height:0"><div><div class="costs-summary-grid" style="display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--space-3);margin-bottom:var(--space-4)"><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);overflow:hidden"><div class="flex items-center" style="padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--separator);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div class="flex items-center" style="padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--separator);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div class="flex items-center" style="padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--separator);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div class="flex items-center" style="padding:var(--space-3) var(--space-4);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div></div></div></div><style>
|
|
1
|
+
<!DOCTYPE html><!--jt8R5JvUgfB9CMfFwWFr0--><html lang="en" data-theme="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/4a6a5bca9238c104.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-0f39b7e91dce9791.js"/><script src="/_next/static/chunks/8e6518bb-c26e82767f1faf66.js" async=""></script><script src="/_next/static/chunks/743-5bb03adbb0e4ddec.js" async=""></script><script src="/_next/static/chunks/main-app-437f51faf74fbb3b.js" async=""></script><script src="/_next/static/chunks/app/layout-5129b67d5f126cf0.js" async=""></script><script src="/_next/static/chunks/704-af2893821e1d18dc.js" async=""></script><script src="/_next/static/chunks/590-2c34156c7417317e.js" async=""></script><script src="/_next/static/chunks/73-c226535579393e21.js" async=""></script><script src="/_next/static/chunks/app/costs/page-d6c03718defdb599.js" async=""></script><meta name="description" content="AI Gateway Dashboard"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="flex h-screen overflow-hidden" style="background:var(--bg)"><aside style="position:fixed;left:0;top:0;bottom:0;width:56px;background:var(--bg-secondary);border-right:1px solid var(--separator);flex-direction:column;z-index:50;transition:width 200ms var(--ease-smooth);overflow:hidden" class="hidden lg:flex"><div style="display:flex;align-items:center;gap:10px;padding:16px 14px 12px;min-height:56px;flex-shrink:0"><span style="font-size:24px;line-height:1;flex-shrink:0;width:28px;text-align:center">🤖</span><span style="font-size:17px;font-weight:600;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity 200ms var(--ease-smooth)">Jinn</span></div><nav style="flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px"><a class="nav-item" aria-label="Home" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Home</span></a><a class="nav-item" aria-label="Chat" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/chat"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Chat</span></a><a class="nav-item" aria-label="Sessions" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/sessions"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Sessions</span></a><a class="nav-item" aria-label="Organization" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/org"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Organization</span></a><a class="nav-item" aria-label="Kanban" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/kanban"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Kanban</span></a><a class="nav-item" aria-label="Cron" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/cron"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Cron</span></a><a class="nav-item" aria-label="Costs" aria-current="page" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--accent);background:var(--accent-fill);font-weight:600;font-size:13px;white-space:nowrap" href="/costs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-dollar-sign" aria-hidden="true" style="flex-shrink:0;color:var(--accent)"><line x1="12" x2="12" y1="2" y2="22"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Costs</span></a><a class="nav-item" aria-label="Activity" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/logs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Activity</span></a><a class="nav-item" aria-label="Skills" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/skills"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Skills</span></a><a class="nav-item" aria-label="Settings" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Settings</span></a></nav><div style="padding:8px 8px 12px;flex-shrink:0"><button class="nav-item" aria-label="Theme: dark. Click to cycle." style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;width:100%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap"><span style="flex-shrink:0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span><span style="opacity:0;transition:opacity 200ms var(--ease-smooth);text-transform:capitalize">dark</span></button></div></aside><main class="flex-1 overflow-hidden lg:ml-[56px]"><div style="height:48px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--separator);background:var(--material-thick);flex-shrink:0;position:relative;z-index:60" class="jsx-906cbf20b7aa1777 lg:hidden"><button aria-label="Open menu" style="width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-primary)" class="jsx-906cbf20b7aa1777"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><div style="flex:1;text-align:center" class="jsx-906cbf20b7aa1777"><span style="font-size:18px;margin-right:6px" class="jsx-906cbf20b7aa1777">🤖</span><span style="font-size:15px;font-weight:600;color:var(--text-primary)" class="jsx-906cbf20b7aa1777">Jinn</span></div><div style="width:36px" class="jsx-906cbf20b7aa1777"></div></div><div class="h-full flex flex-col overflow-hidden" style="background:var(--bg)"><header class="sticky top-0 z-10 flex-shrink-0" style="background:var(--material-regular);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border-bottom:1px solid var(--separator);padding:var(--space-4) var(--space-6)"><h1 style="font-size:var(--text-title1);font-weight:700;color:var(--text-primary);letter-spacing:-0.5px;line-height:1.2">Costs</h1></header><div class="flex-1 overflow-y-auto" style="padding:var(--space-4) var(--space-6) var(--space-6);min-height:0"><div><div class="costs-summary-grid" style="display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--space-3);margin-bottom:var(--space-4)"><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:100px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:20px"></div></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);overflow:hidden"><div class="flex items-center" style="padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--separator);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div class="flex items-center" style="padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--separator);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div class="flex items-center" style="padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--separator);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div class="flex items-center" style="padding:var(--space-3) var(--space-4);gap:var(--space-3)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:140px;height:14px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:14px;flex:1"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div></div></div></div><style>
|
|
2
2
|
@media (max-width: 768px) {
|
|
3
3
|
.costs-summary-grid {
|
|
4
4
|
grid-template-columns: repeat(2, 1fr) !important;
|
|
@@ -13,4 +13,4 @@
|
|
|
13
13
|
}
|
|
14
14
|
.hidden-mobile { display: none !important; }
|
|
15
15
|
}
|
|
16
|
-
</style></div></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-0f39b7e91dce9791.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1150,[\"177\",\"static/chunks/app/layout-5129b67d5f126cf0.js\"],\"ClientProviders\"]\n3:I[8954,[],\"\"]\n4:I[5640,[],\"\"]\n5:I[3339,[],\"ClientPageRoot\"]\n6:I[667,[\"704\",\"static/chunks/704-af2893821e1d18dc.js\",\"590\",\"static/chunks/590-2c34156c7417317e.js\",\"73\",\"static/chunks/73-c226535579393e21.js\",\"783\",\"static/chunks/app/costs/page-d6c03718defdb599.js\"],\"default\"]\n9:I[2051,[],\"OutletBoundary\"]\nb:I[6658,[],\"AsyncMetadataOutlet\"]\nd:I[2051,[],\"ViewportBoundary\"]\nf:I[2051,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[7698,[],\"\"]\n:HL[\"/_next/static/css/4a6a5bca9238c104.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"
|
|
16
|
+
</style></div></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-0f39b7e91dce9791.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1150,[\"177\",\"static/chunks/app/layout-5129b67d5f126cf0.js\"],\"ClientProviders\"]\n3:I[8954,[],\"\"]\n4:I[5640,[],\"\"]\n5:I[3339,[],\"ClientPageRoot\"]\n6:I[667,[\"704\",\"static/chunks/704-af2893821e1d18dc.js\",\"590\",\"static/chunks/590-2c34156c7417317e.js\",\"73\",\"static/chunks/73-c226535579393e21.js\",\"783\",\"static/chunks/app/costs/page-d6c03718defdb599.js\"],\"default\"]\n9:I[2051,[],\"OutletBoundary\"]\nb:I[6658,[],\"AsyncMetadataOutlet\"]\nd:I[2051,[],\"ViewportBoundary\"]\nf:I[2051,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[7698,[],\"\"]\n:HL[\"/_next/static/css/4a6a5bca9238c104.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"jt8R5JvUgfB9CMfFwWFr0\",\"p\":\"\",\"c\":[\"\",\"costs\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"costs\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/4a6a5bca9238c104.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"data-theme\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"costs\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"meta\",\"0\",{\"name\":\"description\",\"content\":\"AI Gateway Dashboard\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
|
package/dist/web/costs.txt
CHANGED
|
@@ -11,7 +11,7 @@ f:I[2051,[],"MetadataBoundary"]
|
|
|
11
11
|
10:"$Sreact.suspense"
|
|
12
12
|
12:I[7698,[],""]
|
|
13
13
|
:HL["/_next/static/css/4a6a5bca9238c104.css","style"]
|
|
14
|
-
0:{"P":null,"b":"
|
|
14
|
+
0:{"P":null,"b":"jt8R5JvUgfB9CMfFwWFr0","p":"","c":["","costs"],"i":false,"f":[[["",{"children":["costs",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/4a6a5bca9238c104.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","data-theme":"dark","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["costs",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","searchParams":{},"params":{},"promises":["$@7","$@8"]}],null,["$","$L9",null,{"children":["$La",["$","$Lb",null,{"promise":"$@c"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Ld",null,{"children":"$Le"}],null],["$","$Lf",null,{"children":["$","div",null,{"hidden":true,"children":["$","$10",null,{"fallback":null,"children":"$L11"}]}]}]]}],false]],"m":"$undefined","G":["$12",[]],"s":false,"S":true}
|
|
15
15
|
7:{}
|
|
16
16
|
8:"$0:f:0:1:2:children:2:children:1:props:children:0:props:params"
|
|
17
17
|
e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
package/dist/web/cron.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--vLvOwhC8JocJzSHTHKKOv--><html lang="en" data-theme="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/4a6a5bca9238c104.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-0f39b7e91dce9791.js"/><script src="/_next/static/chunks/8e6518bb-c26e82767f1faf66.js" async=""></script><script src="/_next/static/chunks/743-5bb03adbb0e4ddec.js" async=""></script><script src="/_next/static/chunks/main-app-437f51faf74fbb3b.js" async=""></script><script src="/_next/static/chunks/app/layout-5129b67d5f126cf0.js" async=""></script><script src="/_next/static/chunks/704-af2893821e1d18dc.js" async=""></script><script src="/_next/static/chunks/590-2c34156c7417317e.js" async=""></script><script src="/_next/static/chunks/198-fd91406a158c5c25.js" async=""></script><script src="/_next/static/chunks/534-17c49c944e0d0fe1.js" async=""></script><script src="/_next/static/chunks/73-c226535579393e21.js" async=""></script><script src="/_next/static/chunks/app/cron/page-4c563eef2b6231fe.js" async=""></script><meta name="description" content="AI Gateway Dashboard"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="flex h-screen overflow-hidden" style="background:var(--bg)"><aside style="position:fixed;left:0;top:0;bottom:0;width:56px;background:var(--bg-secondary);border-right:1px solid var(--separator);flex-direction:column;z-index:50;transition:width 200ms var(--ease-smooth);overflow:hidden" class="hidden lg:flex"><div style="display:flex;align-items:center;gap:10px;padding:16px 14px 12px;min-height:56px;flex-shrink:0"><span style="font-size:24px;line-height:1;flex-shrink:0;width:28px;text-align:center">🤖</span><span style="font-size:17px;font-weight:600;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity 200ms var(--ease-smooth)">Jinn</span></div><nav style="flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px"><a class="nav-item" aria-label="Home" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Home</span></a><a class="nav-item" aria-label="Chat" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/chat"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Chat</span></a><a class="nav-item" aria-label="Sessions" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/sessions"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Sessions</span></a><a class="nav-item" aria-label="Organization" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/org"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Organization</span></a><a class="nav-item" aria-label="Kanban" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/kanban"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Kanban</span></a><a class="nav-item" aria-label="Cron" aria-current="page" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--accent);background:var(--accent-fill);font-weight:600;font-size:13px;white-space:nowrap" href="/cron"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock" aria-hidden="true" style="flex-shrink:0;color:var(--accent)"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Cron</span></a><a class="nav-item" aria-label="Costs" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/costs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-dollar-sign" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><line x1="12" x2="12" y1="2" y2="22"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Costs</span></a><a class="nav-item" aria-label="Activity" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/logs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Activity</span></a><a class="nav-item" aria-label="Skills" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/skills"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Skills</span></a><a class="nav-item" aria-label="Settings" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Settings</span></a></nav><div style="padding:8px 8px 12px;flex-shrink:0"><button class="nav-item" aria-label="Theme: dark. Click to cycle." style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;width:100%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap"><span style="flex-shrink:0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span><span style="opacity:0;transition:opacity 200ms var(--ease-smooth);text-transform:capitalize">dark</span></button></div></aside><main class="flex-1 overflow-hidden lg:ml-[56px]"><div style="height:48px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--separator);background:var(--material-thick);flex-shrink:0;position:relative;z-index:60" class="jsx-906cbf20b7aa1777 lg:hidden"><button aria-label="Open menu" style="width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-primary)" class="jsx-906cbf20b7aa1777"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><div style="flex:1;text-align:center" class="jsx-906cbf20b7aa1777"><span style="font-size:18px;margin-right:6px" class="jsx-906cbf20b7aa1777">🤖</span><span style="font-size:15px;font-weight:600;color:var(--text-primary)" class="jsx-906cbf20b7aa1777">Jinn</span></div><div style="width:36px" class="jsx-906cbf20b7aa1777"></div></div><div class="h-full flex flex-col overflow-hidden" style="background:var(--bg)"><header class="flex-shrink-0" style="background:var(--material-regular);border-bottom:1px solid var(--separator);padding:var(--space-4) var(--space-6)"><div class="flex items-center justify-between"><div><h1 style="font-size:var(--text-title1);font-weight:700;color:var(--text-primary);letter-spacing:-0.5px;line-height:1.2">Cron Jobs</h1></div><div class="flex items-center" style="gap:var(--space-3)"><span style="font-size:var(--text-caption1);color:var(--text-tertiary)">Updated <!-- -->just now</span><button aria-label="Refresh cron data" style="width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-tertiary);cursor:pointer"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 2v6h-6"></path><path d="M3 12a9 9 0 0 1 15-6.7L21 8"></path><path d="M3 22v-6h6"></path><path d="M21 12a9 9 0 0 1-15 6.7L3 16"></path></svg></button></div></div></header><div class="flex-1 overflow-y-auto" style="padding:var(--space-4) var(--space-6) var(--space-6)"><div><div style="display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-3);margin-bottom:var(--space-4)"><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div></div></div></div></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-0f39b7e91dce9791.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1150,[\"177\",\"static/chunks/app/layout-5129b67d5f126cf0.js\"],\"ClientProviders\"]\n3:I[8954,[],\"\"]\n4:I[5640,[],\"\"]\n5:I[3339,[],\"ClientPageRoot\"]\n6:I[6115,[\"704\",\"static/chunks/704-af2893821e1d18dc.js\",\"590\",\"static/chunks/590-2c34156c7417317e.js\",\"198\",\"static/chunks/198-fd91406a158c5c25.js\",\"534\",\"static/chunks/534-17c49c944e0d0fe1.js\",\"73\",\"static/chunks/73-c226535579393e21.js\",\"271\",\"static/chunks/app/cron/page-4c563eef2b6231fe.js\"],\"default\"]\n9:I[2051,[],\"OutletBoundary\"]\nb:I[6658,[],\"AsyncMetadataOutlet\"]\nd:I[2051,[],\"ViewportBoundary\"]\nf:I[2051,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[7698,[],\"\"]\n:HL[\"/_next/static/css/4a6a5bca9238c104.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"vLvOwhC8JocJzSHTHKKOv\",\"p\":\"\",\"c\":[\"\",\"cron\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"cron\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/4a6a5bca9238c104.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"data-theme\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"cron\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"meta\",\"0\",{\"name\":\"description\",\"content\":\"AI Gateway Dashboard\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><!--jt8R5JvUgfB9CMfFwWFr0--><html lang="en" data-theme="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/4a6a5bca9238c104.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-0f39b7e91dce9791.js"/><script src="/_next/static/chunks/8e6518bb-c26e82767f1faf66.js" async=""></script><script src="/_next/static/chunks/743-5bb03adbb0e4ddec.js" async=""></script><script src="/_next/static/chunks/main-app-437f51faf74fbb3b.js" async=""></script><script src="/_next/static/chunks/app/layout-5129b67d5f126cf0.js" async=""></script><script src="/_next/static/chunks/704-af2893821e1d18dc.js" async=""></script><script src="/_next/static/chunks/590-2c34156c7417317e.js" async=""></script><script src="/_next/static/chunks/198-fd91406a158c5c25.js" async=""></script><script src="/_next/static/chunks/534-17c49c944e0d0fe1.js" async=""></script><script src="/_next/static/chunks/73-c226535579393e21.js" async=""></script><script src="/_next/static/chunks/app/cron/page-4c563eef2b6231fe.js" async=""></script><meta name="description" content="AI Gateway Dashboard"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="flex h-screen overflow-hidden" style="background:var(--bg)"><aside style="position:fixed;left:0;top:0;bottom:0;width:56px;background:var(--bg-secondary);border-right:1px solid var(--separator);flex-direction:column;z-index:50;transition:width 200ms var(--ease-smooth);overflow:hidden" class="hidden lg:flex"><div style="display:flex;align-items:center;gap:10px;padding:16px 14px 12px;min-height:56px;flex-shrink:0"><span style="font-size:24px;line-height:1;flex-shrink:0;width:28px;text-align:center">🤖</span><span style="font-size:17px;font-weight:600;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity 200ms var(--ease-smooth)">Jinn</span></div><nav style="flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px"><a class="nav-item" aria-label="Home" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Home</span></a><a class="nav-item" aria-label="Chat" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/chat"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Chat</span></a><a class="nav-item" aria-label="Sessions" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/sessions"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Sessions</span></a><a class="nav-item" aria-label="Organization" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/org"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Organization</span></a><a class="nav-item" aria-label="Kanban" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/kanban"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Kanban</span></a><a class="nav-item" aria-label="Cron" aria-current="page" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--accent);background:var(--accent-fill);font-weight:600;font-size:13px;white-space:nowrap" href="/cron"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock" aria-hidden="true" style="flex-shrink:0;color:var(--accent)"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Cron</span></a><a class="nav-item" aria-label="Costs" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/costs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-dollar-sign" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><line x1="12" x2="12" y1="2" y2="22"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Costs</span></a><a class="nav-item" aria-label="Activity" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/logs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Activity</span></a><a class="nav-item" aria-label="Skills" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/skills"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Skills</span></a><a class="nav-item" aria-label="Settings" style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;text-decoration:none;color:var(--text-secondary);background:transparent;font-weight:400;font-size:13px;white-space:nowrap" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings" aria-hidden="true" style="flex-shrink:0;color:var(--text-secondary)"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span style="opacity:0;transition:opacity 200ms var(--ease-smooth)">Settings</span></a></nav><div style="padding:8px 8px 12px;flex-shrink:0"><button class="nav-item" aria-label="Theme: dark. Click to cycle." style="display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;width:100%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap"><span style="flex-shrink:0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span><span style="opacity:0;transition:opacity 200ms var(--ease-smooth);text-transform:capitalize">dark</span></button></div></aside><main class="flex-1 overflow-hidden lg:ml-[56px]"><div style="height:48px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--separator);background:var(--material-thick);flex-shrink:0;position:relative;z-index:60" class="jsx-906cbf20b7aa1777 lg:hidden"><button aria-label="Open menu" style="width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-primary)" class="jsx-906cbf20b7aa1777"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><div style="flex:1;text-align:center" class="jsx-906cbf20b7aa1777"><span style="font-size:18px;margin-right:6px" class="jsx-906cbf20b7aa1777">🤖</span><span style="font-size:15px;font-weight:600;color:var(--text-primary)" class="jsx-906cbf20b7aa1777">Jinn</span></div><div style="width:36px" class="jsx-906cbf20b7aa1777"></div></div><div class="h-full flex flex-col overflow-hidden" style="background:var(--bg)"><header class="flex-shrink-0" style="background:var(--material-regular);border-bottom:1px solid var(--separator);padding:var(--space-4) var(--space-6)"><div class="flex items-center justify-between"><div><h1 style="font-size:var(--text-title1);font-weight:700;color:var(--text-primary);letter-spacing:-0.5px;line-height:1.2">Cron Jobs</h1></div><div class="flex items-center" style="gap:var(--space-3)"><span style="font-size:var(--text-caption1);color:var(--text-tertiary)">Updated <!-- -->just now</span><button aria-label="Refresh cron data" style="width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-tertiary);cursor:pointer"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 2v6h-6"></path><path d="M3 12a9 9 0 0 1 15-6.7L21 8"></path><path d="M3 22v-6h6"></path><path d="M21 12a9 9 0 0 1-15 6.7L3 16"></path></svg></button></div></div></header><div class="flex-1 overflow-y-auto" style="padding:var(--space-4) var(--space-6) var(--space-6)"><div><div style="display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-3);margin-bottom:var(--space-4)"><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div><div style="background:var(--material-regular);border:1px solid var(--separator);border-radius:var(--radius-md);padding:var(--space-4)"><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:60px;height:10px;margin-bottom:8px"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;width:80px;height:14px"></div></div></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div><div class="animate-shimmer rounded-md" style="background:linear-gradient(90deg, var(--fill-secondary) 25%, var(--fill-tertiary) 50%, var(--fill-secondary) 75%);background-size:200% 100%;height:48px;margin-bottom:4px;border-radius:var(--radius-sm)"></div></div></div></div></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-0f39b7e91dce9791.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1150,[\"177\",\"static/chunks/app/layout-5129b67d5f126cf0.js\"],\"ClientProviders\"]\n3:I[8954,[],\"\"]\n4:I[5640,[],\"\"]\n5:I[3339,[],\"ClientPageRoot\"]\n6:I[6115,[\"704\",\"static/chunks/704-af2893821e1d18dc.js\",\"590\",\"static/chunks/590-2c34156c7417317e.js\",\"198\",\"static/chunks/198-fd91406a158c5c25.js\",\"534\",\"static/chunks/534-17c49c944e0d0fe1.js\",\"73\",\"static/chunks/73-c226535579393e21.js\",\"271\",\"static/chunks/app/cron/page-4c563eef2b6231fe.js\"],\"default\"]\n9:I[2051,[],\"OutletBoundary\"]\nb:I[6658,[],\"AsyncMetadataOutlet\"]\nd:I[2051,[],\"ViewportBoundary\"]\nf:I[2051,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[7698,[],\"\"]\n:HL[\"/_next/static/css/4a6a5bca9238c104.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"jt8R5JvUgfB9CMfFwWFr0\",\"p\":\"\",\"c\":[\"\",\"cron\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"cron\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/4a6a5bca9238c104.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"data-theme\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"cron\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"meta\",\"0\",{\"name\":\"description\",\"content\":\"AI Gateway Dashboard\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
|
package/dist/web/cron.txt
CHANGED
|
@@ -11,7 +11,7 @@ f:I[2051,[],"MetadataBoundary"]
|
|
|
11
11
|
10:"$Sreact.suspense"
|
|
12
12
|
12:I[7698,[],""]
|
|
13
13
|
:HL["/_next/static/css/4a6a5bca9238c104.css","style"]
|
|
14
|
-
0:{"P":null,"b":"
|
|
14
|
+
0:{"P":null,"b":"jt8R5JvUgfB9CMfFwWFr0","p":"","c":["","cron"],"i":false,"f":[[["",{"children":["cron",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/4a6a5bca9238c104.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","data-theme":"dark","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["cron",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","searchParams":{},"params":{},"promises":["$@7","$@8"]}],null,["$","$L9",null,{"children":["$La",["$","$Lb",null,{"promise":"$@c"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Ld",null,{"children":"$Le"}],null],["$","$Lf",null,{"children":["$","div",null,{"hidden":true,"children":["$","$10",null,{"fallback":null,"children":"$L11"}]}]}]]}],false]],"m":"$undefined","G":["$12",[]],"s":false,"S":true}
|
|
15
15
|
7:{}
|
|
16
16
|
8:"$0:f:0:1:2:children:2:children:1:props:children:0:props:params"
|
|
17
17
|
e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|