@deephaven/code-studio 0.85.31 → 0.85.32

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.
Files changed (40) hide show
  1. package/build/assets/{AppRoot-816934e1.js → AppRoot-ebba7f82.js} +4 -4
  2. package/build/assets/{AppRoot-816934e1.js.map → AppRoot-ebba7f82.js.map} +1 -1
  3. package/build/assets/{Chart-ed6ce07b.js → Chart-31b98bdf.js} +2 -2
  4. package/build/assets/{Chart-ed6ce07b.js.map → Chart-31b98bdf.js.map} +1 -1
  5. package/build/assets/{ControlType-04435a15.js → ControlType-7a644160.js} +3 -3
  6. package/build/assets/{ControlType-04435a15.js.map → ControlType-7a644160.js.map} +1 -1
  7. package/build/assets/{FontBootstrap-2d91b9e5.js → FontBootstrap-5e60bb4e.js} +2 -2
  8. package/build/assets/{FontBootstrap-2d91b9e5.js.map → FontBootstrap-5e60bb4e.js.map} +1 -1
  9. package/build/assets/{FormatterUtils-37ebf8dc.js → FormatterUtils-baed1012.js} +2 -2
  10. package/build/assets/{FormatterUtils-37ebf8dc.js.map → FormatterUtils-baed1012.js.map} +1 -1
  11. package/build/assets/{Grid-0b5c8d49.js → Grid-860a9c16.js} +2 -2
  12. package/build/assets/{Grid-0b5c8d49.js.map → Grid-860a9c16.js.map} +1 -1
  13. package/build/assets/{IrisGrid-3a2cd499.js → IrisGrid-d45b017b.js} +2 -2
  14. package/build/assets/{IrisGrid-3a2cd499.js.map → IrisGrid-d45b017b.js.map} +1 -1
  15. package/build/assets/{IrisGridModel-51d1e4a7.js → IrisGridModel-0fc1dc91.js} +2 -2
  16. package/build/assets/{IrisGridModel-51d1e4a7.js.map → IrisGridModel-0fc1dc91.js.map} +1 -1
  17. package/build/assets/{IrisGridShortcuts-bc968b91.js → IrisGridShortcuts-c4b59c54.js} +2 -2
  18. package/build/assets/{IrisGridShortcuts-bc968b91.js.map → IrisGridShortcuts-c4b59c54.js.map} +1 -1
  19. package/build/assets/{IrisGridThemeProvider-872eec77.js → IrisGridThemeProvider-e0fb6177.js} +2 -2
  20. package/build/assets/{IrisGridThemeProvider-872eec77.js.map → IrisGridThemeProvider-e0fb6177.js.map} +1 -1
  21. package/build/assets/{LocalWorkspaceStorage-a15c71ba.js → LocalWorkspaceStorage-9fc16a93.js} +2 -2
  22. package/build/assets/{LocalWorkspaceStorage-a15c71ba.js.map → LocalWorkspaceStorage-9fc16a93.js.map} +1 -1
  23. package/build/assets/{MarkdownEditor-082e752c.js → MarkdownEditor-a32a9c3a.js} +2 -2
  24. package/build/assets/{MarkdownEditor-082e752c.js.map → MarkdownEditor-a32a9c3a.js.map} +1 -1
  25. package/build/assets/{MarkdownNotebook-27d09308.js → MarkdownNotebook-dcf83e5c.js} +2 -2
  26. package/build/assets/{MarkdownNotebook-27d09308.js.map → MarkdownNotebook-dcf83e5c.js.map} +1 -1
  27. package/build/assets/{MissingPartitionError-9e55abce.js → MissingPartitionError-24250c44.js} +2 -2
  28. package/build/assets/{MissingPartitionError-9e55abce.js.map → MissingPartitionError-24250c44.js.map} +1 -1
  29. package/build/assets/{StyleGuideRoot-9c0181cd.js → StyleGuideRoot-3d1f4fac.js} +2 -2
  30. package/build/assets/{StyleGuideRoot-9c0181cd.js.map → StyleGuideRoot-3d1f4fac.js.map} +1 -1
  31. package/build/assets/{TokenBoxCellRenderer-3134bec5.js → TokenBoxCellRenderer-9d709524.js} +2 -2
  32. package/build/assets/{TokenBoxCellRenderer-3134bec5.js.map → TokenBoxCellRenderer-9d709524.js.map} +1 -1
  33. package/build/assets/{index-669d2b9e.js → index-6b74db9b.js} +3 -3
  34. package/build/assets/{index-669d2b9e.js.map → index-6b74db9b.js.map} +1 -1
  35. package/build/assets/{index-b495dd89.js → index-6ed3511b.js} +2 -2
  36. package/build/assets/{index-b495dd89.js.map → index-6ed3511b.js.map} +1 -1
  37. package/build/assets/{index-c187df9b.js → index-dd7f33be.js} +2 -2
  38. package/build/assets/{index-c187df9b.js.map → index-dd7f33be.js.map} +1 -1
  39. package/build/index.html +2 -2
  40. package/package.json +14 -14
