sparkrun-ui 1.2.2 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.next/BUILD_ID +1 -1
- package/dist/.next/build-manifest.json +3 -3
- package/dist/.next/prerender-manifest.json +3 -3
- package/dist/.next/server/app/_global-error.html +1 -1
- package/dist/.next/server/app/_global-error.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/_not-found.html +1 -1
- package/dist/.next/server/app/_not-found.rsc +14 -14
- package/dist/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
- package/dist/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/dist/.next/server/app/_not-found.segments/_index.segment.rsc +9 -9
- package/dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/dist/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/dist/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/dist/.next/server/app/benchmarks/[id]/page.js.nft.json +1 -1
- package/dist/.next/server/app/benchmarks/[id]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/benchmarks/new/page.js.nft.json +1 -1
- package/dist/.next/server/app/benchmarks/new/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/benchmarks/page.js.nft.json +1 -1
- package/dist/.next/server/app/benchmarks/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/chat/page.js.nft.json +1 -1
- package/dist/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/dashboard/page.js.nft.json +1 -1
- package/dist/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/index.html +1 -1
- package/dist/.next/server/app/index.rsc +14 -14
- package/dist/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/dist/.next/server/app/index.segments/_full.segment.rsc +14 -14
- package/dist/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/dist/.next/server/app/index.segments/_index.segment.rsc +9 -9
- package/dist/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/dist/.next/server/app/launch/page.js.nft.json +1 -1
- package/dist/.next/server/app/launch/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/logs/[clusterId]/page.js.nft.json +1 -1
- package/dist/.next/server/app/logs/[clusterId]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/monitor/page.js.nft.json +1 -1
- package/dist/.next/server/app/monitor/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/page.js.nft.json +1 -1
- package/dist/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/recipes/page.js.nft.json +1 -1
- package/dist/.next/server/app/recipes/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/chunks/node_modules__pnpm_0jzojku._.js +6 -6
- package/dist/.next/server/chunks/ssr/{[root-of-the-server]__0y7ehiy._.js → [root-of-the-server]__13kp732._.js} +2 -2
- package/dist/.next/server/chunks/ssr/_0-wjfxk._.js +3 -3
- package/dist/.next/server/chunks/ssr/_0efad.3._.js +1 -1
- package/dist/.next/server/chunks/ssr/{_0m5y5l7._.js → _0mx8o88._.js} +2 -2
- package/dist/.next/server/chunks/ssr/app_components_dashboard_DashboardLive_tsx_10_yvzp._.js +1 -1
- package/dist/.next/server/middleware-build-manifest.js +3 -3
- package/dist/.next/server/pages/404.html +1 -1
- package/dist/.next/server/pages/500.html +1 -1
- package/dist/.next/server/server-reference-manifest.js +1 -1
- package/dist/.next/server/server-reference-manifest.json +1 -1
- package/dist/.next/static/chunks/{0-s876x.4qfai.js → 07x551vl4mw9a.js} +1 -1
- package/dist/.next/static/chunks/0phvjve3rvmp7.js +1 -0
- package/dist/.next/static/chunks/10t1d-iawzz1x.js +1 -0
- package/dist/package.json +1 -1
- package/package.json +1 -1
- package/dist/.next/static/chunks/0j95jkol3vrh-.js +0 -1
- package/dist/.next/static/chunks/0x~v2lf_7ekbw.js +0 -1
- /package/dist/.next/static/{0BbaFq9ofGMo-l5uHDeyi → yM0RLSy5vvlm3M5Wd7gll}/_buildManifest.js +0 -0
- /package/dist/.next/static/{0BbaFq9ofGMo-l5uHDeyi → yM0RLSy5vvlm3M5Wd7gll}/_clientMiddlewareManifest.js +0 -0
- /package/dist/.next/static/{0BbaFq9ofGMo-l5uHDeyi → yM0RLSy5vvlm3M5Wd7gll}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,21630,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return s},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return l}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});function a(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,o(e));else t.set(r,o(n));return t}function s(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},69131,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return y},MiddlewareNotFoundError:function(){return _},MissingStaticPage:function(){return x},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return a},execOnce:function(){return o},getDisplayName:function(){return d},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return s},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return j}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,s=e=>l.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class y extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class x extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class _ extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function j(e){return JSON.stringify({message:e.message,stack:e.stack})}},72489,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},12612,(e,t,r)=>{t.exports=e.r(63435)},80436,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return l},formatWithValidation:function(){return u},urlObjectKeys:function(){return s}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=e.r(44066)._(e.r(21630)),o=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,n=e.protocol||"",i=e.pathname||"",l=e.hash||"",s=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),s&&"object"==typeof s&&(s=String(a.urlQueryToSearchParams(s)));let c=e.search||s&&`?${s}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||o.test(n))&&!1!==u?(u="//"+(u||""),i&&"/"!==i[0]&&(i="/"+i)):u||(u=""),l&&"#"!==l[0]&&(l="#"+l),c&&"?"!==c[0]&&(c="?"+c),i=i.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${i}${c}${l}`}let s=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return l(e)}},86032,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return i}});let n=e.r(73576);function i(e,t){let r=(0,n.useRef)(null),i=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=i.current;t&&(i.current=null,t())}else e&&(r.current=a(e,n)),t&&(i.current=a(t,n))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},52958,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return a}});let n=e.r(69131),i=e.r(42783);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,i.hasBasePath)(r.pathname)}catch(e){return!1}}},50232,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},55367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return y},useLinkStatus:function(){return v}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=e.r(44066),o=e.r(76350),l=a._(e.r(73576)),s=e.r(80436),u=e.r(76968),c=e.r(86032),d=e.r(69131),f=e.r(36948);e.r(72489);let p=e.r(66215),h=e.r(82393),m=e.r(52958),g=e.r(96478);function y(t){var r,n;let i,a,y,[v,x]=(0,l.useOptimistic)(h.IDLE_LINK_STATUS),_=(0,l.useRef)(null),{href:j,as:P,children:w,prefetch:O=null,passHref:E,replace:S,shallow:C,scroll:z,onClick:k,onMouseEnter:M,onTouchStart:R,legacyBehavior:N=!1,onNavigate:T,transitionTypes:A,ref:I,unstable_dynamicOnHover:$,...D}=t;i=w,N&&("string"==typeof i||"number"==typeof i)&&(i=(0,o.jsx)("a",{children:i}));let L=l.default.useContext(u.AppRouterContext),U=!1!==O,F=!1!==O?null===(n=O)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,B="string"==typeof(r=P||j)?r:(0,s.formatUrl)(r);if(N){if(i?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=l.default.Children.only(i)}let q=N?a&&"object"==typeof a&&a.ref:I,W=l.default.useCallback(e=>(null!==L&&(_.current=(0,h.mountLinkInstance)(e,B,L,F,U,x)),()=>{_.current&&((0,h.unmountLinkForCurrentNavigation)(_.current),_.current=null),(0,h.unmountPrefetchableInstance)(e)}),[U,B,L,F,x]),G={ref:(0,c.useMergedRef)(W,q),onClick(t){N||"function"!=typeof k||k(t),N&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!L||t.defaultPrevented||function(t,r,n,i,a,o,s){if("u">typeof window){let u,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){i&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(25435);l.default.startTransition(()=>{d(r,i?"replace":"push",!1===a?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,n.current,s)})}}(t,B,_,S,z,T,A)},onMouseEnter(e){N||"function"!=typeof M||M(e),N&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),L&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){N||"function"!=typeof R||R(e),N&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),L&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,d.isAbsoluteUrl)(B)?G.href=B:N&&!E&&("a"!==a.type||"href"in a.props)||(G.href=(0,f.addBasePath)(B)),y=N?l.default.cloneElement(a,G):(0,o.jsx)("a",{...D,...G,children:i}),(0,o.jsx)(b.Provider,{value:v,children:y})}e.r(50232);let b=(0,l.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,l.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},64477,e=>{"use strict";let t=(0,e.i(6927).default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);e.s(["Rocket",0,t],64477)},74799,98638,e=>{"use strict";var t=e.i(6927);let r=(0,t.default)("thermometer",[["path",{d:"M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z",key:"17jzev"}]]);e.s(["Thermometer",0,r],74799);let n=(0,t.default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,n],98638)},75261,4403,e=>{"use strict";var t=e.i(6927);let r=(0,t.default)("gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);e.s(["Gauge",0,r],75261);let n=(0,t.default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",0,n],4403)},61080,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let n=e.r(73576),i="u"<typeof window,a=i?()=>{}:n.useLayoutEffect,o=i?()=>{}:n.useEffect;function l(e){let{headManager:t,reduceComponentsToState:r}=e;function l(){if(t&&t.mountedInstances){let e=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return i&&(t?.mountedInstances?.add(e.children),l()),a(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),a(()=>(t&&(t._pendingUpdate=l),()=>{t&&(t._pendingUpdate=l)})),o(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},52991,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return m},defaultHead:function(){return d}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=e.r(81258),o=e.r(44066),l=e.r(76350),s=o._(e.r(73576)),u=a._(e.r(61080)),c=e.r(37090);function d(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===s.default.Fragment?e.concat(s.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(72489);let p=["name","httpEquiv","charSet","itemProp"];function h(e){let t,r,n,i;return e.reduce(f,[]).reverse().concat(d().reverse()).filter((t=new Set,r=new Set,n=new Set,i={},e=>{let a=!0,o=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){o=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?a=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?a=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)n.has(r)?a=!1:n.add(r);else{let t=e.props[r],n=i[r]||new Set;("name"!==r||!o)&&n.has(t)?a=!1:(n.add(t),i[r]=n)}}}return a})).reverse().map((e,t)=>{let r=e.key||t;return s.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,s.useContext)(c.HeadManagerContext);return(0,l.jsx)(u.default,{reduceComponentsToState:h,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},37848,(e,t,r)=>{"use strict";function n({widthInt:e,heightInt:t,blurWidth:r,blurHeight:i,blurDataURL:a,objectFit:o}){let l=r?40*r:e,s=i?40*i:t,u=l&&s?`viewBox='0 0 ${l} ${s}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${u}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${u?"none":"contain"===o?"xMidYMid":"cover"===o?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${a}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return n}})},1183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={VALID_LOADERS:function(){return a},imageConfigDefault:function(){return o}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=["default","imgix","cloudinary","akamai","custom"],o={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},4879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return u}}),e.r(72489);let n=e.r(42736),i=e.r(37848),a=e.r(1183),o=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function u({src:e,sizes:t,unoptimized:r=!1,priority:c=!1,preload:d=!1,loading:f,className:p,quality:h,width:m,height:g,fill:y=!1,style:b,overrideSrc:v,onLoad:x,onLoadingComplete:_,placeholder:j="empty",blurDataURL:P,fetchPriority:w,decoding:O="async",layout:E,objectFit:S,objectPosition:C,lazyBoundary:z,lazyRoot:k,...M},R){var N;let T,A,I,{imgConf:$,showAltText:D,blurComplete:L,defaultLoader:U}=R,F=$||a.imageConfigDefault;if("allSizes"in F)T=F;else{let e=[...F.deviceSizes,...F.imageSizes].sort((e,t)=>e-t),t=F.deviceSizes.sort((e,t)=>e-t),r=F.qualities?.sort((e,t)=>e-t);T={...F,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===U)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let B=M.loader||U;delete M.loader,delete M.srcSet;let q="__next_img_default"in B;if(q){if("custom"===T.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,21630,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return s},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return l}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});function a(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,o(e));else t.set(r,o(n));return t}function s(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},69131,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return y},MiddlewareNotFoundError:function(){return _},MissingStaticPage:function(){return x},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return a},execOnce:function(){return o},getDisplayName:function(){return d},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return s},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return j}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,s=e=>l.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class y extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class x extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class _ extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function j(e){return JSON.stringify({message:e.message,stack:e.stack})}},72489,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},12612,(e,t,r)=>{t.exports=e.r(63435)},80436,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return l},formatWithValidation:function(){return u},urlObjectKeys:function(){return s}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=e.r(44066)._(e.r(21630)),o=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,n=e.protocol||"",i=e.pathname||"",l=e.hash||"",s=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),s&&"object"==typeof s&&(s=String(a.urlQueryToSearchParams(s)));let c=e.search||s&&`?${s}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||o.test(n))&&!1!==u?(u="//"+(u||""),i&&"/"!==i[0]&&(i="/"+i)):u||(u=""),l&&"#"!==l[0]&&(l="#"+l),c&&"?"!==c[0]&&(c="?"+c),i=i.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${i}${c}${l}`}let s=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return l(e)}},86032,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return i}});let n=e.r(73576);function i(e,t){let r=(0,n.useRef)(null),i=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=i.current;t&&(i.current=null,t())}else e&&(r.current=a(e,n)),t&&(i.current=a(t,n))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},52958,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return a}});let n=e.r(69131),i=e.r(42783);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,i.hasBasePath)(r.pathname)}catch(e){return!1}}},50232,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},55367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return y},useLinkStatus:function(){return v}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=e.r(44066),o=e.r(76350),l=a._(e.r(73576)),s=e.r(80436),u=e.r(76968),c=e.r(86032),d=e.r(69131),f=e.r(36948);e.r(72489);let p=e.r(66215),h=e.r(82393),m=e.r(52958),g=e.r(96478);function y(t){var r,n;let i,a,y,[v,x]=(0,l.useOptimistic)(h.IDLE_LINK_STATUS),_=(0,l.useRef)(null),{href:j,as:P,children:w,prefetch:O=null,passHref:E,replace:S,shallow:C,scroll:z,onClick:k,onMouseEnter:M,onTouchStart:R,legacyBehavior:N=!1,onNavigate:T,transitionTypes:A,ref:I,unstable_dynamicOnHover:$,...D}=t;i=w,N&&("string"==typeof i||"number"==typeof i)&&(i=(0,o.jsx)("a",{children:i}));let L=l.default.useContext(u.AppRouterContext),U=!1!==O,F=!1!==O?null===(n=O)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,B="string"==typeof(r=P||j)?r:(0,s.formatUrl)(r);if(N){if(i?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=l.default.Children.only(i)}let q=N?a&&"object"==typeof a&&a.ref:I,W=l.default.useCallback(e=>(null!==L&&(_.current=(0,h.mountLinkInstance)(e,B,L,F,U,x)),()=>{_.current&&((0,h.unmountLinkForCurrentNavigation)(_.current),_.current=null),(0,h.unmountPrefetchableInstance)(e)}),[U,B,L,F,x]),G={ref:(0,c.useMergedRef)(W,q),onClick(t){N||"function"!=typeof k||k(t),N&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!L||t.defaultPrevented||function(t,r,n,i,a,o,s){if("u">typeof window){let u,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){i&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(25435);l.default.startTransition(()=>{d(r,i?"replace":"push",!1===a?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,n.current,s)})}}(t,B,_,S,z,T,A)},onMouseEnter(e){N||"function"!=typeof M||M(e),N&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),L&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){N||"function"!=typeof R||R(e),N&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),L&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,d.isAbsoluteUrl)(B)?G.href=B:N&&!E&&("a"!==a.type||"href"in a.props)||(G.href=(0,f.addBasePath)(B)),y=N?l.default.cloneElement(a,G):(0,o.jsx)("a",{...D,...G,children:i}),(0,o.jsx)(b.Provider,{value:v,children:y})}e.r(50232);let b=(0,l.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,l.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},64477,e=>{"use strict";let t=(0,e.i(6927).default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);e.s(["Rocket",0,t],64477)},98638,e=>{"use strict";let t=(0,e.i(6927).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,t],98638)},75261,4403,e=>{"use strict";var t=e.i(6927);let r=(0,t.default)("gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);e.s(["Gauge",0,r],75261);let n=(0,t.default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",0,n],4403)},74799,e=>{"use strict";let t=(0,e.i(6927).default)("thermometer",[["path",{d:"M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z",key:"17jzev"}]]);e.s(["Thermometer",0,t],74799)},61080,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let n=e.r(73576),i="u"<typeof window,a=i?()=>{}:n.useLayoutEffect,o=i?()=>{}:n.useEffect;function l(e){let{headManager:t,reduceComponentsToState:r}=e;function l(){if(t&&t.mountedInstances){let e=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return i&&(t?.mountedInstances?.add(e.children),l()),a(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),a(()=>(t&&(t._pendingUpdate=l),()=>{t&&(t._pendingUpdate=l)})),o(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},52991,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return m},defaultHead:function(){return d}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=e.r(81258),o=e.r(44066),l=e.r(76350),s=o._(e.r(73576)),u=a._(e.r(61080)),c=e.r(37090);function d(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===s.default.Fragment?e.concat(s.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(72489);let p=["name","httpEquiv","charSet","itemProp"];function h(e){let t,r,n,i;return e.reduce(f,[]).reverse().concat(d().reverse()).filter((t=new Set,r=new Set,n=new Set,i={},e=>{let a=!0,o=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){o=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?a=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?a=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)n.has(r)?a=!1:n.add(r);else{let t=e.props[r],n=i[r]||new Set;("name"!==r||!o)&&n.has(t)?a=!1:(n.add(t),i[r]=n)}}}return a})).reverse().map((e,t)=>{let r=e.key||t;return s.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,s.useContext)(c.HeadManagerContext);return(0,l.jsx)(u.default,{reduceComponentsToState:h,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},37848,(e,t,r)=>{"use strict";function n({widthInt:e,heightInt:t,blurWidth:r,blurHeight:i,blurDataURL:a,objectFit:o}){let l=r?40*r:e,s=i?40*i:t,u=l&&s?`viewBox='0 0 ${l} ${s}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${u}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${u?"none":"contain"===o?"xMidYMid":"cover"===o?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${a}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return n}})},1183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={VALID_LOADERS:function(){return a},imageConfigDefault:function(){return o}};for(var i in n)Object.defineProperty(r,i,{enumerable:!0,get:n[i]});let a=["default","imgix","cloudinary","akamai","custom"],o={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},4879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return u}}),e.r(72489);let n=e.r(42736),i=e.r(37848),a=e.r(1183),o=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function u({src:e,sizes:t,unoptimized:r=!1,priority:c=!1,preload:d=!1,loading:f,className:p,quality:h,width:m,height:g,fill:y=!1,style:b,overrideSrc:v,onLoad:x,onLoadingComplete:_,placeholder:j="empty",blurDataURL:P,fetchPriority:w,decoding:O="async",layout:E,objectFit:S,objectPosition:C,lazyBoundary:z,lazyRoot:k,...M},R){var N;let T,A,I,{imgConf:$,showAltText:D,blurComplete:L,defaultLoader:U}=R,F=$||a.imageConfigDefault;if("allSizes"in F)T=F;else{let e=[...F.deviceSizes,...F.imageSizes].sort((e,t)=>e-t),t=F.deviceSizes.sort((e,t)=>e-t),r=F.qualities?.sort((e,t)=>e-t);T={...F,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===U)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let B=M.loader||U;delete M.loader,delete M.srcSet;let q="__next_img_default"in B;if(q){if("custom"===T.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
|
|
2
2
|
Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=B;B=t=>{let{config:r,...n}=t;return e(n)}}if(E){"fill"===E&&(y=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[E];e&&(b={...b,...e});let r={responsive:"100vw",fill:"100vw"}[E];r&&!t&&(t=r)}let W="",G=s(m),H=s(g);if((N=e)&&"object"==typeof N&&(l(N)||void 0!==N.src)){let t=l(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(A=t.blurWidth,I=t.blurHeight,P=P||t.blurDataURL,W=t.src,!y)if(G||H){if(G&&!H){let e=G/t.width;H=Math.round(t.height*e)}else if(!G&&H){let e=H/t.height;G=Math.round(t.width*e)}}else G=t.width,H=t.height}let X=!c&&!d&&("lazy"===f||void 0===f);(!(e="string"==typeof e?e:W)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,X=!1),T.unoptimized&&(r=!0),q&&!T.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let K=s(h),V=Object.assign(y?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:S,objectPosition:C}:{},D?{}:{color:"transparent"},b),Q=L||"empty"===j?null:"blur"===j?`url("data:image/svg+xml;charset=utf-8,${(0,i.getImageBlurSvg)({widthInt:G,heightInt:H,blurWidth:A,blurHeight:I,blurDataURL:P||"",objectFit:V.objectFit})}")`:`url("${j}")`,Z=o.includes(V.objectFit)?"fill"===V.objectFit?"100% 100%":"cover":V.objectFit,J=Q?{backgroundSize:Z,backgroundPosition:V.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:Q}:{},Y=function({config:e,src:t,unoptimized:r,width:i,quality:a,sizes:o,loader:l}){if(r){if(t.startsWith("/")&&!t.startsWith("//")){let e=(0,n.getDeploymentId)();if(e){let r=t.indexOf("?");if(-1!==r){let n=new URLSearchParams(t.slice(r+1));n.get("dpl")||(n.append("dpl",e),t=t.slice(0,r)+"?"+n.toString())}else t+=`?dpl=${e}`}}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:s,kind:u}=function({deviceSizes:e,allSizes:t},r,n){if(n){let r=/(^|\s)(1?\d?\d)vw/g,i=[];for(let e;e=r.exec(n);)i.push(parseInt(e[2]));if(i.length){let r=.01*Math.min(...i);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,i,o),c=s.length-1;return{sizes:o||"w"!==u?o:"100vw",srcSet:s.map((r,n)=>`${l({config:e,src:t,quality:a,width:r})} ${"w"===u?r:n+1}${u}`).join(", "),src:l({config:e,src:t,quality:a,width:s[c]})}}({config:T,src:e,unoptimized:r,width:G,quality:K,sizes:t,loader:B}),ee=X?"lazy":f;return{props:{...M,loading:ee,fetchPriority:w,width:G,height:H,decoding:O,className:p,style:{...V,...J},sizes:Y.sizes,srcSet:Y.srcSet,src:v||Y.src},meta:{unoptimized:r,preload:d||c,placeholder:j,fill:y}}}},4044,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return a}});let n=e.r(81258)._(e.r(73576)),i=e.r(1183),a=n.default.createContext(i.imageConfigDefault)},34233,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return n}});let n=e.r(81258)._(e.r(73576)).default.createContext(null)},2692,(e,t,r)=>{"use strict";function n(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,t.qualities[0]):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return n}})},80934,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o}});let n=e.r(2692),i=e.r(42736);function a({config:e,src:t,width:r,quality:o}){let l=(0,i.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")){let e=t.indexOf("?");if(-1!==e){let r=new URLSearchParams(t.slice(e+1)),n=r.get("dpl");if(n){l=n,r.delete("dpl");let i=r.toString();t=t.slice(0,e)+(i?"?"+i:"")}}}if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
|
|
3
3
|
Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let s=(0,n.findClosestQuality)(o,e);return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${s}${t.startsWith("/")&&l?`&dpl=${l}`:""}`}a.__next_img_default=!0;let o=a},83540,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return x}});let n=e.r(81258),i=e.r(44066),a=e.r(76350),o=i._(e.r(73576)),l=n._(e.r(55284)),s=n._(e.r(52991)),u=e.r(4879),c=e.r(1183),d=e.r(4044);e.r(72489);let f=e.r(34233),p=n._(e.r(80934)),h=e.r(86032),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function g(e,t,r,n,i,a,o){let l=e?.src;e&&e["data-loaded-src"]!==l&&(e["data-loaded-src"]=l,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&i(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,i=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>i,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{i=!0,t.stopPropagation()}})}n?.current&&n.current(e)}}))}function y(e){return o.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let b=(0,o.forwardRef)(({src:e,srcSet:t,sizes:r,height:n,width:i,decoding:l,className:s,style:u,fetchPriority:c,placeholder:d,loading:f,unoptimized:p,fill:m,onLoadRef:b,onLoadingCompleteRef:v,setBlurComplete:x,setShowAltText:_,sizesInput:j,onLoad:P,onError:w,...O},E)=>{let S=(0,o.useCallback)(e=>{e&&(w&&(e.src=e.src),e.complete&&g(e,d,b,v,x,p,j))},[e,d,b,v,x,w,p,j]),C=(0,h.useMergedRef)(E,S);return(0,a.jsx)("img",{...O,...y(c),loading:f,width:i,height:n,decoding:l,"data-nimg":m?"fill":"1",className:s,style:u,sizes:r,srcSet:t,src:e,ref:C,onLoad:e=>{g(e.currentTarget,d,b,v,x,p,j)},onError:e=>{_(!0),"empty"!==d&&x(!0),w&&w(e)}})});function v({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...y(t.fetchPriority)};return e&&l.default.preload?(l.default.preload(t.src,r),null):(0,a.jsx)(s.default,{children:(0,a.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let x=(0,o.forwardRef)((e,t)=>{let r=(0,o.useContext)(f.RouterContext),n=(0,o.useContext)(d.ImageConfigContext),i=(0,o.useMemo)(()=>{let e=m||n||c.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),i=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:i,localPatterns:"u"<typeof window?n?.localPatterns:e.localPatterns}},[n]),{onLoad:l,onLoadingComplete:s}=e,h=(0,o.useRef)(l);(0,o.useEffect)(()=>{h.current=l},[l]);let g=(0,o.useRef)(s);(0,o.useEffect)(()=>{g.current=s},[s]);let[y,x]=(0,o.useState)(!1),[_,j]=(0,o.useState)(!1),{props:P,meta:w}=(0,u.getImgProps)(e,{defaultLoader:p.default,imgConf:i,blurComplete:y,showAltText:_});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(b,{...P,unoptimized:w.unoptimized,placeholder:w.placeholder,fill:w.fill,onLoadRef:h,onLoadingCompleteRef:g,setBlurComplete:x,setShowAltText:j,sizesInput:e.sizes,ref:t}),w.preload?(0,a.jsx)(v,{isAppRouter:!r,imgAttributes:P}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},54858,e=>{"use strict";var t=e.i(76350),r=e.i(73576),n=e.i(55367),i=e.i(12612),a=e.i(37999),o=e.i(6927);let l=(0,o.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),s=(0,o.default)("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]);var u=e.i(75261);let c=(0,o.default)("chart-line",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"m19 9-5 5-4-4-3 3",key:"2osh9i"}]]),d=(0,o.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var f=e.i(4403),p=e.i(64477),h=e.i(75442),m=e.i(33209);let g=[{href:"/dashboard",label:"Dashboard",icon:l},{href:"/recipes",label:"Recipes",icon:s},{href:"/launch",label:"Launch",icon:p.Rocket},{href:"/benchmarks",label:"Benchmarks",icon:u.Gauge},{href:"/monitor",label:"Monitor",icon:c},{href:"/chat",label:"Chat",icon:f.MessageSquare}];function y({href:e,label:r,icon:a,onClick:o}){let l=(0,i.usePathname)(),s=l===e||l.startsWith(`${e}/`);return(0,t.jsxs)(n.default,{href:e,onClick:o,className:(0,m.cn)("inline-flex items-center gap-2 rounded-md px-3 py-1.5 text-sm font-medium transition-colors",s?"bg-zinc-200 text-zinc-900 dark:bg-zinc-800 dark:text-zinc-100":"text-zinc-600 hover:bg-zinc-100 hover:text-zinc-900 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-zinc-100"),children:[(0,t.jsx)(a,{size:16,strokeWidth:2}),r]})}e.s(["Nav",0,function(){let[e,n]=(0,r.useState)(!1);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("nav",{className:"hidden items-center gap-1 md:flex",children:g.map(e=>(0,t.jsx)(y,{...e},e.href))}),(0,t.jsx)("button",{onClick:()=>n(!0),className:"rounded-md p-2 text-zinc-600 hover:bg-zinc-100 hover:text-zinc-900 md:hidden dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-zinc-100","aria-label":"Open menu",children:(0,t.jsx)(d,{size:20})}),(0,t.jsx)(a.Dialog.Root,{open:e,onOpenChange:n,children:(0,t.jsxs)(a.Dialog.Portal,{children:[(0,t.jsx)(a.Dialog.Backdrop,{className:"fixed inset-0 z-50 bg-black/40 backdrop-blur-[2px] transition-opacity duration-150 data-[ending-style]:opacity-0 data-[starting-style]:opacity-0"}),(0,t.jsxs)(a.Dialog.Popup,{className:"fixed inset-y-0 right-0 z-50 w-64 border-l border-zinc-200 bg-white shadow-xl transition-transform duration-200 data-[ending-style]:translate-x-full data-[starting-style]:translate-x-full dark:border-zinc-800 dark:bg-zinc-900",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-zinc-200 px-4 py-3 dark:border-zinc-800",children:[(0,t.jsx)("span",{className:"text-sm font-semibold text-zinc-900 dark:text-zinc-100",children:"Menu"}),(0,t.jsx)(a.Dialog.Close,{className:"rounded p-1 text-zinc-500 hover:bg-zinc-100 hover:text-zinc-900 dark:hover:bg-zinc-800 dark:hover:text-zinc-100",children:(0,t.jsx)(h.X,{size:16})})]}),(0,t.jsx)("nav",{className:"flex flex-col gap-1 p-3",children:g.map(e=>(0,t.jsx)(y,{...e,onClick:()=>n(!1)},e.href))})]})]})})]})}],54858)},92250,e=>{"use strict";var t=e.i(76350),r=e.i(73576),n=e.i(74799),i=e.i(98638),a=e.i(21432);function o(e){if(!e)return 0;let t=parseFloat(e);return Number.isFinite(t)?t:0}let l={gpuPct:0,gpuTempC:0,connected:!1};e.s(["HeaderStats",0,function(){let[e,s]=(0,r.useState)(l);return((0,r.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{for await(let r of(await a.rpc.monitor.stream({intervalSec:3},{signal:e.signal}))){if(t)break;let e=Object.values(r.hosts),n=0,i=0;for(let t of e)n+=o(t.gpu_util_pct),i+=o(t.gpu_temp_c);let a=e.length||1;s({gpuPct:n/a,gpuTempC:i/a,connected:!0})}}catch{t||s(e=>({...e,connected:!1}))}})(),()=>{t=!0,e.abort()}},[]),e.connected||0!==e.gpuPct)?(0,t.jsxs)("div",{className:"flex items-center gap-3 text-xs text-zinc-500 dark:text-zinc-400",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1",title:"GPU utilization",children:[(0,t.jsx)(i.Zap,{size:12,className:e.gpuPct>0?"text-purple-500":"text-zinc-400"}),e.gpuPct.toFixed(0),"%"]}),e.gpuTempC>0&&(0,t.jsxs)("span",{className:"flex items-center gap-1",title:"GPU temperature",children:[(0,t.jsx)(n.Thermometer,{size:12,className:"text-red-500"}),e.gpuTempC.toFixed(0),"°C"]})]}):null}])},1842,e=>{"use strict";var t=e.i(76350),r=e.i(73576);e.s(["AnimatedBackground",0,function(){let e=(0,r.useRef)(null),n=(0,r.useRef)(0);return(0,r.useEffect)(()=>{let t=e.current;if(!t)return;let r=t.getContext("2d");if(!r)return;let i=0,a=0;function o(){i=t.width=window.innerWidth,a=t.height=window.innerHeight}return o(),window.addEventListener("resize",o),n.current=requestAnimationFrame(function e(){r.clearRect(0,0,i,a);let t=3e-4*performance.now(),o=window.matchMedia("(prefers-color-scheme: dark)").matches,l=o?.08:.06,s=o?80:200,u=o?60:180,c=o?100:220,d=o?30:230,f=o?50:200,p=o?60:190,h=r.createImageData(i,a),m=h.data;for(let e=0;e<a;e+=4)for(let r=0;r<i;r+=4){let n=r/i,o=e/a,h=(Math.sin(8*n+1.3*t)*Math.cos(6*o+.7*t)+Math.sin(5*n-.9*t+2)*Math.cos(7*o+1.1*t)+.5*Math.sin(10*n+4*o+.5*t)+2.5)/5,g=h*l,y=Math.round(s+(d-s)*h),b=Math.round(u+(f-u)*h),v=Math.round(c+(p-c)*h);for(let t=0;t<4&&e+t<a;t++)for(let n=0;n<4&&r+n<i;n++){let a=((e+t)*i+(r+n))*4;m[a]=y,m[a+1]=b,m[a+2]=v,m[a+3]=Math.round(255*g)}}r.putImageData(h,0,0),n.current=requestAnimationFrame(e)}),()=>{window.removeEventListener("resize",o),cancelAnimationFrame(n.current)}},[]),(0,t.jsx)("canvas",{ref:e,className:"pointer-events-none fixed inset-0 -z-10","aria-hidden":!0})}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2265,e=>{"use strict";var t=e.i(76350),s=e.i(33209);e.s(["Card",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("rounded-lg border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900",e),...r})},"CardBody",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("px-5 py-4",e),...r})},"CardDescription",0,function({className:e,...r}){return(0,t.jsx)("p",{className:(0,s.cn)("text-sm text-zinc-500 dark:text-zinc-400",e),...r})},"CardFooter",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("flex items-center justify-end gap-2 border-t border-zinc-200 px-5 py-3 dark:border-zinc-800",e),...r})},"CardHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("flex flex-col gap-1 border-b border-zinc-200 px-5 py-4 dark:border-zinc-800",e),...r})},"CardTitle",0,function({className:e,...r}){return(0,t.jsx)("h3",{className:(0,s.cn)("text-base font-semibold text-zinc-900 dark:text-zinc-100",e),...r})}])},69393,e=>{"use strict";var t=e.i(76350),s=e.i(33209);let r={neutral:"bg-zinc-100 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",sky:"bg-sky-100 text-sky-700 dark:bg-sky-950 dark:text-sky-300",green:"bg-emerald-100 text-emerald-700 dark:bg-emerald-950 dark:text-emerald-300",amber:"bg-amber-100 text-amber-700 dark:bg-amber-950 dark:text-amber-300",red:"bg-red-100 text-red-700 dark:bg-red-950 dark:text-red-300",purple:"bg-purple-100 text-purple-700 dark:bg-purple-950 dark:text-purple-300"};e.s(["Badge",0,function({tone:e="neutral",className:a,...i}){return(0,t.jsx)("span",{className:(0,s.cn)("inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium",r[e],a),...i})}])},81807,e=>{"use strict";let t=(0,e.i(6927).default)("scroll-text",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]);e.s(["ScrollText",0,t],81807)},84339,e=>{"use strict";let t=(0,e.i(6927).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",0,t],84339)},83079,e=>{"use strict";var t=e.i(76350),s=e.i(73576),r=e.i(33209);let a={primary:"bg-sky-600 text-white hover:bg-sky-500 active:bg-sky-700 dark:bg-sky-500 dark:hover:bg-sky-400",secondary:"bg-zinc-100 text-zinc-900 hover:bg-zinc-200 active:bg-zinc-300 dark:bg-zinc-800 dark:text-zinc-100 dark:hover:bg-zinc-700 dark:active:bg-zinc-600 border border-zinc-200 dark:border-zinc-700",ghost:"text-zinc-700 hover:bg-zinc-100 active:bg-zinc-200 dark:text-zinc-300 dark:hover:bg-zinc-800 dark:active:bg-zinc-700",danger:"bg-red-600 text-white hover:bg-red-500 active:bg-red-700 dark:bg-red-500 dark:hover:bg-red-400",success:"bg-emerald-600 text-white hover:bg-emerald-500 active:bg-emerald-700 dark:bg-emerald-500 dark:hover:bg-emerald-400"},i={sm:"h-8 px-3 text-sm",md:"h-9 px-4 text-sm",lg:"h-10 px-5 text-base"},n=s.forwardRef(function({variant:e="secondary",size:s="md",className:n,...l},c){return(0,t.jsx)("button",{ref:c,className:(0,r.cn)("inline-flex items-center justify-center gap-2 rounded-md font-medium transition-colors cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-zinc-50 dark:focus-visible:ring-offset-zinc-950 focus-visible:ring-sky-500 disabled:opacity-50 disabled:cursor-not-allowed",a[e],i[s],n),...l})});e.s(["Button",0,n])},63825,e=>{"use strict";let t=(0,e.i(6927).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,t],63825)},44501,30650,e=>{"use strict";let t=(0,e.i(6927).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",0,t],44501);var s=e.i(73576),r=e.i(21432);e.s(["useWorkloadHealth",0,function(e){let[t,a]=(0,s.useState)(null),[i,n]=(0,s.useState)(e);return e!==i&&(n(e),a(null)),(0,s.useEffect)(()=>{if(!e)return;let t=!1,s=new AbortController,i=async()=>{try{let i=await r.rpc.workloads.health({clusterId:e},{signal:s.signal});t||a(i)}catch{}};i();let n=setInterval(i,5e3);return()=>{t=!0,s.abort(),clearInterval(n)}},[e]),t??{ready:!1,state:"loading"}}],30650)},14779,73424,38540,e=>{"use strict";var t=e.i(6927);let s=(0,t.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);e.s(["Cpu",0,s],14779);let r=(0,t.default)("memory-stick",[["path",{d:"M12 12v-2",key:"fwoke6"}],["path",{d:"M12 18v-2",key:"qj6yno"}],["path",{d:"M16 12v-2",key:"heuere"}],["path",{d:"M16 18v-2",key:"s1ct0w"}],["path",{d:"M2 11h1.5",key:"15p63e"}],["path",{d:"M20 18v-2",key:"12ehxp"}],["path",{d:"M20.5 11H22",key:"khsy7a"}],["path",{d:"M4 18v-2",key:"1c3oqr"}],["path",{d:"M8 12v-2",key:"1mwtfd"}],["path",{d:"M8 18v-2",key:"qcmpov"}],["rect",{x:"2",y:"6",width:"20",height:"10",rx:"2",key:"1qcswk"}]]);e.s(["MemoryStick",0,r],73424);let a=(0,t.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);e.s(["Server",0,a],38540)},66399,e=>{"use strict";var t=e.i(76350),s=e.i(73576),r=e.i(55367),a=e.i(84339),i=e.i(64477),n=e.i(82088),l=e.i(83079),c=e.i(69393),d=e.i(31307),o=e.i(21432);let x=new Map;e.s(["RecipeShowDialog",0,function({name:e,title:m,open:u,onOpenChange:h,running:p=!1,showLaunch:g=!0}){let[b,k]=(0,s.useState)(()=>x.get(e)??null),[f,j]=(0,s.useState)(null),[y,v]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{if(!u)return;let t=x.get(e);if(t)return void k(t);let s=!1;return v(!0),j(null),o.rpc.recipes.show({name:e}).then(t=>{s||(x.set(e,t.text),k(t.text))}).catch(e=>{s||j(e instanceof Error?e.message:String(e))}).finally(()=>{s||v(!1)}),()=>{s=!0}},[u,e]),(0,t.jsx)(n.Dialog,{open:u,onOpenChange:h,children:(0,t.jsxs)(n.Dialog.Content,{title:m??e,size:"xl",description:"sparkrun recipe show",children:[(0,t.jsx)(n.Dialog.Body,{children:y&&!b?(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-zinc-500",children:[(0,t.jsx)(a.Loader2,{size:14,className:"animate-spin"})," loading…"]}):f?(0,t.jsx)("p",{className:"text-sm text-red-600 dark:text-red-400",children:f}):b?(0,t.jsx)(d.YamlEditor,{value:b,readOnly:!0,className:"max-h-[60vh]"}):null}),(0,t.jsxs)(n.Dialog.Footer,{children:[(0,t.jsx)(n.Dialog.Close,{render:(0,t.jsx)(l.Button,{variant:"ghost",type:"button",children:"Close"})}),p?(0,t.jsx)(c.Badge,{tone:"green",children:"already running"}):g?(0,t.jsx)(r.default,{href:`/launch?recipe=${encodeURIComponent(e)}`,children:(0,t.jsxs)(l.Button,{variant:"primary",children:[(0,t.jsx)(i.Rocket,{size:14}),"Launch"]})}):null]})]})})}])},60632,e=>{"use strict";var t=e.i(76350),s=e.i(73576),r=e.i(55367),a=e.i(63825),i=e.i(64477),n=e.i(21432),l=e.i(2265),c=e.i(69393),d=e.i(83079),o=e.i(75261),x=e.i(4403),m=e.i(44501),u=e.i(81807),h=e.i(84339),p=e.i(82088),g=e.i(84538),b=e.i(66399),k=e.i(30650);function f({workload:e,recipe:a}){var i,c,h;let y,v,[z,N]=(0,s.useState)(!1),[w,C]=(0,s.useState)(!1),[M,_]=(0,s.useTransition)(),S=(0,k.useWorkloadHealth)(e.cluster_id),T=e.meta.model||e.meta.recipe||e.cluster_id,G=function(e){if(!e)return null;let t=e.match(/^Up\s+(.+?)(?:\s*\([^)]*\))?\s*$/);return t?.[1]??null}(e.status),B=a?.registeredName??e.meta.recipe;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(l.Card,{children:[(0,t.jsx)(l.CardHeader,{children:(0,t.jsx)(l.CardTitle,{className:"text-sm font-semibold",children:T})}),(0,t.jsxs)(l.CardBody,{className:"flex flex-col gap-3 text-sm",children:[(0,t.jsxs)("dl",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-xs",children:[a&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Recipe"}),(0,t.jsx)("dd",{children:B?(0,t.jsx)("button",{type:"button",onClick:()=>C(!0),className:"cursor-pointer font-medium text-sky-600 hover:underline dark:text-sky-400",children:a.label}):(0,t.jsx)("span",{className:"font-medium text-zinc-700 dark:text-zinc-300",children:a.label})})]}),e.meta.port&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Port"}),(0,t.jsx)("dd",{className:"font-mono text-zinc-700 dark:text-zinc-300",children:e.meta.port})]}),e.host&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Host"}),(0,t.jsx)("dd",{className:"font-mono text-zinc-700 dark:text-zinc-300",children:e.host})]}),G&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Uptime"}),(0,t.jsx)("dd",{className:"text-zinc-700 dark:text-zinc-300",children:G})]}),(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Status"}),(0,t.jsx)("dd",{children:(0,t.jsx)(j,{health:S,containerStatus:e.status})})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 pt-2",children:[e.host&&e.meta.port&&(0,t.jsx)(r.default,{href:`/chat?clusterId=${encodeURIComponent(e.cluster_id)}`,children:(0,t.jsxs)(d.Button,{variant:"ghost",size:"sm",children:[(0,t.jsx)(x.MessageSquare,{size:14}),"Chat"]})}),(0,t.jsx)(r.default,{href:`/logs/${e.cluster_id}`,children:(0,t.jsxs)(d.Button,{variant:"ghost",size:"sm",children:[(0,t.jsx)(u.ScrollText,{size:14}),"Logs"]})}),(0,t.jsx)(r.default,{href:(i=a,c=e.meta.model,h=function(e){let t=e?.overrides,s=t?.served_model_name;if("string"==typeof s&&s)return s;let r=e?.recipe_state,a=r?._applied_overrides,i=a?.served_model_name;if("string"==typeof i&&i)return i;let n=r?._raw,l=n?.defaults,c=l?.served_model_name;if("string"==typeof c&&c)return c}(e.meta),y=i?.registeredName??i?.label,v=new URLSearchParams,y&&v.set("recipe",y),c&&v.set("model",c),h&&v.set("servedModelName",h),v.set("skipRun","1"),`/benchmarks/new?${v.toString()}`),children:(0,t.jsxs)(d.Button,{variant:"ghost",size:"sm",children:[(0,t.jsx)(o.Gauge,{size:14}),"Benchmark"]})}),(0,t.jsxs)(d.Button,{variant:"danger",size:"sm",onClick:()=>N(!0),disabled:M,children:[(0,t.jsx)(m.Square,{size:14}),M?"Stopping…":"Stop"]})]})]})]}),(0,t.jsx)(p.AlertDialog,{open:z,onOpenChange:N,title:"Stop this workload?",description:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"block font-mono",children:T}),(0,t.jsxs)("span",{className:"mt-2 block",children:["The container will be terminated on ",e.host??"the target host","."]})]}),confirmLabel:"Stop",destructive:!0,onConfirm:()=>{_(async()=>{try{await n.rpc.workloads.stop({clusterId:e.cluster_id}),g.toast.success("Stop requested",`${T} is shutting down`)}catch(t){let e=t instanceof Error?t.message:"Unknown error";g.toast.error("Stop failed",e)}})}}),a&&B&&(0,t.jsx)(b.RecipeShowDialog,{name:B,title:a.label,open:w,onOpenChange:e=>!e&&C(!1),showLaunch:!1})]})}function j({health:e,containerStatus:s}){return e.ready?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-500"}),(0,t.jsx)("span",{className:"text-zinc-700 dark:text-zinc-300",children:"Ready"})]}):"loading"===e.state?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(h.Loader2,{size:10,className:"animate-spin text-zinc-400"}),(0,t.jsx)("span",{className:"text-zinc-500 capitalize dark:text-zinc-400",children:s??"Checking…"})]}):"starting"===e.state?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(h.Loader2,{size:10,className:"animate-spin text-amber-500"}),(0,t.jsx)("span",{className:"text-amber-700 dark:text-amber-300",children:"Starting…"})]}):(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-red-500"}),(0,t.jsx)("span",{className:"text-red-700 dark:text-red-300",title:e.reason??void 0,children:"Unreachable"})]})}var y=e.i(14779),v=e.i(73424),z=e.i(38540),N=e.i(74799),w=e.i(98638);function C(e){if(!e)return 0;let t=parseFloat(e);return Number.isFinite(t)?t:0}function M(e){if(!e)return{hostCount:0,cpuAvg:0,gpuAvg:0,memUsedGb:0,memTotalGb:0,gpuMemUsedGb:0,gpuMemTotalGb:0,powerW:0,cpuTempC:0,gpuTempC:0,jobsTotal:0};let t=Object.values(e.hosts),s=0,r=0,a=0,i=0,n=0,l=0,c=0,d=0,o=0,x=0;for(let e of t)s+=C(e.cpu_usage_pct),r+=C(e.gpu_util_pct),a+=C(e.mem_used_mb),i+=C(e.mem_total_mb),n+=C(e.gpu_mem_used_mb),l+=C(e.gpu_mem_total_mb),c+=C(e.gpu_power_w),d+=C(e.cpu_temp_c),o+=C(e.gpu_temp_c),x+=C(e.sparkrun_jobs);let m=t.length||1;return{hostCount:t.length,cpuAvg:s/m,gpuAvg:r/m,memUsedGb:a/1024,memTotalGb:i/1024,gpuMemUsedGb:n/1024,gpuMemTotalGb:l/1024,powerW:c,cpuTempC:d/m,gpuTempC:o/m,jobsTotal:x}}function _(){let[e,r]=(0,s.useState)(null),[a,i]=(0,s.useState)({cpu:[],gpu:[]}),[c,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{let s=await n.rpc.monitor.stream({intervalSec:2},{signal:e.signal});for await(let e of(d(!0),s)){if(t)break;r(e);let s=M(e);i(e=>({cpu:S(e.cpu,s.cpuAvg),gpu:S(e.gpu,s.gpuAvg)}))}}catch(e){t||e instanceof DOMException&&"AbortError"===e.name||console.error("[monitor.stream]",e)}finally{t||d(!1)}})(),()=>{t=!0,e.abort()}},[]);let o=M(e),x=o.memTotalGb?o.memUsedGb/o.memTotalGb*100:0,m=o.gpuMemTotalGb?o.gpuMemUsedGb/o.gpuMemTotalGb*100:0;return(0,t.jsx)(l.Card,{children:(0,t.jsxs)(l.CardBody,{className:"p-5",children:[(0,t.jsxs)("div",{className:"mb-4 flex items-baseline justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(z.Server,{size:14,className:"text-zinc-500"}),(0,t.jsx)("span",{className:"text-sm font-medium text-zinc-700 dark:text-zinc-300",children:"Cluster overview"}),(0,t.jsxs)("span",{className:"text-xs text-zinc-500",children:["· ",o.hostCount||"—"," host",1===o.hostCount?"":"s"," · ",o.jobsTotal," job",1===o.jobsTotal?"":"s"]})]}),(0,t.jsx)("span",{className:"inline-flex h-2 w-2 rounded-full "+(c?"animate-pulse bg-emerald-500":"bg-zinc-300"),title:c?"live":"reconnecting"})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-5",children:[(0,t.jsx)($,{icon:(0,t.jsx)(y.Cpu,{size:14}),tone:"sky",label:"CPU",value:`${o.cpuAvg.toFixed(1)}%`,sub:`avg across ${o.hostCount||0}`,pct:o.cpuAvg,spark:a.cpu}),(0,t.jsx)($,{icon:(0,t.jsx)(w.Zap,{size:14}),tone:"purple",label:"GPU",value:`${o.gpuAvg.toFixed(0)}%`,sub:`avg across ${o.hostCount||0}`,pct:o.gpuAvg,spark:a.gpu}),(0,t.jsx)($,{icon:(0,t.jsx)(v.MemoryStick,{size:14}),tone:"green",label:"Memory",value:`${o.memUsedGb.toFixed(0)} / ${o.memTotalGb.toFixed(0)} GB`,sub:`${x.toFixed(0)}% used`,pct:x}),(0,t.jsx)($,{icon:(0,t.jsx)(w.Zap,{size:14}),tone:"amber",label:"Power",value:`${o.powerW.toFixed(1)} W`,sub:o.gpuMemTotalGb?`GPU mem ${o.gpuMemUsedGb.toFixed(0)}/${o.gpuMemTotalGb.toFixed(0)} GB`:"total GPU draw",pct:m}),(0,t.jsx)($,{icon:(0,t.jsx)(N.Thermometer,{size:14}),tone:"red",label:"Temps",value:o.cpuTempC||o.gpuTempC?`${o.gpuTempC.toFixed(0)}\xb0C / ${o.cpuTempC.toFixed(0)}\xb0C`:"—",sub:"GPU / CPU avg",pct:o.gpuTempC>0?Math.min(100,o.gpuTempC/100*100):0})]})]})})}function S(e,t){let s=e.concat(t);return s.length>40?s.slice(-40):s}let T={sky:"bg-sky-500 dark:bg-sky-400",purple:"bg-purple-500 dark:bg-purple-400",green:"bg-emerald-500 dark:bg-emerald-400",amber:"bg-amber-500 dark:bg-amber-400",red:"bg-red-500 dark:bg-red-400"},G={sky:"stroke-sky-500 dark:stroke-sky-400",purple:"stroke-purple-500 dark:stroke-purple-400",green:"stroke-emerald-500 dark:stroke-emerald-400",amber:"stroke-amber-500 dark:stroke-amber-400"},B={sky:"text-sky-600 dark:text-sky-400",purple:"text-purple-600 dark:text-purple-400",green:"text-emerald-600 dark:text-emerald-400",amber:"text-amber-600 dark:text-amber-400",red:"text-red-600 dark:text-red-400"};function $({icon:e,label:s,value:r,sub:a,pct:i,tone:n,spark:l}){let c=Math.max(0,Math.min(100,i));return(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:`flex items-center gap-1.5 text-xs font-medium ${B[n]}`,children:[e,s]}),l&&l.length>2&&(0,t.jsx)(U,{values:l,className:G[n]})]}),(0,t.jsx)("div",{className:"font-mono text-xl font-semibold text-zinc-900 dark:text-zinc-100",children:r}),(0,t.jsx)("div",{className:"h-1.5 overflow-hidden rounded bg-zinc-100 dark:bg-zinc-800",children:(0,t.jsx)("div",{className:`${T[n]} h-full transition-all duration-300`,style:{width:`${c}%`}})}),(0,t.jsx)("div",{className:"text-[11px] text-zinc-500 dark:text-zinc-400",children:a})]})}function U({values:e,className:s}){let r=Math.max(100,...e),a=56/Math.max(1,e.length-1),i=e.map((e,t)=>`${0===t?"M":"L"} ${t*a} ${16-e/r*16}`).join(" ");return(0,t.jsx)("svg",{width:56,height:16,viewBox:"0 0 56 16",className:"flex-shrink-0",children:(0,t.jsx)("path",{d:i,fill:"none",strokeWidth:1.25,className:s})})}e.s(["DashboardLive",0,function({initial:e,recipeByCluster:o}){let[x,m]=(0,s.useState)(e),[u,h]=(0,s.useState)(!0);return(0,s.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{for await(let s of(await n.rpc.status.stream({intervalMs:3e3},{signal:e.signal}))){if(t)break;m(s),h(!0)}}catch(e){t||h(!1),e instanceof DOMException&&"AbortError"===e.name||console.error("[status.stream]",e)}})(),()=>{t=!0,e.abort()}},[]),(0,t.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex items-baseline justify-between",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Dashboard"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsxs)(c.Badge,{tone:"sky",children:[x.host_count," host",1===x.host_count?"":"s"]}),(0,t.jsxs)(c.Badge,{tone:"green",children:[x.total_containers," running"]}),(0,t.jsx)(c.Badge,{tone:u?"neutral":"amber",children:u?"live":"reconnecting…"})]})]}),(0,t.jsx)(_,{}),Object.keys(x.errors).length>0&&(0,t.jsx)(l.Card,{className:"border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950/40",children:(0,t.jsxs)(l.CardBody,{className:"flex gap-3",children:[(0,t.jsx)(a.AlertTriangle,{className:"mt-0.5 shrink-0 text-amber-600 dark:text-amber-400",size:18}),(0,t.jsxs)("div",{className:"flex flex-col gap-1 text-sm",children:[(0,t.jsx)("h3",{className:"font-medium text-amber-900 dark:text-amber-200",children:"Cluster status reported errors"}),(0,t.jsx)("ul",{className:"flex flex-col gap-1 text-amber-800 dark:text-amber-300",children:Object.entries(x.errors).map(([e,s])=>(0,t.jsxs)("li",{className:"font-mono text-xs",children:[(0,t.jsxs)("span",{className:"font-semibold",children:[e,":"]})," ","string"==typeof s?s:s&&"object"==typeof s&&"message"in s?String(s.message):JSON.stringify(s)]},e))})]})]})}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsx)("h2",{className:"text-sm font-medium text-zinc-700 dark:text-zinc-300",children:"Workloads"}),0===x.solo_entries.length?(0,t.jsx)(l.Card,{children:(0,t.jsxs)(l.CardBody,{className:"flex flex-col items-center gap-4 py-12 text-center",children:[(0,t.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-full bg-sky-50 text-sky-600 dark:bg-sky-950 dark:text-sky-400",children:(0,t.jsx)(i.Rocket,{size:22})}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("h3",{className:"text-base font-semibold text-zinc-900 dark:text-zinc-100",children:"No workloads running"}),(0,t.jsx)("p",{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"Launch a recipe to start an inference workload on your cluster."})]}),(0,t.jsx)(r.default,{href:"/launch",children:(0,t.jsxs)(d.Button,{variant:"primary",children:[(0,t.jsx)(i.Rocket,{size:14}),"Launch a recipe"]})})]})}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-2",children:x.solo_entries.map(e=>(0,t.jsx)(f,{workload:e,recipe:o.get(e.cluster_id)},e.cluster_id))})]})]})}],60632)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2265,e=>{"use strict";var t=e.i(76350),r=e.i(33209);e.s(["Card",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("rounded-lg border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900",e),...s})},"CardBody",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("px-5 py-4",e),...s})},"CardDescription",0,function({className:e,...s}){return(0,t.jsx)("p",{className:(0,r.cn)("text-sm text-zinc-500 dark:text-zinc-400",e),...s})},"CardFooter",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("flex items-center justify-end gap-2 border-t border-zinc-200 px-5 py-3 dark:border-zinc-800",e),...s})},"CardHeader",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("flex flex-col gap-1 border-b border-zinc-200 px-5 py-4 dark:border-zinc-800",e),...s})},"CardTitle",0,function({className:e,...s}){return(0,t.jsx)("h3",{className:(0,r.cn)("text-base font-semibold text-zinc-900 dark:text-zinc-100",e),...s})}])},69393,e=>{"use strict";var t=e.i(76350),r=e.i(33209);let s={neutral:"bg-zinc-100 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",sky:"bg-sky-100 text-sky-700 dark:bg-sky-950 dark:text-sky-300",green:"bg-emerald-100 text-emerald-700 dark:bg-emerald-950 dark:text-emerald-300",amber:"bg-amber-100 text-amber-700 dark:bg-amber-950 dark:text-amber-300",red:"bg-red-100 text-red-700 dark:bg-red-950 dark:text-red-300",purple:"bg-purple-100 text-purple-700 dark:bg-purple-950 dark:text-purple-300"};e.s(["Badge",0,function({tone:e="neutral",className:a,...n}){return(0,t.jsx)("span",{className:(0,r.cn)("inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium",s[e],a),...n})}])},14779,73424,38540,e=>{"use strict";var t=e.i(6927);let r=(0,t.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);e.s(["Cpu",0,r],14779);let s=(0,t.default)("memory-stick",[["path",{d:"M12 12v-2",key:"fwoke6"}],["path",{d:"M12 18v-2",key:"qj6yno"}],["path",{d:"M16 12v-2",key:"heuere"}],["path",{d:"M16 18v-2",key:"s1ct0w"}],["path",{d:"M2 11h1.5",key:"15p63e"}],["path",{d:"M20 18v-2",key:"12ehxp"}],["path",{d:"M20.5 11H22",key:"khsy7a"}],["path",{d:"M4 18v-2",key:"1c3oqr"}],["path",{d:"M8 12v-2",key:"1mwtfd"}],["path",{d:"M8 18v-2",key:"qcmpov"}],["rect",{x:"2",y:"6",width:"20",height:"10",rx:"2",key:"1qcswk"}]]);e.s(["MemoryStick",0,s],73424);let a=(0,t.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);e.s(["Server",0,a],38540)},40277,e=>{"use strict";var t=e.i(76350),r=e.i(73576),s=e.i(2265),a=e.i(69393),n=e.i(21432),i=e.i(14779),l=e.i(73424),c=e.i(38540),d=e.i(98638);function o(e){if(null==e||""===e)return null;let t=parseFloat(e);return Number.isFinite(t)?t:null}function x({host:e,metrics:r,history:n}){let p=o(r.cpu_usage_pct)??0,m=o(r.gpu_util_pct)??0,h=o(r.mem_used_mb)??0,g=o(r.mem_total_mb)??1,k=o(r.gpu_mem_used_mb),y=o(r.gpu_mem_total_mb),b=null!=k&&y?k/y*100:null,f=o(r.cpu_temp_c),j=o(r.gpu_temp_c),v=o(r.gpu_power_w);return(0,t.jsxs)(s.Card,{children:[(0,t.jsxs)(s.CardHeader,{children:[(0,t.jsxs)(s.CardTitle,{className:"flex items-center gap-2",children:[(0,t.jsx)(c.Server,{size:16,className:"text-zinc-500"}),e]}),(0,t.jsxs)(s.CardDescription,{children:[r.hostname," · ",r.gpu_name??"—"]})]}),(0,t.jsxs)(s.CardBody,{className:"flex flex-col gap-3",children:[(0,t.jsx)(u,{label:"CPU",pct:p,history:n.cpu,icon:(0,t.jsx)(i.Cpu,{size:14}),tone:"sky",right:null!=f&&`${f.toFixed(1)}\xb0C`}),(0,t.jsx)(u,{label:"GPU",pct:m,history:n.gpu,icon:(0,t.jsx)(d.Zap,{size:14}),tone:"purple",right:null!=j&&`${j.toFixed(0)}\xb0C`}),(0,t.jsx)(u,{label:"Memory",pct:h/g*100,history:n.mem,icon:(0,t.jsx)(l.MemoryStick,{size:14}),tone:"green",right:`${(h/1024).toFixed(1)}/${(g/1024).toFixed(0)} GB`}),null!=b&&(0,t.jsx)(u,{label:"GPU memory",pct:b,history:[],icon:(0,t.jsx)(d.Zap,{size:14}),tone:"amber",right:null!=k&&y?`${(k/1024).toFixed(1)}/${(y/1024).toFixed(0)} GB`:null}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 pt-1 text-xs text-zinc-500 dark:text-zinc-400",children:[null!=v&&(0,t.jsxs)(a.Badge,{tone:"neutral",children:[v.toFixed(1)," W"]}),r.sparkrun_jobs&&"0"!==r.sparkrun_jobs&&(0,t.jsxs)(a.Badge,{tone:"sky",children:[r.sparkrun_jobs," job","1"===r.sparkrun_jobs?"":"s"]})]})]})]})}let p={sky:"text-sky-500 dark:text-sky-400",purple:"text-purple-500 dark:text-purple-400",green:"text-emerald-500 dark:text-emerald-400",amber:"text-amber-500 dark:text-amber-400"};function u({label:e,pct:r,history:s,icon:a,tone:n,right:i}){let l=Math.max(0,Math.min(100,r));return(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5 text-zinc-700 dark:text-zinc-300",children:[a,e]}),(0,t.jsxs)("span",{className:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400",children:[i,(0,t.jsxs)("span",{className:"font-mono text-zinc-700 dark:text-zinc-200",children:[l.toFixed(0),"%"]})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"h-2 flex-1 overflow-hidden rounded bg-zinc-200 dark:bg-zinc-800",children:(0,t.jsx)("div",{className:"h-full transition-all duration-300 "+("sky"===n?"bg-sky-500 dark:bg-sky-400":"purple"===n?"bg-purple-500 dark:bg-purple-400":"green"===n?"bg-emerald-500 dark:bg-emerald-400":"bg-amber-500 dark:bg-amber-400"),style:{width:`${l}%`}})}),s.length>2&&(0,t.jsx)(m,{values:s,className:p[n]})]})]})}function m({values:e,className:r}){if(e.length<2)return null;let s=Math.max(100,...e),a=80/Math.max(1,e.length-1),n=e.map((e,t)=>`${t*a},${16-e/s*16}`),i=(e.length-1)*a,l=`M 0,16 L ${n.join(" L ")} L ${i},16 Z`,c=`M ${n.join(" L ")}`;return(0,t.jsxs)("svg",{width:80,height:16,viewBox:"0 0 80 16",className:`flex-shrink-0 ${r}`,children:[(0,t.jsx)("path",{d:l,fill:"currentColor",stroke:"none",opacity:.35}),(0,t.jsx)("path",{d:c,fill:"none",stroke:"currentColor",strokeWidth:1})]})}function h(e){if(null==e||""===e)return 0;let t=parseFloat(e);return Number.isFinite(t)?t:0}function g(e,t){let r=e.concat(t);return r.length>30?r.slice(-30):r}e.s(["MonitorLive",0,function(){let[e,i]=(0,r.useState)(null),[l,c]=(0,r.useState)({}),[d,o]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{let r=await n.rpc.monitor.stream({intervalSec:2},{signal:e.signal});for await(let e of(o(!0),r)){if(t)break;i(e),c(t=>{let r={...t};for(let[t,s]of Object.entries(e.hosts)){let e=r[t]??{cpu:[],gpu:[],mem:[],power:[]};r[t]={cpu:g(e.cpu,h(s.cpu_usage_pct)),gpu:g(e.gpu,h(s.gpu_util_pct)),mem:g(e.mem,h(s.mem_used_pct)),power:g(e.power,h(s.gpu_power_w))}}return r})}}catch(e){t||e instanceof DOMException&&"AbortError"===e.name||console.error("[monitor.stream]",e)}finally{t||o(!1)}})(),()=>{t=!0,e.abort()}},[]);let p=e?Object.entries(e.hosts):[];return(0,t.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex items-baseline justify-between",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Cluster monitor"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(a.Badge,{tone:d?"green":"amber",children:d?"live":"reconnecting…"}),e&&(0,t.jsxs)(a.Badge,{tone:"neutral",children:[p.length," host",1===p.length?"":"s"]})]})]}),e?(0,t.jsx)("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-2 xl:grid-cols-3",children:p.map(([e,r])=>(0,t.jsx)(x,{host:e,metrics:r,history:l[e]??{cpu:[],gpu:[],mem:[],power:[]}},e))}):(0,t.jsx)(s.Card,{children:(0,t.jsx)(s.CardBody,{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"Waiting for first monitor sample…"})})]})}],40277)}]);
|
package/dist/package.json
CHANGED
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2265,e=>{"use strict";var t=e.i(76350),s=e.i(33209);e.s(["Card",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("rounded-lg border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900",e),...r})},"CardBody",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("px-5 py-4",e),...r})},"CardDescription",0,function({className:e,...r}){return(0,t.jsx)("p",{className:(0,s.cn)("text-sm text-zinc-500 dark:text-zinc-400",e),...r})},"CardFooter",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("flex items-center justify-end gap-2 border-t border-zinc-200 px-5 py-3 dark:border-zinc-800",e),...r})},"CardHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,s.cn)("flex flex-col gap-1 border-b border-zinc-200 px-5 py-4 dark:border-zinc-800",e),...r})},"CardTitle",0,function({className:e,...r}){return(0,t.jsx)("h3",{className:(0,s.cn)("text-base font-semibold text-zinc-900 dark:text-zinc-100",e),...r})}])},69393,e=>{"use strict";var t=e.i(76350),s=e.i(33209);let r={neutral:"bg-zinc-100 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",sky:"bg-sky-100 text-sky-700 dark:bg-sky-950 dark:text-sky-300",green:"bg-emerald-100 text-emerald-700 dark:bg-emerald-950 dark:text-emerald-300",amber:"bg-amber-100 text-amber-700 dark:bg-amber-950 dark:text-amber-300",red:"bg-red-100 text-red-700 dark:bg-red-950 dark:text-red-300",purple:"bg-purple-100 text-purple-700 dark:bg-purple-950 dark:text-purple-300"};e.s(["Badge",0,function({tone:e="neutral",className:a,...i}){return(0,t.jsx)("span",{className:(0,s.cn)("inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium",r[e],a),...i})}])},81807,e=>{"use strict";let t=(0,e.i(6927).default)("scroll-text",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]);e.s(["ScrollText",0,t],81807)},84339,e=>{"use strict";let t=(0,e.i(6927).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",0,t],84339)},83079,e=>{"use strict";var t=e.i(76350),s=e.i(73576),r=e.i(33209);let a={primary:"bg-sky-600 text-white hover:bg-sky-500 active:bg-sky-700 dark:bg-sky-500 dark:hover:bg-sky-400",secondary:"bg-zinc-100 text-zinc-900 hover:bg-zinc-200 active:bg-zinc-300 dark:bg-zinc-800 dark:text-zinc-100 dark:hover:bg-zinc-700 dark:active:bg-zinc-600 border border-zinc-200 dark:border-zinc-700",ghost:"text-zinc-700 hover:bg-zinc-100 active:bg-zinc-200 dark:text-zinc-300 dark:hover:bg-zinc-800 dark:active:bg-zinc-700",danger:"bg-red-600 text-white hover:bg-red-500 active:bg-red-700 dark:bg-red-500 dark:hover:bg-red-400",success:"bg-emerald-600 text-white hover:bg-emerald-500 active:bg-emerald-700 dark:bg-emerald-500 dark:hover:bg-emerald-400"},i={sm:"h-8 px-3 text-sm",md:"h-9 px-4 text-sm",lg:"h-10 px-5 text-base"},n=s.forwardRef(function({variant:e="secondary",size:s="md",className:n,...l},c){return(0,t.jsx)("button",{ref:c,className:(0,r.cn)("inline-flex items-center justify-center gap-2 rounded-md font-medium transition-colors cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-zinc-50 dark:focus-visible:ring-offset-zinc-950 focus-visible:ring-sky-500 disabled:opacity-50 disabled:cursor-not-allowed",a[e],i[s],n),...l})});e.s(["Button",0,n])},63825,e=>{"use strict";let t=(0,e.i(6927).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,t],63825)},44501,30650,e=>{"use strict";let t=(0,e.i(6927).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",0,t],44501);var s=e.i(73576),r=e.i(21432);e.s(["useWorkloadHealth",0,function(e){let[t,a]=(0,s.useState)(null),[i,n]=(0,s.useState)(e);return e!==i&&(n(e),a(null)),(0,s.useEffect)(()=>{if(!e)return;let t=!1,s=new AbortController,i=async()=>{try{let i=await r.rpc.workloads.health({clusterId:e},{signal:s.signal});t||a(i)}catch{}};i();let n=setInterval(i,5e3);return()=>{t=!0,s.abort(),clearInterval(n)}},[e]),t??{ready:!1,state:"loading"}}],30650)},14779,38540,e=>{"use strict";var t=e.i(6927);let s=(0,t.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);e.s(["Cpu",0,s],14779);let r=(0,t.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);e.s(["Server",0,r],38540)},66399,e=>{"use strict";var t=e.i(76350),s=e.i(73576),r=e.i(55367),a=e.i(84339),i=e.i(64477),n=e.i(82088),l=e.i(83079),c=e.i(69393),d=e.i(31307),o=e.i(21432);let x=new Map;e.s(["RecipeShowDialog",0,function({name:e,title:m,open:u,onOpenChange:h,running:p=!1,showLaunch:g=!0}){let[b,k]=(0,s.useState)(()=>x.get(e)??null),[f,j]=(0,s.useState)(null),[y,v]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{if(!u)return;let t=x.get(e);if(t)return void k(t);let s=!1;return v(!0),j(null),o.rpc.recipes.show({name:e}).then(t=>{s||(x.set(e,t.text),k(t.text))}).catch(e=>{s||j(e instanceof Error?e.message:String(e))}).finally(()=>{s||v(!1)}),()=>{s=!0}},[u,e]),(0,t.jsx)(n.Dialog,{open:u,onOpenChange:h,children:(0,t.jsxs)(n.Dialog.Content,{title:m??e,size:"xl",description:"sparkrun recipe show",children:[(0,t.jsx)(n.Dialog.Body,{children:y&&!b?(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-zinc-500",children:[(0,t.jsx)(a.Loader2,{size:14,className:"animate-spin"})," loading…"]}):f?(0,t.jsx)("p",{className:"text-sm text-red-600 dark:text-red-400",children:f}):b?(0,t.jsx)(d.YamlEditor,{value:b,readOnly:!0,className:"max-h-[60vh]"}):null}),(0,t.jsxs)(n.Dialog.Footer,{children:[(0,t.jsx)(n.Dialog.Close,{render:(0,t.jsx)(l.Button,{variant:"ghost",type:"button",children:"Close"})}),p?(0,t.jsx)(c.Badge,{tone:"green",children:"already running"}):g?(0,t.jsx)(r.default,{href:`/launch?recipe=${encodeURIComponent(e)}`,children:(0,t.jsxs)(l.Button,{variant:"primary",children:[(0,t.jsx)(i.Rocket,{size:14}),"Launch"]})}):null]})]})})}])},60632,e=>{"use strict";var t=e.i(76350),s=e.i(73576),r=e.i(55367),a=e.i(63825),i=e.i(64477),n=e.i(21432),l=e.i(2265),c=e.i(69393),d=e.i(83079),o=e.i(75261),x=e.i(4403),m=e.i(44501),u=e.i(81807),h=e.i(84339),p=e.i(82088),g=e.i(84538),b=e.i(66399),k=e.i(30650);function f({workload:e,recipe:a}){var i,c,h;let y,v,[z,N]=(0,s.useState)(!1),[w,C]=(0,s.useState)(!1),[M,_]=(0,s.useTransition)(),T=(0,k.useWorkloadHealth)(e.cluster_id),S=e.meta.model||e.meta.recipe||e.cluster_id,G=function(e){if(!e)return null;let t=e.match(/^Up\s+(.+?)(?:\s*\([^)]*\))?\s*$/);return t?.[1]??null}(e.status),B=a?.registeredName??e.meta.recipe;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(l.Card,{children:[(0,t.jsx)(l.CardHeader,{children:(0,t.jsx)(l.CardTitle,{className:"text-sm font-semibold",children:S})}),(0,t.jsxs)(l.CardBody,{className:"flex flex-col gap-3 text-sm",children:[(0,t.jsxs)("dl",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-xs",children:[a&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Recipe"}),(0,t.jsx)("dd",{children:B?(0,t.jsx)("button",{type:"button",onClick:()=>C(!0),className:"cursor-pointer font-medium text-sky-600 hover:underline dark:text-sky-400",children:a.label}):(0,t.jsx)("span",{className:"font-medium text-zinc-700 dark:text-zinc-300",children:a.label})})]}),e.meta.port&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Port"}),(0,t.jsx)("dd",{className:"font-mono text-zinc-700 dark:text-zinc-300",children:e.meta.port})]}),e.host&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Host"}),(0,t.jsx)("dd",{className:"font-mono text-zinc-700 dark:text-zinc-300",children:e.host})]}),G&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Uptime"}),(0,t.jsx)("dd",{className:"text-zinc-700 dark:text-zinc-300",children:G})]}),(0,t.jsx)("dt",{className:"text-zinc-500 dark:text-zinc-400",children:"Status"}),(0,t.jsx)("dd",{children:(0,t.jsx)(j,{health:T,containerStatus:e.status})})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 pt-2",children:[e.host&&e.meta.port&&(0,t.jsx)(r.default,{href:`/chat?clusterId=${encodeURIComponent(e.cluster_id)}`,children:(0,t.jsxs)(d.Button,{variant:"ghost",size:"sm",children:[(0,t.jsx)(x.MessageSquare,{size:14}),"Chat"]})}),(0,t.jsx)(r.default,{href:`/logs/${e.cluster_id}`,children:(0,t.jsxs)(d.Button,{variant:"ghost",size:"sm",children:[(0,t.jsx)(u.ScrollText,{size:14}),"Logs"]})}),(0,t.jsx)(r.default,{href:(i=a,c=e.meta.model,h=function(e){let t=e?.overrides,s=t?.served_model_name;if("string"==typeof s&&s)return s;let r=e?.recipe_state,a=r?._applied_overrides,i=a?.served_model_name;if("string"==typeof i&&i)return i;let n=r?._raw,l=n?.defaults,c=l?.served_model_name;if("string"==typeof c&&c)return c}(e.meta),y=i?.registeredName??i?.label,v=new URLSearchParams,y&&v.set("recipe",y),c&&v.set("model",c),h&&v.set("servedModelName",h),v.set("skipRun","1"),`/benchmarks/new?${v.toString()}`),children:(0,t.jsxs)(d.Button,{variant:"ghost",size:"sm",children:[(0,t.jsx)(o.Gauge,{size:14}),"Benchmark"]})}),(0,t.jsxs)(d.Button,{variant:"danger",size:"sm",onClick:()=>N(!0),disabled:M,children:[(0,t.jsx)(m.Square,{size:14}),M?"Stopping…":"Stop"]})]})]})]}),(0,t.jsx)(p.AlertDialog,{open:z,onOpenChange:N,title:"Stop this workload?",description:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"block font-mono",children:S}),(0,t.jsxs)("span",{className:"mt-2 block",children:["The container will be terminated on ",e.host??"the target host","."]})]}),confirmLabel:"Stop",destructive:!0,onConfirm:()=>{_(async()=>{try{await n.rpc.workloads.stop({clusterId:e.cluster_id}),g.toast.success("Stop requested",`${S} is shutting down`)}catch(t){let e=t instanceof Error?t.message:"Unknown error";g.toast.error("Stop failed",e)}})}}),a&&B&&(0,t.jsx)(b.RecipeShowDialog,{name:B,title:a.label,open:w,onOpenChange:e=>!e&&C(!1),showLaunch:!1})]})}function j({health:e,containerStatus:s}){return e.ready?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-500"}),(0,t.jsx)("span",{className:"text-zinc-700 dark:text-zinc-300",children:"Ready"})]}):"loading"===e.state?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(h.Loader2,{size:10,className:"animate-spin text-zinc-400"}),(0,t.jsx)("span",{className:"text-zinc-500 capitalize dark:text-zinc-400",children:s??"Checking…"})]}):"starting"===e.state?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(h.Loader2,{size:10,className:"animate-spin text-amber-500"}),(0,t.jsx)("span",{className:"text-amber-700 dark:text-amber-300",children:"Starting…"})]}):(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-red-500"}),(0,t.jsx)("span",{className:"text-red-700 dark:text-red-300",title:e.reason??void 0,children:"Unreachable"})]})}var y=e.i(14779);let v=(0,e.i(6927).default)("memory-stick",[["path",{d:"M12 12v-2",key:"fwoke6"}],["path",{d:"M12 18v-2",key:"qj6yno"}],["path",{d:"M16 12v-2",key:"heuere"}],["path",{d:"M16 18v-2",key:"s1ct0w"}],["path",{d:"M2 11h1.5",key:"15p63e"}],["path",{d:"M20 18v-2",key:"12ehxp"}],["path",{d:"M20.5 11H22",key:"khsy7a"}],["path",{d:"M4 18v-2",key:"1c3oqr"}],["path",{d:"M8 12v-2",key:"1mwtfd"}],["path",{d:"M8 18v-2",key:"qcmpov"}],["rect",{x:"2",y:"6",width:"20",height:"10",rx:"2",key:"1qcswk"}]]);var z=e.i(38540),N=e.i(74799),w=e.i(98638);function C(e){if(!e)return 0;let t=parseFloat(e);return Number.isFinite(t)?t:0}function M(e){if(!e)return{hostCount:0,cpuAvg:0,gpuAvg:0,memUsedGb:0,memTotalGb:0,gpuMemUsedGb:0,gpuMemTotalGb:0,powerW:0,cpuTempC:0,gpuTempC:0,jobsTotal:0};let t=Object.values(e.hosts),s=0,r=0,a=0,i=0,n=0,l=0,c=0,d=0,o=0,x=0;for(let e of t)s+=C(e.cpu_usage_pct),r+=C(e.gpu_util_pct),a+=C(e.mem_used_mb),i+=C(e.mem_total_mb),n+=C(e.gpu_mem_used_mb),l+=C(e.gpu_mem_total_mb),c+=C(e.gpu_power_w),d+=C(e.cpu_temp_c),o+=C(e.gpu_temp_c),x+=C(e.sparkrun_jobs);let m=t.length||1;return{hostCount:t.length,cpuAvg:s/m,gpuAvg:r/m,memUsedGb:a/1024,memTotalGb:i/1024,gpuMemUsedGb:n/1024,gpuMemTotalGb:l/1024,powerW:c,cpuTempC:d/m,gpuTempC:o/m,jobsTotal:x}}function _(){let[e,r]=(0,s.useState)(null),[a,i]=(0,s.useState)({cpu:[],gpu:[]}),[c,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{let s=await n.rpc.monitor.stream({intervalSec:2},{signal:e.signal});for await(let e of(d(!0),s)){if(t)break;r(e);let s=M(e);i(e=>({cpu:T(e.cpu,s.cpuAvg),gpu:T(e.gpu,s.gpuAvg)}))}}catch(e){t||e instanceof DOMException&&"AbortError"===e.name||console.error("[monitor.stream]",e)}finally{t||d(!1)}})(),()=>{t=!0,e.abort()}},[]);let o=M(e),x=o.memTotalGb?o.memUsedGb/o.memTotalGb*100:0,m=o.gpuMemTotalGb?o.gpuMemUsedGb/o.gpuMemTotalGb*100:0;return(0,t.jsx)(l.Card,{children:(0,t.jsxs)(l.CardBody,{className:"p-5",children:[(0,t.jsxs)("div",{className:"mb-4 flex items-baseline justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(z.Server,{size:14,className:"text-zinc-500"}),(0,t.jsx)("span",{className:"text-sm font-medium text-zinc-700 dark:text-zinc-300",children:"Cluster overview"}),(0,t.jsxs)("span",{className:"text-xs text-zinc-500",children:["· ",o.hostCount||"—"," host",1===o.hostCount?"":"s"," · ",o.jobsTotal," job",1===o.jobsTotal?"":"s"]})]}),(0,t.jsx)("span",{className:"inline-flex h-2 w-2 rounded-full "+(c?"animate-pulse bg-emerald-500":"bg-zinc-300"),title:c?"live":"reconnecting"})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-5",children:[(0,t.jsx)($,{icon:(0,t.jsx)(y.Cpu,{size:14}),tone:"sky",label:"CPU",value:`${o.cpuAvg.toFixed(1)}%`,sub:`avg across ${o.hostCount||0}`,pct:o.cpuAvg,spark:a.cpu}),(0,t.jsx)($,{icon:(0,t.jsx)(w.Zap,{size:14}),tone:"purple",label:"GPU",value:`${o.gpuAvg.toFixed(0)}%`,sub:`avg across ${o.hostCount||0}`,pct:o.gpuAvg,spark:a.gpu}),(0,t.jsx)($,{icon:(0,t.jsx)(v,{size:14}),tone:"green",label:"Memory",value:`${o.memUsedGb.toFixed(0)} / ${o.memTotalGb.toFixed(0)} GB`,sub:`${x.toFixed(0)}% used`,pct:x}),(0,t.jsx)($,{icon:(0,t.jsx)(w.Zap,{size:14}),tone:"amber",label:"Power",value:`${o.powerW.toFixed(1)} W`,sub:o.gpuMemTotalGb?`GPU mem ${o.gpuMemUsedGb.toFixed(0)}/${o.gpuMemTotalGb.toFixed(0)} GB`:"total GPU draw",pct:m}),(0,t.jsx)($,{icon:(0,t.jsx)(N.Thermometer,{size:14}),tone:"red",label:"Temps",value:o.cpuTempC||o.gpuTempC?`${o.gpuTempC.toFixed(0)}\xb0C / ${o.cpuTempC.toFixed(0)}\xb0C`:"—",sub:"GPU / CPU avg",pct:o.gpuTempC>0?Math.min(100,o.gpuTempC/100*100):0})]})]})})}function T(e,t){let s=e.concat(t);return s.length>40?s.slice(-40):s}let S={sky:"bg-sky-500 dark:bg-sky-400",purple:"bg-purple-500 dark:bg-purple-400",green:"bg-emerald-500 dark:bg-emerald-400",amber:"bg-amber-500 dark:bg-amber-400",red:"bg-red-500 dark:bg-red-400"},G={sky:"stroke-sky-500 dark:stroke-sky-400",purple:"stroke-purple-500 dark:stroke-purple-400",green:"stroke-emerald-500 dark:stroke-emerald-400",amber:"stroke-amber-500 dark:stroke-amber-400"},B={sky:"text-sky-600 dark:text-sky-400",purple:"text-purple-600 dark:text-purple-400",green:"text-emerald-600 dark:text-emerald-400",amber:"text-amber-600 dark:text-amber-400",red:"text-red-600 dark:text-red-400"};function $({icon:e,label:s,value:r,sub:a,pct:i,tone:n,spark:l}){let c=Math.max(0,Math.min(100,i));return(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:`flex items-center gap-1.5 text-xs font-medium ${B[n]}`,children:[e,s]}),l&&l.length>2&&(0,t.jsx)(U,{values:l,className:G[n]})]}),(0,t.jsx)("div",{className:"font-mono text-xl font-semibold text-zinc-900 dark:text-zinc-100",children:r}),(0,t.jsx)("div",{className:"h-1.5 overflow-hidden rounded bg-zinc-100 dark:bg-zinc-800",children:(0,t.jsx)("div",{className:`${S[n]} h-full transition-all duration-300`,style:{width:`${c}%`}})}),(0,t.jsx)("div",{className:"text-[11px] text-zinc-500 dark:text-zinc-400",children:a})]})}function U({values:e,className:s}){let r=Math.max(100,...e),a=56/Math.max(1,e.length-1),i=e.map((e,t)=>`${0===t?"M":"L"} ${t*a} ${16-e/r*16}`).join(" ");return(0,t.jsx)("svg",{width:56,height:16,viewBox:"0 0 56 16",className:"flex-shrink-0",children:(0,t.jsx)("path",{d:i,fill:"none",strokeWidth:1.25,className:s})})}e.s(["DashboardLive",0,function({initial:e,recipeByCluster:o}){let[x,m]=(0,s.useState)(e),[u,h]=(0,s.useState)(!0);return(0,s.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{for await(let s of(await n.rpc.status.stream({intervalMs:3e3},{signal:e.signal}))){if(t)break;m(s),h(!0)}}catch(e){t||h(!1),e instanceof DOMException&&"AbortError"===e.name||console.error("[status.stream]",e)}})(),()=>{t=!0,e.abort()}},[]),(0,t.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex items-baseline justify-between",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Dashboard"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsxs)(c.Badge,{tone:"sky",children:[x.host_count," host",1===x.host_count?"":"s"]}),(0,t.jsxs)(c.Badge,{tone:"green",children:[x.total_containers," running"]}),(0,t.jsx)(c.Badge,{tone:u?"neutral":"amber",children:u?"live":"reconnecting…"})]})]}),(0,t.jsx)(_,{}),Object.keys(x.errors).length>0&&(0,t.jsx)(l.Card,{className:"border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950/40",children:(0,t.jsxs)(l.CardBody,{className:"flex gap-3",children:[(0,t.jsx)(a.AlertTriangle,{className:"mt-0.5 shrink-0 text-amber-600 dark:text-amber-400",size:18}),(0,t.jsxs)("div",{className:"flex flex-col gap-1 text-sm",children:[(0,t.jsx)("h3",{className:"font-medium text-amber-900 dark:text-amber-200",children:"Cluster status reported errors"}),(0,t.jsx)("ul",{className:"flex flex-col gap-1 text-amber-800 dark:text-amber-300",children:Object.entries(x.errors).map(([e,s])=>(0,t.jsxs)("li",{className:"font-mono text-xs",children:[(0,t.jsxs)("span",{className:"font-semibold",children:[e,":"]})," ","string"==typeof s?s:s&&"object"==typeof s&&"message"in s?String(s.message):JSON.stringify(s)]},e))})]})]})}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsx)("h2",{className:"text-sm font-medium text-zinc-700 dark:text-zinc-300",children:"Workloads"}),0===x.solo_entries.length?(0,t.jsx)(l.Card,{children:(0,t.jsxs)(l.CardBody,{className:"flex flex-col items-center gap-4 py-12 text-center",children:[(0,t.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-full bg-sky-50 text-sky-600 dark:bg-sky-950 dark:text-sky-400",children:(0,t.jsx)(i.Rocket,{size:22})}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("h3",{className:"text-base font-semibold text-zinc-900 dark:text-zinc-100",children:"No workloads running"}),(0,t.jsx)("p",{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"Launch a recipe to start an inference workload on your cluster."})]}),(0,t.jsx)(r.default,{href:"/launch",children:(0,t.jsxs)(d.Button,{variant:"primary",children:[(0,t.jsx)(i.Rocket,{size:14}),"Launch a recipe"]})})]})}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-2",children:x.solo_entries.map(e=>(0,t.jsx)(f,{workload:e,recipe:o.get(e.cluster_id)},e.cluster_id))})]})]})}],60632)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2265,e=>{"use strict";var t=e.i(76350),r=e.i(33209);e.s(["Card",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("rounded-lg border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900",e),...s})},"CardBody",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("px-5 py-4",e),...s})},"CardDescription",0,function({className:e,...s}){return(0,t.jsx)("p",{className:(0,r.cn)("text-sm text-zinc-500 dark:text-zinc-400",e),...s})},"CardFooter",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("flex items-center justify-end gap-2 border-t border-zinc-200 px-5 py-3 dark:border-zinc-800",e),...s})},"CardHeader",0,function({className:e,...s}){return(0,t.jsx)("div",{className:(0,r.cn)("flex flex-col gap-1 border-b border-zinc-200 px-5 py-4 dark:border-zinc-800",e),...s})},"CardTitle",0,function({className:e,...s}){return(0,t.jsx)("h3",{className:(0,r.cn)("text-base font-semibold text-zinc-900 dark:text-zinc-100",e),...s})}])},69393,e=>{"use strict";var t=e.i(76350),r=e.i(33209);let s={neutral:"bg-zinc-100 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",sky:"bg-sky-100 text-sky-700 dark:bg-sky-950 dark:text-sky-300",green:"bg-emerald-100 text-emerald-700 dark:bg-emerald-950 dark:text-emerald-300",amber:"bg-amber-100 text-amber-700 dark:bg-amber-950 dark:text-amber-300",red:"bg-red-100 text-red-700 dark:bg-red-950 dark:text-red-300",purple:"bg-purple-100 text-purple-700 dark:bg-purple-950 dark:text-purple-300"};e.s(["Badge",0,function({tone:e="neutral",className:n,...a}){return(0,t.jsx)("span",{className:(0,r.cn)("inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium",s[e],n),...a})}])},14779,38540,e=>{"use strict";var t=e.i(6927);let r=(0,t.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);e.s(["Cpu",0,r],14779);let s=(0,t.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);e.s(["Server",0,s],38540)},40277,e=>{"use strict";var t=e.i(76350),r=e.i(73576),s=e.i(2265),n=e.i(69393),a=e.i(21432),i=e.i(14779),l=e.i(38540),c=e.i(74799),d=e.i(98638);function o(e){if(null==e||""===e)return null;let t=parseFloat(e);return Number.isFinite(t)?t:null}function x({host:e,metrics:r,history:a}){let u=o(r.cpu_usage_pct)??0,m=o(r.gpu_util_pct)??0,h=o(r.mem_used_mb)??0,g=o(r.mem_total_mb)??1,b=o(r.gpu_mem_used_mb),k=o(r.gpu_mem_total_mb),y=null!=b&&k?b/k*100:null,f=o(r.cpu_temp_c),j=o(r.gpu_temp_c),v=o(r.gpu_power_w);return(0,t.jsxs)(s.Card,{children:[(0,t.jsxs)(s.CardHeader,{children:[(0,t.jsxs)(s.CardTitle,{className:"flex items-center gap-2",children:[(0,t.jsx)(l.Server,{size:16,className:"text-zinc-500"}),e]}),(0,t.jsxs)(s.CardDescription,{children:[r.hostname," · ",r.gpu_name??"—"]})]}),(0,t.jsxs)(s.CardBody,{className:"flex flex-col gap-3",children:[(0,t.jsx)(p,{label:"CPU",pct:u,history:a.cpu,icon:(0,t.jsx)(i.Cpu,{size:14}),tone:"sky",right:null!=f&&`${f.toFixed(1)}\xb0C`}),(0,t.jsx)(p,{label:"GPU",pct:m,history:a.gpu,icon:(0,t.jsx)(d.Zap,{size:14}),tone:"purple",right:null!=j&&`${j.toFixed(0)}\xb0C`}),(0,t.jsx)(p,{label:"Memory",pct:h/g*100,history:a.mem,icon:(0,t.jsx)(c.Thermometer,{size:14}),tone:"green",right:`${(h/1024).toFixed(1)}/${(g/1024).toFixed(0)} GB`}),null!=y&&(0,t.jsx)(p,{label:"GPU memory",pct:y,history:[],icon:(0,t.jsx)(d.Zap,{size:14}),tone:"amber",right:null!=b&&k?`${(b/1024).toFixed(1)}/${(k/1024).toFixed(0)} GB`:null}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 pt-1 text-xs text-zinc-500 dark:text-zinc-400",children:[null!=v&&(0,t.jsxs)(n.Badge,{tone:"neutral",children:[v.toFixed(1)," W"]}),r.sparkrun_jobs&&"0"!==r.sparkrun_jobs&&(0,t.jsxs)(n.Badge,{tone:"sky",children:[r.sparkrun_jobs," job","1"===r.sparkrun_jobs?"":"s"]})]})]})]})}let u={sky:"text-sky-500 dark:text-sky-400",purple:"text-purple-500 dark:text-purple-400",green:"text-emerald-500 dark:text-emerald-400",amber:"text-amber-500 dark:text-amber-400"};function p({label:e,pct:r,history:s,icon:n,tone:a,right:i}){let l=Math.max(0,Math.min(100,r));return(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5 text-zinc-700 dark:text-zinc-300",children:[n,e]}),(0,t.jsxs)("span",{className:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400",children:[i,(0,t.jsxs)("span",{className:"font-mono text-zinc-700 dark:text-zinc-200",children:[l.toFixed(0),"%"]})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"h-2 flex-1 overflow-hidden rounded bg-zinc-200 dark:bg-zinc-800",children:(0,t.jsx)("div",{className:"h-full transition-all duration-300 "+("sky"===a?"bg-sky-500 dark:bg-sky-400":"purple"===a?"bg-purple-500 dark:bg-purple-400":"green"===a?"bg-emerald-500 dark:bg-emerald-400":"bg-amber-500 dark:bg-amber-400"),style:{width:`${l}%`}})}),s.length>2&&(0,t.jsx)(m,{values:s,className:u[a]})]})]})}function m({values:e,className:r}){if(e.length<2)return null;let s=Math.max(100,...e),n=80/Math.max(1,e.length-1),a=e.map((e,t)=>`${t*n},${16-e/s*16}`),i=(e.length-1)*n,l=`M 0,16 L ${a.join(" L ")} L ${i},16 Z`,c=`M ${a.join(" L ")}`;return(0,t.jsxs)("svg",{width:80,height:16,viewBox:"0 0 80 16",className:`flex-shrink-0 ${r}`,children:[(0,t.jsx)("path",{d:l,fill:"currentColor",stroke:"none",opacity:.35}),(0,t.jsx)("path",{d:c,fill:"none",stroke:"currentColor",strokeWidth:1})]})}function h(e){if(null==e||""===e)return 0;let t=parseFloat(e);return Number.isFinite(t)?t:0}function g(e,t){let r=e.concat(t);return r.length>30?r.slice(-30):r}e.s(["MonitorLive",0,function(){let[e,i]=(0,r.useState)(null),[l,c]=(0,r.useState)({}),[d,o]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=new AbortController,t=!1;return(async()=>{try{let r=await a.rpc.monitor.stream({intervalSec:2},{signal:e.signal});for await(let e of(o(!0),r)){if(t)break;i(e),c(t=>{let r={...t};for(let[t,s]of Object.entries(e.hosts)){let e=r[t]??{cpu:[],gpu:[],mem:[],power:[]};r[t]={cpu:g(e.cpu,h(s.cpu_usage_pct)),gpu:g(e.gpu,h(s.gpu_util_pct)),mem:g(e.mem,h(s.mem_used_pct)),power:g(e.power,h(s.gpu_power_w))}}return r})}}catch(e){t||e instanceof DOMException&&"AbortError"===e.name||console.error("[monitor.stream]",e)}finally{t||o(!1)}})(),()=>{t=!0,e.abort()}},[]);let u=e?Object.entries(e.hosts):[];return(0,t.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex items-baseline justify-between",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Cluster monitor"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(n.Badge,{tone:d?"green":"amber",children:d?"live":"reconnecting…"}),e&&(0,t.jsxs)(n.Badge,{tone:"neutral",children:[u.length," host",1===u.length?"":"s"]})]})]}),e?(0,t.jsx)("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-2 xl:grid-cols-3",children:u.map(([e,r])=>(0,t.jsx)(x,{host:e,metrics:r,history:l[e]??{cpu:[],gpu:[],mem:[],power:[]}},e))}):(0,t.jsx)(s.Card,{children:(0,t.jsx)(s.CardBody,{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"Waiting for first monitor sample…"})})]})}],40277)}]);
|
/package/dist/.next/static/{0BbaFq9ofGMo-l5uHDeyi → yM0RLSy5vvlm3M5Wd7gll}/_buildManifest.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|