diff --git a/CHANGELOG.md b/CHANGELOG.md index 097d4f8..a4447df 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ ## Fixes and Improvements * Fix the slow repository indexing due to constraint memory arena in tantivy index writer. +* Make `--model` optional, so users can create a chat only instance. # v0.5.5 diff --git a/crates/tabby/src/serve.rs b/crates/tabby/src/serve.rs index efe3a7b..b2a7348 100644 --- a/crates/tabby/src/serve.rs +++ b/crates/tabby/src/serve.rs @@ -70,7 +70,7 @@ struct ApiDoc; pub struct ServeArgs { /// Model id for `/completions` API endpoint. #[clap(long)] - model: String, + model: Option, /// Model id for `/chat/completions` API endpoints. #[clap(long)] @@ -122,7 +122,10 @@ pub async fn main(config: &Config, args: &ServeArgs) { } async fn load_model(args: &ServeArgs) { - download_model_if_needed(&args.model).await; + if let Some(model) = &args.model { + download_model_if_needed(model).await; + } + if let Some(chat_model) = &args.chat_model { download_model_if_needed(chat_model).await } @@ -131,16 +134,21 @@ async fn load_model(args: &ServeArgs) { async fn api_router(args: &ServeArgs, config: &Config) -> Router { let logger = Arc::new(create_logger()); let code = Arc::new(crate::services::code::create_code_search()); - let completion = Arc::new( - create_completion_service( - code.clone(), - logger.clone(), - &args.model, - &args.device, - args.parallelism, - ) - .await, - ); + + let completion_state = if let Some(model) = &args.model { + Some(Arc::new( + create_completion_service( + code.clone(), + logger.clone(), + model, + &args.device, + args.parallelism, + ) + .await, + )) + } else { + None + }; let chat_state = if let Some(chat_model) = &args.chat_model { Some(Arc::new( @@ -153,7 +161,7 @@ async fn api_router(args: &ServeArgs, config: &Config) -> Router { let mut routers = vec![]; let health_state = Arc::new(health::HealthState::new( - &args.model, + args.model.as_deref(), args.chat_model.as_deref(), &args.device, )); @@ -173,16 +181,18 @@ async fn api_router(args: &ServeArgs, config: &Config) -> Router { ) }); - routers.push({ - Router::new() - .route( - "/v1/completions", - routing::post(routes::completions).with_state(completion), - ) - .layer(TimeoutLayer::new(Duration::from_secs( - config.server.completion_timeout, - ))) - }); + if let Some(completion_state) = completion_state { + routers.push({ + Router::new() + .route( + "/v1/completions", + routing::post(routes::completions).with_state(completion_state), + ) + .layer(TimeoutLayer::new(Duration::from_secs( + config.server.completion_timeout, + ))) + }); + } if let Some(chat_state) = chat_state { routers.push({ @@ -209,7 +219,11 @@ async fn api_router(args: &ServeArgs, config: &Config) -> Router { } fn start_heartbeat(args: &ServeArgs) { - let state = health::HealthState::new(&args.model, args.chat_model.as_deref(), &args.device); + let state = health::HealthState::new( + args.model.as_deref(), + args.chat_model.as_deref(), + &args.device, + ); tokio::spawn(async move { loop { usage::capture("ServeHealth", &state).await; diff --git a/crates/tabby/src/services/health.rs b/crates/tabby/src/services/health.rs index a55db99..5e48efe 100644 --- a/crates/tabby/src/services/health.rs +++ b/crates/tabby/src/services/health.rs @@ -10,7 +10,8 @@ use crate::Device; #[derive(Serialize, Deserialize, ToSchema, Clone, Debug)] pub struct HealthState { - model: String, + #[serde(skip_serializing_if = "Option::is_none")] + model: Option, #[serde(skip_serializing_if = "Option::is_none")] chat_model: Option, device: String, @@ -22,7 +23,7 @@ pub struct HealthState { } impl HealthState { - pub fn new(model: &str, chat_model: Option<&str>, device: &Device) -> Self { + pub fn new(model: Option<&str>, chat_model: Option<&str>, device: &Device) -> Self { let (cpu_info, cpu_count) = read_cpu_info(); let cuda_devices = match read_cuda_devices() { @@ -31,7 +32,7 @@ impl HealthState { }; Self { - model: model.to_owned(), + model: model.map(|x| x.to_owned()), chat_model: chat_model.map(|x| x.to_owned()), device: device.to_string(), arch: ARCH.to_string(), diff --git a/ee/tabby-ui/app/(dashboard)/page.tsx b/ee/tabby-ui/app/(dashboard)/page.tsx index 4bd9856..ab3a928 100644 --- a/ee/tabby-ui/app/(dashboard)/page.tsx +++ b/ee/tabby-ui/app/(dashboard)/page.tsx @@ -98,12 +98,13 @@ function MainPanel() {
Workers
- + {healthInfo.model && + } {healthInfo.chat_model && ( 404: This page could not be found.Tabby

404

This page could not be found.

\ No newline at end of file +404: This page could not be found.Tabby

404

This page could not be found.

\ No newline at end of file diff --git a/ee/tabby-webserver/ui/_next/static/chunks/app/(dashboard)/page-1cc6ccaef036b0bc.js b/ee/tabby-webserver/ui/_next/static/chunks/app/(dashboard)/page-fe128a03e1e2a101.js similarity index 65% rename from ee/tabby-webserver/ui/_next/static/chunks/app/(dashboard)/page-1cc6ccaef036b0bc.js rename to ee/tabby-webserver/ui/_next/static/chunks/app/(dashboard)/page-fe128a03e1e2a101.js index c182ab4..355f9df 100644 --- a/ee/tabby-webserver/ui/_next/static/chunks/app/(dashboard)/page-1cc6ccaef036b0bc.js +++ b/ee/tabby-webserver/ui/_next/static/chunks/app/(dashboard)/page-fe128a03e1e2a101.js @@ -1 +1 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[130],{75045:function(e,t,s){Promise.resolve().then(s.bind(s,60901))},60901:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return v}});var a=s(57437),r=s(93023),n=s(12609),l=s(84168),o=s(16775),i=s(13287),d=s(2265),c=s(39311);let h=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",s),...r})});h.displayName="Card";let x=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("flex flex-col space-y-1.5 p-6",s),...r})});x.displayName="CardHeader";let m=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("h3",{ref:t,className:(0,c.cn)("text-2xl font-semibold leading-none tracking-tight",s),...r})});m.displayName="CardTitle";let p=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("p",{ref:t,className:(0,c.cn)("text-sm text-muted-foreground",s),...r})});p.displayName="CardDescription";let u=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("p-6 pt-0",s),...r})});u.displayName="CardContent";let f=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("flex items-center p-6 pt-0",s),...r})});function j(e){let{source:t,name:s,type:r,health:n}=e,{device:l,cuda_devices:o}=n;return(0,a.jsxs)(h,{className:"rounded-xl p-2 shadow-md",children:[(0,a.jsx)(x,{className:"p-0 px-4 pb-2 pt-4",children:(0,a.jsxs)(m,{className:"text-md flex items-center font-normal",children:[(0,a.jsx)(w,{type:r}),(0,a.jsx)("p",{className:"ml-2",children:s})]})}),(0,a.jsxs)(u,{className:"flex flex-col gap-2 p-0 px-4 pb-4 pt-2",children:[(0,a.jsxs)(g,{children:[(0,a.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,a.jsx)("rect",{x:"16",y:"16",width:"6",height:"6",rx:"1"}),(0,a.jsx)("rect",{x:"2",y:"16",width:"6",height:"6",rx:"1"}),(0,a.jsx)("rect",{x:"9",y:"2",width:"6",height:"6",rx:"1"}),(0,a.jsx)("path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"}),(0,a.jsx)("path",{d:"M12 12V8"})]}),(0,a.jsx)("p",{className:"ml-2",children:t})]}),(0,a.jsxs)(g,{children:[(0,a.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,a.jsx)("rect",{height:"16",rx:"2",width:"16",x:"4",y:"4"}),(0,a.jsx)("rect",{height:"6",width:"6",x:"9",y:"9"}),(0,a.jsx)("path",{d:"M15 2v2"}),(0,a.jsx)("path",{d:"M15 20v2"}),(0,a.jsx)("path",{d:"M2 15h2"}),(0,a.jsx)("path",{d:"M2 9h2"}),(0,a.jsx)("path",{d:"M20 15h2"}),(0,a.jsx)("path",{d:"M20 9h2"}),(0,a.jsx)("path",{d:"M9 2v2"}),(0,a.jsx)("path",{d:"M9 20v2"})]}),(0,a.jsxs)("p",{className:"ml-2",children:[n.cpu_info," (",n.cpu_count," cores)"]})]}),"cuda"==l&&o.map((e,t)=>(0,a.jsxs)(g,{children:[(0,a.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,a.jsx)("path",{d:"M6 19v-3"}),(0,a.jsx)("path",{d:"M10 19v-3"}),(0,a.jsx)("path",{d:"M14 19v-3"}),(0,a.jsx)("path",{d:"M18 19v-3"}),(0,a.jsx)("path",{d:"M8 11V9"}),(0,a.jsx)("path",{d:"M16 11V9"}),(0,a.jsx)("path",{d:"M12 11V9"}),(0,a.jsx)("path",{d:"M2 15h20"}),(0,a.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,a.jsx)("p",{className:"ml-2",children:e})]},t))]})]})}function g(e){let{children:t}=e;return(0,a.jsx)("div",{className:"mt-2 flex items-center text-sm text-gray-500",children:t})}function w(e){let{type:t}=e,s="h-5 w-5";return"completion"==t?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:s,width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.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,a.jsx)("polyline",{points:"14 2 14 8 20 8"}),(0,a.jsx)("path",{d:"m10 13-2 2 2 2"}),(0,a.jsx)("path",{d:"m14 17 2-2-2-2"})]}):"chat"==t?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:s,width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.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,a.jsx)("path",{d:"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"})]}):"index"==t?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:s,width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("path",{d:"m9 9-2 2 2 2"}),(0,a.jsx)("path",{d:"m13 13 2-2-2-2"}),(0,a.jsx)("circle",{cx:"11",cy:"11",r:"8"}),(0,a.jsx)("path",{d:"m21 21-4.3-4.3"})]}):void 0}f.displayName="CardFooter";let N="community-dialog-shown";function v(){let[e,t]=(0,d.useState)(!1);return(0,d.useEffect)(()=>{localStorage.getItem(N)||(t(!0),localStorage.setItem(N,"true"))},[]),(0,a.jsxs)("div",{className:"p-4 lg:p-16",children:[(0,a.jsx)(y,{}),(0,a.jsx)(n.Vq,{open:e,onOpenChange:t,children:(0,a.jsxs)(n.cZ,{children:[(0,a.jsxs)(n.fK,{className:"gap-3",children:[(0,a.jsx)(n.$N,{children:"Join the Tabby community"}),(0,a.jsx)(n.Be,{children:"Connect with other contributors building Tabby. Share knowledge, get help, and contribute to the open-source project."})]}),(0,a.jsx)(n.cN,{className:"sm:justify-start",children:(0,a.jsxs)("a",{target:"_blank",href:"https://join.slack.com/t/tabbycommunity/shared_invite/zt-1xeiddizp-bciR2RtFTaJ37RBxr8VxpA",className:(0,r.d)(),children:[(0,a.jsx)(l.gx,{className:"-ml-2 h-8 w-8"}),"Join us on Slack"]})})]})})]})}function y(){let{data:e}=(0,i.Q)();if(e)return(0,a.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,a.jsxs)("h1",{children:[(0,a.jsx)("span",{className:"font-bold",children:"Congratulations"}),", your tabby instance is up!"]}),(0,a.jsx)("span",{className:"flex flex-wrap gap-1",children:(0,a.jsx)("a",{target:"_blank",href:"https://github.com/TabbyML/tabby/releases/tag/".concat(e.version.git_describe),children:(0,a.jsx)("img",{src:"https://img.shields.io/badge/version-".concat(encodeURIComponent(e.version.git_describe.replaceAll("-","--")),"-green")})})}),(0,a.jsx)(o.Z,{}),(0,a.jsxs)("div",{className:"mt-4 rounded-lg bg-zinc-100 p-4 dark:bg-zinc-800",children:[(0,a.jsx)("span",{className:"font-bold",children:"Workers"}),(0,a.jsxs)("div",{className:"mt-4 flex flex-col gap-4 lg:flex-row lg:flex-wrap",children:[(0,a.jsx)(j,{source:"localhost",name:e.model,type:"completion",health:e}),e.chat_model&&(0,a.jsx)(j,{source:"localhost",name:e.chat_model,type:"chat",health:e}),(0,a.jsx)(j,{source:"localhost",name:"Code Search Index",type:"index",health:e})]})]})]})}},12609:function(e,t,s){"use strict";s.d(t,{$N:function(){return p},Be:function(){return u},Vq:function(){return i},cN:function(){return m},cZ:function(){return h},fK:function(){return x}});var a=s(57437),r=s(2265),n=s(25555),l=s(39311),o=s(84168);let i=n.fC;n.xz;let d=e=>{let{className:t,children:s,...r}=e;return(0,a.jsx)(n.h_,{className:(0,l.cn)(t),...r,children:(0,a.jsx)("div",{className:"fixed inset-0 z-50 flex items-start justify-center sm:items-center",children:s})})};d.displayName=n.h_.displayName;let c=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.aV,{ref:t,className:(0,l.cn)("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm transition-all duration-100 data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=open]:fade-in",s),...r})});c.displayName=n.aV.displayName;let h=r.forwardRef((e,t)=>{let{className:s,children:r,...i}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(c,{}),(0,a.jsxs)(n.VY,{ref:t,className:(0,l.cn)("fixed z-50 grid w-full gap-4 rounded-b-lg border bg-background p-6 shadow-sm animate-in data-[state=open]:fade-in-90 data-[state=open]:slide-in-from-bottom-10 sm:max-w-lg sm:rounded-lg sm:zoom-in-90 data-[state=open]:sm:slide-in-from-bottom-0",s),...i,children:[r,(0,a.jsxs)(n.x8,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[(0,a.jsx)(o.bM,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})});h.displayName=n.VY.displayName;let x=e=>{let{className:t,...s}=e;return(0,a.jsx)("div",{className:(0,l.cn)("flex flex-col space-y-1.5 text-center sm:text-left",t),...s})};x.displayName="DialogHeader";let m=e=>{let{className:t,...s}=e;return(0,a.jsx)("div",{className:(0,l.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...s})};m.displayName="DialogFooter";let p=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.Dx,{ref:t,className:(0,l.cn)("text-lg font-semibold leading-none tracking-tight",s),...r})});p.displayName=n.Dx.displayName;let u=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.dk,{ref:t,className:(0,l.cn)("text-sm text-muted-foreground",s),...r})});u.displayName=n.dk.displayName},16775:function(e,t,s){"use strict";s.d(t,{Z:function(){return o}});var a=s(57437),r=s(2265),n=s(26823),l=s(39311);let o=r.forwardRef((e,t)=>{let{className:s,orientation:r="horizontal",decorative:o=!0,...i}=e;return(0,a.jsx)(n.f,{ref:t,decorative:o,orientation:r,className:(0,l.cn)("shrink-0 bg-border","horizontal"===r?"h-[1px] w-full":"h-full w-[1px]",s),...i})});o.displayName=n.f.displayName},13287:function(e,t,s){"use strict";s.d(t,{Q:function(){return n}});var a=s(1589),r=s(97605);function n(){return(0,a.Z)("/v1/health",r.Z)}},1589:function(e,t,s){"use strict";s.d(t,{Z:function(){return n}});var a=s(30713),r=s(44796);let n=(0,r.xD)(a.ZP,e=>(t,s,a)=>(a.revalidateOnFocus=!1,a.revalidateIfStale=!1,a.revalidateOnReconnect=!1,e(t,s,a)))}},function(e){e.O(0,[882,576,286,967,971,590,744],function(){return e(e.s=75045)}),_N_E=e.O()}]); \ No newline at end of file +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[130],{75045:function(e,t,s){Promise.resolve().then(s.bind(s,60901))},60901:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return v}});var a=s(57437),r=s(93023),n=s(12609),l=s(84168),o=s(16775),i=s(13287),d=s(2265),c=s(39311);let h=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",s),...r})});h.displayName="Card";let x=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("flex flex-col space-y-1.5 p-6",s),...r})});x.displayName="CardHeader";let m=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("h3",{ref:t,className:(0,c.cn)("text-2xl font-semibold leading-none tracking-tight",s),...r})});m.displayName="CardTitle";let p=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("p",{ref:t,className:(0,c.cn)("text-sm text-muted-foreground",s),...r})});p.displayName="CardDescription";let u=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("p-6 pt-0",s),...r})});u.displayName="CardContent";let f=d.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,c.cn)("flex items-center p-6 pt-0",s),...r})});function j(e){let{source:t,name:s,type:r,health:n}=e,{device:l,cuda_devices:o}=n;return(0,a.jsxs)(h,{className:"rounded-xl p-2 shadow-md",children:[(0,a.jsx)(x,{className:"p-0 px-4 pb-2 pt-4",children:(0,a.jsxs)(m,{className:"text-md flex items-center font-normal",children:[(0,a.jsx)(w,{type:r}),(0,a.jsx)("p",{className:"ml-2",children:s})]})}),(0,a.jsxs)(u,{className:"flex flex-col gap-2 p-0 px-4 pb-4 pt-2",children:[(0,a.jsxs)(g,{children:[(0,a.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,a.jsx)("rect",{x:"16",y:"16",width:"6",height:"6",rx:"1"}),(0,a.jsx)("rect",{x:"2",y:"16",width:"6",height:"6",rx:"1"}),(0,a.jsx)("rect",{x:"9",y:"2",width:"6",height:"6",rx:"1"}),(0,a.jsx)("path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"}),(0,a.jsx)("path",{d:"M12 12V8"})]}),(0,a.jsx)("p",{className:"ml-2",children:t})]}),(0,a.jsxs)(g,{children:[(0,a.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,a.jsx)("rect",{height:"16",rx:"2",width:"16",x:"4",y:"4"}),(0,a.jsx)("rect",{height:"6",width:"6",x:"9",y:"9"}),(0,a.jsx)("path",{d:"M15 2v2"}),(0,a.jsx)("path",{d:"M15 20v2"}),(0,a.jsx)("path",{d:"M2 15h2"}),(0,a.jsx)("path",{d:"M2 9h2"}),(0,a.jsx)("path",{d:"M20 15h2"}),(0,a.jsx)("path",{d:"M20 9h2"}),(0,a.jsx)("path",{d:"M9 2v2"}),(0,a.jsx)("path",{d:"M9 20v2"})]}),(0,a.jsxs)("p",{className:"ml-2",children:[n.cpu_info," (",n.cpu_count," cores)"]})]}),"cuda"==l&&o.map((e,t)=>(0,a.jsxs)(g,{children:[(0,a.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,a.jsx)("path",{d:"M6 19v-3"}),(0,a.jsx)("path",{d:"M10 19v-3"}),(0,a.jsx)("path",{d:"M14 19v-3"}),(0,a.jsx)("path",{d:"M18 19v-3"}),(0,a.jsx)("path",{d:"M8 11V9"}),(0,a.jsx)("path",{d:"M16 11V9"}),(0,a.jsx)("path",{d:"M12 11V9"}),(0,a.jsx)("path",{d:"M2 15h20"}),(0,a.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,a.jsx)("p",{className:"ml-2",children:e})]},t))]})]})}function g(e){let{children:t}=e;return(0,a.jsx)("div",{className:"mt-2 flex items-center text-sm text-gray-500",children:t})}function w(e){let{type:t}=e,s="h-5 w-5";return"completion"==t?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:s,width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.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,a.jsx)("polyline",{points:"14 2 14 8 20 8"}),(0,a.jsx)("path",{d:"m10 13-2 2 2 2"}),(0,a.jsx)("path",{d:"m14 17 2-2-2-2"})]}):"chat"==t?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:s,width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.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,a.jsx)("path",{d:"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"})]}):"index"==t?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:s,width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("path",{d:"m9 9-2 2 2 2"}),(0,a.jsx)("path",{d:"m13 13 2-2-2-2"}),(0,a.jsx)("circle",{cx:"11",cy:"11",r:"8"}),(0,a.jsx)("path",{d:"m21 21-4.3-4.3"})]}):void 0}f.displayName="CardFooter";let N="community-dialog-shown";function v(){let[e,t]=(0,d.useState)(!1);return(0,d.useEffect)(()=>{localStorage.getItem(N)||(t(!0),localStorage.setItem(N,"true"))},[]),(0,a.jsxs)("div",{className:"p-4 lg:p-16",children:[(0,a.jsx)(y,{}),(0,a.jsx)(n.Vq,{open:e,onOpenChange:t,children:(0,a.jsxs)(n.cZ,{children:[(0,a.jsxs)(n.fK,{className:"gap-3",children:[(0,a.jsx)(n.$N,{children:"Join the Tabby community"}),(0,a.jsx)(n.Be,{children:"Connect with other contributors building Tabby. Share knowledge, get help, and contribute to the open-source project."})]}),(0,a.jsx)(n.cN,{className:"sm:justify-start",children:(0,a.jsxs)("a",{target:"_blank",href:"https://join.slack.com/t/tabbycommunity/shared_invite/zt-1xeiddizp-bciR2RtFTaJ37RBxr8VxpA",className:(0,r.d)(),children:[(0,a.jsx)(l.gx,{className:"-ml-2 h-8 w-8"}),"Join us on Slack"]})})]})})]})}function y(){let{data:e}=(0,i.Q)();if(e)return(0,a.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,a.jsxs)("h1",{children:[(0,a.jsx)("span",{className:"font-bold",children:"Congratulations"}),", your tabby instance is up!"]}),(0,a.jsx)("span",{className:"flex flex-wrap gap-1",children:(0,a.jsx)("a",{target:"_blank",href:"https://github.com/TabbyML/tabby/releases/tag/".concat(e.version.git_describe),children:(0,a.jsx)("img",{src:"https://img.shields.io/badge/version-".concat(encodeURIComponent(e.version.git_describe.replaceAll("-","--")),"-green")})})}),(0,a.jsx)(o.Z,{}),(0,a.jsxs)("div",{className:"mt-4 rounded-lg bg-zinc-100 p-4 dark:bg-zinc-800",children:[(0,a.jsx)("span",{className:"font-bold",children:"Workers"}),(0,a.jsxs)("div",{className:"mt-4 flex flex-col gap-4 lg:flex-row lg:flex-wrap",children:[e.model&&(0,a.jsx)(j,{source:"localhost",name:e.model,type:"completion",health:e}),e.chat_model&&(0,a.jsx)(j,{source:"localhost",name:e.chat_model,type:"chat",health:e}),(0,a.jsx)(j,{source:"localhost",name:"Code Search Index",type:"index",health:e})]})]})]})}},12609:function(e,t,s){"use strict";s.d(t,{$N:function(){return p},Be:function(){return u},Vq:function(){return i},cN:function(){return m},cZ:function(){return h},fK:function(){return x}});var a=s(57437),r=s(2265),n=s(25555),l=s(39311),o=s(84168);let i=n.fC;n.xz;let d=e=>{let{className:t,children:s,...r}=e;return(0,a.jsx)(n.h_,{className:(0,l.cn)(t),...r,children:(0,a.jsx)("div",{className:"fixed inset-0 z-50 flex items-start justify-center sm:items-center",children:s})})};d.displayName=n.h_.displayName;let c=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.aV,{ref:t,className:(0,l.cn)("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm transition-all duration-100 data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=open]:fade-in",s),...r})});c.displayName=n.aV.displayName;let h=r.forwardRef((e,t)=>{let{className:s,children:r,...i}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(c,{}),(0,a.jsxs)(n.VY,{ref:t,className:(0,l.cn)("fixed z-50 grid w-full gap-4 rounded-b-lg border bg-background p-6 shadow-sm animate-in data-[state=open]:fade-in-90 data-[state=open]:slide-in-from-bottom-10 sm:max-w-lg sm:rounded-lg sm:zoom-in-90 data-[state=open]:sm:slide-in-from-bottom-0",s),...i,children:[r,(0,a.jsxs)(n.x8,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[(0,a.jsx)(o.bM,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})});h.displayName=n.VY.displayName;let x=e=>{let{className:t,...s}=e;return(0,a.jsx)("div",{className:(0,l.cn)("flex flex-col space-y-1.5 text-center sm:text-left",t),...s})};x.displayName="DialogHeader";let m=e=>{let{className:t,...s}=e;return(0,a.jsx)("div",{className:(0,l.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...s})};m.displayName="DialogFooter";let p=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.Dx,{ref:t,className:(0,l.cn)("text-lg font-semibold leading-none tracking-tight",s),...r})});p.displayName=n.Dx.displayName;let u=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.dk,{ref:t,className:(0,l.cn)("text-sm text-muted-foreground",s),...r})});u.displayName=n.dk.displayName},16775:function(e,t,s){"use strict";s.d(t,{Z:function(){return o}});var a=s(57437),r=s(2265),n=s(26823),l=s(39311);let o=r.forwardRef((e,t)=>{let{className:s,orientation:r="horizontal",decorative:o=!0,...i}=e;return(0,a.jsx)(n.f,{ref:t,decorative:o,orientation:r,className:(0,l.cn)("shrink-0 bg-border","horizontal"===r?"h-[1px] w-full":"h-full w-[1px]",s),...i})});o.displayName=n.f.displayName},13287:function(e,t,s){"use strict";s.d(t,{Q:function(){return n}});var a=s(1589),r=s(97605);function n(){return(0,a.Z)("/v1/health",r.Z)}},1589:function(e,t,s){"use strict";s.d(t,{Z:function(){return n}});var a=s(30713),r=s(44796);let n=(0,r.xD)(a.ZP,e=>(t,s,a)=>(a.revalidateOnFocus=!1,a.revalidateIfStale=!1,a.revalidateOnReconnect=!1,e(t,s,a)))}},function(e){e.O(0,[882,576,286,967,971,590,744],function(){return e(e.s=75045)}),_N_E=e.O()}]); \ No newline at end of file diff --git a/ee/tabby-webserver/ui/_next/static/y8UTfVMfS3WRo-O_Ue2fm/_buildManifest.js b/ee/tabby-webserver/ui/_next/static/mnxnTVxz0_SgSNkjMXene/_buildManifest.js similarity index 100% rename from ee/tabby-webserver/ui/_next/static/y8UTfVMfS3WRo-O_Ue2fm/_buildManifest.js rename to ee/tabby-webserver/ui/_next/static/mnxnTVxz0_SgSNkjMXene/_buildManifest.js diff --git a/ee/tabby-webserver/ui/_next/static/y8UTfVMfS3WRo-O_Ue2fm/_ssgManifest.js b/ee/tabby-webserver/ui/_next/static/mnxnTVxz0_SgSNkjMXene/_ssgManifest.js similarity index 100% rename from ee/tabby-webserver/ui/_next/static/y8UTfVMfS3WRo-O_Ue2fm/_ssgManifest.js rename to ee/tabby-webserver/ui/_next/static/mnxnTVxz0_SgSNkjMXene/_ssgManifest.js diff --git a/ee/tabby-webserver/ui/index.html b/ee/tabby-webserver/ui/index.html index 720bfd2..0efed44 100644 --- a/ee/tabby-webserver/ui/index.html +++ b/ee/tabby-webserver/ui/index.html @@ -1 +1 @@ -Tabby - Dashboard
\ No newline at end of file +Tabby - Dashboard
\ No newline at end of file diff --git a/ee/tabby-webserver/ui/index.txt b/ee/tabby-webserver/ui/index.txt index 65a75e7..7519956 100644 --- a/ee/tabby-webserver/ui/index.txt +++ b/ee/tabby-webserver/ui/index.txt @@ -1,7 +1,7 @@ 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/83506ffe28f4b91c.css","style"] -0:["y8UTfVMfS3WRo-O_Ue2fm",[[["",{"children":["(dashboard)",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/83506ffe28f4b91c.css","precedence":"next"}]],"$L5"]]]] +0:["mnxnTVxz0_SgSNkjMXene",[[["",{"children":["(dashboard)",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/83506ffe28f4b91c.css","precedence":"next"}]],"$L5"]]]] 6:I{"id":5925,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Toaster","async":false} 7:I{"id":78495,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Providers","async":false} 8:I{"id":11486,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Header","async":false} @@ -9,7 +9,7 @@ a:I{"id":18639,"chunks":["272:static/chunks/webpack-7f4514982162b5cb.js","971:static/chunks/fd9d1056-6779f76bb208370f.js","590:static/chunks/590-758bf4c4ecd0fce8.js"],"name":"","async":false} b:I{"id":30831,"chunks":["882:static/chunks/882-5574357230a12cf9.js","396:static/chunks/396-89319c375c83667c.js","642:static/chunks/app/(dashboard)/layout-81899020c101ed0e.js"],"name":"","async":false} d:I{"id":65146,"chunks":["272:static/chunks/webpack-7f4514982162b5cb.js","971:static/chunks/fd9d1056-6779f76bb208370f.js","590:static/chunks/590-758bf4c4ecd0fce8.js"],"name":"","async":false} -e:I{"id":60901,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","286:static/chunks/286-453e01dda7220f79.js","967:static/chunks/967-f02728ac0b1b01a8.js","130:static/chunks/app/(dashboard)/page-1cc6ccaef036b0bc.js"],"name":"","async":false} +e:I{"id":60901,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","286:static/chunks/286-453e01dda7220f79.js","967:static/chunks/967-f02728ac0b1b01a8.js","130:static/chunks/app/(dashboard)/page-fe128a03e1e2a101.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":"bg-muted/50 flex flex-1 flex-col","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 diff --git a/ee/tabby-webserver/ui/playground.html b/ee/tabby-webserver/ui/playground.html index fbbf1f6..1e7f2b4 100644 --- a/ee/tabby-webserver/ui/playground.html +++ b/ee/tabby-webserver/ui/playground.html @@ -1 +1 @@ -Tabby - Playground
\ No newline at end of file +Tabby - Playground
\ No newline at end of file diff --git a/ee/tabby-webserver/ui/playground.txt b/ee/tabby-webserver/ui/playground.txt index 044bdff..e5d69ff 100644 --- a/ee/tabby-webserver/ui/playground.txt +++ b/ee/tabby-webserver/ui/playground.txt @@ -1,7 +1,7 @@ 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/83506ffe28f4b91c.css","style"] -0:["y8UTfVMfS3WRo-O_Ue2fm",[[["",{"children":["playground",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/83506ffe28f4b91c.css","precedence":"next"}]],"$L5"]]]] +0:["mnxnTVxz0_SgSNkjMXene",[[["",{"children":["playground",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/83506ffe28f4b91c.css","precedence":"next"}]],"$L5"]]]] 6:I{"id":5925,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Toaster","async":false} 7:I{"id":78495,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Providers","async":false} 8:I{"id":11486,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Header","async":false} diff --git a/ee/tabby-webserver/ui/swagger.html b/ee/tabby-webserver/ui/swagger.html index 5d2eb0e..ae03cf8 100644 --- a/ee/tabby-webserver/ui/swagger.html +++ b/ee/tabby-webserver/ui/swagger.html @@ -1 +1 @@ -API
\ No newline at end of file +API
\ No newline at end of file diff --git a/ee/tabby-webserver/ui/swagger.txt b/ee/tabby-webserver/ui/swagger.txt index c0f1141..4fcf093 100644 --- a/ee/tabby-webserver/ui/swagger.txt +++ b/ee/tabby-webserver/ui/swagger.txt @@ -1,7 +1,7 @@ 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/83506ffe28f4b91c.css","style"] -0:["y8UTfVMfS3WRo-O_Ue2fm",[[["",{"children":["(dashboard)",{"children":["swagger",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/83506ffe28f4b91c.css","precedence":"next"}]],"$L5"]]]] +0:["mnxnTVxz0_SgSNkjMXene",[[["",{"children":["(dashboard)",{"children":["swagger",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L4",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/83506ffe28f4b91c.css","precedence":"next"}]],"$L5"]]]] 6:I{"id":5925,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Toaster","async":false} 7:I{"id":78495,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Providers","async":false} 8:I{"id":11486,"chunks":["882:static/chunks/882-5574357230a12cf9.js","576:static/chunks/576-75ac7546de3029d6.js","197:static/chunks/197-f00b4479a1649cf2.js","396:static/chunks/396-89319c375c83667c.js","967:static/chunks/967-f02728ac0b1b01a8.js","185:static/chunks/app/layout-7d7d333b8349675e.js"],"name":"Header","async":false}