@deephaven/console 0.7.2-beta.1 → 0.7.3-beta.4

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 +1 @@
1
- {"version":3,"file":"Console.d.ts","sourceRoot":"","sources":["../src/Console.jsx"],"names":[],"mappings":"AAgCA;IACE,4BAA0B;IAE1B;;;;OAIG;IACH;;;;;;;;;SAFa,OAAO,CAQnB;IAED;;;;OAIG;IACH;;;;;;;;;SAFa,OAAO,CAMnB;IAED,wBAmEC;IAiID,yFAoBC;IArED,uCA+CC;IAobD,wCAwBC;IAlgBD,sCAKC;IAoGD,qCAMC;IAED,qCASC;IAyUD,+BAqCC;IA/LD,+BAUC;IAED,qCAIC;IAED,4CAIC;IAED,gCAIC;IA1LD,+BAgBC;IA4KD,wBAMC;IAED,sBAQC;IAED,qCAEC;IAED,iCAEC;IAED,8BAuBC;IAED,8BAQC;IAED,6BAEC;IAED,oCA+BC;IAgBD,oCAEC;IAED,iCAEC;IAED,oDAEC;IA3iBC,oBAA0B;IAC1B,kCAAoC;IACpC,mCAAqC;IACrC,+CAAiD;IACjD,iBAA4B;IAC5B,yBAA2B;IAoE7B,2BAGC;IAED,6BAKC;IAED,mBAmBC;IAgFD,uFAyBC;IAqBD,mDAaC;IAoBD,qCAUC;IAED,sCAUC;IAED,wDAeC;IAED,2CAwDC;IAED;;;;OAIG;IACH,mCAHW,MAAM,wBACN,QAAQ,MAAM,CAAC,QAyBzB;IAED,oDASC;IAkID,yDAYC;IA+ED,4BAWC;IAED,iDAA2D;IAE3D,sDAUG;IAEH,mEASC;IAED,cAEC;IAED,+EAkBC;IAED,yBASC;CA8GF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuBmB,2CAAQ"}
1
+ {"version":3,"file":"Console.d.ts","sourceRoot":"","sources":["../src/Console.jsx"],"names":[],"mappings":"AAgCA;IACE,4BAA0B;IAE1B;;;;OAIG;IACH;;;;;;;;;SAFa,OAAO,CAQnB;IAED;;;;OAIG;IACH;;;;;;;;;SAFa,OAAO,CAMnB;IAED,wBAmEC;IAiID,yFAoBC;IArED,uCA+CC;IAsbD,wCAwBC;IApgBD,sCAKC;IAoGD,qCAMC;IAED,qCASC;IA2UD,+BAqCC;IAjMD,+BAUC;IAED,qCAIC;IAED,4CAIC;IAED,gCAIC;IA1LD,+BAgBC;IA4KD,wBAMC;IAED,sBAQC;IAED,qCAEC;IAED,iCAEC;IAED,8BAyBC;IAED,8BAQC;IAED,6BAEC;IAED,oCA+BC;IAgBD,oCAEC;IAED,iCAEC;IAED,oDAEC;IA7iBC,oBAA0B;IAC1B,kCAAoC;IACpC,mCAAqC;IACrC,+CAAiD;IACjD,iBAA4B;IAC5B,yBAA2B;IAoE7B,2BAGC;IAED,6BAKC;IAED,mBAmBC;IAgFD,uFAyBC;IAqBD,mDAaC;IAoBD,qCAUC;IAED,sCAUC;IAED,wDAeC;IAED,2CAwDC;IAED;;;;OAIG;IACH,mCAHW,MAAM,wBACN,QAAQ,MAAM,CAAC,QAyBzB;IAED,oDASC;IAoID,yDAYC;IA+ED,4BAWC;IAED,iDAA2D;IAE3D,sDAUG;IAEH,mEASC;IAED,cAEC;IAED,+EAkBC;IAED,yBASC;CA8GF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuBmB,2CAAQ"}
package/dist/Console.js CHANGED
@@ -565,7 +565,7 @@ export class Console extends PureComponent {
565
565
  }
566
566
 
