Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details →
Socket
Book a DemoInstallSign in
Socket

jupyter-resource-usage

Package Overview
Dependencies
Maintainers
8
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

jupyter-resource-usage - npm Package Compare versions

Comparing version
1.1.0
to
1.1.1
doc/kernel-usage-limited-info.png

Sorry, the diff of this file is not supported yet

+1
"use strict";(self.webpackChunk_jupyter_server_resource_usage=self.webpackChunk_jupyter_server_resource_usage||[]).push([[489],{489:(e,t,r)=>{r.r(t),r.d(t,{default:()=>X});var s=r(765),n=r(352),a=r(381),i=r(37),l=r(655),o=r(491),c=r(144),u=r(717),m=r(882),d=r(29),_=r.n(d),h=r(4),p=r(651);const v={B:1,KB:1024,MB:1048576,GB:1073741824,TB:1099511627776,PB:0x4000000000000};function g(e,t){const r=k(e,t);return r[0].toFixed(2)+" "+r[1]}function k(e,t){return e?t&&t in v?[e/v[t],t]:e<v.KB?[e,"B"]:v.KB===e||e<v.MB?[e/v.KB,"KB"]:v.MB===e||e<v.GB?[e/v.MB,"MB"]:v.GB===e||e<v.TB?[e/v.GB,"GB"]:v.TB===e||e<v.PB?[e/v.TB,"TB"]:[e/v.PB,"PB"]:[0,"B"]}let b=null;const y=e=>{const{reason:t}=e;return"not_supported"===t.reason?_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("Please check with your system administrator that you are running IPyKernel version 6.10.0 or above."),t.kernel_version?e.trans.__("Detected IPyKernel version: %1",t.kernel_version):e.trans.__("No IPyKernel installation detected.")):"no_kernel_widget"===t.reason?_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("Switch to a notebook or console to see kernel usage details.")):"no_kernel"===t.reason?_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("No active kernel found.")):_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("Reason: %1.",t.reason))},C=e=>{var t;const{panel:r}=e,[s,n]=(0,d.useState)(),[a,i]=(0,d.useState)(),[l,o]=(0,d.useState)(),[c,u]=(0,d.useState)({reason:"loading"});((e,t)=>{const r=(0,d.useRef)();(0,d.useEffect)((()=>{r.current=e}),[e]),(0,d.useEffect)((()=>{if(null!==t){const e=setInterval((function(){r.current&&r.current()}),t);return()=>{clearInterval(e)}}}),[e,t])})((async()=>{s&&r.isVisible&&v(s).catch((()=>{console.warn(`Request failed for ${s}. Kernel restarting?`)}))}),5e3);const m=(0,d.useRef)(s);m.current=s;const v=e=>async function(e="",t={}){const r=p.ServerConnection.makeSettings(),s=h.URLExt.join(r.baseUrl,"api/metrics/v1/kernel_usage",e);let n;try{n=await p.ServerConnection.makeRequest(s,t,r)}catch(e){throw new p.ServerConnection.NetworkError(e)}let a=await n.text();if(a.length>0)try{a=JSON.parse(a)}catch(e){console.log("Not a JSON response body.",n)}if(!n.ok)throw new p.ServerConnection.ResponseError(n,a.message||a);return a}(`get_usage/${e}`).then((t=>{var r;if(e!==m.current)return;if(null===(r=t.content)||void 0===r?void 0:r.reason){const e=t.content;return void u(e)}u(void 0);const s={...t.content,timestamp:new Date,kernel_id:e};o(s)}));return(0,d.useEffect)((()=>{const t=e=>(t,r)=>{var s,a;const l=null===(s=r.newValue)||void 0===s?void 0:s.id;if(l){n(l);const t=null===(a=null==e?void 0:e.sessionContext.session)||void 0===a?void 0:a.model.path;i(t),v(l)}else u({reason:"no_kernel"}),n(l)},r=(e,r)=>{var a,l,c,m,d;if(null===r)return n(void 0),void u({reason:"no_kernel_widget"});if(b&&b.panel.sessionContext.kernelChanged.disconnect(b.callback),b={callback:t(r),panel:r},r.sessionContext.kernelChanged.connect(b.callback),(null===(l=null===(a=r.sessionContext.session)||void 0===a?void 0:a.kernel)||void 0===l?void 0:l.id)!==s){const e=null===(m=null===(c=r.sessionContext.session)||void 0===c?void 0:c.kernel)||void 0===m?void 0:m.id;if(e){n(e);const t=null===(d=r.sessionContext.session)||void 0===d?void 0:d.model.path;i(t),o(void 0),u({reason:"loading"}),v(e)}else n(void 0),u({reason:"no_kernel"})}};return e.tracker.currentChanged.connect(r),e.tracker.currentWidget&&r(e.tracker,e.tracker.currentWidget),()=>{e.tracker.currentChanged.disconnect(r)}}),[s]),c&&"timeout"!==(null==c?void 0:c.reason)&&"loading"!==(null==c?void 0:c.reason)?_().createElement(_().Fragment,null,_().createElement("h3",{className:"jp-KernelUsage-section-separator"},e.trans.__("Kernel usage not available")),_().createElement(y,{trans:e.trans,reason:c})):s?_().createElement(_().Fragment,null,_().createElement("h3",{className:"jp-KernelUsage-section-separator"},e.trans.__("Kernel usage")),"timeout"===(null==c?void 0:c.reason)?_().createElement("strong",null,e.trans.__("Timed out in: %1 ms",c.timeout_ms)):null,_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Notebook:")," ",a),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Kernel ID:")," ",s),_().createElement("div",{className:"timeout"===(null==c?void 0:c.reason)?"jp-KernelUsage-timedOut":""},l?_().createElement(_().Fragment,null,_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Kernel Host:")," ",l.hostname),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Timestamp:")," ",null===(t=l.timestamp)||void 0===t?void 0:t.toLocaleString()),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Process ID:")," ",l.pid),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("CPU:")," ",l.kernel_cpu),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Memory:")," ",g(l.kernel_memory)),_().createElement("hr",{className:"jp-KernelUsage-section-separator"}),(null==l?void 0:l.host_usage_flag)?_().createElement(_().Fragment,null,_().createElement("h4",{className:"jp-KernelUsage-section-separator"},e.trans.__("Host CPU")),l.host_cpu_percent&&_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans._n("%2%% used on %1 CPU","%2%% used on %1 CPUs",l.cpu_count,l.host_cpu_percent.toFixed(1))),_().createElement("h4",{className:"jp-KernelUsage-section-separator"},e.trans.__("Host Virtual Memory")),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Active:")," ",g(l.host_virtual_memory.active)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Available:")," ",g(l.host_virtual_memory.available)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Free:")," ",g(l.host_virtual_memory.free)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Inactive:")," ",g(l.host_virtual_memory.inactive)),l.host_virtual_memory.percent&&_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Percent used:")," ",l.host_virtual_memory.percent.toFixed(1),"%"),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Total:")," ",g(l.host_virtual_memory.total)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Wired:")," ",g(l.host_virtual_memory.wired))):null):"loading"===(null==c?void 0:c.reason)?_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Loading…")):_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Usage data is missing")))):_().createElement("h3",null,e.trans.__("Kernel usage is missing"))};class f extends n.ReactWidget{constructor(e){super(),this._tracker=e.tracker,this._panel=e.panel,this._trans=e.trans,this.addClass("jp-KernelUsage-content")}render(){return _().createElement(C,{tracker:this._tracker,panel:this._panel,trans:this._trans})}}const E='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\r\n <g class="jp-icon3" fill="#616161">\r\n <path d="m256 43c-141 0-256 115-256 256 0 62 22 118 59 163l6 8h383l6-8c37-44 59-101 59-163-0.1-141-115-256-256-256zm0 43c118 0 213 95 213 213 0 48-17 92-44 128h-339c-27-36-44-80-44-128 0-118 95-213 213-213zm0 21c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm-85 23c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.6-21-21-21zm171 0c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm-233 63c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm290 0.7-121 69c-6.3-3.7-14-6-21-6-24 0-43 19-43 43s19 43 43 43c23 0 42-19 43-42v-0.7l121-69-21-37zm-313 85c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm341 0c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.6-21-21-21zm-319 85c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm296 0c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21z"/>\r\n </g>\r\n</svg>\r\n\x3c!-- Downloaded from https://seekicon.com/free-icon/tachometer-alt_1 under MIT License. --\x3e\r\n';class U extends m.StackedPanel{constructor(e){super(),this.addClass("jp-KernelUsage-view"),this.id="kernelusage-panel-id",this.title.caption=e.trans.__("Kernel Usage"),this.title.icon=new l.LabIcon({name:"jupyterlab-kernel-usage:icon",svgstr:E});const t=new f({tracker:e.tracker,panel:this,trans:e.trans});this.addWidget(t)}dispose(){super.dispose()}onCloseRequest(e){super.onCloseRequest(e),this.dispose()}}var w=r(797),x=r(686);const L=({percentage:e,color:t})=>_().createElement("div",{className:"jp-IndicatorFiller",style:{width:100*e+"%",background:`${t}`}}),j=({values:e,percentage:t,baseColor:r})=>{const[s,n]=(0,d.useState)(!1),a=t>.5?t>.8?"red":"orange":r;return _().createElement("div",{className:"jp-IndicatorBar",onClick:()=>{n(!s)}},s&&_().createElement(x.Sparklines,{data:e,min:0,max:1,limit:e.length,margin:0},_().createElement(x.SparklinesLine,{style:{stroke:a,strokeWidth:4,fill:a,fillOpacity:1}}),_().createElement(x.SparklinesSpots,null)),!s&&_().createElement(L,{percentage:t,color:a}))},K=({enabled:e,values:t,label:r,color:s,text:n})=>{const a=t[t.length-1];return _().createElement(_().Fragment,null,e&&_().createElement("div",{className:"jp-IndicatorContainer"},_().createElement("div",{className:"jp-IndicatorText"},r),null!==a&&_().createElement("div",{className:"jp-IndicatorWrapper"},_().createElement(j,{values:t,percentage:a,baseColor:s})),_().createElement("div",{className:"jp-IndicatorText"},n)))},B="CPU: ",A=({model:e,label:t})=>{const[r,s]=(0,d.useState)(""),[n,a]=(0,d.useState)([]),i=()=>{const{cpuLimit:t,currentCpuPercent:r}=e,n=e.values.map((e=>Math.min(1,e.cpuPercent/(t||1)))),i=`${(100*r).toFixed(0)}%`;s(i),a(n)};return(0,d.useEffect)((()=>(e.stateChanged.connect(i),()=>{e.stateChanged.disconnect(i)})),[e]),_().createElement(K,{enabled:e.cpuAvailable,values:n,label:t,color:"#0072B3",text:r})};var S;!function(e){e.createCpuView=(e,t)=>n.ReactWidget.create(_().createElement(A,{model:e,label:t}))}(S||(S={}));const N="Disk: ",P=({model:e,label:t})=>{const[r,s]=(0,d.useState)(""),[n,a]=(0,d.useState)([]),i=()=>{const{maxDisk:t,currentDisk:r,diskUnits:n}=e,i=["B","KB","MB"].indexOf(n)>0?0:2,l=`${r.toFixed(i)} / ${t.toFixed(i)} ${n}`,o=e.values.map((e=>e.diskPercent));s(l),a(o)};return(0,d.useEffect)((()=>(e.stateChanged.connect(i),()=>{e.stateChanged.disconnect(i)})),[e]),_().createElement(K,{enabled:e.diskAvailable,values:n,label:t,color:"#c27ba0",text:r})};var D;!function(e){e.createDiskView=(e,t)=>n.ReactWidget.create(_().createElement(P,{model:e,label:t}))}(D||(D={}));const M="Mem: ",I=({model:e,label:t})=>{const[r,s]=(0,d.useState)(""),[n,a]=(0,d.useState)([]),i=()=>{const{memoryLimit:t,currentMemory:r,memUnits:n}=e,i=["B","KB","MB","GB"].indexOf(n)>0?0:3,l=`${r.toFixed(i)} ${t?"/ "+t.toFixed(i):""} ${n}`,o=e.values.map((e=>e.memoryPercent));s(l),a(o)};return(0,d.useEffect)((()=>(e.stateChanged.connect(i),()=>{e.stateChanged.disconnect(i)})),[e]),_().createElement(K,{enabled:e.memoryAvailable,values:n,label:t,color:"#00B35B",text:r})};var W,F,R;!function(e){e.createMemoryView=(e,t)=>n.ReactWidget.create(_().createElement(I,{model:e,label:t}))}(W||(W={})),function(e){class t{constructor(e=!1,t=!1,r=!1){this._memory=!1,this._cpu=!1,this._disk=!1,this._memory=e,this._cpu=t,this._disk=r}get hasWarning(){return this._memory||this._cpu||this._disk}}e.ResourceUsageWarning=t;class r extends n.VDomModel{constructor(e){super(),this._cpuLabel=B,this._memLabel=M,this._diskLabel=N,this._memoryAvailable=!1,this._cpuAvailable=!1,this._diskAvailable=!1,this._currentMemory=0,this._currentDisk=0,this._maxDisk=0,this._currentCpuPercent=0,this._memoryLimit=null,this._cpuLimit=null,this._memUnits="B",this._diskUnits="B",this._warn=new t,this._values=[];for(let e=0;e<20;e++)this._values.push({memoryPercent:0,cpuPercent:0,diskPercent:0});this._poll=new w.Poll({factory:()=>R.factory(),frequency:{interval:e.refreshRate,backoff:!0},name:"@jupyterlab/statusbar:ResourceUsage#metrics"}),this._poll.ticked.connect((e=>{const{payload:t,phase:r}=e.state;if("resolved"!==r){if("rejected"===r){const e=this._memoryAvailable,t=this._cpuAvailable;return this._memoryAvailable=!1,this._cpuAvailable=!1,this._diskAvailable=!1,this._currentMemory=0,this._currentDisk=0,this._maxDisk=0,this._memoryLimit=null,this._cpuLimit=null,this._memUnits="B",void((e||t)&&this.stateChanged.emit())}}else this._updateMetricsValues(t)}))}async refresh(){await this._poll.refresh(),await this._poll.tick}get cpuLabel(){return this._cpuLabel}get memLabel(){return this._memLabel}get diskLabel(){return this._diskLabel}get metricsAvailable(){return this._memoryAvailable||this._cpuAvailable}get memoryAvailable(){return this._memoryAvailable}get cpuAvailable(){return this._cpuAvailable}get diskAvailable(){return this._diskAvailable}get currentMemory(){return this._currentMemory}get currentDisk(){return this._currentDisk}get maxDisk(){return this._maxDisk}get memoryLimit(){return this._memoryLimit}get cpuLimit(){return this._cpuLimit}get memUnits(){return this._memUnits}get diskUnits(){return this._diskUnits}get currentCpuPercent(){return this._currentCpuPercent}get values(){return this._values}get usageWarnings(){return this._warn}dispose(){super.dispose(),this._poll.dispose()}_updateMetricsValues(e){var r,s,n,a,i,l;if(null===e)return this._memoryAvailable=!1,this._cpuAvailable=!1,this._currentMemory=0,this._currentDisk=0,this._maxDisk=0,this._memoryLimit=null,this._memUnits="B",this._diskUnits="B",void(this._warn=new t);const o=null!==(r=e.pss)&&void 0!==r?r:e.rss,c=e.limits.memory,u=null!==(n=null!==(s=null==c?void 0:c.pss)&&void 0!==s?s:null==c?void 0:c.rss)&&void 0!==n?n:null,[m,d]=k(o),_=new t(null===(a=e.limits.memory)||void 0===a?void 0:a.warn,null===(i=e.limits.cpu)||void 0===i?void 0:i.warn,null===(l=e.limits.disk)||void 0===l?void 0:l.warn);this._memoryAvailable=void 0!==o,this._currentMemory=m,this._memUnits=d,this._memoryLimit=u?u/v[d]:null;const h=this.memoryLimit?Math.min(this._currentMemory/this.memoryLimit,1):0;this._warn=_,this._cpuLimit=e.limits.cpu?e.limits.cpu.cpu:null,this._cpuAvailable=void 0!==e.cpu_percent,this._currentCpuPercent=void 0!==e.cpu_percent?e.cpu_percent/100:0;const p=e.disk_total;this._diskAvailable=!!p;const g=e.disk_used;let b=0,y=0,C="B";[b,C]=k(p),[y,C]=k(g,C),this._currentDisk=y,this._maxDisk=b,this._diskUnits=C;const f=Math.min(this._currentDisk/this._maxDisk,1);this._values.push({memoryPercent:h,cpuPercent:this._currentCpuPercent,diskPercent:f}),this._values.shift(),this.stateChanged.emit(void 0)}}e.Model=r}(F||(F={})),function(e){const t=p.ServerConnection.makeSettings(),r=h.URLExt.join(t.baseUrl,"api/metrics/v1");e.factory=async()=>{const e=p.ServerConnection.makeRequest(r,{},t),s=await e;return s.ok?await s.json():null}}(R||(R={}));const T=(0,r(95).style)({fontSize:"var(--jp-ui-font-size1)",fontFamily:"var(--jp-ui-font-family)"},{backgroundColor:"#FFD2D2",color:"#D8000C"});class $ extends n.VDomRenderer{constructor(e){super(new F.Model({refreshRate:5e3})),this._trans=e}render(){if(!this.model)return _().createElement("div",null);let e;return e=null===this.model.memoryLimit?this._trans.__("%1 %2 %3",this.model.memLabel,this.model.currentMemory.toFixed(V.DECIMAL_PLACES),this.model.memUnits):this._trans.__("%1 %2 / %3 %4",this.model.memLabel,this.model.currentMemory.toFixed(V.DECIMAL_PLACES),this.model.memoryLimit.toFixed(V.DECIMAL_PLACES),this.model.memUnits),this.model.cpuAvailable&&(e=`${this.model.cpuLabel} ${(100*this.model.currentCpuPercent).toFixed(V.DECIMAL_PLACES)} % | ${e}`),this.model.diskAvailable&&(e=`${this.model.diskLabel} ${this.model.currentDisk.toFixed(V.DECIMAL_PLACES)} / ${this.model.maxDisk.toFixed(V.DECIMAL_PLACES)} ${this.model.diskUnits} | ${e}`),this.model.usageWarnings.hasWarning?_().createElement(c.TextItem,{title:this._trans.__("Current resource usage"),source:e,className:T}):_().createElement(c.TextItem,{title:this._trans.__("Current resource usage"),source:e})}}var V;!function(e){e.DECIMAL_PLACES=2}(V||(V={}));var z,q=r(901);function G(e){return e instanceof o.ConsolePanel||e instanceof i.NotebookPanel}class O{constructor(e){var t,r;this._currentWidget=null;const{labShell:s,notebookTracker:n,consoleTracker:a}=e;this._currentChanged=new q.Signal(this),s?s.currentChanged.connect(((e,t)=>{const r=t.newValue;r&&G(r)?(this._currentChanged.emit(r),this._currentWidget=r):(this._currentChanged.emit(null),this._currentWidget=null)})):(n.currentChanged.connect(((e,t)=>{this._currentChanged.emit(t),this._currentWidget=t})),a&&a.currentChanged.connect(((e,t)=>{this._currentChanged.emit(t),this._currentWidget=t}))),(null==s?void 0:s.currentWidget)&&G(null==s?void 0:s.currentWidget)?this._currentWidget=s.currentWidget:this._currentWidget=null!==(r=null!==(t=n.currentWidget)&&void 0!==t?t:null==a?void 0:a.currentWidget)&&void 0!==r?r:null}get currentChanged(){return this._currentChanged}get currentWidget(){return this._currentWidget}}!function(e){e.getKernelUsage="kernel-usage:get"}(z||(z={}));const H={id:"@jupyter-server/resource-usage:status-item",autoStart:!0,requires:[u.ITranslator],optional:[c.IStatusBar],activate:(e,t,r)=>{const s=t.load("jupyter-resource-usage"),n=new $(s);r&&r.registerStatusItem(H.id,{item:n,align:"left",rank:2,isActive:()=>n.model.metricsAvailable,activeStateChanged:n.model.stateChanged})}},J={id:"@jupyter-server/resource-usage:topbar-item",autoStart:!0,requires:[n.IToolbarWidgetRegistry],optional:[a.ISettingRegistry],activate:async(e,t,r)=>{let s=!1,n=5e3,a=B,i=M,l=N;if(r){const e=await r.load(J.id);s=e.get("enable").composite,n=e.get("refreshRate").composite;const t=e.get("cpu").composite;a=t.label;const o=e.get("memory").composite;i=o.label;const c=e.get("disk").composite;l=c.label}const o=new F.Model({refreshRate:n});await o.refresh(),s&&o.cpuAvailable&&t.addFactory("TopBar","cpu",(()=>S.createCpuView(o,a))),s&&o.memoryAvailable&&t.addFactory("TopBar","memory",(()=>W.createMemoryView(o,i))),s&&o.diskAvailable&&t.addFactory("TopBar","disk",(()=>D.createDiskView(o,l)))}},Q={id:"@jupyter-server/resource-usage:kernel-panel-item",autoStart:!0,optional:[n.ICommandPalette,s.ILabShell,o.IConsoleTracker],requires:[u.ITranslator,i.INotebookTracker],activate:(e,t,r,s,n,a)=>{const i=t.load("jupyter-resource-usage"),{commands:o,shell:c}=e,u=i.__("Kernel Resource");let m=null;function d(){if(!m||m.isDisposed){const e=new O({notebookTracker:r,labShell:n,consoleTracker:a});m=new U({tracker:e,trans:i}),c.add(m,"right",{rank:200})}}o.addCommand(z.getKernelUsage,{label:i.__("Kernel Usage"),caption:i.__("Kernel Usage"),icon:new l.LabIcon({name:"jupyterlab-kernel-usage:icon",svgstr:E}),execute:d}),s&&s.addItem({command:z.getKernelUsage,category:u}),d()}},X=[H,J,Q]}}]);
"use strict";(self.webpackChunk_jupyter_server_resource_usage=self.webpackChunk_jupyter_server_resource_usage||[]).push([[643],{246:(n,e,t)=>{t.d(e,{Z:()=>c});var r=t(601),o=t.n(r),a=t(609),i=t.n(a)()(o());i.push([n.id,".jp-KernelUsage-view {\n min-width: var(--jp-sidebar-min-width);\n color: var(--jp-ui-font-color1);\n background: var(--jp-layout-color1);\n display: flex;\n flex-direction: column;\n font-size: var(--jp-ui-font-size1);\n}\n\n.jp-KernelUsage-section-separator {\n margin-top: var(--jp-content-heading-margin-top);\n margin-bottom: var(--jp-content-heading-margin-bottom);\n}\n\n.jp-KernelUsage-separator {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n\n.jp-KernelUsage-timedOut {\n color: var(--jp-ui-font-color3);\n}\n\n.jp-KernelUsage-content {\n padding: 10px;\n overflow-y: auto;\n}\n\n.jp-IndicatorContainer {\n display: flex;\n flex-direction: row;\n margin-left: 1em;\n}\n\n.jp-IndicatorFiller {\n height: 100%;\n}\n\n.jp-IndicatorText {\n display: flex;\n min-width: 35px;\n flex-direction: column;\n justify-content: center;\n text-align: right;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.jp-IndicatorWrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-left: 5px;\n margin-right: 5px;\n width: 75px;\n}\n\n.jp-IndicatorBar {\n height: 75%;\n outline: 1px solid black;\n}\n\n.jp-IndicatorBar svg {\n max-width: 100%;\n height: 100%;\n}\n\n.jp-TopBar-item .jp-IndicatorContainer {\n max-width: 500px;\n}\n",""]);const c=i},609:n=>{n.exports=function(n){var e=[];return e.toString=function(){return this.map((function(e){var t="",r=void 0!==e[5];return e[4]&&(t+="@supports (".concat(e[4],") {")),e[2]&&(t+="@media ".concat(e[2]," {")),r&&(t+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),t+=n(e),r&&(t+="}"),e[2]&&(t+="}"),e[4]&&(t+="}"),t})).join("")},e.i=function(n,t,r,o,a){"string"==typeof n&&(n=[[null,n,void 0]]);var i={};if(r)for(var c=0;c<this.length;c++){var s=this[c][0];null!=s&&(i[s]=!0)}for(var p=0;p<n.length;p++){var u=[].concat(n[p]);r&&i[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),t&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=t):u[2]=t),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},601:n=>{n.exports=function(n){return n[1]}},62:n=>{var e=[];function t(n){for(var t=-1,r=0;r<e.length;r++)if(e[r].identifier===n){t=r;break}return t}function r(n,r){for(var a={},i=[],c=0;c<n.length;c++){var s=n[c],p=r.base?s[0]+r.base:s[0],u=a[p]||0,l="".concat(p," ").concat(u);a[p]=u+1;var d=t(l),f={css:s[1],media:s[2],sourceMap:s[3],supports:s[4],layer:s[5]};if(-1!==d)e[d].references++,e[d].updater(f);else{var m=o(f,r);r.byIndex=c,e.splice(c,0,{identifier:l,updater:m,references:1})}i.push(l)}return i}function o(n,e){var t=e.domAPI(e);return t.update(n),function(e){if(e){if(e.css===n.css&&e.media===n.media&&e.sourceMap===n.sourceMap&&e.supports===n.supports&&e.layer===n.layer)return;t.update(n=e)}else t.remove()}}n.exports=function(n,o){var a=r(n=n||[],o=o||{});return function(n){n=n||[];for(var i=0;i<a.length;i++){var c=t(a[i]);e[c].references--}for(var s=r(n,o),p=0;p<a.length;p++){var u=t(a[p]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}a=s}}},793:n=>{var e={};n.exports=function(n,t){var r=function(n){if(void 0===e[n]){var t=document.querySelector(n);if(window.HTMLIFrameElement&&t instanceof window.HTMLIFrameElement)try{t=t.contentDocument.head}catch(n){t=null}e[n]=t}return e[n]}(n);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(t)}},173:n=>{n.exports=function(n){var e=document.createElement("style");return n.setAttributes(e,n.attributes),n.insert(e,n.options),e}},892:(n,e,t)=>{n.exports=function(n){var e=t.nc;e&&n.setAttribute("nonce",e)}},36:n=>{n.exports=function(n){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=n.insertStyleElement(n);return{update:function(t){!function(n,e,t){var r="";t.supports&&(r+="@supports (".concat(t.supports,") {")),t.media&&(r+="@media ".concat(t.media," {"));var o=void 0!==t.layer;o&&(r+="@layer".concat(t.layer.length>0?" ".concat(t.layer):""," {")),r+=t.css,o&&(r+="}"),t.media&&(r+="}"),t.supports&&(r+="}");var a=t.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),e.styleTagTransform(r,n,e.options)}(e,n,t)},remove:function(){!function(n){if(null===n.parentNode)return!1;n.parentNode.removeChild(n)}(e)}}}},464:n=>{n.exports=function(n,e){if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}},643:(n,e,t)=>{t.r(e);var r=t(62),o=t.n(r),a=t(36),i=t.n(a),c=t(793),s=t.n(c),p=t(892),u=t.n(p),l=t(173),d=t.n(l),f=t(464),m=t.n(f),v=t(246),h={};h.styleTagTransform=m(),h.setAttributes=u(),h.insert=s().bind(null,"head"),h.domAPI=i(),h.insertStyleElement=d(),o()(v.Z,h),v.Z&&v.Z.locals&&v.Z.locals}}]);
var _JUPYTERLAB;(()=>{"use strict";var e,r,t,a,n,o,u,i,l,s,f,d,c,p,h,v,b,g,y,m={357:(e,r,t)=>{var a={"./index":()=>Promise.all([t.e(29),t.e(489)]).then((()=>()=>t(489))),"./extension":()=>Promise.all([t.e(29),t.e(489)]).then((()=>()=>t(489))),"./style":()=>t.e(643).then((()=>()=>t(643)))},n=(e,r)=>(t.R=r,r=t.o(a,e)?a[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),o=(e,r)=>{if(t.S){var a="default",n=t.S[a];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[a]=e,t.I(a,r)}};t.d(r,{get:()=>n,init:()=>o})}},j={};function w(e){var r=j[e];if(void 0!==r)return r.exports;var t=j[e]={id:e,exports:{}};return m[e].call(t.exports,t,t.exports,w),t.exports}w.m=m,w.c=j,w.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return w.d(r,{a:r}),r},w.d=(e,r)=>{for(var t in r)w.o(r,t)&&!w.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},w.f={},w.e=e=>Promise.all(Object.keys(w.f).reduce(((r,t)=>(w.f[t](e,r),r)),[])),w.u=e=>e+"."+{29:"6c1b944c8a320967478b",114:"8d6e04d9186cda5f713e",311:"dc54ab57a76db15e51e8",489:"5dea6b8e39fe7eab23dd",643:"00ea3bded09f7fdc4270"}[e]+".js?v="+{29:"6c1b944c8a320967478b",114:"8d6e04d9186cda5f713e",311:"dc54ab57a76db15e51e8",489:"5dea6b8e39fe7eab23dd",643:"00ea3bded09f7fdc4270"}[e],w.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),w.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="@jupyter-server/resource-usage:",w.l=(t,a,n,o)=>{if(e[t])e[t].push(a);else{var u,i;if(void 0!==n)for(var l=document.getElementsByTagName("script"),s=0;s<l.length;s++){var f=l[s];if(f.getAttribute("src")==t||f.getAttribute("data-webpack")==r+n){u=f;break}}u||(i=!0,(u=document.createElement("script")).charset="utf-8",u.timeout=120,w.nc&&u.setAttribute("nonce",w.nc),u.setAttribute("data-webpack",r+n),u.src=t),e[t]=[a];var d=(r,a)=>{u.onerror=u.onload=null,clearTimeout(c);var n=e[t];if(delete e[t],u.parentNode&&u.parentNode.removeChild(u),n&&n.forEach((e=>e(a))),r)return r(a)},c=setTimeout(d.bind(null,void 0,{type:"timeout",target:u}),12e4);u.onerror=d.bind(null,u.onerror),u.onload=d.bind(null,u.onload),i&&document.head.appendChild(u)}},w.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{w.S={};var e={},r={};w.I=(t,a)=>{a||(a=[]);var n=r[t];if(n||(n=r[t]={}),!(a.indexOf(n)>=0)){if(a.push(n),e[t])return e[t];w.o(w.S,t)||(w.S[t]={});var o=w.S[t],u="@jupyter-server/resource-usage",i=(e,r,t,a)=>{var n=o[e]=o[e]||{},i=n[r];(!i||!i.loaded&&(!a!=!i.eager?a:u>i.from))&&(n[r]={get:t,from:u,eager:!!a})},l=[];return"default"===t&&(i("@jupyter-server/resource-usage","1.1.1",(()=>Promise.all([w.e(29),w.e(489)]).then((()=>()=>w(489))))),i("react-sparklines","1.7.0",(()=>Promise.all([w.e(311),w.e(29)]).then((()=>()=>w(311))))),i("typestyle","2.4.0",(()=>w.e(114).then((()=>()=>w(114)))))),e[t]=l.length?Promise.all(l).then((()=>e[t]=1)):1}}})(),(()=>{var e;w.g.importScripts&&(e=w.g.location+"");var r=w.g.document;if(!e&&r&&(r.currentScript&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var a=t.length-1;a>-1&&!e;)e=t[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),w.p=e})(),t=e=>{var r=e=>e.split(".").map((e=>+e==e?+e:e)),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),a=t[1]?r(t[1]):[];return t[2]&&(a.length++,a.push.apply(a,r(t[2]))),t[3]&&(a.push([]),a.push.apply(a,r(t[3]))),a},a=(e,r)=>{e=t(e),r=t(r);for(var a=0;;){if(a>=e.length)return a<r.length&&"u"!=(typeof r[a])[0];var n=e[a],o=(typeof n)[0];if(a>=r.length)return"u"==o;var u=r[a],i=(typeof u)[0];if(o!=i)return"o"==o&&"n"==i||"s"==i||"u"==o;if("o"!=o&&"u"!=o&&n!=u)return n<u;a++}},n=e=>{var r=e[0],t="";if(1===e.length)return"*";if(r+.5){t+=0==r?">=":-1==r?"<":1==r?"^":2==r?"~":r>0?"=":"!=";for(var a=1,o=1;o<e.length;o++)a--,t+="u"==(typeof(i=e[o]))[0]?"-":(a>0?".":"")+(a=2,i);return t}var u=[];for(o=1;o<e.length;o++){var i=e[o];u.push(0===i?"not("+l()+")":1===i?"("+l()+" || "+l()+")":2===i?u.pop()+" "+u.pop():n(i))}return l();function l(){return u.pop().replace(/^\((.+)\)$/,"$1")}},o=(e,r)=>{if(0 in e){r=t(r);var a=e[0],n=a<0;n&&(a=-a-1);for(var u=0,i=1,l=!0;;i++,u++){var s,f,d=i<e.length?(typeof e[i])[0]:"";if(u>=r.length||"o"==(f=(typeof(s=r[u]))[0]))return!l||("u"==d?i>a&&!n:""==d!=n);if("u"==f){if(!l||"u"!=d)return!1}else if(l)if(d==f)if(i<=a){if(s!=e[i])return!1}else{if(n?s>e[i]:s<e[i])return!1;s!=e[i]&&(l=!1)}else if("s"!=d&&"n"!=d){if(n||i<=a)return!1;l=!1,i--}else{if(i<=a||f<d!=n)return!1;l=!1}else"s"!=d&&"n"!=d&&(l=!1,i--)}}var c=[],p=c.pop.bind(c);for(u=1;u<e.length;u++){var h=e[u];c.push(1==h?p()|p():2==h?p()&p():h?o(h,r):!p())}return!!p()},u=(e,r)=>{var t=w.S[e];if(!t||!w.o(t,r))throw new Error("Shared module "+r+" doesn't exist in shared scope "+e);return t},i=(e,r)=>{var t=e[r];return Object.keys(t).reduce(((e,r)=>!e||!t[e].loaded&&a(e,r)?r:e),0)},l=(e,r,t,a)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+n(a)+")",s=(e,r,t,a)=>{var n=i(e,t);return o(a,n)||d(l(e,t,n,a)),c(e[t][n])},f=(e,r,t)=>{var n=e[r];return(r=Object.keys(n).reduce(((e,r)=>!o(t,r)||e&&!a(e,r)?e:r),0))&&n[r]},d=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},c=e=>(e.loaded=1,e.get()),h=(p=e=>function(r,t,a,n){var o=w.I(r);return o&&o.then?o.then(e.bind(e,r,w.S[r],t,a,n)):e(r,w.S[r],t,a,n)})(((e,r,t,a)=>(u(e,t),s(r,0,t,a)))),v=p(((e,r,t,a,n)=>{var o=r&&w.o(r,t)&&f(r,t,a);return o?c(o):n()})),b={},g={29:()=>h("default","react",[1,18,2,0]),4:()=>h("default","@jupyterlab/coreutils",[1,6,3,5]),37:()=>h("default","@jupyterlab/notebook",[1,4,3,5]),95:()=>v("default","typestyle",[1,2,4,0],(()=>w.e(114).then((()=>()=>w(114))))),144:()=>h("default","@jupyterlab/statusbar",[1,4,3,5]),352:()=>h("default","@jupyterlab/apputils",[1,4,4,5]),381:()=>h("default","@jupyterlab/settingregistry",[1,4,3,5]),491:()=>h("default","@jupyterlab/console",[1,4,3,5]),651:()=>h("default","@jupyterlab/services",[1,7,3,5]),655:()=>h("default","@jupyterlab/ui-components",[1,4,3,5]),686:()=>v("default","react-sparklines",[1,1,7,0],(()=>w.e(311).then((()=>()=>w(311))))),717:()=>h("default","@jupyterlab/translation",[1,4,3,5]),765:()=>h("default","@jupyterlab/application",[1,4,3,5]),797:()=>h("default","@lumino/polling",[1,2,0,0]),882:()=>h("default","@lumino/widgets",[1,2,3,1,,"alpha",0]),901:()=>h("default","@lumino/signaling",[1,2,0,0])},y={29:[29],489:[4,37,95,144,352,381,491,651,655,686,717,765,797,882,901]},w.f.consumes=(e,r)=>{w.o(y,e)&&y[e].forEach((e=>{if(w.o(b,e))return r.push(b[e]);var t=r=>{b[e]=0,w.m[e]=t=>{delete w.c[e],t.exports=r()}},a=r=>{delete b[e],w.m[e]=t=>{throw delete w.c[e],r}};try{var n=g[e]();n.then?r.push(b[e]=n.then(t).catch(a)):t(n)}catch(e){a(e)}}))},(()=>{var e={461:0};w.f.j=(r,t)=>{var a=w.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(29!=r){var n=new Promise(((t,n)=>a=e[r]=[t,n]));t.push(a[2]=n);var o=w.p+w.u(r),u=new Error;w.l(o,(t=>{if(w.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;u.message="Loading chunk "+r+" failed.\n("+n+": "+o+")",u.name="ChunkLoadError",u.type=n,u.request=o,a[1](u)}}),"chunk-"+r,r)}else e[r]=0};var r=(r,t)=>{var a,n,[o,u,i]=t,l=0;if(o.some((r=>0!==e[r]))){for(a in u)w.o(u,a)&&(w.m[a]=u[a]);i&&i(w)}for(r&&r(t);l<o.length;l++)n=o[l],w.o(e,n)&&e[n]&&e[n][0](),e[n]=0},t=self.webpackChunk_jupyter_server_resource_usage=self.webpackChunk_jupyter_server_resource_usage||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),w.nc=void 0;var S=w(357);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB)["@jupyter-server/resource-usage"]=S})();
+25
-2

@@ -5,2 +5,27 @@ # Changelog

## 1.1.1
([Full Changelog](https://github.com/jupyter-server/jupyter-resource-usage/compare/@jupyter-server/resource-usage@1.1.0...6d739a7cda47c1101f0c70e16806739cf6b0c575))
### Bugs fixed
- Fix typo in default username for jupyter [#239](https://github.com/jupyter-server/jupyter-resource-usage/pull/239) ([@evsasha](https://github.com/evsasha))
### Maintenance and upkeep improvements
- Update to `actions/upload-artifact@v4` [#241](https://github.com/jupyter-server/jupyter-resource-usage/pull/241) ([@jtpio](https://github.com/jtpio))
- Delete second copy of enforce-labels [#240](https://github.com/jupyter-server/jupyter-resource-usage/pull/240) ([@krassowski](https://github.com/krassowski))
### Documentation improvements
- Document `show_host_usage` configuration option in README [#218](https://github.com/jupyter-server/jupyter-resource-usage/pull/218) ([@pinksi](https://github.com/pinksi))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter-server/jupyter-resource-usage/graphs/contributors?from=2024-07-31&to=2025-02-04&type=c))
[@evsasha](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter-resource-usage+involves%3Aevsasha+updated%3A2024-07-31..2025-02-04&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter-resource-usage+involves%3Ajtpio+updated%3A2024-07-31..2025-02-04&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter-resource-usage+involves%3Akrassowski+updated%3A2024-07-31..2025-02-04&type=Issues) | [@pinksi](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter-resource-usage+involves%3Apinksi+updated%3A2024-07-31..2025-02-04&type=Issues) | [@welcome](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter-resource-usage+involves%3Awelcome+updated%3A2024-07-31..2025-02-04&type=Issues)
<!-- <END NEW CHANGELOG ENTRY> -->
## 1.1.0

@@ -24,4 +49,2 @@

<!-- <END NEW CHANGELOG ENTRY> -->
## 1.0.2

@@ -28,0 +51,0 @@

+1
-1

@@ -1,1 +0,1 @@

__version__ = "1.1.0"
__version__ = "1.1.1"

@@ -44,3 +44,3 @@ import os

trait_types=[Unicode(), Callable()],
default_value="/home/joyvan",
default_value="/home/jovyan",
help="""

@@ -159,3 +159,3 @@ A path in the partition to be reported on.

def _disk_path_default(self):
return str(os.environ.get("HOME", "/home/joyvan"))
return str(os.environ.get("HOME", "/home/jovyan"))

@@ -162,0 +162,0 @@ disk_warning_threshold = Float(

{
"name": "@jupyter-server/resource-usage",
"version": "1.1.0",
"version": "1.1.1",
"description": "JupyterLab extension to add resource usage UI items",

@@ -94,3 +94,3 @@ "keywords": [

"_build": {
"load": "static/remoteEntry.afcf8555fea6189f141e.js",
"load": "static/remoteEntry.cc638776eeab74ee7b69.js",
"extension": "./extension",

@@ -97,0 +97,0 @@ "style": "./style"

@@ -1,4 +0,4 @@

Metadata-Version: 2.3
Metadata-Version: 2.4
Name: jupyter-resource-usage
Version: 1.1.0
Version: 1.1.1
Summary: Jupyter Extension to show resource usage

@@ -165,2 +165,10 @@ Project-URL: Homepage, https://github.com/jupyter-server/jupyter-resource-usage

### Host information
If you want to hide host information from the Kernel Usage sidebar
you can set `--ResourceUseDisplay.show_host_usage=False` to hide `Host CPU` and `Host Virtual Memory` information.
The default is set as `True`, i.e. show all the information.
![Screenshot for kernel usage with limited info](./doc/kernel-usage-limited-info.png)
### CPU Usage

@@ -208,3 +216,3 @@

The values are from the partition containing the folder in the trait `disk_path` (which defaults to `/home/joyvan`). If this path does not exist, disk usage information is omitted from the display.
The values are from the partition containing the folder in the trait `disk_path` (which defaults to `/home/jovyan`). If this path does not exist, disk usage information is omitted from the display.

@@ -211,0 +219,0 @@ Mirroring CPU and Memory, the trait `disk_warning_threshold` signifies when to flag a usage warning, and like the others, it defaults to `0.1` (10% remaining)

@@ -103,3 +103,3 @@ [build-system]

[tool.tbump.version]
current = "1.1.0"
current = "1.1.1"
regex = '''

@@ -106,0 +106,0 @@ (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)

@@ -106,2 +106,10 @@ **[Installation](#installation)** |

### Host information
If you want to hide host information from the Kernel Usage sidebar
you can set `--ResourceUseDisplay.show_host_usage=False` to hide `Host CPU` and `Host Virtual Memory` information.
The default is set as `True`, i.e. show all the information.
![Screenshot for kernel usage with limited info](./doc/kernel-usage-limited-info.png)
### CPU Usage

@@ -149,3 +157,3 @@

The values are from the partition containing the folder in the trait `disk_path` (which defaults to `/home/joyvan`). If this path does not exist, disk usage information is omitted from the display.
The values are from the partition containing the folder in the trait `disk_path` (which defaults to `/home/jovyan`). If this path does not exist, disk usage information is omitted from the display.

@@ -152,0 +160,0 @@ Mirroring CPU and Memory, the trait `disk_warning_threshold` signifies when to flag a usage warning, and like the others, it defaults to `0.1` (10% remaining)

"use strict";(self.webpackChunk_jupyter_server_resource_usage=self.webpackChunk_jupyter_server_resource_usage||[]).push([[489],{489:(e,t,r)=>{r.r(t),r.d(t,{default:()=>X});var s=r(85),n=r(586),a=r(896),i=r(217),l=r(316),o=r(765),c=r(655),u=r(996),m=r(882),d=r(29),_=r.n(d),h=r(281),p=r(663);const v={B:1,KB:1024,MB:1048576,GB:1073741824,TB:1099511627776,PB:0x4000000000000};function g(e,t){const r=k(e,t);return r[0].toFixed(2)+" "+r[1]}function k(e,t){return e?t&&t in v?[e/v[t],t]:e<v.KB?[e,"B"]:v.KB===e||e<v.MB?[e/v.KB,"KB"]:v.MB===e||e<v.GB?[e/v.MB,"MB"]:v.GB===e||e<v.TB?[e/v.GB,"GB"]:v.TB===e||e<v.PB?[e/v.TB,"TB"]:[e/v.PB,"PB"]:[0,"B"]}let b=null;const y=e=>{const{reason:t}=e;return"not_supported"===t.reason?_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("Please check with your system administrator that you are running IPyKernel version 6.10.0 or above."),t.kernel_version?e.trans.__("Detected IPyKernel version: %1",t.kernel_version):e.trans.__("No IPyKernel installation detected.")):"no_kernel_widget"===t.reason?_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("Switch to a notebook or console to see kernel usage details.")):"no_kernel"===t.reason?_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("No active kernel found.")):_().createElement("div",{className:"jp-KernelUsage-section-separator"},e.trans.__("Reason: %1.",t.reason))},C=e=>{var t;const{panel:r}=e,[s,n]=(0,d.useState)(),[a,i]=(0,d.useState)(),[l,o]=(0,d.useState)(),[c,u]=(0,d.useState)({reason:"loading"});((e,t)=>{const r=(0,d.useRef)();(0,d.useEffect)((()=>{r.current=e}),[e]),(0,d.useEffect)((()=>{if(null!==t){const e=setInterval((function(){r.current&&r.current()}),t);return()=>{clearInterval(e)}}}),[e,t])})((async()=>{s&&r.isVisible&&v(s).catch((()=>{console.warn(`Request failed for ${s}. Kernel restarting?`)}))}),5e3);const m=(0,d.useRef)(s);m.current=s;const v=e=>async function(e="",t={}){const r=p.ServerConnection.makeSettings(),s=h.URLExt.join(r.baseUrl,"api/metrics/v1/kernel_usage",e);let n;try{n=await p.ServerConnection.makeRequest(s,t,r)}catch(e){throw new p.ServerConnection.NetworkError(e)}let a=await n.text();if(a.length>0)try{a=JSON.parse(a)}catch(e){console.log("Not a JSON response body.",n)}if(!n.ok)throw new p.ServerConnection.ResponseError(n,a.message||a);return a}(`get_usage/${e}`).then((t=>{var r;if(e!==m.current)return;if(null===(r=t.content)||void 0===r?void 0:r.reason){const e=t.content;return void u(e)}u(void 0);const s={...t.content,timestamp:new Date,kernel_id:e};o(s)}));return(0,d.useEffect)((()=>{const t=e=>(t,r)=>{var s,a;const l=null===(s=r.newValue)||void 0===s?void 0:s.id;if(l){n(l);const t=null===(a=null==e?void 0:e.sessionContext.session)||void 0===a?void 0:a.model.path;i(t),v(l)}else u({reason:"no_kernel"}),n(l)},r=(e,r)=>{var a,l,c,m,d;if(null===r)return n(void 0),void u({reason:"no_kernel_widget"});if(b&&b.panel.sessionContext.kernelChanged.disconnect(b.callback),b={callback:t(r),panel:r},r.sessionContext.kernelChanged.connect(b.callback),(null===(l=null===(a=r.sessionContext.session)||void 0===a?void 0:a.kernel)||void 0===l?void 0:l.id)!==s){const e=null===(m=null===(c=r.sessionContext.session)||void 0===c?void 0:c.kernel)||void 0===m?void 0:m.id;if(e){n(e);const t=null===(d=r.sessionContext.session)||void 0===d?void 0:d.model.path;i(t),o(void 0),u({reason:"loading"}),v(e)}else n(void 0),u({reason:"no_kernel"})}};return e.tracker.currentChanged.connect(r),e.tracker.currentWidget&&r(e.tracker,e.tracker.currentWidget),()=>{e.tracker.currentChanged.disconnect(r)}}),[s]),c&&"timeout"!==(null==c?void 0:c.reason)&&"loading"!==(null==c?void 0:c.reason)?_().createElement(_().Fragment,null,_().createElement("h3",{className:"jp-KernelUsage-section-separator"},e.trans.__("Kernel usage not available")),_().createElement(y,{trans:e.trans,reason:c})):s?_().createElement(_().Fragment,null,_().createElement("h3",{className:"jp-KernelUsage-section-separator"},e.trans.__("Kernel usage")),"timeout"===(null==c?void 0:c.reason)?_().createElement("strong",null,e.trans.__("Timed out in: %1 ms",c.timeout_ms)):null,_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Notebook:")," ",a),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Kernel ID:")," ",s),_().createElement("div",{className:"timeout"===(null==c?void 0:c.reason)?"jp-KernelUsage-timedOut":""},l?_().createElement(_().Fragment,null,_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Kernel Host:")," ",l.hostname),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Timestamp:")," ",null===(t=l.timestamp)||void 0===t?void 0:t.toLocaleString()),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Process ID:")," ",l.pid),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("CPU:")," ",l.kernel_cpu),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Memory:")," ",g(l.kernel_memory)),_().createElement("hr",{className:"jp-KernelUsage-section-separator"}),(null==l?void 0:l.host_usage_flag)?_().createElement(_().Fragment,null,_().createElement("h4",{className:"jp-KernelUsage-section-separator"},e.trans.__("Host CPU")),l.host_cpu_percent&&_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans._n("%2%% used on %1 CPU","%2%% used on %1 CPUs",l.cpu_count,l.host_cpu_percent.toFixed(1))),_().createElement("h4",{className:"jp-KernelUsage-section-separator"},e.trans.__("Host Virtual Memory")),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Active:")," ",g(l.host_virtual_memory.active)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Available:")," ",g(l.host_virtual_memory.available)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Free:")," ",g(l.host_virtual_memory.free)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Inactive:")," ",g(l.host_virtual_memory.inactive)),l.host_virtual_memory.percent&&_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Percent used:")," ",l.host_virtual_memory.percent.toFixed(1),"%"),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Total:")," ",g(l.host_virtual_memory.total)),_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Wired:")," ",g(l.host_virtual_memory.wired))):null):"loading"===(null==c?void 0:c.reason)?_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Loading…")):_().createElement("div",{className:"jp-KernelUsage-separator"},e.trans.__("Usage data is missing")))):_().createElement("h3",null,e.trans.__("Kernel usage is missing"))};class f extends n.ReactWidget{constructor(e){super(),this._tracker=e.tracker,this._panel=e.panel,this._trans=e.trans,this.addClass("jp-KernelUsage-content")}render(){return _().createElement(C,{tracker:this._tracker,panel:this._panel,trans:this._trans})}}const E='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\r\n <g class="jp-icon3" fill="#616161">\r\n <path d="m256 43c-141 0-256 115-256 256 0 62 22 118 59 163l6 8h383l6-8c37-44 59-101 59-163-0.1-141-115-256-256-256zm0 43c118 0 213 95 213 213 0 48-17 92-44 128h-339c-27-36-44-80-44-128 0-118 95-213 213-213zm0 21c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm-85 23c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.6-21-21-21zm171 0c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm-233 63c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm290 0.7-121 69c-6.3-3.7-14-6-21-6-24 0-43 19-43 43s19 43 43 43c23 0 42-19 43-42v-0.7l121-69-21-37zm-313 85c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm341 0c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.6-21-21-21zm-319 85c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21zm296 0c-12 0-21 9.6-21 21s9.6 21 21 21 21-9.6 21-21-9.5-21-21-21z"/>\r\n </g>\r\n</svg>\r\n\x3c!-- Downloaded from https://seekicon.com/free-icon/tachometer-alt_1 under MIT License. --\x3e\r\n';class U extends m.StackedPanel{constructor(e){super(),this.addClass("jp-KernelUsage-view"),this.id="kernelusage-panel-id",this.title.caption=e.trans.__("Kernel Usage"),this.title.icon=new l.LabIcon({name:"jupyterlab-kernel-usage:icon",svgstr:E});const t=new f({tracker:e.tracker,panel:this,trans:e.trans});this.addWidget(t)}dispose(){super.dispose()}onCloseRequest(e){super.onCloseRequest(e),this.dispose()}}var w=r(797),x=r(686);const L=({percentage:e,color:t})=>_().createElement("div",{className:"jp-IndicatorFiller",style:{width:100*e+"%",background:`${t}`}}),j=({values:e,percentage:t,baseColor:r})=>{const[s,n]=(0,d.useState)(!1),a=t>.5?t>.8?"red":"orange":r;return _().createElement("div",{className:"jp-IndicatorBar",onClick:()=>{n(!s)}},s&&_().createElement(x.Sparklines,{data:e,min:0,max:1,limit:e.length,margin:0},_().createElement(x.SparklinesLine,{style:{stroke:a,strokeWidth:4,fill:a,fillOpacity:1}}),_().createElement(x.SparklinesSpots,null)),!s&&_().createElement(L,{percentage:t,color:a}))},K=({enabled:e,values:t,label:r,color:s,text:n})=>{const a=t[t.length-1];return _().createElement(_().Fragment,null,e&&_().createElement("div",{className:"jp-IndicatorContainer"},_().createElement("div",{className:"jp-IndicatorText"},r),null!==a&&_().createElement("div",{className:"jp-IndicatorWrapper"},_().createElement(j,{values:t,percentage:a,baseColor:s})),_().createElement("div",{className:"jp-IndicatorText"},n)))},B="CPU: ",A=({model:e,label:t})=>{const[r,s]=(0,d.useState)(""),[n,a]=(0,d.useState)([]),i=()=>{const{cpuLimit:t,currentCpuPercent:r}=e,n=e.values.map((e=>Math.min(1,e.cpuPercent/(t||1)))),i=`${(100*r).toFixed(0)}%`;s(i),a(n)};return(0,d.useEffect)((()=>(e.stateChanged.connect(i),()=>{e.stateChanged.disconnect(i)})),[e]),_().createElement(K,{enabled:e.cpuAvailable,values:n,label:t,color:"#0072B3",text:r})};var S;!function(e){e.createCpuView=(e,t)=>n.ReactWidget.create(_().createElement(A,{model:e,label:t}))}(S||(S={}));const N="Disk: ",P=({model:e,label:t})=>{const[r,s]=(0,d.useState)(""),[n,a]=(0,d.useState)([]),i=()=>{const{maxDisk:t,currentDisk:r,diskUnits:n}=e,i=["B","KB","MB"].indexOf(n)>0?0:2,l=`${r.toFixed(i)} / ${t.toFixed(i)} ${n}`,o=e.values.map((e=>e.diskPercent));s(l),a(o)};return(0,d.useEffect)((()=>(e.stateChanged.connect(i),()=>{e.stateChanged.disconnect(i)})),[e]),_().createElement(K,{enabled:e.diskAvailable,values:n,label:t,color:"#c27ba0",text:r})};var D;!function(e){e.createDiskView=(e,t)=>n.ReactWidget.create(_().createElement(P,{model:e,label:t}))}(D||(D={}));const M="Mem: ",I=({model:e,label:t})=>{const[r,s]=(0,d.useState)(""),[n,a]=(0,d.useState)([]),i=()=>{const{memoryLimit:t,currentMemory:r,memUnits:n}=e,i=["B","KB","MB","GB"].indexOf(n)>0?0:3,l=`${r.toFixed(i)} ${t?"/ "+t.toFixed(i):""} ${n}`,o=e.values.map((e=>e.memoryPercent));s(l),a(o)};return(0,d.useEffect)((()=>(e.stateChanged.connect(i),()=>{e.stateChanged.disconnect(i)})),[e]),_().createElement(K,{enabled:e.memoryAvailable,values:n,label:t,color:"#00B35B",text:r})};var W,F,R;!function(e){e.createMemoryView=(e,t)=>n.ReactWidget.create(_().createElement(I,{model:e,label:t}))}(W||(W={})),function(e){class t{constructor(e=!1,t=!1,r=!1){this._memory=!1,this._cpu=!1,this._disk=!1,this._memory=e,this._cpu=t,this._disk=r}get hasWarning(){return this._memory||this._cpu||this._disk}}e.ResourceUsageWarning=t;class r extends n.VDomModel{constructor(e){super(),this._cpuLabel=B,this._memLabel=M,this._diskLabel=N,this._memoryAvailable=!1,this._cpuAvailable=!1,this._diskAvailable=!1,this._currentMemory=0,this._currentDisk=0,this._maxDisk=0,this._currentCpuPercent=0,this._memoryLimit=null,this._cpuLimit=null,this._memUnits="B",this._diskUnits="B",this._warn=new t,this._values=[];for(let e=0;e<20;e++)this._values.push({memoryPercent:0,cpuPercent:0,diskPercent:0});this._poll=new w.Poll({factory:()=>R.factory(),frequency:{interval:e.refreshRate,backoff:!0},name:"@jupyterlab/statusbar:ResourceUsage#metrics"}),this._poll.ticked.connect((e=>{const{payload:t,phase:r}=e.state;if("resolved"!==r){if("rejected"===r){const e=this._memoryAvailable,t=this._cpuAvailable;return this._memoryAvailable=!1,this._cpuAvailable=!1,this._diskAvailable=!1,this._currentMemory=0,this._currentDisk=0,this._maxDisk=0,this._memoryLimit=null,this._cpuLimit=null,this._memUnits="B",void((e||t)&&this.stateChanged.emit())}}else this._updateMetricsValues(t)}))}async refresh(){await this._poll.refresh(),await this._poll.tick}get cpuLabel(){return this._cpuLabel}get memLabel(){return this._memLabel}get diskLabel(){return this._diskLabel}get metricsAvailable(){return this._memoryAvailable||this._cpuAvailable}get memoryAvailable(){return this._memoryAvailable}get cpuAvailable(){return this._cpuAvailable}get diskAvailable(){return this._diskAvailable}get currentMemory(){return this._currentMemory}get currentDisk(){return this._currentDisk}get maxDisk(){return this._maxDisk}get memoryLimit(){return this._memoryLimit}get cpuLimit(){return this._cpuLimit}get memUnits(){return this._memUnits}get diskUnits(){return this._diskUnits}get currentCpuPercent(){return this._currentCpuPercent}get values(){return this._values}get usageWarnings(){return this._warn}dispose(){super.dispose(),this._poll.dispose()}_updateMetricsValues(e){var r,s,n,a,i,l;if(null===e)return this._memoryAvailable=!1,this._cpuAvailable=!1,this._currentMemory=0,this._currentDisk=0,this._maxDisk=0,this._memoryLimit=null,this._memUnits="B",this._diskUnits="B",void(this._warn=new t);const o=null!==(r=e.pss)&&void 0!==r?r:e.rss,c=e.limits.memory,u=null!==(n=null!==(s=null==c?void 0:c.pss)&&void 0!==s?s:null==c?void 0:c.rss)&&void 0!==n?n:null,[m,d]=k(o),_=new t(null===(a=e.limits.memory)||void 0===a?void 0:a.warn,null===(i=e.limits.cpu)||void 0===i?void 0:i.warn,null===(l=e.limits.disk)||void 0===l?void 0:l.warn);this._memoryAvailable=void 0!==o,this._currentMemory=m,this._memUnits=d,this._memoryLimit=u?u/v[d]:null;const h=this.memoryLimit?Math.min(this._currentMemory/this.memoryLimit,1):0;this._warn=_,this._cpuLimit=e.limits.cpu?e.limits.cpu.cpu:null,this._cpuAvailable=void 0!==e.cpu_percent,this._currentCpuPercent=void 0!==e.cpu_percent?e.cpu_percent/100:0;const p=e.disk_total;this._diskAvailable=!!p;const g=e.disk_used;let b=0,y=0,C="B";[b,C]=k(p),[y,C]=k(g,C),this._currentDisk=y,this._maxDisk=b,this._diskUnits=C;const f=Math.min(this._currentDisk/this._maxDisk,1);this._values.push({memoryPercent:h,cpuPercent:this._currentCpuPercent,diskPercent:f}),this._values.shift(),this.stateChanged.emit(void 0)}}e.Model=r}(F||(F={})),function(e){const t=p.ServerConnection.makeSettings(),r=h.URLExt.join(t.baseUrl,"api/metrics/v1");e.factory=async()=>{const e=p.ServerConnection.makeRequest(r,{},t),s=await e;return s.ok?await s.json():null}}(R||(R={}));const T=(0,r(95).style)({fontSize:"var(--jp-ui-font-size1)",fontFamily:"var(--jp-ui-font-family)"},{backgroundColor:"#FFD2D2",color:"#D8000C"});class $ extends n.VDomRenderer{constructor(e){super(new F.Model({refreshRate:5e3})),this._trans=e}render(){if(!this.model)return _().createElement("div",null);let e;return e=null===this.model.memoryLimit?this._trans.__("%1 %2 %3",this.model.memLabel,this.model.currentMemory.toFixed(V.DECIMAL_PLACES),this.model.memUnits):this._trans.__("%1 %2 / %3 %4",this.model.memLabel,this.model.currentMemory.toFixed(V.DECIMAL_PLACES),this.model.memoryLimit.toFixed(V.DECIMAL_PLACES),this.model.memUnits),this.model.cpuAvailable&&(e=`${this.model.cpuLabel} ${(100*this.model.currentCpuPercent).toFixed(V.DECIMAL_PLACES)} % | ${e}`),this.model.diskAvailable&&(e=`${this.model.diskLabel} ${this.model.currentDisk.toFixed(V.DECIMAL_PLACES)} / ${this.model.maxDisk.toFixed(V.DECIMAL_PLACES)} ${this.model.diskUnits} | ${e}`),this.model.usageWarnings.hasWarning?_().createElement(c.TextItem,{title:this._trans.__("Current resource usage"),source:e,className:T}):_().createElement(c.TextItem,{title:this._trans.__("Current resource usage"),source:e})}}var V;!function(e){e.DECIMAL_PLACES=2}(V||(V={}));var z,q=r(901);function G(e){return e instanceof o.ConsolePanel||e instanceof i.NotebookPanel}class O{constructor(e){var t,r;this._currentWidget=null;const{labShell:s,notebookTracker:n,consoleTracker:a}=e;this._currentChanged=new q.Signal(this),s?s.currentChanged.connect(((e,t)=>{const r=t.newValue;r&&G(r)?(this._currentChanged.emit(r),this._currentWidget=r):(this._currentChanged.emit(null),this._currentWidget=null)})):(n.currentChanged.connect(((e,t)=>{this._currentChanged.emit(t),this._currentWidget=t})),a&&a.currentChanged.connect(((e,t)=>{this._currentChanged.emit(t),this._currentWidget=t}))),(null==s?void 0:s.currentWidget)&&G(null==s?void 0:s.currentWidget)?this._currentWidget=s.currentWidget:this._currentWidget=null!==(r=null!==(t=n.currentWidget)&&void 0!==t?t:null==a?void 0:a.currentWidget)&&void 0!==r?r:null}get currentChanged(){return this._currentChanged}get currentWidget(){return this._currentWidget}}!function(e){e.getKernelUsage="kernel-usage:get"}(z||(z={}));const H={id:"@jupyter-server/resource-usage:status-item",autoStart:!0,requires:[u.ITranslator],optional:[c.IStatusBar],activate:(e,t,r)=>{const s=t.load("jupyter-resource-usage"),n=new $(s);r&&r.registerStatusItem(H.id,{item:n,align:"left",rank:2,isActive:()=>n.model.metricsAvailable,activeStateChanged:n.model.stateChanged})}},J={id:"@jupyter-server/resource-usage:topbar-item",autoStart:!0,requires:[n.IToolbarWidgetRegistry],optional:[a.ISettingRegistry],activate:async(e,t,r)=>{let s=!1,n=5e3,a=B,i=M,l=N;if(r){const e=await r.load(J.id);s=e.get("enable").composite,n=e.get("refreshRate").composite;const t=e.get("cpu").composite;a=t.label;const o=e.get("memory").composite;i=o.label;const c=e.get("disk").composite;l=c.label}const o=new F.Model({refreshRate:n});await o.refresh(),s&&o.cpuAvailable&&t.addFactory("TopBar","cpu",(()=>S.createCpuView(o,a))),s&&o.memoryAvailable&&t.addFactory("TopBar","memory",(()=>W.createMemoryView(o,i))),s&&o.diskAvailable&&t.addFactory("TopBar","disk",(()=>D.createDiskView(o,l)))}},Q={id:"@jupyter-server/resource-usage:kernel-panel-item",autoStart:!0,optional:[n.ICommandPalette,s.ILabShell,o.IConsoleTracker],requires:[u.ITranslator,i.INotebookTracker],activate:(e,t,r,s,n,a)=>{const i=t.load("jupyter-resource-usage"),{commands:o,shell:c}=e,u=i.__("Kernel Resource");let m=null;function d(){if(!m||m.isDisposed){const e=new O({notebookTracker:r,labShell:n,consoleTracker:a});m=new U({tracker:e,trans:i}),c.add(m,"right",{rank:200})}}o.addCommand(z.getKernelUsage,{label:i.__("Kernel Usage"),caption:i.__("Kernel Usage"),icon:new l.LabIcon({name:"jupyterlab-kernel-usage:icon",svgstr:E}),execute:d}),s&&s.addItem({command:z.getKernelUsage,category:u}),d()}},X=[H,J,Q]}}]);
"use strict";(self.webpackChunk_jupyter_server_resource_usage=self.webpackChunk_jupyter_server_resource_usage||[]).push([[643],{246:(n,e,t)=>{t.d(e,{Z:()=>c});var r=t(601),o=t.n(r),a=t(609),i=t.n(a)()(o());i.push([n.id,".jp-KernelUsage-view {\n min-width: var(--jp-sidebar-min-width);\n color: var(--jp-ui-font-color1);\n background: var(--jp-layout-color1);\n display: flex;\n flex-direction: column;\n font-size: var(--jp-ui-font-size1);\n}\n\n.jp-KernelUsage-section-separator {\n margin-top: var(--jp-content-heading-margin-top);\n margin-bottom: var(--jp-content-heading-margin-bottom);\n}\n\n.jp-KernelUsage-separator {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n\n.jp-KernelUsage-timedOut {\n color: var(--jp-ui-font-color3);\n}\n\n.jp-KernelUsage-content {\n padding: 10px;\n overflow-y: auto;\n}\n\n.jp-IndicatorContainer {\n display: flex;\n flex-direction: row;\n margin-left: 1em;\n}\n\n.jp-IndicatorFiller {\n height: 100%;\n}\n\n.jp-IndicatorText {\n display: flex;\n min-width: 35px;\n flex-direction: column;\n justify-content: center;\n text-align: right;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.jp-IndicatorWrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-left: 5px;\n margin-right: 5px;\n width: 75px;\n}\n\n.jp-IndicatorBar {\n height: 75%;\n outline: 1px solid black;\n}\n\n.jp-IndicatorBar svg {\n max-width: 100%;\n height: 100%;\n}\n\n.jp-TopBar-item .jp-IndicatorContainer {\n max-width: 500px;\n}\n",""]);const c=i},609:n=>{n.exports=function(n){var e=[];return e.toString=function(){return this.map((function(e){var t="",r=void 0!==e[5];return e[4]&&(t+="@supports (".concat(e[4],") {")),e[2]&&(t+="@media ".concat(e[2]," {")),r&&(t+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),t+=n(e),r&&(t+="}"),e[2]&&(t+="}"),e[4]&&(t+="}"),t})).join("")},e.i=function(n,t,r,o,a){"string"==typeof n&&(n=[[null,n,void 0]]);var i={};if(r)for(var c=0;c<this.length;c++){var s=this[c][0];null!=s&&(i[s]=!0)}for(var p=0;p<n.length;p++){var u=[].concat(n[p]);r&&i[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),t&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=t):u[2]=t),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},601:n=>{n.exports=function(n){return n[1]}},62:n=>{var e=[];function t(n){for(var t=-1,r=0;r<e.length;r++)if(e[r].identifier===n){t=r;break}return t}function r(n,r){for(var a={},i=[],c=0;c<n.length;c++){var s=n[c],p=r.base?s[0]+r.base:s[0],u=a[p]||0,l="".concat(p," ").concat(u);a[p]=u+1;var d=t(l),f={css:s[1],media:s[2],sourceMap:s[3],supports:s[4],layer:s[5]};if(-1!==d)e[d].references++,e[d].updater(f);else{var m=o(f,r);r.byIndex=c,e.splice(c,0,{identifier:l,updater:m,references:1})}i.push(l)}return i}function o(n,e){var t=e.domAPI(e);return t.update(n),function(e){if(e){if(e.css===n.css&&e.media===n.media&&e.sourceMap===n.sourceMap&&e.supports===n.supports&&e.layer===n.layer)return;t.update(n=e)}else t.remove()}}n.exports=function(n,o){var a=r(n=n||[],o=o||{});return function(n){n=n||[];for(var i=0;i<a.length;i++){var c=t(a[i]);e[c].references--}for(var s=r(n,o),p=0;p<a.length;p++){var u=t(a[p]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}a=s}}},678:n=>{var e={};n.exports=function(n,t){var r=function(n){if(void 0===e[n]){var t=document.querySelector(n);if(window.HTMLIFrameElement&&t instanceof window.HTMLIFrameElement)try{t=t.contentDocument.head}catch(n){t=null}e[n]=t}return e[n]}(n);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(t)}},173:n=>{n.exports=function(n){var e=document.createElement("style");return n.setAttributes(e,n.attributes),n.insert(e,n.options),e}},892:(n,e,t)=>{n.exports=function(n){var e=t.nc;e&&n.setAttribute("nonce",e)}},36:n=>{n.exports=function(n){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=n.insertStyleElement(n);return{update:function(t){!function(n,e,t){var r="";t.supports&&(r+="@supports (".concat(t.supports,") {")),t.media&&(r+="@media ".concat(t.media," {"));var o=void 0!==t.layer;o&&(r+="@layer".concat(t.layer.length>0?" ".concat(t.layer):""," {")),r+=t.css,o&&(r+="}"),t.media&&(r+="}"),t.supports&&(r+="}");var a=t.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),e.styleTagTransform(r,n,e.options)}(e,n,t)},remove:function(){!function(n){if(null===n.parentNode)return!1;n.parentNode.removeChild(n)}(e)}}}},464:n=>{n.exports=function(n,e){if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}},643:(n,e,t)=>{t.r(e);var r=t(62),o=t.n(r),a=t(36),i=t.n(a),c=t(678),s=t.n(c),p=t(892),u=t.n(p),l=t(173),d=t.n(l),f=t(464),m=t.n(f),v=t(246),h={};h.styleTagTransform=m(),h.setAttributes=u(),h.insert=s().bind(null,"head"),h.domAPI=i(),h.insertStyleElement=d(),o()(v.Z,h),v.Z&&v.Z.locals&&v.Z.locals}}]);
var _JUPYTERLAB;(()=>{"use strict";var e,r,t,a,n,o,u,i,l,s,f,d,c,p,h,v,b,g,y,m={357:(e,r,t)=>{var a={"./index":()=>Promise.all([t.e(29),t.e(489)]).then((()=>()=>t(489))),"./extension":()=>Promise.all([t.e(29),t.e(489)]).then((()=>()=>t(489))),"./style":()=>t.e(643).then((()=>()=>t(643)))},n=(e,r)=>(t.R=r,r=t.o(a,e)?a[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),o=(e,r)=>{if(t.S){var a="default",n=t.S[a];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[a]=e,t.I(a,r)}};t.d(r,{get:()=>n,init:()=>o})}},j={};function w(e){var r=j[e];if(void 0!==r)return r.exports;var t=j[e]={id:e,exports:{}};return m[e].call(t.exports,t,t.exports,w),t.exports}w.m=m,w.c=j,w.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return w.d(r,{a:r}),r},w.d=(e,r)=>{for(var t in r)w.o(r,t)&&!w.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},w.f={},w.e=e=>Promise.all(Object.keys(w.f).reduce(((r,t)=>(w.f[t](e,r),r)),[])),w.u=e=>e+"."+{29:"6c1b944c8a320967478b",114:"8d6e04d9186cda5f713e",311:"dc54ab57a76db15e51e8",489:"c42cef313082f191d418",643:"555ff1d51af279356165"}[e]+".js?v="+{29:"6c1b944c8a320967478b",114:"8d6e04d9186cda5f713e",311:"dc54ab57a76db15e51e8",489:"c42cef313082f191d418",643:"555ff1d51af279356165"}[e],w.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),w.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="@jupyter-server/resource-usage:",w.l=(t,a,n,o)=>{if(e[t])e[t].push(a);else{var u,i;if(void 0!==n)for(var l=document.getElementsByTagName("script"),s=0;s<l.length;s++){var f=l[s];if(f.getAttribute("src")==t||f.getAttribute("data-webpack")==r+n){u=f;break}}u||(i=!0,(u=document.createElement("script")).charset="utf-8",u.timeout=120,w.nc&&u.setAttribute("nonce",w.nc),u.setAttribute("data-webpack",r+n),u.src=t),e[t]=[a];var d=(r,a)=>{u.onerror=u.onload=null,clearTimeout(c);var n=e[t];if(delete e[t],u.parentNode&&u.parentNode.removeChild(u),n&&n.forEach((e=>e(a))),r)return r(a)},c=setTimeout(d.bind(null,void 0,{type:"timeout",target:u}),12e4);u.onerror=d.bind(null,u.onerror),u.onload=d.bind(null,u.onload),i&&document.head.appendChild(u)}},w.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{w.S={};var e={},r={};w.I=(t,a)=>{a||(a=[]);var n=r[t];if(n||(n=r[t]={}),!(a.indexOf(n)>=0)){if(a.push(n),e[t])return e[t];w.o(w.S,t)||(w.S[t]={});var o=w.S[t],u="@jupyter-server/resource-usage",i=(e,r,t,a)=>{var n=o[e]=o[e]||{},i=n[r];(!i||!i.loaded&&(!a!=!i.eager?a:u>i.from))&&(n[r]={get:t,from:u,eager:!!a})},l=[];return"default"===t&&(i("@jupyter-server/resource-usage","1.1.0",(()=>Promise.all([w.e(29),w.e(489)]).then((()=>()=>w(489))))),i("react-sparklines","1.7.0",(()=>Promise.all([w.e(311),w.e(29)]).then((()=>()=>w(311))))),i("typestyle","2.4.0",(()=>w.e(114).then((()=>()=>w(114)))))),e[t]=l.length?Promise.all(l).then((()=>e[t]=1)):1}}})(),(()=>{var e;w.g.importScripts&&(e=w.g.location+"");var r=w.g.document;if(!e&&r&&(r.currentScript&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var a=t.length-1;a>-1&&!e;)e=t[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),w.p=e})(),t=e=>{var r=e=>e.split(".").map((e=>+e==e?+e:e)),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),a=t[1]?r(t[1]):[];return t[2]&&(a.length++,a.push.apply(a,r(t[2]))),t[3]&&(a.push([]),a.push.apply(a,r(t[3]))),a},a=(e,r)=>{e=t(e),r=t(r);for(var a=0;;){if(a>=e.length)return a<r.length&&"u"!=(typeof r[a])[0];var n=e[a],o=(typeof n)[0];if(a>=r.length)return"u"==o;var u=r[a],i=(typeof u)[0];if(o!=i)return"o"==o&&"n"==i||"s"==i||"u"==o;if("o"!=o&&"u"!=o&&n!=u)return n<u;a++}},n=e=>{var r=e[0],t="";if(1===e.length)return"*";if(r+.5){t+=0==r?">=":-1==r?"<":1==r?"^":2==r?"~":r>0?"=":"!=";for(var a=1,o=1;o<e.length;o++)a--,t+="u"==(typeof(i=e[o]))[0]?"-":(a>0?".":"")+(a=2,i);return t}var u=[];for(o=1;o<e.length;o++){var i=e[o];u.push(0===i?"not("+l()+")":1===i?"("+l()+" || "+l()+")":2===i?u.pop()+" "+u.pop():n(i))}return l();function l(){return u.pop().replace(/^\((.+)\)$/,"$1")}},o=(e,r)=>{if(0 in e){r=t(r);var a=e[0],n=a<0;n&&(a=-a-1);for(var u=0,i=1,l=!0;;i++,u++){var s,f,d=i<e.length?(typeof e[i])[0]:"";if(u>=r.length||"o"==(f=(typeof(s=r[u]))[0]))return!l||("u"==d?i>a&&!n:""==d!=n);if("u"==f){if(!l||"u"!=d)return!1}else if(l)if(d==f)if(i<=a){if(s!=e[i])return!1}else{if(n?s>e[i]:s<e[i])return!1;s!=e[i]&&(l=!1)}else if("s"!=d&&"n"!=d){if(n||i<=a)return!1;l=!1,i--}else{if(i<=a||f<d!=n)return!1;l=!1}else"s"!=d&&"n"!=d&&(l=!1,i--)}}var c=[],p=c.pop.bind(c);for(u=1;u<e.length;u++){var h=e[u];c.push(1==h?p()|p():2==h?p()&p():h?o(h,r):!p())}return!!p()},u=(e,r)=>{var t=w.S[e];if(!t||!w.o(t,r))throw new Error("Shared module "+r+" doesn't exist in shared scope "+e);return t},i=(e,r)=>{var t=e[r];return Object.keys(t).reduce(((e,r)=>!e||!t[e].loaded&&a(e,r)?r:e),0)},l=(e,r,t,a)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+n(a)+")",s=(e,r,t,a)=>{var n=i(e,t);return o(a,n)||d(l(e,t,n,a)),c(e[t][n])},f=(e,r,t)=>{var n=e[r];return(r=Object.keys(n).reduce(((e,r)=>!o(t,r)||e&&!a(e,r)?e:r),0))&&n[r]},d=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},c=e=>(e.loaded=1,e.get()),h=(p=e=>function(r,t,a,n){var o=w.I(r);return o&&o.then?o.then(e.bind(e,r,w.S[r],t,a,n)):e(r,w.S[r],t,a,n)})(((e,r,t,a)=>(u(e,t),s(r,0,t,a)))),v=p(((e,r,t,a,n)=>{var o=r&&w.o(r,t)&&f(r,t,a);return o?c(o):n()})),b={},g={29:()=>h("default","react",[1,18,2,0]),85:()=>h("default","@jupyterlab/application",[1,4,2,4]),95:()=>v("default","typestyle",[1,2,4,0],(()=>w.e(114).then((()=>()=>w(114))))),217:()=>h("default","@jupyterlab/notebook",[1,4,2,4]),281:()=>h("default","@jupyterlab/coreutils",[1,6,2,4]),316:()=>h("default","@jupyterlab/ui-components",[1,4,2,4]),586:()=>h("default","@jupyterlab/apputils",[1,4,3,4]),655:()=>h("default","@jupyterlab/statusbar",[1,4,2,4]),663:()=>h("default","@jupyterlab/services",[1,7,2,4]),686:()=>v("default","react-sparklines",[1,1,7,0],(()=>w.e(311).then((()=>()=>w(311))))),765:()=>h("default","@jupyterlab/console",[1,4,2,4]),797:()=>h("default","@lumino/polling",[1,2,0,0]),882:()=>h("default","@lumino/widgets",[1,2,3,1,,"alpha",0]),896:()=>h("default","@jupyterlab/settingregistry",[1,4,2,4]),901:()=>h("default","@lumino/signaling",[1,2,0,0]),996:()=>h("default","@jupyterlab/translation",[1,4,2,4])},y={29:[29],489:[85,95,217,281,316,586,655,663,686,765,797,882,896,901,996]},w.f.consumes=(e,r)=>{w.o(y,e)&&y[e].forEach((e=>{if(w.o(b,e))return r.push(b[e]);var t=r=>{b[e]=0,w.m[e]=t=>{delete w.c[e],t.exports=r()}},a=r=>{delete b[e],w.m[e]=t=>{throw delete w.c[e],r}};try{var n=g[e]();n.then?r.push(b[e]=n.then(t).catch(a)):t(n)}catch(e){a(e)}}))},(()=>{var e={461:0};w.f.j=(r,t)=>{var a=w.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(29!=r){var n=new Promise(((t,n)=>a=e[r]=[t,n]));t.push(a[2]=n);var o=w.p+w.u(r),u=new Error;w.l(o,(t=>{if(w.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;u.message="Loading chunk "+r+" failed.\n("+n+": "+o+")",u.name="ChunkLoadError",u.type=n,u.request=o,a[1](u)}}),"chunk-"+r,r)}else e[r]=0};var r=(r,t)=>{var a,n,[o,u,i]=t,l=0;if(o.some((r=>0!==e[r]))){for(a in u)w.o(u,a)&&(w.m[a]=u[a]);i&&i(w)}for(r&&r(t);l<o.length;l++)n=o[l],w.o(e,n)&&e[n]&&e[n][0](),e[n]=0},t=self.webpackChunk_jupyter_server_resource_usage=self.webpackChunk_jupyter_server_resource_usage||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),w.nc=void 0;var S=w(357);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB)["@jupyter-server/resource-usage"]=S})();

Sorry, the diff of this file is not supported yet