UNPKG

unplugin-dts

Version:

<h1 align="center">unplugin-dts</h1>

58 lines (54 loc) 2.02 kB
import __cjs_url__ from 'url'; import __cjs_path__ from 'path'; import __cjs_mod__ from 'module'; const __filename = __cjs_url__.fileURLToPath(import.meta.url); const __dirname = __cjs_path__.dirname(__filename); const require = __cjs_mod__.createRequire(import.meta.url); import { dirname } from 'node:path'; import { createParsedCommandLine as createParsedCommandLine$1, getDefaultCompilerOptions, createVueLanguagePlugin } from '@vue/language-core'; import { proxyCreateProgram } from '@volar/typescript'; import { s as slash, t as ts } from '../shared/unplugin-dts.BU1tibsL.mjs'; import 'node:fs'; import 'node:module'; import 'kolorist'; import 'node:fs/promises'; import 'node:os'; import '@rollup/pluginutils'; import 'compare-versions'; import 'debug'; import 'local-pkg'; import 'magic-string'; function createParsedCommandLine(_ts, host, configPath) { const vueResult = createParsedCommandLine$1(_ts, host, slash(configPath)); const config = _ts.readJsonConfigFile(configPath, host.readFile); const vueHost = { ...host, readDirectory(rootDir, extensions, excludes, includes, depth) { const extendedExtensions = extensions ? [...extensions, ".vue"] : extensions; return host.readDirectory(rootDir, extendedExtensions, excludes, includes, depth); } }; const parsed = _ts.parseJsonSourceFileConfigFileContent( config, vueHost, dirname(configPath), {}, configPath ); return { ...parsed, vueOptions: vueResult.vueOptions }; } const createProgram = proxyCreateProgram(ts, ts.createProgram, (ts2, options) => { const { configFilePath } = options.options; const vueOptions = typeof configFilePath === "string" ? createParsedCommandLine(ts2, ts2.sys, slash(configFilePath)).vueOptions : getDefaultCompilerOptions(); const vueLanguagePlugin = createVueLanguagePlugin( ts2, options.options, vueOptions, (id) => id ); return { languagePlugins: [vueLanguagePlugin] }; }); export { createParsedCommandLine, createProgram };