mirror of
https://github.com/ezolenko/rollup-plugin-typescript2.git
synced 2025-12-08 19:06:16 +00:00
- reverting #181
This commit is contained in:
commit
330a0ce804
@ -164,9 +164,7 @@ See [#108](https://github.com/ezolenko/rollup-plugin-typescript2/issues/108)
|
||||
|
||||
* `useTsconfigDeclarationDir`: false
|
||||
|
||||
If true, declaration files will be written in the directory given in the tsconfig. If false, the declaration files will be emitted and rollup will place them inside the destination directory given in the Rollup configuration.
|
||||
|
||||
Set to false if you want other plugins to see type declarations.
|
||||
If true, declaration files will be emitted in the directory given in the tsconfig. If false, the declaration files will be placed inside the destination directory given in the Rollup configuration.
|
||||
|
||||
* `typescript`: typescript module installed with the plugin
|
||||
|
||||
|
||||
2
dist/index.d.ts.map
vendored
2
dist/index.d.ts.map
vendored
@ -1 +1 @@
|
||||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,OAAO,EAAE,UAAU,EAAgG,MAAM,QAAQ,CAAC;AAGlI,QAAA,MAAM,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAqW7C,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
||||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,OAAO,EAAE,UAAU,EAAgG,MAAM,QAAQ,CAAC;AAGlI,QAAA,MAAM,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAwW7C,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
||||
44
dist/rollup-plugin-typescript2.cjs.js
vendored
44
dist/rollup-plugin-typescript2.cjs.js
vendored
@ -27396,9 +27396,11 @@ const typescript = (options) => {
|
||||
}
|
||||
return undefined;
|
||||
},
|
||||
generateBundle(bundleOptions) {
|
||||
generateBundle(bundleOptions, _bundle, isWrite) {
|
||||
self._ongenerate();
|
||||
self._onwrite.call(this, bundleOptions);
|
||||
if (isWrite) {
|
||||
self._onwrite(bundleOptions);
|
||||
}
|
||||
},
|
||||
_ongenerate() {
|
||||
context.debug(() => `generating target ${generateRound + 1}`);
|
||||
@ -27422,7 +27424,7 @@ const typescript = (options) => {
|
||||
cache().done();
|
||||
generateRound++;
|
||||
},
|
||||
_onwrite(_output) {
|
||||
_onwrite({ file, dir }) {
|
||||
if (!parsedConfig.options.declaration)
|
||||
return;
|
||||
lodash_3(parsedConfig.fileNames, (name) => {
|
||||
@ -27439,34 +27441,32 @@ const typescript = (options) => {
|
||||
if (out.dts)
|
||||
declarations[key] = { type: out.dts, map: out.dtsmap };
|
||||
});
|
||||
const emitDeclaration = (key, extension, entry) => {
|
||||
const bundleFile = file;
|
||||
const outputDir = dir;
|
||||
const writeDeclaration = (key, extension, entry) => {
|
||||
if (!entry)
|
||||
return;
|
||||
let fileName = entry.name;
|
||||
if (fileName.includes("?")) // HACK for rollup-plugin-vue, it creates virtual modules in form 'file.vue?rollup-plugin-vue=script.ts'
|
||||
fileName = fileName.split("?", 1) + extension;
|
||||
// If 'useTsconfigDeclarationDir' is given in the
|
||||
// plugin options, directly write to the path provided
|
||||
// by Typescript's LanguageService (which may not be
|
||||
// under Rollup's output directory, and thus can't be
|
||||
// emitted as an asset).
|
||||
if (pluginOptions.useTsconfigDeclarationDir) {
|
||||
context.debug(() => `${safe_5("emitting declarations")} for '${key}' to '${fileName}'`);
|
||||
tsModule.sys.writeFile(fileName, entry.text, entry.writeByteOrderMark);
|
||||
}
|
||||
let writeToPath;
|
||||
// If for some reason no 'dest' property exists or if 'useTsconfigDeclarationDir' is given in the plugin options,
|
||||
// use the path provided by Typescript's LanguageService.
|
||||
if ((!bundleFile && !outputDir) || pluginOptions.useTsconfigDeclarationDir)
|
||||
writeToPath = fileName;
|
||||
else {
|
||||
const relativePath = path.relative(process.cwd(), fileName);
|
||||
context.debug(() => `${safe_5("emitting declarations")} for '${key}' to '${relativePath}'`);
|
||||
this.emitFile({
|
||||
type: "asset",
|
||||
source: entry.text,
|
||||
fileName: relativePath,
|
||||
});
|
||||
// Otherwise, take the directory name from the path and make sure it is absolute.
|
||||
const destDirname = bundleFile ? path.dirname(bundleFile) : outputDir;
|
||||
const destDirectory = path.isAbsolute(destDirname) ? destDirname : path.join(process.cwd(), destDirname);
|
||||
writeToPath = path.join(destDirectory, path.relative(process.cwd(), fileName));
|
||||
}
|
||||
context.debug(() => `${safe_5("writing declarations")} for '${key}' to '${writeToPath}'`);
|
||||
// Write the declaration file to disk.
|
||||
tsModule.sys.writeFile(writeToPath, entry.text, entry.writeByteOrderMark);
|
||||
};
|
||||
lodash_3(declarations, ({ type, map }, key) => {
|
||||
emitDeclaration(key, ".d.ts", type);
|
||||
emitDeclaration(key, ".d.ts.map", map);
|
||||
writeDeclaration(key, ".d.ts", type);
|
||||
writeDeclaration(key, ".d.ts.map", map);
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
2
dist/rollup-plugin-typescript2.cjs.js.map
vendored
2
dist/rollup-plugin-typescript2.cjs.js.map
vendored
File diff suppressed because one or more lines are too long
46
dist/rollup-plugin-typescript2.es.js
vendored
46
dist/rollup-plugin-typescript2.es.js
vendored
@ -4,7 +4,7 @@ import { emptyDirSync, readJsonSync, writeJsonSync, ensureFileSync, removeSync,
|
||||
import fs, { existsSync, readdirSync, renameSync, readFileSync } from 'fs';
|
||||
import util from 'util';
|
||||
import os from 'os';
|
||||
import path__default, { normalize as normalize$1, join, dirname, relative } from 'path';
|
||||
import path__default, { normalize as normalize$1, join, dirname, isAbsolute, relative } from 'path';
|
||||
import { sync as sync$4 } from 'resolve';
|
||||
|
||||
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
||||
@ -27390,9 +27390,11 @@ const typescript = (options) => {
|
||||
}
|
||||
return undefined;
|
||||
},
|
||||
generateBundle(bundleOptions) {
|
||||
generateBundle(bundleOptions, _bundle, isWrite) {
|
||||
self._ongenerate();
|
||||
self._onwrite.call(this, bundleOptions);
|
||||
if (isWrite) {
|
||||
self._onwrite(bundleOptions);
|
||||
}
|
||||
},
|
||||
_ongenerate() {
|
||||
context.debug(() => `generating target ${generateRound + 1}`);
|
||||
@ -27416,7 +27418,7 @@ const typescript = (options) => {
|
||||
cache().done();
|
||||
generateRound++;
|
||||
},
|
||||
_onwrite(_output) {
|
||||
_onwrite({ file, dir }) {
|
||||
if (!parsedConfig.options.declaration)
|
||||
return;
|
||||
lodash_3(parsedConfig.fileNames, (name) => {
|
||||
@ -27433,34 +27435,32 @@ const typescript = (options) => {
|
||||
if (out.dts)
|
||||
declarations[key] = { type: out.dts, map: out.dtsmap };
|
||||
});
|
||||
const emitDeclaration = (key, extension, entry) => {
|
||||
const bundleFile = file;
|
||||
const outputDir = dir;
|
||||
const writeDeclaration = (key, extension, entry) => {
|
||||
if (!entry)
|
||||
return;
|
||||
let fileName = entry.name;
|
||||
if (fileName.includes("?")) // HACK for rollup-plugin-vue, it creates virtual modules in form 'file.vue?rollup-plugin-vue=script.ts'
|
||||
fileName = fileName.split("?", 1) + extension;
|
||||
// If 'useTsconfigDeclarationDir' is given in the
|
||||
// plugin options, directly write to the path provided
|
||||
// by Typescript's LanguageService (which may not be
|
||||
// under Rollup's output directory, and thus can't be
|
||||
// emitted as an asset).
|
||||
if (pluginOptions.useTsconfigDeclarationDir) {
|
||||
context.debug(() => `${safe_5("emitting declarations")} for '${key}' to '${fileName}'`);
|
||||
tsModule.sys.writeFile(fileName, entry.text, entry.writeByteOrderMark);
|
||||
}
|
||||
let writeToPath;
|
||||
// If for some reason no 'dest' property exists or if 'useTsconfigDeclarationDir' is given in the plugin options,
|
||||
// use the path provided by Typescript's LanguageService.
|
||||
if ((!bundleFile && !outputDir) || pluginOptions.useTsconfigDeclarationDir)
|
||||
writeToPath = fileName;
|
||||
else {
|
||||
const relativePath = relative(process.cwd(), fileName);
|
||||
context.debug(() => `${safe_5("emitting declarations")} for '${key}' to '${relativePath}'`);
|
||||
this.emitFile({
|
||||
type: "asset",
|
||||
source: entry.text,
|
||||
fileName: relativePath,
|
||||
});
|
||||
// Otherwise, take the directory name from the path and make sure it is absolute.
|
||||
const destDirname = bundleFile ? dirname(bundleFile) : outputDir;
|
||||
const destDirectory = isAbsolute(destDirname) ? destDirname : join(process.cwd(), destDirname);
|
||||
writeToPath = join(destDirectory, relative(process.cwd(), fileName));
|
||||
}
|
||||
context.debug(() => `${safe_5("writing declarations")} for '${key}' to '${writeToPath}'`);
|
||||
// Write the declaration file to disk.
|
||||
tsModule.sys.writeFile(writeToPath, entry.text, entry.writeByteOrderMark);
|
||||
};
|
||||
lodash_3(declarations, ({ type, map }, key) => {
|
||||
emitDeclaration(key, ".d.ts", type);
|
||||
emitDeclaration(key, ".d.ts.map", map);
|
||||
writeDeclaration(key, ".d.ts", type);
|
||||
writeDeclaration(key, ".d.ts.map", map);
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
2
dist/rollup-plugin-typescript2.es.js.map
vendored
2
dist/rollup-plugin-typescript2.es.js.map
vendored
File diff suppressed because one or more lines are too long
51
src/index.ts
51
src/index.ts
@ -12,7 +12,7 @@ import { parseTsConfig } from "./parse-tsconfig";
|
||||
import { printDiagnostics } from "./print-diagnostics";
|
||||
import { TSLIB, TSLIB_VIRTUAL, tslibSource, tslibVersion } from "./tslib";
|
||||
import { blue, red, yellow, green } from "colors/safe";
|
||||
import { relative } from "path";
|
||||
import { dirname, isAbsolute, join, relative } from "path";
|
||||
import { normalize } from "./normalize";
|
||||
import { satisfies } from "semver";
|
||||
import findCacheDir from "find-cache-dir";
|
||||
@ -269,10 +269,13 @@ const typescript: PluginImpl<Partial<IOptions>> = (options) =>
|
||||
return undefined;
|
||||
},
|
||||
|
||||
generateBundle(this: PluginContext, bundleOptions: OutputOptions): void
|
||||
generateBundle(bundleOptions: OutputOptions, _bundle: any, isWrite: boolean): void
|
||||
{
|
||||
self._ongenerate();
|
||||
self._onwrite.call(this, bundleOptions);
|
||||
if (isWrite)
|
||||
{
|
||||
self._onwrite(bundleOptions);
|
||||
}
|
||||
},
|
||||
|
||||
_ongenerate(): void
|
||||
@ -313,7 +316,7 @@ const typescript: PluginImpl<Partial<IOptions>> = (options) =>
|
||||
generateRound++;
|
||||
},
|
||||
|
||||
_onwrite(this: PluginContext, _output: OutputOptions): void
|
||||
_onwrite({ file, dir }: OutputOptions): void
|
||||
{
|
||||
if (!parsedConfig.options.declaration)
|
||||
return;
|
||||
@ -336,7 +339,10 @@ const typescript: PluginImpl<Partial<IOptions>> = (options) =>
|
||||
declarations[key] = { type: out.dts, map: out.dtsmap };
|
||||
});
|
||||
|
||||
const emitDeclaration = (key: string, extension: string, entry?: tsTypes.OutputFile) =>
|
||||
const bundleFile = file;
|
||||
const outputDir = dir;
|
||||
|
||||
const writeDeclaration = (key: string, extension: string, entry?: tsTypes.OutputFile) =>
|
||||
{
|
||||
if (!entry)
|
||||
return;
|
||||
@ -345,32 +351,29 @@ const typescript: PluginImpl<Partial<IOptions>> = (options) =>
|
||||
if (fileName.includes("?")) // HACK for rollup-plugin-vue, it creates virtual modules in form 'file.vue?rollup-plugin-vue=script.ts'
|
||||
fileName = fileName.split("?", 1) + extension;
|
||||
|
||||
// If 'useTsconfigDeclarationDir' is given in the
|
||||
// plugin options, directly write to the path provided
|
||||
// by Typescript's LanguageService (which may not be
|
||||
// under Rollup's output directory, and thus can't be
|
||||
// emitted as an asset).
|
||||
if (pluginOptions.useTsconfigDeclarationDir)
|
||||
{
|
||||
context.debug(() => `${blue("emitting declarations")} for '${key}' to '${fileName}'`);
|
||||
tsModule.sys.writeFile(fileName, entry.text, entry.writeByteOrderMark);
|
||||
}
|
||||
let writeToPath: string;
|
||||
// If for some reason no 'dest' property exists or if 'useTsconfigDeclarationDir' is given in the plugin options,
|
||||
// use the path provided by Typescript's LanguageService.
|
||||
if ((!bundleFile && !outputDir) || pluginOptions.useTsconfigDeclarationDir)
|
||||
writeToPath = fileName;
|
||||
else
|
||||
{
|
||||
const relativePath = relative(process.cwd(), fileName);
|
||||
context.debug(() => `${blue("emitting declarations")} for '${key}' to '${relativePath}'`);
|
||||
this.emitFile({
|
||||
type: "asset",
|
||||
source: entry.text,
|
||||
fileName: relativePath,
|
||||
});
|
||||
// Otherwise, take the directory name from the path and make sure it is absolute.
|
||||
const destDirname = bundleFile ? dirname(bundleFile) : outputDir as string;
|
||||
const destDirectory = isAbsolute(destDirname) ? destDirname : join(process.cwd(), destDirname);
|
||||
writeToPath = join(destDirectory, relative(process.cwd(), fileName));
|
||||
}
|
||||
|
||||
context.debug(() => `${blue("writing declarations")} for '${key}' to '${writeToPath}'`);
|
||||
|
||||
// Write the declaration file to disk.
|
||||
tsModule.sys.writeFile(writeToPath, entry.text, entry.writeByteOrderMark);
|
||||
};
|
||||
|
||||
_.each(declarations, ({ type, map }, key) =>
|
||||
{
|
||||
emitDeclaration(key, ".d.ts", type);
|
||||
emitDeclaration(key, ".d.ts.map", map);
|
||||
writeDeclaration(key, ".d.ts", type);
|
||||
writeDeclaration(key, ".d.ts.map", map);
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user