@deephaven/console 0.46.1-beta.2 → 0.46.1-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/Console.js +66 -59
  2. package/dist/Console.js.map +1 -1
  3. package/dist/ConsoleInput.js +20 -16
  4. package/dist/ConsoleInput.js.map +1 -1
  5. package/dist/ConsoleMenu.js +73 -67
  6. package/dist/ConsoleMenu.js.map +1 -1
  7. package/dist/ConsoleStatusBar.js +17 -10
  8. package/dist/ConsoleStatusBar.js.map +1 -1
  9. package/dist/HeapUsage.js +89 -74
  10. package/dist/HeapUsage.js.map +1 -1
  11. package/dist/command-history/CommandHistory.js +43 -38
  12. package/dist/command-history/CommandHistory.js.map +1 -1
  13. package/dist/command-history/CommandHistoryActions.js +25 -22
  14. package/dist/command-history/CommandHistoryActions.js.map +1 -1
  15. package/dist/command-history/CommandHistoryItem.js +25 -21
  16. package/dist/command-history/CommandHistoryItem.js.map +1 -1
  17. package/dist/command-history/CommandHistoryItemTooltip.js +34 -21
  18. package/dist/command-history/CommandHistoryItemTooltip.js.map +1 -1
  19. package/dist/common/Code.js +16 -12
  20. package/dist/common/Code.js.map +1 -1
  21. package/dist/common/ObjectIcon.js +5 -4
  22. package/dist/common/ObjectIcon.js.map +1 -1
  23. package/dist/console-history/ConsoleHistory.js +7 -6
  24. package/dist/console-history/ConsoleHistory.js.map +1 -1
  25. package/dist/console-history/ConsoleHistoryItem.js +35 -28
  26. package/dist/console-history/ConsoleHistoryItem.js.map +1 -1
  27. package/dist/console-history/ConsoleHistoryItemResult.js +12 -7
  28. package/dist/console-history/ConsoleHistoryItemResult.js.map +1 -1
  29. package/dist/console-history/ConsoleHistoryResultErrorMessage.js +41 -30
  30. package/dist/console-history/ConsoleHistoryResultErrorMessage.js.map +1 -1
  31. package/dist/console-history/ConsoleHistoryResultInProgress.js +15 -11
  32. package/dist/console-history/ConsoleHistoryResultInProgress.js.map +1 -1
  33. package/dist/csv/CsvInputBar.d.ts +1 -1
  34. package/dist/csv/CsvInputBar.d.ts.map +1 -1
  35. package/dist/csv/CsvInputBar.js +80 -60
  36. package/dist/csv/CsvInputBar.js.map +1 -1
  37. package/dist/csv/CsvOverlay.js +74 -50
  38. package/dist/csv/CsvOverlay.js.map +1 -1
  39. package/dist/csv/CsvParser.d.ts +4 -2
  40. package/dist/csv/CsvParser.d.ts.map +1 -1
  41. package/dist/csv/CsvParser.js +21 -7
  42. package/dist/csv/CsvParser.js.map +1 -1
  43. package/dist/csv/CsvTypeParser.d.ts +4 -3
  44. package/dist/csv/CsvTypeParser.d.ts.map +1 -1
  45. package/dist/csv/CsvTypeParser.js +16 -7
  46. package/dist/csv/CsvTypeParser.js.map +1 -1
  47. package/dist/csv/ZipStreamHelper.d.ts +14 -0
  48. package/dist/csv/ZipStreamHelper.d.ts.map +1 -0
  49. package/dist/csv/ZipStreamHelper.js +15 -0
  50. package/dist/csv/ZipStreamHelper.js.map +1 -0
  51. package/dist/log/LogLevelMenuItem.js +9 -6
  52. package/dist/log/LogLevelMenuItem.js.map +1 -1
  53. package/dist/log/LogView.js +51 -42
  54. package/dist/log/LogView.js.map +1 -1
  55. package/dist/notebook/Editor.js +2 -1
  56. package/dist/notebook/Editor.js.map +1 -1
  57. package/dist/notebook/ScriptEditor.js +27 -18
  58. package/dist/notebook/ScriptEditor.js.map +1 -1
  59. package/package.json +13 -13
@@ -3,6 +3,8 @@ import classNames from 'classnames';
3
3
  import { Tooltip } from '@deephaven/components';
4
4
  import "./CommandHistoryItem.css";
5
5
  import CommandHistoryItemTooltip from "./CommandHistoryItemTooltip.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ import { jsxs as _jsxs } from "react/jsx-runtime";
6
8
  var MAX_TRUNCATE_LENGTH = 512;
7
9
  function CommandHistoryItem(props) {
8
10
  var {
@@ -17,31 +19,33 @@ function CommandHistoryItem(props) {
17
19
  var _tooltip$current;
18
20
  (_tooltip$current = tooltip.current) === null || _tooltip$current === void 0 ? void 0 : _tooltip$current.update();
19
21
  }, [tooltip]);
20
- return /*#__PURE__*/React.createElement("div", {
22
+ return /*#__PURE__*/_jsxs("div", {
21
23
  className: classNames('command-history-item', {
22
24
  selected: isSelected
23
- })
24
- }, previewText, /*#__PURE__*/React.createElement(Tooltip, {
25
- ref: tooltip,
26
- interactive: true,
27
- options: {
28
- placement: 'left',
29
- modifiers: {
30
- preventOverflow: {
31
- enabled: true,
32
- boundariesElement: 'viewport',
33
- order: 825 // modify order so boundary is enforced at end of popper calcs
25
+ }),
26
+ children: [previewText, /*#__PURE__*/_jsx(Tooltip, {
27
+ ref: tooltip,
28
+ interactive: true,
29
+ options: {
30
+ placement: 'left',
31
+ modifiers: {
32
+ preventOverflow: {
33
+ enabled: true,
34
+ boundariesElement: 'viewport',
35
+ order: 825 // modify order so boundary is enforced at end of popper calcs
36
+ }
34
37
  }
35
- }
36
- },
38
+ },
37
39
 
38
- popperClassName: "command-history-item-popper"
39
- }, /*#__PURE__*/React.createElement(CommandHistoryItemTooltip, {
40
- item: item,
41
- language: language,
42
- onUpdate: handleUpdate,
43
- commandHistoryStorage: commandHistoryStorage
44
- })));
40
+ popperClassName: "command-history-item-popper",
41
+ children: /*#__PURE__*/_jsx(CommandHistoryItemTooltip, {
42
+ item: item,
43
+ language: language,
44
+ onUpdate: handleUpdate,
45
+ commandHistoryStorage: commandHistoryStorage
46
+ })
47
+ })]
48
+ });
45
49
  }
46
50
  CommandHistoryItem.defaultProps = {
47
51
  isSelected: false
@@ -1 +1 @@
1
- {"version":3,"file":"CommandHistoryItem.js","names":["React","useRef","useCallback","classNames","Tooltip","CommandHistoryItemTooltip","MAX_TRUNCATE_LENGTH","CommandHistoryItem","props","item","language","isSelected","commandHistoryStorage","previewText","name","substring","tooltip","handleUpdate","current","update","selected","placement","modifiers","preventOverflow","enabled","boundariesElement","order","defaultProps"],"sources":["../../src/command-history/CommandHistoryItem.tsx"],"sourcesContent":["import React, { useRef, useCallback, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { Tooltip } from '@deephaven/components';\n\nimport './CommandHistoryItem.scss';\nimport CommandHistoryItemTooltip from './CommandHistoryItemTooltip';\nimport CommandHistoryStorage, {\n CommandHistoryStorageItem,\n} from './CommandHistoryStorage';\n\ninterface CommandHistoryItemProps {\n item: CommandHistoryStorageItem;\n language: string;\n isSelected?: boolean;\n commandHistoryStorage: CommandHistoryStorage;\n}\n\nconst MAX_TRUNCATE_LENGTH = 512;\n\nfunction CommandHistoryItem(props: CommandHistoryItemProps): ReactElement {\n const { item, language, isSelected, commandHistoryStorage } = props;\n const previewText = item.name.substring(0, MAX_TRUNCATE_LENGTH);\n const tooltip = useRef<Tooltip>(null);\n const handleUpdate = useCallback(() => {\n tooltip.current?.update();\n }, [tooltip]);\n\n return (\n <div\n className={classNames('command-history-item', {\n selected: isSelected,\n })}\n >\n {previewText}\n <Tooltip\n ref={tooltip}\n interactive\n options={{\n placement: 'left',\n modifiers: {\n preventOverflow: {\n enabled: true,\n boundariesElement: 'viewport',\n order: 825, // modify order so boundary is enforced at end of popper calcs\n },\n },\n }}\n popperClassName=\"command-history-item-popper\"\n >\n <CommandHistoryItemTooltip\n item={item}\n language={language}\n onUpdate={handleUpdate}\n commandHistoryStorage={commandHistoryStorage}\n />\n </Tooltip>\n </div>\n );\n}\n\nCommandHistoryItem.defaultProps = {\n isSelected: false,\n};\n\nexport default CommandHistoryItem;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,MAAM,EAAEC,WAAW,QAAsB,OAAO;AAChE,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,OAAO,QAAQ,uBAAuB;AAAC;AAAA,OAGzCC,yBAAyB;AAYhC,IAAMC,mBAAmB,GAAG,GAAG;AAE/B,SAASC,kBAAkB,CAACC,KAA8B,EAAgB;EACxE,IAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC,UAAU;IAAEC;EAAsB,CAAC,GAAGJ,KAAK;EACnE,IAAMK,WAAW,GAAGJ,IAAI,CAACK,IAAI,CAACC,SAAS,CAAC,CAAC,EAAET,mBAAmB,CAAC;EAC/D,IAAMU,OAAO,GAAGf,MAAM,CAAU,IAAI,CAAC;EACrC,IAAMgB,YAAY,GAAGf,WAAW,CAAC,MAAM;IAAA;IACrC,oBAAAc,OAAO,CAACE,OAAO,qDAAf,iBAAiBC,MAAM,EAAE;EAC3B,CAAC,EAAE,CAACH,OAAO,CAAC,CAAC;EAEb,oBACE;IACE,SAAS,EAAEb,UAAU,CAAC,sBAAsB,EAAE;MAC5CiB,QAAQ,EAAET;IACZ,CAAC;EAAE,GAEFE,WAAW,eACZ,oBAAC,OAAO;IACN,GAAG,EAAEG,OAAQ;IACb,WAAW;IACX,OAAO,EAAE;MACPK,SAAS,EAAE,MAAM;MACjBC,SAAS,EAAE;QACTC,eAAe,EAAE;UACfC,OAAO,EAAE,IAAI;UACbC,iBAAiB,EAAE,UAAU;UAC7BC,KAAK,EAAE,GAAG,CAAE;QACd;MACF;IACF,CAAE;;IACF,eAAe,EAAC;EAA6B,gBAE7C,oBAAC,yBAAyB;IACxB,IAAI,EAAEjB,IAAK;IACX,QAAQ,EAAEC,QAAS;IACnB,QAAQ,EAAEO,YAAa;IACvB,qBAAqB,EAAEL;EAAsB,EAC7C,CACM,CACN;AAEV;AAEAL,kBAAkB,CAACoB,YAAY,GAAG;EAChChB,UAAU,EAAE;AACd,CAAC;AAED,eAAeJ,kBAAkB"}
1
+ {"version":3,"file":"CommandHistoryItem.js","names":["React","useRef","useCallback","classNames","Tooltip","CommandHistoryItemTooltip","MAX_TRUNCATE_LENGTH","CommandHistoryItem","props","item","language","isSelected","commandHistoryStorage","previewText","name","substring","tooltip","handleUpdate","current","update","selected","placement","modifiers","preventOverflow","enabled","boundariesElement","order","defaultProps"],"sources":["../../src/command-history/CommandHistoryItem.tsx"],"sourcesContent":["import React, { useRef, useCallback, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { Tooltip } from '@deephaven/components';\n\nimport './CommandHistoryItem.scss';\nimport CommandHistoryItemTooltip from './CommandHistoryItemTooltip';\nimport CommandHistoryStorage, {\n CommandHistoryStorageItem,\n} from './CommandHistoryStorage';\n\ninterface CommandHistoryItemProps {\n item: CommandHistoryStorageItem;\n language: string;\n isSelected?: boolean;\n commandHistoryStorage: CommandHistoryStorage;\n}\n\nconst MAX_TRUNCATE_LENGTH = 512;\n\nfunction CommandHistoryItem(props: CommandHistoryItemProps): ReactElement {\n const { item, language, isSelected, commandHistoryStorage } = props;\n const previewText = item.name.substring(0, MAX_TRUNCATE_LENGTH);\n const tooltip = useRef<Tooltip>(null);\n const handleUpdate = useCallback(() => {\n tooltip.current?.update();\n }, [tooltip]);\n\n return (\n <div\n className={classNames('command-history-item', {\n selected: isSelected,\n })}\n >\n {previewText}\n <Tooltip\n ref={tooltip}\n interactive\n options={{\n placement: 'left',\n modifiers: {\n preventOverflow: {\n enabled: true,\n boundariesElement: 'viewport',\n order: 825, // modify order so boundary is enforced at end of popper calcs\n },\n },\n }}\n popperClassName=\"command-history-item-popper\"\n >\n <CommandHistoryItemTooltip\n item={item}\n language={language}\n onUpdate={handleUpdate}\n commandHistoryStorage={commandHistoryStorage}\n />\n </Tooltip>\n </div>\n );\n}\n\nCommandHistoryItem.defaultProps = {\n isSelected: false,\n};\n\nexport default CommandHistoryItem;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,MAAM,EAAEC,WAAW,QAAsB,OAAO;AAChE,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,OAAO,QAAQ,uBAAuB;AAAC;AAAA,OAGzCC,yBAAyB;AAAA;AAAA;AAYhC,IAAMC,mBAAmB,GAAG,GAAG;AAE/B,SAASC,kBAAkB,CAACC,KAA8B,EAAgB;EACxE,IAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC,UAAU;IAAEC;EAAsB,CAAC,GAAGJ,KAAK;EACnE,IAAMK,WAAW,GAAGJ,IAAI,CAACK,IAAI,CAACC,SAAS,CAAC,CAAC,EAAET,mBAAmB,CAAC;EAC/D,IAAMU,OAAO,GAAGf,MAAM,CAAU,IAAI,CAAC;EACrC,IAAMgB,YAAY,GAAGf,WAAW,CAAC,MAAM;IAAA;IACrC,oBAAAc,OAAO,CAACE,OAAO,qDAAf,iBAAiBC,MAAM,EAAE;EAC3B,CAAC,EAAE,CAACH,OAAO,CAAC,CAAC;EAEb,oBACE;IACE,SAAS,EAAEb,UAAU,CAAC,sBAAsB,EAAE;MAC5CiB,QAAQ,EAAET;IACZ,CAAC,CAAE;IAAA,WAEFE,WAAW,eACZ,KAAC,OAAO;MACN,GAAG,EAAEG,OAAQ;MACb,WAAW;MACX,OAAO,EAAE;QACPK,SAAS,EAAE,MAAM;QACjBC,SAAS,EAAE;UACTC,eAAe,EAAE;YACfC,OAAO,EAAE,IAAI;YACbC,iBAAiB,EAAE,UAAU;YAC7BC,KAAK,EAAE,GAAG,CAAE;UACd;QACF;MACF,CAAE;;MACF,eAAe,EAAC,6BAA6B;MAAA,uBAE7C,KAAC,yBAAyB;QACxB,IAAI,EAAEjB,IAAK;QACX,QAAQ,EAAEC,QAAS;QACnB,QAAQ,EAAEO,YAAa;QACvB,qBAAqB,EAAEL;MAAsB;IAC7C,EACM;EAAA,EACN;AAEV;AAEAL,kBAAkB,CAACoB,YAAY,GAAG;EAChChB,UAAU,EAAE;AACd,CAAC;AAED,eAAeJ,kBAAkB"}
@@ -10,6 +10,8 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
10
10
  import { vsWarning } from '@deephaven/icons';
11
11
  import Code from "../common/Code.js";
12
12
  import "./CommandHistoryItemTooltip.css";
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ import { jsxs as _jsxs } from "react/jsx-runtime";
13
15
  var LOAD_DATA_DEBOUNCE = 250;
14
16
  var MAX_NUMBER_OF_LINES = 2500;
15
17
  export class CommandHistoryItemTooltip extends Component {
@@ -129,27 +131,38 @@ export class CommandHistoryItemTooltip extends Component {
129
131
  // to avoid UI locks. The full command is still inserted.
130
132
  var previewText = this.getPreviewText(name);
131
133
  var hasTimeString = Boolean(timeString);
132
- return /*#__PURE__*/React.createElement("div", {
133
- className: "command-history-item-tooltip"
134
- }, /*#__PURE__*/React.createElement("div", {
135
- className: "scroll-container"
136
- }, /*#__PURE__*/React.createElement(Code, {
137
- language: language
138
- }, previewText), previewText.length < name.length && /*#__PURE__*/React.createElement("p", null, "Preview Truncated...")), /*#__PURE__*/React.createElement("div", {
139
- className: "result-info"
140
- }, /*#__PURE__*/React.createElement("div", {
141
- className: "d-flex justify-content-between"
142
- }, Boolean(errorMessage) && /*#__PURE__*/React.createElement("div", {
143
- className: "text-danger mr-1"
144
- }, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
145
- icon: vsWarning
146
- }), " Executed with errors"), /*#__PURE__*/React.createElement("div", {
147
- className: "time-wrapper"
148
- }, "Elapsed time:", ' ', hasTimeString ? /*#__PURE__*/React.createElement("span", {
149
- className: "time-string"
150
- }, timeString) : /*#__PURE__*/React.createElement(LoadingSpinner, null))), Boolean(errorMessage) && /*#__PURE__*/React.createElement("div", {
151
- className: "error-message"
152
- }, errorMessage)));
134
+ return /*#__PURE__*/_jsxs("div", {
135
+ className: "command-history-item-tooltip",
136
+ children: [/*#__PURE__*/_jsxs("div", {
137
+ className: "scroll-container",
138
+ children: [/*#__PURE__*/_jsx(Code, {
139
+ language: language,
140
+ children: previewText
141
+ }), previewText.length < name.length && /*#__PURE__*/_jsx("p", {
142
+ children: "Preview Truncated..."
143
+ })]
144
+ }), /*#__PURE__*/_jsxs("div", {
145
+ className: "result-info",
146
+ children: [/*#__PURE__*/_jsxs("div", {
147
+ className: "d-flex justify-content-between",
148
+ children: [Boolean(errorMessage) && /*#__PURE__*/_jsxs("div", {
149
+ className: "text-danger mr-1",
150
+ children: [/*#__PURE__*/_jsx(FontAwesomeIcon, {
151
+ icon: vsWarning
152
+ }), " Executed with errors"]
153
+ }), /*#__PURE__*/_jsxs("div", {
154
+ className: "time-wrapper",
155
+ children: ["Elapsed time:", ' ', hasTimeString ? /*#__PURE__*/_jsx("span", {
156
+ className: "time-string",
157
+ children: timeString
158
+ }) : /*#__PURE__*/_jsx(LoadingSpinner, {})]
159
+ })]
160
+ }), Boolean(errorMessage) && /*#__PURE__*/_jsx("div", {
161
+ className: "error-message",
162
+ children: errorMessage
163
+ })]
164
+ })]
165
+ });
153
166
  }
154
167
  }
155
168
  _defineProperty(CommandHistoryItemTooltip, "defaultProps", {
@@ -1 +1 @@
1
- {"version":3,"file":"CommandHistoryItemTooltip.js","names":["React","Component","debounce","memoize","LoadingSpinner","TimeUtils","FontAwesomeIcon","vsWarning","Code","LOAD_DATA_DEBOUNCE","MAX_NUMBER_OF_LINES","CommandHistoryItemTooltip","getTimeString","startTime","endTime","deltaTime","Math","round","Date","valueOf","formatElapsedTime","constructor","props","commandHistoryStorage","item","language","id","cleanup","listenItem","handleUpdate","handleError","name","split","join","max","bind","handleTimeout","state","currentTime","now","componentDidMount","loadData","componentDidUpdate","prevProps","prevState","data","timer","result","Boolean","undefined","startTimer","stopTimer","componentWillUnmount","cancel","setInterval","clearInterval","updateTime","setState","error","onUpdate","render","errorMessage","timeString","previewText","getPreviewText","hasTimeString","length"],"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 />\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","LOAD_DATA_DEBOUNCE","MAX_NUMBER_OF_LINES","CommandHistoryItemTooltip","getTimeString","startTime","endTime","deltaTime","Math","round","Date","valueOf","formatElapsedTime","constructor","props","commandHistoryStorage","item","language","id","cleanup","listenItem","handleUpdate","handleError","name","split","join","max","bind","handleTimeout","state","currentTime","now","componentDidMount","loadData","componentDidUpdate","prevProps","prevState","data","timer","result","Boolean","undefined","startTimer","stopTimer","componentWillUnmount","cancel","setInterval","clearInterval","updateTime","setState","error","onUpdate","render","errorMessage","timeString","previewText","getPreviewText","hasTimeString","length"],"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 />\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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"}
@@ -3,6 +3,7 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
3
3
  function _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); }
