build: update npm install command to use --legacy-peer-deps
This change modifies the build scripts to use --legacy-peer-deps flag when installing npm dependencies to resolve potential peer dependency conflicts during the build process. The change is applied to both bash (build.sh) and batch (build.bat) build scripts.
This commit is contained in:
+51
-77
@@ -5,97 +5,71 @@
|
||||
|
||||
"use strict";
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Requirements
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
const astUtils = require("./utils/ast-utils");
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Helpers
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
const CONSTANT_BINDINGS = new Set(["const", "using", "await using"]);
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
/** @type {import('../types').Rule.RuleModule} */
|
||||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
type: "suggestion",
|
||||
meta: {
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
description: "Disallow initializing variables to `undefined`",
|
||||
recommended: false,
|
||||
frozen: true,
|
||||
url: "https://eslint.org/docs/latest/rules/no-undef-init",
|
||||
},
|
||||
docs: {
|
||||
description: "Disallow initializing variables to `undefined`",
|
||||
recommended: false,
|
||||
url: "https://eslint.org/docs/latest/rules/no-undef-init"
|
||||
},
|
||||
|
||||
schema: [],
|
||||
fixable: "code",
|
||||
schema: [],
|
||||
fixable: "code",
|
||||
|
||||
messages: {
|
||||
unnecessaryUndefinedInit:
|
||||
"It's not necessary to initialize '{{name}}' to undefined.",
|
||||
},
|
||||
},
|
||||
messages: {
|
||||
unnecessaryUndefinedInit: "It's not necessary to initialize '{{name}}' to undefined."
|
||||
}
|
||||
},
|
||||
|
||||
create(context) {
|
||||
const sourceCode = context.sourceCode;
|
||||
create(context) {
|
||||
|
||||
return {
|
||||
VariableDeclarator(node) {
|
||||
const name = sourceCode.getText(node.id),
|
||||
init = node.init && node.init.name,
|
||||
scope = sourceCode.getScope(node),
|
||||
undefinedVar = astUtils.getVariableByName(
|
||||
scope,
|
||||
"undefined",
|
||||
),
|
||||
shadowed = undefinedVar && undefinedVar.defs.length > 0,
|
||||
lastToken = sourceCode.getLastToken(node);
|
||||
const sourceCode = context.sourceCode;
|
||||
|
||||
if (
|
||||
init === "undefined" &&
|
||||
!CONSTANT_BINDINGS.has(node.parent.kind) &&
|
||||
!shadowed
|
||||
) {
|
||||
context.report({
|
||||
node,
|
||||
messageId: "unnecessaryUndefinedInit",
|
||||
data: { name },
|
||||
fix(fixer) {
|
||||
if (node.parent.kind === "var") {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
if (
|
||||
node.id.type === "ArrayPattern" ||
|
||||
node.id.type === "ObjectPattern"
|
||||
) {
|
||||
// Don't fix destructuring assignment to `undefined`.
|
||||
return null;
|
||||
}
|
||||
VariableDeclarator(node) {
|
||||
const name = sourceCode.getText(node.id),
|
||||
init = node.init && node.init.name,
|
||||
scope = sourceCode.getScope(node),
|
||||
undefinedVar = astUtils.getVariableByName(scope, "undefined"),
|
||||
shadowed = undefinedVar && undefinedVar.defs.length > 0,
|
||||
lastToken = sourceCode.getLastToken(node);
|
||||
|
||||
if (
|
||||
sourceCode.commentsExistBetween(
|
||||
node.id,
|
||||
lastToken,
|
||||
)
|
||||
) {
|
||||
return null;
|
||||
}
|
||||
if (init === "undefined" && node.parent.kind !== "const" && !shadowed) {
|
||||
context.report({
|
||||
node,
|
||||
messageId: "unnecessaryUndefinedInit",
|
||||
data: { name },
|
||||
fix(fixer) {
|
||||
if (node.parent.kind === "var") {
|
||||
return null;
|
||||
}
|
||||
|
||||
return fixer.removeRange([
|
||||
node.id.range[1],
|
||||
node.range[1],
|
||||
]);
|
||||
},
|
||||
});
|
||||
}
|
||||
},
|
||||
};
|
||||
},
|
||||
if (node.id.type === "ArrayPattern" || node.id.type === "ObjectPattern") {
|
||||
|
||||
// Don't fix destructuring assignment to `undefined`.
|
||||
return null;
|
||||
}
|
||||
|
||||
if (sourceCode.commentsExistBetween(node.id, lastToken)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return fixer.removeRange([node.id.range[1], node.range[1]]);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user