@deephaven/console 0.5.2-matplotlib.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Console.d.ts +3 -0
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +807 -871
- package/dist/Console.js.map +1 -1
- package/dist/ConsoleInput.d.ts +1 -38
- package/dist/ConsoleInput.d.ts.map +1 -1
- package/dist/ConsoleInput.js +331 -436
- package/dist/ConsoleInput.js.map +1 -1
- package/dist/ConsoleMenu.js +159 -215
- package/dist/ConsoleMenu.js.map +1 -1
- package/dist/ConsolePropTypes.js +1 -1
- package/dist/ConsolePropTypes.js.map +1 -1
- package/dist/ConsoleShortcuts.js +2 -2
- package/dist/ConsoleShortcuts.js.map +1 -1
- package/dist/ConsoleStatusBar.js +85 -125
- package/dist/ConsoleStatusBar.js.map +1 -1
- package/dist/StoragePropTypes.js +2 -2
- package/dist/StoragePropTypes.js.map +1 -1
- package/dist/command-history/CommandHistory.css +5 -2
- package/dist/command-history/CommandHistory.css.map +1 -1
- package/dist/command-history/CommandHistory.d.ts +5 -0
- package/dist/command-history/CommandHistory.d.ts.map +1 -1
- package/dist/command-history/CommandHistory.js +303 -391
- package/dist/command-history/CommandHistory.js.map +1 -1
- package/dist/command-history/CommandHistoryActions.css +4 -0
- package/dist/command-history/CommandHistoryActions.css.map +1 -1
- package/dist/command-history/CommandHistoryActions.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryActions.js +40 -79
- package/dist/command-history/CommandHistoryActions.js.map +1 -1
- package/dist/command-history/CommandHistoryItem.css +1 -1
- package/dist/command-history/CommandHistoryItem.d.ts +5 -0
- package/dist/command-history/CommandHistoryItem.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryItem.js +15 -9
- package/dist/command-history/CommandHistoryItem.js.map +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.d.ts +1 -40
- package/dist/command-history/CommandHistoryItemTooltip.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.js +139 -189
- package/dist/command-history/CommandHistoryItemTooltip.js.map +1 -1
- package/dist/command-history/CommandHistoryViewportUpdater.js +30 -35
- package/dist/command-history/CommandHistoryViewportUpdater.js.map +1 -1
- package/dist/command-history/index.js +5 -5
- package/dist/command-history/index.js.map +1 -1
- package/dist/common/Code.js +34 -70
- package/dist/common/Code.js.map +1 -1
- package/dist/common/ConsoleConstants.js +3 -24
- package/dist/common/ConsoleConstants.js.map +1 -1
- package/dist/common/ConsoleUtils.d.ts +1 -3
- package/dist/common/ConsoleUtils.d.ts.map +1 -1
- package/dist/common/ConsoleUtils.js +60 -94
- package/dist/common/ConsoleUtils.js.map +1 -1
- package/dist/common/ObjectIcon.js +4 -2
- package/dist/common/ObjectIcon.js.map +1 -1
- package/dist/common/index.d.js +1 -34
- package/dist/common/index.d.js.map +1 -1
- package/dist/common/index.js +4 -4
- package/dist/common/index.js.map +1 -1
- package/dist/console-history/ConsoleHistory.js +27 -63
- package/dist/console-history/ConsoleHistory.js.map +1 -1
- package/dist/console-history/ConsoleHistoryItem.js +116 -154
- package/dist/console-history/ConsoleHistoryItem.js.map +1 -1
- package/dist/console-history/ConsoleHistoryItemResult.js +4 -2
- package/dist/console-history/ConsoleHistoryItemResult.js.map +1 -1
- package/dist/console-history/ConsoleHistoryResultErrorMessage.js +94 -132
- package/dist/console-history/ConsoleHistoryResultErrorMessage.js.map +1 -1
- package/dist/console-history/ConsoleHistoryResultInProgress.js +42 -76
- package/dist/console-history/ConsoleHistoryResultInProgress.js.map +1 -1
- package/dist/console-history/index.js +5 -5
- package/dist/console-history/index.js.map +1 -1
- package/dist/csv/CsvFormats.js +14 -28
- package/dist/csv/CsvFormats.js.map +1 -1
- package/dist/csv/CsvInputBar.css +25 -23
- package/dist/csv/CsvInputBar.css.map +1 -1
- package/dist/csv/CsvInputBar.d.ts +2 -45
- package/dist/csv/CsvInputBar.d.ts.map +1 -1
- package/dist/csv/CsvInputBar.js +298 -372
- package/dist/csv/CsvInputBar.js.map +1 -1
- package/dist/csv/CsvOverlay.js +197 -243
- package/dist/csv/CsvOverlay.js.map +1 -1
- package/dist/csv/CsvParser.js +186 -209
- package/dist/csv/CsvParser.js.map +1 -1
- package/dist/csv/CsvTypeParser.js +185 -210
- package/dist/csv/CsvTypeParser.js.map +1 -1
- package/dist/csv/NewTableColumnTypes.js +1 -5
- package/dist/csv/NewTableColumnTypes.js.map +1 -1
- package/dist/index.js +14 -14
- package/dist/index.js.map +1 -1
- package/dist/log/LogLevelMenuItem.js +24 -58
- package/dist/log/LogLevelMenuItem.js.map +1 -1
- package/dist/log/LogView.js +429 -484
- package/dist/log/LogView.js.map +1 -1
- package/dist/monaco/MonacoCompletionProvider.js +92 -124
- package/dist/monaco/MonacoCompletionProvider.js.map +1 -1
- package/dist/monaco/MonacoUtils.js +315 -331
- package/dist/monaco/MonacoUtils.js.map +1 -1
- package/dist/monaco/index.js +2 -2
- package/dist/monaco/index.js.map +1 -1
- package/dist/monaco/lang/db.js +3 -3
- package/dist/monaco/lang/db.js.map +1 -1
- package/dist/monaco/lang/groovy.js +3 -3
- package/dist/monaco/lang/groovy.js.map +1 -1
- package/dist/monaco/lang/log.js +3 -3
- package/dist/monaco/lang/log.js.map +1 -1
- package/dist/monaco/lang/python.js +3 -3
- package/dist/monaco/lang/python.js.map +1 -1
- package/dist/monaco/lang/scala.js +5 -5
- package/dist/monaco/lang/scala.js.map +1 -1
- package/dist/notebook/Editor.js +101 -141
- package/dist/notebook/Editor.js.map +1 -1
- package/dist/notebook/ScriptEditor.js +261 -301
- package/dist/notebook/ScriptEditor.js.map +1 -1
- package/dist/notebook/ScriptEditorUtils.js +26 -42
- package/dist/notebook/ScriptEditorUtils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +17 -22
|
@@ -1,211 +1,170 @@
|
|
|
1
|
-
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
|
-
|
|
3
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
4
|
-
|
|
5
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
6
|
-
|
|
7
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
8
|
-
|
|
9
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
10
|
-
|
|
11
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
12
|
-
|
|
13
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
14
|
-
|
|
15
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
16
|
-
|
|
17
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
18
|
-
|
|
19
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
20
|
-
|
|
21
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
22
|
-
|
|
23
1
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
24
2
|
|
|
25
3
|
import React, { Component } from 'react';
|
|
26
4
|
import PropTypes from 'prop-types';
|
|
27
|
-
import { connect } from 'react-redux';
|
|
28
5
|
import debounce from 'lodash.debounce';
|
|
29
6
|
import memoize from 'memoizee';
|
|
30
7
|
import { LoadingSpinner } from '@deephaven/components';
|
|
31
|
-
import { getCommandHistoryStorage } from '@deephaven/redux';
|
|
32
8
|
import { TimeUtils } from '@deephaven/utils';
|
|
33
|
-
import Code from
|
|
9
|
+
import Code from "../common/Code.js";
|
|
34
10
|
import "./CommandHistoryItemTooltip.css";
|
|
35
|
-
import ConsolePropTypes from
|
|
36
|
-
import StoragePropTypes from
|
|
11
|
+
import ConsolePropTypes from "../ConsolePropTypes.js";
|
|
12
|
+
import StoragePropTypes from "../StoragePropTypes.js";
|
|
37
13
|
var LOAD_DATA_DEBOUNCE = 250;
|
|
38
14
|
var MAX_NUMBER_OF_LINES = 2500;
|
|
39
|
-
export
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
function CommandHistoryItemTooltip(props) {
|
|
45
|
-
var _this;
|
|
15
|
+
export class CommandHistoryItemTooltip extends Component {
|
|
16
|
+
static getTimeString(startTime, endTime) {
|
|
17
|
+
if (!startTime || !endTime) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
46
20
|
|
|
47
|
-
|
|
21
|
+
var deltaTime = Math.round((new Date(endTime) - new Date(startTime)) / 1000);
|
|
22
|
+
if (deltaTime < 1) return '<1s';
|
|
23
|
+
return TimeUtils.formatElapsedTime(deltaTime);
|
|
24
|
+
}
|
|
48
25
|
|
|
49
|
-
|
|
26
|
+
constructor(props) {
|
|
27
|
+
super(props);
|
|
50
28
|
|
|
51
|
-
_defineProperty(
|
|
52
|
-
return name.split('\n', MAX_NUMBER_OF_LINES).join('\n');
|
|
53
|
-
}, {
|
|
29
|
+
_defineProperty(this, "getPreviewText", memoize(name => name.split('\n', MAX_NUMBER_OF_LINES).join('\n'), {
|
|
54
30
|
max: 1
|
|
55
31
|
}));
|
|
56
32
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
33
|
+
this.loadData = debounce(this.loadData.bind(this), LOAD_DATA_DEBOUNCE);
|
|
34
|
+
this.handleUpdate = this.handleUpdate.bind(this);
|
|
35
|
+
this.handleError = this.handleError.bind(this);
|
|
36
|
+
this.handleTimeout = this.handleTimeout.bind(this);
|
|
37
|
+
this.timer = null;
|
|
38
|
+
this.cleanup = null;
|
|
39
|
+
this.state = {
|
|
64
40
|
currentTime: Date.now(),
|
|
65
41
|
data: null,
|
|
66
42
|
error: null
|
|
67
43
|
};
|
|
68
|
-
return _this;
|
|
69
44
|
}
|
|
70
45
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
this.loadData();
|
|
75
|
-
}
|
|
76
|
-
}, {
|
|
77
|
-
key: "componentDidUpdate",
|
|
78
|
-
value: function componentDidUpdate(prevProps, prevState) {
|
|
79
|
-
var _prevState$data, _prevState$data2;
|
|
80
|
-
|
|
81
|
-
var data = this.state.data;
|
|
82
|
-
|
|
83
|
-
if (this.timer == null && !(data !== null && data !== void 0 && data.result) && data !== null && data !== void 0 && data.startTime && !(data !== null && data !== void 0 && data.endTime)) {
|
|
84
|
-
this.startTimer();
|
|
85
|
-
} else if (data !== null && data !== void 0 && data.result && !((_prevState$data = prevState.data) !== null && _prevState$data !== void 0 && _prevState$data.result) || data !== null && data !== void 0 && data.endTime && !((_prevState$data2 = prevState.data) !== null && _prevState$data2 !== void 0 && _prevState$data2.endTime)) {
|
|
86
|
-
// Command complete
|
|
87
|
-
this.stopTimer();
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}, {
|
|
91
|
-
key: "componentWillUnmount",
|
|
92
|
-
value: function componentWillUnmount() {
|
|
93
|
-
this.loadData.cancel();
|
|
46
|
+
componentDidMount() {
|
|
47
|
+
this.loadData();
|
|
48
|
+
}
|
|
94
49
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}
|
|
50
|
+
componentDidUpdate(prevProps, prevState) {
|
|
51
|
+
var _prevState$data, _prevState$data2;
|
|
98
52
|
|
|
53
|
+
var {
|
|
54
|
+
data
|
|
55
|
+
} = this.state;
|
|
56
|
+
|
|
57
|
+
if (this.timer == null && !(data !== null && data !== void 0 && data.result) && data !== null && data !== void 0 && data.startTime && !(data !== null && data !== void 0 && data.endTime)) {
|
|
58
|
+
this.startTimer();
|
|
59
|
+
} else if (data !== null && data !== void 0 && data.result && !((_prevState$data = prevState.data) !== null && _prevState$data !== void 0 && _prevState$data.result) || data !== null && data !== void 0 && data.endTime && !((_prevState$data2 = prevState.data) !== null && _prevState$data2 !== void 0 && _prevState$data2.endTime)) {
|
|
60
|
+
// Command complete
|
|
99
61
|
this.stopTimer();
|
|
100
62
|
}
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
var id = item.id;
|
|
109
|
-
this.cleanup = commandHistoryStorage.listenItem(language, id, this.handleUpdate, this.handleError);
|
|
110
|
-
}
|
|
111
|
-
}, {
|
|
112
|
-
key: "startTimer",
|
|
113
|
-
value: function startTimer() {
|
|
114
|
-
this.stopTimer();
|
|
115
|
-
this.timer = setInterval(this.handleTimeout, 1000);
|
|
116
|
-
}
|
|
117
|
-
}, {
|
|
118
|
-
key: "stopTimer",
|
|
119
|
-
value: function stopTimer() {
|
|
120
|
-
if (this.timer) {
|
|
121
|
-
clearInterval(this.timer);
|
|
122
|
-
this.timer = null;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}, {
|
|
126
|
-
key: "updateTime",
|
|
127
|
-
value: function updateTime() {
|
|
128
|
-
this.setState({
|
|
129
|
-
currentTime: Date.now()
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
}, {
|
|
133
|
-
key: "handleError",
|
|
134
|
-
value: function handleError(error) {
|
|
135
|
-
this.setState({
|
|
136
|
-
error: "".concat(error)
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
}, {
|
|
140
|
-
key: "handleUpdate",
|
|
141
|
-
value: function handleUpdate(item) {
|
|
142
|
-
var _ref = item !== null && item !== void 0 ? item : {},
|
|
143
|
-
_ref$data = _ref.data,
|
|
144
|
-
data = _ref$data === void 0 ? null : _ref$data;
|
|
145
|
-
|
|
146
|
-
this.setState({
|
|
147
|
-
data: data
|
|
148
|
-
});
|
|
149
|
-
var onUpdate = this.props.onUpdate;
|
|
150
|
-
onUpdate(data);
|
|
151
|
-
}
|
|
152
|
-
}, {
|
|
153
|
-
key: "handleTimeout",
|
|
154
|
-
value: function handleTimeout() {
|
|
155
|
-
this.updateTime();
|
|
156
|
-
}
|
|
157
|
-
}, {
|
|
158
|
-
key: "render",
|
|
159
|
-
value: function render() {
|
|
160
|
-
var _ref3, _result$error$message, _result$error;
|
|
161
|
-
|
|
162
|
-
var _this$props2 = this.props,
|
|
163
|
-
name = _this$props2.item.name,
|
|
164
|
-
language = _this$props2.language;
|
|
165
|
-
var _this$state = this.state,
|
|
166
|
-
currentTime = _this$state.currentTime,
|
|
167
|
-
data = _this$state.data,
|
|
168
|
-
error = _this$state.error;
|
|
169
|
-
|
|
170
|
-
var _ref2 = data !== null && data !== void 0 ? data : {},
|
|
171
|
-
result = _ref2.result,
|
|
172
|
-
startTime = _ref2.startTime,
|
|
173
|
-
endTime = _ref2.endTime;
|
|
174
|
-
|
|
175
|
-
var errorMessage = (_ref3 = (_result$error$message = result === null || result === void 0 ? void 0 : (_result$error = result.error) === null || _result$error === void 0 ? void 0 : _result$error.message) !== null && _result$error$message !== void 0 ? _result$error$message : result === null || result === void 0 ? void 0 : result.error) !== null && _ref3 !== void 0 ? _ref3 : error;
|
|
176
|
-
var timeString = CommandHistoryItemTooltip.getTimeString(startTime, endTime || currentTime); // colorizing in monaco is mostly a function of the number of lines,
|
|
177
|
-
// it gets real slow after a few thousand lines. Truncate the tooltip
|
|
178
|
-
// to avoid UI locks. The full command is still inserted.
|
|
179
|
-
|
|
180
|
-
var previewText = this.getPreviewText(name);
|
|
181
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
182
|
-
className: "command-history-item-tooltip"
|
|
183
|
-
}, /*#__PURE__*/React.createElement(Code, {
|
|
184
|
-
language: language
|
|
185
|
-
}, previewText), previewText.length < name.length && /*#__PURE__*/React.createElement("p", null, "Preview Truncated..."), /*#__PURE__*/React.createElement("div", {
|
|
186
|
-
className: "result-info"
|
|
187
|
-
}, !timeString && /*#__PURE__*/React.createElement(LoadingSpinner, null), timeString && /*#__PURE__*/React.createElement("div", {
|
|
188
|
-
className: "time-string"
|
|
189
|
-
}, timeString)), errorMessage && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("hr", null), /*#__PURE__*/React.createElement("div", {
|
|
190
|
-
key: "error",
|
|
191
|
-
className: "error-message"
|
|
192
|
-
}, errorMessage)));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
componentWillUnmount() {
|
|
66
|
+
this.loadData.cancel();
|
|
67
|
+
|
|
68
|
+
if (this.cleanup != null) {
|
|
69
|
+
this.cleanup();
|
|
193
70
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
71
|
+
|
|
72
|
+
this.stopTimer();
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
loadData() {
|
|
76
|
+
var {
|
|
77
|
+
commandHistoryStorage,
|
|
78
|
+
item,
|
|
79
|
+
language
|
|
80
|
+
} = this.props;
|
|
81
|
+
var {
|
|
82
|
+
id
|
|
83
|
+
} = item;
|
|
84
|
+
this.cleanup = commandHistoryStorage.listenItem(language, id, this.handleUpdate, this.handleError);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
startTimer() {
|
|
88
|
+
this.stopTimer();
|
|
89
|
+
this.timer = setInterval(this.handleTimeout, 1000);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
stopTimer() {
|
|
93
|
+
if (this.timer) {
|
|
94
|
+
clearInterval(this.timer);
|
|
95
|
+
this.timer = null;
|
|
204
96
|
}
|
|
205
|
-
}
|
|
97
|
+
}
|
|
206
98
|
|
|
207
|
-
|
|
208
|
-
|
|
99
|
+
updateTime() {
|
|
100
|
+
this.setState({
|
|
101
|
+
currentTime: Date.now()
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
handleError(error) {
|
|
106
|
+
this.setState({
|
|
107
|
+
error: "".concat(error)
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
handleUpdate(item) {
|
|
112
|
+
var {
|
|
113
|
+
data = null
|
|
114
|
+
} = item !== null && item !== void 0 ? item : {};
|
|
115
|
+
this.setState({
|
|
116
|
+
data
|
|
117
|
+
});
|
|
118
|
+
var {
|
|
119
|
+
onUpdate
|
|
120
|
+
} = this.props;
|
|
121
|
+
onUpdate(data);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
handleTimeout() {
|
|
125
|
+
this.updateTime();
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
render() {
|
|
129
|
+
var _ref, _result$error$message, _result$error;
|
|
130
|
+
|
|
131
|
+
var {
|
|
132
|
+
item: {
|
|
133
|
+
name
|
|
134
|
+
},
|
|
135
|
+
language
|
|
136
|
+
} = this.props;
|
|
137
|
+
var {
|
|
138
|
+
currentTime,
|
|
139
|
+
data,
|
|
140
|
+
error
|
|
141
|
+
} = this.state;
|
|
142
|
+
var {
|
|
143
|
+
result,
|
|
144
|
+
startTime,
|
|
145
|
+
endTime
|
|
146
|
+
} = data !== null && data !== void 0 ? data : {};
|
|
147
|
+
var errorMessage = (_ref = (_result$error$message = result === null || result === void 0 ? void 0 : (_result$error = result.error) === null || _result$error === void 0 ? void 0 : _result$error.message) !== null && _result$error$message !== void 0 ? _result$error$message : result === null || result === void 0 ? void 0 : result.error) !== null && _ref !== void 0 ? _ref : error;
|
|
148
|
+
var timeString = CommandHistoryItemTooltip.getTimeString(startTime, endTime || currentTime); // colorizing in monaco is mostly a function of the number of lines,
|
|
149
|
+
// it gets real slow after a few thousand lines. Truncate the tooltip
|
|
150
|
+
// to avoid UI locks. The full command is still inserted.
|
|
151
|
+
|
|
152
|
+
var previewText = this.getPreviewText(name);
|
|
153
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
154
|
+
className: "command-history-item-tooltip"
|
|
155
|
+
}, /*#__PURE__*/React.createElement(Code, {
|
|
156
|
+
language: language
|
|
157
|
+
}, previewText), previewText.length < name.length && /*#__PURE__*/React.createElement("p", null, "Preview Truncated..."), /*#__PURE__*/React.createElement("div", {
|
|
158
|
+
className: "result-info"
|
|
159
|
+
}, !timeString && /*#__PURE__*/React.createElement(LoadingSpinner, null), timeString && /*#__PURE__*/React.createElement("div", {
|
|
160
|
+
className: "time-string"
|
|
161
|
+
}, timeString)), errorMessage && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("hr", null), /*#__PURE__*/React.createElement("div", {
|
|
162
|
+
key: "error",
|
|
163
|
+
className: "error-message"
|
|
164
|
+
}, errorMessage)));
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
}
|
|
209
168
|
CommandHistoryItemTooltip.propTypes = {
|
|
210
169
|
item: ConsolePropTypes.CommandHistoryItem.isRequired,
|
|
211
170
|
language: PropTypes.string.isRequired,
|
|
@@ -213,16 +172,7 @@ CommandHistoryItemTooltip.propTypes = {
|
|
|
213
172
|
commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired
|
|
214
173
|
};
|
|
215
174
|
CommandHistoryItemTooltip.defaultProps = {
|
|
216
|
-
onUpdate:
|
|
175
|
+
onUpdate: () => {}
|
|
217
176
|
};
|
|
218
|
-
|
|
219
|
-
var mapStateToProps = function mapStateToProps(state) {
|
|
220
|
-
return {
|
|
221
|
-
commandHistoryStorage: getCommandHistoryStorage(state)
|
|
222
|
-
};
|
|
223
|
-
};
|
|
224
|
-
|
|
225
|
-
export default connect(mapStateToProps, null, null, {
|
|
226
|
-
forwardRef: true
|
|
227
|
-
})(CommandHistoryItemTooltip);
|
|
177
|
+
export default CommandHistoryItemTooltip;
|
|
228
178
|
//# sourceMappingURL=CommandHistoryItemTooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/command-history/CommandHistoryItemTooltip.jsx"],"names":["React","Component","PropTypes","connect","debounce","memoize","LoadingSpinner","getCommandHistoryStorage","TimeUtils","Code","ConsolePropTypes","StoragePropTypes","LOAD_DATA_DEBOUNCE","MAX_NUMBER_OF_LINES","CommandHistoryItemTooltip","props","name","split","join","max","loadData","bind","handleUpdate","handleError","handleTimeout","timer","cleanup","state","currentTime","Date","now","data","error","prevProps","prevState","result","startTime","endTime","startTimer","stopTimer","cancel","commandHistoryStorage","item","language","id","listenItem","setInterval","clearInterval","setState","onUpdate","updateTime","errorMessage","message","timeString","getTimeString","previewText","getPreviewText","length","deltaTime","Math","round","formatElapsedTime","propTypes","CommandHistoryItem","isRequired","string","func","CommandHistoryStorage","defaultProps","mapStateToProps","forwardRef"],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport debounce from 'lodash.debounce';\nimport memoize from 'memoizee';\nimport { LoadingSpinner } from '@deephaven/components';\nimport { getCommandHistoryStorage } from '@deephaven/redux';\nimport { TimeUtils } from '@deephaven/utils';\nimport Code from '../common/Code';\nimport './CommandHistoryItemTooltip.scss';\nimport ConsolePropTypes from '../ConsolePropTypes';\nimport StoragePropTypes from '../StoragePropTypes';\n\nconst LOAD_DATA_DEBOUNCE = 250;\nconst MAX_NUMBER_OF_LINES = 2500;\n\nexport class CommandHistoryItemTooltip extends Component {\n static getTimeString(startTime, endTime) {\n if (!startTime || !endTime) {\n return null;\n }\n\n const deltaTime = Math.round(\n (new Date(endTime) - new Date(startTime)) / 1000\n );\n\n if (deltaTime < 1) return '<1s';\n\n return TimeUtils.formatElapsedTime(deltaTime);\n }\n\n constructor(props) {\n super(props);\n\n this.loadData = debounce(this.loadData.bind(this), LOAD_DATA_DEBOUNCE);\n this.handleUpdate = this.handleUpdate.bind(this);\n this.handleError = this.handleError.bind(this);\n this.handleTimeout = this.handleTimeout.bind(this);\n\n this.timer = null;\n this.cleanup = null;\n\n this.state = {\n currentTime: Date.now(),\n data: null,\n error: null,\n };\n }\n\n componentDidMount() {\n this.loadData();\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { data } = this.state;\n\n if (\n this.timer == null &&\n !data?.result &&\n data?.startTime &&\n !data?.endTime\n ) {\n this.startTimer();\n } else if (\n (data?.result && !prevState.data?.result) ||\n (data?.endTime && !prevState.data?.endTime)\n ) {\n // Command complete\n this.stopTimer();\n }\n }\n\n componentWillUnmount() {\n this.loadData.cancel();\n if (this.cleanup != null) {\n this.cleanup();\n }\n this.stopTimer();\n }\n\n loadData() {\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 }\n\n startTimer() {\n this.stopTimer();\n\n this.timer = setInterval(this.handleTimeout, 1000);\n }\n\n stopTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n }\n\n updateTime() {\n this.setState({\n currentTime: Date.now(),\n });\n }\n\n handleError(error) {\n this.setState({ error: `${error}` });\n }\n\n handleUpdate(item) {\n const { data = null } = item ?? {};\n this.setState({ data });\n\n const { onUpdate } = this.props;\n onUpdate(data);\n }\n\n handleTimeout() {\n this.updateTime();\n }\n\n getPreviewText = memoize(\n name => name.split('\\n', MAX_NUMBER_OF_LINES).join('\\n'),\n { max: 1 }\n );\n\n render() {\n const {\n item: { name },\n language,\n } = this.props;\n const { currentTime, data, error } = this.state;\n const { result, startTime, endTime } = data ?? {};\n const errorMessage = result?.error?.message ?? result?.error ?? error;\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 return (\n <div className=\"command-history-item-tooltip\">\n <Code language={language}>{previewText}</Code>\n {previewText.length < name.length && <p>Preview Truncated...</p>}\n <div className=\"result-info\">\n {!timeString && <LoadingSpinner />}\n {timeString && <div className=\"time-string\">{timeString}</div>}\n </div>\n {errorMessage && (\n <>\n <hr />\n <div key=\"error\" className=\"error-message\">\n {errorMessage}\n </div>\n </>\n )}\n </div>\n );\n }\n}\n\nCommandHistoryItemTooltip.propTypes = {\n item: ConsolePropTypes.CommandHistoryItem.isRequired,\n language: PropTypes.string.isRequired,\n onUpdate: PropTypes.func,\n commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired,\n};\n\nCommandHistoryItemTooltip.defaultProps = {\n onUpdate: () => {},\n};\n\nconst mapStateToProps = state => ({\n commandHistoryStorage: getCommandHistoryStorage(state),\n});\n\nexport default connect(mapStateToProps, null, null, { forwardRef: true })(\n CommandHistoryItemTooltip\n);\n"],"file":"CommandHistoryItemTooltip.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/command-history/CommandHistoryItemTooltip.jsx"],"names":["React","Component","PropTypes","debounce","memoize","LoadingSpinner","TimeUtils","Code","ConsolePropTypes","StoragePropTypes","LOAD_DATA_DEBOUNCE","MAX_NUMBER_OF_LINES","CommandHistoryItemTooltip","getTimeString","startTime","endTime","deltaTime","Math","round","Date","formatElapsedTime","constructor","props","name","split","join","max","loadData","bind","handleUpdate","handleError","handleTimeout","timer","cleanup","state","currentTime","now","data","error","componentDidMount","componentDidUpdate","prevProps","prevState","result","startTimer","stopTimer","componentWillUnmount","cancel","commandHistoryStorage","item","language","id","listenItem","setInterval","clearInterval","updateTime","setState","onUpdate","render","errorMessage","message","timeString","previewText","getPreviewText","length","propTypes","CommandHistoryItem","isRequired","string","func","CommandHistoryStorage","defaultProps"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,SAAhB,QAAiC,OAAjC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,QAAP,MAAqB,iBAArB;AACA,OAAOC,OAAP,MAAoB,UAApB;AACA,SAASC,cAAT,QAA+B,uBAA/B;AACA,SAASC,SAAT,QAA0B,kBAA1B;OACOC,I;;OAEAC,gB;OACAC,gB;AAEP,IAAMC,kBAAkB,GAAG,GAA3B;AACA,IAAMC,mBAAmB,GAAG,IAA5B;AAEA,OAAO,MAAMC,yBAAN,SAAwCX,SAAxC,CAAkD;AACnC,SAAbY,aAAa,CAACC,SAAD,EAAYC,OAAZ,EAAqB;AACvC,QAAI,CAACD,SAAD,IAAc,CAACC,OAAnB,EAA4B;AAC1B,aAAO,IAAP;AACD;;AAED,QAAMC,SAAS,GAAGC,IAAI,CAACC,KAAL,CAChB,CAAC,IAAIC,IAAJ,CAASJ,OAAT,IAAoB,IAAII,IAAJ,CAASL,SAAT,CAArB,IAA4C,IAD5B,CAAlB;AAIA,QAAIE,SAAS,GAAG,CAAhB,EAAmB,OAAO,KAAP;AAEnB,WAAOV,SAAS,CAACc,iBAAV,CAA4BJ,SAA5B,CAAP;AACD;;AAEDK,EAAAA,WAAW,CAACC,KAAD,EAAQ;AACjB,UAAMA,KAAN;;AADiB,4CA+FFlB,OAAO,CACtBmB,IAAI,IAAIA,IAAI,CAACC,KAAL,CAAW,IAAX,EAAiBb,mBAAjB,EAAsCc,IAAtC,CAA2C,IAA3C,CADc,EAEtB;AAAEC,MAAAA,GAAG,EAAE;AAAP,KAFsB,CA/FL;;AAGjB,SAAKC,QAAL,GAAgBxB,QAAQ,CAAC,KAAKwB,QAAL,CAAcC,IAAd,CAAmB,IAAnB,CAAD,EAA2BlB,kBAA3B,CAAxB;AACA,SAAKmB,YAAL,GAAoB,KAAKA,YAAL,CAAkBD,IAAlB,CAAuB,IAAvB,CAApB;AACA,SAAKE,WAAL,GAAmB,KAAKA,WAAL,CAAiBF,IAAjB,CAAsB,IAAtB,CAAnB;AACA,SAAKG,aAAL,GAAqB,KAAKA,aAAL,CAAmBH,IAAnB,CAAwB,IAAxB,CAArB;AAEA,SAAKI,KAAL,GAAa,IAAb;AACA,SAAKC,OAAL,GAAe,IAAf;AAEA,SAAKC,KAAL,GAAa;AACXC,MAAAA,WAAW,EAAEhB,IAAI,CAACiB,GAAL,EADF;AAEXC,MAAAA,IAAI,EAAE,IAFK;AAGXC,MAAAA,KAAK,EAAE;AAHI,KAAb;AAKD;;AAEDC,EAAAA,iBAAiB,GAAG;AAClB,SAAKZ,QAAL;AACD;;AAEDa,EAAAA,kBAAkB,CAACC,SAAD,EAAYC,SAAZ,EAAuB;AAAA;;AACvC,QAAM;AAAEL,MAAAA;AAAF,QAAW,KAAKH,KAAtB;;AAEA,QACE,KAAKF,KAAL,IAAc,IAAd,IACA,EAACK,IAAD,aAACA,IAAD,eAACA,IAAI,CAAEM,MAAP,CADA,IAEAN,IAFA,aAEAA,IAFA,eAEAA,IAAI,CAAEvB,SAFN,IAGA,EAACuB,IAAD,aAACA,IAAD,eAACA,IAAI,CAAEtB,OAAP,CAJF,EAKE;AACA,WAAK6B,UAAL;AACD,KAPD,MAOO,IACJP,IAAI,SAAJ,IAAAA,IAAI,WAAJ,IAAAA,IAAI,CAAEM,MAAN,IAAgB,qBAACD,SAAS,CAACL,IAAX,4CAAC,gBAAgBM,MAAjB,CAAjB,IACCN,IAAI,SAAJ,IAAAA,IAAI,WAAJ,IAAAA,IAAI,CAAEtB,OAAN,IAAiB,sBAAC2B,SAAS,CAACL,IAAX,6CAAC,iBAAgBtB,OAAjB,CAFb,EAGL;AACA;AACA,WAAK8B,SAAL;AACD;AACF;;AAEDC,EAAAA,oBAAoB,GAAG;AACrB,SAAKnB,QAAL,CAAcoB,MAAd;;AACA,QAAI,KAAKd,OAAL,IAAgB,IAApB,EAA0B;AACxB,WAAKA,OAAL;AACD;;AACD,SAAKY,SAAL;AACD;;AAEDlB,EAAAA,QAAQ,GAAG;AACT,QAAM;AAAEqB,MAAAA,qBAAF;AAAyBC,MAAAA,IAAzB;AAA+BC,MAAAA;AAA/B,QAA4C,KAAK5B,KAAvD;AACA,QAAM;AAAE6B,MAAAA;AAAF,QAASF,IAAf;AACA,SAAKhB,OAAL,GAAee,qBAAqB,CAACI,UAAtB,CACbF,QADa,EAEbC,EAFa,EAGb,KAAKtB,YAHQ,EAIb,KAAKC,WAJQ,CAAf;AAMD;;AAEDc,EAAAA,UAAU,GAAG;AACX,SAAKC,SAAL;AAEA,SAAKb,KAAL,GAAaqB,WAAW,CAAC,KAAKtB,aAAN,EAAqB,IAArB,CAAxB;AACD;;AAEDc,EAAAA,SAAS,GAAG;AACV,QAAI,KAAKb,KAAT,EAAgB;AACdsB,MAAAA,aAAa,CAAC,KAAKtB,KAAN,CAAb;AACA,WAAKA,KAAL,GAAa,IAAb;AACD;AACF;;AAEDuB,EAAAA,UAAU,GAAG;AACX,SAAKC,QAAL,CAAc;AACZrB,MAAAA,WAAW,EAAEhB,IAAI,CAACiB,GAAL;AADD,KAAd;AAGD;;AAEDN,EAAAA,WAAW,CAACQ,KAAD,EAAQ;AACjB,SAAKkB,QAAL,CAAc;AAAElB,MAAAA,KAAK,YAAKA,KAAL;AAAP,KAAd;AACD;;AAEDT,EAAAA,YAAY,CAACoB,IAAD,EAAO;AACjB,QAAM;AAAEZ,MAAAA,IAAI,GAAG;AAAT,QAAkBY,IAAlB,aAAkBA,IAAlB,cAAkBA,IAAlB,GAA0B,EAAhC;AACA,SAAKO,QAAL,CAAc;AAAEnB,MAAAA;AAAF,KAAd;AAEA,QAAM;AAAEoB,MAAAA;AAAF,QAAe,KAAKnC,KAA1B;AACAmC,IAAAA,QAAQ,CAACpB,IAAD,CAAR;AACD;;AAEDN,EAAAA,aAAa,GAAG;AACd,SAAKwB,UAAL;AACD;;AAODG,EAAAA,MAAM,GAAG;AAAA;;AACP,QAAM;AACJT,MAAAA,IAAI,EAAE;AAAE1B,QAAAA;AAAF,OADF;AAEJ2B,MAAAA;AAFI,QAGF,KAAK5B,KAHT;AAIA,QAAM;AAAEa,MAAAA,WAAF;AAAeE,MAAAA,IAAf;AAAqBC,MAAAA;AAArB,QAA+B,KAAKJ,KAA1C;AACA,QAAM;AAAES,MAAAA,MAAF;AAAU7B,MAAAA,SAAV;AAAqBC,MAAAA;AAArB,QAAiCsB,IAAjC,aAAiCA,IAAjC,cAAiCA,IAAjC,GAAyC,EAA/C;AACA,QAAMsB,YAAY,oCAAGhB,MAAH,aAAGA,MAAH,wCAAGA,MAAM,CAAEL,KAAX,kDAAG,cAAesB,OAAlB,yEAA6BjB,MAA7B,aAA6BA,MAA7B,uBAA6BA,MAAM,CAAEL,KAArC,uCAA8CA,KAAhE;AACA,QAAMuB,UAAU,GAAGjD,yBAAyB,CAACC,aAA1B,CACjBC,SADiB,EAEjBC,OAAO,IAAIoB,WAFM,CAAnB,CARO,CAaP;AACA;AACA;;AACA,QAAM2B,WAAW,GAAG,KAAKC,cAAL,CAAoBxC,IAApB,CAApB;AAEA,wBACE;AAAK,MAAA,SAAS,EAAC;AAAf,oBACE,oBAAC,IAAD;AAAM,MAAA,QAAQ,EAAE2B;AAAhB,OAA2BY,WAA3B,CADF,EAEGA,WAAW,CAACE,MAAZ,GAAqBzC,IAAI,CAACyC,MAA1B,iBAAoC,sDAFvC,eAGE;AAAK,MAAA,SAAS,EAAC;AAAf,OACG,CAACH,UAAD,iBAAe,oBAAC,cAAD,OADlB,EAEGA,UAAU,iBAAI;AAAK,MAAA,SAAS,EAAC;AAAf,OAA8BA,UAA9B,CAFjB,CAHF,EAOGF,YAAY,iBACX,uDACE,+BADF,eAEE;AAAK,MAAA,GAAG,EAAC,OAAT;AAAiB,MAAA,SAAS,EAAC;AAA3B,OACGA,YADH,CAFF,CARJ,CADF;AAkBD;;AAvJsD;AA0JzD/C,yBAAyB,CAACqD,SAA1B,GAAsC;AACpChB,EAAAA,IAAI,EAAEzC,gBAAgB,CAAC0D,kBAAjB,CAAoCC,UADN;AAEpCjB,EAAAA,QAAQ,EAAEhD,SAAS,CAACkE,MAAV,CAAiBD,UAFS;AAGpCV,EAAAA,QAAQ,EAAEvD,SAAS,CAACmE,IAHgB;AAIpCrB,EAAAA,qBAAqB,EAAEvC,gBAAgB,CAAC6D,qBAAjB,CAAuCH;AAJ1B,CAAtC;AAOAvD,yBAAyB,CAAC2D,YAA1B,GAAyC;AACvCd,EAAAA,QAAQ,EAAE,MAAM,CAAE;AADqB,CAAzC;AAIA,eAAe7C,yBAAf","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\nimport memoize from 'memoizee';\nimport { LoadingSpinner } from '@deephaven/components';\nimport { TimeUtils } from '@deephaven/utils';\nimport Code from '../common/Code';\nimport './CommandHistoryItemTooltip.scss';\nimport ConsolePropTypes from '../ConsolePropTypes';\nimport StoragePropTypes from '../StoragePropTypes';\n\nconst LOAD_DATA_DEBOUNCE = 250;\nconst MAX_NUMBER_OF_LINES = 2500;\n\nexport class CommandHistoryItemTooltip extends Component {\n static getTimeString(startTime, endTime) {\n if (!startTime || !endTime) {\n return null;\n }\n\n const deltaTime = Math.round(\n (new Date(endTime) - new Date(startTime)) / 1000\n );\n\n if (deltaTime < 1) return '<1s';\n\n return TimeUtils.formatElapsedTime(deltaTime);\n }\n\n constructor(props) {\n super(props);\n\n this.loadData = debounce(this.loadData.bind(this), LOAD_DATA_DEBOUNCE);\n this.handleUpdate = this.handleUpdate.bind(this);\n this.handleError = this.handleError.bind(this);\n this.handleTimeout = this.handleTimeout.bind(this);\n\n this.timer = null;\n this.cleanup = null;\n\n this.state = {\n currentTime: Date.now(),\n data: null,\n error: null,\n };\n }\n\n componentDidMount() {\n this.loadData();\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { data } = this.state;\n\n if (\n this.timer == null &&\n !data?.result &&\n data?.startTime &&\n !data?.endTime\n ) {\n this.startTimer();\n } else if (\n (data?.result && !prevState.data?.result) ||\n (data?.endTime && !prevState.data?.endTime)\n ) {\n // Command complete\n this.stopTimer();\n }\n }\n\n componentWillUnmount() {\n this.loadData.cancel();\n if (this.cleanup != null) {\n this.cleanup();\n }\n this.stopTimer();\n }\n\n loadData() {\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 }\n\n startTimer() {\n this.stopTimer();\n\n this.timer = setInterval(this.handleTimeout, 1000);\n }\n\n stopTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n }\n\n updateTime() {\n this.setState({\n currentTime: Date.now(),\n });\n }\n\n handleError(error) {\n this.setState({ error: `${error}` });\n }\n\n handleUpdate(item) {\n const { data = null } = item ?? {};\n this.setState({ data });\n\n const { onUpdate } = this.props;\n onUpdate(data);\n }\n\n handleTimeout() {\n this.updateTime();\n }\n\n getPreviewText = memoize(\n name => name.split('\\n', MAX_NUMBER_OF_LINES).join('\\n'),\n { max: 1 }\n );\n\n render() {\n const {\n item: { name },\n language,\n } = this.props;\n const { currentTime, data, error } = this.state;\n const { result, startTime, endTime } = data ?? {};\n const errorMessage = result?.error?.message ?? result?.error ?? error;\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 return (\n <div className=\"command-history-item-tooltip\">\n <Code language={language}>{previewText}</Code>\n {previewText.length < name.length && <p>Preview Truncated...</p>}\n <div className=\"result-info\">\n {!timeString && <LoadingSpinner />}\n {timeString && <div className=\"time-string\">{timeString}</div>}\n </div>\n {errorMessage && (\n <>\n <hr />\n <div key=\"error\" className=\"error-message\">\n {errorMessage}\n </div>\n </>\n )}\n </div>\n );\n }\n}\n\nCommandHistoryItemTooltip.propTypes = {\n item: ConsolePropTypes.CommandHistoryItem.isRequired,\n language: PropTypes.string.isRequired,\n onUpdate: PropTypes.func,\n commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired,\n};\n\nCommandHistoryItemTooltip.defaultProps = {\n onUpdate: () => {},\n};\n\nexport default CommandHistoryItemTooltip;\n"],"file":"CommandHistoryItemTooltip.js"}
|
|
@@ -6,30 +6,27 @@ var ROW_BUFFER_PAGES = 3;
|
|
|
6
6
|
var log = Log.module('CommandHistoryViewportUpdater');
|
|
7
7
|
|
|
8
8
|
function CommandHistoryViewportUpdater(_ref) {
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}, [table]);
|
|
31
|
-
useEffect(function () {
|
|
32
|
-
var cleanup = table.onUpdate(function (viewportData) {
|
|
9
|
+
var {
|
|
10
|
+
table,
|
|
11
|
+
columns,
|
|
12
|
+
top = 0,
|
|
13
|
+
bottom = 0,
|
|
14
|
+
search,
|
|
15
|
+
isReversed = false,
|
|
16
|
+
onUpdate
|
|
17
|
+
} = _ref;
|
|
18
|
+
var throttledUpdateViewport = useMemo(() => throttle(viewport => {
|
|
19
|
+
var viewHeight = viewport.bottom - viewport.top;
|
|
20
|
+
var bufferedTop = Math.max(0, viewport.top - viewHeight * ROW_BUFFER_PAGES);
|
|
21
|
+
var bufferedBottom = viewport.bottom + viewHeight * ROW_BUFFER_PAGES;
|
|
22
|
+
table.setViewport({
|
|
23
|
+
top: bufferedTop,
|
|
24
|
+
bottom: bufferedBottom,
|
|
25
|
+
columns: viewport.columns
|
|
26
|
+
});
|
|
27
|
+
}, UPDATE_DELAY), [table]);
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
var cleanup = table.onUpdate(viewportData => {
|
|
33
30
|
var _viewportData$items, _viewportData$offset;
|
|
34
31
|
|
|
35
32
|
onUpdate({
|
|
@@ -37,26 +34,24 @@ function CommandHistoryViewportUpdater(_ref) {
|
|
|
37
34
|
offset: (_viewportData$offset = viewportData.offset) !== null && _viewportData$offset !== void 0 ? _viewportData$offset : 0
|
|
38
35
|
});
|
|
39
36
|
});
|
|
40
|
-
return
|
|
37
|
+
return () => {
|
|
41
38
|
log.debug('onUpdate cleanup');
|
|
42
39
|
cleanup();
|
|
43
40
|
};
|
|
44
41
|
}, [table, onUpdate]);
|
|
45
|
-
useEffect(
|
|
42
|
+
useEffect(() => {
|
|
46
43
|
table.setSearch(search !== null && search !== void 0 ? search : '');
|
|
47
44
|
}, [table, search]);
|
|
48
|
-
useEffect(
|
|
45
|
+
useEffect(() => {
|
|
49
46
|
throttledUpdateViewport({
|
|
50
|
-
top
|
|
51
|
-
bottom
|
|
52
|
-
columns
|
|
47
|
+
top,
|
|
48
|
+
bottom,
|
|
49
|
+
columns
|
|
53
50
|
});
|
|
54
51
|
}, [throttledUpdateViewport, top, bottom, columns, search, isReversed]);
|
|
55
|
-
useEffect(
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
throttledUpdateViewport.cancel();
|
|
59
|
-
};
|
|
52
|
+
useEffect(() => () => {
|
|
53
|
+
log.debug2('Cancel throttledUpdateViewport');
|
|
54
|
+
throttledUpdateViewport.cancel();
|
|
60
55
|
}, [throttledUpdateViewport]);
|
|
61
56
|
return null;
|
|
62
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/command-history/CommandHistoryViewportUpdater.tsx"],"names":["useEffect","useMemo","throttle","Log","UPDATE_DELAY","ROW_BUFFER_PAGES","log","module","CommandHistoryViewportUpdater","table","columns","top","bottom","search","isReversed","onUpdate","throttledUpdateViewport","viewport","viewHeight","bufferedTop","Math","max","bufferedBottom","setViewport","cleanup","viewportData","items","offset","debug","setSearch","debug2","cancel"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,OAApB,QAAmC,OAAnC;AACA,OAAOC,QAAP,MAAqB,iBAArB;AAMA,OAAOC,GAAP,MAAgB,gBAAhB;AAgBA,IAAMC,YAAY,GAAG,GAArB;AAEA,IAAMC,gBAAgB,GAAG,CAAzB;AAEA,IAAMC,GAAG,GAAGH,GAAG,CAACI,MAAJ,CAAW,+BAAX,CAAZ;;AAEA,SAASC,6BAAT,OAQ6C;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../src/command-history/CommandHistoryViewportUpdater.tsx"],"names":["useEffect","useMemo","throttle","Log","UPDATE_DELAY","ROW_BUFFER_PAGES","log","module","CommandHistoryViewportUpdater","table","columns","top","bottom","search","isReversed","onUpdate","throttledUpdateViewport","viewport","viewHeight","bufferedTop","Math","max","bufferedBottom","setViewport","cleanup","viewportData","items","offset","debug","setSearch","debug2","cancel"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,OAApB,QAAmC,OAAnC;AACA,OAAOC,QAAP,MAAqB,iBAArB;AAMA,OAAOC,GAAP,MAAgB,gBAAhB;AAgBA,IAAMC,YAAY,GAAG,GAArB;AAEA,IAAMC,gBAAgB,GAAG,CAAzB;AAEA,IAAMC,GAAG,GAAGH,GAAG,CAACI,MAAJ,CAAW,+BAAX,CAAZ;;AAEA,SAASC,6BAAT,OAQ6C;AAAA,MARN;AACrCC,IAAAA,KADqC;AAErCC,IAAAA,OAFqC;AAGrCC,IAAAA,GAAG,GAAG,CAH+B;AAIrCC,IAAAA,MAAM,GAAG,CAJ4B;AAKrCC,IAAAA,MALqC;AAMrCC,IAAAA,UAAU,GAAG,KANwB;AAOrCC,IAAAA;AAPqC,GAQM;AAC3C,MAAMC,uBAAuB,GAAGf,OAAO,CACrC,MACEC,QAAQ,CAAEe,QAAD,IAAoC;AAC3C,QAAMC,UAAU,GAAGD,QAAQ,CAACL,MAAT,GAAkBK,QAAQ,CAACN,GAA9C;AACA,QAAMQ,WAAW,GAAGC,IAAI,CAACC,GAAL,CAClB,CADkB,EAElBJ,QAAQ,CAACN,GAAT,GAAeO,UAAU,GAAGb,gBAFV,CAApB;AAIA,QAAMiB,cAAc,GAAGL,QAAQ,CAACL,MAAT,GAAkBM,UAAU,GAAGb,gBAAtD;AAEAI,IAAAA,KAAK,CAACc,WAAN,CAAkB;AAChBZ,MAAAA,GAAG,EAAEQ,WADW;AAEhBP,MAAAA,MAAM,EAAEU,cAFQ;AAGhBZ,MAAAA,OAAO,EAAEO,QAAQ,CAACP;AAHF,KAAlB;AAKD,GAbO,EAaLN,YAbK,CAF2B,EAgBrC,CAACK,KAAD,CAhBqC,CAAvC;AAmBAT,EAAAA,SAAS,CAAC,MAAM;AACd,QAAMwB,OAAO,GAAGf,KAAK,CAACM,QAAN,CACbU,YAAD,IAA2D;AAAA;;AACzDV,MAAAA,QAAQ,CAAC;AACPW,QAAAA,KAAK,yBAAED,YAAY,CAACC,KAAf,qEAAwB,EADtB;AAEPC,QAAAA,MAAM,0BAAEF,YAAY,CAACE,MAAf,uEAAyB;AAFxB,OAAD,CAAR;AAID,KANa,CAAhB;AASA,WAAO,MAAM;AACXrB,MAAAA,GAAG,CAACsB,KAAJ,CAAU,kBAAV;AACAJ,MAAAA,OAAO;AACR,KAHD;AAID,GAdQ,EAcN,CAACf,KAAD,EAAQM,QAAR,CAdM,CAAT;AAgBAf,EAAAA,SAAS,CAAC,MAAM;AACdS,IAAAA,KAAK,CAACoB,SAAN,CAAgBhB,MAAhB,aAAgBA,MAAhB,cAAgBA,MAAhB,GAA0B,EAA1B;AACD,GAFQ,EAEN,CAACJ,KAAD,EAAQI,MAAR,CAFM,CAAT;AAIAb,EAAAA,SAAS,CAAC,MAAM;AACdgB,IAAAA,uBAAuB,CAAC;AACtBL,MAAAA,GADsB;AAEtBC,MAAAA,MAFsB;AAGtBF,MAAAA;AAHsB,KAAD,CAAvB;AAKD,GANQ,EAMN,CAACM,uBAAD,EAA0BL,GAA1B,EAA+BC,MAA/B,EAAuCF,OAAvC,EAAgDG,MAAhD,EAAwDC,UAAxD,CANM,CAAT;AAQAd,EAAAA,SAAS,CACP,MAAM,MAAM;AACVM,IAAAA,GAAG,CAACwB,MAAJ,CAAW,gCAAX;AACAd,IAAAA,uBAAuB,CAACe,MAAxB;AACD,GAJM,EAKP,CAACf,uBAAD,CALO,CAAT;AAQA,SAAO,IAAP;AACD;;AAED,eAAeR,6BAAf","sourcesContent":["import { useEffect, useMemo } from 'react';\nimport throttle from 'lodash.throttle';\nimport {\n StorageTableViewport,\n ViewportData,\n ViewportUpdateCallback,\n} from '@deephaven/storage';\nimport Log from '@deephaven/log';\nimport {\n CommandHistoryStorageItem,\n CommandHistoryTable,\n} from './CommandHistoryStorage';\n\nexport type CommandHistoryViewportUpdaterProps = {\n table: CommandHistoryTable;\n columns?: string[];\n top?: number;\n bottom?: number;\n search?: string;\n isReversed?: boolean;\n onUpdate: ViewportUpdateCallback<CommandHistoryStorageItem>;\n};\n\nconst UPDATE_DELAY = 150;\n\nconst ROW_BUFFER_PAGES = 3;\n\nconst log = Log.module('CommandHistoryViewportUpdater');\n\nfunction CommandHistoryViewportUpdater({\n table,\n columns,\n top = 0,\n bottom = 0,\n search,\n isReversed = false,\n onUpdate,\n}: CommandHistoryViewportUpdaterProps): null {\n const throttledUpdateViewport = useMemo(\n () =>\n throttle((viewport: StorageTableViewport) => {\n const viewHeight = viewport.bottom - viewport.top;\n const bufferedTop = Math.max(\n 0,\n viewport.top - viewHeight * ROW_BUFFER_PAGES\n );\n const bufferedBottom = viewport.bottom + viewHeight * ROW_BUFFER_PAGES;\n\n table.setViewport({\n top: bufferedTop,\n bottom: bufferedBottom,\n columns: viewport.columns,\n });\n }, UPDATE_DELAY),\n [table]\n );\n\n useEffect(() => {\n const cleanup = table.onUpdate(\n (viewportData: ViewportData<CommandHistoryStorageItem>) => {\n onUpdate({\n items: viewportData.items ?? [],\n offset: viewportData.offset ?? 0,\n });\n }\n );\n\n return () => {\n log.debug('onUpdate cleanup');\n cleanup();\n };\n }, [table, onUpdate]);\n\n useEffect(() => {\n table.setSearch(search ?? '');\n }, [table, search]);\n\n useEffect(() => {\n throttledUpdateViewport({\n top,\n bottom,\n columns,\n });\n }, [throttledUpdateViewport, top, bottom, columns, search, isReversed]);\n\n useEffect(\n () => () => {\n log.debug2('Cancel throttledUpdateViewport');\n throttledUpdateViewport.cancel();\n },\n [throttledUpdateViewport]\n );\n\n return null;\n}\n\nexport default CommandHistoryViewportUpdater;\n"],"file":"CommandHistoryViewportUpdater.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { default as CommandHistory } from
|
|
2
|
-
export { default as CommandHistoryActions } from
|
|
3
|
-
export { default as CommandHistoryItem } from
|
|
4
|
-
export { default as CommandHistoryItemTooltip } from
|
|
5
|
-
export * from
|
|
1
|
+
export { default as CommandHistory } from "./CommandHistory.js";
|
|
2
|
+
export { default as CommandHistoryActions } from "./CommandHistoryActions.js";
|
|
3
|
+
export { default as CommandHistoryItem } from "./CommandHistoryItem.js";
|
|
4
|
+
export { default as CommandHistoryItemTooltip } from "./CommandHistoryItemTooltip.js";
|
|
5
|
+
export * from "./CommandHistoryStorage.js";
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/command-history/index.jsx"],"names":["default","CommandHistory","CommandHistoryActions","CommandHistoryItem","CommandHistoryItemTooltip"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/command-history/index.jsx"],"names":["default","CommandHistory","CommandHistoryActions","CommandHistoryItem","CommandHistoryItemTooltip"],"mappings":"SAASA,OAAO,IAAIC,c;SACXD,OAAO,IAAIE,qB;SACXF,OAAO,IAAIG,kB;SACXH,OAAO,IAAII,yB","sourcesContent":["export { default as CommandHistory } from './CommandHistory';\nexport { default as CommandHistoryActions } from './CommandHistoryActions';\nexport { default as CommandHistoryItem } from './CommandHistoryItem';\nexport { default as CommandHistoryItemTooltip } from './CommandHistoryItemTooltip';\nexport * from './CommandHistoryStorage';\n"],"file":"index.js"}
|