4
4
  import React, { Component } from 'react';
5
5
  import * as monaco from 'monaco-editor';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
6
7
  class Code extends Component {
7
8
  constructor(props) {
8
9
  super(props);
@@ -27,18 +28,21 @@ class Code extends Component {
27
28
  children,
28
29
  language
29
30
  } = this.props;
30
- return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
31
- "data-lang": language,
32
- ref: container => {
33
- this.container = container;
34
- }
35
- // Add pointerEvents: 'none' has huge benefits on performance with Hit Test testing on large colorized elements.
36
- // You can still select the text event with this set
37
- ,
38
- style: {
39
- pointerEvents: 'none'
40
- }
41
- }, children));
31
+ return /*#__PURE__*/_jsx("div", {
32
+ children: /*#__PURE__*/_jsx("div", {
33
+ "data-lang": language,
34
+ ref: container => {
35
+ this.container = container;
36
+ }
37
+ // Add pointerEvents: 'none' has huge benefits on performance with Hit Test testing on large colorized elements.
38
+ // You can still select the text event with this set
39
+ ,
40
+ style: {
41
+ pointerEvents: 'none'
42
+ },
43
+ children: children
44
+ })
45
+ });
42
46
  }
43
47
  }
44
48
  export default Code;
@@ -1 +1 @@
1
- {"version":3,"file":"Code.js","names":["React","Component","monaco","Code","constructor","props","container","componentDidMount","colorize","children","editor","colorizeElement","theme","render","language","pointerEvents"],"sources":["../../src/common/Code.tsx"],"sourcesContent":["import React, { Component, ReactElement, ReactNode } from 'react';\nimport * as monaco from 'monaco-editor';\n\ninterface CodeProps {\n children: ReactNode;\n language: string;\n}\n\nclass Code extends Component<CodeProps, Record<string, never>> {\n constructor(props: CodeProps) {\n super(props);\n\n this.container = null;\n }\n\n componentDidMount(): void {\n this.colorize();\n }\n\n container: HTMLDivElement | null;\n\n colorize(): void {\n const { children } = this.props;\n if (this.container && children != null) {\n monaco.editor.colorizeElement(this.container, {\n theme: 'dh-dark',\n });\n }\n }\n\n render(): ReactElement {\n const { children, language } = this.props;\n return (\n <div>\n <div\n data-lang={language}\n ref={container => {\n this.container = container;\n }}\n // Add pointerEvents: 'none' has huge benefits on performance with Hit Test testing on large colorized elements.\n // You can still select the text event with this set\n style={{ pointerEvents: 'none' }}\n >\n {children}\n </div>\n </div>\n );\n }\n}\n\nexport default Code;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAiC,OAAO;AACjE,OAAO,KAAKC,MAAM,MAAM,eAAe;AAOvC,MAAMC,IAAI,SAASF,SAAS,CAAmC;EAC7DG,WAAW,CAACC,KAAgB,EAAE;IAC5B,KAAK,CAACA,KAAK,CAAC;IAAC;IAEb,IAAI,CAACC,SAAS,GAAG,IAAI;EACvB;EAEAC,iBAAiB,GAAS;IACxB,IAAI,CAACC,QAAQ,EAAE;EACjB;EAIAA,QAAQ,GAAS;IACf,IAAM;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACJ,KAAK;IAC/B,IAAI,IAAI,CAACC,SAAS,IAAIG,QAAQ,IAAI,IAAI,EAAE;MACtCP,MAAM,CAACQ,MAAM,CAACC,eAAe,CAAC,IAAI,CAACL,SAAS,EAAE;QAC5CM,KAAK,EAAE;MACT,CAAC,CAAC;IACJ;EACF;EAEAC,MAAM,GAAiB;IACrB,IAAM;MAAEJ,QAAQ;MAAEK;IAAS,CAAC,GAAG,IAAI,CAACT,KAAK;IACzC,oBACE,8CACE;MACE,aAAWS,QAAS;MACpB,GAAG,EAAER,SAAS,IAAI;QAChB,IAAI,CAACA,SAAS,GAAGA,SAAS;MAC5B;MACA;MACA;MAAA;MACA,KAAK,EAAE;QAAES,aAAa,EAAE;MAAO;IAAE,GAEhCN,QAAQ,CACL,CACF;EAEV;AACF;AAEA,eAAeN,IAAI"}
1
+ {"version":3,"file":"Code.js","names":["React","Component","monaco","Code","constructor","props","container","componentDidMount","colorize","children","editor","colorizeElement","theme","render","language","pointerEvents"],"sources":["../../src/common/Code.tsx"],"sourcesContent":["import React, { Component, ReactElement, ReactNode } from 'react';\nimport * as monaco from 'monaco-editor';\n\ninterface CodeProps {\n children: ReactNode;\n language: string;\n}\n\nclass Code extends Component<CodeProps, Record<string, never>> {\n constructor(props: CodeProps) {\n super(props);\n\n this.container = null;\n }\n\n componentDidMount(): void {\n this.colorize();\n }\n\n container: HTMLDivElement | null;\n\n colorize(): void {\n const { children } = this.props;\n if (this.container && children != null) {\n monaco.editor.colorizeElement(this.container, {\n theme: 'dh-dark',\n });\n }\n }\n\n render(): ReactElement {\n const { children, language } = this.props;\n return (\n <div>\n <div\n data-lang={language}\n ref={container => {\n this.container = container;\n }}\n // Add pointerEvents: 'none' has huge benefits on performance with Hit Test testing on large colorized elements.\n // You can still select the text event with this set\n style={{ pointerEvents: 'none' }}\n >\n {children}\n </div>\n </div>\n );\n }\n}\n\nexport default Code;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAiC,OAAO;AACjE,OAAO,KAAKC,MAAM,MAAM,eAAe;AAAC;AAOxC,MAAMC,IAAI,SAASF,SAAS,CAAmC;EAC7DG,WAAW,CAACC,KAAgB,EAAE;IAC5B,KAAK,CAACA,KAAK,CAAC;IAAC;IAEb,IAAI,CAACC,SAAS,GAAG,IAAI;EACvB;EAEAC,iBAAiB,GAAS;IACxB,IAAI,CAACC,QAAQ,EAAE;EACjB;EAIAA,QAAQ,GAAS;IACf,IAAM;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACJ,KAAK;IAC/B,IAAI,IAAI,CAACC,SAAS,IAAIG,QAAQ,IAAI,IAAI,EAAE;MACtCP,MAAM,CAACQ,MAAM,CAACC,eAAe,CAAC,IAAI,CAACL,SAAS,EAAE;QAC5CM,KAAK,EAAE;MACT,CAAC,CAAC;IACJ;EACF;EAEAC,MAAM,GAAiB;IACrB,IAAM;MAAEJ,QAAQ;MAAEK;IAAS,CAAC,GAAG,IAAI,CAACT,KAAK;IACzC,oBACE;MAAA,uBACE;QACE,aAAWS,QAAS;QACpB,GAAG,EAAER,SAAS,IAAI;UAChB,IAAI,CAACA,SAAS,GAAGA,SAAS;QAC5B;QACA;QACA;QAAA;QACA,KAAK,EAAE;UAAES,aAAa,EAAE;QAAO,CAAE;QAAA,UAEhCN;MAAQ;IACL,EACF;EAEV;AACF;AAEA,eAAeN,IAAI"}
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
3
3
  import { dhPandas, dhTable, vsGraph, vsPreview } from '@deephaven/icons';
4
4
  import { useApi } from '@deephaven/jsapi-bootstrap';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
5
6
  function ObjectIcon(_ref) {
6
7
  var {
7
8
  type
@@ -12,19 +13,19 @@ function ObjectIcon(_ref) {
12
13
  case dh.VariableType.TABLEMAP:
13
14
  case dh.VariableType.TREETABLE:
14
15
  case dh.VariableType.HIERARCHICALTABLE:
15
- return /*#__PURE__*/React.createElement(FontAwesomeIcon, {
16
+ return /*#__PURE__*/_jsx(FontAwesomeIcon, {
16
17
  icon: dhTable
17
18
  });
18
19
  case dh.VariableType.FIGURE:
19
- return /*#__PURE__*/React.createElement(FontAwesomeIcon, {
20
+ return /*#__PURE__*/_jsx(FontAwesomeIcon, {
20
21
  icon: vsGraph
21
22
  });
22
23
  case dh.VariableType.PANDAS:
23
- return /*#__PURE__*/React.createElement(FontAwesomeIcon, {
24
+ return /*#__PURE__*/_jsx(FontAwesomeIcon, {
24
25
  icon: dhPandas
25
26
  });
26
27
  default:
27
- return /*#__PURE__*/React.createElement(FontAwesomeIcon, {
28
+ return /*#__PURE__*/_jsx(FontAwesomeIcon, {
28
29
  icon: vsPreview
29
30
  });
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectIcon.js","names":["React","FontAwesomeIcon","dhPandas","dhTable","vsGraph","vsPreview","useApi","ObjectIcon","type","dh","VariableType","TABLE","TABLEMAP","TREETABLE","HIERARCHICALTABLE","FIGURE","PANDAS"],"sources":["../../src/common/ObjectIcon.tsx"],"sourcesContent":["import React from 'react';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { dhPandas, dhTable, vsGraph, vsPreview } from '@deephaven/icons';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\n\nexport type ObjectIconProps = {\n type: string;\n};\n\nfunction ObjectIcon({ type }: ObjectIconProps): JSX.Element {\n const dh = useApi();\n switch (type) {\n case dh.VariableType.TABLE:\n case dh.VariableType.TABLEMAP:\n case dh.VariableType.TREETABLE:\n case dh.VariableType.HIERARCHICALTABLE:\n return <FontAwesomeIcon icon={dhTable} />;\n case dh.VariableType.FIGURE:\n return <FontAwesomeIcon icon={vsGraph} />;\n case dh.VariableType.PANDAS:\n return <FontAwesomeIcon icon={dhPandas} />;\n default:\n return <FontAwesomeIcon icon={vsPreview} />;\n }\n}\n\nexport default ObjectIcon;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,eAAe,QAAQ,gCAAgC;AAChE,SAASC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,EAAEC,SAAS,QAAQ,kBAAkB;AACxE,SAASC,MAAM,QAAQ,4BAA4B;AAMnD,SAASC,UAAU,OAAyC;EAAA,IAAxC;IAAEC;EAAsB,CAAC;EAC3C,IAAMC,EAAE,GAAGH,MAAM,EAAE;EACnB,QAAQE,IAAI;IACV,KAAKC,EAAE,CAACC,YAAY,CAACC,KAAK;IAC1B,KAAKF,EAAE,CAACC,YAAY,CAACE,QAAQ;IAC7B,KAAKH,EAAE,CAACC,YAAY,CAACG,SAAS;IAC9B,KAAKJ,EAAE,CAACC,YAAY,CAACI,iBAAiB;MACpC,oBAAO,oBAAC,eAAe;QAAC,IAAI,EAAEX;MAAQ,EAAG;IAC3C,KAAKM,EAAE,CAACC,YAAY,CAACK,MAAM;MACzB,oBAAO,oBAAC,eAAe;QAAC,IAAI,EAAEX;MAAQ,EAAG;IAC3C,KAAKK,EAAE,CAACC,YAAY,CAACM,MAAM;MACzB,oBAAO,oBAAC,eAAe;QAAC,IAAI,EAAEd;MAAS,EAAG;IAC5C;MACE,oBAAO,oBAAC,eAAe;QAAC,IAAI,EAAEG;MAAU,EAAG;EAAC;AAElD;AAEA,eAAeE,UAAU"}
1
+ {"version":3,"file":"ObjectIcon.js","names":["React","FontAwesomeIcon","dhPandas","dhTable","vsGraph","vsPreview","useApi","ObjectIcon","type","dh","VariableType","TABLE","TABLEMAP","TREETABLE","HIERARCHICALTABLE","FIGURE","PANDAS"],"sources":["../../src/common/ObjectIcon.tsx"],"sourcesContent":["import React from 'react';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { dhPandas, dhTable, vsGraph, vsPreview } from '@deephaven/icons';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\n\nexport type ObjectIconProps = {\n type: string;\n};\n\nfunction ObjectIcon({ type }: ObjectIconProps): JSX.Element {\n const dh = useApi();\n switch (type) {\n case dh.VariableType.TABLE:\n case dh.VariableType.TABLEMAP:\n case dh.VariableType.TREETABLE:\n case dh.VariableType.HIERARCHICALTABLE:\n return <FontAwesomeIcon icon={dhTable} />;\n case dh.VariableType.FIGURE:\n return <FontAwesomeIcon icon={vsGraph} />;\n case dh.VariableType.PANDAS:\n return <FontAwesomeIcon icon={dhPandas} />;\n default:\n return <FontAwesomeIcon icon={vsPreview} />;\n }\n}\n\nexport default ObjectIcon;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,eAAe,QAAQ,gCAAgC;AAChE,SAASC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,EAAEC,SAAS,QAAQ,kBAAkB;AACxE,SAASC,MAAM,QAAQ,4BAA4B;AAAC;AAMpD,SAASC,UAAU,OAAyC;EAAA,IAAxC;IAAEC;EAAsB,CAAC;EAC3C,IAAMC,EAAE,GAAGH,MAAM,EAAE;EACnB,QAAQE,IAAI;IACV,KAAKC,EAAE,CAACC,YAAY,CAACC,KAAK;IAC1B,KAAKF,EAAE,CAACC,YAAY,CAACE,QAAQ;IAC7B,KAAKH,EAAE,CAACC,YAAY,CAACG,SAAS;IAC9B,KAAKJ,EAAE,CAACC,YAAY,CAACI,iBAAiB;MACpC,oBAAO,KAAC,eAAe;QAAC,IAAI,EAAEX;MAAQ,EAAG;IAC3C,KAAKM,EAAE,CAACC,YAAY,CAACK,MAAM;MACzB,oBAAO,KAAC,eAAe;QAAC,IAAI,EAAEX;MAAQ,EAAG;IAC3C,KAAKK,EAAE,CAACC,YAAY,CAACM,MAAM;MACzB,oBAAO,KAAC,eAAe;QAAC,IAAI,EAAEd;MAAS,EAAG;IAC5C;MACE,oBAAO,KAAC,eAAe;QAAC,IAAI,EAAEG;MAAU,EAAG;EAAC;AAElD;AAEA,eAAeE,UAAU"}
@@ -7,6 +7,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
7
7
  import React, { Component } from 'react';
8
8
  import ConsoleHistoryItem from "./ConsoleHistoryItem.js";
9
9
  import "./ConsoleHistory.css";
10
+ import { jsx as _jsx } from "react/jsx-runtime";
10
11
  class ConsoleHistory extends Component {
11
12
  static itemKey(i, item) {
12
13
  return "".concat(i, ".").concat(item.command, ".").concat(item.result && item.result.message, ".").concat(item.result && item.result.error);
@@ -21,18 +22,18 @@ class ConsoleHistory extends Component {
21
22
  var historyElements = [];
22
23
  for (var i = 0; i < items.length; i += 1) {
23
24
  var item = items[i];
24
- var historyElement = /*#__PURE__*/React.createElement(ConsoleHistoryItem, {
25
- key: ConsoleHistory.itemKey(i, item),
25
+ var historyElement = /*#__PURE__*/_jsx(ConsoleHistoryItem, {
26
26
  disabled: disabled,
27
27
  item: item,
28
28
  openObject: openObject,
29
29
  language: language
30
- });
30
+ }, ConsoleHistory.itemKey(i, item));
31
31
  historyElements.push(historyElement);
32
32
  }
33
- return /*#__PURE__*/React.createElement("div", {
34
- className: "container-fluid console-history"
35
- }, historyElements);
33
+ return /*#__PURE__*/_jsx("div", {
34
+ className: "container-fluid console-history",
35
+ children: historyElements
36
+ });
36
37
  }
37
38
  }
38
39
  _defineProperty(ConsoleHistory, "defaultProps", {
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleHistory.js","names":["React","Component","ConsoleHistoryItem","ConsoleHistory","itemKey","i","item","command","result","message","error","render","disabled","items","language","openObject","props","historyElements","length","historyElement","push"],"sources":["../../src/console-history/ConsoleHistory.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { Component, ReactElement } from 'react';\nimport type { VariableDefinition } from '@deephaven/jsapi-types';\nimport ConsoleHistoryItem from './ConsoleHistoryItem';\n\nimport './ConsoleHistory.scss';\nimport { ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\ninterface ConsoleHistoryProps {\n items: ConsoleHistoryActionItem[];\n language: string;\n openObject: (object: VariableDefinition) => void;\n disabled?: boolean;\n}\n\nclass ConsoleHistory extends Component<\n ConsoleHistoryProps,\n Record<string, never>\n> {\n static defaultProps = {\n disabled: false,\n };\n\n static itemKey(i: number, item: ConsoleHistoryActionItem): string {\n return `${i}.${item.command}.${item.result && item.result.message}.${\n item.result && item.result.error\n }`;\n }\n\n render(): ReactElement {\n const { disabled, items, language, openObject } = this.props;\n const historyElements = [];\n for (let i = 0; i < items.length; i += 1) {\n const item = items[i];\n const historyElement = (\n <ConsoleHistoryItem\n key={ConsoleHistory.itemKey(i, item)}\n disabled={disabled}\n item={item}\n openObject={openObject}\n language={language}\n />\n );\n historyElements.push(historyElement);\n }\n\n return (\n <div className=\"container-fluid console-history\">{historyElements}</div>\n );\n }\n}\n\nexport default ConsoleHistory;\n"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,SAAS,QAAsB,OAAO;AAAC,OAEhDC,kBAAkB;AAAA;AAYzB,MAAMC,cAAc,SAASF,SAAS,CAGpC;EAKA,OAAOG,OAAO,CAACC,CAAS,EAAEC,IAA8B,EAAU;IAChE,iBAAUD,CAAC,cAAIC,IAAI,CAACC,OAAO,cAAID,IAAI,CAACE,MAAM,IAAIF,IAAI,CAACE,MAAM,CAACC,OAAO,cAC/DH,IAAI,CAACE,MAAM,IAAIF,IAAI,CAACE,MAAM,CAACE,KAAK;EAEpC;EAEAC,MAAM,GAAiB;IACrB,IAAM;MAAEC,QAAQ;MAAEC,KAAK;MAAEC,QAAQ;MAAEC;IAAW,CAAC,GAAG,IAAI,CAACC,KAAK;IAC5D,IAAMC,eAAe,GAAG,EAAE;IAC1B,KAAK,IAAIZ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGQ,KAAK,CAACK,MAAM,EAAEb,CAAC,IAAI,CAAC,EAAE;MACxC,IAAMC,IAAI,GAAGO,KAAK,CAACR,CAAC,CAAC;MACrB,IAAMc,cAAc,gBAClB,oBAAC,kBAAkB;QACjB,GAAG,EAAEhB,cAAc,CAACC,OAAO,CAACC,CAAC,EAAEC,IAAI,CAAE;QACrC,QAAQ,EAAEM,QAAS;QACnB,IAAI,EAAEN,IAAK;QACX,UAAU,EAAES,UAAW;QACvB,QAAQ,EAAED;MAAS,EAEtB;MACDG,eAAe,CAACG,IAAI,CAACD,cAAc,CAAC;IACtC;IAEA,oBACE;MAAK,SAAS,EAAC;IAAiC,GAAEF,eAAe,CAAO;EAE5E;AACF;AAAC,gBAnCKd,cAAc,kBAII;EACpBS,QAAQ,EAAE;AACZ,CAAC;AA+BH,eAAeT,cAAc"}
1
+ {"version":3,"file":"ConsoleHistory.js","names":["React","Component","ConsoleHistoryItem","ConsoleHistory","itemKey","i","item","command","result","message","error","render","disabled","items","language","openObject","props","historyElements","length","historyElement","push"],"sources":["../../src/console-history/ConsoleHistory.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { Component, ReactElement } from 'react';\nimport type { VariableDefinition } from '@deephaven/jsapi-types';\nimport ConsoleHistoryItem from './ConsoleHistoryItem';\n\nimport './ConsoleHistory.scss';\nimport { ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\ninterface ConsoleHistoryProps {\n items: ConsoleHistoryActionItem[];\n language: string;\n openObject: (object: VariableDefinition) => void;\n disabled?: boolean;\n}\n\nclass ConsoleHistory extends Component<\n ConsoleHistoryProps,\n Record<string, never>\n> {\n static defaultProps = {\n disabled: false,\n };\n\n static itemKey(i: number, item: ConsoleHistoryActionItem): string {\n return `${i}.${item.command}.${item.result && item.result.message}.${\n item.result && item.result.error\n }`;\n }\n\n render(): ReactElement {\n const { disabled, items, language, openObject } = this.props;\n const historyElements = [];\n for (let i = 0; i < items.length; i += 1) {\n const item = items[i];\n const historyElement = (\n <ConsoleHistoryItem\n key={ConsoleHistory.itemKey(i, item)}\n disabled={disabled}\n item={item}\n openObject={openObject}\n language={language}\n />\n );\n historyElements.push(historyElement);\n }\n\n return (\n <div className=\"container-fluid console-history\">{historyElements}</div>\n );\n }\n}\n\nexport default ConsoleHistory;\n"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,SAAS,QAAsB,OAAO;AAAC,OAEhDC,kBAAkB;AAAA;AAAA;AAYzB,MAAMC,cAAc,SAASF,SAAS,CAGpC;EAKA,OAAOG,OAAO,CAACC,CAAS,EAAEC,IAA8B,EAAU;IAChE,iBAAUD,CAAC,cAAIC,IAAI,CAACC,OAAO,cAAID,IAAI,CAACE,MAAM,IAAIF,IAAI,CAACE,MAAM,CAACC,OAAO,cAC/DH,IAAI,CAACE,MAAM,IAAIF,IAAI,CAACE,MAAM,CAACE,KAAK;EAEpC;EAEAC,MAAM,GAAiB;IACrB,IAAM;MAAEC,QAAQ;MAAEC,KAAK;MAAEC,QAAQ;MAAEC;IAAW,CAAC,GAAG,IAAI,CAACC,KAAK;IAC5D,IAAMC,eAAe,GAAG,EAAE;IAC1B,KAAK,IAAIZ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGQ,KAAK,CAACK,MAAM,EAAEb,CAAC,IAAI,CAAC,EAAE;MACxC,IAAMC,IAAI,GAAGO,KAAK,CAACR,CAAC,CAAC;MACrB,IAAMc,cAAc,gBAClB,KAAC,kBAAkB;QAEjB,QAAQ,EAAEP,QAAS;QACnB,IAAI,EAAEN,IAAK;QACX,UAAU,EAAES,UAAW;QACvB,QAAQ,EAAED;MAAS,GAJdX,cAAc,CAACC,OAAO,CAACC,CAAC,EAAEC,IAAI,CAAC,CAMvC;MACDW,eAAe,CAACG,IAAI,CAACD,cAAc,CAAC;IACtC;IAEA,oBACE;MAAK,SAAS,EAAC,iCAAiC;MAAA,UAAEF;IAAe,EAAO;EAE5E;AACF;AAAC,gBAnCKd,cAAc,kBAII;EACpBS,QAAQ,EAAE;AACZ,CAAC;AA+BH,eAAeT,cAAc"}
@@ -13,6 +13,8 @@ import ConsoleHistoryItemResult from "./ConsoleHistoryItemResult.js";
13
13
  import ConsoleHistoryResultInProgress from "./ConsoleHistoryResultInProgress.js";
14
14
  import ConsoleHistoryResultErrorMessage from "./ConsoleHistoryResultErrorMessage.js";
15
15
  import "./ConsoleHistoryItem.css";
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ import { jsxs as _jsxs } from "react/jsx-runtime";
16
18
  var log = Log.module('ConsoleHistoryItem');
17
19
  class ConsoleHistoryItem extends PureComponent {
18
20
  constructor(props) {
@@ -49,15 +51,19 @@ class ConsoleHistoryItem extends PureComponent {
49
51
  var hasCommand = item.command != null && item.command !== '';
50
52
  var commandElement = null;
51
53
  if (hasCommand) {
52
- commandElement = /*#__PURE__*/React.createElement("div", {
53
- className: "console-history-item-command"
54
- }, /*#__PURE__*/React.createElement("div", {
55
- className: "console-history-gutter"
56
- }, ">"), /*#__PURE__*/React.createElement("div", {
57
- className: "console-history-content"
58
- }, /*#__PURE__*/React.createElement(Code, {
59
- language: language
60
- }, item.command)));
54
+ commandElement = /*#__PURE__*/_jsxs("div", {
55
+ className: "console-history-item-command",
56
+ children: [/*#__PURE__*/_jsx("div", {
57
+ className: "console-history-gutter",
58
+ children: ">"
59
+ }), /*#__PURE__*/_jsx("div", {
60
+ className: "console-history-content",
61
+ children: /*#__PURE__*/_jsx(Code, {
62
+ language: language,
63
+ children: item.command
64
+ })
65
+ })]
66
+ });
61
67
  }
62
68
  var resultElements = [];
63
69
  var hasButtons = false;
@@ -79,16 +85,16 @@ class ConsoleHistoryItem extends PureComponent {
79
85
  } = object;
80
86
  var key = "".concat(title);
81
87
  var btnDisabled = disabled === undefined || disabled || (disabledObjects !== null && disabledObjects !== void 0 ? disabledObjects : []).indexOf(key) >= 0;
82
- var element = /*#__PURE__*/React.createElement(Button, {
83
- key: key,
88
+ var element = /*#__PURE__*/_jsx(Button, {
84
89
  kind: "primary",
85
90
  onClick: () => this.handleObjectClick(object),
86
91
  className: "btn-console-object",
87
92
  disabled: btnDisabled,
88
- icon: /*#__PURE__*/React.createElement(ObjectIcon, {
93
+ icon: /*#__PURE__*/_jsx(ObjectIcon, {
89
94
  type: object.type
90
- })
91
- }, title);
95
+ }),
96
+ children: title
97
+ }, key);
92
98
  resultElements.push(element);
93
99
  });
94
100
  }
@@ -100,37 +106,38 @@ class ConsoleHistoryItem extends PureComponent {
100
106
  if (!errorMessage) {
101
107
  errorMessage = error;
102
108
  }
103
- var element = /*#__PURE__*/React.createElement(ConsoleHistoryResultErrorMessage, {
104
- key: "result-error",
109
+ var element = /*#__PURE__*/_jsx(ConsoleHistoryResultErrorMessage, {
105
110
  message: errorMessage
106
- });
111
+ }, "result-error");
107
112
  resultElements.push(element);
108
113
  }
109
114
  if (message !== undefined && message !== '') {
110
- var _element = /*#__PURE__*/React.createElement("div", {
111
- key: "log-message",
112
- className: "log-message"
113
- }, message);
115
+ var _element = /*#__PURE__*/_jsx("div", {
116
+ className: "log-message",
117
+ children: message
118
+ }, "log-message");
114
119
  resultElements.push(_element);
115
120
  }
116
121
  } else {
117
122
  hasButtons = true;
118
- var _element2 = /*#__PURE__*/React.createElement(ConsoleHistoryResultInProgress, {
119
- key: "in_progress",
123
+ var _element2 = /*#__PURE__*/_jsx(ConsoleHistoryResultInProgress, {
120
124
  onCancelClick: this.handleCancelClick,
121
125
  disabled: disabled
122
- });
126
+ }, "in_progress");
123
127
  resultElements.push(_element2);
124
128
  }
125
129
  var resultElement = null;
126
130
  if (resultElements.length > 0) {
127
- resultElement = /*#__PURE__*/React.createElement(ConsoleHistoryItemResult, null, resultElements);
131
+ resultElement = /*#__PURE__*/_jsx(ConsoleHistoryItemResult, {
132
+ children: resultElements
133
+ });
128
134
  }
129
- return /*#__PURE__*/React.createElement("div", {
135
+ return /*#__PURE__*/_jsxs("div", {
130
136
  className: classNames('console-command-result', {
131
137
  'console-result-buttons': hasButtons
132
- })
133
- }, commandElement, resultElement);
138
+ }),
139
+ children: [commandElement, resultElement]
140
+ });
134
141
  }
135
142
  }
136
143
  _defineProperty(ConsoleHistoryItem, "defaultProps", {
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleHistoryItem.js","names":["React","PureComponent","Button","Log","classNames","Code","ObjectIcon","ConsoleHistoryItemResult","ConsoleHistoryResultInProgress","ConsoleHistoryResultErrorMessage","log","module","ConsoleHistoryItem","constructor","props","handleCancelClick","bind","handleObjectClick","object","debug","openObject","item","cancelResult","command","render","disabled","language","disabledObjects","result","hasCommand","commandElement","resultElements","hasButtons","error","message","changes","created","updated","forEach","title","key","btnDisabled","undefined","indexOf","element","type","push","errorMessage","resultElement","length"],"sources":["../../src/console-history/ConsoleHistoryItem.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { PureComponent, ReactElement } from 'react';\nimport { Button } from '@deephaven/components';\nimport Log from '@deephaven/log';\nimport type { VariableDefinition } from '@deephaven/jsapi-types';\nimport classNames from 'classnames';\nimport { Code, ObjectIcon } from '../common';\nimport ConsoleHistoryItemResult from './ConsoleHistoryItemResult';\nimport ConsoleHistoryResultInProgress from './ConsoleHistoryResultInProgress';\nimport ConsoleHistoryResultErrorMessage from './ConsoleHistoryResultErrorMessage';\nimport './ConsoleHistoryItem.scss';\nimport { ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\nconst log = Log.module('ConsoleHistoryItem');\n\ninterface ConsoleHistoryItemProps {\n item: ConsoleHistoryActionItem;\n language: string;\n openObject: (object: VariableDefinition) => void;\n disabled?: boolean;\n}\n\nclass ConsoleHistoryItem extends PureComponent<\n ConsoleHistoryItemProps,\n Record<string, never>\n> {\n static defaultProps = {\n disabled: false,\n };\n\n constructor(props: ConsoleHistoryItemProps) {\n super(props);\n\n this.handleCancelClick = this.handleCancelClick.bind(this);\n this.handleObjectClick = this.handleObjectClick.bind(this);\n }\n\n handleObjectClick(object: VariableDefinition): void {\n log.debug('handleObjectClick', object);\n\n const { openObject } = this.props;\n openObject(object);\n }\n\n handleCancelClick(): void {\n const { item } = this.props;\n if (item != null && item.cancelResult) {\n log.debug(`Cancelling command: ${item.command}`);\n item.cancelResult();\n }\n }\n\n render(): ReactElement {\n const { disabled, item, language } = this.props;\n const { disabledObjects, result } = item;\n const hasCommand = item.command != null && item.command !== '';\n\n let commandElement = null;\n if (hasCommand) {\n commandElement = (\n <div className=\"console-history-item-command\">\n <div className=\"console-history-gutter\">&gt;</div>\n <div className=\"console-history-content\">\n <Code language={language}>{item.command}</Code>\n </div>\n </div>\n );\n }\n\n const resultElements = [];\n let hasButtons = false;\n\n if (result) {\n const { error, message, changes } = result;\n\n if (changes) {\n const { created, updated } = changes;\n [...created, ...updated].forEach(object => {\n hasButtons = true;\n const { title } = object;\n const key = `${title}`;\n const btnDisabled =\n disabled === undefined ||\n disabled ||\n (disabledObjects ?? []).indexOf(key) >= 0;\n const element = (\n <Button\n key={key}\n kind=\"primary\"\n onClick={() => this.handleObjectClick(object)}\n className=\"btn-console-object\"\n disabled={btnDisabled}\n icon={<ObjectIcon type={object.type} />}\n >\n {title}\n </Button>\n );\n resultElements.push(element);\n });\n }\n\n // If the error has an associated command, we'll actually get a separate ERROR item printed out, so only print an error if there isn't an associated command\n if (error != null && !hasCommand) {\n let errorMessage = `${(error as { message: string }).message ?? error}`;\n if (!errorMessage) {\n errorMessage = error as string;\n }\n const element = (\n <ConsoleHistoryResultErrorMessage\n key=\"result-error\"\n message={errorMessage}\n />\n );\n resultElements.push(element);\n }\n\n if (message !== undefined && message !== '') {\n const element = (\n <div key=\"log-message\" className=\"log-message\">\n {message}\n </div>\n );\n resultElements.push(element);\n }\n } else {\n hasButtons = true;\n const element = (\n <ConsoleHistoryResultInProgress\n key=\"in_progress\"\n onCancelClick={this.handleCancelClick}\n disabled={disabled}\n />\n );\n resultElements.push(element);\n }\n\n let resultElement = null;\n if (resultElements.length > 0) {\n resultElement = (\n <ConsoleHistoryItemResult>{resultElements}</ConsoleHistoryItemResult>\n );\n }\n\n return (\n <div\n className={classNames('console-command-result', {\n 'console-result-buttons': hasButtons,\n })}\n >\n {commandElement}\n {resultElement}\n </div>\n );\n }\n}\n\nexport default ConsoleHistoryItem;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ConsoleHistoryItem.js","names":["React","PureComponent","Button","Log","classNames","Code","ObjectIcon","ConsoleHistoryItemResult","ConsoleHistoryResultInProgress","ConsoleHistoryResultErrorMessage","log","module","ConsoleHistoryItem","constructor","props","handleCancelClick","bind","handleObjectClick","object","debug","openObject","item","cancelResult","command","render","disabled","language","disabledObjects","result","hasCommand","commandElement","resultElements","hasButtons","error","message","changes","created","updated","forEach","title","key","btnDisabled","undefined","indexOf","element","type","push","errorMessage","resultElement","length"],"sources":["../../src/console-history/ConsoleHistoryItem.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { PureComponent, ReactElement } from 'react';\nimport { Button } from '@deephaven/components';\nimport Log from '@deephaven/log';\nimport type { VariableDefinition } from '@deephaven/jsapi-types';\nimport classNames from 'classnames';\nimport { Code, ObjectIcon } from '../common';\nimport ConsoleHistoryItemResult from './ConsoleHistoryItemResult';\nimport ConsoleHistoryResultInProgress from './ConsoleHistoryResultInProgress';\nimport ConsoleHistoryResultErrorMessage from './ConsoleHistoryResultErrorMessage';\nimport './ConsoleHistoryItem.scss';\nimport { ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\nconst log = Log.module('ConsoleHistoryItem');\n\ninterface ConsoleHistoryItemProps {\n item: ConsoleHistoryActionItem;\n language: string;\n openObject: (object: VariableDefinition) => void;\n disabled?: boolean;\n}\n\nclass ConsoleHistoryItem extends PureComponent<\n ConsoleHistoryItemProps,\n Record<string, never>\n> {\n static defaultProps = {\n disabled: false,\n };\n\n constructor(props: ConsoleHistoryItemProps) {\n super(props);\n\n this.handleCancelClick = this.handleCancelClick.bind(this);\n this.handleObjectClick = this.handleObjectClick.bind(this);\n }\n\n handleObjectClick(object: VariableDefinition): void {\n log.debug('handleObjectClick', object);\n\n const { openObject } = this.props;\n openObject(object);\n }\n\n handleCancelClick(): void {\n const { item } = this.props;\n if (item != null && item.cancelResult) {\n log.debug(`Cancelling command: ${item.command}`);\n item.cancelResult();\n }\n }\n\n render(): ReactElement {\n const { disabled, item, language } = this.props;\n const { disabledObjects, result } = item;\n const hasCommand = item.command != null && item.command !== '';\n\n let commandElement = null;\n if (hasCommand) {\n commandElement = (\n <div className=\"console-history-item-command\">\n <div className=\"console-history-gutter\">&gt;</div>\n <div className=\"console-history-content\">\n <Code language={language}>{item.command}</Code>\n </div>\n </div>\n );\n }\n\n const resultElements = [];\n let hasButtons = false;\n\n if (result) {\n const { error, message, changes } = result;\n\n if (changes) {\n const { created, updated } = changes;\n [...created, ...updated].forEach(object => {\n hasButtons = true;\n const { title } = object;\n const key = `${title}`;\n const btnDisabled =\n disabled === undefined ||\n disabled ||\n (disabledObjects ?? []).indexOf(key) >= 0;\n const element = (\n <Button\n key={key}\n kind=\"primary\"\n onClick={() => this.handleObjectClick(object)}\n className=\"btn-console-object\"\n disabled={btnDisabled}\n icon={<ObjectIcon type={object.type} />}\n >\n {title}\n </Button>\n );\n resultElements.push(element);\n });\n }\n\n // If the error has an associated command, we'll actually get a separate ERROR item printed out, so only print an error if there isn't an associated command\n if (error != null && !hasCommand) {\n let errorMessage = `${(error as { message: string }).message ?? error}`;\n if (!errorMessage) {\n errorMessage = error as string;\n }\n const element = (\n <ConsoleHistoryResultErrorMessage\n key=\"result-error\"\n message={errorMessage}\n />\n );\n resultElements.push(element);\n }\n\n if (message !== undefined && message !== '') {\n const element = (\n <div key=\"log-message\" className=\"log-message\">\n {message}\n </div>\n );\n resultElements.push(element);\n }\n } else {\n hasButtons = true;\n const element = (\n <ConsoleHistoryResultInProgress\n key=\"in_progress\"\n onCancelClick={this.handleCancelClick}\n disabled={disabled}\n />\n );\n resultElements.push(element);\n }\n\n let resultElement = null;\n if (resultElements.length > 0) {\n resultElement = (\n <ConsoleHistoryItemResult>{resultElements}</ConsoleHistoryItemResult>\n );\n }\n\n return (\n <div\n className={classNames('console-command-result', {\n 'console-result-buttons': hasButtons,\n })}\n >\n {commandElement}\n {resultElement}\n </div>\n );\n }\n}\n\nexport default ConsoleHistoryItem;\n"],"mappings":"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"}
@@ -3,17 +3,22 @@
3
3
  */
4
4
  import React from 'react';
5
5
  import PropTypes from 'prop-types';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ import { jsxs as _jsxs } from "react/jsx-runtime";
6
8
  function ConsoleHistoryItemResult(_ref) {
7
9
  var {
8
10
  children
9
11
  } = _ref;
10
- return /*#__PURE__*/React.createElement("div", {
11
- className: "console-history-item-result"
12
- }, /*#__PURE__*/React.createElement("div", {
13
- className: "console-history-gutter"
14
- }, "-"), /*#__PURE__*/React.createElement("div", {
15
- className: "console-history-content"
16
- }, children));
12
+ return /*#__PURE__*/_jsxs("div", {
13
+ className: "console-history-item-result",
14
+ children: [/*#__PURE__*/_jsx("div", {
15
+ className: "console-history-gutter",
16
+ children: "-"
17
+ }), /*#__PURE__*/_jsx("div", {
18
+ className: "console-history-content",
19
+ children: children
20
+ })]
21
+ });
17
22
  }
18
23
  ConsoleHistoryItemResult.propTypes = {
19
24
  children: PropTypes.node.isRequired
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleHistoryItemResult.js","names":["React","PropTypes","ConsoleHistoryItemResult","children","propTypes","node","isRequired"],"sources":["../../src/console-history/ConsoleHistoryItemResult.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { ReactElement, ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nfunction ConsoleHistoryItemResult({\n children,\n}: {\n children: ReactNode;\n}): ReactElement {\n return (\n <div className=\"console-history-item-result\">\n <div className=\"console-history-gutter\">-</div>\n <div className=\"console-history-content\">{children}</div>\n </div>\n );\n}\n\nConsoleHistoryItemResult.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ConsoleHistoryItemResult;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,KAAK,MAAmC,OAAO;AACtD,OAAOC,SAAS,MAAM,YAAY;AAElC,SAASC,wBAAwB,OAIhB;EAAA,IAJiB;IAChCC;EAGF,CAAC;EACC,oBACE;IAAK,SAAS,EAAC;EAA6B,gBAC1C;IAAK,SAAS,EAAC;EAAwB,GAAC,GAAC,CAAM,eAC/C;IAAK,SAAS,EAAC;EAAyB,GAAEA,QAAQ,CAAO,CACrD;AAEV;AAEAD,wBAAwB,CAACE,SAAS,GAAG;EACnCD,QAAQ,EAAEF,SAAS,CAACI,IAAI,CAACC;AAC3B,CAAC;AAED,eAAeJ,wBAAwB"}
1
+ {"version":3,"file":"ConsoleHistoryItemResult.js","names":["React","PropTypes","ConsoleHistoryItemResult","children","propTypes","node","isRequired"],"sources":["../../src/console-history/ConsoleHistoryItemResult.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { ReactElement, ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nfunction ConsoleHistoryItemResult({\n children,\n}: {\n children: ReactNode;\n}): ReactElement {\n return (\n <div className=\"console-history-item-result\">\n <div className=\"console-history-gutter\">-</div>\n <div className=\"console-history-content\">{children}</div>\n </div>\n );\n}\n\nConsoleHistoryItemResult.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ConsoleHistoryItemResult;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,KAAK,MAAmC,OAAO;AACtD,OAAOC,SAAS,MAAM,YAAY;AAAC;AAAA;AAEnC,SAASC,wBAAwB,OAIhB;EAAA,IAJiB;IAChCC;EAGF,CAAC;EACC,oBACE;IAAK,SAAS,EAAC,6BAA6B;IAAA,wBAC1C;MAAK,SAAS,EAAC,wBAAwB;MAAA,UAAC;IAAC,EAAM,eAC/C;MAAK,SAAS,EAAC,yBAAyB;MAAA,UAAEA;IAAQ,EAAO;EAAA,EACrD;AAEV;AAEAD,wBAAwB,CAACE,SAAS,GAAG;EACnCD,QAAQ,EAAEF,SAAS,CAACI,IAAI,CAACC;AAC3B,CAAC;AAED,eAAeJ,wBAAwB"}