codeslick-cli 1.0.0
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 +458 -0
- package/__tests__/cli-reporter.test.ts +86 -0
- package/__tests__/config-loader.test.ts +247 -0
- package/__tests__/local-scanner.test.ts +245 -0
- package/bin/codeslick.cjs +153 -0
- package/dist/packages/cli/src/commands/auth.d.ts +36 -0
- package/dist/packages/cli/src/commands/auth.d.ts.map +1 -0
- package/dist/packages/cli/src/commands/auth.js +226 -0
- package/dist/packages/cli/src/commands/auth.js.map +1 -0
- package/dist/packages/cli/src/commands/config.d.ts +37 -0
- package/dist/packages/cli/src/commands/config.d.ts.map +1 -0
- package/dist/packages/cli/src/commands/config.js +196 -0
- package/dist/packages/cli/src/commands/config.js.map +1 -0
- package/dist/packages/cli/src/commands/init.d.ts +32 -0
- package/dist/packages/cli/src/commands/init.d.ts.map +1 -0
- package/dist/packages/cli/src/commands/init.js +171 -0
- package/dist/packages/cli/src/commands/init.js.map +1 -0
- package/dist/packages/cli/src/commands/scan.d.ts +40 -0
- package/dist/packages/cli/src/commands/scan.d.ts.map +1 -0
- package/dist/packages/cli/src/commands/scan.js +204 -0
- package/dist/packages/cli/src/commands/scan.js.map +1 -0
- package/dist/packages/cli/src/config/config-loader.d.ts +67 -0
- package/dist/packages/cli/src/config/config-loader.d.ts.map +1 -0
- package/dist/packages/cli/src/config/config-loader.js +146 -0
- package/dist/packages/cli/src/config/config-loader.js.map +1 -0
- package/dist/packages/cli/src/reporters/cli-reporter.d.ts +69 -0
- package/dist/packages/cli/src/reporters/cli-reporter.d.ts.map +1 -0
- package/dist/packages/cli/src/reporters/cli-reporter.js +244 -0
- package/dist/packages/cli/src/reporters/cli-reporter.js.map +1 -0
- package/dist/packages/cli/src/scanner/local-scanner.d.ts +92 -0
- package/dist/packages/cli/src/scanner/local-scanner.d.ts.map +1 -0
- package/dist/packages/cli/src/scanner/local-scanner.js +221 -0
- package/dist/packages/cli/src/scanner/local-scanner.js.map +1 -0
- package/dist/src/lib/analyzers/helpers/ai-code-detection-utils.d.ts +88 -0
- package/dist/src/lib/analyzers/helpers/ai-code-detection-utils.d.ts.map +1 -0
- package/dist/src/lib/analyzers/helpers/ai-code-detection-utils.js +371 -0
- package/dist/src/lib/analyzers/helpers/ai-code-detection-utils.js.map +1 -0
- package/dist/src/lib/analyzers/helpers/jsx-helpers.d.ts +63 -0
- package/dist/src/lib/analyzers/helpers/jsx-helpers.d.ts.map +1 -0
- package/dist/src/lib/analyzers/helpers/jsx-helpers.js +95 -0
- package/dist/src/lib/analyzers/helpers/jsx-helpers.js.map +1 -0
- package/dist/src/lib/analyzers/helpers/variable-tracker.d.ts +59 -0
- package/dist/src/lib/analyzers/helpers/variable-tracker.d.ts.map +1 -0
- package/dist/src/lib/analyzers/helpers/variable-tracker.js +231 -0
- package/dist/src/lib/analyzers/helpers/variable-tracker.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/access-control.d.ts +20 -0
- package/dist/src/lib/analyzers/java/security-checks/access-control.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/access-control.js +129 -0
- package/dist/src/lib/analyzers/java/security-checks/access-control.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/ai-generated-code.d.ts +25 -0
- package/dist/src/lib/analyzers/java/security-checks/ai-generated-code.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/ai-generated-code.js +221 -0
- package/dist/src/lib/analyzers/java/security-checks/ai-generated-code.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/code-quality.d.ts +18 -0
- package/dist/src/lib/analyzers/java/security-checks/code-quality.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/code-quality.js +84 -0
- package/dist/src/lib/analyzers/java/security-checks/code-quality.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/crypto-validation.d.ts +18 -0
- package/dist/src/lib/analyzers/java/security-checks/crypto-validation.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/crypto-validation.js +161 -0
- package/dist/src/lib/analyzers/java/security-checks/crypto-validation.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/deserialization-xxe.d.ts +20 -0
- package/dist/src/lib/analyzers/java/security-checks/deserialization-xxe.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/deserialization-xxe.js +163 -0
- package/dist/src/lib/analyzers/java/security-checks/deserialization-xxe.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/enhanced-supply-chain.d.ts +24 -0
- package/dist/src/lib/analyzers/java/security-checks/enhanced-supply-chain.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/enhanced-supply-chain.js +178 -0
- package/dist/src/lib/analyzers/java/security-checks/enhanced-supply-chain.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/exception-handling.d.ts +25 -0
- package/dist/src/lib/analyzers/java/security-checks/exception-handling.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/exception-handling.js +179 -0
- package/dist/src/lib/analyzers/java/security-checks/exception-handling.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/file-operations.d.ts +17 -0
- package/dist/src/lib/analyzers/java/security-checks/file-operations.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/file-operations.js +67 -0
- package/dist/src/lib/analyzers/java/security-checks/file-operations.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/framework-security.d.ts +25 -0
- package/dist/src/lib/analyzers/java/security-checks/framework-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/framework-security.js +396 -0
- package/dist/src/lib/analyzers/java/security-checks/framework-security.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.d.ts +20 -0
- package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.js +123 -0
- package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/injection-attacks.d.ts +23 -0
- package/dist/src/lib/analyzers/java/security-checks/injection-attacks.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/injection-attacks.js +201 -0
- package/dist/src/lib/analyzers/java/security-checks/injection-attacks.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/insecure-design.d.ts +20 -0
- package/dist/src/lib/analyzers/java/security-checks/insecure-design.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/insecure-design.js +121 -0
- package/dist/src/lib/analyzers/java/security-checks/insecure-design.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/logging-failures.d.ts +20 -0
- package/dist/src/lib/analyzers/java/security-checks/logging-failures.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/logging-failures.js +89 -0
- package/dist/src/lib/analyzers/java/security-checks/logging-failures.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/security-misconfiguration.d.ts +26 -0
- package/dist/src/lib/analyzers/java/security-checks/security-misconfiguration.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/security-misconfiguration.js +309 -0
- package/dist/src/lib/analyzers/java/security-checks/security-misconfiguration.js.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/unsafe-patterns.d.ts +18 -0
- package/dist/src/lib/analyzers/java/security-checks/unsafe-patterns.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/security-checks/unsafe-patterns.js +114 -0
- package/dist/src/lib/analyzers/java/security-checks/unsafe-patterns.js.map +1 -0
- package/dist/src/lib/analyzers/java/utils/createVulnerability.d.ts +58 -0
- package/dist/src/lib/analyzers/java/utils/createVulnerability.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java/utils/createVulnerability.js +71 -0
- package/dist/src/lib/analyzers/java/utils/createVulnerability.js.map +1 -0
- package/dist/src/lib/analyzers/java-analyzer.d.ts +209 -0
- package/dist/src/lib/analyzers/java-analyzer.d.ts.map +1 -0
- package/dist/src/lib/analyzers/java-analyzer.js +1720 -0
- package/dist/src/lib/analyzers/java-analyzer.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/ai-hallucinations.d.ts +27 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/ai-hallucinations.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/ai-hallucinations.js +123 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/ai-hallucinations.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/async-patterns.d.ts +44 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/async-patterns.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/async-patterns.js +224 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/async-patterns.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/code-patterns.d.ts +50 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/code-patterns.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/code-patterns.js +284 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/code-patterns.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/comparison-issues.d.ts +27 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/comparison-issues.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/comparison-issues.js +86 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/comparison-issues.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/reference-errors.d.ts +32 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/reference-errors.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/reference-errors.js +44 -0
- package/dist/src/lib/analyzers/javascript/quality-checks/reference-errors.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/access-control.d.ts +22 -0
- package/dist/src/lib/analyzers/javascript/security-checks/access-control.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/access-control.js +168 -0
- package/dist/src/lib/analyzers/javascript/security-checks/access-control.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.d.ts +25 -0
- package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.js +232 -0
- package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/authentication-failures.d.ts +27 -0
- package/dist/src/lib/analyzers/javascript/security-checks/authentication-failures.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/authentication-failures.js +222 -0
- package/dist/src/lib/analyzers/javascript/security-checks/authentication-failures.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.d.ts +28 -0
- package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.js +176 -0
- package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/enhanced-supply-chain.d.ts +23 -0
- package/dist/src/lib/analyzers/javascript/security-checks/enhanced-supply-chain.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/enhanced-supply-chain.js +113 -0
- package/dist/src/lib/analyzers/javascript/security-checks/enhanced-supply-chain.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/exception-handling.d.ts +28 -0
- package/dist/src/lib/analyzers/javascript/security-checks/exception-handling.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/exception-handling.js +227 -0
- package/dist/src/lib/analyzers/javascript/security-checks/exception-handling.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/injection-attacks.d.ts +32 -0
- package/dist/src/lib/analyzers/javascript/security-checks/injection-attacks.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/injection-attacks.js +260 -0
- package/dist/src/lib/analyzers/javascript/security-checks/injection-attacks.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/insecure-design.d.ts +26 -0
- package/dist/src/lib/analyzers/javascript/security-checks/insecure-design.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/insecure-design.js +164 -0
- package/dist/src/lib/analyzers/javascript/security-checks/insecure-design.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/security-misconfiguration.d.ts +26 -0
- package/dist/src/lib/analyzers/javascript/security-checks/security-misconfiguration.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/security-misconfiguration.js +775 -0
- package/dist/src/lib/analyzers/javascript/security-checks/security-misconfiguration.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/software-integrity.d.ts +25 -0
- package/dist/src/lib/analyzers/javascript/security-checks/software-integrity.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/software-integrity.js +168 -0
- package/dist/src/lib/analyzers/javascript/security-checks/software-integrity.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/storage-security.d.ts +27 -0
- package/dist/src/lib/analyzers/javascript/security-checks/storage-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/storage-security.js +108 -0
- package/dist/src/lib/analyzers/javascript/security-checks/storage-security.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/xss-dom-security.d.ts +28 -0
- package/dist/src/lib/analyzers/javascript/security-checks/xss-dom-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/security-checks/xss-dom-security.js +143 -0
- package/dist/src/lib/analyzers/javascript/security-checks/xss-dom-security.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/syntax/syntax-helpers.d.ts +53 -0
- package/dist/src/lib/analyzers/javascript/syntax/syntax-helpers.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/syntax/syntax-helpers.js +144 -0
- package/dist/src/lib/analyzers/javascript/syntax/syntax-helpers.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/syntax/typescript-syntax.d.ts +72 -0
- package/dist/src/lib/analyzers/javascript/syntax/typescript-syntax.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/syntax/typescript-syntax.js +314 -0
- package/dist/src/lib/analyzers/javascript/syntax/typescript-syntax.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/utils/createVulnerability.d.ts +58 -0
- package/dist/src/lib/analyzers/javascript/utils/createVulnerability.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/utils/createVulnerability.js +71 -0
- package/dist/src/lib/analyzers/javascript/utils/createVulnerability.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/utils/metrics-calculator.d.ts +36 -0
- package/dist/src/lib/analyzers/javascript/utils/metrics-calculator.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/utils/metrics-calculator.js +70 -0
- package/dist/src/lib/analyzers/javascript/utils/metrics-calculator.js.map +1 -0
- package/dist/src/lib/analyzers/javascript/utils/performance-analyzer.d.ts +29 -0
- package/dist/src/lib/analyzers/javascript/utils/performance-analyzer.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript/utils/performance-analyzer.js +55 -0
- package/dist/src/lib/analyzers/javascript/utils/performance-analyzer.js.map +1 -0
- package/dist/src/lib/analyzers/javascript-analyzer.d.ts +95 -0
- package/dist/src/lib/analyzers/javascript-analyzer.d.ts.map +1 -0
- package/dist/src/lib/analyzers/javascript-analyzer.js +2141 -0
- package/dist/src/lib/analyzers/javascript-analyzer.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/access-control.d.ts +21 -0
- package/dist/src/lib/analyzers/python/security-checks/access-control.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/access-control.js +305 -0
- package/dist/src/lib/analyzers/python/security-checks/access-control.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/ai-generated-code.d.ts +25 -0
- package/dist/src/lib/analyzers/python/security-checks/ai-generated-code.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/ai-generated-code.js +242 -0
- package/dist/src/lib/analyzers/python/security-checks/ai-generated-code.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/authentication-flaws.d.ts +24 -0
- package/dist/src/lib/analyzers/python/security-checks/authentication-flaws.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/authentication-flaws.js +207 -0
- package/dist/src/lib/analyzers/python/security-checks/authentication-flaws.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/code-quality.d.ts +27 -0
- package/dist/src/lib/analyzers/python/security-checks/code-quality.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/code-quality.js +206 -0
- package/dist/src/lib/analyzers/python/security-checks/code-quality.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.d.ts +24 -0
- package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.js +113 -0
- package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/crypto-failures.d.ts +20 -0
- package/dist/src/lib/analyzers/python/security-checks/crypto-failures.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/crypto-failures.js +129 -0
- package/dist/src/lib/analyzers/python/security-checks/crypto-failures.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/data-integrity.d.ts +19 -0
- package/dist/src/lib/analyzers/python/security-checks/data-integrity.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/data-integrity.js +90 -0
- package/dist/src/lib/analyzers/python/security-checks/data-integrity.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/deserialization.d.ts +20 -0
- package/dist/src/lib/analyzers/python/security-checks/deserialization.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/deserialization.js +68 -0
- package/dist/src/lib/analyzers/python/security-checks/deserialization.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/django-security.d.ts +25 -0
- package/dist/src/lib/analyzers/python/security-checks/django-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/django-security.js +180 -0
- package/dist/src/lib/analyzers/python/security-checks/django-security.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/enhanced-supply-chain.d.ts +23 -0
- package/dist/src/lib/analyzers/python/security-checks/enhanced-supply-chain.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/enhanced-supply-chain.js +127 -0
- package/dist/src/lib/analyzers/python/security-checks/enhanced-supply-chain.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/exception-handling.d.ts +23 -0
- package/dist/src/lib/analyzers/python/security-checks/exception-handling.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/exception-handling.js +120 -0
- package/dist/src/lib/analyzers/python/security-checks/exception-handling.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/flask-security.d.ts +24 -0
- package/dist/src/lib/analyzers/python/security-checks/flask-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/flask-security.js +143 -0
- package/dist/src/lib/analyzers/python/security-checks/flask-security.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/injection-attacks.d.ts +28 -0
- package/dist/src/lib/analyzers/python/security-checks/injection-attacks.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/injection-attacks.js +174 -0
- package/dist/src/lib/analyzers/python/security-checks/injection-attacks.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/insecure-design.d.ts +20 -0
- package/dist/src/lib/analyzers/python/security-checks/insecure-design.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/insecure-design.js +160 -0
- package/dist/src/lib/analyzers/python/security-checks/insecure-design.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/logging-failures.d.ts +20 -0
- package/dist/src/lib/analyzers/python/security-checks/logging-failures.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/logging-failures.js +121 -0
- package/dist/src/lib/analyzers/python/security-checks/logging-failures.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/nosql-injection.d.ts +26 -0
- package/dist/src/lib/analyzers/python/security-checks/nosql-injection.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/nosql-injection.js +248 -0
- package/dist/src/lib/analyzers/python/security-checks/nosql-injection.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/security-misconfiguration.d.ts +26 -0
- package/dist/src/lib/analyzers/python/security-checks/security-misconfiguration.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/security-misconfiguration.js +375 -0
- package/dist/src/lib/analyzers/python/security-checks/security-misconfiguration.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/ssrf-detection.d.ts +26 -0
- package/dist/src/lib/analyzers/python/security-checks/ssrf-detection.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/ssrf-detection.js +160 -0
- package/dist/src/lib/analyzers/python/security-checks/ssrf-detection.js.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/web-security.d.ts +23 -0
- package/dist/src/lib/analyzers/python/security-checks/web-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/security-checks/web-security.js +117 -0
- package/dist/src/lib/analyzers/python/security-checks/web-security.js.map +1 -0
- package/dist/src/lib/analyzers/python/utils/createVulnerability.d.ts +58 -0
- package/dist/src/lib/analyzers/python/utils/createVulnerability.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python/utils/createVulnerability.js +71 -0
- package/dist/src/lib/analyzers/python/utils/createVulnerability.js.map +1 -0
- package/dist/src/lib/analyzers/python-analyzer.d.ts +111 -0
- package/dist/src/lib/analyzers/python-analyzer.d.ts.map +1 -0
- package/dist/src/lib/analyzers/python-analyzer.js +1600 -0
- package/dist/src/lib/analyzers/python-analyzer.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/ai-providers.d.ts +14 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/ai-providers.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/ai-providers.js +47 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/ai-providers.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/aws.d.ts +13 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/aws.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/aws.js +36 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/aws.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/cloud-providers.d.ts +15 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/cloud-providers.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/cloud-providers.js +68 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/cloud-providers.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/communication.d.ts +15 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/communication.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/communication.js +68 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/communication.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/generic.d.ts +12 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/generic.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/generic.js +45 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/generic.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/github.d.ts +14 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/github.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/github.js +47 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/github.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/stripe.d.ts +13 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/stripe.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/stripe.js +36 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys/stripe.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys.d.ts +15 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys.js +32 -0
- package/dist/src/lib/analyzers/secrets/patterns/api-keys.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/credentials.d.ts +15 -0
- package/dist/src/lib/analyzers/secrets/patterns/credentials.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/credentials.js +68 -0
- package/dist/src/lib/analyzers/secrets/patterns/credentials.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/private-keys.d.ts +16 -0
- package/dist/src/lib/analyzers/secrets/patterns/private-keys.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/private-keys.js +79 -0
- package/dist/src/lib/analyzers/secrets/patterns/private-keys.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/tokens.d.ts +15 -0
- package/dist/src/lib/analyzers/secrets/patterns/tokens.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/patterns/tokens.js +58 -0
- package/dist/src/lib/analyzers/secrets/patterns/tokens.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/secrets-analyzer.d.ts +88 -0
- package/dist/src/lib/analyzers/secrets/secrets-analyzer.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/secrets-analyzer.js +162 -0
- package/dist/src/lib/analyzers/secrets/secrets-analyzer.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/validators/context-checker.d.ts +56 -0
- package/dist/src/lib/analyzers/secrets/validators/context-checker.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/validators/context-checker.js +199 -0
- package/dist/src/lib/analyzers/secrets/validators/context-checker.js.map +1 -0
- package/dist/src/lib/analyzers/secrets/validators/entropy-checker.d.ts +56 -0
- package/dist/src/lib/analyzers/secrets/validators/entropy-checker.d.ts.map +1 -0
- package/dist/src/lib/analyzers/secrets/validators/entropy-checker.js +102 -0
- package/dist/src/lib/analyzers/secrets/validators/entropy-checker.js.map +1 -0
- package/dist/src/lib/analyzers/security-checks/es6-security.d.ts +38 -0
- package/dist/src/lib/analyzers/security-checks/es6-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/security-checks/es6-security.js +125 -0
- package/dist/src/lib/analyzers/security-checks/es6-security.js.map +1 -0
- package/dist/src/lib/analyzers/security-checks/python-async-security.d.ts +46 -0
- package/dist/src/lib/analyzers/security-checks/python-async-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/security-checks/python-async-security.js +92 -0
- package/dist/src/lib/analyzers/security-checks/python-async-security.js.map +1 -0
- package/dist/src/lib/analyzers/security-checks/react-security.d.ts +49 -0
- package/dist/src/lib/analyzers/security-checks/react-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/security-checks/react-security.js +125 -0
- package/dist/src/lib/analyzers/security-checks/react-security.js.map +1 -0
- package/dist/src/lib/analyzers/types.d.ts +92 -0
- package/dist/src/lib/analyzers/types.d.ts.map +1 -0
- package/dist/src/lib/analyzers/types.js +3 -0
- package/dist/src/lib/analyzers/types.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/access-control.d.ts +19 -0
- package/dist/src/lib/analyzers/typescript/security-checks/access-control.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/access-control.js +210 -0
- package/dist/src/lib/analyzers/typescript/security-checks/access-control.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.d.ts +25 -0
- package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.js +242 -0
- package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/authentication.d.ts +28 -0
- package/dist/src/lib/analyzers/typescript/security-checks/authentication.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/authentication.js +357 -0
- package/dist/src/lib/analyzers/typescript/security-checks/authentication.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-injection.d.ts +26 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-injection.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-injection.js +380 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-injection.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-quality.d.ts +23 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-quality.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-quality.js +109 -0
- package/dist/src/lib/analyzers/typescript/security-checks/code-quality.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.d.ts +21 -0
- package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.js +153 -0
- package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/enhanced-supply-chain.d.ts +23 -0
- package/dist/src/lib/analyzers/typescript/security-checks/enhanced-supply-chain.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/enhanced-supply-chain.js +146 -0
- package/dist/src/lib/analyzers/typescript/security-checks/enhanced-supply-chain.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/exception-handling.d.ts +23 -0
- package/dist/src/lib/analyzers/typescript/security-checks/exception-handling.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/exception-handling.js +187 -0
- package/dist/src/lib/analyzers/typescript/security-checks/exception-handling.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/information-disclosure.d.ts +19 -0
- package/dist/src/lib/analyzers/typescript/security-checks/information-disclosure.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/information-disclosure.js +97 -0
- package/dist/src/lib/analyzers/typescript/security-checks/information-disclosure.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/injection-attacks.d.ts +29 -0
- package/dist/src/lib/analyzers/typescript/security-checks/injection-attacks.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/injection-attacks.js +319 -0
- package/dist/src/lib/analyzers/typescript/security-checks/injection-attacks.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/logging-failures.d.ts +21 -0
- package/dist/src/lib/analyzers/typescript/security-checks/logging-failures.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/logging-failures.js +121 -0
- package/dist/src/lib/analyzers/typescript/security-checks/logging-failures.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.d.ts +27 -0
- package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.js +213 -0
- package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/type-security.d.ts +19 -0
- package/dist/src/lib/analyzers/typescript/security-checks/type-security.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/security-checks/type-security.js +59 -0
- package/dist/src/lib/analyzers/typescript/security-checks/type-security.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/type-checker.d.ts +17 -0
- package/dist/src/lib/analyzers/typescript/type-checker.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/type-checker.js +515 -0
- package/dist/src/lib/analyzers/typescript/type-checker.js.map +1 -0
- package/dist/src/lib/analyzers/typescript/utils/createVulnerability.d.ts +58 -0
- package/dist/src/lib/analyzers/typescript/utils/createVulnerability.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript/utils/createVulnerability.js +71 -0
- package/dist/src/lib/analyzers/typescript/utils/createVulnerability.js.map +1 -0
- package/dist/src/lib/analyzers/typescript-analyzer.d.ts +116 -0
- package/dist/src/lib/analyzers/typescript-analyzer.d.ts.map +1 -0
- package/dist/src/lib/analyzers/typescript-analyzer.js +1660 -0
- package/dist/src/lib/analyzers/typescript-analyzer.js.map +1 -0
- package/dist/src/lib/security/compliance-mapping.d.ts +29 -0
- package/dist/src/lib/security/compliance-mapping.d.ts.map +1 -0
- package/dist/src/lib/security/compliance-mapping.js +1342 -0
- package/dist/src/lib/security/compliance-mapping.js.map +1 -0
- package/dist/src/lib/security/severity-scoring.d.ts +47 -0
- package/dist/src/lib/security/severity-scoring.d.ts.map +1 -0
- package/dist/src/lib/security/severity-scoring.js +965 -0
- package/dist/src/lib/security/severity-scoring.js.map +1 -0
- package/dist/src/lib/standards/references.d.ts +16 -0
- package/dist/src/lib/standards/references.d.ts.map +1 -0
- package/dist/src/lib/standards/references.js +1161 -0
- package/dist/src/lib/standards/references.js.map +1 -0
- package/dist/src/lib/types/index.d.ts +167 -0
- package/dist/src/lib/types/index.d.ts.map +1 -0
- package/dist/src/lib/types/index.js +3 -0
- package/dist/src/lib/types/index.js.map +1 -0
- package/dist/src/lib/utils/code-cleaner.d.ts +59 -0
- package/dist/src/lib/utils/code-cleaner.d.ts.map +1 -0
- package/dist/src/lib/utils/code-cleaner.js +283 -0
- package/dist/src/lib/utils/code-cleaner.js.map +1 -0
- package/package.json +51 -0
- package/src/commands/auth.ts +308 -0
- package/src/commands/config.ts +226 -0
- package/src/commands/init.ts +202 -0
- package/src/commands/scan.ts +238 -0
- package/src/config/config-loader.ts +175 -0
- package/src/reporters/cli-reporter.ts +282 -0
- package/src/scanner/local-scanner.ts +250 -0
- package/tsconfig.json +24 -0
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"references.js","sourceRoot":"","sources":["../../../../../../src/lib/standards/references.ts"],"names":[],"mappings":";AAAA,oCAAoC;AACpC,qDAAqD;;;AA88BrD,sDAaC;AAGD,kDA0OC;AA3rCD,kCAAkC;AACrB,QAAA,mBAAmB,GAAiB;IAC/C,WAAW,EAAE;QACX;YACE,KAAK,EAAE,gBAAgB;YACvB,GAAG,EAAE,6CAA6C;YAClD,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,MAAM;SACjB;QACD;YACE,KAAK,EAAE,iBAAiB;YACxB,GAAG,EAAE,kFAAkF;YACvF,WAAW,EAAE,2DAA2D;YACxE,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,iDAAiD;YACtD,WAAW,EAAE,6BAA6B;YAC1C,QAAQ,EAAE,MAAM;SACjB;QACD;YACE,KAAK,EAAE,kBAAkB;YACzB,GAAG,EAAE,0DAA0D;YAC/D,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,mBAAmB,EAAE;QACnB;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,uBAAuB;YAC5B,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,GAAG,EAAE,oDAAoD;YACzD,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,MAAM;SACjB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,iFAAiF;YACtF,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,0EAA0E;YAC/E,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,wCAAwC;YAC7C,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,4DAA4D;YACjE,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,MAAM;SACjB;KACF;IACD,kBAAkB,EAAE;QAClB;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,oEAAoE;YACzE,WAAW,EAAE,+DAA+D;YAC5E,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,sCAAsC;YAC3C,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,uBAAuB,EAAE;QACvB;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,6DAA6D;YAClE,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,GAAG,EAAE,8DAA8D;YACnE,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,sBAAsB;YAC7B,GAAG,EAAE,wDAAwD;YAC7D,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,uCAAuC;YAC5C,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,MAAM;SACjB;KACF;CACF,CAAC;AAEF,yBAAyB;AACZ,QAAA,eAAe,GAAiB;IAC3C,aAAa,EAAE;QACb;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,+CAA+C;YACpD,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,qDAAqD;YAC1D,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,WAAW,EAAE;QACX;YACE,KAAK,EAAE,uCAAuC;YAC9C,GAAG,EAAE,mCAAmC;YACxC,WAAW,EAAE,sDAAsD;YACnE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,+EAA+E;YACpF,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,mBAAmB,EAAE;QACnB;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,oEAAoE;YACzE,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,kCAAkC;YACzC,GAAG,EAAE,kDAAkD;YACvD,WAAW,EAAE,yDAAyD;YACtE,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,8DAA8D;YACnE,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,+CAA+C;YACpD,WAAW,EAAE,sDAAsD;YACnE,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,sDAAsD;YAC3D,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,8BAA8B;YACrC,GAAG,EAAE,wDAAwD;YAC7D,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,YAAY,EAAE;QACZ;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,mCAAmC;YACxC,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,+CAA+C;YACpD,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,0DAA0D;YAC/D,WAAW,EAAE,gDAAgD;YAC7D,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,gCAAgC;YACvC,GAAG,EAAE,mCAAmC;YACxC,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,kBAAkB,EAAE;QAClB;YACE,KAAK,EAAE,uBAAuB;YAC9B,GAAG,EAAE,gEAAgE;YACrE,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,wDAAwD;YAC7D,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,6DAA6D;YAClE,WAAW,EAAE,iDAAiD;YAC9D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,8CAA8C;YACnD,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,8DAA8D;YACnE,WAAW,EAAE,sDAAsD;YACnE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,6CAA6C;YAClD,WAAW,EAAE,wDAAwD;YACrE,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,6DAA6D;YAClE,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,GAAG,EAAE,gDAAgD;YACrD,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,kBAAkB,EAAE;QAClB;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,kEAAkE;YACvE,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,iDAAiD;YACtD,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,8DAA8D;YACnE,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,4DAA4D;YACjE,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,YAAY,EAAE;QACZ;YACE,KAAK,EAAE,uBAAuB;YAC9B,GAAG,EAAE,4DAA4D;YACjE,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,sCAAsC;YAC3C,WAAW,EAAE,oDAAoD;YACjE,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,sBAAsB;YAC7B,GAAG,EAAE,iDAAiD;YACtD,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,iDAAiD;YACtD,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,kBAAkB,EAAE;QAClB;YACE,KAAK,EAAE,kCAAkC;YACzC,GAAG,EAAE,0EAA0E;YAC/E,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,GAAG,EAAE,mCAAmC;YACxC,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,mBAAmB,EAAE;QACnB;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,oEAAoE;YACzE,WAAW,EAAE,8DAA8D;YAC3E,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,2DAA2D;YAChE,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,4EAA4E;YACjF,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,gDAAgD;YACrD,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,OAAO;SAClB;KACF;CACF,CAAC;AAEF,iBAAiB;AACJ,QAAA,aAAa,GAAiB;IACzC,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,wEAAwE;YAC7E,WAAW,EAAE,gDAAgD;YAC7D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,mEAAmE;YACxE,WAAW,EAAE,sDAAsD;YACnE,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,kBAAkB;YACzB,GAAG,EAAE,+DAA+D;YACpE,WAAW,EAAE,4DAA4D;YACzE,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,+EAA+E;YACpF,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,GAAG,EAAE,mEAAmE;YACxE,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,kDAAkD;YACvD,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,YAAY,EAAE;QACZ;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,6EAA6E;YAClF,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,eAAe;YACtB,GAAG,EAAE,wDAAwD;YAC7D,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,oEAAoE;YACzE,WAAW,EAAE,oCAAoC;YACjD,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,gCAAgC;YACvC,GAAG,EAAE,yFAAyF;YAC9F,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,aAAa;YACpB,GAAG,EAAE,uEAAuE;YAC5E,WAAW,EAAE,oCAAoC;YACjD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,kBAAkB,EAAE;QAClB;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,mFAAmF;YACxF,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,2EAA2E;YAChF,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,0FAA0F;YAC/F,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,gEAAgE;YACrE,WAAW,EAAE,oCAAoC;YACjD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,sBAAsB;YAC7B,GAAG,EAAE,yEAAyE;YAC9E,WAAW,EAAE,gCAAgC;YAC7C,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,yEAAyE;YAC9E,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,kBAAkB;YACzB,GAAG,EAAE,2EAA2E;YAChF,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,6EAA6E;YAClF,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,iFAAiF;YACtF,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,aAAa;YACpB,GAAG,EAAE,oEAAoE;YACzE,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,oFAAoF;YACzF,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,uDAAuD;YAC5D,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,mBAAmB;YAC1B,GAAG,EAAE,mEAAmE;YACxE,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,uDAAuD;YAC5D,WAAW,EAAE,oDAAoD;YACjE,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,mBAAmB;YAC1B,GAAG,EAAE,0FAA0F;YAC/F,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,eAAe,EAAE;QACf;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,uEAAuE;YAC5E,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,mFAAmF;YACxF,WAAW,EAAE,gDAAgD;YAC7D,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,gFAAgF;YACrF,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,yBAAyB,EAAE;QACzB;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,kFAAkF;YACvF,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,oEAAoE;YACzE,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,sBAAsB;YAC7B,GAAG,EAAE,8EAA8E;YACnF,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,sBAAsB,EAAE;QACtB;YACE,KAAK,EAAE,eAAe;YACtB,GAAG,EAAE,wEAAwE;YAC7E,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,oBAAoB;YAC3B,GAAG,EAAE,gEAAgE;YACrE,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,gBAAgB,EAAE;QAChB;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,wEAAwE;YAC7E,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,oFAAoF;YACzF,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,wFAAwF;YAC7F,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,oDAAoD;YACzD,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,kBAAkB,EAAE;QAClB;YACE,KAAK,EAAE,gBAAgB;YACvB,GAAG,EAAE,wEAAwE;YAC7E,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,wCAAwC;YAC/C,GAAG,EAAE,qFAAqF;YAC1F,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,cAAc,EAAE;QACd;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,wEAAwE;YAC7E,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,wDAAwD;YAC7D,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,2FAA2F;YAChG,WAAW,EAAE,iDAAiD;YAC9D,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,sEAAsE;YAC3E,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,UAAU,EAAE;QACV;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,mEAAmE;YACxE,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,wCAAwC;YAC7C,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,gEAAgE;YACrE,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,iBAAiB;YACxB,GAAG,EAAE,+EAA+E;YACpF,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,+DAA+D;YACpE,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,uGAAuG;YAC5G,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,OAAO;SAClB;KACF;CACF,CAAC;AAEF,uBAAuB;AACV,QAAA,mBAAmB,GAAiB;IAC/C,aAAa,EAAE;QACb;YACE,KAAK,EAAE,gCAAgC;YACvC,GAAG,EAAE,sEAAsE;YAC3E,WAAW,EAAE,kEAAkE;YAC/E,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,gCAAgC;YACvC,GAAG,EAAE,0DAA0D;YAC/D,WAAW,EAAE,gEAAgE;YAC7E,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,kEAAkE;YACvE,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,oFAAoF;YACzF,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,uCAAuC;YAC9C,GAAG,EAAE,+DAA+D;YACpE,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,8BAA8B;YACrC,GAAG,EAAE,iGAAiG;YACtG,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,UAAU,EAAE;QACV;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,8DAA8D;YACnE,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,kFAAkF;YACvF,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,sEAAsE;YAC3E,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,sBAAsB,EAAE;QACtB;YACE,KAAK,EAAE,yBAAyB;YAChC,GAAG,EAAE,gFAAgF;YACrF,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,4BAA4B;YACnC,GAAG,EAAE,+DAA+D;YACpE,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,kCAAkC;YACzC,GAAG,EAAE,oFAAoF;YACzF,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,qBAAqB;YAC5B,GAAG,EAAE,6DAA6D;YAClE,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,wBAAwB;YAC/B,GAAG,EAAE,6DAA6D;YAClE,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,8BAA8B;YACrC,GAAG,EAAE,0FAA0F;YAC/F,WAAW,EAAE,oCAAoC;YACjD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,gBAAgB,EAAE;QAChB;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,2FAA2F;YAChG,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,6EAA6E;YAClF,WAAW,EAAE,oCAAoC;YACjD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,qCAAqC;YAC5C,GAAG,EAAE,0GAA0G;YAC/G,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,SAAS,EAAE;QACT;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,qEAAqE;YAC1E,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,2FAA2F;YAChG,WAAW,EAAE,6BAA6B;YAC1C,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,6BAA6B;YACpC,GAAG,EAAE,2EAA2E;YAChF,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,YAAY,EAAE;QACZ;YACE,KAAK,EAAE,8BAA8B;YACrC,GAAG,EAAE,8DAA8D;YACnE,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,mCAAmC;YAC1C,GAAG,EAAE,gEAAgE;YACrE,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,8CAA8C;YACnD,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,oBAAoB,EAAE;QACpB;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,kEAAkE;YACvE,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,uEAAuE;YAC5E,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,oCAAoC;YAC3C,GAAG,EAAE,4EAA4E;YACjF,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,iCAAiC;YACxC,GAAG,EAAE,gDAAgD;YACrD,WAAW,EAAE,gDAAgD;YAC7D,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,wCAAwC;YAC/C,GAAG,EAAE,yCAAyC;YAC9C,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,KAAK,EAAE,8BAA8B;YACrC,GAAG,EAAE,0DAA0D;YAC/D,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,UAAU;SACrB;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,0BAA0B;YACjC,GAAG,EAAE,yFAAyF;YAC9F,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,wCAAwC;YAC/C,GAAG,EAAE,iFAAiF;YACtF,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,uDAAuD;YAC5D,WAAW,EAAE,+BAA+B;YAC5C,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,0DAA0D;YAC/D,WAAW,EAAE,oDAAoD;YACjE,QAAQ,EAAE,OAAO;SAClB;QACD;YACE,KAAK,EAAE,sCAAsC;YAC7C,GAAG,EAAE,4FAA4F;YACjG,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,UAAU;SACrB;QACD;YACE,KAAK,EAAE,+BAA+B;YACtC,GAAG,EAAE,sEAAsE;YAC3E,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,eAAe;SAC1B;KACF;CACF,CAAC;AAEF,yDAAyD;AACzD,SAAgB,qBAAqB,CAAC,QAAgB,EAAE,SAAiB;IACvE,QAAQ,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC/B,KAAK,YAAY;YACf,OAAO,2BAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC9C,KAAK,YAAY;YACf,OAAO,2BAAmB,CAAC,SAAS,CAAC,IAAI,2BAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAChF,KAAK,QAAQ;YACX,OAAO,uBAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,KAAK,MAAM;YACT,OAAO,qBAAa,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxC;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,iDAAiD;AACjD,SAAgB,mBAAmB,CAAC,YAAoB,EAAE,QAAgB;IACxE,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAE3C,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,OAAO,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACvE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3D,OAAO,qBAAqB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;IAC9D,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACpF,OAAO,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACxF,OAAO,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9D,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAC1D,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QACzF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC1E,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;QAClE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACjE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACtE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAChG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC/D,CAAC;IAED,iCAAiC;IACjC,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC1E,OAAO,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAClI,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACxE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACjG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC/G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACjH,OAAO,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACrG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC5G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAChH,OAAO,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9D,OAAO,qBAAqB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACvH,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACvG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACvH,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACnE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAChI,OAAO,qBAAqB,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5I,OAAO,qBAAqB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9H,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxI,OAAO,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACnE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC3H,OAAO,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC9I,OAAO,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACxG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACxI,OAAO,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACjI,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACtI,OAAO,qBAAqB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACtE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC/G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5G,OAAO,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACnG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACzG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
export interface AnalysisResult {
|
|
2
|
+
timestamp: string;
|
|
3
|
+
language: string;
|
|
4
|
+
filename: string;
|
|
5
|
+
staticAnalysis: StaticAnalysis;
|
|
6
|
+
aiAnalysis: AIAnalysis | null;
|
|
7
|
+
overallScore: number;
|
|
8
|
+
recommendations: string[];
|
|
9
|
+
analysisLevel?: 'advanced' | 'basic' | 'static-only';
|
|
10
|
+
fixHistory?: FixHistoryEntry[];
|
|
11
|
+
}
|
|
12
|
+
export interface StaticAnalysis {
|
|
13
|
+
syntax: {
|
|
14
|
+
valid: boolean;
|
|
15
|
+
errors: string[];
|
|
16
|
+
lineErrors?: Array<{
|
|
17
|
+
line: number;
|
|
18
|
+
error: string;
|
|
19
|
+
suggestion: string;
|
|
20
|
+
severity: 'error' | 'warning' | 'info';
|
|
21
|
+
references?: Array<{
|
|
22
|
+
title: string;
|
|
23
|
+
url: string;
|
|
24
|
+
description: string;
|
|
25
|
+
}>;
|
|
26
|
+
}>;
|
|
27
|
+
};
|
|
28
|
+
quality: {
|
|
29
|
+
score: number;
|
|
30
|
+
issues: QualityIssue[];
|
|
31
|
+
};
|
|
32
|
+
performance: {
|
|
33
|
+
score: number;
|
|
34
|
+
suggestions: string[];
|
|
35
|
+
};
|
|
36
|
+
security: {
|
|
37
|
+
vulnerabilities: SecurityIssue[];
|
|
38
|
+
};
|
|
39
|
+
metrics: {
|
|
40
|
+
complexity: number;
|
|
41
|
+
maintainability: number;
|
|
42
|
+
lines: number;
|
|
43
|
+
functions: number;
|
|
44
|
+
};
|
|
45
|
+
languageSpecific?: any;
|
|
46
|
+
}
|
|
47
|
+
export interface AIAnalysis {
|
|
48
|
+
improvements: {
|
|
49
|
+
priority: 'high' | 'medium' | 'low';
|
|
50
|
+
description: string;
|
|
51
|
+
example?: string;
|
|
52
|
+
documentation?: string;
|
|
53
|
+
}[];
|
|
54
|
+
documentation: {
|
|
55
|
+
summary: string;
|
|
56
|
+
functions: {
|
|
57
|
+
name: string;
|
|
58
|
+
description: string;
|
|
59
|
+
parameters: string[];
|
|
60
|
+
returns: string;
|
|
61
|
+
}[];
|
|
62
|
+
comments: string[];
|
|
63
|
+
};
|
|
64
|
+
refactoring: {
|
|
65
|
+
suggestions: string[];
|
|
66
|
+
improvedCode?: string;
|
|
67
|
+
};
|
|
68
|
+
score: {
|
|
69
|
+
overall: number;
|
|
70
|
+
readability: number;
|
|
71
|
+
maintainability: number;
|
|
72
|
+
efficiency: number;
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
export interface QualityIssue {
|
|
76
|
+
type: 'error' | 'warning' | 'info';
|
|
77
|
+
message: string;
|
|
78
|
+
line?: number;
|
|
79
|
+
column?: number;
|
|
80
|
+
rule?: string;
|
|
81
|
+
}
|
|
82
|
+
export type SecuritySeverity = 'critical' | 'high' | 'medium' | 'low';
|
|
83
|
+
export type ExploitLikelihood = 'high' | 'medium' | 'low';
|
|
84
|
+
export type SecurityImpact = 'data-breach' | 'rce' | 'xss' | 'dos' | 'info-disclosure' | 'privilege-escalation' | 'authentication-bypass' | 'code-integrity' | 'code-quality';
|
|
85
|
+
export interface SecurityIssue {
|
|
86
|
+
severity: SecuritySeverity;
|
|
87
|
+
message: string;
|
|
88
|
+
line?: number;
|
|
89
|
+
suggestion?: string;
|
|
90
|
+
securityRelevant?: boolean;
|
|
91
|
+
cvssScore?: number;
|
|
92
|
+
exploitLikelihood?: ExploitLikelihood;
|
|
93
|
+
impact?: SecurityImpact;
|
|
94
|
+
owasp?: string;
|
|
95
|
+
cwe?: string;
|
|
96
|
+
pciDss?: string;
|
|
97
|
+
attackVector?: {
|
|
98
|
+
description: string;
|
|
99
|
+
exploitExample?: string;
|
|
100
|
+
realWorldImpact?: string[];
|
|
101
|
+
};
|
|
102
|
+
remediation?: {
|
|
103
|
+
before?: string;
|
|
104
|
+
after?: string;
|
|
105
|
+
explanation?: string;
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
export interface DebugInfo {
|
|
109
|
+
status?: number;
|
|
110
|
+
statusText?: string;
|
|
111
|
+
error?: any;
|
|
112
|
+
errorName?: string;
|
|
113
|
+
errorMessage?: string;
|
|
114
|
+
stack?: string;
|
|
115
|
+
timestamp: string;
|
|
116
|
+
requestDetails?: {
|
|
117
|
+
language: string;
|
|
118
|
+
filename: string;
|
|
119
|
+
codeLength: number;
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
export type SupportedLanguage = 'javascript' | 'typescript' | 'python' | 'java';
|
|
123
|
+
export interface CodeSample {
|
|
124
|
+
[key: string]: string;
|
|
125
|
+
}
|
|
126
|
+
export interface IssueToFix {
|
|
127
|
+
line: number;
|
|
128
|
+
message: string;
|
|
129
|
+
severity: 'error' | 'warning' | 'info' | 'high' | 'medium' | 'low';
|
|
130
|
+
type: 'syntax' | 'quality' | 'security' | 'performance';
|
|
131
|
+
securityRelevant?: boolean;
|
|
132
|
+
recommendation?: string;
|
|
133
|
+
}
|
|
134
|
+
export interface FixResult {
|
|
135
|
+
success: boolean;
|
|
136
|
+
originalCode: string;
|
|
137
|
+
fixedCode: string;
|
|
138
|
+
fixedCodeSnippet?: string;
|
|
139
|
+
explanation: string;
|
|
140
|
+
diff: string;
|
|
141
|
+
confidence: number;
|
|
142
|
+
caveats?: string[];
|
|
143
|
+
estimatedTime?: number;
|
|
144
|
+
fixedCount?: number;
|
|
145
|
+
skippedCount?: number;
|
|
146
|
+
errors?: string[];
|
|
147
|
+
creditInfo?: {
|
|
148
|
+
consumed: boolean;
|
|
149
|
+
remaining: number | null;
|
|
150
|
+
usageId: string | null;
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
export interface FixHistoryEntry {
|
|
154
|
+
timestamp: string;
|
|
155
|
+
line: number;
|
|
156
|
+
originalError: string;
|
|
157
|
+
fixApplied: boolean;
|
|
158
|
+
confidence: number;
|
|
159
|
+
fixType: 'syntax' | 'quality' | 'security' | 'performance';
|
|
160
|
+
explanation?: string;
|
|
161
|
+
}
|
|
162
|
+
export interface UserAIConfig {
|
|
163
|
+
providerUrl: string;
|
|
164
|
+
modelName: string;
|
|
165
|
+
apiKey: string;
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/types/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Code Cleaner - Utility for removing comments while preserving line numbers
|
|
3
|
+
*
|
|
4
|
+
* This utility is essential for accurate static analysis, preventing false positives
|
|
5
|
+
* caused by patterns inside comments (quotes, keywords, syntax, etc.)
|
|
6
|
+
*/
|
|
7
|
+
export interface CleanedCode {
|
|
8
|
+
/** Code with comments replaced by spaces (preserves character positions) */
|
|
9
|
+
withoutComments: string;
|
|
10
|
+
/** Array of lines with comments removed (preserves line count) */
|
|
11
|
+
lines: string[];
|
|
12
|
+
/** Original code unchanged */
|
|
13
|
+
original: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class CodeCleaner {
|
|
16
|
+
/**
|
|
17
|
+
* Remove all comments from code (single-line // and multi-line /* *\/)
|
|
18
|
+
* Preserves line numbers and character positions for accurate error reporting
|
|
19
|
+
*
|
|
20
|
+
* @param code - Source code to clean
|
|
21
|
+
* @param language - Programming language (affects comment syntax)
|
|
22
|
+
* @returns CleanedCode with comments removed
|
|
23
|
+
*/
|
|
24
|
+
static removeComments(code: string, language?: 'javascript' | 'python' | 'java'): CleanedCode;
|
|
25
|
+
/**
|
|
26
|
+
* Remove JavaScript/Java/TypeScript comments (// and /* *\/)
|
|
27
|
+
* Handles strings correctly - doesn't remove // inside strings
|
|
28
|
+
*/
|
|
29
|
+
private static removeJavaScriptComments;
|
|
30
|
+
/**
|
|
31
|
+
* Remove Python comments (#)
|
|
32
|
+
* Handles strings correctly - doesn't remove # inside strings
|
|
33
|
+
*/
|
|
34
|
+
private static removePythonComments;
|
|
35
|
+
/**
|
|
36
|
+
* Get a specific line with comments removed
|
|
37
|
+
* @param code - Source code
|
|
38
|
+
* @param lineNumber - Line number (1-indexed)
|
|
39
|
+
* @param language - Programming language
|
|
40
|
+
* @returns Line with comments removed, or empty string if out of range
|
|
41
|
+
*/
|
|
42
|
+
static getCleanLine(code: string, lineNumber: number, language?: 'javascript' | 'python' | 'java'): string;
|
|
43
|
+
/**
|
|
44
|
+
* Remove comments from a single line (for quick checks)
|
|
45
|
+
* Note: This is a simplified version - doesn't handle multi-line comments
|
|
46
|
+
* Use removeComments() for full accuracy
|
|
47
|
+
*
|
|
48
|
+
* @param line - Single line of code
|
|
49
|
+
* @param language - Programming language
|
|
50
|
+
* @returns Line with comments removed
|
|
51
|
+
*/
|
|
52
|
+
static removeLineComments(line: string, language?: 'javascript' | 'python' | 'java'): string;
|
|
53
|
+
/**
|
|
54
|
+
* Helper: Remove comment marker and everything after it from a line
|
|
55
|
+
* Handles strings correctly
|
|
56
|
+
*/
|
|
57
|
+
private static removeCommentFromLine;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=code-cleaner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-cleaner.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/utils/code-cleaner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,WAAW;IAC1B,4EAA4E;IAC5E,eAAe,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,WAAW;IACtB;;;;;;;OAOG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,YAAY,GAAG,QAAQ,GAAG,MAAqB,GAAG,WAAW;IAS3G;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAuGvC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAoFnC;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,GAAE,YAAY,GAAG,QAAQ,GAAG,MAAqB,GAAG,MAAM;IAWxH;;;;;;;;OAQG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,YAAY,GAAG,QAAQ,GAAG,MAAqB,GAAG,MAAM;IAU1G;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;CAyCrC"}
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Code Cleaner - Utility for removing comments while preserving line numbers
|
|
4
|
+
*
|
|
5
|
+
* This utility is essential for accurate static analysis, preventing false positives
|
|
6
|
+
* caused by patterns inside comments (quotes, keywords, syntax, etc.)
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.CodeCleaner = void 0;
|
|
10
|
+
class CodeCleaner {
|
|
11
|
+
/**
|
|
12
|
+
* Remove all comments from code (single-line // and multi-line /* *\/)
|
|
13
|
+
* Preserves line numbers and character positions for accurate error reporting
|
|
14
|
+
*
|
|
15
|
+
* @param code - Source code to clean
|
|
16
|
+
* @param language - Programming language (affects comment syntax)
|
|
17
|
+
* @returns CleanedCode with comments removed
|
|
18
|
+
*/
|
|
19
|
+
static removeComments(code, language = 'javascript') {
|
|
20
|
+
if (language === 'python') {
|
|
21
|
+
return this.removePythonComments(code);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
// JavaScript, Java, TypeScript all use // and /* */
|
|
25
|
+
return this.removeJavaScriptComments(code);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Remove JavaScript/Java/TypeScript comments (// and /* *\/)
|
|
30
|
+
* Handles strings correctly - doesn't remove // inside strings
|
|
31
|
+
*/
|
|
32
|
+
static removeJavaScriptComments(code) {
|
|
33
|
+
let cleaned = '';
|
|
34
|
+
let inSingleLineComment = false;
|
|
35
|
+
let inMultiLineComment = false;
|
|
36
|
+
let inString = false;
|
|
37
|
+
let stringChar = '';
|
|
38
|
+
let escaped = false;
|
|
39
|
+
for (let i = 0; i < code.length; i++) {
|
|
40
|
+
const char = code[i];
|
|
41
|
+
const nextChar = code[i + 1] || '';
|
|
42
|
+
// Handle escape sequences in strings
|
|
43
|
+
if (escaped) {
|
|
44
|
+
if (inString) {
|
|
45
|
+
cleaned += char; // Preserve escaped characters in strings
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
cleaned += ' '; // Replace with space outside strings
|
|
49
|
+
}
|
|
50
|
+
escaped = false;
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
if (char === '\\') {
|
|
54
|
+
escaped = true;
|
|
55
|
+
if (inString) {
|
|
56
|
+
cleaned += char;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
cleaned += ' ';
|
|
60
|
+
}
|
|
61
|
+
continue;
|
|
62
|
+
}
|
|
63
|
+
// Handle strings (don't detect comments inside strings)
|
|
64
|
+
if (!inSingleLineComment && !inMultiLineComment && (char === '"' || char === "'" || char === '`')) {
|
|
65
|
+
if (!inString) {
|
|
66
|
+
inString = true;
|
|
67
|
+
stringChar = char;
|
|
68
|
+
cleaned += char;
|
|
69
|
+
}
|
|
70
|
+
else if (char === stringChar) {
|
|
71
|
+
inString = false;
|
|
72
|
+
stringChar = '';
|
|
73
|
+
cleaned += char;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
cleaned += char;
|
|
77
|
+
}
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
// Inside string - preserve everything
|
|
81
|
+
if (inString) {
|
|
82
|
+
cleaned += char;
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
// Handle single-line comments //
|
|
86
|
+
if (!inMultiLineComment && char === '/' && nextChar === '/') {
|
|
87
|
+
inSingleLineComment = true;
|
|
88
|
+
cleaned += ' '; // Replace // with two spaces
|
|
89
|
+
i++; // Skip next char
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
// End single-line comment at newline
|
|
93
|
+
if (inSingleLineComment && char === '\n') {
|
|
94
|
+
inSingleLineComment = false;
|
|
95
|
+
cleaned += '\n'; // Preserve line break
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
// Handle multi-line comments /* */
|
|
99
|
+
if (!inSingleLineComment && char === '/' && nextChar === '*') {
|
|
100
|
+
inMultiLineComment = true;
|
|
101
|
+
cleaned += ' '; // Replace /* with two spaces
|
|
102
|
+
i++; // Skip next char
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
// End multi-line comment
|
|
106
|
+
if (inMultiLineComment && char === '*' && nextChar === '/') {
|
|
107
|
+
inMultiLineComment = false;
|
|
108
|
+
cleaned += ' '; // Replace */ with two spaces
|
|
109
|
+
i++; // Skip next char
|
|
110
|
+
continue;
|
|
111
|
+
}
|
|
112
|
+
// Inside comment - replace with space (preserve newlines)
|
|
113
|
+
if (inSingleLineComment || inMultiLineComment) {
|
|
114
|
+
cleaned += char === '\n' ? '\n' : ' ';
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
// Normal code - preserve
|
|
118
|
+
cleaned += char;
|
|
119
|
+
}
|
|
120
|
+
return {
|
|
121
|
+
withoutComments: cleaned,
|
|
122
|
+
lines: cleaned.split('\n'),
|
|
123
|
+
original: code
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Remove Python comments (#)
|
|
128
|
+
* Handles strings correctly - doesn't remove # inside strings
|
|
129
|
+
*/
|
|
130
|
+
static removePythonComments(code) {
|
|
131
|
+
let cleaned = '';
|
|
132
|
+
let inComment = false;
|
|
133
|
+
let inString = false;
|
|
134
|
+
let stringChar = '';
|
|
135
|
+
let escaped = false;
|
|
136
|
+
for (let i = 0; i < code.length; i++) {
|
|
137
|
+
const char = code[i];
|
|
138
|
+
// Handle escape sequences
|
|
139
|
+
if (escaped) {
|
|
140
|
+
if (inString) {
|
|
141
|
+
cleaned += char;
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
cleaned += ' ';
|
|
145
|
+
}
|
|
146
|
+
escaped = false;
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
if (char === '\\') {
|
|
150
|
+
escaped = true;
|
|
151
|
+
if (inString) {
|
|
152
|
+
cleaned += char;
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
cleaned += ' ';
|
|
156
|
+
}
|
|
157
|
+
continue;
|
|
158
|
+
}
|
|
159
|
+
// Handle strings
|
|
160
|
+
if (!inComment && (char === '"' || char === "'" || char === '`')) {
|
|
161
|
+
if (!inString) {
|
|
162
|
+
inString = true;
|
|
163
|
+
stringChar = char;
|
|
164
|
+
cleaned += char;
|
|
165
|
+
}
|
|
166
|
+
else if (char === stringChar) {
|
|
167
|
+
inString = false;
|
|
168
|
+
stringChar = '';
|
|
169
|
+
cleaned += char;
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
cleaned += char;
|
|
173
|
+
}
|
|
174
|
+
continue;
|
|
175
|
+
}
|
|
176
|
+
// Inside string - preserve
|
|
177
|
+
if (inString) {
|
|
178
|
+
cleaned += char;
|
|
179
|
+
continue;
|
|
180
|
+
}
|
|
181
|
+
// Start comment
|
|
182
|
+
if (!inComment && char === '#') {
|
|
183
|
+
inComment = true;
|
|
184
|
+
cleaned += ' '; // Replace # with space
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
// End comment at newline
|
|
188
|
+
if (inComment && char === '\n') {
|
|
189
|
+
inComment = false;
|
|
190
|
+
cleaned += '\n'; // Preserve line break
|
|
191
|
+
continue;
|
|
192
|
+
}
|
|
193
|
+
// Inside comment - replace with space
|
|
194
|
+
if (inComment) {
|
|
195
|
+
cleaned += ' ';
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
// Normal code - preserve
|
|
199
|
+
cleaned += char;
|
|
200
|
+
}
|
|
201
|
+
return {
|
|
202
|
+
withoutComments: cleaned,
|
|
203
|
+
lines: cleaned.split('\n'),
|
|
204
|
+
original: code
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Get a specific line with comments removed
|
|
209
|
+
* @param code - Source code
|
|
210
|
+
* @param lineNumber - Line number (1-indexed)
|
|
211
|
+
* @param language - Programming language
|
|
212
|
+
* @returns Line with comments removed, or empty string if out of range
|
|
213
|
+
*/
|
|
214
|
+
static getCleanLine(code, lineNumber, language = 'javascript') {
|
|
215
|
+
const cleaned = this.removeComments(code, language);
|
|
216
|
+
const lineIndex = lineNumber - 1;
|
|
217
|
+
if (lineIndex < 0 || lineIndex >= cleaned.lines.length) {
|
|
218
|
+
return '';
|
|
219
|
+
}
|
|
220
|
+
return cleaned.lines[lineIndex];
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Remove comments from a single line (for quick checks)
|
|
224
|
+
* Note: This is a simplified version - doesn't handle multi-line comments
|
|
225
|
+
* Use removeComments() for full accuracy
|
|
226
|
+
*
|
|
227
|
+
* @param line - Single line of code
|
|
228
|
+
* @param language - Programming language
|
|
229
|
+
* @returns Line with comments removed
|
|
230
|
+
*/
|
|
231
|
+
static removeLineComments(line, language = 'javascript') {
|
|
232
|
+
if (language === 'python') {
|
|
233
|
+
// Python: Remove everything after # (outside strings)
|
|
234
|
+
return this.removeCommentFromLine(line, '#');
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
// JavaScript/Java: Remove everything after // (outside strings)
|
|
238
|
+
return this.removeCommentFromLine(line, '//');
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Helper: Remove comment marker and everything after it from a line
|
|
243
|
+
* Handles strings correctly
|
|
244
|
+
*/
|
|
245
|
+
static removeCommentFromLine(line, commentMarker) {
|
|
246
|
+
let inString = false;
|
|
247
|
+
let stringChar = '';
|
|
248
|
+
let escaped = false;
|
|
249
|
+
for (let i = 0; i < line.length; i++) {
|
|
250
|
+
const char = line[i];
|
|
251
|
+
// Handle escape sequences
|
|
252
|
+
if (escaped) {
|
|
253
|
+
escaped = false;
|
|
254
|
+
continue;
|
|
255
|
+
}
|
|
256
|
+
if (char === '\\') {
|
|
257
|
+
escaped = true;
|
|
258
|
+
continue;
|
|
259
|
+
}
|
|
260
|
+
// Handle strings
|
|
261
|
+
if (char === '"' || char === "'" || char === '`') {
|
|
262
|
+
if (!inString) {
|
|
263
|
+
inString = true;
|
|
264
|
+
stringChar = char;
|
|
265
|
+
}
|
|
266
|
+
else if (char === stringChar) {
|
|
267
|
+
inString = false;
|
|
268
|
+
stringChar = '';
|
|
269
|
+
}
|
|
270
|
+
continue;
|
|
271
|
+
}
|
|
272
|
+
// Check for comment marker (outside strings)
|
|
273
|
+
if (!inString && line.substring(i).startsWith(commentMarker)) {
|
|
274
|
+
// Found comment - return everything before it
|
|
275
|
+
return line.substring(0, i).trimEnd();
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
// No comment found
|
|
279
|
+
return line;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
exports.CodeCleaner = CodeCleaner;
|
|
283
|
+
//# sourceMappingURL=code-cleaner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-cleaner.js","sourceRoot":"","sources":["../../../../../../src/lib/utils/code-cleaner.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "codeslick-cli",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "CodeSlick CLI tool for pre-commit security scanning",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"codeslick": "./bin/codeslick.cjs",
|
|
8
|
+
"cs": "./bin/codeslick.cjs"
|
|
9
|
+
},
|
|
10
|
+
"scripts": {
|
|
11
|
+
"build": "tsc",
|
|
12
|
+
"dev": "tsc --watch",
|
|
13
|
+
"test": "vitest",
|
|
14
|
+
"prepublishOnly": "npm run build"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"codeslick",
|
|
18
|
+
"security",
|
|
19
|
+
"static-analysis",
|
|
20
|
+
"pre-commit",
|
|
21
|
+
"git-hook",
|
|
22
|
+
"vulnerability-scanner"
|
|
23
|
+
],
|
|
24
|
+
"author": "CodeSlick <support@codeslick.dev>",
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"repository": {
|
|
27
|
+
"type": "git",
|
|
28
|
+
"url": "https://github.com/VitorLourenco/codeslick2",
|
|
29
|
+
"directory": "packages/cli"
|
|
30
|
+
},
|
|
31
|
+
"bugs": {
|
|
32
|
+
"url": "https://github.com/VitorLourenco/codeslick2/issues"
|
|
33
|
+
},
|
|
34
|
+
"homepage": "https://codeslick.dev",
|
|
35
|
+
"engines": {
|
|
36
|
+
"node": ">=18.0.0"
|
|
37
|
+
},
|
|
38
|
+
"dependencies": {
|
|
39
|
+
"yargs": "^17.7.2",
|
|
40
|
+
"chalk": "^5.3.0",
|
|
41
|
+
"ora": "^8.0.1",
|
|
42
|
+
"cli-table3": "^0.6.3",
|
|
43
|
+
"glob": "^10.3.10"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"@types/node": "^20.10.0",
|
|
47
|
+
"@types/yargs": "^17.0.32",
|
|
48
|
+
"typescript": "^5.3.3",
|
|
49
|
+
"vitest": "^1.0.4"
|
|
50
|
+
}
|
|
51
|
+
}
|