@deephaven/embed-chart 0.63.1-beta.0 → 0.63.1-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/assets/{App-bad6ff1d.js → App-97f1a86a.js} +2 -2
- package/build/assets/{App-bad6ff1d.js.map → App-97f1a86a.js.map} +1 -1
- package/build/assets/{MarkdownEditor-1189087a.js → MarkdownEditor-ee03aae2.js} +2 -2
- package/build/assets/{MarkdownEditor-1189087a.js.map → MarkdownEditor-ee03aae2.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-8cf19841.js → MarkdownNotebook-ea84ecb0.js} +2 -2
- package/build/assets/{MarkdownNotebook-8cf19841.js.map → MarkdownNotebook-ea84ecb0.js.map} +1 -1
- package/build/assets/{index-6978abd7.js → index-9f7f2001.js} +2 -2
- package/build/assets/{index-6978abd7.js.map → index-9f7f2001.js.map} +1 -1
- package/build/assets/{index-d581ef73.js → index-e435f5c9.js} +22 -22
- package/build/assets/index-e435f5c9.js.map +1 -0
- package/build/assets/{index-5f163839.css → index-fdfd3d2c.css} +1 -1
- package/build/assets/{useConnection-f4bfb218.js → useConnection-9a2eabe6.js} +3 -3
- package/build/assets/useConnection-9a2eabe6.js.map +1 -0
- package/build/index.html +2 -2
- package/package.json +14 -14
- package/build/assets/index-d581ef73.js.map +0 -1
- package/build/assets/useConnection-f4bfb218.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as o,C as r}from"./vendor-16bda9b1.js";import{L as C,a as b}from"./index-
|
|
2
|
-
//# sourceMappingURL=App-
|
|
1
|
+
import{r as o,C as r}from"./vendor-16bda9b1.js";import{L as C,a as b}from"./index-9f7f2001.js";import{u as w,a as y,b as L,C as A,c as E,d as M}from"./useConnection-9a2eabe6.js";import"./helpers-de833af9.js";import"./plotly-e9150c9a.js";const t=C.module("EmbedChart.App");async function j(a,n,s){t.info(`Fetching figure ${s}...`);const i={name:s,type:a.VariableType.FIGURE};return n.getObject(i)}function $(){const[a,n]=o.useState(),[s,i]=o.useState(),[m,g]=o.useState(!0),d=o.useMemo(()=>new URLSearchParams(window.location.search),[]),l=w(),c=y(),p=L();o.useEffect(function(){async function f(){try{const e=d.get("name");if(e==null)throw new Error("No name param provided");t.debug("Loading figure",e,"...");const h=await j(c,l,e);t.debug("Creating model...");const x=await M.makeModel(c,void 0,h,p);n(x),t.debug("Figure successfully loaded!")}catch(e){t.error("Unable to load figure",e),i(`${e}`)}g(!1)}f()},[c,l,d,p]);const u=a!=null;return r.jsxs("div",{className:"App",children:[u&&r.jsx(A,{model:a}),!u&&r.jsx(b,{isLoaded:u,isLoading:m,errorMessage:s??null}),r.jsx(E,{})]})}export{$ as default};
|
|
2
|
+
//# sourceMappingURL=App-97f1a86a.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App-
|
|
1
|
+
{"version":3,"file":"App-97f1a86a.js","sources":["../../src/App.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport { useConnection } from '@deephaven/app-utils';\nimport {\n Chart,\n ChartModel,\n ChartModelFactory,\n useChartTheme,\n} from '@deephaven/chart'; // chart is used to display Deephaven charts\nimport { ContextMenuRoot, LoadingOverlay } from '@deephaven/components'; // Use the loading spinner from the Deephaven components package\nimport type {\n dh as DhType,\n Figure,\n IdeConnection,\n} from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport './App.scss'; // Styles for in this app\nimport { useApi } from '@deephaven/jsapi-bootstrap';\n\nconst log = Log.module('EmbedChart.App');\n\n/**\n * Load an existing Deephaven figure with the connection provided\n * @param dh JSAPI instance\n * @param connection The Deephaven session object\n * @param name Name of the figure to load\n * @returns Deephaven figure\n */\nasync function loadFigure(\n dh: DhType,\n connection: IdeConnection,\n name: string\n): Promise<Figure> {\n log.info(`Fetching figure ${name}...`);\n\n const descriptor = { name, type: dh.VariableType.FIGURE };\n return connection.getObject(descriptor);\n}\n\n/**\n * A functional React component that displays a Deephaven figure using the @deephaven/chart package.\n * It will attempt to open and display the figure specified with the `name` parameter, expecting it to be present on the server.\n * E.g. http://localhost:3000/?name=myFigure will attempt to open a figure `myFigure`\n * If no query param is provided, it will display an error.\n * By default, tries to connect to the server defined in the VITE_CORE_API_URL variable, which is set to http://localhost:10000/jsapi\n * See Vite docs for how to update these env vars: https://vitejs.dev/guide/env-and-mode.html\n */\nfunction App(): JSX.Element {\n const [model, setModel] = useState<ChartModel>();\n const [error, setError] = useState<string>();\n const [isLoading, setIsLoading] = useState(true);\n const searchParams = useMemo(\n () => new URLSearchParams(window.location.search),\n []\n );\n const connection = useConnection();\n const dh = useApi();\n const chartTheme = useChartTheme();\n\n useEffect(\n function initializeApp() {\n async function initApp(): Promise<void> {\n try {\n // Get the table name from the query param `name`.\n const name = searchParams.get('name');\n\n if (name == null) {\n throw new Error('No name param provided');\n }\n\n log.debug('Loading figure', name, '...');\n\n // Load the figure up.\n const figure = await loadFigure(dh, connection, name);\n\n // Create the `ChartModel` for use with the `Chart` component\n log.debug(`Creating model...`);\n\n const newModel = await ChartModelFactory.makeModel(\n dh,\n undefined,\n figure,\n chartTheme\n );\n\n setModel(newModel);\n\n log.debug('Figure successfully loaded!');\n } catch (e: unknown) {\n log.error('Unable to load figure', e);\n setError(`${e}`);\n }\n setIsLoading(false);\n }\n initApp();\n },\n [dh, connection, searchParams, chartTheme]\n );\n\n const isLoaded = model != null;\n\n return (\n <div className=\"App\">\n {isLoaded && <Chart model={model} />}\n {!isLoaded && (\n <LoadingOverlay\n isLoaded={isLoaded}\n isLoading={isLoading}\n errorMessage={error ?? null}\n />\n )}\n <ContextMenuRoot />\n </div>\n );\n}\n\nexport default App;\n"],"names":["log","Log","loadFigure","dh","connection","name","descriptor","App","model","setModel","useState","error","setError","isLoading","setIsLoading","searchParams","useMemo","useConnection","useApi","chartTheme","useChartTheme","useEffect","initApp","figure","newModel","ChartModelFactory","isLoaded","jsxs","jsx","Chart","LoadingOverlay","ContextMenuRoot"],"mappings":"6OAkBA,MAAMA,EAAMC,EAAI,OAAO,gBAAgB,EASvC,eAAeC,EACbC,EACAC,EACAC,EACiB,CACbL,EAAA,KAAK,mBAAmBK,CAAI,KAAK,EAErC,MAAMC,EAAa,CAAE,KAAAD,EAAM,KAAMF,EAAG,aAAa,QAC1C,OAAAC,EAAW,UAAUE,CAAU,CACxC,CAUA,SAASC,GAAmB,CAC1B,KAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAqB,SAAA,EACzC,CAACC,EAAOC,CAAQ,EAAIF,EAAiB,SAAA,EACrC,CAACG,EAAWC,CAAY,EAAIJ,WAAS,EAAI,EACzCK,EAAeC,EAAA,QACnB,IAAM,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAChD,CAAC,CAAA,EAEGZ,EAAaa,IACbd,EAAKe,IACLC,EAAaC,IAEnBC,EAAA,UACE,UAAyB,CACvB,eAAeC,GAAyB,CAClC,GAAA,CAEI,MAAAjB,EAAOU,EAAa,IAAI,MAAM,EAEpC,GAAIV,GAAQ,KACJ,MAAA,IAAI,MAAM,wBAAwB,EAGtCL,EAAA,MAAM,iBAAkBK,EAAM,KAAK,EAGvC,MAAMkB,EAAS,MAAMrB,EAAWC,EAAIC,EAAYC,CAAI,EAGpDL,EAAI,MAAM,mBAAmB,EAEvB,MAAAwB,EAAW,MAAMC,EAAkB,UACvCtB,EACA,OACAoB,EACAJ,CAAA,EAGFV,EAASe,CAAQ,EAEjBxB,EAAI,MAAM,6BAA6B,QAChC,EAAY,CACfA,EAAA,MAAM,wBAAyB,CAAC,EAC3BY,EAAA,GAAG,CAAC,EAAE,CACjB,CACAE,EAAa,EAAK,CACpB,CACQQ,GACV,EACA,CAACnB,EAAIC,EAAYW,EAAcI,CAAU,CAAA,EAG3C,MAAMO,EAAWlB,GAAS,KAGxB,OAAAmB,EAAA,KAAC,MAAI,CAAA,UAAU,MACZ,SAAA,CAAYD,GAAAE,EAAA,IAACC,GAAM,MAAArB,CAAc,CAAA,EACjC,CAACkB,GACAE,EAAA,IAACE,EAAA,CACC,SAAAJ,EACA,UAAAb,EACA,aAAcF,GAAS,IAAA,CACzB,QAEDoB,EAAgB,EAAA,CACnB,CAAA,CAAA,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as s,C as i,a$ as l,b0 as d,b1 as u,G as m}from"./vendor-16bda9b1.js";import{E as c,C as f}from"./index-
|
|
2
|
-
//# sourceMappingURL=MarkdownEditor-
|
|
1
|
+
import{r as s,C as i,a$ as l,b0 as d,b1 as u,G as m}from"./vendor-16bda9b1.js";import{E as c,C as f}from"./index-e435f5c9.js";import"./helpers-de833af9.js";import"./index-9f7f2001.js";import"./useConnection-9a2eabe6.js";import"./plotly-e9150c9a.js";function o(e,r,t){return r=p(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function p(e){var r=g(e,"string");return typeof r=="symbol"?r:String(r)}function g(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}var v=e=>{var{children:r,className:t}=e,n=t!=null&&t!==void 0&&t.startsWith("language-")?t.substring(9):"plaintext";return i.jsx("pre",{children:i.jsx("code",{children:i.jsx(f,{language:n,children:m.Children.map(r,a=>typeof a=="string"?a.trim():a)})})})};class h extends s.PureComponent{constructor(r){super(r),o(this,"container",void 0),this.container=null}render(){var{isEditing:r,content:t,onEditorInitialized:n}=this.props;return i.jsx("div",{className:"markdown-editor-container",ref:a=>{this.container=a},children:r?i.jsx(c,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:n}):i.jsx(l,{components:{code:v},remarkPlugins:[d],rehypePlugins:[u],children:t})})}}o(h,"defaultProps",{isEditing:!1,content:""});export{h as default};
|
|
2
|
+
//# sourceMappingURL=MarkdownEditor-ee03aae2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarkdownEditor-
|
|
1
|
+
{"version":3,"file":"MarkdownEditor-ee03aae2.js","sources":["../../../dashboard-core-plugins/dist/controls/markdown/MarkdownEditor.js"],"sourcesContent":["function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport React, { PureComponent } from 'react';\nimport Markdown from 'react-markdown';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Code, Editor } from '@deephaven/console';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar renderMarkdown = props => {\n var {\n children,\n className\n } = props;\n var language = className !== undefined && className !== null && className !== void 0 && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n return /*#__PURE__*/_jsx(\"pre\", {\n children: /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })\n });\n};\nexport default class MarkdownEditor extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"container\", void 0);\n this.container = null;\n }\n render() {\n var {\n isEditing,\n content,\n onEditorInitialized\n } = this.props;\n return /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-editor-container\",\n ref: container => {\n this.container = container;\n },\n children: isEditing ? /*#__PURE__*/_jsx(Editor, {\n settings: {\n language: 'markdown',\n value: content,\n lineNumbers: 'off'\n },\n onEditorInitialized: onEditorInitialized\n }) : /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: renderMarkdown\n },\n remarkPlugins: [remarkMath],\n rehypePlugins: [rehypeMathjax],\n children: content\n })\n });\n }\n}\n_defineProperty(MarkdownEditor, \"defaultProps\", {\n isEditing: false,\n content: ''\n});\n//# sourceMappingURL=MarkdownEditor.js.map"],"names":["_defineProperty","obj","key","value","_toPropertyKey","arg","_toPrimitive","input","hint","prim","res","renderMarkdown","props","children","className","language","_jsx","Code","React","child","MarkdownEditor","PureComponent","isEditing","content","onEditorInitialized","container","Editor","Markdown","remarkMath","rehypeMathjax"],"mappings":"yPAAA,SAASA,EAAgBC,EAAKC,EAAKC,EAAO,CAAE,OAAAD,EAAME,EAAeF,CAAG,EAAOA,KAAOD,EAAO,OAAO,eAAeA,EAAKC,EAAK,CAAE,MAAOC,EAAO,WAAY,GAAM,aAAc,GAAM,SAAU,EAAM,CAAA,EAAYF,EAAIC,CAAG,EAAIC,EAAgBF,CAAM,CAC5O,SAASG,EAAeC,EAAK,CAAE,IAAIH,EAAMI,EAAaD,EAAK,QAAQ,EAAG,OAAO,OAAOH,GAAQ,SAAWA,EAAM,OAAOA,CAAG,CAAI,CAC3H,SAASI,EAAaC,EAAOC,EAAM,CAAE,GAAI,OAAOD,GAAU,UAAYA,IAAU,KAAM,OAAOA,EAAO,IAAIE,EAAOF,EAAM,OAAO,WAAW,EAAG,GAAIE,IAAS,OAAW,CAAE,IAAIC,EAAMD,EAAK,KAAKF,EAAOC,GAAQ,SAAS,EAAG,GAAI,OAAOE,GAAQ,SAAU,OAAOA,EAAK,MAAM,IAAI,UAAU,8CAA8C,CAAI,CAAC,OAAQF,IAAS,SAAW,OAAS,QAAQD,CAAK,CAAI,CAOzX,IAAII,EAAiBC,GAAS,CAC5B,GAAI,CACF,SAAAC,EACA,UAAAC,CACD,EAAGF,EACAG,EAAsCD,GAAc,MAAQA,IAAc,QAAUA,EAAU,WAAW,WAAW,EAAIA,EAAU,UAAU,CAAC,EAAI,YACrJ,OAAoBE,EAAAA,IAAK,MAAO,CAC9B,SAAuBA,EAAI,IAAC,OAAQ,CAClC,SAAuBA,EAAI,IAACC,EAAM,CAChC,SAAUF,EACV,SAAUG,EAAM,SAAS,IAAIL,EAAUM,GAAS,OAAOA,GAAU,SAAWA,EAAM,KAAI,EAAKA,CAAK,CACxG,CAAO,CACP,CAAK,CACL,CAAG,CACH,EACe,MAAMC,UAAuBC,EAAAA,aAAc,CACxD,YAAYT,EAAO,CACjB,MAAMA,CAAK,EACXZ,EAAgB,KAAM,YAAa,MAAM,EACzC,KAAK,UAAY,IAClB,CACD,QAAS,CACP,GAAI,CACF,UAAAsB,EACA,QAAAC,EACA,oBAAAC,CACN,EAAQ,KAAK,MACT,OAAoBR,EAAAA,IAAK,MAAO,CAC9B,UAAW,4BACX,IAAKS,GAAa,CAChB,KAAK,UAAYA,CAClB,EACD,SAAUH,EAAyBN,EAAI,IAACU,EAAQ,CAC9C,SAAU,CACR,SAAU,WACV,MAAOH,EACP,YAAa,KACd,EACD,oBAAqBC,CAC7B,CAAO,EAAiBR,EAAI,IAACW,EAAU,CAC/B,WAAY,CACV,KAAMhB,CACP,EACD,cAAe,CAACiB,CAAU,EAC1B,cAAe,CAACC,CAAa,EAC7B,SAAUN,CAClB,CAAO,CACP,CAAK,CACF,CACH,CACAvB,EAAgBoB,EAAgB,eAAgB,CAC9C,UAAW,GACX,QAAS,EACX,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as y,G as C,C as s,E as g,a$ as L,b2 as w,b0 as N,b1 as E}from"./vendor-16bda9b1.js";import{n as j,aR as S}from"./index-
|
|
2
|
-
//# sourceMappingURL=MarkdownNotebook-
|
|
1
|
+
import{r as y,G as C,C as s,E as g,a$ as L,b2 as w,b0 as N,b1 as E}from"./vendor-16bda9b1.js";import{n as j,aR as S}from"./index-9f7f2001.js";import{B as b}from"./useConnection-9a2eabe6.js";import{C as P}from"./index-e435f5c9.js";import"./helpers-de833af9.js";import"./plotly-e9150c9a.js";function f(r,e,t){return e=M(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function M(r){var e=B(r,"string");return typeof e=="symbol"?e:String(e)}function B(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class I extends y.PureComponent{constructor(e){super(e),f(this,"commands",void 0),f(this,"codeElements",void 0),f(this,"editorScrollView",void 0),this.handleRunSelected=this.handleRunSelected.bind(this),this.renderCodeBlock=this.renderCodeBlock.bind(this),this.renderLink=this.renderLink.bind(this),this.commands=new Map,this.codeElements=new Map,this.editorScrollView=C.createRef(),this.state={hasCode:!1,hasRunCode:!1,nextStartLine:null}}componentDidMount(){this.updateHasCode()}componentDidUpdate(){this.updateHasCode()}updateHasCode(){var{hasCode:e}=this.state;this.commands.size===0&&e?this.setState({hasCode:!1}):this.commands.size>0&&!e&&this.setState({hasCode:!0})}getNextStartLine(e){var t=[...this.commands.keys()],n=t.findIndex(a=>a===e)+1;return n>=t.length?null:t[n]}handleRunSelected(e){var t,n;e.preventDefault(),e.stopPropagation();var{nextStartLine:a}=this.state,i=[...this.commands.keys()],d=i.findIndex(x=>x===a||a==null);if(!(d<0)){var l=i[d],p=this.commands.get(l),u=this.getNextStartLine(l),m=(t=this.codeElements.get(l))===null||t===void 0?void 0:t.current,o=m==null||(n=m.parentElement)===null||n===void 0?void 0:n.nextElementSibling;if(o!=null){var c,{offsetTop:v}=o,k=v;(c=this.editorScrollView.current)===null||c===void 0||c.scroll({top:k,left:0})}this.runCode(p),this.setState({nextStartLine:u})}}runCode(e){var{onRunCode:t}=this.props;t(e),this.setState({hasRunCode:!0})}renderCodeBlock(e){var{children:t,className:n,inline:a,node:i}=e,{hasRunCode:d,nextStartLine:l}=this.state,{children:p,position:u}=i;j(u);var{start:m}=u,{line:o}=m,c=p[0].value,v=C.createRef(),k=this.commands.size===0,x=l===o||k&&l==null&&!d,R=n!==void 0&&n.startsWith("language-")?n.substring(9):"plaintext";return a!=null&&a?s.jsx("code",{className:n,children:t}):(this.commands.set(o,c),this.codeElements.set(o,v),s.jsxs("div",{className:g("markdown-notebook-code-block",{"is-selected":x}),ref:v,onClick:()=>{this.setState({nextStartLine:o})},role:"presentation",children:[s.jsx(b,{kind:"ghost",icon:S,className:"btn-play-block",onClick:h=>{h.stopPropagation(),h.preventDefault(),this.runCode(c),this.setState({nextStartLine:o})},tooltip:"Run code"}),s.jsx("code",{children:s.jsx(P,{language:R,children:C.Children.map(t,h=>typeof h=="string"?h.trim():h)})})]}))}renderLink(e){var{onLinkClick:t}=this.props,{href:n,children:a,target:i}=e;return s.jsx("a",{href:n,onClick:t,target:i,children:a})}render(){var{content:e,transformImageUri:t,transformLinkUri:n}=this.props,{hasCode:a,hasRunCode:i,nextStartLine:d}=this.state;return s.jsxs("div",{className:"markdown-notebook",children:[s.jsx("div",{className:"markdown-notebook-toolbar",children:s.jsx(b,{className:g("btn-play-selected-cell",{flashing:a&&!i}),kind:"ghost",icon:S,onClick:this.handleRunSelected,tooltip:"Run code and select next",disabled:i&&d==null||!a,children:"Run Selected Code"})}),s.jsx("div",{className:"markdown-notebook-content",ref:this.editorScrollView,children:s.jsx(L,{components:{code:this.renderCodeBlock,a:this.renderLink},linkTarget:"_blank",remarkPlugins:[w,N],rehypePlugins:[E],transformLinkUri:n,transformImageUri:t,includeElementIndex:!0,children:e})})]})}}f(I,"defaultProps",{onRunCode:()=>{}});export{I as MarkdownNotebook,I as default};
|
|
2
|
+
//# sourceMappingURL=MarkdownNotebook-ea84ecb0.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarkdownNotebook-8cf19841.js","sources":["../../../dashboard-core-plugins/dist/panels/MarkdownNotebook.js"],"sourcesContent":["function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport Markdown from 'react-markdown';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Button } from '@deephaven/components';\nimport { Code } from '@deephaven/console';\nimport { vsPlay } from '@deephaven/icons';\nimport \"./MarkdownNotebook.css\";\nimport { assertNotNull } from '@deephaven/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nexport class MarkdownNotebook extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"commands\", void 0);\n _defineProperty(this, \"codeElements\", void 0);\n _defineProperty(this, \"editorScrollView\", void 0);\n this.handleRunSelected = this.handleRunSelected.bind(this);\n this.renderCodeBlock = this.renderCodeBlock.bind(this);\n this.renderLink = this.renderLink.bind(this);\n\n // Map of each code block from it's starting line number to the code within that block\n this.commands = new Map();\n this.codeElements = new Map();\n this.editorScrollView = /*#__PURE__*/React.createRef();\n this.state = {\n hasCode: false,\n // Keep track if any code has been executed yet. If not, make the run button flash\n hasRunCode: false,\n // Line of the next block to execute. Null to start at the first block\n nextStartLine: null\n };\n }\n componentDidMount() {\n this.updateHasCode();\n }\n componentDidUpdate() {\n this.updateHasCode();\n }\n updateHasCode() {\n var {\n hasCode\n } = this.state;\n if (this.commands.size === 0 && hasCode) {\n this.setState({\n hasCode: false\n });\n } else if (this.commands.size > 0 && !hasCode) {\n this.setState({\n hasCode: true\n });\n }\n }\n\n /**\n * @param line The line of the code block to start from\n * @returns The next line of the code block to start from\n */\n getNextStartLine(line) {\n var keys = [...this.commands.keys()];\n var nextIndex = keys.findIndex(key => key === line) + 1;\n if (nextIndex >= keys.length) {\n // We got to the last block, disable\n return null;\n }\n return keys[nextIndex];\n }\n handleRunSelected(event) {\n var _this$codeElements$ge, _element$parentElemen;\n event.preventDefault();\n event.stopPropagation();\n var {\n nextStartLine\n } = this.state;\n var keys = [...this.commands.keys()];\n var keyIndex = keys.findIndex(key => key === nextStartLine || nextStartLine == null);\n if (keyIndex < 0) {\n return;\n }\n var startLine = keys[keyIndex];\n var command = this.commands.get(startLine);\n var newNextStartLine = this.getNextStartLine(startLine);\n var element = (_this$codeElements$ge = this.codeElements.get(startLine)) === null || _this$codeElements$ge === void 0 ? void 0 : _this$codeElements$ge.current;\n var nextElement = element === null || element === void 0 ? void 0 : (_element$parentElemen = element.parentElement) === null || _element$parentElemen === void 0 ? void 0 : _element$parentElemen.nextElementSibling;\n if (nextElement != null) {\n var _this$editorScrollVie;\n var {\n offsetTop\n } = nextElement;\n var top = offsetTop;\n (_this$editorScrollVie = this.editorScrollView.current) === null || _this$editorScrollVie === void 0 ? void 0 : _this$editorScrollVie.scroll({\n top,\n left: 0\n });\n }\n this.runCode(command);\n this.setState({\n nextStartLine: newNextStartLine\n });\n }\n runCode(command) {\n var {\n onRunCode\n } = this.props;\n onRunCode(command);\n this.setState({\n hasRunCode: true\n });\n }\n renderCodeBlock(props) {\n var {\n children,\n className,\n inline,\n node\n } = props;\n var {\n hasRunCode,\n nextStartLine\n } = this.state;\n var {\n children: nodeChildren,\n position\n } = node;\n assertNotNull(position);\n var {\n start\n } = position;\n var {\n line\n } = start;\n var command = nodeChildren[0].value;\n var ref = /*#__PURE__*/React.createRef();\n var isFirstBlock = this.commands.size === 0;\n var isSelected = nextStartLine === line || isFirstBlock && nextStartLine == null && !hasRunCode;\n var language = className !== undefined && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n if (inline != null && inline) {\n return /*#__PURE__*/_jsx(\"code\", {\n className: className,\n children: children\n });\n }\n this.commands.set(line, command);\n this.codeElements.set(line, ref);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames('markdown-notebook-code-block', {\n 'is-selected': isSelected\n }),\n ref: ref,\n onClick: () => {\n this.setState({\n nextStartLine: line\n });\n },\n role: \"presentation\",\n children: [/*#__PURE__*/_jsx(Button, {\n kind: \"ghost\",\n icon: vsPlay,\n className: \"btn-play-block\",\n onClick: event => {\n event.stopPropagation();\n event.preventDefault();\n this.runCode(command);\n this.setState({\n nextStartLine: line\n });\n },\n tooltip: \"Run code\"\n }), /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })]\n });\n }\n renderLink(props) {\n var {\n onLinkClick\n } = this.props;\n var {\n href,\n children,\n target\n } = props;\n return /*#__PURE__*/_jsx(\"a\", {\n href: href,\n onClick: onLinkClick,\n target: target,\n children: children\n });\n }\n render() {\n var {\n content,\n transformImageUri,\n transformLinkUri\n } = this.props;\n var {\n hasCode,\n hasRunCode,\n nextStartLine\n } = this.state;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"markdown-notebook\",\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-toolbar\",\n children: /*#__PURE__*/_jsx(Button, {\n className: classNames('btn-play-selected-cell', {\n flashing: hasCode && !hasRunCode\n }),\n kind: \"ghost\",\n icon: vsPlay,\n onClick: this.handleRunSelected,\n tooltip: \"Run code and select next\",\n disabled: hasRunCode && nextStartLine == null || !hasCode,\n children: \"Run Selected Code\"\n })\n }), /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-content\",\n ref: this.editorScrollView,\n children: /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: this.renderCodeBlock,\n a: this.renderLink\n },\n linkTarget: \"_blank\",\n remarkPlugins: [remarkGfm, remarkMath],\n rehypePlugins: [rehypeMathjax],\n transformLinkUri: transformLinkUri,\n transformImageUri: transformImageUri,\n includeElementIndex: true,\n children: content\n })\n })]\n });\n }\n}\n_defineProperty(MarkdownNotebook, \"defaultProps\", {\n onRunCode: () => undefined\n});\nexport default MarkdownNotebook;\n//# sourceMappingURL=MarkdownNotebook.js.map"],"names":["_defineProperty","obj","key","value","_toPropertyKey","arg","_toPrimitive","input","hint","prim","res","MarkdownNotebook","PureComponent","props","React","hasCode","line","keys","nextIndex","event","_this$codeElements$ge","_element$parentElemen","nextStartLine","keyIndex","startLine","command","newNextStartLine","element","nextElement","_this$editorScrollVie","offsetTop","top","onRunCode","children","className","inline","node","hasRunCode","nodeChildren","position","assertNotNull","start","ref","isFirstBlock","isSelected","language","_jsx","_jsxs","classNames","Button","vsPlay","Code","child","onLinkClick","href","target","content","transformImageUri","transformLinkUri","Markdown","remarkGfm","remarkMath","rehypeMathjax"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MarkdownNotebook-ea84ecb0.js","sources":["../../../dashboard-core-plugins/dist/panels/MarkdownNotebook.js"],"sourcesContent":["function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport Markdown from 'react-markdown';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Button } from '@deephaven/components';\nimport { Code } from '@deephaven/console';\nimport { vsPlay } from '@deephaven/icons';\nimport \"./MarkdownNotebook.css\";\nimport { assertNotNull } from '@deephaven/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nexport class MarkdownNotebook extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"commands\", void 0);\n _defineProperty(this, \"codeElements\", void 0);\n _defineProperty(this, \"editorScrollView\", void 0);\n this.handleRunSelected = this.handleRunSelected.bind(this);\n this.renderCodeBlock = this.renderCodeBlock.bind(this);\n this.renderLink = this.renderLink.bind(this);\n\n // Map of each code block from it's starting line number to the code within that block\n this.commands = new Map();\n this.codeElements = new Map();\n this.editorScrollView = /*#__PURE__*/React.createRef();\n this.state = {\n hasCode: false,\n // Keep track if any code has been executed yet. If not, make the run button flash\n hasRunCode: false,\n // Line of the next block to execute. Null to start at the first block\n nextStartLine: null\n };\n }\n componentDidMount() {\n this.updateHasCode();\n }\n componentDidUpdate() {\n this.updateHasCode();\n }\n updateHasCode() {\n var {\n hasCode\n } = this.state;\n if (this.commands.size === 0 && hasCode) {\n this.setState({\n hasCode: false\n });\n } else if (this.commands.size > 0 && !hasCode) {\n this.setState({\n hasCode: true\n });\n }\n }\n\n /**\n * @param line The line of the code block to start from\n * @returns The next line of the code block to start from\n */\n getNextStartLine(line) {\n var keys = [...this.commands.keys()];\n var nextIndex = keys.findIndex(key => key === line) + 1;\n if (nextIndex >= keys.length) {\n // We got to the last block, disable\n return null;\n }\n return keys[nextIndex];\n }\n handleRunSelected(event) {\n var _this$codeElements$ge, _element$parentElemen;\n event.preventDefault();\n event.stopPropagation();\n var {\n nextStartLine\n } = this.state;\n var keys = [...this.commands.keys()];\n var keyIndex = keys.findIndex(key => key === nextStartLine || nextStartLine == null);\n if (keyIndex < 0) {\n return;\n }\n var startLine = keys[keyIndex];\n var command = this.commands.get(startLine);\n var newNextStartLine = this.getNextStartLine(startLine);\n var element = (_this$codeElements$ge = this.codeElements.get(startLine)) === null || _this$codeElements$ge === void 0 ? void 0 : _this$codeElements$ge.current;\n var nextElement = element === null || element === void 0 ? void 0 : (_element$parentElemen = element.parentElement) === null || _element$parentElemen === void 0 ? void 0 : _element$parentElemen.nextElementSibling;\n if (nextElement != null) {\n var _this$editorScrollVie;\n var {\n offsetTop\n } = nextElement;\n var top = offsetTop;\n (_this$editorScrollVie = this.editorScrollView.current) === null || _this$editorScrollVie === void 0 ? void 0 : _this$editorScrollVie.scroll({\n top,\n left: 0\n });\n }\n this.runCode(command);\n this.setState({\n nextStartLine: newNextStartLine\n });\n }\n runCode(command) {\n var {\n onRunCode\n } = this.props;\n onRunCode(command);\n this.setState({\n hasRunCode: true\n });\n }\n renderCodeBlock(props) {\n var {\n children,\n className,\n inline,\n node\n } = props;\n var {\n hasRunCode,\n nextStartLine\n } = this.state;\n var {\n children: nodeChildren,\n position\n } = node;\n assertNotNull(position);\n var {\n start\n } = position;\n var {\n line\n } = start;\n var command = nodeChildren[0].value;\n var ref = /*#__PURE__*/React.createRef();\n var isFirstBlock = this.commands.size === 0;\n var isSelected = nextStartLine === line || isFirstBlock && nextStartLine == null && !hasRunCode;\n var language = className !== undefined && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n if (inline != null && inline) {\n return /*#__PURE__*/_jsx(\"code\", {\n className: className,\n children: children\n });\n }\n this.commands.set(line, command);\n this.codeElements.set(line, ref);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames('markdown-notebook-code-block', {\n 'is-selected': isSelected\n }),\n ref: ref,\n onClick: () => {\n this.setState({\n nextStartLine: line\n });\n },\n role: \"presentation\",\n children: [/*#__PURE__*/_jsx(Button, {\n kind: \"ghost\",\n icon: vsPlay,\n className: \"btn-play-block\",\n onClick: event => {\n event.stopPropagation();\n event.preventDefault();\n this.runCode(command);\n this.setState({\n nextStartLine: line\n });\n },\n tooltip: \"Run code\"\n }), /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })]\n });\n }\n renderLink(props) {\n var {\n onLinkClick\n } = this.props;\n var {\n href,\n children,\n target\n } = props;\n return /*#__PURE__*/_jsx(\"a\", {\n href: href,\n onClick: onLinkClick,\n target: target,\n children: children\n });\n }\n render() {\n var {\n content,\n transformImageUri,\n transformLinkUri\n } = this.props;\n var {\n hasCode,\n hasRunCode,\n nextStartLine\n } = this.state;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"markdown-notebook\",\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-toolbar\",\n children: /*#__PURE__*/_jsx(Button, {\n className: classNames('btn-play-selected-cell', {\n flashing: hasCode && !hasRunCode\n }),\n kind: \"ghost\",\n icon: vsPlay,\n onClick: this.handleRunSelected,\n tooltip: \"Run code and select next\",\n disabled: hasRunCode && nextStartLine == null || !hasCode,\n children: \"Run Selected Code\"\n })\n }), /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-content\",\n ref: this.editorScrollView,\n children: /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: this.renderCodeBlock,\n a: this.renderLink\n },\n linkTarget: \"_blank\",\n remarkPlugins: [remarkGfm, remarkMath],\n rehypePlugins: [rehypeMathjax],\n transformLinkUri: transformLinkUri,\n transformImageUri: transformImageUri,\n includeElementIndex: true,\n children: content\n })\n })]\n });\n }\n}\n_defineProperty(MarkdownNotebook, \"defaultProps\", {\n onRunCode: () => undefined\n});\nexport default MarkdownNotebook;\n//# sourceMappingURL=MarkdownNotebook.js.map"],"names":["_defineProperty","obj","key","value","_toPropertyKey","arg","_toPrimitive","input","hint","prim","res","MarkdownNotebook","PureComponent","props","React","hasCode","line","keys","nextIndex","event","_this$codeElements$ge","_element$parentElemen","nextStartLine","keyIndex","startLine","command","newNextStartLine","element","nextElement","_this$editorScrollVie","offsetTop","top","onRunCode","children","className","inline","node","hasRunCode","nodeChildren","position","assertNotNull","start","ref","isFirstBlock","isSelected","language","_jsx","_jsxs","classNames","Button","vsPlay","Code","child","onLinkClick","href","target","content","transformImageUri","transformLinkUri","Markdown","remarkGfm","remarkMath","rehypeMathjax"],"mappings":"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"}
|
|
@@ -12,5 +12,5 @@ import{r as f,R as G,C as v,D as A,E as L,F as W9,_ as C,G as I}from"./vendor-16
|
|
|
12
12
|
`,ro=`:root{--dh-color-grid-bg: var(--dh-color-content-bg);--dh-color-grid-header-bg: var(--dh-color-gray-100);--dh-color-grid-header-text: var(--dh-color-heading-text);--dh-color-grid-header-separator: var(--dh-color-gray-300);--dh-color-grid-header-separator-hover: var(--dh-color-gray-600);--dh-color-grid-header-separator-hidden-hover: var(--dh-color-accent-700);--dh-color-grid-header-sort-bar: var(--dh-color-visual-purple);--dh-color-grid-header-reverse-bar: var(--dh-color-visual-green);--dh-color-grid-header-bar-casing: var(--dh-color-gray-50);--dh-color-grid-row-0-bg: var(--dh-color-gray-50);--dh-color-grid-row-1-bg: var(--dh-color-gray-100);--dh-color-grid-row-hover-bg: var(--dh-color-highlight-hover);--dh-color-grid-row-hover-bg-selected: var( --dh-color-highlight-selected-hover );--dh-color-grid-row-shadow-alpha: 0.07;--dh-color-grid-selection: var(--dh-color-highlight-selected);--dh-color-grid-selection-outline: var(--dh-color-accent-900);--dh-color-grid-selection-outline-casing: var(--dh-color-gray-50);--dh-color-grid-scroll-bar-active-selection-tick: var(--dh-color-accent-400);--dh-color-grid-scroll-bar-bg: var(--dh-color-gray-100);--dh-color-grid-scroll-bar-hover-bg: var(--dh-color-gray-200);--dh-color-grid-scroll-bar-casing: var(--dh-color-gray-400);--dh-color-grid-scroll-bar-corner: var(--dh-color-gray-100);--dh-color-grid-scroll-bar: var(--dh-color-gray-400);--dh-color-grid-scroll-bar-hover: var(--dh-color-gray-500);--dh-color-grid-scroll-bar-active: var(--dh-color-gray-600);--dh-color-grid-text: var(--dh-color-text);--dh-color-grid-text-hyperlink: var(--dh-color-accent-1000);--dh-color-grid-text-pending: var(--dh-color-modified);--dh-color-grid-text-error: var(--dh-color-visual-negative);--dh-color-grid-date: var(--dh-color-visual-purple);--dh-color-grid-number-positive: var(--dh-color-visual-positive);--dh-color-grid-number-negative: var(--dh-color-visual-negative);--dh-color-grid-number-zero: var(--dh-color-visual-purple);--dh-color-grid-string-null: var(--dh-color-gray-600);--dh-color-grid-filter-bar-active-bg: color-mix( in srgb, var(--dh-color-accent-700) 45%, transparent );--dh-color-grid-filter-bar-active: var(--dh-color-accent-700);--dh-color-grid-filter-bar-expanded-bg: var(--dh-color-gray-50);--dh-color-grid-filter-bar-expanded-active-bg: color-mix( in srgb, var(--dh-color-accent-1000) 19%, transparent );--dh-color-grid-filter-bar-expanded-active-cell-bg: color-mix( in srgb, var(--dh-color-accent-700) 32%, transparent );--dh-color-grid-filter-bar-separator: var(--dh-color-gray-600);--dh-color-grid-filter-bar-error: var(--dh-color-visual-negative);--dh-color-grid-filter-icon: var(--dh-color-accent-600);--dh-color-grid-context-menu-sort-icon: var(--dh-color-visual-purple);--dh-color-grid-context-menu-reverse-icon: var(--dh-color-visual-green);--dh-color-grid-column-linker-hover-bg: var( --dh-color-highlight-selected-hover );--dh-color-grid-column-grouped-divider: var(--dh-color-gray-50);--dh-color-grid-tree-line: var(--dh-color-gray-500);--dh-color-grid-tree-marker: var(--dh-color-gray-700);--dh-color-grid-tree-marker-hover: var(--dh-color-gray-900);--dh-color-grid-floating-row: var(--dh-color-gray-300);--dh-color-grid-floating-row-bg: var(--dh-color-gray-200);--dh-color-grid-floating-divider-inner: var(--dh-color-gray-200);--dh-color-grid-floating-divider-outer: var(--dh-color-gray-50);--dh-color-grid-overflow-button: var(--dh-color-gray-700);--dh-color-grid-overflow-button-hover: var(--dh-color-gray-900);--dh-color-grid-data-bar-positive: var(--dh-color-visual-positive);--dh-color-grid-data-bar-negative: var(--dh-color-visual-negative);--dh-color-grid-data-bar-marker: var(--dh-color-white);--dh-color-grid-data-bar-zero-line: var(--dh-color-gray-300);--dh-color-grid-scrim: var(--dh-color-gray-200)}/*# sourceMappingURL=theme-light-semantic-grid.css.map */
|
|
13
13
|
`,lo=`:root{--dh-color-loading-spinner-primary: var(--dh-color-accent-bg);--dh-color-loading-spinner-secondary: color-mix( in srgb, var(--dh-color-gray-800) 50%, transparent );--dh-color-quickactions-bg: color-mix( in srgb, var(--dh-color-visual-gray) 90%, transparent );--dh-color-radial-reaction: color-mix( in srgb, var(--dh-color-visual-gray) 60%, transparent );--dh-color-colorpicker-border: color-mix( in srgb, var(--dh-color-visual-gray) 10%, transparent );--dh-logo-img: var(--dh-logo-light-img);--dh-color-login-form-bg: var(--dh-color-gray-200);--dh-color-login-status-message: var(--dh-color-gray-600);--dh-color-login-logo-bg: var(--dh-color-gray-50);--dh-color-login-footer-fg: var(--dh-color-gray-700);--dh-color-random-area-plot-animation-fg-fill: color-mix( in srgb, var(--dh-color-accent) 8%, transparent );--dh-color-random-area-plot-animation-fg-stroke: color-mix( in srgb, var(--dh-color-accent) 20%, transparent );--dh-color-random-area-plot-animation-bg: var(--dh-color-gray-75);--dh-color-random-area-plot-animation-grid: var(--dh-color-gray-300);--dh-color-action-bg: var(--dh-color-gray-75);--dh-color-action-fg: var(--dh-color-text);--dh-color-action-border: var(--dh-color-border);--dh-color-action-down-bg: var(--dh-color-gray-300);--dh-color-action-hover-bg: var(--dh-color-gray-50);--dh-color-action-hover-fg: var(--dh-color-text-hover);--dh-color-action-hover-border: var(--dh-color-hover-border);--dh-color-action-active-bg: var(--dh-color-accent-bg);--dh-color-action-active-fg: var(--dh-color-accent-contrast);--dh-color-action-active-border: var(--dh-color-accent-bg);--dh-color-action-active-hover-bg: var(--dh-color-accent-hover-bg);--dh-color-action-active-hover-fg: var(--dh-color-accent-contrast);--dh-color-action-active-hover-border: var(--dh-color-accent-hover-bg);--dh-color-action-disabled-bg: transparent;--dh-color-action-disabled-fg: var(--dh-color-text-disabled);--dh-color-action-disabled-border: var(--dh-color-gray-300);--dh-color-icon-fg: var(--dh-color-gray-700);--dh-color-icon-disabled-fg: var(--dh-color-gray-400);--dh-color-input-bg: var(--dh-color-gray-50);--dh-color-input-fg: var(--dh-color-text);--dh-color-input-border: var(--dh-color-border);--dh-color-input-placeholder: var(--dh-color-gray-600);--dh-color-input-active-bg: var(--dh-color-input-bg);--dh-color-input-disabled-bg: var(--dh-color-disabled-bg);--dh-color-input-disabled-border: transparent;--dh-color-input-disabled-fg: var(--dh-color-text-disabled);--dh-color-input-hover-border: var(--dh-color-hover-border);--dh-color-input-focus-border: var(--dh-color-border-focus);--dh-color-search-icon: var(--dh-color-fg);--dh-color-form-control-error: var(--dh-color-visual-negative);--dh-color-form-control-error-shadow: color-mix( in srgb, var(--dh-color-visual-negative) 25%, transparent );--dh-color-label-text: var(--dh-color-gray-700);--dh-color-selector-fg: var(--dh-color-icon-fg);--dh-color-selector-bg: var(--dh-color-gray-75);--dh-color-selector-hover-bg: var(--dh-color-gray-50);--dh-color-selector-hover-fg: var(--dh-color-gray-900);--dh-color-selector-disabled-fg: var(--dh-color-icon-disabled-fg);--dh-color-item-list-bg: transparent;--dh-color-item-list-active-bg: var(--dh-color-highlight-active);--dh-color-item-list-hover-bg: var(--dh-color-highlight-hover);--dh-color-item-list-selected-fg: var(--dh-color-text);--dh-color-item-list-selected-bg: var(--dh-color-highlight-selected);--dh-color-item-list-selected-hover-bg: var( --dh-color-highlight-selected-hover );--dh-color-item-list-selected-inactive-bg: var(--dh-color-gray-300);--dh-color-item-list-selected-border: var(--dh-color-accent-900);--dh-color-item-list-drop-target-fg: var(--dh-color-white);--dh-color-item-list-keyboard-selected-bg: color-mix( in srgb, var(--dh-color-accent) 50%, transparent );--dh-color-golden-layout-tab-header-bg: var(--dh-color-gray-200);--dh-color-golden-layout-tab-bg: var(--dh-color-gray-100);--dh-color-golden-layout-tab-selected-bg: var(--dh-color-content-bg);--dh-color-menu-item-fg: var(--dh-color-gray-700);--dh-color-hr: var(--dh-color-gray-300);--dh-color-dialog-title-fg: var(--dh-color-heading-text);--dh-color-dialog-fg: var(--dh-color-text);--dh-color-popover-bg: var(--dh-color-gray-50);--dh-color-tooltip-bg: var(--dh-color-gray-50);--dh-color-tooltip-fg: var(--dh-color-fg);--dh-color-tooltip-box-shadow: var(--dh-color-dropshadow);--dh-color-well-bg: color-mix(var(--dh-color-visual-gray) 2%, transparent);--dh-color-well-border: color-mix( in srgb, var(--dh-color-visual-gray) 5%, transparent )}/*# sourceMappingURL=theme-light-components.css.map */
|
|
14
14
|
`;var eo=[X7,Q7,Y7,oo,ro,lo].join(`
|
|
15
|
-
`),S="default-dark",co="default-light",n={blue:{500:"#2f5bc0",400:"#254ba4",600:"#3b6bda",700:"#4c7dee"},red:{600:"#c73f61"},gray:{50:"#1a171a",75:"#211f22",300:"#373438",400:"#403e41",500:"#5b5a5c",600:"#929192",700:"#c0bfbf",800:"#f0f0ee",900:"#fcfcfa"}},ao={"--dh-color-accent-contrast":n.gray[900],"--dh-color-accent-bg":n.blue[600],"--dh-color-accent-hover-bg":n.blue[500],"--dh-color-accent-down-bg":n.blue[400],"--dh-color-accent-key-focus-bg":n.blue[500],"--dh-color-negative-bg":n.red[600],"--dh-color-loading-spinner-primary":n.blue[600],"--dh-color-loading-spinner-secondary":"".concat(n.gray[800],"80"),"--dh-color-bg":n.gray[50],"--dh-color-fg":n.gray[800],"--dh-color-input-bg":n.gray[500],"--dh-color-input-fg":n.gray[800],"--dh-color-input-disabled-bg":n.gray[300],"--dh-color-input-border":n.gray[600],"--dh-color-input-placeholder":n.gray[600],"--dh-color-input-focus-border":"".concat(n.blue[600],"d9"),"--dh-color-text-highlight":"".concat(n.blue[700],"4d"),"--dh-color-login-form-bg":n.gray[400],"--dh-color-login-status-message":n.gray[600],"--dh-color-login-logo-bg":n.gray[900],"--dh-color-login-footer-fg":n.gray[700],"--dh-color-random-area-plot-animation-fg-fill":"".concat(n.blue[600],"14"),"--dh-color-random-area-plot-animation-fg-stroke":"".concat(n.blue[600],"33"),"--dh-color-random-area-plot-animation-bg":n.gray[75],"--dh-color-random-area-plot-animation-grid":n.gray[300]},ho={"--dh-svg-icon-select-indicator":"--dh-color-selector-fg","--dh-svg-icon-select-indicator-hover":"--dh-color-selector-hover-fg","--dh-svg-icon-select-indicator-disabled":"--dh-color-selector-disabled-fg","--dh-svg-icon-error":"--dh-color-form-control-error"},_9="deephaven.themeCache",V=G9.module("ThemeUtils"),Z="var(--",F="dh-tmp",vo=/\S/,T=/\s/;function io(r){var o=j9(document.body,r),l=Object.keys(r).map(e=>"".concat(e,":").concat(o(e)));return":root{".concat(l.join(";"),"}")}function j9(r,o){var l=getComputedStyle(r);return function(c){var a,h=l.getPropertyValue(c);return h!==""?h:(a=o[c])!==null&&a!==void 0?a:""}}function O(r,o){var l=document.createElement("style");l.id=r,l.innerHTML=o,document.head.appendChild(l)}function xo(r){var o=new Set;return Object.values(r).forEach(l=>{q9(l).forEach(e=>{var[c,a]=e,h=l.substring(c,a+1);h.includes(Z)&&o.add(h)})}),o}function No(r,o){var l,e=o.custom.find(h=>h.themeKey===r),c=(l=e==null?void 0:e.baseThemeKey)!==null&&l!==void 0?l:r,a=o.base.find(h=>h.themeKey===c);return a==null&&(V.error("No registered base theme found for theme key: '".concat(c,"'"),"Registered:",o.base.map(h=>h.themeKey),o.custom.map(h=>h.themeKey)),a=o.base.find(h=>h.themeKey===S),r7(a,"Default base theme '".concat(S,"' is not registered"))),V.debug("Applied themes:",a.themeKey,e==null?void 0:e.themeKey),e==null?[a]:[a,e]}function Ao(){return[{name:"Default Dark",themeKey:S,styleContent:J7},{name:"Default Light",themeKey:co,styleContent:eo}]}function no(){var r=localStorage.getItem(_9);try{return r==null?null:JSON.parse(r)}catch{}return null}function q9(r){for(var o,l,e=[],c=(o=(l=vo.exec(r))===null||l===void 0?void 0:l.index)!==null&&o!==void 0?o:0,a=0,h=0;h<r.length;h+=1)if(r[h]==="("?a+=1:r[h]===")"&&(a-=1),h===r.length-1||T.test(r[h+1])&&a===0){for(e.push([c,h]);h<r.length-1&&T.test(r[h+1]);)h+=1;c=h+1}return a!==0?(V.error("Unbalanced parentheses in css var expression",r),[]):e}function so(r,o){return r.replace(/fill='.*?'/,"fill='".concat(encodeURIComponent(o),"'"))}function wo(r){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:document.body,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,e=performance.now(),c=document.createElement("div");c.style.display="none";var a=Object.entries(r);a.forEach((s,m)=>{var[,t]=s;c.style.setProperty("--".concat(F,"-").concat(m),t);var z=document.createElement("div");z.style.backgroundColor=t,c.appendChild(z)}),o.appendChild(c);var h=window.getComputedStyle(c),i={};return a.forEach((s,m)=>{var[t,z]=s;if(!z.includes(Z)){i[t]=z;return}var d=h.getPropertyValue("--".concat(F,"-").concat(m));if(!/^#[0-9A-F]{6}[0-9a-f]{0,2}$/i.test(d)&&CSS.supports("color",d)){var H=c.children[m],M=window.getComputedStyle(H),y=M.getPropertyValue("background-color");d=J9.normalizeCssColor(y,l)}i[t]=d}),c.remove(),V.debug("Resolved css variables",performance.now()-e,"ms"),i}function So(r,o){var l=[],e=0;return q9(o).forEach(c=>{var[a,h]=c;e<a&&(l.push(o.substring(e,a)),e+=a-e);var i=o.substring(a,h+1);l.push(i.includes(Z)?r(i):i),e+=h-a+1}),l.length===0?o:l.join("")}function Co(r){localStorage.setItem(_9,JSON.stringify(r))}function ko(r,o){return"".concat(r,"_").concat(o)}function to(){var r,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ao,l=(r=no())===null||r===void 0?void 0:r.preloadStyleContent,e=io(o);V.debug("Preloading theme content:",{defaultPreloadStyleContent:e,previousPreloadStyleContent:l}),O("theme-preload-defaults",e),l!=null&&O("theme-preload-previous",l)}function Zo(r){var o=j9(document.body,r);Object.entries(ho).forEach(l=>{var[e,c]=l;document.body.style.removeProperty(e);var a=o(e),h=o(c),i=so(a,h);document.body.style.setProperty(e,i)})}function B(r,o,l,e,c,a,h){try{var i=r[a](h),s=i.value}catch(m){l(m);return}i.done?o(s):Promise.resolve(s).then(e,c)}function mo(r){return function(){var o=this,l=arguments;return new Promise(function(e,c){var a=r.apply(o,l);function h(s){B(a,e,c,h,i,"next",s)}function i(s){B(a,e,c,h,i,"throw",s)}h(void 0)})}}var N=G9.module("@deephaven/jsapi-bootstrap.ApiBootstrap"),fo=f.createContext(null);function go(r){var{apiUrl:o,children:l,failureElement:e,setGlobally:c=!1}=r,[a,h]=f.useState(!0),[i,s]=f.useState();return f.useEffect(()=>{function m(){return t.apply(this,arguments)}function t(){return t=mo(function*(){try{var z=(yield C(()=>import(o),[],import.meta.url)).default;N.info("API bootstrapped from",o),s(z),c&&(N.debug("API set globally"),globalThis.dh=z)}catch(d){N.error("Unable to bootstrap API",d)}h(!1)}),t.apply(this,arguments)}m()},[o,c]),a?v.jsx(I9,{}):i==null?e??v.jsxs(B7,{isOpen:!0,className:"modal-dialog-centered",children:[v.jsx(G7,{closeButton:!1,children:"Error: Unable to load API"}),v.jsx(U7,{children:v.jsxs("p",{className:"text-break",children:["Ensure the server is running and you are able to reach ",o,", then refresh the page."]})})]}):v.jsx(fo.Provider,{value:i,children:l})}to();const zo=I.lazy(()=>C(()=>import("./App-
|
|
16
|
-
//# sourceMappingURL=index-
|
|
15
|
+
`),S="default-dark",co="default-light",n={blue:{500:"#2f5bc0",400:"#254ba4",600:"#3b6bda",700:"#4c7dee"},red:{600:"#c73f61"},gray:{50:"#1a171a",75:"#211f22",300:"#373438",400:"#403e41",500:"#5b5a5c",600:"#929192",700:"#c0bfbf",800:"#f0f0ee",900:"#fcfcfa"}},ao={"--dh-color-accent-contrast":n.gray[900],"--dh-color-accent-bg":n.blue[600],"--dh-color-accent-hover-bg":n.blue[500],"--dh-color-accent-down-bg":n.blue[400],"--dh-color-accent-key-focus-bg":n.blue[500],"--dh-color-negative-bg":n.red[600],"--dh-color-loading-spinner-primary":n.blue[600],"--dh-color-loading-spinner-secondary":"".concat(n.gray[800],"80"),"--dh-color-bg":n.gray[50],"--dh-color-fg":n.gray[800],"--dh-color-input-bg":n.gray[500],"--dh-color-input-fg":n.gray[800],"--dh-color-input-disabled-bg":n.gray[300],"--dh-color-input-border":n.gray[600],"--dh-color-input-placeholder":n.gray[600],"--dh-color-input-focus-border":"".concat(n.blue[600],"d9"),"--dh-color-text-highlight":"".concat(n.blue[700],"4d"),"--dh-color-login-form-bg":n.gray[400],"--dh-color-login-status-message":n.gray[600],"--dh-color-login-logo-bg":n.gray[900],"--dh-color-login-footer-fg":n.gray[700],"--dh-color-random-area-plot-animation-fg-fill":"".concat(n.blue[600],"14"),"--dh-color-random-area-plot-animation-fg-stroke":"".concat(n.blue[600],"33"),"--dh-color-random-area-plot-animation-bg":n.gray[75],"--dh-color-random-area-plot-animation-grid":n.gray[300]},ho={"--dh-svg-icon-select-indicator":"--dh-color-selector-fg","--dh-svg-icon-select-indicator-hover":"--dh-color-selector-hover-fg","--dh-svg-icon-select-indicator-disabled":"--dh-color-selector-disabled-fg","--dh-svg-icon-error":"--dh-color-form-control-error"},_9="deephaven.themeCache",V=G9.module("ThemeUtils"),Z="var(--",F="dh-tmp",vo=/\S/,T=/\s/;function io(r){var o=j9(document.body,r),l=Object.keys(r).map(e=>"".concat(e,":").concat(o(e)));return":root{".concat(l.join(";"),"}")}function j9(r,o){var l=getComputedStyle(r);return function(c){var a,h=l.getPropertyValue(c);return h!==""?h:(a=o[c])!==null&&a!==void 0?a:""}}function O(r,o){var l=document.createElement("style");l.id=r,l.innerHTML=o,document.head.appendChild(l)}function xo(r){var o=new Set;return Object.values(r).forEach(l=>{q9(l).forEach(e=>{var[c,a]=e,h=l.substring(c,a+1);h.includes(Z)&&o.add(h)})}),o}function No(r,o){var l,e=o.custom.find(h=>h.themeKey===r),c=(l=e==null?void 0:e.baseThemeKey)!==null&&l!==void 0?l:r,a=o.base.find(h=>h.themeKey===c);return a==null&&(V.error("No registered base theme found for theme key: '".concat(c,"'"),"Registered:",o.base.map(h=>h.themeKey),o.custom.map(h=>h.themeKey)),a=o.base.find(h=>h.themeKey===S),r7(a,"Default base theme '".concat(S,"' is not registered"))),V.debug("Applied themes:",a.themeKey,e==null?void 0:e.themeKey),e==null?[a]:[a,e]}function Ao(){return[{name:"Default Dark",themeKey:S,styleContent:J7},{name:"Default Light",themeKey:co,styleContent:eo}]}function no(){var r=localStorage.getItem(_9);try{return r==null?null:JSON.parse(r)}catch{}return null}function q9(r){for(var o,l,e=[],c=(o=(l=vo.exec(r))===null||l===void 0?void 0:l.index)!==null&&o!==void 0?o:0,a=0,h=0;h<r.length;h+=1)if(r[h]==="("?a+=1:r[h]===")"&&(a-=1),h===r.length-1||T.test(r[h+1])&&a===0){for(e.push([c,h]);h<r.length-1&&T.test(r[h+1]);)h+=1;c=h+1}return a!==0?(V.error("Unbalanced parentheses in css var expression",r),[]):e}function so(r,o){return r.replace(/fill='.*?'/,"fill='".concat(encodeURIComponent(o),"'"))}function wo(r){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:document.body,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,e=performance.now(),c=document.createElement("div");c.style.display="none";var a=Object.entries(r);a.forEach((s,m)=>{var[,t]=s;c.style.setProperty("--".concat(F,"-").concat(m),t);var z=document.createElement("div");z.style.backgroundColor=t,c.appendChild(z)}),o.appendChild(c);var h=window.getComputedStyle(c),i={};return a.forEach((s,m)=>{var[t,z]=s;if(!z.includes(Z)){i[t]=z;return}var d=h.getPropertyValue("--".concat(F,"-").concat(m));if(!/^#[0-9A-F]{6}[0-9a-f]{0,2}$/i.test(d)&&CSS.supports("color",d)){var H=c.children[m],M=window.getComputedStyle(H),y=M.getPropertyValue("background-color");d=J9.normalizeCssColor(y,l)}i[t]=d}),c.remove(),V.debug("Resolved css variables",performance.now()-e,"ms"),i}function So(r,o){var l=[],e=0;return q9(o).forEach(c=>{var[a,h]=c;e<a&&(l.push(o.substring(e,a)),e+=a-e);var i=o.substring(a,h+1);l.push(i.includes(Z)?r(i):i),e+=h-a+1}),l.length===0?o:l.join("")}function Co(r){localStorage.setItem(_9,JSON.stringify(r))}function ko(r,o){return"".concat(r,"_").concat(o)}function to(){var r,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ao,l=(r=no())===null||r===void 0?void 0:r.preloadStyleContent,e=io(o);V.debug("Preloading theme content:",{defaultPreloadStyleContent:e,previousPreloadStyleContent:l}),O("theme-preload-defaults",e),l!=null&&O("theme-preload-previous",l)}function Zo(r){var o=j9(document.body,r);Object.entries(ho).forEach(l=>{var[e,c]=l;document.body.style.removeProperty(e);var a=o(e),h=o(c),i=so(a,h);document.body.style.setProperty(e,i)})}function B(r,o,l,e,c,a,h){try{var i=r[a](h),s=i.value}catch(m){l(m);return}i.done?o(s):Promise.resolve(s).then(e,c)}function mo(r){return function(){var o=this,l=arguments;return new Promise(function(e,c){var a=r.apply(o,l);function h(s){B(a,e,c,h,i,"next",s)}function i(s){B(a,e,c,h,i,"throw",s)}h(void 0)})}}var N=G9.module("@deephaven/jsapi-bootstrap.ApiBootstrap"),fo=f.createContext(null);function go(r){var{apiUrl:o,children:l,failureElement:e,setGlobally:c=!1}=r,[a,h]=f.useState(!0),[i,s]=f.useState();return f.useEffect(()=>{function m(){return t.apply(this,arguments)}function t(){return t=mo(function*(){try{var z=(yield C(()=>import(o),[],import.meta.url)).default;N.info("API bootstrapped from",o),s(z),c&&(N.debug("API set globally"),globalThis.dh=z)}catch(d){N.error("Unable to bootstrap API",d)}h(!1)}),t.apply(this,arguments)}m()},[o,c]),a?v.jsx(I9,{}):i==null?e??v.jsxs(B7,{isOpen:!0,className:"modal-dialog-centered",children:[v.jsx(G7,{closeButton:!1,children:"Error: Unable to load API"}),v.jsx(U7,{children:v.jsxs("p",{className:"text-break",children:["Ensure the server is running and you are able to reach ",o,", then refresh the page."]})})]}):v.jsx(fo.Provider,{value:i,children:l})}to();const zo=I.lazy(()=>C(()=>import("./App-97f1a86a.js"),["./App-97f1a86a.js","./vendor-16bda9b1.js","./helpers-de833af9.js","./vendor-44a37a07.css","./useConnection-9a2eabe6.js","./plotly-e9150c9a.js","./useConnection-d95d352e.css","./App-bad0fe82.css"],import.meta.url)),uo=I.lazy(async()=>({default:(await C(()=>import("./index-e435f5c9.js").then(o=>o.i),["./index-e435f5c9.js","./vendor-16bda9b1.js","./helpers-de833af9.js","./vendor-44a37a07.css","./useConnection-9a2eabe6.js","./plotly-e9150c9a.js","./useConnection-d95d352e.css","./index-1884c2f5.css"],import.meta.url)).AppBootstrap})),U=new URL("../../jsapi/dh-core.js",document.baseURI),po=new URL("/js-plugins",document.baseURI);G.render(v.jsx(go,{apiUrl:U.href,setGlobally:!0,children:v.jsx(f.Suspense,{fallback:v.jsx(I9,{}),children:v.jsx(uo,{serverUrl:U.origin,pluginsUrl:po.href,children:v.jsx(zo,{})})})}),document.getElementById("root"));export{J9 as $,j9 as A,O as B,Z as C,S as D,xo as E,No as F,Ao as G,q9 as H,ko as I,no as J,Zo as K,G9 as L,B7 as M,vo as N,to as O,so as P,So as Q,Co as R,ho as S,w as T,J7 as U,eo as V,T as W,fo as X,go as Y,o8 as Z,Mo as _,I9 as a,a3 as a$,k as a0,I4 as a1,Y5 as a2,k6 as a3,o7 as a4,u8 as a5,Lo as a6,yo as a7,x9 as a8,L9 as a9,T5 as aA,O9 as aB,l9 as aC,B5 as aD,g9 as aE,C0 as aF,y4 as aG,t9 as aH,n0 as aI,J2 as aJ,K5 as aK,A6 as aL,Q5 as aM,$5 as aN,S0 as aO,S6 as aP,X3 as aQ,X4 as aR,V6 as aS,S4 as aT,Z9 as aU,B6 as aV,c4 as aW,w0 as aX,v2 as aY,Y as aZ,a9 as a_,c5 as aa,h5 as ab,o4 as ac,M9 as ad,r9 as ae,d4 as af,f9 as ag,i9 as ah,y9 as ai,B9 as aj,v6 as ak,H9 as al,V9 as am,k9 as an,G2 as ao,E9 as ap,F2 as aq,w9 as ar,U4 as as,q5 as at,j5 as au,m8 as av,P3 as aw,E2 as ax,D2 as ay,O5 as az,U7 as b,D9 as b0,S3 as b1,D8 as b2,Y2 as b3,l5 as b4,H8 as b5,V4 as b6,T6 as b7,O6 as b8,l1 as b9,m9 as ba,g0 as bb,C4 as bc,B8 as bd,_2 as be,Q1 as bf,a2 as bg,z9 as bh,X5 as bi,m1 as bj,h9 as bk,Vo as bl,G4 as bm,n4 as bn,c9 as bo,G7 as c,o2 as d,r2 as e,j8 as f,k2 as g,s0 as h,Q9 as i,q as j,P2 as k,Q2 as l,R2 as m,r7 as n,r4 as o,_5 as p,s6 as q,wo as r,n as s,co as t,ao as u,e5 as v,I7 as w,_9 as x,F as y,io as z};
|
|
16
|
+
//# sourceMappingURL=index-9f7f2001.js.map
|