driftdetect-detectors 0.1.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/dist/accessibility/alt-text.d.ts +63 -0
- package/dist/accessibility/alt-text.d.ts.map +1 -0
- package/dist/accessibility/alt-text.js +100 -0
- package/dist/accessibility/alt-text.js.map +1 -0
- package/dist/accessibility/aria-roles.d.ts +65 -0
- package/dist/accessibility/aria-roles.d.ts.map +1 -0
- package/dist/accessibility/aria-roles.js +87 -0
- package/dist/accessibility/aria-roles.js.map +1 -0
- package/dist/accessibility/focus-management.d.ts +62 -0
- package/dist/accessibility/focus-management.d.ts.map +1 -0
- package/dist/accessibility/focus-management.js +88 -0
- package/dist/accessibility/focus-management.js.map +1 -0
- package/dist/accessibility/heading-hierarchy.d.ts +66 -0
- package/dist/accessibility/heading-hierarchy.d.ts.map +1 -0
- package/dist/accessibility/heading-hierarchy.js +94 -0
- package/dist/accessibility/heading-hierarchy.js.map +1 -0
- package/dist/accessibility/index.d.ts +25 -0
- package/dist/accessibility/index.d.ts.map +1 -0
- package/dist/accessibility/index.js +21 -0
- package/dist/accessibility/index.js.map +1 -0
- package/dist/accessibility/keyboard-nav.d.ts +63 -0
- package/dist/accessibility/keyboard-nav.d.ts.map +1 -0
- package/dist/accessibility/keyboard-nav.js +86 -0
- package/dist/accessibility/keyboard-nav.js.map +1 -0
- package/dist/accessibility/semantic-html.d.ts +76 -0
- package/dist/accessibility/semantic-html.d.ts.map +1 -0
- package/dist/accessibility/semantic-html.js +204 -0
- package/dist/accessibility/semantic-html.js.map +1 -0
- package/dist/api/client-patterns.d.ts +121 -0
- package/dist/api/client-patterns.d.ts.map +1 -0
- package/dist/api/client-patterns.js +478 -0
- package/dist/api/client-patterns.js.map +1 -0
- package/dist/api/error-format.d.ts +140 -0
- package/dist/api/error-format.d.ts.map +1 -0
- package/dist/api/error-format.js +614 -0
- package/dist/api/error-format.js.map +1 -0
- package/dist/api/http-methods.d.ts +255 -0
- package/dist/api/http-methods.d.ts.map +1 -0
- package/dist/api/http-methods.js +890 -0
- package/dist/api/http-methods.js.map +1 -0
- package/dist/api/index.d.ts +16 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +37 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/pagination.d.ts +133 -0
- package/dist/api/pagination.d.ts.map +1 -0
- package/dist/api/pagination.js +521 -0
- package/dist/api/pagination.js.map +1 -0
- package/dist/api/response-envelope.d.ts +261 -0
- package/dist/api/response-envelope.d.ts.map +1 -0
- package/dist/api/response-envelope.js +1050 -0
- package/dist/api/response-envelope.js.map +1 -0
- package/dist/api/retry-patterns.d.ts +117 -0
- package/dist/api/retry-patterns.d.ts.map +1 -0
- package/dist/api/retry-patterns.js +480 -0
- package/dist/api/retry-patterns.js.map +1 -0
- package/dist/api/route-structure.d.ts +128 -0
- package/dist/api/route-structure.d.ts.map +1 -0
- package/dist/api/route-structure.js +738 -0
- package/dist/api/route-structure.js.map +1 -0
- package/dist/auth/audit-logging.d.ts +80 -0
- package/dist/auth/audit-logging.d.ts.map +1 -0
- package/dist/auth/audit-logging.js +370 -0
- package/dist/auth/audit-logging.js.map +1 -0
- package/dist/auth/index.d.ts +33 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +49 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/middleware-usage.d.ts +65 -0
- package/dist/auth/middleware-usage.d.ts.map +1 -0
- package/dist/auth/middleware-usage.js +192 -0
- package/dist/auth/middleware-usage.js.map +1 -0
- package/dist/auth/permission-checks.d.ts +60 -0
- package/dist/auth/permission-checks.d.ts.map +1 -0
- package/dist/auth/permission-checks.js +159 -0
- package/dist/auth/permission-checks.js.map +1 -0
- package/dist/auth/rbac-patterns.d.ts +68 -0
- package/dist/auth/rbac-patterns.d.ts.map +1 -0
- package/dist/auth/rbac-patterns.js +143 -0
- package/dist/auth/rbac-patterns.js.map +1 -0
- package/dist/auth/resource-ownership.d.ts +77 -0
- package/dist/auth/resource-ownership.d.ts.map +1 -0
- package/dist/auth/resource-ownership.js +324 -0
- package/dist/auth/resource-ownership.js.map +1 -0
- package/dist/auth/token-handling.d.ts +64 -0
- package/dist/auth/token-handling.d.ts.map +1 -0
- package/dist/auth/token-handling.js +151 -0
- package/dist/auth/token-handling.js.map +1 -0
- package/dist/base/ast-detector.d.ts +421 -0
- package/dist/base/ast-detector.d.ts.map +1 -0
- package/dist/base/ast-detector.js +699 -0
- package/dist/base/ast-detector.js.map +1 -0
- package/dist/base/base-detector.d.ts +366 -0
- package/dist/base/base-detector.d.ts.map +1 -0
- package/dist/base/base-detector.js +170 -0
- package/dist/base/base-detector.js.map +1 -0
- package/dist/base/index.d.ts +12 -0
- package/dist/base/index.d.ts.map +1 -0
- package/dist/base/index.js +17 -0
- package/dist/base/index.js.map +1 -0
- package/dist/base/regex-detector.d.ts +421 -0
- package/dist/base/regex-detector.d.ts.map +1 -0
- package/dist/base/regex-detector.js +537 -0
- package/dist/base/regex-detector.js.map +1 -0
- package/dist/base/structural-detector.d.ts +424 -0
- package/dist/base/structural-detector.d.ts.map +1 -0
- package/dist/base/structural-detector.js +731 -0
- package/dist/base/structural-detector.js.map +1 -0
- package/dist/base/types.d.ts +53 -0
- package/dist/base/types.d.ts.map +1 -0
- package/dist/base/types.js +5 -0
- package/dist/base/types.js.map +1 -0
- package/dist/components/component-structure.d.ts +163 -0
- package/dist/components/component-structure.d.ts.map +1 -0
- package/dist/components/component-structure.js +500 -0
- package/dist/components/component-structure.js.map +1 -0
- package/dist/components/composition.d.ts +287 -0
- package/dist/components/composition.d.ts.map +1 -0
- package/dist/components/composition.js +1123 -0
- package/dist/components/composition.js.map +1 -0
- package/dist/components/duplicate-detection.d.ts +251 -0
- package/dist/components/duplicate-detection.d.ts.map +1 -0
- package/dist/components/duplicate-detection.js +804 -0
- package/dist/components/duplicate-detection.js.map +1 -0
- package/dist/components/index.d.ts +16 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +51 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/near-duplicate.d.ts +402 -0
- package/dist/components/near-duplicate.d.ts.map +1 -0
- package/dist/components/near-duplicate.js +1090 -0
- package/dist/components/near-duplicate.js.map +1 -0
- package/dist/components/props-patterns.d.ts +194 -0
- package/dist/components/props-patterns.d.ts.map +1 -0
- package/dist/components/props-patterns.js +795 -0
- package/dist/components/props-patterns.js.map +1 -0
- package/dist/components/ref-forwarding.d.ts +250 -0
- package/dist/components/ref-forwarding.d.ts.map +1 -0
- package/dist/components/ref-forwarding.js +832 -0
- package/dist/components/ref-forwarding.js.map +1 -0
- package/dist/components/state-patterns.d.ts +291 -0
- package/dist/components/state-patterns.d.ts.map +1 -0
- package/dist/components/state-patterns.js +970 -0
- package/dist/components/state-patterns.js.map +1 -0
- package/dist/config/config-validation.d.ts +74 -0
- package/dist/config/config-validation.d.ts.map +1 -0
- package/dist/config/config-validation.js +446 -0
- package/dist/config/config-validation.js.map +1 -0
- package/dist/config/default-values.d.ts +72 -0
- package/dist/config/default-values.d.ts.map +1 -0
- package/dist/config/default-values.js +386 -0
- package/dist/config/default-values.js.map +1 -0
- package/dist/config/env-naming.d.ts +73 -0
- package/dist/config/env-naming.d.ts.map +1 -0
- package/dist/config/env-naming.js +429 -0
- package/dist/config/env-naming.js.map +1 -0
- package/dist/config/environment-detection.d.ts +72 -0
- package/dist/config/environment-detection.d.ts.map +1 -0
- package/dist/config/environment-detection.js +400 -0
- package/dist/config/environment-detection.js.map +1 -0
- package/dist/config/feature-flags.d.ts +72 -0
- package/dist/config/feature-flags.d.ts.map +1 -0
- package/dist/config/feature-flags.js +384 -0
- package/dist/config/feature-flags.js.map +1 -0
- package/dist/config/index.d.ts +27 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +43 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/required-optional.d.ts +71 -0
- package/dist/config/required-optional.d.ts.map +1 -0
- package/dist/config/required-optional.js +344 -0
- package/dist/config/required-optional.js.map +1 -0
- package/dist/data-access/connection-pooling.d.ts +63 -0
- package/dist/data-access/connection-pooling.d.ts.map +1 -0
- package/dist/data-access/connection-pooling.js +297 -0
- package/dist/data-access/connection-pooling.js.map +1 -0
- package/dist/data-access/dto-patterns.d.ts +64 -0
- package/dist/data-access/dto-patterns.d.ts.map +1 -0
- package/dist/data-access/dto-patterns.js +291 -0
- package/dist/data-access/dto-patterns.js.map +1 -0
- package/dist/data-access/index.d.ts +31 -0
- package/dist/data-access/index.d.ts.map +1 -0
- package/dist/data-access/index.js +49 -0
- package/dist/data-access/index.js.map +1 -0
- package/dist/data-access/n-plus-one.d.ts +60 -0
- package/dist/data-access/n-plus-one.d.ts.map +1 -0
- package/dist/data-access/n-plus-one.js +264 -0
- package/dist/data-access/n-plus-one.js.map +1 -0
- package/dist/data-access/query-patterns.d.ts +64 -0
- package/dist/data-access/query-patterns.d.ts.map +1 -0
- package/dist/data-access/query-patterns.js +314 -0
- package/dist/data-access/query-patterns.js.map +1 -0
- package/dist/data-access/repository-pattern.d.ts +62 -0
- package/dist/data-access/repository-pattern.d.ts.map +1 -0
- package/dist/data-access/repository-pattern.js +257 -0
- package/dist/data-access/repository-pattern.js.map +1 -0
- package/dist/data-access/transaction-patterns.d.ts +61 -0
- package/dist/data-access/transaction-patterns.d.ts.map +1 -0
- package/dist/data-access/transaction-patterns.js +277 -0
- package/dist/data-access/transaction-patterns.js.map +1 -0
- package/dist/data-access/validation-patterns.d.ts +62 -0
- package/dist/data-access/validation-patterns.d.ts.map +1 -0
- package/dist/data-access/validation-patterns.js +301 -0
- package/dist/data-access/validation-patterns.js.map +1 -0
- package/dist/documentation/deprecation.d.ts +62 -0
- package/dist/documentation/deprecation.d.ts.map +1 -0
- package/dist/documentation/deprecation.js +83 -0
- package/dist/documentation/deprecation.js.map +1 -0
- package/dist/documentation/example-code.d.ts +64 -0
- package/dist/documentation/example-code.d.ts.map +1 -0
- package/dist/documentation/example-code.js +79 -0
- package/dist/documentation/example-code.js.map +1 -0
- package/dist/documentation/index.d.ts +22 -0
- package/dist/documentation/index.d.ts.map +1 -0
- package/dist/documentation/index.js +19 -0
- package/dist/documentation/index.js.map +1 -0
- package/dist/documentation/jsdoc-patterns.d.ts +72 -0
- package/dist/documentation/jsdoc-patterns.d.ts.map +1 -0
- package/dist/documentation/jsdoc-patterns.js +92 -0
- package/dist/documentation/jsdoc-patterns.js.map +1 -0
- package/dist/documentation/readme-structure.d.ts +67 -0
- package/dist/documentation/readme-structure.d.ts.map +1 -0
- package/dist/documentation/readme-structure.js +76 -0
- package/dist/documentation/readme-structure.js.map +1 -0
- package/dist/documentation/todo-patterns.d.ts +67 -0
- package/dist/documentation/todo-patterns.d.ts.map +1 -0
- package/dist/documentation/todo-patterns.js +73 -0
- package/dist/documentation/todo-patterns.js.map +1 -0
- package/dist/errors/async-errors.d.ts +72 -0
- package/dist/errors/async-errors.d.ts.map +1 -0
- package/dist/errors/async-errors.js +214 -0
- package/dist/errors/async-errors.js.map +1 -0
- package/dist/errors/circuit-breaker.d.ts +53 -0
- package/dist/errors/circuit-breaker.d.ts.map +1 -0
- package/dist/errors/circuit-breaker.js +241 -0
- package/dist/errors/circuit-breaker.js.map +1 -0
- package/dist/errors/error-codes.d.ts +73 -0
- package/dist/errors/error-codes.d.ts.map +1 -0
- package/dist/errors/error-codes.js +211 -0
- package/dist/errors/error-codes.js.map +1 -0
- package/dist/errors/error-logging.d.ts +73 -0
- package/dist/errors/error-logging.d.ts.map +1 -0
- package/dist/errors/error-logging.js +256 -0
- package/dist/errors/error-logging.js.map +1 -0
- package/dist/errors/error-propagation.d.ts +73 -0
- package/dist/errors/error-propagation.d.ts.map +1 -0
- package/dist/errors/error-propagation.js +244 -0
- package/dist/errors/error-propagation.js.map +1 -0
- package/dist/errors/exception-hierarchy.d.ts +75 -0
- package/dist/errors/exception-hierarchy.d.ts.map +1 -0
- package/dist/errors/exception-hierarchy.js +259 -0
- package/dist/errors/exception-hierarchy.js.map +1 -0
- package/dist/errors/index.d.ts +31 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +49 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/try-catch-placement.d.ts +73 -0
- package/dist/errors/try-catch-placement.d.ts.map +1 -0
- package/dist/errors/try-catch-placement.js +214 -0
- package/dist/errors/try-catch-placement.js.map +1 -0
- package/dist/index.d.ts +221 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +245 -0
- package/dist/index.js.map +1 -0
- package/dist/logging/context-fields.d.ts +48 -0
- package/dist/logging/context-fields.d.ts.map +1 -0
- package/dist/logging/context-fields.js +160 -0
- package/dist/logging/context-fields.js.map +1 -0
- package/dist/logging/correlation-ids.d.ts +44 -0
- package/dist/logging/correlation-ids.d.ts.map +1 -0
- package/dist/logging/correlation-ids.js +144 -0
- package/dist/logging/correlation-ids.js.map +1 -0
- package/dist/logging/health-checks.d.ts +45 -0
- package/dist/logging/health-checks.d.ts.map +1 -0
- package/dist/logging/health-checks.js +165 -0
- package/dist/logging/health-checks.js.map +1 -0
- package/dist/logging/index.d.ts +31 -0
- package/dist/logging/index.d.ts.map +1 -0
- package/dist/logging/index.js +49 -0
- package/dist/logging/index.js.map +1 -0
- package/dist/logging/log-levels.d.ts +46 -0
- package/dist/logging/log-levels.d.ts.map +1 -0
- package/dist/logging/log-levels.js +178 -0
- package/dist/logging/log-levels.js.map +1 -0
- package/dist/logging/metric-naming.d.ts +46 -0
- package/dist/logging/metric-naming.d.ts.map +1 -0
- package/dist/logging/metric-naming.js +157 -0
- package/dist/logging/metric-naming.js.map +1 -0
- package/dist/logging/pii-redaction.d.ts +44 -0
- package/dist/logging/pii-redaction.d.ts.map +1 -0
- package/dist/logging/pii-redaction.js +166 -0
- package/dist/logging/pii-redaction.js.map +1 -0
- package/dist/logging/structured-format.d.ts +53 -0
- package/dist/logging/structured-format.d.ts.map +1 -0
- package/dist/logging/structured-format.js +235 -0
- package/dist/logging/structured-format.js.map +1 -0
- package/dist/performance/bundle-size.d.ts +79 -0
- package/dist/performance/bundle-size.d.ts.map +1 -0
- package/dist/performance/bundle-size.js +276 -0
- package/dist/performance/bundle-size.js.map +1 -0
- package/dist/performance/caching-patterns.d.ts +78 -0
- package/dist/performance/caching-patterns.d.ts.map +1 -0
- package/dist/performance/caching-patterns.js +257 -0
- package/dist/performance/caching-patterns.js.map +1 -0
- package/dist/performance/code-splitting.d.ts +86 -0
- package/dist/performance/code-splitting.d.ts.map +1 -0
- package/dist/performance/code-splitting.js +447 -0
- package/dist/performance/code-splitting.js.map +1 -0
- package/dist/performance/debounce-throttle.d.ts +75 -0
- package/dist/performance/debounce-throttle.d.ts.map +1 -0
- package/dist/performance/debounce-throttle.js +232 -0
- package/dist/performance/debounce-throttle.js.map +1 -0
- package/dist/performance/index.d.ts +28 -0
- package/dist/performance/index.d.ts.map +1 -0
- package/dist/performance/index.js +39 -0
- package/dist/performance/index.js.map +1 -0
- package/dist/performance/lazy-loading.d.ts +75 -0
- package/dist/performance/lazy-loading.d.ts.map +1 -0
- package/dist/performance/lazy-loading.js +233 -0
- package/dist/performance/lazy-loading.js.map +1 -0
- package/dist/performance/memoization.d.ts +75 -0
- package/dist/performance/memoization.d.ts.map +1 -0
- package/dist/performance/memoization.js +251 -0
- package/dist/performance/memoization.js.map +1 -0
- package/dist/registry/detector-registry.d.ts +266 -0
- package/dist/registry/detector-registry.d.ts.map +1 -0
- package/dist/registry/detector-registry.js +526 -0
- package/dist/registry/detector-registry.js.map +1 -0
- package/dist/registry/index.d.ts +10 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +10 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/registry/loader.d.ts +232 -0
- package/dist/registry/loader.d.ts.map +1 -0
- package/dist/registry/loader.js +419 -0
- package/dist/registry/loader.js.map +1 -0
- package/dist/registry/types.d.ts +111 -0
- package/dist/registry/types.d.ts.map +1 -0
- package/dist/registry/types.js +19 -0
- package/dist/registry/types.js.map +1 -0
- package/dist/security/csp-headers.d.ts +78 -0
- package/dist/security/csp-headers.d.ts.map +1 -0
- package/dist/security/csp-headers.js +401 -0
- package/dist/security/csp-headers.js.map +1 -0
- package/dist/security/csrf-protection.d.ts +72 -0
- package/dist/security/csrf-protection.d.ts.map +1 -0
- package/dist/security/csrf-protection.js +344 -0
- package/dist/security/csrf-protection.js.map +1 -0
- package/dist/security/index.d.ts +30 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +48 -0
- package/dist/security/index.js.map +1 -0
- package/dist/security/input-sanitization.d.ts +74 -0
- package/dist/security/input-sanitization.d.ts.map +1 -0
- package/dist/security/input-sanitization.js +373 -0
- package/dist/security/input-sanitization.js.map +1 -0
- package/dist/security/rate-limiting.d.ts +81 -0
- package/dist/security/rate-limiting.d.ts.map +1 -0
- package/dist/security/rate-limiting.js +535 -0
- package/dist/security/rate-limiting.js.map +1 -0
- package/dist/security/secret-management.d.ts +83 -0
- package/dist/security/secret-management.d.ts.map +1 -0
- package/dist/security/secret-management.js +547 -0
- package/dist/security/secret-management.js.map +1 -0
- package/dist/security/sql-injection.d.ts +76 -0
- package/dist/security/sql-injection.d.ts.map +1 -0
- package/dist/security/sql-injection.js +383 -0
- package/dist/security/sql-injection.js.map +1 -0
- package/dist/security/xss-prevention.d.ts +80 -0
- package/dist/security/xss-prevention.d.ts.map +1 -0
- package/dist/security/xss-prevention.js +416 -0
- package/dist/security/xss-prevention.js.map +1 -0
- package/dist/structural/barrel-exports.d.ts +178 -0
- package/dist/structural/barrel-exports.d.ts.map +1 -0
- package/dist/structural/barrel-exports.js +553 -0
- package/dist/structural/barrel-exports.js.map +1 -0
- package/dist/structural/circular-deps.d.ts +140 -0
- package/dist/structural/circular-deps.d.ts.map +1 -0
- package/dist/structural/circular-deps.js +422 -0
- package/dist/structural/circular-deps.js.map +1 -0
- package/dist/structural/co-location.d.ts +202 -0
- package/dist/structural/co-location.d.ts.map +1 -0
- package/dist/structural/co-location.js +640 -0
- package/dist/structural/co-location.js.map +1 -0
- package/dist/structural/directory-structure.d.ts +151 -0
- package/dist/structural/directory-structure.d.ts.map +1 -0
- package/dist/structural/directory-structure.js +457 -0
- package/dist/structural/directory-structure.js.map +1 -0
- package/dist/structural/file-naming.d.ts +61 -0
- package/dist/structural/file-naming.d.ts.map +1 -0
- package/dist/structural/file-naming.js +231 -0
- package/dist/structural/file-naming.js.map +1 -0
- package/dist/structural/import-ordering.d.ts +212 -0
- package/dist/structural/import-ordering.d.ts.map +1 -0
- package/dist/structural/import-ordering.js +821 -0
- package/dist/structural/import-ordering.js.map +1 -0
- package/dist/structural/index.d.ts +23 -0
- package/dist/structural/index.d.ts.map +1 -0
- package/dist/structural/index.js +26 -0
- package/dist/structural/index.js.map +1 -0
- package/dist/structural/module-boundaries.d.ts +164 -0
- package/dist/structural/module-boundaries.d.ts.map +1 -0
- package/dist/structural/module-boundaries.js +616 -0
- package/dist/structural/module-boundaries.js.map +1 -0
- package/dist/structural/package-boundaries.d.ts +182 -0
- package/dist/structural/package-boundaries.d.ts.map +1 -0
- package/dist/structural/package-boundaries.js +602 -0
- package/dist/structural/package-boundaries.js.map +1 -0
- package/dist/styling/class-naming.d.ts +263 -0
- package/dist/styling/class-naming.d.ts.map +1 -0
- package/dist/styling/class-naming.js +892 -0
- package/dist/styling/class-naming.js.map +1 -0
- package/dist/styling/color-usage.d.ts +213 -0
- package/dist/styling/color-usage.d.ts.map +1 -0
- package/dist/styling/color-usage.js +732 -0
- package/dist/styling/color-usage.js.map +1 -0
- package/dist/styling/design-tokens.d.ts +212 -0
- package/dist/styling/design-tokens.d.ts.map +1 -0
- package/dist/styling/design-tokens.js +748 -0
- package/dist/styling/design-tokens.js.map +1 -0
- package/dist/styling/index.d.ts +16 -0
- package/dist/styling/index.d.ts.map +1 -0
- package/dist/styling/index.js +56 -0
- package/dist/styling/index.js.map +1 -0
- package/dist/styling/responsive.d.ts +304 -0
- package/dist/styling/responsive.d.ts.map +1 -0
- package/dist/styling/responsive.js +888 -0
- package/dist/styling/responsive.js.map +1 -0
- package/dist/styling/spacing-scale.d.ts +248 -0
- package/dist/styling/spacing-scale.d.ts.map +1 -0
- package/dist/styling/spacing-scale.js +865 -0
- package/dist/styling/spacing-scale.js.map +1 -0
- package/dist/styling/tailwind-patterns.d.ts +305 -0
- package/dist/styling/tailwind-patterns.d.ts.map +1 -0
- package/dist/styling/tailwind-patterns.js +1181 -0
- package/dist/styling/tailwind-patterns.js.map +1 -0
- package/dist/styling/typography.d.ts +281 -0
- package/dist/styling/typography.d.ts.map +1 -0
- package/dist/styling/typography.js +1004 -0
- package/dist/styling/typography.js.map +1 -0
- package/dist/styling/z-index-scale.d.ts +270 -0
- package/dist/styling/z-index-scale.d.ts.map +1 -0
- package/dist/styling/z-index-scale.js +714 -0
- package/dist/styling/z-index-scale.js.map +1 -0
- package/dist/testing/co-location.d.ts +42 -0
- package/dist/testing/co-location.d.ts.map +1 -0
- package/dist/testing/co-location.js +134 -0
- package/dist/testing/co-location.js.map +1 -0
- package/dist/testing/describe-naming.d.ts +47 -0
- package/dist/testing/describe-naming.d.ts.map +1 -0
- package/dist/testing/describe-naming.js +150 -0
- package/dist/testing/describe-naming.js.map +1 -0
- package/dist/testing/file-naming.d.ts +44 -0
- package/dist/testing/file-naming.d.ts.map +1 -0
- package/dist/testing/file-naming.js +131 -0
- package/dist/testing/file-naming.js.map +1 -0
- package/dist/testing/fixture-patterns.d.ts +52 -0
- package/dist/testing/fixture-patterns.d.ts.map +1 -0
- package/dist/testing/fixture-patterns.js +228 -0
- package/dist/testing/fixture-patterns.js.map +1 -0
- package/dist/testing/index.d.ts +31 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +49 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-patterns.d.ts +53 -0
- package/dist/testing/mock-patterns.d.ts.map +1 -0
- package/dist/testing/mock-patterns.js +264 -0
- package/dist/testing/mock-patterns.js.map +1 -0
- package/dist/testing/setup-teardown.d.ts +55 -0
- package/dist/testing/setup-teardown.d.ts.map +1 -0
- package/dist/testing/setup-teardown.js +262 -0
- package/dist/testing/setup-teardown.js.map +1 -0
- package/dist/testing/test-structure.d.ts +51 -0
- package/dist/testing/test-structure.d.ts.map +1 -0
- package/dist/testing/test-structure.js +225 -0
- package/dist/testing/test-structure.js.map +1 -0
- package/dist/types/any-usage.d.ts +99 -0
- package/dist/types/any-usage.d.ts.map +1 -0
- package/dist/types/any-usage.js +641 -0
- package/dist/types/any-usage.js.map +1 -0
- package/dist/types/file-location.d.ts +76 -0
- package/dist/types/file-location.d.ts.map +1 -0
- package/dist/types/file-location.js +395 -0
- package/dist/types/file-location.js.map +1 -0
- package/dist/types/generic-patterns.d.ts +97 -0
- package/dist/types/generic-patterns.d.ts.map +1 -0
- package/dist/types/generic-patterns.js +615 -0
- package/dist/types/generic-patterns.js.map +1 -0
- package/dist/types/index.d.ts +31 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +43 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/interface-vs-type.d.ts +81 -0
- package/dist/types/interface-vs-type.d.ts.map +1 -0
- package/dist/types/interface-vs-type.js +440 -0
- package/dist/types/interface-vs-type.js.map +1 -0
- package/dist/types/naming-conventions.d.ts +84 -0
- package/dist/types/naming-conventions.d.ts.map +1 -0
- package/dist/types/naming-conventions.js +455 -0
- package/dist/types/naming-conventions.js.map +1 -0
- package/dist/types/type-assertions.d.ts +98 -0
- package/dist/types/type-assertions.d.ts.map +1 -0
- package/dist/types/type-assertions.js +639 -0
- package/dist/types/type-assertions.js.map +1 -0
- package/dist/types/utility-types.d.ts +110 -0
- package/dist/types/utility-types.d.ts.map +1 -0
- package/dist/types/utility-types.js +547 -0
- package/dist/types/utility-types.js.map +1 -0
- package/package.json +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duplicate-detection.js","sourceRoot":"","sources":["../../src/components/duplicate-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Component detectors module exports
|
|
3
|
+
*
|
|
4
|
+
* Detects UI component patterns including file structure,
|
|
5
|
+
* props patterns, duplicates, and more.
|
|
6
|
+
*
|
|
7
|
+
* @requirements 8.1-8.8 - Component pattern detection
|
|
8
|
+
*/
|
|
9
|
+
export { ComponentStructureDetector, createComponentStructureDetector, type ComponentStructureType, type ComponentFileInfo, type ComponentFileType, type DetectedComponent, type ComponentStructureAnalysis, getComponentFileType, extractComponentName, isComponentFile, isComponentFolder, getComponentFolderFiles, determineStructureType, findRelatedFiles, detectComponents, analyzeComponentStructure, suggestRestructure, COMPONENT_EXTENSIONS, COMPONENT_FILE_PATTERNS, COMPONENT_FOLDER_INDICATORS, } from './component-structure.js';
|
|
10
|
+
export { PropsPatternDetector, createPropsPatternDetector, type PropsDestructuringPattern, type DefaultPropsPattern, type PropsSpreadingPattern, type PropsTypePattern, type ComponentPropsInfo, type PropsPatternAnalysis, isReactComponent, getComponentName, detectDestructuringPattern, detectDefaultPropsPattern, detectSpreadingPattern, detectTypePattern, extractPropNames, extractPropsWithDefaults, getPropsTypeName, usesFCType, analyzeComponentProps, analyzePropsPatterns, generatePropsSuggestion, FC_TYPE_PATTERNS, PROPS_TYPE_NAME_PATTERNS, } from './props-patterns.js';
|
|
11
|
+
export { DuplicateDetector, createDuplicateDetector, type DuplicateType, type DuplicatePair, type ComponentInfo, type DuplicateDifference, type NormalizedNode, type DuplicateAnalysis, type DuplicateDetectionConfig, normalizeASTNode, hashNormalizedNode, countNodes, calculateASTSimilarity, calculateTextSimilarity, determineDuplicateType, isReactComponentNode, extractComponentNameFromNode, extractComponentInfo, findDifferences, hasOnlyIdentifierDifferences, compareComponents, analyzeDuplicates, generateRefactoringSuggestion, DEFAULT_DUPLICATE_CONFIG, IDENTIFIER_NODE_TYPES, LITERAL_NODE_TYPES, } from './duplicate-detection.js';
|
|
12
|
+
export { NearDuplicateDetector, createNearDuplicateDetector, type AbstractionType, type SemanticFeatures, type PropFeature, type StateFeature, type HookFeature, type EventHandlerFeature, type JSXElementFeature, type ConditionalPattern, type DataPattern, type NearDuplicatePair, type SimilarityBreakdown, type AbstractionSuggestion, type NearDuplicateAnalysis, type AbstractionGroup, type NearDuplicateConfig, type SimilarityWeights, isReactComponentNode as isReactComponentNodeNearDup, extractComponentName as extractComponentNameNearDup, extractProps, extractState, extractHooks, extractEventHandlers, extractJSXElements, extractConditionalPatterns, extractDataPatterns, extractSemanticFeatures, calculatePropsSimilarity, calculateStateSimilarity, calculateHooksSimilarity, calculateEventHandlersSimilarity, calculateJSXSimilarity, calculateConditionalSimilarity, calculateDataPatternsSimilarity, calculateSemanticSimilarity, calculateOverallSimilarity, determineAbstractionType, generateAbstractionSuggestions, compareComponentsSemanticly, analyzeNearDuplicates, generateRefactoringSuggestionMessage, DEFAULT_NEAR_DUPLICATE_CONFIG, REACT_HOOKS, EVENT_HANDLER_PATTERNS, } from './near-duplicate.js';
|
|
13
|
+
export { StatePatternDetector, createStatePatternDetector, type LocalStatePattern, type GlobalStatePattern, type StateIssueType, type StateUsageInfo, type ComponentStateInfo, type StateIssue, type StatePatternAnalysis, type StatePatternConfig, isReactComponent as isReactComponentState, getComponentName as getComponentNameState, detectUseState, detectUseReducer, detectUseRef, detectLocalState, detectUseContext, detectRedux, detectZustand, detectJotai, detectRecoil, detectReactQuery, detectSWR, detectMobX, detectValtio, detectGlobalState, detectPropDrilling, detectStateIssues, calculateComplexityScore, extractPropsFromComponent, analyzeComponentState, analyzeStatePatterns, DEFAULT_STATE_PATTERN_CONFIG, LOCAL_PATTERN_DESCRIPTIONS, GLOBAL_PATTERN_DESCRIPTIONS, REDUX_HOOKS, ZUSTAND_PATTERNS, JOTAI_HOOKS, RECOIL_HOOKS, REACT_QUERY_HOOKS, SWR_HOOKS, MOBX_PATTERNS, VALTIO_HOOKS, } from './state-patterns.js';
|
|
14
|
+
export { CompositionDetector, createCompositionDetector, type CompositionPattern, type CompositionAntiPattern, type CompositionUsageInfo, type CompositionDetails, type ComponentCompositionInfo, type CompositionAntiPatternInfo, type CompositionAnalysis, type CompositionConfig, isReactComponent as isReactComponentComposition, getComponentName as getComponentNameComposition, detectChildrenProp, acceptsChildrenProp, detectRenderProps, detectHOC, extractHOCNames, detectCompoundComponent, isCompoundComponentPart, detectSlotBasedComposition, detectProviderConsumer, countNestedProviders, detectControlledPattern, detectUncontrolledPattern, hasMixedControlledPatterns, detectAntiPatterns, analyzeComponentComposition, analyzeCompositionPatterns, DEFAULT_COMPOSITION_CONFIG, HOC_PATTERNS, RENDER_PROP_NAMES, CONTROLLED_PROP_PATTERNS, UNCONTROLLED_PROP_PATTERNS, } from './composition.js';
|
|
15
|
+
export { RefForwardingDetector, createRefForwardingDetector, type RefForwardingPattern, type RefForwardingIssue, type RefUsageInfo, type ComponentRefInfo, type RefIssue, type RefForwardingAnalysis, type RefForwardingConfig, isReactComponent as isReactComponentRef, getComponentName as getComponentNameRef, detectForwardRef, isWrappedWithForwardRef, detectUseImperativeHandle, hasImperativeWithoutForwardRef, detectUseRef as detectUseRefForwarding, isRefUsed, detectRefPropToDom, detectRefPropToChild, detectCallbackRef, detectRefMerging, detectMissingForwardRef, detectRefIssues, collectRefUsages, analyzeComponentRefs, analyzeRefForwardingPatterns, getPatternDescription, getIssueDescription, DEFAULT_REF_FORWARDING_CONFIG, REF_HOOKS, DOM_ELEMENTS_WITH_REFS, } from './ref-forwarding.js';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Component detectors module exports
|
|
3
|
+
*
|
|
4
|
+
* Detects UI component patterns including file structure,
|
|
5
|
+
* props patterns, duplicates, and more.
|
|
6
|
+
*
|
|
7
|
+
* @requirements 8.1-8.8 - Component pattern detection
|
|
8
|
+
*/
|
|
9
|
+
// Component Structure Detector
|
|
10
|
+
export { ComponentStructureDetector, createComponentStructureDetector,
|
|
11
|
+
// Helper functions
|
|
12
|
+
getComponentFileType, extractComponentName, isComponentFile, isComponentFolder, getComponentFolderFiles, determineStructureType, findRelatedFiles, detectComponents, analyzeComponentStructure, suggestRestructure,
|
|
13
|
+
// Constants
|
|
14
|
+
COMPONENT_EXTENSIONS, COMPONENT_FILE_PATTERNS, COMPONENT_FOLDER_INDICATORS, } from './component-structure.js';
|
|
15
|
+
// Props Patterns Detector
|
|
16
|
+
export { PropsPatternDetector, createPropsPatternDetector,
|
|
17
|
+
// Helper functions
|
|
18
|
+
isReactComponent, getComponentName, detectDestructuringPattern, detectDefaultPropsPattern, detectSpreadingPattern, detectTypePattern, extractPropNames, extractPropsWithDefaults, getPropsTypeName, usesFCType, analyzeComponentProps, analyzePropsPatterns, generatePropsSuggestion,
|
|
19
|
+
// Constants
|
|
20
|
+
FC_TYPE_PATTERNS, PROPS_TYPE_NAME_PATTERNS, } from './props-patterns.js';
|
|
21
|
+
// Duplicate Detection
|
|
22
|
+
export { DuplicateDetector, createDuplicateDetector,
|
|
23
|
+
// Helper functions
|
|
24
|
+
normalizeASTNode, hashNormalizedNode, countNodes, calculateASTSimilarity, calculateTextSimilarity, determineDuplicateType, isReactComponentNode, extractComponentNameFromNode, extractComponentInfo, findDifferences, hasOnlyIdentifierDifferences, compareComponents, analyzeDuplicates, generateRefactoringSuggestion,
|
|
25
|
+
// Constants
|
|
26
|
+
DEFAULT_DUPLICATE_CONFIG, IDENTIFIER_NODE_TYPES, LITERAL_NODE_TYPES, } from './duplicate-detection.js';
|
|
27
|
+
// Near Duplicate Detection (Semantic Similarity)
|
|
28
|
+
export { NearDuplicateDetector, createNearDuplicateDetector,
|
|
29
|
+
// Helper functions
|
|
30
|
+
isReactComponentNode as isReactComponentNodeNearDup, extractComponentName as extractComponentNameNearDup, extractProps, extractState, extractHooks, extractEventHandlers, extractJSXElements, extractConditionalPatterns, extractDataPatterns, extractSemanticFeatures, calculatePropsSimilarity, calculateStateSimilarity, calculateHooksSimilarity, calculateEventHandlersSimilarity, calculateJSXSimilarity, calculateConditionalSimilarity, calculateDataPatternsSimilarity, calculateSemanticSimilarity, calculateOverallSimilarity, determineAbstractionType, generateAbstractionSuggestions, compareComponentsSemanticly, analyzeNearDuplicates, generateRefactoringSuggestionMessage,
|
|
31
|
+
// Constants
|
|
32
|
+
DEFAULT_NEAR_DUPLICATE_CONFIG, REACT_HOOKS, EVENT_HANDLER_PATTERNS, } from './near-duplicate.js';
|
|
33
|
+
// State Patterns Detector
|
|
34
|
+
export { StatePatternDetector, createStatePatternDetector,
|
|
35
|
+
// Helper functions
|
|
36
|
+
isReactComponent as isReactComponentState, getComponentName as getComponentNameState, detectUseState, detectUseReducer, detectUseRef, detectLocalState, detectUseContext, detectRedux, detectZustand, detectJotai, detectRecoil, detectReactQuery, detectSWR, detectMobX, detectValtio, detectGlobalState, detectPropDrilling, detectStateIssues, calculateComplexityScore, extractPropsFromComponent, analyzeComponentState, analyzeStatePatterns,
|
|
37
|
+
// Constants
|
|
38
|
+
DEFAULT_STATE_PATTERN_CONFIG, LOCAL_PATTERN_DESCRIPTIONS, GLOBAL_PATTERN_DESCRIPTIONS, REDUX_HOOKS, ZUSTAND_PATTERNS, JOTAI_HOOKS, RECOIL_HOOKS, REACT_QUERY_HOOKS, SWR_HOOKS, MOBX_PATTERNS, VALTIO_HOOKS, } from './state-patterns.js';
|
|
39
|
+
// Composition Detector
|
|
40
|
+
export { CompositionDetector, createCompositionDetector,
|
|
41
|
+
// Helper functions
|
|
42
|
+
isReactComponent as isReactComponentComposition, getComponentName as getComponentNameComposition, detectChildrenProp, acceptsChildrenProp, detectRenderProps, detectHOC, extractHOCNames, detectCompoundComponent, isCompoundComponentPart, detectSlotBasedComposition, detectProviderConsumer, countNestedProviders, detectControlledPattern, detectUncontrolledPattern, hasMixedControlledPatterns, detectAntiPatterns, analyzeComponentComposition, analyzeCompositionPatterns,
|
|
43
|
+
// Constants
|
|
44
|
+
DEFAULT_COMPOSITION_CONFIG, HOC_PATTERNS, RENDER_PROP_NAMES, CONTROLLED_PROP_PATTERNS, UNCONTROLLED_PROP_PATTERNS, } from './composition.js';
|
|
45
|
+
// Ref Forwarding Detector
|
|
46
|
+
export { RefForwardingDetector, createRefForwardingDetector,
|
|
47
|
+
// Helper functions
|
|
48
|
+
isReactComponent as isReactComponentRef, getComponentName as getComponentNameRef, detectForwardRef, isWrappedWithForwardRef, detectUseImperativeHandle, hasImperativeWithoutForwardRef, detectUseRef as detectUseRefForwarding, isRefUsed, detectRefPropToDom, detectRefPropToChild, detectCallbackRef, detectRefMerging, detectMissingForwardRef, detectRefIssues, collectRefUsages, analyzeComponentRefs, analyzeRefForwardingPatterns, getPatternDescription, getIssueDescription,
|
|
49
|
+
// Constants
|
|
50
|
+
DEFAULT_REF_FORWARDING_CONFIG, REF_HOOKS, DOM_ELEMENTS_WITH_REFS, } from './ref-forwarding.js';
|
|
51
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Near Duplicate Detector - Semantic similarity detection for abstraction candidates
|
|
3
|
+
*
|
|
4
|
+
* Detects semantically similar components that could be refactored into shared
|
|
5
|
+
* abstractions. Unlike duplicate-detection.ts which focuses on AST structure,
|
|
6
|
+
* this detector analyzes functional similarity including:
|
|
7
|
+
* - Similar prop patterns
|
|
8
|
+
* - Similar render patterns
|
|
9
|
+
* - Similar state management
|
|
10
|
+
* - Opportunities for shared hooks, HOCs, or render props
|
|
11
|
+
*
|
|
12
|
+
* @requirements 8.4 - THE Component_Detector SHALL detect near-duplicate components that should be abstracted
|
|
13
|
+
*/
|
|
14
|
+
import type { Violation, QuickFix, Language, ASTNode } from 'driftdetect-core';
|
|
15
|
+
import { ASTDetector, type DetectionContext, type DetectionResult } from '../base/index.js';
|
|
16
|
+
/**
|
|
17
|
+
* Types of abstraction opportunities
|
|
18
|
+
*/
|
|
19
|
+
export type AbstractionType = 'shared-component' | 'shared-hook' | 'higher-order' | 'render-props' | 'composition' | 'utility-function';
|
|
20
|
+
/**
|
|
21
|
+
* Semantic features extracted from a component
|
|
22
|
+
*/
|
|
23
|
+
export interface SemanticFeatures {
|
|
24
|
+
/** Component name */
|
|
25
|
+
name: string;
|
|
26
|
+
/** File path */
|
|
27
|
+
filePath: string;
|
|
28
|
+
/** Line number */
|
|
29
|
+
line: number;
|
|
30
|
+
/** Column number */
|
|
31
|
+
column: number;
|
|
32
|
+
/** Props used by the component */
|
|
33
|
+
props: PropFeature[];
|
|
34
|
+
/** State variables used */
|
|
35
|
+
stateVariables: StateFeature[];
|
|
36
|
+
/** Hooks used */
|
|
37
|
+
hooks: HookFeature[];
|
|
38
|
+
/** Event handlers */
|
|
39
|
+
eventHandlers: EventHandlerFeature[];
|
|
40
|
+
/** JSX elements rendered */
|
|
41
|
+
jsxElements: JSXElementFeature[];
|
|
42
|
+
/** Conditional rendering patterns */
|
|
43
|
+
conditionalPatterns: ConditionalPattern[];
|
|
44
|
+
/** API/data fetching patterns */
|
|
45
|
+
dataPatterns: DataPattern[];
|
|
46
|
+
/** Source code */
|
|
47
|
+
sourceCode: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Feature representing a prop
|
|
51
|
+
*/
|
|
52
|
+
export interface PropFeature {
|
|
53
|
+
/** Prop name */
|
|
54
|
+
name: string;
|
|
55
|
+
/** Whether prop has a default value */
|
|
56
|
+
hasDefault: boolean;
|
|
57
|
+
/** Whether prop is required */
|
|
58
|
+
isRequired: boolean;
|
|
59
|
+
/** Inferred type (if available) */
|
|
60
|
+
inferredType?: string;
|
|
61
|
+
/** Whether prop is a callback/function */
|
|
62
|
+
isCallback: boolean;
|
|
63
|
+
/** Whether prop is used for rendering children */
|
|
64
|
+
isChildren: boolean;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Feature representing state
|
|
68
|
+
*/
|
|
69
|
+
export interface StateFeature {
|
|
70
|
+
/** State variable name */
|
|
71
|
+
name: string;
|
|
72
|
+
/** Setter function name */
|
|
73
|
+
setter: string;
|
|
74
|
+
/** Initial value (if detectable) */
|
|
75
|
+
initialValue?: string;
|
|
76
|
+
/** Type of state (useState, useReducer, etc.) */
|
|
77
|
+
stateType: 'useState' | 'useReducer' | 'useRef' | 'other';
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Feature representing a hook usage
|
|
81
|
+
*/
|
|
82
|
+
export interface HookFeature {
|
|
83
|
+
/** Hook name */
|
|
84
|
+
name: string;
|
|
85
|
+
/** Whether it's a built-in React hook */
|
|
86
|
+
isBuiltIn: boolean;
|
|
87
|
+
/** Dependencies (for useEffect, useMemo, etc.) */
|
|
88
|
+
dependencies?: string[];
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Feature representing an event handler
|
|
92
|
+
*/
|
|
93
|
+
export interface EventHandlerFeature {
|
|
94
|
+
/** Handler name */
|
|
95
|
+
name: string;
|
|
96
|
+
/** Event type (onClick, onChange, etc.) */
|
|
97
|
+
eventType: string;
|
|
98
|
+
/** Whether handler is inline or defined separately */
|
|
99
|
+
isInline: boolean;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Feature representing a JSX element
|
|
103
|
+
*/
|
|
104
|
+
export interface JSXElementFeature {
|
|
105
|
+
/** Element tag name */
|
|
106
|
+
tagName: string;
|
|
107
|
+
/** Whether it's a custom component (PascalCase) */
|
|
108
|
+
isComponent: boolean;
|
|
109
|
+
/** Props passed to the element */
|
|
110
|
+
props: string[];
|
|
111
|
+
/** Nesting depth */
|
|
112
|
+
depth: number;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Conditional rendering pattern
|
|
116
|
+
*/
|
|
117
|
+
export interface ConditionalPattern {
|
|
118
|
+
/** Type of conditional */
|
|
119
|
+
type: 'ternary' | 'logical-and' | 'if-statement' | 'early-return';
|
|
120
|
+
/** Condition variable/expression */
|
|
121
|
+
condition: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Data fetching/API pattern
|
|
125
|
+
*/
|
|
126
|
+
export interface DataPattern {
|
|
127
|
+
/** Type of data pattern */
|
|
128
|
+
type: 'fetch' | 'useQuery' | 'useSWR' | 'useEffect-fetch' | 'other';
|
|
129
|
+
/** Whether loading state is handled */
|
|
130
|
+
hasLoadingState: boolean;
|
|
131
|
+
/** Whether error state is handled */
|
|
132
|
+
hasErrorState: boolean;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Near-duplicate pair with abstraction suggestion
|
|
136
|
+
*/
|
|
137
|
+
export interface NearDuplicatePair {
|
|
138
|
+
/** First component */
|
|
139
|
+
component1: SemanticFeatures;
|
|
140
|
+
/** Second component */
|
|
141
|
+
component2: SemanticFeatures;
|
|
142
|
+
/** Overall semantic similarity score (0-1) */
|
|
143
|
+
similarity: number;
|
|
144
|
+
/** Breakdown of similarity by feature type */
|
|
145
|
+
similarityBreakdown: SimilarityBreakdown;
|
|
146
|
+
/** Suggested abstraction type */
|
|
147
|
+
suggestedAbstraction: AbstractionType;
|
|
148
|
+
/** Specific suggestions for refactoring */
|
|
149
|
+
suggestions: AbstractionSuggestion[];
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Breakdown of similarity scores by feature type
|
|
153
|
+
*/
|
|
154
|
+
export interface SimilarityBreakdown {
|
|
155
|
+
/** Props similarity */
|
|
156
|
+
props: number;
|
|
157
|
+
/** State similarity */
|
|
158
|
+
state: number;
|
|
159
|
+
/** Hooks similarity */
|
|
160
|
+
hooks: number;
|
|
161
|
+
/** Event handlers similarity */
|
|
162
|
+
eventHandlers: number;
|
|
163
|
+
/** JSX structure similarity */
|
|
164
|
+
jsxStructure: number;
|
|
165
|
+
/** Conditional patterns similarity */
|
|
166
|
+
conditionalPatterns: number;
|
|
167
|
+
/** Data patterns similarity */
|
|
168
|
+
dataPatterns: number;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Specific abstraction suggestion
|
|
172
|
+
*/
|
|
173
|
+
export interface AbstractionSuggestion {
|
|
174
|
+
/** Type of abstraction */
|
|
175
|
+
type: AbstractionType;
|
|
176
|
+
/** Description of the suggestion */
|
|
177
|
+
description: string;
|
|
178
|
+
/** Confidence in this suggestion (0-1) */
|
|
179
|
+
confidence: number;
|
|
180
|
+
/** Shared features that can be abstracted */
|
|
181
|
+
sharedFeatures: string[];
|
|
182
|
+
/** Example code snippet (if applicable) */
|
|
183
|
+
exampleCode?: string;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Analysis result for near-duplicate detection
|
|
187
|
+
*/
|
|
188
|
+
export interface NearDuplicateAnalysis {
|
|
189
|
+
/** All detected near-duplicate pairs */
|
|
190
|
+
pairs: NearDuplicatePair[];
|
|
191
|
+
/** Components grouped by abstraction opportunity */
|
|
192
|
+
abstractionGroups: AbstractionGroup[];
|
|
193
|
+
/** Total components analyzed */
|
|
194
|
+
totalComponents: number;
|
|
195
|
+
/** Components with abstraction opportunities */
|
|
196
|
+
componentsWithOpportunities: number;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Group of components that share abstraction opportunity
|
|
200
|
+
*/
|
|
201
|
+
export interface AbstractionGroup {
|
|
202
|
+
/** Suggested abstraction type */
|
|
203
|
+
abstractionType: AbstractionType;
|
|
204
|
+
/** Components in this group */
|
|
205
|
+
components: SemanticFeatures[];
|
|
206
|
+
/** Shared features across all components */
|
|
207
|
+
sharedFeatures: string[];
|
|
208
|
+
/** Confidence score */
|
|
209
|
+
confidence: number;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Configuration for near-duplicate detection
|
|
213
|
+
*/
|
|
214
|
+
export interface NearDuplicateConfig {
|
|
215
|
+
/** Minimum overall similarity threshold (0-1), default 0.6 */
|
|
216
|
+
similarityThreshold: number;
|
|
217
|
+
/** Minimum props similarity to consider, default 0.5 */
|
|
218
|
+
minPropsSimilarity: number;
|
|
219
|
+
/** Minimum JSX structure similarity, default 0.4 */
|
|
220
|
+
minJsxSimilarity: number;
|
|
221
|
+
/** Whether to detect hook extraction opportunities */
|
|
222
|
+
detectHookOpportunities: boolean;
|
|
223
|
+
/** Whether to detect HOC opportunities */
|
|
224
|
+
detectHOCOpportunities: boolean;
|
|
225
|
+
/** Weights for different feature types in overall similarity */
|
|
226
|
+
weights: SimilarityWeights;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Weights for calculating overall similarity
|
|
230
|
+
*/
|
|
231
|
+
export interface SimilarityWeights {
|
|
232
|
+
props: number;
|
|
233
|
+
state: number;
|
|
234
|
+
hooks: number;
|
|
235
|
+
eventHandlers: number;
|
|
236
|
+
jsxStructure: number;
|
|
237
|
+
conditionalPatterns: number;
|
|
238
|
+
dataPatterns: number;
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* Default configuration for near-duplicate detection
|
|
242
|
+
*/
|
|
243
|
+
export declare const DEFAULT_NEAR_DUPLICATE_CONFIG: NearDuplicateConfig;
|
|
244
|
+
/**
|
|
245
|
+
* Built-in React hooks
|
|
246
|
+
*/
|
|
247
|
+
export declare const REACT_HOOKS: Set<string>;
|
|
248
|
+
/**
|
|
249
|
+
* Common event handler patterns
|
|
250
|
+
*/
|
|
251
|
+
export declare const EVENT_HANDLER_PATTERNS: readonly ["onClick", "onChange", "onSubmit", "onBlur", "onFocus", "onKeyDown", "onKeyUp", "onKeyPress", "onMouseEnter", "onMouseLeave", "onScroll", "onLoad", "onError"];
|
|
252
|
+
/**
|
|
253
|
+
* Check if a node represents a React component
|
|
254
|
+
*/
|
|
255
|
+
export declare function isReactComponentNode(node: ASTNode, content: string): boolean;
|
|
256
|
+
/**
|
|
257
|
+
* Extract component name from an AST node
|
|
258
|
+
*/
|
|
259
|
+
export declare function extractComponentName(node: ASTNode, content: string): string | undefined;
|
|
260
|
+
/**
|
|
261
|
+
* Extract props from a component
|
|
262
|
+
*/
|
|
263
|
+
export declare function extractProps(node: ASTNode, _content: string): PropFeature[];
|
|
264
|
+
/**
|
|
265
|
+
* Extract state variables from a component
|
|
266
|
+
*/
|
|
267
|
+
export declare function extractState(node: ASTNode): StateFeature[];
|
|
268
|
+
/**
|
|
269
|
+
* Extract hooks used in a component
|
|
270
|
+
*/
|
|
271
|
+
export declare function extractHooks(node: ASTNode): HookFeature[];
|
|
272
|
+
/**
|
|
273
|
+
* Extract event handlers from a component
|
|
274
|
+
*/
|
|
275
|
+
export declare function extractEventHandlers(node: ASTNode): EventHandlerFeature[];
|
|
276
|
+
/**
|
|
277
|
+
* Extract JSX elements from a component
|
|
278
|
+
*/
|
|
279
|
+
export declare function extractJSXElements(node: ASTNode): JSXElementFeature[];
|
|
280
|
+
/**
|
|
281
|
+
* Extract conditional rendering patterns from a component
|
|
282
|
+
*/
|
|
283
|
+
export declare function extractConditionalPatterns(node: ASTNode): ConditionalPattern[];
|
|
284
|
+
/**
|
|
285
|
+
* Extract data fetching patterns from a component
|
|
286
|
+
*/
|
|
287
|
+
export declare function extractDataPatterns(node: ASTNode): DataPattern[];
|
|
288
|
+
/**
|
|
289
|
+
* Extract all semantic features from a component
|
|
290
|
+
*/
|
|
291
|
+
export declare function extractSemanticFeatures(node: ASTNode, filePath: string, content: string): SemanticFeatures | null;
|
|
292
|
+
/**
|
|
293
|
+
* Calculate props similarity between two components
|
|
294
|
+
*/
|
|
295
|
+
export declare function calculatePropsSimilarity(props1: PropFeature[], props2: PropFeature[]): number;
|
|
296
|
+
/**
|
|
297
|
+
* Calculate state similarity between two components
|
|
298
|
+
*/
|
|
299
|
+
export declare function calculateStateSimilarity(state1: StateFeature[], state2: StateFeature[]): number;
|
|
300
|
+
/**
|
|
301
|
+
* Calculate hooks similarity between two components
|
|
302
|
+
*/
|
|
303
|
+
export declare function calculateHooksSimilarity(hooks1: HookFeature[], hooks2: HookFeature[]): number;
|
|
304
|
+
/**
|
|
305
|
+
* Calculate event handlers similarity between two components
|
|
306
|
+
*/
|
|
307
|
+
export declare function calculateEventHandlersSimilarity(handlers1: EventHandlerFeature[], handlers2: EventHandlerFeature[]): number;
|
|
308
|
+
/**
|
|
309
|
+
* Calculate JSX structure similarity between two components
|
|
310
|
+
*/
|
|
311
|
+
export declare function calculateJSXSimilarity(elements1: JSXElementFeature[], elements2: JSXElementFeature[]): number;
|
|
312
|
+
/**
|
|
313
|
+
* Calculate conditional patterns similarity
|
|
314
|
+
*/
|
|
315
|
+
export declare function calculateConditionalSimilarity(patterns1: ConditionalPattern[], patterns2: ConditionalPattern[]): number;
|
|
316
|
+
/**
|
|
317
|
+
* Calculate data patterns similarity
|
|
318
|
+
*/
|
|
319
|
+
export declare function calculateDataPatternsSimilarity(patterns1: DataPattern[], patterns2: DataPattern[]): number;
|
|
320
|
+
/**
|
|
321
|
+
* Calculate overall semantic similarity between two components
|
|
322
|
+
*/
|
|
323
|
+
export declare function calculateSemanticSimilarity(comp1: SemanticFeatures, comp2: SemanticFeatures): SimilarityBreakdown;
|
|
324
|
+
/**
|
|
325
|
+
* Calculate weighted overall similarity from breakdown
|
|
326
|
+
*/
|
|
327
|
+
export declare function calculateOverallSimilarity(breakdown: SimilarityBreakdown, weights?: SimilarityWeights): number;
|
|
328
|
+
/**
|
|
329
|
+
* Determine the best abstraction type for a pair of similar components
|
|
330
|
+
*/
|
|
331
|
+
export declare function determineAbstractionType(comp1: SemanticFeatures, comp2: SemanticFeatures, breakdown: SimilarityBreakdown): AbstractionType;
|
|
332
|
+
/**
|
|
333
|
+
* Generate abstraction suggestions for a pair of similar components
|
|
334
|
+
*/
|
|
335
|
+
export declare function generateAbstractionSuggestions(comp1: SemanticFeatures, comp2: SemanticFeatures, breakdown: SimilarityBreakdown, abstractionType: AbstractionType): AbstractionSuggestion[];
|
|
336
|
+
/**
|
|
337
|
+
* Compare two components and return near-duplicate info if similar enough
|
|
338
|
+
*/
|
|
339
|
+
export declare function compareComponentsSemanticly(comp1: SemanticFeatures, comp2: SemanticFeatures, config?: NearDuplicateConfig): NearDuplicatePair | null;
|
|
340
|
+
/**
|
|
341
|
+
* Analyze components for near-duplicates and abstraction opportunities
|
|
342
|
+
*/
|
|
343
|
+
export declare function analyzeNearDuplicates(components: SemanticFeatures[], config?: NearDuplicateConfig): NearDuplicateAnalysis;
|
|
344
|
+
/**
|
|
345
|
+
* Generate a refactoring suggestion message
|
|
346
|
+
*/
|
|
347
|
+
export declare function generateRefactoringSuggestionMessage(pair: NearDuplicatePair): string;
|
|
348
|
+
/**
|
|
349
|
+
* Detector for semantically similar components that could be abstracted
|
|
350
|
+
*
|
|
351
|
+
* Unlike DuplicateDetector which focuses on AST structure, this detector
|
|
352
|
+
* analyzes semantic/functional similarity including:
|
|
353
|
+
* - Similar prop patterns
|
|
354
|
+
* - Similar render patterns
|
|
355
|
+
* - Similar state management
|
|
356
|
+
* - Opportunities for shared hooks, HOCs, or render props
|
|
357
|
+
*
|
|
358
|
+
* @requirements 8.4 - THE Component_Detector SHALL detect near-duplicate components that should be abstracted
|
|
359
|
+
*/
|
|
360
|
+
export declare class NearDuplicateDetector extends ASTDetector {
|
|
361
|
+
readonly id = "components/near-duplicate";
|
|
362
|
+
readonly category: "components";
|
|
363
|
+
readonly subcategory = "abstraction-candidates";
|
|
364
|
+
readonly name = "Near Duplicate Detector";
|
|
365
|
+
readonly description = "Detects semantically similar components that could be refactored into shared abstractions";
|
|
366
|
+
readonly supportedLanguages: Language[];
|
|
367
|
+
private config;
|
|
368
|
+
constructor(config?: Partial<NearDuplicateConfig>);
|
|
369
|
+
/**
|
|
370
|
+
* Detect near-duplicate components in the project
|
|
371
|
+
*/
|
|
372
|
+
detect(context: DetectionContext): Promise<DetectionResult>;
|
|
373
|
+
/**
|
|
374
|
+
* Generate a quick fix for near-duplicate violations
|
|
375
|
+
*/
|
|
376
|
+
generateQuickFix(violation: Violation): QuickFix | null;
|
|
377
|
+
/**
|
|
378
|
+
* Extract all components from project files
|
|
379
|
+
*/
|
|
380
|
+
private extractAllComponents;
|
|
381
|
+
/**
|
|
382
|
+
* Extract components from an AST
|
|
383
|
+
*/
|
|
384
|
+
private extractComponentsFromAST;
|
|
385
|
+
/**
|
|
386
|
+
* Extract components from content using regex (fallback)
|
|
387
|
+
*/
|
|
388
|
+
private extractComponentsFromContent;
|
|
389
|
+
/**
|
|
390
|
+
* Check if a near-duplicate pair involves the current file
|
|
391
|
+
*/
|
|
392
|
+
private involvesCurrentFile;
|
|
393
|
+
/**
|
|
394
|
+
* Create a violation for a near-duplicate pair
|
|
395
|
+
*/
|
|
396
|
+
private createNearDuplicateViolation;
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Create a new NearDuplicateDetector instance
|
|
400
|
+
*/
|
|
401
|
+
export declare function createNearDuplicateDetector(config?: Partial<NearDuplicateConfig>): NearDuplicateDetector;
|
|
402
|
+
//# sourceMappingURL=near-duplicate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"near-duplicate.d.ts","sourceRoot":"","sources":["../../src/components/near-duplicate.ts"],"names":[],"mappings":"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"}
|