567
567
  handleDragEnter(e) {
568
- if (!e.dataTransfer || !e.dataTransfer.items || e.dataTransfer.items.length === 0) {
568
+ if (!e.dataTransfer || !e.dataTransfer.items || e.dataTransfer.items.length === 0 || e.dataTransfer.items[0].kind === 'string') {
569
569
  return;
570
570
  }
571
571
 
@@ -582,6 +582,7 @@ export class Console extends PureComponent {
582
582
  this.setState({
583
583
  dragError: CsvOverlay.MULTIPLE_FILE_ERROR
584
584
  });
585
+ return;
585
586
  }
586
587
 
587
588
  var item = items[0];
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Console.jsx"],"names":["React","PureComponent","PropTypes","ContextActions","vsCheck","classNames","memoize","throttle","dh","APIPropTypes","Log","Pending","ConsoleHistory","SHORTCUTS","LogLevel","ConsoleInput","ConsoleUtils","CsvOverlay","CsvInputBar","ConsoleStatusBar","StoragePropTypes","log","module","DEFAULT_SETTINGS","isAutoLaunchPanelsEnabled","isPrintStdOutEnabled","isClosePanelsOnDisconnectEnabled","Console","isErrorLevel","logLevel","STDERR","ERROR","FATAL","isOutputLevel","STDOUT","constructor","props","objectMap","values","actions","action","handleClearShortcut","shortcut","CONSOLE","CLEAR","handleFocusHistory","FOCUS_HISTORY","handleCommandResult","bind","handleCommandStarted","handleCommandSubmit","handleLogMessage","handleOverflowActions","handleScrollPaneScroll","handleToggleAutoLaunchPanels","handleToggleClosePanelsOnDisconnect","handleTogglePrintStdout","processLogMessageQueue","LOG_THROTTLE","handleUploadCsv","handleHideCsv","handleCsvFileOpened","handleCsvPaste","handleDragEnter","handleDragLeave","handleClearDragError","handleOpenCsvTable","handleCsvUpdate","handleCsvError","handleCsvInProgress","cancelListener","consolePane","createRef","consoleInput","consoleHistoryScrollPane","pending","queuedLogMessages","settings","state","consoleHistory","consoleHeight","isScrollDecorationShown","objectHistoryMap","Map","showCsvOverlay","csvFile","csvPaste","dragError","csvUploadInProgress","componentDidMount","initConsoleLogging","session","addEventListener","IdeSession","EVENT_COMMANDSTARTED","updateDimensions","componentDidUpdate","prevProps","prevState","sendSettingsChange","disconnectedChildren","disconnect","componentWillUnmount","removeEventListener","cancel","deinitConsoleLogging","onLogMessage","setState","map","item","result","endTime","Date","now","changes","disabledItems","concat","created","updated","event","preventDefault","stopPropagation","current","clear","code","detail","wrappedResult","add","historyItem","command","disabledObjects","startTime","cancelResult","commandHistoryStorage","language","scope","workspaceItemPromise","addItem","toJSON","catch","err","debug","scrollConsoleHistoryToBottom","then","resolved","error","handleCommandError","historyItemParam","updateHistory","updateKnownObjects","updateWorkspaceHistoryItem","closeRemovedItems","openUpdatedItems","isCanceled","history","index","lastIndexOf","focusCommandHistory","message","queueLogMessage","push","debug2","length","openObject","filter","object","isOpenableType","type","forEach","removed","closeObject","itemIndex","disableOldObject","isRemoved","name","oldIndex","get","set","delete","promise","workspaceItem","updatedItem","data","updateItem","warn","force","pane","scrollTop","scrollHeight","offsetHeight","window","requestAnimationFrame","scrollPane","clientHeight","file","value","e","dataTransfer","items","MULTIPLE_FILE_ERROR","isValidDropItem","FILE_TYPE_ERROR","currentTarget","contains","relatedTarget","VariableType","TABLE","isExistingObject","has","addConsoleHistoryMessage","title","group","groups","high","icon","order","clearConsoleHistory","runCode","keys","addCommand","focus","execute","setConsoleText","checkIfChanged","Object","hasChanges","i","key","setting","prevSetting","onSettingsChange","render","statusBarChildren","timeZone","consoleMenuObjects","getObjects","inputMaxHeight","Math","round","isDisconnected","contextActions","getContextActions","disconnected","handleDragOver","INPUT_CLASS_NAME","propTypes","node","shape","func","isRequired","string","CommandHistoryStorage","arrayOf","defaultProps"],"mappings":"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","sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport { ContextActions } from '@deephaven/components';\nimport { vsCheck } from '@deephaven/icons';\nimport classNames from 'classnames';\nimport memoize from 'memoize-one';\nimport throttle from 'lodash.throttle';\nimport dh, { PropTypes as APIPropTypes } from '@deephaven/jsapi-shim';\nimport Log from '@deephaven/log';\nimport { Pending } from '@deephaven/utils';\nimport ConsoleHistory from './console-history/ConsoleHistory';\nimport SHORTCUTS from './ConsoleShortcuts';\nimport LogLevel from './log/LogLevel';\nimport ConsoleInput from './ConsoleInput';\nimport ConsoleUtils from './common/ConsoleUtils';\nimport CsvOverlay from './csv/CsvOverlay';\nimport CsvInputBar from './csv/CsvInputBar';\nimport './Console.scss';\nimport ConsoleStatusBar from './ConsoleStatusBar';\nimport StoragePropTypes from './StoragePropTypes';\n\nconst log = Log.module('Console');\n\nconst DEFAULT_SETTINGS = {\n isAutoLaunchPanelsEnabled: true,\n isPrintStdOutEnabled: true,\n isClosePanelsOnDisconnectEnabled: true,\n};\n\nexport class Console extends PureComponent {\n static LOG_THROTTLE = 500;\n\n /**\n * Check if the provided log level is an error type\n * @param {LogLevel} logLevel The LogLevel being checked\n * @returns {boolean} true if the log level is an error level log\n */\n static isErrorLevel(logLevel) {\n return (\n logLevel === LogLevel.STDERR ||\n logLevel === LogLevel.ERROR ||\n logLevel === LogLevel.FATAL\n );\n }\n\n /**\n * Check if the provided log level is output level\n * @param {LogLevel} logLevel The LogLevel being checked\n * @returns {boolean} true if the log level should be output to the console\n */\n static isOutputLevel(logLevel) {\n // We want all errors to be output, in addition to STDOUT.\n // That way the user is more likely to see them.\n return logLevel === LogLevel.STDOUT || Console.isErrorLevel(logLevel);\n }\n\n constructor(props) {\n super(props);\n\n this.handleCommandResult = this.handleCommandResult.bind(this);\n this.handleCommandStarted = this.handleCommandStarted.bind(this);\n this.handleCommandSubmit = this.handleCommandSubmit.bind(this);\n this.handleClearShortcut = this.handleClearShortcut.bind(this);\n this.handleFocusHistory = this.handleFocusHistory.bind(this);\n this.handleLogMessage = this.handleLogMessage.bind(this);\n this.handleOverflowActions = this.handleOverflowActions.bind(this);\n this.handleScrollPaneScroll = this.handleScrollPaneScroll.bind(this);\n this.handleToggleAutoLaunchPanels = this.handleToggleAutoLaunchPanels.bind(\n this\n );\n this.handleToggleClosePanelsOnDisconnect = this.handleToggleClosePanelsOnDisconnect.bind(\n this\n );\n this.handleTogglePrintStdout = this.handleTogglePrintStdout.bind(this);\n this.processLogMessageQueue = throttle(\n this.processLogMessageQueue.bind(this),\n Console.LOG_THROTTLE\n );\n this.handleUploadCsv = this.handleUploadCsv.bind(this);\n this.handleHideCsv = this.handleHideCsv.bind(this);\n this.handleCsvFileOpened = this.handleCsvFileOpened.bind(this);\n this.handleCsvPaste = this.handleCsvPaste.bind(this);\n this.handleDragEnter = this.handleDragEnter.bind(this);\n this.handleDragLeave = this.handleDragLeave.bind(this);\n this.handleClearDragError = this.handleClearDragError.bind(this);\n this.handleOpenCsvTable = this.handleOpenCsvTable.bind(this);\n this.handleCsvUpdate = this.handleCsvUpdate.bind(this);\n this.handleCsvError = this.handleCsvError.bind(this);\n this.handleCsvInProgress = this.handleCsvInProgress.bind(this);\n\n this.cancelListener = null;\n this.consolePane = React.createRef();\n this.consoleInput = React.createRef();\n this.consoleHistoryScrollPane = React.createRef();\n this.pending = new Pending();\n this.queuedLogMessages = [];\n\n const { settings } = this.props;\n\n this.state = {\n // Need separate histories as console history has stdout/stderr output\n consoleHistory: [],\n\n // Height of the viewport of the console input and history\n consoleHeight: 0,\n\n isScrollDecorationShown: false,\n\n // Location of objects in the console history\n objectHistoryMap: new Map(),\n\n // The object definitions, name/type\n objectMap: new Map(),\n\n showCsvOverlay: false,\n csvFile: null,\n csvPaste: null,\n dragError: null,\n csvUploadInProgress: false,\n\n ...DEFAULT_SETTINGS,\n ...settings,\n };\n }\n\n componentDidMount() {\n this.initConsoleLogging();\n\n const { session } = this.props;\n session.addEventListener(\n dh.IdeSession.EVENT_COMMANDSTARTED,\n this.handleCommandStarted\n );\n\n this.updateDimensions();\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { props, state } = this;\n this.sendSettingsChange(prevState, state);\n\n if (\n props.disconnectedChildren != null &&\n prevProps.disconnectedChildren == null\n ) {\n this.disconnect();\n }\n }\n\n componentWillUnmount() {\n const { session } = this.props;\n\n session.removeEventListener(\n dh.IdeSession.EVENT_COMMANDSTARTED,\n this.handleCommandStarted\n );\n\n this.pending.cancel();\n this.processLogMessageQueue.cancel();\n\n this.deinitConsoleLogging();\n }\n\n initConsoleLogging() {\n const { session } = this.props;\n this.cancelListener = session.onLogMessage(this.handleLogMessage);\n }\n\n deinitConsoleLogging() {\n if (this.cancelListener != null) {\n this.cancelListener();\n this.cancelListener = null;\n }\n }\n\n disconnect() {\n this.setState(({ consoleHistory }) => ({\n // Reset any pending commands with an empty result, disable all tables/widgets\n consoleHistory: consoleHistory.map(item => {\n if (item.result == null) {\n return { ...item, endTime: Date.now(), result: {} };\n }\n const { result } = item;\n if (result.changes) {\n const disabledItems = []\n .concat(result.changes.created)\n .concat(result.changes.updated);\n return { ...item, disabledItems };\n }\n return item;\n }),\n objectHistoryMap: new Map(),\n objectMap: new Map(),\n }));\n }\n\n handleClearShortcut(event) {\n event.preventDefault();\n event.stopPropagation();\n\n this.consoleInput.current.clear();\n }\n\n handleCommandStarted(event) {\n const { code, result } = event.detail;\n const wrappedResult = this.pending.add(result);\n const historyItem = {\n command: code,\n result: null,\n disabledObjects: [],\n startTime: Date.now(),\n endTime: null,\n cancelResult: () => {\n result.cancel();\n },\n wrappedResult,\n };\n\n const { commandHistoryStorage, language, scope } = this.props;\n const workspaceItemPromise = commandHistoryStorage.addItem(\n language,\n scope,\n code,\n {\n command: code,\n startTime: new Date().toJSON(),\n endTime: null,\n result: null,\n }\n );\n workspaceItemPromise.catch(err => {\n log.debug('Error adding workspace item', err);\n });\n\n this.setState(\n state => ({\n consoleHistory: state.consoleHistory.concat(historyItem),\n }),\n () => {\n this.scrollConsoleHistoryToBottom(true);\n }\n );\n\n wrappedResult\n .then(resolved => {\n this.handleCommandResult(resolved, historyItem, workspaceItemPromise);\n })\n .catch(error => {\n this.handleCommandError(error, historyItem, workspaceItemPromise);\n });\n }\n\n handleCommandResult(result, historyItemParam, workspaceItemPromise) {\n const historyItem = historyItemParam;\n historyItem.wrappedResult = null;\n historyItem.cancelResult = null;\n\n if (!result) {\n return;\n }\n\n historyItem.result = result;\n\n this.updateHistory(result, historyItem);\n this.updateKnownObjects(historyItem);\n this.updateWorkspaceHistoryItem(\n { error: result.error },\n workspaceItemPromise\n );\n\n this.closeRemovedItems(result.changes);\n this.openUpdatedItems(result.changes);\n }\n\n handleCommandError(error, historyItemParam, workspaceItemPromise) {\n const historyItem = historyItemParam;\n historyItem.wrappedResult = null;\n historyItem.cancelResult = null;\n\n if (error && error.isCanceled) {\n log.debug('Called handleCommandError on a cancelled promise result');\n return;\n }\n\n this.updateWorkspaceHistoryItem(\n { error: `${error}` },\n workspaceItemPromise\n );\n\n this.setState(state => {\n const history = state.consoleHistory.concat();\n const index = history.lastIndexOf(historyItem);\n historyItem.endTime = Date.now();\n historyItem.result = { error };\n history[index] = { ...historyItem };\n return {\n consoleHistory: history,\n };\n });\n }\n\n handleFocusHistory(event) {\n event.preventDefault();\n event.stopPropagation();\n\n const { focusCommandHistory } = this.props;\n focusCommandHistory();\n }\n\n handleLogMessage(message) {\n const { isPrintStdOutEnabled } = this.state;\n if (!isPrintStdOutEnabled) {\n return;\n }\n\n if (Console.isOutputLevel(message.logLevel)) {\n this.queueLogMessage(message.message, message.logLevel);\n }\n }\n\n queueLogMessage(message, logLevel) {\n const result = {};\n if (Console.isErrorLevel(logLevel)) {\n result.error = message;\n } else {\n result.message = message;\n }\n\n const historyItem = { command: null, result };\n\n this.queuedLogMessages.push(historyItem);\n\n this.processLogMessageQueue();\n }\n\n processLogMessageQueue() {\n this.scrollConsoleHistoryToBottom();\n\n this.setState(state => {\n log.debug2(\n 'processLogMessageQueue',\n this.queuedLogMessages.length,\n ' items'\n );\n\n let { consoleHistory } = state;\n consoleHistory = consoleHistory.concat(this.queuedLogMessages);\n this.queuedLogMessages = [];\n\n return { consoleHistory };\n });\n }\n\n openUpdatedItems(changes) {\n const { isAutoLaunchPanelsEnabled } = this.state;\n if (!changes || !isAutoLaunchPanelsEnabled) {\n return;\n }\n\n const { openObject } = this.props;\n [...changes.created, ...changes.updated]\n .filter(object => ConsoleUtils.isOpenableType(object.type))\n .forEach(object => openObject(object));\n }\n\n closeRemovedItems(changes) {\n if (!changes || !changes.removed || changes.removed.length === 0) {\n return;\n }\n\n const { closeObject } = this.props;\n const { removed } = changes;\n removed\n .filter(object => ConsoleUtils.isOpenableType(object.type))\n .forEach(object => closeObject(object));\n }\n\n updateHistory(result, historyItemParam) {\n const historyItem = historyItemParam;\n if (!result || !result.changes || !historyItem) {\n return;\n }\n\n historyItem.endTime = Date.now();\n\n this.scrollConsoleHistoryToBottom();\n\n // Update history to re-render items as necessary\n this.setState(state => {\n const consoleHistory = state.consoleHistory.concat();\n return { consoleHistory };\n });\n }\n\n updateKnownObjects(historyItem) {\n const { changes } = historyItem.result;\n if (\n !changes ||\n ((!changes.created || changes.created.length === 0) &&\n (!changes.updated || changes.updated.length === 0) &&\n (!changes.removed || changes.removed.length === 0))\n ) {\n log.debug2('updateKnownObjects no changes');\n return;\n }\n\n this.setState(state => {\n const history = state.consoleHistory.concat();\n const itemIndex = history.lastIndexOf(historyItem);\n if (itemIndex < 0) {\n log.error(`historyItem not found in state.consoleHistory`);\n return null;\n }\n\n const objectHistoryMap = new Map(state.objectHistoryMap);\n const objectMap = new Map(state.objectMap);\n\n const disableOldObject = (object, isRemoved = false) => {\n const { name } = object;\n const oldIndex = objectHistoryMap.get(name);\n // oldIndex can be -1 if a object is active but doesn't have a command in consoleHistory\n // this can happen after clearing the console using 'clear' or 'cls' command\n if (oldIndex >= 0) {\n // disable outdated object variable in the old consoleHistory item\n history[oldIndex].disabledObjects = history[\n oldIndex\n ].disabledObjects.concat(name);\n history[oldIndex] = { ...history[oldIndex] };\n }\n objectHistoryMap.set(name, itemIndex);\n if (isRemoved) {\n objectMap.delete(name);\n } else {\n objectMap.set(name, object);\n }\n };\n\n changes.updated.forEach(object => disableOldObject(object));\n changes.removed.forEach(object => disableOldObject(object, true));\n\n // Created objects have to be processed after removed\n // in case the same object name is present in both removed and created\n changes.created.forEach(object => {\n const { name } = object;\n objectHistoryMap.set(name, itemIndex);\n objectMap.set(name, object);\n });\n\n return { objectHistoryMap, objectMap, consoleHistory: history };\n });\n }\n\n /**\n * Updates an existing workspace CommandHistoryItem\n * @param {object} result The result to store with the history item. Could be empty object for success\n * @param {Promise<object>} workspaceItemPromise The workspace data row promise for the workspace item to be updated\n */\n updateWorkspaceHistoryItem(result, workspaceItemPromise) {\n const promise = this.pending.add(workspaceItemPromise);\n\n const endTime = new Date().toJSON();\n promise\n .then(workspaceItem => {\n const updatedItem = {\n ...workspaceItem,\n data: {\n ...workspaceItem.data,\n endTime,\n result,\n },\n };\n\n const { commandHistoryStorage, language } = this.props;\n commandHistoryStorage.updateItem(language, updatedItem).catch(err => {\n log.warn('Error updating command history storage', err);\n });\n })\n .catch(err => {\n log.debug('Error updating workspace history item', err);\n });\n }\n\n scrollConsoleHistoryToBottom(force = false) {\n const pane = this.consoleHistoryScrollPane.current;\n if (!force && pane.scrollTop < pane.scrollHeight - pane.offsetHeight) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n pane.scrollTop = pane.scrollHeight;\n });\n }\n\n handleScrollPaneScroll() {\n const scrollPane = this.consoleHistoryScrollPane.current;\n if (\n scrollPane.scrollTop > 0 &&\n scrollPane.scrollHeight > scrollPane.clientHeight\n ) {\n this.setState({ isScrollDecorationShown: true });\n } else {\n this.setState({ isScrollDecorationShown: false });\n }\n }\n\n handleToggleAutoLaunchPanels() {\n this.setState(state => ({\n isAutoLaunchPanelsEnabled: !state.isAutoLaunchPanelsEnabled,\n }));\n }\n\n handleToggleClosePanelsOnDisconnect() {\n this.setState(state => ({\n isClosePanelsOnDisconnectEnabled: !state.isClosePanelsOnDisconnectEnabled,\n }));\n }\n\n handleTogglePrintStdout() {\n this.setState(state => ({\n isPrintStdOutEnabled: !state.isPrintStdOutEnabled,\n }));\n }\n\n handleUploadCsv() {\n this.setState({\n showCsvOverlay: true,\n dragError: null,\n csvUploadInProgress: false,\n });\n }\n\n handleHideCsv() {\n this.setState({\n showCsvOverlay: false,\n csvFile: null,\n csvPaste: null,\n dragError: null,\n csvUploadInProgress: false,\n });\n }\n\n handleCsvFileOpened(file) {\n this.setState({ csvFile: file, csvPaste: null });\n }\n\n handleCsvPaste(value) {\n this.setState({ csvFile: null, csvPaste: value });\n }\n\n handleDragEnter(e) {\n if (\n !e.dataTransfer ||\n !e.dataTransfer.items ||\n e.dataTransfer.items.length === 0\n ) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n this.setState({ showCsvOverlay: true });\n\n const { items } = e.dataTransfer;\n if (items.length > 1) {\n this.setState({ dragError: CsvOverlay.MULTIPLE_FILE_ERROR });\n }\n\n const item = items[0];\n if (CsvOverlay.isValidDropItem(item)) {\n this.setState({ dragError: null });\n } else {\n this.setState({ dragError: CsvOverlay.FILE_TYPE_ERROR });\n }\n }\n\n handleDragLeave(e) {\n // DragLeave gets fired for every child element, so make sure we're actually leaving the drop zone\n if (!e.currentTarget || e.currentTarget.contains(e.relatedTarget)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n this.setState({ showCsvOverlay: false, dragError: null });\n }\n\n handleClearDragError() {\n this.setState({ dragError: null });\n }\n\n handleOpenCsvTable(name) {\n const { openObject, commandHistoryStorage, language, scope } = this.props;\n const { consoleHistory, objectMap } = this.state;\n const object = { name, type: dh.VariableType.TABLE };\n const isExistingObject = objectMap.has(name);\n const historyItem = {\n startTime: Date.now(),\n endTime: Date.now(),\n disabledObjects: [],\n result: {\n changes: {\n created: [],\n updated: [],\n removed: [],\n [isExistingObject ? 'updated' : 'created']: [object],\n },\n },\n };\n const history = consoleHistory.concat(historyItem);\n this.setState({\n consoleHistory: history,\n });\n this.scrollConsoleHistoryToBottom(true);\n this.updateKnownObjects(historyItem);\n openObject({ name, type: dh.VariableType.TABLE });\n commandHistoryStorage.addItem(language, scope, name, {\n command: name,\n startTime: new Date().toJSON(),\n endTime: new Date().toJSON(),\n result: null,\n });\n }\n\n addConsoleHistoryMessage(message, error) {\n const { consoleHistory } = this.state;\n const historyItem = {\n command: '',\n startTime: Date.now(),\n endTime: Date.now(),\n result: { message, error },\n };\n const history = consoleHistory.concat(historyItem);\n this.setState({\n consoleHistory: history,\n });\n }\n\n handleCsvUpdate(message) {\n this.addConsoleHistoryMessage(message);\n }\n\n handleCsvError(error) {\n this.addConsoleHistoryMessage(null, error);\n }\n\n handleCsvInProgress(csvUploadInProgress) {\n this.setState({ csvUploadInProgress });\n }\n\n handleOverflowActions() {\n const {\n isAutoLaunchPanelsEnabled,\n isClosePanelsOnDisconnectEnabled,\n isPrintStdOutEnabled,\n } = this.state;\n const { actions } = this.props;\n return [\n ...actions,\n {\n title: 'Print Stdout',\n action: this.handleTogglePrintStdout,\n group: ContextActions.groups.high,\n icon: isPrintStdOutEnabled ? vsCheck : null,\n order: 10,\n },\n {\n title: 'Auto Launch Panels',\n action: this.handleToggleAutoLaunchPanels,\n group: ContextActions.groups.high,\n icon: isAutoLaunchPanelsEnabled ? vsCheck : null,\n order: 20,\n },\n {\n title: 'Close Panels on Disconnect',\n action: this.handleToggleClosePanelsOnDisconnect,\n group: ContextActions.groups.high,\n icon: isClosePanelsOnDisconnectEnabled ? vsCheck : null,\n order: 30,\n },\n {\n title: 'Upload Table from File',\n action: this.handleUploadCsv,\n group: ContextActions.groups.high + 10,\n order: 40,\n },\n ];\n }\n\n handleCommandSubmit(command) {\n if (command === 'clear' || command === 'cls') {\n this.clearConsoleHistory();\n } else if (command.length > 0) {\n // Result is handled in this.handleCommandStarted\n const { session } = this.props;\n session.runCode(command).catch(error => {\n log.error('There was an error initiating the command', error);\n });\n } else {\n // Empty command, just pump a blank line out to history\n const historyItem = {\n command: ' ',\n result: {},\n startTime: Date.now(),\n endTime: Date.now(),\n };\n\n this.scrollConsoleHistoryToBottom(true);\n\n this.setState(state => ({\n consoleHistory: state.consoleHistory.concat(historyItem),\n }));\n }\n }\n\n clearConsoleHistory() {\n this.pending.cancel();\n\n this.setState(state => {\n // Replace all values with -1 to indicate that table references are still active\n // but don't have corresponding command indexes in consoleHistory\n const objectHistoryMap = new Map(\n [...state.objectHistoryMap.keys()].map(name => [name, -1])\n );\n return { consoleHistory: [], objectHistoryMap };\n });\n }\n\n getObjects = memoize(objectMap => [...objectMap.values()]);\n\n getContextActions = memoize(actions => [\n ...actions,\n {\n action: this.handleClearShortcut,\n shortcut: SHORTCUTS.CONSOLE.CLEAR,\n },\n {\n action: this.handleFocusHistory,\n shortcut: SHORTCUTS.CONSOLE.FOCUS_HISTORY,\n },\n ]);\n\n addCommand(command, focus = true, execute = false) {\n if (!this.consoleInput.current) {\n return;\n }\n this.consoleInput.current.setConsoleText(command, focus, execute);\n\n if (focus) {\n this.scrollConsoleHistoryToBottom(true);\n }\n }\n\n focus() {\n this.consoleInput.current?.focus();\n }\n\n sendSettingsChange(prevState, state, checkIfChanged = true) {\n const keys = Object.keys(DEFAULT_SETTINGS);\n const settings = {};\n let hasChanges = false;\n for (let i = 0; i < keys.length; i += 1) {\n const key = keys[i];\n const { [key]: setting } = state;\n const { [key]: prevSetting } = prevState;\n if (setting !== prevSetting) {\n hasChanges = true;\n }\n settings[key] = setting;\n }\n if (checkIfChanged && !hasChanges) {\n return;\n }\n const { onSettingsChange } = this.props;\n onSettingsChange(settings);\n }\n\n updateDimensions() {\n if (this.consolePane.current) {\n this.setState({\n consoleHeight: this.consolePane.current.clientHeight,\n });\n }\n if (this.consoleInput.current) {\n this.consoleInput.current.updateDimensions();\n }\n }\n\n render() {\n const {\n actions,\n disconnectedChildren,\n language,\n statusBarChildren,\n openObject,\n session,\n scope,\n commandHistoryStorage,\n timeZone,\n } = this.props;\n const {\n consoleHeight,\n consoleHistory,\n isScrollDecorationShown,\n objectMap,\n showCsvOverlay,\n csvFile,\n csvPaste,\n dragError,\n csvUploadInProgress,\n } = this.state;\n const consoleMenuObjects = this.getObjects(objectMap);\n const inputMaxHeight = Math.round(consoleHeight * 0.7);\n const isDisconnected = disconnectedChildren != null;\n const contextActions = this.getContextActions(actions);\n\n return (\n <div\n role=\"presentation\"\n className={classNames('iris-console h-100 w-100', {\n disconnected: isDisconnected,\n })}\n >\n <div className=\"console-pane\" ref={this.consolePane}>\n <ConsoleStatusBar\n session={session}\n overflowActions={this.handleOverflowActions}\n openObject={openObject}\n objects={consoleMenuObjects}\n >\n {statusBarChildren}\n </ConsoleStatusBar>\n <div\n className=\"console-csv-container\"\n onDragOver={CsvOverlay.handleDragOver}\n onDragEnter={this.handleDragEnter}\n onDragLeave={this.handleDragLeave}\n >\n {!isDisconnected && showCsvOverlay && (\n <CsvOverlay\n onFileOpened={this.handleCsvFileOpened}\n onPaste={this.handleCsvPaste}\n clearDragError={this.handleClearDragError}\n dragError={dragError}\n onError={this.handleCsvError}\n uploadInProgress={csvUploadInProgress}\n />\n )}\n <div\n role=\"presentation\"\n className={classNames('scroll-pane no-scroll-x', {\n 'scroll-decoration': isScrollDecorationShown,\n })}\n onScroll={this.handleScrollPaneScroll}\n ref={this.consoleHistoryScrollPane}\n >\n <ConsoleHistory\n items={consoleHistory}\n openObject={openObject}\n language={language}\n />\n {isDisconnected && disconnectedChildren}\n </div>\n </div>\n {!isDisconnected && !showCsvOverlay && (\n <ConsoleInput\n ref={this.consoleInput}\n session={session}\n language={language}\n scope={scope}\n onSubmit={this.handleCommandSubmit}\n maxHeight={inputMaxHeight}\n commandHistoryStorage={commandHistoryStorage}\n />\n )}\n {!isDisconnected && showCsvOverlay && (\n <CsvInputBar\n session={session}\n onOpenTable={this.handleOpenCsvTable}\n onClose={this.handleHideCsv}\n onUpdate={this.handleCsvUpdate}\n onError={this.handleCsvError}\n file={csvFile}\n paste={csvPaste}\n onInProgress={this.handleCsvInProgress}\n timeZone={timeZone}\n />\n )}\n </div>\n <ContextActions\n actions={contextActions}\n ignoreClassNames={[ConsoleInput.INPUT_CLASS_NAME]}\n />\n </div>\n );\n }\n}\n\nConsole.propTypes = {\n statusBarChildren: PropTypes.node,\n settings: PropTypes.shape({}),\n focusCommandHistory: PropTypes.func.isRequired,\n openObject: PropTypes.func.isRequired,\n closeObject: PropTypes.func.isRequired,\n session: APIPropTypes.IdeSession.isRequired,\n language: PropTypes.string.isRequired,\n commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired,\n onSettingsChange: PropTypes.func,\n scope: PropTypes.string,\n actions: PropTypes.arrayOf(PropTypes.shape({})),\n timeZone: PropTypes.string,\n\n // Message shown when the session has disconnected. Setting this value removes the input bar and disables old tables\n disconnectedChildren: PropTypes.node,\n};\n\nConsole.defaultProps = {\n statusBarChildren: null,\n settings: {},\n onSettingsChange: () => {},\n scope: null,\n actions: [],\n disconnectedChildren: null,\n timeZone: 'America/New_York',\n};\n\nexport default Console;\n"],"file":"Console.js"}
1
+ {"version":3,"sources":["../src/Console.jsx"],"names":["React","PureComponent","PropTypes","ContextActions","vsCheck","classNames","memoize","throttle","dh","APIPropTypes","Log","Pending","ConsoleHistory","SHORTCUTS","LogLevel","ConsoleInput","ConsoleUtils","CsvOverlay","CsvInputBar","ConsoleStatusBar","StoragePropTypes","log","module","DEFAULT_SETTINGS","isAutoLaunchPanelsEnabled","isPrintStdOutEnabled","isClosePanelsOnDisconnectEnabled","Console","isErrorLevel","logLevel","STDERR","ERROR","FATAL","isOutputLevel","STDOUT","constructor","props","objectMap","values","actions","action","handleClearShortcut","shortcut","CONSOLE","CLEAR","handleFocusHistory","FOCUS_HISTORY","handleCommandResult","bind","handleCommandStarted","handleCommandSubmit","handleLogMessage","handleOverflowActions","handleScrollPaneScroll","handleToggleAutoLaunchPanels","handleToggleClosePanelsOnDisconnect","handleTogglePrintStdout","processLogMessageQueue","LOG_THROTTLE","handleUploadCsv","handleHideCsv","handleCsvFileOpened","handleCsvPaste","handleDragEnter","handleDragLeave","handleClearDragError","handleOpenCsvTable","handleCsvUpdate","handleCsvError","handleCsvInProgress","cancelListener","consolePane","createRef","consoleInput","consoleHistoryScrollPane","pending","queuedLogMessages","settings","state","consoleHistory","consoleHeight","isScrollDecorationShown","objectHistoryMap","Map","showCsvOverlay","csvFile","csvPaste","dragError","csvUploadInProgress","componentDidMount","initConsoleLogging","session","addEventListener","IdeSession","EVENT_COMMANDSTARTED","updateDimensions","componentDidUpdate","prevProps","prevState","sendSettingsChange","disconnectedChildren","disconnect","componentWillUnmount","removeEventListener","cancel","deinitConsoleLogging","onLogMessage","setState","map","item","result","endTime","Date","now","changes","disabledItems","concat","created","updated","event","preventDefault","stopPropagation","current","clear","code","detail","wrappedResult","add","historyItem","command","disabledObjects","startTime","cancelResult","commandHistoryStorage","language","scope","workspaceItemPromise","addItem","toJSON","catch","err","debug","scrollConsoleHistoryToBottom","then","resolved","error","handleCommandError","historyItemParam","updateHistory","updateKnownObjects","updateWorkspaceHistoryItem","closeRemovedItems","openUpdatedItems","isCanceled","history","index","lastIndexOf","focusCommandHistory","message","queueLogMessage","push","debug2","length","openObject","filter","object","isOpenableType","type","forEach","removed","closeObject","itemIndex","disableOldObject","isRemoved","name","oldIndex","get","set","delete","promise","workspaceItem","updatedItem","data","updateItem","warn","force","pane","scrollTop","scrollHeight","offsetHeight","window","requestAnimationFrame","scrollPane","clientHeight","file","value","e","dataTransfer","items","kind","MULTIPLE_FILE_ERROR","isValidDropItem","FILE_TYPE_ERROR","currentTarget","contains","relatedTarget","VariableType","TABLE","isExistingObject","has","addConsoleHistoryMessage","title","group","groups","high","icon","order","clearConsoleHistory","runCode","keys","addCommand","focus","execute","setConsoleText","checkIfChanged","Object","hasChanges","i","key","setting","prevSetting","onSettingsChange","render","statusBarChildren","timeZone","consoleMenuObjects","getObjects","inputMaxHeight","Math","round","isDisconnected","contextActions","getContextActions","disconnected","handleDragOver","INPUT_CLASS_NAME","propTypes","node","shape","func","isRequired","string","CommandHistoryStorage","arrayOf","defaultProps"],"mappings":"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","sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport { ContextActions } from '@deephaven/components';\nimport { vsCheck } from '@deephaven/icons';\nimport classNames from 'classnames';\nimport memoize from 'memoize-one';\nimport throttle from 'lodash.throttle';\nimport dh, { PropTypes as APIPropTypes } from '@deephaven/jsapi-shim';\nimport Log from '@deephaven/log';\nimport { Pending } from '@deephaven/utils';\nimport ConsoleHistory from './console-history/ConsoleHistory';\nimport SHORTCUTS from './ConsoleShortcuts';\nimport LogLevel from './log/LogLevel';\nimport ConsoleInput from './ConsoleInput';\nimport ConsoleUtils from './common/ConsoleUtils';\nimport CsvOverlay from './csv/CsvOverlay';\nimport CsvInputBar from './csv/CsvInputBar';\nimport './Console.scss';\nimport ConsoleStatusBar from './ConsoleStatusBar';\nimport StoragePropTypes from './StoragePropTypes';\n\nconst log = Log.module('Console');\n\nconst DEFAULT_SETTINGS = {\n isAutoLaunchPanelsEnabled: true,\n isPrintStdOutEnabled: true,\n isClosePanelsOnDisconnectEnabled: true,\n};\n\nexport class Console extends PureComponent {\n static LOG_THROTTLE = 500;\n\n /**\n * Check if the provided log level is an error type\n * @param {LogLevel} logLevel The LogLevel being checked\n * @returns {boolean} true if the log level is an error level log\n */\n static isErrorLevel(logLevel) {\n return (\n logLevel === LogLevel.STDERR ||\n logLevel === LogLevel.ERROR ||\n logLevel === LogLevel.FATAL\n );\n }\n\n /**\n * Check if the provided log level is output level\n * @param {LogLevel} logLevel The LogLevel being checked\n * @returns {boolean} true if the log level should be output to the console\n */\n static isOutputLevel(logLevel) {\n // We want all errors to be output, in addition to STDOUT.\n // That way the user is more likely to see them.\n return logLevel === LogLevel.STDOUT || Console.isErrorLevel(logLevel);\n }\n\n constructor(props) {\n super(props);\n\n this.handleCommandResult = this.handleCommandResult.bind(this);\n this.handleCommandStarted = this.handleCommandStarted.bind(this);\n this.handleCommandSubmit = this.handleCommandSubmit.bind(this);\n this.handleClearShortcut = this.handleClearShortcut.bind(this);\n this.handleFocusHistory = this.handleFocusHistory.bind(this);\n this.handleLogMessage = this.handleLogMessage.bind(this);\n this.handleOverflowActions = this.handleOverflowActions.bind(this);\n this.handleScrollPaneScroll = this.handleScrollPaneScroll.bind(this);\n this.handleToggleAutoLaunchPanels = this.handleToggleAutoLaunchPanels.bind(\n this\n );\n this.handleToggleClosePanelsOnDisconnect = this.handleToggleClosePanelsOnDisconnect.bind(\n this\n );\n this.handleTogglePrintStdout = this.handleTogglePrintStdout.bind(this);\n this.processLogMessageQueue = throttle(\n this.processLogMessageQueue.bind(this),\n Console.LOG_THROTTLE\n );\n this.handleUploadCsv = this.handleUploadCsv.bind(this);\n this.handleHideCsv = this.handleHideCsv.bind(this);\n this.handleCsvFileOpened = this.handleCsvFileOpened.bind(this);\n this.handleCsvPaste = this.handleCsvPaste.bind(this);\n this.handleDragEnter = this.handleDragEnter.bind(this);\n this.handleDragLeave = this.handleDragLeave.bind(this);\n this.handleClearDragError = this.handleClearDragError.bind(this);\n this.handleOpenCsvTable = this.handleOpenCsvTable.bind(this);\n this.handleCsvUpdate = this.handleCsvUpdate.bind(this);\n this.handleCsvError = this.handleCsvError.bind(this);\n this.handleCsvInProgress = this.handleCsvInProgress.bind(this);\n\n this.cancelListener = null;\n this.consolePane = React.createRef();\n this.consoleInput = React.createRef();\n this.consoleHistoryScrollPane = React.createRef();\n this.pending = new Pending();\n this.queuedLogMessages = [];\n\n const { settings } = this.props;\n\n this.state = {\n // Need separate histories as console history has stdout/stderr output\n consoleHistory: [],\n\n // Height of the viewport of the console input and history\n consoleHeight: 0,\n\n isScrollDecorationShown: false,\n\n // Location of objects in the console history\n objectHistoryMap: new Map(),\n\n // The object definitions, name/type\n objectMap: new Map(),\n\n showCsvOverlay: false,\n csvFile: null,\n csvPaste: null,\n dragError: null,\n csvUploadInProgress: false,\n\n ...DEFAULT_SETTINGS,\n ...settings,\n };\n }\n\n componentDidMount() {\n this.initConsoleLogging();\n\n const { session } = this.props;\n session.addEventListener(\n dh.IdeSession.EVENT_COMMANDSTARTED,\n this.handleCommandStarted\n );\n\n this.updateDimensions();\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { props, state } = this;\n this.sendSettingsChange(prevState, state);\n\n if (\n props.disconnectedChildren != null &&\n prevProps.disconnectedChildren == null\n ) {\n this.disconnect();\n }\n }\n\n componentWillUnmount() {\n const { session } = this.props;\n\n session.removeEventListener(\n dh.IdeSession.EVENT_COMMANDSTARTED,\n this.handleCommandStarted\n );\n\n this.pending.cancel();\n this.processLogMessageQueue.cancel();\n\n this.deinitConsoleLogging();\n }\n\n initConsoleLogging() {\n const { session } = this.props;\n this.cancelListener = session.onLogMessage(this.handleLogMessage);\n }\n\n deinitConsoleLogging() {\n if (this.cancelListener != null) {\n this.cancelListener();\n this.cancelListener = null;\n }\n }\n\n disconnect() {\n this.setState(({ consoleHistory }) => ({\n // Reset any pending commands with an empty result, disable all tables/widgets\n consoleHistory: consoleHistory.map(item => {\n if (item.result == null) {\n return { ...item, endTime: Date.now(), result: {} };\n }\n const { result } = item;\n if (result.changes) {\n const disabledItems = []\n .concat(result.changes.created)\n .concat(result.changes.updated);\n return { ...item, disabledItems };\n }\n return item;\n }),\n objectHistoryMap: new Map(),\n objectMap: new Map(),\n }));\n }\n\n handleClearShortcut(event) {\n event.preventDefault();\n event.stopPropagation();\n\n this.consoleInput.current.clear();\n }\n\n handleCommandStarted(event) {\n const { code, result } = event.detail;\n const wrappedResult = this.pending.add(result);\n const historyItem = {\n command: code,\n result: null,\n disabledObjects: [],\n startTime: Date.now(),\n endTime: null,\n cancelResult: () => {\n result.cancel();\n },\n wrappedResult,\n };\n\n const { commandHistoryStorage, language, scope } = this.props;\n const workspaceItemPromise = commandHistoryStorage.addItem(\n language,\n scope,\n code,\n {\n command: code,\n startTime: new Date().toJSON(),\n endTime: null,\n result: null,\n }\n );\n workspaceItemPromise.catch(err => {\n log.debug('Error adding workspace item', err);\n });\n\n this.setState(\n state => ({\n consoleHistory: state.consoleHistory.concat(historyItem),\n }),\n () => {\n this.scrollConsoleHistoryToBottom(true);\n }\n );\n\n wrappedResult\n .then(resolved => {\n this.handleCommandResult(resolved, historyItem, workspaceItemPromise);\n })\n .catch(error => {\n this.handleCommandError(error, historyItem, workspaceItemPromise);\n });\n }\n\n handleCommandResult(result, historyItemParam, workspaceItemPromise) {\n const historyItem = historyItemParam;\n historyItem.wrappedResult = null;\n historyItem.cancelResult = null;\n\n if (!result) {\n return;\n }\n\n historyItem.result = result;\n\n this.updateHistory(result, historyItem);\n this.updateKnownObjects(historyItem);\n this.updateWorkspaceHistoryItem(\n { error: result.error },\n workspaceItemPromise\n );\n\n this.closeRemovedItems(result.changes);\n this.openUpdatedItems(result.changes);\n }\n\n handleCommandError(error, historyItemParam, workspaceItemPromise) {\n const historyItem = historyItemParam;\n historyItem.wrappedResult = null;\n historyItem.cancelResult = null;\n\n if (error && error.isCanceled) {\n log.debug('Called handleCommandError on a cancelled promise result');\n return;\n }\n\n this.updateWorkspaceHistoryItem(\n { error: `${error}` },\n workspaceItemPromise\n );\n\n this.setState(state => {\n const history = state.consoleHistory.concat();\n const index = history.lastIndexOf(historyItem);\n historyItem.endTime = Date.now();\n historyItem.result = { error };\n history[index] = { ...historyItem };\n return {\n consoleHistory: history,\n };\n });\n }\n\n handleFocusHistory(event) {\n event.preventDefault();\n event.stopPropagation();\n\n const { focusCommandHistory } = this.props;\n focusCommandHistory();\n }\n\n handleLogMessage(message) {\n const { isPrintStdOutEnabled } = this.state;\n if (!isPrintStdOutEnabled) {\n return;\n }\n\n if (Console.isOutputLevel(message.logLevel)) {\n this.queueLogMessage(message.message, message.logLevel);\n }\n }\n\n queueLogMessage(message, logLevel) {\n const result = {};\n if (Console.isErrorLevel(logLevel)) {\n result.error = message;\n } else {\n result.message = message;\n }\n\n const historyItem = { command: null, result };\n\n this.queuedLogMessages.push(historyItem);\n\n this.processLogMessageQueue();\n }\n\n processLogMessageQueue() {\n this.scrollConsoleHistoryToBottom();\n\n this.setState(state => {\n log.debug2(\n 'processLogMessageQueue',\n this.queuedLogMessages.length,\n ' items'\n );\n\n let { consoleHistory } = state;\n consoleHistory = consoleHistory.concat(this.queuedLogMessages);\n this.queuedLogMessages = [];\n\n return { consoleHistory };\n });\n }\n\n openUpdatedItems(changes) {\n const { isAutoLaunchPanelsEnabled } = this.state;\n if (!changes || !isAutoLaunchPanelsEnabled) {\n return;\n }\n\n const { openObject } = this.props;\n [...changes.created, ...changes.updated]\n .filter(object => ConsoleUtils.isOpenableType(object.type))\n .forEach(object => openObject(object));\n }\n\n closeRemovedItems(changes) {\n if (!changes || !changes.removed || changes.removed.length === 0) {\n return;\n }\n\n const { closeObject } = this.props;\n const { removed } = changes;\n removed\n .filter(object => ConsoleUtils.isOpenableType(object.type))\n .forEach(object => closeObject(object));\n }\n\n updateHistory(result, historyItemParam) {\n const historyItem = historyItemParam;\n if (!result || !result.changes || !historyItem) {\n return;\n }\n\n historyItem.endTime = Date.now();\n\n this.scrollConsoleHistoryToBottom();\n\n // Update history to re-render items as necessary\n this.setState(state => {\n const consoleHistory = state.consoleHistory.concat();\n return { consoleHistory };\n });\n }\n\n updateKnownObjects(historyItem) {\n const { changes } = historyItem.result;\n if (\n !changes ||\n ((!changes.created || changes.created.length === 0) &&\n (!changes.updated || changes.updated.length === 0) &&\n (!changes.removed || changes.removed.length === 0))\n ) {\n log.debug2('updateKnownObjects no changes');\n return;\n }\n\n this.setState(state => {\n const history = state.consoleHistory.concat();\n const itemIndex = history.lastIndexOf(historyItem);\n if (itemIndex < 0) {\n log.error(`historyItem not found in state.consoleHistory`);\n return null;\n }\n\n const objectHistoryMap = new Map(state.objectHistoryMap);\n const objectMap = new Map(state.objectMap);\n\n const disableOldObject = (object, isRemoved = false) => {\n const { name } = object;\n const oldIndex = objectHistoryMap.get(name);\n // oldIndex can be -1 if a object is active but doesn't have a command in consoleHistory\n // this can happen after clearing the console using 'clear' or 'cls' command\n if (oldIndex >= 0) {\n // disable outdated object variable in the old consoleHistory item\n history[oldIndex].disabledObjects = history[\n oldIndex\n ].disabledObjects.concat(name);\n history[oldIndex] = { ...history[oldIndex] };\n }\n objectHistoryMap.set(name, itemIndex);\n if (isRemoved) {\n objectMap.delete(name);\n } else {\n objectMap.set(name, object);\n }\n };\n\n changes.updated.forEach(object => disableOldObject(object));\n changes.removed.forEach(object => disableOldObject(object, true));\n\n // Created objects have to be processed after removed\n // in case the same object name is present in both removed and created\n changes.created.forEach(object => {\n const { name } = object;\n objectHistoryMap.set(name, itemIndex);\n objectMap.set(name, object);\n });\n\n return { objectHistoryMap, objectMap, consoleHistory: history };\n });\n }\n\n /**\n * Updates an existing workspace CommandHistoryItem\n * @param {object} result The result to store with the history item. Could be empty object for success\n * @param {Promise<object>} workspaceItemPromise The workspace data row promise for the workspace item to be updated\n */\n updateWorkspaceHistoryItem(result, workspaceItemPromise) {\n const promise = this.pending.add(workspaceItemPromise);\n\n const endTime = new Date().toJSON();\n promise\n .then(workspaceItem => {\n const updatedItem = {\n ...workspaceItem,\n data: {\n ...workspaceItem.data,\n endTime,\n result,\n },\n };\n\n const { commandHistoryStorage, language } = this.props;\n commandHistoryStorage.updateItem(language, updatedItem).catch(err => {\n log.warn('Error updating command history storage', err);\n });\n })\n .catch(err => {\n log.debug('Error updating workspace history item', err);\n });\n }\n\n scrollConsoleHistoryToBottom(force = false) {\n const pane = this.consoleHistoryScrollPane.current;\n if (!force && pane.scrollTop < pane.scrollHeight - pane.offsetHeight) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n pane.scrollTop = pane.scrollHeight;\n });\n }\n\n handleScrollPaneScroll() {\n const scrollPane = this.consoleHistoryScrollPane.current;\n if (\n scrollPane.scrollTop > 0 &&\n scrollPane.scrollHeight > scrollPane.clientHeight\n ) {\n this.setState({ isScrollDecorationShown: true });\n } else {\n this.setState({ isScrollDecorationShown: false });\n }\n }\n\n handleToggleAutoLaunchPanels() {\n this.setState(state => ({\n isAutoLaunchPanelsEnabled: !state.isAutoLaunchPanelsEnabled,\n }));\n }\n\n handleToggleClosePanelsOnDisconnect() {\n this.setState(state => ({\n isClosePanelsOnDisconnectEnabled: !state.isClosePanelsOnDisconnectEnabled,\n }));\n }\n\n handleTogglePrintStdout() {\n this.setState(state => ({\n isPrintStdOutEnabled: !state.isPrintStdOutEnabled,\n }));\n }\n\n handleUploadCsv() {\n this.setState({\n showCsvOverlay: true,\n dragError: null,\n csvUploadInProgress: false,\n });\n }\n\n handleHideCsv() {\n this.setState({\n showCsvOverlay: false,\n csvFile: null,\n csvPaste: null,\n dragError: null,\n csvUploadInProgress: false,\n });\n }\n\n handleCsvFileOpened(file) {\n this.setState({ csvFile: file, csvPaste: null });\n }\n\n handleCsvPaste(value) {\n this.setState({ csvFile: null, csvPaste: value });\n }\n\n handleDragEnter(e) {\n if (\n !e.dataTransfer ||\n !e.dataTransfer.items ||\n e.dataTransfer.items.length === 0 ||\n e.dataTransfer.items[0].kind === 'string'\n ) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n this.setState({ showCsvOverlay: true });\n\n const { items } = e.dataTransfer;\n if (items.length > 1) {\n this.setState({ dragError: CsvOverlay.MULTIPLE_FILE_ERROR });\n return;\n }\n\n const item = items[0];\n if (CsvOverlay.isValidDropItem(item)) {\n this.setState({ dragError: null });\n } else {\n this.setState({ dragError: CsvOverlay.FILE_TYPE_ERROR });\n }\n }\n\n handleDragLeave(e) {\n // DragLeave gets fired for every child element, so make sure we're actually leaving the drop zone\n if (!e.currentTarget || e.currentTarget.contains(e.relatedTarget)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n this.setState({ showCsvOverlay: false, dragError: null });\n }\n\n handleClearDragError() {\n this.setState({ dragError: null });\n }\n\n handleOpenCsvTable(name) {\n const { openObject, commandHistoryStorage, language, scope } = this.props;\n const { consoleHistory, objectMap } = this.state;\n const object = { name, type: dh.VariableType.TABLE };\n const isExistingObject = objectMap.has(name);\n const historyItem = {\n startTime: Date.now(),\n endTime: Date.now(),\n disabledObjects: [],\n result: {\n changes: {\n created: [],\n updated: [],\n removed: [],\n [isExistingObject ? 'updated' : 'created']: [object],\n },\n },\n };\n const history = consoleHistory.concat(historyItem);\n this.setState({\n consoleHistory: history,\n });\n this.scrollConsoleHistoryToBottom(true);\n this.updateKnownObjects(historyItem);\n openObject({ name, type: dh.VariableType.TABLE });\n commandHistoryStorage.addItem(language, scope, name, {\n command: name,\n startTime: new Date().toJSON(),\n endTime: new Date().toJSON(),\n result: null,\n });\n }\n\n addConsoleHistoryMessage(message, error) {\n const { consoleHistory } = this.state;\n const historyItem = {\n command: '',\n startTime: Date.now(),\n endTime: Date.now(),\n result: { message, error },\n };\n const history = consoleHistory.concat(historyItem);\n this.setState({\n consoleHistory: history,\n });\n }\n\n handleCsvUpdate(message) {\n this.addConsoleHistoryMessage(message);\n }\n\n handleCsvError(error) {\n this.addConsoleHistoryMessage(null, error);\n }\n\n handleCsvInProgress(csvUploadInProgress) {\n this.setState({ csvUploadInProgress });\n }\n\n handleOverflowActions() {\n const {\n isAutoLaunchPanelsEnabled,\n isClosePanelsOnDisconnectEnabled,\n isPrintStdOutEnabled,\n } = this.state;\n const { actions } = this.props;\n return [\n ...actions,\n {\n title: 'Print Stdout',\n action: this.handleTogglePrintStdout,\n group: ContextActions.groups.high,\n icon: isPrintStdOutEnabled ? vsCheck : null,\n order: 10,\n },\n {\n title: 'Auto Launch Panels',\n action: this.handleToggleAutoLaunchPanels,\n group: ContextActions.groups.high,\n icon: isAutoLaunchPanelsEnabled ? vsCheck : null,\n order: 20,\n },\n {\n title: 'Close Panels on Disconnect',\n action: this.handleToggleClosePanelsOnDisconnect,\n group: ContextActions.groups.high,\n icon: isClosePanelsOnDisconnectEnabled ? vsCheck : null,\n order: 30,\n },\n {\n title: 'Upload Table from File',\n action: this.handleUploadCsv,\n group: ContextActions.groups.high + 10,\n order: 40,\n },\n ];\n }\n\n handleCommandSubmit(command) {\n if (command === 'clear' || command === 'cls') {\n this.clearConsoleHistory();\n } else if (command.length > 0) {\n // Result is handled in this.handleCommandStarted\n const { session } = this.props;\n session.runCode(command).catch(error => {\n log.error('There was an error initiating the command', error);\n });\n } else {\n // Empty command, just pump a blank line out to history\n const historyItem = {\n command: ' ',\n result: {},\n startTime: Date.now(),\n endTime: Date.now(),\n };\n\n this.scrollConsoleHistoryToBottom(true);\n\n this.setState(state => ({\n consoleHistory: state.consoleHistory.concat(historyItem),\n }));\n }\n }\n\n clearConsoleHistory() {\n this.pending.cancel();\n\n this.setState(state => {\n // Replace all values with -1 to indicate that table references are still active\n // but don't have corresponding command indexes in consoleHistory\n const objectHistoryMap = new Map(\n [...state.objectHistoryMap.keys()].map(name => [name, -1])\n );\n return { consoleHistory: [], objectHistoryMap };\n });\n }\n\n getObjects = memoize(objectMap => [...objectMap.values()]);\n\n getContextActions = memoize(actions => [\n ...actions,\n {\n action: this.handleClearShortcut,\n shortcut: SHORTCUTS.CONSOLE.CLEAR,\n },\n {\n action: this.handleFocusHistory,\n shortcut: SHORTCUTS.CONSOLE.FOCUS_HISTORY,\n },\n ]);\n\n addCommand(command, focus = true, execute = false) {\n if (!this.consoleInput.current) {\n return;\n }\n this.consoleInput.current.setConsoleText(command, focus, execute);\n\n if (focus) {\n this.scrollConsoleHistoryToBottom(true);\n }\n }\n\n focus() {\n this.consoleInput.current?.focus();\n }\n\n sendSettingsChange(prevState, state, checkIfChanged = true) {\n const keys = Object.keys(DEFAULT_SETTINGS);\n const settings = {};\n let hasChanges = false;\n for (let i = 0; i < keys.length; i += 1) {\n const key = keys[i];\n const { [key]: setting } = state;\n const { [key]: prevSetting } = prevState;\n if (setting !== prevSetting) {\n hasChanges = true;\n }\n settings[key] = setting;\n }\n if (checkIfChanged && !hasChanges) {\n return;\n }\n const { onSettingsChange } = this.props;\n onSettingsChange(settings);\n }\n\n updateDimensions() {\n if (this.consolePane.current) {\n this.setState({\n consoleHeight: this.consolePane.current.clientHeight,\n });\n }\n if (this.consoleInput.current) {\n this.consoleInput.current.updateDimensions();\n }\n }\n\n render() {\n const {\n actions,\n disconnectedChildren,\n language,\n statusBarChildren,\n openObject,\n session,\n scope,\n commandHistoryStorage,\n timeZone,\n } = this.props;\n const {\n consoleHeight,\n consoleHistory,\n isScrollDecorationShown,\n objectMap,\n showCsvOverlay,\n csvFile,\n csvPaste,\n dragError,\n csvUploadInProgress,\n } = this.state;\n const consoleMenuObjects = this.getObjects(objectMap);\n const inputMaxHeight = Math.round(consoleHeight * 0.7);\n const isDisconnected = disconnectedChildren != null;\n const contextActions = this.getContextActions(actions);\n\n return (\n <div\n role=\"presentation\"\n className={classNames('iris-console h-100 w-100', {\n disconnected: isDisconnected,\n })}\n >\n <div className=\"console-pane\" ref={this.consolePane}>\n <ConsoleStatusBar\n session={session}\n overflowActions={this.handleOverflowActions}\n openObject={openObject}\n objects={consoleMenuObjects}\n >\n {statusBarChildren}\n </ConsoleStatusBar>\n <div\n className=\"console-csv-container\"\n onDragOver={CsvOverlay.handleDragOver}\n onDragEnter={this.handleDragEnter}\n onDragLeave={this.handleDragLeave}\n >\n {!isDisconnected && showCsvOverlay && (\n <CsvOverlay\n onFileOpened={this.handleCsvFileOpened}\n onPaste={this.handleCsvPaste}\n clearDragError={this.handleClearDragError}\n dragError={dragError}\n onError={this.handleCsvError}\n uploadInProgress={csvUploadInProgress}\n />\n )}\n <div\n role=\"presentation\"\n className={classNames('scroll-pane no-scroll-x', {\n 'scroll-decoration': isScrollDecorationShown,\n })}\n onScroll={this.handleScrollPaneScroll}\n ref={this.consoleHistoryScrollPane}\n >\n <ConsoleHistory\n items={consoleHistory}\n openObject={openObject}\n language={language}\n />\n {isDisconnected && disconnectedChildren}\n </div>\n </div>\n {!isDisconnected && !showCsvOverlay && (\n <ConsoleInput\n ref={this.consoleInput}\n session={session}\n language={language}\n scope={scope}\n onSubmit={this.handleCommandSubmit}\n maxHeight={inputMaxHeight}\n commandHistoryStorage={commandHistoryStorage}\n />\n )}\n {!isDisconnected && showCsvOverlay && (\n <CsvInputBar\n session={session}\n onOpenTable={this.handleOpenCsvTable}\n onClose={this.handleHideCsv}\n onUpdate={this.handleCsvUpdate}\n onError={this.handleCsvError}\n file={csvFile}\n paste={csvPaste}\n onInProgress={this.handleCsvInProgress}\n timeZone={timeZone}\n />\n )}\n </div>\n <ContextActions\n actions={contextActions}\n ignoreClassNames={[ConsoleInput.INPUT_CLASS_NAME]}\n />\n </div>\n );\n }\n}\n\nConsole.propTypes = {\n statusBarChildren: PropTypes.node,\n settings: PropTypes.shape({}),\n focusCommandHistory: PropTypes.func.isRequired,\n openObject: PropTypes.func.isRequired,\n closeObject: PropTypes.func.isRequired,\n session: APIPropTypes.IdeSession.isRequired,\n language: PropTypes.string.isRequired,\n commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired,\n onSettingsChange: PropTypes.func,\n scope: PropTypes.string,\n actions: PropTypes.arrayOf(PropTypes.shape({})),\n timeZone: PropTypes.string,\n\n // Message shown when the session has disconnected. Setting this value removes the input bar and disables old tables\n disconnectedChildren: PropTypes.node,\n};\n\nConsole.defaultProps = {\n statusBarChildren: null,\n settings: {},\n onSettingsChange: () => {},\n scope: null,\n actions: [],\n disconnectedChildren: null,\n timeZone: 'America/New_York',\n};\n\nexport default Console;\n"],"file":"Console.js"}
@@ -15,12 +15,21 @@ export class ConsoleInput extends React.PureComponent<any, any, any> {
15
15
  timestamp: number;
16
16
  bufferIndex: number;
17
17
  history: any[];
18
- setConsoleText(text: any, focus?: boolean, execute?: boolean): void;
18
+ /**
19
+ * Sets the console text from an external source.
20
+ * Sets commandHistoryIndex to null since the source is not part of the history
21
+ * @param {string} text The text to set in the input
22
+ * @param {boolean} focus If the input should be focused
23
+ * @param {boolean} execute If the input should be executed
24
+ * @returns void
25
+ */
26
+ setConsoleText(text: string, focus?: boolean, execute?: boolean): void;
19
27
  initCommandEditor(): void;
20
28
  destroyCommandEditor(): void;
21
29
  isSuggestionMenuActive(): boolean | null;
22
30
  isSuggestionMenuPopulated(): boolean | null;
23
31
  focus(): void;
32
+ focusStart(): void;
24
33
  focusEnd(): void;
25
34
  clear(): void;
26
35
  layoutEditor(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleInput.d.ts","sourceRoot":"","sources":["../src/ConsoleInput.jsx"],"names":[],"mappings":"AAkBA;;GAEG;AACH;IACE,gCAA0C;IAE1C,wBAqBC;IAsLD,2BAEC;IAxMC,oBAA0B;IAC1B,uCAAyC;IACzC,0DAAyB;IACzB,yBAA+B;IAC/B,2CAAsC;IACtC,2BAA8B;IAC9B,oBAA0B;IAC1B,kBAA2B;IAC3B,oBAAoB;IACpB,eAAiB;IA+BnB,oEAkBC;IAED,0BA+HC;IAED,6BAOC;IAMD,yCAWC;IAED,4CAMC;IAED,cAEC;IAED,iBAQC;IAED,cAIC;IAED,qBAIC;IAED,8BAgBC;IAED,iCA+CC;IAED,uBAWC;IAED,yBA8BC;CA4BF"}
1
+ {"version":3,"file":"ConsoleInput.d.ts","sourceRoot":"","sources":["../src/ConsoleInput.jsx"],"names":[],"mappings":"AAkBA;;GAEG;AACH;IACE,gCAA0C;IAE1C,wBAqBC;IAoMD,2BAEC;IAtNC,oBAA0B;IAC1B,uCAAyC;IACzC,0DAAyB;IACzB,yBAA+B;IAC/B,2CAAsC;IACtC,2BAA8B;IAC9B,oBAA0B;IAC1B,kBAA2B;IAC3B,oBAAoB;IACpB,eAAiB;IA+BnB;;;;;;;OAOG;IACH,qBALW,MAAM,UACN,OAAO,YACP,OAAO,QAsBjB;IAED,0BAoIC;IAED,6BAOC;IAMD,yCAWC;IAED,4CAMC;IAED,cAEC;IAED,mBAOC;IAED,iBAQC;IAED,cAIC;IAED,qBAIC;IAED,8BAeC;IAED,iCA+CC;IAED,uBAWC;IAED,yBA8BC;CA4BF"}
@@ -63,6 +63,15 @@ export class ConsoleInput extends PureComponent {
63
63
 
64
64
  this.destroyCommandEditor();
65
65
  }
66
+ /**
67
+ * Sets the console text from an external source.
68
+ * Sets commandHistoryIndex to null since the source is not part of the history
69
+ * @param {string} text The text to set in the input
70
+ * @param {boolean} focus If the input should be focused
71
+ * @param {boolean} execute If the input should be executed
72
+ * @returns void
73
+ */
74
+
66
75
 
67
76
  setConsoleText(text) {
68
77
  var focus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
@@ -74,6 +83,7 @@ export class ConsoleInput extends PureComponent {
74
83
 
75
84
  log.debug('Command received: ', text);
76
85
  this.commandEditor.setValue(text);
86
+ this.commandHistoryIndex = null;
77
87
 
78
88
  if (focus) {
79
89
  this.focusEnd();
@@ -144,38 +154,39 @@ export class ConsoleInput extends PureComponent {
144
154
  */
145
155
 
146
156
  this.commandEditor.onKeyDown(keyEvent => {
147
- if (!this.isCommandModified || this.commandEditor.getModel().getValueLength() === 0) {
148
- if (keyEvent.keyCode === monaco.KeyCode.UpArrow) {
149
- var {
150
- commandHistoryIndex
151
- } = this;
152
-
153
- if (commandHistoryIndex != null) {
154
- this.loadCommand(commandHistoryIndex + 1);
155
- } else {
156
- this.loadCommand(0);
157
- }
158
-
159
- keyEvent.stopPropagation();
160
- keyEvent.preventDefault();
161
- return;
157
+ var {
158
+ commandEditor,
159
+ commandHistoryIndex
160
+ } = this;
161
+ var {
162
+ lineNumber
163
+ } = commandEditor.getPosition();
164
+ var model = commandEditor.getModel();
165
+
166
+ if (keyEvent.keyCode === monaco.KeyCode.UpArrow && lineNumber === 1) {
167
+ if (commandHistoryIndex != null) {
168
+ this.loadCommand(commandHistoryIndex + 1);
169
+ } else if (model.getValueLength() === 0) {
170
+ this.loadCommand(0);
162
171
  }
163
172
 
164
- if (keyEvent.keyCode === monaco.KeyCode.DownArrow) {
165
- var {
166
- commandHistoryIndex: _commandHistoryIndex
167
- } = this;
168
-
169
- if (_commandHistoryIndex != null && _commandHistoryIndex >= 0) {
170
- this.loadCommand(_commandHistoryIndex - 1);
171
- } else {
172
- this.commandHistoryIndex = null;
173
- }
173
+ this.focusStart();
174
+ keyEvent.stopPropagation();
175
+ keyEvent.preventDefault();
176
+ return;
177
+ }
174
178
 
175
- keyEvent.stopPropagation();
176
- keyEvent.preventDefault();
177
- return;
179
+ if (keyEvent.keyCode === monaco.KeyCode.DownArrow && lineNumber === model.getLineCount()) {
180
+ if (commandHistoryIndex != null && commandHistoryIndex >= 0) {
181
+ this.loadCommand(commandHistoryIndex - 1);
182
+ } else {
183
+ this.commandHistoryIndex = null;
178
184
  }
185
+
186
+ this.focusEnd();
187
+ keyEvent.stopPropagation();
188
+ keyEvent.preventDefault();
189
+ return;
179
190
  }
180
191
 
181
192
  if (!keyEvent.altKey && !keyEvent.shiftKey && !keyEvent.metaKey) {
@@ -241,6 +252,19 @@ export class ConsoleInput extends PureComponent {
241
252
  this.commandEditor.focus();
242
253
  }
243
254
 
255
+ focusStart() {
256
+ var model = this.commandEditor.getModel();
257
+ var column = model.getLineLength(1) + 1; // Length of 1st line
258
+
259
+ var firstCharTop = this.commandEditor.getTopForPosition(1, column);
260
+ this.commandEditor.setPosition({
261
+ lineNumber: 1,
262
+ column
263
+ });
264
+ this.commandEditor.setScrollTop(firstCharTop);
265
+ this.commandEditor.focus();
266
+ }
267
+
244
268
  focusEnd() {
245
269
  var model = this.commandEditor.getModel();
246
270
  var lastLine = model.getLineCount();
@@ -280,7 +304,6 @@ export class ConsoleInput extends PureComponent {
280
304
  }
281
305
 
282
306
  this.isCommandModified = false;
283
- this.focusEnd();
284
307
  }
285
308
 
286
309
  loadMoreHistory() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ConsoleInput.jsx"],"names":["React","PureComponent","PropTypes","classNames","monaco","Log","PromiseUtils","MonacoCompletionProvider","MonacoTheme","MonacoUtils","StoragePropTypes","log","module","LINE_HEIGHT","parseInt","TOP_PADDING","BOTTOM_PADDING","MIN_INPUT_HEIGHT","BUFFER_SIZE","ConsoleInput","constructor","props","handleWindowResize","bind","cancelListener","commandContainer","createRef","commandEditor","commandHistoryIndex","commandSuggestionContainer","isCommandModified","loadingPromise","timestamp","Date","now","bufferIndex","history","state","commandEditorHeight","isFocused","model","componentDidMount","initCommandEditor","window","addEventListener","loadMoreHistory","componentDidUpdate","layoutEditor","componentWillUnmount","removeEventListener","cancel","destroyCommandEditor","setConsoleText","text","focus","execute","debug","setValue","focusEnd","updateDimensions","processCommand","language","session","commandSettings","copyWithSyntaxHighlighting","cursorStyle","fixedOverflowWidgets","folding","fontFamily","glyphMargin","lineHeight","lineDecorationsWidth","lineNumbers","minimap","enabled","renderLineHighlight","scrollBeyondLastLine","scrollbar","arrowSize","horizontal","horizontalScrollbarSize","padding","top","bottom","tabCompletion","value","wordWrap","editor","create","current","setEOL","openDocument","onDidChangeModelContent","onDidFocusEditorText","setState","onDidBlurEditorText","onKeyDown","keyEvent","getModel","getValueLength","keyCode","KeyCode","UpArrow","loadCommand","stopPropagation","preventDefault","DownArrow","altKey","shiftKey","metaKey","Enter","isSuggestionMenuPopulated","Tab","isSuggestionMenuActive","trigger","addCommand","KeyMod","CtrlCmd","KEY_F","removeConflictingKeybindings","registerPasteHandler","closeDocument","dispose","getDomNode","querySelector","classList","contains","childElementCount","lastLine","getLineCount","column","getLineLength","lastCharTop","getTopForPosition","setPosition","lineNumber","setScrollTop","clear","layout","index","length","commandHistoryStorage","scope","makeCancelable","getTable","resolved","close","table","setReversed","setViewport","getViewportData","viewportData","size","items","map","name","reverse","err","isCanceled","debug2","error","command","getValue","trim","push","onSubmit","maxHeight","contentHeight","getContentHeight","Math","max","min","shouldScroll","options","getOptions","overviewRulerLanes","undefined","updateOptions","render","INPUT_CLASS_NAME","height","propTypes","shape","isRequired","string","CommandHistoryStorage","func","number","defaultProps"],"mappings":"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","sourcesContent":["import React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport * as monaco from 'monaco-editor/esm/vs/editor/editor.api.js';\nimport Log from '@deephaven/log';\nimport { PromiseUtils } from '@deephaven/utils';\nimport { MonacoCompletionProvider, MonacoTheme, MonacoUtils } from './monaco';\nimport './ConsoleInput.scss';\nimport StoragePropTypes from './StoragePropTypes';\n\nconst log = Log.module('ConsoleInput');\n\nconst LINE_HEIGHT = parseInt(MonacoTheme['line-height'], 10);\nconst TOP_PADDING = 6;\nconst BOTTOM_PADDING = 6;\nconst MIN_INPUT_HEIGHT = LINE_HEIGHT + TOP_PADDING + BOTTOM_PADDING;\nconst BUFFER_SIZE = 100;\n\n/**\n * Component for input in a console session. Handles loading the recent command history\n */\nexport class ConsoleInput extends PureComponent {\n static INPUT_CLASS_NAME = 'console-input';\n\n constructor(props) {\n super(props);\n\n this.handleWindowResize = this.handleWindowResize.bind(this);\n\n this.cancelListener = null;\n this.commandContainer = React.createRef();\n this.commandEditor = null;\n this.commandHistoryIndex = null;\n this.commandSuggestionContainer = null;\n this.isCommandModified = false;\n this.loadingPromise = null;\n this.timestamp = Date.now();\n this.bufferIndex = 0;\n this.history = [];\n\n this.state = {\n commandEditorHeight: LINE_HEIGHT,\n isFocused: false,\n model: null,\n };\n }\n\n componentDidMount() {\n this.initCommandEditor();\n\n window.addEventListener('resize', this.handleWindowResize);\n\n this.loadMoreHistory();\n }\n\n componentDidUpdate() {\n this.layoutEditor();\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.handleWindowResize);\n\n if (this.loadingPromise != null) {\n this.loadingPromise.cancel();\n }\n\n this.destroyCommandEditor();\n }\n\n setConsoleText(text, focus = true, execute = false) {\n if (!text) {\n return;\n }\n\n log.debug('Command received: ', text);\n\n this.commandEditor.setValue(text);\n\n if (focus) {\n this.focusEnd();\n }\n\n this.updateDimensions();\n\n if (execute) {\n this.processCommand();\n }\n }\n\n initCommandEditor() {\n const { language, session } = this.props;\n const commandSettings = {\n copyWithSyntaxHighlighting: 'false',\n cursorStyle: 'block',\n fixedOverflowWidgets: true,\n folding: false,\n fontFamily: 'Fira Mono',\n glyphMargin: false,\n language,\n lineHeight: LINE_HEIGHT,\n lineDecorationsWidth: 3,\n lineNumbers: 'off',\n minimap: { enabled: false },\n renderLineHighlight: 'none',\n scrollBeyondLastLine: false,\n scrollbar: {\n arrowSize: 0,\n horizontal: 'hidden',\n horizontalScrollbarSize: 0,\n },\n padding: {\n top: TOP_PADDING,\n bottom: BOTTOM_PADDING,\n },\n tabCompletion: 'on',\n value: '',\n wordWrap: 'on',\n };\n\n this.commandEditor = monaco.editor.create(\n this.commandContainer.current,\n commandSettings\n );\n\n MonacoUtils.setEOL(this.commandEditor);\n MonacoUtils.openDocument(this.commandEditor, session);\n\n this.commandEditor.onDidChangeModelContent(() => {\n this.isCommandModified = true;\n this.updateDimensions();\n });\n\n this.commandEditor.onDidFocusEditorText(() => {\n this.setState({ isFocused: true });\n });\n\n this.commandEditor.onDidBlurEditorText(() => {\n this.setState({ isFocused: false });\n });\n\n /**\n * Register for keydown events to capture the `Enter` key.\n * Need to do it this way instead of using `addCommand`, because that would eat the Enter key in all situations, which is not what we want.\n * Can't do it in `onDidChangeModelContent` either, since we want to stop the Enter action from modifying the command.\n */\n this.commandEditor.onKeyDown(keyEvent => {\n if (\n !this.isCommandModified ||\n this.commandEditor.getModel().getValueLength() === 0\n ) {\n if (keyEvent.keyCode === monaco.KeyCode.UpArrow) {\n const { commandHistoryIndex } = this;\n if (commandHistoryIndex != null) {\n this.loadCommand(commandHistoryIndex + 1);\n } else {\n this.loadCommand(0);\n }\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n return;\n }\n if (keyEvent.keyCode === monaco.KeyCode.DownArrow) {\n const { commandHistoryIndex } = this;\n if (commandHistoryIndex != null && commandHistoryIndex >= 0) {\n this.loadCommand(commandHistoryIndex - 1);\n } else {\n this.commandHistoryIndex = null;\n }\n\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n return;\n }\n }\n\n if (!keyEvent.altKey && !keyEvent.shiftKey && !keyEvent.metaKey) {\n if (keyEvent.keyCode === monaco.KeyCode.Enter) {\n if (!this.isSuggestionMenuPopulated()) {\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n\n this.processCommand();\n }\n } else if (keyEvent.keyCode === monaco.KeyCode.Tab) {\n if (!this.isSuggestionMenuActive()) {\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n\n this.commandEditor.trigger(\n 'Tab key trigger suggestions',\n 'editor.action.triggerSuggest',\n {}\n );\n } else if (!this.isSuggestionMenuPopulated()) {\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n }\n }\n }\n });\n\n // Override the Ctrl+F functionality so that the find window doesn't appear\n this.commandEditor.addCommand(\n monaco.KeyMod.CtrlCmd | monaco.KeyCode.KEY_F, // eslint-disable-line no-bitwise\n () => {}\n );\n\n MonacoUtils.removeConflictingKeybindings(this.commandEditor);\n\n MonacoUtils.registerPasteHandler(this.commandEditor);\n\n this.commandEditor.focus();\n\n this.updateDimensions();\n\n this.setState({ model: this.commandEditor.getModel() });\n }\n\n destroyCommandEditor() {\n const { session } = this.props;\n if (this.commandEditor) {\n MonacoUtils.closeDocument(this.commandEditor, session);\n this.commandEditor.dispose();\n this.commandEditor = null;\n }\n }\n\n handleWindowResize() {\n this.updateDimensions();\n }\n\n isSuggestionMenuActive() {\n if (!this.commandSuggestionContainer) {\n this.commandSuggestionContainer = this.commandEditor\n .getDomNode()\n .querySelector('.suggest-widget');\n }\n\n return (\n this.commandSuggestionContainer &&\n this.commandSuggestionContainer.classList.contains('visible')\n );\n }\n\n isSuggestionMenuPopulated() {\n return (\n this.isSuggestionMenuActive() &&\n this.commandSuggestionContainer.querySelector('.monaco-list-rows')\n .childElementCount > 0\n );\n }\n\n focus() {\n this.commandEditor.focus();\n }\n\n focusEnd() {\n const model = this.commandEditor.getModel();\n const lastLine = model.getLineCount();\n const column = model.getLineLength(lastLine) + 1;\n const lastCharTop = this.commandEditor.getTopForPosition(lastLine, column);\n this.commandEditor.setPosition({ lineNumber: lastLine, column });\n this.commandEditor.setScrollTop(lastCharTop);\n this.commandEditor.focus();\n }\n\n clear() {\n this.commandEditor.focus();\n this.commandEditor.getModel().setValue('');\n this.commandHistoryIndex = null;\n }\n\n layoutEditor() {\n if (this.commandEditor) {\n this.commandEditor.layout();\n }\n }\n\n loadCommand(index) {\n if (index < 0) {\n this.commandHistoryIndex = null;\n this.commandEditor.getModel().setValue('');\n } else if (index < this.history.length) {\n this.commandHistoryIndex = index;\n this.commandEditor\n .getModel()\n .setValue(this.history[this.history.length - index - 1]);\n if (index > this.history.length - BUFFER_SIZE) {\n this.loadMoreHistory();\n }\n }\n\n this.isCommandModified = false;\n this.focusEnd();\n }\n\n async loadMoreHistory() {\n try {\n if (this.loadingPromise != null || this.bufferIndex == null) {\n return;\n }\n\n const { commandHistoryStorage, language, scope } = this.props;\n\n this.loadingPromise = PromiseUtils.makeCancelable(\n commandHistoryStorage.getTable(language, scope, this.timestamp),\n resolved => resolved.close()\n );\n\n const table = await this.loadingPromise;\n table.setReversed(true);\n table.setViewport({\n top: this.bufferIndex,\n bottom: this.bufferIndex + BUFFER_SIZE - 1,\n });\n\n this.loadingPromise = PromiseUtils.makeCancelable(\n table.getViewportData(),\n () => table.close()\n );\n const viewportData = await this.loadingPromise;\n this.bufferIndex += BUFFER_SIZE;\n if (this.bufferIndex >= table.size) {\n // We've loaded the full history, no need to load any more\n this.bufferIndex = null;\n }\n this.history = [\n ...viewportData.items.map(({ name }) => name).reverse(),\n ...this.history,\n ];\n\n this.loadingPromise = null;\n\n table.close();\n } catch (err) {\n this.loadingPromise = null;\n if (PromiseUtils.isCanceled(err)) {\n log.debug2('Promise canceled, not loading history');\n return;\n }\n\n log.error('Error fetching history', err);\n }\n }\n\n processCommand() {\n this.isCommandModified = false;\n this.commandHistoryIndex = null;\n\n const command = this.commandEditor.getValue().trim();\n this.history.push(command);\n this.commandEditor.setValue('');\n this.updateDimensions();\n\n const { onSubmit } = this.props;\n onSubmit(command);\n }\n\n updateDimensions() {\n if (!this.commandEditor) {\n return;\n }\n\n const { maxHeight } = this.props;\n const contentHeight = this.commandEditor.getContentHeight();\n const commandEditorHeight = Math.max(\n Math.min(contentHeight, maxHeight),\n MIN_INPUT_HEIGHT\n );\n\n // Only show the overview ruler (markings overlapping sroll bar area) if the scrollbar will show\n const shouldScroll = contentHeight > commandEditorHeight;\n const options = this.commandEditor.getOptions();\n if (shouldScroll) {\n options.overviewRulerLanes = undefined; // Resets to default\n } else {\n options.overviewRulerLanes = 0;\n }\n\n this.setState(\n {\n commandEditorHeight,\n },\n () => {\n this.commandEditor.updateOptions(options);\n this.commandEditor.layout();\n }\n );\n }\n\n render() {\n const { language, session } = this.props;\n const { commandEditorHeight, isFocused, model } = this.state;\n return (\n <div className=\"console-input-wrapper\">\n <div\n className={classNames('console-input-inner-wrapper', {\n focus: isFocused,\n })}\n >\n <div\n className={ConsoleInput.INPUT_CLASS_NAME}\n ref={this.commandContainer}\n style={{ height: commandEditorHeight }}\n />\n {model && (\n <MonacoCompletionProvider\n model={model}\n language={language}\n session={session}\n />\n )}\n </div>\n </div>\n );\n }\n}\n\nConsoleInput.propTypes = {\n session: PropTypes.shape({}).isRequired,\n language: PropTypes.string.isRequired,\n scope: PropTypes.string,\n commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired,\n onSubmit: PropTypes.func.isRequired,\n maxHeight: PropTypes.number,\n};\n\nConsoleInput.defaultProps = {\n maxHeight: LINE_HEIGHT * 10,\n scope: null,\n};\n\nexport default ConsoleInput;\n"],"file":"ConsoleInput.js"}
1
+ {"version":3,"sources":["../src/ConsoleInput.jsx"],"names":["React","PureComponent","PropTypes","classNames","monaco","Log","PromiseUtils","MonacoCompletionProvider","MonacoTheme","MonacoUtils","StoragePropTypes","log","module","LINE_HEIGHT","parseInt","TOP_PADDING","BOTTOM_PADDING","MIN_INPUT_HEIGHT","BUFFER_SIZE","ConsoleInput","constructor","props","handleWindowResize","bind","cancelListener","commandContainer","createRef","commandEditor","commandHistoryIndex","commandSuggestionContainer","isCommandModified","loadingPromise","timestamp","Date","now","bufferIndex","history","state","commandEditorHeight","isFocused","model","componentDidMount","initCommandEditor","window","addEventListener","loadMoreHistory","componentDidUpdate","layoutEditor","componentWillUnmount","removeEventListener","cancel","destroyCommandEditor","setConsoleText","text","focus","execute","debug","setValue","focusEnd","updateDimensions","processCommand","language","session","commandSettings","copyWithSyntaxHighlighting","cursorStyle","fixedOverflowWidgets","folding","fontFamily","glyphMargin","lineHeight","lineDecorationsWidth","lineNumbers","minimap","enabled","renderLineHighlight","scrollBeyondLastLine","scrollbar","arrowSize","horizontal","horizontalScrollbarSize","padding","top","bottom","tabCompletion","value","wordWrap","editor","create","current","setEOL","openDocument","onDidChangeModelContent","onDidFocusEditorText","setState","onDidBlurEditorText","onKeyDown","keyEvent","lineNumber","getPosition","getModel","keyCode","KeyCode","UpArrow","loadCommand","getValueLength","focusStart","stopPropagation","preventDefault","DownArrow","getLineCount","altKey","shiftKey","metaKey","Enter","isSuggestionMenuPopulated","Tab","isSuggestionMenuActive","trigger","addCommand","KeyMod","CtrlCmd","KEY_F","removeConflictingKeybindings","registerPasteHandler","closeDocument","dispose","getDomNode","querySelector","classList","contains","childElementCount","column","getLineLength","firstCharTop","getTopForPosition","setPosition","setScrollTop","lastLine","lastCharTop","clear","layout","index","length","commandHistoryStorage","scope","makeCancelable","getTable","resolved","close","table","setReversed","setViewport","getViewportData","viewportData","size","items","map","name","reverse","err","isCanceled","debug2","error","command","getValue","trim","push","onSubmit","maxHeight","contentHeight","getContentHeight","Math","max","min","shouldScroll","options","getOptions","overviewRulerLanes","undefined","updateOptions","render","INPUT_CLASS_NAME","height","propTypes","shape","isRequired","string","CommandHistoryStorage","func","number","defaultProps"],"mappings":"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","sourcesContent":["import React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport * as monaco from 'monaco-editor/esm/vs/editor/editor.api.js';\nimport Log from '@deephaven/log';\nimport { PromiseUtils } from '@deephaven/utils';\nimport { MonacoCompletionProvider, MonacoTheme, MonacoUtils } from './monaco';\nimport './ConsoleInput.scss';\nimport StoragePropTypes from './StoragePropTypes';\n\nconst log = Log.module('ConsoleInput');\n\nconst LINE_HEIGHT = parseInt(MonacoTheme['line-height'], 10);\nconst TOP_PADDING = 6;\nconst BOTTOM_PADDING = 6;\nconst MIN_INPUT_HEIGHT = LINE_HEIGHT + TOP_PADDING + BOTTOM_PADDING;\nconst BUFFER_SIZE = 100;\n\n/**\n * Component for input in a console session. Handles loading the recent command history\n */\nexport class ConsoleInput extends PureComponent {\n static INPUT_CLASS_NAME = 'console-input';\n\n constructor(props) {\n super(props);\n\n this.handleWindowResize = this.handleWindowResize.bind(this);\n\n this.cancelListener = null;\n this.commandContainer = React.createRef();\n this.commandEditor = null;\n this.commandHistoryIndex = null;\n this.commandSuggestionContainer = null;\n this.isCommandModified = false;\n this.loadingPromise = null;\n this.timestamp = Date.now();\n this.bufferIndex = 0;\n this.history = [];\n\n this.state = {\n commandEditorHeight: LINE_HEIGHT,\n isFocused: false,\n model: null,\n };\n }\n\n componentDidMount() {\n this.initCommandEditor();\n\n window.addEventListener('resize', this.handleWindowResize);\n\n this.loadMoreHistory();\n }\n\n componentDidUpdate() {\n this.layoutEditor();\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.handleWindowResize);\n\n if (this.loadingPromise != null) {\n this.loadingPromise.cancel();\n }\n\n this.destroyCommandEditor();\n }\n\n /**\n * Sets the console text from an external source.\n * Sets commandHistoryIndex to null since the source is not part of the history\n * @param {string} text The text to set in the input\n * @param {boolean} focus If the input should be focused\n * @param {boolean} execute If the input should be executed\n * @returns void\n */\n setConsoleText(text, focus = true, execute = false) {\n if (!text) {\n return;\n }\n\n log.debug('Command received: ', text);\n\n this.commandEditor.setValue(text);\n this.commandHistoryIndex = null;\n\n if (focus) {\n this.focusEnd();\n }\n\n this.updateDimensions();\n\n if (execute) {\n this.processCommand();\n }\n }\n\n initCommandEditor() {\n const { language, session } = this.props;\n const commandSettings = {\n copyWithSyntaxHighlighting: 'false',\n cursorStyle: 'block',\n fixedOverflowWidgets: true,\n folding: false,\n fontFamily: 'Fira Mono',\n glyphMargin: false,\n language,\n lineHeight: LINE_HEIGHT,\n lineDecorationsWidth: 3,\n lineNumbers: 'off',\n minimap: { enabled: false },\n renderLineHighlight: 'none',\n scrollBeyondLastLine: false,\n scrollbar: {\n arrowSize: 0,\n horizontal: 'hidden',\n horizontalScrollbarSize: 0,\n },\n padding: {\n top: TOP_PADDING,\n bottom: BOTTOM_PADDING,\n },\n tabCompletion: 'on',\n value: '',\n wordWrap: 'on',\n };\n\n this.commandEditor = monaco.editor.create(\n this.commandContainer.current,\n commandSettings\n );\n\n MonacoUtils.setEOL(this.commandEditor);\n MonacoUtils.openDocument(this.commandEditor, session);\n\n this.commandEditor.onDidChangeModelContent(() => {\n this.isCommandModified = true;\n this.updateDimensions();\n });\n\n this.commandEditor.onDidFocusEditorText(() => {\n this.setState({ isFocused: true });\n });\n\n this.commandEditor.onDidBlurEditorText(() => {\n this.setState({ isFocused: false });\n });\n\n /**\n * Register for keydown events to capture the `Enter` key.\n * Need to do it this way instead of using `addCommand`, because that would eat the Enter key in all situations, which is not what we want.\n * Can't do it in `onDidChangeModelContent` either, since we want to stop the Enter action from modifying the command.\n */\n this.commandEditor.onKeyDown(keyEvent => {\n const { commandEditor, commandHistoryIndex } = this;\n const { lineNumber } = commandEditor.getPosition();\n const model = commandEditor.getModel();\n if (keyEvent.keyCode === monaco.KeyCode.UpArrow && lineNumber === 1) {\n if (commandHistoryIndex != null) {\n this.loadCommand(commandHistoryIndex + 1);\n } else if (model.getValueLength() === 0) {\n this.loadCommand(0);\n }\n\n this.focusStart();\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n\n return;\n }\n\n if (\n keyEvent.keyCode === monaco.KeyCode.DownArrow &&\n lineNumber === model.getLineCount()\n ) {\n if (commandHistoryIndex != null && commandHistoryIndex >= 0) {\n this.loadCommand(commandHistoryIndex - 1);\n } else {\n this.commandHistoryIndex = null;\n }\n\n this.focusEnd();\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n\n return;\n }\n\n if (!keyEvent.altKey && !keyEvent.shiftKey && !keyEvent.metaKey) {\n if (keyEvent.keyCode === monaco.KeyCode.Enter) {\n if (!this.isSuggestionMenuPopulated()) {\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n\n this.processCommand();\n }\n } else if (keyEvent.keyCode === monaco.KeyCode.Tab) {\n if (!this.isSuggestionMenuActive()) {\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n\n this.commandEditor.trigger(\n 'Tab key trigger suggestions',\n 'editor.action.triggerSuggest',\n {}\n );\n } else if (!this.isSuggestionMenuPopulated()) {\n keyEvent.stopPropagation();\n keyEvent.preventDefault();\n }\n }\n }\n });\n\n // Override the Ctrl+F functionality so that the find window doesn't appear\n this.commandEditor.addCommand(\n monaco.KeyMod.CtrlCmd | monaco.KeyCode.KEY_F, // eslint-disable-line no-bitwise\n () => {}\n );\n\n MonacoUtils.removeConflictingKeybindings(this.commandEditor);\n\n MonacoUtils.registerPasteHandler(this.commandEditor);\n\n this.commandEditor.focus();\n\n this.updateDimensions();\n\n this.setState({ model: this.commandEditor.getModel() });\n }\n\n destroyCommandEditor() {\n const { session } = this.props;\n if (this.commandEditor) {\n MonacoUtils.closeDocument(this.commandEditor, session);\n this.commandEditor.dispose();\n this.commandEditor = null;\n }\n }\n\n handleWindowResize() {\n this.updateDimensions();\n }\n\n isSuggestionMenuActive() {\n if (!this.commandSuggestionContainer) {\n this.commandSuggestionContainer = this.commandEditor\n .getDomNode()\n .querySelector('.suggest-widget');\n }\n\n return (\n this.commandSuggestionContainer &&\n this.commandSuggestionContainer.classList.contains('visible')\n );\n }\n\n isSuggestionMenuPopulated() {\n return (\n this.isSuggestionMenuActive() &&\n this.commandSuggestionContainer.querySelector('.monaco-list-rows')\n .childElementCount > 0\n );\n }\n\n focus() {\n this.commandEditor.focus();\n }\n\n focusStart() {\n const model = this.commandEditor.getModel();\n const column = model.getLineLength(1) + 1; // Length of 1st line\n const firstCharTop = this.commandEditor.getTopForPosition(1, column);\n this.commandEditor.setPosition({ lineNumber: 1, column });\n this.commandEditor.setScrollTop(firstCharTop);\n this.commandEditor.focus();\n }\n\n focusEnd() {\n const model = this.commandEditor.getModel();\n const lastLine = model.getLineCount();\n const column = model.getLineLength(lastLine) + 1;\n const lastCharTop = this.commandEditor.getTopForPosition(lastLine, column);\n this.commandEditor.setPosition({ lineNumber: lastLine, column });\n this.commandEditor.setScrollTop(lastCharTop);\n this.commandEditor.focus();\n }\n\n clear() {\n this.commandEditor.focus();\n this.commandEditor.getModel().setValue('');\n this.commandHistoryIndex = null;\n }\n\n layoutEditor() {\n if (this.commandEditor) {\n this.commandEditor.layout();\n }\n }\n\n loadCommand(index) {\n if (index < 0) {\n this.commandHistoryIndex = null;\n this.commandEditor.getModel().setValue('');\n } else if (index < this.history.length) {\n this.commandHistoryIndex = index;\n this.commandEditor\n .getModel()\n .setValue(this.history[this.history.length - index - 1]);\n if (index > this.history.length - BUFFER_SIZE) {\n this.loadMoreHistory();\n }\n }\n\n this.isCommandModified = false;\n }\n\n async loadMoreHistory() {\n try {\n if (this.loadingPromise != null || this.bufferIndex == null) {\n return;\n }\n\n const { commandHistoryStorage, language, scope } = this.props;\n\n this.loadingPromise = PromiseUtils.makeCancelable(\n commandHistoryStorage.getTable(language, scope, this.timestamp),\n resolved => resolved.close()\n );\n\n const table = await this.loadingPromise;\n table.setReversed(true);\n table.setViewport({\n top: this.bufferIndex,\n bottom: this.bufferIndex + BUFFER_SIZE - 1,\n });\n\n this.loadingPromise = PromiseUtils.makeCancelable(\n table.getViewportData(),\n () => table.close()\n );\n const viewportData = await this.loadingPromise;\n this.bufferIndex += BUFFER_SIZE;\n if (this.bufferIndex >= table.size) {\n // We've loaded the full history, no need to load any more\n this.bufferIndex = null;\n }\n this.history = [\n ...viewportData.items.map(({ name }) => name).reverse(),\n ...this.history,\n ];\n\n this.loadingPromise = null;\n\n table.close();\n } catch (err) {\n this.loadingPromise = null;\n if (PromiseUtils.isCanceled(err)) {\n log.debug2('Promise canceled, not loading history');\n return;\n }\n\n log.error('Error fetching history', err);\n }\n }\n\n processCommand() {\n this.isCommandModified = false;\n this.commandHistoryIndex = null;\n\n const command = this.commandEditor.getValue().trim();\n this.history.push(command);\n this.commandEditor.setValue('');\n this.updateDimensions();\n\n const { onSubmit } = this.props;\n onSubmit(command);\n }\n\n updateDimensions() {\n if (!this.commandEditor) {\n return;\n }\n\n const { maxHeight } = this.props;\n const contentHeight = this.commandEditor.getContentHeight();\n const commandEditorHeight = Math.max(\n Math.min(contentHeight, maxHeight),\n MIN_INPUT_HEIGHT\n );\n\n // Only show the overview ruler (markings overlapping sroll bar area) if the scrollbar will show\n const shouldScroll = contentHeight > commandEditorHeight;\n const options = this.commandEditor.getOptions();\n if (shouldScroll) {\n options.overviewRulerLanes = undefined; // Resets to default\n } else {\n options.overviewRulerLanes = 0;\n }\n\n this.setState(\n {\n commandEditorHeight,\n },\n () => {\n this.commandEditor.updateOptions(options);\n this.commandEditor.layout();\n }\n );\n }\n\n render() {\n const { language, session } = this.props;\n const { commandEditorHeight, isFocused, model } = this.state;\n return (\n <div className=\"console-input-wrapper\">\n <div\n className={classNames('console-input-inner-wrapper', {\n focus: isFocused,\n })}\n >\n <div\n className={ConsoleInput.INPUT_CLASS_NAME}\n ref={this.commandContainer}\n style={{ height: commandEditorHeight }}\n />\n {model && (\n <MonacoCompletionProvider\n model={model}\n language={language}\n session={session}\n />\n )}\n </div>\n </div>\n );\n }\n}\n\nConsoleInput.propTypes = {\n session: PropTypes.shape({}).isRequired,\n language: PropTypes.string.isRequired,\n scope: PropTypes.string,\n commandHistoryStorage: StoragePropTypes.CommandHistoryStorage.isRequired,\n onSubmit: PropTypes.func.isRequired,\n maxHeight: PropTypes.number,\n};\n\nConsoleInput.defaultProps = {\n maxHeight: LINE_HEIGHT * 10,\n scope: null,\n};\n\nexport default ConsoleInput;\n"],"file":"ConsoleInput.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleHistoryResultErrorMessage.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryResultErrorMessage.jsx"],"names":[],"mappings":";AASA;IACE,kCAA8B;IAE9B,wBAmBC;IAED,iCAYC;IAED,kCAIC;IAED,kCAcC;IAED,gCASC;IAED,0BAEC;IAED,yBAEC;IAED,yBAEC;IAnEC,YAAkB;IAClB,YAAkB;IAClB,oBAAuB;CAuH1B"}
1
+ {"version":3,"file":"ConsoleHistoryResultErrorMessage.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryResultErrorMessage.jsx"],"names":[],"mappings":";AASA;IACE,kCAA8B;IAE9B,wBAmBC;IAED,iCAYC;IAED,kCAIC;IAED,kCAcC;IAED,gCASC;IAED,0BAEC;IAED,yBAEC;IAED,yBAEC;IAnEC,YAAkB;IAClB,YAAkB;IAClB,oBAAuB;CAiI1B"}
@@ -100,7 +100,12 @@ class ConsoleHistoryResultErrorMessage extends PureComponent {
100
100
  } = this.props;
101
101
  var lineBreakIndex = messageProp.indexOf('\n');
102
102
  var isMultiline = lineBreakIndex > -1;
103
- var topLineOfMessage = messageProp.slice(0, lineBreakIndex);
103
+ var topLineOfMessage = messageProp;
104
+
105
+ if (isMultiline) {
106
+ topLineOfMessage = messageProp.slice(0, lineBreakIndex);
107
+ }
108
+
104
109
  var remainderOfMessage = messageProp.slice(lineBreakIndex);
105
110
  var arrowBtnClasses = isTriggerHovered ? 'error-btn-link error-btn-link--active' : 'error-btn-link';
106
111
  return /*#__PURE__*/React.createElement("div", {
@@ -108,7 +113,7 @@ class ConsoleHistoryResultErrorMessage extends PureComponent {
108
113
  className: classNames('error-message', {
109
114
  expanded: isExpanded
110
115
  })
111
- }, isMultiline && /*#__PURE__*/React.createElement("div", {
116
+ }, isMultiline && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
112
117
  className: "error-gutter"
113
118
  }, /*#__PURE__*/React.createElement("button", {
114
119
  type: "button",
@@ -130,7 +135,11 @@ class ConsoleHistoryResultErrorMessage extends PureComponent {
130
135
  onMouseEnter: this.handleMouseEnter,
131
136
  onMouseLeave: this.handleMouseLeave,
132
137
  onMouseUp: this.handleMouseUp
133
- }, topLineOfMessage), isExpanded ? remainderOfMessage : ''));
138
+ }, topLineOfMessage), isExpanded ? remainderOfMessage : '')), !isMultiline && /*#__PURE__*/React.createElement("div", {
139
+ className: "error-content"
140
+ }, /*#__PURE__*/React.createElement("div", {
141
+ className: "console-error-text"
142
+ }, topLineOfMessage)));
134
143
  }
135
144
 
136
145
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/console-history/ConsoleHistoryResultErrorMessage.jsx"],"names":["React","PureComponent","classNames","PropTypes","FontAwesomeIcon","vsTriangleRight","vsTriangleDown","ConsoleHistoryResultErrorMessage","constructor","props","handleKeyPress","bind","handleMouseDown","handleMouseMove","handleMouseUp","handleToggleError","handleMouseEnter","handleMouseLeave","mouseX","mouseY","isClicking","state","isExpanded","isTriggerHovered","event","key","stopPropagation","preventDefault","clientX","clientY","Math","abs","mouseDragThreshold","shiftKey","metaKey","altKey","setState","render","message","messageProp","lineBreakIndex","indexOf","isMultiline","topLineOfMessage","slice","remainderOfMessage","arrowBtnClasses","expanded","propTypes","string","defaultProps"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,KAAP,IAAgBC,aAAhB,QAAqC,OAArC;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,eAAT,QAAgC,gCAAhC;AACA,SAASC,eAAT,EAA0BC,cAA1B,QAAgD,kBAAhD;;AAEA,MAAMC,gCAAN,SAA+CN,aAA/C,CAA6D;AAG3DO,EAAAA,WAAW,CAACC,KAAD,EAAQ;AACjB,UAAMA,KAAN;AAEA,SAAKC,cAAL,GAAsB,KAAKA,cAAL,CAAoBC,IAApB,CAAyB,IAAzB,CAAtB;AACA,SAAKC,eAAL,GAAuB,KAAKA,eAAL,CAAqBD,IAArB,CAA0B,IAA1B,CAAvB;AACA,SAAKE,eAAL,GAAuB,KAAKA,eAAL,CAAqBF,IAArB,CAA0B,IAA1B,CAAvB;AACA,SAAKG,aAAL,GAAqB,KAAKA,aAAL,CAAmBH,IAAnB,CAAwB,IAAxB,CAArB;AACA,SAAKI,iBAAL,GAAyB,KAAKA,iBAAL,CAAuBJ,IAAvB,CAA4B,IAA5B,CAAzB;AACA,SAAKK,gBAAL,GAAwB,KAAKA,gBAAL,CAAsBL,IAAtB,CAA2B,IAA3B,CAAxB;AACA,SAAKM,gBAAL,GAAwB,KAAKA,gBAAL,CAAsBN,IAAtB,CAA2B,IAA3B,CAAxB;AAEA,SAAKO,MAAL,GAAc,IAAd;AACA,SAAKC,MAAL,GAAc,IAAd;AACA,SAAKC,UAAL,GAAkB,KAAlB;AAEA,SAAKC,KAAL,GAAa;AACXC,MAAAA,UAAU,EAAE,KADD;AAEXC,MAAAA,gBAAgB,EAAE;AAFP,KAAb;AAID;;AAEDb,EAAAA,cAAc,CAACc,KAAD,EAAQ;AACpB,YAAQA,KAAK,CAACC,GAAd;AACE,WAAK,OAAL;AACA,WAAK,GAAL;AACE;AACA,aAAKV,iBAAL;AACAS,QAAAA,KAAK,CAACE,eAAN;AACAF,QAAAA,KAAK,CAACG,cAAN;AACA;;AACF;AACE;AATJ;AAWD;;AAEDf,EAAAA,eAAe,CAACY,KAAD,EAAQ;AACrB,SAAKN,MAAL,GAAcM,KAAK,CAACI,OAApB;AACA,SAAKT,MAAL,GAAcK,KAAK,CAACK,OAApB;AACA,SAAKT,UAAL,GAAkB,IAAlB;AACD;;AAEDP,EAAAA,eAAe,CAACW,KAAD,EAAQ;AACrB,QAAI,KAAKN,MAAL,IAAe,IAAf,IAAuB,KAAKC,MAAL,IAAe,IAA1C,EAAgD;AAC9C,UACEW,IAAI,CAACC,GAAL,CAASP,KAAK,CAACI,OAAN,GAAgB,KAAKV,MAA9B,KACEX,gCAAgC,CAACyB,kBADnC,IAEAF,IAAI,CAACC,GAAL,CAASP,KAAK,CAACK,OAAN,GAAgB,KAAKV,MAA9B,KACEZ,gCAAgC,CAACyB,kBAJrC,EAKE;AACA,aAAKZ,UAAL,GAAkB,KAAlB;AACD;AACF,KATD,MASO,IAAI,KAAKA,UAAT,EAAqB;AAC1B;AACA,WAAKA,UAAL,GAAkB,KAAlB;AACD;AACF;;AAEDN,EAAAA,aAAa,CAACU,KAAD,EAAQ;AACnB;AACA;AACA,QAAI,KAAKJ,UAAL,IAAmB,CAACI,KAAK,CAACS,QAA1B,IAAsC,CAACT,KAAK,CAACU,OAA7C,IAAwD,CAACV,KAAK,CAACW,MAAnE,EAA2E;AACzE,WAAKpB,iBAAL;AACD;;AACD,SAAKG,MAAL,GAAc,IAAd;AACA,SAAKC,MAAL,GAAc,IAAd;AACA,SAAKC,UAAL,GAAkB,KAAlB;AACD;;AAEDL,EAAAA,iBAAiB,GAAG;AAClB,SAAKqB,QAAL,CAAcf,KAAK,KAAK;AAAEC,MAAAA,UAAU,EAAE,CAACD,KAAK,CAACC;AAArB,KAAL,CAAnB;AACD;;AAEDN,EAAAA,gBAAgB,GAAG;AACjB,SAAKoB,QAAL,CAAc;AAAEb,MAAAA,gBAAgB,EAAE;AAApB,KAAd;AACD;;AAEDN,EAAAA,gBAAgB,GAAG;AACjB,SAAKmB,QAAL,CAAc;AAAEb,MAAAA,gBAAgB,EAAE;AAApB,KAAd;AACD;;AAEDc,EAAAA,MAAM,GAAG;AACP,QAAM;AAAEf,MAAAA,UAAF;AAAcC,MAAAA;AAAd,QAAmC,KAAKF,KAA9C;AACA,QAAM;AAAEiB,MAAAA,OAAO,EAAEC;AAAX,QAA2B,KAAK9B,KAAtC;AACA,QAAM+B,cAAc,GAAGD,WAAW,CAACE,OAAZ,CAAoB,IAApB,CAAvB;AACA,QAAMC,WAAW,GAAGF,cAAc,GAAG,CAAC,CAAtC;AACA,QAAMG,gBAAgB,GAAGJ,WAAW,CAACK,KAAZ,CAAkB,CAAlB,EAAqBJ,cAArB,CAAzB;AACA,QAAMK,kBAAkB,GAAGN,WAAW,CAACK,KAAZ,CAAkBJ,cAAlB,CAA3B;AACA,QAAMM,eAAe,GAAGvB,gBAAgB,GACpC,uCADoC,GAEpC,gBAFJ;AAIA,wBACE;AACE,MAAA,GAAG,EAAC,OADN;AAEE,MAAA,SAAS,EAAErB,UAAU,CAAC,eAAD,EAAkB;AACrC6C,QAAAA,QAAQ,EAAEzB;AAD2B,OAAlB;AAFvB,OAMGoB,WAAW,iBACV;AAAK,MAAA,SAAS,EAAC;AAAf,oBACE;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,OAAO,EAAE,KAAK3B,iBAFhB;AAGE,MAAA,SAAS,EAAE+B,eAHb;AAIE,MAAA,QAAQ,EAAC;AAJX,oBAME,oBAAC,eAAD;AACE,MAAA,IAAI,EAAExB,UAAU,GAAGhB,cAAH,GAAoBD,eADtC;AAEE,MAAA,SAAS,EAAC;AAFZ,MANF,CADF,CAPJ,eAqBE;AAAK,MAAA,SAAS,EAAC;AAAf,oBACE;AACE,MAAA,SAAS,EAAC,4BADZ;AAEE,MAAA,IAAI,EAAC,QAFP;AAGE,MAAA,QAAQ,EAAC,GAHX;AAIE,MAAA,UAAU,EAAE,KAAKK,cAJnB;AAKE,MAAA,WAAW,EAAE,KAAKE,eALpB;AAME,MAAA,WAAW,EAAE,KAAKC,eANpB;AAOE,MAAA,YAAY,EAAE,KAAKG,gBAPrB;AAQE,MAAA,YAAY,EAAE,KAAKC,gBARrB;AASE,MAAA,SAAS,EAAE,KAAKH;AATlB,OAWG6B,gBAXH,CADF,EAcGrB,UAAU,GAAGuB,kBAAH,GAAwB,EAdrC,CArBF,CADF;AAwCD;;AAtI0D;;gBAAvDtC,gC,wBACwB,C;;AAwI9BA,gCAAgC,CAACyC,SAAjC,GAA6C;AAC3CV,EAAAA,OAAO,EAAEnC,SAAS,CAAC8C;AADwB,CAA7C;AAIA1C,gCAAgC,CAAC2C,YAAjC,GAAgD;AAC9CZ,EAAAA,OAAO,EAAE;AADqC,CAAhD;AAIA,eAAe/B,gCAAf","sourcesContent":["/**\n * Error message that can be expanded\n */\nimport React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { vsTriangleRight, vsTriangleDown } from '@deephaven/icons';\n\nclass ConsoleHistoryResultErrorMessage extends PureComponent {\n static mouseDragThreshold = 5;\n\n constructor(props) {\n super(props);\n\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleMouseDown = this.handleMouseDown.bind(this);\n this.handleMouseMove = this.handleMouseMove.bind(this);\n this.handleMouseUp = this.handleMouseUp.bind(this);\n this.handleToggleError = this.handleToggleError.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n\n this.mouseX = null;\n this.mouseY = null;\n this.isClicking = false;\n\n this.state = {\n isExpanded: false,\n isTriggerHovered: false,\n };\n }\n\n handleKeyPress(event) {\n switch (event.key) {\n case 'Enter':\n case ' ':\n // Toggle the error open/closed\n this.handleToggleError();\n event.stopPropagation();\n event.preventDefault();\n break;\n default:\n break;\n }\n }\n\n handleMouseDown(event) {\n this.mouseX = event.clientX;\n this.mouseY = event.clientY;\n this.isClicking = true;\n }\n\n handleMouseMove(event) {\n if (this.mouseX != null && this.mouseY != null) {\n if (\n Math.abs(event.clientX - this.mouseX) >=\n ConsoleHistoryResultErrorMessage.mouseDragThreshold ||\n Math.abs(event.clientY - this.mouseY) >=\n ConsoleHistoryResultErrorMessage.mouseDragThreshold\n ) {\n this.isClicking = false;\n }\n } else if (this.isClicking) {\n // Rare case - could happen if you mouse down, switch window focus, release the mouse, then come back, mouse down outside of the error, drag into the error, then release the mouse\n this.isClicking = false;\n }\n }\n\n handleMouseUp(event) {\n // We don't want to expand/collapse the error if user is holding shift or an alt key\n // They may be trying to adjust their selection\n if (this.isClicking && !event.shiftKey && !event.metaKey && !event.altKey) {\n this.handleToggleError();\n }\n this.mouseX = null;\n this.mouseY = null;\n this.isClicking = false;\n }\n\n handleToggleError() {\n this.setState(state => ({ isExpanded: !state.isExpanded }));\n }\n\n handleMouseEnter() {\n this.setState({ isTriggerHovered: true });\n }\n\n handleMouseLeave() {\n this.setState({ isTriggerHovered: false });\n }\n\n render() {\n const { isExpanded, isTriggerHovered } = this.state;\n const { message: messageProp } = this.props;\n const lineBreakIndex = messageProp.indexOf('\\n');\n const isMultiline = lineBreakIndex > -1;\n const topLineOfMessage = messageProp.slice(0, lineBreakIndex);\n const remainderOfMessage = messageProp.slice(lineBreakIndex);\n const arrowBtnClasses = isTriggerHovered\n ? 'error-btn-link error-btn-link--active'\n : 'error-btn-link';\n\n return (\n <div\n key=\"error\"\n className={classNames('error-message', {\n expanded: isExpanded,\n })}\n >\n {isMultiline && (\n <div className=\"error-gutter\">\n <button\n type=\"button\"\n onClick={this.handleToggleError}\n className={arrowBtnClasses}\n tabIndex=\"-1\"\n >\n <FontAwesomeIcon\n icon={isExpanded ? vsTriangleDown : vsTriangleRight}\n transform=\"left-3\"\n />\n </button>\n </div>\n )}\n <div className=\"error-content\">\n <div\n className=\"console-error-text-trigger\"\n role=\"button\"\n tabIndex=\"0\"\n onKeyPress={this.handleKeyPress}\n onMouseDown={this.handleMouseDown}\n onMouseMove={this.handleMouseMove}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n onMouseUp={this.handleMouseUp}\n >\n {topLineOfMessage}\n </div>\n {isExpanded ? remainderOfMessage : ''}\n </div>\n </div>\n );\n }\n}\n\nConsoleHistoryResultErrorMessage.propTypes = {\n message: PropTypes.string,\n};\n\nConsoleHistoryResultErrorMessage.defaultProps = {\n message: '',\n};\n\nexport default ConsoleHistoryResultErrorMessage;\n"],"file":"ConsoleHistoryResultErrorMessage.js"}
1
+ {"version":3,"sources":["../../src/console-history/ConsoleHistoryResultErrorMessage.jsx"],"names":["React","PureComponent","classNames","PropTypes","FontAwesomeIcon","vsTriangleRight","vsTriangleDown","ConsoleHistoryResultErrorMessage","constructor","props","handleKeyPress","bind","handleMouseDown","handleMouseMove","handleMouseUp","handleToggleError","handleMouseEnter","handleMouseLeave","mouseX","mouseY","isClicking","state","isExpanded","isTriggerHovered","event","key","stopPropagation","preventDefault","clientX","clientY","Math","abs","mouseDragThreshold","shiftKey","metaKey","altKey","setState","render","message","messageProp","lineBreakIndex","indexOf","isMultiline","topLineOfMessage","slice","remainderOfMessage","arrowBtnClasses","expanded","propTypes","string","defaultProps"],"mappings":"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","sourcesContent":["/**\n * Error message that can be expanded\n */\nimport React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { vsTriangleRight, vsTriangleDown } from '@deephaven/icons';\n\nclass ConsoleHistoryResultErrorMessage extends PureComponent {\n static mouseDragThreshold = 5;\n\n constructor(props) {\n super(props);\n\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleMouseDown = this.handleMouseDown.bind(this);\n this.handleMouseMove = this.handleMouseMove.bind(this);\n this.handleMouseUp = this.handleMouseUp.bind(this);\n this.handleToggleError = this.handleToggleError.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n\n this.mouseX = null;\n this.mouseY = null;\n this.isClicking = false;\n\n this.state = {\n isExpanded: false,\n isTriggerHovered: false,\n };\n }\n\n handleKeyPress(event) {\n switch (event.key) {\n case 'Enter':\n case ' ':\n // Toggle the error open/closed\n this.handleToggleError();\n event.stopPropagation();\n event.preventDefault();\n break;\n default:\n break;\n }\n }\n\n handleMouseDown(event) {\n this.mouseX = event.clientX;\n this.mouseY = event.clientY;\n this.isClicking = true;\n }\n\n handleMouseMove(event) {\n if (this.mouseX != null && this.mouseY != null) {\n if (\n Math.abs(event.clientX - this.mouseX) >=\n ConsoleHistoryResultErrorMessage.mouseDragThreshold ||\n Math.abs(event.clientY - this.mouseY) >=\n ConsoleHistoryResultErrorMessage.mouseDragThreshold\n ) {\n this.isClicking = false;\n }\n } else if (this.isClicking) {\n // Rare case - could happen if you mouse down, switch window focus, release the mouse, then come back, mouse down outside of the error, drag into the error, then release the mouse\n this.isClicking = false;\n }\n }\n\n handleMouseUp(event) {\n // We don't want to expand/collapse the error if user is holding shift or an alt key\n // They may be trying to adjust their selection\n if (this.isClicking && !event.shiftKey && !event.metaKey && !event.altKey) {\n this.handleToggleError();\n }\n this.mouseX = null;\n this.mouseY = null;\n this.isClicking = false;\n }\n\n handleToggleError() {\n this.setState(state => ({ isExpanded: !state.isExpanded }));\n }\n\n handleMouseEnter() {\n this.setState({ isTriggerHovered: true });\n }\n\n handleMouseLeave() {\n this.setState({ isTriggerHovered: false });\n }\n\n render() {\n const { isExpanded, isTriggerHovered } = this.state;\n const { message: messageProp } = this.props;\n const lineBreakIndex = messageProp.indexOf('\\n');\n const isMultiline = lineBreakIndex > -1;\n let topLineOfMessage = messageProp;\n if (isMultiline) {\n topLineOfMessage = messageProp.slice(0, lineBreakIndex);\n }\n const remainderOfMessage = messageProp.slice(lineBreakIndex);\n const arrowBtnClasses = isTriggerHovered\n ? 'error-btn-link error-btn-link--active'\n : 'error-btn-link';\n\n return (\n <div\n key=\"error\"\n className={classNames('error-message', {\n expanded: isExpanded,\n })}\n >\n {isMultiline && (\n <>\n <div className=\"error-gutter\">\n <button\n type=\"button\"\n onClick={this.handleToggleError}\n className={arrowBtnClasses}\n tabIndex=\"-1\"\n >\n <FontAwesomeIcon\n icon={isExpanded ? vsTriangleDown : vsTriangleRight}\n transform=\"left-3\"\n />\n </button>\n </div>\n <div className=\"error-content\">\n <div\n className=\"console-error-text-trigger\"\n role=\"button\"\n tabIndex=\"0\"\n onKeyPress={this.handleKeyPress}\n onMouseDown={this.handleMouseDown}\n onMouseMove={this.handleMouseMove}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n onMouseUp={this.handleMouseUp}\n >\n {topLineOfMessage}\n </div>\n {isExpanded ? remainderOfMessage : ''}\n </div>\n </>\n )}\n {!isMultiline && (\n <div className=\"error-content\">\n <div className=\"console-error-text\">{topLineOfMessage}</div>\n </div>\n )}\n </div>\n );\n }\n}\n\nConsoleHistoryResultErrorMessage.propTypes = {\n message: PropTypes.string,\n};\n\nConsoleHistoryResultErrorMessage.defaultProps = {\n message: '',\n};\n\nexport default ConsoleHistoryResultErrorMessage;\n"],"file":"ConsoleHistoryResultErrorMessage.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"CsvOverlay.d.ts","sourceRoot":"","sources":["../../src/csv/CsvOverlay.jsx"],"names":[],"mappings":";AAmBA;;GAEG;AACH;IACE,mCAAsD;IAEtD,+BAAmD;IAEnD,uCAMC;IAED,wCAUC;IAED,oCAGC;IAED,8FAWC;IAED,wBAiBC;IAWD,yBAGC;IAED,8BAIC;IAED,yBAsBC;IAED,8BASC;IAWD,wBAeC;IAED,mCAIC;IA9FC,+BAAiC;IACjC,8BAAgC;IA+DlC,4BAOC;IAyBD;;;;;;QAWC;CAkFF"}
1
+ {"version":3,"file":"CsvOverlay.d.ts","sourceRoot":"","sources":["../../src/csv/CsvOverlay.jsx"],"names":[],"mappings":";AAmBA;;GAEG;AACH;IACE,mCAA2D;IAE3D,+BAAmD;IAEnD,uCAMC;IAED,wCAUC;IAED,oCAGC;IAED,8FAWC;IAED,wBAiBC;IAWD,yBAGC;IAED,8BAIC;IAED,yBAsBC;IAED,8BASC;IAWD,wBAeC;IAED,mCAIC;IA9FC,+BAAiC;IACjC,8BAAgC;IA+DlC,4BAOC;IAyBD;;;;;;QAWC;CAkFF"}
@@ -238,7 +238,7 @@ class CsvOverlay extends Component {
238
238
 
239
239
  }
240
240
 
241
- _defineProperty(CsvOverlay, "MULTIPLE_FILE_ERROR", 'Please select one file');
241
+ _defineProperty(CsvOverlay, "MULTIPLE_FILE_ERROR", 'Please select only one file');
242
242
 
243
243
  _defineProperty(CsvOverlay, "FILE_TYPE_ERROR", 'Filetype not supported.');
244
244
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/csv/CsvOverlay.jsx"],"names":["React","Component","PropTypes","FontAwesomeIcon","ContextActions","GLOBAL_SHORTCUTS","dhFileCsv","dhFileDownload","dhFileSpreadsheet","vsClippy","vsFileZip","vsTrash","vsWarning","PASTED_VALUES","INVALID_MIME_TYPES","CsvOverlay","isValidDropItem","item","kind","find","invalid","test","type","isValidExtension","name","endsWith","handleDragOver","e","preventDefault","stopPropagation","getIcon","fileName","constructor","props","handleSelectFile","bind","handleFiles","handleDrop","unstageFile","handleMenuPaste","handlePasteEvent","fileElem","createRef","divElem","state","selectedFileName","dropError","componentDidMount","current","addEventListener","focus","componentWillUnmount","removeEventListener","value","click","event","handleFile","target","files","clearDragError","dragError","dataTransfer","items","file","getAsFile","setState","FILE_TYPE_ERROR","onFileOpened","onPaste","onError","uploadInProgress","navigator","clipboard","readText","then","clipText","catch","makeContextMenuItems","title","icon","action","shortcut","PASTE","disabled","render","error","contextActions","display","propTypes","func","isRequired","string","bool","defaultProps"],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { ContextActions, GLOBAL_SHORTCUTS } from '@deephaven/components';\nimport {\n dhFileCsv,\n dhFileDownload,\n dhFileSpreadsheet,\n vsClippy,\n vsFileZip,\n vsTrash,\n vsWarning,\n} from '@deephaven/icons';\nimport './CsvOverlay.scss';\n\nconst PASTED_VALUES = 'pasted values';\n\nconst INVALID_MIME_TYPES = [/^audio.*/, /^font.*/, /^image.*/, /^video.*/];\n\n/**\n * Overlay that is displayed when uploading a CSV file.\n */\nclass CsvOverlay extends Component {\n static MULTIPLE_FILE_ERROR = 'Please select one file';\n\n static FILE_TYPE_ERROR = 'Filetype not supported.';\n\n static isValidDropItem(item) {\n return (\n item &&\n item.kind === 'file' &&\n !INVALID_MIME_TYPES.find(invalid => invalid.test(item.type))\n );\n }\n\n static isValidExtension(name) {\n return (\n name.endsWith('.csv') ||\n name.endsWith('.zip') ||\n name.endsWith('.tsv') ||\n name.endsWith('.tab') ||\n name.endsWith('.psv') ||\n name.endsWith('.dsv') ||\n name.endsWith('.txt')\n );\n }\n\n static handleDragOver(e) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n static getIcon(fileName) {\n if (fileName === PASTED_VALUES) {\n return vsClippy;\n }\n if (fileName.endsWith('.csv')) {\n return dhFileCsv;\n }\n if (fileName.endsWith('.zip')) {\n return vsFileZip;\n }\n return dhFileSpreadsheet;\n }\n\n constructor(props) {\n super(props);\n\n this.handleSelectFile = this.handleSelectFile.bind(this);\n this.handleFiles = this.handleFiles.bind(this);\n this.handleDrop = this.handleDrop.bind(this);\n this.unstageFile = this.unstageFile.bind(this);\n this.handleMenuPaste = this.handleMenuPaste.bind(this);\n this.handlePasteEvent = this.handlePasteEvent.bind(this);\n\n this.fileElem = React.createRef();\n this.divElem = React.createRef();\n\n this.state = {\n selectedFileName: '',\n dropError: null,\n };\n }\n\n componentDidMount() {\n this.divElem.current.addEventListener('paste', this.handlePasteEvent);\n this.divElem.current.focus();\n }\n\n componentWillUnmount() {\n this.divElem.current.removeEventListener('paste', this.handlePasteEvent);\n }\n\n handleSelectFile() {\n this.fileElem.current.value = null;\n this.fileElem.current.click();\n }\n\n handleFiles(event) {\n event.stopPropagation();\n event.preventDefault();\n this.handleFile(event.target.files[0]);\n }\n\n handleDrop(e) {\n const { clearDragError, dragError } = this.props;\n e.preventDefault();\n e.stopPropagation();\n\n if (dragError) {\n clearDragError();\n return;\n }\n\n if (!e.dataTransfer || !e.dataTransfer.items) {\n return;\n }\n\n const file = e.dataTransfer.items[0].getAsFile();\n if (CsvOverlay.isValidExtension(file.name)) {\n this.handleFile(file);\n } else {\n this.setState({\n dropError: CsvOverlay.FILE_TYPE_ERROR,\n });\n }\n }\n\n unstageFile(event) {\n const { onFileOpened } = this.props;\n event.stopPropagation();\n event.preventDefault();\n onFileOpened(null);\n this.setState({\n selectedFileName: '',\n dropError: null,\n });\n }\n\n handleFile(file) {\n const { onFileOpened } = this.props;\n onFileOpened(file);\n this.setState({\n selectedFileName: file.name,\n dropError: null,\n });\n }\n\n handleMenuPaste() {\n const { onPaste, onError, uploadInProgress } = this.props;\n if (uploadInProgress) {\n return;\n }\n navigator.clipboard\n .readText()\n .then(clipText => {\n onPaste(clipText);\n this.setState({\n selectedFileName: PASTED_VALUES,\n dropError: null,\n });\n })\n .catch(e => onError(e));\n }\n\n handlePasteEvent(event) {\n event.stopPropagation();\n event.preventDefault();\n this.handleMenuPaste();\n }\n\n makeContextMenuItems() {\n const { uploadInProgress } = this.props;\n return [\n {\n title: 'Paste',\n icon: vsClippy,\n action: this.handleMenuPaste,\n shortcut: GLOBAL_SHORTCUTS.PASTE,\n disabled: uploadInProgress,\n },\n ];\n }\n\n render() {\n const { dragError, uploadInProgress } = this.props;\n const { selectedFileName, dropError } = this.state;\n const error = dragError || dropError;\n const contextActions = this.makeContextMenuItems();\n return (\n <div\n ref={this.divElem}\n className=\"csv-overlay fill-parent-absolute\"\n onDragOver={CsvOverlay.handleDragOver}\n onDrop={this.handleDrop}\n tabIndex=\"-1\"\n >\n <ContextActions actions={contextActions} />\n <input\n ref={this.fileElem}\n type=\"file\"\n id=\"fileElem\"\n accept=\".csv, .tsv, .tab, .zip, .psv, .dsv, .txt\"\n style={{ display: 'none' }}\n onChange={this.handleFiles}\n />\n {!selectedFileName && !error && (\n <div className=\"message-content\">\n <div className=\"message-icon\">\n <FontAwesomeIcon icon={dhFileDownload} />\n </div>\n <label>Drop file (or paste values) here to import</label>\n <div className=\"message-small\">\n <label>or</label>\n </div>\n <button\n type=\"button\"\n className=\"btn btn-primary\"\n onClick={this.handleSelectFile}\n >\n Select File...\n </button>\n </div>\n )}\n {selectedFileName && !error && (\n <div className=\"selected-content\">\n <div className=\"selected-icon\">\n <FontAwesomeIcon icon={CsvOverlay.getIcon(selectedFileName)} />\n </div>\n <div className=\"selected-text\">\n <label>Selected File</label>\n <label className=\"selected-name\">\n {selectedFileName}\n {!uploadInProgress && (\n <button\n type=\"button\"\n className=\"btn btn-link btn-link-icon ml-2\"\n onClick={this.unstageFile}\n >\n <FontAwesomeIcon icon={vsTrash} />\n </button>\n )}\n </label>\n </div>\n </div>\n )}\n {error && (\n <div className=\"message-content\">\n <div className=\"message-icon\">\n <FontAwesomeIcon icon={vsWarning} />\n </div>\n <label>{error}</label>\n {error === CsvOverlay.FILE_TYPE_ERROR && (\n <div className=\"message-small\">\n <label>\n Please select a .csv, .tsv, .tab, .psv, .dsv, .txt or .zip\n </label>\n </div>\n )}\n </div>\n )}\n </div>\n );\n }\n}\n\nCsvOverlay.propTypes = {\n onFileOpened: PropTypes.func.isRequired,\n onPaste: PropTypes.func.isRequired,\n clearDragError: PropTypes.func.isRequired,\n dragError: PropTypes.string,\n onError: PropTypes.func.isRequired,\n uploadInProgress: PropTypes.bool.isRequired,\n};\n\nCsvOverlay.defaultProps = {\n dragError: null,\n};\n\nexport default CsvOverlay;\n"],"file":"CsvOverlay.js"}
1
+ {"version":3,"sources":["../../src/csv/CsvOverlay.jsx"],"names":["React","Component","PropTypes","FontAwesomeIcon","ContextActions","GLOBAL_SHORTCUTS","dhFileCsv","dhFileDownload","dhFileSpreadsheet","vsClippy","vsFileZip","vsTrash","vsWarning","PASTED_VALUES","INVALID_MIME_TYPES","CsvOverlay","isValidDropItem","item","kind","find","invalid","test","type","isValidExtension","name","endsWith","handleDragOver","e","preventDefault","stopPropagation","getIcon","fileName","constructor","props","handleSelectFile","bind","handleFiles","handleDrop","unstageFile","handleMenuPaste","handlePasteEvent","fileElem","createRef","divElem","state","selectedFileName","dropError","componentDidMount","current","addEventListener","focus","componentWillUnmount","removeEventListener","value","click","event","handleFile","target","files","clearDragError","dragError","dataTransfer","items","file","getAsFile","setState","FILE_TYPE_ERROR","onFileOpened","onPaste","onError","uploadInProgress","navigator","clipboard","readText","then","clipText","catch","makeContextMenuItems","title","icon","action","shortcut","PASTE","disabled","render","error","contextActions","display","propTypes","func","isRequired","string","bool","defaultProps"],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { ContextActions, GLOBAL_SHORTCUTS } from '@deephaven/components';\nimport {\n dhFileCsv,\n dhFileDownload,\n dhFileSpreadsheet,\n vsClippy,\n vsFileZip,\n vsTrash,\n vsWarning,\n} from '@deephaven/icons';\nimport './CsvOverlay.scss';\n\nconst PASTED_VALUES = 'pasted values';\n\nconst INVALID_MIME_TYPES = [/^audio.*/, /^font.*/, /^image.*/, /^video.*/];\n\n/**\n * Overlay that is displayed when uploading a CSV file.\n */\nclass CsvOverlay extends Component {\n static MULTIPLE_FILE_ERROR = 'Please select only one file';\n\n static FILE_TYPE_ERROR = 'Filetype not supported.';\n\n static isValidDropItem(item) {\n return (\n item &&\n item.kind === 'file' &&\n !INVALID_MIME_TYPES.find(invalid => invalid.test(item.type))\n );\n }\n\n static isValidExtension(name) {\n return (\n name.endsWith('.csv') ||\n name.endsWith('.zip') ||\n name.endsWith('.tsv') ||\n name.endsWith('.tab') ||\n name.endsWith('.psv') ||\n name.endsWith('.dsv') ||\n name.endsWith('.txt')\n );\n }\n\n static handleDragOver(e) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n static getIcon(fileName) {\n if (fileName === PASTED_VALUES) {\n return vsClippy;\n }\n if (fileName.endsWith('.csv')) {\n return dhFileCsv;\n }\n if (fileName.endsWith('.zip')) {\n return vsFileZip;\n }\n return dhFileSpreadsheet;\n }\n\n constructor(props) {\n super(props);\n\n this.handleSelectFile = this.handleSelectFile.bind(this);\n this.handleFiles = this.handleFiles.bind(this);\n this.handleDrop = this.handleDrop.bind(this);\n this.unstageFile = this.unstageFile.bind(this);\n this.handleMenuPaste = this.handleMenuPaste.bind(this);\n this.handlePasteEvent = this.handlePasteEvent.bind(this);\n\n this.fileElem = React.createRef();\n this.divElem = React.createRef();\n\n this.state = {\n selectedFileName: '',\n dropError: null,\n };\n }\n\n componentDidMount() {\n this.divElem.current.addEventListener('paste', this.handlePasteEvent);\n this.divElem.current.focus();\n }\n\n componentWillUnmount() {\n this.divElem.current.removeEventListener('paste', this.handlePasteEvent);\n }\n\n handleSelectFile() {\n this.fileElem.current.value = null;\n this.fileElem.current.click();\n }\n\n handleFiles(event) {\n event.stopPropagation();\n event.preventDefault();\n this.handleFile(event.target.files[0]);\n }\n\n handleDrop(e) {\n const { clearDragError, dragError } = this.props;\n e.preventDefault();\n e.stopPropagation();\n\n if (dragError) {\n clearDragError();\n return;\n }\n\n if (!e.dataTransfer || !e.dataTransfer.items) {\n return;\n }\n\n const file = e.dataTransfer.items[0].getAsFile();\n if (CsvOverlay.isValidExtension(file.name)) {\n this.handleFile(file);\n } else {\n this.setState({\n dropError: CsvOverlay.FILE_TYPE_ERROR,\n });\n }\n }\n\n unstageFile(event) {\n const { onFileOpened } = this.props;\n event.stopPropagation();\n event.preventDefault();\n onFileOpened(null);\n this.setState({\n selectedFileName: '',\n dropError: null,\n });\n }\n\n handleFile(file) {\n const { onFileOpened } = this.props;\n onFileOpened(file);\n this.setState({\n selectedFileName: file.name,\n dropError: null,\n });\n }\n\n handleMenuPaste() {\n const { onPaste, onError, uploadInProgress } = this.props;\n if (uploadInProgress) {\n return;\n }\n navigator.clipboard\n .readText()\n .then(clipText => {\n onPaste(clipText);\n this.setState({\n selectedFileName: PASTED_VALUES,\n dropError: null,\n });\n })\n .catch(e => onError(e));\n }\n\n handlePasteEvent(event) {\n event.stopPropagation();\n event.preventDefault();\n this.handleMenuPaste();\n }\n\n makeContextMenuItems() {\n const { uploadInProgress } = this.props;\n return [\n {\n title: 'Paste',\n icon: vsClippy,\n action: this.handleMenuPaste,\n shortcut: GLOBAL_SHORTCUTS.PASTE,\n disabled: uploadInProgress,\n },\n ];\n }\n\n render() {\n const { dragError, uploadInProgress } = this.props;\n const { selectedFileName, dropError } = this.state;\n const error = dragError || dropError;\n const contextActions = this.makeContextMenuItems();\n return (\n <div\n ref={this.divElem}\n className=\"csv-overlay fill-parent-absolute\"\n onDragOver={CsvOverlay.handleDragOver}\n onDrop={this.handleDrop}\n tabIndex=\"-1\"\n >\n <ContextActions actions={contextActions} />\n <input\n ref={this.fileElem}\n type=\"file\"\n id=\"fileElem\"\n accept=\".csv, .tsv, .tab, .zip, .psv, .dsv, .txt\"\n style={{ display: 'none' }}\n onChange={this.handleFiles}\n />\n {!selectedFileName && !error && (\n <div className=\"message-content\">\n <div className=\"message-icon\">\n <FontAwesomeIcon icon={dhFileDownload} />\n </div>\n <label>Drop file (or paste values) here to import</label>\n <div className=\"message-small\">\n <label>or</label>\n </div>\n <button\n type=\"button\"\n className=\"btn btn-primary\"\n onClick={this.handleSelectFile}\n >\n Select File...\n </button>\n </div>\n )}\n {selectedFileName && !error && (\n <div className=\"selected-content\">\n <div className=\"selected-icon\">\n <FontAwesomeIcon icon={CsvOverlay.getIcon(selectedFileName)} />\n </div>\n <div className=\"selected-text\">\n <label>Selected File</label>\n <label className=\"selected-name\">\n {selectedFileName}\n {!uploadInProgress && (\n <button\n type=\"button\"\n className=\"btn btn-link btn-link-icon ml-2\"\n onClick={this.unstageFile}\n >\n <FontAwesomeIcon icon={vsTrash} />\n </button>\n )}\n </label>\n </div>\n </div>\n )}\n {error && (\n <div className=\"message-content\">\n <div className=\"message-icon\">\n <FontAwesomeIcon icon={vsWarning} />\n </div>\n <label>{error}</label>\n {error === CsvOverlay.FILE_TYPE_ERROR && (\n <div className=\"message-small\">\n <label>\n Please select a .csv, .tsv, .tab, .psv, .dsv, .txt or .zip\n </label>\n </div>\n )}\n </div>\n )}\n </div>\n );\n }\n}\n\nCsvOverlay.propTypes = {\n onFileOpened: PropTypes.func.isRequired,\n onPaste: PropTypes.func.isRequired,\n clearDragError: PropTypes.func.isRequired,\n dragError: PropTypes.string,\n onError: PropTypes.func.isRequired,\n uploadInProgress: PropTypes.bool.isRequired,\n};\n\nCsvOverlay.defaultProps = {\n dragError: null,\n};\n\nexport default CsvOverlay;\n"],"file":"CsvOverlay.js"}
@@ -1 +1 @@
1
- {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/scheduler/tracing.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@types/react/jsx-runtime.d.ts","../../../node_modules/@types/jquery/JQueryStatic.d.ts","../../../node_modules/@types/jquery/JQuery.d.ts","../../../node_modules/@types/jquery/misc.d.ts","../../../node_modules/@types/jquery/legacy.d.ts","../../../node_modules/@types/sizzle/index.d.ts","../../../node_modules/@types/jquery/index.d.ts","../../utils/dist/CanceledPromiseError.d.ts","../../utils/dist/ColorUtils.d.ts","../../utils/dist/DbNameValidator.d.ts","../../utils/dist/DOMUtils.d.ts","../../utils/dist/PromiseUtils.d.ts","../../utils/dist/Pending.d.ts","../../utils/dist/RangeUtils.d.ts","../../utils/dist/TextUtils.d.ts","../../utils/dist/TimeoutError.d.ts","../../utils/dist/TimeUtils.d.ts","../../utils/dist/InvalidMetadataError.d.ts","../../utils/dist/ValidationError.d.ts","../../../node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../node_modules/jest-diff/build/types.d.ts","../../../node_modules/jest-diff/build/diffLines.d.ts","../../../node_modules/jest-diff/build/printDiffs.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/pretty-format/build/types.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../utils/dist/TestUtils.d.ts","../../utils/dist/index.d.ts","../../../node_modules/@types/memoizee/index.d.ts","../../../node_modules/popper.js/index.d.ts","../../components/dist/popper/Popper.d.ts","../../components/dist/popper/Tooltip.d.ts","../../components/dist/popper/index.d.ts","../../components/dist/AutoCompleteInput.d.ts","../../components/dist/AutoResizeTextarea.d.ts","../../components/dist/BasicModal.d.ts","../../../node_modules/@fortawesome/fontawesome-common-types/index.d.ts","../../../node_modules/@fortawesome/fontawesome-svg-core/index.d.ts","../../components/dist/Button.d.ts","../../components/dist/ButtonGroup.d.ts","../../components/dist/ButtonOld.d.ts","../../components/dist/CardFlip.d.ts","../../icons/dist/index.d.ts","../../components/dist/shortcuts/Shortcut.d.ts","../../components/dist/shortcuts/GlobalShortcuts.d.ts","../../components/dist/shortcuts/ShortcutRegistry.d.ts","../../components/dist/shortcuts/index.d.ts","../../components/dist/context-actions/ContextActionUtils.d.ts","../../components/dist/context-actions/ContextActions.d.ts","../../components/dist/context-actions/ContextMenuItem.d.ts","../../components/dist/context-actions/ContextMenu.d.ts","../../components/dist/context-actions/ContextMenuRoot.d.ts","../../components/dist/context-actions/index.d.ts","../../components/dist/Collapse.d.ts","../../components/dist/Checkbox.d.ts","../../components/dist/SearchInput.d.ts","../../components/dist/ComboBox.d.ts","../../components/dist/CustomTimeSelect.d.ts","../../components/dist/DebouncedSearchInput.d.ts","../../components/dist/DeephavenSpinner.d.ts","../../../node_modules/@types/react-beautiful-dnd/index.d.ts","../../../node_modules/@types/react-window/index.d.ts","../../../node_modules/@types/react-virtualized-auto-sizer/index.d.ts","../../components/dist/ItemList.d.ts","../../components/dist/DraggableItemList.d.ts","../../components/dist/DragUtils.d.ts","../../components/dist/HierarchicalCheckboxMenu.d.ts","../../components/dist/ItemListItem.d.ts","../../components/dist/LoadingOverlay.d.ts","../../components/dist/LoadingSpinner.d.ts","../../components/dist/menu-actions/Menu.d.ts","../../components/dist/menu-actions/DropdownMenu.d.ts","../../components/dist/menu-actions/index.d.ts","../../components/dist/MaskedInput.d.ts","../../components/dist/navigation/MenuItem.d.ts","../../components/dist/navigation/Menu.d.ts","../../components/dist/navigation/Page.d.ts","../../components/dist/navigation/Stack.d.ts","../../components/dist/navigation/index.d.ts","../../components/dist/Option.d.ts","../../components/dist/RadioGroup.d.ts","../../components/dist/RadioItem.d.ts","../../components/dist/Select.d.ts","../../components/dist/SelectValueList.d.ts","../../components/dist/SocketedButton.d.ts","../../components/dist/ThemeExport.d.ts","../../components/dist/TimeInput.d.ts","../../components/dist/TimeSlider.d.ts","../../components/dist/ToastNotification.d.ts","../../components/dist/UISwitch.d.ts","../../components/dist/index.d.ts","../src/ConsoleShortcuts.ts","../../storage/dist/Storage.d.ts","../../storage/dist/StorageTableViewportUpdater.d.ts","../../storage/dist/StorageUtils.d.ts","../../storage/dist/index.d.ts","../src/command-history/CommandHistoryStorage.ts","../src/common/ConsoleConstants.ts","../../../node_modules/@fortawesome/react-fontawesome/index.d.ts","../../jsapi-shim/dist/dh.d.ts","../../jsapi-shim/dist/PropTypes.d.ts","../../jsapi-shim/dist/index.d.ts","../src/common/ObjectIcon.tsx","../../../node_modules/monaco-editor/esm/vs/editor/editor.api.d.ts","../src/common/Code.jsx","../src/common/ConsoleUtils.js","../src/common/index.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/lodash.throttle/index.d.ts","../../log/dist/Logger.d.ts","../../log/dist/DefaultLogger.d.ts","../../log/dist/Log.d.ts","../../log/dist/LogProxy.d.ts","../../log/dist/LogHistory.d.ts","../../log/dist/LoggerLevel.d.ts","../../log/dist/index.d.ts","../src/command-history/CommandHistoryViewportUpdater.tsx","../src/ConsolePropTypes.js","../src/StoragePropTypes.js","../../../node_modules/classnames/index.d.ts","../../../node_modules/memoize-one/dist/memoize-one.d.ts","../src/console-history/ConsoleHistoryItemResult.jsx","../src/console-history/ConsoleHistoryResultInProgress.jsx","../src/console-history/ConsoleHistoryResultErrorMessage.jsx","../src/console-history/ConsoleHistoryItem.jsx","../src/console-history/ConsoleHistory.jsx","../src/log/LogLevel.js","../src/monaco/lang/python.js","../src/monaco/lang/groovy.js","../src/monaco/lang/scala.js","../src/monaco/lang/db.js","../src/monaco/lang/log.js","../src/monaco/MonacoUtils.js","../src/monaco/MonacoCompletionProvider.jsx","../src/monaco/index.js","../src/ConsoleInput.jsx","../src/csv/CsvOverlay.jsx","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/ts3.6/base.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/base.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/jszip/index.d.ts","../src/csv/NewTableColumnTypes.js","../src/csv/CsvTypeParser.js","../src/csv/CsvParser.js","../src/csv/CsvFormats.js","../src/csv/CsvInputBar.jsx","../src/ConsoleMenu.jsx","../src/ConsoleStatusBar.jsx","../src/Console.jsx","../src/notebook/Editor.jsx","../src/notebook/ScriptEditor.jsx","../src/notebook/ScriptEditorUtils.js","../../../node_modules/@types/lodash.debounce/index.d.ts","../src/command-history/CommandHistoryItemTooltip.jsx","../src/command-history/CommandHistoryItem.jsx","../src/command-history/CommandHistoryActions.jsx","../src/command-history/CommandHistory.jsx","../src/command-history/index.jsx","../src/console-history/index.jsx","../src/log/LogLevelMenuItem.jsx","../src/log/LogView.jsx","../src/index.js","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/bootstrap/index.d.ts","../../../node_modules/@types/cheerio/index.d.ts","../../../node_modules/@types/color-name/index.d.ts","../../../node_modules/@types/color-convert/conversions.d.ts","../../../node_modules/@types/color-convert/route.d.ts","../../../node_modules/@types/color-convert/index.d.ts","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../../node_modules/@types/deep-equal/index.d.ts","../../../node_modules/@types/enzyme/index.d.ts","../../../node_modules/@types/enzyme-adapter-react-16/index.d.ts","../../../node_modules/@types/eslint/helpers.d.ts","../../../node_modules/@types/eslint/lib/rules/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/eslint/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/unist/index.d.ts","../../../node_modules/@types/hast/index.d.ts","../../../node_modules/@types/hoist-non-react-statics/index.d.ts","../../../node_modules/@types/html-minifier-terser/index.d.ts","../../../node_modules/@types/is-function/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/lodash.clamp/index.d.ts","../../../node_modules/@types/lodash.flatten/index.d.ts","../../../node_modules/@types/mdast/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/node-fetch/node_modules/form-data/index.d.ts","../../../node_modules/@types/node-fetch/externals.d.ts","../../../node_modules/@types/node-fetch/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/npmlog/index.d.ts","../../../node_modules/@types/overlayscrollbars/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/@types/parse5/index.d.ts","../../../node_modules/@types/pouchdb-find/index.d.ts","../../../node_modules/@types/pouchdb-core/index.d.ts","../../../node_modules/@types/pouchdb-adapter-http/index.d.ts","../../../node_modules/@types/pouchdb-adapter-idb/index.d.ts","../../../node_modules/@types/pouchdb-adapter-websql/index.d.ts","../../../node_modules/@types/pouchdb-mapreduce/index.d.ts","../../../node_modules/@types/pouchdb-replication/index.d.ts","../../../node_modules/@types/pouchdb-browser/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/pretty-hrtime/index.d.ts","../../../node_modules/@types/q/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/react-dom/index.d.ts","../../../node_modules/redux/index.d.ts","../../../node_modules/@types/react-redux/index.d.ts","../../../node_modules/@types/react-syntax-highlighter/index.d.ts","../../../node_modules/@types/react-test-renderer/index.d.ts","../../../node_modules/@types/react-transition-group/Transition.d.ts","../../../node_modules/@types/react-transition-group/CSSTransition.d.ts","../../../node_modules/@types/react-transition-group/TransitionGroup.d.ts","../../../node_modules/@types/react-transition-group/SwitchTransition.d.ts","../../../node_modules/@types/react-transition-group/config.d.ts","../../../node_modules/@types/react-transition-group/index.d.ts","../../../node_modules/@types/resolve/index.d.ts","../../../node_modules/@types/scheduler/index.d.ts","../../../node_modules/@types/shortid/index.d.ts","../../../node_modules/@types/source-list-map/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/source-map/source-map.d.ts","../../../node_modules/postcss/lib/postcss.d.ts","../../../node_modules/@types/stylelint/index.d.ts","../../../node_modules/@types/tapable/index.d.ts","../../../node_modules/@types/uglify-js/index.d.ts","../../../node_modules/anymatch/index.d.ts","../../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../../node_modules/@types/webpack-sources/lib/Source.d.ts","../../../node_modules/@types/webpack-sources/lib/CompatSource.d.ts","../../../node_modules/@types/webpack-sources/lib/ConcatSource.d.ts","../../../node_modules/@types/webpack-sources/lib/OriginalSource.d.ts","../../../node_modules/@types/webpack-sources/lib/PrefixSource.d.ts","../../../node_modules/@types/webpack-sources/lib/RawSource.d.ts","../../../node_modules/@types/webpack-sources/lib/ReplaceSource.d.ts","../../../node_modules/@types/webpack-sources/lib/SizeOnlySource.d.ts","../../../node_modules/@types/webpack-sources/lib/SourceMapSource.d.ts","../../../node_modules/@types/webpack-sources/lib/index.d.ts","../../../node_modules/@types/webpack-sources/lib/CachedSource.d.ts","../../../node_modules/@types/webpack-sources/index.d.ts","../../../node_modules/@types/webpack/index.d.ts","../../../node_modules/@types/webpack-env/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"ac3a8c4040e183ce38da69d23b96939112457d1936198e6542672b7963cf0fce","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940","eb75e89d63b3b72dd9ca8b0cac801cecae5be352307c004adeaa60bc9d6df51f","2cc028cd0bdb35b1b5eb723d84666a255933fffbea607f72cbd0c7c7b4bee144",{"version":"1dad4fe1561d99dfd6709127608b99a76e5c2643626c800434f99c48038567ee","affectsGlobalScope":true},{"version":"a8fe23ae87c3e9d2877032cafeb290f2ebe0c51e216d175a0408b10915ebe9f0","affectsGlobalScope":true},{"version":"cce43d02223f8049864f8568bed322c39424013275cd3bcc3f51492d8b546cb3","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"8dff1b4c2df638fcd976cbb0e636f23ab5968e836cd45084cc31d47d1ab19c49","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"8f4c9f651c8294a2eb1cbd12581fe25bfb901ab1d474bb93cd38c7e2f4be7a30","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"93544ca2f26a48716c1b6c5091842cad63129daac422dfa4bc52460465f22bb1","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"60761e6ea886034af0f294f025a7199360ce4e2c8ba4ec6408bc049cf9b89799","affectsGlobalScope":true},{"version":"7435b75fdf3509622e79622dbe5091cf4b09688410ee2034e4fc17d0c99d0862","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"9f1817f7c3f02f6d56e0f403b927e90bb133f371dcebc36fa7d6d208ef6899da","affectsGlobalScope":true},{"version":"cd6efb9467a8b6338ece2e2855e37765700f2cd061ca54b01b33878cf5c7677e","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e","affectsGlobalScope":true},{"version":"ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6","affectsGlobalScope":true},"4ee363f83d7be2202f34fcd84c44da71bf3a9329fee8a05f976f75083a52ea94","f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"38943ef508ccbc71691ff6c14f30e0468a85a4ec22c9e0a4eea2c9ba8ca19352","affectsGlobalScope":true},"af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9",{"version":"a139b5f761e657cda95b3a6f938ce7102878b5b39edbb743894d39388d83cc7b","affectsGlobalScope":true},{"version":"513dfbfe04b52253f35007545694c2a99c313fdb6b836bdb8cbc9c7fb0ff6166","affectsGlobalScope":true},{"version":"a4832e26b82049fc2774c96ca6e1c17b2c204246570a62fdbe7e8ee8af2cd4d4","affectsGlobalScope":true},{"version":"6f1f78e8c2a5c7cd2c38aa9cc5da26d9c039f2bbfa753f2a0a54ce41c4dff8d0","affectsGlobalScope":true},"ec89427601297d439c961528832a75017d9356bec2ee42c1d16f2274590d9330","d0b93cf4a086095121a40a8a878f81c72783fc819ad055225a36ef829c6f41d4","50eac108cc307665c28801910626932956adcf8dc0dc70ab1939dd0e8aeb6f28","1a68643644167daaea17e2f89d04edd9d1fec7bf881e4fa3ad4cd43d92447ce1","7255a17d460541e2ccca5f485bb58b6fa64bc750047c5e57ce7abf17cc3f4f3d","571ffdcb677c42d897370ca1a616798670d7715361dc099f713f03c067e8c988","1f8d8388b2da5785ef9c169db1493969f8c9e1ea50e1db1194a21708403f2e10","a299dcd51a18896ffb9f1249507d387a996b8d733cd1ee7c0a5fb46b86f88524","2c3d2bc00ffd291568c89e1ea920cf5c41b6b6a532cdc0bcb74e917eaf133f3b","e7857f874cbc2bd969097918305d8552156d0147d9a03a87e42f8cbd6e1729b5","0de99ed9f5d0a953aabe8de8999b0ce24944f36374d36c06abf9dca6e5567368","a756f87e33897fd95428da3288ed3061182b8678e38b48000c53e5499c7f8863","f68abba533f1aee022d1800ab3ad273e163909b97c171c8eea15fa04e3d02280","9b526aac58282b2b9c1afd1969828336c77a81ca52916214ae63a70e256a8032","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","561eca7a381b96d6ccac6e4061e6d2ae53f5bc44203f3fd9f5b26864c32ae6e9","62ea38627e3ebab429f7616812a9394d327c2bc271003dfba985de9b4137369f","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"516a426e3960379f310107635b8f3a7e8c307c6c665080b128039d9299ec4087","affectsGlobalScope":true},"f544c98b782364169412ac2bc65143918f9f1dd49880920302693f2eb3bd3570","e5d5ee66044d79018aadeabf3dc39d758d9c45c49c004b3a57b76a974fb346d7","34ef06f1d5e0ae95afb816e93c40f04f93641c11ad06e54b6fbe9335c3238c03","1873db8f2261ba4f248bde3e5bb4c79b1fdc990315054e9604fce8f41ddd1587","7b909a00d8978266be4783a28766711d28d1c76449db5dbac28c26c4e908e1ab","4f1715bd6319db37f4c1c99c8842ff9c9d357ffb5a73020c329463a30909bbaf","ff60413f9896b702b4e653cf85f6f8246e11482ad4d6859997ca9edafed9cc46","b682e653b63b5aa118887e61cd81a78fc45d4ef8fe95d8c6449742919a5638a4","bbc1e78124f19ccf50225278b700436ce64cf92b0c6b1ca15567431a28371b31","1f93a4dd7096a18c6cf99085327b467de58f3cd7f0f941a8bdc1d7ec4284b301","98edf9bdfe6c7794349a88d720af3035fd4a68480895e72beaf8ff8e758a33f5","a822e999d9c1814859735e919c2bd2a11f7d3c8633ab6656215dc386684e07bc","ae1b8ffb16f8dd0a4008ccf2534e6503af171a3c4ea17da590faeb0c41f85f3e","1cfe76cc39491c2f2059192c7486297154f0a517fe9b3bd9d223824a5f803573","acc42289b4e6d8d789b9f3a4c48fe601c23ab6fe747080f1dc99787b8e79d256","9de7ce840e4a5b95405a164d166d010eaa99fd631817ea3b0310ec4e22b98d0e","8a2395a5c1a95d05c205b791f012b120b4d02eb50a806e24d69da02c51de9d6f","65c0791093075bbb931a7e218aa03c954f634702ecff2ae0b6efc92b71cc6db9","21e1b303e758ec4a1e9f703e1e1be8c47c8dd74034c2369fd01e9bfe1da98acc","cd303995edbd7439d6232f1e7596b38f5d1cd65ec0837e009ceba781aca110f5","33cb56e3cc910266a13ca59281b907459131acc58739c2bd68dab246f8ed01fa","c6d0cb5ad7498c2c977a5340f17bcfcc151609118789bbace2336079f2d9f84a","383d4add4d2b7a9b03bb0b7b9b2f62b70c269e79616b629946b51283c14a92cf","4162810d701126188368ff58526c81e7c4c6a9a32ed26c4b763a5d3535b46748","513b7862a230ed479fb045bbe87d37f9ee91cc20fee15dd4b16c3cc74aa3e514","8ff77a6b5f0b74c681e132e9510f5576a29150ee53b1324efed33d3d7fabd736","7bdf81223f6cfae94a48484223d4b59b8ef609cf680f0fa90941d8e093ff27b0","9fbe4ad05e10d7957283cc4a3aa909e70717c62d51bdc19516ffd75a60c2eaf4","8b423ba6b1f81c80542db7deba332d1938db29f6f127fe169287903abe67fe8d","9c0a4431746ad0073026505df7a5724b4126c0e1f41b90e87c1efa6b8335711d","0ec7fb37f4303f3cac4f35819f0d5d75b3b4692990da2590c63c656729447dfe","ed6fbb1cb7cb8dc283f9d5efa68c17d5a9fc5e32fc481e2be7eccd5077d3afc0","e96e84cd79dac3fb1369911a8e9888308deda9542dcfb19d1540414e9ab64465","616ed304b4a011a969ba5d2aa5fca781d66b3f0c8f3d099e19c7158da36fa07b","163be962fa11ca0e3bc9afd1188701e16f5db0d84f904be3a5327c04bf14c1dc","f51c2abd01bb55990a6c5758c8ec34ea7802952c40c30c3941c75eea15539842","23255560340f60336ff79daf50b3b6432ec0f32f7dd19638d3a2406826a15d49","cbf272d1fef2ab8cca386524e1aa8e06caa3509eb6e724e0008ca613c05e7fdb","f8f0a01a9ec6571933c3b63b6d877d74729fbdab0be2fa87c18999b11357cf32","fca853da554cd762704a9bf8ad62cbf6d55d81c9d69b07b3c8a552367f4976d6","6b8d8f68865166b7f761ccdea7a66018f0452ddb7c6f75bf5cbaa31e6163af8f","d9cef8e439c407166963fa89b317d3ea7367e204035611447c9765786026f03b","ca888feddeab794c01fb1bec893ff46186801a30bca77c8a1aa28477f7e6f839","bb96345dfdd3b0695f5281537427e38fa85cb79449e3c6b59151bb7d753ef6f7","2561fd263d1d42554d0de99369f6fb352981090e2de0966b2e257891abf9977a","b01b764b8b1ce1376a70aa1bde2914093b36810a2a3e60cc9fd8f2741490a8f9","e6047a9c095d3b4a903aea90b49815be068476f1719e76766b7792ee21310f3a","cdcd29d866abedc194a88851871320fbb9c29e1c4868583b1f91ee2786acb818","c02107d9cae7a0c7541e8af0f4e0497650b1494e561e409e7cb90a12bc65ed09","5e62225c303695c8511d3831bca37c141931fd584e3aa1c8c5dd4b57cf01b1d0","1c3dd3b5d7eee485481470a75bd1829ee8e0388e87c8c8f8a8418f702592876a","53336c5924937a0a2a4ba1a515499f48092e4dd853386e77276c0a4ff8a1fa50","5a42225ecf779e7d42b44ff91cd7f842421835f28287e295e42622aa51aeeb6f","baab49106b672deb07dcd3e31333e4a2539970b5db9ee896aedbdba3ca2400e5","2af60becd168c31f931c6839f2cb126713bb0f556780b07959afd04b8311eade","826ea84343ee53323b8b67320019287543a15c1f25ad163552f4adfba79368da","7181cfa9a4f05524e825271e409017810c1bc6a4b9544e05be5bd59ee76ca691","ad9afc2c60e7303174e70e6cbfc1eca63d8a770855d5fa3ddaac8769b9d93658","7e6b3017bd81ce434b27ae46cee6bdc5850db0e0d75e6a1d45c6c23e17eb135b","9304c3176830887fd3bbb010a9542ce549397b63624a51c8e7f2be032adb76e9","6c9c7d76d7f525a366d5ebdb0b42bccfab0ec7bdc0bce4db5b97573ee0970d3e","c7322d04c36fbd32b9035e07416c30073fbadf0bb6c1e855425f12c1df645aee","198c3858acc28364fb1cdf1d99d140fd9e0f3732c57ccd40a1752bcf8f318a0b","0625a691c77d71dd48fc83a59bff500dfbf3bdc1fe9c079b64bcaf078b5158d4",{"version":"662564f7dc409b31c6ad48129d12a1320c132b45bcafd3a990d0f8f545ce0529","affectsGlobalScope":true},"6d153a06d1684f5fc923f90d6cc557eb8150bc7fa32d20aa3e9557cc5cfa049e","5de15b99127d39fe510552b41db9135f81b2c6da52a604b1154c71f080963b32","fbb8558d76ab3469b95e00950f0f427fd59b34fe02485b23b1c99f732c8bcd52","822a794a93be1d9241f102cbc143c30692bbbf190f6e609c6b216560411d291b","b43cf409ba840bb753ff71edcd5ee4398f646e87c63f1d799cbb436b7c049870","a73f9d2e3d090085f4ee6c336e703ad3b33743aeda7ce83a566eb348ca732666","cc41d21f0022bd1b3e2f9c4a207b49cdb315410368a3b1fec7a1b52f7ec3fb0d","786093bf8792839268d761ac49e641a7bba644744f9d6b5cd9d7e1f0b40efb13","0637ca78a74b77392effa72e38c2951cce0bb5f7019276f312f85f3d308eb5ef","2b0dc274f4e10794352b468f179cf8b5a9a0203406d8185717dc93a5d7ea9136","53c520b2ebbd7c565fb533caffe747807ae5adbff2f50178a011bad4c334160c","9abdd87903d4f7c22e4cfc7951efe23fc1c687c8ec2ccee61113ed2916e7e0a5",{"version":"afa5ebfe574765db96767fc8303b92f92e9111b0f1502b03cb9d4a2afb83371e","affectsGlobalScope":true},"54546d22f42ddbd52ed6153bf92406df16db0ddd8cc9b33ab390ca63309d36eb","84152750793e177dc28ed00578e60280e3f6aa7da6ac2a9ad9951d7d015228b2","632b566ffc20fb17b9690356c14f47af05130922998c581be87e4e028fe19183","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d88a479cccf787b4aa82362150fbeba5211a32dbfafa7b92ba6995ecaf9a1a89","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","c24ad9be9adf28f0927e3d9d9e9cec1c677022356f241ccbbfb97bfe8fb3d1a1","0ec0998e2d085e8ea54266f547976ae152c9dd6cdb9ac4d8a520a230f5ebae84","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","ae9930989ed57478eb03b9b80ad3efa7a3eacdfeff0f78ecf7894c4963a64f93","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","6ac6f24aff52e62c3950461aa17eab26e3a156927858e6b654baef0058b4cd1e",{"version":"0714e2046df66c0e93c3330d30dbc0565b3e8cd3ee302cf99e4ede6220e5fec8","affectsGlobalScope":true},"620a033e8ff8ffc3d280c3d78981d8a929d0a8c14574a3b87413d99d7f02fadd","5f34e74f9d889817c1388da54dbfdb28a36af5676c396fa3041309690bfa9ade","b0e23a13de5e00df2097f3bbc0ba67ecc18946f10222c2d4571814ba718467d7","2f89dab4002cafa419a8385e6cd54f3fd5458a024feb0f79e9967bf4c47157f7","e841f45cbf880c37dfc3279dd87523670ac8bf5477541a682ab10669ae6db0f0","4dfb0de036b79d6c4851ad323b7b8ba8d2eff92099edb928c28e2b8f151b4c73","b59fc967b467026aeb1dc3f3fc02c26b8b0b613212ade066d58cb1050b774da1","b10686e239ffd69ba14643969dd14c8be05f0fabeaff6490637efd034686474a","145198de0f9f65b760b6db2de57d72fc78b32d02866f72c3ec45fecb2bef7cca","b0bc78751796b8f1af96dab2f0ca0f767d40905e1b433e7374330fbec1c5230f","74e1a5e8999272eb5395f44b95c53ceeaa7a4e7595df865fee8c05d99a1e60a4","d153cbce75b7e1621eda0a4148748f44edd71ff44cc5351bac1c7787da4d5b05","63ea76eab54e08ce38ada84ddff0b080d6c2e360165071af684b43844b15bda7","4e0f8cf49eb6c3032d224fc85b08f3485a61ae530eadb7ccfeea5c6db8c376d2","76a8e8c5a8f24a9fe4eec0111ac1e57096fa252a864515e76757fdabcdb2510b","e3e9a2d63a2bce334052c52eff7fe6788f38030f3aa1038451a41cf4ebd345cc","07bd6e75eb093f6cd4a1570612acc624d28d6e57a5a2859e2f13411fe917a6b0","d5622ce36d88feae76120a342fe30f58693740972a3cd7c38c23492e2d223715","2cfbaa3dca274f68180cf920b9a6fc870e42134c4d16dfdd5f2081b7c7bd738e","d11712e0a730d51990eba7b263e3da6701216b56a3ee6177193b9191ff4830e1","946b2eb266839a7a085b97ba03329ea91d6c1d653ab992aff9875db4ae6be915","63e4215a844f0fce4e44a8137e0d204f1da061bc695310879111cf38380385e5","d4e77e2d4b8df0cd6ab14db66ea6d6a974c4a13b478490d0026c9b1e39db89d0","549d905df7d60706ad10482bb59a29089d5438c8bdce3466bb72249a17a89c34","364ff9148a4142cc95e9340fb53398004c9c2a5d07bdd479d4123e4883e9fa4e","bfa46d229901282ce42ced5a4b9907c560c932c79b3c0e02b52091390f43f0e3","4328c4b6a5dd88b85c0a03265371d7b01daba2a171f47b9e87d6603e86221fb5","c1ea40799e83c6105aecb760b12a593973ad56c5ec492a7c2c5633dd491ea335","a54d9c92495d89cd1d8d3580e855a22272c1260cdb0083369e31eb5487c64973",{"version":"3e432cdf56538889e5742d388cdf03d670bfb17f4547dbbb1daf90701ec790d5","affectsGlobalScope":true},"85d545d430795d54a8b2896f67f9aeb7bf19fd74a1469ae0627311eb72f0dfa2","a473cf45c3d9809518f8af913312139d9f4db6887dc554e0d06d0f4e52722e6b","55cb77e6ff3d95a68568446f53d3f1dc8fca753575d7c60471a865685f08dcc3","3d68ecf05475492f041c88395372c3a01b30351619bebcd38287ab185be7f7e4",{"version":"36c956a3a6dc279f1e6b77aa4b97b7b229b7d828102573ef5002de456ff5e1d9","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","6e8b894365ab993dbb55c58542598d1548fdda072c974f98b89c218891e2ba09","ddd6169dff8e5263397a9399ba7ba92521d3959f8f9dcdc27f24403dc7b751ba","508e1e25ca40ea6cde332d3232c826fcd82f456f45ae535d817754684f048f9e",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"8f8f6ee2a0c94077f79439f51640a625ac7e2f5dd6866bd3b5a41705c836adfc","affectsGlobalScope":true},"dda27180d5ff550ace8378f5df0f7a26e616f0c4e310c77e94329e2355f9c255","839421b494b57cd2bc0074e914130277051850eba6def6c25870056e6652640b","12a01de318341fefb7be11f22eb4bf28478a5f137b1b4546c509156e9c158198","88587b5c94b0c4f5d78026e4beeb93383b3933c860d9840b55d6bf47d7b632bb","5aa2a9a778a055cd668ea419ea80ba6e195210eb37d47707a1a58886aa4d80f0","9e8947666e44137405fd378f3a8a0515a492e967e552406c02b991c98c78fc61","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","9e6a556cf660a94faa51f5bce6ed009b9e02373546a4c67925da909f36c039d0","69640cc2e76dad52daeb9914e6b70c5c9a5591a3a65190a2d3ea432cf0015e16","a39a4c527b7a2dc7a2661b711a534c10c76852c5ad6ae320767d3f7d2621b67d","1bb5c9857b2ee32c199dd85bc0f4c0299112485d6e5dc91428eabfdee0dbd68c",{"version":"61dd09b57a0a5cf1486c3ceb3a18ad23babfe602c323035ce3d01544c5e3e0b6","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","662661bbf9ccd869f3bca82d34234b2abdc95c657e2187c35352d42dddb24c2d","5caa645cc390a0a8d5a031072b6b4e49218c17017cd80a63bd2557b19be13c5f","4c4334eb5d8fae83416a361d787b55a5743916aed8af812a909898bc7333e709","352104835f5c468c7d8a277f2c8c02fac239a37cd2293181fe421faa153878d3","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","0953427f9c2498f71dd912fdd8a81b19cf6925de3e1ad67ab9a77b9a0f79bf0b","a4aa075328fe61190b8547e74fae18179591a67fedb2ad274c63044a00716743","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","40c6ed5dc58e1c6afa7dcd23b1697bf290cc5b1170c63d0a4dd12f52aa39291c","71d6da3b0150ecdcd16c08b3b546fe4cc7f53df642eccfeb03c813ee788fae0c","a364b4a8a015ae377052fa4fac94204d79a69d879567f444c7ceff1b7a18482d","c5ec3b97d9db756c689cd11f4a11eaa9e6077b2768e3e9b54ff727a93c03a909","bdb07038733b2d74a75ba9c381dcb92774cd6f161ee125bfa921eae7d883ccc9","ad93e960a3a07dff7394bf0c8a558006a9ff2d0725ab28fc33dec227d4cb251e",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"c14e9e86f18189c7d32b5dd03b4cf3f40bed68f0509dec06d75d41b82c065fe2","ae68a04912ee5a0f589276f9ec60b095f8c40d48128a4575b3fdd7d93806931c","d555cd63a3fc837840db192596273fdf52fb28092b0a33bec98e89a0334b3a4c","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","49daf80661034e07d919f1c716aef69324e34d18a63a282f8100f52c961b58a7","abc2748988e07e7e754b43cfcfadca4d45f3449eb4c0be503f13630a3f15f22b","4ad6a10587db7ec660fa2e80997c7ab6cb1d7addace8029be125fcdb919445d4","973c32bae7505a7114be32c978ac47b32f4abca94ead03de44b78519c4ea0fe3","d7054d4e43fe54d72ced85e9eff66e529d55a34651f7428a7d4ccb8a1841be26","4e03531bfbff3fbbae8ed7a12b15c4a0c2e7e4b12d9f6761a3ad20856d69f207","a121716f49af5386e357c739014f0b02966e83dadd33400b4d6e4faa93c1d93c","3a1e56619dbdc70df3d0eb99a617f19cd426ed4c2208ba60dd65942cb89e5d2b","9ff31228fd96fd631006122eb1aa645aad93df4fc078f1514be959ecf4ce6f8f","09ba1c2099df3b918ebcec992316411c416b734f99ad615f11b26da4594c0890","15ef1ea083efd7516753d7ab7bde8f49deb922b2452965dc65ebf960f0e70f2b","5142d4a02148657d48c42076adf272b550480e30a7f7750b2d6e763dcaecea76","fa40e0a26e33533049a69c75eafd6277497a2260522cfb5aacc217c9e0ebb636","7044c407773c0900946b7a02f3a0e7e5e79af8b0a32b14aeb419b7beedfb3fcd","3f577b52dca95891957a4061de4eff10531dc94ada3b1eef078a346b3e239df6","156cc766480c99b08c1b357b14781aa3665b24946a1fd95da381ee80f8406d67","81a5dfa457046aa78dee38e21c5139f163fce85d4df17912b9fd29d20758971c","d9a1f5c7bef755a6c156f71e606e8db419c661784931d7162b92ff55a262e663","5b51e862d89537fce5b4a84a9195fa6bc27f4e91baa49818a96e88a00c35fe9d","aa8e6ca619a515490152c8060953aa5516da223f7878e3afd68faf46df4341b8","54bc4d56bfebce6a286b789c9c080748688e993c763b5ebfa4a1f9c512e8736e","5abe4e00879b9a903ac7efb0b920a72212685d220a4a3989f520f23e27b02fe4","9a3afe435fcbcb940644b0c295a0262a1d2d90935e6374a0b28304f29825e722","c13e280d244dc0829d954089e1d0446455efdb72fb4bdc2e3f0561ffbc66c905","8dfed5c91ad36e69e6da6b7e49be929d4e19666db2b651aa839c485170a2902c","6da9e714516d081abaa435946d77c8d74dba888530412dc71601e83d2c8a512e","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e",{"version":"24ff7ac33bdb941a8cd04408a31ba15fafab9684f751e7e88234813b89712c19","affectsGlobalScope":true},{"version":"42c1b00421aa4d5f03b85a2639c1573d32bd82533f34423bbf1f5fb2b0ddc4d8","affectsGlobalScope":true},"f0cb4b3ab88193e3e51e9e2622e4c375955003f1f81239d72c5b7a95415dad3e","92450d617e92f96354d281c8ed5613fd16cacea79eb60b1e9736494b3c057e69","8a9086357fe289efb682dc925358f30b6312c7219a5ca92212857a0a79612012","92bc42ed0e2d41559513fd457ee30d834c2f0fedb9ed5004c029cbf0ad2f8bd9","6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41","2e345cb6511f4c4c60c274df6626c94f3182939034f06cdf414bfbccc584f822","b1b1adc57093310531ddf3f78b21bda16c30f7319088b0981449476a6616cff3","b6167e00019a8db27428651c58358d8cfac239107f25744e608816ed04361df7",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"0133ebdd17a823ae56861948870cde4dac18dd8818ab641039c85bbb720429e0","3a1e165b22a1cb8df82c44c9a09502fd2b33f160cd277de2cd3a055d8e5c6b27","7d7c8ef7d48a035142c07dae60545ecc0e4af4c337742760cb09726f2f8e31db","e300bf65972ac08167a72787e19d1b43c285c5424707194d0ba64422f6b02c77","1d1e6bd176eee5970968423d7e215bfd66828b6db8d54d17afec05a831322633","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","1320ee42b30487cceb6da9f230354fc34826111f76bf12f0ad76c717c12625b0","3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0","bfe1b52cf71aea9bf8815810cc5d9490fa9617313e3d3c2ee3809a28b80d0bb4","70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32","de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90","de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","6109487f86bc33b14eebb35cbc878b591328e19657d92bc6c61b667f7f9594c8","96b729b46007058fceb10567283275a023415f724af78e91cab3ac7073c19635","9a6d65d77455efaaaeff945bea30c38b8fe0922b807ba45cd23792392f1bfe76","e437d83044ba17246a861aa9691aa14223ff4a9d6f338ab1269c41c758586a88","736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50","208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71","062bd2910098fc059ba93e347649b3e126c555f7b144033d21d3f8ef63d3e39b","c9ad058b2cc9ce6dc2ed92960d6d009e8c04bef46d3f5312283debca6869f613","fda7ad096a1619fbae01b3d869cc82e29116f22be50133ac8fb08cee21279acd","9751247ee3bbcf1c63592f0f4dafb44559680b2b3e5736b7f0578c6a737d74c8","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26",{"version":"2d2482647045d334fcfce6eefa3340db2800cb2d0814e7b58d4f3b53c274d8ec","affectsGlobalScope":true},{"version":"f1e1d121f108eb57d576df44fc40e01448e0fc7fec64493b07aa852471b6a59d","affectsGlobalScope":true},{"version":"838524a3cc660f7bbb104ffa15febad659d1ef1633dac47340bfbfcbbbffdb08","affectsGlobalScope":true},{"version":"50a03e74fae4542ecfb326b34517ec2e058aee15bcb60af5b2e41c5e2db0d079","affectsGlobalScope":true},{"version":"d252bde46b7594f8f90a45d59181b08134ee8c4919ebb2ba7088ba26056bf621","affectsGlobalScope":true},{"version":"c892c9c7905dd7435264ca83ff0f3ac7f39a0937ee728acdce4b476ece7d6fd9","affectsGlobalScope":true},{"version":"1abdfe21f6b99b864965f9dc5073c49f0c0f3d5e8e1fe498fb94bd0a479d3afe","affectsGlobalScope":true},"4d737cdd77685ed65bd61d375375cae446fb0f46f711bbb3ef3f81a350212569","65455ea1b00bae7bd26d3c8c2401eb3d10401c09c55192d6f3b8b2275eda20c2","c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f","62b931417104c7cb35d0725e1869f51d52d7b18462fd58f32f846a314a42ba10","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc","c45d6f4d3a20be54e46237608f537a8d85397f87b9c3318d68ed925c2f1d0b51",{"version":"8f19251323456195ec9236df857bac3b8f97b73b540ef06ead2ceccc3884954f","affectsGlobalScope":true},"4370c91e46f6992a89e3979c50434cf932088e1b5ae6e3a5214d778634dea768",{"version":"cffd3848b7af4922d70028c805b7df5e8f0eac4a8d2410b0f55b47ca62c6c3a8","affectsGlobalScope":true},"ef6cede608fc396d0ad86d0240c40989a080c6a4c5b2ac5c84072c7e0ff2942e","30688eab034d1aa3bbe4d8f2c7f462ddaec9f30f1a38a306a4728a9a06a58b11","e03334588c63840b7054accd0b90f29c5890db6a6555ac0869a78a23297f1396","c3052485f32a96bfde75a2976c1238995522584ba464f04ff16a8a40af5e50d1","c220410b8e956fa157ce4e5e6ac871f0f433aa120c334d906ff1f5e2c7369e95","960a68ced7820108787135bdae5265d2cc4b511b7dcfd5b8f213432a8483daf1","ed3b711f533ddb3a5451f4c4bb0df3a0b95e9d0433b3b7834644dd1718d06d31","2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761","74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","30783d97bd0231ae2c4b9320043d61442a8177e81c7df826a5536b95fdd63280","67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","aec0cabbdfacf43db998d8e50ee6f1e72131d24b5018dfb84f14806717baa0a6","e32dad799d088c53cbe1da736e34cad03027d56dd2fc77d484a67100278bc4bd","3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67","9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36","4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538","e0fff9119e1a5d2fdd46345734126cd6cb99c2d98a9debf0257047fe3937cc3f","d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762","b2f006ee835f315d01c43c0f5d9e9ad78a5870b380899877b32a33078d065dbd",{"version":"3a1e422f919c70fca66e94dc641ad8d9732b3d2533ac047b8a9aaca9eea3aa10","affectsGlobalScope":true},"f7e133b20ee2669b6c0e5d7f0cd510868c57cd64b283e68c7f598e30ce9d76d2","09c4b2e2d3070239d563fc690f0cc5db04a2d9b66a23e61aef8b5274e3e9910c"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationDir":"./","declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":4,"module":99,"noFallthroughCasesInSwitch":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"target":4},"fileIdsList":[[269],[88],[50,89],[269,270,271,272,273],[269,271],[57,81],[246],[277],[278,279],[278],[281],[284],[50,276],[286,287,288,289],[290],[212,213,246,291],[213,246],[294],[50],[299],[300],[74,76],[52,53,54,55,56],[171],[159,161,162,163,164,165,166,167,168,169,170,171],[159,160,162,163,164,165,166,167,168,169,170,171],[160,161,162,163,164,165,166,167,168,169,170,171],[159,160,161,163,164,165,166,167,168,169,170,171],[159,160,161,162,164,165,166,167,168,169,170,171],[159,160,161,162,163,165,166,167,168,169,170,171],[159,160,161,162,163,164,166,167,168,169,170,171],[159,160,161,162,163,164,165,167,168,169,170,171],[159,160,161,162,163,164,165,166,168,169,170,171],[159,160,161,162,163,164,165,166,167,169,170,171],[159,160,161,162,163,164,165,166,167,168,170,171],[159,160,161,162,163,164,165,166,167,168,169,171],[159,160,161,162,163,164,165,166,167,168,169,170],[215,235,246,307,308],[215,229,246],[243,244],[212,213,220,229],[204,212,220],[236],[208,213,221],[229],[210,212,220],[212],[212,214,229,235],[213],[220,229,235],[212,213,215,220,229,232,235],[215,232,235],[245],[235],[210,212,229],[202],[234],[227,236,238],[220],[201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242],[226],[212,214,229,235,238],[316],[316,317,318,319,320,321],[282,315],[315,316],[50,296,328],[50,330],[50,332],[332,333,334,335,336],[46,47,48,49],[344],[343],[246,350,351,352,353,354,355,356,357,358,359,360],[349,350,359],[350,359],[341,349,350,359],[350],[208,349,359],[349,350,351,352,353,354,355,356,357,358,360],[208,246,343,346,347,348,361],[364],[70,71],[70,71,72,73],[75],[48,50,80,81,84],[48,50],[48,50,80,81,84,107],[50,81,94],[50,107],[50,79,80,112,115],[50,94],[50,79,80,113,114],[50,80],[50,90],[50,94,98],[50,99],[50,79,99],[50,99,102],[99,100,101,103],[57,79,84,85,86,87,90,91,92,93,98,104,105,106,107,108,109,110,111,115,116,117,118,119,120,121,124,125,130,131,132,133,134,135,136,137,138,139,140,141],[50,81,84,99,122],[123],[50,126],[126,127,128,129],[48,50,81],[50,82],[82,83],[95],[95,96,97],[48,50,51,79,94,142,143,153,157,172,179,182,183,184,189,190,199,200,252,254],[48,50,51,79,155,179,182,183,198],[48,50,51,94,142,150,153,157,179,184],[48,51],[51,142],[48,50,51,79,142,153,183,253],[48,50,51,79,94,142,143,149,179,180,182,261,262],[48,50,51,94,142,150,183],[48,50,51,142,181,182,183,260],[48,50,51,79,80,142,156,181,182,259],[51,147],[50,51,147,148,172,179],[51,148,260,261,262,263],[48,50,51,155],[51],[51,153],[50,51,94,150,153],[51,149,154,156,157],[48,50,51,188],[48,50,51,142,153,157,158,179,185,186,187],[48,50,51],[48,50,51,94,150,183],[48,50,51,79,94,142,150],[51,185,186,187,188,189],[48,50,51,79,142,179,183,200,247,250,251],[48,50,51,94,142,150],[51,79,179,249],[51,248],[51,143,158,196,199,253,254,255,256,257,258,264,265,267],[48,50,51,142,183],[50,51,94,142,150,153,155,157,190,266],[48,50,51,155,179],[51,155,179,191,192,193,194,195],[51,196,197],[48,50,51,155,183,196],[48,50,51,142,155,179,198,256],[48],[151,152],[173],[174],[176],[173,175,176,177,178],[144],[144,145,146],[62],[77],[58,59,60,61,62,63,64,65,66,67,68,69,78]],"referencedMap":[[271,1],[89,2],[150,3],[274,4],[270,1],[272,5],[273,1],[275,6],[276,7],[278,8],[280,9],[279,10],[282,11],[285,12],[284,13],[290,14],[287,15],[292,16],[293,17],[295,18],[296,19],[300,20],[301,21],[77,22],[57,23],[247,7],[303,24],[259,24],[304,24],[172,24],[160,25],[161,26],[159,27],[162,28],[163,29],[164,30],[165,31],[166,32],[167,33],[168,34],[169,35],[170,36],[171,37],[305,18],[309,38],[307,39],[245,40],[204,41],[205,42],[206,43],[207,44],[208,45],[209,46],[211,47],[212,47],[213,48],[214,49],[215,50],[216,51],[217,52],[246,53],[218,47],[219,54],[220,55],[223,56],[224,57],[227,47],[228,58],[229,47],[232,59],[243,60],[234,59],[235,61],[237,45],[239,62],[240,45],[311,47],[317,63],[318,63],[319,63],[322,64],[316,65],[315,63],[320,63],[321,66],[112,19],[327,19],[329,67],[330,68],[331,19],[333,69],[335,19],[332,19],[334,69],[337,70],[114,19],[113,19],[50,71],[51,19],[338,7],[345,72],[347,73],[361,74],[360,75],[351,76],[352,77],[353,77],[354,76],[355,76],[356,76],[357,78],[350,79],[358,75],[359,80],[362,81],[365,82],[72,83],[74,84],[73,83],[344,73],[76,85],[85,86],[86,87],[87,19],[90,3],[91,87],[92,19],[93,19],[106,19],[105,87],[108,88],[109,89],[110,90],[111,19],[116,91],[118,92],[115,93],[119,19],[120,19],[121,19],[125,19],[131,19],[132,19],[133,19],[107,19],[134,19],[135,94],[136,19],[138,19],[139,19],[140,95],[141,19],[99,96],[100,97],[102,98],[101,97],[103,99],[104,100],[142,101],[123,102],[122,97],[124,103],[127,104],[126,3],[128,19],[129,19],[130,105],[82,106],[83,107],[84,108],[96,109],[95,19],[97,109],[98,110],[255,111],[199,112],[253,113],[181,114],[143,115],[254,116],[182,114],[263,117],[262,118],[261,119],[260,120],[148,121],[180,122],[264,123],[156,124],[149,125],[157,126],[154,127],[158,128],[189,129],[188,130],[185,131],[187,132],[186,133],[265,134],[251,125],[252,135],[200,136],[250,137],[249,138],[248,125],[268,139],[190,125],[266,140],[267,141],[197,142],[196,143],[198,144],[194,125],[192,125],[195,125],[191,125],[193,125],[256,145],[257,146],[258,125],[94,2],[152,147],[153,148],[174,149],[175,150],[177,151],[179,152],[145,153],[146,153],[147,154],[63,155],[78,156],[79,157]],"exportedModulesMap":[[271,1],[89,2],[150,3],[274,4],[270,1],[272,5],[273,1],[275,6],[276,7],[278,8],[280,9],[279,10],[282,11],[285,12],[284,13],[290,14],[287,15],[292,16],[293,17],[295,18],[296,19],[300,20],[301,21],[77,22],[57,23],[247,7],[303,24],[259,24],[304,24],[172,24],[160,25],[161,26],[159,27],[162,28],[163,29],[164,30],[165,31],[166,32],[167,33],[168,34],[169,35],[170,36],[171,37],[305,18],[309,38],[307,39],[245,40],[204,41],[205,42],[206,43],[207,44],[208,45],[209,46],[211,47],[212,47],[213,48],[214,49],[215,50],[216,51],[217,52],[246,53],[218,47],[219,54],[220,55],[223,56],[224,57],[227,47],[228,58],[229,47],[232,59],[243,60],[234,59],[235,61],[237,45],[239,62],[240,45],[311,47],[317,63],[318,63],[319,63],[322,64],[316,65],[315,63],[320,63],[321,66],[112,19],[327,19],[329,67],[330,68],[331,19],[333,69],[335,19],[332,19],[334,69],[337,70],[114,19],[113,19],[50,71],[51,19],[338,7],[345,72],[347,73],[361,74],[360,75],[351,76],[352,77],[353,77],[354,76],[355,76],[356,76],[357,78],[350,79],[358,75],[359,80],[362,81],[365,82],[72,83],[74,84],[73,83],[344,73],[76,85],[85,86],[86,87],[87,19],[90,3],[91,87],[92,19],[93,19],[106,19],[105,87],[108,88],[109,89],[110,90],[111,19],[116,91],[118,92],[115,93],[119,19],[120,19],[121,19],[125,19],[131,19],[132,19],[133,19],[107,19],[134,19],[135,94],[136,19],[138,19],[139,19],[140,95],[141,19],[99,96],[100,97],[102,98],[101,97],[103,99],[104,100],[142,101],[123,102],[122,97],[124,103],[127,104],[126,3],[128,19],[129,19],[130,105],[82,106],[83,107],[84,108],[96,109],[95,19],[97,109],[98,110],[255,111],[199,112],[253,113],[181,114],[143,115],[254,116],[182,114],[263,117],[262,118],[261,119],[260,120],[148,121],[180,122],[264,123],[156,124],[149,125],[157,126],[154,127],[158,128],[189,129],[188,130],[185,131],[187,132],[186,133],[265,134],[251,125],[252,135],[200,136],[250,137],[249,138],[248,125],[268,139],[190,125],[266,140],[267,141],[197,142],[196,143],[198,144],[194,125],[192,125],[195,125],[191,125],[193,125],[256,145],[257,146],[258,125],[94,2],[152,147],[153,148],[174,149],[175,150],[177,151],[179,152],[145,153],[146,153],[147,154],[63,155],[78,156],[79,157]],"semanticDiagnosticsPerFile":[271,269,88,89,150,274,270,272,273,275,276,278,280,279,277,282,283,285,284,286,290,287,289,292,293,295,296,297,298,299,300,301,77,53,52,57,55,54,288,302,247,303,259,304,172,160,161,159,162,163,164,165,166,167,168,169,170,171,305,80,291,306,281,308,309,307,244,202,245,203,204,205,206,207,208,209,210,211,212,213,214,201,241,215,216,217,246,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,243,234,235,236,237,238,242,239,240,310,311,312,313,314,317,318,319,322,316,315,320,321,323,324,48,325,326,112,327,329,330,331,333,335,332,334,336,337,114,113,46,50,51,338,339,49,340,56,341,342,345,346,347,294,363,361,360,351,352,353,354,355,356,357,350,358,359,349,362,364,365,348,183,47,70,72,74,73,71,184,155,81,344,76,75,328,343,10,11,13,12,2,14,15,16,17,18,19,20,21,3,4,25,22,23,24,26,27,28,5,29,30,31,32,6,33,34,35,36,7,41,37,38,39,40,8,42,43,44,1,9,45,85,86,87,90,91,92,93,106,105,108,109,110,111,117,116,118,115,119,120,121,125,131,132,133,107,134,135,136,137,138,139,140,141,99,100,102,101,103,104,142,123,122,124,127,126,128,129,130,82,83,84,96,95,97,98,255,199,253,181,143,254,182,263,262,261,260,148,180,264,156,149,157,154,158,189,188,185,187,186,265,251,252,200,250,249,248,268,190,266,267,197,196,198,194,192,195,191,193,256,257,258,94,152,151,153,174,175,177,176,173,178,179,144,145,146,147,58,59,61,60,68,63,62,64,78,65,67,66,69,79]},"version":"4.3.2"}
1
+ {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/scheduler/tracing.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@types/react/jsx-runtime.d.ts","../../../node_modules/@types/jquery/JQueryStatic.d.ts","../../../node_modules/@types/jquery/JQuery.d.ts","../../../node_modules/@types/jquery/misc.d.ts","../../../node_modules/@types/jquery/legacy.d.ts","../../../node_modules/@types/sizzle/index.d.ts","../../../node_modules/@types/jquery/index.d.ts","../../utils/dist/CanceledPromiseError.d.ts","../../utils/dist/ColorUtils.d.ts","../../utils/dist/DbNameValidator.d.ts","../../utils/dist/DOMUtils.d.ts","../../utils/dist/PromiseUtils.d.ts","../../utils/dist/Pending.d.ts","../../utils/dist/RangeUtils.d.ts","../../utils/dist/TextUtils.d.ts","../../utils/dist/TimeoutError.d.ts","../../utils/dist/TimeUtils.d.ts","../../utils/dist/InvalidMetadataError.d.ts","../../utils/dist/ValidationError.d.ts","../../../node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../node_modules/jest-diff/build/types.d.ts","../../../node_modules/jest-diff/build/diffLines.d.ts","../../../node_modules/jest-diff/build/printDiffs.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/pretty-format/build/types.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../utils/dist/TestUtils.d.ts","../../utils/dist/index.d.ts","../../../node_modules/@types/memoizee/index.d.ts","../../../node_modules/popper.js/index.d.ts","../../components/dist/popper/Popper.d.ts","../../components/dist/popper/Tooltip.d.ts","../../components/dist/popper/index.d.ts","../../components/dist/AutoCompleteInput.d.ts","../../components/dist/AutoResizeTextarea.d.ts","../../components/dist/BasicModal.d.ts","../../../node_modules/@fortawesome/fontawesome-common-types/index.d.ts","../../../node_modules/@fortawesome/fontawesome-svg-core/index.d.ts","../../components/dist/Button.d.ts","../../components/dist/ButtonGroup.d.ts","../../components/dist/ButtonOld.d.ts","../../components/dist/CardFlip.d.ts","../../icons/dist/index.d.ts","../../components/dist/shortcuts/Shortcut.d.ts","../../components/dist/shortcuts/GlobalShortcuts.d.ts","../../components/dist/shortcuts/ShortcutRegistry.d.ts","../../components/dist/shortcuts/index.d.ts","../../components/dist/context-actions/ContextActionUtils.d.ts","../../components/dist/context-actions/ContextActions.d.ts","../../components/dist/context-actions/ContextMenuItem.d.ts","../../components/dist/context-actions/ContextMenu.d.ts","../../components/dist/context-actions/ContextMenuRoot.d.ts","../../components/dist/context-actions/index.d.ts","../../components/dist/Collapse.d.ts","../../components/dist/Checkbox.d.ts","../../components/dist/SearchInput.d.ts","../../components/dist/ComboBox.d.ts","../../components/dist/CustomTimeSelect.d.ts","../../components/dist/DebouncedSearchInput.d.ts","../../components/dist/DeephavenSpinner.d.ts","../../../node_modules/@types/react-beautiful-dnd/index.d.ts","../../../node_modules/@types/react-window/index.d.ts","../../../node_modules/@types/react-virtualized-auto-sizer/index.d.ts","../../components/dist/ItemList.d.ts","../../components/dist/DraggableItemList.d.ts","../../components/dist/DragUtils.d.ts","../../components/dist/HierarchicalCheckboxMenu.d.ts","../../components/dist/ItemListItem.d.ts","../../components/dist/LoadingOverlay.d.ts","../../components/dist/LoadingSpinner.d.ts","../../components/dist/menu-actions/Menu.d.ts","../../components/dist/menu-actions/DropdownMenu.d.ts","../../components/dist/menu-actions/index.d.ts","../../components/dist/MaskedInput.d.ts","../../components/dist/navigation/MenuItem.d.ts","../../components/dist/navigation/Menu.d.ts","../../components/dist/navigation/Page.d.ts","../../components/dist/navigation/Stack.d.ts","../../components/dist/navigation/index.d.ts","../../components/dist/Option.d.ts","../../components/dist/RadioGroup.d.ts","../../components/dist/RadioItem.d.ts","../../components/dist/Select.d.ts","../../components/dist/SelectValueList.d.ts","../../components/dist/SocketedButton.d.ts","../../components/dist/ThemeExport.d.ts","../../components/dist/TimeInput.d.ts","../../components/dist/TimeSlider.d.ts","../../components/dist/ToastNotification.d.ts","../../components/dist/UISwitch.d.ts","../../components/dist/index.d.ts","../src/ConsoleShortcuts.ts","../../storage/dist/Storage.d.ts","../../storage/dist/StorageTableViewportUpdater.d.ts","../../storage/dist/StorageUtils.d.ts","../../storage/dist/index.d.ts","../src/command-history/CommandHistoryStorage.ts","../src/common/ConsoleConstants.ts","../../../node_modules/@fortawesome/react-fontawesome/index.d.ts","../../jsapi-shim/dist/dh.d.ts","../../jsapi-shim/dist/PropTypes.d.ts","../../jsapi-shim/dist/index.d.ts","../src/common/ObjectIcon.tsx","../../../node_modules/monaco-editor/esm/vs/editor/editor.api.d.ts","../src/common/Code.jsx","../src/common/ConsoleUtils.js","../src/common/index.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/lodash.throttle/index.d.ts","../../log/dist/Logger.d.ts","../../log/dist/DefaultLogger.d.ts","../../log/dist/Log.d.ts","../../log/dist/LogProxy.d.ts","../../log/dist/LogHistory.d.ts","../../log/dist/LoggerLevel.d.ts","../../log/dist/index.d.ts","../src/command-history/CommandHistoryViewportUpdater.tsx","../src/ConsolePropTypes.js","../src/StoragePropTypes.js","../../../node_modules/classnames/index.d.ts","../../../node_modules/memoize-one/dist/memoize-one.d.ts","../src/console-history/ConsoleHistoryItemResult.jsx","../src/console-history/ConsoleHistoryResultInProgress.jsx","../src/console-history/ConsoleHistoryResultErrorMessage.jsx","../src/console-history/ConsoleHistoryItem.jsx","../src/console-history/ConsoleHistory.jsx","../src/log/LogLevel.js","../src/monaco/lang/python.js","../src/monaco/lang/groovy.js","../src/monaco/lang/scala.js","../src/monaco/lang/db.js","../src/monaco/lang/log.js","../src/monaco/MonacoUtils.js","../src/monaco/MonacoCompletionProvider.jsx","../src/monaco/index.js","../src/ConsoleInput.jsx","../src/csv/CsvOverlay.jsx","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/ts3.6/base.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/base.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/jszip/index.d.ts","../src/csv/NewTableColumnTypes.js","../src/csv/CsvTypeParser.js","../src/csv/CsvParser.js","../src/csv/CsvFormats.js","../src/csv/CsvInputBar.jsx","../src/ConsoleMenu.jsx","../src/ConsoleStatusBar.jsx","../src/Console.jsx","../src/notebook/Editor.jsx","../src/notebook/ScriptEditor.jsx","../src/notebook/ScriptEditorUtils.js","../../../node_modules/@types/lodash.debounce/index.d.ts","../src/command-history/CommandHistoryItemTooltip.jsx","../src/command-history/CommandHistoryItem.jsx","../src/command-history/CommandHistoryActions.jsx","../src/command-history/CommandHistory.jsx","../src/command-history/index.jsx","../src/console-history/index.jsx","../src/log/LogLevelMenuItem.jsx","../src/log/LogView.jsx","../src/index.js","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/bootstrap/index.d.ts","../../../node_modules/@types/cheerio/index.d.ts","../../../node_modules/@types/color-name/index.d.ts","../../../node_modules/@types/color-convert/conversions.d.ts","../../../node_modules/@types/color-convert/route.d.ts","../../../node_modules/@types/color-convert/index.d.ts","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../../node_modules/@types/deep-equal/index.d.ts","../../../node_modules/@types/enzyme/index.d.ts","../../../node_modules/@types/enzyme-adapter-react-16/index.d.ts","../../../node_modules/@types/eslint/helpers.d.ts","../../../node_modules/@types/eslint/lib/rules/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/eslint/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/unist/index.d.ts","../../../node_modules/@types/hast/index.d.ts","../../../node_modules/@types/hoist-non-react-statics/index.d.ts","../../../node_modules/@types/html-minifier-terser/index.d.ts","../../../node_modules/@types/is-function/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/lodash.clamp/index.d.ts","../../../node_modules/@types/lodash.flatten/index.d.ts","../../../node_modules/@types/mdast/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/node-fetch/node_modules/form-data/index.d.ts","../../../node_modules/@types/node-fetch/externals.d.ts","../../../node_modules/@types/node-fetch/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/npmlog/index.d.ts","../../../node_modules/@types/overlayscrollbars/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/@types/parse5/index.d.ts","../../../node_modules/@types/pouchdb-find/index.d.ts","../../../node_modules/@types/pouchdb-core/index.d.ts","../../../node_modules/@types/pouchdb-adapter-http/index.d.ts","../../../node_modules/@types/pouchdb-adapter-idb/index.d.ts","../../../node_modules/@types/pouchdb-adapter-websql/index.d.ts","../../../node_modules/@types/pouchdb-mapreduce/index.d.ts","../../../node_modules/@types/pouchdb-replication/index.d.ts","../../../node_modules/@types/pouchdb-browser/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/pretty-hrtime/index.d.ts","../../../node_modules/@types/q/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/react-dom/index.d.ts","../../../node_modules/redux/index.d.ts","../../../node_modules/@types/react-redux/index.d.ts","../../../node_modules/@types/react-syntax-highlighter/index.d.ts","../../../node_modules/@types/react-test-renderer/index.d.ts","../../../node_modules/@types/react-transition-group/Transition.d.ts","../../../node_modules/@types/react-transition-group/CSSTransition.d.ts","../../../node_modules/@types/react-transition-group/TransitionGroup.d.ts","../../../node_modules/@types/react-transition-group/SwitchTransition.d.ts","../../../node_modules/@types/react-transition-group/config.d.ts","../../../node_modules/@types/react-transition-group/index.d.ts","../../../node_modules/@types/resolve/index.d.ts","../../../node_modules/@types/scheduler/index.d.ts","../../../node_modules/@types/shortid/index.d.ts","../../../node_modules/@types/source-list-map/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/source-map/source-map.d.ts","../../../node_modules/postcss/lib/postcss.d.ts","../../../node_modules/@types/stylelint/index.d.ts","../../../node_modules/@types/tapable/index.d.ts","../../../node_modules/@types/uglify-js/index.d.ts","../../../node_modules/anymatch/index.d.ts","../../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../../node_modules/@types/webpack-sources/lib/Source.d.ts","../../../node_modules/@types/webpack-sources/lib/CompatSource.d.ts","../../../node_modules/@types/webpack-sources/lib/ConcatSource.d.ts","../../../node_modules/@types/webpack-sources/lib/OriginalSource.d.ts","../../../node_modules/@types/webpack-sources/lib/PrefixSource.d.ts","../../../node_modules/@types/webpack-sources/lib/RawSource.d.ts","../../../node_modules/@types/webpack-sources/lib/ReplaceSource.d.ts","../../../node_modules/@types/webpack-sources/lib/SizeOnlySource.d.ts","../../../node_modules/@types/webpack-sources/lib/SourceMapSource.d.ts","../../../node_modules/@types/webpack-sources/lib/index.d.ts","../../../node_modules/@types/webpack-sources/lib/CachedSource.d.ts","../../../node_modules/@types/webpack-sources/index.d.ts","../../../node_modules/@types/webpack/index.d.ts","../../../node_modules/@types/webpack-env/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"ac3a8c4040e183ce38da69d23b96939112457d1936198e6542672b7963cf0fce","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940","eb75e89d63b3b72dd9ca8b0cac801cecae5be352307c004adeaa60bc9d6df51f","2cc028cd0bdb35b1b5eb723d84666a255933fffbea607f72cbd0c7c7b4bee144",{"version":"1dad4fe1561d99dfd6709127608b99a76e5c2643626c800434f99c48038567ee","affectsGlobalScope":true},{"version":"a8fe23ae87c3e9d2877032cafeb290f2ebe0c51e216d175a0408b10915ebe9f0","affectsGlobalScope":true},{"version":"cce43d02223f8049864f8568bed322c39424013275cd3bcc3f51492d8b546cb3","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"8dff1b4c2df638fcd976cbb0e636f23ab5968e836cd45084cc31d47d1ab19c49","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"8f4c9f651c8294a2eb1cbd12581fe25bfb901ab1d474bb93cd38c7e2f4be7a30","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"93544ca2f26a48716c1b6c5091842cad63129daac422dfa4bc52460465f22bb1","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"60761e6ea886034af0f294f025a7199360ce4e2c8ba4ec6408bc049cf9b89799","affectsGlobalScope":true},{"version":"7435b75fdf3509622e79622dbe5091cf4b09688410ee2034e4fc17d0c99d0862","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"9f1817f7c3f02f6d56e0f403b927e90bb133f371dcebc36fa7d6d208ef6899da","affectsGlobalScope":true},{"version":"cd6efb9467a8b6338ece2e2855e37765700f2cd061ca54b01b33878cf5c7677e","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e","affectsGlobalScope":true},{"version":"ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6","affectsGlobalScope":true},"4ee363f83d7be2202f34fcd84c44da71bf3a9329fee8a05f976f75083a52ea94","f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"38943ef508ccbc71691ff6c14f30e0468a85a4ec22c9e0a4eea2c9ba8ca19352","affectsGlobalScope":true},"af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9",{"version":"a139b5f761e657cda95b3a6f938ce7102878b5b39edbb743894d39388d83cc7b","affectsGlobalScope":true},{"version":"513dfbfe04b52253f35007545694c2a99c313fdb6b836bdb8cbc9c7fb0ff6166","affectsGlobalScope":true},{"version":"a4832e26b82049fc2774c96ca6e1c17b2c204246570a62fdbe7e8ee8af2cd4d4","affectsGlobalScope":true},{"version":"6f1f78e8c2a5c7cd2c38aa9cc5da26d9c039f2bbfa753f2a0a54ce41c4dff8d0","affectsGlobalScope":true},"ec89427601297d439c961528832a75017d9356bec2ee42c1d16f2274590d9330","d0b93cf4a086095121a40a8a878f81c72783fc819ad055225a36ef829c6f41d4","50eac108cc307665c28801910626932956adcf8dc0dc70ab1939dd0e8aeb6f28","1a68643644167daaea17e2f89d04edd9d1fec7bf881e4fa3ad4cd43d92447ce1","7255a17d460541e2ccca5f485bb58b6fa64bc750047c5e57ce7abf17cc3f4f3d","571ffdcb677c42d897370ca1a616798670d7715361dc099f713f03c067e8c988","1f8d8388b2da5785ef9c169db1493969f8c9e1ea50e1db1194a21708403f2e10","a299dcd51a18896ffb9f1249507d387a996b8d733cd1ee7c0a5fb46b86f88524","2c3d2bc00ffd291568c89e1ea920cf5c41b6b6a532cdc0bcb74e917eaf133f3b","e7857f874cbc2bd969097918305d8552156d0147d9a03a87e42f8cbd6e1729b5","0de99ed9f5d0a953aabe8de8999b0ce24944f36374d36c06abf9dca6e5567368","a756f87e33897fd95428da3288ed3061182b8678e38b48000c53e5499c7f8863","f68abba533f1aee022d1800ab3ad273e163909b97c171c8eea15fa04e3d02280","9b526aac58282b2b9c1afd1969828336c77a81ca52916214ae63a70e256a8032","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","561eca7a381b96d6ccac6e4061e6d2ae53f5bc44203f3fd9f5b26864c32ae6e9","62ea38627e3ebab429f7616812a9394d327c2bc271003dfba985de9b4137369f","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"516a426e3960379f310107635b8f3a7e8c307c6c665080b128039d9299ec4087","affectsGlobalScope":true},"f544c98b782364169412ac2bc65143918f9f1dd49880920302693f2eb3bd3570","e5d5ee66044d79018aadeabf3dc39d758d9c45c49c004b3a57b76a974fb346d7","34ef06f1d5e0ae95afb816e93c40f04f93641c11ad06e54b6fbe9335c3238c03","1873db8f2261ba4f248bde3e5bb4c79b1fdc990315054e9604fce8f41ddd1587","7b909a00d8978266be4783a28766711d28d1c76449db5dbac28c26c4e908e1ab","4f1715bd6319db37f4c1c99c8842ff9c9d357ffb5a73020c329463a30909bbaf","ff60413f9896b702b4e653cf85f6f8246e11482ad4d6859997ca9edafed9cc46","b682e653b63b5aa118887e61cd81a78fc45d4ef8fe95d8c6449742919a5638a4","bbc1e78124f19ccf50225278b700436ce64cf92b0c6b1ca15567431a28371b31","1f93a4dd7096a18c6cf99085327b467de58f3cd7f0f941a8bdc1d7ec4284b301","98edf9bdfe6c7794349a88d720af3035fd4a68480895e72beaf8ff8e758a33f5","a822e999d9c1814859735e919c2bd2a11f7d3c8633ab6656215dc386684e07bc","724c139fa49ad59be7a4139edc7be1cc528455e30d637172c7781804406a6fcb","1cfe76cc39491c2f2059192c7486297154f0a517fe9b3bd9d223824a5f803573","acc42289b4e6d8d789b9f3a4c48fe601c23ab6fe747080f1dc99787b8e79d256","9de7ce840e4a5b95405a164d166d010eaa99fd631817ea3b0310ec4e22b98d0e","8a2395a5c1a95d05c205b791f012b120b4d02eb50a806e24d69da02c51de9d6f","65c0791093075bbb931a7e218aa03c954f634702ecff2ae0b6efc92b71cc6db9","21e1b303e758ec4a1e9f703e1e1be8c47c8dd74034c2369fd01e9bfe1da98acc","cd303995edbd7439d6232f1e7596b38f5d1cd65ec0837e009ceba781aca110f5","33cb56e3cc910266a13ca59281b907459131acc58739c2bd68dab246f8ed01fa","c6d0cb5ad7498c2c977a5340f17bcfcc151609118789bbace2336079f2d9f84a","383d4add4d2b7a9b03bb0b7b9b2f62b70c269e79616b629946b51283c14a92cf","4162810d701126188368ff58526c81e7c4c6a9a32ed26c4b763a5d3535b46748","513b7862a230ed479fb045bbe87d37f9ee91cc20fee15dd4b16c3cc74aa3e514","8ff77a6b5f0b74c681e132e9510f5576a29150ee53b1324efed33d3d7fabd736","7bdf81223f6cfae94a48484223d4b59b8ef609cf680f0fa90941d8e093ff27b0","9fbe4ad05e10d7957283cc4a3aa909e70717c62d51bdc19516ffd75a60c2eaf4","8b423ba6b1f81c80542db7deba332d1938db29f6f127fe169287903abe67fe8d","9c0a4431746ad0073026505df7a5724b4126c0e1f41b90e87c1efa6b8335711d","0ec7fb37f4303f3cac4f35819f0d5d75b3b4692990da2590c63c656729447dfe","ed6fbb1cb7cb8dc283f9d5efa68c17d5a9fc5e32fc481e2be7eccd5077d3afc0","e96e84cd79dac3fb1369911a8e9888308deda9542dcfb19d1540414e9ab64465","616ed304b4a011a969ba5d2aa5fca781d66b3f0c8f3d099e19c7158da36fa07b","163be962fa11ca0e3bc9afd1188701e16f5db0d84f904be3a5327c04bf14c1dc","f51c2abd01bb55990a6c5758c8ec34ea7802952c40c30c3941c75eea15539842","23255560340f60336ff79daf50b3b6432ec0f32f7dd19638d3a2406826a15d49","cbf272d1fef2ab8cca386524e1aa8e06caa3509eb6e724e0008ca613c05e7fdb","f8f0a01a9ec6571933c3b63b6d877d74729fbdab0be2fa87c18999b11357cf32","fca853da554cd762704a9bf8ad62cbf6d55d81c9d69b07b3c8a552367f4976d6","6b8d8f68865166b7f761ccdea7a66018f0452ddb7c6f75bf5cbaa31e6163af8f","d9cef8e439c407166963fa89b317d3ea7367e204035611447c9765786026f03b","ca888feddeab794c01fb1bec893ff46186801a30bca77c8a1aa28477f7e6f839","bb96345dfdd3b0695f5281537427e38fa85cb79449e3c6b59151bb7d753ef6f7","2561fd263d1d42554d0de99369f6fb352981090e2de0966b2e257891abf9977a","b01b764b8b1ce1376a70aa1bde2914093b36810a2a3e60cc9fd8f2741490a8f9","e6047a9c095d3b4a903aea90b49815be068476f1719e76766b7792ee21310f3a","cdcd29d866abedc194a88851871320fbb9c29e1c4868583b1f91ee2786acb818","c02107d9cae7a0c7541e8af0f4e0497650b1494e561e409e7cb90a12bc65ed09","5e62225c303695c8511d3831bca37c141931fd584e3aa1c8c5dd4b57cf01b1d0","1c3dd3b5d7eee485481470a75bd1829ee8e0388e87c8c8f8a8418f702592876a","53336c5924937a0a2a4ba1a515499f48092e4dd853386e77276c0a4ff8a1fa50","5a42225ecf779e7d42b44ff91cd7f842421835f28287e295e42622aa51aeeb6f","baab49106b672deb07dcd3e31333e4a2539970b5db9ee896aedbdba3ca2400e5","2af60becd168c31f931c6839f2cb126713bb0f556780b07959afd04b8311eade","826ea84343ee53323b8b67320019287543a15c1f25ad163552f4adfba79368da","7181cfa9a4f05524e825271e409017810c1bc6a4b9544e05be5bd59ee76ca691","ad9afc2c60e7303174e70e6cbfc1eca63d8a770855d5fa3ddaac8769b9d93658","7e6b3017bd81ce434b27ae46cee6bdc5850db0e0d75e6a1d45c6c23e17eb135b","9304c3176830887fd3bbb010a9542ce549397b63624a51c8e7f2be032adb76e9","6c9c7d76d7f525a366d5ebdb0b42bccfab0ec7bdc0bce4db5b97573ee0970d3e","c7322d04c36fbd32b9035e07416c30073fbadf0bb6c1e855425f12c1df645aee","198c3858acc28364fb1cdf1d99d140fd9e0f3732c57ccd40a1752bcf8f318a0b","0625a691c77d71dd48fc83a59bff500dfbf3bdc1fe9c079b64bcaf078b5158d4",{"version":"662564f7dc409b31c6ad48129d12a1320c132b45bcafd3a990d0f8f545ce0529","affectsGlobalScope":true},"6d153a06d1684f5fc923f90d6cc557eb8150bc7fa32d20aa3e9557cc5cfa049e","5de15b99127d39fe510552b41db9135f81b2c6da52a604b1154c71f080963b32","fbb8558d76ab3469b95e00950f0f427fd59b34fe02485b23b1c99f732c8bcd52","822a794a93be1d9241f102cbc143c30692bbbf190f6e609c6b216560411d291b","b43cf409ba840bb753ff71edcd5ee4398f646e87c63f1d799cbb436b7c049870","a73f9d2e3d090085f4ee6c336e703ad3b33743aeda7ce83a566eb348ca732666","cc41d21f0022bd1b3e2f9c4a207b49cdb315410368a3b1fec7a1b52f7ec3fb0d","786093bf8792839268d761ac49e641a7bba644744f9d6b5cd9d7e1f0b40efb13","0637ca78a74b77392effa72e38c2951cce0bb5f7019276f312f85f3d308eb5ef","2b0dc274f4e10794352b468f179cf8b5a9a0203406d8185717dc93a5d7ea9136","53c520b2ebbd7c565fb533caffe747807ae5adbff2f50178a011bad4c334160c","9abdd87903d4f7c22e4cfc7951efe23fc1c687c8ec2ccee61113ed2916e7e0a5",{"version":"afa5ebfe574765db96767fc8303b92f92e9111b0f1502b03cb9d4a2afb83371e","affectsGlobalScope":true},"54546d22f42ddbd52ed6153bf92406df16db0ddd8cc9b33ab390ca63309d36eb","84152750793e177dc28ed00578e60280e3f6aa7da6ac2a9ad9951d7d015228b2","632b566ffc20fb17b9690356c14f47af05130922998c581be87e4e028fe19183","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d88a479cccf787b4aa82362150fbeba5211a32dbfafa7b92ba6995ecaf9a1a89","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","c24ad9be9adf28f0927e3d9d9e9cec1c677022356f241ccbbfb97bfe8fb3d1a1","0ec0998e2d085e8ea54266f547976ae152c9dd6cdb9ac4d8a520a230f5ebae84","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","ae9930989ed57478eb03b9b80ad3efa7a3eacdfeff0f78ecf7894c4963a64f93","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","6ac6f24aff52e62c3950461aa17eab26e3a156927858e6b654baef0058b4cd1e",{"version":"0714e2046df66c0e93c3330d30dbc0565b3e8cd3ee302cf99e4ede6220e5fec8","affectsGlobalScope":true},"620a033e8ff8ffc3d280c3d78981d8a929d0a8c14574a3b87413d99d7f02fadd","5f34e74f9d889817c1388da54dbfdb28a36af5676c396fa3041309690bfa9ade","b0e23a13de5e00df2097f3bbc0ba67ecc18946f10222c2d4571814ba718467d7","2f89dab4002cafa419a8385e6cd54f3fd5458a024feb0f79e9967bf4c47157f7","e841f45cbf880c37dfc3279dd87523670ac8bf5477541a682ab10669ae6db0f0","4dfb0de036b79d6c4851ad323b7b8ba8d2eff92099edb928c28e2b8f151b4c73","b59fc967b467026aeb1dc3f3fc02c26b8b0b613212ade066d58cb1050b774da1","b10686e239ffd69ba14643969dd14c8be05f0fabeaff6490637efd034686474a","145198de0f9f65b760b6db2de57d72fc78b32d02866f72c3ec45fecb2bef7cca","b0bc78751796b8f1af96dab2f0ca0f767d40905e1b433e7374330fbec1c5230f","74e1a5e8999272eb5395f44b95c53ceeaa7a4e7595df865fee8c05d99a1e60a4","d153cbce75b7e1621eda0a4148748f44edd71ff44cc5351bac1c7787da4d5b05","63ea76eab54e08ce38ada84ddff0b080d6c2e360165071af684b43844b15bda7","4e0f8cf49eb6c3032d224fc85b08f3485a61ae530eadb7ccfeea5c6db8c376d2","76a8e8c5a8f24a9fe4eec0111ac1e57096fa252a864515e76757fdabcdb2510b","27457898869179b5190837eb581c9b03d1a07d5e107f71adbf213944125c8058","07bd6e75eb093f6cd4a1570612acc624d28d6e57a5a2859e2f13411fe917a6b0","d5622ce36d88feae76120a342fe30f58693740972a3cd7c38c23492e2d223715","2cfbaa3dca274f68180cf920b9a6fc870e42134c4d16dfdd5f2081b7c7bd738e","d11712e0a730d51990eba7b263e3da6701216b56a3ee6177193b9191ff4830e1","946b2eb266839a7a085b97ba03329ea91d6c1d653ab992aff9875db4ae6be915","63e4215a844f0fce4e44a8137e0d204f1da061bc695310879111cf38380385e5","d4e77e2d4b8df0cd6ab14db66ea6d6a974c4a13b478490d0026c9b1e39db89d0","549d905df7d60706ad10482bb59a29089d5438c8bdce3466bb72249a17a89c34","364ff9148a4142cc95e9340fb53398004c9c2a5d07bdd479d4123e4883e9fa4e","bfa46d229901282ce42ced5a4b9907c560c932c79b3c0e02b52091390f43f0e3","4328c4b6a5dd88b85c0a03265371d7b01daba2a171f47b9e87d6603e86221fb5","59e9c5e3672a46a7a02fa16a0cb2a5104adb23805952cd968d39028507ff6f05","5ea5375343c651bbb65ed02e2f47324c777b5bb02f12dbb01927ff4140937581",{"version":"3e432cdf56538889e5742d388cdf03d670bfb17f4547dbbb1daf90701ec790d5","affectsGlobalScope":true},"85d545d430795d54a8b2896f67f9aeb7bf19fd74a1469ae0627311eb72f0dfa2","a473cf45c3d9809518f8af913312139d9f4db6887dc554e0d06d0f4e52722e6b","55cb77e6ff3d95a68568446f53d3f1dc8fca753575d7c60471a865685f08dcc3","3d68ecf05475492f041c88395372c3a01b30351619bebcd38287ab185be7f7e4",{"version":"36c956a3a6dc279f1e6b77aa4b97b7b229b7d828102573ef5002de456ff5e1d9","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","6e8b894365ab993dbb55c58542598d1548fdda072c974f98b89c218891e2ba09","ddd6169dff8e5263397a9399ba7ba92521d3959f8f9dcdc27f24403dc7b751ba","508e1e25ca40ea6cde332d3232c826fcd82f456f45ae535d817754684f048f9e",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"8f8f6ee2a0c94077f79439f51640a625ac7e2f5dd6866bd3b5a41705c836adfc","affectsGlobalScope":true},"dda27180d5ff550ace8378f5df0f7a26e616f0c4e310c77e94329e2355f9c255","839421b494b57cd2bc0074e914130277051850eba6def6c25870056e6652640b","12a01de318341fefb7be11f22eb4bf28478a5f137b1b4546c509156e9c158198","88587b5c94b0c4f5d78026e4beeb93383b3933c860d9840b55d6bf47d7b632bb","5aa2a9a778a055cd668ea419ea80ba6e195210eb37d47707a1a58886aa4d80f0","9e8947666e44137405fd378f3a8a0515a492e967e552406c02b991c98c78fc61","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","9e6a556cf660a94faa51f5bce6ed009b9e02373546a4c67925da909f36c039d0","69640cc2e76dad52daeb9914e6b70c5c9a5591a3a65190a2d3ea432cf0015e16","a39a4c527b7a2dc7a2661b711a534c10c76852c5ad6ae320767d3f7d2621b67d","1bb5c9857b2ee32c199dd85bc0f4c0299112485d6e5dc91428eabfdee0dbd68c",{"version":"61dd09b57a0a5cf1486c3ceb3a18ad23babfe602c323035ce3d01544c5e3e0b6","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","662661bbf9ccd869f3bca82d34234b2abdc95c657e2187c35352d42dddb24c2d","5caa645cc390a0a8d5a031072b6b4e49218c17017cd80a63bd2557b19be13c5f","4c4334eb5d8fae83416a361d787b55a5743916aed8af812a909898bc7333e709","352104835f5c468c7d8a277f2c8c02fac239a37cd2293181fe421faa153878d3","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","0953427f9c2498f71dd912fdd8a81b19cf6925de3e1ad67ab9a77b9a0f79bf0b","a4aa075328fe61190b8547e74fae18179591a67fedb2ad274c63044a00716743","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","40c6ed5dc58e1c6afa7dcd23b1697bf290cc5b1170c63d0a4dd12f52aa39291c","71d6da3b0150ecdcd16c08b3b546fe4cc7f53df642eccfeb03c813ee788fae0c","a364b4a8a015ae377052fa4fac94204d79a69d879567f444c7ceff1b7a18482d","c5ec3b97d9db756c689cd11f4a11eaa9e6077b2768e3e9b54ff727a93c03a909","bdb07038733b2d74a75ba9c381dcb92774cd6f161ee125bfa921eae7d883ccc9","ad93e960a3a07dff7394bf0c8a558006a9ff2d0725ab28fc33dec227d4cb251e",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"c14e9e86f18189c7d32b5dd03b4cf3f40bed68f0509dec06d75d41b82c065fe2","ae68a04912ee5a0f589276f9ec60b095f8c40d48128a4575b3fdd7d93806931c","d555cd63a3fc837840db192596273fdf52fb28092b0a33bec98e89a0334b3a4c","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","49daf80661034e07d919f1c716aef69324e34d18a63a282f8100f52c961b58a7","abc2748988e07e7e754b43cfcfadca4d45f3449eb4c0be503f13630a3f15f22b","4ad6a10587db7ec660fa2e80997c7ab6cb1d7addace8029be125fcdb919445d4","973c32bae7505a7114be32c978ac47b32f4abca94ead03de44b78519c4ea0fe3","d7054d4e43fe54d72ced85e9eff66e529d55a34651f7428a7d4ccb8a1841be26","4e03531bfbff3fbbae8ed7a12b15c4a0c2e7e4b12d9f6761a3ad20856d69f207","a121716f49af5386e357c739014f0b02966e83dadd33400b4d6e4faa93c1d93c","3a1e56619dbdc70df3d0eb99a617f19cd426ed4c2208ba60dd65942cb89e5d2b","9ff31228fd96fd631006122eb1aa645aad93df4fc078f1514be959ecf4ce6f8f","acab60d53e7c5787663d7fce6d632dce34b280457b20a5280e2c682681a05818","15ef1ea083efd7516753d7ab7bde8f49deb922b2452965dc65ebf960f0e70f2b","5142d4a02148657d48c42076adf272b550480e30a7f7750b2d6e763dcaecea76","fa40e0a26e33533049a69c75eafd6277497a2260522cfb5aacc217c9e0ebb636","7044c407773c0900946b7a02f3a0e7e5e79af8b0a32b14aeb419b7beedfb3fcd","3f577b52dca95891957a4061de4eff10531dc94ada3b1eef078a346b3e239df6","156cc766480c99b08c1b357b14781aa3665b24946a1fd95da381ee80f8406d67","81a5dfa457046aa78dee38e21c5139f163fce85d4df17912b9fd29d20758971c","d9a1f5c7bef755a6c156f71e606e8db419c661784931d7162b92ff55a262e663","5b51e862d89537fce5b4a84a9195fa6bc27f4e91baa49818a96e88a00c35fe9d","aa8e6ca619a515490152c8060953aa5516da223f7878e3afd68faf46df4341b8","54bc4d56bfebce6a286b789c9c080748688e993c763b5ebfa4a1f9c512e8736e","5abe4e00879b9a903ac7efb0b920a72212685d220a4a3989f520f23e27b02fe4","9a3afe435fcbcb940644b0c295a0262a1d2d90935e6374a0b28304f29825e722","c13e280d244dc0829d954089e1d0446455efdb72fb4bdc2e3f0561ffbc66c905","8dfed5c91ad36e69e6da6b7e49be929d4e19666db2b651aa839c485170a2902c","6da9e714516d081abaa435946d77c8d74dba888530412dc71601e83d2c8a512e","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e",{"version":"24ff7ac33bdb941a8cd04408a31ba15fafab9684f751e7e88234813b89712c19","affectsGlobalScope":true},{"version":"42c1b00421aa4d5f03b85a2639c1573d32bd82533f34423bbf1f5fb2b0ddc4d8","affectsGlobalScope":true},"f0cb4b3ab88193e3e51e9e2622e4c375955003f1f81239d72c5b7a95415dad3e","92450d617e92f96354d281c8ed5613fd16cacea79eb60b1e9736494b3c057e69","8a9086357fe289efb682dc925358f30b6312c7219a5ca92212857a0a79612012","92bc42ed0e2d41559513fd457ee30d834c2f0fedb9ed5004c029cbf0ad2f8bd9","6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41","2e345cb6511f4c4c60c274df6626c94f3182939034f06cdf414bfbccc584f822","b1b1adc57093310531ddf3f78b21bda16c30f7319088b0981449476a6616cff3","b6167e00019a8db27428651c58358d8cfac239107f25744e608816ed04361df7",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"0133ebdd17a823ae56861948870cde4dac18dd8818ab641039c85bbb720429e0","3a1e165b22a1cb8df82c44c9a09502fd2b33f160cd277de2cd3a055d8e5c6b27","7d7c8ef7d48a035142c07dae60545ecc0e4af4c337742760cb09726f2f8e31db","e300bf65972ac08167a72787e19d1b43c285c5424707194d0ba64422f6b02c77","1d1e6bd176eee5970968423d7e215bfd66828b6db8d54d17afec05a831322633","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","1320ee42b30487cceb6da9f230354fc34826111f76bf12f0ad76c717c12625b0","3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0","bfe1b52cf71aea9bf8815810cc5d9490fa9617313e3d3c2ee3809a28b80d0bb4","70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32","de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90","de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","6109487f86bc33b14eebb35cbc878b591328e19657d92bc6c61b667f7f9594c8","96b729b46007058fceb10567283275a023415f724af78e91cab3ac7073c19635","9a6d65d77455efaaaeff945bea30c38b8fe0922b807ba45cd23792392f1bfe76","e437d83044ba17246a861aa9691aa14223ff4a9d6f338ab1269c41c758586a88","736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50","208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71","062bd2910098fc059ba93e347649b3e126c555f7b144033d21d3f8ef63d3e39b","c9ad058b2cc9ce6dc2ed92960d6d009e8c04bef46d3f5312283debca6869f613","fda7ad096a1619fbae01b3d869cc82e29116f22be50133ac8fb08cee21279acd","9751247ee3bbcf1c63592f0f4dafb44559680b2b3e5736b7f0578c6a737d74c8","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26",{"version":"2d2482647045d334fcfce6eefa3340db2800cb2d0814e7b58d4f3b53c274d8ec","affectsGlobalScope":true},{"version":"f1e1d121f108eb57d576df44fc40e01448e0fc7fec64493b07aa852471b6a59d","affectsGlobalScope":true},{"version":"838524a3cc660f7bbb104ffa15febad659d1ef1633dac47340bfbfcbbbffdb08","affectsGlobalScope":true},{"version":"50a03e74fae4542ecfb326b34517ec2e058aee15bcb60af5b2e41c5e2db0d079","affectsGlobalScope":true},{"version":"d252bde46b7594f8f90a45d59181b08134ee8c4919ebb2ba7088ba26056bf621","affectsGlobalScope":true},{"version":"c892c9c7905dd7435264ca83ff0f3ac7f39a0937ee728acdce4b476ece7d6fd9","affectsGlobalScope":true},{"version":"1abdfe21f6b99b864965f9dc5073c49f0c0f3d5e8e1fe498fb94bd0a479d3afe","affectsGlobalScope":true},"4d737cdd77685ed65bd61d375375cae446fb0f46f711bbb3ef3f81a350212569","65455ea1b00bae7bd26d3c8c2401eb3d10401c09c55192d6f3b8b2275eda20c2","c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f","62b931417104c7cb35d0725e1869f51d52d7b18462fd58f32f846a314a42ba10","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc","c45d6f4d3a20be54e46237608f537a8d85397f87b9c3318d68ed925c2f1d0b51",{"version":"8f19251323456195ec9236df857bac3b8f97b73b540ef06ead2ceccc3884954f","affectsGlobalScope":true},"4370c91e46f6992a89e3979c50434cf932088e1b5ae6e3a5214d778634dea768",{"version":"cffd3848b7af4922d70028c805b7df5e8f0eac4a8d2410b0f55b47ca62c6c3a8","affectsGlobalScope":true},"ef6cede608fc396d0ad86d0240c40989a080c6a4c5b2ac5c84072c7e0ff2942e","30688eab034d1aa3bbe4d8f2c7f462ddaec9f30f1a38a306a4728a9a06a58b11","e03334588c63840b7054accd0b90f29c5890db6a6555ac0869a78a23297f1396","c3052485f32a96bfde75a2976c1238995522584ba464f04ff16a8a40af5e50d1","c220410b8e956fa157ce4e5e6ac871f0f433aa120c334d906ff1f5e2c7369e95","960a68ced7820108787135bdae5265d2cc4b511b7dcfd5b8f213432a8483daf1","ed3b711f533ddb3a5451f4c4bb0df3a0b95e9d0433b3b7834644dd1718d06d31","2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761","74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","30783d97bd0231ae2c4b9320043d61442a8177e81c7df826a5536b95fdd63280","67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","aec0cabbdfacf43db998d8e50ee6f1e72131d24b5018dfb84f14806717baa0a6","e32dad799d088c53cbe1da736e34cad03027d56dd2fc77d484a67100278bc4bd","3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67","9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36","4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538","e0fff9119e1a5d2fdd46345734126cd6cb99c2d98a9debf0257047fe3937cc3f","d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762","b2f006ee835f315d01c43c0f5d9e9ad78a5870b380899877b32a33078d065dbd",{"version":"3a1e422f919c70fca66e94dc641ad8d9732b3d2533ac047b8a9aaca9eea3aa10","affectsGlobalScope":true},"f7e133b20ee2669b6c0e5d7f0cd510868c57cd64b283e68c7f598e30ce9d76d2","09c4b2e2d3070239d563fc690f0cc5db04a2d9b66a23e61aef8b5274e3e9910c"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationDir":"./","declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":4,"module":99,"noFallthroughCasesInSwitch":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"target":4},"fileIdsList":[[269],[88],[50,89],[269,270,271,272,273],[269,271],[57,81],[246],[277],[278,279],[278],[281],[284],[50,276],[286,287,288,289],[290],[212,213,246,291],[213,246],[294],[50],[299],[300],[74,76],[52,53,54,55,56],[171],[159,161,162,163,164,165,166,167,168,169,170,171],[159,160,162,163,164,165,166,167,168,169,170,171],[160,161,162,163,164,165,166,167,168,169,170,171],[159,160,161,163,164,165,166,167,168,169,170,171],[159,160,161,162,164,165,166,167,168,169,170,171],[159,160,161,162,163,165,166,167,168,169,170,171],[159,160,161,162,163,164,166,167,168,169,170,171],[159,160,161,162,163,164,165,167,168,169,170,171],[159,160,161,162,163,164,165,166,168,169,170,171],[159,160,161,162,163,164,165,166,167,169,170,171],[159,160,161,162,163,164,165,166,167,168,170,171],[159,160,161,162,163,164,165,166,167,168,169,171],[159,160,161,162,163,164,165,166,167,168,169,170],[215,235,246,307,308],[215,229,246],[243,244],[212,213,220,229],[204,212,220],[236],[208,213,221],[229],[210,212,220],[212],[212,214,229,235],[213],[220,229,235],[212,213,215,220,229,232,235],[215,232,235],[245],[235],[210,212,229],[202],[234],[227,236,238],[220],[201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242],[226],[212,214,229,235,238],[316],[316,317,318,319,320,321],[282,315],[315,316],[50,296,328],[50,330],[50,332],[332,333,334,335,336],[46,47,48,49],[344],[343],[246,350,351,352,353,354,355,356,357,358,359,360],[349,350,359],[350,359],[341,349,350,359],[350],[208,349,359],[349,350,351,352,353,354,355,356,357,358,360],[208,246,343,346,347,348,361],[364],[70,71],[70,71,72,73],[75],[48,50,80,81,84],[48,50],[48,50,80,81,84,107],[50,81,94],[50,107],[50,79,80,112,115],[50,94],[50,79,80,113,114],[50,80],[50,90],[50,94,98],[50,99],[50,79,99],[50,99,102],[99,100,101,103],[57,79,84,85,86,87,90,91,92,93,98,104,105,106,107,108,109,110,111,115,116,117,118,119,120,121,124,125,130,131,132,133,134,135,136,137,138,139,140,141],[50,81,84,99,122],[123],[50,126],[126,127,128,129],[48,50,81],[50,82],[82,83],[95],[95,96,97],[48,50,51,79,94,142,143,153,157,172,179,182,183,184,189,190,199,200,252,254],[48,50,51,79,155,179,182,183,198],[48,50,51,94,142,150,153,157,179,184],[48,51],[51,142],[48,50,51,79,142,153,183,253],[48,50,51,79,94,142,143,149,179,180,182,261,262],[48,50,51,94,142,150,183],[48,50,51,142,181,182,183,260],[48,50,51,79,80,142,156,181,182,259],[51,147],[50,51,147,148,172,179],[51,148,260,261,262,263],[48,50,51,155],[51],[51,153],[50,51,94,150,153],[51,149,154,156,157],[48,50,51,188],[48,50,51,142,153,157,158,179,185,186,187],[48,50,51],[48,50,51,94,150,183],[48,50,51,79,94,142,150],[51,185,186,187,188,189],[48,50,51,79,142,179,183,200,247,250,251],[48,50,51,94,142,150],[51,79,179,249],[51,248],[51,143,158,196,199,253,254,255,256,257,258,264,265,267],[48,50,51,142,183],[50,51,94,142,150,153,155,157,190,266],[48,50,51,155,179],[51,155,179,191,192,193,194,195],[51,196,197],[48,50,51,155,183,196],[48,50,51,142,155,179,198,256],[48],[151,152],[173],[174],[176],[173,175,176,177,178],[144],[144,145,146],[62],[77],[58,59,60,61,62,63,64,65,66,67,68,69,78]],"referencedMap":[[271,1],[89,2],[150,3],[274,4],[270,1],[272,5],[273,1],[275,6],[276,7],[278,8],[280,9],[279,10],[282,11],[285,12],[284,13],[290,14],[287,15],[292,16],[293,17],[295,18],[296,19],[300,20],[301,21],[77,22],[57,23],[247,7],[303,24],[259,24],[304,24],[172,24],[160,25],[161,26],[159,27],[162,28],[163,29],[164,30],[165,31],[166,32],[167,33],[168,34],[169,35],[170,36],[171,37],[305,18],[309,38],[307,39],[245,40],[204,41],[205,42],[206,43],[207,44],[208,45],[209,46],[211,47],[212,47],[213,48],[214,49],[215,50],[216,51],[217,52],[246,53],[218,47],[219,54],[220,55],[223,56],[224,57],[227,47],[228,58],[229,47],[232,59],[243,60],[234,59],[235,61],[237,45],[239,62],[240,45],[311,47],[317,63],[318,63],[319,63],[322,64],[316,65],[315,63],[320,63],[321,66],[112,19],[327,19],[329,67],[330,68],[331,19],[333,69],[335,19],[332,19],[334,69],[337,70],[114,19],[113,19],[50,71],[51,19],[338,7],[345,72],[347,73],[361,74],[360,75],[351,76],[352,77],[353,77],[354,76],[355,76],[356,76],[357,78],[350,79],[358,75],[359,80],[362,81],[365,82],[72,83],[74,84],[73,83],[344,73],[76,85],[85,86],[86,87],[87,19],[90,3],[91,87],[92,19],[93,19],[106,19],[105,87],[108,88],[109,89],[110,90],[111,19],[116,91],[118,92],[115,93],[119,19],[120,19],[121,19],[125,19],[131,19],[132,19],[133,19],[107,19],[134,19],[135,94],[136,19],[138,19],[139,19],[140,95],[141,19],[99,96],[100,97],[102,98],[101,97],[103,99],[104,100],[142,101],[123,102],[122,97],[124,103],[127,104],[126,3],[128,19],[129,19],[130,105],[82,106],[83,107],[84,108],[96,109],[95,19],[97,109],[98,110],[255,111],[199,112],[253,113],[181,114],[143,115],[254,116],[182,114],[263,117],[262,118],[261,119],[260,120],[148,121],[180,122],[264,123],[156,124],[149,125],[157,126],[154,127],[158,128],[189,129],[188,130],[185,131],[187,132],[186,133],[265,134],[251,125],[252,135],[200,136],[250,137],[249,138],[248,125],[268,139],[190,125],[266,140],[267,141],[197,142],[196,143],[198,144],[194,125],[192,125],[195,125],[191,125],[193,125],[256,145],[257,146],[258,125],[94,2],[152,147],[153,148],[174,149],[175,150],[177,151],[179,152],[145,153],[146,153],[147,154],[63,155],[78,156],[79,157]],"exportedModulesMap":[[271,1],[89,2],[150,3],[274,4],[270,1],[272,5],[273,1],[275,6],[276,7],[278,8],[280,9],[279,10],[282,11],[285,12],[284,13],[290,14],[287,15],[292,16],[293,17],[295,18],[296,19],[300,20],[301,21],[77,22],[57,23],[247,7],[303,24],[259,24],[304,24],[172,24],[160,25],[161,26],[159,27],[162,28],[163,29],[164,30],[165,31],[166,32],[167,33],[168,34],[169,35],[170,36],[171,37],[305,18],[309,38],[307,39],[245,40],[204,41],[205,42],[206,43],[207,44],[208,45],[209,46],[211,47],[212,47],[213,48],[214,49],[215,50],[216,51],[217,52],[246,53],[218,47],[219,54],[220,55],[223,56],[224,57],[227,47],[228,58],[229,47],[232,59],[243,60],[234,59],[235,61],[237,45],[239,62],[240,45],[311,47],[317,63],[318,63],[319,63],[322,64],[316,65],[315,63],[320,63],[321,66],[112,19],[327,19],[329,67],[330,68],[331,19],[333,69],[335,19],[332,19],[334,69],[337,70],[114,19],[113,19],[50,71],[51,19],[338,7],[345,72],[347,73],[361,74],[360,75],[351,76],[352,77],[353,77],[354,76],[355,76],[356,76],[357,78],[350,79],[358,75],[359,80],[362,81],[365,82],[72,83],[74,84],[73,83],[344,73],[76,85],[85,86],[86,87],[87,19],[90,3],[91,87],[92,19],[93,19],[106,19],[105,87],[108,88],[109,89],[110,90],[111,19],[116,91],[118,92],[115,93],[119,19],[120,19],[121,19],[125,19],[131,19],[132,19],[133,19],[107,19],[134,19],[135,94],[136,19],[138,19],[139,19],[140,95],[141,19],[99,96],[100,97],[102,98],[101,97],[103,99],[104,100],[142,101],[123,102],[122,97],[124,103],[127,104],[126,3],[128,19],[129,19],[130,105],[82,106],[83,107],[84,108],[96,109],[95,19],[97,109],[98,110],[255,111],[199,112],[253,113],[181,114],[143,115],[254,116],[182,114],[263,117],[262,118],[261,119],[260,120],[148,121],[180,122],[264,123],[156,124],[149,125],[157,126],[154,127],[158,128],[189,129],[188,130],[185,131],[187,132],[186,133],[265,134],[251,125],[252,135],[200,136],[250,137],[249,138],[248,125],[268,139],[190,125],[266,140],[267,141],[197,142],[196,143],[198,144],[194,125],[192,125],[195,125],[191,125],[193,125],[256,145],[257,146],[258,125],[94,2],[152,147],[153,148],[174,149],[175,150],[177,151],[179,152],[145,153],[146,153],[147,154],[63,155],[78,156],[79,157]],"semanticDiagnosticsPerFile":[271,269,88,89,150,274,270,272,273,275,276,278,280,279,277,282,283,285,284,286,290,287,289,292,293,295,296,297,298,299,300,301,77,53,52,57,55,54,288,302,247,303,259,304,172,160,161,159,162,163,164,165,166,167,168,169,170,171,305,80,291,306,281,308,309,307,244,202,245,203,204,205,206,207,208,209,210,211,212,213,214,201,241,215,216,217,246,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,243,234,235,236,237,238,242,239,240,310,311,312,313,314,317,318,319,322,316,315,320,321,323,324,48,325,326,112,327,329,330,331,333,335,332,334,336,337,114,113,46,50,51,338,339,49,340,56,341,342,345,346,347,294,363,361,360,351,352,353,354,355,356,357,350,358,359,349,362,364,365,348,183,47,70,72,74,73,71,184,155,81,344,76,75,328,343,10,11,13,12,2,14,15,16,17,18,19,20,21,3,4,25,22,23,24,26,27,28,5,29,30,31,32,6,33,34,35,36,7,41,37,38,39,40,8,42,43,44,1,9,45,85,86,87,90,91,92,93,106,105,108,109,110,111,117,116,118,115,119,120,121,125,131,132,133,107,134,135,136,137,138,139,140,141,99,100,102,101,103,104,142,123,122,124,127,126,128,129,130,82,83,84,96,95,97,98,255,199,253,181,143,254,182,263,262,261,260,148,180,264,156,149,157,154,158,189,188,185,187,186,265,251,252,200,250,249,248,268,190,266,267,197,196,198,194,192,195,191,193,256,257,258,94,152,151,153,174,175,177,176,173,178,179,144,145,146,147,58,59,61,60,68,63,62,64,78,65,67,66,69,79]},"version":"4.3.2"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/console",
3
- "version": "0.7.2-beta.1+14c9ab6",
3
+ "version": "0.7.3-beta.4+08ae91d",
4
4
  "description": "Deephaven Console",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -34,10 +34,10 @@
34
34
  "start": "cross-env NODE_ENV=development npm run watch"
35
35
  },
36
36
  "dependencies": {
37
- "@deephaven/icons": "^0.7.2-beta.1+14c9ab6",
38
- "@deephaven/jsapi-shim": "^0.7.2-beta.1+14c9ab6",
39
- "@deephaven/storage": "^0.7.2-beta.1+14c9ab6",
40
- "@deephaven/utils": "^0.7.2-beta.1+14c9ab6",
37
+ "@deephaven/icons": "^0.7.3-beta.4+08ae91d",
38
+ "@deephaven/jsapi-shim": "^0.7.3-beta.4+08ae91d",
39
+ "@deephaven/storage": "^0.7.3-beta.4+08ae91d",
40
+ "@deephaven/utils": "^0.7.3-beta.4+08ae91d",
41
41
  "@fortawesome/react-fontawesome": "^0.1.12",
42
42
  "classnames": "^2.3.1",
43
43
  "jszip": "3.2.2",
@@ -58,10 +58,10 @@
58
58
  },
59
59
  "devDependencies": {
60
60
  "@babel/cli": "^7.16.0",
61
- "@deephaven/components": "^0.7.2-beta.1+14c9ab6",
62
- "@deephaven/log": "^0.7.2-beta.1+14c9ab6",
63
- "@deephaven/mocks": "^0.7.2-beta.1+14c9ab6",
64
- "@deephaven/tsconfig": "^0.7.2-beta.1+14c9ab6",
61
+ "@deephaven/components": "^0.7.3-beta.4+08ae91d",
62
+ "@deephaven/log": "^0.7.3-beta.4+08ae91d",
63
+ "@deephaven/mocks": "^0.7.3-beta.4+08ae91d",
64
+ "@deephaven/tsconfig": "^0.7.3-beta.4+08ae91d",
65
65
  "@types/react": "^16.14.8",
66
66
  "@types/react-dom": "^16.9.13",
67
67
  "cross-env": "^7.0.2",
@@ -82,5 +82,5 @@
82
82
  "publishConfig": {
83
83
  "access": "public"
84
84
  },
85
- "gitHead": "14c9ab60731f6500bbf7fe71790db215b34b160f"
85
+ "gitHead": "08ae91d3ec2d610266be8c169c597c1e8d9f6a77"
86
86
  }