mirror of
https://github.com/ezolenko/rollup-plugin-typescript2.git
synced 2025-12-08 19:06:16 +00:00
* hotfix: `this.load` was added in Rollup `2.60.0`; don't run on older versions - this is my bad, I didn't realize `this.load` came out _much_ later than `this.resolve` - c.f. https://github.com/rollup/rollup/blob/master/CHANGELOG.md#2600 - since we're backward-compatible w/ Rollup `1.26.3`, add in a version check for the type-only fix - the type-only fix will error out in Rollup versions less than `2.60.0`, so instead of erroring out, just skip this functionality - TODO: should move back to using `semver` that was removed in 08d2f5bcad7cb9a9a0974f3707a27d29dd89da7c * deps: add back `semver` and use for version checking - reverts the `semver` removal in 08d2f5bcad7cb9a9a0974f3707a27d29dd89da7c - add back the TS version range check - add a Rollup version range check, fixing an old issue - check `this.load` Rollup version with `semver` instead of string comparison - add `semver` to `external`s list - also remove `resolve` as it's no longer used as of 74f6761ff63863cdb3e92ca1f33640fe6f4fc7db - and re-organize the list so that Node built-ins are in one section while deps are in another - makes it clearer what we're marking as external * dx: add a nice warning when `this.load` is not supported - so it doesn't just silently skip the type-only fix on Rollup versions <2.60.0 * fix(test): add globals for strings that are replaced during build - `TS_VERSION_RANGE`, `ROLLUP_VERSION_RANGE`, `RPT2_VERSION` were previously only defined during builds, so would cause tests to fail - add these vars as (namespaced) globals in the Jest config so that they can be used in tests too - if they don't exist on `global` (or if `global` doesn't exist), then use the built strings instead - see in-line comments for more details - also reorder `re` placement to match the usage order in the code - and fix lint issues (`no-string-literal`) Co-authored-by: Eugene Zolenko <zolenkoe@gmail.com>
29 lines
848 B
JavaScript
29 lines
848 B
JavaScript
const pkg = require("./package.json");
|
|
|
|
/** @type {import("ts-jest").InitialOptionsTsJest} */
|
|
const config = {
|
|
// ts-jest settings
|
|
preset: "ts-jest",
|
|
globals: {
|
|
"ts-jest": {
|
|
tsconfig: "./tsconfig.test.json",
|
|
},
|
|
// other globals (unrelated to ts-jest) -- these are namespaced so they don't conflict with anything else
|
|
"rpt2__TS_VERSION_RANGE": pkg.peerDependencies.typescript,
|
|
"rpt2__ROLLUP_VERSION_RANGE": pkg.peerDependencies.rollup,
|
|
"rpt2__RPT2_VERSION": pkg.version,
|
|
},
|
|
|
|
// jest settings
|
|
injectGlobals: false, // use @jest/globals instead
|
|
restoreMocks: true,
|
|
// only use *.spec.ts files in __tests__, no auto-generated files
|
|
testMatch: ["**/__tests__/**/*.spec.ts?(x)"],
|
|
coveragePathIgnorePatterns: [
|
|
"node_modules", // default
|
|
"<rootDir>/__tests__/" // ignore any test helper files
|
|
],
|
|
};
|
|
|
|
module.exports = config;
|