Remove more Array#reduce() (#10907)

This commit is contained in:
fisker Cheung authored and GitHub committed 2021-05-24 01:26:00 +03:00
1 parent c40a0cf2b8
commit c286d847d9
3 files changed
+20 -20

No files matched your search

+7 -6
View File
@@ -1,17 +1,18 @@
import path from "node:path";
export default function (modules = []) {
const requires = modules.reduce((obj, mod) => {
obj[mod] = path.basename(mod).replace(/\.js$/, "");
return obj;
}, {});
const requires = new Map(
modules.map((mod) => [mod, path.basename(mod).replace(/\.js$/, "")])
);
return {
name: "externals",
load(importee) {
if (requires[importee]) {
return `module.exports = eval("require")("./${requires[importee]}");`;
if (requires.has(importee)) {
return `module.exports = eval("require")("./${requires.get(
importee
)}");`;
}
},
};
+4 -5
View File
@@ -46,10 +46,9 @@ const categories = [
{ dir: "cli", title: "CLI" },
];
const categoriesByDir = categories.reduce((result, category) => {
result[category.dir] = category;
return result;
}, {});
const categoriesByDir = new Map(
categories.map((category) => [category.dir, category])
);
const dirs = fs
.readdirSync(changelogUnreleasedDir, { withFileTypes: true })
@@ -57,7 +56,7 @@ const dirs = fs
for (const dir of dirs) {
const dirPath = path.join(changelogUnreleasedDir, dir.name);
const category = categoriesByDir[dir.name];
const category = categoriesByDir.get(dir.name);
if (!category) {
throw new Error("Unknown category: " + dir.name);
+9 -9
View File
@@ -13,13 +13,14 @@ describe("CLI --support-info", () => {
function getCoreInfo() {
const supportInfo = prettier.getSupportInfo();
const languages = supportInfo.languages.reduce(
(obj, language) => ({ [language.name]: language.parsers, ...obj }),
{}
const languages = Object.fromEntries(
supportInfo.languages.map(({ name, parsers }) => [name, parsers])
);
const options = supportInfo.options.reduce(
(obj, option) => ({
[option.name]: {
const options = Object.fromEntries(
supportInfo.options.map((option) => [
option.name,
{
type: option.type,
default: option.default,
...(option.type === "int"
@@ -28,9 +29,8 @@ function getCoreInfo() {
? { choices: option.choices.map((choice) => choice.value) }
: null),
},
...obj,
}),
{}
])
);
return { languages, options };
}