@deephaven/console 0.21.1-beta.0 → 0.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- import { ChangeEvent, Component, ReactElement, RefObject } from 'react';
2
- import { SearchInput, RenderItemProps } from '@deephaven/components';
1
+ import React, { ChangeEvent, Component, ReactElement, RefObject } from 'react';
2
+ import { ItemList, SearchInput, RenderItemProps } from '@deephaven/components';
3
3
  import { ViewportData } from '@deephaven/storage';
4
4
  import { Pending, Range } from '@deephaven/utils';
5
5
  import './CommandHistory.scss';
@@ -41,6 +41,7 @@ declare class CommandHistory extends Component<CommandHistoryProps, CommandHisto
41
41
  historyActions: HistoryAction[];
42
42
  pending: Pending;
43
43
  searchInputRef: RefObject<SearchInput>;
44
+ itemListRef: React.RefObject<ItemList<CommandHistoryStorageItem>>;
44
45
  /**
45
46
  * Retrieves the selected commands as an array.
46
47
  * If they're not within the current viewport, will fetch them from the table
@@ -65,6 +66,7 @@ declare class CommandHistory extends Component<CommandHistoryProps, CommandHisto
65
66
  handleViewportUpdate({ items, offset, }: ViewportData<CommandHistoryStorageItem>): void;
66
67
  renderItem({ item, itemIndex, isSelected, }: RenderItemProps<CommandHistoryStorageItem>): ReactElement;
67
68
  focus(): void;
69
+ restoreScrollPosition(): void;
68
70
  render(): ReactElement;
69
71
  }
70
72
  export default CommandHistory;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandHistory.d.ts","sourceRoot":"","sources":["../../src/command-history/CommandHistory.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EAIL,WAAW,EAEX,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQlD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAMlD,OAAO,uBAAuB,CAAC;AAG/B,OAAO,qBAAqB,EAAE,EAC5B,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAIlE,oBAAY,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7E,cAAc,EAAE,CACd,QAAQ,EAAE,sBAAsB,EAChC,gBAAgB,CAAC,EAAE,OAAO,KACvB,IAAI,CAAC;IACV,KAAK,EAAE,mBAAmB,CAAC;IAC3B,qBAAqB,EAAE,qBAAqB,CAAC;CAC9C;AACD,UAAU,mBAAmB;IAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,yBAAyB,EAAE,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,KAAK,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,cAAM,cAAe,SAAQ,SAAS,CACpC,mBAAmB,EACnB,mBAAmB,CACpB;IACC,MAAM,CAAC,WAAW,SAAM;IAExB,MAAM,CAAC,mBAAmB,SAAS;IAEnC,MAAM,CAAC,UAAU;;MAEf;IAEF,MAAM,CAAC,uBAAuB,CAC5B,KAAK,EAAE,yBAAyB,EAAE,EAClC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,KAAK,EAAE,GACpB,MAAM,EAAE;WAcE,uBAAuB,CAClC,KAAK,EAAE,mBAAmB,EAC1B,YAAY,EAAE,KAAK,EAAE,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC;gBAKR,KAAK,EAAE,mBAAmB;IAgGtC,oBAAoB,IAAI,IAAI;IAI5B,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B,cAAc,EAAE,aAAa,EAAE,CAAC;IAEhC,OAAO,EAAE,OAAO,CAAC;IAEjB,cAAc,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAEvC;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAoB9C;;;OAGG;IACH,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIzC,aAAa,IAAI,IAAI;IAmBrB,oBAAoB,IAAI,IAAI;IAM5B,cAAc,IAAI,IAAI;IAStB,cAAc,IAAI,IAAI;IAStB,aAAa,IAAI,IAAI;IAKrB,YAAY,IAAI,IAAI;IASpB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAYjC,qBAAqB,CAAC,cAAc,EAAE,KAAK,EAAE,GAAG,IAAI;IAKpD,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvD,kBAAkB,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAK1D,oBAAoB,CAAC,EACnB,KAAK,EACL,MAAM,GACP,EAAE,YAAY,CAAC,yBAAyB,CAAC,GAAG,IAAI;IAMjD,UAAU,CAAC,EACT,IAAI,EACJ,SAAS,EACT,UAAU,GACX,EAAE,eAAe,CAAC,yBAAyB,CAAC,GAAG,YAAY;IAY5D,KAAK,IAAI,IAAI;IAMb,MAAM,IAAI,YAAY;CAwDvB;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"CommandHistory.d.ts","sourceRoot":"","sources":["../../src/command-history/CommandHistory.tsx"],"names":[],"mappings":"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"}
@@ -55,6 +55,8 @@ class CommandHistory extends Component {
55
55
 
56
56
  _defineProperty(this, "searchInputRef", void 0);
57
57
 
58
+ _defineProperty(this, "itemListRef", void 0);
59
+
58
60
  this.copySelectedCommands = this.copySelectedCommands.bind(this);
59
61
  this.createNotebook = this.createNotebook.bind(this);
60
62
  this.sendToConsole = this.sendToConsole.bind(this);
@@ -120,6 +122,7 @@ class CommandHistory extends Component {
120
122
  }];
121
123
  this.pending = new Pending();
122
124
  this.searchInputRef = /*#__PURE__*/React.createRef();
