@sfdxy/mule-lint 1.7.2 → 1.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -0
- package/dist/bin/mule-lint-mcp.d.ts +3 -0
- package/dist/bin/mule-lint-mcp.d.ts.map +1 -0
- package/dist/bin/mule-lint-mcp.js +13 -0
- package/dist/bin/mule-lint-mcp.js.map +1 -0
- package/dist/package.json +6 -3
- package/dist/src/core/ComplexityCalculator.d.ts.map +1 -1
- package/dist/src/core/ComplexityCalculator.js +8 -8
- package/dist/src/core/ComplexityCalculator.js.map +1 -1
- package/dist/src/core/FileScanner.d.ts.map +1 -1
- package/dist/src/core/FileScanner.js +11 -12
- package/dist/src/core/FileScanner.js.map +1 -1
- package/dist/src/core/XPathHelper.d.ts.map +1 -1
- package/dist/src/core/XPathHelper.js +23 -23
- package/dist/src/core/XPathHelper.js.map +1 -1
- package/dist/src/core/XmlParser.js +1 -1
- package/dist/src/core/XmlParser.js.map +1 -1
- package/dist/src/core/YamlParser.d.ts.map +1 -1
- package/dist/src/core/YamlParser.js +1 -1
- package/dist/src/core/YamlParser.js.map +1 -1
- package/dist/src/engine/LintEngine.d.ts.map +1 -1
- package/dist/src/engine/LintEngine.js +6 -4
- package/dist/src/engine/LintEngine.js.map +1 -1
- package/dist/src/formatters/CsvFormatter.d.ts.map +1 -1
- package/dist/src/formatters/CsvFormatter.js +6 -4
- package/dist/src/formatters/CsvFormatter.js.map +1 -1
- package/dist/src/formatters/HtmlFormatter.d.ts.map +1 -1
- package/dist/src/formatters/HtmlFormatter.js +12 -7
- package/dist/src/formatters/HtmlFormatter.js.map +1 -1
- package/dist/src/formatters/SarifFormatter.d.ts.map +1 -1
- package/dist/src/formatters/SarifFormatter.js +20 -10
- package/dist/src/formatters/SarifFormatter.js.map +1 -1
- package/dist/src/formatters/TableFormatter.d.ts.map +1 -1
- package/dist/src/formatters/TableFormatter.js +1 -1
- package/dist/src/formatters/TableFormatter.js.map +1 -1
- package/dist/src/mcp/index.d.ts +13 -0
- package/dist/src/mcp/index.d.ts.map +1 -0
- package/dist/src/mcp/index.js +375 -0
- package/dist/src/mcp/index.js.map +1 -0
- package/dist/src/rules/api-led/ApiLedRules.d.ts.map +1 -1
- package/dist/src/rules/api-led/ApiLedRules.js +3 -1
- package/dist/src/rules/api-led/ApiLedRules.js.map +1 -1
- package/dist/src/rules/base/BaseRule.d.ts.map +1 -1
- package/dist/src/rules/base/BaseRule.js +1 -1
- package/dist/src/rules/base/BaseRule.js.map +1 -1
- package/dist/src/rules/complexity/FlowComplexityRule.d.ts.map +1 -1
- package/dist/src/rules/complexity/FlowComplexityRule.js +3 -5
- package/dist/src/rules/complexity/FlowComplexityRule.js.map +1 -1
- package/dist/src/rules/dataweave/DataWeaveRules.d.ts.map +1 -1
- package/dist/src/rules/dataweave/DataWeaveRules.js +5 -5
- package/dist/src/rules/dataweave/DataWeaveRules.js.map +1 -1
- package/dist/src/rules/dataweave/Java17DWErrorHandlingRule.d.ts +21 -0
- package/dist/src/rules/dataweave/Java17DWErrorHandlingRule.d.ts.map +1 -0
- package/dist/src/rules/dataweave/Java17DWErrorHandlingRule.js +162 -0
- package/dist/src/rules/dataweave/Java17DWErrorHandlingRule.js.map +1 -0
- package/dist/src/rules/documentation/FlowDescriptionRule.d.ts.map +1 -1
- package/dist/src/rules/documentation/FlowDescriptionRule.js +1 -1
- package/dist/src/rules/documentation/FlowDescriptionRule.js.map +1 -1
- package/dist/src/rules/documentation/MissingDocNameRule.d.ts.map +1 -1
- package/dist/src/rules/documentation/MissingDocNameRule.js +1 -1
- package/dist/src/rules/documentation/MissingDocNameRule.js.map +1 -1
- package/dist/src/rules/error-handling/CorrelationIdRule.d.ts.map +1 -1
- package/dist/src/rules/error-handling/CorrelationIdRule.js +1 -1
- package/dist/src/rules/error-handling/CorrelationIdRule.js.map +1 -1
- package/dist/src/rules/error-handling/GenericErrorRule.d.ts.map +1 -1
- package/dist/src/rules/error-handling/GenericErrorRule.js +2 -5
- package/dist/src/rules/error-handling/GenericErrorRule.js.map +1 -1
- package/dist/src/rules/error-handling/GlobalErrorHandlerRule.d.ts.map +1 -1
- package/dist/src/rules/error-handling/GlobalErrorHandlerRule.js +1 -1
- package/dist/src/rules/error-handling/GlobalErrorHandlerRule.js.map +1 -1
- package/dist/src/rules/error-handling/HttpStatusRule.d.ts.map +1 -1
- package/dist/src/rules/error-handling/HttpStatusRule.js +1 -1
- package/dist/src/rules/error-handling/HttpStatusRule.js.map +1 -1
- package/dist/src/rules/error-handling/MissingErrorHandlerRule.d.ts.map +1 -1
- package/dist/src/rules/error-handling/MissingErrorHandlerRule.js +1 -1
- package/dist/src/rules/error-handling/MissingErrorHandlerRule.js.map +1 -1
- package/dist/src/rules/experimental/ExperimentalRules.d.ts.map +1 -1
- package/dist/src/rules/experimental/ExperimentalRules.js +1 -1
- package/dist/src/rules/experimental/ExperimentalRules.js.map +1 -1
- package/dist/src/rules/http/HttpContentTypeRule.d.ts.map +1 -1
- package/dist/src/rules/http/HttpContentTypeRule.js +1 -1
- package/dist/src/rules/http/HttpContentTypeRule.js.map +1 -1
- package/dist/src/rules/http/HttpTimeoutRule.d.ts.map +1 -1
- package/dist/src/rules/http/HttpTimeoutRule.js +1 -1
- package/dist/src/rules/http/HttpTimeoutRule.js.map +1 -1
- package/dist/src/rules/http/HttpUserAgentRule.d.ts.map +1 -1
- package/dist/src/rules/http/HttpUserAgentRule.js +1 -1
- package/dist/src/rules/http/HttpUserAgentRule.js.map +1 -1
- package/dist/src/rules/index.d.ts +1 -1
- package/dist/src/rules/index.d.ts.map +1 -1
- package/dist/src/rules/index.js +7 -5
- package/dist/src/rules/index.js.map +1 -1
- package/dist/src/rules/logging/LoggerCategoryRule.js +2 -2
- package/dist/src/rules/logging/LoggerCategoryRule.js.map +1 -1
- package/dist/src/rules/logging/LoggerInUntilSuccessfulRule.js +1 -1
- package/dist/src/rules/logging/LoggerInUntilSuccessfulRule.js.map +1 -1
- package/dist/src/rules/logging/LoggerPayloadRule.d.ts.map +1 -1
- package/dist/src/rules/logging/LoggerPayloadRule.js +3 -3
- package/dist/src/rules/logging/LoggerPayloadRule.js.map +1 -1
- package/dist/src/rules/naming/FlowCasingRule.d.ts.map +1 -1
- package/dist/src/rules/naming/FlowCasingRule.js +1 -1
- package/dist/src/rules/naming/FlowCasingRule.js.map +1 -1
- package/dist/src/rules/naming/FlowNamingRule.d.ts.map +1 -1
- package/dist/src/rules/naming/FlowNamingRule.js +3 -1
- package/dist/src/rules/naming/FlowNamingRule.js.map +1 -1
- package/dist/src/rules/naming/VariableNamingRule.d.ts.map +1 -1
- package/dist/src/rules/naming/VariableNamingRule.js +3 -3
- package/dist/src/rules/naming/VariableNamingRule.js.map +1 -1
- package/dist/src/rules/performance/AsyncErrorHandlerRule.d.ts.map +1 -1
- package/dist/src/rules/performance/AsyncErrorHandlerRule.js +1 -1
- package/dist/src/rules/performance/AsyncErrorHandlerRule.js.map +1 -1
- package/dist/src/rules/performance/LargeChoiceBlockRule.d.ts.map +1 -1
- package/dist/src/rules/performance/LargeChoiceBlockRule.js +1 -1
- package/dist/src/rules/performance/LargeChoiceBlockRule.js.map +1 -1
- package/dist/src/rules/performance/ScatterGatherRoutesRule.d.ts.map +1 -1
- package/dist/src/rules/performance/ScatterGatherRoutesRule.js +1 -1
- package/dist/src/rules/performance/ScatterGatherRoutesRule.js.map +1 -1
- package/dist/src/rules/security/HardcodedCredentialsRule.d.ts.map +1 -1
- package/dist/src/rules/security/HardcodedCredentialsRule.js +2 -2
- package/dist/src/rules/security/HardcodedCredentialsRule.js.map +1 -1
- package/dist/src/rules/security/HardcodedHttpRule.d.ts.map +1 -1
- package/dist/src/rules/security/HardcodedHttpRule.js +2 -6
- package/dist/src/rules/security/HardcodedHttpRule.js.map +1 -1
- package/dist/src/rules/security/InsecureTlsRule.d.ts.map +1 -1
- package/dist/src/rules/security/InsecureTlsRule.js +2 -2
- package/dist/src/rules/security/InsecureTlsRule.js.map +1 -1
- package/dist/src/rules/standards/ChoiceAntiPatternRule.d.ts.map +1 -1
- package/dist/src/rules/standards/ChoiceAntiPatternRule.js +2 -2
- package/dist/src/rules/standards/ChoiceAntiPatternRule.js.map +1 -1
- package/dist/src/rules/standards/DeprecatedComponentRule.d.ts.map +1 -1
- package/dist/src/rules/standards/DeprecatedComponentRule.js +1 -1
- package/dist/src/rules/standards/DeprecatedComponentRule.js.map +1 -1
- package/dist/src/rules/standards/DwlStandardsRule.d.ts.map +1 -1
- package/dist/src/rules/standards/DwlStandardsRule.js +1 -1
- package/dist/src/rules/standards/DwlStandardsRule.js.map +1 -1
- package/dist/src/rules/structure/StructureRules.d.ts.map +1 -1
- package/dist/src/rules/structure/StructureRules.js +6 -9
- package/dist/src/rules/structure/StructureRules.js.map +1 -1
- package/dist/src/rules/yaml/YamlRules.d.ts.map +1 -1
- package/dist/src/rules/yaml/YamlRules.js +13 -9
- package/dist/src/rules/yaml/YamlRules.js.map +1 -1
- package/dist/src/types/Config.d.ts.map +1 -1
- package/dist/src/types/Config.js +1 -5
- package/dist/src/types/Config.js.map +1 -1
- package/docs/README.md +95 -0
- package/docs/best-practices/documentation-standards.md +82 -0
- package/docs/best-practices/folder-structure.md +61 -0
- package/docs/best-practices/mulesoft-best-practices.md +902 -0
- package/docs/best-practices/rules-catalog.md +736 -0
- package/docs/linter/architecture.md +294 -0
- package/docs/linter/extending.md +426 -0
- package/docs/linter/folder-structure.md +251 -0
- package/docs/linter/images/html-report-dashboard.png +0 -0
- package/docs/linter/naming-conventions.md +300 -0
- package/docs/linter/rule-engine.md +532 -0
- package/docs/mcp-design.md +80 -0
- package/package.json +7 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpContentTypeRule.js","sourceRoot":"","sources":["../../../../src/rules/http/HttpContentTypeRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,mBAAoB,SAAQ,mBAAQ;IAC7C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,2BAA2B,CAAC;IACnC,WAAW,GAAG,2DAA2D,CAAC;IAC1E,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,MAAe,CAAC;IAE3B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAErE,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,SAAS;YAE5E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;YAEnE,kCAAkC;YAClC,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACxC,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBAE1D,IAAI,CAAC,cAAc,EAAE,CAAC;oBAClB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC;oBAC3D,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"HttpContentTypeRule.js","sourceRoot":"","sources":["../../../../src/rules/http/HttpContentTypeRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,mBAAoB,SAAQ,mBAAQ;IAC7C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,2BAA2B,CAAC;IACnC,WAAW,GAAG,2DAA2D,CAAC;IAC1E,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,MAAe,CAAC;IAE3B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAErE,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,SAAS;YAE5E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;YAEnE,kCAAkC;YAClC,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACxC,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBAE1D,IAAI,CAAC,cAAc,EAAE,CAAC;oBAClB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC;oBAC3D,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,OAAO,EACP,GAAG,MAAM,aAAa,OAAO,kCAAkC,EAC/D;wBACI,UAAU,EACN,+EAA+E;qBACtF,CACJ,CACJ,CAAC;gBACN,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,oBAAoB,CAAC,OAAa;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,6BAA6B,EAAE,OAAmB,CAAC,CAAC;QAChF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;YACjE,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,cAAc,EAAE,CAAC;gBAC9C,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AApDD,kDAoDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpTimeoutRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/http/HttpTimeoutRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IACzC,EAAE,SAAc;IAChB,IAAI,SAA0B;IAC9B,WAAW,SAA8D;IACzE,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,MAAM,CAAU;IAE3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"HttpTimeoutRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/http/HttpTimeoutRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IACzC,EAAE,SAAc;IAChB,IAAI,SAA0B;IAC9B,WAAW,SAA8D;IACzE,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,MAAM,CAAU;IAE3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAyBhE"}
|
|
@@ -22,7 +22,7 @@ class HttpTimeoutRule extends BaseRule_1.BaseRule {
|
|
|
22
22
|
if (!hasTimeout) {
|
|
23
23
|
const name = this.getNameAttribute(config) ?? 'HTTP Request Config';
|
|
24
24
|
issues.push(this.createIssue(config, `HTTP config "${name}" has no responseTimeout - defaults may cause issues`, {
|
|
25
|
-
suggestion: 'Add responseTimeout="30000" or appropriate value'
|
|
25
|
+
suggestion: 'Add responseTimeout="30000" or appropriate value',
|
|
26
26
|
}));
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpTimeoutRule.js","sourceRoot":"","sources":["../../../../src/rules/http/HttpTimeoutRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,mBAAQ;IACzC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,sBAAsB,CAAC;IAC9B,WAAW,GAAG,0DAA0D,CAAC;IACzE,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,MAAe,CAAC;IAE3B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,mCAAmC;QACnC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QAE9E,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,IAAI,CAAC;YAEzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC;gBACpE,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"HttpTimeoutRule.js","sourceRoot":"","sources":["../../../../src/rules/http/HttpTimeoutRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,mBAAQ;IACzC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,sBAAsB,CAAC;IAC9B,WAAW,GAAG,0DAA0D,CAAC;IACzE,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,MAAe,CAAC;IAE3B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,mCAAmC;QACnC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QAE9E,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,IAAI,CAAC;YAEzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC;gBACpE,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,MAAM,EACN,gBAAgB,IAAI,sDAAsD,EAC1E;oBACI,UAAU,EAAE,kDAAkD;iBACjE,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAhCD,0CAgCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpUserAgentRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/http/HttpUserAgentRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,EAAE,SAAc;IAChB,IAAI,SAA6B;IACjC,WAAW,SAAoD;IAC/D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,MAAM,CAAU;IAE3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"HttpUserAgentRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/http/HttpUserAgentRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,EAAE,SAAc;IAChB,IAAI,SAA6B;IACjC,WAAW,SAAoD;IAC/D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,MAAM,CAAU;IAE3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;IAgC7D,OAAO,CAAC,kBAAkB;CAU7B"}
|
|
@@ -27,7 +27,7 @@ class HttpUserAgentRule extends BaseRule_1.BaseRule {
|
|
|
27
27
|
if (!hasUserAgent) {
|
|
28
28
|
const docName = this.getDocName(request) ?? 'HTTP Request';
|
|
29
29
|
issues.push(this.createIssue(request, `HTTP request "${docName}" is missing User-Agent header`, {
|
|
30
|
-
suggestion: 'Add header: <http:header headerName="User-Agent" value="MyApp/1.0"/>'
|
|
30
|
+
suggestion: 'Add header: <http:header headerName="User-Agent" value="MyApp/1.0"/>',
|
|
31
31
|
}));
|
|
32
32
|
}
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpUserAgentRule.js","sourceRoot":"","sources":["../../../../src/rules/http/HttpUserAgentRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,iBAAkB,SAAQ,mBAAQ;IAC3C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,yBAAyB,CAAC;IACjC,WAAW,GAAG,gDAAgD,CAAC;IAC/D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,MAAe,CAAC;IAE3B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAErE,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACjC,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,SAAS;YAE5E,8BAA8B;YAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAEtD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC;gBAC3D,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"HttpUserAgentRule.js","sourceRoot":"","sources":["../../../../src/rules/http/HttpUserAgentRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,iBAAkB,SAAQ,mBAAQ;IAC3C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,yBAAyB,CAAC;IACjC,WAAW,GAAG,gDAAgD,CAAC;IAC/D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,MAAe,CAAC;IAE3B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAErE,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACjC,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,SAAS;YAE5E,8BAA8B;YAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAEtD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC;gBAC3D,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,OAAO,EACP,iBAAiB,OAAO,gCAAgC,EACxD;oBACI,UAAU,EACN,sEAAsE;iBAC7E,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,kBAAkB,CAAC,OAAa;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,6BAA6B,EAAE,OAAmB,CAAC,CAAC;QAChF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;YACjE,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,YAAY,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAjDD,8CAiDC"}
|
|
@@ -27,7 +27,7 @@ export { AsyncErrorHandlerRule } from './performance/AsyncErrorHandlerRule';
|
|
|
27
27
|
export { LargeChoiceBlockRule } from './performance/LargeChoiceBlockRule';
|
|
28
28
|
/**
|
|
29
29
|
* All available rules - instantiated and ready to use
|
|
30
|
-
* Total:
|
|
30
|
+
* Total: 26 rules
|
|
31
31
|
*/
|
|
32
32
|
export declare const ALL_RULES: Rule[];
|
|
33
33
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rules/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rules/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAsEhC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGhC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAGpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAG9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAGxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,IAAI,EAuE3B,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,CAE3D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAExD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC"}
|
package/dist/src/rules/index.js
CHANGED
|
@@ -61,6 +61,7 @@ const YamlRules_1 = require("./yaml/YamlRules");
|
|
|
61
61
|
const StructureRules_1 = require("./structure/StructureRules");
|
|
62
62
|
// Import all rules - DataWeave
|
|
63
63
|
const DataWeaveRules_1 = require("./dataweave/DataWeaveRules");
|
|
64
|
+
const Java17DWErrorHandlingRule_1 = require("./dataweave/Java17DWErrorHandlingRule");
|
|
64
65
|
// Import all rules - API-Led
|
|
65
66
|
const ApiLedRules_1 = require("./api-led/ApiLedRules");
|
|
66
67
|
// Import all rules - Experimental
|
|
@@ -125,7 +126,7 @@ var LargeChoiceBlockRule_2 = require("./performance/LargeChoiceBlockRule");
|
|
|
125
126
|
Object.defineProperty(exports, "LargeChoiceBlockRule", { enumerable: true, get: function () { return LargeChoiceBlockRule_2.LargeChoiceBlockRule; } });
|
|
126
127
|
/**
|
|
127
128
|
* All available rules - instantiated and ready to use
|
|
128
|
-
* Total:
|
|
129
|
+
* Total: 26 rules
|
|
129
130
|
*/
|
|
130
131
|
exports.ALL_RULES = [
|
|
131
132
|
// Error Handling Rules (MULE-001, 003, 005, 007, 009)
|
|
@@ -171,10 +172,11 @@ exports.ALL_RULES = [
|
|
|
171
172
|
new StructureRules_1.ProjectStructureRule(),
|
|
172
173
|
new StructureRules_1.GlobalConfigRule(),
|
|
173
174
|
new StructureRules_1.MonolithicXmlRule(),
|
|
174
|
-
// DataWeave Rules (DW-001, 002, 003)
|
|
175
|
+
// DataWeave Rules (DW-001, 002, 003, 004)
|
|
175
176
|
new DataWeaveRules_1.ExternalDwlRule(),
|
|
176
177
|
new DataWeaveRules_1.DwlNamingRule(),
|
|
177
178
|
new DataWeaveRules_1.DwlModulesRule(),
|
|
179
|
+
new Java17DWErrorHandlingRule_1.Java17DWErrorHandlingRule(),
|
|
178
180
|
// API-Led Rules (API-001, 002, 003)
|
|
179
181
|
new ApiLedRules_1.ExperienceLayerRule(),
|
|
180
182
|
new ApiLedRules_1.ProcessLayerRule(),
|
|
@@ -188,18 +190,18 @@ exports.ALL_RULES = [
|
|
|
188
190
|
* Get rules by category
|
|
189
191
|
*/
|
|
190
192
|
function getRulesByCategory(category) {
|
|
191
|
-
return exports.ALL_RULES.filter(rule => rule.category === category);
|
|
193
|
+
return exports.ALL_RULES.filter((rule) => rule.category === category);
|
|
192
194
|
}
|
|
193
195
|
/**
|
|
194
196
|
* Get rule by ID
|
|
195
197
|
*/
|
|
196
198
|
function getRuleById(id) {
|
|
197
|
-
return exports.ALL_RULES.find(rule => rule.id === id);
|
|
199
|
+
return exports.ALL_RULES.find((rule) => rule.id === id);
|
|
198
200
|
}
|
|
199
201
|
/**
|
|
200
202
|
* Get all rule IDs
|
|
201
203
|
*/
|
|
202
204
|
function getAllRuleIds() {
|
|
203
|
-
return exports.ALL_RULES.map(rule => rule.id);
|
|
205
|
+
return exports.ALL_RULES.map((rule) => rule.id);
|
|
204
206
|
}
|
|
205
207
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rules/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ class LoggerCategoryRule extends BaseRule_1.BaseRule {
|
|
|
24
24
|
const docName = this.getDocName(logger) ?? 'Logger';
|
|
25
25
|
const suggestedCategory = this.suggestCategory(context.relativePath);
|
|
26
26
|
issues.push(this.createIssue(logger, `Logger "${docName}" is missing 'category' attribute`, {
|
|
27
|
-
suggestion: `Add category="${suggestedCategory}"
|
|
27
|
+
suggestion: `Add category="${suggestedCategory}"`,
|
|
28
28
|
}));
|
|
29
29
|
}
|
|
30
30
|
// If required prefix is set, verify all loggers use it
|
|
@@ -36,7 +36,7 @@ class LoggerCategoryRule extends BaseRule_1.BaseRule {
|
|
|
36
36
|
const docName = this.getDocName(logger) ?? 'Logger';
|
|
37
37
|
issues.push(this.createIssue(logger, `Logger "${docName}" category "${category}" should start with "${requiredPrefix}"`, {
|
|
38
38
|
suggestion: `Update category to "${requiredPrefix}.${category}"`,
|
|
39
|
-
severity: 'info'
|
|
39
|
+
severity: 'info',
|
|
40
40
|
}));
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggerCategoryRule.js","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerCategoryRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,kBAAmB,SAAQ,mBAAQ;IAC5C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,0BAA0B,CAAC;IAClC,WAAW,GAAG,uEAAuE,CAAC;IACtF,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,SAAkB,CAAC;IAE9B,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,+BAA+B;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAgB,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAEtF,gCAAgC;QAChC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QAEjF,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;YACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAErE,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"LoggerCategoryRule.js","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerCategoryRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,kBAAmB,SAAQ,mBAAQ;IAC5C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,0BAA0B,CAAC;IAClC,WAAW,GAAG,uEAAuE,CAAC;IACtF,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,SAAkB,CAAC;IAE9B,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,+BAA+B;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAgB,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAEtF,gCAAgC;QAChC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QAEjF,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;YACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAErE,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,OAAO,mCAAmC,EAAE;gBAC5E,UAAU,EAAE,iBAAiB,iBAAiB,GAAG;aACpD,CAAC,CACL,CAAC;QACN,CAAC;QAED,uDAAuD;QACvD,IAAI,cAAc,EAAE,CAAC;YACjB,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;YAEzE,KAAK,MAAM,MAAM,IAAI,mBAAmB,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBACvD,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBACnD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;oBAEpD,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,MAAM,EACN,WAAW,OAAO,eAAe,QAAQ,wBAAwB,cAAc,GAAG,EAClF;wBACI,UAAU,EAAE,uBAAuB,cAAc,IAAI,QAAQ,GAAG;wBAChE,QAAQ,EAAE,MAAM;qBACnB,CACJ,CACJ,CAAC;gBACN,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,YAAoB;QACxC,kCAAkC;QAClC,oEAAoE;QACpE,MAAM,QAAQ,GAAG,YAAY;aACxB,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;aACjC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;aACrB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;aACtB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAExB,OAAO,aAAa,QAAQ,EAAE,CAAC;IACnC,CAAC;CACJ;AAnED,gDAmEC"}
|
|
@@ -19,7 +19,7 @@ class LoggerInUntilSuccessfulRule extends BaseRule_1.BaseRule {
|
|
|
19
19
|
for (const logger of loggersInUntilSuccessful) {
|
|
20
20
|
const docName = this.getDocName(logger) ?? 'Logger';
|
|
21
21
|
issues.push(this.createIssue(logger, `Logger "${docName}" inside until-successful may flood logs on retries`, {
|
|
22
|
-
suggestion: 'Move logger outside until-successful or use conditional logging'
|
|
22
|
+
suggestion: 'Move logger outside until-successful or use conditional logging',
|
|
23
23
|
}));
|
|
24
24
|
}
|
|
25
25
|
return issues;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggerInUntilSuccessfulRule.js","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerInUntilSuccessfulRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,2BAA4B,SAAQ,mBAAQ;IACrD,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,6CAA6C,CAAC;IAC5D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,SAAkB,CAAC;IAE9B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,wBAAwB,GAAG,IAAI,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"LoggerInUntilSuccessfulRule.js","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerInUntilSuccessfulRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,2BAA4B,SAAQ,mBAAQ;IACrD,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,6CAA6C,CAAC;IAC5D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,SAAkB,CAAC;IAE9B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,wBAAwB,GAAG,IAAI,CAAC,MAAM,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;QAE1F,KAAK,MAAM,MAAM,IAAI,wBAAwB,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;YACpD,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,MAAM,EACN,WAAW,OAAO,qDAAqD,EACvE;gBACI,UAAU,EACN,iEAAiE;aACxE,CACJ,CACJ,CAAC;QACN,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA5BD,kEA4BC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggerPayloadRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerPayloadRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,EAAE,SAAc;IAChB,IAAI,SAA8B;IAClC,WAAW,SAAoD;IAC/D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,SAAS,CAAU;IAE9B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"LoggerPayloadRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerPayloadRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,EAAE,SAAc;IAChB,IAAI,SAA8B;IAClC,WAAW,SAAoD;IAC/D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,SAAS,CAAU;IAE9B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;IA0B7D,OAAO,CAAC,yBAAyB;CAQpC"}
|
|
@@ -22,7 +22,7 @@ class LoggerPayloadRule extends BaseRule_1.BaseRule {
|
|
|
22
22
|
if (this.hasDirectPayloadReference(message)) {
|
|
23
23
|
const docName = this.getDocName(logger) ?? 'Logger';
|
|
24
24
|
issues.push(this.createIssue(logger, `Logger "${docName}" logs entire payload - security/performance risk`, {
|
|
25
|
-
suggestion: 'Log specific fields instead: #[payload.orderId]'
|
|
25
|
+
suggestion: 'Log specific fields instead: #[payload.orderId]',
|
|
26
26
|
}));
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -30,9 +30,9 @@ class LoggerPayloadRule extends BaseRule_1.BaseRule {
|
|
|
30
30
|
}
|
|
31
31
|
hasDirectPayloadReference(message) {
|
|
32
32
|
// Match #[payload] but not #[payload.something]
|
|
33
|
-
return /\#\[payload\s*\]/.test(message) ||
|
|
33
|
+
return (/\#\[payload\s*\]/.test(message) ||
|
|
34
34
|
/\#\[\s*payload\s*\]/.test(message) ||
|
|
35
|
-
message === '#[payload]';
|
|
35
|
+
message === '#[payload]');
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
exports.LoggerPayloadRule = LoggerPayloadRule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggerPayloadRule.js","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerPayloadRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,iBAAkB,SAAQ,mBAAQ;IAC3C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,0BAA0B,CAAC;IAClC,WAAW,GAAG,gDAAgD,CAAC;IAC/D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,SAAkB,CAAC;IAE9B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAE5D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;YAE3D,mCAAmC;YACnC,IAAI,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;gBACpD,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"LoggerPayloadRule.js","sourceRoot":"","sources":["../../../../src/rules/logging/LoggerPayloadRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,iBAAkB,SAAQ,mBAAQ;IAC3C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,0BAA0B,CAAC;IAClC,WAAW,GAAG,gDAAgD,CAAC;IAC/D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,SAAkB,CAAC;IAE9B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAE5D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;YAE3D,mCAAmC;YACnC,IAAI,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;gBACpD,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,MAAM,EACN,WAAW,OAAO,mDAAmD,EACrE;oBACI,UAAU,EAAE,iDAAiD;iBAChE,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,yBAAyB,CAAC,OAAe;QAC7C,gDAAgD;QAChD,OAAO,CACH,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;YAChC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC;YACnC,OAAO,KAAK,YAAY,CAC3B,CAAC;IACN,CAAC;CACJ;AAzCD,8CAyCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowCasingRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/naming/FlowCasingRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IACxC,EAAE,SAAc;IAChB,IAAI,SAAsB;IAC1B,WAAW,SAAoD;IAC/D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,QAAQ,CAAU;IAE7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoD;IAGvF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkD;IAEjF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"FlowCasingRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/naming/FlowCasingRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IACxC,EAAE,SAAc;IAChB,IAAI,SAAsB;IAC1B,WAAW,SAAoD;IAC/D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,QAAQ,CAAU;IAE7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoD;IAGvF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkD;IAEjF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;IA0B7D,OAAO,CAAC,WAAW;CAMtB"}
|
|
@@ -29,7 +29,7 @@ class FlowCasingRule extends BaseRule_1.BaseRule {
|
|
|
29
29
|
}
|
|
30
30
|
if (!this.KEBAB_CASE_PATTERN.test(name)) {
|
|
31
31
|
issues.push(this.createIssue(flow, `Flow name "${name}" should be kebab-case`, {
|
|
32
|
-
suggestion: `Rename to "${this.toKebabCase(name)}"
|
|
32
|
+
suggestion: `Rename to "${this.toKebabCase(name)}"`,
|
|
33
33
|
}));
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowCasingRule.js","sourceRoot":"","sources":["../../../../src/rules/naming/FlowCasingRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,cAAe,SAAQ,mBAAQ;IACxC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,kBAAkB,CAAC;IAC1B,WAAW,GAAG,gDAAgD,CAAC;IAC/D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,QAAiB,CAAC;IAEZ,kBAAkB,GAAG,gDAAgD,CAAC;IAEvF,yEAAyE;IACxD,cAAc,GAAG,8CAA8C,CAAC;IAEjF,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QAEhE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI;gBAAE,SAAS;YAEpB,uFAAuF;YACvF,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,SAAS;YACb,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"FlowCasingRule.js","sourceRoot":"","sources":["../../../../src/rules/naming/FlowCasingRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,cAAe,SAAQ,mBAAQ;IACxC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,kBAAkB,CAAC;IAC1B,WAAW,GAAG,gDAAgD,CAAC;IAC/D,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,QAAiB,CAAC;IAEZ,kBAAkB,GAAG,gDAAgD,CAAC;IAEvF,yEAAyE;IACxD,cAAc,GAAG,8CAA8C,CAAC;IAEjF,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QAEhE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI;gBAAE,SAAS;YAEpB,uFAAuF;YACvF,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,SAAS;YACb,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,cAAc,IAAI,wBAAwB,EAAE;oBAC/D,UAAU,EAAE,cAAc,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG;iBACtD,CAAC,CACL,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,WAAW,CAAC,IAAY;QAC5B,OAAO,IAAI;aACN,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC;aACnC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;aACvB,WAAW,EAAE,CAAC;IACvB,CAAC;CACJ;AA5CD,wCA4CC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowNamingRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/naming/FlowNamingRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IACxC,EAAE,SAAc;IAChB,IAAI,SAA4B;IAChC,WAAW,SAAoF;IAC/F,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,QAAQ,CAAU;IAE7B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"FlowNamingRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/naming/FlowNamingRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IACxC,EAAE,SAAc;IAChB,IAAI,SAA4B;IAChC,WAAW,SAAoF;IAC/F,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,QAAQ,CAAU;IAE7B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAoE/D"}
|
|
@@ -44,7 +44,9 @@ class FlowNamingRule extends BaseRule_1.BaseRule {
|
|
|
44
44
|
continue;
|
|
45
45
|
}
|
|
46
46
|
if (!name.endsWith(flowSuffix)) {
|
|
47
|
-
issues.push(this.createIssue(flow, `Flow "${name}" should end with "${flowSuffix}"`, {
|
|
47
|
+
issues.push(this.createIssue(flow, `Flow "${name}" should end with "${flowSuffix}"`, {
|
|
48
|
+
suggestion: `Rename to "${name}${flowSuffix}"`,
|
|
49
|
+
}));
|
|
48
50
|
}
|
|
49
51
|
}
|
|
50
52
|
// Check sub-flows
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowNamingRule.js","sourceRoot":"","sources":["../../../../src/rules/naming/FlowNamingRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,cAAe,SAAQ,mBAAQ;IACxC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,wBAAwB,CAAC;IAChC,WAAW,GAAG,gFAAgF,CAAC;IAC/F,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,QAAiB,CAAC;IAE7B,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,4BAA4B;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAW,OAAO,EAAE,iBAAiB,EAAE;YACzE,YAAY;YACZ,QAAQ,EAAE,gCAAgC;YAC1C,eAAe;YACf,yEAAyE;YACzE,OAAO;YACP,QAAQ;YACR,OAAO;YACP,SAAS;YACT,UAAU;YACV,WAAW;YACX,QAAQ;SACX,CAAC,CAAC;QAEH,cAAc;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAC9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,SAAS;YACb,CAAC;YAED,yBAAyB;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;gBACzC,SAAS;YACb,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"FlowNamingRule.js","sourceRoot":"","sources":["../../../../src/rules/naming/FlowNamingRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,cAAe,SAAQ,mBAAQ;IACxC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,wBAAwB,CAAC;IAChC,WAAW,GAAG,gFAAgF,CAAC;IAC/F,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,QAAiB,CAAC;IAE7B,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,4BAA4B;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAW,OAAO,EAAE,iBAAiB,EAAE;YACzE,YAAY;YACZ,QAAQ,EAAE,gCAAgC;YAC1C,eAAe;YACf,yEAAyE;YACzE,OAAO;YACP,QAAQ;YACR,OAAO;YACP,SAAS;YACT,UAAU;YACV,WAAW;YACX,QAAQ;SACX,CAAC,CAAC;QAEH,cAAc;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAC9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,SAAS;YACb,CAAC;YAED,yBAAyB;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;gBACzC,SAAS;YACb,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,IAAI,sBAAsB,UAAU,GAAG,EAAE;oBACrE,UAAU,EAAE,cAAc,IAAI,GAAG,UAAU,GAAG;iBACjD,CAAC,CACL,CAAC;YACN,CAAC;QACL,CAAC;QAED,kBAAkB;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACrD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,SAAS;YACb,CAAC;YAED,yBAAyB;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;gBACzC,SAAS;YACb,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,OAAO,EACP,aAAa,IAAI,sBAAsB,aAAa,GAAG,EACvD,EAAE,UAAU,EAAE,cAAc,IAAI,GAAG,aAAa,GAAG,EAAE,CACxD,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA3ED,wCA2EC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableNamingRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/naming/VariableNamingRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;IAC5C,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAA8C;IACzD,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,QAAQ,CAAU;IAE7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAyB;IAE5D,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"VariableNamingRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/naming/VariableNamingRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;IAC5C,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAA8C;IACzD,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,QAAQ,CAAU;IAE7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAyB;IAE5D,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;IAqB7D,OAAO,CAAC,WAAW;CAKtB"}
|
|
@@ -23,7 +23,7 @@ class VariableNamingRule extends BaseRule_1.BaseRule {
|
|
|
23
23
|
continue;
|
|
24
24
|
if (!this.CAMEL_CASE_PATTERN.test(varName)) {
|
|
25
25
|
issues.push(this.createIssue(setVar, `Variable "${varName}" should be camelCase`, {
|
|
26
|
-
suggestion: `Rename to "${this.toCamelCase(varName)}"
|
|
26
|
+
suggestion: `Rename to "${this.toCamelCase(varName)}"`,
|
|
27
27
|
}));
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -31,8 +31,8 @@ class VariableNamingRule extends BaseRule_1.BaseRule {
|
|
|
31
31
|
}
|
|
32
32
|
toCamelCase(name) {
|
|
33
33
|
return name
|
|
34
|
-
.replace(/[-_\s]+(.)?/g, (_, c) => c ? c.toUpperCase() : '')
|
|
35
|
-
.replace(/^[A-Z]/, c => c.toLowerCase());
|
|
34
|
+
.replace(/[-_\s]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''))
|
|
35
|
+
.replace(/^[A-Z]/, (c) => c.toLowerCase());
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
exports.VariableNamingRule = VariableNamingRule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableNamingRule.js","sourceRoot":"","sources":["../../../../src/rules/naming/VariableNamingRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,mBAAQ;IAC5C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,0CAA0C,CAAC;IACzD,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,QAAiB,CAAC;IAEZ,kBAAkB,GAAG,qBAAqB,CAAC;IAE5D,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAE7D,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO;gBAAE,SAAS;YAEvB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"VariableNamingRule.js","sourceRoot":"","sources":["../../../../src/rules/naming/VariableNamingRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,mBAAQ;IAC5C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,0CAA0C,CAAC;IACzD,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,QAAiB,CAAC;IAEZ,kBAAkB,GAAG,qBAAqB,CAAC;IAE5D,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAE7D,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO;gBAAE,SAAS;YAEvB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,OAAO,uBAAuB,EAAE;oBAClE,UAAU,EAAE,cAAc,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG;iBACzD,CAAC,CACL,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,WAAW,CAAC,IAAY;QAC5B,OAAO,IAAI;aACN,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aAC7D,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACnD,CAAC;CACJ;AAnCD,gDAmCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncErrorHandlerRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/performance/AsyncErrorHandlerRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,QAAQ;IAC/C,EAAE,SAAc;IAChB,IAAI,SAAiC;IACrC,WAAW,SAAuD;IAClE,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,aAAa,CAAU;IAElC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"AsyncErrorHandlerRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/performance/AsyncErrorHandlerRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,QAAQ;IAC/C,EAAE,SAAc;IAChB,IAAI,SAAiC;IACrC,WAAW,SAAuD;IAClE,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,aAAa,CAAU;IAElC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;CA2BhE"}
|
|
@@ -23,7 +23,7 @@ class AsyncErrorHandlerRule extends BaseRule_1.BaseRule {
|
|
|
23
23
|
if (!hasErrorHandling) {
|
|
24
24
|
const docName = this.getDocName(async) ?? 'Async scope';
|
|
25
25
|
issues.push(this.createIssue(async, `${docName} has no error handling - errors won't propagate to parent`, {
|
|
26
|
-
suggestion: 'Add error-handler or wrap content in try scope'
|
|
26
|
+
suggestion: 'Add error-handler or wrap content in try scope',
|
|
27
27
|
}));
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncErrorHandlerRule.js","sourceRoot":"","sources":["../../../../src/rules/performance/AsyncErrorHandlerRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,qBAAsB,SAAQ,mBAAQ;IAC/C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,6BAA6B,CAAC;IACrC,WAAW,GAAG,mDAAmD,CAAC;IAClE,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,aAAsB,CAAC;IAElC,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QAErD,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAC9B,gDAAgD;YAChD,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"AsyncErrorHandlerRule.js","sourceRoot":"","sources":["../../../../src/rules/performance/AsyncErrorHandlerRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,qBAAsB,SAAQ,mBAAQ;IAC/C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,6BAA6B,CAAC;IACrC,WAAW,GAAG,mDAAmD,CAAC;IAClE,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,aAAsB,CAAC;IAElC,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QAErD,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAC9B,gDAAgD;YAChD,MAAM,gBAAgB,GAClB,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,KAAiB,CAAC;gBACtD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,KAAiB,CAAC,CAAC;YAEjD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACpB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC;gBACxD,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,KAAK,EACL,GAAG,OAAO,2DAA2D,EACrE;oBACI,UAAU,EAAE,gDAAgD;iBAC/D,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAlCD,sDAkCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LargeChoiceBlockRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/performance/LargeChoiceBlockRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;IAC9C,EAAE,SAAc;IAChB,IAAI,SAAyB;IAC7B,WAAW,SAA+D;IAC1E,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,aAAa,CAAU;IAElC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"LargeChoiceBlockRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/performance/LargeChoiceBlockRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;IAC9C,EAAE,SAAc;IAChB,IAAI,SAAyB;IAC7B,WAAW,SAA+D;IAC1E,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,aAAa,CAAU;IAElC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAyB/D"}
|
|
@@ -21,7 +21,7 @@ class LargeChoiceBlockRule extends BaseRule_1.BaseRule {
|
|
|
21
21
|
const whenClauses = this.select('./mule:when', choice);
|
|
22
22
|
if (whenClauses.length > maxWhenClauses) {
|
|
23
23
|
issues.push(this.createIssue(choice, `Choice has ${whenClauses.length} when clauses (max recommended: ${maxWhenClauses})`, {
|
|
24
|
-
suggestion: 'Consider using DataWeave lookup table or flow-ref with dynamic routing'
|
|
24
|
+
suggestion: 'Consider using DataWeave lookup table or flow-ref with dynamic routing',
|
|
25
25
|
}));
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LargeChoiceBlockRule.js","sourceRoot":"","sources":["../../../../src/rules/performance/LargeChoiceBlockRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,mBAAQ;IAC9C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,qBAAqB,CAAC;IAC7B,WAAW,GAAG,2DAA2D,CAAC;IAC1E,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,aAAsB,CAAC;IAElC,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAEpE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAElD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAkB,CAAC,CAAC;YAEnE,IAAI,WAAW,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"LargeChoiceBlockRule.js","sourceRoot":"","sources":["../../../../src/rules/performance/LargeChoiceBlockRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,mBAAQ;IAC9C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,qBAAqB,CAAC;IAC7B,WAAW,GAAG,2DAA2D,CAAC;IAC1E,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,aAAsB,CAAC;IAElC,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAEpE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAElD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAkB,CAAC,CAAC;YAEnE,IAAI,WAAW,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,MAAM,EACN,cAAc,WAAW,CAAC,MAAM,mCAAmC,cAAc,GAAG,EACpF;oBACI,UAAU,EACN,wEAAwE;iBAC/E,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAhCD,oDAgCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScatterGatherRoutesRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/performance/ScatterGatherRoutesRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,QAAQ;IACjD,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAA6D;IACxE,QAAQ,EAAG,MAAM,CAAU;IAC3B,QAAQ,EAAG,aAAa,CAAU;IAElC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"ScatterGatherRoutesRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/performance/ScatterGatherRoutesRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,QAAQ;IACjD,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAA6D;IACxE,QAAQ,EAAG,MAAM,CAAU;IAC3B,QAAQ,EAAG,aAAa,CAAU;IAElC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAyB/D"}
|
|
@@ -21,7 +21,7 @@ class ScatterGatherRoutesRule extends BaseRule_1.BaseRule {
|
|
|
21
21
|
const routes = this.select('./mule:route', sg);
|
|
22
22
|
if (routes.length > maxRoutes) {
|
|
23
23
|
issues.push(this.createIssue(sg, `Scatter-gather has ${routes.length} routes (max recommended: ${maxRoutes})`, {
|
|
24
|
-
suggestion: 'Consider using batch processing for large parallel operations'
|
|
24
|
+
suggestion: 'Consider using batch processing for large parallel operations',
|
|
25
25
|
}));
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScatterGatherRoutesRule.js","sourceRoot":"","sources":["../../../../src/rules/performance/ScatterGatherRoutesRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,uBAAwB,SAAQ,mBAAQ;IACjD,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,yDAAyD,CAAC;IACxE,QAAQ,GAAG,MAAe,CAAC;IAC3B,QAAQ,GAAG,aAAsB,CAAC;IAElC,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAE1D,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAEjE,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAc,CAAC,CAAC;YAE3D,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"ScatterGatherRoutesRule.js","sourceRoot":"","sources":["../../../../src/rules/performance/ScatterGatherRoutesRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,uBAAwB,SAAQ,mBAAQ;IACjD,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,yDAAyD,CAAC;IACxE,QAAQ,GAAG,MAAe,CAAC;IAC3B,QAAQ,GAAG,aAAsB,CAAC;IAElC,QAAQ,CAAC,GAAa,EAAE,OAA0B;QAC9C,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAE1D,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAEjE,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAc,CAAC,CAAC;YAE3D,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,EAAE,EACF,sBAAsB,MAAM,CAAC,MAAM,6BAA6B,SAAS,GAAG,EAC5E;oBACI,UAAU,EACN,+DAA+D;iBACtE,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAhCD,0DAgCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HardcodedCredentialsRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedCredentialsRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,QAAQ;IAClD,EAAE,SAAc;IAChB,IAAI,SAA2B;IAC/B,WAAW,SAA+E;IAC1F,QAAQ,EAAG,OAAO,CAAU;IAC5B,QAAQ,EAAG,UAAU,CAAU;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAU9B;IAEF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"HardcodedCredentialsRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedCredentialsRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,QAAQ;IAClD,EAAE,SAAc;IAChB,IAAI,SAA2B;IAC/B,WAAW,SAA+E;IAC1F,QAAQ,EAAG,OAAO,CAAU;IAC5B,QAAQ,EAAG,UAAU,CAAU;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAU9B;IAEF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;IA+B7D,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,WAAW;CActB"}
|
|
@@ -37,7 +37,7 @@ class HardcodedCredentialsRule extends BaseRule_1.BaseRule {
|
|
|
37
37
|
// Check if this is a sensitive attribute
|
|
38
38
|
if (this.isSensitiveAttribute(attrName) && this.isHardcoded(value)) {
|
|
39
39
|
issues.push(this.createIssue(element, `Hardcoded ${attr.name} found - use secure property placeholder`, {
|
|
40
|
-
suggestion: `Use \${secure::${attr.name}} instead of hardcoded value
|
|
40
|
+
suggestion: `Use \${secure::${attr.name}} instead of hardcoded value`,
|
|
41
41
|
}));
|
|
42
42
|
}
|
|
43
43
|
}
|
|
@@ -45,7 +45,7 @@ class HardcodedCredentialsRule extends BaseRule_1.BaseRule {
|
|
|
45
45
|
return issues;
|
|
46
46
|
}
|
|
47
47
|
isSensitiveAttribute(attrName) {
|
|
48
|
-
return this.SENSITIVE_ATTRS.some(sensitive => attrName.includes(sensitive.toLowerCase()));
|
|
48
|
+
return this.SENSITIVE_ATTRS.some((sensitive) => attrName.includes(sensitive.toLowerCase()));
|
|
49
49
|
}
|
|
50
50
|
isHardcoded(value) {
|
|
51
51
|
// Empty values are not hardcoded
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HardcodedCredentialsRule.js","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedCredentialsRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,wBAAyB,SAAQ,mBAAQ;IAClD,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,uBAAuB,CAAC;IAC/B,WAAW,GAAG,2EAA2E,CAAC;IAC1F,QAAQ,GAAG,OAAgB,CAAC;IAC5B,QAAQ,GAAG,UAAmB,CAAC;IAEd,eAAe,GAAG;QAC/B,UAAU;QACV,QAAQ;QACR,cAAc;QACd,eAAe;QACf,QAAQ;QACR,SAAS;QACT,OAAO;QACP,aAAa;QACb,YAAY;KACf,CAAC;IAEF,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAY,CAAC;YAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;YAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;gBAEzB,yCAAyC;gBACzC,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjE,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"HardcodedCredentialsRule.js","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedCredentialsRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,wBAAyB,SAAQ,mBAAQ;IAClD,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,uBAAuB,CAAC;IAC/B,WAAW,GAAG,2EAA2E,CAAC;IAC1F,QAAQ,GAAG,OAAgB,CAAC;IAC5B,QAAQ,GAAG,UAAmB,CAAC;IAEd,eAAe,GAAG;QAC/B,UAAU;QACV,QAAQ;QACR,cAAc;QACd,eAAe;QACf,QAAQ;QACR,SAAS;QACT,OAAO;QACP,aAAa;QACb,YAAY;KACf,CAAC;IAEF,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAY,CAAC;YAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;YAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;gBAEzB,yCAAyC;gBACzC,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjE,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,OAAO,EACP,aAAa,IAAI,CAAC,IAAI,0CAA0C,EAChE;wBACI,UAAU,EAAE,kBAAkB,IAAI,CAAC,IAAI,8BAA8B;qBACxE,CACJ,CACJ,CAAC;gBACN,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,oBAAoB,CAAC,QAAgB;QACzC,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAChG,CAAC;IAEO,WAAW,CAAC,KAAa;QAC7B,iCAAiC;QACjC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,KAAK,CAAC;QAEhD,sEAAsE;QACtE,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAEjF,+DAA+D;QAC/D,yDAAyD;QACzD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAEjE,4DAA4D;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AApED,4DAoEC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HardcodedHttpRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedHttpRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,EAAE,SAAc;IAChB,IAAI,SAAyB;IAC7B,WAAW,SAAkF;IAC7F,QAAQ,EAAG,OAAO,CAAU;IAC5B,QAAQ,EAAG,UAAU,CAAU;IAG/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmB;IAG/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAI/B;IAGF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"HardcodedHttpRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedHttpRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,EAAE,SAAc;IAChB,IAAI,SAAyB;IAC7B,WAAW,SAAkF;IAC7F,QAAQ,EAAG,OAAO,CAAU;IAC5B,QAAQ,EAAG,UAAU,CAAU;IAG/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmB;IAG/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAI/B;IAGF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqD;IAGxF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAQ7B;IAEF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;IAuC7D;;OAEG;IACH,OAAO,CAAC,cAAc;IAiBtB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;OAEG;IACH,OAAO,CAAC,QAAQ;CAMnB"}
|
|
@@ -23,11 +23,7 @@ class HardcodedHttpRule extends BaseRule_1.BaseRule {
|
|
|
23
23
|
/p\(['"]/, // Property function p('...')
|
|
24
24
|
];
|
|
25
25
|
// Attributes that should be ignored (not user-configurable URLs)
|
|
26
|
-
IGNORED_ATTRIBUTES = [
|
|
27
|
-
'xmlns',
|
|
28
|
-
'xsi:schemaLocation',
|
|
29
|
-
'schemaLocation',
|
|
30
|
-
];
|
|
26
|
+
IGNORED_ATTRIBUTES = ['xmlns', 'xsi:schemaLocation', 'schemaLocation'];
|
|
31
27
|
// Attributes to check for URLs
|
|
32
28
|
URL_ATTRIBUTES = [
|
|
33
29
|
'url',
|
|
@@ -56,7 +52,7 @@ class HardcodedHttpRule extends BaseRule_1.BaseRule {
|
|
|
56
52
|
// Check if this looks like a hardcoded URL
|
|
57
53
|
if (this.isHardcodedUrl(value)) {
|
|
58
54
|
issues.push(this.createIssue(element, `Hardcoded URL "${this.truncate(value)}" found in attribute "${attrName}"`, {
|
|
59
|
-
suggestion: 'Use property placeholder: ${http.baseUrl} or ${env.api.host}'
|
|
55
|
+
suggestion: 'Use property placeholder: ${http.baseUrl} or ${env.api.host}',
|
|
60
56
|
}));
|
|
61
57
|
}
|
|
62
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HardcodedHttpRule.js","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedHttpRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,iBAAkB,SAAQ,mBAAQ;IAC3C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,qBAAqB,CAAC;IAC7B,WAAW,GAAG,8EAA8E,CAAC;IAC7F,QAAQ,GAAG,OAAgB,CAAC;IAC5B,QAAQ,GAAG,UAAmB,CAAC;IAE/B,yBAAyB;IACR,WAAW,GAAG,eAAe,CAAC;IAE/C,wDAAwD;IACvC,gBAAgB,GAAG;QAChC,aAAa,
|
|
1
|
+
{"version":3,"file":"HardcodedHttpRule.js","sourceRoot":"","sources":["../../../../src/rules/security/HardcodedHttpRule.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsecureTlsRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/security/InsecureTlsRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IACzC,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAAoE;IAC/E,QAAQ,EAAG,OAAO,CAAU;IAC5B,QAAQ,EAAG,UAAU,CAAU;IAE/B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"InsecureTlsRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/security/InsecureTlsRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IACzC,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAAoE;IAC/E,QAAQ,EAAG,OAAO,CAAU;IAC5B,QAAQ,EAAG,UAAU,CAAU;IAE/B,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAsChE"}
|
|
@@ -19,14 +19,14 @@ class InsecureTlsRule extends BaseRule_1.BaseRule {
|
|
|
19
19
|
const insecureTrustStores = this.select('//*[local-name()="trust-store"][@insecure="true"]', doc);
|
|
20
20
|
for (const trustStore of insecureTrustStores) {
|
|
21
21
|
issues.push(this.createIssue(trustStore, 'TLS trust-store has insecure="true" - certificates not verified', {
|
|
22
|
-
suggestion: 'Remove insecure="true" and configure proper certificate validation'
|
|
22
|
+
suggestion: 'Remove insecure="true" and configure proper certificate validation',
|
|
23
23
|
}));
|
|
24
24
|
}
|
|
25
25
|
// Find insecure key-store configurations
|
|
26
26
|
const insecureKeyStores = this.select('//*[local-name()="key-store"][@insecure="true"]', doc);
|
|
27
27
|
for (const keyStore of insecureKeyStores) {
|
|
28
28
|
issues.push(this.createIssue(keyStore, 'TLS key-store has insecure="true"', {
|
|
29
|
-
suggestion: 'Remove insecure="true" and use proper key management'
|
|
29
|
+
suggestion: 'Remove insecure="true" and use proper key management',
|
|
30
30
|
}));
|
|
31
31
|
}
|
|
32
32
|
return issues;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsecureTlsRule.js","sourceRoot":"","sources":["../../../../src/rules/security/InsecureTlsRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,mBAAQ;IACzC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,gEAAgE,CAAC;IAC/E,QAAQ,GAAG,OAAgB,CAAC;IAC5B,QAAQ,GAAG,UAAmB,CAAC;IAE/B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,2CAA2C;QAC3C,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CACnC,mDAAmD,EACnD,GAAG,CACN,CAAC;QAEF,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"InsecureTlsRule.js","sourceRoot":"","sources":["../../../../src/rules/security/InsecureTlsRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,mBAAQ;IACzC,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACpC,WAAW,GAAG,gEAAgE,CAAC;IAC/E,QAAQ,GAAG,OAAgB,CAAC;IAC5B,QAAQ,GAAG,UAAmB,CAAC;IAE/B,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,2CAA2C;QAC3C,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CACnC,mDAAmD,EACnD,GAAG,CACN,CAAC;QAEF,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,UAAU,EACV,iEAAiE,EACjE;gBACI,UAAU,EACN,oEAAoE;aAC3E,CACJ,CACJ,CAAC;QACN,CAAC;QAED,yCAAyC;QACzC,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CACjC,iDAAiD,EACjD,GAAG,CACN,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,mCAAmC,EAAE;gBAC5D,UAAU,EAAE,sDAAsD;aACrE,CAAC,CACL,CAAC;QACN,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA7CD,0CA6CC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChoiceAntiPatternRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/standards/ChoiceAntiPatternRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,QAAQ;IAC/C,EAAE,SAAc;IAChB,IAAI,SAAyB;IAC7B,WAAW,SAAkF;IAC7F,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,WAAW,CAAU;IAEhC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"ChoiceAntiPatternRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/standards/ChoiceAntiPatternRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,QAAQ;IAC/C,EAAE,SAAc;IAChB,IAAI,SAAyB;IAC7B,WAAW,SAAkF;IAC7F,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,WAAW,CAAU;IAEhC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAyDhE"}
|
|
@@ -27,7 +27,7 @@ class ChoiceAntiPatternRule extends BaseRule_1.BaseRule {
|
|
|
27
27
|
}
|
|
28
28
|
const errorType = this.getAttribute(raiseError, 'type') ?? 'unknown';
|
|
29
29
|
issues.push(this.createIssue(raiseError, `raise-error with type="${errorType}" directly in otherwise block is an anti-pattern`, {
|
|
30
|
-
suggestion: 'Consider using a custom error type (e.g., APP:INVALID_REQUEST) with descriptive message, or refactor the choice logic'
|
|
30
|
+
suggestion: 'Consider using a custom error type (e.g., APP:INVALID_REQUEST) with descriptive message, or refactor the choice logic',
|
|
31
31
|
}));
|
|
32
32
|
}
|
|
33
33
|
// Also check for raise-error in when blocks (less common but still an anti-pattern)
|
|
@@ -38,7 +38,7 @@ class ChoiceAntiPatternRule extends BaseRule_1.BaseRule {
|
|
|
38
38
|
if (errorType === 'ANY' || errorType === 'MULE:ANY') {
|
|
39
39
|
issues.push(this.createIssue(raiseError, `raise-error with generic type="${errorType}" in choice/when block`, {
|
|
40
40
|
suggestion: 'Use a specific error type (e.g., APP:VALIDATION_ERROR) instead of ANY',
|
|
41
|
-
severity: 'info'
|
|
41
|
+
severity: 'info',
|
|
42
42
|
}));
|
|
43
43
|
}
|
|
44
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChoiceAntiPatternRule.js","sourceRoot":"","sources":["../../../../src/rules/standards/ChoiceAntiPatternRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,qBAAsB,SAAQ,mBAAQ;IAC/C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,qBAAqB,CAAC;IAC7B,WAAW,GAAG,8EAA8E,CAAC;IAC7F,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,WAAoB,CAAC;IAEhC,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,gDAAgD;QAChD,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CACtC,+CAA+C,EAC/C,GAAG,CACN,CAAC;QAEF,KAAK,MAAM,UAAU,IAAI,sBAAsB,EAAE,CAAC;YAC9C,8DAA8D;YAC9D,qEAAqE;YACrE,MAAM,uBAAuB,
|
|
1
|
+
{"version":3,"file":"ChoiceAntiPatternRule.js","sourceRoot":"","sources":["../../../../src/rules/standards/ChoiceAntiPatternRule.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C;;;;;GAKG;AACH,MAAa,qBAAsB,SAAQ,mBAAQ;IAC/C,EAAE,GAAG,UAAU,CAAC;IAChB,IAAI,GAAG,qBAAqB,CAAC;IAC7B,WAAW,GAAG,8EAA8E,CAAC;IAC7F,QAAQ,GAAG,SAAkB,CAAC;IAC9B,QAAQ,GAAG,WAAoB,CAAC;IAEhC,QAAQ,CAAC,GAAa,EAAE,QAA2B;QAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;QAE3B,gDAAgD;QAChD,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CACtC,+CAA+C,EAC/C,GAAG,CACN,CAAC;QAEF,KAAK,MAAM,UAAU,IAAI,sBAAsB,EAAE,CAAC;YAC9C,8DAA8D;YAC9D,qEAAqE;YACrE,MAAM,uBAAuB,GACzB,IAAI,CAAC,MAAM,CAAC,iCAAiC,EAAE,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAE1E,IAAI,uBAAuB,EAAE,CAAC;gBAC1B,SAAS,CAAC,4BAA4B;YAC1C,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,SAAS,CAAC;YAErE,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,UAAU,EACV,0BAA0B,SAAS,kDAAkD,EACrF;gBACI,UAAU,EACN,uHAAuH;aAC9H,CACJ,CACJ,CAAC;QACN,CAAC;QAED,oFAAoF;QACpF,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;QAEvF,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,SAAS,CAAC;YAErE,kCAAkC;YAClC,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAClD,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,WAAW,CACZ,UAAU,EACV,kCAAkC,SAAS,wBAAwB,EACnE;oBACI,UAAU,EACN,uEAAuE;oBAC3E,QAAQ,EAAE,MAAM;iBACnB,CACJ,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAhED,sDAgEC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeprecatedComponentRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/standards/DeprecatedComponentRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,QAAQ;IACjD,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAAgD;IAC3D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,WAAW,CAAU;IAEhC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAMlC;IAEF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"DeprecatedComponentRule.d.ts","sourceRoot":"","sources":["../../../../src/rules/standards/DeprecatedComponentRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,QAAQ;IACjD,EAAE,SAAc;IAChB,IAAI,SAAgC;IACpC,WAAW,SAAgD;IAC3D,QAAQ,EAAG,SAAS,CAAU;IAC9B,QAAQ,EAAG,WAAW,CAAU;IAEhC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAMlC;IAEF,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK,EAAE;CAqBhE"}
|