@@ -1,2 +1,2 @@
1
- import{r as d,J as c,bu as Ve,a9 as vt,M as I,V as F,ay as pt,L as mt,a3 as K,bv as gt,N as ie,bw as bt,bx as yt,av as wt,I as fe,by as et,a5 as Pt,a1 as St}from"./vendor-3e5e4180.js";import{E as Ot,t as N,P as W,aI as Et,aH as oe,ai as xt,u as Mt,az as J,aY as Ct,bM as Dt,ct as Tt,bU as jt,bR as _t,cu as Rt,bS as It,cv as Lt,a8 as Nt,Y as At,X as $t,ci as Ft,ck as be,ak as Ut,cr as Kt,aX as kt,aW as Bt,a5 as Wt,cw as L,cs as Gt,cx as zt,cy as Ht,cz as ye,cA as we,cB as Pe,cC as Se,b as Oe,a as qt,I as Yt}from"./ControlType-04435a15.js";import{N as Zt,r as Xt,k as Ee}from"./IrisGridShortcuts-bc968b91.js";import{u as Jt}from"./useMergeRef-c6c625c8.js";import{L as A,U as Qt,j as Vt,ak as er,al as tr,J as he}from"./index-c187df9b.js";function tt(t,e){d.useEffect(()=>{if(t!=null){var r=new window.ResizeObserver(e);return r.observe(t),()=>{t!=null&&r.unobserve(t)}}},[t,e])}function Yn(){var{selectedThemeKey:t,setSelectedThemeKey:e,themes:r}=Ot(),n=d.useCallback(i=>{e(i)},[e]);return c.jsx(Ve,{label:"Pick a color scheme",items:r,selectedKey:t,onSelectionChange:n,children:i=>c.jsx(vt,{children:i.name},i.themeKey)})}function Zn(t){var{className:e,style:r}=t;return c.jsx("div",{className:I("dh-logo",e),style:r})}var rr=["UNSAFE_className"],nr=["defaultSelectedKey","disabledKeys","selectedKey","ref"];function xe(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Me(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?xe(Object(r),!0).forEach(function(n){ir(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):xe(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function ir(t,e,r){return e=or(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function or(t){var e=ar(t,"string");return typeof e=="symbol"?e:String(e)}function ar(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function Ce(t,e){if(t==null)return{};var r=sr(t,e),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)n=o[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function sr(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,o;for(o=0;o<n.length;o++)i=n[o],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var ur=F.forwardRef(function(e,r){var{UNSAFE_className:n}=e,i=Ce(e,rr),o=Zt(i),{defaultSelectedKey:s,disabledKeys:a,selectedKey:u,ref:l}=o,b=Ce(o,nr),f=Jt(r,l);return c.jsx(Ve,Me(Me({},b),{},{ref:f,UNSAFE_className:I("dh-picker",n),defaultSelectedKey:s,disabledKeys:a,selectedKey:u}))});ur.displayName="Picker";var lr=["color","UNSAFE_style"];function De(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Y(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?De(Object(r),!0).forEach(function(n){cr(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):De(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function cr(t,e,r){return e=dr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function dr(t){var e=fr(t,"string");return typeof e=="symbol"?e:String(e)}function fr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function hr(t,e){if(t==null)return{};var r=vr(t,e),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)n=o[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function vr(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,o;for(o=0;o<n.length;o++)i=n[o],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var pr=d.forwardRef((t,e)=>{var{color:r,UNSAFE_style:n}=t,i=hr(t,lr),o=d.useMemo(()=>Y(Y({},n),{},{color:Xt(r)}),[r,n]);return c.jsx(pt,Y(Y({},i),{},{ref:e,UNSAFE_style:o}))});pr.displayName="Heading";function Te(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function mr(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Te(Object(r),!0).forEach(function(n){R(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Te(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function R(t,e,r){return e=gr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function gr(t){var e=br(t,"string");return typeof e=="symbol"?e:String(e)}function br(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var je=A.module("ContextMenu");class G extends d.PureComponent{static handleContextMenu(e){e.metaKey||(e.stopPropagation(),e.preventDefault())}constructor(e){super(e),R(this,"container",void 0),R(this,"oldFocus",void 0),R(this,"activeSubMenuRef",void 0),R(this,"subMenuTimer",void 0),R(this,"rAF",void 0),R(this,"initialPosition",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleCloseSubMenu=this.handleCloseSubMenu.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMenuItemClick=this.handleMenuItemClick.bind(this),this.handleMenuItemContextMenu=this.handleMenuItemContextMenu.bind(this),this.handleMenuItemMouseMove=this.handleMenuItemMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleWindowResize=this.handleWindowResize.bind(this),this.container=F.createRef(),this.oldFocus=document.activeElement,this.activeSubMenuRef=F.createRef(),this.subMenuTimer=0,this.rAF=0,this.initialPosition={top:e.top,left:e.left},this.state={menuItems:[],pendingItems:[],activeSubMenu:null,hasOverflow:!1,subMenuTop:null,subMenuLeft:null,subMenuParentWidth:0,subMenuParentHeight:0,keyboardIndex:-1,mouseIndex:-1}}componentDidMount(){this.initMenu(),this.verifyPosition(),window.addEventListener("resize",this.handleWindowResize),this.rAF=window.requestAnimationFrame(()=>{var e;(e=this.container.current)===null||e===void 0||e.focus();var{onMenuOpened:r}=this.props;r(this)})}componentDidUpdate(e,r){var{actions:n}=this.props,{activeSubMenu:i}=this.state;if(i!==r.activeSubMenu)if(i==null){var o;(o=this.container.current)===null||o===void 0||o.focus()}else this.setActiveSubMenuPosition();if(e.actions!==n&&(this.initMenu(),this.container.current==null||!this.container.current.contains(document.activeElement))){var s;(s=this.container.current)===null||s===void 0||s.focus()}this.verifyPosition()}componentWillUnmount(){this.cancelPromises(),window.removeEventListener("resize",this.handleWindowResize),cancelAnimationFrame(this.rAF)}getKeyboardIndex(){var{options:e}=this.props;if(e.separateKeyboardMouse!==void 0&&e.separateKeyboardMouse){var{keyboardIndex:r}=this.state;return r}return this.getMouseIndex()}setKeyboardIndex(e){var{options:r}=this.props;r.separateKeyboardMouse!==void 0&&r.separateKeyboardMouse?this.setState({keyboardIndex:e}):this.setMouseIndex(e)}getMouseIndex(){var{mouseIndex:e}=this.state;return e}setMouseIndex(e){this.setState({mouseIndex:e})}initMenu(){this.cancelPromises(),cancelAnimationFrame(this.rAF);var{options:e}=this.props,r=e.initialKeyboardIndex;r===void 0&&(r=-1);for(var{actions:n}=this.props,i=N.getMenuItems(n),o=[],s=i.length-1;s>=0;s-=1){var a=i[s];a instanceof Promise?this.initMenuPromise(a):o.push(a)}this.setState({mouseIndex:-1,keyboardIndex:r,activeSubMenu:null,menuItems:N.sortActions(o)})}initMenuPromise(e){var r=W.makeCancelable(e);this.setState(n=>({pendingItems:n.pendingItems.concat(r)})),r.then(n=>{this.setState(i=>{var o=i.pendingItems.indexOf(r);if(o>=0){var s=i.pendingItems.slice();return s.splice(o,1),{menuItems:N.sortActions(i.menuItems.concat(n)),pendingItems:s}}return null})},n=>{W.isCanceled(n)||(this.setState(i=>{var o=i.pendingItems.indexOf(r);if(o>=0){var s=i.pendingItems.slice();return s.splice(o,1),{pendingItems:s}}return null}),je.error(n))})}cancelPromises(){var{pendingItems:e}=this.state;e.map(r=>r.cancel())}setActiveSubMenuPosition(){if(this.activeSubMenuRef.current!==null){var e=this.activeSubMenuRef.current.getBoundingClientRect();this.setState({subMenuTop:e.top,subMenuLeft:e.right,subMenuParentHeight:e.height,subMenuParentWidth:e.width})}}verifyPosition(){var e,r,n,i,{options:o,updatePosition:s,subMenuParentWidth:a,subMenuParentHeight:u,top:l,left:b}=this.props;if(!(!this.container.current||o.doNotVerifyPosition!=null&&o.doNotVerifyPosition)){var{top:f,left:g}=this.initialPosition,{width:y,height:m}=(e=(r=this.container.current)===null||r===void 0?void 0:r.getBoundingClientRect())!==null&&e!==void 0?e:{width:0,height:0},x=((n=(i=this.container.current)===null||i===void 0?void 0:i.scrollHeight)!==null&&n!==void 0?n:0)>window.innerHeight;m===0||y===0||(f+m>window.innerHeight&&(f-m-u>0?f-=m-u:f=window.innerHeight-m),g+y>window.innerWidth&&(g=g-y-a),(b!==g||l!==f)&&(this.setState({hasOverflow:x}),s(f,g)))}}handleWindowResize(){this.container.current&&this.closeMenu(!0)}handleBlur(e){if(!this.container.current){je.warn("Container is null!");return}if(!this.container.current.contains(e.relatedTarget)){for(var r=e.relatedTarget,n=!1;r&&!n;)n=r.hasAttribute("data-dh-context-menu"),r=r.parentElement;n||this.closeMenu(!0)}}isEscapeKey(e){var{left:r}=this.props;return e==="Escape"||r<0&&e==="ArrowRight"||e==="ArrowLeft"}handleKeyDown(e){var{menuItems:r}=this.state,n=this.getKeyboardIndex(),i=n,o=!1;if(e.key==="Enter"||e.key===" "){n>=0&&n<r.length&&this.handleMenuItemClick(r[n],e);return}if(e.key==="ArrowRight"?n>=0&&n<=r.length?o=!0:i=0:this.isEscapeKey(e.key)?i=null:e.key==="ArrowUp"||e.shiftKey&&e.key==="Tab"?i=N.getNextMenuItem(i,-1,r):(e.key==="ArrowDown"||e.key==="Tab")&&(i=N.getNextMenuItem(i,1,r)),o){this.openSubMenu(n),e.preventDefault(),e.stopPropagation();return}n!==i&&(i!==null?this.setKeyboardIndex(i):(this.closeMenu(),this.oldFocus instanceof HTMLElement&&this.oldFocus.focus()),e.preventDefault(),e.stopPropagation())}openSubMenu(e){var{menuItems:r,activeSubMenu:n}=this.state,i=r[e].actions?e:null;n!==i&&this.setState({activeSubMenu:i,subMenuTop:null,subMenuLeft:null})}closeMenu(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,{closeMenu:r,onMenuClosed:n}=this.props;cancelAnimationFrame(this.rAF),this.rAF=window.requestAnimationFrame(()=>{r(e),n(this)})}closeSubMenu(){this.setState({activeSubMenu:null})}handleCloseSubMenu(e){e?this.closeMenu(!0):this.closeSubMenu()}handleMenuItemClick(e,r){r.preventDefault(),r.stopPropagation();var{menuItems:n}=this.state;e!=null&&(e.disabled===void 0||!e.disabled)&&(e.actions!=null?this.openSubMenu(n.indexOf(e)):e.action!=null&&(e.action(r.nativeEvent),this.closeMenu(!0)))}handleMenuItemContextMenu(e,r){r.metaKey||this.handleMenuItemClick(e,r)}handleMenuItemMouseMove(e){var{menuItems:r}=this.state,n=r.indexOf(e);this.setMouseIndex(n),n>=0&&n<r.length&&(e.disabled===void 0||!e.disabled)&&this.openSubMenu(n)}handleMouseLeave(){this.setMouseIndex(-1)}render(){for(var e=[],{top:r,left:n}=this.props,{activeSubMenu:i,hasOverflow:o,keyboardIndex:s,menuItems:a,mouseIndex:u,pendingItems:l,subMenuTop:b,subMenuLeft:f,subMenuParentWidth:g,subMenuParentHeight:y}=this.state,m=0;m<a.length;m+=1){var x=a[m];m>0&&x.group!==a[m-1].group&&e.push(c.jsx("hr",{},"".concat(m,".separator")));var p=c.jsx(Et,{ref:i===m?this.activeSubMenuRef:null,isKeyboardSelected:s===m,isMouseSelected:u===m,menuItem:x,closeMenu:this.handleCloseSubMenu,onMenuItemClick:this.handleMenuItemClick,onMenuItemMouseMove:this.handleMenuItemMouseMove,onMenuItemContextMenu:this.handleMenuItemContextMenu},m);e.push(p)}var S=null;l.length>0&&(S=c.jsx("div",{className:"loading",children:c.jsx(Qt,{className:"loading-spinner-vertical-align"})}));var{menuStyle:U,"data-testid":H}=this.props,M=i!==null&&b!==null&&f!==null;return c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:I({"has-overflow":o},"context-menu-container"),style:mr({top:r,left:n},U),ref:this.container,"data-dh-context-menu":!0,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,onMouseLeave:this.handleMouseLeave,onContextMenu:G.handleContextMenu,role:"menuitem",tabIndex:0,"data-testid":H,children:[e,S]}),M&&i!==null&&b!==null&&f!==null&&c.jsx(G,{actions:a[i].actions||[],closeMenu:this.handleCloseSubMenu,top:b,left:f,updatePosition:(O,j)=>{this.setState({subMenuTop:O,subMenuLeft:j})},subMenuParentWidth:g,subMenuParentHeight:y},"sub-".concat(i))]})}}R(G,"defaultProps",{subMenuParentWidth:0,subMenuParentHeight:0,closeMenu(){},onMenuOpened(){},onMenuClosed(){},options:{},menuStyle:{},"data-testid":void 0});const yr=G;function _e(t,e,r){return e=wr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function wr(t){var e=Pr(t,"string");return typeof e=="symbol"?e:String(e)}function Pr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class Sr extends d.Component{constructor(e){super(e),_e(this,"container",void 0),_e(this,"openMenu",void 0),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.container=F.createRef(),this.openMenu=F.createRef(),this.state={actions:null,left:0,top:0}}componentDidMount(){var e;(e=this.container.current)!==null&&e!==void 0&&e.parentElement&&this.container.current.parentElement.addEventListener("contextmenu",this.handleContextMenu)}componentWillUnmount(){var e;(e=this.container.current)!==null&&e!==void 0&&e.parentElement&&this.container.current.parentElement.removeEventListener("contextmenu",this.handleContextMenu)}handleContextMenu(e){if(this.container.current){var r=this.container.current.getBoundingClientRect(),n=e.clientY-r.top,i=e.clientX-r.left,{actions:o}=this.state;if(o!=null&&e.target===this.container.current){e.preventDefault(),this.setState({actions:null},()=>{var a=document.elementFromPoint(i,n),u=new MouseEvent("contextmenu",{clientX:e.clientX,clientY:e.clientY,bubbles:!0,cancelable:!0});a?.dispatchEvent(u)});return}if(N.isContextActionEvent(e)&&!(e.metaKey||e.ctrlKey)){var s=N.getMenuItems(e.contextActions);s.length!==0&&(e.preventDefault(),this.setState({actions:s,top:n,left:i}))}}}handleMenuClose(e){e===this.openMenu.current&&this.setState({actions:null})}render(){var e=null,{"data-testid":r}=this.props,{actions:n,top:i,left:o}=this.state;return n&&(e=c.jsx(yr,{ref:this.openMenu,actions:n,onMenuClosed:this.handleMenuClose,top:i,left:o,updatePosition:(s,a)=>{this.setState({top:s,left:a})},"data-testid":r})),c.jsx("div",{className:I("context-menu-root",{active:n}),ref:this.container,children:e})}}const Xn=Sr;function rt(t,e,r){return e=Or(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Or(t){var e=Er(t,"string");return typeof e=="symbol"?e:String(e)}function Er(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class T extends d.Component{static handleEnter(e){var r=e;r.style.height="0"}static handleEntering(e){var r=e;r.style.height="".concat(T.getHeight(r),"px")}static handleExiting(e){var r=e;r.style.height="0"}static handleExit(e){var r=e;r.style.height="".concat(T.getHeight(r),"px")}static getHeight(e){var r=e.scrollWidth-e.clientWidth;return e.scrollHeight-r}constructor(e){super(e),this.handleEntered=this.handleEntered.bind(this)}handleEntered(e){var r=e;r.style.height="";var{autoFocusOnShow:n}=this.props;if(n!==void 0&&n){var i=r.querySelector("input, select, textarea");i?.focus()}}render(){var{children:e,className:r,in:n,"data-testid":i}=this.props;return c.jsx(mt,{in:n,classNames:{enterActive:"collapsing",enterDone:"collapse show",exitActive:"collapsing",exitDone:"collapse"},onEnter:T.handleEnter,onEntering:T.handleEntering,onEntered:this.handleEntered,onExit:T.handleExit,onExiting:T.handleExiting,timeout:350,children:o=>c.jsx("div",{className:I({collapse:o==="exited"},r),"data-testid":i,children:e})})}}rt(T,"propTypes",{className:K.string,in:K.bool.isRequired,children:K.node.isRequired,autoFocusOnShow:K.bool,"data-testid":K.string});rt(T,"defaultProps",{className:"",autoFocusOnShow:!1,"data-testid":void 0});const Jn=T;function Re(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function te(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Re(Object(r),!0).forEach(function(n){xr(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Re(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function xr(t,e,r){return e=Mr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Mr(t){var e=Cr(t,"string");return typeof e=="symbol"?e:String(e)}function Cr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var nt=d.memo(t=>{var{tab:e,onClose:r,onSelect:n,isActive:i,activeRef:o,index:s,isDraggable:a,contextActions:u}=t,{key:l,isClosable:b=r!=null,title:f,icon:g}=e,y;return g!=null&&(y=F.isValidElement(g)?g:c.jsx(ie,{icon:g})),c.jsx(gt,{draggableId:l,index:s,isDragDisabled:!a,children:(m,x)=>c.jsxs("div",{className:"context-menu-wrapper",ref:i?o:null,children:[c.jsxs("div",te(te(te({ref:m.innerRef},m.draggableProps),m.dragHandleProps),{},{className:I("btn btn-link btn-nav-tab",{active:i},{dragging:x.isDragging}),"data-testid":"btn-nav-tab-".concat(f),role:"tab",tabIndex:0,onAuxClick:p=>{b&&p.button===1&&p.buttons===0&&r?.(l)},onClick:p=>{if(b&&p.button===1&&p.buttons===0){r?.(l);return}p.button===0&&p.buttons===0&&(p.target.focus(),n(l))},onKeyPress:p=>{p.key==="Enter"&&n(l)},children:[y,f,b&&c.jsx(oe,{kind:"ghost",className:"btn-nav-tab-close",onClick:p=>{r?.(l),p.stopPropagation(),p.preventDefault()},icon:Vt,tooltip:"Close"})]})),c.jsx(xt,{actions:u})]})},l)});nt.displayName="NavTab";const Dr=nt;function Ie(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Le(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ie(Object(r),!0).forEach(function(n){Tr(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ie(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Tr(t,e,r){return e=jr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function jr(t){var e=_r(t,"string");return typeof e=="symbol"?e:String(e)}function _r(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Rr=500,Ir=.01,Lr=5e-4;function Ne(t){return t.scrollLeft===0}function Ae(t){return t.scrollLeft+t.clientWidth===t.scrollWidth||t.scrollWidth===0}function Nr(t,e,r){var{isClosable:n=!1,key:i}=t,o=[];if(n&&r!=null){o.push({title:"Close",order:10,group:20,action:()=>{r(i)}});for(var s=!0,a=e.length-1;a>0&&e[a].key!==t.key;a-=1)if(e[a].isClosable===!0){s=!1;break}o.push({title:"Close to the Right",order:20,group:20,action:()=>{for(var u=e.length-1;u>0&&e[u].key!==i;u-=1)e[u].isClosable===!0&&r(e[u].key)},disabled:s}),o.push({title:"Close All",order:30,group:20,action:()=>{e.forEach(u=>{u.isClosable===!0&&r(u.key)})}})}return o}function Qn(t){var{activeKey:e,tabs:r,onSelect:n,onReorder:i,onClose:o,makeContextActions:s}=t,a=d.useRef(),[u,l]=d.useState(!0),[b,f]=d.useState(!0),[g,y]=d.useState(!0),m=d.useCallback(()=>{a.current!=null&&(a.current.clientWidth<a.current.scrollWidth&&r.length>0?l(!0):l(!1),f(Ne(a.current)),y(Ae(a.current)))},[r]);tt(a.current,m);var x=d.useCallback(h=>{Ee.stopDragging(),h.destination&&i?.(h.source.index,h.destination.index)},[i]),p=d.useCallback(()=>{if(a.current!=null){var h=Ne(a.current);h!==b&&f(h);var v=Ae(a.current);v!==g&&y(v)}},[b,g]),S=d.useRef({cancelClick:!1}),U=d.useCallback(()=>{if(!(a.current==null||S.current.cancelClick))for(var{children:h}=a.current,v=h.length-1;v>=0;v-=1){var w=h[v];if(w.offsetLeft<a.current.scrollLeft-5){w.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"});return}}},[]),H=d.useCallback(()=>{if(!(a.current==null||S.current.cancelClick))for(var{children:h}=a.current,v=0;v<h.length;v+=1){var w=h[v];if(w.offsetLeft+5>a.current.scrollLeft+a.current.offsetWidth){w.scrollIntoView({behavior:"smooth",block:"nearest",inline:"end"});return}}},[]),M=d.useCallback(function(h,v){var w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,P=arguments.length>3?arguments[3]:void 0,C=a.current;C!=null&&(S.current.cancelClick=!0,h==="left"?C.scrollLeft=v-w:h==="right"&&(C.scrollLeft=v+w),S.current.rAF=requestAnimationFrame(q=>{var me=P??q,ge=q-me,ee=Ir*ge+.5*Lr*ge**2;ee=Math.min(ee,C.scrollWidth),M(h,v,ee,me)}))},[]),O=d.useCallback(()=>{var{holdTimer:h,rAF:v}=S.current;h!=null&&(clearTimeout(h),S.current.holdTimer=void 0),v!=null&&(cancelAnimationFrame(v),S.current.rAF=void 0),window.removeEventListener("mouseup",O)},[]);d.useEffect(()=>()=>window.removeEventListener("mouseup",O),[O]);var j=d.useCallback(h=>{a.current!=null&&(S.current.holdTimer=window.setTimeout(M,Rr,h,a.current.scrollLeft)),S.current.cancelClick=!1,window.addEventListener("mouseup",O)},[O,M]),lt=d.useCallback(()=>{j("left")},[j]),ct=d.useCallback(()=>{j("right")},[j]);d.useEffect(function(){var v,w=P=>{P.stopPropagation(),P.preventDefault();var C=P.currentTarget,q=Math.abs(P.deltaY)>Math.abs(P.deltaX)?P.deltaY:P.deltaX;C.scrollLeft+=wt(q,-30,30)};return(v=a.current)===null||v===void 0||v.addEventListener("wheel",w),()=>{var P;(P=a.current)===null||P===void 0||P.removeEventListener("wheel",w)}},[]);var dt=d.useMemo(()=>{var h=new Map;return r.forEach(v=>{var{key:w}=v,P=[()=>Nr(v,r,o),()=>{var C;return(C=s?.(v))!==null&&C!==void 0?C:[]}];h.set(w,P)}),h},[s,r,o]),V=d.useRef(null),ft=r.find(h=>h.key===e),ht=r.map((h,v)=>{var{key:w}=h,P=h===ft;return c.jsx(Dr,{tab:h,index:v,isActive:P,activeRef:V,onSelect:n,onClose:o,isDraggable:i!=null,contextActions:dt.get(w)},w)});return d.useEffect(function(){V.current!=null&&V.current.scrollIntoView({block:"nearest",inline:"nearest"})},[e]),c.jsxs("nav",{className:"nav-container",children:[u&&c.jsx(oe,{kind:"ghost",icon:c.jsx(ie,{icon:er,transform:"grow-4"}),className:"tab-controls-btn tab-controls-btn-left",tooltip:"Scroll left",onClick:U,onMouseDown:lt,disabled:b}),c.jsx(bt,{onDragStart:Ee.startDragging,onDragEnd:x,children:c.jsx(yt,{droppableId:"droppable-tab-navigation",direction:"horizontal",children:(h,v)=>c.jsxs("div",Le(Le({ref:w=>{w!=null&&(a.current=w,h.innerRef(w))}},h.droppableProps),{},{className:I("nav nav-tabs",{dragging:v.draggingFromThisWith}),role:"tablist",onScroll:p,children:[ht,h.placeholder]}))})}),u&&c.jsx(oe,{kind:"ghost",icon:c.jsx(ie,{icon:tr,transform:"grow-4"}),className:"tab-controls-btn tab-controls-btn-right",tooltip:"Scroll right",onClick:H,onMouseDown:ct,disabled:g})]})}function Ar(t,e){var r=Mt(),n=d.useMemo(()=>new r.CoreClient(t,e),[r,t,e]);return d.useEffect(()=>()=>{n.disconnect()},[n]),n}var it=d.createContext(null);function Vn(t){var{serverUrl:e,options:r,children:n}=t,i=Ar(e,r);return c.jsx(it.Provider,{value:i,children:n})}function $r(){return J(it,"No Client available in useClient. Was code wrapped in ClientBootstrap or ClientContext.Provider?")}function $e(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Fr(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){$e(o,n,i,s,a,"next",u)}function a(u){$e(o,n,i,s,a,"throw",u)}s(void 0)})}}var re=A.module("MessageUtils"),ei="io.deephaven.message.LoginOptions.request",Ur="io.deephaven.message.SessionDetails.request",ti="io.deephaven.broadcast",Kr="io.deephaven.broadcast.Login",kr="io.deephaven.broadcast.Logout";function ot(t){var e=t;return e!=null&&typeof e.id=="string"&&typeof e.message=="string"}function ri(t){return ot(t)&&t.message===Kr}function ni(t){return ot(t)&&t.message===kr}function Br(t){var e=t;return e!=null&&typeof e.id=="string"}function Wr(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fe(),r=arguments.length>2?arguments[2]:void 0;return{message:t,id:e,payload:r}}function ii(t,e){return{id:t,payload:e}}function Gr(){return window.opener!=null?window.opener:window.parent!=null&&window.parent!==window?window.parent:null}function zr(t){return ae.apply(this,arguments)}function ae(){return ae=Fr(function*(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3e4,r=Gr();if(r==null)throw new Error("window parent is null, unable to send request.");return new Promise((n,i)=>{var o,s=fe(),a=u=>{var{data:l}=u;if(!Br(l)){re.debug("Ignoring non-deephaven response",l);return}if(re.debug("Received message",l),l?.id!==s){re.debug("Ignore message, id doesn't match",l);return}window.clearTimeout(o),window.removeEventListener("message",a),n(l.payload)};window.addEventListener("message",a),o=window.setTimeout(()=>{window.removeEventListener("message",a),i(new Ct("Request timed out"))},e),r.postMessage(Wr(t,s),"*")})}),ae.apply(this,arguments)}function Hr(t,e,r){return e=qr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function qr(t){var e=Yr(t,"string");return typeof e=="symbol"?e:String(e)}function Yr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class Zr extends Error{constructor(){super(...arguments),Hr(this,"isNoConsolesError",!0)}}function Xr(t){return t.isNoConsolesError}function Fe(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Q(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Fe(o,n,i,s,a,"next",u)}function a(u){Fe(o,n,i,s,a,"throw",u)}s(void 0)})}}var B=A.module("SessionUtils");function Jr(t,e,r){return se.apply(this,arguments)}function se(){return se=Q(function*(t,e,r){B.info("Getting console types...");var n=yield e.getConsoleTypes();if(n.length===0)throw new Zr("No console types available");B.info("Available types:",n);var i=n[0];B.info("Starting session with type",i);var o=yield e.startSession(i),s={type:i,id:fe()};return B.info("Console session established",s),{session:o,config:s,connection:e,details:r,dh:t}}),se.apply(this,arguments)}function oi(t,e,r){return B.info("createCoreClient",e),new t.CoreClient(e,r)}function Qr(t){return t!=null&&typeof t=="object"}function Vr(){return ue.apply(this,arguments)}function ue(){return ue=Q(function*(){var t=yield zr(Ur);if(!Qr(t))throw new Error("Unexpected session details response: ".concat(t));return t}),ue.apply(this,arguments)}function ai(){return le.apply(this,arguments)}function le(){return le=Q(function*(){var t=new URLSearchParams(window.location.search);switch(t.get("authProvider")){case"parent":return Vr()}return{}}),le.apply(this,arguments)}function si(t,e,r){return ce.apply(this,arguments)}function ce(){return ce=Q(function*(t,e,r){var n;try{n=yield Jr(t,e,r)}catch(i){if(!Xr(i))throw i}return n}),ce.apply(this,arguments)}function Ue(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function en(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ue(Object(r),!0).forEach(function(n){tn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ue(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function tn(t,e,r){return e=rn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function rn(t){var e=nn(t,"string");return typeof e=="symbol"?e:String(e)}function nn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var on=100,ne=()=>{},an=Object.freeze({});function sn(t){var{id:e="default",children:r,emptyDashboard:n,layoutConfig:i,layoutSettings:o=an,onLayoutConfigChange:s=ne,onGoldenLayoutChange:a=ne,onLayoutInitialized:u=ne,fallbackComponent:l=Lt,hydrate:b,dehydrate:f,panelWrapper:g}=t,y=d.useRef(null),[m,x]=d.useState(!1),[p,S]=d.useState();d.useEffect(function(){if(!y.current){S(void 0);return}var M=en({},Dt.makeDefaultLayout());M.settings===void 0&&(M.settings={}),Object.assign(M.settings,o),M.content=[];var O=new Tt(M,y.current),j=()=>{O.off("initialised",j),x(!0)};return O.on("initialised",j),l!=null&&O.setFallbackComponent(l),O.init(),S(O),a(O),()=>{O.destroy()}},[o,l,a,x,S]);var U=d.useMemo(()=>et(()=>{p!=null&&p.isInitialised&&p?.updateSize()},on),[p]);return tt(y.current,U),c.jsxs("div",{className:"dashboard-container w-100 h-100",children:[c.jsx("div",{className:"w-100 h-100",ref:y}),m&&p&&c.jsx(jt.Provider,{value:p,children:c.jsx(_t.Provider,{value:e,children:c.jsx(Rt,{children:c.jsx(It,{emptyDashboard:n,id:e,layout:p,layoutConfig:i,onLayoutChange:s,onLayoutInitialized:u,hydrate:b,dehydrate:f,panelWrapper:g,children:r})})})})]})}var ve="CREATE_DASHBOARD";function un(t,e){try{t.off(ve,e)}catch{}}function ui(t,e){return t.on(ve,e),()=>un(t,e)}function li(t,e){t.emit(ve,e)}var ln=["id","isActive","plugins"];function Ke(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function ke(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ke(Object(r),!0).forEach(function(n){cn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ke(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function cn(t,e,r){return e=dn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function dn(t){var e=fn(t,"string");return typeof e=="symbol"?e:String(e)}function fn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function hn(t,e){if(t==null)return{};var r=vn(t,e),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)n=o[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function vn(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,o;for(o=0;o<n.length;o++)i=n[o],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}function pn(t){var{id:e,isActive:r,plugins:n}=t,i=hn(t,ln),[o,s]=d.useState(r),a=Pt(),u=d.useCallback(l=>{a(e===Nt?At({layoutConfig:l}):$t(e,{layoutConfig:l}))},[e,a]);return!o&&r&&s(!0),o?c.jsx(sn,ke(ke({id:e,onLayoutConfigChange:u},i),{},{children:n})):c.jsx(he,{})}function mn(t){var e=[...t.entries()].filter(r=>{var[,n]=r;return Ft(n)||be(n)});return e.map(r=>{var[n,i]=r;if(be(i)){var{DashboardPlugin:o}=i;return c.jsx(o,{},n)}var{component:s}=i;return c.jsx(s,{},n)})}function ci(){var t=Ut(),e=d.useMemo(()=>mn(t),[t]);return e}var di=d.createContext({}),fi=d.createContext({}),gn=d.createContext(null),bn=d.createContext(null);function Be(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function yn(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Be(o,n,i,s,a,"next",u)}function a(u){Be(o,n,i,s,a,"throw",u)}s(void 0)})}}var at=d.createContext(null);function hi(t){var{children:e}=t,r=$r(),[n,i]=d.useState(),[o,s]=d.useState();d.useEffect(function(){var l=!1;function b(){return f.apply(this,arguments)}function f(){return f=yn(function*(){try{var g=yield r.getServerConfigValues();l||i(new Map(g))}catch(y){l||s(y)}}),f.apply(this,arguments)}return b(),()=>{l=!0}},[r]);var a=n==null;return a||o!=null?c.jsx(he,{isLoading:a&&o==null,errorMessage:Kt(o)}):c.jsx(at.Provider,{value:n,children:e})}function vi(){return J(at,"No server config available in useServerConfig. Was code wrapped in ServerConfigBootstrap or ServerConfigContext.Provider?")}function We(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function wn(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){We(o,n,i,s,a,"next",u)}function a(u){We(o,n,i,s,a,"throw",u)}s(void 0)})}}function Ge(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function ze(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ge(Object(r),!0).forEach(function(n){Pn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ge(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Pn(t,e,r){return e=Sn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Sn(t){var e=On(t,"string");return typeof e=="symbol"?e:String(e)}function On(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function pi(t){var{dashboards:e,activeDashboard:r,onLayoutInitialized:n,onGoldenLayoutChange:i,plugins:o,emptyDashboard:s=c.jsx(he,{})}=t,a=kt(),u=d.useCallback((l,b)=>{var{metadata:f}=l;try{if(f!=null){var g=Bt(f);return ze(ze({fetch:function(){var y=wn(function*(){return a(g)});function m(){return y.apply(this,arguments)}return m}()},l),{},{localDashboardId:b})}}catch{}return Wt.hydrate(l,b)},[a]);return c.jsx("div",{className:"tab-content",children:e.map(l=>c.jsx("div",{className:I("tab-pane",{active:l.id===r}),children:c.jsx(pn,{id:l.id,isActive:l.id===r,emptyDashboard:s,layoutConfig:l.layoutConfig,layoutSettings:l.layoutSettings,onLayoutInitialized:n,onGoldenLayoutChange:i,hydrate:u,plugins:o},l.key)},l.id))})}function mi(){return J(bn,"No IdeConnection available in useConnection. Was code wrapped in ConnectionContext.Provider?")}function gi(){return J(gn,"No user available in useUser. Was code wrapped in UserBootstrap or UserContext.Provider?")}function He(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function En(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){He(o,n,i,s,a,"next",u)}function a(u){He(o,n,i,s,a,"throw",u)}s(void 0)})}}function D(t,e,r){return e=xn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function xn(t){var e=Mn(t,"string");return typeof e=="symbol"?e:String(e)}function Mn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var k=A.module("GrpcFileStorageTable");class z{constructor(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:r;D(this,"storageService",void 0),D(this,"baseRoot",void 0),D(this,"root",void 0),D(this,"currentSize",0),D(this,"currentViewport",void 0),D(this,"listeners",[]),D(this,"viewportUpdatePromise",void 0),D(this,"currentViewportData",void 0),D(this,"childTables",new Map),this.storageService=e,this.baseRoot=r,this.root=n,n===r&&(this.doRefresh=St(this.doRefresh.bind(this),z.REFRESH_DEBOUNCE))}removeBaseRoot(e){return L.removeRoot(this.baseRoot,e)}getViewportData(){var e;return this.viewportUpdatePromise||this.refreshInternal(),(e=this.viewportUpdatePromise)!==null&&e!==void 0?e:Promise.resolve({items:[],offset:0})}getSnapshot(e){throw new Error("Method not implemented.")}get size(){return this.currentSize}setExpanded(e,r){var n=e.split("/"),i=n.shift();if((i===void 0||i==="")&&(i=n.shift()),i===void 0||i==="")throw new Error("Invalid path: ".concat(e));var o=n.join("/");if(r){if(!this.childTables.has(i)){var s=new z(this.storageService,this.baseRoot,"".concat(this.root,"/").concat(i));this.childTables.set(i,s)}if(o){var a=this.childTables.get(i);a?.setExpanded(o,r)}}else if(this.childTables.has(i))if(o){var u=this.childTables.get(i);u?.setExpanded(o,r)}else this.childTables.delete(i);this.currentViewport&&this.refreshInternal()}collapseAll(){this.childTables.clear(),this.currentViewport&&this.refreshInternal()}setSearch(e){throw new Error("Method not implemented.")}setViewport(e){this.currentViewport=e,this.refreshInternal()}setFilters(){throw new Error("Method not implemented.")}setSorts(){throw new Error("Method not implemented.")}setReversed(){throw new Error("Method not implemented.")}close(){this.listeners=[]}onUpdate(e){return this.listeners=[...this.listeners,e],()=>{this.listeners=this.listeners.filter(r=>r!==e)}}doRefresh(e){k.debug2("doRefresh",this.root),e(this.fetchData())}refresh(){var e;k.debug2("refresh",this.root),(e=this.viewportUpdatePromise)===null||e===void 0||e.cancel();var r=new Promise(i=>{this.doRefresh(i)}),n=W.makeCancelable(r.then(i=>{if(this.viewportUpdatePromise!==n)throw new Gt;return this.currentViewportData=i,this.sendUpdate(),i}));n.catch(i=>{W.isCanceled(i)||k.error("Error updating viewport",i)}),this.viewportUpdatePromise=n}refreshInternal(){try{this.refresh()}catch(e){W.isCanceled(e)||k.error("Unable to refresh data",e)}}fetchData(){var e=this;return En(function*(){var{currentViewport:r}=e;if(!r)throw new Error("No viewport set");for(var n=yield e.storageService.listItems(e.root),i=n.map(f=>({type:f.type,filename:e.removeBaseRoot(f.filename),basename:f.basename,id:e.removeBaseRoot(f.filename),isExpanded:f.type==="directory"?e.childTables.has(f.basename):void 0})).sort((f,g)=>f.type!==g.type?f.type==="directory"?-1:1:f.basename.localeCompare(g.basename)),o=0;o<i.length;o+=1){var s=i[o],{basename:a,filename:u}=s;if(u===e.removeBaseRoot("".concat(e.root,"/").concat(a))&&s.type==="directory"){var l=e.childTables.get(a);if(l!=null){l.setViewport({top:0,bottom:r.bottom-o});var b=yield l.getViewportData();i.splice(o+1,0,...b.items)}}}return e.currentSize=i.length,k.debug2(e.root,"items",i,r),i=i.slice(r.top,r.bottom),{items:i,offset:r.top}})()}sendUpdate(){for(var e,{listeners:r}=this,n=(e=this.currentViewportData)!==null&&e!==void 0?e:{items:[],offset:0},i=0;i<r.length;i+=1)r[i](n)}}D(z,"REFRESH_DEBOUNCE",50);function qe(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function _(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){qe(o,n,i,s,a,"next",u)}function a(u){qe(o,n,i,s,a,"throw",u)}s(void 0)})}}function $(t,e,r){return e=Cn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Cn(t){var e=Dn(t,"string");return typeof e=="symbol"?e:String(e)}function Dn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Tn=A.module("GrpcFileStorage");class pe{constructor(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"";$(this,"dh",void 0),$(this,"storageService",void 0),$(this,"tables",[]),$(this,"root",void 0),$(this,"refreshTables",et(()=>{this.tables.forEach(i=>i.refresh())},pe.REFRESH_THROTTLE)),this.dh=e,this.storageService=r,this.root=n}removeRoot(e){return L.removeRoot(this.root,e)}addRoot(e){return L.addRoot(this.root,e)}createDirectory(e){var r=this;return _(function*(){return yield r.storageService.createDirectory(r.addRoot(e)),r.refreshTables(),{type:"directory",id:e,filename:e,basename:L.getBaseName(e)}})()}getTable(){var e=this;return _(function*(){var r=new z(e.storageService,e.root);return e.tables.push(r),r})()}saveFile(e){var r=this;return _(function*(){var n=r.dh.storage.FileContents.text(e.content);return yield r.storageService.saveFile(r.addRoot(e.filename),n,!0),r.refreshTables(),e})()}loadFile(e){var r=this;return _(function*(){var n=yield r.storageService.loadFile(r.addRoot(e)),i=yield n.text();return{filename:e,basename:L.getBaseName(e),content:i}})()}copyFile(e,r){var n=this;return _(function*(){var i=yield n.storageService.loadFile(n.addRoot(e));yield n.storageService.saveFile(n.addRoot(r),i,!1),n.refreshTables()})()}deleteFile(e){var r=this;return _(function*(){yield r.storageService.deleteItem(r.addRoot(e)),r.refreshTables()})()}moveFile(e,r){var n=this;return _(function*(){yield n.storageService.moveItem(n.addRoot(e),n.addRoot(r)),n.refreshTables()})()}info(e){var r=this;return _(function*(){var n=yield r.storageService.listItems(r.addRoot(L.getPath(e)),L.getBaseName(e));if(n.length===0)throw new zt;if(n.length>1)throw Tn.error("More than one matching file found, should never happen.",n),new Error("More than one matching file found");var i=n[0];if(!Ht(i.type))throw new Error("Unexpected file type: ".concat(i.type));return{filename:r.removeRoot(i.filename),basename:i.basename,id:r.removeRoot(i.filename),type:i.type}})()}}$(pe,"REFRESH_THROTTLE",150);function Ye(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Ze(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Ye(o,n,i,s,a,"next",u)}function a(u){Ye(o,n,i,s,a,"throw",u)}s(void 0)})}}function Xe(t,e,r){return e=jn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function jn(t){var e=_n(t,"string");return typeof e=="symbol"?e:String(e)}function _n(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class bi{constructor(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";Xe(this,"storageService",void 0),Xe(this,"root",void 0),this.storageService=e,this.root=r}getLayouts(){var e=this;return Ze(function*(){var r=yield e.storageService.listItems(e.root,"*.json");return r.map(n=>n.basename)})()}getLayout(e){var r=this;return Ze(function*(){var n=yield r.storageService.loadFile("".concat(r.root,"/").concat(e)),i=yield n.text();return JSON.parse(i)})()}}function Rn(t){return t.version===2}function In(t){return Array.isArray(t)}function Je(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Ln(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Je(o,n,i,s,a,"next",u)}function a(u){Je(o,n,i,s,a,"throw",u)}s(void 0)})}}var Z=A.module("UserLayoutUtils"),Nn={layoutConfig:[{type:"column",content:[{type:"row",height:40,content:[{type:"stack",content:[{type:"react-component",component:ye.COMPONENT,title:ye.TITLE,isClosable:!1},{type:"react-component",component:we.COMPONENT,title:we.TITLE,isClosable:!1}]},{type:"stack",width:25,content:[{type:"react-component",component:Pe.COMPONENT,title:Pe.TITLE,isClosable:!1},{type:"react-component",component:Se.COMPONENT,title:Se.TITLE,isClosable:!1}]}]},{type:"row",content:[{type:"stack",title:"Notebooks",content:[]}]}]}],links:[],filterSets:[],version:2},An={layoutConfig:[],links:[],filterSets:[],version:2};function st(t){if(Rn(t))return t;if(In(t)){var e=t;return{layoutConfig:e,links:[],filterSets:[],version:2}}throw new Error("Unexpected layout import format: ".concat(t))}function $n(t){return de.apply(this,arguments)}function de(){return de=Ln(function*(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;try{var r=yield t.getLayouts();if(r.length>0)try{var n=yield t.getLayout(r[0]);return st(n)}catch(i){Z.error("Unable to load layout",r[0],":",i),Z.warn("No valid layouts found, falling back to default layout")}}catch(i){Z.error("Unable to fetch layout list",i),Z.warn("Falling back to default layout")}return e?Nn:An}),de.apply(this,arguments)}function Fn(t){var{filterSets:e,layoutConfig:r,links:n,pluginDataMap:i}=t,o={filterSets:e,layoutConfig:r,links:n,pluginDataMap:i,version:2};return o}const Un={exportLayout:Fn,getDefaultLayout:$n,normalizeLayout:st};function Qe(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function X(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Qe(o,n,i,s,a,"next",u)}function a(u){Qe(o,n,i,s,a,"throw",u)}s(void 0)})}}function ut(t,e,r){return e=Kn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Kn(t){var e=kn(t,"string");return typeof e=="symbol"?e:String(e)}function kn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Bn=A.module("LocalWorkspaceStorage");class E{static getBooleanServerConfig(e,r){var n,i;if((e==null||(n=e.get(r))===null||n===void 0?void 0:n.toLowerCase())==="true")return!0;if((e==null||(i=e.get(r))===null||i===void 0?void 0:i.toLowerCase())==="false")return!1}static makeDefaultWorkspaceSettings(e){for(var r={defaultDateTimeFormat:Oe.DEFAULT_DATETIME_FORMAT_STRING,formatter:[],timeZone:Oe.DEFAULT_TIME_ZONE_ID,showTimeZone:!1,showTSeparator:!0,disableMoveConfirmation:!1,defaultDecimalFormatOptions:{defaultFormatString:qt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:Yt.DEFAULT_FORMAT_STRING},truncateNumbersWithPound:!1,showEmptyStrings:!0,showNullStrings:!0,defaultNotebookSettings:{isMinimapEnabled:!1},webgl:!0,webglEditable:!0,gridDensity:"regular"},n={defaultDateTimeFormat:e?.get("dateTimeFormat"),formatter:[],timeZone:e?.get("timeZone"),showTimeZone:E.getBooleanServerConfig(e,"showTimeZone"),showTSeparator:E.getBooleanServerConfig(e,"showTSeparator"),disableMoveConfirmation:E.getBooleanServerConfig(e,"disableMoveConfirmation"),defaultDecimalFormatOptions:e?.get("decimalFormat")!==void 0?{defaultFormatString:e?.get("decimalFormat")}:void 0,defaultIntegerFormatOptions:e?.get("integerFormat")!==void 0?{defaultFormatString:e?.get("integerFormat")}:void 0,truncateNumbersWithPound:E.getBooleanServerConfig(e,"truncateNumbersWithPound"),showEmptyStrings:E.getBooleanServerConfig(e,"showEmptyStrings"),showNullStrings:E.getBooleanServerConfig(e,"showNullStrings"),defaultNotebookSettings:e?.get("isMinimapEnabled")!==void 0?{isMinimapEnabled:E.getBooleanServerConfig(e,"isMinimapEnabled")}:void 0,webgl:E.getBooleanServerConfig(e,"web.webgl"),webglEditable:E.getBooleanServerConfig(e,"web.webgl.editable")},i=Object.keys(n),o=0;o<i.length;o+=1){var s=i[o];n[s]!==void 0&&(r[s]=n[s])}return r}static makeWorkspaceData(e,r){return X(function*(){var{filterSets:n,links:i,layoutConfig:o,pluginDataMap:s={}}=yield Un.getDefaultLayout(e,r?.isConsoleAvailable);return{settings:{},layoutConfig:o,closed:[{}],links:i,filterSets:n,pluginDataMap:s}})()}static makeDefaultWorkspace(e,r){return X(function*(){return{data:yield E.makeWorkspaceData(e,r)}})()}constructor(e){ut(this,"layoutStorage",void 0),this.layoutStorage=e}load(e){var r=this;return X(function*(){try{var n,i=JSON.parse((n=localStorage.getItem(E.STORAGE_KEY))!==null&&n!==void 0?n:"");return i}catch{return Bn.info("Unable to load workspace data, initializing to default data"),E.makeDefaultWorkspace(r.layoutStorage,e)}})()}save(e){return X(function*(){return localStorage.setItem(E.STORAGE_KEY,JSON.stringify(e)),e})()}}ut(E,"STORAGE_KEY","deephaven.WorkspaceStorage");export{In as $,pi as A,ti as B,Jn as C,Xr as D,Br as E,ii as F,bi as G,pr as H,zr as I,sn as J,ve as K,Zn as L,pn as M,Qn as N,li as O,ur as P,ci as Q,fi as R,Ur as S,Yn as T,Un as U,gn as V,di as W,bn as X,hi as Y,z as Z,Rn as _,kr as a,Nn as a0,An as a1,st as a2,$n as a3,Fn as a4,Xn as b,mi as c,vi as d,gi as e,ai as f,mn as g,si as h,pe as i,E as j,tt as k,ui as l,Wr as m,Vn as n,it as o,Kr as p,ei as q,Zr as r,un as s,oi as t,$r as u,Jr as v,Gr as w,ri as x,ni as y,ot as z};
2
- //# sourceMappingURL=LocalWorkspaceStorage-a15c71ba.js.map
1
+ import{r as d,J as c,bu as Ve,a9 as vt,M as I,V as F,ay as pt,L as mt,a3 as K,bv as gt,N as ie,bw as bt,bx as yt,av as wt,I as fe,by as et,a5 as Pt,a1 as St}from"./vendor-3e5e4180.js";import{E as Ot,t as N,P as W,aI as Et,aH as oe,ai as xt,u as Mt,az as J,aY as Ct,bM as Dt,ct as Tt,bU as jt,bR as _t,cu as Rt,bS as It,cv as Lt,a8 as Nt,Y as At,X as $t,ci as Ft,ck as be,ak as Ut,cr as Kt,aX as kt,aW as Bt,a5 as Wt,cw as L,cs as Gt,cx as zt,cy as Ht,cz as ye,cA as we,cB as Pe,cC as Se,b as Oe,a as qt,I as Yt}from"./ControlType-7a644160.js";import{N as Zt,r as Xt,k as Ee}from"./IrisGridShortcuts-c4b59c54.js";import{u as Jt}from"./useMergeRef-c6c625c8.js";import{L as A,U as Qt,j as Vt,ak as er,al as tr,J as he}from"./index-dd7f33be.js";function tt(t,e){d.useEffect(()=>{if(t!=null){var r=new window.ResizeObserver(e);return r.observe(t),()=>{t!=null&&r.unobserve(t)}}},[t,e])}function Yn(){var{selectedThemeKey:t,setSelectedThemeKey:e,themes:r}=Ot(),n=d.useCallback(i=>{e(i)},[e]);return c.jsx(Ve,{label:"Pick a color scheme",items:r,selectedKey:t,onSelectionChange:n,children:i=>c.jsx(vt,{children:i.name},i.themeKey)})}function Zn(t){var{className:e,style:r}=t;return c.jsx("div",{className:I("dh-logo",e),style:r})}var rr=["UNSAFE_className"],nr=["defaultSelectedKey","disabledKeys","selectedKey","ref"];function xe(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Me(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?xe(Object(r),!0).forEach(function(n){ir(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):xe(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function ir(t,e,r){return e=or(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function or(t){var e=ar(t,"string");return typeof e=="symbol"?e:String(e)}function ar(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function Ce(t,e){if(t==null)return{};var r=sr(t,e),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)n=o[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function sr(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,o;for(o=0;o<n.length;o++)i=n[o],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var ur=F.forwardRef(function(e,r){var{UNSAFE_className:n}=e,i=Ce(e,rr),o=Zt(i),{defaultSelectedKey:s,disabledKeys:a,selectedKey:u,ref:l}=o,b=Ce(o,nr),f=Jt(r,l);return c.jsx(Ve,Me(Me({},b),{},{ref:f,UNSAFE_className:I("dh-picker",n),defaultSelectedKey:s,disabledKeys:a,selectedKey:u}))});ur.displayName="Picker";var lr=["color","UNSAFE_style"];function De(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Y(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?De(Object(r),!0).forEach(function(n){cr(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):De(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function cr(t,e,r){return e=dr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function dr(t){var e=fr(t,"string");return typeof e=="symbol"?e:String(e)}function fr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function hr(t,e){if(t==null)return{};var r=vr(t,e),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)n=o[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function vr(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,o;for(o=0;o<n.length;o++)i=n[o],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var pr=d.forwardRef((t,e)=>{var{color:r,UNSAFE_style:n}=t,i=hr(t,lr),o=d.useMemo(()=>Y(Y({},n),{},{color:Xt(r)}),[r,n]);return c.jsx(pt,Y(Y({},i),{},{ref:e,UNSAFE_style:o}))});pr.displayName="Heading";function Te(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function mr(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Te(Object(r),!0).forEach(function(n){R(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Te(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function R(t,e,r){return e=gr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function gr(t){var e=br(t,"string");return typeof e=="symbol"?e:String(e)}function br(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var je=A.module("ContextMenu");class G extends d.PureComponent{static handleContextMenu(e){e.metaKey||(e.stopPropagation(),e.preventDefault())}constructor(e){super(e),R(this,"container",void 0),R(this,"oldFocus",void 0),R(this,"activeSubMenuRef",void 0),R(this,"subMenuTimer",void 0),R(this,"rAF",void 0),R(this,"initialPosition",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleCloseSubMenu=this.handleCloseSubMenu.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMenuItemClick=this.handleMenuItemClick.bind(this),this.handleMenuItemContextMenu=this.handleMenuItemContextMenu.bind(this),this.handleMenuItemMouseMove=this.handleMenuItemMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleWindowResize=this.handleWindowResize.bind(this),this.container=F.createRef(),this.oldFocus=document.activeElement,this.activeSubMenuRef=F.createRef(),this.subMenuTimer=0,this.rAF=0,this.initialPosition={top:e.top,left:e.left},this.state={menuItems:[],pendingItems:[],activeSubMenu:null,hasOverflow:!1,subMenuTop:null,subMenuLeft:null,subMenuParentWidth:0,subMenuParentHeight:0,keyboardIndex:-1,mouseIndex:-1}}componentDidMount(){this.initMenu(),this.verifyPosition(),window.addEventListener("resize",this.handleWindowResize),this.rAF=window.requestAnimationFrame(()=>{var e;(e=this.container.current)===null||e===void 0||e.focus();var{onMenuOpened:r}=this.props;r(this)})}componentDidUpdate(e,r){var{actions:n}=this.props,{activeSubMenu:i}=this.state;if(i!==r.activeSubMenu)if(i==null){var o;(o=this.container.current)===null||o===void 0||o.focus()}else this.setActiveSubMenuPosition();if(e.actions!==n&&(this.initMenu(),this.container.current==null||!this.container.current.contains(document.activeElement))){var s;(s=this.container.current)===null||s===void 0||s.focus()}this.verifyPosition()}componentWillUnmount(){this.cancelPromises(),window.removeEventListener("resize",this.handleWindowResize),cancelAnimationFrame(this.rAF)}getKeyboardIndex(){var{options:e}=this.props;if(e.separateKeyboardMouse!==void 0&&e.separateKeyboardMouse){var{keyboardIndex:r}=this.state;return r}return this.getMouseIndex()}setKeyboardIndex(e){var{options:r}=this.props;r.separateKeyboardMouse!==void 0&&r.separateKeyboardMouse?this.setState({keyboardIndex:e}):this.setMouseIndex(e)}getMouseIndex(){var{mouseIndex:e}=this.state;return e}setMouseIndex(e){this.setState({mouseIndex:e})}initMenu(){this.cancelPromises(),cancelAnimationFrame(this.rAF);var{options:e}=this.props,r=e.initialKeyboardIndex;r===void 0&&(r=-1);for(var{actions:n}=this.props,i=N.getMenuItems(n),o=[],s=i.length-1;s>=0;s-=1){var a=i[s];a instanceof Promise?this.initMenuPromise(a):o.push(a)}this.setState({mouseIndex:-1,keyboardIndex:r,activeSubMenu:null,menuItems:N.sortActions(o)})}initMenuPromise(e){var r=W.makeCancelable(e);this.setState(n=>({pendingItems:n.pendingItems.concat(r)})),r.then(n=>{this.setState(i=>{var o=i.pendingItems.indexOf(r);if(o>=0){var s=i.pendingItems.slice();return s.splice(o,1),{menuItems:N.sortActions(i.menuItems.concat(n)),pendingItems:s}}return null})},n=>{W.isCanceled(n)||(this.setState(i=>{var o=i.pendingItems.indexOf(r);if(o>=0){var s=i.pendingItems.slice();return s.splice(o,1),{pendingItems:s}}return null}),je.error(n))})}cancelPromises(){var{pendingItems:e}=this.state;e.map(r=>r.cancel())}setActiveSubMenuPosition(){if(this.activeSubMenuRef.current!==null){var e=this.activeSubMenuRef.current.getBoundingClientRect();this.setState({subMenuTop:e.top,subMenuLeft:e.right,subMenuParentHeight:e.height,subMenuParentWidth:e.width})}}verifyPosition(){var e,r,n,i,{options:o,updatePosition:s,subMenuParentWidth:a,subMenuParentHeight:u,top:l,left:b}=this.props;if(!(!this.container.current||o.doNotVerifyPosition!=null&&o.doNotVerifyPosition)){var{top:f,left:g}=this.initialPosition,{width:y,height:m}=(e=(r=this.container.current)===null||r===void 0?void 0:r.getBoundingClientRect())!==null&&e!==void 0?e:{width:0,height:0},x=((n=(i=this.container.current)===null||i===void 0?void 0:i.scrollHeight)!==null&&n!==void 0?n:0)>window.innerHeight;m===0||y===0||(f+m>window.innerHeight&&(f-m-u>0?f-=m-u:f=window.innerHeight-m),g+y>window.innerWidth&&(g=g-y-a),(b!==g||l!==f)&&(this.setState({hasOverflow:x}),s(f,g)))}}handleWindowResize(){this.container.current&&this.closeMenu(!0)}handleBlur(e){if(!this.container.current){je.warn("Container is null!");return}if(!this.container.current.contains(e.relatedTarget)){for(var r=e.relatedTarget,n=!1;r&&!n;)n=r.hasAttribute("data-dh-context-menu"),r=r.parentElement;n||this.closeMenu(!0)}}isEscapeKey(e){var{left:r}=this.props;return e==="Escape"||r<0&&e==="ArrowRight"||e==="ArrowLeft"}handleKeyDown(e){var{menuItems:r}=this.state,n=this.getKeyboardIndex(),i=n,o=!1;if(e.key==="Enter"||e.key===" "){n>=0&&n<r.length&&this.handleMenuItemClick(r[n],e);return}if(e.key==="ArrowRight"?n>=0&&n<=r.length?o=!0:i=0:this.isEscapeKey(e.key)?i=null:e.key==="ArrowUp"||e.shiftKey&&e.key==="Tab"?i=N.getNextMenuItem(i,-1,r):(e.key==="ArrowDown"||e.key==="Tab")&&(i=N.getNextMenuItem(i,1,r)),o){this.openSubMenu(n),e.preventDefault(),e.stopPropagation();return}n!==i&&(i!==null?this.setKeyboardIndex(i):(this.closeMenu(),this.oldFocus instanceof HTMLElement&&this.oldFocus.focus()),e.preventDefault(),e.stopPropagation())}openSubMenu(e){var{menuItems:r,activeSubMenu:n}=this.state,i=r[e].actions?e:null;n!==i&&this.setState({activeSubMenu:i,subMenuTop:null,subMenuLeft:null})}closeMenu(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,{closeMenu:r,onMenuClosed:n}=this.props;cancelAnimationFrame(this.rAF),this.rAF=window.requestAnimationFrame(()=>{r(e),n(this)})}closeSubMenu(){this.setState({activeSubMenu:null})}handleCloseSubMenu(e){e?this.closeMenu(!0):this.closeSubMenu()}handleMenuItemClick(e,r){r.preventDefault(),r.stopPropagation();var{menuItems:n}=this.state;e!=null&&(e.disabled===void 0||!e.disabled)&&(e.actions!=null?this.openSubMenu(n.indexOf(e)):e.action!=null&&(e.action(r.nativeEvent),this.closeMenu(!0)))}handleMenuItemContextMenu(e,r){r.metaKey||this.handleMenuItemClick(e,r)}handleMenuItemMouseMove(e){var{menuItems:r}=this.state,n=r.indexOf(e);this.setMouseIndex(n),n>=0&&n<r.length&&(e.disabled===void 0||!e.disabled)&&this.openSubMenu(n)}handleMouseLeave(){this.setMouseIndex(-1)}render(){for(var e=[],{top:r,left:n}=this.props,{activeSubMenu:i,hasOverflow:o,keyboardIndex:s,menuItems:a,mouseIndex:u,pendingItems:l,subMenuTop:b,subMenuLeft:f,subMenuParentWidth:g,subMenuParentHeight:y}=this.state,m=0;m<a.length;m+=1){var x=a[m];m>0&&x.group!==a[m-1].group&&e.push(c.jsx("hr",{},"".concat(m,".separator")));var p=c.jsx(Et,{ref:i===m?this.activeSubMenuRef:null,isKeyboardSelected:s===m,isMouseSelected:u===m,menuItem:x,closeMenu:this.handleCloseSubMenu,onMenuItemClick:this.handleMenuItemClick,onMenuItemMouseMove:this.handleMenuItemMouseMove,onMenuItemContextMenu:this.handleMenuItemContextMenu},m);e.push(p)}var S=null;l.length>0&&(S=c.jsx("div",{className:"loading",children:c.jsx(Qt,{className:"loading-spinner-vertical-align"})}));var{menuStyle:U,"data-testid":H}=this.props,M=i!==null&&b!==null&&f!==null;return c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:I({"has-overflow":o},"context-menu-container"),style:mr({top:r,left:n},U),ref:this.container,"data-dh-context-menu":!0,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,onMouseLeave:this.handleMouseLeave,onContextMenu:G.handleContextMenu,role:"menuitem",tabIndex:0,"data-testid":H,children:[e,S]}),M&&i!==null&&b!==null&&f!==null&&c.jsx(G,{actions:a[i].actions||[],closeMenu:this.handleCloseSubMenu,top:b,left:f,updatePosition:(O,j)=>{this.setState({subMenuTop:O,subMenuLeft:j})},subMenuParentWidth:g,subMenuParentHeight:y},"sub-".concat(i))]})}}R(G,"defaultProps",{subMenuParentWidth:0,subMenuParentHeight:0,closeMenu(){},onMenuOpened(){},onMenuClosed(){},options:{},menuStyle:{},"data-testid":void 0});const yr=G;function _e(t,e,r){return e=wr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function wr(t){var e=Pr(t,"string");return typeof e=="symbol"?e:String(e)}function Pr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class Sr extends d.Component{constructor(e){super(e),_e(this,"container",void 0),_e(this,"openMenu",void 0),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.container=F.createRef(),this.openMenu=F.createRef(),this.state={actions:null,left:0,top:0}}componentDidMount(){var e;(e=this.container.current)!==null&&e!==void 0&&e.parentElement&&this.container.current.parentElement.addEventListener("contextmenu",this.handleContextMenu)}componentWillUnmount(){var e;(e=this.container.current)!==null&&e!==void 0&&e.parentElement&&this.container.current.parentElement.removeEventListener("contextmenu",this.handleContextMenu)}handleContextMenu(e){if(this.container.current){var r=this.container.current.getBoundingClientRect(),n=e.clientY-r.top,i=e.clientX-r.left,{actions:o}=this.state;if(o!=null&&e.target===this.container.current){e.preventDefault(),this.setState({actions:null},()=>{var a=document.elementFromPoint(i,n),u=new MouseEvent("contextmenu",{clientX:e.clientX,clientY:e.clientY,bubbles:!0,cancelable:!0});a?.dispatchEvent(u)});return}if(N.isContextActionEvent(e)&&!(e.metaKey||e.ctrlKey)){var s=N.getMenuItems(e.contextActions);s.length!==0&&(e.preventDefault(),this.setState({actions:s,top:n,left:i}))}}}handleMenuClose(e){e===this.openMenu.current&&this.setState({actions:null})}render(){var e=null,{"data-testid":r}=this.props,{actions:n,top:i,left:o}=this.state;return n&&(e=c.jsx(yr,{ref:this.openMenu,actions:n,onMenuClosed:this.handleMenuClose,top:i,left:o,updatePosition:(s,a)=>{this.setState({top:s,left:a})},"data-testid":r})),c.jsx("div",{className:I("context-menu-root",{active:n}),ref:this.container,children:e})}}const Xn=Sr;function rt(t,e,r){return e=Or(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Or(t){var e=Er(t,"string");return typeof e=="symbol"?e:String(e)}function Er(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class T extends d.Component{static handleEnter(e){var r=e;r.style.height="0"}static handleEntering(e){var r=e;r.style.height="".concat(T.getHeight(r),"px")}static handleExiting(e){var r=e;r.style.height="0"}static handleExit(e){var r=e;r.style.height="".concat(T.getHeight(r),"px")}static getHeight(e){var r=e.scrollWidth-e.clientWidth;return e.scrollHeight-r}constructor(e){super(e),this.handleEntered=this.handleEntered.bind(this)}handleEntered(e){var r=e;r.style.height="";var{autoFocusOnShow:n}=this.props;if(n!==void 0&&n){var i=r.querySelector("input, select, textarea");i?.focus()}}render(){var{children:e,className:r,in:n,"data-testid":i}=this.props;return c.jsx(mt,{in:n,classNames:{enterActive:"collapsing",enterDone:"collapse show",exitActive:"collapsing",exitDone:"collapse"},onEnter:T.handleEnter,onEntering:T.handleEntering,onEntered:this.handleEntered,onExit:T.handleExit,onExiting:T.handleExiting,timeout:350,children:o=>c.jsx("div",{className:I({collapse:o==="exited"},r),"data-testid":i,children:e})})}}rt(T,"propTypes",{className:K.string,in:K.bool.isRequired,children:K.node.isRequired,autoFocusOnShow:K.bool,"data-testid":K.string});rt(T,"defaultProps",{className:"",autoFocusOnShow:!1,"data-testid":void 0});const Jn=T;function Re(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function te(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Re(Object(r),!0).forEach(function(n){xr(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Re(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function xr(t,e,r){return e=Mr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Mr(t){var e=Cr(t,"string");return typeof e=="symbol"?e:String(e)}function Cr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var nt=d.memo(t=>{var{tab:e,onClose:r,onSelect:n,isActive:i,activeRef:o,index:s,isDraggable:a,contextActions:u}=t,{key:l,isClosable:b=r!=null,title:f,icon:g}=e,y;return g!=null&&(y=F.isValidElement(g)?g:c.jsx(ie,{icon:g})),c.jsx(gt,{draggableId:l,index:s,isDragDisabled:!a,children:(m,x)=>c.jsxs("div",{className:"context-menu-wrapper",ref:i?o:null,children:[c.jsxs("div",te(te(te({ref:m.innerRef},m.draggableProps),m.dragHandleProps),{},{className:I("btn btn-link btn-nav-tab",{active:i},{dragging:x.isDragging}),"data-testid":"btn-nav-tab-".concat(f),role:"tab",tabIndex:0,onAuxClick:p=>{b&&p.button===1&&p.buttons===0&&r?.(l)},onClick:p=>{if(b&&p.button===1&&p.buttons===0){r?.(l);return}p.button===0&&p.buttons===0&&(p.target.focus(),n(l))},onKeyPress:p=>{p.key==="Enter"&&n(l)},children:[y,f,b&&c.jsx(oe,{kind:"ghost",className:"btn-nav-tab-close",onClick:p=>{r?.(l),p.stopPropagation(),p.preventDefault()},icon:Vt,tooltip:"Close"})]})),c.jsx(xt,{actions:u})]})},l)});nt.displayName="NavTab";const Dr=nt;function Ie(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Le(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ie(Object(r),!0).forEach(function(n){Tr(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ie(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Tr(t,e,r){return e=jr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function jr(t){var e=_r(t,"string");return typeof e=="symbol"?e:String(e)}function _r(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Rr=500,Ir=.01,Lr=5e-4;function Ne(t){return t.scrollLeft===0}function Ae(t){return t.scrollLeft+t.clientWidth===t.scrollWidth||t.scrollWidth===0}function Nr(t,e,r){var{isClosable:n=!1,key:i}=t,o=[];if(n&&r!=null){o.push({title:"Close",order:10,group:20,action:()=>{r(i)}});for(var s=!0,a=e.length-1;a>0&&e[a].key!==t.key;a-=1)if(e[a].isClosable===!0){s=!1;break}o.push({title:"Close to the Right",order:20,group:20,action:()=>{for(var u=e.length-1;u>0&&e[u].key!==i;u-=1)e[u].isClosable===!0&&r(e[u].key)},disabled:s}),o.push({title:"Close All",order:30,group:20,action:()=>{e.forEach(u=>{u.isClosable===!0&&r(u.key)})}})}return o}function Qn(t){var{activeKey:e,tabs:r,onSelect:n,onReorder:i,onClose:o,makeContextActions:s}=t,a=d.useRef(),[u,l]=d.useState(!0),[b,f]=d.useState(!0),[g,y]=d.useState(!0),m=d.useCallback(()=>{a.current!=null&&(a.current.clientWidth<a.current.scrollWidth&&r.length>0?l(!0):l(!1),f(Ne(a.current)),y(Ae(a.current)))},[r]);tt(a.current,m);var x=d.useCallback(h=>{Ee.stopDragging(),h.destination&&i?.(h.source.index,h.destination.index)},[i]),p=d.useCallback(()=>{if(a.current!=null){var h=Ne(a.current);h!==b&&f(h);var v=Ae(a.current);v!==g&&y(v)}},[b,g]),S=d.useRef({cancelClick:!1}),U=d.useCallback(()=>{if(!(a.current==null||S.current.cancelClick))for(var{children:h}=a.current,v=h.length-1;v>=0;v-=1){var w=h[v];if(w.offsetLeft<a.current.scrollLeft-5){w.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"});return}}},[]),H=d.useCallback(()=>{if(!(a.current==null||S.current.cancelClick))for(var{children:h}=a.current,v=0;v<h.length;v+=1){var w=h[v];if(w.offsetLeft+5>a.current.scrollLeft+a.current.offsetWidth){w.scrollIntoView({behavior:"smooth",block:"nearest",inline:"end"});return}}},[]),M=d.useCallback(function(h,v){var w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,P=arguments.length>3?arguments[3]:void 0,C=a.current;C!=null&&(S.current.cancelClick=!0,h==="left"?C.scrollLeft=v-w:h==="right"&&(C.scrollLeft=v+w),S.current.rAF=requestAnimationFrame(q=>{var me=P??q,ge=q-me,ee=Ir*ge+.5*Lr*ge**2;ee=Math.min(ee,C.scrollWidth),M(h,v,ee,me)}))},[]),O=d.useCallback(()=>{var{holdTimer:h,rAF:v}=S.current;h!=null&&(clearTimeout(h),S.current.holdTimer=void 0),v!=null&&(cancelAnimationFrame(v),S.current.rAF=void 0),window.removeEventListener("mouseup",O)},[]);d.useEffect(()=>()=>window.removeEventListener("mouseup",O),[O]);var j=d.useCallback(h=>{a.current!=null&&(S.current.holdTimer=window.setTimeout(M,Rr,h,a.current.scrollLeft)),S.current.cancelClick=!1,window.addEventListener("mouseup",O)},[O,M]),lt=d.useCallback(()=>{j("left")},[j]),ct=d.useCallback(()=>{j("right")},[j]);d.useEffect(function(){var v,w=P=>{P.stopPropagation(),P.preventDefault();var C=P.currentTarget,q=Math.abs(P.deltaY)>Math.abs(P.deltaX)?P.deltaY:P.deltaX;C.scrollLeft+=wt(q,-30,30)};return(v=a.current)===null||v===void 0||v.addEventListener("wheel",w),()=>{var P;(P=a.current)===null||P===void 0||P.removeEventListener("wheel",w)}},[]);var dt=d.useMemo(()=>{var h=new Map;return r.forEach(v=>{var{key:w}=v,P=[()=>Nr(v,r,o),()=>{var C;return(C=s?.(v))!==null&&C!==void 0?C:[]}];h.set(w,P)}),h},[s,r,o]),V=d.useRef(null),ft=r.find(h=>h.key===e),ht=r.map((h,v)=>{var{key:w}=h,P=h===ft;return c.jsx(Dr,{tab:h,index:v,isActive:P,activeRef:V,onSelect:n,onClose:o,isDraggable:i!=null,contextActions:dt.get(w)},w)});return d.useEffect(function(){V.current!=null&&V.current.scrollIntoView({block:"nearest",inline:"nearest"})},[e]),c.jsxs("nav",{className:"nav-container",children:[u&&c.jsx(oe,{kind:"ghost",icon:c.jsx(ie,{icon:er,transform:"grow-4"}),className:"tab-controls-btn tab-controls-btn-left",tooltip:"Scroll left",onClick:U,onMouseDown:lt,disabled:b}),c.jsx(bt,{onDragStart:Ee.startDragging,onDragEnd:x,children:c.jsx(yt,{droppableId:"droppable-tab-navigation",direction:"horizontal",children:(h,v)=>c.jsxs("div",Le(Le({ref:w=>{w!=null&&(a.current=w,h.innerRef(w))}},h.droppableProps),{},{className:I("nav nav-tabs",{dragging:v.draggingFromThisWith}),role:"tablist",onScroll:p,children:[ht,h.placeholder]}))})}),u&&c.jsx(oe,{kind:"ghost",icon:c.jsx(ie,{icon:tr,transform:"grow-4"}),className:"tab-controls-btn tab-controls-btn-right",tooltip:"Scroll right",onClick:H,onMouseDown:ct,disabled:g})]})}function Ar(t,e){var r=Mt(),n=d.useMemo(()=>new r.CoreClient(t,e),[r,t,e]);return d.useEffect(()=>()=>{n.disconnect()},[n]),n}var it=d.createContext(null);function Vn(t){var{serverUrl:e,options:r,children:n}=t,i=Ar(e,r);return c.jsx(it.Provider,{value:i,children:n})}function $r(){return J(it,"No Client available in useClient. Was code wrapped in ClientBootstrap or ClientContext.Provider?")}function $e(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Fr(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){$e(o,n,i,s,a,"next",u)}function a(u){$e(o,n,i,s,a,"throw",u)}s(void 0)})}}var re=A.module("MessageUtils"),ei="io.deephaven.message.LoginOptions.request",Ur="io.deephaven.message.SessionDetails.request",ti="io.deephaven.broadcast",Kr="io.deephaven.broadcast.Login",kr="io.deephaven.broadcast.Logout";function ot(t){var e=t;return e!=null&&typeof e.id=="string"&&typeof e.message=="string"}function ri(t){return ot(t)&&t.message===Kr}function ni(t){return ot(t)&&t.message===kr}function Br(t){var e=t;return e!=null&&typeof e.id=="string"}function Wr(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fe(),r=arguments.length>2?arguments[2]:void 0;return{message:t,id:e,payload:r}}function ii(t,e){return{id:t,payload:e}}function Gr(){return window.opener!=null?window.opener:window.parent!=null&&window.parent!==window?window.parent:null}function zr(t){return ae.apply(this,arguments)}function ae(){return ae=Fr(function*(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3e4,r=Gr();if(r==null)throw new Error("window parent is null, unable to send request.");return new Promise((n,i)=>{var o,s=fe(),a=u=>{var{data:l}=u;if(!Br(l)){re.debug("Ignoring non-deephaven response",l);return}if(re.debug("Received message",l),l?.id!==s){re.debug("Ignore message, id doesn't match",l);return}window.clearTimeout(o),window.removeEventListener("message",a),n(l.payload)};window.addEventListener("message",a),o=window.setTimeout(()=>{window.removeEventListener("message",a),i(new Ct("Request timed out"))},e),r.postMessage(Wr(t,s),"*")})}),ae.apply(this,arguments)}function Hr(t,e,r){return e=qr(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function qr(t){var e=Yr(t,"string");return typeof e=="symbol"?e:String(e)}function Yr(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class Zr extends Error{constructor(){super(...arguments),Hr(this,"isNoConsolesError",!0)}}function Xr(t){return t.isNoConsolesError}function Fe(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Q(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Fe(o,n,i,s,a,"next",u)}function a(u){Fe(o,n,i,s,a,"throw",u)}s(void 0)})}}var B=A.module("SessionUtils");function Jr(t,e,r){return se.apply(this,arguments)}function se(){return se=Q(function*(t,e,r){B.info("Getting console types...");var n=yield e.getConsoleTypes();if(n.length===0)throw new Zr("No console types available");B.info("Available types:",n);var i=n[0];B.info("Starting session with type",i);var o=yield e.startSession(i),s={type:i,id:fe()};return B.info("Console session established",s),{session:o,config:s,connection:e,details:r,dh:t}}),se.apply(this,arguments)}function oi(t,e,r){return B.info("createCoreClient",e),new t.CoreClient(e,r)}function Qr(t){return t!=null&&typeof t=="object"}function Vr(){return ue.apply(this,arguments)}function ue(){return ue=Q(function*(){var t=yield zr(Ur);if(!Qr(t))throw new Error("Unexpected session details response: ".concat(t));return t}),ue.apply(this,arguments)}function ai(){return le.apply(this,arguments)}function le(){return le=Q(function*(){var t=new URLSearchParams(window.location.search);switch(t.get("authProvider")){case"parent":return Vr()}return{}}),le.apply(this,arguments)}function si(t,e,r){return ce.apply(this,arguments)}function ce(){return ce=Q(function*(t,e,r){var n;try{n=yield Jr(t,e,r)}catch(i){if(!Xr(i))throw i}return n}),ce.apply(this,arguments)}function Ue(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function en(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ue(Object(r),!0).forEach(function(n){tn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ue(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function tn(t,e,r){return e=rn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function rn(t){var e=nn(t,"string");return typeof e=="symbol"?e:String(e)}function nn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var on=100,ne=()=>{},an=Object.freeze({});function sn(t){var{id:e="default",children:r,emptyDashboard:n,layoutConfig:i,layoutSettings:o=an,onLayoutConfigChange:s=ne,onGoldenLayoutChange:a=ne,onLayoutInitialized:u=ne,fallbackComponent:l=Lt,hydrate:b,dehydrate:f,panelWrapper:g}=t,y=d.useRef(null),[m,x]=d.useState(!1),[p,S]=d.useState();d.useEffect(function(){if(!y.current){S(void 0);return}var M=en({},Dt.makeDefaultLayout());M.settings===void 0&&(M.settings={}),Object.assign(M.settings,o),M.content=[];var O=new Tt(M,y.current),j=()=>{O.off("initialised",j),x(!0)};return O.on("initialised",j),l!=null&&O.setFallbackComponent(l),O.init(),S(O),a(O),()=>{O.destroy()}},[o,l,a,x,S]);var U=d.useMemo(()=>et(()=>{p!=null&&p.isInitialised&&p?.updateSize()},on),[p]);return tt(y.current,U),c.jsxs("div",{className:"dashboard-container w-100 h-100",children:[c.jsx("div",{className:"w-100 h-100",ref:y}),m&&p&&c.jsx(jt.Provider,{value:p,children:c.jsx(_t.Provider,{value:e,children:c.jsx(Rt,{children:c.jsx(It,{emptyDashboard:n,id:e,layout:p,layoutConfig:i,onLayoutChange:s,onLayoutInitialized:u,hydrate:b,dehydrate:f,panelWrapper:g,children:r})})})})]})}var ve="CREATE_DASHBOARD";function un(t,e){try{t.off(ve,e)}catch{}}function ui(t,e){return t.on(ve,e),()=>un(t,e)}function li(t,e){t.emit(ve,e)}var ln=["id","isActive","plugins"];function Ke(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function ke(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ke(Object(r),!0).forEach(function(n){cn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ke(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function cn(t,e,r){return e=dn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function dn(t){var e=fn(t,"string");return typeof e=="symbol"?e:String(e)}function fn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function hn(t,e){if(t==null)return{};var r=vn(t,e),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)n=o[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function vn(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,o;for(o=0;o<n.length;o++)i=n[o],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}function pn(t){var{id:e,isActive:r,plugins:n}=t,i=hn(t,ln),[o,s]=d.useState(r),a=Pt(),u=d.useCallback(l=>{a(e===Nt?At({layoutConfig:l}):$t(e,{layoutConfig:l}))},[e,a]);return!o&&r&&s(!0),o?c.jsx(sn,ke(ke({id:e,onLayoutConfigChange:u},i),{},{children:n})):c.jsx(he,{})}function mn(t){var e=[...t.entries()].filter(r=>{var[,n]=r;return Ft(n)||be(n)});return e.map(r=>{var[n,i]=r;if(be(i)){var{DashboardPlugin:o}=i;return c.jsx(o,{},n)}var{component:s}=i;return c.jsx(s,{},n)})}function ci(){var t=Ut(),e=d.useMemo(()=>mn(t),[t]);return e}var di=d.createContext({}),fi=d.createContext({}),gn=d.createContext(null),bn=d.createContext(null);function Be(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function yn(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Be(o,n,i,s,a,"next",u)}function a(u){Be(o,n,i,s,a,"throw",u)}s(void 0)})}}var at=d.createContext(null);function hi(t){var{children:e}=t,r=$r(),[n,i]=d.useState(),[o,s]=d.useState();d.useEffect(function(){var l=!1;function b(){return f.apply(this,arguments)}function f(){return f=yn(function*(){try{var g=yield r.getServerConfigValues();l||i(new Map(g))}catch(y){l||s(y)}}),f.apply(this,arguments)}return b(),()=>{l=!0}},[r]);var a=n==null;return a||o!=null?c.jsx(he,{isLoading:a&&o==null,errorMessage:Kt(o)}):c.jsx(at.Provider,{value:n,children:e})}function vi(){return J(at,"No server config available in useServerConfig. Was code wrapped in ServerConfigBootstrap or ServerConfigContext.Provider?")}function We(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function wn(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){We(o,n,i,s,a,"next",u)}function a(u){We(o,n,i,s,a,"throw",u)}s(void 0)})}}function Ge(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function ze(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ge(Object(r),!0).forEach(function(n){Pn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ge(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Pn(t,e,r){return e=Sn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Sn(t){var e=On(t,"string");return typeof e=="symbol"?e:String(e)}function On(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function pi(t){var{dashboards:e,activeDashboard:r,onLayoutInitialized:n,onGoldenLayoutChange:i,plugins:o,emptyDashboard:s=c.jsx(he,{})}=t,a=kt(),u=d.useCallback((l,b)=>{var{metadata:f}=l;try{if(f!=null){var g=Bt(f);return ze(ze({fetch:function(){var y=wn(function*(){return a(g)});function m(){return y.apply(this,arguments)}return m}()},l),{},{localDashboardId:b})}}catch{}return Wt.hydrate(l,b)},[a]);return c.jsx("div",{className:"tab-content",children:e.map(l=>c.jsx("div",{className:I("tab-pane",{active:l.id===r}),children:c.jsx(pn,{id:l.id,isActive:l.id===r,emptyDashboard:s,layoutConfig:l.layoutConfig,layoutSettings:l.layoutSettings,onLayoutInitialized:n,onGoldenLayoutChange:i,hydrate:u,plugins:o},l.key)},l.id))})}function mi(){return J(bn,"No IdeConnection available in useConnection. Was code wrapped in ConnectionContext.Provider?")}function gi(){return J(gn,"No user available in useUser. Was code wrapped in UserBootstrap or UserContext.Provider?")}function He(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function En(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){He(o,n,i,s,a,"next",u)}function a(u){He(o,n,i,s,a,"throw",u)}s(void 0)})}}function D(t,e,r){return e=xn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function xn(t){var e=Mn(t,"string");return typeof e=="symbol"?e:String(e)}function Mn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var k=A.module("GrpcFileStorageTable");class z{constructor(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:r;D(this,"storageService",void 0),D(this,"baseRoot",void 0),D(this,"root",void 0),D(this,"currentSize",0),D(this,"currentViewport",void 0),D(this,"listeners",[]),D(this,"viewportUpdatePromise",void 0),D(this,"currentViewportData",void 0),D(this,"childTables",new Map),this.storageService=e,this.baseRoot=r,this.root=n,n===r&&(this.doRefresh=St(this.doRefresh.bind(this),z.REFRESH_DEBOUNCE))}removeBaseRoot(e){return L.removeRoot(this.baseRoot,e)}getViewportData(){var e;return this.viewportUpdatePromise||this.refreshInternal(),(e=this.viewportUpdatePromise)!==null&&e!==void 0?e:Promise.resolve({items:[],offset:0})}getSnapshot(e){throw new Error("Method not implemented.")}get size(){return this.currentSize}setExpanded(e,r){var n=e.split("/"),i=n.shift();if((i===void 0||i==="")&&(i=n.shift()),i===void 0||i==="")throw new Error("Invalid path: ".concat(e));var o=n.join("/");if(r){if(!this.childTables.has(i)){var s=new z(this.storageService,this.baseRoot,"".concat(this.root,"/").concat(i));this.childTables.set(i,s)}if(o){var a=this.childTables.get(i);a?.setExpanded(o,r)}}else if(this.childTables.has(i))if(o){var u=this.childTables.get(i);u?.setExpanded(o,r)}else this.childTables.delete(i);this.currentViewport&&this.refreshInternal()}collapseAll(){this.childTables.clear(),this.currentViewport&&this.refreshInternal()}setSearch(e){throw new Error("Method not implemented.")}setViewport(e){this.currentViewport=e,this.refreshInternal()}setFilters(){throw new Error("Method not implemented.")}setSorts(){throw new Error("Method not implemented.")}setReversed(){throw new Error("Method not implemented.")}close(){this.listeners=[]}onUpdate(e){return this.listeners=[...this.listeners,e],()=>{this.listeners=this.listeners.filter(r=>r!==e)}}doRefresh(e){k.debug2("doRefresh",this.root),e(this.fetchData())}refresh(){var e;k.debug2("refresh",this.root),(e=this.viewportUpdatePromise)===null||e===void 0||e.cancel();var r=new Promise(i=>{this.doRefresh(i)}),n=W.makeCancelable(r.then(i=>{if(this.viewportUpdatePromise!==n)throw new Gt;return this.currentViewportData=i,this.sendUpdate(),i}));n.catch(i=>{W.isCanceled(i)||k.error("Error updating viewport",i)}),this.viewportUpdatePromise=n}refreshInternal(){try{this.refresh()}catch(e){W.isCanceled(e)||k.error("Unable to refresh data",e)}}fetchData(){var e=this;return En(function*(){var{currentViewport:r}=e;if(!r)throw new Error("No viewport set");for(var n=yield e.storageService.listItems(e.root),i=n.map(f=>({type:f.type,filename:e.removeBaseRoot(f.filename),basename:f.basename,id:e.removeBaseRoot(f.filename),isExpanded:f.type==="directory"?e.childTables.has(f.basename):void 0})).sort((f,g)=>f.type!==g.type?f.type==="directory"?-1:1:f.basename.localeCompare(g.basename)),o=0;o<i.length;o+=1){var s=i[o],{basename:a,filename:u}=s;if(u===e.removeBaseRoot("".concat(e.root,"/").concat(a))&&s.type==="directory"){var l=e.childTables.get(a);if(l!=null){l.setViewport({top:0,bottom:r.bottom-o});var b=yield l.getViewportData();i.splice(o+1,0,...b.items)}}}return e.currentSize=i.length,k.debug2(e.root,"items",i,r),i=i.slice(r.top,r.bottom),{items:i,offset:r.top}})()}sendUpdate(){for(var e,{listeners:r}=this,n=(e=this.currentViewportData)!==null&&e!==void 0?e:{items:[],offset:0},i=0;i<r.length;i+=1)r[i](n)}}D(z,"REFRESH_DEBOUNCE",50);function qe(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function _(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){qe(o,n,i,s,a,"next",u)}function a(u){qe(o,n,i,s,a,"throw",u)}s(void 0)})}}function $(t,e,r){return e=Cn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Cn(t){var e=Dn(t,"string");return typeof e=="symbol"?e:String(e)}function Dn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Tn=A.module("GrpcFileStorage");class pe{constructor(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"";$(this,"dh",void 0),$(this,"storageService",void 0),$(this,"tables",[]),$(this,"root",void 0),$(this,"refreshTables",et(()=>{this.tables.forEach(i=>i.refresh())},pe.REFRESH_THROTTLE)),this.dh=e,this.storageService=r,this.root=n}removeRoot(e){return L.removeRoot(this.root,e)}addRoot(e){return L.addRoot(this.root,e)}createDirectory(e){var r=this;return _(function*(){return yield r.storageService.createDirectory(r.addRoot(e)),r.refreshTables(),{type:"directory",id:e,filename:e,basename:L.getBaseName(e)}})()}getTable(){var e=this;return _(function*(){var r=new z(e.storageService,e.root);return e.tables.push(r),r})()}saveFile(e){var r=this;return _(function*(){var n=r.dh.storage.FileContents.text(e.content);return yield r.storageService.saveFile(r.addRoot(e.filename),n,!0),r.refreshTables(),e})()}loadFile(e){var r=this;return _(function*(){var n=yield r.storageService.loadFile(r.addRoot(e)),i=yield n.text();return{filename:e,basename:L.getBaseName(e),content:i}})()}copyFile(e,r){var n=this;return _(function*(){var i=yield n.storageService.loadFile(n.addRoot(e));yield n.storageService.saveFile(n.addRoot(r),i,!1),n.refreshTables()})()}deleteFile(e){var r=this;return _(function*(){yield r.storageService.deleteItem(r.addRoot(e)),r.refreshTables()})()}moveFile(e,r){var n=this;return _(function*(){yield n.storageService.moveItem(n.addRoot(e),n.addRoot(r)),n.refreshTables()})()}info(e){var r=this;return _(function*(){var n=yield r.storageService.listItems(r.addRoot(L.getPath(e)),L.getBaseName(e));if(n.length===0)throw new zt;if(n.length>1)throw Tn.error("More than one matching file found, should never happen.",n),new Error("More than one matching file found");var i=n[0];if(!Ht(i.type))throw new Error("Unexpected file type: ".concat(i.type));return{filename:r.removeRoot(i.filename),basename:i.basename,id:r.removeRoot(i.filename),type:i.type}})()}}$(pe,"REFRESH_THROTTLE",150);function Ye(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Ze(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Ye(o,n,i,s,a,"next",u)}function a(u){Ye(o,n,i,s,a,"throw",u)}s(void 0)})}}function Xe(t,e,r){return e=jn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function jn(t){var e=_n(t,"string");return typeof e=="symbol"?e:String(e)}function _n(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class bi{constructor(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";Xe(this,"storageService",void 0),Xe(this,"root",void 0),this.storageService=e,this.root=r}getLayouts(){var e=this;return Ze(function*(){var r=yield e.storageService.listItems(e.root,"*.json");return r.map(n=>n.basename)})()}getLayout(e){var r=this;return Ze(function*(){var n=yield r.storageService.loadFile("".concat(r.root,"/").concat(e)),i=yield n.text();return JSON.parse(i)})()}}function Rn(t){return t.version===2}function In(t){return Array.isArray(t)}function Je(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function Ln(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Je(o,n,i,s,a,"next",u)}function a(u){Je(o,n,i,s,a,"throw",u)}s(void 0)})}}var Z=A.module("UserLayoutUtils"),Nn={layoutConfig:[{type:"column",content:[{type:"row",height:40,content:[{type:"stack",content:[{type:"react-component",component:ye.COMPONENT,title:ye.TITLE,isClosable:!1},{type:"react-component",component:we.COMPONENT,title:we.TITLE,isClosable:!1}]},{type:"stack",width:25,content:[{type:"react-component",component:Pe.COMPONENT,title:Pe.TITLE,isClosable:!1},{type:"react-component",component:Se.COMPONENT,title:Se.TITLE,isClosable:!1}]}]},{type:"row",content:[{type:"stack",title:"Notebooks",content:[]}]}]}],links:[],filterSets:[],version:2},An={layoutConfig:[],links:[],filterSets:[],version:2};function st(t){if(Rn(t))return t;if(In(t)){var e=t;return{layoutConfig:e,links:[],filterSets:[],version:2}}throw new Error("Unexpected layout import format: ".concat(t))}function $n(t){return de.apply(this,arguments)}function de(){return de=Ln(function*(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;try{var r=yield t.getLayouts();if(r.length>0)try{var n=yield t.getLayout(r[0]);return st(n)}catch(i){Z.error("Unable to load layout",r[0],":",i),Z.warn("No valid layouts found, falling back to default layout")}}catch(i){Z.error("Unable to fetch layout list",i),Z.warn("Falling back to default layout")}return e?Nn:An}),de.apply(this,arguments)}function Fn(t){var{filterSets:e,layoutConfig:r,links:n,pluginDataMap:i}=t,o={filterSets:e,layoutConfig:r,links:n,pluginDataMap:i,version:2};return o}const Un={exportLayout:Fn,getDefaultLayout:$n,normalizeLayout:st};function Qe(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(l){r(l);return}a.done?e(u):Promise.resolve(u).then(n,i)}function X(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var o=t.apply(e,r);function s(u){Qe(o,n,i,s,a,"next",u)}function a(u){Qe(o,n,i,s,a,"throw",u)}s(void 0)})}}function ut(t,e,r){return e=Kn(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Kn(t){var e=kn(t,"string");return typeof e=="symbol"?e:String(e)}function kn(t,e){if(typeof t!="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Bn=A.module("LocalWorkspaceStorage");class E{static getBooleanServerConfig(e,r){var n,i;if((e==null||(n=e.get(r))===null||n===void 0?void 0:n.toLowerCase())==="true")return!0;if((e==null||(i=e.get(r))===null||i===void 0?void 0:i.toLowerCase())==="false")return!1}static makeDefaultWorkspaceSettings(e){for(var r={defaultDateTimeFormat:Oe.DEFAULT_DATETIME_FORMAT_STRING,formatter:[],timeZone:Oe.DEFAULT_TIME_ZONE_ID,showTimeZone:!1,showTSeparator:!0,disableMoveConfirmation:!1,defaultDecimalFormatOptions:{defaultFormatString:qt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:Yt.DEFAULT_FORMAT_STRING},truncateNumbersWithPound:!1,showEmptyStrings:!0,showNullStrings:!0,defaultNotebookSettings:{isMinimapEnabled:!1},webgl:!0,webglEditable:!0,gridDensity:"regular"},n={defaultDateTimeFormat:e?.get("dateTimeFormat"),formatter:[],timeZone:e?.get("timeZone"),showTimeZone:E.getBooleanServerConfig(e,"showTimeZone"),showTSeparator:E.getBooleanServerConfig(e,"showTSeparator"),disableMoveConfirmation:E.getBooleanServerConfig(e,"disableMoveConfirmation"),defaultDecimalFormatOptions:e?.get("decimalFormat")!==void 0?{defaultFormatString:e?.get("decimalFormat")}:void 0,defaultIntegerFormatOptions:e?.get("integerFormat")!==void 0?{defaultFormatString:e?.get("integerFormat")}:void 0,truncateNumbersWithPound:E.getBooleanServerConfig(e,"truncateNumbersWithPound"),showEmptyStrings:E.getBooleanServerConfig(e,"showEmptyStrings"),showNullStrings:E.getBooleanServerConfig(e,"showNullStrings"),defaultNotebookSettings:e?.get("isMinimapEnabled")!==void 0?{isMinimapEnabled:E.getBooleanServerConfig(e,"isMinimapEnabled")}:void 0,webgl:E.getBooleanServerConfig(e,"web.webgl"),webglEditable:E.getBooleanServerConfig(e,"web.webgl.editable")},i=Object.keys(n),o=0;o<i.length;o+=1){var s=i[o];n[s]!==void 0&&(r[s]=n[s])}return r}static makeWorkspaceData(e,r){return X(function*(){var{filterSets:n,links:i,layoutConfig:o,pluginDataMap:s={}}=yield Un.getDefaultLayout(e,r?.isConsoleAvailable);return{settings:{},layoutConfig:o,closed:[{}],links:i,filterSets:n,pluginDataMap:s}})()}static makeDefaultWorkspace(e,r){return X(function*(){return{data:yield E.makeWorkspaceData(e,r)}})()}constructor(e){ut(this,"layoutStorage",void 0),this.layoutStorage=e}load(e){var r=this;return X(function*(){try{var n,i=JSON.parse((n=localStorage.getItem(E.STORAGE_KEY))!==null&&n!==void 0?n:"");return i}catch{return Bn.info("Unable to load workspace data, initializing to default data"),E.makeDefaultWorkspace(r.layoutStorage,e)}})()}save(e){return X(function*(){return localStorage.setItem(E.STORAGE_KEY,JSON.stringify(e)),e})()}}ut(E,"STORAGE_KEY","deephaven.WorkspaceStorage");export{In as $,pi as A,ti as B,Jn as C,Xr as D,Br as E,ii as F,bi as G,pr as H,zr as I,sn as J,ve as K,Zn as L,pn as M,Qn as N,li as O,ur as P,ci as Q,fi as R,Ur as S,Yn as T,Un as U,gn as V,di as W,bn as X,hi as Y,z as Z,Rn as _,kr as a,Nn as a0,An as a1,st as a2,$n as a3,Fn as a4,Xn as b,mi as c,vi as d,gi as e,ai as f,mn as g,si as h,pe as i,E as j,tt as k,ui as l,Wr as m,Vn as n,it as o,Kr as p,ei as q,Zr as r,un as s,oi as t,$r as u,Jr as v,Gr as w,ri as x,ni as y,ot as z};
2
+ //# sourceMappingURL=LocalWorkspaceStorage-9fc16a93.js.map