1 | "use strict";
|
2 | var __importDefault = (this && this.__importDefault) || function (mod) {
|
3 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
4 | };
|
5 | Object.defineProperty(exports, "__esModule", { value: true });
|
6 | exports.createTypeScriptWorkerConfig = void 0;
|
7 | const path_1 = __importDefault(require("path"));
|
8 | const type_script_vue_extension_config_1 = require("./extension/vue/type-script-vue-extension-config");
|
9 | function createTypeScriptWorkerConfig(compiler, options) {
|
10 | let configFile = typeof options === 'object' ? options.configFile || 'tsconfig.json' : 'tsconfig.json';
|
11 |
|
12 | configFile = path_1.default.normalize(path_1.default.isAbsolute(configFile)
|
13 | ? configFile
|
14 | : path_1.default.resolve(compiler.options.context || process.cwd(), configFile));
|
15 | const optionsAsObject = typeof options === 'object' ? options : {};
|
16 | const typescriptPath = optionsAsObject.typescriptPath || require.resolve('typescript');
|
17 | return Object.assign(Object.assign({ enabled: options !== false, memoryLimit: 2048, build: false, mode: optionsAsObject.build ? 'write-tsbuildinfo' : 'readonly', profile: false }, optionsAsObject), { configFile: configFile, configOverwrite: optionsAsObject.configOverwrite || {}, context: optionsAsObject.context || path_1.default.dirname(configFile), extensions: {
|
18 | vue: (0, type_script_vue_extension_config_1.createTypeScriptVueExtensionConfig)(optionsAsObject.extensions ? optionsAsObject.extensions.vue : undefined),
|
19 | }, diagnosticOptions: Object.assign({ syntactic: false, semantic: true, declaration: false, global: false }, (optionsAsObject.diagnosticOptions || {})), typescriptPath: typescriptPath });
|
20 | }
|
21 | exports.createTypeScriptWorkerConfig = createTypeScriptWorkerConfig;
|