@deephaven/code-studio 1.8.1-beta.4 → 1.8.1-beta.5
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/build/assets/{AppRoot-BC5wBiYH.js → AppRoot-CUMe0MgO.js} +4 -4
- package/build/assets/{AppRoot-BC5wBiYH.js.map → AppRoot-CUMe0MgO.js.map} +1 -1
- package/build/assets/{Chart-BmwOqJNH.js → Chart-JHkKKPMG.js} +2 -2
- package/build/assets/{Chart-BmwOqJNH.js.map → Chart-JHkKKPMG.js.map} +1 -1
- package/build/assets/{ControlType-B1KcjHQS.css → ControlType-C_wKgV5b.css} +1 -1
- package/build/assets/{ControlType-DCkug4yn.js → ControlType-Dv3CuLYR.js} +5 -5
- package/build/assets/ControlType-Dv3CuLYR.js.map +1 -0
- package/build/assets/{FormatterUtils-4jp7pTd2.js → FormatterUtils-i8ji1C5d.js} +2 -2
- package/build/assets/{FormatterUtils-4jp7pTd2.js.map → FormatterUtils-i8ji1C5d.js.map} +1 -1
- package/build/assets/{Grid-BprFTe9s.js → Grid-DneCwkq6.js} +2 -2
- package/build/assets/{Grid-BprFTe9s.js.map → Grid-DneCwkq6.js.map} +1 -1
- package/build/assets/{GridTokenMouseHandler-BoCAPBKG.js → GridTokenMouseHandler-Dry4g9hj.js} +2 -2
- package/build/assets/{GridTokenMouseHandler-BoCAPBKG.js.map → GridTokenMouseHandler-Dry4g9hj.js.map} +1 -1
- package/build/assets/{IrisGrid-DK_zsH--.js → IrisGrid-BxAu2BPV.js} +2 -2
- package/build/assets/{IrisGrid-DK_zsH--.js.map → IrisGrid-BxAu2BPV.js.map} +1 -1
- package/build/assets/{IrisGridModel-DVwbkamj.js → IrisGridModel-BGDQQUvO.js} +3 -3
- package/build/assets/{IrisGridModel-DVwbkamj.js.map → IrisGridModel-BGDQQUvO.js.map} +1 -1
- package/build/assets/{IrisGridShortcuts-B2vtN47n.js → IrisGridShortcuts-BWfWqXoC.js} +2 -2
- package/build/assets/{IrisGridShortcuts-B2vtN47n.js.map → IrisGridShortcuts-BWfWqXoC.js.map} +1 -1
- package/build/assets/{IrisGridThemeProvider-B7BbX0O4.js → IrisGridThemeProvider-BUVz26Yu.js} +2 -2
- package/build/assets/{IrisGridThemeProvider-B7BbX0O4.js.map → IrisGridThemeProvider-BUVz26Yu.js.map} +1 -1
- package/build/assets/{LocalWorkspaceStorage-TP2tU4ps.js → LocalWorkspaceStorage-C84CXhUy.js} +2 -2
- package/build/assets/{LocalWorkspaceStorage-TP2tU4ps.js.map → LocalWorkspaceStorage-C84CXhUy.js.map} +1 -1
- package/build/assets/{MarkdownEditor-DyOdbpw_.js → MarkdownEditor-aSWelw17.js} +2 -2
- package/build/assets/{MarkdownEditor-DyOdbpw_.js.map → MarkdownEditor-aSWelw17.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-CX1l5e1s.js → MarkdownNotebook-ootxm18m.js} +2 -2
- package/build/assets/{MarkdownNotebook-CX1l5e1s.js.map → MarkdownNotebook-ootxm18m.js.map} +1 -1
- package/build/assets/{MissingPartitionError-q0Wn61qO.js → MissingPartitionError-CPMKFcmL.js} +2 -2
- package/build/assets/{MissingPartitionError-q0Wn61qO.js.map → MissingPartitionError-CPMKFcmL.js.map} +1 -1
- package/build/assets/{MockChartModel-DYciIvB5.js → MockChartModel-NC-TS1K9.js} +2 -2
- package/build/assets/{MockChartModel-DYciIvB5.js.map → MockChartModel-NC-TS1K9.js.map} +1 -1
- package/build/assets/Plot-DCq52K02.js +2 -0
- package/build/assets/{Plot-DHNfiYe-.js.map → Plot-DCq52K02.js.map} +1 -1
- package/build/assets/{Plotly-DIclgnTU.js → Plotly-CLfP2rXn.js} +2 -2
- package/build/assets/{Plotly-DIclgnTU.js.map → Plotly-CLfP2rXn.js.map} +1 -1
- package/build/assets/{StyleGuideRoot-TOkeyDz6.js → StyleGuideRoot-Dx78QRHs.js} +2 -2
- package/build/assets/{StyleGuideRoot-TOkeyDz6.js.map → StyleGuideRoot-Dx78QRHs.js.map} +1 -1
- package/build/assets/{index-Di_lt6wv.js → index-BPz8hTEO.js} +4 -4
- package/build/assets/{index-Di_lt6wv.js.map → index-BPz8hTEO.js.map} +1 -1
- package/build/assets/{index-CFgwsxPO.js → index-Dyvkb3Mk.js} +2 -2
- package/build/assets/{index-CFgwsxPO.js.map → index-Dyvkb3Mk.js.map} +1 -1
- package/build/assets/{index-BEcvk55y.js → index-NemDdb6c.js} +3 -3
- package/build/assets/{index-BEcvk55y.js.map → index-NemDdb6c.js.map} +1 -1
- package/build/assets/{plotly-C8xrSeyU.js → plotly-DTzVdV-1.js} +5 -5
- package/build/assets/{plotly-C8xrSeyU.js.map → plotly-DTzVdV-1.js.map} +1 -1
- package/build/index.html +1 -1
- package/package.json +31 -31
- package/build/assets/ControlType-DCkug4yn.js.map +0 -1
- package/build/assets/Plot-DHNfiYe-.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{I as n,r as A,U as k,bE as C,ad as L}from"./vendor-_fAVrg-7.js";import{L as x,bT as j,cc as B,cd as I}from"./index-BEcvk55y.js";import{c as U}from"./Plotly-DIclgnTU.js";import{C as u,a as N}from"./IrisGridModel-DVwbkamj.js";import{Q as W,B as T,bH as _,ac as z,F as V,bi as K}from"./ControlType-DCkug4yn.js";import{D as $}from"./DownsamplingError--AAvWHv_.js";import{m as H}from"./useMergeRef-DYzW35yx.js";import{F as P}from"./FormatterUtils-4jp7pTd2.js";import{P as Y}from"./plotly-C8xrSeyU.js";import"./helpers-BosuxZz1.js";import"./monaco-DaE0jI-i.js";function R(i){var{errorMessage:e,onDiscard:t,onConfirm:r,onCancel:s,"data-testid":a}=i,l=a!=null?"".concat(a,"-message"):void 0;return n.jsx("div",{className:"chart-panel-overlay chart-error-overlay",children:n.jsxs("div",{className:"chart-panel-overlay-content chart-error-overlay-content",children:[n.jsxs("div",{className:"info-message","data-testid":l,children:[e,n.jsx(W,{copy:e,style:{margin:"0"}})]}),n.jsxs("div",{children:[s&&n.jsx(T,{onClick:s,kind:"secondary",children:"Cancel"}),t&&n.jsx(T,{onClick:t,kind:"secondary",children:"Dismiss"}),r&&n.jsx(T,{onClick:r,kind:"primary",children:"Continue"})]})]})})}function M(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(i);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(i,s).enumerable})),t.push.apply(t,r)}return t}function g(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?M(Object(t),!0).forEach(function(r){o(i,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):M(Object(t)).forEach(function(r){Object.defineProperty(i,r,Object.getOwnPropertyDescriptor(t,r))})}return i}function o(i,e,t){return(e=Z(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Z(i){var e=q(i,"string");return typeof e=="symbol"?e:e+""}function q(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var r=t.call(i,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var f=x.module("Chart");class b extends A.Component{static convertIcon(e){var[t,,,,r]=e.icon,s="".concat(r);return{width:t,path:s,ascent:t,descent:0,transform:"matrix(1, 0, 0, 1, 0, 0)"}}static downsampleButtonTitle(e,t){return e?"Downsampling in progress...":t?"Downsampling disabled, click to enable":"Downsampling enabled, click to disable"}static downsampleButtonAttr(e,t){return e?"animation-spin":t?void 0:"fill-active"}constructor(e){super(e),o(this,"currentSeries",void 0),o(this,"PlotComponent",void 0),o(this,"plot",void 0),o(this,"plotWrapper",void 0),o(this,"plotWrapperMerged",void 0),o(this,"columnFormats",void 0),o(this,"dateTimeFormatterOptions",void 0),o(this,"decimalFormatOptions",void 0),o(this,"integerFormatOptions",void 0),o(this,"webgl",void 0),o(this,"rect",void 0),o(this,"ranges",void 0),o(this,"isSubscribed",void 0),o(this,"isLoadedFired",void 0),o(this,"resizeObserver",void 0),o(this,"getCachedConfig",L((t,r,s,a,l,c)=>{var d=[],h=!!t;h&&d.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{this.toggleErrorMessage("".concat(t))},icon:b.convertIcon(j),attr:"fill-warning"});var m=!!c;if(m&&d.push({name:"Error: ".concat(c),title:"Error",click:()=>{this.toggleErrorMessage("".concat(c))},icon:b.convertIcon(j),attr:"fill-warning"}),r||s||a||h){var v=b.downsampleButtonTitle(s,a),D=b.downsampleButtonAttr(s,a),E=s?B:I;d.push({name:v,title:"Downsampling status",icon:b.convertIcon(E),click:this.handleDownsampleClick,attr:D})}var y=l.some(S=>{var{type:F}=S;return F!=null&&!F.includes("3d")}),p=l.some(S=>{var{type:F}=S;return F!=null&&F.includes("3d")}),w=["zoomIn2d","zoomOut2d","autoScale2d","resetScale2d"],O=["orbitRotation","tableRotation","resetCameraDefault3d"];return{displaylogo:!1,responsive:!0,displayModeBar:s||h||m?!0:"hover",modeBarButtons:[d,["toImage"],["zoom2d","pan2d"],[...y?w:[],...p?O:[]]]}})),z(this),this.PlotComponent=U(e.Plotly),this.plot=k.createRef(),this.plotWrapper=k.createRef(),this.plotWrapperMerged=H(this.plotWrapper,e.containerRef),this.columnFormats=[],this.dateTimeFormatterOptions={},this.decimalFormatOptions={},this.integerFormatOptions={},this.isSubscribed=!1,this.isLoadedFired=!1,this.currentSeries=0,this.resizeObserver=new window.ResizeObserver(this.handleResize),this.state={data:null,downsamplingError:null,isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,error:null,shownError:null,layout:{datarevision:0},revision:0,shownBlocker:null}}componentDidMount(){this.updateDimensions(),this.updateModelDimensions(),this.initData(),this.initFormatter();var{isActive:e,model:t}=this.props;e&&this.subscribe(t),this.plotWrapper.current!=null&&this.resizeObserver.observe(this.plotWrapper.current),this.handleThemeChange()}componentDidUpdate(e){var{isActive:t,model:r,settings:s,theme:a}=this.props;this.updateFormatterSettings(s),r!==e.model&&(this.unsubscribe(e.model),this.subscribe(r)),t!==e.isActive&&(t?(this.updateDimensions(),this.subscribe(r)):this.unsubscribe(r)),a!==e.theme&&this.handleThemeChange()}componentWillUnmount(){var{model:e}=this.props;this.unsubscribe(e),this.resizeObserver.disconnect()}getPlotRect(){var e,t;return(e=(t=this.plotWrapper.current)===null||t===void 0?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null}initData(){var{model:e}=this.props;this.setState(t=>{var{layout:r}=t;return{data:e.getData(),layout:g(g({},r),e.getLayout())}})}subscribe(e){if(!this.isSubscribed){if(!this.rect||this.rect.width===0||this.rect.height===0){f.debug2("Delaying subscription until model dimensions are set");return}e.subscribe(this.handleModelEvent),this.isSubscribed=!0}}unsubscribe(e){this.isSubscribed&&(e.unsubscribe(this.handleModelEvent),this.isSubscribed=!1)}handleAfterPlot(){this.plot.current!=null}handleDownsampleClick(){this.setState(e=>{var{isDownsamplingDisabled:t}=e;return{downsamplingError:null,isDownsampleInProgress:!1,isDownsampleFinished:!1,isDownsamplingDisabled:!t}},()=>{var{model:e}=this.props,{isDownsamplingDisabled:t}=this.state;e.setDownsamplingDisabled(t)})}handleErrorClose(){this.setState({shownError:null})}handleDownsampleErrorClose(){this.setState({downsamplingError:null})}handleModelEvent(e){var{type:t,detail:r}=e;switch(f.debug2("Received data update",t,r),t){case u.EVENT_UPDATED:{this.currentSeries+=1,this.setState(p=>{var{layout:w,revision:O}=p;return typeof w.datarevision=="number"&&(w.datarevision+=1),{data:r,layout:w,revision:O+1}});var{onUpdate:s}=this.props;s({isLoading:!this.isLoadedFired});break}case u.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case u.EVENT_DISCONNECT:{var{onDisconnect:l}=this.props;l();break}case u.EVENT_RECONNECT:{var{onReconnect:c}=this.props;c();break}case u.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case u.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case u.EVENT_DOWNSAMPLENEEDED:case u.EVENT_DOWNSAMPLEFAILED:{var d,h=(d=r.message)!==null&&d!==void 0?d:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:h});var{onError:m}=this.props;m(new $(h==null?void 0:"".concat(h)));break}case u.EVENT_ERROR:{var v="".concat(r);this.setState({error:v});var{onError:D}=this.props;D(new Error(v));break}case u.EVENT_BLOCKER:{var E="".concat(r);this.setState({shownBlocker:E});break}case u.EVENT_BLOCKER_CLEAR:{this.setState({shownBlocker:null});break}case u.EVENT_LAYOUT_UPDATED:{var y=r;this.setState(p=>{var{layout:w,revision:O}=p;return{layout:g(g({},w),y),revision:O+1}});break}default:f.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=N.getLayoutRanges(t),s=!C(r,this.ranges);s&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if(f.debug("handleRelayout",e),e.hiddenlabels!=null){var{onSettingsChanged:t}=this.props,r=[...e.hiddenlabels];t({hiddenSeries:r})}this.updateModelDimensions()}handleResize(){this.updateDimensions()}handleRestyle(e){var[t,r]=e;if(f.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:s}=this.state,{onSettingsChanged:a}=this.props;if(s!=null){var l=s.reduce((c,d)=>{var{name:h,visible:m}=d;return h!=null&&m==="legendonly"?[...c,h]:c},[]);a({hiddenSeries:l})}}}handleThemeChange(){var{theme:e,model:t}=this.props,{dh:r}=t,s=new N(r);this.setState(a=>{var{layout:l}=a;return{layout:g(g({},l),{},{template:s.makeDefaultTemplate(e)})}})}toggleErrorMessage(e){this.setState(t=>{var{shownError:r}=t;return{shownError:r===e?null:e}})}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){f.warn("Unable to get plotting rect");return}var r=!this.rect||this.rect.width!==t.width||this.rect.height!==t.height;if(r||e){this.rect=t;var{isActive:s,model:a}=this.props;a.setDimensions(t),s&&this.subscribe(a)}}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}updateFormatterSettings(e){var t=P.getColumnFormats(e),r=P.getDateTimeFormatterOptions(e),{defaultDecimalFormatOptions:s={},defaultIntegerFormatOptions:a={}}=e;(!C(this.columnFormats,t)||!C(this.dateTimeFormatterOptions,r)||!C(this.decimalFormatOptions,s)||!C(this.integerFormatOptions,a))&&(this.columnFormats=P.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=s,this.integerFormatOptions=a,this.updateFormatter()),this.webgl!==e.webgl&&(this.webgl=e.webgl,this.updateRenderOptions())}updateFormatter(){var{model:e}=this.props,t=new V(e.dh,this.columnFormats,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions);e.setFormatter(t)}updateRenderOptions(){var{model:e}=this.props,t={webgl:this.webgl};e.setRenderOptions(t)}updateDimensions(){var e=this.getPlotRect(),{Plotly:t}=this.props;this.plot.current!=null&&e!=null&&e.width>0&&e.height>0&&t.relayout(this.plot.current.el,{autosize:!0}).catch(r=>{f.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:s,isDownsampleInProgress:a,isDownsamplingDisabled:l,error:c,shownError:d,layout:h,revision:m,shownBlocker:v}=this.state,D=this.getCachedConfig(r,s,a,l,t??[],c),{model:E}=this.props,y=t!=null&&v==null,p=null;return v!=null?p=n.jsx(R,{errorMessage:"".concat(v),onConfirm:()=>{E.fireBlockerClear()}}):d!=null?p=n.jsx(R,{errorMessage:"".concat(r),onDiscard:()=>{this.handleDownsampleErrorClose()},onConfirm:()=>{this.handleDownsampleErrorClose(),this.handleDownsampleClick()}}):r!=null&&(p=n.jsx(R,{errorMessage:"".concat(r),onDiscard:()=>{this.handleDownsampleErrorClose()},onConfirm:()=>{this.handleDownsampleErrorClose(),this.handleDownsampleClick()}})),n.jsxs("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapperMerged,children:[y&&n.jsx(e,{ref:this.plot,data:t,layout:h,revision:m,config:D,onAfterPlot:this.handleAfterPlot,onError:f.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,style:{height:"100%",width:"100%"}}),p]})}}o(b,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:K.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[],webgl:!0},Plotly:Y,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});function ne(i){var e=_();return n.jsx(b,g(g({},i),{},{theme:e}))}export{ne as default};
|
|
2
|
-
//# sourceMappingURL=Chart-
|
|
1
|
+
import{I as n,r as A,U as k,bE as C,ad as L}from"./vendor-_fAVrg-7.js";import{L as x,bT as j,cc as B,cd as I}from"./index-NemDdb6c.js";import{c as U}from"./Plotly-CLfP2rXn.js";import{C as u,a as N}from"./IrisGridModel-BGDQQUvO.js";import{Q as W,B as T,bH as _,ac as z,F as V,bi as K}from"./ControlType-Dv3CuLYR.js";import{D as $}from"./DownsamplingError--AAvWHv_.js";import{m as H}from"./useMergeRef-DYzW35yx.js";import{F as P}from"./FormatterUtils-i8ji1C5d.js";import{P as Y}from"./plotly-DTzVdV-1.js";import"./helpers-BosuxZz1.js";import"./monaco-DaE0jI-i.js";function R(i){var{errorMessage:e,onDiscard:t,onConfirm:r,onCancel:s,"data-testid":a}=i,l=a!=null?"".concat(a,"-message"):void 0;return n.jsx("div",{className:"chart-panel-overlay chart-error-overlay",children:n.jsxs("div",{className:"chart-panel-overlay-content chart-error-overlay-content",children:[n.jsxs("div",{className:"info-message","data-testid":l,children:[e,n.jsx(W,{copy:e,style:{margin:"0"}})]}),n.jsxs("div",{children:[s&&n.jsx(T,{onClick:s,kind:"secondary",children:"Cancel"}),t&&n.jsx(T,{onClick:t,kind:"secondary",children:"Dismiss"}),r&&n.jsx(T,{onClick:r,kind:"primary",children:"Continue"})]})]})})}function M(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(i);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(i,s).enumerable})),t.push.apply(t,r)}return t}function g(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?M(Object(t),!0).forEach(function(r){o(i,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):M(Object(t)).forEach(function(r){Object.defineProperty(i,r,Object.getOwnPropertyDescriptor(t,r))})}return i}function o(i,e,t){return(e=Z(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Z(i){var e=q(i,"string");return typeof e=="symbol"?e:e+""}function q(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var r=t.call(i,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var f=x.module("Chart");class b extends A.Component{static convertIcon(e){var[t,,,,r]=e.icon,s="".concat(r);return{width:t,path:s,ascent:t,descent:0,transform:"matrix(1, 0, 0, 1, 0, 0)"}}static downsampleButtonTitle(e,t){return e?"Downsampling in progress...":t?"Downsampling disabled, click to enable":"Downsampling enabled, click to disable"}static downsampleButtonAttr(e,t){return e?"animation-spin":t?void 0:"fill-active"}constructor(e){super(e),o(this,"currentSeries",void 0),o(this,"PlotComponent",void 0),o(this,"plot",void 0),o(this,"plotWrapper",void 0),o(this,"plotWrapperMerged",void 0),o(this,"columnFormats",void 0),o(this,"dateTimeFormatterOptions",void 0),o(this,"decimalFormatOptions",void 0),o(this,"integerFormatOptions",void 0),o(this,"webgl",void 0),o(this,"rect",void 0),o(this,"ranges",void 0),o(this,"isSubscribed",void 0),o(this,"isLoadedFired",void 0),o(this,"resizeObserver",void 0),o(this,"getCachedConfig",L((t,r,s,a,l,c)=>{var d=[],h=!!t;h&&d.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{this.toggleErrorMessage("".concat(t))},icon:b.convertIcon(j),attr:"fill-warning"});var m=!!c;if(m&&d.push({name:"Error: ".concat(c),title:"Error",click:()=>{this.toggleErrorMessage("".concat(c))},icon:b.convertIcon(j),attr:"fill-warning"}),r||s||a||h){var v=b.downsampleButtonTitle(s,a),D=b.downsampleButtonAttr(s,a),E=s?B:I;d.push({name:v,title:"Downsampling status",icon:b.convertIcon(E),click:this.handleDownsampleClick,attr:D})}var y=l.some(S=>{var{type:F}=S;return F!=null&&!F.includes("3d")}),p=l.some(S=>{var{type:F}=S;return F!=null&&F.includes("3d")}),w=["zoomIn2d","zoomOut2d","autoScale2d","resetScale2d"],O=["orbitRotation","tableRotation","resetCameraDefault3d"];return{displaylogo:!1,responsive:!0,displayModeBar:s||h||m?!0:"hover",modeBarButtons:[d,["toImage"],["zoom2d","pan2d"],[...y?w:[],...p?O:[]]]}})),z(this),this.PlotComponent=U(e.Plotly),this.plot=k.createRef(),this.plotWrapper=k.createRef(),this.plotWrapperMerged=H(this.plotWrapper,e.containerRef),this.columnFormats=[],this.dateTimeFormatterOptions={},this.decimalFormatOptions={},this.integerFormatOptions={},this.isSubscribed=!1,this.isLoadedFired=!1,this.currentSeries=0,this.resizeObserver=new window.ResizeObserver(this.handleResize),this.state={data:null,downsamplingError:null,isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,error:null,shownError:null,layout:{datarevision:0},revision:0,shownBlocker:null}}componentDidMount(){this.updateDimensions(),this.updateModelDimensions(),this.initData(),this.initFormatter();var{isActive:e,model:t}=this.props;e&&this.subscribe(t),this.plotWrapper.current!=null&&this.resizeObserver.observe(this.plotWrapper.current),this.handleThemeChange()}componentDidUpdate(e){var{isActive:t,model:r,settings:s,theme:a}=this.props;this.updateFormatterSettings(s),r!==e.model&&(this.unsubscribe(e.model),this.subscribe(r)),t!==e.isActive&&(t?(this.updateDimensions(),this.subscribe(r)):this.unsubscribe(r)),a!==e.theme&&this.handleThemeChange()}componentWillUnmount(){var{model:e}=this.props;this.unsubscribe(e),this.resizeObserver.disconnect()}getPlotRect(){var e,t;return(e=(t=this.plotWrapper.current)===null||t===void 0?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null}initData(){var{model:e}=this.props;this.setState(t=>{var{layout:r}=t;return{data:e.getData(),layout:g(g({},r),e.getLayout())}})}subscribe(e){if(!this.isSubscribed){if(!this.rect||this.rect.width===0||this.rect.height===0){f.debug2("Delaying subscription until model dimensions are set");return}e.subscribe(this.handleModelEvent),this.isSubscribed=!0}}unsubscribe(e){this.isSubscribed&&(e.unsubscribe(this.handleModelEvent),this.isSubscribed=!1)}handleAfterPlot(){this.plot.current!=null}handleDownsampleClick(){this.setState(e=>{var{isDownsamplingDisabled:t}=e;return{downsamplingError:null,isDownsampleInProgress:!1,isDownsampleFinished:!1,isDownsamplingDisabled:!t}},()=>{var{model:e}=this.props,{isDownsamplingDisabled:t}=this.state;e.setDownsamplingDisabled(t)})}handleErrorClose(){this.setState({shownError:null})}handleDownsampleErrorClose(){this.setState({downsamplingError:null})}handleModelEvent(e){var{type:t,detail:r}=e;switch(f.debug2("Received data update",t,r),t){case u.EVENT_UPDATED:{this.currentSeries+=1,this.setState(p=>{var{layout:w,revision:O}=p;return typeof w.datarevision=="number"&&(w.datarevision+=1),{data:r,layout:w,revision:O+1}});var{onUpdate:s}=this.props;s({isLoading:!this.isLoadedFired});break}case u.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case u.EVENT_DISCONNECT:{var{onDisconnect:l}=this.props;l();break}case u.EVENT_RECONNECT:{var{onReconnect:c}=this.props;c();break}case u.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case u.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case u.EVENT_DOWNSAMPLENEEDED:case u.EVENT_DOWNSAMPLEFAILED:{var d,h=(d=r.message)!==null&&d!==void 0?d:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:h});var{onError:m}=this.props;m(new $(h==null?void 0:"".concat(h)));break}case u.EVENT_ERROR:{var v="".concat(r);this.setState({error:v});var{onError:D}=this.props;D(new Error(v));break}case u.EVENT_BLOCKER:{var E="".concat(r);this.setState({shownBlocker:E});break}case u.EVENT_BLOCKER_CLEAR:{this.setState({shownBlocker:null});break}case u.EVENT_LAYOUT_UPDATED:{var y=r;this.setState(p=>{var{layout:w,revision:O}=p;return{layout:g(g({},w),y),revision:O+1}});break}default:f.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=N.getLayoutRanges(t),s=!C(r,this.ranges);s&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if(f.debug("handleRelayout",e),e.hiddenlabels!=null){var{onSettingsChanged:t}=this.props,r=[...e.hiddenlabels];t({hiddenSeries:r})}this.updateModelDimensions()}handleResize(){this.updateDimensions()}handleRestyle(e){var[t,r]=e;if(f.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:s}=this.state,{onSettingsChanged:a}=this.props;if(s!=null){var l=s.reduce((c,d)=>{var{name:h,visible:m}=d;return h!=null&&m==="legendonly"?[...c,h]:c},[]);a({hiddenSeries:l})}}}handleThemeChange(){var{theme:e,model:t}=this.props,{dh:r}=t,s=new N(r);this.setState(a=>{var{layout:l}=a;return{layout:g(g({},l),{},{template:s.makeDefaultTemplate(e)})}})}toggleErrorMessage(e){this.setState(t=>{var{shownError:r}=t;return{shownError:r===e?null:e}})}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){f.warn("Unable to get plotting rect");return}var r=!this.rect||this.rect.width!==t.width||this.rect.height!==t.height;if(r||e){this.rect=t;var{isActive:s,model:a}=this.props;a.setDimensions(t),s&&this.subscribe(a)}}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}updateFormatterSettings(e){var t=P.getColumnFormats(e),r=P.getDateTimeFormatterOptions(e),{defaultDecimalFormatOptions:s={},defaultIntegerFormatOptions:a={}}=e;(!C(this.columnFormats,t)||!C(this.dateTimeFormatterOptions,r)||!C(this.decimalFormatOptions,s)||!C(this.integerFormatOptions,a))&&(this.columnFormats=P.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=s,this.integerFormatOptions=a,this.updateFormatter()),this.webgl!==e.webgl&&(this.webgl=e.webgl,this.updateRenderOptions())}updateFormatter(){var{model:e}=this.props,t=new V(e.dh,this.columnFormats,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions);e.setFormatter(t)}updateRenderOptions(){var{model:e}=this.props,t={webgl:this.webgl};e.setRenderOptions(t)}updateDimensions(){var e=this.getPlotRect(),{Plotly:t}=this.props;this.plot.current!=null&&e!=null&&e.width>0&&e.height>0&&t.relayout(this.plot.current.el,{autosize:!0}).catch(r=>{f.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:s,isDownsampleInProgress:a,isDownsamplingDisabled:l,error:c,shownError:d,layout:h,revision:m,shownBlocker:v}=this.state,D=this.getCachedConfig(r,s,a,l,t??[],c),{model:E}=this.props,y=t!=null&&v==null,p=null;return v!=null?p=n.jsx(R,{errorMessage:"".concat(v),onConfirm:()=>{E.fireBlockerClear()}}):d!=null?p=n.jsx(R,{errorMessage:"".concat(r),onDiscard:()=>{this.handleDownsampleErrorClose()},onConfirm:()=>{this.handleDownsampleErrorClose(),this.handleDownsampleClick()}}):r!=null&&(p=n.jsx(R,{errorMessage:"".concat(r),onDiscard:()=>{this.handleDownsampleErrorClose()},onConfirm:()=>{this.handleDownsampleErrorClose(),this.handleDownsampleClick()}})),n.jsxs("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapperMerged,children:[y&&n.jsx(e,{ref:this.plot,data:t,layout:h,revision:m,config:D,onAfterPlot:this.handleAfterPlot,onError:f.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,style:{height:"100%",width:"100%"}}),p]})}}o(b,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:K.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[],webgl:!0},Plotly:Y,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});function ne(i){var e=_();return n.jsx(b,g(g({},i),{},{theme:e}))}export{ne as default};
|
|
2
|
+
//# sourceMappingURL=Chart-JHkKKPMG.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chart-BmwOqJNH.js","sources":["../../../chart/dist/ChartErrorOverlay.js","../../../chart/dist/Chart.js"],"sourcesContent":["import { CopyButton, Button } from '@deephaven/components';\nimport \"./ChartErrorOverlay.css\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction ChartErrorOverlay(_ref) {\n var {\n errorMessage,\n onDiscard,\n onConfirm,\n onCancel,\n 'data-testid': dataTestId\n } = _ref;\n var messageTestId = dataTestId != null ? \"\".concat(dataTestId, \"-message\") : undefined;\n return /*#__PURE__*/_jsx(\"div\", {\n className: \"chart-panel-overlay chart-error-overlay\",\n children: /*#__PURE__*/_jsxs(\"div\", {\n className: \"chart-panel-overlay-content chart-error-overlay-content\",\n children: [/*#__PURE__*/_jsxs(\"div\", {\n className: \"info-message\",\n \"data-testid\": messageTestId,\n children: [errorMessage, /*#__PURE__*/_jsx(CopyButton, {\n copy: errorMessage,\n style: {\n margin: '0'\n }\n })]\n }), /*#__PURE__*/_jsxs(\"div\", {\n children: [onCancel && /*#__PURE__*/_jsx(Button, {\n onClick: onCancel,\n kind: \"secondary\",\n children: \"Cancel\"\n }), onDiscard && /*#__PURE__*/_jsx(Button, {\n onClick: onDiscard,\n kind: \"secondary\",\n children: \"Dismiss\"\n }), onConfirm && /*#__PURE__*/_jsx(Button, {\n onClick: onConfirm,\n kind: \"primary\",\n children: \"Continue\"\n })]\n })]\n })\n });\n}\nexport default ChartErrorOverlay;\n//# sourceMappingURL=ChartErrorOverlay.js.map","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { Component } from 'react';\nimport deepEqual from 'fast-deep-equal';\nimport memoize from 'memoize-one';\nimport { vsLoading, dhGraphLineDown, dhWarningFilled } from '@deephaven/icons';\nimport { Formatter, FormatterUtils, DateUtils } from '@deephaven/jsapi-utils';\nimport Log from '@deephaven/log';\nimport { mergeRefs } from '@deephaven/react-hooks';\nimport { bindAllMethods } from '@deephaven/utils';\nimport createPlotlyComponent from \"./plotly/createPlotlyComponent.js\";\nimport Plotly from \"./plotly/Plotly.js\";\nimport ChartModel from \"./ChartModel.js\";\nimport ChartErrorOverlay from \"./ChartErrorOverlay.js\";\nimport ChartUtils from \"./ChartUtils.js\";\nimport \"./Chart.css\";\nimport DownsamplingError from \"./DownsamplingError.js\";\nimport useChartTheme from \"./useChartTheme.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar log = Log.module('Chart');\n\n// All of the ChartProps have default values except for model in the Chart\n// component, hence the Partial here.\n\nclass Chart extends Component {\n /**\n * Convert a font awesome icon definition to a plotly icon definition\n * @param faIcon The icon to convert\n */\n static convertIcon(faIcon) {\n var [width,,,, path] = faIcon.icon;\n // By default the icons are flipped upside down, so we need to add our own transform\n // https://github.com/plotly/plotly.js/issues/1335\n var stringPath = \"\".concat(path);\n return {\n width,\n path: stringPath,\n ascent: width,\n descent: 0,\n transform: \"matrix(1, 0, 0, 1, 0, 0)\"\n };\n }\n static downsampleButtonTitle(isDownsampleInProgress, isDownsamplingDisabled) {\n if (isDownsampleInProgress) {\n return 'Downsampling in progress...';\n }\n return isDownsamplingDisabled ? 'Downsampling disabled, click to enable' : 'Downsampling enabled, click to disable';\n }\n static downsampleButtonAttr(isDownsampleInProgress, isDownsamplingDisabled) {\n if (isDownsampleInProgress) {\n return 'animation-spin';\n }\n return isDownsamplingDisabled ? undefined : 'fill-active';\n }\n constructor(props) {\n super(props);\n _defineProperty(this, \"currentSeries\", void 0);\n _defineProperty(this, \"PlotComponent\", void 0);\n _defineProperty(this, \"plot\", void 0);\n _defineProperty(this, \"plotWrapper\", void 0);\n _defineProperty(this, \"plotWrapperMerged\", void 0);\n _defineProperty(this, \"columnFormats\", void 0);\n _defineProperty(this, \"dateTimeFormatterOptions\", void 0);\n _defineProperty(this, \"decimalFormatOptions\", void 0);\n _defineProperty(this, \"integerFormatOptions\", void 0);\n _defineProperty(this, \"webgl\", void 0);\n _defineProperty(this, \"rect\", void 0);\n _defineProperty(this, \"ranges\", void 0);\n _defineProperty(this, \"isSubscribed\", void 0);\n _defineProperty(this, \"isLoadedFired\", void 0);\n // Listen for resizing of the element and update the canvas appropriately\n _defineProperty(this, \"resizeObserver\", void 0);\n _defineProperty(this, \"getCachedConfig\", memoize((downsamplingError, isDownsampleFinished, isDownsampleInProgress, isDownsamplingDisabled, data, error) => {\n var customButtons = [];\n var hasDownsampleError = Boolean(downsamplingError);\n if (hasDownsampleError) {\n customButtons.push({\n name: \"Downsampling failed: \".concat(downsamplingError),\n title: 'Downsampling failed',\n click: () => {\n this.toggleErrorMessage(\"\".concat(downsamplingError));\n },\n icon: Chart.convertIcon(dhWarningFilled),\n attr: 'fill-warning'\n });\n }\n var hasError = Boolean(error);\n if (hasError) {\n customButtons.push({\n name: \"Error: \".concat(error),\n title: \"Error\",\n click: () => {\n this.toggleErrorMessage(\"\".concat(error));\n },\n icon: Chart.convertIcon(dhWarningFilled),\n attr: 'fill-warning'\n });\n }\n if (isDownsampleFinished || isDownsampleInProgress || isDownsamplingDisabled || hasDownsampleError) {\n var name = Chart.downsampleButtonTitle(isDownsampleInProgress, isDownsamplingDisabled);\n var attr = Chart.downsampleButtonAttr(isDownsampleInProgress, isDownsamplingDisabled);\n var icon = isDownsampleInProgress ? vsLoading : dhGraphLineDown;\n customButtons.push({\n name,\n title: 'Downsampling status',\n icon: Chart.convertIcon(icon),\n click: this.handleDownsampleClick,\n attr\n });\n }\n var has2D = data.some(_ref => {\n var {\n type\n } = _ref;\n return type != null && !type.includes('3d');\n });\n var has3D = data.some(_ref2 => {\n var {\n type\n } = _ref2;\n return type != null && type.includes('3d');\n });\n var buttons2D = ['zoomIn2d', 'zoomOut2d', 'autoScale2d', 'resetScale2d'];\n var buttons3D = ['orbitRotation', 'tableRotation', 'resetCameraDefault3d'];\n return {\n displaylogo: false,\n // scales the plot to the container size\n // https://github.com/plotly/react-plotly.js/issues/102\n responsive: true,\n // Display the mode bar if there's an error or downsampling so user can see progress\n // Yes, the value is a boolean or the string 'hover': https://github.com/plotly/plotly.js/blob/master/src/plot_api/plot_config.js#L249\n displayModeBar:\n // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\n isDownsampleInProgress || hasDownsampleError || hasError ? true : 'hover',\n // Each array gets grouped together in the mode bar\n modeBarButtons: [customButtons, ['toImage'], ['zoom2d', 'pan2d'],\n // These work the same for both 2d and 3d\n [...(has2D ? buttons2D : []), ...(has3D ? buttons3D : [])]]\n };\n }));\n bindAllMethods(this);\n this.PlotComponent = createPlotlyComponent(props.Plotly);\n this.plot = /*#__PURE__*/React.createRef();\n this.plotWrapper = /*#__PURE__*/React.createRef();\n this.plotWrapperMerged = mergeRefs(this.plotWrapper, props.containerRef);\n this.columnFormats = [];\n this.dateTimeFormatterOptions = {};\n this.decimalFormatOptions = {};\n this.integerFormatOptions = {};\n this.isSubscribed = false;\n this.isLoadedFired = false;\n this.currentSeries = 0;\n this.resizeObserver = new window.ResizeObserver(this.handleResize);\n this.state = {\n data: null,\n downsamplingError: null,\n isDownsampleFinished: false,\n isDownsampleInProgress: false,\n isDownsamplingDisabled: false,\n error: null,\n shownError: null,\n layout: {\n datarevision: 0\n },\n revision: 0,\n shownBlocker: null\n };\n }\n componentDidMount() {\n // Need to make sure the model dimensions are up to date before initializing the data\n this.updateDimensions();\n this.updateModelDimensions();\n this.initData();\n this.initFormatter();\n var {\n isActive,\n model\n } = this.props;\n if (isActive) {\n this.subscribe(model);\n }\n if (this.plotWrapper.current != null) {\n this.resizeObserver.observe(this.plotWrapper.current);\n }\n this.handleThemeChange();\n }\n componentDidUpdate(prevProps) {\n var {\n isActive,\n model,\n settings,\n theme\n } = this.props;\n this.updateFormatterSettings(settings);\n if (model !== prevProps.model) {\n this.unsubscribe(prevProps.model);\n this.subscribe(model);\n }\n if (isActive !== prevProps.isActive) {\n if (isActive) {\n this.updateDimensions();\n this.subscribe(model);\n } else {\n this.unsubscribe(model);\n }\n }\n if (theme !== prevProps.theme) {\n this.handleThemeChange();\n }\n }\n componentWillUnmount() {\n var {\n model\n } = this.props;\n this.unsubscribe(model);\n this.resizeObserver.disconnect();\n }\n getPlotRect() {\n var _this$plotWrapper$cur, _this$plotWrapper$cur2;\n return (_this$plotWrapper$cur = (_this$plotWrapper$cur2 = this.plotWrapper.current) === null || _this$plotWrapper$cur2 === void 0 ? void 0 : _this$plotWrapper$cur2.getBoundingClientRect()) !== null && _this$plotWrapper$cur !== void 0 ? _this$plotWrapper$cur : null;\n }\n initData() {\n var {\n model\n } = this.props;\n this.setState(_ref3 => {\n var {\n layout\n } = _ref3;\n return {\n data: model.getData(),\n layout: _objectSpread(_objectSpread({}, layout), model.getLayout())\n };\n });\n }\n subscribe(model) {\n if (this.isSubscribed) {\n return;\n }\n if (!this.rect || this.rect.width === 0 || this.rect.height === 0) {\n log.debug2('Delaying subscription until model dimensions are set');\n return;\n }\n model.subscribe(this.handleModelEvent);\n this.isSubscribed = true;\n }\n unsubscribe(model) {\n if (!this.isSubscribed) {\n return;\n }\n model.unsubscribe(this.handleModelEvent);\n this.isSubscribed = false;\n }\n handleAfterPlot() {\n if (this.plot.current != null) {\n // TODO: Translate whatever Don was doing in plotting.js in the afterplot here so that area graphs show up properly\n }\n }\n handleDownsampleClick() {\n this.setState(_ref4 => {\n var {\n isDownsamplingDisabled\n } = _ref4;\n return {\n downsamplingError: null,\n isDownsampleInProgress: false,\n isDownsampleFinished: false,\n isDownsamplingDisabled: !isDownsamplingDisabled\n };\n }, () => {\n var {\n model\n } = this.props;\n var {\n isDownsamplingDisabled\n } = this.state;\n model.setDownsamplingDisabled(isDownsamplingDisabled);\n });\n }\n handleErrorClose() {\n this.setState({\n shownError: null\n });\n }\n handleDownsampleErrorClose() {\n this.setState({\n downsamplingError: null\n });\n }\n handleModelEvent(event) {\n var {\n type,\n detail\n } = event;\n log.debug2('Received data update', type, detail);\n switch (type) {\n case ChartModel.EVENT_UPDATED:\n {\n this.currentSeries += 1;\n this.setState(state => {\n var {\n layout,\n revision\n } = state;\n if (typeof layout.datarevision === 'number') {\n layout.datarevision += 1;\n }\n return {\n data: detail,\n layout,\n revision: revision + 1\n };\n });\n var {\n onUpdate\n } = this.props;\n onUpdate({\n isLoading: !this.isLoadedFired\n });\n break;\n }\n case ChartModel.EVENT_LOADFINISHED:\n {\n var {\n onUpdate: _onUpdate\n } = this.props;\n this.isLoadedFired = true;\n _onUpdate({\n isLoading: false\n });\n break;\n }\n case ChartModel.EVENT_DISCONNECT:\n {\n var {\n onDisconnect\n } = this.props;\n onDisconnect();\n break;\n }\n case ChartModel.EVENT_RECONNECT:\n {\n var {\n onReconnect\n } = this.props;\n onReconnect();\n break;\n }\n case ChartModel.EVENT_DOWNSAMPLESTARTED:\n {\n this.setState({\n isDownsampleFinished: false,\n isDownsampleInProgress: true,\n downsamplingError: null\n });\n break;\n }\n case ChartModel.EVENT_DOWNSAMPLEFINISHED:\n {\n this.setState({\n isDownsampleFinished: true,\n isDownsampleInProgress: false,\n downsamplingError: null\n });\n break;\n }\n case ChartModel.EVENT_DOWNSAMPLENEEDED:\n case ChartModel.EVENT_DOWNSAMPLEFAILED:\n {\n var _message;\n var downsamplingError = (_message = detail.message) !== null && _message !== void 0 ? _message : detail;\n this.setState({\n isDownsampleFinished: false,\n isDownsampleInProgress: false,\n isDownsamplingDisabled: false,\n downsamplingError\n });\n var {\n onError\n } = this.props;\n onError(new DownsamplingError(downsamplingError == null ? undefined : \"\".concat(downsamplingError)));\n break;\n }\n case ChartModel.EVENT_ERROR:\n {\n var error = \"\".concat(detail);\n this.setState({\n error\n });\n var {\n onError: _onError\n } = this.props;\n _onError(new Error(error));\n break;\n }\n case ChartModel.EVENT_BLOCKER:\n {\n var blocker = \"\".concat(detail);\n this.setState({\n shownBlocker: blocker\n });\n break;\n }\n case ChartModel.EVENT_BLOCKER_CLEAR:\n {\n this.setState({\n shownBlocker: null\n });\n break;\n }\n case ChartModel.EVENT_LAYOUT_UPDATED:\n {\n var newLayout = detail;\n this.setState(_ref5 => {\n var {\n layout,\n revision\n } = _ref5;\n return {\n layout: _objectSpread(_objectSpread({}, layout), newLayout),\n revision: revision + 1\n };\n });\n break;\n }\n default:\n log.debug('Unknown event type', type, event);\n }\n }\n handlePlotUpdate(figure) {\n // User could have modified zoom/pan here, update the model dimensions\n // We don't need to update the datarevision, as we don't have any data changes\n // until an update comes back from the server anyway\n var {\n layout\n } = figure;\n var ranges = ChartUtils.getLayoutRanges(layout);\n var isRangesChanged = !deepEqual(ranges, this.ranges);\n if (isRangesChanged) {\n this.ranges = ranges;\n this.updateModelDimensions(true);\n }\n }\n handleRelayout(changes) {\n log.debug('handleRelayout', changes);\n if (changes.hiddenlabels != null) {\n var {\n onSettingsChanged\n } = this.props;\n // Pie charts store series visibility in layout.hiddenlabels and trigger relayout on changes\n // Series visibility for other types of charts is handled in handleRestyle\n var hiddenSeries = [...changes.hiddenlabels];\n onSettingsChanged({\n hiddenSeries\n });\n }\n this.updateModelDimensions();\n }\n handleResize() {\n this.updateDimensions();\n }\n handleRestyle(_ref6) {\n var [changes, seriesIndexes] = _ref6;\n log.debug('handleRestyle', changes, seriesIndexes);\n if (Object.keys(changes).includes('visible')) {\n var {\n data\n } = this.state;\n var {\n onSettingsChanged\n } = this.props;\n if (data != null) {\n var hiddenSeries = data.reduce((acc, _ref7) => {\n var {\n name,\n visible\n } = _ref7;\n return name != null && visible === 'legendonly' ? [...acc, name] : acc;\n }, []);\n onSettingsChanged({\n hiddenSeries\n });\n }\n }\n }\n handleThemeChange() {\n var {\n theme,\n model\n } = this.props;\n var {\n dh\n } = model;\n var chartUtils = new ChartUtils(dh);\n this.setState(_ref8 => {\n var {\n layout\n } = _ref8;\n return {\n layout: _objectSpread(_objectSpread({}, layout), {}, {\n template: chartUtils.makeDefaultTemplate(theme)\n })\n };\n });\n }\n\n /**\n * Toggle the error message. If it is already being displayed, then hide it.\n */\n toggleErrorMessage(error) {\n this.setState(_ref9 => {\n var {\n shownError\n } = _ref9;\n return {\n shownError: shownError === error ? null : error\n };\n });\n }\n\n /**\n * Update the models dimensions and ranges.\n * Note that this will update it all whether the plot size changes OR the range\n * the user is looking at has changed (eg. panning/zooming).\n * Could update each independently, but doing them at the same time keeps the\n * ChartModel API a bit cleaner.\n * @param force Force a change even if the chart dimensions haven't changed (eg. after pan/zoom)\n */\n updateModelDimensions() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var rect = this.getPlotRect();\n if (!rect) {\n log.warn('Unable to get plotting rect');\n return;\n }\n var isRectChanged = !this.rect || this.rect.width !== rect.width || this.rect.height !== rect.height;\n if (isRectChanged || force) {\n this.rect = rect;\n var {\n isActive,\n model\n } = this.props;\n model.setDimensions(rect);\n // We may need to resubscribe if dimensions were too small before\n if (isActive) {\n this.subscribe(model);\n }\n }\n }\n initFormatter() {\n var {\n settings\n } = this.props;\n this.updateFormatterSettings(settings);\n }\n updateFormatterSettings(settings) {\n var columnFormats = FormatterUtils.getColumnFormats(settings);\n var dateTimeFormatterOptions = FormatterUtils.getDateTimeFormatterOptions(settings);\n var {\n defaultDecimalFormatOptions = {},\n defaultIntegerFormatOptions = {}\n } = settings;\n if (!deepEqual(this.columnFormats, columnFormats) || !deepEqual(this.dateTimeFormatterOptions, dateTimeFormatterOptions) || !deepEqual(this.decimalFormatOptions, defaultDecimalFormatOptions) || !deepEqual(this.integerFormatOptions, defaultIntegerFormatOptions)) {\n this.columnFormats = FormatterUtils.getColumnFormats(settings);\n this.dateTimeFormatterOptions = dateTimeFormatterOptions;\n this.decimalFormatOptions = defaultDecimalFormatOptions;\n this.integerFormatOptions = defaultIntegerFormatOptions;\n this.updateFormatter();\n }\n if (this.webgl !== settings.webgl) {\n this.webgl = settings.webgl;\n this.updateRenderOptions();\n }\n }\n updateFormatter() {\n var {\n model\n } = this.props;\n var formatter = new Formatter(model.dh, this.columnFormats, this.dateTimeFormatterOptions, this.decimalFormatOptions, this.integerFormatOptions);\n model.setFormatter(formatter);\n }\n updateRenderOptions() {\n var {\n model\n } = this.props;\n var renderOptions = {\n webgl: this.webgl\n };\n model.setRenderOptions(renderOptions);\n }\n updateDimensions() {\n var rect = this.getPlotRect();\n var {\n Plotly: PlotlyProp\n } = this.props;\n if (this.plot.current != null && rect != null && rect.width > 0 && rect.height > 0) {\n // Call relayout to resize avoiding the debouncing plotly does\n // https://github.com/plotly/plotly.js/issues/2769#issuecomment-402099552\n PlotlyProp.relayout(this.plot.current.el, {\n autosize: true\n }).catch(e => {\n log.debug('Unable to resize, promise rejected', e);\n });\n }\n }\n render() {\n var {\n PlotComponent\n } = this;\n var {\n data,\n downsamplingError,\n isDownsampleFinished,\n isDownsampleInProgress,\n isDownsamplingDisabled,\n error,\n shownError,\n layout,\n revision,\n shownBlocker\n } = this.state;\n var config = this.getCachedConfig(downsamplingError, isDownsampleFinished, isDownsampleInProgress, isDownsamplingDisabled, data !== null && data !== void 0 ? data : [], error);\n var {\n model\n } = this.props;\n var isPlotShown = data != null && shownBlocker == null;\n var errorOverlay = null;\n if (shownBlocker != null) {\n errorOverlay = /*#__PURE__*/_jsx(ChartErrorOverlay, {\n errorMessage: \"\".concat(shownBlocker),\n onConfirm: () => {\n model.fireBlockerClear();\n }\n });\n } else if (shownError != null) {\n errorOverlay = /*#__PURE__*/_jsx(ChartErrorOverlay, {\n errorMessage: \"\".concat(downsamplingError),\n onDiscard: () => {\n this.handleDownsampleErrorClose();\n },\n onConfirm: () => {\n this.handleDownsampleErrorClose();\n this.handleDownsampleClick();\n }\n });\n } else if (downsamplingError != null) {\n errorOverlay = /*#__PURE__*/_jsx(ChartErrorOverlay, {\n errorMessage: \"\".concat(downsamplingError),\n onDiscard: () => {\n this.handleDownsampleErrorClose();\n },\n onConfirm: () => {\n this.handleDownsampleErrorClose();\n this.handleDownsampleClick();\n }\n });\n }\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"h-100 w-100 chart-wrapper\",\n ref: this.plotWrapperMerged,\n children: [isPlotShown && /*#__PURE__*/_jsx(PlotComponent\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n , {\n ref: this.plot,\n data: data,\n layout: layout,\n revision: revision,\n config: config,\n onAfterPlot: this.handleAfterPlot,\n onError: log.error,\n onRelayout: this.handleRelayout,\n onUpdate: this.handlePlotUpdate,\n onRestyle: this.handleRestyle,\n style: {\n height: '100%',\n width: '100%'\n }\n }), errorOverlay]\n });\n }\n}\n_defineProperty(Chart, \"defaultProps\", {\n isActive: true,\n settings: {\n timeZone: 'America/New_York',\n defaultDateTimeFormat: DateUtils.FULL_DATE_FORMAT,\n showTimeZone: false,\n showTSeparator: true,\n formatter: [],\n webgl: true\n },\n Plotly,\n onDisconnect: () => undefined,\n onReconnect: () => undefined,\n onUpdate: () => undefined,\n onError: () => undefined,\n onSettingsChanged: () => undefined\n});\nexport default function ChartContainer(props) {\n var chartTheme = useChartTheme();\n // eslint-disable-next-line react/jsx-props-no-spreading\n return /*#__PURE__*/_jsx(Chart, _objectSpread(_objectSpread({}, props), {}, {\n theme: chartTheme\n }));\n}\n//# sourceMappingURL=Chart.js.map"],"names":["ChartErrorOverlay","_ref","errorMessage","onDiscard","onConfirm","onCancel","dataTestId","messageTestId","_jsx","_jsxs","CopyButton","Button","ownKeys","e","r","o","_objectSpread","_defineProperty","_toPropertyKey","t","i","_toPrimitive","log","Log","Chart","Component","faIcon","width","path","stringPath","isDownsampleInProgress","isDownsamplingDisabled","props","memoize","downsamplingError","isDownsampleFinished","data","error","customButtons","hasDownsampleError","dhWarningFilled","hasError","name","attr","icon","vsLoading","dhGraphLineDown","has2D","type","has3D","_ref2","buttons2D","buttons3D","bindAllMethods","createPlotlyComponent","React","mergeRefs","isActive","model","prevProps","settings","theme","_this$plotWrapper$cur","_this$plotWrapper$cur2","_ref3","layout","_ref4","event","detail","ChartModel","state","revision","onUpdate","_onUpdate","onDisconnect","onReconnect","_message","onError","DownsamplingError","_onError","blocker","newLayout","_ref5","figure","ranges","ChartUtils","isRangesChanged","deepEqual","changes","onSettingsChanged","hiddenSeries","_ref6","seriesIndexes","acc","_ref7","visible","dh","chartUtils","_ref8","_ref9","shownError","force","rect","isRectChanged","columnFormats","FormatterUtils","dateTimeFormatterOptions","defaultDecimalFormatOptions","defaultIntegerFormatOptions","formatter","Formatter","renderOptions","PlotlyProp","PlotComponent","shownBlocker","config","isPlotShown","errorOverlay","DateUtils","Plotly","ChartContainer","chartTheme","useChartTheme"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Chart-JHkKKPMG.js","sources":["../../../chart/dist/ChartErrorOverlay.js","../../../chart/dist/Chart.js"],"sourcesContent":["import { CopyButton, Button } from '@deephaven/components';\nimport \"./ChartErrorOverlay.css\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction ChartErrorOverlay(_ref) {\n var {\n errorMessage,\n onDiscard,\n onConfirm,\n onCancel,\n 'data-testid': dataTestId\n } = _ref;\n var messageTestId = dataTestId != null ? \"\".concat(dataTestId, \"-message\") : undefined;\n return /*#__PURE__*/_jsx(\"div\", {\n className: \"chart-panel-overlay chart-error-overlay\",\n children: /*#__PURE__*/_jsxs(\"div\", {\n className: \"chart-panel-overlay-content chart-error-overlay-content\",\n children: [/*#__PURE__*/_jsxs(\"div\", {\n className: \"info-message\",\n \"data-testid\": messageTestId,\n children: [errorMessage, /*#__PURE__*/_jsx(CopyButton, {\n copy: errorMessage,\n style: {\n margin: '0'\n }\n })]\n }), /*#__PURE__*/_jsxs(\"div\", {\n children: [onCancel && /*#__PURE__*/_jsx(Button, {\n onClick: onCancel,\n kind: \"secondary\",\n children: \"Cancel\"\n }), onDiscard && /*#__PURE__*/_jsx(Button, {\n onClick: onDiscard,\n kind: \"secondary\",\n children: \"Dismiss\"\n }), onConfirm && /*#__PURE__*/_jsx(Button, {\n onClick: onConfirm,\n kind: \"primary\",\n children: \"Continue\"\n })]\n })]\n })\n });\n}\nexport default ChartErrorOverlay;\n//# sourceMappingURL=ChartErrorOverlay.js.map","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { Component } from 'react';\nimport deepEqual from 'fast-deep-equal';\nimport memoize from 'memoize-one';\nimport { vsLoading, dhGraphLineDown, dhWarningFilled } from '@deephaven/icons';\nimport { Formatter, FormatterUtils, DateUtils } from '@deephaven/jsapi-utils';\nimport Log from '@deephaven/log';\nimport { mergeRefs } from '@deephaven/react-hooks';\nimport { bindAllMethods } from '@deephaven/utils';\nimport createPlotlyComponent from \"./plotly/createPlotlyComponent.js\";\nimport Plotly from \"./plotly/Plotly.js\";\nimport ChartModel from \"./ChartModel.js\";\nimport ChartErrorOverlay from \"./ChartErrorOverlay.js\";\nimport ChartUtils from \"./ChartUtils.js\";\nimport \"./Chart.css\";\nimport DownsamplingError from \"./DownsamplingError.js\";\nimport useChartTheme from \"./useChartTheme.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar log = Log.module('Chart');\n\n// All of the ChartProps have default values except for model in the Chart\n// component, hence the Partial here.\n\nclass Chart extends Component {\n /**\n * Convert a font awesome icon definition to a plotly icon definition\n * @param faIcon The icon to convert\n */\n static convertIcon(faIcon) {\n var [width,,,, path] = faIcon.icon;\n // By default the icons are flipped upside down, so we need to add our own transform\n // https://github.com/plotly/plotly.js/issues/1335\n var stringPath = \"\".concat(path);\n return {\n width,\n path: stringPath,\n ascent: width,\n descent: 0,\n transform: \"matrix(1, 0, 0, 1, 0, 0)\"\n };\n }\n static downsampleButtonTitle(isDownsampleInProgress, isDownsamplingDisabled) {\n if (isDownsampleInProgress) {\n return 'Downsampling in progress...';\n }\n return isDownsamplingDisabled ? 'Downsampling disabled, click to enable' : 'Downsampling enabled, click to disable';\n }\n static downsampleButtonAttr(isDownsampleInProgress, isDownsamplingDisabled) {\n if (isDownsampleInProgress) {\n return 'animation-spin';\n }\n return isDownsamplingDisabled ? undefined : 'fill-active';\n }\n constructor(props) {\n super(props);\n _defineProperty(this, \"currentSeries\", void 0);\n _defineProperty(this, \"PlotComponent\", void 0);\n _defineProperty(this, \"plot\", void 0);\n _defineProperty(this, \"plotWrapper\", void 0);\n _defineProperty(this, \"plotWrapperMerged\", void 0);\n _defineProperty(this, \"columnFormats\", void 0);\n _defineProperty(this, \"dateTimeFormatterOptions\", void 0);\n _defineProperty(this, \"decimalFormatOptions\", void 0);\n _defineProperty(this, \"integerFormatOptions\", void 0);\n _defineProperty(this, \"webgl\", void 0);\n _defineProperty(this, \"rect\", void 0);\n _defineProperty(this, \"ranges\", void 0);\n _defineProperty(this, \"isSubscribed\", void 0);\n _defineProperty(this, \"isLoadedFired\", void 0);\n // Listen for resizing of the element and update the canvas appropriately\n _defineProperty(this, \"resizeObserver\", void 0);\n _defineProperty(this, \"getCachedConfig\", memoize((downsamplingError, isDownsampleFinished, isDownsampleInProgress, isDownsamplingDisabled, data, error) => {\n var customButtons = [];\n var hasDownsampleError = Boolean(downsamplingError);\n if (hasDownsampleError) {\n customButtons.push({\n name: \"Downsampling failed: \".concat(downsamplingError),\n title: 'Downsampling failed',\n click: () => {\n this.toggleErrorMessage(\"\".concat(downsamplingError));\n },\n icon: Chart.convertIcon(dhWarningFilled),\n attr: 'fill-warning'\n });\n }\n var hasError = Boolean(error);\n if (hasError) {\n customButtons.push({\n name: \"Error: \".concat(error),\n title: \"Error\",\n click: () => {\n this.toggleErrorMessage(\"\".concat(error));\n },\n icon: Chart.convertIcon(dhWarningFilled),\n attr: 'fill-warning'\n });\n }\n if (isDownsampleFinished || isDownsampleInProgress || isDownsamplingDisabled || hasDownsampleError) {\n var name = Chart.downsampleButtonTitle(isDownsampleInProgress, isDownsamplingDisabled);\n var attr = Chart.downsampleButtonAttr(isDownsampleInProgress, isDownsamplingDisabled);\n var icon = isDownsampleInProgress ? vsLoading : dhGraphLineDown;\n customButtons.push({\n name,\n title: 'Downsampling status',\n icon: Chart.convertIcon(icon),\n click: this.handleDownsampleClick,\n attr\n });\n }\n var has2D = data.some(_ref => {\n var {\n type\n } = _ref;\n return type != null && !type.includes('3d');\n });\n var has3D = data.some(_ref2 => {\n var {\n type\n } = _ref2;\n return type != null && type.includes('3d');\n });\n var buttons2D = ['zoomIn2d', 'zoomOut2d', 'autoScale2d', 'resetScale2d'];\n var buttons3D = ['orbitRotation', 'tableRotation', 'resetCameraDefault3d'];\n return {\n displaylogo: false,\n // scales the plot to the container size\n // https://github.com/plotly/react-plotly.js/issues/102\n responsive: true,\n // Display the mode bar if there's an error or downsampling so user can see progress\n // Yes, the value is a boolean or the string 'hover': https://github.com/plotly/plotly.js/blob/master/src/plot_api/plot_config.js#L249\n displayModeBar:\n // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\n isDownsampleInProgress || hasDownsampleError || hasError ? true : 'hover',\n // Each array gets grouped together in the mode bar\n modeBarButtons: [customButtons, ['toImage'], ['zoom2d', 'pan2d'],\n // These work the same for both 2d and 3d\n [...(has2D ? buttons2D : []), ...(has3D ? buttons3D : [])]]\n };\n }));\n bindAllMethods(this);\n this.PlotComponent = createPlotlyComponent(props.Plotly);\n this.plot = /*#__PURE__*/React.createRef();\n this.plotWrapper = /*#__PURE__*/React.createRef();\n this.plotWrapperMerged = mergeRefs(this.plotWrapper, props.containerRef);\n this.columnFormats = [];\n this.dateTimeFormatterOptions = {};\n this.decimalFormatOptions = {};\n this.integerFormatOptions = {};\n this.isSubscribed = false;\n this.isLoadedFired = false;\n this.currentSeries = 0;\n this.resizeObserver = new window.ResizeObserver(this.handleResize);\n this.state = {\n data: null,\n downsamplingError: null,\n isDownsampleFinished: false,\n isDownsampleInProgress: false,\n isDownsamplingDisabled: false,\n error: null,\n shownError: null,\n layout: {\n datarevision: 0\n },\n revision: 0,\n shownBlocker: null\n };\n }\n componentDidMount() {\n // Need to make sure the model dimensions are up to date before initializing the data\n this.updateDimensions();\n this.updateModelDimensions();\n this.initData();\n this.initFormatter();\n var {\n isActive,\n model\n } = this.props;\n if (isActive) {\n this.subscribe(model);\n }\n if (this.plotWrapper.current != null) {\n this.resizeObserver.observe(this.plotWrapper.current);\n }\n this.handleThemeChange();\n }\n componentDidUpdate(prevProps) {\n var {\n isActive,\n model,\n settings,\n theme\n } = this.props;\n this.updateFormatterSettings(settings);\n if (model !== prevProps.model) {\n this.unsubscribe(prevProps.model);\n this.subscribe(model);\n }\n if (isActive !== prevProps.isActive) {\n if (isActive) {\n this.updateDimensions();\n this.subscribe(model);\n } else {\n this.unsubscribe(model);\n }\n }\n if (theme !== prevProps.theme) {\n this.handleThemeChange();\n }\n }\n componentWillUnmount() {\n var {\n model\n } = this.props;\n this.unsubscribe(model);\n this.resizeObserver.disconnect();\n }\n getPlotRect() {\n var _this$plotWrapper$cur, _this$plotWrapper$cur2;\n return (_this$plotWrapper$cur = (_this$plotWrapper$cur2 = this.plotWrapper.current) === null || _this$plotWrapper$cur2 === void 0 ? void 0 : _this$plotWrapper$cur2.getBoundingClientRect()) !== null && _this$plotWrapper$cur !== void 0 ? _this$plotWrapper$cur : null;\n }\n initData() {\n var {\n model\n } = this.props;\n this.setState(_ref3 => {\n var {\n layout\n } = _ref3;\n return {\n data: model.getData(),\n layout: _objectSpread(_objectSpread({}, layout), model.getLayout())\n };\n });\n }\n subscribe(model) {\n if (this.isSubscribed) {\n return;\n }\n if (!this.rect || this.rect.width === 0 || this.rect.height === 0) {\n log.debug2('Delaying subscription until model dimensions are set');\n return;\n }\n model.subscribe(this.handleModelEvent);\n this.isSubscribed = true;\n }\n unsubscribe(model) {\n if (!this.isSubscribed) {\n return;\n }\n model.unsubscribe(this.handleModelEvent);\n this.isSubscribed = false;\n }\n handleAfterPlot() {\n if (this.plot.current != null) {\n // TODO: Translate whatever Don was doing in plotting.js in the afterplot here so that area graphs show up properly\n }\n }\n handleDownsampleClick() {\n this.setState(_ref4 => {\n var {\n isDownsamplingDisabled\n } = _ref4;\n return {\n downsamplingError: null,\n isDownsampleInProgress: false,\n isDownsampleFinished: false,\n isDownsamplingDisabled: !isDownsamplingDisabled\n };\n }, () => {\n var {\n model\n } = this.props;\n var {\n isDownsamplingDisabled\n } = this.state;\n model.setDownsamplingDisabled(isDownsamplingDisabled);\n });\n }\n handleErrorClose() {\n this.setState({\n shownError: null\n });\n }\n handleDownsampleErrorClose() {\n this.setState({\n downsamplingError: null\n });\n }\n handleModelEvent(event) {\n var {\n type,\n detail\n } = event;\n log.debug2('Received data update', type, detail);\n switch (type) {\n case ChartModel.EVENT_UPDATED:\n {\n this.currentSeries += 1;\n this.setState(state => {\n var {\n layout,\n revision\n } = state;\n if (typeof layout.datarevision === 'number') {\n layout.datarevision += 1;\n }\n return {\n data: detail,\n layout,\n revision: revision + 1\n };\n });\n var {\n onUpdate\n } = this.props;\n onUpdate({\n isLoading: !this.isLoadedFired\n });\n break;\n }\n case ChartModel.EVENT_LOADFINISHED:\n {\n var {\n onUpdate: _onUpdate\n } = this.props;\n this.isLoadedFired = true;\n _onUpdate({\n isLoading: false\n });\n break;\n }\n case ChartModel.EVENT_DISCONNECT:\n {\n var {\n onDisconnect\n } = this.props;\n onDisconnect();\n break;\n }\n case ChartModel.EVENT_RECONNECT:\n {\n var {\n onReconnect\n } = this.props;\n onReconnect();\n break;\n }\n case ChartModel.EVENT_DOWNSAMPLESTARTED:\n {\n this.setState({\n isDownsampleFinished: false,\n isDownsampleInProgress: true,\n downsamplingError: null\n });\n break;\n }\n case ChartModel.EVENT_DOWNSAMPLEFINISHED:\n {\n this.setState({\n isDownsampleFinished: true,\n isDownsampleInProgress: false,\n downsamplingError: null\n });\n break;\n }\n case ChartModel.EVENT_DOWNSAMPLENEEDED:\n case ChartModel.EVENT_DOWNSAMPLEFAILED:\n {\n var _message;\n var downsamplingError = (_message = detail.message) !== null && _message !== void 0 ? _message : detail;\n this.setState({\n isDownsampleFinished: false,\n isDownsampleInProgress: false,\n isDownsamplingDisabled: false,\n downsamplingError\n });\n var {\n onError\n } = this.props;\n onError(new DownsamplingError(downsamplingError == null ? undefined : \"\".concat(downsamplingError)));\n break;\n }\n case ChartModel.EVENT_ERROR:\n {\n var error = \"\".concat(detail);\n this.setState({\n error\n });\n var {\n onError: _onError\n } = this.props;\n _onError(new Error(error));\n break;\n }\n case ChartModel.EVENT_BLOCKER:\n {\n var blocker = \"\".concat(detail);\n this.setState({\n shownBlocker: blocker\n });\n break;\n }\n case ChartModel.EVENT_BLOCKER_CLEAR:\n {\n this.setState({\n shownBlocker: null\n });\n break;\n }\n case ChartModel.EVENT_LAYOUT_UPDATED:\n {\n var newLayout = detail;\n this.setState(_ref5 => {\n var {\n layout,\n revision\n } = _ref5;\n return {\n layout: _objectSpread(_objectSpread({}, layout), newLayout),\n revision: revision + 1\n };\n });\n break;\n }\n default:\n log.debug('Unknown event type', type, event);\n }\n }\n handlePlotUpdate(figure) {\n // User could have modified zoom/pan here, update the model dimensions\n // We don't need to update the datarevision, as we don't have any data changes\n // until an update comes back from the server anyway\n var {\n layout\n } = figure;\n var ranges = ChartUtils.getLayoutRanges(layout);\n var isRangesChanged = !deepEqual(ranges, this.ranges);\n if (isRangesChanged) {\n this.ranges = ranges;\n this.updateModelDimensions(true);\n }\n }\n handleRelayout(changes) {\n log.debug('handleRelayout', changes);\n if (changes.hiddenlabels != null) {\n var {\n onSettingsChanged\n } = this.props;\n // Pie charts store series visibility in layout.hiddenlabels and trigger relayout on changes\n // Series visibility for other types of charts is handled in handleRestyle\n var hiddenSeries = [...changes.hiddenlabels];\n onSettingsChanged({\n hiddenSeries\n });\n }\n this.updateModelDimensions();\n }\n handleResize() {\n this.updateDimensions();\n }\n handleRestyle(_ref6) {\n var [changes, seriesIndexes] = _ref6;\n log.debug('handleRestyle', changes, seriesIndexes);\n if (Object.keys(changes).includes('visible')) {\n var {\n data\n } = this.state;\n var {\n onSettingsChanged\n } = this.props;\n if (data != null) {\n var hiddenSeries = data.reduce((acc, _ref7) => {\n var {\n name,\n visible\n } = _ref7;\n return name != null && visible === 'legendonly' ? [...acc, name] : acc;\n }, []);\n onSettingsChanged({\n hiddenSeries\n });\n }\n }\n }\n handleThemeChange() {\n var {\n theme,\n model\n } = this.props;\n var {\n dh\n } = model;\n var chartUtils = new ChartUtils(dh);\n this.setState(_ref8 => {\n var {\n layout\n } = _ref8;\n return {\n layout: _objectSpread(_objectSpread({}, layout), {}, {\n template: chartUtils.makeDefaultTemplate(theme)\n })\n };\n });\n }\n\n /**\n * Toggle the error message. If it is already being displayed, then hide it.\n */\n toggleErrorMessage(error) {\n this.setState(_ref9 => {\n var {\n shownError\n } = _ref9;\n return {\n shownError: shownError === error ? null : error\n };\n });\n }\n\n /**\n * Update the models dimensions and ranges.\n * Note that this will update it all whether the plot size changes OR the range\n * the user is looking at has changed (eg. panning/zooming).\n * Could update each independently, but doing them at the same time keeps the\n * ChartModel API a bit cleaner.\n * @param force Force a change even if the chart dimensions haven't changed (eg. after pan/zoom)\n */\n updateModelDimensions() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var rect = this.getPlotRect();\n if (!rect) {\n log.warn('Unable to get plotting rect');\n return;\n }\n var isRectChanged = !this.rect || this.rect.width !== rect.width || this.rect.height !== rect.height;\n if (isRectChanged || force) {\n this.rect = rect;\n var {\n isActive,\n model\n } = this.props;\n model.setDimensions(rect);\n // We may need to resubscribe if dimensions were too small before\n if (isActive) {\n this.subscribe(model);\n }\n }\n }\n initFormatter() {\n var {\n settings\n } = this.props;\n this.updateFormatterSettings(settings);\n }\n updateFormatterSettings(settings) {\n var columnFormats = FormatterUtils.getColumnFormats(settings);\n var dateTimeFormatterOptions = FormatterUtils.getDateTimeFormatterOptions(settings);\n var {\n defaultDecimalFormatOptions = {},\n defaultIntegerFormatOptions = {}\n } = settings;\n if (!deepEqual(this.columnFormats, columnFormats) || !deepEqual(this.dateTimeFormatterOptions, dateTimeFormatterOptions) || !deepEqual(this.decimalFormatOptions, defaultDecimalFormatOptions) || !deepEqual(this.integerFormatOptions, defaultIntegerFormatOptions)) {\n this.columnFormats = FormatterUtils.getColumnFormats(settings);\n this.dateTimeFormatterOptions = dateTimeFormatterOptions;\n this.decimalFormatOptions = defaultDecimalFormatOptions;\n this.integerFormatOptions = defaultIntegerFormatOptions;\n this.updateFormatter();\n }\n if (this.webgl !== settings.webgl) {\n this.webgl = settings.webgl;\n this.updateRenderOptions();\n }\n }\n updateFormatter() {\n var {\n model\n } = this.props;\n var formatter = new Formatter(model.dh, this.columnFormats, this.dateTimeFormatterOptions, this.decimalFormatOptions, this.integerFormatOptions);\n model.setFormatter(formatter);\n }\n updateRenderOptions() {\n var {\n model\n } = this.props;\n var renderOptions = {\n webgl: this.webgl\n };\n model.setRenderOptions(renderOptions);\n }\n updateDimensions() {\n var rect = this.getPlotRect();\n var {\n Plotly: PlotlyProp\n } = this.props;\n if (this.plot.current != null && rect != null && rect.width > 0 && rect.height > 0) {\n // Call relayout to resize avoiding the debouncing plotly does\n // https://github.com/plotly/plotly.js/issues/2769#issuecomment-402099552\n PlotlyProp.relayout(this.plot.current.el, {\n autosize: true\n }).catch(e => {\n log.debug('Unable to resize, promise rejected', e);\n });\n }\n }\n render() {\n var {\n PlotComponent\n } = this;\n var {\n data,\n downsamplingError,\n isDownsampleFinished,\n isDownsampleInProgress,\n isDownsamplingDisabled,\n error,\n shownError,\n layout,\n revision,\n shownBlocker\n } = this.state;\n var config = this.getCachedConfig(downsamplingError, isDownsampleFinished, isDownsampleInProgress, isDownsamplingDisabled, data !== null && data !== void 0 ? data : [], error);\n var {\n model\n } = this.props;\n var isPlotShown = data != null && shownBlocker == null;\n var errorOverlay = null;\n if (shownBlocker != null) {\n errorOverlay = /*#__PURE__*/_jsx(ChartErrorOverlay, {\n errorMessage: \"\".concat(shownBlocker),\n onConfirm: () => {\n model.fireBlockerClear();\n }\n });\n } else if (shownError != null) {\n errorOverlay = /*#__PURE__*/_jsx(ChartErrorOverlay, {\n errorMessage: \"\".concat(downsamplingError),\n onDiscard: () => {\n this.handleDownsampleErrorClose();\n },\n onConfirm: () => {\n this.handleDownsampleErrorClose();\n this.handleDownsampleClick();\n }\n });\n } else if (downsamplingError != null) {\n errorOverlay = /*#__PURE__*/_jsx(ChartErrorOverlay, {\n errorMessage: \"\".concat(downsamplingError),\n onDiscard: () => {\n this.handleDownsampleErrorClose();\n },\n onConfirm: () => {\n this.handleDownsampleErrorClose();\n this.handleDownsampleClick();\n }\n });\n }\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"h-100 w-100 chart-wrapper\",\n ref: this.plotWrapperMerged,\n children: [isPlotShown && /*#__PURE__*/_jsx(PlotComponent\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n , {\n ref: this.plot,\n data: data,\n layout: layout,\n revision: revision,\n config: config,\n onAfterPlot: this.handleAfterPlot,\n onError: log.error,\n onRelayout: this.handleRelayout,\n onUpdate: this.handlePlotUpdate,\n onRestyle: this.handleRestyle,\n style: {\n height: '100%',\n width: '100%'\n }\n }), errorOverlay]\n });\n }\n}\n_defineProperty(Chart, \"defaultProps\", {\n isActive: true,\n settings: {\n timeZone: 'America/New_York',\n defaultDateTimeFormat: DateUtils.FULL_DATE_FORMAT,\n showTimeZone: false,\n showTSeparator: true,\n formatter: [],\n webgl: true\n },\n Plotly,\n onDisconnect: () => undefined,\n onReconnect: () => undefined,\n onUpdate: () => undefined,\n onError: () => undefined,\n onSettingsChanged: () => undefined\n});\nexport default function ChartContainer(props) {\n var chartTheme = useChartTheme();\n // eslint-disable-next-line react/jsx-props-no-spreading\n return /*#__PURE__*/_jsx(Chart, _objectSpread(_objectSpread({}, props), {}, {\n theme: chartTheme\n }));\n}\n//# sourceMappingURL=Chart.js.map"],"names":["ChartErrorOverlay","_ref","errorMessage","onDiscard","onConfirm","onCancel","dataTestId","messageTestId","_jsx","_jsxs","CopyButton","Button","ownKeys","e","r","o","_objectSpread","_defineProperty","_toPropertyKey","t","i","_toPrimitive","log","Log","Chart","Component","faIcon","width","path","stringPath","isDownsampleInProgress","isDownsamplingDisabled","props","memoize","downsamplingError","isDownsampleFinished","data","error","customButtons","hasDownsampleError","dhWarningFilled","hasError","name","attr","icon","vsLoading","dhGraphLineDown","has2D","type","has3D","_ref2","buttons2D","buttons3D","bindAllMethods","createPlotlyComponent","React","mergeRefs","isActive","model","prevProps","settings","theme","_this$plotWrapper$cur","_this$plotWrapper$cur2","_ref3","layout","_ref4","event","detail","ChartModel","state","revision","onUpdate","_onUpdate","onDisconnect","onReconnect","_message","onError","DownsamplingError","_onError","blocker","newLayout","_ref5","figure","ranges","ChartUtils","isRangesChanged","deepEqual","changes","onSettingsChanged","hiddenSeries","_ref6","seriesIndexes","acc","_ref7","visible","dh","chartUtils","_ref8","_ref9","shownError","force","rect","isRectChanged","columnFormats","FormatterUtils","dateTimeFormatterOptions","defaultDecimalFormatOptions","defaultIntegerFormatOptions","formatter","Formatter","renderOptions","PlotlyProp","PlotComponent","shownBlocker","config","isPlotShown","errorOverlay","DateUtils","Plotly","ChartContainer","chartTheme","useChartTheme"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.popper-container{position:absolute;z-index:5000}.popper.popper-tooltip{--background-color: var(--dh-color-tooltip-bg)}.popper{--background-color: var(--dh-color-popover-bg);background:var(--background-color);color:var(--dh-color-tooltip-fg);border-radius:4px;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);transition:visibility .15s,opacity .15s;pointer-events:none;outline:0}.popper .popper-content{position:relative}.popper .popper-content .tooltip-content{text-align:center;padding:.25rem .5rem}.popper .popper-arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:var(--background-color)}.popper.interactive{pointer-events:auto}.popper-transition-enter{opacity:0;transition:none}.popper-transition-exit{opacity:0;transition:all .15s}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translateY(10px)}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translate(-10px)}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translateY(-10px)}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translate(10px)}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-enter-active.popper{opacity:1;transform:none;transition:all .15s ease-out}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper{margin-bottom:5px}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 5px 0 5px;border-left-color:transparent;border-right-color:transparent;border-bottom-color:transparent;bottom:-5px;margin-top:0;margin-bottom:0}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper{margin-top:5px}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper .popper-arrow{border-width:0 5px 5px 5px;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;top:-5px;margin-top:0;margin-bottom:0}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper{margin-left:5px}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 5px 5px 0;border-left-color:transparent;border-top-color:transparent;border-bottom-color:transparent;left:-5px;margin-left:0;margin-right:0}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper{margin-right:5px}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 0 5px 5px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;right:-5px;margin-left:0;margin-right:0}:root{--dh-svg-icon-close-tab: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E");--dh-svg-icon-maximise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M3 3v10h10V3H3zm9 9H4V4h8v8z'/%3E%3C/svg%3E");--dh-svg-icon-minimise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M14 8v1H3V8h11z'/%3E%3C/svg%3E");--dh-svg-icon-next: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M10.072 8.024L5.715 3.667l.618-.62L11 7.716v.618L6.333 13l-.618-.619 4.357-4.357z'/%3E%3C/svg%3E");--dh-svg-icon-prev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M5.928 7.976l4.357 4.357-.618.62L5 8.284v-.618L9.667 3l.618.619-4.357 4.357z'/%3E%3C/svg%3E");--dh-svg-icon-tab-dropdown: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M7.976 10.072l4.357-4.357.62.618L8.284 11h-.618L3 6.333l.619-.618 4.357 4.357z'/%3E%3C/svg%3E");--dh-svg-icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='currentColor' d='m256 278.624 116.672 116.704 22.656 -22.624L278.624 256l116.704 -116.672 -22.624 -22.656L256 233.376 139.328 116.672l-22.624 22.656L233.376 256l-116.672 116.672 22.624 22.656L256 278.624z'/%3E%3C/svg%3E");--dh-svg-icon-search-cancel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M8 8.707l3.646 3.647.708-.707L8.707 8l3.647-3.646-.707-.708L8 7.293 4.354 3.646l-.707.708L7.293 8l-3.646 3.646.707.708L8 8.707z'/%3E%3C/svg%3E");--dh-svg-icon-selector-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath fill='currentColor' d='M9.99 1.01A1 1 0 0 0 8.283.303L5 3.586 1.717.303A1 1 0 1 0 .303 1.717l3.99 3.98a1 1 0 0 0 1.414 0l3.99-3.98a.997.997 0 0 0 .293-.707z'/%3E%3C/svg%3E");--dh-svg-icon-error: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/svg%3E");--dh-svg-icon-select-indicator: var(--dh-svg-icon-selector-caret);--dh-svg-icon-select-indicator-hover: var(--dh-svg-icon-selector-caret);--dh-svg-icon-select-indicator-disabled: var(--dh-svg-icon-selector-caret)}.context-actions-listener{display:none}.context-menu-root{position:fixed;height:100%;width:100%;top:0;left:0;pointer-events:none;z-index:1060}.context-menu-root.active{pointer-events:all}.context-menu-container{pointer-events:auto;position:fixed;background-color:var(--dh-color-popover-bg);color:var(--dh-color-text);z-index:initial;min-width:10rem;max-width:30rem;text-align:left;border-radius:4px;background-clip:border-box;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);max-height:100vh;overflow-y:auto}.context-menu-container.has-overflow{overflow-y:scroll}.context-menu-container hr{margin-top:0;margin-bottom:0;background-color:var(--dh-color-gray-400)}.context-menu-container .custom-menu-item{width:100%;color:var(--dh-color-text);white-space:nowrap;text-decoration:none;background-color:transparent;text-align:left}.context-menu-container .btn-context-menu{border:none;width:100%;padding:4px 8px;color:var(--dh-color-text);text-decoration:none;background-color:transparent;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none}.context-menu-container .btn-context-menu .btn-context-menu-wrapper{display:flex;align-items:center;justify-content:flex-start}.context-menu-container .btn-context-menu .icon{margin-right:.5rem;width:1rem;flex-grow:0;text-align:center}.context-menu-container .btn-context-menu .icon.outline{stroke:var(--dh-color-popover-bg);stroke-width:60}.context-menu-container .btn-context-menu .title{flex:1 1 auto;text-align:left;white-space:nowrap}.context-menu-container .btn-context-menu .shortcut{color:var(--dh-color-gray-600);margin-left:.5rem;justify-self:flex-end;flex:1 1 auto;text-align:right;white-space:nowrap}.context-menu-container .btn-context-menu .submenu-indicator{color:var(--dh-color-text);flex-grow:0;justify-self:flex-end}.context-menu-container .btn-context-menu .submenu-indicator.disabled{color:var(--dh-color-text-disabled)}.context-menu-container .btn-context-menu.menu-title{-webkit-user-select:none;user-select:none;cursor:default;background:var(--dh-color-content-bg, #2d2a2e)}.context-menu-container .btn-context-menu.keyboard-active{background-color:var(--dh-color-keyboard-selected-bg)}.context-menu-container .btn-context-menu:focus,.context-menu-container .btn-context-menu.active{background-color:var(--dh-color-item-list-hover-bg)}.context-menu-container .btn-context-menu:focus{outline:none}.context-menu-container .btn-context-menu.active,.context-menu-container .btn-context-menu.keyboard-active,.context-menu-container .btn-context-menu:focus:not(.disabled){color:var(--dh-color-item-list-selected-fg)}.context-menu-container .btn-context-menu.active .shortcut,.context-menu-container .btn-context-menu.keyboard-active .shortcut,.context-menu-container .btn-context-menu:focus:not(.disabled) .shortcut{color:var(--dh-color-gray-700)}.context-menu-container .btn-context-menu.disabled{color:var(--dh-color-text-disabled);background-color:var(--dh-color-popover-bg)}.context-menu-container .context-menu-item:last-child>.btn-context-menu{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.context-menu-container .context-menu-item:first-child>.btn-context-menu{border-top-left-radius:4px;border-top-right-radius:4px}.context-menu-container .context-menu-group-header{margin:.5rem .75rem .25rem;color:var(--dh-color-gray-700);white-space:nowrap;text-decoration:none;background-color:transparent;text-align:left;cursor:default;-webkit-user-select:none;user-select:none;font-weight:500;border-bottom:1px solid var(--dh-color-hr)}.context-menu-container .loading{padding:.25rem 1.5rem;width:100%;display:block;text-align:center}.context-menu-container:focus{outline:none}.menu-actions-listener{display:none}.popper-container[x-placement^=top] .context-menu-container{margin-bottom:5px}.popper-container[x-placement^=right] .context-menu-container{margin-left:5px}.popper-container[x-placement^=bottom] .context-menu-container{margin-top:5px}.popper-container[x-placement^=left] .context-menu-container{margin-right:5px}.menu-popper{padding:0}.menu-popper .popper-content .context-menu-container{background-color:var(--dh-color-popover-bg);position:relative;box-shadow:none;max-height:80vh;overflow:auto}.menu-popper .popper-content .context-menu-container .context-menu-container{position:absolute}.menu-popper .popper-content .popper-arrow{border-color:var(--dh-color-popover-bg)}.search-group{position:relative}.search-group .form-control{padding-right:1.75rem}.search-group .search-end-content{color:var(--dh-color-search-icon);pointer-events:none;position:absolute;right:.5rem;top:0;bottom:0;height:100%;display:flex;align-items:center;gap:.25rem}.search-group .search-end-placeholder{color:var(--dh-color-text-disabled)}.search-group ::-webkit-search-cancel-button{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-search-cancel);mask-image:var(--dh-svg-icon-search-cancel);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px;-webkit-appearance:none;height:16px;width:16px;opacity:.4;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.search-group ::-webkit-search-cancel-button:hover{opacity:1}.search-group .search-change-selection{position:absolute;right:.25rem;top:0;height:100%;display:flex;align-items:center}.search-group .search-change-button{padding:1px 2px;height:calc(100% - .5rem)}.search-group .search-change-text,.search-group .search-match{background-color:color-mix(in srgb,var(--dh-color-fg) 20%,transparent);border-radius:20px;padding:0 5px}.search-group .search-match{margin:0 .25rem}.item-list-item{border:none;border-radius:0;display:flex;flex-direction:row;width:100%;padding:0;white-space:nowrap;text-decoration:none;background-color:var(--dh-color-item-list-bg);text-align:left;-webkit-user-select:none;user-select:none}.item-list-item-content{display:flex;flex-direction:row;flex-grow:1;padding:0 .75rem;justify-content:space-between;align-items:center;cursor:pointer}.item-list-item-content .title{flex-grow:1}.item-list-item-content:hover{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item.is-focused .item-list-item-content{background-color:var(--dh-color-item-list-keyboard-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item.active .item-list-item-content{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item:focus{outline:none;box-shadow:none}.item-list-scroll-pane{border:1px solid var(--dh-color-input-border);border-radius:4px}.item-list-scroll-pane:focus{outline:none}.item-list-scroll-pane .item-list-inner-element{position:relative}.btn-switch{display:inline-block;font-size:.6rem;color:var(--dh-color-gray-700);background:var(--dh-color-gray-300);padding:0;min-width:40px;width:40px;overflow:hidden;border:1px solid var(--dh-color-input-border);height:17px}.btn-switch .handle{position:relative;top:0;left:0;margin:1px;width:13px;height:13px;border-radius:13px;background-color:var(--dh-color-gray-700);transform:translate(0);transition:transform .15s ease-in,background-color .15s}.btn-switch :before,.btn-switch :after{width:15px;text-align:center;font-weight:600;text-transform:uppercase;position:absolute;bottom:0;line-height:13px;color:var(--dh-color-gray-700);letter-spacing:.75px;transition:opacity .15s}.btn-switch :before{content:"Off";left:17px;text-align:right}.btn-switch :after{content:"On";color:var(--dh-color-accent-contrast);left:-16px;text-align:left;opacity:0}.btn-switch:focus{outline:none;box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);border-color:var(--dh-color-input-focus-border)}.btn-switch.active{background:var(--dh-color-accent-bg);transition:background-color .15s;border-color:var(--dh-color-accent-bg)}.btn-switch.active:focus{border-color:var(--dh-color-input-focus-border)}.btn-switch.active .handle{transform:translate(23px);transition:transform .15s ease-in}.btn-switch.active :before{opacity:0}.btn-switch.active :after{opacity:1}.btn-switch:hover:not(:disabled) .handle{background-color:var(--dh-color-gray-900, #fcfcfa)}.btn-switch.is-invalid,.btn-switch:focus.is-invalid{border-color:var(--dh-color-negative-bg)}.btn-switch.is-invalid.active,.btn-switch:focus.is-invalid.active{border-color:var(--dh-color-negative-bg);background-color:var(--dh-color-negative-bg)}.btn-switch:disabled{background-color:var(--dh-color-gray-300);border-color:var(--dh-color-black, #1a171a);cursor:not-allowed}.btn-switch:disabled.active{border-color:var(--dh-color-black, #1a171a)}.btn-switch:disabled.active .handle{background-color:var(--dh-color-gray-500)}.console-history-result-in-progress{-webkit-user-select:none;user-select:none}.console-history-result-in-progress .badge{background-color:var(--dh-color-gray-500);color:var(--dh-color-fg, #f0f0ee);font-size:12px;font-weight:400;gap:4px;margin:4px 4px 4px 0;height:26px;border-radius:26px;display:inline-flex;justify-content:center;align-items:center;padding-right:0}.console-history-result-in-progress .badge .console-history-result-in-progress-cancel:after{border-radius:26px}.console-history-result-in-progress.disabled .badge{color:var(--dh-color-gray-700);background-color:var(--dh-color-gray-400);border-color:var(--dh-color-gray-400)}.console-history-item-command,.console-history-item-result{display:flex}.console-history-item-command{white-space:pre-line}.console-history-item-result .log-message{white-space:pre-wrap;word-wrap:break-word}.console-result-buttons .console-history-item-result .console-history-gutter{display:flex;align-items:center;justify-content:flex-end;max-height:34px}.console-history-item-result .btn-console-object{display:inline-flex;align-items:center;gap:.25rem;text-align:left;font-size:12px;padding-left:1rem;margin:4px 4px 4px 0;height:26px;border-radius:26px}.console-history-item-result .error-message{color:var(--dh-color-negative-bg);display:flex;overflow:hidden;-webkit-user-select:text;user-select:text}.console-history-item-result .error-message .error-gutter{padding:0;flex-basis:15px}.console-history-item-result .error-message .error-gutter .error-btn-link{min-width:15px;background-color:transparent;border:0;text-align:left;padding-left:0;padding-right:0;color:color-mix(in srgb,var(--dh-color-negative) 50%,transparent);transition:color .12s ease-in-out,background-color .12s ease-in-out,border-color .12s ease-in-out,box-shadow .12s ease-in-out}.console-history-item-result .error-message .error-gutter .error-btn-link:hover,.console-history-item-result .error-message .error-gutter .error-btn-link--active{color:var(--dh-color-negative-bg)}.console-history-item-result .error-message .error-content{flex-grow:1;white-space:normal;cursor:default;overflow:visible;text-overflow:ellipsis}.console-history-item-result .error-message .console-error-text-trigger{cursor:pointer;color:var(--dh-color-negative-bg);display:inline-block;margin-right:.25rem;border:1px solid transparent;border-radius:4px;overflow:visible;white-space:pre-wrap}.console-history-item-result .error-message .console-error-text-trigger:focus{outline:0}.console-history-item-result .error-message .console-error-text-trigger:focus-visible{border:1px solid color-mix(in srgb,var(--dh-color-negative) 50%,transparent)}.console-history .console-command-result{padding:0 0 .25rem}.console-history,.console-history-footer{font-family:Fira Mono,menlo,monaco,consolas,Liberation Mono,Courier New,monospace;font-size:12px;line-height:18px;padding:0}.console-history .console-history-gutter,.console-history .error-gutter,.console-history-footer .console-history-gutter,.console-history-footer .error-gutter{flex-shrink:0;flex-grow:0;flex-basis:30px;text-align:right;padding-right:8px;color:var(--dh-color-gray-600);-webkit-user-select:none;user-select:none}.console-history .console-history-content,.console-history-footer .console-history-content{min-width:0;flex-grow:1;overflow-wrap:break-word}.console-history .console-history-content .error-message.expanded .error-content,.console-history-footer .console-history-content .error-message.expanded .error-content{-webkit-user-select:text;user-select:text;user-select:contain;white-space:pre-wrap;word-break:break-word;overflow:auto;text-overflow:clip;cursor:default}.editor-container .monaco-editor{--vscode-scrollbar-shadow: var(--dh-color-dropshadow);width:100%!important;font-family:var(--font-family-sans-serif)}.editor-container .monaco-editor .overflow-guard{width:100%!important}.editor-container .monaco-editor .shadow-root-host{font-family:var(--font-family-sans-serif)}.editor-container .monaco-editor .detected-link{color:var(--dh-color-gray-600)}.rendered-markdown.markdown-docs{min-width:12rem}.rendered-markdown.markdown-docs hr{background-color:var(--dh-color-gray-600);height:1px}.rendered-markdown.markdown-docs blockquote{margin-left:1.5rem}.console-input-wrapper{--console-input-bg: var(--dh-color-input-bg);--console-input-surface-bg: var(--dh-color-surface-bg);--console-input-border-color: var(--dh-color-input-border);--console-input-hover-border-color: var(--dh-color-input-hover-border);background-color:var(--console-input-surface-bg);padding:4px;min-height:40px;display:flex;flex-grow:0;flex-shrink:0;width:100%}.console-input-wrapper:before{content:">";flex-grow:0;flex-shrink:0;flex-basis:33px;font-family:Fira Mono,menlo,monaco,consolas,Liberation Mono,Courier New,monospace;font-size:12px;text-align:right;padding-right:15px;padding-top:7px;color:var(--dh-color-fg, #f0f0ee)}.console-input-wrapper .console-input-inner-wrapper{min-width:0;flex-grow:1;border-radius:4px;border:1px solid var(--console-input-border-color);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.console-input-wrapper .console-input-inner-wrapper{transition:none}}.console-input-wrapper .console-input-inner-wrapper .monaco-editor{--vscode-editorGutter-background: var(--console-input-bg);--vscode-editor-background: var(--console-input-bg);border-radius:4px}.console-input-wrapper .console-input-inner-wrapper .monaco-editor .overflow-guard{border-radius:4px}.console-input-wrapper .console-input-inner-wrapper:hover,.console-input-wrapper .console-input-inner-wrapper.hover{border-color:var(--console-input-hover-border-color)}.console-input-wrapper .console-input-inner-wrapper:focus,.console-input-wrapper .console-input-inner-wrapper.focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:none}.csv-overlay{margin:.5rem;background:color-mix(in srgb,var(--dh-color-content-bg) 70%,transparent);text-align:center;display:flex;flex-direction:column;justify-content:center;white-space:pre-line;outline:none;background-image:linear-gradient(to right,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:march .5s;animation-timing-function:linear;animation-iteration-count:infinite}.csv-overlay .message-content{font-size:1.2rem}.csv-overlay .message-content .message-icon{font-size:80px}.csv-overlay .message-content .message-icon .svg-inline--fa{font-size:inherit}.csv-overlay .message-content .message-small{font-size:.8rem}.csv-overlay .message-content .btn{align-self:center;max-width:10rem}.csv-overlay .selected-content{display:flex;flex-direction:row;align-self:center}.csv-overlay .selected-content .selected-icon{font-size:64px}.csv-overlay .selected-content .selected-icon .svg-inline--fa{font-size:inherit}.csv-overlay .selected-content .selected-text{display:flex;flex-direction:column;align-items:flex-start;margin:15px;font-size:1rem}.csv-overlay .selected-content .selected-name{font-size:1.2rem}.csv-progress-container{display:grid;grid-template-columns:max-content 1fr max-content max-content;grid-gap:10px;align-items:center;padding:.5rem;background-color:var(--dh-color-surface-bg)}.csv-progress-container label{margin-bottom:0}.csv-input-bar-container{display:flex;background-color:var(--dh-color-surface-bg);overflow:hidden}.csv-input-bar-container>*{padding-top:.5rem;padding-bottom:.5rem;margin-left:.5rem;margin-right:.5rem}.csv-input-bar-container .form-group label{margin-right:.5rem}.csv-input-bar-container .csv-input-buttons{flex-flow:row wrap;margin-left:auto}.csv-input-bar-container .csv-input-buttons>*:first-child{margin-right:.25rem}.iris-console{display:flex}.iris-console .console-pane{position:relative;flex-grow:1;display:flex;flex-direction:column;height:100%;width:100%}.iris-console .console-pane .scroll-pane{flex-grow:1}.iris-console .console-pane .scroll-pane:before{content:"";display:block;position:absolute;width:100%;box-shadow:var(--dh-color-dropshadow) 0 6px 6px -6px inset;height:6px;opacity:0;transition:opacity .3s;pointer-events:none}.iris-console .console-pane .scroll-pane.scroll-decoration:before{opacity:1}.iris-console .console-pane .console-csv-container{position:relative;overflow:hidden;flex-grow:1}.console-pane-status-bar{display:flex;gap:3px;align-items:center;justify-content:flex-end;flex-grow:0;width:100%;font-size:small;text-align:right;color:var(--dh-color-gray-600)}.console-pane-status-details{text-align:left;max-width:400px;max-height:80vh;overflow:auto}.console-pane-status-details dd{white-space:pre-line}.console-status-icon{height:9px;position:relative;width:9px;top:-1px}.console-status-icon:before{border-radius:50%;border-style:solid;border-width:2px;content:"";display:block;height:100%;position:absolute;width:100%}.console-status-icon-idle:before{border-color:var(--dh-color-gray-600)}.console-status-icon-pending:before{border-color:var(--dh-color-gray-600);background:var(--dh-color-gray-600)}.console-status-icon-disconnected:before{border-color:var(--dh-color-visual-red)}.script-editor{display:flex;flex-direction:column;flex-grow:1;position:relative}.command-history .command-history-item{width:100%;padding:0 .75rem;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis}.command-history .item-list-item{padding:0;width:100%;background:transparent;color:var(--dh-color-gray-600);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:27px;border:1px solid transparent}.command-history .item-list-item.is-focused{background-color:transparent;color:var(--dh-color-gray-600)}.command-history .item-list-item:focus{outline:none}.command-history .item-list-item.active{outline:none;background-color:var(--dh-color-item-list-selected-inactive-bg);color:var(--dh-color-gray-600)}.command-history:focus-within .item-list-item.active{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item.active :before,.command-history:focus-within .item-list-item.active :after{content:"";position:absolute;top:-1px;bottom:-2px;width:1px;background-color:var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active :before{left:-1px}.command-history:focus-within .item-list-item.active :after{right:-1px}.command-history .item-list-item:hover{background-color:var(--dh-color-item-list-hover-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item.active:hover{background-color:var(--dh-color-item-list-selected-hover-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item:not(.active)+.active,.command-history:focus-within .item-list-item.active:first-of-type{border-top:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .active+.item-list-item:not(.active){border-top:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active:last-of-type{border-bottom:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active:last-of-type :before,.command-history:focus-within .item-list-item.active:last-of-type :after{bottom:-1px}.command-history-item-popper,.command-history-item-popper .popper-content .tooltip-content{padding:0}.command-history-item-popper .command-history-item-tooltip{display:flex;flex-direction:column;max-height:50vh;max-width:50vw;text-align:left}.command-history-item-popper .command-history-item-tooltip .scroll-container{padding:.5rem;overflow:auto}.command-history-item-popper .command-history-item-tooltip .result-info{flex-shrink:0;border-top:1px solid var(--dh-color-gray-500);padding:.25rem .5rem;overflow:auto;max-height:25vh}.command-history-item-popper .command-history-item-tooltip .result-info .time-wrapper{text-align:right;color:var(--dh-color-gray-600)}.command-history-item-popper .command-history-item-tooltip .result-info .time-wrapper .time-string{color:var(--dh-color-fg, #f0f0ee)}.command-history-item-popper .command-history-item-tooltip .result-info .error-message{color:var(--dh-color-negative-bg)}.command-history-actions{flex-shrink:0;margin-bottom:.25rem}.command-history-actions>*:first-child{margin:0 .25rem 0 0}.command-history{display:flex;flex-direction:column;position:relative;height:100%;width:100%}.command-history .command-history-list{flex-grow:1;overflow:hidden;width:100%;height:100%;background-color:var(--dh-color-subdued-content-bg);color:var(--dh-color-gray-600);padding:0}.command-history .command-history-list .item-list-scroll-pane{border:none;border-radius:0}.command-history-search-bar{background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);width:100%;padding:.25rem .25rem 0;display:flex;flex-wrap:wrap;flex-shrink:0;overflow:hidden}.command-history-search-bar .search-group{flex-grow:1;margin-right:.25rem;margin-bottom:.25rem}.log-pane-menu{position:absolute;right:17px;padding-left:3px;padding-bottom:1px;z-index:11;background:var(--dh-color-content-bg, #2d2a2e)}.log-pane-menu div{display:inline-block}.log-pane-menu .btn-link{min-width:1rem;padding:6px}.log-pane-editor .monaco-editor .scroll-decoration{box-shadow:var(--dh-color-black, #1a171a) 0 10px 10px -10px inset;height:10px}.log-pane-editor .find-widget{box-shadow:none!important;background:var(--dh-color-content-bg, #2d2a2e)!important;margin-right:48px}.log-pane-editor .find-widget .button[title*=Close i],.log-pane-editor .find-widget .monaco-sash{display:none}.log-level-menu-popper .popper-content .context-menu-container{background:var(--dh-color-gray-400);font-size:.875rem;min-width:0}.log-level-menu-popper .popper-content .popper-arrow{border-color:var(--dh-color-gray-400)}.log-level-menu-title{margin-left:.5rem;margin-right:3rem;margin-bottom:.5rem;padding-top:.5rem;font-weight:500;-webkit-user-select:none;user-select:none}.log-level-menu-controls .btn-link{font-size:.9rem;padding:.25rem;margin:.25rem;margin-top:0}.log-level-menu-controls .btn-link.log-level-toggle-all{color:var(--dh-color-gray-700);text-decoration:underline}.log-level-menu-controls .btn-link.log-level-toggle-all:hover{color:var(--dh-color-white, #f0f0ee)}.log-level-menu-item{margin-left:.5rem;margin-right:.5rem;height:22px;-webkit-user-select:none;user-select:none}.log-level-menu-item .btn-switch{margin-right:.5rem}.log-level-menu-item.ERROR,.log-level-menu-item.FATAL,.log-level-menu-item.STDERR{color:var(--dh-color-negative-bg)}.log-level-menu-item.INFO{color:var(--dh-color-visual-blue)}.log-level-menu-item.STDOUT{color:var(--dh-color-fg, #f0f0ee)}.log-level-menu-item.WARN{color:var(--dh-color-visual-yellow)}.log-level-menu-item.DEBUG{color:var(--dh-color-visual-purple)}.log-level-menu-item.TRACE{color:var(--dh-color-visual-green)}.max-memory{position:relative;color:var(--dh-color-gray-700);background-color:var(--dh-color-gray-75);border:1px solid var(--dh-color-bg, #1a171a);width:4.25rem;vertical-align:middle;text-align:center;-webkit-user-select:none;user-select:none;z-index:1}.total-memory,.used-memory{position:absolute;top:0;right:0;bottom:0;left:0;margin:1px;z-index:-1}.total-memory{background-color:var(--dh-color-gray-400)}.used-memory{background-color:var(--dh-color-gray-500)}.heap-overflow{background-color:var(--dh-color-visual-red)}.heap-tooltip{padding:.25rem;width:200px}.heap-usage-info-row{display:flex;color:var(--dh-color-fg, #f0f0ee);padding:.25rem;justify-content:space-between}.heap-plot{display:flex;align-items:center}.heading-bottom-border{border-bottom:1px solid var(--dh-color-gray-75);margin-bottom:.25rem}.heap-utilisation-text{margin-top:.25rem;color:var(--dh-color-gray-600)}._lm_dragging_k4a5m_1{overflow:hidden;pointer-events:none}._lm_dragging_k4a5m_1 ._lm_goldenlayout_k4a5m_1 ._lm_header_k4a5m_1{pointer-events:auto}._lm_dragging_k4a5m_1 ._lm_goldenlayout_k4a5m_1 ._lm_header_k4a5m_1 ._lm_controls_k4a5m_1>li{pointer-events:none}._lm_dragging_k4a5m_1 ._lm_goldenlayout_k4a5m_1 ._lm_header_k4a5m_1 ._lm_controls_k4a5m_1>li._lm_tabpreviousbutton_k4a5m_1,._lm_dragging_k4a5m_1 ._lm_goldenlayout_k4a5m_1 ._lm_header_k4a5m_1 ._lm_controls_k4a5m_1>li._lm_tabnextbutton_k4a5m_1{pointer-events:auto}body:not(._lm_dragging_k4a5m_1) ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1:not(._lm_active_k4a5m_1):hover{color:var(--dh-color-gray-700)}body:not(._lm_dragging_k4a5m_1) ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1:hover ._lm_close_tab_k4a5m_1{opacity:.35}body:not(._lm_dragging_k4a5m_1) ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1:hover ._lm_close_tab_k4a5m_1:hover{opacity:1}body:not(._lm_dragging_k4a5m_1) ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1:hover ._lm_close_tab_k4a5m_1:hover:before{opacity:1}._lm_goldenlayout_k4a5m_1{background:var(--dh-color-bg, #1a171a);position:absolute}._lm_content_k4a5m_1{background:var(--dh-color-content-bg, #2d2a2e);overflow:visible}._lm_dragProxy_k4a5m_1 ._lm_content_k4a5m_1{height:100%;width:100%;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_dragProxy_k4a5m_1 ._lm_header_k4a5m_1{height:28px;box-shadow:none}._lm_dragProxy_k4a5m_1 ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1,._lm_dragProxy_k4a5m_1 ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1{border:0;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_dropTargetIndicator_k4a5m_1{background-image:linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:_march_k4a5m_1 .5s;animation-timing-function:linear;animation-iteration-count:infinite;box-sizing:border-box;transition:all .2s ease}._lm_dropTargetIndicator_k4a5m_1 ._lm_inner_k4a5m_1{box-sizing:border-box;border:1px solid transparent;box-shadow:inset 0 0 1rem 1px var(--dh-color-dropshadow);opacity:1;background:color-mix(in srgb,var(--dh-color-accent) 10%,transparent)}._lm_splitter_k4a5m_1{background:var(--dh-color-gray-600);opacity:.001;transition:opacity .15s ease}._lm_splitter_k4a5m_1:hover,._lm_splitter_k4a5m_1._lm_dragging_k4a5m_1{background:var(--dh-color-gray-700);opacity:1}._lm_header_k4a5m_1{box-sizing:content-box;height:28px;padding-top:0;background:var(--dh-color-golden-layout-tab-header-bg);box-shadow:inset 0 -1px 0 0 var(--dh-color-bg, #1a171a);-webkit-user-select:none;user-select:none}._lm_header_k4a5m_1 ._lm_controls_k4a5m_1>li{height:100%;width:24px}._lm_header_k4a5m_1._lm_selectable_k4a5m_1{cursor:pointer}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1,._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1{display:flex;align-items:center;font-family:Fira Sans,-apple-system,blinkmacsystemfont,Segoe UI,Roboto,Helvetica Neue,arial,sans-serif;background-color:var(--dh-color-golden-layout-tab-bg);color:var(--dh-color-gray-600);height:28px;font-size:12px;min-width:10ch;margin:0;padding:0 0 0 6px;box-shadow:inset -1px -1px 0 0 var(--dh-color-bg, #1a171a);transition:color .15s,background-color .15s;max-width:12.25rem;white-space:nowrap;overflow:hidden}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_title_k4a5m_1,._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_title_k4a5m_1{flex-grow:1;padding-right:6px}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_title_before_k4a5m_1,._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_title_before_k4a5m_1{display:flex;align-items:center}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_close_tab_k4a5m_1,._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_close_tab_k4a5m_1{margin-left:-6px;flex-shrink:0;cursor:pointer;position:relative;width:18px;height:100%;opacity:0}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_close_tab_k4a5m_1:before,._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_close_tab_k4a5m_1:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:1px;border-radius:2px;background-color:var(--dh-color-highlight-selected-hover);opacity:0;transition:opacity .15s ease}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_close_tab_k4a5m_1:after,._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1 ._lm_close_tab_k4a5m_1:after{background-size:8px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close-tab);mask-image:var(--dh-svg-icon-close-tab);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:8px;mask-size:8px;content:"";position:absolute;top:0;right:2px;bottom:0;left:0}._lm_selected_k4a5m_1 ._lm_header_k4a5m_1{background-color:var(--dh-color-golden-layout-tab-selected-bg)}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1,._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1:hover{height:28px;background-color:var(--dh-color-golden-layout-tab-selected-bg);color:var(--dh-color-text);padding-bottom:0;box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1._lm_focusin_k4a5m_1,._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1:hover._lm_focusin_k4a5m_1{box-shadow:inset 0 1px var(--dh-color-accent-bg),inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1 ._lm_close_tab_k4a5m_1,._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1:hover ._lm_close_tab_k4a5m_1{opacity:.35}._lm_window_blur_k4a5m_1 ._lm_header_k4a5m_1 ._lm_tab_k4a5m_1._lm_active_k4a5m_1._lm_focusin_k4a5m_1{box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_controls_k4a5m_1>li{opacity:.4;transition:opacity .15s ease;position:relative;background-position:center center;background-repeat:no-repeat}._lm_controls_k4a5m_1>li:hover{opacity:1}._lm_controls_k4a5m_1 ._lm_popout_k4a5m_1{background-size:auto;background-color:var(--dh-color-fg);-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:auto;mask-size:auto}._lm_controls_k4a5m_1 ._lm_maximise_k4a5m_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-maximise);mask-image:var(--dh-svg-icon-maximise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_k4a5m_1 ._lm_tabdropdown_k4a5m_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-tab-dropdown);mask-image:var(--dh-svg-icon-tab-dropdown);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_k4a5m_1 ._lm_close_k4a5m_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close);mask-image:var(--dh-svg-icon-close);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_k4a5m_1 ._lm_tabnextbutton_k4a5m_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-next);mask-image:var(--dh-svg-icon-next);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_k4a5m_1 ._lm_tabpreviousbutton_k4a5m_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-prev);mask-image:var(--dh-svg-icon-prev);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_tabdropdown_list_k4a5m_1{z-index:1000;background:var(--dh-color-popover-bg);box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);border-radius:4px;max-width:12rem;margin:0;padding:0;list-style-type:none}._lm_tabdropdown_list_k4a5m_1 ._lm_tabdropdown_search_k4a5m_1{padding:.25rem}._lm_tabdropdown_list_k4a5m_1 ._lm_tabdropdown_search_k4a5m_1 input{padding:.42145rem .75rem;line-height:1.3;color:var(--dh-color-input-fg);background-color:var(--dh-color-input-bg);border:1px solid var(--dh-color-input-border);border-radius:4px;max-width:100%}._lm_tabdropdown_list_k4a5m_1 ._lm_tabdropdown_search_k4a5m_1 input::placeholder{color:var(--dh-color-input-placeholder);opacity:1}._lm_tabdropdown_list_k4a5m_1 ._lm_tabdropdown_search_k4a5m_1 input:focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:0}._lm_tabdropdown_list_k4a5m_1 ._lm_tabs_k4a5m_1{padding:0}._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1{background:transparent;color:var(--dh-color-gray-700);box-shadow:none}._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1._lm_keyboard_active_k4a5m_1{color:var(--dh-color-gray-700);background-color:var(--dh-color-highlight-selected)}._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1._lm_keyboard_active_k4a5m_1:hover{background-color:var(--dh-color-highlight-selected-hover)}._lm_tabdropdown_list_k4a5m_1 ._lm_tab_k4a5m_1:hover{color:var(--dh-color-text);background-color:var(--dh-color-highlight-hover)}._lm_maximised_k4a5m_1{border:15px solid color-mix(in srgb,var(--dh-color-bg) 80%,transparent);height:100%!important;width:100%!important}._lm_maximised_k4a5m_1 ._lm_items_k4a5m_1{box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_maximised_k4a5m_1 ._lm_controls_k4a5m_1 ._lm_maximise_k4a5m_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-minimise);mask-image:var(--dh-svg-icon-minimise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_tabs_k4a5m_1:empty+._lm_controls_k4a5m_1 ._lm_maximise_k4a5m_1{display:none}.lm_root{position:relative}.lm_row>.lm_item{float:left}.lm_content{overflow:hidden;position:relative;outline:0}.lm_dragging,.lm_dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.lm_maximised{position:absolute;top:0;left:0;z-index:40}.lm_maximise_placeholder{display:none}.lm_splitter{position:relative;z-index:20}.lm_splitter:hover,.lm_splitter.lm_dragging{background:orange}.lm_splitter.lm_vertical .lm_drag_handle{width:100%;position:absolute;cursor:ns-resize}.lm_splitter.lm_horizontal{float:left;height:100%}.lm_splitter.lm_horizontal .lm_drag_handle{height:100%;position:absolute;cursor:ew-resize}.lm_header{display:flex;justify-content:space-between;max-width:100%;z-index:12;position:relative;overflow:hidden}.lm_header.lm_dropdown_open{z-index:22}.lm_header [class^=lm_]{box-sizing:content-box!important}.lm_header .lm_controls{display:flex;-webkit-user-select:none;user-select:none}.lm_header .lm_controls>li{cursor:pointer;float:left;width:18px;height:18px;text-align:center}.lm_header .lm_controls>li[disabled]{cursor:default;opacity:.1}.lm_header ul{margin:0;padding:0;list-style-type:none}.lm_header .lm_tabs{display:flex;flex-grow:1;overflow:hidden}.lm_header .lm_tab{cursor:pointer;height:14px;margin-top:1px;padding:0 25px 5px 10px;position:relative;min-width:0;flex-shrink:0}.lm_header .lm_tab .lm_title{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lm_header .lm_tab .lm_close_tab{width:14px;height:14px;position:absolute;top:0;right:0;text-align:center}.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{height:100%}.lm_dragProxy.lm_left .lm_header,.lm_dragProxy.lm_right .lm_header,.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{width:20px;float:left;vertical-align:top}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform-origin:left top;top:0;width:1000px}.lm_dragProxy.lm_left .lm_header .lm_controls,.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_left .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{bottom:0}.lm_dragProxy.lm_left .lm_items,.lm_dragProxy.lm_right .lm_items,.lm_stack.lm_left .lm_items,.lm_stack.lm_right .lm_items{float:left}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs{transform:rotate(-90deg) scaleX(-1);left:0}.lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab,.lm_stack.lm_left .lm_header .lm_tabs .lm_tab{transform:scaleX(-1);margin-top:1px}.lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list,.lm_stack.lm_left .lm_header .lm_tabdropdown_list{top:initial;right:initial;left:20px}.lm_dragProxy.lm_right .lm_content{float:left}.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform:rotate(90deg) scaleX(1);left:100%;margin-left:0}.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{left:3px}.lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list,.lm_stack.lm_right .lm_header .lm_tabdropdown_list{top:initial;right:20px}.lm_dragProxy.lm_bottom .lm_header .lm_tab,.lm_stack.lm_bottom .lm_header .lm_tab{margin-top:0;border-top:none}.lm_dragProxy.lm_bottom .lm_header .lm_controls,.lm_stack.lm_bottom .lm_header .lm_controls{top:3px}.lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,.lm_stack.lm_bottom .lm_header .lm_tabdropdown_list{top:initial;bottom:20px}.lm_drop_tab_placeholder{flex-shrink:0}.lm_tabdropdown_list{position:absolute;overflow-y:auto;overflow-x:hidden;top:0;left:0;max-height:100%}.lm_tabdropdown_list .lm_tabs{flex-direction:column}.lm_tabdropdown_list .lm_tab{padding-right:10px}.lm_tabdropdown_list .lm_tab .lm_title{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lm_tabdropdown_list .lm_close_tab{display:none!important}.lm_dragProxy{position:absolute;top:0;left:0;z-index:30;pointer-events:none}.lm_dragProxy .lm_header{background:transparent}.lm_dragProxy .lm_content{border-top:none;overflow:hidden}.lm_dropTargetIndicator{display:none;position:absolute;z-index:20;pointer-events:none}.lm_dropTargetIndicator .lm_inner{width:100%;height:100%;position:relative;top:0;left:0}.lm_popin{width:20px;height:20px;position:absolute;bottom:0;right:0;z-index:9999}.lm_popin>*{width:100%;height:100%;position:absolute;top:0;left:0}.lm_popin>.lm_bg{z-index:10}.lm_popin>.lm_icon{z-index:20}.lm_dragging{overflow:hidden;pointer-events:none}.lm_dragging .lm_goldenlayout .lm_header{pointer-events:auto}.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li{pointer-events:none}.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li.lm_tabpreviousbutton,.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li.lm_tabnextbutton{pointer-events:auto}body:not(.lm_dragging) .lm_header .lm_tab:not(.lm_active):hover{color:var(--dh-color-gray-700)}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab{opacity:.35}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab:hover{opacity:1}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab:hover:before{opacity:1}.lm_goldenlayout{background:var(--dh-color-bg, #1a171a);position:absolute}.lm_content{background:var(--dh-color-content-bg, #2d2a2e);overflow:visible}.lm_dragProxy .lm_content{height:100%;width:100%;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_dragProxy .lm_header{height:28px;box-shadow:none}.lm_dragProxy .lm_header .lm_tab,.lm_dragProxy .lm_header .lm_tab.lm_active{border:0;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_dropTargetIndicator{background-image:linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:march .5s;animation-timing-function:linear;animation-iteration-count:infinite;box-sizing:border-box;transition:all .2s ease}.lm_dropTargetIndicator .lm_inner{box-sizing:border-box;border:1px solid transparent;box-shadow:inset 0 0 1rem 1px var(--dh-color-dropshadow);opacity:1;background:color-mix(in srgb,var(--dh-color-accent) 10%,transparent)}.lm_splitter{background:var(--dh-color-gray-600);opacity:.001;transition:opacity .15s ease}.lm_splitter:hover,.lm_splitter.lm_dragging{background:var(--dh-color-gray-700);opacity:1}.lm_header{box-sizing:content-box;height:28px;padding-top:0;background:var(--dh-color-golden-layout-tab-header-bg);box-shadow:inset 0 -1px 0 0 var(--dh-color-bg, #1a171a);-webkit-user-select:none;user-select:none}.lm_header .lm_controls>li{height:100%;width:24px}.lm_header.lm_selectable{cursor:pointer}.lm_header .lm_tab,.lm_tabdropdown_list .lm_tab{display:flex;align-items:center;font-family:Fira Sans,-apple-system,blinkmacsystemfont,Segoe UI,Roboto,Helvetica Neue,arial,sans-serif;background-color:var(--dh-color-golden-layout-tab-bg);color:var(--dh-color-gray-600);height:28px;font-size:12px;min-width:10ch;margin:0;padding:0 0 0 6px;box-shadow:inset -1px -1px 0 0 var(--dh-color-bg, #1a171a);transition:color .15s,background-color .15s;max-width:12.25rem;white-space:nowrap;overflow:hidden}.lm_header .lm_tab .lm_title,.lm_tabdropdown_list .lm_tab .lm_title{flex-grow:1;padding-right:6px}.lm_header .lm_tab .lm_title_before,.lm_tabdropdown_list .lm_tab .lm_title_before{display:flex;align-items:center}.lm_header .lm_tab .lm_close_tab,.lm_tabdropdown_list .lm_tab .lm_close_tab{margin-left:-6px;flex-shrink:0;cursor:pointer;position:relative;width:18px;height:100%;opacity:0}.lm_header .lm_tab .lm_close_tab:before,.lm_tabdropdown_list .lm_tab .lm_close_tab:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:1px;border-radius:2px;background-color:var(--dh-color-highlight-selected-hover);opacity:0;transition:opacity .15s ease}.lm_header .lm_tab .lm_close_tab:after,.lm_tabdropdown_list .lm_tab .lm_close_tab:after{background-size:8px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close-tab);mask-image:var(--dh-svg-icon-close-tab);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:8px;mask-size:8px;content:"";position:absolute;top:0;right:2px;bottom:0;left:0}.lm_selected .lm_header{background-color:var(--dh-color-golden-layout-tab-selected-bg)}.lm_header .lm_tab.lm_active,.lm_header .lm_tab.lm_active:hover{height:28px;background-color:var(--dh-color-golden-layout-tab-selected-bg);color:var(--dh-color-text);padding-bottom:0;box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_header .lm_tab.lm_active.lm_focusin,.lm_header .lm_tab.lm_active:hover.lm_focusin{box-shadow:inset 0 1px var(--dh-color-accent-bg),inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_header .lm_tab.lm_active .lm_close_tab,.lm_header .lm_tab.lm_active:hover .lm_close_tab{opacity:.35}.lm_window_blur .lm_header .lm_tab.lm_active.lm_focusin{box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_controls>li{opacity:.4;transition:opacity .15s ease;position:relative;background-position:center center;background-repeat:no-repeat}.lm_controls>li:hover{opacity:1}.lm_controls .lm_popout{background-size:auto;background-color:var(--dh-color-fg);-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:auto;mask-size:auto}.lm_controls .lm_maximise{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-maximise);mask-image:var(--dh-svg-icon-maximise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabdropdown{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-tab-dropdown);mask-image:var(--dh-svg-icon-tab-dropdown);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_close{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close);mask-image:var(--dh-svg-icon-close);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabnextbutton{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-next);mask-image:var(--dh-svg-icon-next);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabpreviousbutton{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-prev);mask-image:var(--dh-svg-icon-prev);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_tabdropdown_list{z-index:1000;background:var(--dh-color-popover-bg);box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);border-radius:4px;max-width:12rem;margin:0;padding:0;list-style-type:none}.lm_tabdropdown_list .lm_tabdropdown_search{padding:.25rem}.lm_tabdropdown_list .lm_tabdropdown_search input{padding:.42145rem .75rem;line-height:1.3;color:var(--dh-color-input-fg);background-color:var(--dh-color-input-bg);border:1px solid var(--dh-color-input-border);border-radius:4px;max-width:100%}.lm_tabdropdown_list .lm_tabdropdown_search input::placeholder{color:var(--dh-color-input-placeholder);opacity:1}.lm_tabdropdown_list .lm_tabdropdown_search input:focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:0}.lm_tabdropdown_list .lm_tabs{padding:0}.lm_tabdropdown_list .lm_tab{background:transparent;color:var(--dh-color-gray-700);box-shadow:none}.lm_tabdropdown_list .lm_tab.lm_keyboard_active{color:var(--dh-color-gray-700);background-color:var(--dh-color-highlight-selected)}.lm_tabdropdown_list .lm_tab.lm_keyboard_active:hover{background-color:var(--dh-color-highlight-selected-hover)}.lm_tabdropdown_list .lm_tab:hover{color:var(--dh-color-text);background-color:var(--dh-color-highlight-hover)}.lm_maximised{border:15px solid color-mix(in srgb,var(--dh-color-bg) 80%,transparent);height:100%!important;width:100%!important}.lm_maximised .lm_items{box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_maximised .lm_controls .lm_maximise{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-minimise);mask-image:var(--dh-svg-icon-minimise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_tabs:empty+.lm_controls .lm_maximise{display:none}.lm_tab .editor-unsaved-indicator{display:none;width:8px;height:8px;margin-right:.25rem;border-radius:50%;background:var(--dh-color-accent-bg)}.lm_tab .editor-unsaved-indicator.is-unsaved{display:inline-block}.lm_dragging .js-plotly-plot .plotly svg,.lm_dragging .js-plotly-plot .plotly g,.lm_dragging .js-plotly-plot .plotly rect,.lm_dragging .js-plotly-plot .plotly path{pointer-events:none!important}.panel-placeholder{display:flex;flex-direction:column;justify-content:center;min-height:100%;max-height:100%;text-align:center;overflow:hidden}.panel-placeholder div{padding:1rem}.panel-error-boundary{height:100%;width:100%;position:relative}.dashboard-container,.dh-panel{position:relative}.command-history-pane{background-color:var(--dh-color-gray-75)}.command-history-pane .command-history-disconnected-message{background-color:var(--dh-color-content-bg, #2d2a2e);color:var(--dh-color-gray-600);display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;overflow:hidden;width:100%;height:100%;text-align:center}.error-message pre{color:var(--dh-color-negative-bg)}.iris-panel-console.disconnected .console-history-result-in-progress,.iris-panel-console.disconnected .csv-overlay,.iris-panel-console.disconnected .csv-input-bar,.iris-panel-console.disconnected .console-input-wrapper{display:none}.file-explorer{background:var(--dh-color-subdued-content-bg);position:relative;flex-grow:1}.file-explorer .single-click-item-list-scroll-pane{flex-grow:1;flex-shrink:1;width:100%;padding:0;position:relative}.file-explorer .spinner-overlay{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-content:center}.file-list{position:absolute;top:0;bottom:0;left:0;right:0}.file-list .file-list-depth-line{margin-left:5px;padding-bottom:2px;width:8px;height:100%;border-left:1px solid var(--dh-color-gray-500);box-sizing:content-box}.file-list .item-list-scroll-pane{border:none;border-radius:0}.file-list .item-list-item{padding:0 .75rem;color:var(--dh-color-gray-600);border:1px solid transparent;-webkit-user-drag:none;cursor:pointer}.file-list .item-list-item.is-focused,.file-list .item-list-item.active{background-color:var(--dh-color-item-list-selected-inactive-bg)}.file-list .item-list-item:focus,.file-list .item-list-item.active,.file-list .item-list-item:hover,.file-list .item-list-item.is-focused{color:var(--dh-color-item-list-selected-fg)}.file-list .truncation-wrapper{overflow-x:hidden;text-overflow:ellipsis;white-space:pre}.file-list .item-icon{margin-right:.25rem}.file-list:focus-within.item-list-item.is-focused{background-color:var(--dh-color-item-list-selected-bg)}.file-list:focus-within .item-list-item.active{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:focus-within .item-list-item.active :before,.file-list:focus-within .item-list-item.active :after{content:"";position:absolute;top:-1px;bottom:-2px;width:1px;background-color:var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active :before{left:-1px}.file-list:focus-within .item-list-item.active :after{right:-1px}.file-list.is-dragging{cursor:grabbing}.file-list.is-dragging .item-list-item.active{opacity:.5}.file-list.is-dragging .is-in-drop-target,.file-list.is-dragging .is-exact-drop-target{color:var(--dh-color-item-list-drop-target-fg)}.file-list:not(.is-dragging) .item-list-item:hover{background-color:var(--dh-color-item-list-hover-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:not(.is-dragging):focus-within .item-list-item.active:hover{background-color:var(--dh-color-item-list-selected-hover-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:focus-within .item-list-item:not(.active)+.active,.file-list:focus-within .item-list-item.active:first-of-type{border-top:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active+.item-list-item:not(.active){border-top:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active:last-of-type{border-bottom:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active:last-of-type :before,.file-list:focus-within .item-list-item.active:last-of-type :after{bottom:0}.file-list-dnd-placeholder{position:absolute;top:-100px;right:0}.file-list-dnd-placeholder .dnd-placeholder-content{padding:.25rem 1rem;background:var(--dh-color-accent-down-bg);color:var(--dh-color-fg, #f0f0ee);border-radius:4px}.file-list-item-editor{z-index:1;width:100%;display:inline-block;position:relative}.file-list-item-editor .file-list-item-editor-input{padding:0;border:none;border-radius:0;height:26px;line-height:26px}.file-list-item-editor .file-list-item-editor-input.is-invalid{border-bottom-left-radius:0;border-bottom-right-radius:0;padding-right:2rem}.file-list-item-editor .invalid-feedback{color:var(--dh-color-fg, #f0f0ee);background-color:var(--dh-color-negative-bg);font-size:.9rem;margin-top:0;padding:.25rem .5rem;border-bottom-left-radius:4px;border-bottom-right-radius:4px;position:absolute;top:100%;left:0}.new-file-modal-content .new-item-destination{color:var(--dh-color-gray-600)}.new-file-modal-content .file-explorer-container{border:1px solid var(--dh-color-input-border);border-radius:4px;overflow:hidden;height:250px;display:flex;flex-direction:column}.new-file-modal-content .directory-breadcrumbs{color:var(--dh-color-accent-bg)}.file-explorer-toolbar{background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);display:flex;flex-direction:row;flex-grow:0;flex-shrink:1;width:100%;position:relative;align-items:center;padding:.25rem}.file-explorer-toolbar .file-explorer-toolbar-buttons{display:flex;padding-right:.25rem}.file-explorer-toolbar .file-explorer-toolbar-search{display:flex;flex-grow:1}.file-explorer-toolbar .file-explorer-toolbar-search .search-group{width:100%}.file-explorer-toolbar .btn{min-width:calc(1.3em + .8429rem + 2px);padding-left:0;padding-right:0;font-size:17px}.file-explorer-panel{display:flex;flex-direction:column}.log-panel-disconnected-message{color:var(--dh-color-gray-600);display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;overflow:hidden;width:100%;height:100%;text-align:center}.notebook-title.is-preview{font-style:italic}.notebook-session-not-connected{padding:.5rem;color:var(--dh-color-gray-500)}.notebook-container{display:flex;flex-direction:column}.notebook-container .notebook-toolbar{display:flex;justify-content:center;flex-direction:row;background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);padding:.25rem .5rem;gap:.25rem}.notebook-container .notebook-toolbar .btn-play:hover,.notebook-container .notebook-toolbar .btn-play-selected:hover{color:var(--dh-color-visual-green)}.notebook-container .notebook-toolbar .icon-create-pq{transform:translateY(-4px)}
|
|
1
|
+
.popper-container{position:absolute;z-index:5000}.popper.popper-tooltip{--background-color: var(--dh-color-tooltip-bg)}.popper{--background-color: var(--dh-color-popover-bg);background:var(--background-color);color:var(--dh-color-tooltip-fg);border-radius:4px;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);transition:visibility .15s,opacity .15s;pointer-events:none;outline:0}.popper .popper-content{position:relative}.popper .popper-content .tooltip-content{text-align:center;padding:.25rem .5rem}.popper .popper-arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:var(--background-color)}.popper.interactive{pointer-events:auto}.popper-transition-enter{opacity:0;transition:none}.popper-transition-exit{opacity:0;transition:all .15s}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translateY(10px)}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translate(-10px)}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translateY(-10px)}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translate(10px)}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-enter-active.popper{opacity:1;transform:none;transition:all .15s ease-out}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper{margin-bottom:5px}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 5px 0 5px;border-left-color:transparent;border-right-color:transparent;border-bottom-color:transparent;bottom:-5px;margin-top:0;margin-bottom:0}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper{margin-top:5px}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper .popper-arrow{border-width:0 5px 5px 5px;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;top:-5px;margin-top:0;margin-bottom:0}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper{margin-left:5px}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 5px 5px 0;border-left-color:transparent;border-top-color:transparent;border-bottom-color:transparent;left:-5px;margin-left:0;margin-right:0}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper{margin-right:5px}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 0 5px 5px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;right:-5px;margin-left:0;margin-right:0}:root{--dh-svg-icon-close-tab: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E");--dh-svg-icon-maximise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M3 3v10h10V3H3zm9 9H4V4h8v8z'/%3E%3C/svg%3E");--dh-svg-icon-minimise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M14 8v1H3V8h11z'/%3E%3C/svg%3E");--dh-svg-icon-next: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M10.072 8.024L5.715 3.667l.618-.62L11 7.716v.618L6.333 13l-.618-.619 4.357-4.357z'/%3E%3C/svg%3E");--dh-svg-icon-prev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M5.928 7.976l4.357 4.357-.618.62L5 8.284v-.618L9.667 3l.618.619-4.357 4.357z'/%3E%3C/svg%3E");--dh-svg-icon-tab-dropdown: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M7.976 10.072l4.357-4.357.62.618L8.284 11h-.618L3 6.333l.619-.618 4.357 4.357z'/%3E%3C/svg%3E");--dh-svg-icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='currentColor' d='m256 278.624 116.672 116.704 22.656 -22.624L278.624 256l116.704 -116.672 -22.624 -22.656L256 233.376 139.328 116.672l-22.624 22.656L233.376 256l-116.672 116.672 22.624 22.656L256 278.624z'/%3E%3C/svg%3E");--dh-svg-icon-search-cancel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M8 8.707l3.646 3.647.708-.707L8.707 8l3.647-3.646-.707-.708L8 7.293 4.354 3.646l-.707.708L7.293 8l-3.646 3.646.707.708L8 8.707z'/%3E%3C/svg%3E");--dh-svg-icon-selector-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath fill='currentColor' d='M9.99 1.01A1 1 0 0 0 8.283.303L5 3.586 1.717.303A1 1 0 1 0 .303 1.717l3.99 3.98a1 1 0 0 0 1.414 0l3.99-3.98a.997.997 0 0 0 .293-.707z'/%3E%3C/svg%3E");--dh-svg-icon-error: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/svg%3E");--dh-svg-icon-select-indicator: var(--dh-svg-icon-selector-caret);--dh-svg-icon-select-indicator-hover: var(--dh-svg-icon-selector-caret);--dh-svg-icon-select-indicator-disabled: var(--dh-svg-icon-selector-caret)}.context-actions-listener{display:none}.context-menu-root{position:fixed;height:100%;width:100%;top:0;left:0;pointer-events:none;z-index:1060}.context-menu-root.active{pointer-events:all}.context-menu-container{pointer-events:auto;position:fixed;background-color:var(--dh-color-popover-bg);color:var(--dh-color-text);z-index:initial;min-width:10rem;max-width:30rem;text-align:left;border-radius:4px;background-clip:border-box;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);max-height:100vh;overflow-y:auto}.context-menu-container.has-overflow{overflow-y:scroll}.context-menu-container hr{margin-top:0;margin-bottom:0;background-color:var(--dh-color-gray-400)}.context-menu-container .custom-menu-item{width:100%;color:var(--dh-color-text);white-space:nowrap;text-decoration:none;background-color:transparent;text-align:left}.context-menu-container .btn-context-menu{border:none;width:100%;padding:4px 8px;color:var(--dh-color-text);text-decoration:none;background-color:transparent;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none}.context-menu-container .btn-context-menu .btn-context-menu-wrapper{display:flex;align-items:center;justify-content:flex-start}.context-menu-container .btn-context-menu .icon{margin-right:.5rem;width:1rem;flex-grow:0;text-align:center}.context-menu-container .btn-context-menu .icon.outline{stroke:var(--dh-color-popover-bg);stroke-width:60}.context-menu-container .btn-context-menu .title{flex:1 1 auto;text-align:left;white-space:nowrap}.context-menu-container .btn-context-menu .shortcut{color:var(--dh-color-gray-600);margin-left:.5rem;justify-self:flex-end;flex:1 1 auto;text-align:right;white-space:nowrap}.context-menu-container .btn-context-menu .submenu-indicator{color:var(--dh-color-text);flex-grow:0;justify-self:flex-end}.context-menu-container .btn-context-menu .submenu-indicator.disabled{color:var(--dh-color-text-disabled)}.context-menu-container .btn-context-menu.menu-title{-webkit-user-select:none;user-select:none;cursor:default;background:var(--dh-color-content-bg, #2d2a2e)}.context-menu-container .btn-context-menu.keyboard-active{background-color:var(--dh-color-keyboard-selected-bg)}.context-menu-container .btn-context-menu:focus,.context-menu-container .btn-context-menu.active{background-color:var(--dh-color-item-list-hover-bg)}.context-menu-container .btn-context-menu:focus{outline:none}.context-menu-container .btn-context-menu.active,.context-menu-container .btn-context-menu.keyboard-active,.context-menu-container .btn-context-menu:focus:not(.disabled){color:var(--dh-color-item-list-selected-fg)}.context-menu-container .btn-context-menu.active .shortcut,.context-menu-container .btn-context-menu.keyboard-active .shortcut,.context-menu-container .btn-context-menu:focus:not(.disabled) .shortcut{color:var(--dh-color-gray-700)}.context-menu-container .btn-context-menu.disabled{color:var(--dh-color-text-disabled);background-color:var(--dh-color-popover-bg)}.context-menu-container .context-menu-item:last-child>.btn-context-menu{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.context-menu-container .context-menu-item:first-child>.btn-context-menu{border-top-left-radius:4px;border-top-right-radius:4px}.context-menu-container .context-menu-group-header{margin:.5rem .75rem .25rem;color:var(--dh-color-gray-700);white-space:nowrap;text-decoration:none;background-color:transparent;text-align:left;cursor:default;-webkit-user-select:none;user-select:none;font-weight:500;border-bottom:1px solid var(--dh-color-hr)}.context-menu-container .loading{padding:.25rem 1.5rem;width:100%;display:block;text-align:center}.context-menu-container:focus{outline:none}.menu-actions-listener{display:none}.popper-container[x-placement^=top] .context-menu-container{margin-bottom:5px}.popper-container[x-placement^=right] .context-menu-container{margin-left:5px}.popper-container[x-placement^=bottom] .context-menu-container{margin-top:5px}.popper-container[x-placement^=left] .context-menu-container{margin-right:5px}.menu-popper{padding:0}.menu-popper .popper-content .context-menu-container{background-color:var(--dh-color-popover-bg);position:relative;box-shadow:none;max-height:80vh;overflow:auto}.menu-popper .popper-content .context-menu-container .context-menu-container{position:absolute}.menu-popper .popper-content .popper-arrow{border-color:var(--dh-color-popover-bg)}.search-group{position:relative}.search-group .form-control{padding-right:1.75rem}.search-group .search-end-content{color:var(--dh-color-search-icon);pointer-events:none;position:absolute;right:.5rem;top:0;bottom:0;height:100%;display:flex;align-items:center;gap:.25rem}.search-group .search-end-placeholder{color:var(--dh-color-text-disabled)}.search-group ::-webkit-search-cancel-button{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-search-cancel);mask-image:var(--dh-svg-icon-search-cancel);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px;-webkit-appearance:none;height:16px;width:16px;opacity:.4;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.search-group ::-webkit-search-cancel-button:hover{opacity:1}.search-group .search-change-selection{position:absolute;right:.25rem;top:0;height:100%;display:flex;align-items:center}.search-group .search-change-button{padding:1px 2px;height:calc(100% - .5rem)}.search-group .search-change-text,.search-group .search-match{background-color:color-mix(in srgb,var(--dh-color-fg) 20%,transparent);border-radius:20px;padding:0 5px}.search-group .search-match{margin:0 .25rem}.item-list-item{border:none;border-radius:0;display:flex;flex-direction:row;width:100%;padding:0;white-space:nowrap;text-decoration:none;background-color:var(--dh-color-item-list-bg);text-align:left;-webkit-user-select:none;user-select:none}.item-list-item-content{display:flex;flex-direction:row;flex-grow:1;padding:0 .75rem;justify-content:space-between;align-items:center;cursor:pointer}.item-list-item-content .title{flex-grow:1}.item-list-item-content:hover{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item.is-focused .item-list-item-content{background-color:var(--dh-color-item-list-keyboard-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item.active .item-list-item-content{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item:focus{outline:none;box-shadow:none}.item-list-scroll-pane{border:1px solid var(--dh-color-input-border);border-radius:4px}.item-list-scroll-pane:focus{outline:none}.item-list-scroll-pane .item-list-inner-element{position:relative}.btn-switch{display:inline-block;font-size:.6rem;color:var(--dh-color-gray-700);background:var(--dh-color-gray-300);padding:0;min-width:40px;width:40px;overflow:hidden;border:1px solid var(--dh-color-input-border);height:17px}.btn-switch .handle{position:relative;top:0;left:0;margin:1px;width:13px;height:13px;border-radius:13px;background-color:var(--dh-color-gray-700);transform:translate(0);transition:transform .15s ease-in,background-color .15s}.btn-switch :before,.btn-switch :after{width:15px;text-align:center;font-weight:600;text-transform:uppercase;position:absolute;bottom:0;line-height:13px;color:var(--dh-color-gray-700);letter-spacing:.75px;transition:opacity .15s}.btn-switch :before{content:"Off";left:17px;text-align:right}.btn-switch :after{content:"On";color:var(--dh-color-accent-contrast);left:-16px;text-align:left;opacity:0}.btn-switch:focus{outline:none;box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);border-color:var(--dh-color-input-focus-border)}.btn-switch.active{background:var(--dh-color-accent-bg);transition:background-color .15s;border-color:var(--dh-color-accent-bg)}.btn-switch.active:focus{border-color:var(--dh-color-input-focus-border)}.btn-switch.active .handle{transform:translate(23px);transition:transform .15s ease-in}.btn-switch.active :before{opacity:0}.btn-switch.active :after{opacity:1}.btn-switch:hover:not(:disabled) .handle{background-color:var(--dh-color-gray-900, #fcfcfa)}.btn-switch.is-invalid,.btn-switch:focus.is-invalid{border-color:var(--dh-color-negative-bg)}.btn-switch.is-invalid.active,.btn-switch:focus.is-invalid.active{border-color:var(--dh-color-negative-bg);background-color:var(--dh-color-negative-bg)}.btn-switch:disabled{background-color:var(--dh-color-gray-300);border-color:var(--dh-color-black, #1a171a);cursor:not-allowed}.btn-switch:disabled.active{border-color:var(--dh-color-black, #1a171a)}.btn-switch:disabled.active .handle{background-color:var(--dh-color-gray-500)}.console-history-result-in-progress{-webkit-user-select:none;user-select:none}.console-history-result-in-progress .badge{background-color:var(--dh-color-gray-500);color:var(--dh-color-fg, #f0f0ee);font-size:12px;font-weight:400;gap:4px;margin:4px 4px 4px 0;height:26px;border-radius:26px;display:inline-flex;justify-content:center;align-items:center;padding-right:0}.console-history-result-in-progress .badge .console-history-result-in-progress-cancel:after{border-radius:26px}.console-history-result-in-progress.disabled .badge{color:var(--dh-color-gray-700);background-color:var(--dh-color-gray-400);border-color:var(--dh-color-gray-400)}.console-history-item-command,.console-history-item-result{display:flex}.console-history-item-command{white-space:pre-line}.console-history-item-result .log-message{white-space:pre-wrap;word-wrap:break-word}.console-result-buttons .console-history-item-result .console-history-gutter{display:flex;align-items:center;justify-content:flex-end;max-height:34px}.console-history-item-result .btn-console-object{display:inline-flex;align-items:center;gap:.25rem;text-align:left;font-size:12px;padding-left:1rem;margin:4px 4px 4px 0;height:26px;border-radius:26px}.console-history-item-result .error-message{color:var(--dh-color-negative-bg);display:flex;overflow:hidden;-webkit-user-select:text;user-select:text}.console-history-item-result .error-message .error-gutter{padding:0;flex-basis:15px}.console-history-item-result .error-message .error-gutter .error-btn-link{min-width:15px;background-color:transparent;border:0;text-align:left;padding-left:0;padding-right:0;color:color-mix(in srgb,var(--dh-color-negative) 50%,transparent);transition:color .12s ease-in-out,background-color .12s ease-in-out,border-color .12s ease-in-out,box-shadow .12s ease-in-out}.console-history-item-result .error-message .error-gutter .error-btn-link:hover,.console-history-item-result .error-message .error-gutter .error-btn-link--active{color:var(--dh-color-negative-bg)}.console-history-item-result .error-message .error-content{flex-grow:1;white-space:normal;cursor:default;overflow:visible;text-overflow:ellipsis}.console-history-item-result .error-message .console-error-text-trigger{cursor:pointer;color:var(--dh-color-negative-bg);display:inline-block;margin-right:.25rem;border:1px solid transparent;border-radius:4px;overflow:visible;white-space:pre-wrap}.console-history-item-result .error-message .console-error-text-trigger:focus{outline:0}.console-history-item-result .error-message .console-error-text-trigger:focus-visible{border:1px solid color-mix(in srgb,var(--dh-color-negative) 50%,transparent)}.console-history .console-command-result{padding:0 0 .25rem}.console-history,.console-history-footer{font-family:Fira Mono,menlo,monaco,consolas,Liberation Mono,Courier New,monospace;font-size:12px;line-height:18px;padding:0}.console-history .console-history-gutter,.console-history .error-gutter,.console-history-footer .console-history-gutter,.console-history-footer .error-gutter{flex-shrink:0;flex-grow:0;flex-basis:30px;text-align:right;padding-right:8px;color:var(--dh-color-gray-600);-webkit-user-select:none;user-select:none}.console-history .console-history-content,.console-history-footer .console-history-content{min-width:0;flex-grow:1;overflow-wrap:break-word}.console-history .console-history-content .error-message.expanded .error-content,.console-history-footer .console-history-content .error-message.expanded .error-content{-webkit-user-select:text;user-select:text;user-select:contain;white-space:pre-wrap;word-break:break-word;overflow:auto;text-overflow:clip;cursor:default}.editor-container .monaco-editor{--vscode-scrollbar-shadow: var(--dh-color-dropshadow);width:100%!important;font-family:var(--font-family-sans-serif)}.editor-container .monaco-editor .overflow-guard{width:100%!important}.editor-container .monaco-editor .shadow-root-host{font-family:var(--font-family-sans-serif)}.editor-container .monaco-editor .detected-link{color:var(--dh-color-gray-600)}.rendered-markdown.markdown-docs{min-width:12rem}.rendered-markdown.markdown-docs hr{background-color:var(--dh-color-gray-600);height:1px}.rendered-markdown.markdown-docs blockquote{margin-left:1.5rem}.console-input-wrapper{--console-input-bg: var(--dh-color-input-bg);--console-input-surface-bg: var(--dh-color-surface-bg);--console-input-border-color: var(--dh-color-input-border);--console-input-hover-border-color: var(--dh-color-input-hover-border);background-color:var(--console-input-surface-bg);padding:4px;min-height:40px;display:flex;flex-grow:0;flex-shrink:0;width:100%}.console-input-wrapper:before{content:">";flex-grow:0;flex-shrink:0;flex-basis:33px;font-family:Fira Mono,menlo,monaco,consolas,Liberation Mono,Courier New,monospace;font-size:12px;text-align:right;padding-right:15px;padding-top:7px;color:var(--dh-color-fg, #f0f0ee)}.console-input-wrapper .console-input-inner-wrapper{min-width:0;flex-grow:1;border-radius:4px;border:1px solid var(--console-input-border-color);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.console-input-wrapper .console-input-inner-wrapper{transition:none}}.console-input-wrapper .console-input-inner-wrapper .monaco-editor{--vscode-editorGutter-background: var(--console-input-bg);--vscode-editor-background: var(--console-input-bg);border-radius:4px}.console-input-wrapper .console-input-inner-wrapper .monaco-editor .overflow-guard{border-radius:4px}.console-input-wrapper .console-input-inner-wrapper:hover,.console-input-wrapper .console-input-inner-wrapper.hover{border-color:var(--console-input-hover-border-color)}.console-input-wrapper .console-input-inner-wrapper:focus,.console-input-wrapper .console-input-inner-wrapper.focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:none}.csv-overlay{margin:.5rem;background:color-mix(in srgb,var(--dh-color-content-bg) 70%,transparent);text-align:center;display:flex;flex-direction:column;justify-content:center;white-space:pre-line;outline:none;background-image:linear-gradient(to right,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:march .5s;animation-timing-function:linear;animation-iteration-count:infinite}.csv-overlay .message-content{font-size:1.2rem}.csv-overlay .message-content .message-icon{font-size:80px}.csv-overlay .message-content .message-icon .svg-inline--fa{font-size:inherit}.csv-overlay .message-content .message-small{font-size:.8rem}.csv-overlay .message-content .btn{align-self:center;max-width:10rem}.csv-overlay .selected-content{display:flex;flex-direction:row;align-self:center}.csv-overlay .selected-content .selected-icon{font-size:64px}.csv-overlay .selected-content .selected-icon .svg-inline--fa{font-size:inherit}.csv-overlay .selected-content .selected-text{display:flex;flex-direction:column;align-items:flex-start;margin:15px;font-size:1rem}.csv-overlay .selected-content .selected-name{font-size:1.2rem}.csv-progress-container{display:grid;grid-template-columns:max-content 1fr max-content max-content;grid-gap:10px;align-items:center;padding:.5rem;background-color:var(--dh-color-surface-bg)}.csv-progress-container label{margin-bottom:0}.csv-input-bar-container{display:flex;background-color:var(--dh-color-surface-bg);overflow:hidden}.csv-input-bar-container>*{padding-top:.5rem;padding-bottom:.5rem;margin-left:.5rem;margin-right:.5rem}.csv-input-bar-container .form-group label{margin-right:.5rem}.csv-input-bar-container .csv-input-buttons{flex-flow:row wrap;margin-left:auto}.csv-input-bar-container .csv-input-buttons>*:first-child{margin-right:.25rem}.iris-console{display:flex}.iris-console .console-pane{position:relative;flex-grow:1;display:flex;flex-direction:column;height:100%;width:100%}.iris-console .console-pane .scroll-pane{flex-grow:1}.iris-console .console-pane .scroll-pane:before{content:"";display:block;position:absolute;width:100%;box-shadow:var(--dh-color-dropshadow) 0 6px 6px -6px inset;height:6px;opacity:0;transition:opacity .3s;pointer-events:none}.iris-console .console-pane .scroll-pane.scroll-decoration:before{opacity:1}.iris-console .console-pane .console-csv-container{position:relative;overflow:hidden;flex-grow:1}.console-pane-status-bar{display:flex;gap:3px;align-items:center;justify-content:flex-end;flex-grow:0;width:100%;font-size:small;text-align:right;color:var(--dh-color-gray-600)}.console-pane-status-details{text-align:left;max-width:400px;max-height:80vh;overflow:auto}.console-pane-status-details dd{white-space:pre-line}.console-status-icon{height:9px;position:relative;width:9px;top:-1px}.console-status-icon:before{border-radius:50%;border-style:solid;border-width:2px;content:"";display:block;height:100%;position:absolute;width:100%}.console-status-icon-idle:before{border-color:var(--dh-color-gray-600)}.console-status-icon-pending:before{border-color:var(--dh-color-gray-600);background:var(--dh-color-gray-600)}.console-status-icon-disconnected:before{border-color:var(--dh-color-visual-red)}.script-editor{display:flex;flex-direction:column;flex-grow:1;position:relative}.command-history .command-history-item{width:100%;padding:0 .75rem;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis}.command-history .item-list-item{padding:0;width:100%;background:transparent;color:var(--dh-color-gray-600);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:27px;border:1px solid transparent}.command-history .item-list-item.is-focused{background-color:transparent;color:var(--dh-color-gray-600)}.command-history .item-list-item:focus{outline:none}.command-history .item-list-item.active{outline:none;background-color:var(--dh-color-item-list-selected-inactive-bg);color:var(--dh-color-gray-600)}.command-history:focus-within .item-list-item.active{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item.active :before,.command-history:focus-within .item-list-item.active :after{content:"";position:absolute;top:-1px;bottom:-2px;width:1px;background-color:var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active :before{left:-1px}.command-history:focus-within .item-list-item.active :after{right:-1px}.command-history .item-list-item:hover{background-color:var(--dh-color-item-list-hover-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item.active:hover{background-color:var(--dh-color-item-list-selected-hover-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item:not(.active)+.active,.command-history:focus-within .item-list-item.active:first-of-type{border-top:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .active+.item-list-item:not(.active){border-top:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active:last-of-type{border-bottom:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active:last-of-type :before,.command-history:focus-within .item-list-item.active:last-of-type :after{bottom:-1px}.command-history-item-popper,.command-history-item-popper .popper-content .tooltip-content{padding:0}.command-history-item-popper .command-history-item-tooltip{display:flex;flex-direction:column;max-height:50vh;max-width:50vw;text-align:left}.command-history-item-popper .command-history-item-tooltip .scroll-container{padding:.5rem;overflow:auto}.command-history-item-popper .command-history-item-tooltip .result-info{flex-shrink:0;border-top:1px solid var(--dh-color-gray-500);padding:.25rem .5rem;overflow:auto;max-height:25vh}.command-history-item-popper .command-history-item-tooltip .result-info .time-wrapper{text-align:right;color:var(--dh-color-gray-600)}.command-history-item-popper .command-history-item-tooltip .result-info .time-wrapper .time-string{color:var(--dh-color-fg, #f0f0ee)}.command-history-item-popper .command-history-item-tooltip .result-info .error-message{color:var(--dh-color-negative-bg)}.command-history-actions{flex-shrink:0;margin-bottom:.25rem}.command-history-actions>*:first-child{margin:0 .25rem 0 0}.command-history{display:flex;flex-direction:column;position:relative;height:100%;width:100%}.command-history .command-history-list{flex-grow:1;overflow:hidden;width:100%;height:100%;background-color:var(--dh-color-subdued-content-bg);color:var(--dh-color-gray-600);padding:0}.command-history .command-history-list .item-list-scroll-pane{border:none;border-radius:0}.command-history-search-bar{background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);width:100%;padding:.25rem .25rem 0;display:flex;flex-wrap:wrap;flex-shrink:0;overflow:hidden}.command-history-search-bar .search-group{flex-grow:1;margin-right:.25rem;margin-bottom:.25rem}.log-pane-menu{position:absolute;right:17px;padding-left:3px;padding-bottom:1px;z-index:11;background:var(--dh-color-content-bg, #2d2a2e)}.log-pane-menu div{display:inline-block}.log-pane-menu .btn-link{min-width:1rem;padding:6px}.log-pane-editor .monaco-editor .scroll-decoration{box-shadow:var(--dh-color-black, #1a171a) 0 10px 10px -10px inset;height:10px}.log-pane-editor .find-widget{box-shadow:none!important;background:var(--dh-color-content-bg, #2d2a2e)!important;margin-right:48px}.log-pane-editor .find-widget .button[title*=Close i],.log-pane-editor .find-widget .monaco-sash{display:none}.log-level-menu-popper .popper-content .context-menu-container{background:var(--dh-color-gray-400);font-size:.875rem;min-width:0}.log-level-menu-popper .popper-content .popper-arrow{border-color:var(--dh-color-gray-400)}.log-level-menu-title{margin-left:.5rem;margin-right:3rem;margin-bottom:.5rem;padding-top:.5rem;font-weight:500;-webkit-user-select:none;user-select:none}.log-level-menu-controls .btn-link{font-size:.9rem;padding:.25rem;margin:.25rem;margin-top:0}.log-level-menu-controls .btn-link.log-level-toggle-all{color:var(--dh-color-gray-700);text-decoration:underline}.log-level-menu-controls .btn-link.log-level-toggle-all:hover{color:var(--dh-color-white, #f0f0ee)}.log-level-menu-item{margin-left:.5rem;margin-right:.5rem;height:22px;-webkit-user-select:none;user-select:none}.log-level-menu-item .btn-switch{margin-right:.5rem}.log-level-menu-item.ERROR,.log-level-menu-item.FATAL,.log-level-menu-item.STDERR{color:var(--dh-color-negative-bg)}.log-level-menu-item.INFO{color:var(--dh-color-visual-blue)}.log-level-menu-item.STDOUT{color:var(--dh-color-fg, #f0f0ee)}.log-level-menu-item.WARN{color:var(--dh-color-visual-yellow)}.log-level-menu-item.DEBUG{color:var(--dh-color-visual-purple)}.log-level-menu-item.TRACE{color:var(--dh-color-visual-green)}.max-memory{position:relative;color:var(--dh-color-gray-700);background-color:var(--dh-color-gray-75);border:1px solid var(--dh-color-bg, #1a171a);width:4.25rem;vertical-align:middle;text-align:center;-webkit-user-select:none;user-select:none;z-index:1}.total-memory,.used-memory{position:absolute;top:0;right:0;bottom:0;left:0;margin:1px;z-index:-1}.total-memory{background-color:var(--dh-color-gray-400)}.used-memory{background-color:var(--dh-color-gray-500)}.heap-overflow{background-color:var(--dh-color-visual-red)}.heap-tooltip{padding:.25rem;width:200px}.heap-usage-info-row{display:flex;color:var(--dh-color-fg, #f0f0ee);padding:.25rem;justify-content:space-between}.heap-plot{display:flex;align-items:center}.heading-bottom-border{border-bottom:1px solid var(--dh-color-gray-75);margin-bottom:.25rem}.heap-utilisation-text{margin-top:.25rem;color:var(--dh-color-gray-600)}._lm_dragging_1cqvf_1{overflow:hidden;pointer-events:none}._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1{pointer-events:auto}._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li{pointer-events:none}._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li._lm_tabpreviousbutton_1cqvf_1,._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li._lm_tabnextbutton_1cqvf_1{pointer-events:auto}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:not(._lm_active_1cqvf_1):hover{color:var(--dh-color-gray-700)}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:hover ._lm_close_tab_1cqvf_1{opacity:.35}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:hover ._lm_close_tab_1cqvf_1:hover{opacity:1}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:hover ._lm_close_tab_1cqvf_1:hover:before{opacity:1}._lm_goldenlayout_1cqvf_1 ._lm_goldenlayout_1cqvf_1._lm_dragging_1cqvf_1:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--dh-color-highlight-selected);border:1px dashed var(--dh-color-hover-border);pointer-events:none;z-index:9999}._lm_goldenlayout_1cqvf_1{background:var(--dh-color-bg, #1a171a);position:absolute}._lm_content_1cqvf_1{background:var(--dh-color-content-bg, #2d2a2e);overflow:visible}._lm_dragProxy_1cqvf_1 ._lm_content_1cqvf_1{height:100%;width:100%;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_dragProxy_1cqvf_1 ._lm_header_1cqvf_1{height:28px;box-shadow:none}._lm_dragProxy_1cqvf_1 ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1,._lm_dragProxy_1cqvf_1 ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1{border:0;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_dropTargetIndicator_1cqvf_1{background-image:linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:_march_1cqvf_1 .5s;animation-timing-function:linear;animation-iteration-count:infinite;box-sizing:border-box;transition:all .2s ease}._lm_dropTargetIndicator_1cqvf_1 ._lm_inner_1cqvf_1{box-sizing:border-box;border:1px solid transparent;box-shadow:inset 0 0 1rem 1px var(--dh-color-dropshadow);opacity:1;background:color-mix(in srgb,var(--dh-color-accent) 10%,transparent)}._lm_splitter_1cqvf_1{background:var(--dh-color-gray-600);opacity:.001;transition:opacity .15s ease}._lm_splitter_1cqvf_1:hover,._lm_splitter_1cqvf_1._lm_dragging_1cqvf_1{background:var(--dh-color-gray-700);opacity:1}._lm_header_1cqvf_1{box-sizing:content-box;height:28px;padding-top:0;background:var(--dh-color-golden-layout-tab-header-bg);box-shadow:inset 0 -1px 0 0 var(--dh-color-bg, #1a171a);-webkit-user-select:none;user-select:none}._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li{height:100%;width:24px}._lm_header_1cqvf_1._lm_selectable_1cqvf_1{cursor:pointer}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1{display:flex;align-items:center;font-family:Fira Sans,-apple-system,blinkmacsystemfont,Segoe UI,Roboto,Helvetica Neue,arial,sans-serif;background-color:var(--dh-color-golden-layout-tab-bg);color:var(--dh-color-gray-600);height:28px;font-size:12px;min-width:10ch;margin:0;padding:0 0 0 6px;box-shadow:inset -1px -1px 0 0 var(--dh-color-bg, #1a171a);transition:color .15s,background-color .15s;max-width:12.25rem;white-space:nowrap;overflow:hidden}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_1cqvf_1{flex-grow:1;padding-right:6px}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_before_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_before_1cqvf_1{display:flex;align-items:center}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1{margin-left:-6px;flex-shrink:0;cursor:pointer;position:relative;width:18px;height:100%;opacity:0}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:before,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:1px;border-radius:2px;background-color:var(--dh-color-highlight-selected-hover);opacity:0;transition:opacity .15s ease}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:after,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:after{background-size:8px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close-tab);mask-image:var(--dh-svg-icon-close-tab);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:8px;mask-size:8px;content:"";position:absolute;top:0;right:2px;bottom:0;left:0}._lm_selected_1cqvf_1 ._lm_header_1cqvf_1{background-color:var(--dh-color-golden-layout-tab-selected-bg)}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1,._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1:hover{height:28px;background-color:var(--dh-color-golden-layout-tab-selected-bg);color:var(--dh-color-text);padding-bottom:0;box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1._lm_focusin_1cqvf_1,._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1:hover._lm_focusin_1cqvf_1{box-shadow:inset 0 1px var(--dh-color-accent-bg),inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1 ._lm_close_tab_1cqvf_1,._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1:hover ._lm_close_tab_1cqvf_1{opacity:.35}._lm_window_blur_1cqvf_1 ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1._lm_focusin_1cqvf_1{box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_controls_1cqvf_1>li{opacity:.4;transition:opacity .15s ease;position:relative;background-position:center center;background-repeat:no-repeat}._lm_controls_1cqvf_1>li:hover{opacity:1}._lm_controls_1cqvf_1 ._lm_popout_1cqvf_1{background-size:auto;background-color:var(--dh-color-fg);-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:auto;mask-size:auto}._lm_controls_1cqvf_1 ._lm_maximise_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-maximise);mask-image:var(--dh-svg-icon-maximise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_tabdropdown_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-tab-dropdown);mask-image:var(--dh-svg-icon-tab-dropdown);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_close_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close);mask-image:var(--dh-svg-icon-close);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_tabnextbutton_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-next);mask-image:var(--dh-svg-icon-next);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_tabpreviousbutton_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-prev);mask-image:var(--dh-svg-icon-prev);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_tabdropdown_list_1cqvf_1{z-index:1000;background:var(--dh-color-popover-bg);box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);border-radius:4px;max-width:12rem;margin:0;padding:0;list-style-type:none}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1{padding:.25rem}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1 input{padding:.42145rem .75rem;line-height:1.3;color:var(--dh-color-input-fg);background-color:var(--dh-color-input-bg);border:1px solid var(--dh-color-input-border);border-radius:4px;max-width:100%}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1 input::placeholder{color:var(--dh-color-input-placeholder);opacity:1}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1 input:focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:0}._lm_tabdropdown_list_1cqvf_1 ._lm_tabs_1cqvf_1{padding:0}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1{background:transparent;color:var(--dh-color-gray-700);box-shadow:none}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1._lm_keyboard_active_1cqvf_1{color:var(--dh-color-gray-700);background-color:var(--dh-color-highlight-selected)}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1._lm_keyboard_active_1cqvf_1:hover{background-color:var(--dh-color-highlight-selected-hover)}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1:hover{color:var(--dh-color-text);background-color:var(--dh-color-highlight-hover)}._lm_maximised_1cqvf_1{border:15px solid color-mix(in srgb,var(--dh-color-bg) 80%,transparent);height:100%!important;width:100%!important}._lm_maximised_1cqvf_1 ._lm_items_1cqvf_1{box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_maximised_1cqvf_1 ._lm_controls_1cqvf_1 ._lm_maximise_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-minimise);mask-image:var(--dh-svg-icon-minimise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_tabs_1cqvf_1:empty+._lm_controls_1cqvf_1 ._lm_maximise_1cqvf_1{display:none}.lm_root{position:relative}.lm_row>.lm_item{float:left}.lm_content{overflow:hidden;position:relative;outline:0}.lm_dragging,.lm_dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.lm_maximised{position:absolute;top:0;left:0;z-index:40}.lm_maximise_placeholder{display:none}.lm_splitter{position:relative;z-index:20}.lm_splitter:hover,.lm_splitter.lm_dragging{background:orange}.lm_splitter.lm_vertical .lm_drag_handle{width:100%;position:absolute;cursor:ns-resize}.lm_splitter.lm_horizontal{float:left;height:100%}.lm_splitter.lm_horizontal .lm_drag_handle{height:100%;position:absolute;cursor:ew-resize}.lm_header{display:flex;justify-content:space-between;max-width:100%;z-index:12;position:relative;overflow:hidden}.lm_header.lm_dropdown_open{z-index:22}.lm_header [class^=lm_]{box-sizing:content-box!important}.lm_header .lm_controls{display:flex;-webkit-user-select:none;user-select:none}.lm_header .lm_controls>li{cursor:pointer;float:left;width:18px;height:18px;text-align:center}.lm_header .lm_controls>li[disabled]{cursor:default;opacity:.1}.lm_header ul{margin:0;padding:0;list-style-type:none}.lm_header .lm_tabs{display:flex;flex-grow:1;overflow:hidden}.lm_header .lm_tab{cursor:pointer;height:14px;margin-top:1px;padding:0 25px 5px 10px;position:relative;min-width:0;flex-shrink:0}.lm_header .lm_tab .lm_title{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lm_header .lm_tab .lm_close_tab{width:14px;height:14px;position:absolute;top:0;right:0;text-align:center}.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{height:100%}.lm_dragProxy.lm_left .lm_header,.lm_dragProxy.lm_right .lm_header,.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{width:20px;float:left;vertical-align:top}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform-origin:left top;top:0;width:1000px}.lm_dragProxy.lm_left .lm_header .lm_controls,.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_left .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{bottom:0}.lm_dragProxy.lm_left .lm_items,.lm_dragProxy.lm_right .lm_items,.lm_stack.lm_left .lm_items,.lm_stack.lm_right .lm_items{float:left}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs{transform:rotate(-90deg) scaleX(-1);left:0}.lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab,.lm_stack.lm_left .lm_header .lm_tabs .lm_tab{transform:scaleX(-1);margin-top:1px}.lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list,.lm_stack.lm_left .lm_header .lm_tabdropdown_list{top:initial;right:initial;left:20px}.lm_dragProxy.lm_right .lm_content{float:left}.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform:rotate(90deg) scaleX(1);left:100%;margin-left:0}.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{left:3px}.lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list,.lm_stack.lm_right .lm_header .lm_tabdropdown_list{top:initial;right:20px}.lm_dragProxy.lm_bottom .lm_header .lm_tab,.lm_stack.lm_bottom .lm_header .lm_tab{margin-top:0;border-top:none}.lm_dragProxy.lm_bottom .lm_header .lm_controls,.lm_stack.lm_bottom .lm_header .lm_controls{top:3px}.lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,.lm_stack.lm_bottom .lm_header .lm_tabdropdown_list{top:initial;bottom:20px}.lm_drop_tab_placeholder{flex-shrink:0}.lm_tabdropdown_list{position:absolute;overflow-y:auto;overflow-x:hidden;top:0;left:0;max-height:100%}.lm_tabdropdown_list .lm_tabs{flex-direction:column}.lm_tabdropdown_list .lm_tab{padding-right:10px}.lm_tabdropdown_list .lm_tab .lm_title{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lm_tabdropdown_list .lm_close_tab{display:none!important}.lm_dragProxy{position:absolute;top:0;left:0;z-index:30;pointer-events:none}.lm_dragProxy .lm_header{background:transparent}.lm_dragProxy .lm_content{border-top:none;overflow:hidden}.lm_dropTargetIndicator{display:none;position:absolute;z-index:20;pointer-events:none}.lm_dropTargetIndicator .lm_inner{width:100%;height:100%;position:relative;top:0;left:0}.lm_popin{width:20px;height:20px;position:absolute;bottom:0;right:0;z-index:9999}.lm_popin>*{width:100%;height:100%;position:absolute;top:0;left:0}.lm_popin>.lm_bg{z-index:10}.lm_popin>.lm_icon{z-index:20}.lm_dragging{overflow:hidden;pointer-events:none}.lm_dragging .lm_goldenlayout .lm_header{pointer-events:auto}.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li{pointer-events:none}.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li.lm_tabpreviousbutton,.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li.lm_tabnextbutton{pointer-events:auto}body:not(.lm_dragging) .lm_header .lm_tab:not(.lm_active):hover{color:var(--dh-color-gray-700)}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab{opacity:.35}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab:hover{opacity:1}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab:hover:before{opacity:1}.lm_goldenlayout .lm_goldenlayout.lm_dragging:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--dh-color-highlight-selected);border:1px dashed var(--dh-color-hover-border);pointer-events:none;z-index:9999}.lm_goldenlayout{background:var(--dh-color-bg, #1a171a);position:absolute}.lm_content{background:var(--dh-color-content-bg, #2d2a2e);overflow:visible}.lm_dragProxy .lm_content{height:100%;width:100%;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_dragProxy .lm_header{height:28px;box-shadow:none}.lm_dragProxy .lm_header .lm_tab,.lm_dragProxy .lm_header .lm_tab.lm_active{border:0;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_dropTargetIndicator{background-image:linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:march .5s;animation-timing-function:linear;animation-iteration-count:infinite;box-sizing:border-box;transition:all .2s ease}.lm_dropTargetIndicator .lm_inner{box-sizing:border-box;border:1px solid transparent;box-shadow:inset 0 0 1rem 1px var(--dh-color-dropshadow);opacity:1;background:color-mix(in srgb,var(--dh-color-accent) 10%,transparent)}.lm_splitter{background:var(--dh-color-gray-600);opacity:.001;transition:opacity .15s ease}.lm_splitter:hover,.lm_splitter.lm_dragging{background:var(--dh-color-gray-700);opacity:1}.lm_header{box-sizing:content-box;height:28px;padding-top:0;background:var(--dh-color-golden-layout-tab-header-bg);box-shadow:inset 0 -1px 0 0 var(--dh-color-bg, #1a171a);-webkit-user-select:none;user-select:none}.lm_header .lm_controls>li{height:100%;width:24px}.lm_header.lm_selectable{cursor:pointer}.lm_header .lm_tab,.lm_tabdropdown_list .lm_tab{display:flex;align-items:center;font-family:Fira Sans,-apple-system,blinkmacsystemfont,Segoe UI,Roboto,Helvetica Neue,arial,sans-serif;background-color:var(--dh-color-golden-layout-tab-bg);color:var(--dh-color-gray-600);height:28px;font-size:12px;min-width:10ch;margin:0;padding:0 0 0 6px;box-shadow:inset -1px -1px 0 0 var(--dh-color-bg, #1a171a);transition:color .15s,background-color .15s;max-width:12.25rem;white-space:nowrap;overflow:hidden}.lm_header .lm_tab .lm_title,.lm_tabdropdown_list .lm_tab .lm_title{flex-grow:1;padding-right:6px}.lm_header .lm_tab .lm_title_before,.lm_tabdropdown_list .lm_tab .lm_title_before{display:flex;align-items:center}.lm_header .lm_tab .lm_close_tab,.lm_tabdropdown_list .lm_tab .lm_close_tab{margin-left:-6px;flex-shrink:0;cursor:pointer;position:relative;width:18px;height:100%;opacity:0}.lm_header .lm_tab .lm_close_tab:before,.lm_tabdropdown_list .lm_tab .lm_close_tab:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:1px;border-radius:2px;background-color:var(--dh-color-highlight-selected-hover);opacity:0;transition:opacity .15s ease}.lm_header .lm_tab .lm_close_tab:after,.lm_tabdropdown_list .lm_tab .lm_close_tab:after{background-size:8px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close-tab);mask-image:var(--dh-svg-icon-close-tab);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:8px;mask-size:8px;content:"";position:absolute;top:0;right:2px;bottom:0;left:0}.lm_selected .lm_header{background-color:var(--dh-color-golden-layout-tab-selected-bg)}.lm_header .lm_tab.lm_active,.lm_header .lm_tab.lm_active:hover{height:28px;background-color:var(--dh-color-golden-layout-tab-selected-bg);color:var(--dh-color-text);padding-bottom:0;box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_header .lm_tab.lm_active.lm_focusin,.lm_header .lm_tab.lm_active:hover.lm_focusin{box-shadow:inset 0 1px var(--dh-color-accent-bg),inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_header .lm_tab.lm_active .lm_close_tab,.lm_header .lm_tab.lm_active:hover .lm_close_tab{opacity:.35}.lm_window_blur .lm_header .lm_tab.lm_active.lm_focusin{box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_controls>li{opacity:.4;transition:opacity .15s ease;position:relative;background-position:center center;background-repeat:no-repeat}.lm_controls>li:hover{opacity:1}.lm_controls .lm_popout{background-size:auto;background-color:var(--dh-color-fg);-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:auto;mask-size:auto}.lm_controls .lm_maximise{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-maximise);mask-image:var(--dh-svg-icon-maximise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabdropdown{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-tab-dropdown);mask-image:var(--dh-svg-icon-tab-dropdown);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_close{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close);mask-image:var(--dh-svg-icon-close);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabnextbutton{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-next);mask-image:var(--dh-svg-icon-next);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabpreviousbutton{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-prev);mask-image:var(--dh-svg-icon-prev);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_tabdropdown_list{z-index:1000;background:var(--dh-color-popover-bg);box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);border-radius:4px;max-width:12rem;margin:0;padding:0;list-style-type:none}.lm_tabdropdown_list .lm_tabdropdown_search{padding:.25rem}.lm_tabdropdown_list .lm_tabdropdown_search input{padding:.42145rem .75rem;line-height:1.3;color:var(--dh-color-input-fg);background-color:var(--dh-color-input-bg);border:1px solid var(--dh-color-input-border);border-radius:4px;max-width:100%}.lm_tabdropdown_list .lm_tabdropdown_search input::placeholder{color:var(--dh-color-input-placeholder);opacity:1}.lm_tabdropdown_list .lm_tabdropdown_search input:focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:0}.lm_tabdropdown_list .lm_tabs{padding:0}.lm_tabdropdown_list .lm_tab{background:transparent;color:var(--dh-color-gray-700);box-shadow:none}.lm_tabdropdown_list .lm_tab.lm_keyboard_active{color:var(--dh-color-gray-700);background-color:var(--dh-color-highlight-selected)}.lm_tabdropdown_list .lm_tab.lm_keyboard_active:hover{background-color:var(--dh-color-highlight-selected-hover)}.lm_tabdropdown_list .lm_tab:hover{color:var(--dh-color-text);background-color:var(--dh-color-highlight-hover)}.lm_maximised{border:15px solid color-mix(in srgb,var(--dh-color-bg) 80%,transparent);height:100%!important;width:100%!important}.lm_maximised .lm_items{box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_maximised .lm_controls .lm_maximise{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-minimise);mask-image:var(--dh-svg-icon-minimise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_tabs:empty+.lm_controls .lm_maximise{display:none}.lm_tab .editor-unsaved-indicator{display:none;width:8px;height:8px;margin-right:.25rem;border-radius:50%;background:var(--dh-color-accent-bg)}.lm_tab .editor-unsaved-indicator.is-unsaved{display:inline-block}.lm_dragging .js-plotly-plot .plotly svg,.lm_dragging .js-plotly-plot .plotly g,.lm_dragging .js-plotly-plot .plotly rect,.lm_dragging .js-plotly-plot .plotly path{pointer-events:none!important}.panel-placeholder{display:flex;flex-direction:column;justify-content:center;min-height:100%;max-height:100%;text-align:center;overflow:hidden}.panel-placeholder div{padding:1rem}.panel-error-boundary{height:100%;width:100%;position:relative}.dashboard-container{position:relative}.dashboard-empty{position:absolute;display:grid;place-items:center;top:0;right:0;bottom:0;left:0;color:var(--dh-color-neutral);font-size:1.5rem}.dh-panel{position:relative}.command-history-pane{background-color:var(--dh-color-gray-75)}.command-history-pane .command-history-disconnected-message{background-color:var(--dh-color-content-bg, #2d2a2e);color:var(--dh-color-gray-600);display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;overflow:hidden;width:100%;height:100%;text-align:center}.error-message pre{color:var(--dh-color-negative-bg)}.iris-panel-console.disconnected .console-history-result-in-progress,.iris-panel-console.disconnected .csv-overlay,.iris-panel-console.disconnected .csv-input-bar,.iris-panel-console.disconnected .console-input-wrapper{display:none}.file-explorer{background:var(--dh-color-subdued-content-bg);position:relative;flex-grow:1}.file-explorer .single-click-item-list-scroll-pane{flex-grow:1;flex-shrink:1;width:100%;padding:0;position:relative}.file-explorer .spinner-overlay{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-content:center}.file-list{position:absolute;top:0;bottom:0;left:0;right:0}.file-list .file-list-depth-line{margin-left:5px;padding-bottom:2px;width:8px;height:100%;border-left:1px solid var(--dh-color-gray-500);box-sizing:content-box}.file-list .item-list-scroll-pane{border:none;border-radius:0}.file-list .item-list-item{padding:0 .75rem;color:var(--dh-color-gray-600);border:1px solid transparent;-webkit-user-drag:none;cursor:pointer}.file-list .item-list-item.is-focused,.file-list .item-list-item.active{background-color:var(--dh-color-item-list-selected-inactive-bg)}.file-list .item-list-item:focus,.file-list .item-list-item.active,.file-list .item-list-item:hover,.file-list .item-list-item.is-focused{color:var(--dh-color-item-list-selected-fg)}.file-list .truncation-wrapper{overflow-x:hidden;text-overflow:ellipsis;white-space:pre}.file-list .item-icon{margin-right:.25rem}.file-list:focus-within.item-list-item.is-focused{background-color:var(--dh-color-item-list-selected-bg)}.file-list:focus-within .item-list-item.active{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:focus-within .item-list-item.active :before,.file-list:focus-within .item-list-item.active :after{content:"";position:absolute;top:-1px;bottom:-2px;width:1px;background-color:var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active :before{left:-1px}.file-list:focus-within .item-list-item.active :after{right:-1px}.file-list.is-dragging{cursor:grabbing}.file-list.is-dragging .item-list-item.active{opacity:.5}.file-list.is-dragging .is-in-drop-target,.file-list.is-dragging .is-exact-drop-target{color:var(--dh-color-item-list-drop-target-fg)}.file-list:not(.is-dragging) .item-list-item:hover{background-color:var(--dh-color-item-list-hover-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:not(.is-dragging):focus-within .item-list-item.active:hover{background-color:var(--dh-color-item-list-selected-hover-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:focus-within .item-list-item:not(.active)+.active,.file-list:focus-within .item-list-item.active:first-of-type{border-top:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active+.item-list-item:not(.active){border-top:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active:last-of-type{border-bottom:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active:last-of-type :before,.file-list:focus-within .item-list-item.active:last-of-type :after{bottom:0}.file-list-dnd-placeholder{position:absolute;top:-100px;right:0}.file-list-dnd-placeholder .dnd-placeholder-content{padding:.25rem 1rem;background:var(--dh-color-accent-down-bg);color:var(--dh-color-fg, #f0f0ee);border-radius:4px}.file-list-item-editor{z-index:1;width:100%;display:inline-block;position:relative}.file-list-item-editor .file-list-item-editor-input{padding:0;border:none;border-radius:0;height:26px;line-height:26px}.file-list-item-editor .file-list-item-editor-input.is-invalid{border-bottom-left-radius:0;border-bottom-right-radius:0;padding-right:2rem}.file-list-item-editor .invalid-feedback{color:var(--dh-color-fg, #f0f0ee);background-color:var(--dh-color-negative-bg);font-size:.9rem;margin-top:0;padding:.25rem .5rem;border-bottom-left-radius:4px;border-bottom-right-radius:4px;position:absolute;top:100%;left:0}.new-file-modal-content .new-item-destination{color:var(--dh-color-gray-600)}.new-file-modal-content .file-explorer-container{border:1px solid var(--dh-color-input-border);border-radius:4px;overflow:hidden;height:250px;display:flex;flex-direction:column}.new-file-modal-content .directory-breadcrumbs{color:var(--dh-color-accent-bg)}.file-explorer-toolbar{background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);display:flex;flex-direction:row;flex-grow:0;flex-shrink:1;width:100%;position:relative;align-items:center;padding:.25rem}.file-explorer-toolbar .file-explorer-toolbar-buttons{display:flex;padding-right:.25rem}.file-explorer-toolbar .file-explorer-toolbar-search{display:flex;flex-grow:1}.file-explorer-toolbar .file-explorer-toolbar-search .search-group{width:100%}.file-explorer-toolbar .btn{min-width:calc(1.3em + .8429rem + 2px);padding-left:0;padding-right:0;font-size:17px}.file-explorer-panel{display:flex;flex-direction:column}.log-panel-disconnected-message{color:var(--dh-color-gray-600);display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;overflow:hidden;width:100%;height:100%;text-align:center}.notebook-title.is-preview{font-style:italic}.notebook-session-not-connected{padding:.5rem;color:var(--dh-color-gray-500)}.notebook-container{display:flex;flex-direction:column}.notebook-container .notebook-toolbar{display:flex;justify-content:center;flex-direction:row;background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);padding:.25rem .5rem;gap:.25rem}.notebook-container .notebook-toolbar .btn-play:hover,.notebook-container .notebook-toolbar .btn-play-selected:hover{color:var(--dh-color-visual-green)}.notebook-container .notebook-toolbar .icon-create-pq{transform:translateY(-4px)}
|