@deephaven/console 0.92.0 → 0.92.1-beta.1

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.
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  /// <reference types="lodash" />
3
2
  import { Component, ReactElement } from 'react';
4
3
  import memoize from 'memoizee';
@@ -25,7 +24,7 @@ export declare class CommandHistoryItemTooltip extends Component<CommandHistoryI
25
24
  componentDidMount(): void;
26
25
  componentDidUpdate(prevProps: CommandHistoryItemTooltipProps, prevState: CommandHistoryItemTooltipState): void;
27
26
  componentWillUnmount(): void;
28
- timer?: NodeJS.Timer;
27
+ timer?: number;
29
28
  cleanup?: StorageListenerRemover;
30
29
  loadData: import("lodash").DebouncedFunc<() => void>;
31
30
  startTimer(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandHistoryItemTooltip.d.ts","sourceRoot":"","sources":["../../src/command-history/CommandHistoryItemTooltip.tsx"],"names":[],"mappings":";;AAAA,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,OAAO,MAAM,UAAU,CAAC;AAG/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAI5D,OAAO,kCAAkC,CAAC;AAC1C,OAAO,qBAAqB,EAAE,EAC5B,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,UAAU,8BAA8B;IACtC,IAAI,EAAE,yBAAyB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI,KAAK,IAAI,CAAC;IAC5D,qBAAqB,EAAE,qBAAqB,CAAC;CAC9C;AAED,UAAU,8BAA8B;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,yBAAyB,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,qBAAa,yBAA0B,SAAQ,SAAS,CACtD,8BAA8B,EAC9B,8BAA8B,CAC/B;IACC,MAAM,CAAC,YAAY;wBACH,IAAI;MAClB;IAEF,MAAM,CAAC,aAAa,CAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,MAAM,GAAG,IAAI;gBAcJ,KAAK,EAAE,8BAA8B;IAYjD,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAChB,SAAS,EAAE,8BAA8B,EACzC,SAAS,EAAE,8BAA8B,GACxC,IAAI;IAoBP,oBAAoB,IAAI,IAAI;IAQ5B,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;IAErB,OAAO,CAAC,EAAE,sBAAsB,CAAC;IAEjC,QAAQ,uCAAgB,IAAI,EASL;IAEvB,UAAU,IAAI,IAAI;IAMlB,SAAS,IAAI,IAAI;IAOjB,UAAU,IAAI,IAAI;IAMlB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,YAAY,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI;IAQnD,aAAa,IAAI,IAAI;IAIrB,cAAc,UACL,MAAM,uCAAN,MAAM,aAEb;IAEF,MAAM,IAAI,YAAY;CAkDvB;AAED,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"CommandHistoryItemTooltip.d.ts","sourceRoot":"","sources":["../../src/command-history/CommandHistoryItemTooltip.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,OAAO,MAAM,UAAU,CAAC;AAG/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAI5D,OAAO,kCAAkC,CAAC;AAC1C,OAAO,qBAAqB,EAAE,EAC5B,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,UAAU,8BAA8B;IACtC,IAAI,EAAE,yBAAyB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI,KAAK,IAAI,CAAC;IAC5D,qBAAqB,EAAE,qBAAqB,CAAC;CAC9C;AAED,UAAU,8BAA8B;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,yBAAyB,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,qBAAa,yBAA0B,SAAQ,SAAS,CACtD,8BAA8B,EAC9B,8BAA8B,CAC/B;IACC,MAAM,CAAC,YAAY;wBACH,IAAI;MAClB;IAEF,MAAM,CAAC,aAAa,CAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,MAAM,GAAG,IAAI;gBAcJ,KAAK,EAAE,8BAA8B;IAYjD,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAChB,SAAS,EAAE,8BAA8B,EACzC,SAAS,EAAE,8BAA8B,GACxC,IAAI;IAoBP,oBAAoB,IAAI,IAAI;IAQ5B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,OAAO,CAAC,EAAE,sBAAsB,CAAC;IAEjC,QAAQ,uCAAgB,IAAI,EASL;IAEvB,UAAU,IAAI,IAAI;IAMlB,SAAS,IAAI,IAAI;IAOjB,UAAU,IAAI,IAAI;IAMlB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,YAAY,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI;IAQnD,aAAa,IAAI,IAAI;IAIrB,cAAc,UACL,MAAM,uCAAN,MAAM,aAEb;IAEF,MAAM,IAAI,YAAY;CAkDvB;AAED,eAAe,yBAAyB,CAAC"}
@@ -72,10 +72,10 @@ export class CommandHistoryItemTooltip extends Component {
72
72
  }
73
73
  startTimer() {
74
74
  this.stopTimer();
75
- this.timer = setInterval(this.handleTimeout, 1000);
75
+ this.timer = window.setInterval(this.handleTimeout, 1000);
76
76
  }
77
77
  stopTimer() {
78
- if (this.timer) {
78
+ if (this.timer != null) {
79
79
  clearInterval(this.timer);
80
80
  this.timer = undefined;
81
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CommandHistoryItemTooltip.js","names":["React","Component","debounce","memoize","LoadingSpinner","TimeUtils","FontAwesomeIcon","vsWarning","Code","jsx","_jsx","jsxs","_jsxs","LOAD_DATA_DEBOUNCE","MAX_NUMBER_OF_LINES","CommandHistoryItemTooltip","getTimeString","startTime","endTime","deltaTime","Math","round","Date","valueOf","formatElapsedTime","constructor","props","_defineProperty","commandHistoryStorage","item","language","id","cleanup","listenItem","handleUpdate","handleError","name","split","join","max","bind","handleTimeout","state","currentTime","now","componentDidMount","loadData","componentDidUpdate","prevProps","prevState","_prevState$data","data","timer","result","Boolean","undefined","startTimer","stopTimer","componentWillUnmount","cancel","setInterval","clearInterval","updateTime","setState","error","concat","onUpdate","render","_result$error","errorMessage","timeString","previewText","getPreviewText","hasTimeString","className","children","length","icon"],"sources":["../../src/command-history/CommandHistoryItemTooltip.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport debounce from 'lodash.debounce';\nimport memoize from 'memoizee';\nimport { LoadingSpinner } from '@deephaven/components';\nimport { TimeUtils } from '@deephaven/utils';\nimport { StorageListenerRemover } from '@deephaven/storage';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { vsWarning } from '@deephaven/icons';\nimport Code from '../common/Code';\nimport './CommandHistoryItemTooltip.scss';\nimport CommandHistoryStorage, {\n CommandHistoryStorageData,\n CommandHistoryStorageItem,\n} from './CommandHistoryStorage';\n\ninterface CommandHistoryItemTooltipProps {\n item: CommandHistoryStorageItem;\n language: string;\n onUpdate?: (data: CommandHistoryStorageData | null) => void;\n commandHistoryStorage: CommandHistoryStorage;\n}\n\ninterface CommandHistoryItemTooltipState {\n currentTime: number;\n data?: CommandHistoryStorageData;\n error?: string;\n}\n\nconst LOAD_DATA_DEBOUNCE = 250;\nconst MAX_NUMBER_OF_LINES = 2500;\n\nexport class CommandHistoryItemTooltip extends Component<\n CommandHistoryItemTooltipProps,\n CommandHistoryItemTooltipState\n> {\n static defaultProps = {\n onUpdate: (): void => undefined,\n };\n\n static getTimeString(\n startTime: string | undefined,\n endTime: string | number\n ): string | null {\n if (startTime == null || endTime === '' || endTime === 0) {\n return null;\n }\n\n const deltaTime = Math.round(\n (new Date(endTime).valueOf() - new Date(startTime).valueOf()) / 1000\n );\n\n if (deltaTime < 1) return '<1s';\n\n return TimeUtils.formatElapsedTime(deltaTime);\n }\n\n constructor(props: CommandHistoryItemTooltipProps) {\n super(props);\n\n this.handleUpdate = this.handleUpdate.bind(this);\n this.handleError = this.handleError.bind(this);\n this.handleTimeout = this.handleTimeout.bind(this);\n\n this.state = {\n currentTime: Date.now(),\n };\n }\n\n componentDidMount(): void {\n this.loadData();\n }\n\n componentDidUpdate(\n prevProps: CommandHistoryItemTooltipProps,\n prevState: CommandHistoryItemTooltipState\n ): void {\n const { data } = this.state;\n\n if (\n this.timer == null &&\n !data?.result &&\n Boolean(data?.startTime) &&\n !(data == null || data.endTime === undefined)\n ) {\n this.startTimer();\n } else if (\n (data?.result && !prevState.data?.result) ||\n (Boolean(data?.endTime) &&\n !(prevState.data == null || prevState.data.endTime === undefined))\n ) {\n // Command complete\n this.stopTimer();\n }\n }\n\n componentWillUnmount(): void {\n this.loadData.cancel();\n if (this.cleanup != null) {\n this.cleanup();\n }\n this.stopTimer();\n }\n\n timer?: NodeJS.Timer;\n\n cleanup?: StorageListenerRemover;\n\n loadData = debounce((): void => {\n const { commandHistoryStorage, item, language } = this.props;\n const { id } = item;\n this.cleanup = commandHistoryStorage.listenItem(\n language,\n id,\n this.handleUpdate,\n this.handleError\n );\n }, LOAD_DATA_DEBOUNCE);\n\n startTimer(): void {\n this.stopTimer();\n\n this.timer = setInterval(this.handleTimeout, 1000);\n }\n\n stopTimer(): void {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = undefined;\n }\n }\n\n updateTime(): void {\n this.setState({\n currentTime: Date.now(),\n });\n }\n\n handleError(error: string): void {\n this.setState({ error: `${error}` });\n }\n\n handleUpdate(item: CommandHistoryStorageItem): void {\n const { data } = item ?? {};\n this.setState({ data });\n\n const { onUpdate } = this.props;\n onUpdate?.(data);\n }\n\n handleTimeout(): void {\n this.updateTime();\n }\n\n getPreviewText = memoize(\n (name: string) => name.split('\\n', MAX_NUMBER_OF_LINES).join('\\n'),\n { max: 1 }\n );\n\n render(): ReactElement {\n const {\n item: { name },\n language,\n } = this.props;\n const { currentTime, data, error } = this.state;\n const { result, startTime, endTime } = data ?? {};\n\n const errorMessage = result?.error ?? error;\n\n const timeString = CommandHistoryItemTooltip.getTimeString(\n startTime,\n endTime ?? currentTime\n );\n\n // colorizing in monaco is mostly a function of the number of lines,\n // it gets real slow after a few thousand lines. Truncate the tooltip\n // to avoid UI locks. The full command is still inserted.\n const previewText = this.getPreviewText(name);\n\n const hasTimeString = Boolean(timeString);\n return (\n <div className=\"command-history-item-tooltip\">\n <div className=\"scroll-container\">\n <Code language={language}>{previewText}</Code>\n {previewText.length < name.length && <p>Preview Truncated...</p>}\n </div>\n <div className=\"result-info\">\n <div className=\"d-flex justify-content-between\">\n {Boolean(errorMessage) && (\n <div className=\"text-danger mr-1\">\n <FontAwesomeIcon icon={vsWarning} /> Executed with errors\n </div>\n )}\n <div className=\"time-wrapper\">\n Elapsed time:{' '}\n {hasTimeString ? (\n <span className=\"time-string\">{timeString}</span>\n ) : (\n <LoadingSpinner className=\"loading-spinner-vertical-align\" />\n )}\n </div>\n </div>\n {Boolean(errorMessage) && (\n <div className=\"error-message\">{errorMessage}</div>\n )}\n </div>\n </div>\n );\n }\n}\n\nexport default CommandHistoryItemTooltip;\n"],"mappings":"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"}
1
+ {"version":3,"file":"CommandHistoryItemTooltip.js","names":["React","Component","debounce","memoize","LoadingSpinner","TimeUtils","FontAwesomeIcon","vsWarning","Code","jsx","_jsx","jsxs","_jsxs","LOAD_DATA_DEBOUNCE","MAX_NUMBER_OF_LINES","CommandHistoryItemTooltip","getTimeString","startTime","endTime","deltaTime","Math","round","Date","valueOf","formatElapsedTime","constructor","props","_defineProperty","commandHistoryStorage","item","language","id","cleanup","listenItem","handleUpdate","handleError","name","split","join","max","bind","handleTimeout","state","currentTime","now","componentDidMount","loadData","componentDidUpdate","prevProps","prevState","_prevState$data","data","timer","result","Boolean","undefined","startTimer","stopTimer","componentWillUnmount","cancel","window","setInterval","clearInterval","updateTime","setState","error","concat","onUpdate","render","_result$error","errorMessage","timeString","previewText","getPreviewText","hasTimeString","className","children","length","icon"],"sources":["../../src/command-history/CommandHistoryItemTooltip.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport debounce from 'lodash.debounce';\nimport memoize from 'memoizee';\nimport { LoadingSpinner } from '@deephaven/components';\nimport { TimeUtils } from '@deephaven/utils';\nimport { StorageListenerRemover } from '@deephaven/storage';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { vsWarning } from '@deephaven/icons';\nimport Code from '../common/Code';\nimport './CommandHistoryItemTooltip.scss';\nimport CommandHistoryStorage, {\n CommandHistoryStorageData,\n CommandHistoryStorageItem,\n} from './CommandHistoryStorage';\n\ninterface CommandHistoryItemTooltipProps {\n item: CommandHistoryStorageItem;\n language: string;\n onUpdate?: (data: CommandHistoryStorageData | null) => void;\n commandHistoryStorage: CommandHistoryStorage;\n}\n\ninterface CommandHistoryItemTooltipState {\n currentTime: number;\n data?: CommandHistoryStorageData;\n error?: string;\n}\n\nconst LOAD_DATA_DEBOUNCE = 250;\nconst MAX_NUMBER_OF_LINES = 2500;\n\nexport class CommandHistoryItemTooltip extends Component<\n CommandHistoryItemTooltipProps,\n CommandHistoryItemTooltipState\n> {\n static defaultProps = {\n onUpdate: (): void => undefined,\n };\n\n static getTimeString(\n startTime: string | undefined,\n endTime: string | number\n ): string | null {\n if (startTime == null || endTime === '' || endTime === 0) {\n return null;\n }\n\n const deltaTime = Math.round(\n (new Date(endTime).valueOf() - new Date(startTime).valueOf()) / 1000\n );\n\n if (deltaTime < 1) return '<1s';\n\n return TimeUtils.formatElapsedTime(deltaTime);\n }\n\n constructor(props: CommandHistoryItemTooltipProps) {\n super(props);\n\n this.handleUpdate = this.handleUpdate.bind(this);\n this.handleError = this.handleError.bind(this);\n this.handleTimeout = this.handleTimeout.bind(this);\n\n this.state = {\n currentTime: Date.now(),\n };\n }\n\n componentDidMount(): void {\n this.loadData();\n }\n\n componentDidUpdate(\n prevProps: CommandHistoryItemTooltipProps,\n prevState: CommandHistoryItemTooltipState\n ): void {\n const { data } = this.state;\n\n if (\n this.timer == null &&\n !data?.result &&\n Boolean(data?.startTime) &&\n !(data == null || data.endTime === undefined)\n ) {\n this.startTimer();\n } else if (\n (data?.result && !prevState.data?.result) ||\n (Boolean(data?.endTime) &&\n !(prevState.data == null || prevState.data.endTime === undefined))\n ) {\n // Command complete\n this.stopTimer();\n }\n }\n\n componentWillUnmount(): void {\n this.loadData.cancel();\n if (this.cleanup != null) {\n this.cleanup();\n }\n this.stopTimer();\n }\n\n timer?: number;\n\n cleanup?: StorageListenerRemover;\n\n loadData = debounce((): void => {\n const { commandHistoryStorage, item, language } = this.props;\n const { id } = item;\n this.cleanup = commandHistoryStorage.listenItem(\n language,\n id,\n this.handleUpdate,\n this.handleError\n );\n }, LOAD_DATA_DEBOUNCE);\n\n startTimer(): void {\n this.stopTimer();\n\n this.timer = window.setInterval(this.handleTimeout, 1000);\n }\n\n stopTimer(): void {\n if (this.timer != null) {\n clearInterval(this.timer);\n this.timer = undefined;\n }\n }\n\n updateTime(): void {\n this.setState({\n currentTime: Date.now(),\n });\n }\n\n handleError(error: string): void {\n this.setState({ error: `${error}` });\n }\n\n handleUpdate(item: CommandHistoryStorageItem): void {\n const { data } = item ?? {};\n this.setState({ data });\n\n const { onUpdate } = this.props;\n onUpdate?.(data);\n }\n\n handleTimeout(): void {\n this.updateTime();\n }\n\n getPreviewText = memoize(\n (name: string) => name.split('\\n', MAX_NUMBER_OF_LINES).join('\\n'),\n { max: 1 }\n );\n\n render(): ReactElement {\n const {\n item: { name },\n language,\n } = this.props;\n const { currentTime, data, error } = this.state;\n const { result, startTime, endTime } = data ?? {};\n\n const errorMessage = result?.error ?? error;\n\n const timeString = CommandHistoryItemTooltip.getTimeString(\n startTime,\n endTime ?? currentTime\n );\n\n // colorizing in monaco is mostly a function of the number of lines,\n // it gets real slow after a few thousand lines. Truncate the tooltip\n // to avoid UI locks. The full command is still inserted.\n const previewText = this.getPreviewText(name);\n\n const hasTimeString = Boolean(timeString);\n return (\n <div className=\"command-history-item-tooltip\">\n <div className=\"scroll-container\">\n <Code language={language}>{previewText}</Code>\n {previewText.length < name.length && <p>Preview Truncated...</p>}\n </div>\n <div className=\"result-info\">\n <div className=\"d-flex justify-content-between\">\n {Boolean(errorMessage) && (\n <div className=\"text-danger mr-1\">\n <FontAwesomeIcon icon={vsWarning} /> Executed with errors\n </div>\n )}\n <div className=\"time-wrapper\">\n Elapsed time:{' '}\n {hasTimeString ? (\n <span className=\"time-string\">{timeString}</span>\n ) : (\n <LoadingSpinner className=\"loading-spinner-vertical-align\" />\n )}\n </div>\n </div>\n {Boolean(errorMessage) && (\n <div className=\"error-message\">{errorMessage}</div>\n )}\n </div>\n </div>\n );\n }\n}\n\nexport default CommandHistoryItemTooltip;\n"],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Component, ReactElement } from 'react';
3
2
  import './ConsoleHistoryResultInProgress.scss';
4
3
  interface ConsoleHistoryResultInProgressProps {
@@ -18,7 +17,7 @@ declare class ConsoleHistoryResultInProgress extends Component<ConsoleHistoryRes
18
17
  constructor(props: ConsoleHistoryResultInProgressProps);
19
18
  componentDidMount(): void;
20
19
  componentWillUnmount(): void;
21
- timer?: NodeJS.Timer;
20
+ timer?: number;
22
21
  startTime: number;
23
22
  updateElapsed(): void;
24
23
  render(): ReactElement;
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleHistoryResultInProgress.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryResultInProgress.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAKvD,OAAO,uCAAuC,CAAC;AAE/C,UAAU,mCAAmC;IAC3C,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,mCAAmC;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;GAEG;AACH,cAAM,8BAA+B,SAAQ,SAAS,CACpD,mCAAmC,EACnC,mCAAmC,CACpC;IACC,MAAM,CAAC,YAAY;;MAEjB;gBAEU,KAAK,EAAE,mCAAmC;IAYtD,iBAAiB,IAAI,IAAI;IAIzB,oBAAoB,IAAI,IAAI;IAQ5B,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa,IAAI,IAAI;IAMrB,MAAM,IAAI,YAAY;CAwBvB;AAED,eAAe,8BAA8B,CAAC"}
1
+ {"version":3,"file":"ConsoleHistoryResultInProgress.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryResultInProgress.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAKvD,OAAO,uCAAuC,CAAC;AAE/C,UAAU,mCAAmC;IAC3C,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,mCAAmC;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;GAEG;AACH,cAAM,8BAA+B,SAAQ,SAAS,CACpD,mCAAmC,EACnC,mCAAmC,CACpC;IACC,MAAM,CAAC,YAAY;;MAEjB;gBAEU,KAAK,EAAE,mCAAmC;IAYtD,iBAAiB,IAAI,IAAI;IAIzB,oBAAoB,IAAI,IAAI;IAQ5B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa,IAAI,IAAI;IAMrB,MAAM,IAAI,YAAY;CAwBvB;AAED,eAAe,8BAA8B,CAAC"}
@@ -24,10 +24,10 @@ class ConsoleHistoryResultInProgress extends Component {
24
24
  };
25
25
  }
26
26
  componentDidMount() {
27
- this.timer = setInterval(this.updateElapsed, 1000);
27
+ this.timer = window.setInterval(this.updateElapsed, 1000);
28
28
  }
29
29
  componentWillUnmount() {
30
- if (this.timer) {
30
+ if (this.timer != null) {
31
31
  clearInterval(this.timer);
32
32
  }
33
33
  this.timer = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleHistoryResultInProgress.js","names":["React","Component","classNames","Button","LoadingSpinner","vsClose","TimeUtils","jsx","_jsx","jsxs","_jsxs","ConsoleHistoryResultInProgress","constructor","props","_defineProperty","updateElapsed","bind","startTime","Date","now","state","elapsed","componentDidMount","timer","setInterval","componentWillUnmount","clearInterval","undefined","setState","Math","round","render","disabled","onCancelClick","className","children","formatElapsedTime","kind","icon","tooltip","onClick"],"sources":["../../src/console-history/ConsoleHistoryResultInProgress.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { Button, LoadingSpinner } from '@deephaven/components';\nimport { vsClose } from '@deephaven/icons';\nimport { TimeUtils } from '@deephaven/utils';\nimport './ConsoleHistoryResultInProgress.scss';\n\ninterface ConsoleHistoryResultInProgressProps {\n onCancelClick: () => void;\n disabled: boolean;\n}\n\ninterface ConsoleHistoryResultInProgressState {\n elapsed: number;\n}\n/**\n * A spinner shown when a command is taking a while.\n */\nclass ConsoleHistoryResultInProgress extends Component<\n ConsoleHistoryResultInProgressProps,\n ConsoleHistoryResultInProgressState\n> {\n static defaultProps = {\n disabled: false,\n };\n\n constructor(props: ConsoleHistoryResultInProgressProps) {\n super(props);\n\n this.updateElapsed = this.updateElapsed.bind(this);\n\n this.startTime = Date.now();\n\n this.state = {\n elapsed: 0,\n };\n }\n\n componentDidMount(): void {\n this.timer = setInterval(this.updateElapsed, 1000);\n }\n\n componentWillUnmount(): void {\n if (this.timer) {\n clearInterval(this.timer);\n }\n\n this.timer = undefined;\n }\n\n timer?: NodeJS.Timer;\n\n startTime: number;\n\n updateElapsed(): void {\n this.setState({\n elapsed: Math.round((Date.now() - this.startTime) / 1000),\n });\n }\n\n render(): ReactElement {\n const { disabled, onCancelClick } = this.props;\n const { elapsed } = this.state;\n return (\n <div\n className={classNames('console-history-result-in-progress', {\n disabled,\n })}\n >\n <span className=\"badge\">\n <LoadingSpinner className=\"ml-2\" />\n Running... {TimeUtils.formatElapsedTime(elapsed)}&nbsp;\n <Button\n className=\"console-history-result-in-progress-cancel\"\n kind=\"ghost\"\n icon={vsClose}\n tooltip=\"Cancel\"\n onClick={onCancelClick}\n disabled={disabled}\n />\n </span>\n </div>\n );\n }\n}\n\nexport default ConsoleHistoryResultInProgress;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAsB,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,EAAEC,cAAc,QAAQ,uBAAuB;AAC9D,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,SAAS,QAAQ,kBAAkB;AAAC;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAW7C;AACA;AACA;AACA,MAAMC,8BAA8B,SAASV,SAAS,CAGpD;EAKAW,WAAWA,CAACC,KAA0C,EAAE;IACtD,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA;IAAAA,eAAA;IAEb,IAAI,CAACC,aAAa,GAAG,IAAI,CAACA,aAAa,CAACC,IAAI,CAAC,IAAI,CAAC;IAElD,IAAI,CAACC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;IAE3B,IAAI,CAACC,KAAK,GAAG;MACXC,OAAO,EAAE;IACX,CAAC;EACH;EAEAC,iBAAiBA,CAAA,EAAS;IACxB,IAAI,CAACC,KAAK,GAAGC,WAAW,CAAC,IAAI,CAACT,aAAa,EAAE,IAAI,CAAC;EACpD;EAEAU,oBAAoBA,CAAA,EAAS;IAC3B,IAAI,IAAI,CAACF,KAAK,EAAE;MACdG,aAAa,CAAC,IAAI,CAACH,KAAK,CAAC;IAC3B;IAEA,IAAI,CAACA,KAAK,GAAGI,SAAS;EACxB;EAMAZ,aAAaA,CAAA,EAAS;IACpB,IAAI,CAACa,QAAQ,CAAC;MACZP,OAAO,EAAEQ,IAAI,CAACC,KAAK,CAAC,CAACZ,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,IAAI,CAACF,SAAS,IAAI,IAAI;IAC1D,CAAC,CAAC;EACJ;EAEAc,MAAMA,CAAA,EAAiB;IACrB,IAAM;MAAEC,QAAQ;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACpB,KAAK;IAC9C,IAAM;MAAEQ;IAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;IAC9B,oBACEZ,IAAA;MACE0B,SAAS,EAAEhC,UAAU,CAAC,oCAAoC,EAAE;QAC1D8B;MACF,CAAC,CAAE;MAAAG,QAAA,eAEHzB,KAAA;QAAMwB,SAAS,EAAC,OAAO;QAAAC,QAAA,gBACrB3B,IAAA,CAACJ,cAAc;UAAC8B,SAAS,EAAC;QAAM,CAAE,CAAC,eACxB,EAAC5B,SAAS,CAAC8B,iBAAiB,CAACf,OAAO,CAAC,EAAC,MACjD,eAAAb,IAAA,CAACL,MAAM;UACL+B,SAAS,EAAC,2CAA2C;UACrDG,IAAI,EAAC,OAAO;UACZC,IAAI,EAAEjC,OAAQ;UACdkC,OAAO,EAAC,QAAQ;UAChBC,OAAO,EAAEP,aAAc;UACvBD,QAAQ,EAAEA;QAAS,CACpB,CAAC;MAAA,CACE;IAAC,CACJ,CAAC;EAEV;AACF;AAAClB,eAAA,CAlEKH,8BAA8B,kBAIZ;EACpBqB,QAAQ,EAAE;AACZ,CAAC;AA8DH,eAAerB,8BAA8B"}
1
+ {"version":3,"file":"ConsoleHistoryResultInProgress.js","names":["React","Component","classNames","Button","LoadingSpinner","vsClose","TimeUtils","jsx","_jsx","jsxs","_jsxs","ConsoleHistoryResultInProgress","constructor","props","_defineProperty","updateElapsed","bind","startTime","Date","now","state","elapsed","componentDidMount","timer","window","setInterval","componentWillUnmount","clearInterval","undefined","setState","Math","round","render","disabled","onCancelClick","className","children","formatElapsedTime","kind","icon","tooltip","onClick"],"sources":["../../src/console-history/ConsoleHistoryResultInProgress.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { Button, LoadingSpinner } from '@deephaven/components';\nimport { vsClose } from '@deephaven/icons';\nimport { TimeUtils } from '@deephaven/utils';\nimport './ConsoleHistoryResultInProgress.scss';\n\ninterface ConsoleHistoryResultInProgressProps {\n onCancelClick: () => void;\n disabled: boolean;\n}\n\ninterface ConsoleHistoryResultInProgressState {\n elapsed: number;\n}\n/**\n * A spinner shown when a command is taking a while.\n */\nclass ConsoleHistoryResultInProgress extends Component<\n ConsoleHistoryResultInProgressProps,\n ConsoleHistoryResultInProgressState\n> {\n static defaultProps = {\n disabled: false,\n };\n\n constructor(props: ConsoleHistoryResultInProgressProps) {\n super(props);\n\n this.updateElapsed = this.updateElapsed.bind(this);\n\n this.startTime = Date.now();\n\n this.state = {\n elapsed: 0,\n };\n }\n\n componentDidMount(): void {\n this.timer = window.setInterval(this.updateElapsed, 1000);\n }\n\n componentWillUnmount(): void {\n if (this.timer != null) {\n clearInterval(this.timer);\n }\n\n this.timer = undefined;\n }\n\n timer?: number;\n\n startTime: number;\n\n updateElapsed(): void {\n this.setState({\n elapsed: Math.round((Date.now() - this.startTime) / 1000),\n });\n }\n\n render(): ReactElement {\n const { disabled, onCancelClick } = this.props;\n const { elapsed } = this.state;\n return (\n <div\n className={classNames('console-history-result-in-progress', {\n disabled,\n })}\n >\n <span className=\"badge\">\n <LoadingSpinner className=\"ml-2\" />\n Running... {TimeUtils.formatElapsedTime(elapsed)}&nbsp;\n <Button\n className=\"console-history-result-in-progress-cancel\"\n kind=\"ghost\"\n icon={vsClose}\n tooltip=\"Cancel\"\n onClick={onCancelClick}\n disabled={disabled}\n />\n </span>\n </div>\n );\n }\n}\n\nexport default ConsoleHistoryResultInProgress;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAsB,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,EAAEC,cAAc,QAAQ,uBAAuB;AAC9D,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,SAAS,QAAQ,kBAAkB;AAAC;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAW7C;AACA;AACA;AACA,MAAMC,8BAA8B,SAASV,SAAS,CAGpD;EAKAW,WAAWA,CAACC,KAA0C,EAAE;IACtD,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA;IAAAA,eAAA;IAEb,IAAI,CAACC,aAAa,GAAG,IAAI,CAACA,aAAa,CAACC,IAAI,CAAC,IAAI,CAAC;IAElD,IAAI,CAACC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;IAE3B,IAAI,CAACC,KAAK,GAAG;MACXC,OAAO,EAAE;IACX,CAAC;EACH;EAEAC,iBAAiBA,CAAA,EAAS;IACxB,IAAI,CAACC,KAAK,GAAGC,MAAM,CAACC,WAAW,CAAC,IAAI,CAACV,aAAa,EAAE,IAAI,CAAC;EAC3D;EAEAW,oBAAoBA,CAAA,EAAS;IAC3B,IAAI,IAAI,CAACH,KAAK,IAAI,IAAI,EAAE;MACtBI,aAAa,CAAC,IAAI,CAACJ,KAAK,CAAC;IAC3B;IAEA,IAAI,CAACA,KAAK,GAAGK,SAAS;EACxB;EAMAb,aAAaA,CAAA,EAAS;IACpB,IAAI,CAACc,QAAQ,CAAC;MACZR,OAAO,EAAES,IAAI,CAACC,KAAK,CAAC,CAACb,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,IAAI,CAACF,SAAS,IAAI,IAAI;IAC1D,CAAC,CAAC;EACJ;EAEAe,MAAMA,CAAA,EAAiB;IACrB,IAAM;MAAEC,QAAQ;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACrB,KAAK;IAC9C,IAAM;MAAEQ;IAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;IAC9B,oBACEZ,IAAA;MACE2B,SAAS,EAAEjC,UAAU,CAAC,oCAAoC,EAAE;QAC1D+B;MACF,CAAC,CAAE;MAAAG,QAAA,eAEH1B,KAAA;QAAMyB,SAAS,EAAC,OAAO;QAAAC,QAAA,gBACrB5B,IAAA,CAACJ,cAAc;UAAC+B,SAAS,EAAC;QAAM,CAAE,CAAC,eACxB,EAAC7B,SAAS,CAAC+B,iBAAiB,CAAChB,OAAO,CAAC,EAAC,MACjD,eAAAb,IAAA,CAACL,MAAM;UACLgC,SAAS,EAAC,2CAA2C;UACrDG,IAAI,EAAC,OAAO;UACZC,IAAI,EAAElC,OAAQ;UACdmC,OAAO,EAAC,QAAQ;UAChBC,OAAO,EAAEP,aAAc;UACvBD,QAAQ,EAAEA;QAAS,CACpB,CAAC;MAAA,CACE;IAAC,CACJ,CAAC;EAEV;AACF;AAACnB,eAAA,CAlEKH,8BAA8B,kBAIZ;EACpBsB,QAAQ,EAAE;AACZ,CAAC;AA8DH,eAAetB,8BAA8B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/console",
3
- "version": "0.92.0",
3
+ "version": "0.92.1-beta.1+73319760",
4
4
  "description": "Deephaven Console",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -23,15 +23,15 @@
23
23
  "build:sass": "sass --embed-sources --load-path=../../node_modules ./src:./dist"
24
24
  },
25
25
  "dependencies": {
26
- "@deephaven/chart": "^0.92.0",
27
- "@deephaven/components": "^0.92.0",
28
- "@deephaven/icons": "^0.92.0",
29
- "@deephaven/jsapi-bootstrap": "^0.92.0",
26
+ "@deephaven/chart": "^0.92.1-beta.1+73319760",
27
+ "@deephaven/components": "^0.92.1-beta.1+73319760",
28
+ "@deephaven/icons": "^0.92.1-beta.1+73319760",
29
+ "@deephaven/jsapi-bootstrap": "^0.92.1-beta.1+73319760",
30
30
  "@deephaven/jsapi-types": "^1.0.0-dev0.34.0",
31
- "@deephaven/log": "^0.92.0",
32
- "@deephaven/react-hooks": "^0.92.0",
33
- "@deephaven/storage": "^0.92.0",
34
- "@deephaven/utils": "^0.92.0",
31
+ "@deephaven/log": "^0.92.1-beta.1+73319760",
32
+ "@deephaven/react-hooks": "^0.92.1-beta.1+73319760",
33
+ "@deephaven/storage": "^0.92.1-beta.1+73319760",
34
+ "@deephaven/utils": "^0.92.1-beta.1+73319760",
35
35
  "@fortawesome/react-fontawesome": "^0.2.0",
36
36
  "classnames": "^2.3.1",
37
37
  "linkifyjs": "^4.1.0",
@@ -51,8 +51,8 @@
51
51
  "react-dom": ">=16.8.0"
52
52
  },
53
53
  "devDependencies": {
54
- "@deephaven/jsapi-shim": "^0.92.0",
55
- "@deephaven/mocks": "^0.92.0"
54
+ "@deephaven/jsapi-shim": "^0.92.1-beta.1+73319760",
55
+ "@deephaven/mocks": "^0.92.1-beta.1+73319760"
56
56
  },
57
57
  "files": [
58
58
  "dist"
@@ -63,5 +63,5 @@
63
63
  "publishConfig": {
64
64
  "access": "public"
65
65
  },
66
- "gitHead": "0994c522bcda37eb79e3a6bf2f3ac63f680a49c5"
66
+ "gitHead": "7331976004ed9b33fca9d97919d359dd881e8d0a"
67
67
  }