@mongosh/browser-repl 2.3.5 → 2.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -31,14 +31,20 @@ const runtime = new IframeRuntime(serviceProvider);
31
31
  Shell is a React component with the following properties:
32
32
 
33
33
  - `runtime: Runtime`: The runtime used to evaluate code.
34
- - `onOutputChanged?: (output: readonly ShellOutputEntry[]) => void`: A function called each time the output changes with an array of `ShellOutputEntryes`.
35
- - `onHistoryChanged?: (history: readonly string[]) => void`: A function called each time the history changes with an array of history entries ordered from the most recent to the oldest entry.
34
+ - `onOutputChanged?: (output: ShellOutputEntry[]) => void`: A function called each time the output changes with an array of `ShellOutputEntries`.
35
+ - `onHistoryChanged?: (history: string[]) => void`: A function called each time the history changes with an array of history entries ordered from the most recent to the oldest entry.
36
+ - `onEditorChanged?: (editor: EditorRef | null) => void`: A function called each time the editor ref changes. Can be used to call editor methods.
37
+ - `onOperationStarted?: () => void`: A function called when an operation has begun.
38
+ - `onOperationEnd?: () => void`: A function called when an operation has completed (both error and success).
36
39
  - `redactInfo?: boolean`: If set, the shell will omit or redact entries containing sensitive info from history. Defaults to `false`.
37
40
  - `maxOutputLength?: number`: The maxiumum number of lines to keep in the output. Defaults to `1000`.
38
41
  - `maxHistoryLength?: number`: The maxiumum number of lines to keep in the history. Defaults to `1000`.
39
- - `initialOutput?: readonly ShellOutputEntry[]`: An array of entries to be displayed in the output area. Can be used to restore the output between sessions, or to setup a greeting message. **Note**: new entries will not be appended to the array.
40
- - `initialHistory?: readonly string[]`: An array of history entries to prepopulate the history.
42
+ - `initialEvaluate?: string|string[]`: A set of input strings to evaluate right after shell is mounted.
43
+ - `initialText?: string`: The initial text for the input field.
44
+ - `output?: ShellOutputEntry[]`: An array of entries to be displayed in the output area. Can be used to restore the output between sessions, or to setup a greeting message. **Note**: new entries will not be appended to the array.
45
+ - `history?: readonly string[]`: An array of history entries to prepopulate the history.
41
46
  Can be used to restore the history between sessions. Entries must be ordered from the most recent to the oldest. Note: new entries will not be appended to the array.
47
+ - `isOperationInProgress?: boolean`: Can be used to restore the value between sessions.
42
48
 
43
49
  ### `ShellOutputEntry`
44
50
 
@@ -53,10 +53,10 @@ class PasswordPrompt extends react_1.Component {
53
53
  };
54
54
  }
55
55
  render() {
56
- return (react_1.default.createElement("label", { id: "password-promt-label", className: passwordPrompt },
56
+ return (react_1.default.createElement("label", { id: "password-prompt-label", className: passwordPrompt },
57
57
  this.props.prompt,
58
58
  ":\u00A0",
59
- react_1.default.createElement(compass_components_1.TextInput, { "aria-labelledby": "password-promt-label", type: "password", onKeyDown: this.onKeyDown, className: passwordPropmtInputStyles, sizeVariant: "xsmall", autoFocus: true })));
59
+ react_1.default.createElement(compass_components_1.TextInput, { "data-testid": "password-prompt", "aria-labelledby": "password-prompt-label", type: "password", onKeyDown: this.onKeyDown, className: passwordPropmtInputStyles, sizeVariant: "xsmall", autoFocus: true })));
60
60
  }
61
61
  }
62
62
  exports.PasswordPrompt = PasswordPrompt;
@@ -1 +1 @@
1
- {"version":3,"file":"password-prompt.js","sourceRoot":"","sources":["../../src/components/password-prompt.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAyC;AACzC,uEAA8E;AAE9E,MAAM,cAAc,GAAG,IAAA,wBAAG,EAAC;IACzB,WAAW,EAAE,EAAE;IACf,SAAS,EAAE;QACT,UAAU,EAAE,iCAAY,CAAC,IAAI;KAC9B;CACF,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,IAAA,wBAAG,EAAC;IACpC,OAAO,EAAE,cAAc;CACxB,CAAC,CAAC;AAQH,MAAa,cAAe,SAAQ,iBAA8B;IAChE,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAGf,cAAS,GAAG,CAAC,EAAyC,EAAQ,EAAE;YAC9D,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC;gBACf,KAAK,OAAO;oBACV,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,EAAE,CAAC,MAA2B,CAAC,KAAK,CAAC,CAAC;oBAC3D,MAAM;gBACR,KAAK,KAAK,CAAC;gBACX,KAAK,QAAQ;oBACX,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACtB,MAAM;gBACR;oBACE,MAAM;YACV,CAAC;QACH,CAAC,CAAC;IAdF,CAAC;IAgBD,MAAM;QACJ,OAAO,CACL,yCAAO,EAAE,EAAC,sBAAsB,EAAC,SAAS,EAAE,cAAc;YACvD,IAAI,CAAC,KAAK,CAAC,MAAM;;YAClB,8BAAC,8BAAS,uBACQ,sBAAsB,EACtC,IAAI,EAAC,UAAU,EACf,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,yBAAyB,EACpC,WAAW,EAAC,QAAQ,EACpB,SAAS,SACE,CACP,CACT,CAAC;IACJ,CAAC;CACF;AAlCD,wCAkCC"}
1
+ {"version":3,"file":"password-prompt.js","sourceRoot":"","sources":["../../src/components/password-prompt.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAyC;AACzC,uEAA8E;AAE9E,MAAM,cAAc,GAAG,IAAA,wBAAG,EAAC;IACzB,WAAW,EAAE,EAAE;IACf,SAAS,EAAE;QACT,UAAU,EAAE,iCAAY,CAAC,IAAI;KAC9B;CACF,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,IAAA,wBAAG,EAAC;IACpC,OAAO,EAAE,cAAc;CACxB,CAAC,CAAC;AAQH,MAAa,cAAe,SAAQ,iBAA8B;IAChE,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAGf,cAAS,GAAG,CAAC,EAAyC,EAAQ,EAAE;YAC9D,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC;gBACf,KAAK,OAAO;oBACV,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,EAAE,CAAC,MAA2B,CAAC,KAAK,CAAC,CAAC;oBAC3D,MAAM;gBACR,KAAK,KAAK,CAAC;gBACX,KAAK,QAAQ;oBACX,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACtB,MAAM;gBACR;oBACE,MAAM;YACV,CAAC;QACH,CAAC,CAAC;IAdF,CAAC;IAgBD,MAAM;QACJ,OAAO,CACL,yCAAO,EAAE,EAAC,uBAAuB,EAAC,SAAS,EAAE,cAAc;YACxD,IAAI,CAAC,KAAK,CAAC,MAAM;;YAClB,8BAAC,8BAAS,mBACI,iBAAiB,qBACb,uBAAuB,EACvC,IAAI,EAAC,UAAU,EACf,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,yBAAyB,EACpC,WAAW,EAAC,QAAQ,EACpB,SAAS,SACE,CACP,CACT,CAAC;IACJ,CAAC;CACF;AAnCD,wCAmCC"}
@@ -71,10 +71,11 @@ class ShellInput extends react_1.Component {
71
71
  });
72
72
  };
73
73
  this.onEnter = async () => {
74
+ const value = this.state.currentValue;
75
+ this.setState({ currentValue: '' });
74
76
  if (this.props.onInput) {
75
- await this.props.onInput(this.state.currentValue);
77
+ await this.props.onInput(value);
76
78
  }
77
- this.setState({ currentValue: '' });
78
79
  };
79
80
  this.initializeHistoryNavigation();
80
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shell-input.js","sourceRoot":"","sources":["../../src/components/shell-input.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAyC;AACzC,uEAA2D;AAG3D,qCAAkC;AAClC,kEAAyC;AACzC,2DAAsD;AAEtD,MAAM,UAAU,GAAG,IAAA,wBAAG,EAAC;IACrB,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,MAAM;CAClB,CAAC,CAAC;AAoBH,MAAa,UAAW,SAAQ,iBAA2C;IASzE,YAAY,KAAsB;;QAChC,KAAK,CAAC,KAAK,CAAC,CAAC;QATN,UAAK,GAAoB;YAChC,YAAY,EAAE,MAAA,IAAI,CAAC,KAAK,CAAC,WAAW,mCAAI,EAAE;YAC1C,QAAQ,EAAE,KAAK;SAChB,CAAC;QAEM,6BAAwB,GAAa,EAAE,CAAC;QACxC,2BAAsB,GAAG,CAAC,CAAC;QA0B3B,aAAQ,GAAG,CAAC,KAAa,EAAQ,EAAE;;YACzC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,YAAY,mDAAG,KAAK,CAAC,CAAC;YACjC,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC;QAgBM,gBAAW,GAAG,GAAqB,EAAE;YAC3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,IACE,IAAI,CAAC,sBAAsB;oBAC3B,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC,EACxC,CAAC;oBACD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAE9B,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEM,gBAAW,GAAG,GAAqB,EAAE;YAC3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,IAAI,IAAI,CAAC,sBAAsB,IAAI,CAAC,EAAE,CAAC;oBACrC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAE9B,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEM,YAAO,GAAG,KAAK,IAAmB,EAAE;YAC1C,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACpD,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC;QA1EA,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAED,kBAAkB,CAAC,SAA0B;QAC3C,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,IAAI,CAAC,sBAAsB,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAC7D,CAAC;IACH,CAAC;IAEO,2BAA2B;QACjC,IAAI,CAAC,wBAAwB,GAAG;YAC9B,IAAI,CAAC,KAAK,CAAC,YAAY;YACvB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;SAC9B,CAAC;QAEF,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;IAClC,CAAC;IAOO,qCAAqC,CAC3C,EAA8B;QAE9B,MAAM,KAAK,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAEzE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE;YAC1C,EAAE,CAAC,IAAI,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC;IAqCD,MAAM;QACJ,IAAI,MAAmB,CAAC;QACxB,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YACnC,MAAM,GAAG,8BAAC,sBAAW,OAAG,CAAC;QAC3B,CAAC;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,GAAG,CACP;oBACE,4CAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAQ;oBACzC,8BAAC,yBAAI,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,GAAI,CACxC,CACJ,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,4CAAO,OAAO,CAAQ,CAAC;YAClC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,8BAAC,yBAAI,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,GAAI,CAAC;QACrD,CAAC;QAED,MAAM,MAAM,GAAG,CACb,8BAAC,eAAM,IACL,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EACvC,oBAAoB,EAAE,IAAI,CAAC,WAAW,EACtC,qBAAqB,EAAE,IAAI,CAAC,WAAW,EACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EACzC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAC9B,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB,EACnD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAC7B,CACH,CAAC;QAEF,OAAO,CACL,8BAAC,6BAAY,IACX,SAAS,EAAE,UAAU,EACrB,IAAI,EAAE,MAAM,iBACA,aAAa,IAExB,MAAM,CACM,CAChB,CAAC;IACJ,CAAC;CACF;AApID,gCAoIC"}
1
+ {"version":3,"file":"shell-input.js","sourceRoot":"","sources":["../../src/components/shell-input.tsx"],"names":[],"mappings":"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"}
@@ -1,69 +1,25 @@
1
- import React, { Component } from 'react';
1
+ import React from 'react';
2
+ import type { EditorRef } from '@mongodb-js/compass-editor';
2
3
  import type { Runtime } from '@mongosh/browser-runtime-core';
3
4
  import type { WorkerRuntime } from '@mongosh/node-runtime-worker-thread';
4
5
  import type { ShellOutputEntry } from './shell-output';
5
6
  interface ShellProps {
6
7
  runtime: Runtime | WorkerRuntime;
7
- onOutputChanged: (output: readonly ShellOutputEntry[]) => void;
8
- onHistoryChanged: (history: readonly string[]) => void;
9
- onInputChanged?: (input: string) => void;
8
+ className?: string;
10
9
  redactInfo?: boolean;
11
- maxOutputLength: number;
12
- maxHistoryLength: number;
13
- onOperationStarted: () => void;
14
- onOperationEnd: () => void;
15
- initialInput?: string;
10
+ maxOutputLength?: number;
11
+ maxHistoryLength?: number;
12
+ onInputChanged?: (input: string) => void;
13
+ onOutputChanged?: (output: ShellOutputEntry[]) => void;
14
+ onHistoryChanged?: (history: string[]) => void;
15
+ onOperationStarted?: () => void;
16
+ onOperationEnd?: () => void;
16
17
  initialEvaluate?: string | string[];
17
- initialOutput: readonly ShellOutputEntry[];
18
- initialHistory: readonly string[];
19
- darkMode?: boolean;
20
- className?: string;
21
- }
22
- interface ShellState {
23
- operationInProgress: boolean;
24
- output: readonly ShellOutputEntry[];
25
- history: readonly string[];
26
- passwordPrompt: string;
27
- shellPrompt: string;
28
- }
29
- export declare class _Shell extends Component<ShellProps, ShellState> {
30
- static defaultProps: {
31
- onHistoryChanged: () => void;
32
- onOperationStarted: () => void;
33
- onOperationEnd: () => void;
34
- onOutputChanged: () => void;
35
- maxOutputLength: number;
36
- maxHistoryLength: number;
37
- initialInput: string;
38
- initialOutput: never[];
39
- initialHistory: never[];
40
- };
41
- private shellInputElement;
42
- private editor?;
43
- private onFinishPasswordPrompt;
44
- private onCancelPasswordPrompt;
45
- readonly state: ShellState;
46
- componentDidMount(): void;
47
- componentDidUpdate(): void;
48
- private evaluate;
49
- private updateShellPrompt;
50
- private addEntryToHistory;
51
- private addEntriesToOutput;
52
- onClearCommand: () => void;
53
- onPrint: (result: {
54
- type: string | null;
55
- printable: any;
56
- }[]) => void;
57
- onPrompt: (question: string, type: 'password' | 'yesno') => Promise<string>;
58
- private onInput;
59
- private appendEmptyInput;
60
- private scrollToBottom;
61
- private onShellClicked;
62
- private setEditor;
63
- focusEditor: () => void;
64
- private onSigInt;
65
- renderInput(): JSX.Element;
66
- render(): JSX.Element;
18
+ initialText?: string;
19
+ output?: ShellOutputEntry[];
20
+ history?: string[];
21
+ isOperationInProgress?: boolean;
22
+ onEditorChanged?: (editor: EditorRef | null) => void;
67
23
  }
