Files
Agent-n8n/web_frontend/exhibition-demo/node_modules/eslint/lib/rules/default-param-last.js
Yep_Q 1564396449 feat: 完善会展策划演示系统
详细说明:
- 添加了V2版本的工作流页面和结果页面
- 更新了Serena记忆文件
- 添加了详细实施计划文档
- 优化了Vite配置
- 更新了项目文档CLAUDE.md
- 构建了演示系统的dist版本
- 包含了exhibition-demo的完整依赖
2025-09-08 11:15:23 +08:00

63 lines
1.6 KiB
JavaScript

/**
* @fileoverview enforce default parameters to be last
* @author Chiawen Chen
*/
"use strict";
/** @type {import('../shared/types').Rule} */
module.exports = {
meta: {
type: "suggestion",
docs: {
description: "Enforce default parameters to be last",
recommended: false,
url: "https://eslint.org/docs/latest/rules/default-param-last"
},
schema: [],
messages: {
shouldBeLast: "Default parameters should be last."
}
},
create(context) {
/**
* Handler for function contexts.
* @param {ASTNode} node function node
* @returns {void}
*/
function handleFunction(node) {
let hasSeenPlainParam = false;
for (let i = node.params.length - 1; i >= 0; i -= 1) {
const param = node.params[i];
if (
param.type !== "AssignmentPattern" &&
param.type !== "RestElement"
) {
hasSeenPlainParam = true;
continue;
}
if (hasSeenPlainParam && param.type === "AssignmentPattern") {
context.report({
node: param,
messageId: "shouldBeLast"
});
}
}
}
return {
FunctionDeclaration: handleFunction,
FunctionExpression: handleFunction,
ArrowFunctionExpression: handleFunction
};
}
};