Revert "Simplify external .d.ts"

This reverts commit 65b10df98f.

See https://www.typescriptlang.org/docs/handbook/modules.html#export--and-import--require
This commit is contained in:
Alex Dima 2021-10-08 16:58:02 +02:00
parent 258f678323
commit 3860b772e4
No known key found for this signature in database
GPG key ID: 39563C1504FDD0C9

View file

@ -198,17 +198,46 @@ const compileEditorESMTask = task.define('compile-editor-esm', () => {
});
function toExternalDTS(contents) {
let lines = contents.split(/\r\n|\r|\n/);
let killNextCloseCurlyBrace = false;
for (let i = 0; i < lines.length; i++) {
let line = lines[i];
contents = contents.replace(
'declare let MonacoEnvironment: monaco.Environment | undefined;',
if (killNextCloseCurlyBrace) {
if ('}' === line) {
lines[i] = '';
killNextCloseCurlyBrace = false;
continue;
}
'export = monaco;\n'+
'declare global {\n' +
'\tlet MonacoEnvironment: monaco.Environment | undefined;\n' +
'}\n'
);
if (line.indexOf(' ') === 0) {
lines[i] = line.substr(4);
} else if (line.charAt(0) === '\t') {
lines[i] = line.substr(1);
}
return contents.split(/\r\n|\r|\n/).join('\n').replace(/\n\n\n+/g, '\n\n');
continue;
}
if ('declare namespace monaco {' === line) {
lines[i] = '';
killNextCloseCurlyBrace = true;
continue;
}
if (line.indexOf('declare namespace monaco.') === 0) {
lines[i] = line.replace('declare namespace monaco.', 'export namespace ');
}
if (line.indexOf('declare let MonacoEnvironment') === 0) {
lines[i] = `declare global {\n let MonacoEnvironment: Environment | undefined;\n}`;
}
if (line.indexOf('\tMonacoEnvironment?') === 0) {
lines[i] = ` MonacoEnvironment?: Environment | undefined;`;
}
}
return lines.join('\n').replace(/\n\n\n+/g, '\n\n');
}
function filterStream(testFunc) {