mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-01-18 17:22:45 -05:00
* Initial VS Code 1.21 file copy with patches * A few more merges * Post npm install * Fix batch of build breaks * Fix more build breaks * Fix more build errors * Fix more build breaks * Runtime fixes 1 * Get connection dialog working with some todos * Fix a few packaging issues * Copy several node_modules to package build to fix loader issues * Fix breaks from master * A few more fixes * Make tests pass * First pass of license header updates * Second pass of license header updates * Fix restore dialog issues * Remove add additional themes menu items * fix select box issues where the list doesn't show up * formatting * Fix editor dispose issue * Copy over node modules to correct location on all platforms
76 lines
2.1 KiB
JavaScript
76 lines
2.1 KiB
JavaScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
var path = require('path');
|
|
var fs = require('fs');
|
|
var loader = require('./vs/loader');
|
|
|
|
function uriFromPath(_path) {
|
|
var pathName = path.resolve(_path).replace(/\\/g, '/');
|
|
|
|
if (pathName.length > 0 && pathName.charAt(0) !== '/') {
|
|
pathName = '/' + pathName;
|
|
}
|
|
|
|
return encodeURI('file://' + pathName);
|
|
}
|
|
|
|
function readFile(file) {
|
|
return new Promise(function(resolve, reject) {
|
|
fs.readFile(file, 'utf8', function(err, data) {
|
|
if (err) {
|
|
reject(err);
|
|
return;
|
|
}
|
|
resolve(data);
|
|
});
|
|
});
|
|
}
|
|
|
|
var rawNlsConfig = process.env['VSCODE_NLS_CONFIG'];
|
|
var nlsConfig = rawNlsConfig ? JSON.parse(rawNlsConfig) : { availableLanguages: {} };
|
|
|
|
// We have a special location of the nls files. They come from a language pack
|
|
if (nlsConfig._resolvedLanguagePackCoreLocation) {
|
|
let bundles = Object.create(null);
|
|
nlsConfig.loadBundle = function(bundle, language, cb) {
|
|
let result = bundles[bundle];
|
|
if (result) {
|
|
cb(undefined, result);
|
|
return;
|
|
}
|
|
let bundleFile = path.join(nlsConfig._resolvedLanguagePackCoreLocation, bundle.replace(/\//g, '!') + '.nls.json');
|
|
readFile(bundleFile).then(function (content) {
|
|
let json = JSON.parse(content);
|
|
bundles[bundle] = json;
|
|
cb(undefined, json);
|
|
})
|
|
.catch(cb);
|
|
};
|
|
}
|
|
|
|
loader.config({
|
|
baseUrl: uriFromPath(__dirname),
|
|
catchError: true,
|
|
nodeRequire: require,
|
|
nodeMain: __filename,
|
|
'vs/nls': nlsConfig,
|
|
nodeCachedDataDir: process.env['VSCODE_NODE_CACHED_DATA_DIR_' + process.pid]
|
|
});
|
|
|
|
if (nlsConfig.pseudo) {
|
|
loader(['vs/nls'], function (nlsPlugin) {
|
|
nlsPlugin.setPseudoTranslation(nlsConfig.pseudo);
|
|
});
|
|
}
|
|
|
|
exports.bootstrap = function (entrypoint) {
|
|
if (!entrypoint) {
|
|
return;
|
|
}
|
|
|
|
loader([entrypoint], function () { }, function (err) { console.error(err); });
|
|
};
|