125
+ this.itemListRef = /*#__PURE__*/React.createRef();
123
126
  var {
124
127
  table
125
128
  } = props;
@@ -330,6 +333,12 @@ class CommandHistory extends Component {
330
333
  }
331
334
  }
332
335
 
336
+ restoreScrollPosition() {
337
+ var _this$itemListRef$cur;
338
+
339
+ (_this$itemListRef$cur = this.itemListRef.current) === null || _this$itemListRef$cur === void 0 ? void 0 : _this$itemListRef$cur.restoreScrollPosition();
340
+ }
341
+
333
342
  render() {
334
343
  var _ConsoleConstants$LAN;
335
344
 
@@ -364,6 +373,7 @@ class CommandHistory extends Component {
364
373
  })), /*#__PURE__*/React.createElement("div", {
365
374
  className: "command-history-list"
366
375
  }, /*#__PURE__*/React.createElement(ItemList, {
376
+ ref: this.itemListRef,
367
377
  itemCount: itemCount,
368
378
  items: items,
369
379
  offset: offset,
@@ -1 +1 @@
1
- {"version":3,"file":"CommandHistory.js","names":["React","Component","ContextActions","ContextActionUtils","ItemList","SearchInput","GLOBAL_SHORTCUTS","vsFileCode","vsFiles","vsNewFile","vsPlay","vsTerminal","Pending","Log","CommandHistoryItem","CommandHistoryActions","ConsoleConstants","CommandHistoryViewportUpdater","SHORTCUTS","log","module","CommandHistory","getCommandsFromViewport","items","offset","sortedRanges","commands","i","length","range","j","name","push","getCommandsFromSnapshot","table","getSnapshot","values","map","item","constructor","props","copySelectedCommands","bind","createNotebook","sendToConsole","renderItem","runInConsole","sendToNotebook","handleSelect","handleSelectionChange","handleSearchChange","handleViewportChange","handleViewportUpdate","itemActions","title","description","icon","shortcut","COPY","action","group","groups","edit","COMMAND_HISTORY","SEND_TO_CONSOLE","menuGroups","send","order","RUN","SEND_TO_NOTEBOOK","historyActions","selectionRequired","pending","searchInputRef","createRef","state","actions","top","bottom","itemCount","size","selectedRanges","searchText","componentWillUnmount","cancel","getSelectedCommands","ranges","slice","sort","a","b","add","getSelectedCommandText","then","join","updateActions","setState","selectedRowCount","reduce","count","MAX_SELECTION_COUNT","debug","copyToClipboard","catch","error","commandText","language","value","index","e","target","itemIndex","isSelected","commandHistoryStorage","focus","current","render","languageDisplayString","LANGUAGE_MAP","get","ITEM_HEIGHT","medium"],"sources":["../../src/command-history/CommandHistory.tsx"],"sourcesContent":["import React, { ChangeEvent, Component, ReactElement, RefObject } from 'react';\nimport {\n ContextActions,\n ContextActionUtils,\n ItemList,\n SearchInput,\n GLOBAL_SHORTCUTS,\n RenderItemProps,\n} from '@deephaven/components';\nimport { ViewportData } from '@deephaven/storage';\nimport {\n vsFileCode,\n vsFiles,\n vsNewFile,\n vsPlay,\n vsTerminal,\n} from '@deephaven/icons';\nimport { Pending, Range } from '@deephaven/utils';\nimport Log from '@deephaven/log';\nimport CommandHistoryItem from './CommandHistoryItem';\nimport CommandHistoryActions from './CommandHistoryActions';\nimport ConsoleConstants from '../common/ConsoleConstants';\n\nimport './CommandHistory.scss';\nimport CommandHistoryViewportUpdater from './CommandHistoryViewportUpdater';\nimport SHORTCUTS from '../ConsoleShortcuts';\nimport CommandHistoryStorage, {\n CommandHistoryStorageItem,\n CommandHistoryTable,\n} from './CommandHistoryStorage';\nimport { ItemAction, HistoryAction } from './CommandHistoryTypes';\n\nconst log = Log.module('CommandHistory');\n\nexport type CommandHistorySettings = {\n value: string;\n language: string;\n};\ninterface CommandHistoryProps {\n language: string;\n sendToConsole: (command: string, focus?: boolean, execute?: boolean) => void;\n sendToNotebook: (\n settings: CommandHistorySettings,\n forceNewNotebook?: boolean\n ) => void;\n table: CommandHistoryTable;\n commandHistoryStorage: CommandHistoryStorage;\n}\ninterface CommandHistoryState {\n actions: ItemAction[];\n historyActions: HistoryAction[];\n top: number;\n bottom: number;\n itemCount: number;\n items: CommandHistoryStorageItem[];\n offset: number;\n selectedRanges: Range[];\n searchText: string;\n}\n\nclass CommandHistory extends Component<\n CommandHistoryProps,\n CommandHistoryState\n> {\n static ITEM_HEIGHT = 29;\n\n static MAX_SELECTION_COUNT = 10000;\n\n static menuGroups = {\n send: ContextActions.groups.medium + 100,\n };\n\n static getCommandsFromViewport(\n items: CommandHistoryStorageItem[],\n offset: number,\n sortedRanges: Range[]\n ): string[] {\n const commands = [];\n for (let i = 0; i < sortedRanges.length; i += 1) {\n const range = sortedRanges[i];\n for (let j = range[0]; j <= range[1]; j += 1) {\n if (j >= offset && j < offset + items.length) {\n const { name } = items[j - offset];\n commands.push(name);\n }\n }\n }\n return commands;\n }\n\n static async getCommandsFromSnapshot(\n table: CommandHistoryTable,\n sortedRanges: Range[]\n ): Promise<string[]> {\n const items = await table.getSnapshot(sortedRanges);\n return [...items.values()].map(item => item.name);\n }\n\n constructor(props: CommandHistoryProps) {\n super(props);\n\n this.copySelectedCommands = this.copySelectedCommands.bind(this);\n this.createNotebook = this.createNotebook.bind(this);\n this.sendToConsole = this.sendToConsole.bind(this);\n this.renderItem = this.renderItem.bind(this);\n this.runInConsole = this.runInConsole.bind(this);\n this.sendToNotebook = this.sendToNotebook.bind(this);\n this.handleSelect = this.handleSelect.bind(this);\n this.handleSelectionChange = this.handleSelectionChange.bind(this);\n this.handleSearchChange = this.handleSearchChange.bind(this);\n this.handleViewportChange = this.handleViewportChange.bind(this);\n this.handleViewportUpdate = this.handleViewportUpdate.bind(this);\n\n this.itemActions = [\n {\n title: 'Copy Selection',\n description: 'Copy selected commands to clipboard',\n icon: vsFiles,\n shortcut: GLOBAL_SHORTCUTS.COPY,\n action: this.copySelectedCommands,\n group: ContextActions.groups.edit,\n },\n {\n title: 'Send to Console',\n description: 'Open selected commands in the console',\n icon: vsTerminal,\n shortcut: SHORTCUTS.COMMAND_HISTORY.SEND_TO_CONSOLE,\n action: this.sendToConsole,\n group: CommandHistory.menuGroups.send,\n order: 10,\n },\n {\n title: 'Run in Console',\n description: 'Run selected commands in the console',\n icon: vsPlay,\n shortcut: SHORTCUTS.COMMAND_HISTORY.RUN,\n action: this.runInConsole,\n group: CommandHistory.menuGroups.send,\n order: 10,\n },\n {\n title: 'Send to Active Notebook',\n description: 'Open selected commands in a notebook',\n icon: vsFileCode,\n shortcut: SHORTCUTS.COMMAND_HISTORY.SEND_TO_NOTEBOOK,\n action: this.sendToNotebook,\n group: CommandHistory.menuGroups.send,\n order: 20,\n },\n {\n title: 'Send to New Notebook',\n description: 'Open selected commands in a new notebook',\n icon: vsNewFile,\n action: this.createNotebook,\n group: CommandHistory.menuGroups.send,\n order: 30,\n },\n ];\n\n this.historyActions = [\n {\n title: 'Send to Console',\n icon: vsTerminal,\n selectionRequired: true,\n description: 'Open selected commands in the console',\n action: this.sendToConsole,\n },\n {\n title: 'Send to Notebook',\n icon: vsFileCode,\n selectionRequired: true,\n description: 'Open selected commands in a notebook',\n action: this.sendToNotebook,\n },\n ];\n\n this.pending = new Pending();\n this.searchInputRef = React.createRef();\n\n const { table } = props;\n\n this.state = {\n actions: [],\n historyActions: this.historyActions,\n top: 0,\n bottom: 0,\n itemCount: table.size,\n items: [],\n offset: 0,\n selectedRanges: [],\n searchText: '',\n };\n }\n\n componentWillUnmount(): void {\n this.pending.cancel();\n }\n\n itemActions: ItemAction[];\n\n historyActions: HistoryAction[];\n\n pending: Pending;\n\n searchInputRef: RefObject<SearchInput>;\n\n /**\n * Retrieves the selected commands as an array.\n * If they're not within the current viewport, will fetch them from the table\n * @returns Array of selected commands\n */\n async getSelectedCommands(): Promise<string[]> {\n const { items, offset, selectedRanges } = this.state;\n const ranges = selectedRanges.slice().sort((a, b) => a[0] - b[0]);\n\n if (ranges.length === 0) {\n return [];\n }\n if (\n ranges[0][0] >= offset &&\n ranges[ranges.length - 1][1] < offset + items.length\n ) {\n // All ranges are in the current viewport, just copy the data we've already got\n return CommandHistory.getCommandsFromViewport(items, offset, ranges);\n }\n const { table } = this.props;\n return this.pending.add(\n CommandHistory.getCommandsFromSnapshot(table, ranges)\n );\n }\n\n /**\n * Retrieves the text of all the currently selected commands, joined by a new line char\n * @returns The commands joined by \\n char\n */\n getSelectedCommandText(): Promise<string> {\n return this.getSelectedCommands().then(commands => commands.join('\\n'));\n }\n\n updateActions(): void {\n this.setState(state => {\n const { selectedRanges } = state;\n const selectedRowCount = selectedRanges.reduce(\n (count, range) => count + range[1] - range[0] + 1,\n 0\n );\n if (\n selectedRowCount > 0 &&\n selectedRowCount < CommandHistory.MAX_SELECTION_COUNT\n ) {\n log.debug('Updating actions', this.itemActions);\n return { actions: this.itemActions };\n }\n log.debug('Disabling actions', selectedRowCount);\n return { actions: [] };\n });\n }\n\n copySelectedCommands(): void {\n this.getSelectedCommandText()\n .then(ContextActionUtils.copyToClipboard)\n .catch(log.error);\n }\n\n createNotebook(): void {\n this.getSelectedCommandText()\n .then(commandText => {\n const { language, sendToNotebook } = this.props;\n sendToNotebook({ value: commandText, language }, true);\n })\n .catch(log.error);\n }\n\n sendToNotebook(): void {\n this.getSelectedCommandText()\n .then(commandText => {\n const { language, sendToNotebook } = this.props;\n sendToNotebook({ value: commandText, language });\n })\n .catch(log.error);\n }\n\n sendToConsole(): void {\n const { sendToConsole } = this.props;\n this.getSelectedCommandText().then(sendToConsole).catch(log.error);\n }\n\n runInConsole(): void {\n this.getSelectedCommandText()\n .then(commandText => {\n const { sendToConsole } = this.props;\n sendToConsole(commandText, true, true);\n })\n .catch(log.error);\n }\n\n handleSelect(index: number): void {\n const { sendToConsole } = this.props;\n const { items, offset } = this.state;\n if (index < offset || index >= offset + items.length) {\n log.error('Invalid index!', index);\n return;\n }\n\n const { name } = items[index - offset];\n sendToConsole(name);\n }\n\n handleSelectionChange(selectedRanges: Range[]): void {\n this.setState({ selectedRanges });\n this.updateActions();\n }\n\n handleViewportChange(top: number, bottom: number): void {\n this.setState({ top, bottom });\n }\n\n handleSearchChange(e: ChangeEvent<HTMLInputElement>): void {\n // clear selected range, as old selection could be filtered from list\n this.setState({ searchText: e.target.value, selectedRanges: [] });\n }\n\n handleViewportUpdate({\n items,\n offset,\n }: ViewportData<CommandHistoryStorageItem>): void {\n const { table } = this.props;\n const itemCount = table.size;\n this.setState({ items, itemCount, offset });\n }\n\n renderItem({\n item,\n itemIndex,\n isSelected,\n }: RenderItemProps<CommandHistoryStorageItem>): ReactElement {\n const { language, commandHistoryStorage } = this.props;\n return (\n <CommandHistoryItem\n isSelected={isSelected}\n item={item}\n language={language}\n commandHistoryStorage={commandHistoryStorage}\n />\n );\n }\n\n focus(): void {\n if (this.searchInputRef.current) {\n this.searchInputRef.current.focus();\n }\n }\n\n render(): ReactElement {\n const { language, table } = this.props;\n const {\n actions,\n historyActions,\n searchText,\n top,\n bottom,\n items,\n itemCount,\n offset,\n selectedRanges,\n } = this.state;\n const languageDisplayString =\n ConsoleConstants.LANGUAGE_MAP.get(language) ?? '';\n return (\n <div className=\"command-history\">\n <div className=\"command-history-search-bar\">\n <SearchInput\n ref={this.searchInputRef}\n value={searchText}\n placeholder={`${languageDisplayString} Command History`}\n onChange={this.handleSearchChange}\n />\n <CommandHistoryActions\n actions={historyActions}\n hasSelection={selectedRanges.length > 0}\n />\n </div>\n <div className=\"command-history-list\">\n <ItemList\n itemCount={itemCount}\n items={items}\n offset={offset}\n selectedRanges={selectedRanges}\n onSelect={this.handleSelect}\n onSelectionChange={this.handleSelectionChange}\n onViewportChange={this.handleViewportChange}\n renderItem={this.renderItem}\n rowHeight={CommandHistory.ITEM_HEIGHT}\n isDoubleClickSelect\n isMultiSelect\n isStickyBottom\n />\n <CommandHistoryViewportUpdater\n table={table}\n top={top}\n bottom={bottom}\n search={searchText}\n onUpdate={this.handleViewportUpdate}\n />\n <ContextActions actions={actions} />\n </div>\n </div>\n );\n }\n}\n\nexport default CommandHistory;\n"],"mappings":"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"}
1
+ {"version":3,"file":"CommandHistory.js","names":["React","Component","ContextActions","ContextActionUtils","ItemList","SearchInput","GLOBAL_SHORTCUTS","vsFileCode","vsFiles","vsNewFile","vsPlay","vsTerminal","Pending","Log","CommandHistoryItem","CommandHistoryActions","ConsoleConstants","CommandHistoryViewportUpdater","SHORTCUTS","log","module","CommandHistory","getCommandsFromViewport","items","offset","sortedRanges","commands","i","length","range","j","name","push","getCommandsFromSnapshot","table","getSnapshot","values","map","item","constructor","props","copySelectedCommands","bind","createNotebook","sendToConsole","renderItem","runInConsole","sendToNotebook","handleSelect","handleSelectionChange","handleSearchChange","handleViewportChange","handleViewportUpdate","itemActions","title","description","icon","shortcut","COPY","action","group","groups","edit","COMMAND_HISTORY","SEND_TO_CONSOLE","menuGroups","send","order","RUN","SEND_TO_NOTEBOOK","historyActions","selectionRequired","pending","searchInputRef","createRef","itemListRef","state","actions","top","bottom","itemCount","size","selectedRanges","searchText","componentWillUnmount","cancel","getSelectedCommands","ranges","slice","sort","a","b","add","getSelectedCommandText","then","join","updateActions","setState","selectedRowCount","reduce","count","MAX_SELECTION_COUNT","debug","copyToClipboard","catch","error","commandText","language","value","index","e","target","itemIndex","isSelected","commandHistoryStorage","focus","current","restoreScrollPosition","render","languageDisplayString","LANGUAGE_MAP","get","ITEM_HEIGHT","medium"],"sources":["../../src/command-history/CommandHistory.tsx"],"sourcesContent":["import React, { ChangeEvent, Component, ReactElement, RefObject } from 'react';\nimport {\n ContextActions,\n ContextActionUtils,\n ItemList,\n SearchInput,\n GLOBAL_SHORTCUTS,\n RenderItemProps,\n} from '@deephaven/components';\nimport { ViewportData } from '@deephaven/storage';\nimport {\n vsFileCode,\n vsFiles,\n vsNewFile,\n vsPlay,\n vsTerminal,\n} from '@deephaven/icons';\nimport { Pending, Range } from '@deephaven/utils';\nimport Log from '@deephaven/log';\nimport CommandHistoryItem from './CommandHistoryItem';\nimport CommandHistoryActions from './CommandHistoryActions';\nimport ConsoleConstants from '../common/ConsoleConstants';\n\nimport './CommandHistory.scss';\nimport CommandHistoryViewportUpdater from './CommandHistoryViewportUpdater';\nimport SHORTCUTS from '../ConsoleShortcuts';\nimport CommandHistoryStorage, {\n CommandHistoryStorageItem,\n CommandHistoryTable,\n} from './CommandHistoryStorage';\nimport { ItemAction, HistoryAction } from './CommandHistoryTypes';\n\nconst log = Log.module('CommandHistory');\n\nexport type CommandHistorySettings = {\n value: string;\n language: string;\n};\ninterface CommandHistoryProps {\n language: string;\n sendToConsole: (command: string, focus?: boolean, execute?: boolean) => void;\n sendToNotebook: (\n settings: CommandHistorySettings,\n forceNewNotebook?: boolean\n ) => void;\n table: CommandHistoryTable;\n commandHistoryStorage: CommandHistoryStorage;\n}\ninterface CommandHistoryState {\n actions: ItemAction[];\n historyActions: HistoryAction[];\n top: number;\n bottom: number;\n itemCount: number;\n items: CommandHistoryStorageItem[];\n offset: number;\n selectedRanges: Range[];\n searchText: string;\n}\n\nclass CommandHistory extends Component<\n CommandHistoryProps,\n CommandHistoryState\n> {\n static ITEM_HEIGHT = 29;\n\n static MAX_SELECTION_COUNT = 10000;\n\n static menuGroups = {\n send: ContextActions.groups.medium + 100,\n };\n\n static getCommandsFromViewport(\n items: CommandHistoryStorageItem[],\n offset: number,\n sortedRanges: Range[]\n ): string[] {\n const commands = [];\n for (let i = 0; i < sortedRanges.length; i += 1) {\n const range = sortedRanges[i];\n for (let j = range[0]; j <= range[1]; j += 1) {\n if (j >= offset && j < offset + items.length) {\n const { name } = items[j - offset];\n commands.push(name);\n }\n }\n }\n return commands;\n }\n\n static async getCommandsFromSnapshot(\n table: CommandHistoryTable,\n sortedRanges: Range[]\n ): Promise<string[]> {\n const items = await table.getSnapshot(sortedRanges);\n return [...items.values()].map(item => item.name);\n }\n\n constructor(props: CommandHistoryProps) {\n super(props);\n\n this.copySelectedCommands = this.copySelectedCommands.bind(this);\n this.createNotebook = this.createNotebook.bind(this);\n this.sendToConsole = this.sendToConsole.bind(this);\n this.renderItem = this.renderItem.bind(this);\n this.runInConsole = this.runInConsole.bind(this);\n this.sendToNotebook = this.sendToNotebook.bind(this);\n this.handleSelect = this.handleSelect.bind(this);\n this.handleSelectionChange = this.handleSelectionChange.bind(this);\n this.handleSearchChange = this.handleSearchChange.bind(this);\n this.handleViewportChange = this.handleViewportChange.bind(this);\n this.handleViewportUpdate = this.handleViewportUpdate.bind(this);\n\n this.itemActions = [\n {\n title: 'Copy Selection',\n description: 'Copy selected commands to clipboard',\n icon: vsFiles,\n shortcut: GLOBAL_SHORTCUTS.COPY,\n action: this.copySelectedCommands,\n group: ContextActions.groups.edit,\n },\n {\n title: 'Send to Console',\n description: 'Open selected commands in the console',\n icon: vsTerminal,\n shortcut: SHORTCUTS.COMMAND_HISTORY.SEND_TO_CONSOLE,\n action: this.sendToConsole,\n group: CommandHistory.menuGroups.send,\n order: 10,\n },\n {\n title: 'Run in Console',\n description: 'Run selected commands in the console',\n icon: vsPlay,\n shortcut: SHORTCUTS.COMMAND_HISTORY.RUN,\n action: this.runInConsole,\n group: CommandHistory.menuGroups.send,\n order: 10,\n },\n {\n title: 'Send to Active Notebook',\n description: 'Open selected commands in a notebook',\n icon: vsFileCode,\n shortcut: SHORTCUTS.COMMAND_HISTORY.SEND_TO_NOTEBOOK,\n action: this.sendToNotebook,\n group: CommandHistory.menuGroups.send,\n order: 20,\n },\n {\n title: 'Send to New Notebook',\n description: 'Open selected commands in a new notebook',\n icon: vsNewFile,\n action: this.createNotebook,\n group: CommandHistory.menuGroups.send,\n order: 30,\n },\n ];\n\n this.historyActions = [\n {\n title: 'Send to Console',\n icon: vsTerminal,\n selectionRequired: true,\n description: 'Open selected commands in the console',\n action: this.sendToConsole,\n },\n {\n title: 'Send to Notebook',\n icon: vsFileCode,\n selectionRequired: true,\n description: 'Open selected commands in a notebook',\n action: this.sendToNotebook,\n },\n ];\n\n this.pending = new Pending();\n this.searchInputRef = React.createRef();\n this.itemListRef = React.createRef();\n\n const { table } = props;\n\n this.state = {\n actions: [],\n historyActions: this.historyActions,\n top: 0,\n bottom: 0,\n itemCount: table.size,\n items: [],\n offset: 0,\n selectedRanges: [],\n searchText: '',\n };\n }\n\n componentWillUnmount(): void {\n this.pending.cancel();\n }\n\n itemActions: ItemAction[];\n\n historyActions: HistoryAction[];\n\n pending: Pending;\n\n searchInputRef: RefObject<SearchInput>;\n\n itemListRef: React.RefObject<ItemList<CommandHistoryStorageItem>>;\n\n /**\n * Retrieves the selected commands as an array.\n * If they're not within the current viewport, will fetch them from the table\n * @returns Array of selected commands\n */\n async getSelectedCommands(): Promise<string[]> {\n const { items, offset, selectedRanges } = this.state;\n const ranges = selectedRanges.slice().sort((a, b) => a[0] - b[0]);\n\n if (ranges.length === 0) {\n return [];\n }\n if (\n ranges[0][0] >= offset &&\n ranges[ranges.length - 1][1] < offset + items.length\n ) {\n // All ranges are in the current viewport, just copy the data we've already got\n return CommandHistory.getCommandsFromViewport(items, offset, ranges);\n }\n const { table } = this.props;\n return this.pending.add(\n CommandHistory.getCommandsFromSnapshot(table, ranges)\n );\n }\n\n /**\n * Retrieves the text of all the currently selected commands, joined by a new line char\n * @returns The commands joined by \\n char\n */\n getSelectedCommandText(): Promise<string> {\n return this.getSelectedCommands().then(commands => commands.join('\\n'));\n }\n\n updateActions(): void {\n this.setState(state => {\n const { selectedRanges } = state;\n const selectedRowCount = selectedRanges.reduce(\n (count, range) => count + range[1] - range[0] + 1,\n 0\n );\n if (\n selectedRowCount > 0 &&\n selectedRowCount < CommandHistory.MAX_SELECTION_COUNT\n ) {\n log.debug('Updating actions', this.itemActions);\n return { actions: this.itemActions };\n }\n log.debug('Disabling actions', selectedRowCount);\n return { actions: [] };\n });\n }\n\n copySelectedCommands(): void {\n this.getSelectedCommandText()\n .then(ContextActionUtils.copyToClipboard)\n .catch(log.error);\n }\n\n createNotebook(): void {\n this.getSelectedCommandText()\n .then(commandText => {\n const { language, sendToNotebook } = this.props;\n sendToNotebook({ value: commandText, language }, true);\n })\n .catch(log.error);\n }\n\n sendToNotebook(): void {\n this.getSelectedCommandText()\n .then(commandText => {\n const { language, sendToNotebook } = this.props;\n sendToNotebook({ value: commandText, language });\n })\n .catch(log.error);\n }\n\n sendToConsole(): void {\n const { sendToConsole } = this.props;\n this.getSelectedCommandText().then(sendToConsole).catch(log.error);\n }\n\n runInConsole(): void {\n this.getSelectedCommandText()\n .then(commandText => {\n const { sendToConsole } = this.props;\n sendToConsole(commandText, true, true);\n })\n .catch(log.error);\n }\n\n handleSelect(index: number): void {\n const { sendToConsole } = this.props;\n const { items, offset } = this.state;\n if (index < offset || index >= offset + items.length) {\n log.error('Invalid index!', index);\n return;\n }\n\n const { name } = items[index - offset];\n sendToConsole(name);\n }\n\n handleSelectionChange(selectedRanges: Range[]): void {\n this.setState({ selectedRanges });\n this.updateActions();\n }\n\n handleViewportChange(top: number, bottom: number): void {\n this.setState({ top, bottom });\n }\n\n handleSearchChange(e: ChangeEvent<HTMLInputElement>): void {\n // clear selected range, as old selection could be filtered from list\n this.setState({ searchText: e.target.value, selectedRanges: [] });\n }\n\n handleViewportUpdate({\n items,\n offset,\n }: ViewportData<CommandHistoryStorageItem>): void {\n const { table } = this.props;\n const itemCount = table.size;\n this.setState({ items, itemCount, offset });\n }\n\n renderItem({\n item,\n itemIndex,\n isSelected,\n }: RenderItemProps<CommandHistoryStorageItem>): ReactElement {\n const { language, commandHistoryStorage } = this.props;\n return (\n <CommandHistoryItem\n isSelected={isSelected}\n item={item}\n language={language}\n commandHistoryStorage={commandHistoryStorage}\n />\n );\n }\n\n focus(): void {\n if (this.searchInputRef.current) {\n this.searchInputRef.current.focus();\n }\n }\n\n restoreScrollPosition(): void {\n this.itemListRef.current?.restoreScrollPosition();\n }\n\n render(): ReactElement {\n const { language, table } = this.props;\n const {\n actions,\n historyActions,\n searchText,\n top,\n bottom,\n items,\n itemCount,\n offset,\n selectedRanges,\n } = this.state;\n const languageDisplayString =\n ConsoleConstants.LANGUAGE_MAP.get(language) ?? '';\n return (\n <div className=\"command-history\">\n <div className=\"command-history-search-bar\">\n <SearchInput\n ref={this.searchInputRef}\n value={searchText}\n placeholder={`${languageDisplayString} Command History`}\n onChange={this.handleSearchChange}\n />\n <CommandHistoryActions\n actions={historyActions}\n hasSelection={selectedRanges.length > 0}\n />\n </div>\n <div className=\"command-history-list\">\n <ItemList\n ref={this.itemListRef}\n itemCount={itemCount}\n items={items}\n offset={offset}\n selectedRanges={selectedRanges}\n onSelect={this.handleSelect}\n onSelectionChange={this.handleSelectionChange}\n onViewportChange={this.handleViewportChange}\n renderItem={this.renderItem}\n rowHeight={CommandHistory.ITEM_HEIGHT}\n isDoubleClickSelect\n isMultiSelect\n isStickyBottom\n />\n <CommandHistoryViewportUpdater\n table={table}\n top={top}\n bottom={bottom}\n search={searchText}\n onUpdate={this.handleViewportUpdate}\n />\n <ContextActions actions={actions} />\n </div>\n </div>\n );\n }\n}\n\nexport default CommandHistory;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/console",
3
- "version": "0.21.1-beta.0+3dbfa81",
3
+ "version": "0.21.1",
4
4
  "description": "Deephaven Console",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -31,13 +31,13 @@
31
31
  "start": "cross-env NODE_ENV=development npm run watch"
32
32
  },
33
33
  "dependencies": {
34
- "@deephaven/chart": "^0.21.1-beta.0+3dbfa81",
35
- "@deephaven/components": "^0.21.1-beta.0+3dbfa81",
36
- "@deephaven/icons": "^0.21.1-beta.0+3dbfa81",
37
- "@deephaven/jsapi-shim": "^0.21.1-beta.0+3dbfa81",
38
- "@deephaven/log": "^0.21.1-beta.0+3dbfa81",
39
- "@deephaven/storage": "^0.21.1-beta.0+3dbfa81",
40
- "@deephaven/utils": "^0.21.1-beta.0+3dbfa81",
34
+ "@deephaven/chart": "^0.21.0",
35
+ "@deephaven/components": "^0.21.1",
36
+ "@deephaven/icons": "^0.21.0",
37
+ "@deephaven/jsapi-shim": "^0.21.0",
38
+ "@deephaven/log": "^0.21.0",
39
+ "@deephaven/storage": "^0.21.0",
40
+ "@deephaven/utils": "^0.21.0",
41
41
  "@fortawesome/react-fontawesome": "^0.1.18",
42
42
  "classnames": "^2.3.1",
43
43
  "lodash.debounce": "^4.0.8",
@@ -55,8 +55,8 @@
55
55
  "react-dom": "^17.x"
56
56
  },
57
57
  "devDependencies": {
58
- "@deephaven/mocks": "^0.21.1-beta.0+3dbfa81",
59
- "@deephaven/tsconfig": "^0.21.1-beta.0+3dbfa81"
58
+ "@deephaven/mocks": "^0.21.0",
59
+ "@deephaven/tsconfig": "^0.21.0"
60
60
  },
61
61
  "files": [
62
62
  "dist"
@@ -67,5 +67,5 @@
67
67
  "publishConfig": {
68
68
  "access": "public"
69
69
  },
70
- "gitHead": "3dbfa81c03d76b04ea1b1e05ec5f3d7e95b65b9d"
70
+ "gitHead": "ecdbc76bcb69fa51d9d07b0922863482502764a9"
71
71
  }