68
- export declare const Shell: React.ForwardRefExoticComponent<Omit<ShellProps, "darkMode" | "onOutputChanged" | "onHistoryChanged" | "maxOutputLength" | "maxHistoryLength" | "onOperationStarted" | "onOperationEnd" | "initialInput" | "initialOutput" | "initialHistory"> & Partial<Pick<ShellProps, "onOutputChanged" | "onHistoryChanged" | "maxOutputLength" | "maxHistoryLength" | "onOperationStarted" | "onOperationEnd" | "initialInput" | "initialOutput" | "initialHistory">> & React.RefAttributes<_Shell>>;
24
+ export declare const Shell: React.ForwardRefExoticComponent<ShellProps & React.RefAttributes<EditorRef | null>>;
69
25
  export {};
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.Shell = exports._Shell = void 0;
26
+ exports.Shell = void 0;
27
27
  const react_1 = __importStar(require("react"));
28
28
  const compass_components_1 = require("@mongodb-js/compass-components");
29
29
  const history_1 = require("@mongosh/history");
@@ -66,160 +66,121 @@ const shellContainerDarkModeStyles = (0, compass_components_1.css)({
66
66
  backgroundColor: compass_components_1.palette.gray.dark4,
67
67
  color: compass_components_1.palette.gray.light3,
68
68
  });
69
- const noop = () => {
70
- };
71
69
  const normalizeInitialEvaluate = (initialEvaluate) => {
70
+ if (!initialEvaluate) {
71
+ return [];
72
+ }
72
73
  return (Array.isArray(initialEvaluate) ? initialEvaluate : [initialEvaluate]).filter((line) => {
73
74
  return !!line;
74
75
  });
75
76
  };
76
- const isInitialEvaluateEmpty = (initialEvaluate) => {
77
- return (!initialEvaluate || normalizeInitialEvaluate(initialEvaluate).length === 0);
77
+ const noop = () => {
78
78
  };
79
- class _Shell extends react_1.Component {
80
- constructor() {
81
- super(...arguments);
82
- this.shellInputElement = null;
83
- this.editor = null;
84
- this.onFinishPasswordPrompt = noop;
85
- this.onCancelPasswordPrompt = noop;
86
- this.state = {
87
- operationInProgress: !isInitialEvaluateEmpty(this.props.initialEvaluate),
88
- output: this.props.initialOutput.slice(-this.props.maxOutputLength),
89
- history: this.props.initialHistory.slice(0, this.props.maxHistoryLength),
90
- passwordPrompt: '',
91
- shellPrompt: '>',
92
- };
93
- this.evaluate = async (code) => {
94
- let outputLine;
95
- try {
96
- this.props.onOperationStarted();
97
- this.props.runtime.setEvaluationListener(this);
98
- const result = await this.props.runtime.evaluate(code);
99
- outputLine = {
100
- format: 'output',
101
- type: result.type,
102
- value: result.printable,
103
- };
104
- }
105
- catch (error) {
106
- outputLine = {
107
- format: 'error',
108
- value: error,
109
- };
110
- }
111
- finally {
112
- await this.updateShellPrompt();
113
- this.props.onOperationEnd();
114
- }
115
- return outputLine;
116
- };
117
- this.onClearCommand = () => {
118
- const output = [];
119
- Object.freeze(output);
120
- this.setState({ output });
121
- this.props.onOutputChanged(output);
122
- };
123
- this.onPrint = (result) => {
124
- const output = this.addEntriesToOutput(result.map((entry) => ({
125
- format: 'output',
126
- type: entry.type,
127
- value: entry.printable,
128
- })));
129
- this.setState({ output });
130
- this.props.onOutputChanged(output);
79
+ const capLengthEnd = (elements, maxLength) => {
80
+ elements.splice(0, elements.length - maxLength);
81
+ };
82
+ const capLengthStart = (elements, maxLength) => {
83
+ elements.splice(maxLength);
84
+ };
85
+ const _Shell = ({ runtime, className, redactInfo, maxOutputLength = 1000, maxHistoryLength = 1000, onInputChanged, onOutputChanged, onHistoryChanged, onOperationStarted, onOperationEnd, initialEvaluate, initialText, output, history, isOperationInProgress = false, }, ref) => {
86
+ const darkMode = (0, compass_components_1.useDarkMode)();
87
+ const editorRef = (0, react_1.useRef)(null);
88
+ const shellInputContainerRef = (0, react_1.useRef)(null);
89
+ const initialEvaluateRef = (0, react_1.useRef)(initialEvaluate);
90
+ const outputRef = (0, react_1.useRef)(output);
91
+ const historyRef = (0, react_1.useRef)(history);
92
+ (0, react_1.useImperativeHandle)(ref, () => {
93
+ return {
94
+ foldAll() {
95
+ var _a, _b;
96
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.foldAll()) !== null && _b !== void 0 ? _b : false;
97
+ },
98
+ unfoldAll() {
99
+ var _a, _b;
100
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.unfoldAll()) !== null && _b !== void 0 ? _b : false;
101
+ },
102
+ copyAll() {
103
+ var _a, _b;
104
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.copyAll()) !== null && _b !== void 0 ? _b : false;
105
+ },
106
+ prettify() {
107
+ var _a, _b;
108
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.prettify()) !== null && _b !== void 0 ? _b : false;
109
+ },
110
+ focus() {
111
+ var _a, _b;
112
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.focus()) !== null && _b !== void 0 ? _b : false;
113
+ },
114
+ applySnippet(template) {
115
+ var _a, _b;
116
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.applySnippet(template)) !== null && _b !== void 0 ? _b : false;
117
+ },
118
+ get editor() {
119
+ var _a, _b;
120
+ return (_b = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.editor) !== null && _b !== void 0 ? _b : null;
121
+ },
131
122
  };
132
- this.onPrompt = (question, type) => {
133
- if (type !== 'password') {
134
- return Promise.reject(new Error('yes/no prompts not implemented yet'));
135
- }
136
- const reset = () => {
137
- this.onFinishPasswordPrompt = noop;
138
- this.onCancelPasswordPrompt = noop;
139
- this.setState({ passwordPrompt: '' });
140
- setTimeout(this.focusEditor, 1);
141
- };
142
- const ret = new Promise((resolve, reject) => {
143
- this.onFinishPasswordPrompt = (result) => {
144
- reset();
145
- resolve(result);
146
- };
147
- this.onCancelPasswordPrompt = () => {
148
- reset();
149
- reject(new Error('Canceled by user'));
123
+ }, []);
124
+ const [passwordPrompt, setPasswordPrompt] = (0, react_1.useState)('');
125
+ const [shellPrompt, setShellPrompt] = (0, react_1.useState)('>');
126
+ const [onFinishPasswordPrompt, setOnFinishPasswordPrompt] = (0, react_1.useState)(() => noop);
127
+ const [onCancelPasswordPrompt, setOnCancelPasswordPrompt] = (0, react_1.useState)(() => noop);
128
+ const focusEditor = (0, react_1.useCallback)(() => {
129
+ var _a;
130
+ (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.focus();
131
+ }, [editorRef]);
132
+ const listener = (0, react_1.useMemo)(() => {
133
+ return {
134
+ onPrint: (result) => {
135
+ var _a;
136
+ const newOutput = [
137
+ ...((_a = outputRef.current) !== null && _a !== void 0 ? _a : []),
138
+ ...result.map((entry) => ({
139
+ format: 'output',
140
+ type: entry.type,
141
+ value: entry.printable,
142
+ })),
143
+ ];
144
+ capLengthEnd(newOutput, maxOutputLength);
145
+ outputRef.current = newOutput;
146
+ onOutputChanged === null || onOutputChanged === void 0 ? void 0 : onOutputChanged(newOutput);
147
+ },
148
+ onPrompt: async (question, type) => {
149
+ if (type !== 'password') {
150
+ throw new Error('yes/no prompts not implemented yet');
151
+ }
152
+ const reset = () => {
153
+ setOnFinishPasswordPrompt(() => noop);
154
+ setOnCancelPasswordPrompt(() => noop);
155
+ setPasswordPrompt('');
156
+ setTimeout(focusEditor, 1);
150
157
  };
151
- });
152
- this.setState({ passwordPrompt: question });
153
- return ret;
154
- };
155
- this.onInput = async (code) => {
156
- if (!code || code.trim() === '') {
157
- this.appendEmptyInput();
158
- return;
159
- }
160
- const inputLine = {
161
- format: 'input',
162
- value: code,
163
- };
164
- let output = this.addEntriesToOutput([inputLine]);
165
- this.setState({
166
- operationInProgress: true,
167
- output,
168
- });
169
- this.props.onOutputChanged(output);
170
- const outputLine = await this.evaluate(code);
171
- output = this.addEntriesToOutput([outputLine]);
172
- const history = this.addEntryToHistory(code);
173
- this.setState({
174
- operationInProgress: false,
175
- output,
176
- history,
177
- });
178
- this.props.onOutputChanged(output);
179
- this.props.onHistoryChanged(history);
180
- };
181
- this.onShellClicked = (event) => {
182
- if (event.currentTarget === event.target) {
183
- this.focusEditor();
184
- }
185
- };
186
- this.setEditor = (editor) => {
187
- this.editor = editor;
188
- };
189
- this.focusEditor = () => {
190
- var _a;
191
- (_a = this.editor) === null || _a === void 0 ? void 0 : _a.focus();
192
- };
193
- this.onSigInt = () => {
194
- if (this.state.operationInProgress &&
195
- this.props.runtime.interrupt) {
196
- return this.props.runtime.interrupt();
197
- }
198
- return Promise.resolve(false);
158
+ const ret = new Promise((resolve, reject) => {
159
+ setOnFinishPasswordPrompt(() => (result) => {
160
+ reset();
161
+ resolve(result);
162
+ });
163
+ setOnCancelPasswordPrompt(() => () => {
164
+ reset();
165
+ reject(new Error('Canceled by user'));
166
+ });
167
+ });
168
+ setPasswordPrompt(question);
169
+ return ret;
170
+ },
171
+ onClearCommand: () => {
172
+ outputRef.current = [];
173
+ onOutputChanged === null || onOutputChanged === void 0 ? void 0 : onOutputChanged([]);
174
+ },
199
175
  };
200
- }
201
- componentDidMount() {
202
- let evalLines = [];
203
- if (this.props.initialEvaluate) {
204
- evalLines = normalizeInitialEvaluate(this.props.initialEvaluate);
205
- }
206
- this.scrollToBottom();
207
- void this.updateShellPrompt().then(async () => {
208
- for (const input of evalLines) {
209
- await this.onInput(input);
210
- }
211
- });
212
- }
213
- componentDidUpdate() {
214
- this.scrollToBottom();
215
- }
216
- async updateShellPrompt() {
176
+ }, [focusEditor, maxOutputLength, onOutputChanged]);
177
+ const updateShellPrompt = (0, react_1.useCallback)(async () => {
217
178
  var _a;
218
- let shellPrompt = '>';
179
+ let newShellPrompt = '>';
219
180
  let hasCustomPrompt = false;
220
181
  try {
221
- this.props.runtime.setEvaluationListener(this);
222
- const promptResult = await this.props.runtime.evaluate(`
182
+ runtime.setEvaluationListener(listener);
183
+ const promptResult = await runtime.evaluate(`
223
184
  (() => {
224
185
  switch (typeof prompt) {
225
186
  case 'function':
@@ -230,7 +191,7 @@ class _Shell extends react_1.Component {
230
191
  })()`);
231
192
  if (promptResult.type === null &&
232
193
  typeof promptResult.printable === 'string') {
233
- shellPrompt = promptResult.printable;
194
+ newShellPrompt = promptResult.printable;
234
195
  hasCustomPrompt = true;
235
196
  }
236
197
  }
@@ -238,71 +199,119 @@ class _Shell extends react_1.Component {
238
199
  }
239
200
  if (!hasCustomPrompt) {
240
201
  try {
241
- shellPrompt = (_a = (await this.props.runtime.getShellPrompt())) !== null && _a !== void 0 ? _a : '>';
202
+ newShellPrompt = (_a = (await runtime.getShellPrompt())) !== null && _a !== void 0 ? _a : '>';
242
203
  }
243
204
  catch (_c) {
244
205
  }
245
206
  }
246
- this.setState({ shellPrompt });
247
- }
248
- addEntryToHistory(code) {
249
- const history = [code, ...this.state.history];
250
- (0, history_1.changeHistory)(history, this.props.redactInfo ? 'redact-sensitive-data' : 'keep-sensitive-data');
251
- history.splice(this.props.maxHistoryLength);
252
- Object.freeze(history);
253
- return history;
254
- }
255
- addEntriesToOutput(entries) {
256
- const output = [...this.state.output, ...entries];
257
- output.splice(0, output.length - this.props.maxOutputLength);
258
- Object.freeze(output);
259
- return output;
260
- }
261
- appendEmptyInput() {
262
- const inputLine = {
207
+ setShellPrompt(newShellPrompt);
208
+ }, [listener, runtime]);
209
+ const evaluate = (0, react_1.useCallback)(async (code) => {
210
+ let outputLine;
211
+ try {
212
+ onOperationStarted === null || onOperationStarted === void 0 ? void 0 : onOperationStarted();
213
+ runtime.setEvaluationListener(listener);
214
+ const result = await runtime.evaluate(code);
215
+ outputLine = {
216
+ format: 'output',
217
+ type: result.type,
218
+ value: result.printable,
219
+ };
220
+ }
221
+ catch (error) {
222
+ outputLine = {
223
+ format: 'error',
224
+ value: error,
225
+ };
226
+ }
227
+ finally {
228
+ await updateShellPrompt();
229
+ onOperationEnd === null || onOperationEnd === void 0 ? void 0 : onOperationEnd();
230
+ }
231
+ return outputLine;
232
+ }, [listener, onOperationEnd, onOperationStarted, runtime, updateShellPrompt]);
233
+ const onInput = (0, react_1.useCallback)(async (code) => {
234
+ var _a, _b, _c;
235
+ const newOutputBeforeEval = [...((_a = outputRef.current) !== null && _a !== void 0 ? _a : [])];
236
+ if (!code || code.trim() === '') {
237
+ newOutputBeforeEval.push({
238
+ format: 'input',
239
+ value: ' ',
240
+ });
241
+ capLengthEnd(newOutputBeforeEval, maxOutputLength);
242
+ outputRef.current = newOutputBeforeEval;
243
+ onOutputChanged === null || onOutputChanged === void 0 ? void 0 : onOutputChanged(newOutputBeforeEval);
244
+ return;
245
+ }
246
+ newOutputBeforeEval.push({
263
247
  format: 'input',
264
- value: ' ',
265
- };
266
- const output = this.addEntriesToOutput([inputLine]);
267
- this.setState({ output });
268
- }
269
- scrollToBottom() {
270
- if (!this.shellInputElement) {
248
+ value: code,
249
+ });
250
+ capLengthEnd(newOutputBeforeEval, maxOutputLength);
251
+ outputRef.current = newOutputBeforeEval;
252
+ onOutputChanged === null || onOutputChanged === void 0 ? void 0 : onOutputChanged(newOutputBeforeEval);
253
+ const outputLine = await evaluate(code);
254
+ const newOutputAfterEval = [...((_b = outputRef.current) !== null && _b !== void 0 ? _b : [])];
255
+ newOutputAfterEval.push(outputLine);
256
+ capLengthEnd(newOutputAfterEval, maxOutputLength);
257
+ outputRef.current = newOutputAfterEval;
258
+ onOutputChanged === null || onOutputChanged === void 0 ? void 0 : onOutputChanged(newOutputAfterEval);
259
+ const newHistory = [...((_c = historyRef.current) !== null && _c !== void 0 ? _c : [])];
260
+ newHistory.unshift(code);
261
+ capLengthStart(newHistory, maxHistoryLength);
262
+ (0, history_1.changeHistory)(newHistory, redactInfo ? 'redact-sensitive-data' : 'keep-sensitive-data');
263
+ historyRef.current = newHistory;
264
+ onHistoryChanged === null || onHistoryChanged === void 0 ? void 0 : onHistoryChanged(newHistory);
265
+ }, [
266
+ onOutputChanged,
267
+ evaluate,
268
+ redactInfo,
269
+ maxHistoryLength,
270
+ onHistoryChanged,
271
+ maxOutputLength,
272
+ ]);
273
+ const setEditorRef = (0, react_1.useCallback)((editor) => {
274
+ editorRef.current = editor;
275
+ }, []);
276
+ const scrollToBottom = (0, react_1.useCallback)(() => {
277
+ if (!shellInputContainerRef.current) {
271
278
  return;
272
279
  }
273
- this.shellInputElement.scrollIntoView();
274
- }
275
- renderInput() {
276
- if (this.state.passwordPrompt) {
277
- return (react_1.default.createElement(password_prompt_1.PasswordPrompt, { onFinish: this.onFinishPasswordPrompt, onCancel: this.onCancelPasswordPrompt, prompt: this.state.passwordPrompt }));
280
+ shellInputContainerRef.current.scrollIntoView();
281
+ }, [shellInputContainerRef]);
282
+ const onShellClicked = (0, react_1.useCallback)((event) => {
283
+ if (event.currentTarget === event.target) {
284
+ focusEditor();
278
285
  }
279
- return (react_1.default.createElement(shell_input_1.ShellInput, { initialText: this.props.initialInput, onTextChange: this.props.onInputChanged, prompt: this.state.shellPrompt, autocompleter: this.props.runtime, history: this.state.history, onClearCommand: this.onClearCommand, onInput: this.onInput, operationInProgress: this.state.operationInProgress, editorRef: this.setEditor, onSigInt: this.onSigInt }));
280
- }
281
- render() {
282
- return (react_1.default.createElement("div", { "data-testid": "shell", className: (0, compass_components_1.cx)(shellContainer, this.props.darkMode
283
- ? shellContainerDarkModeStyles
284
- : shellContainerLightModeStyles, this.props.className), onClick: this.onShellClicked },
285
- react_1.default.createElement("div", null,
286
- react_1.default.createElement(shell_output_1.ShellOutput, { output: this.state.output })),
287
- react_1.default.createElement("div", { ref: (el) => {
288
- this.shellInputElement = el;
289
- } }, this.renderInput())));
290
- }
291
- }
292
- exports._Shell = _Shell;
293
- _Shell.defaultProps = {
294
- onHistoryChanged: noop,
295
- onOperationStarted: noop,
296
- onOperationEnd: noop,
297
- onOutputChanged: noop,
298
- maxOutputLength: 1000,
299
- maxHistoryLength: 1000,
300
- initialInput: '',
301
- initialOutput: [],
302
- initialHistory: [],
286
+ }, [focusEditor]);
287
+ const onSigInt = (0, react_1.useCallback)(() => {
288
+ if (isOperationInProgress && runtime.interrupt) {
289
+ return runtime.interrupt();
290
+ }
291
+ return Promise.resolve(false);
292
+ }, [isOperationInProgress, runtime]);
293
+ (0, react_1.useEffect)(() => {
294
+ const evalLines = normalizeInitialEvaluate(initialEvaluateRef.current);
295
+ if (evalLines.length) {
296
+ void (async () => {
297
+ for (const input of evalLines) {
298
+ await onInput(input);
299
+ }
300
+ })();
301
+ }
302
+ else {
303
+ void updateShellPrompt();
304
+ }
305
+ }, [onInput, updateShellPrompt]);
306
+ (0, react_1.useEffect)(() => {
307
+ (0, compass_components_1.rafraf)(() => {
308
+ scrollToBottom();
309
+ });
310
+ });
311
+ return (react_1.default.createElement("div", { "data-testid": "shell", className: (0, compass_components_1.cx)(shellContainer, darkMode ? shellContainerDarkModeStyles : shellContainerLightModeStyles, className), onClick: onShellClicked },
312
+ react_1.default.createElement("div", null,
313
+ react_1.default.createElement(shell_output_1.ShellOutput, { output: output !== null && output !== void 0 ? output : [] })),
314
+ react_1.default.createElement("div", { ref: shellInputContainerRef }, passwordPrompt ? (react_1.default.createElement(password_prompt_1.PasswordPrompt, { onFinish: onFinishPasswordPrompt, onCancel: onCancelPasswordPrompt, prompt: passwordPrompt })) : (react_1.default.createElement(shell_input_1.ShellInput, { initialText: initialText, onTextChange: onInputChanged, prompt: shellPrompt, autocompleter: runtime, history: history, onClearCommand: listener.onClearCommand, onInput: onInput, operationInProgress: isOperationInProgress, editorRef: setEditorRef, onSigInt: onSigInt })))));
303
315
  };
304
- exports.Shell = react_1.default.forwardRef(function ShellWithDarkMode(props, ref) {
305
- const darkMode = (0, compass_components_1.useDarkMode)();
306
- return react_1.default.createElement(_Shell, { darkMode: darkMode, ref: ref, ...props });
307
- });
316
+ exports.Shell = react_1.default.forwardRef(_Shell);
308
317
  //# sourceMappingURL=shell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/components/shell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/components/shell.tsx"],"names":[],"mappings":"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"}
package/lib/sandbox.js CHANGED
@@ -151,31 +151,29 @@ const IframeRuntimeExample = () => {
151
151
  const [redactInfo, setRedactInfo] = (0, react_1.useState)(false);
152
152
  const [maxOutputLength, setMaxOutputLength] = (0, react_1.useState)(1000);
153
153
  const [maxHistoryLength, setMaxHistoryLength] = (0, react_1.useState)(1000);
154
- const [initialInput, setInitialInput] = (0, react_1.useState)('');
155
154
  const [initialEvaluate, setInitialEvaluate] = (0, react_1.useState)([]);
156
- const [initialOutput] = (0, react_1.useState)([
155
+ const [initialText, setInitialText] = (0, react_1.useState)('');
156
+ const [output, setOutput] = (0, react_1.useState)([
157
157
  { format: 'output', value: { foo: 1, bar: true, buz: function () { } } },
158
158
  ]);
159
- const [initialHistory, setInitialHistory] = (0, react_1.useState)([
159
+ const [history, setHistory] = (0, react_1.useState)([
160
160
  'show dbs',
161
161
  'db.coll.stats()',
162
162
  '{x: 1, y: {z: 2}, k: [1, 2, 3]}',
163
163
  'passwordPrompt()',
164
164
  '(() => { throw new Error("Whoops!"); })()',
165
165
  ]);
166
+ const [isOperationInProgress, setIsOperationInProgress] = (0, react_1.useState)(false);
166
167
  (0, react_1.useEffect)(() => {
167
168
  void runtime.initialize();
168
169
  return () => {
169
170
  void runtime.destroy();
170
171
  };
171
172
  }, []);
172
- const key = (0, react_1.useMemo)(() => {
173
- return initialHistory.concat(initialInput, initialEvaluate).join('');
174
- }, [initialHistory, initialInput, initialEvaluate]);
175
173
  return (react_1.default.createElement("div", { className: sandboxContainer },
176
174
  react_1.default.createElement("div", { className: shellContainer },
177
175
  react_1.default.createElement(compass_components_1.ThemeProvider, { theme: { theme: darkMode ? compass_components_1.Theme.Dark : compass_components_1.Theme.Light, enabled: true } },
178
- react_1.default.createElement(index_1.Shell, { key: key, runtime: runtime, redactInfo: redactInfo, maxOutputLength: maxOutputLength, maxHistoryLength: maxHistoryLength, initialInput: initialInput, initialEvaluate: initialEvaluate.filter(Boolean), initialOutput: initialOutput, initialHistory: initialHistory.filter(Boolean) }))),
176
+ react_1.default.createElement(index_1.Shell, { runtime: runtime, redactInfo: redactInfo, maxOutputLength: maxOutputLength, maxHistoryLength: maxHistoryLength, initialText: initialText, initialEvaluate: initialEvaluate.filter(Boolean), output: output, history: history, isOperationInProgress: isOperationInProgress, onInputChanged: setInitialText, onOutputChanged: setOutput, onHistoryChanged: setHistory, onOperationStarted: () => setIsOperationInProgress(true), onOperationEnd: () => setIsOperationInProgress(false) }))),
179
177
  react_1.default.createElement("div", { className: controlsContainer },
180
178
  react_1.default.createElement(compass_components_1.FormFieldContainer, { className: formField },
181
179
  react_1.default.createElement(compass_components_1.Label, { id: "darkModeLabel", htmlFor: "darkMode" }, "darkMode"),
@@ -208,21 +206,6 @@ const IframeRuntimeExample = () => {
208
206
  react_1.default.createElement(compass_components_1.TextInput, { className: textInput, "aria-labelledby": "maxHistoryLengthLabel", type: "number", value: String(maxHistoryLength), onChange: (evt) => {
209
207
  setMaxHistoryLength(Number(evt.currentTarget.value));
210
208
  } })),
211
- react_1.default.createElement(compass_components_1.FormFieldContainer, { className: formField },
212
- react_1.default.createElement(compass_components_1.Label, { id: "initialHistoryLabel", htmlFor: "initialHistory" }, "initialHistory"),
213
- react_1.default.createElement(compass_components_1.Description, null,
214
- "An array of history entries to prepopulate the history. Can be used to restore the history between sessions. Entries must be ordered from the most recent to the oldest.",
215
- react_1.default.createElement("br", null),
216
- "Note: new entries will not be appended to the array"),
217
- react_1.default.createElement(compass_components_1.TextArea, { "aria-labelledby": "initialHistory", value: initialHistory.join('\n'), onChange: (evt) => {
218
- setInitialHistory(evt.currentTarget.value.split('\n'));
219
- }, className: (0, compass_components_1.cx)(textarea, textInput) })),
220
- react_1.default.createElement(compass_components_1.FormFieldContainer, { className: formField },
221
- react_1.default.createElement(compass_components_1.Label, { id: "initialInputLabel", htmlFor: "initialInput" }, "initialInput"),
222
- react_1.default.createElement(compass_components_1.Description, null, "Initial value in the shell input field"),
223
- react_1.default.createElement(compass_components_1.TextInput, { className: textInput, "aria-labelledby": "initialInputLabel", value: initialInput, onChange: (evt) => {
224
- setInitialInput(evt.currentTarget.value);
225
- } })),
226
209
  react_1.default.createElement(compass_components_1.FormFieldContainer, { className: formField },
227
210
  react_1.default.createElement(compass_components_1.Label, { id: "initialEvaluateLabel", htmlFor: "initialEvaluate" }, "initialEvaluate"),
228
211
  react_1.default.createElement(compass_components_1.Description, null, "A set of input strings to evaluate right after shell is mounted"),
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../src/sandbox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAiC;AACjC,+CAA4D;AAC5D,uEAYwC;AACxC,qDAAiD;AACjD,mCAAgC;AAIhC,IAAA,iCAAY,EAAC;IACX,IAAI,EAAE;QACJ,MAAM,EAAE,CAAC;KACV;IACD,GAAG,EAAE;QACH,SAAS,EAAE,YAAY;KACxB;IACD,oBAAoB,EAAE;QACpB,gBAAgB,EAAE,MAAM;QACxB,aAAa,EAAE,WAAW;KAC3B;CACF,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,IAAA,wBAAG,EAAC;IAC3B,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO;IACf,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,OAAO;CACnB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,IAAA,wBAAG,EAAC;IACzB,MAAM,EAAE,MAAM;IACd,SAAS,EAAE,GAAG;CACf,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,IAAA,wBAAG,EAAC;IAC5B,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,CAAC;IACb,aAAa,EAAE,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,IAAA,wBAAG,EAAC;IACnB,QAAQ,EAAE;QACR,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,OAAO;KACnB;CACF,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,IAAA,wBAAG,EAAC;IACpB,QAAQ,EAAE,GAAG;CACd,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,IAAA,wBAAG,EAAC;IACpB,OAAO,EAAE,MAAM;IACf,iBAAiB,EAAE;;;GAGlB;IACD,mBAAmB,EAAE,SAAS;IAC9B,SAAS,EAAE,EAAE;IACb,YAAY,EAAE,OAAO;IACrB,UAAU,EAAE,OAAO;IACnB,iBAAiB,EAAE;QACjB,QAAQ,EAAE,OAAO;KAClB;IACD,iBAAiB,EAAE;QACjB,QAAQ,EAAE,aAAa;KACxB;IACD,iBAAiB,EAAE;QACjB,QAAQ,EAAE,OAAO;QACjB,WAAW,EAAE,KAAK;KACnB;CACF,CAAC,CAAC;AAEH,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,EAAiB,EAAE,CACzC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IACtB,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEL,MAAM,mBAAmB;IACvB,KAAK,CAAC,SAAS;QACb,MAAM,KAAK,EAAE,CAAC;QACd,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC;SACjC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,OAAO;YACL,SAAS,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE;YACjC,SAAS,EAAE;gBACT,GAAG,EAAE,sBAAsB;aAC5B;SACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,OAAO;YACL,WAAW,EAAE;gBACX,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,SAAS;aACnB;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QAElB,OAAO;YACL,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAChD,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAChD,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9D,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE;aACvD;YACD,SAAS,EAAE,KAAK;YAChB,EAAE,EAAE,CAAC;SACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QAElB,OAAO;YACL,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE;YAChD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE;YAC1C,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE;YACpC,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE;YAC/C,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;YAC9B,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE;SACnC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,KAAK,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;CACF;AAED,MAAM,OAAO,GAAG,IAAI,8BAAa,CAAC,IAAI,mBAAmB,EAAS,CAAC,CAAC;AAEpE,MAAM,oBAAoB,GAA4B,GAAG,EAAE;IACzD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAW,EAAE,CAAC,CAAC;IACrE,MAAM,CAAC,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAqB;QACnD,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,CAAC,EAAE,EAAE;KACxE,CAAC,CAAC;IACH,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAC;QACnD,UAAU;QACV,iBAAiB;QACjB,iCAAiC;QACjC,kBAAkB;QAClB,2CAA2C;KAC5C,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC;QAC1B,OAAO,GAAS,EAAE;YAChB,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QACvB,OAAO,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;IAEpD,OAAO,CACL,uCAAK,SAAS,EAAE,gBAAgB;QAC9B,uCAAK,SAAS,EAAE,cAAc;YAC5B,8BAAC,kCAAa,IACZ,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,0BAAK,CAAC,IAAI,CAAC,CAAC,CAAC,0BAAK,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;gBAEpE,8BAAC,aAAK,IACJ,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,EAChD,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,GAC9C,CACY,CACZ;QACN,uCAAK,SAAS,EAAE,iBAAiB;YAC/B,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,eAAe,EAAC,OAAO,EAAC,UAAU,eAEpC;gBACR,8BAAC,gCAAW,iCAAqC;gBACjD,8BAAC,2BAAM,uBACW,eAAe,EAC/B,EAAE,EAAC,UAAU,EACb,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,QAAQ,EACjB,QAAQ,EAAE,WAAW,GACrB,CACiB;YAErB,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,iBAAiB,EAAC,OAAO,EAAC,YAAY,iBAExC;gBACR,8BAAC,gCAAW;;oBAEqB,oDAAkB;wBACrC;gBACd,8BAAC,2BAAM,uBACW,iBAAiB,EACjC,EAAE,EAAC,YAAY,EACf,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,aAAa,GACvB,CACiB;YAErB,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,sBAAsB,EAAC,OAAO,EAAC,iBAAiB,sBAElD;gBACR,8BAAC,gCAAW;;oBACsD,GAAG;oBACnE,mDAAiB;wBACL;gBACd,8BAAC,8BAAS,IACR,SAAS,EAAE,SAAS,qBACJ,sBAAsB,EACtC,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,EAC9B,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;wBAChB,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;oBACtD,CAAC,GACD,CACiB;YAErB,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,uBAAuB,EAAC,OAAO,EAAC,kBAAkB,uBAEpD;gBACR,8BAAC,gCAAW;;oBACuD,GAAG;oBACpE,mDAAiB;wBACL;gBACd,8BAAC,8BAAS,IACR,SAAS,EAAE,SAAS,qBACJ,uBAAuB,EACvC,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;wBAChB,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;oBACvD,CAAC,GACD,CACiB;YAErB,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,qBAAqB,EAAC,OAAO,EAAC,gBAAgB,qBAEhD;gBACR,8BAAC,gCAAW;;oBAIV,yCAAM;0EAEM;gBACd,8BAAC,6BAAQ,uBACS,gBAAgB,EAChC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAChC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;wBAChB,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;oBACzD,CAAC,EACD,SAAS,EAAE,IAAA,uBAAE,EAAC,QAAQ,EAAE,SAAS,CAAC,GAClC,CACiB;YAErB,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,mBAAmB,EAAC,OAAO,EAAC,cAAc,mBAE5C;gBACR,8BAAC,gCAAW,iDAAqD;gBACjE,8BAAC,8BAAS,IACR,SAAS,EAAE,SAAS,qBACJ,mBAAmB,EACnC,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;wBAChB,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBAC3C,CAAC,GACD,CACiB;YAErB,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS;gBACtC,8BAAC,0BAAK,IAAC,EAAE,EAAC,sBAAsB,EAAC,OAAO,EAAC,iBAAiB,sBAElD;gBACR,8BAAC,gCAAW,0EAEE;gBACd,8BAAC,6BAAQ,uBACS,iBAAiB,EACjC,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EACjC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;wBAChB,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1D,CAAC,EACD,SAAS,EAAE,IAAA,uBAAE,EAAC,QAAQ,EAAE,SAAS,CAAC,GAClC,CACiB,CACjB,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,mBAAQ,CAAC,MAAM,CAAC,8BAAC,oBAAoB,OAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../src/sandbox.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mongosh/browser-repl",
3
- "version": "2.3.5",
3
+ "version": "2.3.7",
4
4
  "description": "Browser presentation component for Mongo Shell",
5
5
  "engines": {
6
6
  "node": ">=14.15.1"
@@ -35,7 +35,8 @@
35
35
  "depcheck": "depcheck",
36
36
  "compile": "tsc -p tsconfig.json",
37
37
  "prettier": "prettier",
38
- "reformat": "npm run prettier -- --write . && npm run eslint --fix"
38
+ "reformat": "npm run prettier -- --write . && npm run eslint --fix",
39
+ "sync-to-compass": "node scripts/sync-to-compass.js"
39
40
  },
40
41
  "config": {
41
42
  "unsafe-perm": true
@@ -55,12 +56,12 @@
55
56
  ]
56
57
  },
57
58
  "dependencies": {
58
- "@mongosh/browser-runtime-core": "2.3.5",
59
- "@mongosh/errors": "2.3.5",
60
- "@mongosh/history": "2.3.5",
61
- "@mongosh/i18n": "2.3.5",
62
- "@mongosh/node-runtime-worker-thread": "2.3.5",
63
- "@mongosh/service-provider-core": "2.3.5",
59
+ "@mongosh/browser-runtime-core": "2.3.7",
60
+ "@mongosh/errors": "2.3.7",
61
+ "@mongosh/history": "2.3.7",
62
+ "@mongosh/i18n": "2.3.7",
63
+ "@mongosh/node-runtime-worker-thread": "2.3.7",
64
+ "@mongosh/service-provider-core": "2.3.7",
64
65
  "numeral": "^2.0.6",
65
66
  "text-table": "^0.2.0"
66
67
  },
@@ -71,10 +72,13 @@
71
72
  "@babel/preset-typescript": "^7.18.6",
72
73
  "@mongodb-js/compass-components": "*",
73
74
  "@mongodb-js/compass-editor": "*",
74
- "@mongodb-js/eslint-config-mongosh": "2.3.5",
75
+ "@mongodb-js/eslint-config-mongosh": "2.3.7",
75
76
  "@mongodb-js/prettier-config-devtools": "^1.0.1",
76
- "@mongodb-js/tsconfig-mongosh": "2.3.5",
77
+ "@mongodb-js/tsconfig-mongosh": "2.3.7",
77
78
  "@pmmmwh/react-refresh-webpack-plugin": "^0.5.8",
79
+ "@testing-library/dom": "^8.20.1",
80
+ "@testing-library/react": "^12.1.5",
81
+ "@testing-library/user-event": "^13.5.0",
78
82
  "@types/numeral": "^2.0.2",
79
83
  "@types/react": "^16.9.17",
80
84
  "@types/react-dom": "^18.0.8",
@@ -95,6 +99,7 @@
95
99
  "karma-mocha-reporter": "^2.2.5",
96
100
  "karma-typescript": "^5.5.4",
97
101
  "karma-webpack": "^5.0.0",
102
+ "lodash": "^4.17.21",
98
103
  "mongodb": "^6.12.0",
99
104
  "path-browserify": "^1.0.1",
100
105
  "prettier": "^2.8.8",
@@ -117,5 +122,5 @@
117
122
  "react": "^17.0.2",
118
123
  "react-dom": "^17.0.2"
119
124
  },
120
- "gitHead": "3375ddb18a864f073bdae16b55e8ad4f5c452475"
125
+ "gitHead": "2536f15a4a9af5d18580bdd5c51eb6465cca200a"
121
126
  }
@@ -0,0 +1,74 @@
1
+ /* eslint-disable no-console */
2
+ 'use strict';
3
+ const fs = require('fs');
4
+ const path = require('path');
5
+ const child_process = require('child_process');
6
+ const { debounce } = require('lodash');
7
+
8
+ if (!process.env.COMPASS_HOME) {
9
+ throw new Error('Missing required environment variable $COMPASS_HOME.');
10
+ }
11
+
12
+ const packageDir = path.resolve(__dirname, '..');
13
+ const srcDir = path.resolve(__dirname, '..', 'src');
14
+ const libDir = path.resolve(__dirname, '..', 'lib');
15
+
16
+ const destDir = path.dirname(
17
+ child_process.execFileSync(
18
+ 'node',
19
+ ['-p', "require.resolve('@mongosh/browser-repl')"],
20
+ { cwd: process.env.COMPASS_HOME, encoding: 'utf-8' }
21
+ )
22
+ );
23
+
24
+ console.log({ packageDir, srcDir, libDir, destDir });
25
+
26
+ const compileAndCopy = debounce(
27
+ function () {
28
+ try {
29
+ child_process.execFileSync('npm', ['run', 'compile'], {
30
+ cwd: packageDir,
31
+ encoding: 'utf-8',
32
+ });
33
+ } catch (err) {
34
+ if (err.code) {
35
+ // Spawning child process failed
36
+ console.error(err.code);
37
+ } else {
38
+ // Child was spawned but exited with non-zero exit code
39
+ // Error contains any stdout and stderr from the child
40
+ const { stdout, stderr } = err;
41
+
42
+ console.log(stdout);
43
+ console.error(stderr);
44
+ }
45
+ }
46
+ fs.cpSync(libDir, destDir, { recursive: true });
47
+ console.log('done.');
48
+ },
49
+ 1_000,
50
+ {
51
+ leading: true,
52
+ trailing: true,
53
+ }
54
+ );
55
+
56
+ const srcWatcher = fs.watch(
57
+ srcDir,
58
+ { recursive: true },
59
+ function (eventType, filename) {
60
+ console.log(eventType, filename);
61
+ compileAndCopy();
62
+ }
63
+ );
64
+
65
+ function cleanup() {
66
+ srcWatcher.close();
67
+ }
68
+
69
+ for (const evt of ['SIGINT', 'SIGTERM']) {
70
+ process.on(evt, cleanup);
71
+ }
72
+
73
+ // do an initial copy on startup
74
+ compileAndCopy();