зеркало из https://github.com/microsoft/lage.git
Further test and settings updates (#739)
This commit is contained in:
Родитель
7453924a5a
Коммит
c6b1be01ff
|
@ -4,5 +4,5 @@ module.exports = {
|
|||
parserOptions: {
|
||||
project: "./scripts/config/tsconfig.eslint.json",
|
||||
},
|
||||
ignorePatterns: ["**/*.js", "**/__fixtures__", "**/hasher/src/__tests__", "docs"],
|
||||
ignorePatterns: ["**/*.js", "**/__fixtures__", "**/hasher/src/__tests__", "docs", "packages/*/scripts"],
|
||||
};
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
# Not formatted
|
||||
.*ignore
|
||||
|
||||
# Generated or imported files
|
||||
change/*.json
|
||||
CHANGELOG.*
|
||||
|
|
|
@ -4,5 +4,10 @@
|
|||
"typescript.tsdk": "node_modules/typescript/lib",
|
||||
"files.associations": {
|
||||
"*.json5": "jsonc"
|
||||
},
|
||||
"search.exclude": {
|
||||
"**/lib": true,
|
||||
"**/node_modules": true,
|
||||
"**/*.code-search": true
|
||||
}
|
||||
}
|
||||
|
|
|
@ -58,14 +58,21 @@ module.exports = {
|
|||
},
|
||||
npmClient: "yarn",
|
||||
cacheOptions: {
|
||||
// These are relative to the git root, and affect the hash of the cache.
|
||||
// Changes to any of these files will invalidate the cache.
|
||||
environmentGlob: [
|
||||
// Folder globs MUST end with **/* to include all files!
|
||||
"!node_modules/**/*",
|
||||
"!**/node_modules/**/*",
|
||||
".github/workflows/*",
|
||||
"beachball.config.js",
|
||||
"lage.config.js",
|
||||
"package.json",
|
||||
"renovate.json5",
|
||||
".github/**",
|
||||
"packages/tsconfig.lage2.json",
|
||||
"patches",
|
||||
"patches/**/*",
|
||||
"yarn.lock",
|
||||
],
|
||||
// Subset of files in package directories that will be saved into the cache.
|
||||
outputGlob: ["lib/**/*", "dist/**/*", ".docusaurus/**/*", "build/**/*"],
|
||||
},
|
||||
};
|
||||
|
|
|
@ -15,9 +15,5 @@
|
|||
"noUnusedLocals": false,
|
||||
"sourceMap": true,
|
||||
"typeRoots": ["../node_modules/@types", "../types", "node_modules/@types"]
|
||||
},
|
||||
"ts-node": {
|
||||
"swc": true,
|
||||
"transpileOnly": true
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ module.exports = {
|
|||
extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
|
||||
parser: "@typescript-eslint/parser",
|
||||
plugins: ["@typescript-eslint", "file-extension-in-import-ts"],
|
||||
reportUnusedDisableDirectives: true,
|
||||
rules: {
|
||||
"@typescript-eslint/consistent-type-imports": "error",
|
||||
"@typescript-eslint/consistent-type-exports": "error",
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
// @ts-check
|
||||
const { findProjectRoot, getPackageInfos } = require("workspace-tools");
|
||||
const fs = require("fs");
|
||||
const path = require("path");
|
||||
const swcOptions = require("./swc");
|
||||
|
||||
const root = findProjectRoot(process.cwd()) ?? process.cwd();
|
||||
const swcOptions = JSON.parse(fs.readFileSync(path.join(root, ".swcrc"), "utf8"));
|
||||
const packages = getPackageInfos(root);
|
||||
const moduleNameMapper = Object.values(packages).reduce((acc, { packageJsonPath, name }) => {
|
||||
const packagePath = path.dirname(packageJsonPath);
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
// @ts-check
|
||||
/**
|
||||
* Options passed to swc.transformFile
|
||||
* @type {import("@swc/core").Options}
|
||||
*/
|
||||
const options = {
|
||||
jsc: {
|
||||
parser: {
|
||||
syntax: "typescript",
|
||||
tsx: false,
|
||||
dynamicImport: true,
|
||||
},
|
||||
target: "es2020",
|
||||
},
|
||||
module: {
|
||||
type: "commonjs",
|
||||
ignoreDynamic: true,
|
||||
},
|
||||
};
|
||||
module.exports = options;
|
|
@ -1,8 +1,12 @@
|
|||
// @ts-check
|
||||
const path = require("path");
|
||||
const fs = require("fs/promises");
|
||||
const fs = require("fs");
|
||||
const fsPromises = require("fs/promises");
|
||||
const swc = require("@swc/core");
|
||||
const swcOptions = require("../config/swc");
|
||||
const { findProjectRoot } = require("workspace-tools");
|
||||
|
||||
const root = findProjectRoot(process.cwd()) ?? process.cwd();
|
||||
const swcOptions = JSON.parse(fs.readFileSync(path.join(root, ".swcrc"), "utf8"));
|
||||
|
||||
module.exports = async function transpile(data) {
|
||||
const { target } = data;
|
||||
|
@ -16,7 +20,7 @@ module.exports = async function transpile(data) {
|
|||
while (queue.length > 0) {
|
||||
const dir = queue.shift();
|
||||
|
||||
let entries = await fs.readdir(dir, { withFileTypes: true });
|
||||
let entries = await fsPromises.readdir(dir, { withFileTypes: true });
|
||||
|
||||
for (let entry of entries) {
|
||||
const fullPath = path.join(dir, entry.name);
|
||||
|
@ -29,8 +33,8 @@ module.exports = async function transpile(data) {
|
|||
.replace(/([/\\])src/, "$1lib")
|
||||
.replace(".tsx", ".js")
|
||||
.replace(".ts", ".js");
|
||||
await fs.mkdir(path.dirname(dest), { recursive: true });
|
||||
await fs.writeFile(dest, swcOutput.code);
|
||||
await fsPromises.mkdir(path.dirname(dest), { recursive: true });
|
||||
await fsPromises.writeFile(dest, swcOutput.code);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче