@deephaven/embed-widget 1.15.1 → 1.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/assets/{App-CypmLgmL.js → App-Ca5Ruy2E.js} +2 -2
- package/build/assets/{App-CypmLgmL.js.map → App-Ca5Ruy2E.js.map} +1 -1
- package/build/assets/{Chart-BsXISs8I.js → Chart-BTkEZV67.js} +2 -2
- package/build/assets/{Chart-BsXISs8I.js.map → Chart-BTkEZV67.js.map} +1 -1
- package/build/assets/{IrisGrid-CjstqkdZ.js → IrisGrid-B4lUy4sd.js} +5 -5
- package/build/assets/{IrisGrid-CjstqkdZ.js.map → IrisGrid-B4lUy4sd.js.map} +1 -1
- package/build/assets/IrisGridThemeProvider-ZZ-85ME3.js +12 -0
- package/build/assets/IrisGridThemeProvider-ZZ-85ME3.js.map +1 -0
- package/build/assets/LocalWorkspaceStorage-CAcGwSuV.js +2 -0
- package/build/assets/LocalWorkspaceStorage-CAcGwSuV.js.map +1 -0
- package/build/assets/{LogPanel-dUVSBPpo.js → LogPanel-CpZTGwJv.js} +4 -4
- package/build/assets/{LogPanel-dUVSBPpo.js.map → LogPanel-CpZTGwJv.js.map} +1 -1
- package/build/assets/{MarkdownEditor-D53YrMF9.js → MarkdownEditor-BOGDnkaM.js} +2 -2
- package/build/assets/{MarkdownEditor-D53YrMF9.js.map → MarkdownEditor-BOGDnkaM.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-BkTy95vu.js → MarkdownNotebook-Dsw8M9b9.js} +2 -2
- package/build/assets/{MarkdownNotebook-BkTy95vu.js.map → MarkdownNotebook-Dsw8M9b9.js.map} +1 -1
- package/build/assets/Plot-Xv-druQg.js +2 -0
- package/build/assets/{Plot-BmYKhm84.js.map → Plot-Xv-druQg.js.map} +1 -1
- package/build/assets/{Plotly-BTLqRIq-.js → Plotly-CJhuCDFM.js} +2 -2
- package/build/assets/{Plotly-BTLqRIq-.js.map → Plotly-CJhuCDFM.js.map} +1 -1
- package/build/assets/{index-B6BgIG1u.js → index-CaeBLWf2.js} +3 -3
- package/build/assets/{index-B6BgIG1u.js.map → index-CaeBLWf2.js.map} +1 -1
- package/build/assets/{index-DG2tw4ib.js → index-Dy719bYK.js} +4 -4
- package/build/assets/{index-DG2tw4ib.js.map → index-Dy719bYK.js.map} +1 -1
- package/build/assets/{index-DsTg7BZt.js → index-xys9qLny.js} +4 -4
- package/build/assets/{index-DsTg7BZt.js.map → index-xys9qLny.js.map} +1 -1
- package/build/assets/plotly-BJo_M7Cs.js +7 -0
- package/build/assets/{plotly-ODN7AY4u.js.map → plotly-BJo_M7Cs.js.map} +1 -1
- package/build/index.html +2 -2
- package/package.json +11 -11
- package/build/assets/IrisGridThemeProvider-Bm5JMU4l.js +0 -12
- package/build/assets/IrisGridThemeProvider-Bm5JMU4l.js.map +0 -1
- package/build/assets/LocalWorkspaceStorage-CtMRGP9F.js +0 -2
- package/build/assets/LocalWorkspaceStorage-CtMRGP9F.js.map +0 -1
- package/build/assets/Plot-BmYKhm84.js +0 -2
- package/build/assets/plotly-ODN7AY4u.js +0 -7
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{ao as oe,L as E,a as q}from"./index-CaeBLWf2.js";import{r as c,D as f,bn as ae,L as ie,G as ue,bo as se}from"./vendor-CU9m3C3n.js";import{u as le,m as P,ao as ce,bm as de,bp as _,c2 as fe,aq as ve,c3 as me,aC as pe,ay as ye,c4 as ge,az as be,aw as he,c5 as Oe,b4 as we,bw as Pe,ah as Se,aA as Ce,c6 as N,c7 as F,c8 as I,c9 as U,ak as je,aj as Ee,ai as A}from"./LogPanel-CpZTGwJv.js";import{u as De}from"./useResizeObserver-DBuxCPgF.js";function Te(t,e){var r=le(),n=c.useMemo(()=>new r.CoreClient(t,e),[r,t,e]);return c.useEffect(()=>()=>{n.disconnect()},[n]),n}var D=c.createContext(null);D.displayName="ClientContext";function pt(t){var{serverUrl:e,options:r,children:n}=t,o=Te(e,r);return f.jsx(D.Provider,{value:o,children:n})}function xe(){return P(D,"No Client available in useClient. Was code wrapped in ClientBootstrap or ClientContext.Provider?")}var Q=1e4;function yt(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q;return Le(t,n=>n.title===e,r,"Variable ".concat(e," not found"))}function Le(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"Variable not found";return new Promise((o,a)=>{var i,u=setTimeout(()=>{var l;(l=i)===null||l===void 0||l(),a(new oe("Timeout: ".concat(n)))},r);function s(l){var m,v=l.created.find(e);clearTimeout(u),(m=i)===null||m===void 0||m(),v!=null?o(v):a(new Error(n))}i=t.subscribeToFieldUpdates(s)})}function _e(t){var e=[...t.entries()].filter(r=>{var[,n]=r;return de(n)||_(n)});return e.map(r=>{var[n,o]=r;if(_(o)){var{DashboardPlugin:a}=o;return f.jsx(a,{},n)}var{component:i}=o;return f.jsx(i,{},n)})}function gt(){var t=ce(),e=c.useMemo(()=>_e(t),[t]);return e}function M(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function Ne(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?M(Object(r),!0).forEach(function(n){Fe(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):M(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Fe(t,e,r){return(e=Ie(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Ie(t){var e=Ue(t,"string");return typeof e=="symbol"?e:e+""}function Ue(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var Ae=100,C=()=>{},Me=Object.freeze({});function Ge(t){var{id:e="default",children:r,emptyDashboard:n,layoutConfig:o,layoutSettings:a=Me,onLayoutConfigChange:i=C,onGoldenLayoutChange:u=C,onLayoutInitialized:s=C,fallbackComponent:l=fe,hydrate:m,dehydrate:v,panelWrapper:b}=t,y=c.useRef(null),[re,x]=c.useState(!1),[p,S]=c.useState();c.useEffect(function(){if(!y.current){S(void 0);return}var h=Ne({},ve.makeDefaultLayout());h.settings===void 0&&(h.settings={}),Object.assign(h.settings,a),h.content=[];var g=new me(h,y.current),L=()=>{g.off("initialised",L),x(!0)};return g.on("initialised",L),l!=null&&g.setFallbackComponent(l),g.init(),S(g),u(g),()=>{g.destroy()}},[a,l,u,x,S]);var ne=c.useMemo(()=>ae(()=>{p!=null&&p.isInitialised&&(p==null||p.updateSize())},Ae),[p]);return De(y.current,ne),f.jsxs("div",{className:"dashboard-container w-100 h-100",children:[f.jsx("div",{className:"w-100 h-100",ref:y}),re&&p&&f.jsx(pe.Provider,{value:p,children:f.jsx(ye.Provider,{value:e,children:f.jsx(ge,{children:f.jsx(be,{emptyDashboard:n,id:e,layout:p,layoutConfig:o,onLayoutChange:i,onLayoutInitialized:s,hydrate:m,dehydrate:v,panelWrapper:b,children:r})})})})]})}var $e=["id","isActive","plugins"];function G(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function $(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?G(Object(r),!0).forEach(function(n){ke(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):G(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function ke(t,e,r){return(e=Be(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Be(t){var e=Re(t,"string");return typeof e=="symbol"?e:e+""}function Re(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function ze(t,e){if(t==null)return{};var r,n,o=Ke(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(n=0;n<a.length;n++)r=a[n],e.indexOf(r)===-1&&{}.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Ke(t,e){if(t==null)return{};var r={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(e.indexOf(n)!==-1)continue;r[n]=t[n]}return r}function Je(t){var{id:e,isActive:r,plugins:n}=t,o=ze(t,$e),[a,i]=c.useState(r),u=ie(),s=c.useCallback(l=>{u(e===he?Oe({layoutConfig:l}):we(e,{layoutConfig:l}))},[e,u]);return!a&&r&&i(!0),a?f.jsx(Ge,$($({id:e,onLayoutConfigChange:s},o),{},{children:n})):f.jsx(E,{"data-testid":"lazy-dashboard-loading"})}var bt=c.createContext({}),Ze=c.createContext({});Ze.displayName="UserPermissionsOverrideContext";var X=c.createContext(null);X.displayName="UserContext";var V=c.createContext(null);V.displayName="ConnectionContext";function k(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(l){return void r(l)}u.done?e(s):Promise.resolve(s).then(n,o)}function Ye(t){return function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(s){k(a,n,o,i,u,"next",s)}function u(s){k(a,n,o,i,u,"throw",s)}i(void 0)})}}var T=c.createContext(null);T.displayName="ServerConfigContext";function ht(t){var{children:e}=t,r=xe(),[n,o]=c.useState(),[a,i]=c.useState();c.useEffect(function(){var l=!1;function m(){return v.apply(this,arguments)}function v(){return v=Ye(function*(){try{var b=yield r.getServerConfigValues();l||o(new Map(b))}catch(y){l||i(y)}}),v.apply(this,arguments)}return m(),()=>{l=!0}},[r]);var u=n==null;return u||a!=null?f.jsx(E,{"data-testid":"server-config-bootstrap-loading",isLoading:u&&a==null,errorMessage:Pe(a)}):f.jsx(T.Provider,{value:n,children:e})}function Ot(){return P(T,"No server config available in useServerConfig. Was code wrapped in ServerConfigBootstrap or ServerConfigContext.Provider?")}function B(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(l){return void r(l)}u.done?e(s):Promise.resolve(s).then(n,o)}function He(t){return function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(s){B(a,n,o,i,u,"next",s)}function u(s){B(a,n,o,i,u,"throw",s)}i(void 0)})}}function R(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function z(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?R(Object(r),!0).forEach(function(n){We(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):R(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function We(t,e,r){return(e=qe(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function qe(t){var e=Qe(t,"string");return typeof e=="symbol"?e:e+""}function Qe(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function wt(t){var{dashboards:e,activeDashboard:r,onLayoutInitialized:n,onGoldenLayoutChange:o,plugins:a,emptyDashboard:i=f.jsx(E,{"data-testid":"app-dashboards-loading"})}=t,u=Se(),s=c.useCallback((l,m)=>{var{metadata:v}=l;try{if(v!=null)return z(z({fetch:function(){var b=He(function*(){return u(v)});function y(){return b.apply(this,arguments)}return y}()},l),{},{localDashboardId:m})}catch{}return Ce.hydrate(l,m)},[u]);return f.jsx("div",{className:"tab-content",children:e.map(l=>f.jsx("div",{className:ue("tab-pane",{active:l.id===r}),children:f.jsx(Je,{id:l.id,isActive:l.id===r,emptyDashboard:i,layoutConfig:l.layoutConfig,layoutSettings:l.layoutSettings,onLayoutInitialized:n,onGoldenLayoutChange:o,hydrate:s,plugins:a},l.key)},l.id))})}function Pt(){return P(V,"No IdeConnection available in useConnection. Was code wrapped in ConnectionContext.Provider?")}function St(){return P(X,"No user available in useUser. Was code wrapped in UserBootstrap or UserContext.Provider?")}function K(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(l){return void r(l)}u.done?e(s):Promise.resolve(s).then(n,o)}function J(t){return function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(s){K(a,n,o,i,u,"next",s)}function u(s){K(a,n,o,i,u,"throw",s)}i(void 0)})}}function Z(t,e,r){return(e=Xe(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Xe(t){var e=Ve(t,"string");return typeof e=="symbol"?e:e+""}function Ve(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}class Ct{constructor(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";Z(this,"storageService",void 0),Z(this,"root",void 0),this.storageService=e,this.root=r}getLayouts(){var e=this;return J(function*(){var r=yield e.storageService.listItems(e.root,"*.json");return r.map(n=>n.basename)})()}getLayout(e){var r=this;return J(function*(){var n=yield r.storageService.loadFile("".concat(r.root,"/").concat(e)),o=yield n.text();return JSON.parse(o)})()}}function et(t){return t.version===2}function tt(t){return Array.isArray(t)}function Y(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(l){return void r(l)}u.done?e(s):Promise.resolve(s).then(n,o)}function rt(t){return function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(s){Y(a,n,o,i,u,"next",s)}function u(s){Y(a,n,o,i,u,"throw",s)}i(void 0)})}}var O=q.module("UserLayoutUtils"),nt={layoutConfig:[{type:"column",content:[{type:"row",height:40,content:[{type:"stack",content:[{type:"react-component",component:N.COMPONENT,title:N.TITLE,isClosable:!1},{type:"react-component",component:F.COMPONENT,title:F.TITLE,isClosable:!1}]},{type:"stack",width:25,content:[{type:"react-component",component:I.COMPONENT,title:I.TITLE,isClosable:!1},{type:"react-component",component:U.COMPONENT,title:U.TITLE,isClosable:!1}]}]},{type:"row",content:[{type:"stack",title:"Notebooks",content:[]}]}]}],links:[],filterSets:[],version:2},ot={layoutConfig:[],links:[],filterSets:[],version:2};function ee(t){if(et(t))return t;if(tt(t)){var e=t;return{layoutConfig:e,links:[],filterSets:[],version:2}}throw new Error("Unexpected layout import format: ".concat(t))}function at(t){return j.apply(this,arguments)}function j(){return j=rt(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 ee(n)}catch(o){O.error("Unable to load layout",r[0],":",o),O.warn("No valid layouts found, falling back to default layout")}}catch(o){O.error("Unable to fetch layout list",o),O.warn("Falling back to default layout")}return e?nt:ot}),j.apply(this,arguments)}function it(t){var{filterSets:e,layoutConfig:r,links:n,pluginDataMap:o}=t,a={filterSets:e,layoutConfig:r,links:n,pluginDataMap:o,version:2};return a}const ut={exportLayout:it,getDefaultLayout:at,normalizeLayout:ee};function H(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(l){return void r(l)}u.done?e(s):Promise.resolve(s).then(n,o)}function w(t){return function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(s){H(a,n,o,i,u,"next",s)}function u(s){H(a,n,o,i,u,"throw",s)}i(void 0)})}}function te(t,e,r){return(e=st(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function st(t){var e=lt(t,"string");return typeof e=="symbol"?e:e+""}function lt(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var W=q.module("LocalWorkspaceStorage");class d{static getBooleanServerConfig(e,r){var n,o;if((e==null||(n=e.get(r))===null||n===void 0?void 0:n.toLowerCase())==="true")return!0;if((e==null||(o=e.get(r))===null||o===void 0?void 0:o.toLowerCase())==="false")return!1}static getJSONServerConfig(e,r){var n=e==null?void 0:e.get(r);if(n!=null)try{return JSON.parse(n)}catch{W.error("Unable to parse JSON server config for key ".concat(r,". Value: ").concat(n));return}}static makeDefaultWorkspaceSettings(e){var r={defaultDateTimeFormat:A.DEFAULT_DATETIME_FORMAT_STRING,formatter:[],timeZone:A.DEFAULT_TIME_ZONE_ID,showTimeZone:!1,showTSeparator:!0,disableMoveConfirmation:!1,defaultDecimalFormatOptions:{defaultFormatString:Ee.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:je.DEFAULT_FORMAT_STRING},truncateNumbersWithPound:!1,showEmptyStrings:!0,showNullStrings:!0,showExtraGroupColumn:!0,notebookSettings:{isMinimapEnabled:!1,formatOnSave:!1,python:{linter:{isEnabled:!0}}},webgl:!0,webglEditable:!0,gridDensity:"regular"},n={defaultDateTimeFormat:e==null?void 0:e.get("dateTimeFormat"),formatter:[],timeZone:e==null?void 0:e.get("timeZone"),showTimeZone:d.getBooleanServerConfig(e,"showTimeZone"),showTSeparator:d.getBooleanServerConfig(e,"showTSeparator"),disableMoveConfirmation:d.getBooleanServerConfig(e,"disableMoveConfirmation"),defaultDecimalFormatOptions:(e==null?void 0:e.get("decimalFormat"))!==void 0?{defaultFormatString:e==null?void 0:e.get("decimalFormat")}:void 0,defaultIntegerFormatOptions:(e==null?void 0:e.get("integerFormat"))!==void 0?{defaultFormatString:e==null?void 0:e.get("integerFormat")}:void 0,truncateNumbersWithPound:d.getBooleanServerConfig(e,"truncateNumbersWithPound"),showEmptyStrings:d.getBooleanServerConfig(e,"showEmptyStrings"),showNullStrings:d.getBooleanServerConfig(e,"showNullStrings"),showExtraGroupColumn:d.getBooleanServerConfig(e,"showExtraGroupColumn"),notebookSettings:{isMinimapEnabled:d.getBooleanServerConfig(e,"web.user.notebookSettings.isMinimapEnabled"),formatOnSave:d.getBooleanServerConfig(e,"web.user.notebookSettings.formatOnSave"),python:{linter:{isEnabled:d.getBooleanServerConfig(e,"web.user.notebookSettings.python.linter.isEnabled"),config:d.getJSONServerConfig(e,"web.user.notebookSettings.python.linter.config")}}},webgl:d.getBooleanServerConfig(e,"web.webgl"),webglEditable:d.getBooleanServerConfig(e,"web.webgl.editable")};return se({},r,n)}static makeWorkspaceData(e,r){return w(function*(){var{filterSets:n,links:o,layoutConfig:a,pluginDataMap:i={}}=yield ut.getDefaultLayout(e,r==null?void 0:r.isConsoleAvailable);return{settings:{},layoutConfig:a,closed:[{}],links:o,filterSets:n,pluginDataMap:i}})()}static makeDefaultWorkspace(e,r){return w(function*(){return{data:yield d.makeWorkspaceData(e,r)}})()}constructor(e){te(this,"layoutStorage",void 0),this.layoutStorage=e}load(e){var r=this;return w(function*(){try{var n,o=JSON.parse((n=localStorage.getItem(d.STORAGE_KEY))!==null&&n!==void 0?n:"");return o}catch{return W.info("Unable to load workspace data, initializing to default data"),d.makeDefaultWorkspace(r.layoutStorage,e)}})()}save(e){return w(function*(){return localStorage.setItem(d.STORAGE_KEY,JSON.stringify(e)),e})()}}te(d,"STORAGE_KEY","deephaven.WorkspaceStorage");export{wt as A,pt as C,Ge as D,Q as F,Ct as G,d as L,ht as S,Ze as U,xe as a,St as b,Ot as c,gt as d,D as e,yt as f,Le as g,Je as h,_e as i,X as j,bt as k,V as l,nt as m,ot as n,ut as o,it as p,at as q,tt as r,et as s,ee as t,Pt as u};
|
|
2
|
+
//# sourceMappingURL=LocalWorkspaceStorage-CAcGwSuV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalWorkspaceStorage-CAcGwSuV.js","sources":["../../../jsapi-bootstrap/dist/useCreateClient.js","../../../jsapi-bootstrap/dist/ClientBootstrap.js","../../../jsapi-bootstrap/dist/useClient.js","../../../jsapi-utils/dist/ConnectionUtils.js","../../../plugin/dist/useDashboardPlugins.js","../../../dashboard/dist/Dashboard.js","../../../dashboard/dist/LazyDashboard.js","../../../auth-plugins/dist/UserContexts.js","../../../app-utils/dist/components/ConnectionContext.js","../../../app-utils/dist/components/ServerConfigBootstrap.js","../../../app-utils/dist/components/useServerConfig.js","../../../app-utils/dist/components/AppDashboards.js","../../../app-utils/dist/components/useConnection.js","../../../app-utils/dist/components/useUser.js","../../../app-utils/dist/storage/grpc/GrpcLayoutStorage.js","../../../app-utils/dist/storage/LayoutStorage.js","../../../app-utils/dist/storage/UserLayoutUtils.js","../../../app-utils/dist/storage/LocalWorkspaceStorage.js"],"sourcesContent":["import { useEffect, useMemo } from 'react';\nimport useApi from \"./useApi.js\";\nexport function useCreateClient(serverUrl, options) {\n var api = useApi();\n var client = useMemo(() => new api.CoreClient(serverUrl, options), [api, serverUrl, options]);\n useEffect(() => () => {\n client.disconnect();\n }, [client]);\n return client;\n}\nexport default useCreateClient;\n//# sourceMappingURL=useCreateClient.js.map","import React, { createContext } from 'react';\nimport useCreateClient from \"./useCreateClient.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ClientContext = /*#__PURE__*/createContext(null);\nClientContext.displayName = 'ClientContext';\n/**\n * ClientBootstrap component. Handles creating the client.\n */\nexport function ClientBootstrap(_ref) {\n var {\n serverUrl,\n options,\n children\n } = _ref;\n var client = useCreateClient(serverUrl, options);\n return /*#__PURE__*/_jsx(ClientContext.Provider, {\n value: client,\n children: children\n });\n}\nexport default ClientBootstrap;\n//# sourceMappingURL=ClientBootstrap.js.map","import { useContextOrThrow } from '@deephaven/react-hooks';\nimport { ClientContext } from \"./ClientBootstrap.js\";\nexport function useClient() {\n return useContextOrThrow(ClientContext, 'No Client available in useClient. Was code wrapped in ClientBootstrap or ClientContext.Provider?');\n}\nexport default useClient;\n//# sourceMappingURL=useClient.js.map","import { TimeoutError } from '@deephaven/utils';\n\n/** Default timeout for fetching a variable definition */\nexport var FETCH_TIMEOUT = 10000;\n\n/**\n * Fetch the definition for a variable given a connection. Waits for the next\n * field update event and resolves if the variable is found in the created\n * variables.\n * @param connection Connection to get the variable from\n * @param name Name of the definition to fetch\n * @param timeout Timeout for the fetch\n * @returns Promise that resolves to the variable definition if found in the next field update,\n * or rejects if the variable is not found in that update or if the timeout is exceeded\n */\nexport function fetchVariableDefinition(connection, name) {\n var timeout = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : FETCH_TIMEOUT;\n return fetchVariableDefinitionByPredicate(connection, def => def.title === name, timeout, \"Variable \".concat(name, \" not found\"));\n}\n\n/**\n * Fetch the definition for a variable given a connection. Waits for the next\n * field update event and resolves if a variable matching the predicate is found\n * in the created variables.\n * @param connection Connection to get the variable from\n * @param predicate Predicate function to test each variable definition\n * @param timeout Timeout for the fetch\n * @param errorMessage Optional error message for timeout and not found errors\n * @returns Promise that resolves to the variable definition if found in the next field update,\n * or rejects if no matching variable is found in that update or if the timeout is exceeded\n */\nexport function fetchVariableDefinitionByPredicate(connection, predicate) {\n var timeout = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : FETCH_TIMEOUT;\n var errorMessage = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'Variable not found';\n return new Promise((resolve, reject) => {\n var removeListener;\n var timeoutId = setTimeout(() => {\n var _removeListener;\n (_removeListener = removeListener) === null || _removeListener === void 0 || _removeListener();\n reject(new TimeoutError(\"Timeout: \".concat(errorMessage)));\n }, timeout);\n\n /**\n * Checks if a variable matching the predicate is in the changes, and resolves the promise if it does\n * @param changes Variables changes that have occurred\n */\n function handleFieldUpdates(changes) {\n var _removeListener2;\n var definition = changes.created.find(predicate);\n clearTimeout(timeoutId);\n (_removeListener2 = removeListener) === null || _removeListener2 === void 0 || _removeListener2();\n if (definition != null) {\n resolve(definition);\n } else {\n reject(new Error(errorMessage));\n }\n }\n removeListener = connection.subscribeToFieldUpdates(handleFieldUpdates);\n });\n}\n//# sourceMappingURL=ConnectionUtils.js.map","import { useMemo } from 'react';\nimport { isDashboardPlugin, isLegacyDashboardPlugin } from \"./PluginTypes.js\";\nimport { usePlugins } from \"./usePlugins.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function getDashboardPlugins(plugins) {\n var dbPlugins = [...plugins.entries()].filter(_ref => {\n var [, plugin] = _ref;\n return isDashboardPlugin(plugin) || isLegacyDashboardPlugin(plugin);\n });\n return dbPlugins.map(_ref2 => {\n var [pluginName, plugin] = _ref2;\n if (isLegacyDashboardPlugin(plugin)) {\n var {\n DashboardPlugin: _DPlugin\n } = plugin;\n return /*#__PURE__*/_jsx(_DPlugin, {}, pluginName);\n }\n var {\n component: DPlugin\n } = plugin;\n return /*#__PURE__*/_jsx(DPlugin, {}, pluginName);\n });\n}\n\n/**\n * Get all DashboardPlugin elements from the plugins context\n * @returns Array of DashboardPlugin elements\n */\nexport function useDashboardPlugins() {\n var plugins = usePlugins();\n var dashboardPlugins = useMemo(() => getDashboardPlugins(plugins), [plugins]);\n return dashboardPlugins;\n}\nexport default useDashboardPlugins;\n//# sourceMappingURL=useDashboardPlugins.js.map","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport throttle from 'lodash.throttle';\nimport GoldenLayout from '@deephaven/golden-layout';\nimport { useResizeObserver } from '@deephaven/react-hooks';\nimport \"./layout/GoldenLayout.css\";\nimport LayoutUtils from \"./layout/LayoutUtils.js\";\nimport PanelPlaceholder from \"./PanelPlaceholder.js\";\nimport DashboardLayout from \"./DashboardLayout.js\";\nimport \"./Dashboard.css\";\nimport { LayoutManagerContext } from \"./layout/index.js\";\nimport { DashboardIdContext } from \"./useDashboardId.js\";\nimport { FiberProvider } from \"./useFiber.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar RESIZE_THROTTLE = 100;\nvar DEFAULT_CALLBACK = () => undefined;\nvar EMPTY_OBJECT = Object.freeze({});\nexport function Dashboard(_ref) {\n var {\n id = 'default',\n children,\n emptyDashboard,\n layoutConfig,\n layoutSettings = EMPTY_OBJECT,\n onLayoutConfigChange = DEFAULT_CALLBACK,\n onGoldenLayoutChange = DEFAULT_CALLBACK,\n onLayoutInitialized = DEFAULT_CALLBACK,\n fallbackComponent = PanelPlaceholder,\n hydrate,\n dehydrate,\n panelWrapper\n } = _ref;\n var layoutElement = useRef(null);\n var [isInitialized, setIsInitialized] = useState(false);\n var [layout, setLayout] = useState();\n useEffect(function initDashboard() {\n if (!layoutElement.current) {\n setLayout(undefined);\n return;\n }\n var config = _objectSpread({}, LayoutUtils.makeDefaultLayout());\n if (config.settings === undefined) {\n config.settings = {};\n }\n Object.assign(config.settings, layoutSettings);\n\n // Load our content later after plugins have registered\n config.content = [];\n var newLayout = new GoldenLayout(config, layoutElement.current);\n var onInit = () => {\n newLayout.off('initialised', onInit);\n setIsInitialized(true);\n };\n newLayout.on('initialised', onInit);\n if (fallbackComponent != null) {\n newLayout.setFallbackComponent(fallbackComponent);\n }\n newLayout.init();\n setLayout(newLayout);\n onGoldenLayoutChange(newLayout);\n return () => {\n newLayout.destroy();\n };\n }, [layoutSettings, fallbackComponent, onGoldenLayoutChange, setIsInitialized, setLayout]);\n var handleResize = useMemo(() => throttle(() => {\n if (layout != null && layout.isInitialised) {\n layout === null || layout === void 0 || layout.updateSize();\n }\n }, RESIZE_THROTTLE), [layout]);\n useResizeObserver(layoutElement.current, handleResize);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"dashboard-container w-100 h-100\",\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"w-100 h-100\",\n ref: layoutElement\n }), isInitialized && layout && /*#__PURE__*/_jsx(LayoutManagerContext.Provider, {\n value: layout,\n children: /*#__PURE__*/_jsx(DashboardIdContext.Provider, {\n value: id,\n children: /*#__PURE__*/_jsx(FiberProvider, {\n children: /*#__PURE__*/_jsx(DashboardLayout, {\n emptyDashboard: emptyDashboard,\n id: id,\n layout: layout,\n layoutConfig: layoutConfig,\n onLayoutChange: onLayoutConfigChange,\n onLayoutInitialized: onLayoutInitialized,\n hydrate: hydrate,\n dehydrate: dehydrate,\n panelWrapper: panelWrapper,\n children: children\n })\n })\n })\n })]\n });\n}\nexport default Dashboard;\n//# sourceMappingURL=Dashboard.js.map","var _excluded = [\"id\", \"isActive\", \"plugins\"];\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nimport React, { useCallback, useState } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { LoadingOverlay } from '@deephaven/components';\nimport { updateWorkspaceData } from '@deephaven/redux';\nimport { Dashboard } from \"./Dashboard.js\";\nimport { updateDashboardData } from \"./redux/index.js\";\nimport { DEFAULT_DASHBOARD_ID } from \"./DashboardConstants.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function LazyDashboard(_ref) {\n var {\n id,\n isActive,\n plugins\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n var [isLoaded, setIsLoaded] = useState(isActive);\n var dispatch = useDispatch();\n var handleLayoutConfigChange = useCallback(config => {\n // TODO: #1746 Call updateDashboardData for every dashboard\n // This currently allows the default dashboard to keep its layout since\n // other dashboards are not persistent yet and we read workspaceData\n // for the default dashboard layout\n if (id === DEFAULT_DASHBOARD_ID) {\n dispatch(updateWorkspaceData({\n layoutConfig: config\n }));\n } else {\n dispatch(updateDashboardData(id, {\n layoutConfig: config\n }));\n }\n }, [id, dispatch]);\n if (!isLoaded && isActive) {\n setIsLoaded(true);\n }\n if (!isLoaded) {\n return /*#__PURE__*/_jsx(LoadingOverlay, {\n \"data-testid\": \"lazy-dashboard-loading\"\n });\n }\n return /*#__PURE__*/_jsx(Dashboard, _objectSpread(_objectSpread({\n id: id,\n onLayoutConfigChange: handleLayoutConfigChange\n // eslint-disable-next-line react/jsx-props-no-spreading\n }, rest), {}, {\n children: plugins\n }));\n}\nexport default LazyDashboard;\n//# sourceMappingURL=LazyDashboard.js.map","import { createContext } from 'react';\nexport var UserOverrideContext = /*#__PURE__*/createContext({});\nexport var UserPermissionsOverrideContext = /*#__PURE__*/createContext({});\nUserPermissionsOverrideContext.displayName = 'UserPermissionsOverrideContext';\nexport var UserContext = /*#__PURE__*/createContext(null);\nUserContext.displayName = 'UserContext';\n//# sourceMappingURL=UserContexts.js.map","import { createContext } from 'react';\nexport var ConnectionContext = /*#__PURE__*/createContext(null);\nConnectionContext.displayName = 'ConnectionContext';\nexport default ConnectionContext;\n//# sourceMappingURL=ConnectionContext.js.map","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport React, { createContext, useEffect, useState } from 'react';\nimport { LoadingOverlay } from '@deephaven/components';\nimport { useClient } from '@deephaven/jsapi-bootstrap';\nimport { getErrorMessage } from '@deephaven/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ServerConfigContext = /*#__PURE__*/createContext(null);\nServerConfigContext.displayName = 'ServerConfigContext';\n/**\n * ServerConfigBootstrap component. Handles loading the server config.\n */\nexport function ServerConfigBootstrap(_ref) {\n var {\n children\n } = _ref;\n var client = useClient();\n var [serverConfig, setServerConfig] = useState();\n var [error, setError] = useState();\n useEffect(function initServerConfigValues() {\n var isCanceled = false;\n function loadServerConfigValues() {\n return _loadServerConfigValues.apply(this, arguments);\n }\n function _loadServerConfigValues() {\n _loadServerConfigValues = _asyncToGenerator(function* () {\n try {\n var newServerConfigValues = yield client.getServerConfigValues();\n if (!isCanceled) {\n setServerConfig(new Map(newServerConfigValues));\n }\n } catch (e) {\n if (!isCanceled) {\n setError(e);\n }\n }\n });\n return _loadServerConfigValues.apply(this, arguments);\n }\n loadServerConfigValues();\n return () => {\n isCanceled = true;\n };\n }, [client]);\n var isLoading = serverConfig == null;\n if (isLoading || error != null) {\n return /*#__PURE__*/_jsx(LoadingOverlay, {\n \"data-testid\": \"server-config-bootstrap-loading\",\n isLoading: isLoading && error == null,\n errorMessage: getErrorMessage(error)\n });\n }\n return /*#__PURE__*/_jsx(ServerConfigContext.Provider, {\n value: serverConfig,\n children: children\n });\n}\nexport default ServerConfigBootstrap;\n//# sourceMappingURL=ServerConfigBootstrap.js.map","import { useContextOrThrow } from '@deephaven/react-hooks';\nimport { ServerConfigContext } from \"./ServerConfigBootstrap.js\";\nexport function useServerConfig() {\n return useContextOrThrow(ServerConfigContext, 'No server config available in useServerConfig. Was code wrapped in ServerConfigBootstrap or ServerConfigContext.Provider?');\n}\nexport default useServerConfig;\n//# sourceMappingURL=useServerConfig.js.map","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { useCallback } from 'react';\nimport classNames from 'classnames';\nimport { DashboardUtils, LazyDashboard } from '@deephaven/dashboard';\nimport { useObjectFetcher } from '@deephaven/jsapi-bootstrap';\nimport { LoadingOverlay } from '@deephaven/components';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function AppDashboards(_ref) {\n var {\n dashboards,\n activeDashboard,\n onLayoutInitialized,\n onGoldenLayoutChange,\n plugins,\n emptyDashboard = /*#__PURE__*/_jsx(LoadingOverlay, {\n \"data-testid\": \"app-dashboards-loading\"\n })\n } = _ref;\n var fetchObject = useObjectFetcher();\n var hydratePanel = useCallback((hydrateProps, id) => {\n var {\n metadata\n } = hydrateProps;\n try {\n if (metadata != null) {\n return _objectSpread(_objectSpread({\n fetch: function () {\n var _fetch = _asyncToGenerator(function* () {\n return fetchObject(metadata);\n });\n function fetch() {\n return _fetch.apply(this, arguments);\n }\n return fetch;\n }()\n }, hydrateProps), {}, {\n localDashboardId: id\n });\n }\n } catch (e) {\n // Ignore being unable to get the variable descriptor, do the default dashboard hydration\n }\n return DashboardUtils.hydrate(hydrateProps, id);\n }, [fetchObject]);\n return /*#__PURE__*/_jsx(\"div\", {\n className: \"tab-content\",\n children: dashboards.map(d => /*#__PURE__*/_jsx(\"div\", {\n className: classNames('tab-pane', {\n active: d.id === activeDashboard\n }),\n children: /*#__PURE__*/_jsx(LazyDashboard, {\n id: d.id,\n isActive: d.id === activeDashboard,\n emptyDashboard: emptyDashboard,\n layoutConfig: d.layoutConfig,\n layoutSettings: d.layoutSettings,\n onLayoutInitialized: onLayoutInitialized,\n onGoldenLayoutChange: onGoldenLayoutChange,\n hydrate: hydratePanel,\n plugins: plugins\n }, d.key)\n }, d.id))\n });\n}\nexport default AppDashboards;\n//# sourceMappingURL=AppDashboards.js.map","import { useContextOrThrow } from '@deephaven/react-hooks';\nimport { ConnectionContext } from \"./ConnectionContext.js\";\n/**\n * Retrieve the connection for the current context.\n *\n * @returns Connection for the current context\n */\nexport function useConnection() {\n return useContextOrThrow(ConnectionContext, 'No IdeConnection available in useConnection. Was code wrapped in ConnectionContext.Provider?');\n}\nexport default useConnection;\n//# sourceMappingURL=useConnection.js.map","import { useContextOrThrow } from '@deephaven/react-hooks';\nimport { UserContext } from '@deephaven/auth-plugins';\nexport function useUser() {\n return useContextOrThrow(UserContext, 'No user available in useUser. Was code wrapped in UserBootstrap or UserContext.Provider?');\n}\nexport default useUser;\n//# sourceMappingURL=useUser.js.map","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nexport class GrpcLayoutStorage {\n /**\n *\n * @param storageService The gRPC storage service to use\n * @param root The root path where the layouts are stored\n */\n constructor(storageService) {\n var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n _defineProperty(this, \"storageService\", void 0);\n _defineProperty(this, \"root\", void 0);\n this.storageService = storageService;\n this.root = root;\n }\n getLayouts() {\n var _this = this;\n return _asyncToGenerator(function* () {\n var files = yield _this.storageService.listItems(_this.root, '*.json');\n return files.map(file => file.basename);\n })();\n }\n getLayout(name) {\n var _this2 = this;\n return _asyncToGenerator(function* () {\n var fileContents = yield _this2.storageService.loadFile(\"\".concat(_this2.root, \"/\").concat(name));\n var content = yield fileContents.text();\n return JSON.parse(content);\n })();\n }\n}\nexport default GrpcLayoutStorage;\n//# sourceMappingURL=GrpcLayoutStorage.js.map","/**\n * Have a different version to support legacy layout exports\n */\n\nexport function isLayoutV2(layout) {\n return layout.version === 2;\n}\nexport function isLayoutV1(layout) {\n return Array.isArray(layout);\n}\n\n/**\n * Interface for accessing layouts from wherever they are stored.\n */\n//# sourceMappingURL=LayoutStorage.js.map","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { CommandHistoryPanel, ConsolePanel, FileExplorerPanel, LogPanel } from '@deephaven/dashboard-core-plugins';\nimport Log from '@deephaven/log';\nimport { isLayoutV1, isLayoutV2 } from \"./LayoutStorage.js\";\nvar log = Log.module('UserLayoutUtils');\nexport var DEFAULT_LAYOUT_CONFIG = {\n layoutConfig: [{\n type: 'column',\n content: [{\n type: 'row',\n height: 40,\n // slightly smaller than 50-50 to allow more space for tables below\n content: [{\n type: 'stack',\n content: [{\n type: 'react-component',\n component: ConsolePanel.COMPONENT,\n title: ConsolePanel.TITLE,\n isClosable: false\n }, {\n type: 'react-component',\n component: LogPanel.COMPONENT,\n title: LogPanel.TITLE,\n isClosable: false\n }]\n }, {\n type: 'stack',\n width: 25,\n content: [{\n type: 'react-component',\n component: CommandHistoryPanel.COMPONENT,\n title: CommandHistoryPanel.TITLE,\n isClosable: false\n }, {\n type: 'react-component',\n component: FileExplorerPanel.COMPONENT,\n title: FileExplorerPanel.TITLE,\n isClosable: false\n }]\n }]\n }, {\n type: 'row',\n content: [{\n type: 'stack',\n title: 'Notebooks',\n content: []\n }]\n }]\n }],\n links: [],\n filterSets: [],\n version: 2\n};\nexport var DEFAULT_LAYOUT_CONFIG_NO_CONSOLE = {\n layoutConfig: [],\n links: [],\n filterSets: [],\n version: 2\n};\nexport function normalizeLayout(layout) {\n if (isLayoutV2(layout)) {\n return layout;\n }\n if (isLayoutV1(layout)) {\n var layoutConfig = layout;\n return {\n layoutConfig,\n links: [],\n filterSets: [],\n version: 2\n };\n }\n throw new Error(\"Unexpected layout import format: \".concat(layout));\n}\n\n/**\n * Get the default layout for the user to use. Checks layout storage for any layouts, and uses the first one if found.\n * @param layoutStorage The layout storage to get the default layouts from\n * @param isConsoleAvailable Whether console sessions are available.\n * @returns The default layout config to use\n */\nexport function getDefaultLayout(_x) {\n return _getDefaultLayout.apply(this, arguments);\n}\nfunction _getDefaultLayout() {\n _getDefaultLayout = _asyncToGenerator(function* (layoutStorage) {\n var isConsoleAvailable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n try {\n var layouts = yield layoutStorage.getLayouts();\n if (layouts.length > 0) {\n try {\n // We found a layout on the server, use it. It could be an empty layout if they want user to build their own\n var layout = yield layoutStorage.getLayout(layouts[0]);\n return normalizeLayout(layout);\n } catch (err) {\n log.error('Unable to load layout', layouts[0], ':', err);\n log.warn('No valid layouts found, falling back to default layout');\n }\n }\n } catch (err) {\n log.error('Unable to fetch layout list', err);\n log.warn('Falling back to default layout');\n }\n // Otherwise, do the default layout\n return isConsoleAvailable ? DEFAULT_LAYOUT_CONFIG : DEFAULT_LAYOUT_CONFIG_NO_CONSOLE;\n });\n return _getDefaultLayout.apply(this, arguments);\n}\nexport function exportLayout(data) {\n var {\n filterSets,\n layoutConfig,\n links,\n pluginDataMap\n } = data;\n var exportedLayout = {\n filterSets,\n layoutConfig,\n links,\n pluginDataMap,\n version: 2\n };\n return exportedLayout;\n}\nexport default {\n exportLayout,\n getDefaultLayout,\n normalizeLayout\n};\n//# sourceMappingURL=UserLayoutUtils.js.map","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport Log from '@deephaven/log';\nimport { DateTimeColumnFormatter, DecimalColumnFormatter, IntegerColumnFormatter } from '@deephaven/jsapi-utils';\nimport merge from 'lodash.merge';\nimport UserLayoutUtils from \"./UserLayoutUtils.js\";\nvar log = Log.module('LocalWorkspaceStorage');\n\n/**\n * Implementation of WorkspaceStorage that just stores the workspace data in localStorage\n */\nexport class LocalWorkspaceStorage {\n static getBooleanServerConfig(serverConfigValues, key) {\n var _serverConfigValues$g, _serverConfigValues$g2;\n if ((serverConfigValues === null || serverConfigValues === void 0 || (_serverConfigValues$g = serverConfigValues.get(key)) === null || _serverConfigValues$g === void 0 ? void 0 : _serverConfigValues$g.toLowerCase()) === 'true') {\n return true;\n }\n if ((serverConfigValues === null || serverConfigValues === void 0 || (_serverConfigValues$g2 = serverConfigValues.get(key)) === null || _serverConfigValues$g2 === void 0 ? void 0 : _serverConfigValues$g2.toLowerCase()) === 'false') {\n return false;\n }\n return undefined;\n }\n static getJSONServerConfig(serverConfigValues, key) {\n var value = serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get(key);\n if (value == null) {\n return undefined;\n }\n try {\n return JSON.parse(value);\n } catch (e) {\n log.error(\"Unable to parse JSON server config for key \".concat(key, \". Value: \").concat(value));\n return undefined;\n }\n }\n static makeDefaultWorkspaceSettings(serverConfigValues) {\n var settings = {\n defaultDateTimeFormat: DateTimeColumnFormatter.DEFAULT_DATETIME_FORMAT_STRING,\n formatter: [],\n timeZone: DateTimeColumnFormatter.DEFAULT_TIME_ZONE_ID,\n showTimeZone: false,\n showTSeparator: true,\n disableMoveConfirmation: false,\n defaultDecimalFormatOptions: {\n defaultFormatString: DecimalColumnFormatter.DEFAULT_FORMAT_STRING\n },\n defaultIntegerFormatOptions: {\n defaultFormatString: IntegerColumnFormatter.DEFAULT_FORMAT_STRING\n },\n truncateNumbersWithPound: false,\n showEmptyStrings: true,\n showNullStrings: true,\n showExtraGroupColumn: true,\n notebookSettings: {\n isMinimapEnabled: false,\n formatOnSave: false,\n python: {\n linter: {\n isEnabled: true\n // Omit default config so default settings are used if the user never changes them\n }\n }\n },\n webgl: true,\n webglEditable: true,\n gridDensity: 'regular'\n };\n var serverSettings = {\n defaultDateTimeFormat: serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get('dateTimeFormat'),\n formatter: [],\n timeZone: serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get('timeZone'),\n showTimeZone: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'showTimeZone'),\n showTSeparator: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'showTSeparator'),\n disableMoveConfirmation: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'disableMoveConfirmation'),\n defaultDecimalFormatOptions: (serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get('decimalFormat')) !== undefined ? {\n defaultFormatString: serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get('decimalFormat')\n } : undefined,\n defaultIntegerFormatOptions: (serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get('integerFormat')) !== undefined ? {\n defaultFormatString: serverConfigValues === null || serverConfigValues === void 0 ? void 0 : serverConfigValues.get('integerFormat')\n } : undefined,\n truncateNumbersWithPound: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'truncateNumbersWithPound'),\n showEmptyStrings: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'showEmptyStrings'),\n showNullStrings: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'showNullStrings'),\n showExtraGroupColumn: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'showExtraGroupColumn'),\n notebookSettings: {\n isMinimapEnabled: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'web.user.notebookSettings.isMinimapEnabled'),\n formatOnSave: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'web.user.notebookSettings.formatOnSave'),\n python: {\n linter: {\n isEnabled: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'web.user.notebookSettings.python.linter.isEnabled'),\n config: LocalWorkspaceStorage.getJSONServerConfig(serverConfigValues, 'web.user.notebookSettings.python.linter.config')\n }\n }\n },\n webgl: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'web.webgl'),\n webglEditable: LocalWorkspaceStorage.getBooleanServerConfig(serverConfigValues, 'web.webgl.editable')\n };\n return merge({}, settings, serverSettings);\n }\n static makeWorkspaceData(layoutStorage, options) {\n return _asyncToGenerator(function* () {\n var {\n filterSets,\n links,\n layoutConfig,\n pluginDataMap = {}\n } = yield UserLayoutUtils.getDefaultLayout(layoutStorage, options === null || options === void 0 ? void 0 : options.isConsoleAvailable);\n return {\n settings: {},\n layoutConfig,\n closed: [{}],\n links,\n filterSets,\n pluginDataMap\n };\n })();\n }\n static makeDefaultWorkspace(layoutStorage, options) {\n return _asyncToGenerator(function* () {\n return {\n data: yield LocalWorkspaceStorage.makeWorkspaceData(layoutStorage, options)\n };\n })();\n }\n constructor(layoutStorage) {\n _defineProperty(this, \"layoutStorage\", void 0);\n this.layoutStorage = layoutStorage;\n }\n\n // eslint-disable-next-line class-methods-use-this\n load(options) {\n var _this = this;\n return _asyncToGenerator(function* () {\n try {\n var _localStorage$getItem;\n var workspace = JSON.parse((_localStorage$getItem = localStorage.getItem(LocalWorkspaceStorage.STORAGE_KEY)) !== null && _localStorage$getItem !== void 0 ? _localStorage$getItem : '');\n return workspace;\n } catch (e) {\n log.info('Unable to load workspace data, initializing to default data');\n return LocalWorkspaceStorage.makeDefaultWorkspace(_this.layoutStorage, options);\n }\n })();\n }\n\n // eslint-disable-next-line class-methods-use-this\n save(workspace) {\n return _asyncToGenerator(function* () {\n localStorage.setItem(LocalWorkspaceStorage.STORAGE_KEY, JSON.stringify(workspace));\n return workspace;\n })();\n }\n}\n_defineProperty(LocalWorkspaceStorage, \"STORAGE_KEY\", 'deephaven.WorkspaceStorage');\nexport default LocalWorkspaceStorage;\n//# sourceMappingURL=LocalWorkspaceStorage.js.map"],"names":["useCreateClient","serverUrl","options","api","useApi","client","useMemo","useEffect","ClientContext","createContext","ClientBootstrap","_ref","children","_jsx","useClient","useContextOrThrow","FETCH_TIMEOUT","fetchVariableDefinition","connection","name","timeout","fetchVariableDefinitionByPredicate","def","predicate","errorMessage","resolve","reject","removeListener","timeoutId","_removeListener","TimeoutError","handleFieldUpdates","changes","_removeListener2","definition","getDashboardPlugins","plugins","dbPlugins","plugin","isDashboardPlugin","isLegacyDashboardPlugin","_ref2","pluginName","_DPlugin","DPlugin","useDashboardPlugins","usePlugins","dashboardPlugins","ownKeys","e","r","t","o","_objectSpread","_defineProperty","_toPropertyKey","i","_toPrimitive","RESIZE_THROTTLE","DEFAULT_CALLBACK","EMPTY_OBJECT","Dashboard","id","emptyDashboard","layoutConfig","layoutSettings","onLayoutConfigChange","onGoldenLayoutChange","onLayoutInitialized","fallbackComponent","PanelPlaceholder","hydrate","dehydrate","panelWrapper","layoutElement","useRef","isInitialized","setIsInitialized","useState","layout","setLayout","config","LayoutUtils","newLayout","GoldenLayout","onInit","handleResize","throttle","useResizeObserver","_jsxs","LayoutManagerContext","DashboardIdContext","FiberProvider","DashboardLayout","_excluded","_objectWithoutProperties","_objectWithoutPropertiesLoose","n","LazyDashboard","isActive","rest","isLoaded","setIsLoaded","dispatch","useDispatch","handleLayoutConfigChange","useCallback","DEFAULT_DASHBOARD_ID","updateWorkspaceData","updateDashboardData","LoadingOverlay","UserOverrideContext","UserPermissionsOverrideContext","UserContext","ConnectionContext","asyncGeneratorStep","c","u","_asyncToGenerator","_next","_throw","ServerConfigContext","ServerConfigBootstrap","serverConfig","setServerConfig","error","setError","isCanceled","loadServerConfigValues","_loadServerConfigValues","newServerConfigValues","isLoading","getErrorMessage","useServerConfig","AppDashboards","dashboards","activeDashboard","fetchObject","useObjectFetcher","hydratePanel","hydrateProps","metadata","_fetch","fetch","DashboardUtils","d","classNames","useConnection","useUser","GrpcLayoutStorage","storageService","root","_this","files","file","_this2","fileContents","content","isLayoutV2","isLayoutV1","log","Log","DEFAULT_LAYOUT_CONFIG","ConsolePanel","LogPanel","CommandHistoryPanel","FileExplorerPanel","DEFAULT_LAYOUT_CONFIG_NO_CONSOLE","normalizeLayout","getDefaultLayout","_x","_getDefaultLayout","layoutStorage","isConsoleAvailable","layouts","err","exportLayout","data","filterSets","links","pluginDataMap","exportedLayout","UserLayoutUtils","LocalWorkspaceStorage","serverConfigValues","key","_serverConfigValues$g","_serverConfigValues$g2","value","settings","DateTimeColumnFormatter","DecimalColumnFormatter","IntegerColumnFormatter","serverSettings","merge","_localStorage$getItem","workspace"],"mappings":"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"}
|