feat: improve dashboard UI (#677)
parent
b4772fbcd0
commit
73758e207d
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
crates/tabby/ui/_next/static/chunks/app/(dashboard)/layout-7c70a0db982ecc98.js
vendored
Normal file
1
crates/tabby/ui/_next/static/chunks/app/(dashboard)/layout-7c70a0db982ecc98.js
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[642],{95420:function(e,t,n){Promise.resolve().then(n.bind(n,30831))},30831:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});var s=n(57437),r=n(39311),i=n(7404),a=n(61396),l=n.n(a),o=n(24033);function c(e){let{children:t,className:n}=e;return(0,s.jsxs)("div",{className:(0,r.cn)("grid overflow-hidden lg:grid-cols-[280px_1fr]",n),children:[(0,s.jsx)("div",{className:"hidden border-r bg-zinc-100/40 dark:bg-zinc-800/40 lg:block",children:(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("div",{className:"h-[12px]"}),(0,s.jsx)("div",{className:"flex-1",children:(0,s.jsxs)("nav",{className:"grid items-start gap-4 px-4 text-sm font-medium",children:[(0,s.jsxs)(h,{href:"/",children:[(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:" h-4 w-4",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),(0,s.jsx)("polyline",{points:"9 22 9 12 15 12 15 22"})]}),"Home"]}),(0,s.jsxs)(h,{href:"/swagger",children:[(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:" h-4 w-4",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"}),(0,s.jsx)("path",{d:"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"}),(0,s.jsx)("path",{d:"M6 8h2"}),(0,s.jsx)("path",{d:"M6 12h2"}),(0,s.jsx)("path",{d:"M16 8h2"}),(0,s.jsx)("path",{d:"M16 12h2"})]}),"Swagger"]})]})})]})}),(0,s.jsx)("div",{className:"flex flex-1 flex-col overflow-auto",children:t})]})}let d=(0,i.j)("flex items-center gap-3 rounded-lg px-3 py-2 text-zinc-900 transition-all hover:text-zinc-900 dark:text-zinc-50 dark:hover:text-zinc-50",{variants:{state:{selected:"bg-zinc-200 dark:bg-zinc-800","not-selected":""}},defaultVariants:{state:"not-selected"}});function h(e){let{href:t,children:n}=e,r=(0,o.usePathname)();return(0,s.jsx)(l(),{className:d({state:r==t?"selected":"not-selected"}),href:t,children:n})}},39311:function(e,t,n){"use strict";n.d(t,{cn:function(){return a}});var s=n(50348),r=n(28481),i=n(23986);function a(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,i.m)((0,s.W)(t))}(0,r.kP)("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7)},67650:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return i}});let s=n(21024),r=s._(n(2265)),i=r.default.createContext(null)},24033:function(e,t,n){e.exports=n(20290)}},function(e){e.O(0,[882,396,971,864,744],function(){return e(e.s=95420)}),_N_E=e.O()}]);
|
||||
File diff suppressed because one or more lines are too long
1
crates/tabby/ui/_next/static/chunks/app/(dashboard)/swagger/page-93a475586bbe50ec.js
vendored
Normal file
1
crates/tabby/ui/_next/static/chunks/app/(dashboard)/swagger/page-93a475586bbe50ec.js
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[507],{63521:function(){}},function(n){n.O(0,[971,864,744],function(){return n(n.s=63521)}),_N_E=n.O()}]);
|
||||
|
|
@ -1 +0,0 @@
|
|||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[110],{63521:function(){}},function(n){n.O(0,[971,864,744],function(){return n(n.s=63521)}),_N_E=n.O()}]);
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1 +0,0 @@
|
|||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[663],{7404:function(e,n,t){"use strict";t.d(n,{j:function(){return s}});let r=e=>"boolean"==typeof e?"".concat(e):0===e?"0":e,l=function(){for(var e=arguments.length,n=Array(e),t=0;t<e;t++)n[t]=arguments[t];return n.flat(1/0).filter(Boolean).join(" ")},s=(e,n)=>t=>{var s;if((null==n?void 0:n.variants)==null)return l(e,null==t?void 0:t.class,null==t?void 0:t.className);let{variants:i,defaultVariants:a}=n,o=Object.keys(i).map(e=>{let n=null==t?void 0:t[e],l=null==a?void 0:a[e];if(null===n)return null;let s=r(n)||r(l);return i[e][s]}),c=t&&Object.entries(t).reduce((e,n)=>{let[t,r]=n;return void 0===r||(e[t]=r),e},{}),d=null==n?void 0:null===(s=n.compoundVariants)||void 0===s?void 0:s.reduce((e,n)=>{let{class:t,className:r,...l}=n;return Object.entries(l).every(e=>{let[n,t]=e;return Array.isArray(t)?t.includes({...a,...c}[n]):({...a,...c})[n]===t})?[...e,t,r]:e},[]);return l(e,o,d,null==t?void 0:t.class,null==t?void 0:t.className)}},96360:function(e,n,t){Promise.resolve().then(t.bind(t,79744))},79744:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return c}});var r=t(57437),l=t(39311),s=t(7404),i=t(61396),a=t.n(i),o=t(24033);function c(e){let{children:n,className:t}=e;return(0,r.jsxs)("div",{className:(0,l.cn)("grid overflow-hidden lg:grid-cols-[280px_1fr]",t),children:[(0,r.jsx)("div",{className:"hidden border-r bg-zinc-100/40 dark:bg-zinc-800/40 lg:block",children:(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,r.jsx)("div",{className:"h-[12px]"}),(0,r.jsx)("div",{className:"flex-1",children:(0,r.jsxs)("nav",{className:"grid items-start gap-4 px-4 text-sm font-medium",children:[(0,r.jsxs)(u,{href:"/dashboard/home",children:[(0,r.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:" h-4 w-4",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),(0,r.jsx)("polyline",{points:"9 22 9 12 15 12 15 22"})]}),"Home"]}),(0,r.jsxs)(u,{href:"/dashboard/runners",children:[(0,r.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:" h-4 w-4",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("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"}),(0,r.jsx)("path",{d:"m6.08 9.5-3.5 1.6a1 1 0 0 0 0 1.81l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9a1 1 0 0 0 0-1.83l-3.5-1.59"}),(0,r.jsx)("path",{d:"m6.08 14.5-3.5 1.6a1 1 0 0 0 0 1.81l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9a1 1 0 0 0 0-1.83l-3.5-1.59"})]}),"Runners"]})]})})]})}),(0,r.jsx)("div",{className:"flex flex-1 flex-col overflow-auto p-4 lg:p-16",children:n})]})}let d=(0,s.j)("flex items-center gap-3 rounded-lg px-3 py-2 text-zinc-900 transition-all hover:text-zinc-900 dark:text-zinc-50 dark:hover:text-zinc-50",{variants:{state:{selected:"bg-zinc-200 dark:bg-zinc-800","not-selected":""}},defaultVariants:{state:"not-selected"}});function u(e){let{href:n,children:t}=e,l=(0,o.usePathname)();return(0,r.jsx)(a(),{className:d({state:l==n?"selected":"not-selected"}),href:n,children:t})}},39311:function(e,n,t){"use strict";t.d(n,{cn:function(){return i}});var r=t(50348),l=t(28481),s=t(23986);function i(){for(var e=arguments.length,n=Array(e),t=0;t<e;t++)n[t]=arguments[t];return(0,s.m)((0,r.W)(n))}(0,l.kP)("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7)},67650:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"RouterContext",{enumerable:!0,get:function(){return s}});let r=t(21024),l=r._(t(2265)),s=l.default.createContext(null)},24033:function(e,n,t){e.exports=t(20290)}},function(e){e.O(0,[195,396,971,864,744],function(){return e(e.s=96360)}),_N_E=e.O()}]);
|
||||
|
|
@ -1 +0,0 @@
|
|||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[454],{93924:function(e,t,s){Promise.resolve().then(s.bind(s,93203))},93203:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return f}});var r=s(57437),a=s(94190),n=s(2265),l=s(39311);let d=n.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,r.jsx)("div",{ref:t,className:(0,l.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",s),...a})});d.displayName="Card";let i=n.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,r.jsx)("div",{ref:t,className:(0,l.cn)("flex flex-col space-y-1.5 p-6",s),...a})});i.displayName="CardHeader";let o=n.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,r.jsx)("h3",{ref:t,className:(0,l.cn)("text-2xl font-semibold leading-none tracking-tight",s),...a})});o.displayName="CardTitle";let h=n.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,r.jsx)("p",{ref:t,className:(0,l.cn)("text-sm text-muted-foreground",s),...a})});h.displayName="CardDescription";let c=n.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,r.jsx)("div",{ref:t,className:(0,l.cn)("p-6 pt-0",s),...a})});c.displayName="CardContent";let x=n.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,r.jsx)("div",{ref:t,className:(0,l.cn)("flex items-center p-6 pt-0",s),...a})});function p(e){let{title:t,health:s}=e;return(0,r.jsxs)(d,{className:"rounded-xl shadow-md",children:[(0,r.jsx)(i,{className:"p-0 px-4 pb-2 pt-4",children:(0,r.jsx)(o,{className:"text-md font-semibold",children:t})}),(0,r.jsxs)(c,{className:"flex flex-col gap-2 p-0 px-4 pb-4 pt-2",children:[(0,r.jsxs)(u,{children:[(0,r.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:" h-5 w-5 text-gray-400",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"}),(0,r.jsx)("polyline",{points:"14 2 14 8 20 8"}),(0,r.jsx)("path",{d:"m10 13-2 2 2 2"}),(0,r.jsx)("path",{d:"m14 17 2-2-2-2"})]}),(0,r.jsx)("p",{className:"ml-2",children:s.model})]}),s.chat_model&&(0,r.jsxs)(u,{children:[(0,r.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:" h-5 w-5 text-gray-400",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M14 9a2 2 0 0 1-2 2H6l-4 4V4c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v5Z"}),(0,r.jsx)("path",{d:"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"})]}),(0,r.jsx)("p",{className:"ml-2",children:s.chat_model})]}),(0,r.jsxs)(u,{children:[(0,r.jsxs)("svg",{className:" h-5 w-5 text-gray-400",fill:"none",height:"24",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:[(0,r.jsx)("rect",{height:"16",rx:"2",width:"16",x:"4",y:"4"}),(0,r.jsx)("rect",{height:"6",width:"6",x:"9",y:"9"}),(0,r.jsx)("path",{d:"M15 2v2"}),(0,r.jsx)("path",{d:"M15 20v2"}),(0,r.jsx)("path",{d:"M2 15h2"}),(0,r.jsx)("path",{d:"M2 9h2"}),(0,r.jsx)("path",{d:"M20 15h2"}),(0,r.jsx)("path",{d:"M20 9h2"}),(0,r.jsx)("path",{d:"M9 2v2"}),(0,r.jsx)("path",{d:"M9 20v2"})]}),(0,r.jsxs)("p",{className:"ml-2",children:[s.cpu_info," (",s.cpu_count," cores)"]})]}),s.cuda_devices.map((e,t)=>(0,r.jsxs)(u,{children:[(0,r.jsxs)("svg",{className:" h-5 w-5 text-gray-400",fill:"none",height:"24",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:[(0,r.jsx)("path",{d:"M6 19v-3"}),(0,r.jsx)("path",{d:"M10 19v-3"}),(0,r.jsx)("path",{d:"M14 19v-3"}),(0,r.jsx)("path",{d:"M18 19v-3"}),(0,r.jsx)("path",{d:"M8 11V9"}),(0,r.jsx)("path",{d:"M16 11V9"}),(0,r.jsx)("path",{d:"M12 11V9"}),(0,r.jsx)("path",{d:"M2 15h20"}),(0,r.jsx)("path",{d:"M2 7a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v1.1a2 2 0 0 0 0 3.837V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-5.1a2 2 0 0 0 0-3.837Z"})]}),(0,r.jsx)("p",{className:"ml-2",children:e})]},t))]})]})}function u(e){let{children:t}=e;return(0,r.jsx)("div",{className:"mt-2 flex items-center text-sm text-gray-500",children:t})}function f(){let{data:e}=(0,a.Q)();if(e)return(0,r.jsx)("div",{className:"flex h-full w-full items-start justify-start",children:(0,r.jsx)(p,{title:"Local Runner",health:e})})}x.displayName="CardFooter"},94190:function(e,t,s){"use strict";s.d(t,{Q:function(){return n}});var r=s(45362);function a(e){return fetch(e).then(e=>e.json())}function n(){return(0,r.Z)("/v1/health",a)}},39311:function(e,t,s){"use strict";s.d(t,{cn:function(){return l}});var r=s(50348),a=s(28481),n=s(23986);function l(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,n.m)((0,r.W)(t))}(0,a.kP)("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7)}},function(e){e.O(0,[195,362,971,864,744],function(){return e(e.s=93924)}),_N_E=e.O()}]);
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +0,0 @@
|
|||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[931],{69563:function(e,n,t){Promise.resolve().then(t.t.bind(t,63388,23))},63388:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(e,n){for(var t in n)Object.defineProperty(e,t,{enumerable:!0,get:n[t]})}(n,{suspense:function(){return u},NoSSR:function(){return o}}),t(21024),t(2265);let r=t(54922);function u(){let e=Error(r.NEXT_DYNAMIC_NO_SSR_CODE);throw e.digest=r.NEXT_DYNAMIC_NO_SSR_CODE,e}function o(e){let{children:n}=e;return n}}},function(e){e.O(0,[971,864,744],function(){return e(e.s=69563)}),_N_E=e.O()}]);
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +0,0 @@
|
|||
!function(){"use strict";var e,t,n,r,o,u,i,c,f,a={},l={};function s(e){var t=l[e];if(void 0!==t)return t.exports;var n=l[e]={exports:{}},r=!0;try{a[e](n,n.exports,s),r=!1}finally{r&&delete l[e]}return n.exports}s.m=a,e=[],s.O=function(t,n,r,o){if(n){o=o||0;for(var u=e.length;u>0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[n,r,o];return}for(var i=1/0,u=0;u<e.length;u++){for(var n=e[u][0],r=e[u][1],o=e[u][2],c=!0,f=0;f<n.length;f++)i>=o&&Object.keys(s.O).every(function(e){return s.O[e](n[f])})?n.splice(f--,1):(c=!1,o<i&&(i=o));if(c){e.splice(u--,1);var a=r()}}return a},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,{a:t}),t},n=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},s.t=function(e,r){if(1&r&&(e=this(e)),8&r||"object"==typeof e&&e&&(4&r&&e.__esModule||16&r&&"function"==typeof e.then))return e;var o=Object.create(null);s.r(o);var u={};t=t||[null,n({}),n([]),n(n)];for(var i=2&r&&e;"object"==typeof i&&!~t.indexOf(i);i=n(i))Object.getOwnPropertyNames(i).forEach(function(t){u[t]=function(){return e[t]}});return u.default=function(){return e},s.d(o,u),o},s.d=function(e,t){for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},s.f={},s.e=function(e){return Promise.all(Object.keys(s.f).reduce(function(t,n){return s.f[n](e,t),t},[]))},s.u=function(e){return"static/chunks/"+e+".2b6536d53b303d15.js"},s.miniCssF=function(e){return"static/css/ec1d302aa85c53c3.css"},s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r={},o="_N_E:",s.l=function(e,t,n,u){if(r[e]){r[e].push(t);return}if(void 0!==n)for(var i,c,f=document.getElementsByTagName("script"),a=0;a<f.length;a++){var l=f[a];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+n){i=l;break}}i||(c=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",o+n),i.src=s.tu(e)),r[e]=[t];var d=function(t,n){i.onerror=i.onload=null,clearTimeout(p);var o=r[e];if(delete r[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(function(e){return e(n)}),t)return t(n)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=d.bind(null,i.onerror),i.onload=d.bind(null,i.onload),c&&document.head.appendChild(i)},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.tt=function(){return void 0===u&&(u={createScriptURL:function(e){return e}},"undefined"!=typeof trustedTypes&&trustedTypes.createPolicy&&(u=trustedTypes.createPolicy("nextjs#bundler",u))),u},s.tu=function(e){return s.tt().createScriptURL(e)},s.p="/_next/",i={272:0},s.f.j=function(e,t){var n=s.o(i,e)?i[e]:void 0;if(0!==n){if(n)t.push(n[2]);else if(272!=e){var r=new Promise(function(t,r){n=i[e]=[t,r]});t.push(n[2]=r);var o=s.p+s.u(e),u=Error();s.l(o,function(t){if(s.o(i,e)&&(0!==(n=i[e])&&(i[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;u.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",u.name="ChunkLoadError",u.type=r,u.request=o,n[1](u)}},"chunk-"+e,e)}else i[e]=0}},s.O.j=function(e){return 0===i[e]},c=function(e,t){var n,r,o=t[0],u=t[1],c=t[2],f=0;if(o.some(function(e){return 0!==i[e]})){for(n in u)s.o(u,n)&&(s.m[n]=u[n]);if(c)var a=c(s)}for(e&&e(t);f<o.length;f++)r=o[f],s.o(i,r)&&i[r]&&i[r][0](),i[r]=0;return s.O(a)},(f=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(c.bind(null,0)),f.push=c.bind(null,f.push.bind(f)),s.nc=void 0}();
|
||||
|
|
@ -0,0 +1 @@
|
|||
!function(){"use strict";var t,e,n,r,o,u,i,c,f,a={},l={};function s(t){var e=l[t];if(void 0!==e)return e.exports;var n=l[t]={exports:{}},r=!0;try{a[t](n,n.exports,s),r=!1}finally{r&&delete l[t]}return n.exports}s.m=a,t=[],s.O=function(e,n,r,o){if(n){o=o||0;for(var u=t.length;u>0&&t[u-1][2]>o;u--)t[u]=t[u-1];t[u]=[n,r,o];return}for(var i=1/0,u=0;u<t.length;u++){for(var n=t[u][0],r=t[u][1],o=t[u][2],c=!0,f=0;f<n.length;f++)i>=o&&Object.keys(s.O).every(function(t){return s.O[t](n[f])})?n.splice(f--,1):(c=!1,o<i&&(i=o));if(c){t.splice(u--,1);var a=r()}}return a},s.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return s.d(e,{a:e}),e},n=Object.getPrototypeOf?function(t){return Object.getPrototypeOf(t)}:function(t){return t.__proto__},s.t=function(t,r){if(1&r&&(t=this(t)),8&r||"object"==typeof t&&t&&(4&r&&t.__esModule||16&r&&"function"==typeof t.then))return t;var o=Object.create(null);s.r(o);var u={};e=e||[null,n({}),n([]),n(n)];for(var i=2&r&&t;"object"==typeof i&&!~e.indexOf(i);i=n(i))Object.getOwnPropertyNames(i).forEach(function(e){u[e]=function(){return t[e]}});return u.default=function(){return t},s.d(o,u),o},s.d=function(t,e){for(var n in e)s.o(e,n)&&!s.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},s.f={},s.e=function(t){return Promise.all(Object.keys(s.f).reduce(function(e,n){return s.f[n](t,e),e},[]))},s.u=function(t){return"static/chunks/"+t+".2b6536d53b303d15.js"},s.miniCssF=function(t){return"static/css/06f39ab10c82ab84.css"},s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(t){if("object"==typeof window)return window}}(),s.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r={},o="_N_E:",s.l=function(t,e,n,u){if(r[t]){r[t].push(e);return}if(void 0!==n)for(var i,c,f=document.getElementsByTagName("script"),a=0;a<f.length;a++){var l=f[a];if(l.getAttribute("src")==t||l.getAttribute("data-webpack")==o+n){i=l;break}}i||(c=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",o+n),i.src=s.tu(t)),r[t]=[e];var d=function(e,n){i.onerror=i.onload=null,clearTimeout(p);var o=r[t];if(delete r[t],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(function(t){return t(n)}),e)return e(n)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=d.bind(null,i.onerror),i.onload=d.bind(null,i.onload),c&&document.head.appendChild(i)},s.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},s.tt=function(){return void 0===u&&(u={createScriptURL:function(t){return t}},"undefined"!=typeof trustedTypes&&trustedTypes.createPolicy&&(u=trustedTypes.createPolicy("nextjs#bundler",u))),u},s.tu=function(t){return s.tt().createScriptURL(t)},s.p="/_next/",i={272:0},s.f.j=function(t,e){var n=s.o(i,t)?i[t]:void 0;if(0!==n){if(n)e.push(n[2]);else if(272!=t){var r=new Promise(function(e,r){n=i[t]=[e,r]});e.push(n[2]=r);var o=s.p+s.u(t),u=Error();s.l(o,function(e){if(s.o(i,t)&&(0!==(n=i[t])&&(i[t]=void 0),n)){var r=e&&("load"===e.type?"missing":e.type),o=e&&e.target&&e.target.src;u.message="Loading chunk "+t+" failed.\n("+r+": "+o+")",u.name="ChunkLoadError",u.type=r,u.request=o,n[1](u)}},"chunk-"+t,t)}else i[t]=0}},s.O.j=function(t){return 0===i[t]},c=function(t,e){var n,r,o=e[0],u=e[1],c=e[2],f=0;if(o.some(function(t){return 0!==i[t]})){for(n in u)s.o(u,n)&&(s.m[n]=u[n]);if(c)var a=c(s)}for(t&&t(e);f<o.length;f++)r=o[f],s.o(i,r)&&i[r]&&i[r][0](),i[r]=0;return s.O(a)},(f=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(c.bind(null,0)),f.push=c.bind(null,f.push.bind(f)),s.nc=void 0}();
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,12 +0,0 @@
|
|||
1:HL["/_next/static/media/86fdec36ddd9097e-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
2:HL["/_next/static/media/c9a5bc6a7c948fb0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
3:HL["/_next/static/css/ec1d302aa85c53c3.css","style"]
|
||||
0:["ie_20wEIgQnZFxy1-N2Oh",[[["",{"children":["api",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/ec1d302aa85c53c3.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"Tabby - API"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","api","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$Lb",["$","iframe",null,{"className":"grow","src":"/swagger-ui"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"api"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
b:null
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1,15 +0,0 @@
|
|||
1:HL["/_next/static/media/86fdec36ddd9097e-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
2:HL["/_next/static/media/c9a5bc6a7c948fb0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
3:HL["/_next/static/css/ec1d302aa85c53c3.css","style"]
|
||||
0:["ie_20wEIgQnZFxy1-N2Oh",[[["",{"children":["dashboard",{"children":["home",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/ec1d302aa85c53c3.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
b:I{"id":79744,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","396:static/chunks/396-28aae48ee9582229.js","663:static/chunks/app/dashboard/layout-9b2ef3995d47740e.js"],"name":"","async":false}
|
||||
d:I{"id":65146,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
e:I{"id":70406,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","703:static/chunks/703-35aa8c1eaf8df6ef.js","894:static/chunks/894-f0d1adefd8c6331e.js","883:static/chunks/app/dashboard/home/page-4eb22256bfa93a96.js"],"name":"","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"Tabby - Dashboard"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":[null,["$","$Lb",null,{"className":"flex-1","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","home","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$Lc",["$","$Ld",null,{"propsForComponent":{"params":{}},"Component":"$e"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"home"},"styles":[]}]}],null],"segment":"dashboard"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
c:null
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1,15 +0,0 @@
|
|||
1:HL["/_next/static/media/86fdec36ddd9097e-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
2:HL["/_next/static/media/c9a5bc6a7c948fb0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
3:HL["/_next/static/css/ec1d302aa85c53c3.css","style"]
|
||||
0:["ie_20wEIgQnZFxy1-N2Oh",[[["",{"children":["dashboard",{"children":["runners",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/ec1d302aa85c53c3.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
b:I{"id":79744,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","396:static/chunks/396-28aae48ee9582229.js","663:static/chunks/app/dashboard/layout-9b2ef3995d47740e.js"],"name":"","async":false}
|
||||
d:I{"id":65146,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
e:I{"id":93203,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","454:static/chunks/app/dashboard/runners/page-5a19d3435b2e9dae.js"],"name":"","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"Tabby - Dashboard"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":[null,["$","$Lb",null,{"className":"flex-1","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","runners","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$Lc",["$","$Ld",null,{"propsForComponent":{"params":{}},"Component":"$e"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"runners"},"styles":[]}]}],null],"segment":"dashboard"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
c:null
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1,13 +1,15 @@
|
|||
1:HL["/_next/static/media/86fdec36ddd9097e-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
2:HL["/_next/static/media/c9a5bc6a7c948fb0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
3:HL["/_next/static/css/ec1d302aa85c53c3.css","style"]
|
||||
0:["ie_20wEIgQnZFxy1-N2Oh",[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/ec1d302aa85c53c3.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"Tabby"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$Lb","$Lc",null],"segment":"__PAGE__"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
c:E{"digest":"NEXT_REDIRECT;replace;/dashboard/home;false"}
|
||||
b:null
|
||||
3:HL["/_next/static/css/06f39ab10c82ab84.css","style"]
|
||||
0:["ddKzV5COfF5eLcDDx-VDo",[[["",{"children":["(dashboard)",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/06f39ab10c82ab84.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
b:I{"id":30831,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","396:static/chunks/396-28aae48ee9582229.js","642:static/chunks/app/(dashboard)/layout-7c70a0db982ecc98.js"],"name":"","async":false}
|
||||
d:I{"id":65146,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
e:I{"id":2217,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","362:static/chunks/362-ae0994d279f3f3bb.js","703:static/chunks/703-35aa8c1eaf8df6ef.js","894:static/chunks/894-f0d1adefd8c6331e.js","130:static/chunks/app/(dashboard)/page-b7b6510f22aeee9e.js"],"name":"","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"Tabby - Dashboard"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":[null,["$","$Lb",null,{"className":"flex-1","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","(dashboard)","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$Lc",["$","$Ld",null,{"propsForComponent":{"params":{}},"Component":"$e"}],null],"segment":"__PAGE__"},"styles":[]}]}],null],"segment":"(dashboard)"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
c:null
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,13 +1,13 @@
|
|||
1:HL["/_next/static/media/86fdec36ddd9097e-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
2:HL["/_next/static/media/c9a5bc6a7c948fb0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
3:HL["/_next/static/css/ec1d302aa85c53c3.css","style"]
|
||||
0:["ie_20wEIgQnZFxy1-N2Oh",[[["",{"children":["playground",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/ec1d302aa85c53c3.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","362:static/chunks/362-87396568076e34f1.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-6289fba2f8cf7457.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-ea3be9ec3294ba31.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
c:I{"id":12202,"chunks":["195:static/chunks/195-42fffaf30b0aaee4.js","536:static/chunks/536-ac1918586623b8f8.js","406:static/chunks/406-35481e1b86c5b377.js","28:static/chunks/28-f3f58cacc7da57b1.js","894:static/chunks/894-f0d1adefd8c6331e.js","383:static/chunks/app/playground/page-6f64c606c3737aeb.js"],"name":"Chat","async":false}
|
||||
3:HL["/_next/static/css/06f39ab10c82ab84.css","style"]
|
||||
0:["ddKzV5COfF5eLcDDx-VDo",[[["",{"children":["playground",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/06f39ab10c82ab84.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
c:I{"id":12202,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","28:static/chunks/28-9b9332343f7cf5d8.js","894:static/chunks/894-f0d1adefd8c6331e.js","383:static/chunks/app/playground/page-41e4a21f57251fbd.js"],"name":"Chat","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"Tabby - Playground"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","playground","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$Lb",["$","$Lc",null,{"id":"5kvurMY"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"playground"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","playground","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$Lb",["$","$Lc",null,{"id":"ppgd2pm"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"playground"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
b:null
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,13 @@
|
|||
1:HL["/_next/static/media/86fdec36ddd9097e-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
2:HL["/_next/static/media/c9a5bc6a7c948fb0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
||||
3:HL["/_next/static/css/06f39ab10c82ab84.css","style"]
|
||||
0:["ddKzV5COfF5eLcDDx-VDo",[[["",{"children":["(dashboard)",{"children":["swagger",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/06f39ab10c82ab84.css","precedence":"next"}]],"$L5"]]]]
|
||||
6:I{"id":5925,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Toaster","async":false}
|
||||
7:I{"id":78495,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Providers","async":false}
|
||||
8:I{"id":11486,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","904:static/chunks/904-3f67d110829fa6e6.js","406:static/chunks/406-35481e1b86c5b377.js","396:static/chunks/396-28aae48ee9582229.js","362:static/chunks/362-ae0994d279f3f3bb.js","894:static/chunks/894-f0d1adefd8c6331e.js","185:static/chunks/app/layout-ce1de44f55fce028.js"],"name":"Header","async":false}
|
||||
9:I{"id":81443,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
a:I{"id":18639,"chunks":["272:static/chunks/webpack-f61d862b7204322f.js","971:static/chunks/fd9d1056-5dfc77aa37d8c76f.js","864:static/chunks/864-bf315a5307aba1d7.js"],"name":"","async":false}
|
||||
b:I{"id":30831,"chunks":["882:static/chunks/882-b5d5b850fea3dad7.js","396:static/chunks/396-28aae48ee9582229.js","642:static/chunks/app/(dashboard)/layout-7c70a0db982ecc98.js"],"name":"","async":false}
|
||||
5:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"API"}],["$","meta","2",{"name":"description","content":"Tabby, an opensource, self-hosted AI coding assistant."}],["$","meta","3",{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"white"}],["$","meta","4",{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"black"}],["$","meta","5",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","6",{"name":"next-size-adjust"}]]
|
||||
4:[null,["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{}],["$","body",null,{"className":"font-sans antialiased __variable_e66fe9 __variable_bd9c35","children":[["$","$L6",null,{}],["$","$L7",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"children":[["$","div",null,{"className":"flex min-h-screen flex-col","children":[["$","$L8",null,{}],["$","main",null,{"className":"flex flex-1 flex-col bg-muted/50","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":[null,["$","$Lb",null,{"className":"flex-1","children":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","(dashboard)","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$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."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L9",null,{"parallelRouterKey":"children","segmentPath":["children","(dashboard)","children","swagger","children"],"loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$Lc",["$","iframe",null,{"className":"grow","src":"/swagger-ui"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"swagger"},"styles":[]}]}],null],"segment":"(dashboard)"},"styles":[]}]}]]}],null]}]]}]]}],null]
|
||||
c:null
|
||||
|
|
@ -0,0 +1,190 @@
|
|||
import {
|
||||
CardTitle,
|
||||
CardHeader,
|
||||
CardContent,
|
||||
Card,
|
||||
CardDescription
|
||||
} from '@/components/ui/card'
|
||||
import { HealthInfo } from '@/lib/hooks/use-health'
|
||||
|
||||
type RunnerType = 'completion' | 'chat' | 'index'
|
||||
|
||||
interface RunnerCardProps {
|
||||
source: string
|
||||
name: string
|
||||
type: RunnerType
|
||||
health: HealthInfo
|
||||
}
|
||||
|
||||
export default function RunnerCard({
|
||||
source,
|
||||
name,
|
||||
type,
|
||||
health
|
||||
}: RunnerCardProps) {
|
||||
const { device, cuda_devices } = health
|
||||
return (
|
||||
<Card className="rounded-xl p-2 shadow-md">
|
||||
<CardHeader className="p-0 px-4 pb-2 pt-4">
|
||||
<CardTitle className="text-md flex items-center font-normal">
|
||||
<ModelIcon type={type} />
|
||||
<p className="ml-2">{name}</p>
|
||||
</CardTitle>
|
||||
</CardHeader>
|
||||
<CardContent className="flex flex-col gap-2 p-0 px-4 pb-4 pt-2">
|
||||
<Info>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<rect x="16" y="16" width="6" height="6" rx="1" />
|
||||
<rect x="2" y="16" width="6" height="6" rx="1" />
|
||||
<rect x="9" y="2" width="6" height="6" rx="1" />
|
||||
<path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3" />
|
||||
<path d="M12 12V8" />
|
||||
</svg>
|
||||
<p className="ml-2">{source}</p>
|
||||
</Info>
|
||||
<Info>
|
||||
<svg
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<rect height="16" rx="2" width="16" x="4" y="4" />
|
||||
<rect height="6" width="6" x="9" y="9" />
|
||||
<path d="M15 2v2" />
|
||||
<path d="M15 20v2" />
|
||||
<path d="M2 15h2" />
|
||||
<path d="M2 9h2" />
|
||||
<path d="M20 15h2" />
|
||||
<path d="M20 9h2" />
|
||||
<path d="M9 2v2" />
|
||||
<path d="M9 20v2" />
|
||||
</svg>
|
||||
<p className="ml-2">
|
||||
{health.cpu_info} ({health.cpu_count} cores)
|
||||
</p>
|
||||
</Info>
|
||||
{device == 'cuda' &&
|
||||
cuda_devices.map((x, i) => (
|
||||
<Info key={i}>
|
||||
<svg
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<path d="M6 19v-3" />
|
||||
<path d="M10 19v-3" />
|
||||
<path d="M14 19v-3" />
|
||||
<path d="M18 19v-3" />
|
||||
<path d="M8 11V9" />
|
||||
<path d="M16 11V9" />
|
||||
<path d="M12 11V9" />
|
||||
<path d="M2 15h20" />
|
||||
<path d="M2 7a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v1.1a2 2 0 0 0 0 3.837V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-5.1a2 2 0 0 0 0-3.837Z" />
|
||||
</svg>
|
||||
<p className="ml-2">{x}</p>
|
||||
</Info>
|
||||
))}
|
||||
</CardContent>
|
||||
</Card>
|
||||
)
|
||||
}
|
||||
|
||||
interface InfoProps {
|
||||
children: React.ReactNode
|
||||
}
|
||||
|
||||
function Info({ children }: InfoProps) {
|
||||
return (
|
||||
<div className="mt-2 flex items-center text-sm text-gray-500">
|
||||
{children}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
function ModelIcon({ type }: { type: RunnerType }) {
|
||||
const className = 'h-5 w-5'
|
||||
if (type == 'completion') {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className={className}
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z" />
|
||||
<polyline points="14 2 14 8 20 8" />
|
||||
<path d="m10 13-2 2 2 2" />
|
||||
<path d="m14 17 2-2-2-2" />
|
||||
</svg>
|
||||
)
|
||||
} else if (type == 'chat') {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className={className}
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<path d="M14 9a2 2 0 0 1-2 2H6l-4 4V4c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v5Z" />
|
||||
<path d="M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1" />
|
||||
</svg>
|
||||
)
|
||||
} else if (type == 'index') {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className={className}
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<path d="m9 9-2 2 2 2" />
|
||||
<path d="m13 13 2-2-2-2" />
|
||||
<circle cx="11" cy="11" r="8" />
|
||||
<path d="m21 21-4.3-4.3" />
|
||||
</svg>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
'use client'
|
||||
|
||||
import { cn } from '@/lib/utils'
|
||||
import { VariantProps, cva } from 'class-variance-authority'
|
||||
import { cva } from 'class-variance-authority'
|
||||
import Link from 'next/link'
|
||||
import { usePathname } from 'next/navigation'
|
||||
|
||||
|
|
@ -20,7 +20,7 @@ export default function Sidebar({ children, className }: SidebarProps) {
|
|||
<div className="h-[12px]"></div>
|
||||
<div className="flex-1">
|
||||
<nav className="grid items-start gap-4 px-4 text-sm font-medium">
|
||||
<SidebarButton href="/dashboard/home">
|
||||
<SidebarButton href="/">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className=" h-4 w-4"
|
||||
|
|
@ -38,7 +38,7 @@ export default function Sidebar({ children, className }: SidebarProps) {
|
|||
</svg>
|
||||
Home
|
||||
</SidebarButton>
|
||||
<SidebarButton href="/dashboard/runners">
|
||||
<SidebarButton href="/swagger">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className=" h-4 w-4"
|
||||
|
|
@ -51,19 +51,20 @@ export default function Sidebar({ children, className }: SidebarProps) {
|
|||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<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 d="m6.08 9.5-3.5 1.6a1 1 0 0 0 0 1.81l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9a1 1 0 0 0 0-1.83l-3.5-1.59" />
|
||||
<path d="m6.08 14.5-3.5 1.6a1 1 0 0 0 0 1.81l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9a1 1 0 0 0 0-1.83l-3.5-1.59" />
|
||||
<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z" />
|
||||
<path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z" />
|
||||
<path d="M6 8h2" />
|
||||
<path d="M6 12h2" />
|
||||
<path d="M16 8h2" />
|
||||
<path d="M16 12h2" />
|
||||
</svg>
|
||||
Runners
|
||||
Swagger
|
||||
</SidebarButton>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-1 flex-col overflow-auto p-4 lg:p-16">
|
||||
{children}
|
||||
</div>
|
||||
<div className="flex flex-1 flex-col overflow-auto">{children}</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
@ -13,6 +13,7 @@ import { IconSlack } from '@/components/ui/icons'
|
|||
import { Separator } from '@/components/ui/separator'
|
||||
import { useHealth } from '@/lib/hooks/use-health'
|
||||
import { PropsWithChildren, useEffect, useState } from 'react'
|
||||
import RunnerCard from './components/runner-card'
|
||||
|
||||
const COMMUNITY_DIALOG_SHOWN_KEY = 'community-dialog-shown'
|
||||
|
||||
|
|
@ -26,7 +27,7 @@ export default function Home() {
|
|||
}, [])
|
||||
|
||||
return (
|
||||
<div>
|
||||
<div className="p-4 lg:p-16">
|
||||
<MainPanel />
|
||||
<Dialog open={open} onOpenChange={setOpen}>
|
||||
<DialogContent>
|
||||
|
|
@ -78,7 +79,7 @@ function MainPanel() {
|
|||
<div className="flex w-full flex-col gap-3">
|
||||
<h1>
|
||||
<span className="font-bold">Congratulations</span>, your tabby instance
|
||||
is running!
|
||||
is up!
|
||||
</h1>
|
||||
<span className="flex flex-wrap gap-1">
|
||||
<a
|
||||
|
|
@ -92,27 +93,33 @@ function MainPanel() {
|
|||
/>
|
||||
</a>
|
||||
</span>
|
||||
|
||||
<Separator />
|
||||
|
||||
<span>
|
||||
You can find our documentation{' '}
|
||||
<Link href="https://tabby.tabbyml.com/docs/getting-started">here</Link>.
|
||||
<ul className="mt-2">
|
||||
<li>
|
||||
💻{' '}
|
||||
<Link href="https://tabby.tabbyml.com/docs/extensions/">
|
||||
IDE/Editor Extensions
|
||||
</Link>
|
||||
</li>
|
||||
<li>
|
||||
⚙️{' '}
|
||||
<Link href="https://tabby.tabbyml.com/docs/configuration">
|
||||
Configuration
|
||||
</Link>
|
||||
</li>
|
||||
</ul>
|
||||
</span>
|
||||
<div className="mt-4 rounded-lg bg-zinc-100 p-4 dark:bg-zinc-800">
|
||||
<span className="font-bold">Runners</span>
|
||||
<div className="mt-4 flex flex-col gap-4 lg:flex-row lg:flex-wrap">
|
||||
<RunnerCard
|
||||
source="localhost"
|
||||
name={healthInfo.model}
|
||||
type="completion"
|
||||
health={healthInfo}
|
||||
/>
|
||||
{healthInfo.chat_model && (
|
||||
<RunnerCard
|
||||
source="localhost"
|
||||
name={healthInfo.chat_model}
|
||||
type="chat"
|
||||
health={healthInfo}
|
||||
/>
|
||||
)}
|
||||
<RunnerCard
|
||||
source="localhost"
|
||||
name="Code Search Index"
|
||||
type="index"
|
||||
health={healthInfo}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
@ -1,126 +0,0 @@
|
|||
import { CardTitle, CardHeader, CardContent, Card } from '@/components/ui/card'
|
||||
import { HealthInfo } from '@/lib/hooks/use-health'
|
||||
|
||||
interface RunnerCardProps {
|
||||
title: string
|
||||
health: HealthInfo
|
||||
}
|
||||
|
||||
export default function RunnerCard({ title, health }: RunnerCardProps) {
|
||||
return (
|
||||
<Card className="rounded-xl shadow-md">
|
||||
<CardHeader className="p-0 px-4 pb-2 pt-4">
|
||||
<CardTitle className="text-md font-semibold">{title}</CardTitle>
|
||||
</CardHeader>
|
||||
<CardContent className="flex flex-col gap-2 p-0 px-4 pb-4 pt-2">
|
||||
<Info>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z" />
|
||||
<polyline points="14 2 14 8 20 8" />
|
||||
<path d="m10 13-2 2 2 2" />
|
||||
<path d="m14 17 2-2-2-2" />
|
||||
</svg>
|
||||
<p className="ml-2">{health.model}</p>
|
||||
</Info>
|
||||
{health.chat_model && (
|
||||
<Info>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
>
|
||||
<path d="M14 9a2 2 0 0 1-2 2H6l-4 4V4c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v5Z" />
|
||||
<path d="M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1" />
|
||||
</svg>
|
||||
<p className="ml-2">{health.chat_model}</p>
|
||||
</Info>
|
||||
)}
|
||||
<Info>
|
||||
<svg
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<rect height="16" rx="2" width="16" x="4" y="4" />
|
||||
<rect height="6" width="6" x="9" y="9" />
|
||||
<path d="M15 2v2" />
|
||||
<path d="M15 20v2" />
|
||||
<path d="M2 15h2" />
|
||||
<path d="M2 9h2" />
|
||||
<path d="M20 15h2" />
|
||||
<path d="M20 9h2" />
|
||||
<path d="M9 2v2" />
|
||||
<path d="M9 20v2" />
|
||||
</svg>
|
||||
<p className="ml-2">
|
||||
{health.cpu_info} ({health.cpu_count} cores)
|
||||
</p>
|
||||
</Info>
|
||||
{health.cuda_devices.map((x, i) => (
|
||||
<Info key={i}>
|
||||
<svg
|
||||
className=" h-5 w-5 text-gray-400"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<path d="M6 19v-3" />
|
||||
<path d="M10 19v-3" />
|
||||
<path d="M14 19v-3" />
|
||||
<path d="M18 19v-3" />
|
||||
<path d="M8 11V9" />
|
||||
<path d="M16 11V9" />
|
||||
<path d="M12 11V9" />
|
||||
<path d="M2 15h20" />
|
||||
<path d="M2 7a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v1.1a2 2 0 0 0 0 3.837V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-5.1a2 2 0 0 0 0-3.837Z" />
|
||||
</svg>
|
||||
<p className="ml-2">{x}</p>
|
||||
</Info>
|
||||
))}
|
||||
</CardContent>
|
||||
</Card>
|
||||
)
|
||||
}
|
||||
|
||||
interface InfoProps {
|
||||
children: React.ReactNode
|
||||
}
|
||||
|
||||
function Info({ children }: InfoProps) {
|
||||
return (
|
||||
<div className="mt-2 flex items-center text-sm text-gray-500">
|
||||
{children}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
'use client'
|
||||
|
||||
import { useHealth } from '@/lib/hooks/use-health'
|
||||
import RunnerCard from './components/runner-card'
|
||||
|
||||
export default function Runners() {
|
||||
const { data: health } = useHealth()
|
||||
|
||||
if (!health) return
|
||||
|
||||
return (
|
||||
<div className="flex h-full w-full items-start justify-start">
|
||||
<RunnerCard title="Local Runner" health={health} />
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
import { redirect } from 'next/navigation'
|
||||
|
||||
export default function () {
|
||||
redirect('/dashboard/home')
|
||||
}
|
||||
|
|
@ -30,9 +30,6 @@ export function Header() {
|
|||
<Link href="/" className={cn(buttonVariants({ variant: 'link' }))}>
|
||||
Dashboard
|
||||
</Link>
|
||||
<Link href="/api" className={cn(buttonVariants({ variant: 'link' }))}>
|
||||
API
|
||||
</Link>
|
||||
{isChatEnabled && (
|
||||
<Link
|
||||
href="/playground"
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import { SWRResponse } from 'swr'
|
|||
import fetcher from '@/lib/tabby-fetcher'
|
||||
|
||||
export interface HealthInfo {
|
||||
device: string
|
||||
device: 'metal' | 'cpu' | 'cuda'
|
||||
model: string
|
||||
chat_model?: string
|
||||
cpu_info: string
|
||||
|
|
|
|||
Loading…
Reference in New Issue