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,287 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Composition Detector - Component composition pattern detection
|
|
3
|
+
*
|
|
4
|
+
* Detects composition patterns including children prop usage, render props,
|
|
5
|
+
* Higher-Order Components (HOCs), compound components, slot-based composition,
|
|
6
|
+
* Provider/Consumer patterns, and controlled vs uncontrolled components.
|
|
7
|
+
*
|
|
8
|
+
* @requirements 8.6 - THE Component_Detector SHALL detect component composition patterns
|
|
9
|
+
*/
|
|
10
|
+
import type { Violation, QuickFix, Language, ASTNode } from 'driftdetect-core';
|
|
11
|
+
import { ASTDetector, type DetectionContext, type DetectionResult } from '../base/index.js';
|
|
12
|
+
/**
|
|
13
|
+
* Types of composition patterns
|
|
14
|
+
*/
|
|
15
|
+
export type CompositionPattern = 'children-prop' | 'render-props' | 'hoc' | 'compound-component' | 'slot-based' | 'provider-consumer' | 'controlled' | 'uncontrolled' | 'forwarded-ref' | 'none';
|
|
16
|
+
/**
|
|
17
|
+
* Types of composition anti-patterns
|
|
18
|
+
*/
|
|
19
|
+
export type CompositionAntiPattern = 'deeply-nested-hocs' | 'prop-drilling' | 'missing-children' | 'overuse-render-props' | 'mixed-controlled' | 'excessive-context';
|
|
20
|
+
/**
|
|
21
|
+
* Information about a composition pattern usage
|
|
22
|
+
*/
|
|
23
|
+
export interface CompositionUsageInfo {
|
|
24
|
+
/** Type of composition pattern */
|
|
25
|
+
pattern: CompositionPattern;
|
|
26
|
+
/** Component name where pattern is used */
|
|
27
|
+
componentName: string;
|
|
28
|
+
/** Line number where pattern is detected */
|
|
29
|
+
line: number;
|
|
30
|
+
/** Column number */
|
|
31
|
+
column: number;
|
|
32
|
+
/** Additional details about the pattern */
|
|
33
|
+
details: CompositionDetails;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Details about a specific composition pattern
|
|
37
|
+
*/
|
|
38
|
+
export interface CompositionDetails {
|
|
39
|
+
/** For render props: the prop names used */
|
|
40
|
+
renderPropNames?: string[];
|
|
41
|
+
/** For HOCs: the HOC names wrapping the component */
|
|
42
|
+
hocNames?: string[];
|
|
43
|
+
/** For compound components: the sub-component names */
|
|
44
|
+
subComponentNames?: string[];
|
|
45
|
+
/** For slots: the slot names */
|
|
46
|
+
slotNames?: string[];
|
|
47
|
+
/** For controlled: the controlled prop names */
|
|
48
|
+
controlledProps?: string[];
|
|
49
|
+
/** For provider: the context name */
|
|
50
|
+
contextName?: string;
|
|
51
|
+
/** Nesting depth (for HOCs, providers) */
|
|
52
|
+
nestingDepth?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Information about a component's composition patterns
|
|
56
|
+
*/
|
|
57
|
+
export interface ComponentCompositionInfo {
|
|
58
|
+
/** Component name */
|
|
59
|
+
componentName: string;
|
|
60
|
+
/** File path */
|
|
61
|
+
filePath: string;
|
|
62
|
+
/** Line number where component is defined */
|
|
63
|
+
line: number;
|
|
64
|
+
/** Column number */
|
|
65
|
+
column: number;
|
|
66
|
+
/** Composition patterns used */
|
|
67
|
+
patterns: CompositionUsageInfo[];
|
|
68
|
+
/** Anti-patterns detected */
|
|
69
|
+
antiPatterns: CompositionAntiPatternInfo[];
|
|
70
|
+
/** Whether component accepts children */
|
|
71
|
+
acceptsChildren: boolean;
|
|
72
|
+
/** Whether component uses render props */
|
|
73
|
+
usesRenderProps: boolean;
|
|
74
|
+
/** Whether component is a HOC */
|
|
75
|
+
isHOC: boolean;
|
|
76
|
+
/** Whether component is part of compound component */
|
|
77
|
+
isCompoundComponent: boolean;
|
|
78
|
+
/** Whether component is controlled */
|
|
79
|
+
isControlled: boolean;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Information about a detected anti-pattern
|
|
83
|
+
*/
|
|
84
|
+
export interface CompositionAntiPatternInfo {
|
|
85
|
+
/** Type of anti-pattern */
|
|
86
|
+
type: CompositionAntiPattern;
|
|
87
|
+
/** Description of the issue */
|
|
88
|
+
description: string;
|
|
89
|
+
/** Severity level */
|
|
90
|
+
severity: 'error' | 'warning' | 'info';
|
|
91
|
+
/** Suggestion for fixing */
|
|
92
|
+
suggestion: string;
|
|
93
|
+
/** Line number where issue occurs */
|
|
94
|
+
line: number;
|
|
95
|
+
/** Column number */
|
|
96
|
+
column: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Analysis of composition patterns in a project
|
|
100
|
+
*/
|
|
101
|
+
export interface CompositionAnalysis {
|
|
102
|
+
/** All analyzed components */
|
|
103
|
+
components: ComponentCompositionInfo[];
|
|
104
|
+
/** Dominant composition pattern */
|
|
105
|
+
dominantPattern: CompositionPattern;
|
|
106
|
+
/** Pattern usage counts */
|
|
107
|
+
patternCounts: Record<CompositionPattern, number>;
|
|
108
|
+
/** Confidence score */
|
|
109
|
+
confidence: number;
|
|
110
|
+
/** Components with anti-patterns */
|
|
111
|
+
componentsWithAntiPatterns: ComponentCompositionInfo[];
|
|
112
|
+
/** Overall composition health score (0-1) */
|
|
113
|
+
healthScore: number;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Configuration for composition pattern detection
|
|
117
|
+
*/
|
|
118
|
+
export interface CompositionConfig {
|
|
119
|
+
/** Maximum HOC nesting depth before flagging */
|
|
120
|
+
maxHOCDepth: number;
|
|
121
|
+
/** Maximum render props per component */
|
|
122
|
+
maxRenderProps: number;
|
|
123
|
+
/** Maximum context providers nesting */
|
|
124
|
+
maxContextNesting: number;
|
|
125
|
+
/** Whether to detect controlled/uncontrolled patterns */
|
|
126
|
+
detectControlledPatterns: boolean;
|
|
127
|
+
/** Whether to flag prop drilling */
|
|
128
|
+
flagPropDrilling: boolean;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Default configuration for composition pattern detection
|
|
132
|
+
*/
|
|
133
|
+
export declare const DEFAULT_COMPOSITION_CONFIG: CompositionConfig;
|
|
134
|
+
/**
|
|
135
|
+
* Common HOC patterns
|
|
136
|
+
*/
|
|
137
|
+
export declare const HOC_PATTERNS: readonly ["withRouter", "withStyles", "withTheme", "withAuth", "withLoading", "withErrorBoundary", "connect", "memo", "forwardRef", "observer"];
|
|
138
|
+
/**
|
|
139
|
+
* Common render prop names
|
|
140
|
+
*/
|
|
141
|
+
export declare const RENDER_PROP_NAMES: readonly ["render", "children", "renderItem", "renderHeader", "renderFooter", "renderEmpty", "renderLoading", "renderError", "component"];
|
|
142
|
+
/**
|
|
143
|
+
* Controlled component prop patterns
|
|
144
|
+
*/
|
|
145
|
+
export declare const CONTROLLED_PROP_PATTERNS: readonly [{
|
|
146
|
+
readonly value: "value";
|
|
147
|
+
readonly onChange: "onChange";
|
|
148
|
+
}, {
|
|
149
|
+
readonly value: "checked";
|
|
150
|
+
readonly onChange: "onChange";
|
|
151
|
+
}, {
|
|
152
|
+
readonly value: "selected";
|
|
153
|
+
readonly onChange: "onSelect";
|
|
154
|
+
}, {
|
|
155
|
+
readonly value: "open";
|
|
156
|
+
readonly onChange: "onOpenChange";
|
|
157
|
+
}, {
|
|
158
|
+
readonly value: "visible";
|
|
159
|
+
readonly onChange: "onVisibleChange";
|
|
160
|
+
}, {
|
|
161
|
+
readonly value: "expanded";
|
|
162
|
+
readonly onChange: "onExpandedChange";
|
|
163
|
+
}];
|
|
164
|
+
/**
|
|
165
|
+
* Uncontrolled component prop patterns
|
|
166
|
+
*/
|
|
167
|
+
export declare const UNCONTROLLED_PROP_PATTERNS: readonly ["defaultValue", "defaultChecked", "defaultSelected", "defaultOpen", "defaultVisible", "defaultExpanded"];
|
|
168
|
+
/**
|
|
169
|
+
* Check if a node represents a React component
|
|
170
|
+
*/
|
|
171
|
+
export declare function isReactComponent(node: ASTNode, content: string): boolean;
|
|
172
|
+
/**
|
|
173
|
+
* Get the component name from a node
|
|
174
|
+
*/
|
|
175
|
+
export declare function getComponentName(node: ASTNode, content: string): string | undefined;
|
|
176
|
+
/**
|
|
177
|
+
* Detect children prop usage in a component
|
|
178
|
+
*/
|
|
179
|
+
export declare function detectChildrenProp(nodeText: string): CompositionUsageInfo | null;
|
|
180
|
+
/**
|
|
181
|
+
* Check if component accepts children prop
|
|
182
|
+
*/
|
|
183
|
+
export declare function acceptsChildrenProp(nodeText: string): boolean;
|
|
184
|
+
/**
|
|
185
|
+
* Detect render props pattern in a component
|
|
186
|
+
*/
|
|
187
|
+
export declare function detectRenderProps(nodeText: string): CompositionUsageInfo | null;
|
|
188
|
+
/**
|
|
189
|
+
* Detect Higher-Order Component pattern
|
|
190
|
+
*/
|
|
191
|
+
export declare function detectHOC(content: string): CompositionUsageInfo[];
|
|
192
|
+
/**
|
|
193
|
+
* Extract HOC names from a chain like withA(withB(Component))
|
|
194
|
+
*/
|
|
195
|
+
export declare function extractHOCNames(hocChain: string): string[];
|
|
196
|
+
/**
|
|
197
|
+
* Detect compound component pattern
|
|
198
|
+
*/
|
|
199
|
+
export declare function detectCompoundComponent(content: string): CompositionUsageInfo[];
|
|
200
|
+
/**
|
|
201
|
+
* Check if component is part of a compound component pattern
|
|
202
|
+
*/
|
|
203
|
+
export declare function isCompoundComponentPart(componentName: string, content: string): boolean;
|
|
204
|
+
/**
|
|
205
|
+
* Detect slot-based composition pattern
|
|
206
|
+
*/
|
|
207
|
+
export declare function detectSlotBasedComposition(nodeText: string): CompositionUsageInfo | null;
|
|
208
|
+
/**
|
|
209
|
+
* Detect Provider/Consumer pattern
|
|
210
|
+
*/
|
|
211
|
+
export declare function detectProviderConsumer(content: string): CompositionUsageInfo[];
|
|
212
|
+
/**
|
|
213
|
+
* Count nested providers in content
|
|
214
|
+
*/
|
|
215
|
+
export declare function countNestedProviders(content: string): number;
|
|
216
|
+
/**
|
|
217
|
+
* Detect controlled component pattern
|
|
218
|
+
*/
|
|
219
|
+
export declare function detectControlledPattern(nodeText: string): CompositionUsageInfo | null;
|
|
220
|
+
/**
|
|
221
|
+
* Detect uncontrolled component pattern
|
|
222
|
+
*/
|
|
223
|
+
export declare function detectUncontrolledPattern(nodeText: string): CompositionUsageInfo | null;
|
|
224
|
+
/**
|
|
225
|
+
* Check if component mixes controlled and uncontrolled patterns
|
|
226
|
+
*/
|
|
227
|
+
export declare function hasMixedControlledPatterns(nodeText: string): boolean;
|
|
228
|
+
/**
|
|
229
|
+
* Detect composition anti-patterns
|
|
230
|
+
*/
|
|
231
|
+
export declare function detectAntiPatterns(nodeText: string, content: string, config: CompositionConfig): CompositionAntiPatternInfo[];
|
|
232
|
+
/**
|
|
233
|
+
* Analyze a single component's composition patterns
|
|
234
|
+
*/
|
|
235
|
+
export declare function analyzeComponentComposition(node: ASTNode, content: string, filePath: string, config: CompositionConfig): ComponentCompositionInfo | null;
|
|
236
|
+
/**
|
|
237
|
+
* Analyze composition patterns across multiple components
|
|
238
|
+
*/
|
|
239
|
+
export declare function analyzeCompositionPatterns(components: ComponentCompositionInfo[]): CompositionAnalysis;
|
|
240
|
+
/**
|
|
241
|
+
* Detector for component composition patterns
|
|
242
|
+
*
|
|
243
|
+
* Identifies composition patterns including children prop usage, render props,
|
|
244
|
+
* HOCs, compound components, and more. Reports anti-patterns and suggests
|
|
245
|
+
* improvements.
|
|
246
|
+
*
|
|
247
|
+
* @requirements 8.6 - THE Component_Detector SHALL detect component composition patterns
|
|
248
|
+
*/
|
|
249
|
+
export declare class CompositionDetector extends ASTDetector {
|
|
250
|
+
readonly id = "components/composition";
|
|
251
|
+
readonly category: "components";
|
|
252
|
+
readonly subcategory = "composition";
|
|
253
|
+
readonly name = "Composition Pattern Detector";
|
|
254
|
+
readonly description = "Detects component composition patterns (children, render props, HOCs, compound components) and identifies anti-patterns";
|
|
255
|
+
readonly supportedLanguages: Language[];
|
|
256
|
+
private config;
|
|
257
|
+
constructor(config?: Partial<CompositionConfig>);
|
|
258
|
+
/**
|
|
259
|
+
* Detect composition patterns in the project
|
|
260
|
+
*/
|
|
261
|
+
detect(context: DetectionContext): Promise<DetectionResult>;
|
|
262
|
+
/**
|
|
263
|
+
* Find all React components in a file
|
|
264
|
+
*/
|
|
265
|
+
private findComponentsInFile;
|
|
266
|
+
/**
|
|
267
|
+
* Find components using regex (fallback when AST is not available)
|
|
268
|
+
*/
|
|
269
|
+
private findComponentsWithRegex;
|
|
270
|
+
/**
|
|
271
|
+
* Create a pattern match for a composition pattern
|
|
272
|
+
*/
|
|
273
|
+
private createPatternMatch;
|
|
274
|
+
/**
|
|
275
|
+
* Create a violation for an anti-pattern
|
|
276
|
+
*/
|
|
277
|
+
private createAntiPatternViolation;
|
|
278
|
+
/**
|
|
279
|
+
* Generate a quick fix for composition violations
|
|
280
|
+
*/
|
|
281
|
+
generateQuickFix(violation: Violation): QuickFix | null;
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* Create a new CompositionDetector instance
|
|
285
|
+
*/
|
|
286
|
+
export declare function createCompositionDetector(config?: Partial<CompositionConfig>): CompositionDetector;
|
|
287
|
+
//# sourceMappingURL=composition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/components/composition.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAgB,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAS,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAM5F;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B,eAAe,GACf,cAAc,GACd,KAAK,GACL,oBAAoB,GACpB,YAAY,GACZ,mBAAmB,GACnB,YAAY,GACZ,cAAc,GACd,eAAe,GACf,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAC9B,oBAAoB,GACpB,eAAe,GACf,kBAAkB,GAClB,sBAAsB,GACtB,kBAAkB,GAClB,mBAAmB,CAAC;AAGxB;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,kCAAkC;IAClC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qBAAqB;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,6BAA6B;IAC7B,YAAY,EAAE,0BAA0B,EAAE,CAAC;IAC3C,yCAAyC;IACzC,eAAe,EAAE,OAAO,CAAC;IACzB,0CAA0C;IAC1C,eAAe,EAAE,OAAO,CAAC;IACzB,iCAAiC;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,sDAAsD;IACtD,mBAAmB,EAAE,OAAO,CAAC;IAC7B,sCAAsC;IACtC,YAAY,EAAE,OAAO,CAAC;CACvB;AAGD;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,2BAA2B;IAC3B,IAAI,EAAE,sBAAsB,CAAC;IAC7B,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,UAAU,EAAE,wBAAwB,EAAE,CAAC;IACvC,mCAAmC;IACnC,eAAe,EAAE,kBAAkB,CAAC;IACpC,2BAA2B;IAC3B,aAAa,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAClD,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,0BAA0B,EAAE,wBAAwB,EAAE,CAAC;IACvD,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yDAAyD;IACzD,wBAAwB,EAAE,OAAO,CAAC;IAClC,oCAAoC;IACpC,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAOD;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,iBAMxC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,iJAWf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,iBAAiB,2IAUpB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;EAO3B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,0BAA0B,oHAO7B,CAAC;AAOX;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAYxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAenF;AAOD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CA4BhF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAW7D;AAOD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAiD/E;AAOD;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,EAAE,CA0EjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAY1D;AAOD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAkD/E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAQvF;AAOD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAyExF;AAOD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAwE9E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAG5D;AAOD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAyBrF;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CA+BvF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAKpE;AAOD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,iBAAiB,GACxB,0BAA0B,EAAE,CA+E9B;AAOD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,GACxB,wBAAwB,GAAG,IAAI,CAqFjC;AAiCD;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,wBAAwB,EAAE,GACrC,mBAAmB,CAkErB;AAoBD;;;;;;;;GAQG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;IAClD,QAAQ,CAAC,EAAE,4BAA4B;IACvC,QAAQ,CAAC,QAAQ,EAAG,YAAY,CAAU;IAC1C,QAAQ,CAAC,WAAW,iBAAiB;IACrC,QAAQ,CAAC,IAAI,kCAAkC;IAC/C,QAAQ,CAAC,WAAW,6HAA6H;IACjJ,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,EAAE,CAAgC;IAEvE,OAAO,CAAC,MAAM,CAAoB;gBAEtB,MAAM,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAKnD;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2CjE;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAiC5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwI/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA2BlC;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,IAAI;CAoExD;AAMD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,GAAE,OAAO,CAAC,iBAAiB,CAAM,GACtC,mBAAmB,CAErB"}
|