@mongosh/editor 1.0.7 → 1.1.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.
- package/AUTHORS +3 -0
- package/lib/editor.d.ts +10 -4
- package/lib/editor.js +49 -16
- package/lib/editor.js.map +1 -1
- package/package.json +7 -8
package/AUTHORS
CHANGED
package/lib/editor.d.ts
CHANGED
|
@@ -8,7 +8,6 @@ export interface EditorOptions {
|
|
|
8
8
|
vscodeDir: string;
|
|
9
9
|
tmpDir: string;
|
|
10
10
|
instanceState: ShellInstanceState;
|
|
11
|
-
makeMultilineJSIntoSingleLine: (code: string) => string;
|
|
12
11
|
loadExternalCode: (input: string, filename: string) => Promise<ShellResult>;
|
|
13
12
|
}
|
|
14
13
|
export declare class Editor {
|
|
@@ -16,11 +15,11 @@ export declare class Editor {
|
|
|
16
15
|
_vscodeDir: string;
|
|
17
16
|
_tmpDir: string;
|
|
18
17
|
_instanceState: ShellInstanceState;
|
|
19
|
-
_makeMultilineJSIntoSingleLine: (code: string) => string;
|
|
20
18
|
_loadExternalCode: (input: string, filename: string) => Promise<ShellResult>;
|
|
21
19
|
_lastContent: string;
|
|
20
|
+
_lastInputCode: string;
|
|
22
21
|
print: (...args: any[]) => Promise<void>;
|
|
23
|
-
constructor({ input, vscodeDir, tmpDir, instanceState,
|
|
22
|
+
constructor({ input, vscodeDir, tmpDir, instanceState, loadExternalCode }: EditorOptions);
|
|
24
23
|
static create(options: EditorOptions): Editor;
|
|
25
24
|
_getExtension(cmd: string): Promise<string>;
|
|
26
25
|
_getEditor(): Promise<string | null>;
|
|
@@ -31,7 +30,14 @@ export declare class Editor {
|
|
|
31
30
|
_readAndDeleteTempFile(tmpDoc: string): Promise<string>;
|
|
32
31
|
_isVscodeApp(cmd: string): boolean;
|
|
33
32
|
_isIdentifier(code: string): boolean;
|
|
33
|
+
_isNumeric(code: string): boolean;
|
|
34
34
|
_getEditorContent(code: string): Promise<string>;
|
|
35
|
-
|
|
35
|
+
_prepareResult({ originalCode, modifiedCode }: {
|
|
36
|
+
originalCode: string;
|
|
37
|
+
modifiedCode: string;
|
|
38
|
+
}): string;
|
|
39
|
+
_setLastInputCode(code: string): void;
|
|
40
|
+
_getLastInputCode(code: string): string;
|
|
41
|
+
runEditCommand(code: string): Promise<void>;
|
|
36
42
|
get messageBus(): MongoshBus;
|
|
37
43
|
}
|
package/lib/editor.js
CHANGED
|
@@ -26,22 +26,23 @@ exports.Editor = void 0;
|
|
|
26
26
|
const path = __importStar(require("path"));
|
|
27
27
|
const events_1 = require("events");
|
|
28
28
|
const fs_1 = require("fs");
|
|
29
|
-
const
|
|
29
|
+
const child_process_1 = __importDefault(require("child_process"));
|
|
30
30
|
const service_provider_core_1 = require("@mongosh/service-provider-core");
|
|
31
|
+
const js_multiline_to_singleline_1 = require("@mongosh/js-multiline-to-singleline");
|
|
31
32
|
const shell_api_1 = require("@mongosh/shell-api");
|
|
32
33
|
const beautify = require('js-beautify').js;
|
|
33
34
|
class Editor {
|
|
34
|
-
constructor({ input, vscodeDir, tmpDir, instanceState,
|
|
35
|
+
constructor({ input, vscodeDir, tmpDir, instanceState, loadExternalCode }) {
|
|
35
36
|
this._input = input;
|
|
36
37
|
this._vscodeDir = vscodeDir;
|
|
37
38
|
this._tmpDir = tmpDir;
|
|
38
39
|
this._instanceState = instanceState;
|
|
39
|
-
this._makeMultilineJSIntoSingleLine = makeMultilineJSIntoSingleLine;
|
|
40
40
|
this._loadExternalCode = loadExternalCode;
|
|
41
41
|
this._lastContent = '';
|
|
42
|
+
this._lastInputCode = '';
|
|
42
43
|
this.print = instanceState.context.print;
|
|
43
|
-
const wrapperFn = (
|
|
44
|
-
return Object.assign(this.runEditCommand(
|
|
44
|
+
const wrapperFn = (code) => {
|
|
45
|
+
return Object.assign(this.runEditCommand(code), {
|
|
45
46
|
[Symbol.for('@@mongosh.syntheticPromise')]: true
|
|
46
47
|
});
|
|
47
48
|
};
|
|
@@ -75,8 +76,8 @@ class Editor {
|
|
|
75
76
|
}
|
|
76
77
|
catch (error) {
|
|
77
78
|
this.messageBus.emit('mongosh-editor:read-vscode-extensions-failed', {
|
|
78
|
-
|
|
79
|
-
error: error
|
|
79
|
+
vscodeDir: this._vscodeDir,
|
|
80
|
+
error: error
|
|
80
81
|
});
|
|
81
82
|
return 'js';
|
|
82
83
|
}
|
|
@@ -97,14 +98,21 @@ class Editor {
|
|
|
97
98
|
async _readAndDeleteTempFile(tmpDoc) {
|
|
98
99
|
this._lastContent = await fs_1.promises.readFile(tmpDoc, 'utf8');
|
|
99
100
|
await fs_1.promises.unlink(tmpDoc);
|
|
100
|
-
return
|
|
101
|
+
return js_multiline_to_singleline_1.makeMultilineJSIntoSingleLine(this._lastContent);
|
|
101
102
|
}
|
|
102
103
|
_isVscodeApp(cmd) {
|
|
103
|
-
const regex = /^(.*)[\/\\]?[cC]ode(.exe)?$/;
|
|
104
|
+
const regex = /^(.*)[\/\\]?[cC]ode(.exe)?(\s(.*))?$/;
|
|
104
105
|
return regex.test(cmd);
|
|
105
106
|
}
|
|
106
107
|
_isIdentifier(code) {
|
|
107
|
-
|
|
108
|
+
if (this._isNumeric(code)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
const regex = /^([^!"#%&'()*+,\-/\[\]\\^`{|}~]+)$/;
|
|
112
|
+
return regex.test(code);
|
|
113
|
+
}
|
|
114
|
+
_isNumeric(code) {
|
|
115
|
+
const regex = /^-?\d+$/;
|
|
108
116
|
return regex.test(code);
|
|
109
117
|
}
|
|
110
118
|
async _getEditorContent(code) {
|
|
@@ -115,15 +123,35 @@ class Editor {
|
|
|
115
123
|
return code;
|
|
116
124
|
}
|
|
117
125
|
const evalResult = await this._loadExternalCode(code, '@(editor)');
|
|
118
|
-
|
|
126
|
+
if (typeof evalResult === 'function') {
|
|
127
|
+
return evalResult.toString();
|
|
128
|
+
}
|
|
129
|
+
return JSON.stringify(evalResult);
|
|
130
|
+
}
|
|
131
|
+
_prepareResult({ originalCode, modifiedCode }) {
|
|
132
|
+
if (!this._isIdentifier(originalCode)) {
|
|
133
|
+
return modifiedCode;
|
|
134
|
+
}
|
|
135
|
+
return `${originalCode} = ${modifiedCode}`;
|
|
119
136
|
}
|
|
120
|
-
|
|
137
|
+
_setLastInputCode(code) {
|
|
138
|
+
if (code !== '') {
|
|
139
|
+
this._lastInputCode = code;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
_getLastInputCode(code) {
|
|
143
|
+
if (code !== '') {
|
|
144
|
+
return code;
|
|
145
|
+
}
|
|
146
|
+
return this._lastInputCode;
|
|
147
|
+
}
|
|
148
|
+
async runEditCommand(code) {
|
|
121
149
|
await this.print('Opening an editor...');
|
|
122
|
-
const code = input.replace('edit', '').trim();
|
|
123
150
|
const editor = await this._getEditor();
|
|
124
151
|
if (!editor) {
|
|
125
152
|
throw new Error('Command failed with an error: please define an external editor');
|
|
126
153
|
}
|
|
154
|
+
this._setLastInputCode(code);
|
|
127
155
|
const content = await this._getEditorContent(code);
|
|
128
156
|
const ext = await this._getExtension(editor);
|
|
129
157
|
const tmpDoc = await this._createTempFile({ content, ext });
|
|
@@ -132,16 +160,21 @@ class Editor {
|
|
|
132
160
|
editor,
|
|
133
161
|
code
|
|
134
162
|
});
|
|
135
|
-
const proc =
|
|
163
|
+
const proc = child_process_1.default.spawn(editor, [path.basename(tmpDoc)], {
|
|
164
|
+
stdio: 'inherit',
|
|
165
|
+
cwd: path.dirname(tmpDoc),
|
|
166
|
+
shell: true
|
|
167
|
+
});
|
|
136
168
|
this._input.pause();
|
|
137
169
|
try {
|
|
138
170
|
const [exitCode] = await events_1.once(proc, 'exit');
|
|
139
171
|
if (exitCode === 0) {
|
|
140
|
-
const
|
|
172
|
+
const modifiedCode = await this._readAndDeleteTempFile(tmpDoc);
|
|
173
|
+
const result = this._prepareResult({ originalCode: this._getLastInputCode(code), modifiedCode });
|
|
141
174
|
this._input.unshift(result);
|
|
142
175
|
return;
|
|
143
176
|
}
|
|
144
|
-
throw new Error(`Command '${
|
|
177
|
+
throw new Error(`Command '${editor} ${path.basename(tmpDoc)}' failed with an exit code ${exitCode}`);
|
|
145
178
|
}
|
|
146
179
|
finally {
|
|
147
180
|
this._input.resume();
|
package/lib/editor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor.js","sourceRoot":"","sources":["../src/editor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,mCAA8B;AAC9B,2BAAoC;AAEpC,
|
|
1
|
+
{"version":3,"file":"editor.js","sourceRoot":"","sources":["../src/editor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,mCAA8B;AAC9B,2BAAoC;AAEpC,kEAAyC;AAEzC,0EAAsD;AACtD,oFAAoF;AACpF,kDAAmF;AAKnF,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;AAU3C,MAAa,MAAM;IAUjB,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAiB;QACtF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;QAGzC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE;YACjC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;gBAC9C,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,EAAE,IAAI;aACjD,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,SAAS,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACtC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC;QAChC,SAAS,CAAC,eAAe,GAAG,IAAI,CAAC;QAChC,aAAa,CAAC,QAAgB,CAAC,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;QAC7E,sBAAU,CAAC,QAAQ,CAAC,UAAkB,CAAC,IAAI,GAAG;YAC7C,IAAI,EAAE,UAAU;YAChB,cAAc,EAAE,IAAI;YACpB,oBAAoB,EAAE,IAAI;YAC1B,eAAe,EAAE,IAAI;SACL,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,OAAsB;QAClC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAKD,KAAK,CAAC,aAAa,CAAC,GAAW;QAC7B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;YAC3B,OAAO,IAAI,CAAC;SACb;QAED,IAAI;YACF,MAAM,UAAU,GAAG,MAAM,aAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;YAC9E,MAAM,mBAAmB,GAAG,CAAC,CAAC,UAAU;iBACrC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAE3D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,4CAA4C,EAAE;gBACjE,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,mBAAmB;aACpB,CAAC,CAAC;YAEH,OAAO,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;SAC/C;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,8CAA8C,EAAE;gBACnE,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,KAAK,EAAE,KAAc;aACtB,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QAEd,IAAI,MAAM,GAAkB,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAGpF,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE;YACjC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;SAC7B;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,GAAG,EAAoC;QACtE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,4BAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QAG7E,MAAM,aAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,MAAM,aAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAE/D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,MAAc;QAEzC,IAAI,CAAC,YAAY,GAAG,MAAM,aAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,aAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAExB,OAAO,0DAA6B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED,YAAY,CAAC,GAAW;QACtB,MAAM,KAAK,GAAG,sCAAsC,CAAC;QACrD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;QAED,MAAM,KAAK,GAAG,oCAAoC,CAAC;QACnD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,MAAM,KAAK,GAAG,SAAS,CAAC;QACxB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAY;QAElC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;QAGD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC;SACb;QAGD,MAAM,UAAU,GAAQ,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAExE,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;YACpC,OAAO,UAAU,CAAC,QAAQ,EAAE,CAAC;SAC9B;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,cAAc,CAAC,EAAE,YAAY,EAAE,YAAY,EAG1C;QAEC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;YACrC,OAAO,YAAY,CAAC;SACrB;QAED,OAAO,GAAG,YAAY,MAAM,YAAY,EAAE,CAAC;IAC7C,CAAC;IAED,iBAAiB,CAAC,IAAY;QAC5B,IAAI,IAAI,KAAK,EAAE,EAAE;YACf,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;SAC5B;IACH,CAAC;IAED,iBAAiB,CAAC,IAAY;QAC5B,IAAI,IAAI,KAAK,EAAE,EAAE;YACf,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAY;QAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAEzC,MAAM,MAAM,GAAgB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAGpD,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;SACnF;QAED,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAE7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAE5D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iCAAiC,EAAE;YACtD,MAAM;YACN,MAAM;YACN,IAAI;SACL,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,uBAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE;YAC/D,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACzB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAIH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEpB,IAAI;YACF,MAAM,CAAE,QAAQ,CAAE,GAAG,MAAM,aAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAE9C,IAAI,QAAQ,KAAK,CAAC,EAAE;gBAClB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;gBAGjG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC5B,OAAO;aACR;YAED,MAAM,IAAI,KAAK,CAAC,YAAY,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;SACtG;gBAAS;YAER,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAErB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;gBACtD,IAAI,CAAC,IAAI,EAAE,CAAC;aACb;SACF;IACH,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;IACxC,CAAC;CACF;AAjOD,wBAiOC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mongosh/editor",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.4",
|
|
4
4
|
"description": "MongoDB Shell External Editor",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"repository": {
|
|
@@ -29,16 +29,15 @@
|
|
|
29
29
|
"unitTestsOnly": true
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@mongosh/
|
|
33
|
-
"@mongosh/
|
|
34
|
-
"@mongosh/shell-
|
|
35
|
-
"@mongosh/
|
|
36
|
-
"
|
|
32
|
+
"@mongosh/js-multiline-to-singleline": "1.1.4",
|
|
33
|
+
"@mongosh/service-provider-core": "1.1.4",
|
|
34
|
+
"@mongosh/shell-api": "1.1.4",
|
|
35
|
+
"@mongosh/shell-evaluator": "1.1.4",
|
|
36
|
+
"@mongosh/types": "1.1.4",
|
|
37
37
|
"js-beautify": "^1.14.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@types/cross-spawn": "^6.0.2",
|
|
41
40
|
"nanobus": "^4.5.0"
|
|
42
41
|
},
|
|
43
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "956e60d4d4e064956f11f4f03c0a21d42a9d8193"
|
|
44
43
|
}
|