ui: add node typings

This commit is contained in:
undefined committed 2021-12-08 23:15:27 +08:00
1 parent fcfc93a40a
commit aadc8cdde1
4 files changed
+17 -4

No files matched your search

@@ -1,5 +1,7 @@
import * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
const types = require.context('!!raw-loader!@types/node/', true, /\.d\.ts$/);
monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
noSemanticValidation: false,
noSyntaxValidation: false,
@@ -12,6 +14,15 @@ const libSource = [
'declare function readline(): string;',
'declare function print(content: string): void;',
].join('\n');
const libUri = 'ts:filename/basic.d.ts';
monaco.languages.typescript.javascriptDefaults.addExtraLib(libSource, libUri);
monaco.editor.createModel(libSource, 'typescript', monaco.Uri.parse(libUri));
for (const key of types.keys()) {
const val = types(key).default;
const uri = `ts:node/${key.split('./')[1]}`;
console.log(val, uri);
monaco.languages.typescript.javascriptDefaults.addExtraLib(val, uri);
monaco.editor.createModel(val, 'typescript', monaco.Uri.parse(uri));
}
console.log(types);