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:
Luiz Costa
2025-11-18 10:23:55 -03:00
parent 20129a1ac7
commit ac4f232e5e
787 changed files with 82341 additions and 121690 deletions
+94 -127
View File
@@ -9,19 +9,15 @@
// Helpers
//------------------------------------------------------------------------------
const CONSTANT_BINDINGS = new Set(["const", "using", "await using"]);
/**
* Checks whether or not a given node is a for loop.
* @param {ASTNode} block A node to check.
* @returns {boolean} `true` when the node is a for loop.
*/
function isForLoop(block) {
return (
block.type === "ForInStatement" ||
block.type === "ForOfStatement" ||
block.type === "ForStatement"
);
return block.type === "ForInStatement" ||
block.type === "ForOfStatement" ||
block.type === "ForStatement";
}
/**
@@ -30,143 +26,114 @@ function isForLoop(block) {
* @returns {boolean} `true` when the node has its initializer.
*/
function isInitialized(node) {
const declaration = node.parent;
const block = declaration.parent;
const declaration = node.parent;
const block = declaration.parent;
if (isForLoop(block)) {
if (block.type === "ForStatement") {
return block.init === declaration;
}
return block.left === declaration;
}
return Boolean(node.init);
if (isForLoop(block)) {
if (block.type === "ForStatement") {
return block.init === declaration;
}
return block.left === declaration;
}
return Boolean(node.init);
}
//------------------------------------------------------------------------------
// Rule Definition
//------------------------------------------------------------------------------
/** @type {import('../types').Rule.RuleModule} */
/** @type {import('../shared/types').Rule} */
module.exports = {
meta: {
type: "suggestion",
dialects: ["typescript", "javascript"],
language: "javascript",
meta: {
type: "suggestion",
docs: {
description:
"Require or disallow initialization in variable declarations",
recommended: false,
frozen: true,
url: "https://eslint.org/docs/latest/rules/init-declarations",
},
docs: {
description: "Require or disallow initialization in variable declarations",
recommended: false,
url: "https://eslint.org/docs/latest/rules/init-declarations"
},
schema: {
anyOf: [
{
type: "array",
items: [
{
enum: ["always"],
},
],
minItems: 0,
maxItems: 1,
},
{
type: "array",
items: [
{
enum: ["never"],
},
{
type: "object",
properties: {
ignoreForLoopInit: {
type: "boolean",
},
},
additionalProperties: false,
},
],
minItems: 0,
maxItems: 2,
},
],
},
messages: {
initialized:
"Variable '{{idName}}' should be initialized on declaration.",
notInitialized:
"Variable '{{idName}}' should not be initialized on declaration.",
},
},
schema: {
anyOf: [
{
type: "array",
items: [
{
enum: ["always"]
}
],
minItems: 0,
maxItems: 1
},
{
type: "array",
items: [
{
enum: ["never"]
},
{
type: "object",
properties: {
ignoreForLoopInit: {
type: "boolean"
}
},
additionalProperties: false
}
],
minItems: 0,
maxItems: 2
}
]
},
messages: {
initialized: "Variable '{{idName}}' should be initialized on declaration.",
notInitialized: "Variable '{{idName}}' should not be initialized on declaration."
}
},
create(context) {
const MODE_ALWAYS = "always",
MODE_NEVER = "never";
create(context) {
const mode = context.options[0] || MODE_ALWAYS;
const params = context.options[1] || {};
const MODE_ALWAYS = "always",
MODE_NEVER = "never";
// Track whether we're inside a declared namespace
let insideDeclaredNamespace = false;
const mode = context.options[0] || MODE_ALWAYS;
const params = context.options[1] || {};
//--------------------------------------------------------------------------
// Public API
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
// Public API
//--------------------------------------------------------------------------
return {
TSModuleDeclaration(node) {
if (node.declare) {
insideDeclaredNamespace = true;
}
},
return {
"VariableDeclaration:exit"(node) {
"TSModuleDeclaration:exit"(node) {
if (node.declare) {
insideDeclaredNamespace = false;
}
},
const kind = node.kind,
declarations = node.declarations;
"VariableDeclaration:exit"(node) {
const kind = node.kind,
declarations = node.declarations;
for (let i = 0; i < declarations.length; ++i) {
const declaration = declarations[i],
id = declaration.id,
initialized = isInitialized(declaration),
isIgnoredForLoop = params.ignoreForLoopInit && isForLoop(node.parent);
let messageId = "";
if (node.declare || insideDeclaredNamespace) {
return;
}
if (mode === MODE_ALWAYS && !initialized) {
messageId = "initialized";
} else if (mode === MODE_NEVER && kind !== "const" && initialized && !isIgnoredForLoop) {
messageId = "notInitialized";
}
for (let i = 0; i < declarations.length; ++i) {
const declaration = declarations[i],
id = declaration.id,
initialized = isInitialized(declaration),
isIgnoredForLoop =
params.ignoreForLoopInit && isForLoop(node.parent);
let messageId = "";
if (mode === MODE_ALWAYS && !initialized) {
messageId = "initialized";
} else if (
mode === MODE_NEVER &&
!CONSTANT_BINDINGS.has(kind) &&
initialized &&
!isIgnoredForLoop
) {
messageId = "notInitialized";
}
if (id.type === "Identifier" && messageId) {
context.report({
node: declaration,
messageId,
data: {
idName: id.name,
},
});
}
}
},
};
},
if (id.type === "Identifier" && messageId) {
context.report({
node: declaration,
messageId,
data: {
idName: id.name
}
});
}
}
}
};
}
};