@codeperfect/eslint-plugin 1.0.0 → 2.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/README.md +26 -4
- package/dist/.tsbuildinfo +1 -1
- package/dist/{custom-rules.d.ts → application/custom-rules.d.ts} +3 -0
- package/dist/application/custom-rules.d.ts.map +1 -0
- package/dist/application/custom-rules.js +74 -0
- package/dist/application/index.d.ts +4 -0
- package/dist/application/index.d.ts.map +1 -0
- package/dist/application/index.js +3 -0
- package/dist/codeperfect-eslint-plugin-1.0.0.tgz +0 -0
- package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.d.ts +56 -0
- package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.js +149 -0
- package/dist/{architecture → domain/architecture}/consistent-barrel-files/consistent-barrel-files-listeners.d.ts +4 -4
- package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-listeners.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-listeners.js +98 -0
- package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts +45 -0
- package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.js +64 -0
- package/dist/{architecture → domain/architecture}/consistent-barrel-files/exports-only-rule-test-utilities.d.ts +5 -4
- package/dist/domain/architecture/consistent-barrel-files/exports-only-rule-test-utilities.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/exports-only-rule-test-utilities.js +87 -0
- package/dist/domain/architecture/consistent-barrel-files/exports-only-rule.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/exports-only-rule.js +145 -0
- package/dist/domain/architecture/consistent-barrel-files/index.d.ts +5 -0
- package/dist/domain/architecture/consistent-barrel-files/index.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/index.js +4 -0
- package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.js +90 -0
- package/dist/{architecture → domain/architecture}/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.d.ts +1 -1
- package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.js +91 -0
- package/dist/{architecture → domain/architecture}/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts +4 -6
- package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.js +95 -0
- package/dist/domain/architecture/consistent-barrel-files/rule.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/rule.js +51 -0
- package/dist/domain/architecture/consistent-barrel-files/rule.repeat-runs.d.ts +4 -0
- package/dist/domain/architecture/consistent-barrel-files/rule.repeat-runs.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/rule.repeat-runs.js +4 -0
- package/dist/{architecture → domain/architecture}/consistent-barrel-files/test-helpers.d.ts +48 -48
- package/dist/domain/architecture/consistent-barrel-files/test-helpers.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/test-helpers.file-writers.d.ts +20 -0
- package/dist/domain/architecture/consistent-barrel-files/test-helpers.file-writers.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/test-helpers.file-writers.js +25 -0
- package/dist/domain/architecture/consistent-barrel-files/test-helpers.js +235 -0
- package/dist/domain/architecture/consistent-barrel-files/types.d.ts +19 -0
- package/dist/domain/architecture/consistent-barrel-files/types.d.ts.map +1 -0
- package/dist/domain/architecture/consistent-barrel-files/types.js +2 -0
- package/dist/{architecture → domain/architecture}/index.d.ts +1 -1
- package/dist/domain/architecture/index.d.ts.map +1 -0
- package/dist/domain/architecture/index.js +2 -0
- package/dist/{core → domain/core}/index.d.ts +2 -2
- package/dist/domain/core/index.d.ts.map +1 -0
- package/dist/domain/core/index.js +3 -0
- package/dist/domain/core/no-multiple-declarators/index.d.ts +2 -0
- package/dist/domain/core/no-multiple-declarators/index.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/index.js +2 -0
- package/dist/domain/core/no-multiple-declarators/rule-test-helpers.d.ts +101 -0
- package/dist/domain/core/no-multiple-declarators/rule-test-helpers.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/rule-test-helpers.js +108 -0
- package/dist/{core → domain/core}/no-multiple-declarators/rule.d.ts +1 -0
- package/dist/domain/core/no-multiple-declarators/rule.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/rule.fixes.d.ts +35 -0
- package/dist/domain/core/no-multiple-declarators/rule.fixes.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/rule.fixes.js +95 -0
- package/dist/domain/core/no-multiple-declarators/rule.guardrails.d.ts +4 -0
- package/dist/domain/core/no-multiple-declarators/rule.guardrails.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/rule.guardrails.js +4 -0
- package/dist/domain/core/no-multiple-declarators/rule.js +222 -0
- package/dist/domain/core/no-multiple-declarators/rule.mocked-types.d.ts +4 -0
- package/dist/domain/core/no-multiple-declarators/rule.mocked-types.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/rule.mocked-types.js +4 -0
- package/dist/domain/core/no-multiple-declarators/types.d.ts +77 -0
- package/dist/domain/core/no-multiple-declarators/types.d.ts.map +1 -0
- package/dist/domain/core/no-multiple-declarators/types.js +38 -0
- package/dist/domain/core/prefer-interface-types/index.d.ts +2 -0
- package/dist/domain/core/prefer-interface-types/index.d.ts.map +1 -0
- package/dist/domain/core/prefer-interface-types/index.js +2 -0
- package/dist/domain/core/prefer-interface-types/rule.d.ts.map +1 -0
- package/dist/domain/core/prefer-interface-types/rule.js +148 -0
- package/dist/domain/core/prefer-interface-types/test-helpers.d.ts.map +1 -0
- package/dist/domain/core/prefer-interface-types/test-helpers.js +116 -0
- package/dist/{custom-rule-documentation.d.ts → domain/custom-rule-documentation.d.ts} +3 -1
- package/dist/domain/custom-rule-documentation.d.ts.map +1 -0
- package/dist/domain/custom-rule-documentation.js +36 -0
- package/dist/domain/docs/index.d.ts +4 -0
- package/dist/domain/docs/index.d.ts.map +1 -0
- package/dist/domain/docs/index.js +4 -0
- package/dist/domain/docs/no-interface-member-docs/comment-utilities-test-helpers.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/comment-utilities-test-helpers.js +129 -0
- package/dist/{docs → domain/docs}/no-interface-member-docs/comment-utilities.d.ts +1 -1
- package/dist/domain/docs/no-interface-member-docs/comment-utilities.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/comment-utilities.js +146 -0
- package/dist/domain/docs/no-interface-member-docs/index.d.ts +2 -0
- package/dist/domain/docs/no-interface-member-docs/index.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/index.js +2 -0
- package/dist/{docs → domain/docs}/no-interface-member-docs/parameter-tags.d.ts +1 -1
- package/dist/domain/docs/no-interface-member-docs/parameter-tags.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/parameter-tags.js +101 -0
- package/dist/{docs → domain/docs}/no-interface-member-docs/parameter-utilities.d.ts +1 -1
- package/dist/domain/docs/no-interface-member-docs/parameter-utilities.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/parameter-utilities.js +125 -0
- package/dist/domain/docs/no-interface-member-docs/rule.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/rule.js +171 -0
- package/dist/domain/docs/no-interface-member-docs/test-helpers.d.ts.map +1 -0
- package/dist/{docs → domain/docs}/no-interface-member-docs/test-helpers.js +2 -2
- package/dist/{docs → domain/docs}/no-interface-member-docs/types.d.ts +2 -2
- package/dist/domain/docs/no-interface-member-docs/types.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/types.js +2 -0
- package/dist/domain/docs/require-example-language/create-fixer.d.ts +5 -0
- package/dist/domain/docs/require-example-language/create-fixer.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/create-fixer.js +5 -0
- package/dist/domain/docs/require-example-language/empty-fence-fixes.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/empty-fence-fixes.js +169 -0
- package/dist/domain/docs/require-example-language/example-utilities.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/example-utilities.js +76 -0
- package/dist/{docs → domain/docs}/require-example-language/examples.d.ts +1 -1
- package/dist/domain/docs/require-example-language/examples.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/examples.js +181 -0
- package/dist/{docs → domain/docs}/require-example-language/fixes.d.ts +2 -2
- package/dist/domain/docs/require-example-language/fixes.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/fixes.js +182 -0
- package/dist/domain/docs/require-example-language/index.d.ts +3 -0
- package/dist/domain/docs/require-example-language/index.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/index.js +2 -0
- package/dist/{docs → domain/docs}/require-example-language/reporting.d.ts +1 -1
- package/dist/domain/docs/require-example-language/reporting.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/reporting.js +148 -0
- package/dist/domain/docs/require-example-language/rule.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/rule.js +37 -0
- package/dist/domain/docs/require-example-language/types.d.ts.map +1 -0
- package/dist/domain/docs/require-example-language/types.js +2 -0
- package/dist/domain/docs/single-line-jsdoc/index.d.ts +2 -0
- package/dist/domain/docs/single-line-jsdoc/index.d.ts.map +1 -0
- package/dist/domain/docs/single-line-jsdoc/index.js +2 -0
- package/dist/domain/docs/single-line-jsdoc/rule.d.ts +4 -0
- package/dist/domain/docs/single-line-jsdoc/rule.d.ts.map +1 -0
- package/dist/domain/docs/single-line-jsdoc/rule.edge-cases.d.ts +4 -0
- package/dist/domain/docs/single-line-jsdoc/rule.edge-cases.d.ts.map +1 -0
- package/dist/domain/docs/single-line-jsdoc/rule.edge-cases.js +5 -0
- package/dist/domain/docs/single-line-jsdoc/rule.js +201 -0
- package/dist/domain/docs/single-line-jsdoc/rule.node-lookups.d.ts +4 -0
- package/dist/domain/docs/single-line-jsdoc/rule.node-lookups.d.ts.map +1 -0
- package/dist/domain/docs/single-line-jsdoc/rule.node-lookups.js +5 -0
- package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-content.d.ts.map +1 -0
- package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-content.js +95 -0
- package/dist/{docs → domain/docs}/single-line-jsdoc/single-line-jsdoc-utilities.d.ts +1 -1
- package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-utilities.d.ts.map +1 -0
- package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-utilities.js +140 -0
- package/dist/domain/docs/test-helpers.d.ts.map +1 -0
- package/dist/domain/docs/test-helpers.js +107 -0
- package/dist/domain/index.d.ts +6 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +6 -0
- package/dist/domain/testing/aaa/analyzer.analysis.d.ts +34 -0
- package/dist/domain/testing/aaa/analyzer.analysis.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.analysis.helpers.d.ts +145 -0
- package/dist/domain/testing/aaa/analyzer.analysis.helpers.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.analysis.helpers.js +203 -0
- package/dist/domain/testing/aaa/analyzer.analysis.js +82 -0
- package/dist/domain/testing/aaa/analyzer.analysis.unsupported.d.ts +4 -0
- package/dist/domain/testing/aaa/analyzer.analysis.unsupported.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.analysis.unsupported.js +4 -0
- package/dist/domain/testing/aaa/analyzer.assertions.d.ts +18 -0
- package/dist/domain/testing/aaa/analyzer.assertions.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.assertions.destructured.d.ts +4 -0
- package/dist/domain/testing/aaa/analyzer.assertions.destructured.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.assertions.destructured.js +4 -0
- package/dist/domain/testing/aaa/analyzer.assertions.helpers.d.ts +95 -0
- package/dist/domain/testing/aaa/analyzer.assertions.helpers.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.assertions.helpers.js +185 -0
- package/dist/domain/testing/aaa/analyzer.assertions.js +33 -0
- package/dist/domain/testing/aaa/analyzer.assertions.operands.d.ts +64 -0
- package/dist/domain/testing/aaa/analyzer.assertions.operands.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.assertions.operands.js +105 -0
- package/dist/domain/testing/aaa/analyzer.classification.d.ts +16 -0
- package/dist/domain/testing/aaa/analyzer.classification.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.classification.helpers.d.ts +77 -0
- package/dist/domain/testing/aaa/analyzer.classification.helpers.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.classification.helpers.js +203 -0
- package/dist/domain/testing/aaa/analyzer.classification.js +31 -0
- package/dist/domain/testing/aaa/analyzer.classification.member-patterns.d.ts +9 -0
- package/dist/domain/testing/aaa/analyzer.classification.member-patterns.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.classification.member-patterns.js +10 -0
- package/dist/domain/testing/aaa/analyzer.classification.mutations.d.ts +4 -0
- package/dist/domain/testing/aaa/analyzer.classification.mutations.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.classification.mutations.js +4 -0
- package/dist/domain/testing/aaa/analyzer.classification.traversal.d.ts +15 -0
- package/dist/domain/testing/aaa/analyzer.classification.traversal.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.classification.traversal.js +34 -0
- package/dist/domain/testing/aaa/analyzer.d.ts +46 -0
- package/dist/domain/testing/aaa/analyzer.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.js +59 -0
- package/dist/domain/testing/aaa/analyzer.super.d.ts +106 -0
- package/dist/domain/testing/aaa/analyzer.super.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.super.helpers.d.ts +27 -0
- package/dist/domain/testing/aaa/analyzer.super.helpers.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.super.helpers.js +66 -0
- package/dist/domain/testing/aaa/analyzer.super.js +211 -0
- package/dist/{testing → domain/testing}/aaa/index.d.ts +2 -2
- package/dist/domain/testing/aaa/index.d.ts.map +1 -0
- package/dist/domain/testing/aaa/index.js +2 -0
- package/dist/domain/testing/aaa/types.d.ts +58 -0
- package/dist/domain/testing/aaa/types.d.ts.map +1 -0
- package/dist/domain/testing/aaa/types.js +2 -0
- package/dist/domain/testing/assert-actual-expected-names/index.d.ts +2 -0
- package/dist/domain/testing/assert-actual-expected-names/index.d.ts.map +1 -0
- package/dist/domain/testing/assert-actual-expected-names/index.js +2 -0
- package/dist/{testing → domain/testing}/assert-actual-expected-names/rule.d.ts +1 -0
- package/dist/domain/testing/assert-actual-expected-names/rule.d.ts.map +1 -0
- package/dist/domain/testing/assert-actual-expected-names/rule.js +116 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/index.d.ts +2 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/index.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/index.js +2 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.d.ts +13 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.js +134 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-identifiers.d.ts +25 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-identifiers.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-identifiers.js +138 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.combined.d.ts +4 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.combined.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.combined.js +4 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.companion.d.ts +4 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.companion.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.companion.js +4 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.d.ts +4 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.js +4 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.d.ts +14 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.js +180 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/rule-test-helpers.d.ts +42 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/rule-test-helpers.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/rule-test-helpers.js +188 -0
- package/dist/{testing → domain/testing}/enforce-aaa-phase-purity/rule.d.ts +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/rule.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-phase-purity/rule.js +37 -0
- package/dist/domain/testing/enforce-aaa-structure/index.d.ts +2 -0
- package/dist/domain/testing/enforce-aaa-structure/index.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-structure/index.js +2 -0
- package/dist/{testing → domain/testing}/enforce-aaa-structure/rule.d.ts +1 -0
- package/dist/domain/testing/enforce-aaa-structure/rule.d.ts.map +1 -0
- package/dist/domain/testing/enforce-aaa-structure/rule.js +88 -0
- package/dist/{testing → domain/testing}/index.d.ts +9 -8
- package/dist/domain/testing/index.d.ts.map +1 -0
- package/dist/domain/testing/index.js +10 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-import-statements.d.ts +29 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-import-statements.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-import-statements.js +90 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-import-updates.d.ts +31 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-import-updates.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-import-updates.js +43 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-imports.d.ts +16 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-imports.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix-imports.js +205 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix.d.ts +28 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/fix.js +171 -0
- package/dist/domain/testing/prefer-vi-mocked-import/index.d.ts +2 -0
- package/dist/domain/testing/prefer-vi-mocked-import/index.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/index.js +2 -0
- package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-bindings.d.ts +1 -1
- package/dist/domain/testing/prefer-vi-mocked-import/match-bindings.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-bindings.js +52 -0
- package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-declarations.d.ts +2 -1
- package/dist/domain/testing/prefer-vi-mocked-import/match-declarations.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-declarations.js +131 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-helpers.js +102 -0
- package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-imports.d.ts +1 -1
- package/dist/domain/testing/prefer-vi-mocked-import/match-imports.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-imports.js +156 -0
- package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-rewrites.d.ts +1 -1
- package/dist/domain/testing/prefer-vi-mocked-import/match-rewrites.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-rewrites.js +119 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-walk.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match-walk.js +62 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match.d.ts +26 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/match.js +198 -0
- package/dist/domain/testing/prefer-vi-mocked-import/rule-test-helpers.d.ts +20 -0
- package/dist/domain/testing/prefer-vi-mocked-import/rule-test-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/rule-test-helpers.js +39 -0
- package/dist/domain/testing/prefer-vi-mocked-import/rule.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/rule.js +39 -0
- package/dist/{testing → domain/testing}/prefer-vi-mocked-import/types.d.ts +1 -1
- package/dist/domain/testing/prefer-vi-mocked-import/types.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vi-mocked-import/types.js +2 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/ast-helpers.d.ts +97 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/ast-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/ast-helpers.js +174 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/index.d.ts +2 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/index.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/index.js +2 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/match-input.d.ts +14 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/match-input.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/match-input.js +84 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/match.d.ts +13 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/match.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/match.js +195 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/replacement-helpers.d.ts +25 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/replacement-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/replacement-helpers.js +96 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule-test-helpers.d.ts +32 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule-test-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule-test-helpers.js +164 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.d.ts +5 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.guardrails.d.ts +4 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.guardrails.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.guardrails.js +4 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.input-shapes.d.ts +4 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.input-shapes.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.input-shapes.js +4 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.js +88 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.signature-fallback.d.ts +4 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.signature-fallback.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/rule.signature-fallback.js +4 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/type-helpers.d.ts +24 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/type-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/type-helpers.js +113 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/type-shape-helpers.d.ts +36 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/type-shape-helpers.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/type-shape-helpers.js +138 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/types.d.ts +187 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/types.d.ts.map +1 -0
- package/dist/domain/testing/prefer-vitest-incremental-casts/types.js +2 -0
- package/dist/domain/testing/require-aaa-sections/index.d.ts +2 -0
- package/dist/domain/testing/require-aaa-sections/index.d.ts.map +1 -0
- package/dist/domain/testing/require-aaa-sections/index.js +2 -0
- package/dist/domain/testing/require-aaa-sections/missing-section-fixes.d.ts +17 -0
- package/dist/domain/testing/require-aaa-sections/missing-section-fixes.d.ts.map +1 -0
- package/dist/domain/testing/require-aaa-sections/missing-section-fixes.js +150 -0
- package/dist/{testing → domain/testing}/require-aaa-sections/rule.d.ts +1 -0
- package/dist/domain/testing/require-aaa-sections/rule.d.ts.map +1 -0
- package/dist/domain/testing/require-aaa-sections/rule.js +134 -0
- package/dist/domain/testing/require-aaa-sections/rule.reporting.d.ts +104 -0
- package/dist/domain/testing/require-aaa-sections/rule.reporting.d.ts.map +1 -0
- package/dist/domain/testing/require-aaa-sections/rule.reporting.js +216 -0
- package/dist/domain/testing/require-act-result-capture/index.d.ts +2 -0
- package/dist/domain/testing/require-act-result-capture/index.d.ts.map +1 -0
- package/dist/domain/testing/require-act-result-capture/index.js +2 -0
- package/dist/{testing → domain/testing}/require-act-result-capture/rule.d.ts +1 -0
- package/dist/domain/testing/require-act-result-capture/rule.d.ts.map +1 -0
- package/dist/domain/testing/require-act-result-capture/rule.js +109 -0
- package/dist/domain/testing/require-test-companion/index.d.ts +3 -0
- package/dist/domain/testing/require-test-companion/index.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/index.js +3 -0
- package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-listeners.d.ts +1 -1
- package/dist/domain/testing/require-test-companion/require-test-companion-listeners.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/require-test-companion-listeners.js +145 -0
- package/dist/domain/testing/require-test-companion/require-test-companion-options.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/require-test-companion-options.js +113 -0
- package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-test-helpers.d.ts +1 -1
- package/dist/domain/testing/require-test-companion/require-test-companion-test-helpers.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/require-test-companion-test-helpers.js +184 -0
- package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-utilities.d.ts +1 -1
- package/dist/domain/testing/require-test-companion/require-test-companion-utilities.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/require-test-companion-utilities.js +26 -0
- package/dist/domain/testing/require-test-companion/rule.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/rule.js +82 -0
- package/dist/domain/testing/require-test-companion/types.d.ts.map +1 -0
- package/dist/domain/testing/require-test-companion/types.js +2 -0
- package/dist/domain/testing/single-act-statement/index.d.ts +2 -0
- package/dist/domain/testing/single-act-statement/index.d.ts.map +1 -0
- package/dist/domain/testing/single-act-statement/index.js +2 -0
- package/dist/{testing → domain/testing}/single-act-statement/rule.d.ts +1 -0
- package/dist/domain/testing/single-act-statement/rule.d.ts.map +1 -0
- package/dist/domain/testing/single-act-statement/rule.js +37 -0
- package/dist/index.d.ts +4 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -6
- package/dist/{codeperfect-plugin.d.ts → infrastructure/codeperfect-plugin.d.ts} +2 -0
- package/dist/infrastructure/codeperfect-plugin.d.ts.map +1 -0
- package/dist/infrastructure/codeperfect-plugin.js +30 -0
- package/dist/infrastructure/index.d.ts +5 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +4 -0
- package/dist/infrastructure/presets.d.ts +18 -0
- package/dist/infrastructure/presets.d.ts.map +1 -0
- package/dist/infrastructure/presets.js +81 -0
- package/package.json +67 -32
- package/dist/architecture/consistent-barrel-files/consistent-barrel-files-listeners.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/consistent-barrel-files-listeners.js +0 -131
- package/dist/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts +0 -48
- package/dist/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/consistent-barrel-files-options.js +0 -126
- package/dist/architecture/consistent-barrel-files/exports-only-rule-test-utilities.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/exports-only-rule-test-utilities.js +0 -90
- package/dist/architecture/consistent-barrel-files/exports-only-rule.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/exports-only-rule.js +0 -218
- package/dist/architecture/consistent-barrel-files/index.d.ts +0 -5
- package/dist/architecture/consistent-barrel-files/index.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/index.js +0 -4
- package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.js +0 -100
- package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.js +0 -90
- package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.js +0 -154
- package/dist/architecture/consistent-barrel-files/rule.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/rule.js +0 -58
- package/dist/architecture/consistent-barrel-files/test-helpers.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/test-helpers.js +0 -229
- package/dist/architecture/consistent-barrel-files/types.d.ts +0 -25
- package/dist/architecture/consistent-barrel-files/types.d.ts.map +0 -1
- package/dist/architecture/consistent-barrel-files/types.js +0 -2
- package/dist/architecture/index.d.ts.map +0 -1
- package/dist/architecture/index.js +0 -2
- package/dist/benchmark-rules.d.ts +0 -83
- package/dist/benchmark-rules.d.ts.map +0 -1
- package/dist/benchmark-rules.js +0 -175
- package/dist/codeperfect-plugin.d.ts.map +0 -1
- package/dist/codeperfect-plugin.js +0 -29
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -3
- package/dist/core/no-multiple-declarators/index.d.ts +0 -2
- package/dist/core/no-multiple-declarators/index.d.ts.map +0 -1
- package/dist/core/no-multiple-declarators/index.js +0 -2
- package/dist/core/no-multiple-declarators/rule.d.ts.map +0 -1
- package/dist/core/no-multiple-declarators/rule.js +0 -100
- package/dist/core/prefer-interface-types/index.d.ts +0 -2
- package/dist/core/prefer-interface-types/index.d.ts.map +0 -1
- package/dist/core/prefer-interface-types/index.js +0 -2
- package/dist/core/prefer-interface-types/rule.d.ts.map +0 -1
- package/dist/core/prefer-interface-types/rule.js +0 -145
- package/dist/core/prefer-interface-types/test-helpers.d.ts.map +0 -1
- package/dist/core/prefer-interface-types/test-helpers.js +0 -116
- package/dist/custom-rule-documentation.d.ts.map +0 -1
- package/dist/custom-rule-documentation.js +0 -35
- package/dist/custom-rules.d.ts.map +0 -1
- package/dist/custom-rules.js +0 -70
- package/dist/docs/index.d.ts +0 -4
- package/dist/docs/index.d.ts.map +0 -1
- package/dist/docs/index.js +0 -4
- package/dist/docs/no-interface-member-docs/comment-utilities-test-helpers.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/comment-utilities-test-helpers.js +0 -129
- package/dist/docs/no-interface-member-docs/comment-utilities.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/comment-utilities.js +0 -146
- package/dist/docs/no-interface-member-docs/index.d.ts +0 -2
- package/dist/docs/no-interface-member-docs/index.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/index.js +0 -2
- package/dist/docs/no-interface-member-docs/parameter-tags.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/parameter-tags.js +0 -101
- package/dist/docs/no-interface-member-docs/parameter-utilities.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/parameter-utilities.js +0 -125
- package/dist/docs/no-interface-member-docs/rule.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/rule.js +0 -168
- package/dist/docs/no-interface-member-docs/test-helpers.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/types.d.ts.map +0 -1
- package/dist/docs/no-interface-member-docs/types.js +0 -2
- package/dist/docs/require-example-language/empty-fence-fixes.d.ts.map +0 -1
- package/dist/docs/require-example-language/empty-fence-fixes.js +0 -169
- package/dist/docs/require-example-language/example-utilities.d.ts.map +0 -1
- package/dist/docs/require-example-language/example-utilities.js +0 -76
- package/dist/docs/require-example-language/examples.d.ts.map +0 -1
- package/dist/docs/require-example-language/examples.js +0 -181
- package/dist/docs/require-example-language/fixes.d.ts.map +0 -1
- package/dist/docs/require-example-language/fixes.js +0 -182
- package/dist/docs/require-example-language/index.d.ts +0 -3
- package/dist/docs/require-example-language/index.d.ts.map +0 -1
- package/dist/docs/require-example-language/index.js +0 -2
- package/dist/docs/require-example-language/reporting.d.ts.map +0 -1
- package/dist/docs/require-example-language/reporting.js +0 -145
- package/dist/docs/require-example-language/rule.d.ts.map +0 -1
- package/dist/docs/require-example-language/rule.js +0 -34
- package/dist/docs/require-example-language/types.d.ts.map +0 -1
- package/dist/docs/require-example-language/types.js +0 -2
- package/dist/docs/single-line-jsdoc/index.d.ts +0 -2
- package/dist/docs/single-line-jsdoc/index.d.ts.map +0 -1
- package/dist/docs/single-line-jsdoc/index.js +0 -2
- package/dist/docs/single-line-jsdoc/rule.d.ts +0 -5
- package/dist/docs/single-line-jsdoc/rule.d.ts.map +0 -1
- package/dist/docs/single-line-jsdoc/rule.js +0 -196
- package/dist/docs/single-line-jsdoc/single-line-jsdoc-content.d.ts.map +0 -1
- package/dist/docs/single-line-jsdoc/single-line-jsdoc-content.js +0 -95
- package/dist/docs/single-line-jsdoc/single-line-jsdoc-utilities.d.ts.map +0 -1
- package/dist/docs/single-line-jsdoc/single-line-jsdoc-utilities.js +0 -140
- package/dist/docs/test-helpers.d.ts.map +0 -1
- package/dist/docs/test-helpers.js +0 -107
- package/dist/presets.d.ts +0 -10
- package/dist/presets.d.ts.map +0 -1
- package/dist/presets.js +0 -50
- package/dist/rules/index.d.ts +0 -5
- package/dist/rules/index.d.ts.map +0 -1
- package/dist/rules/index.js +0 -6
- package/dist/testing/aaa/analyzer.d.ts +0 -36
- package/dist/testing/aaa/analyzer.d.ts.map +0 -1
- package/dist/testing/aaa/analyzer.js +0 -490
- package/dist/testing/aaa/index.d.ts.map +0 -1
- package/dist/testing/aaa/index.js +0 -2
- package/dist/testing/aaa/types.d.ts +0 -31
- package/dist/testing/aaa/types.d.ts.map +0 -1
- package/dist/testing/aaa/types.js +0 -2
- package/dist/testing/assert-actual-expected-names/index.d.ts +0 -2
- package/dist/testing/assert-actual-expected-names/index.d.ts.map +0 -1
- package/dist/testing/assert-actual-expected-names/index.js +0 -2
- package/dist/testing/assert-actual-expected-names/rule.d.ts.map +0 -1
- package/dist/testing/assert-actual-expected-names/rule.js +0 -54
- package/dist/testing/enforce-aaa-phase-purity/index.d.ts +0 -2
- package/dist/testing/enforce-aaa-phase-purity/index.d.ts.map +0 -1
- package/dist/testing/enforce-aaa-phase-purity/index.js +0 -2
- package/dist/testing/enforce-aaa-phase-purity/rule.d.ts.map +0 -1
- package/dist/testing/enforce-aaa-phase-purity/rule.js +0 -110
- package/dist/testing/enforce-aaa-structure/index.d.ts +0 -2
- package/dist/testing/enforce-aaa-structure/index.d.ts.map +0 -1
- package/dist/testing/enforce-aaa-structure/index.js +0 -2
- package/dist/testing/enforce-aaa-structure/rule.d.ts.map +0 -1
- package/dist/testing/enforce-aaa-structure/rule.js +0 -48
- package/dist/testing/index.d.ts.map +0 -1
- package/dist/testing/index.js +0 -9
- package/dist/testing/prefer-vi-mocked-import/fix.d.ts +0 -16
- package/dist/testing/prefer-vi-mocked-import/fix.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/fix.js +0 -224
- package/dist/testing/prefer-vi-mocked-import/index.d.ts +0 -2
- package/dist/testing/prefer-vi-mocked-import/index.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/index.js +0 -2
- package/dist/testing/prefer-vi-mocked-import/match-bindings.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match-bindings.js +0 -52
- package/dist/testing/prefer-vi-mocked-import/match-declarations.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match-declarations.js +0 -99
- package/dist/testing/prefer-vi-mocked-import/match-helpers.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match-helpers.js +0 -102
- package/dist/testing/prefer-vi-mocked-import/match-imports.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match-imports.js +0 -156
- package/dist/testing/prefer-vi-mocked-import/match-rewrites.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match-rewrites.js +0 -119
- package/dist/testing/prefer-vi-mocked-import/match-walk.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match-walk.js +0 -62
- package/dist/testing/prefer-vi-mocked-import/match.d.ts +0 -15
- package/dist/testing/prefer-vi-mocked-import/match.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/match.js +0 -193
- package/dist/testing/prefer-vi-mocked-import/rule.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/rule.js +0 -32
- package/dist/testing/prefer-vi-mocked-import/types.d.ts.map +0 -1
- package/dist/testing/prefer-vi-mocked-import/types.js +0 -2
- package/dist/testing/require-aaa-sections/index.d.ts +0 -2
- package/dist/testing/require-aaa-sections/index.d.ts.map +0 -1
- package/dist/testing/require-aaa-sections/index.js +0 -2
- package/dist/testing/require-aaa-sections/rule.d.ts.map +0 -1
- package/dist/testing/require-aaa-sections/rule.js +0 -111
- package/dist/testing/require-act-result-capture/index.d.ts +0 -2
- package/dist/testing/require-act-result-capture/index.d.ts.map +0 -1
- package/dist/testing/require-act-result-capture/index.js +0 -2
- package/dist/testing/require-act-result-capture/rule.d.ts.map +0 -1
- package/dist/testing/require-act-result-capture/rule.js +0 -34
- package/dist/testing/require-test-companion/index.d.ts +0 -3
- package/dist/testing/require-test-companion/index.d.ts.map +0 -1
- package/dist/testing/require-test-companion/index.js +0 -3
- package/dist/testing/require-test-companion/require-test-companion-listeners.d.ts.map +0 -1
- package/dist/testing/require-test-companion/require-test-companion-listeners.js +0 -145
- package/dist/testing/require-test-companion/require-test-companion-options.d.ts.map +0 -1
- package/dist/testing/require-test-companion/require-test-companion-options.js +0 -112
- package/dist/testing/require-test-companion/require-test-companion-test-helpers.d.ts.map +0 -1
- package/dist/testing/require-test-companion/require-test-companion-test-helpers.js +0 -183
- package/dist/testing/require-test-companion/require-test-companion-utilities.d.ts.map +0 -1
- package/dist/testing/require-test-companion/require-test-companion-utilities.js +0 -26
- package/dist/testing/require-test-companion/rule.d.ts.map +0 -1
- package/dist/testing/require-test-companion/rule.js +0 -57
- package/dist/testing/require-test-companion/types.d.ts.map +0 -1
- package/dist/testing/require-test-companion/types.js +0 -2
- package/dist/testing/single-act-statement/index.d.ts +0 -2
- package/dist/testing/single-act-statement/index.d.ts.map +0 -1
- package/dist/testing/single-act-statement/index.js +0 -2
- package/dist/testing/single-act-statement/rule.d.ts.map +0 -1
- package/dist/testing/single-act-statement/rule.js +0 -33
- /package/dist/{architecture → domain/architecture}/consistent-barrel-files/exports-only-rule.d.ts +0 -0
- /package/dist/{architecture → domain/architecture}/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts +0 -0
- /package/dist/{architecture → domain/architecture}/consistent-barrel-files/rule.d.ts +0 -0
- /package/dist/{core → domain/core}/prefer-interface-types/rule.d.ts +0 -0
- /package/dist/{core → domain/core}/prefer-interface-types/test-helpers.d.ts +0 -0
- /package/dist/{docs → domain/docs}/no-interface-member-docs/comment-utilities-test-helpers.d.ts +0 -0
- /package/dist/{docs → domain/docs}/no-interface-member-docs/rule.d.ts +0 -0
- /package/dist/{docs → domain/docs}/no-interface-member-docs/test-helpers.d.ts +0 -0
- /package/dist/{docs → domain/docs}/require-example-language/empty-fence-fixes.d.ts +0 -0
- /package/dist/{docs → domain/docs}/require-example-language/example-utilities.d.ts +0 -0
- /package/dist/{docs → domain/docs}/require-example-language/rule.d.ts +0 -0
- /package/dist/{docs → domain/docs}/require-example-language/types.d.ts +0 -0
- /package/dist/{docs → domain/docs}/single-line-jsdoc/single-line-jsdoc-content.d.ts +0 -0
- /package/dist/{docs → domain/docs}/test-helpers.d.ts +0 -0
- /package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-helpers.d.ts +0 -0
- /package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-walk.d.ts +0 -0
- /package/dist/{testing → domain/testing}/prefer-vi-mocked-import/rule.d.ts +0 -0
- /package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-options.d.ts +0 -0
- /package/dist/{testing → domain/testing}/require-test-companion/rule.d.ts +0 -0
- /package/dist/{testing → domain/testing}/require-test-companion/types.d.ts +0 -0
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
import { minimatch } from "minimatch";
|
|
2
|
-
import path from "node:path";
|
|
3
|
-
import { createRuleDocumentation } from "../../custom-rule-documentation";
|
|
4
|
-
/** Default value used by this module. */
|
|
5
|
-
const DEFAULT_BARREL_NAMES = ["index.ts", "index.tsx", "index.js", "index.jsx"];
|
|
6
|
-
/** Default folder globs for barrel exports-only checks. */
|
|
7
|
-
const DEFAULT_FOLDER_GLOBS = ["src/*/**"];
|
|
8
|
-
/**
|
|
9
|
-
* Normalizes a string list option into a clean list.
|
|
10
|
-
* @param value Raw option value.
|
|
11
|
-
* @param defaults Default list when the option is empty.
|
|
12
|
-
* @returns Normalized string list.
|
|
13
|
-
* @example
|
|
14
|
-
* ```typescript
|
|
15
|
-
* const names = normalizeList("index.ts", ["index.ts"]);
|
|
16
|
-
* ```
|
|
17
|
-
*/
|
|
18
|
-
const normalizeList = (value, defaults) => {
|
|
19
|
-
if (Array.isArray(value)) {
|
|
20
|
-
return value
|
|
21
|
-
.filter((entry) => typeof entry === "string")
|
|
22
|
-
.map((entry) => entry.trim())
|
|
23
|
-
.filter((entry) => entry.length > 0);
|
|
24
|
-
}
|
|
25
|
-
if (typeof value === "string") {
|
|
26
|
-
const trimmed = value.trim();
|
|
27
|
-
return trimmed.length === 0 ? [] : [trimmed];
|
|
28
|
-
}
|
|
29
|
-
return [...defaults];
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* Builds the rule options state from raw options.
|
|
33
|
-
* @param options Raw rule options.
|
|
34
|
-
* @returns Normalized rule options.
|
|
35
|
-
* @example
|
|
36
|
-
* ```typescript
|
|
37
|
-
* const state = getOptions([{}]);
|
|
38
|
-
* ```
|
|
39
|
-
*/
|
|
40
|
-
const getOptions = (options) => {
|
|
41
|
-
const rawOptions = options[0];
|
|
42
|
-
const folders = normalizeList(rawOptions?.folders, DEFAULT_FOLDER_GLOBS);
|
|
43
|
-
const names = normalizeList(rawOptions?.names, DEFAULT_BARREL_NAMES);
|
|
44
|
-
return { folders, names, namesSet: new Set(names) };
|
|
45
|
-
};
|
|
46
|
-
/**
|
|
47
|
-
* Checks whether the filename is valid for linting.
|
|
48
|
-
* @param filename Absolute filename.
|
|
49
|
-
* @returns True when the filename is lintable.
|
|
50
|
-
* @example
|
|
51
|
-
* ```typescript
|
|
52
|
-
* const ok = isLintableFilename("/repo/src/index.ts");
|
|
53
|
-
* ```
|
|
54
|
-
*/
|
|
55
|
-
const isLintableFilename = (filename) => filename.length > 0 && path.isAbsolute(filename);
|
|
56
|
-
/**
|
|
57
|
-
* Normalizes a filename to a repo-relative path.
|
|
58
|
-
* @param filename Absolute filename.
|
|
59
|
-
* @returns Relative path using forward slashes.
|
|
60
|
-
* @example
|
|
61
|
-
* ```typescript
|
|
62
|
-
* const relative = normalizeRelativePath("/repo/src/index.ts");
|
|
63
|
-
* ```
|
|
64
|
-
*/
|
|
65
|
-
const normalizeRelativePath = (filename) => path.relative(process.cwd(), filename).split(path.sep).join("/");
|
|
66
|
-
/**
|
|
67
|
-
* Checks whether a file path matches any configured folder globs.
|
|
68
|
-
* @param filename Absolute filename.
|
|
69
|
-
* @param folders Folder glob patterns.
|
|
70
|
-
* @returns True when the filename is within configured folders.
|
|
71
|
-
* @example
|
|
72
|
-
* ```typescript
|
|
73
|
-
* const ok = isPathInFolders("/repo/src/index.ts", ["src/**"]);
|
|
74
|
-
* ```
|
|
75
|
-
*/
|
|
76
|
-
const isPathInFolders = (filename, folders) => {
|
|
77
|
-
const relativePath = normalizeRelativePath(filename);
|
|
78
|
-
if (relativePath.startsWith("..") || path.isAbsolute(relativePath)) {
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
return folders.some((folder) => minimatch(relativePath, folder, { dot: true }));
|
|
82
|
-
};
|
|
83
|
-
/**
|
|
84
|
-
* Determines whether a file should be linted by this rule.
|
|
85
|
-
* @param filename Absolute filename.
|
|
86
|
-
* @param options Normalized rule options.
|
|
87
|
-
* @returns True when the file should be checked.
|
|
88
|
-
* @example
|
|
89
|
-
* ```typescript
|
|
90
|
-
* const ok = shouldLintFile("/repo/src/index.ts", state);
|
|
91
|
-
* ```
|
|
92
|
-
*/
|
|
93
|
-
const shouldLintFile = (filename, options) => {
|
|
94
|
-
if (!isLintableFilename(filename)) {
|
|
95
|
-
return false;
|
|
96
|
-
}
|
|
97
|
-
if (options.folders.length === 0 || options.names.length === 0) {
|
|
98
|
-
return false;
|
|
99
|
-
}
|
|
100
|
-
return isPathInFolders(filename, options.folders);
|
|
101
|
-
};
|
|
102
|
-
/**
|
|
103
|
-
* Determines whether a file is a barrel file under the rule options.
|
|
104
|
-
* @param filename Absolute filename.
|
|
105
|
-
* @param options Normalized rule options.
|
|
106
|
-
* @returns True when the file is a barrel file.
|
|
107
|
-
* @example
|
|
108
|
-
* ```typescript
|
|
109
|
-
* const ok = isBarrelFile("/repo/src/index.ts", state);
|
|
110
|
-
* ```
|
|
111
|
-
*/
|
|
112
|
-
const isBarrelFile = (filename, options) => {
|
|
113
|
-
if (!shouldLintFile(filename, options)) {
|
|
114
|
-
return false;
|
|
115
|
-
}
|
|
116
|
-
return options.namesSet.has(path.basename(filename));
|
|
117
|
-
};
|
|
118
|
-
/**
|
|
119
|
-
* Checks whether a statement is allowed in a barrel file.
|
|
120
|
-
* @param statement Program statement node.
|
|
121
|
-
* @returns True when the statement is permitted.
|
|
122
|
-
* @example
|
|
123
|
-
* ```typescript
|
|
124
|
-
* const ok = isAllowedBarrelStatement(statement);
|
|
125
|
-
* ```
|
|
126
|
-
*/
|
|
127
|
-
const isAllowedBarrelStatement = (statement) => {
|
|
128
|
-
if (statement.type === "ExportAllDeclaration") {
|
|
129
|
-
return true;
|
|
130
|
-
}
|
|
131
|
-
if (statement.type !== "ExportNamedDeclaration") {
|
|
132
|
-
return false;
|
|
133
|
-
}
|
|
134
|
-
const declaration = statement.declaration ?? void 0;
|
|
135
|
-
if (declaration !== void 0) {
|
|
136
|
-
return false;
|
|
137
|
-
}
|
|
138
|
-
const source = statement.source ?? void 0;
|
|
139
|
-
return source !== void 0;
|
|
140
|
-
};
|
|
141
|
-
/**
|
|
142
|
-
* Builds a rule listener for the supplied file.
|
|
143
|
-
* @param context Rule execution context.
|
|
144
|
-
* @param filename Absolute filename to lint.
|
|
145
|
-
* @param options Normalized rule options.
|
|
146
|
-
* @returns The rule listener for the file.
|
|
147
|
-
* @example
|
|
148
|
-
* ```typescript
|
|
149
|
-
* const listener = buildListenerForFile(context, filename, state);
|
|
150
|
-
* ```
|
|
151
|
-
*/
|
|
152
|
-
const buildListenerForFile = (context, filename, options) => {
|
|
153
|
-
if (!isBarrelFile(filename, options)) {
|
|
154
|
-
return {};
|
|
155
|
-
}
|
|
156
|
-
return {
|
|
157
|
-
Program(node) {
|
|
158
|
-
for (const statement of node.body) {
|
|
159
|
-
if (!isAllowedBarrelStatement(statement)) {
|
|
160
|
-
context.report({
|
|
161
|
-
messageId: "invalidBarrelContent",
|
|
162
|
-
node: statement,
|
|
163
|
-
});
|
|
164
|
-
break;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
},
|
|
168
|
-
};
|
|
169
|
-
};
|
|
170
|
-
/**
|
|
171
|
-
* ESLint rule enforcing re-export-only barrel files.
|
|
172
|
-
* @example
|
|
173
|
-
* ```typescript
|
|
174
|
-
* const rule = barrelFilesExportsOnlyRule;
|
|
175
|
-
* ```
|
|
176
|
-
*/
|
|
177
|
-
const barrelFilesExportsOnlyRule = {
|
|
178
|
-
create(context) {
|
|
179
|
-
return buildListenerForFile(context, context.filename, getOptions(context.options));
|
|
180
|
-
},
|
|
181
|
-
meta: {
|
|
182
|
-
docs: createRuleDocumentation("barrel-files-exports-only", "Require barrel files to only contain re-export statements."),
|
|
183
|
-
messages: {
|
|
184
|
-
invalidBarrelContent: "Barrel files must only re-export from other modules and contain no imports or declarations.",
|
|
185
|
-
},
|
|
186
|
-
schema: [
|
|
187
|
-
{
|
|
188
|
-
additionalProperties: false,
|
|
189
|
-
properties: {
|
|
190
|
-
folders: {
|
|
191
|
-
oneOf: [
|
|
192
|
-
{ type: "string" },
|
|
193
|
-
{
|
|
194
|
-
items: { type: "string" },
|
|
195
|
-
minItems: 1,
|
|
196
|
-
type: "array",
|
|
197
|
-
},
|
|
198
|
-
],
|
|
199
|
-
},
|
|
200
|
-
names: {
|
|
201
|
-
oneOf: [
|
|
202
|
-
{ type: "string" },
|
|
203
|
-
{
|
|
204
|
-
items: { type: "string" },
|
|
205
|
-
minItems: 1,
|
|
206
|
-
type: "array",
|
|
207
|
-
},
|
|
208
|
-
],
|
|
209
|
-
},
|
|
210
|
-
},
|
|
211
|
-
type: "object",
|
|
212
|
-
},
|
|
213
|
-
],
|
|
214
|
-
type: "problem",
|
|
215
|
-
},
|
|
216
|
-
};
|
|
217
|
-
export { barrelFilesExportsOnlyRule };
|
|
218
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0cy1vbmx5LXJ1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL2V4cG9ydHMtb25seS1ydWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdEMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBSTdCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTFFLHlDQUF5QztBQUN6QyxNQUFNLG9CQUFvQixHQUFHLENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFFaEYsMkRBQTJEO0FBQzNELE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQWMxQzs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWMsRUFBRSxRQUFrQixFQUFZLEVBQUU7SUFDckUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDekIsT0FBTyxLQUFLO2FBQ1QsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFtQixFQUFFLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDO2FBQzdELEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQzVCLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsT0FBTyxPQUFPLENBQUMsTUFBTSxLQUFLLENB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QTBCLEdBQW9CO0lBQ2xELE1BQU0sQ0FBQyxPQUF5QjtRQUM5QixPQUFPLG9CQUFvQixDQUN6QixPQUFPLEVBQ1AsT0FBTyxDQUFDLFFBQVEsRUFDaEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FDNUIsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsdUJBQXVCLENBQzNCLDJCQUEyQixFQUMzQiw0REFBNEQsQ0FDN0Q7UUFDRCxRQUFRLEVBQUU7WUFDUixvQkFBb0IsRUFDbEIsNkZBQTZGO1NBQ2hHO1FBQ0QsTUFBTSxFQUFFO1lBQ047Z0JBQ0Usb0JBQW9CLEVBQUUsS0FBSztnQkFDM0IsVUFBVSxFQUFFO29CQUNWLE9BQU8sRUFBRTt3QkFDUCxLQUFLLEVBQUU7NEJBQ0wsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFOzRCQUNsQjtnQ0FDRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO2dDQUN6QixRQUFRLEVBQUUsQ0FBQztnQ0FDWCxJQUFJLEVBQUUsT0FBTzs2QkFDZDt5QkFDRjtxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFOzRCQUNMLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTs0QkFDbEI7Z0NBQ0UsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQ0FDekIsUUFBUSxFQUFFLENBQUM7Z0NBQ1gsSUFBSSxFQUFFLE9BQU87NkJBQ2Q7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsSUFBSSxFQUFFLFFBQVE7YUFDZjtTQUNGO1FBQ0QsSUFBSSxFQUFFLFNBQVM7S0FDaEI7Q0FDRixDQUFDO0FBRUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFTVCwgUnVsZSB9IGZyb20gXCJlc2xpbnRcIjtcblxuaW1wb3J0IHsgbWluaW1hdGNoIH0gZnJvbSBcIm1pbmltYXRjaFwiO1xuaW1wb3J0IHBhdGggZnJvbSBcIm5vZGU6cGF0aFwiO1xuXG5pbXBvcnQgdHlwZSB7IEJhcnJlbEZpbGVzRXhwb3J0c09ubHlPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuaW1wb3J0IHsgY3JlYXRlUnVsZURvY3VtZW50YXRpb24gfSBmcm9tIFwiLi4vLi4vY3VzdG9tLXJ1bGUtZG9jdW1lbnRhdGlvblwiO1xuXG4vKiogRGVmYXVsdCB2YWx1ZSB1c2VkIGJ5IHRoaXMgbW9kdWxlLiAqL1xuY29uc3QgREVGQVVMVF9CQVJSRUxfTkFNRVMgPSBbXCJpbmRleC50c1wiLCBcImluZGV4LnRzeFwiLCBcImluZGV4LmpzXCIsIFwiaW5kZXguanN4XCJdO1xuXG4vKiogRGVmYXVsdCBmb2xkZXIgZ2xvYnMgZm9yIGJhcnJlbCBleHBvcnRzLW9ubHkgY2hlY2tzLiAqL1xuY29uc3QgREVGQVVMVF9GT0xERVJfR0xPQlMgPSBbXCJzcmMvKi8qKlwiXTtcblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIEJhcnJlbEZpbGVzRXhwb3J0c09ubHlTdGF0ZSB7XG4gIC8qKiBGb2xkZXJzIGZpZWxkIHZhbHVlLiAqL1xuICBmb2xkZXJzOiBzdHJpbmdbXTtcblxuICAvKiogTmFtZXMgZmllbGQgdmFsdWUuICovXG4gIG5hbWVzOiBzdHJpbmdbXTtcblxuICAvKiogTmFtZXNTZXQgZmllbGQgdmFsdWUuICovXG4gIG5hbWVzU2V0OiBTZXQ8c3RyaW5nPjtcbn1cblxuLyoqXG4gKiBOb3JtYWxpemVzIGEgc3RyaW5nIGxpc3Qgb3B0aW9uIGludG8gYSBjbGVhbiBsaXN0LlxuICogQHBhcmFtIHZhbHVlIFJhdyBvcHRpb24gdmFsdWUuXG4gKiBAcGFyYW0gZGVmYXVsdHMgRGVmYXVsdCBsaXN0IHdoZW4gdGhlIG9wdGlvbiBpcyBlbXB0eS5cbiAqIEByZXR1cm5zIE5vcm1hbGl6ZWQgc3RyaW5nIGxpc3QuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgbmFtZXMgPSBub3JtYWxpemVMaXN0KFwiaW5kZXgudHNcIiwgW1wiaW5kZXgudHNcIl0pO1xuICogYGBgXG4gKi9cbmNvbnN0IG5vcm1hbGl6ZUxpc3QgPSAodmFsdWU6IHVua25vd24sIGRlZmF1bHRzOiBzdHJpbmdbXSk6IHN0cmluZ1tdID0+IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlXG4gICAgICAuZmlsdGVyKChlbnRyeSk6IGVudHJ5IGlzIHN0cmluZyA9PiB0eXBlb2YgZW50cnkgPT09IFwic3RyaW5nXCIpXG4gICAgICAubWFwKChlbnRyeSkgPT4gZW50cnkudHJpbSgpKVxuICAgICAgLmZpbHRlcigoZW50cnkpID0+IGVudHJ5Lmxlbmd0aCA+IDApO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuICAgIGNvbnN0IHRyaW1tZWQgPSB2YWx1ZS50cmltKCk7XG4gICAgcmV0dXJuIHRyaW1tZWQubGVuZ3RoID09PSAwID8gW10gOiBbdHJpbW1lZF07XG4gIH1cblxuICByZXR1cm4gWy4uLmRlZmF1bHRzXTtcbn07XG5cbi8qKlxuICogQnVpbGRzIHRoZSBydWxlIG9wdGlvbnMgc3RhdGUgZnJvbSByYXcgb3B0aW9ucy5cbiAqIEBwYXJhbSBvcHRpb25zIFJhdyBydWxlIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBOb3JtYWxpemVkIHJ1bGUgb3B0aW9ucy5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBzdGF0ZSA9IGdldE9wdGlvbnMoW3t9XSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0T3B0aW9ucyA9IChcbiAgb3B0aW9uczogcmVhZG9ubHkgdW5rbm93bltdLFxuKTogQmFycmVsRmlsZXNFeHBvcnRzT25seVN0YXRlID0+IHtcbiAgY29uc3QgcmF3T3B0aW9ucyA9IG9wdGlvbnNbMF0gYXMgQmFycmVsRmlsZXNFeHBvcnRzT25seU9wdGlvbnMgfCB1bmRlZmluZWQ7XG4gIGNvbnN0IGZvbGRlcnMgPSBub3JtYWxpemVMaXN0KHJhd09wdGlvbnM/LmZvbGRlcnMsIERFRkFVTFRfRk9MREVSX0dMT0JTKTtcbiAgY29uc3QgbmFtZXMgPSBub3JtYWxpemVMaXN0KHJhd09wdGlvbnM/Lm5hbWVzLCBERUZBVUxUX0JBUlJFTF9OQU1FUyk7XG5cbiAgcmV0dXJuIHsgZm9sZGVycywgbmFtZXMsIG5hbWVzU2V0OiBuZXcgU2V0KG5hbWVzKSB9O1xufTtcblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgZmlsZW5hbWUgaXMgdmFsaWQgZm9yIGxpbnRpbmcuXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGVuYW1lIGlzIGxpbnRhYmxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9rID0gaXNMaW50YWJsZUZpbGVuYW1lKFwiL3JlcG8vc3JjL2luZGV4LnRzXCIpO1xuICogYGBgXG4gKi9cbmNvbnN0IGlzTGludGFibGVGaWxlbmFtZSA9IChmaWxlbmFtZTogc3RyaW5nKTogYm9vbGVhbiA9PlxuICBmaWxlbmFtZS5sZW5ndGggPiAwICYmIHBhdGguaXNBYnNvbHV0ZShmaWxlbmFtZSk7XG5cbi8qKlxuICogTm9ybWFsaXplcyBhIGZpbGVuYW1lIHRvIGEgcmVwby1yZWxhdGl2ZSBwYXRoLlxuICogQHBhcmFtIGZpbGVuYW1lIEFic29sdXRlIGZpbGVuYW1lLlxuICogQHJldHVybnMgUmVsYXRpdmUgcGF0aCB1c2luZyBmb3J3YXJkIHNsYXNoZXMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcmVsYXRpdmUgPSBub3JtYWxpemVSZWxhdGl2ZVBhdGgoXCIvcmVwby9zcmMvaW5kZXgudHNcIik7XG4gKiBgYGBcbiAqL1xuY29uc3Qgbm9ybWFsaXplUmVsYXRpdmVQYXRoID0gKGZpbGVuYW1lOiBzdHJpbmcpOiBzdHJpbmcgPT5cbiAgcGF0aC5yZWxhdGl2ZShwcm9jZXNzLmN3ZCgpLCBmaWxlbmFtZSkuc3BsaXQocGF0aC5zZXApLmpvaW4oXCIvXCIpO1xuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIGEgZmlsZSBwYXRoIG1hdGNoZXMgYW55IGNvbmZpZ3VyZWQgZm9sZGVyIGdsb2JzLlxuICogQHBhcmFtIGZpbGVuYW1lIEFic29sdXRlIGZpbGVuYW1lLlxuICogQHBhcmFtIGZvbGRlcnMgRm9sZGVyIGdsb2IgcGF0dGVybnMuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGVuYW1lIGlzIHdpdGhpbiBjb25maWd1cmVkIGZvbGRlcnMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgb2sgPSBpc1BhdGhJbkZvbGRlcnMoXCIvcmVwby9zcmMvaW5kZXgudHNcIiwgW1wic3JjLyoqXCJdKTtcbiAqIGBgYFxuICovXG5jb25zdCBpc1BhdGhJbkZvbGRlcnMgPSAoZmlsZW5hbWU6IHN0cmluZywgZm9sZGVyczogc3RyaW5nW10pOiBib29sZWFuID0+IHtcbiAgY29uc3QgcmVsYXRpdmVQYXRoID0gbm9ybWFsaXplUmVsYXRpdmVQYXRoKGZpbGVuYW1lKTtcblxuICBpZiAocmVsYXRpdmVQYXRoLnN0YXJ0c1dpdGgoXCIuLlwiKSB8fCBwYXRoLmlzQWJzb2x1dGUocmVsYXRpdmVQYXRoKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiBmb2xkZXJzLnNvbWUoKGZvbGRlcikgPT5cbiAgICBtaW5pbWF0Y2gocmVsYXRpdmVQYXRoLCBmb2xkZXIsIHsgZG90OiB0cnVlIH0pLFxuICApO1xufTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBmaWxlIHNob3VsZCBiZSBsaW50ZWQgYnkgdGhpcyBydWxlLlxuICogQHBhcmFtIGZpbGVuYW1lIEFic29sdXRlIGZpbGVuYW1lLlxuICogQHBhcmFtIG9wdGlvbnMgTm9ybWFsaXplZCBydWxlIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGUgc2hvdWxkIGJlIGNoZWNrZWQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgb2sgPSBzaG91bGRMaW50RmlsZShcIi9yZXBvL3NyYy9pbmRleC50c1wiLCBzdGF0ZSk7XG4gKiBgYGBcbiAqL1xuY29uc3Qgc2hvdWxkTGludEZpbGUgPSAoXG4gIGZpbGVuYW1lOiBzdHJpbmcsXG4gIG9wdGlvbnM6IFJldHVyblR5cGU8dHlwZW9mIGdldE9wdGlvbnM+LFxuKTogYm9vbGVhbiA9PiB7XG4gIGlmICghaXNMaW50YWJsZUZpbGVuYW1lKGZpbGVuYW1lKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChvcHRpb25zLmZvbGRlcnMubGVuZ3RoID09PSAwIHx8IG9wdGlvbnMubmFtZXMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIGlzUGF0aEluRm9sZGVycyhmaWxlbmFtZSwgb3B0aW9ucy5mb2xkZXJzKTtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgZmlsZSBpcyBhIGJhcnJlbCBmaWxlIHVuZGVyIHRoZSBydWxlIG9wdGlvbnMuXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUuXG4gKiBAcGFyYW0gb3B0aW9ucyBOb3JtYWxpemVkIHJ1bGUgb3B0aW9ucy5cbiAqIEByZXR1cm5zIFRydWUgd2hlbiB0aGUgZmlsZSBpcyBhIGJhcnJlbCBmaWxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9rID0gaXNCYXJyZWxGaWxlKFwiL3JlcG8vc3JjL2luZGV4LnRzXCIsIHN0YXRlKTtcbiAqIGBgYFxuICovXG5jb25zdCBpc0JhcnJlbEZpbGUgPSAoXG4gIGZpbGVuYW1lOiBzdHJpbmcsXG4gIG9wdGlvbnM6IFJldHVyblR5cGU8dHlwZW9mIGdldE9wdGlvbnM+LFxuKTogYm9vbGVhbiA9PiB7XG4gIGlmICghc2hvdWxkTGludEZpbGUoZmlsZW5hbWUsIG9wdGlvbnMpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIG9wdGlvbnMubmFtZXNTZXQuaGFzKHBhdGguYmFzZW5hbWUoZmlsZW5hbWUpKTtcbn07XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgYSBzdGF0ZW1lbnQgaXMgYWxsb3dlZCBpbiBhIGJhcnJlbCBmaWxlLlxuICogQHBhcmFtIHN0YXRlbWVudCBQcm9ncmFtIHN0YXRlbWVudCBub2RlLlxuICogQHJldHVybnMgVHJ1ZSB3aGVuIHRoZSBzdGF0ZW1lbnQgaXMgcGVybWl0dGVkLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9rID0gaXNBbGxvd2VkQmFycmVsU3RhdGVtZW50KHN0YXRlbWVudCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgaXNBbGxvd2VkQmFycmVsU3RhdGVtZW50ID0gKFxuICBzdGF0ZW1lbnQ6IEFTVC5Qcm9ncmFtW1wiYm9keVwiXVtudW1iZXJdLFxuKTogYm9vbGVhbiA9PiB7XG4gIGlmIChzdGF0ZW1lbnQudHlwZSA9PT0gXCJFeHBvcnRBbGxEZWNsYXJhdGlvblwiKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAoc3RhdGVtZW50LnR5cGUgIT09IFwiRXhwb3J0TmFtZWREZWNsYXJhdGlvblwiKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgZGVjbGFyYXRpb24gPSBzdGF0ZW1lbnQuZGVjbGFyYXRpb24gPz8gdm9pZCAwO1xuXG4gIGlmIChkZWNsYXJhdGlvbiAhPT0gdm9pZCAwKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3Qgc291cmNlID0gc3RhdGVtZW50LnNvdXJjZSA/PyB2b2lkIDA7XG5cbiAgcmV0dXJuIHNvdXJjZSAhPT0gdm9pZCAwO1xufTtcblxuLyoqXG4gKiBCdWlsZHMgYSBydWxlIGxpc3RlbmVyIGZvciB0aGUgc3VwcGxpZWQgZmlsZS5cbiAqIEBwYXJhbSBjb250ZXh0IFJ1bGUgZXhlY3V0aW9uIGNvbnRleHQuXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUgdG8gbGludC5cbiAqIEBwYXJhbSBvcHRpb25zIE5vcm1hbGl6ZWQgcnVsZSBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIHJ1bGUgbGlzdGVuZXIgZm9yIHRoZSBmaWxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGxpc3RlbmVyID0gYnVpbGRMaXN0ZW5lckZvckZpbGUoY29udGV4dCwgZmlsZW5hbWUsIHN0YXRlKTtcbiAqIGBgYFxuICovXG5jb25zdCBidWlsZExpc3RlbmVyRm9yRmlsZSA9IChcbiAgY29udGV4dDogUnVsZS5SdWxlQ29udGV4dCxcbiAgZmlsZW5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0T3B0aW9ucz4sXG4pOiBSdWxlLlJ1bGVMaXN0ZW5lciA9PiB7XG4gIGlmICghaXNCYXJyZWxGaWxlKGZpbGVuYW1lLCBvcHRpb25zKSkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgUHJvZ3JhbShub2RlOiBBU1QuUHJvZ3JhbSk6IHZvaWQge1xuICAgICAgZm9yIChjb25zdCBzdGF0ZW1lbnQgb2Ygbm9kZS5ib2R5KSB7XG4gICAgICAgIGlmICghaXNBbGxvd2VkQmFycmVsU3RhdGVtZW50KHN0YXRlbWVudCkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBtZXNzYWdlSWQ6IFwiaW52YWxpZEJhcnJlbENvbnRlbnRcIixcbiAgICAgICAgICAgIG5vZGU6IHN0YXRlbWVudCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gIH07XG59O1xuXG4vKipcbiAqIEVTTGludCBydWxlIGVuZm9yY2luZyByZS1leHBvcnQtb25seSBiYXJyZWwgZmlsZXMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcnVsZSA9IGJhcnJlbEZpbGVzRXhwb3J0c09ubHlSdWxlO1xuICogYGBgXG4gKi9cbmNvbnN0IGJhcnJlbEZpbGVzRXhwb3J0c09ubHlSdWxlOiBSdWxlLlJ1bGVNb2R1bGUgPSB7XG4gIGNyZWF0ZShjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0KTogUnVsZS5SdWxlTGlzdGVuZXIge1xuICAgIHJldHVybiBidWlsZExpc3RlbmVyRm9yRmlsZShcbiAgICAgIGNvbnRleHQsXG4gICAgICBjb250ZXh0LmZpbGVuYW1lLFxuICAgICAgZ2V0T3B0aW9ucyhjb250ZXh0Lm9wdGlvbnMpLFxuICAgICk7XG4gIH0sXG4gIG1ldGE6IHtcbiAgICBkb2NzOiBjcmVhdGVSdWxlRG9jdW1lbnRhdGlvbihcbiAgICAgIFwiYmFycmVsLWZpbGVzLWV4cG9ydHMtb25seVwiLFxuICAgICAgXCJSZXF1aXJlIGJhcnJlbCBmaWxlcyB0byBvbmx5IGNvbnRhaW4gcmUtZXhwb3J0IHN0YXRlbWVudHMuXCIsXG4gICAgKSxcbiAgICBtZXNzYWdlczoge1xuICAgICAgaW52YWxpZEJhcnJlbENvbnRlbnQ6XG4gICAgICAgIFwiQmFycmVsIGZpbGVzIG11c3Qgb25seSByZS1leHBvcnQgZnJvbSBvdGhlciBtb2R1bGVzIGFuZCBjb250YWluIG5vIGltcG9ydHMgb3IgZGVjbGFyYXRpb25zLlwiLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGZvbGRlcnM6IHtcbiAgICAgICAgICAgIG9uZU9mOiBbXG4gICAgICAgICAgICAgIHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICAgICAgICAgIG1pbkl0ZW1zOiAxLFxuICAgICAgICAgICAgICAgIHR5cGU6IFwiYXJyYXlcIixcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBuYW1lczoge1xuICAgICAgICAgICAgb25lT2Y6IFtcbiAgICAgICAgICAgICAgeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpdGVtczogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAgICAgICAgbWluSXRlbXM6IDEsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBcIm9iamVjdFwiLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHR5cGU6IFwicHJvYmxlbVwiLFxuICB9LFxufTtcblxuZXhwb3J0IHsgYmFycmVsRmlsZXNFeHBvcnRzT25seVJ1bGUgfTtcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { barrelFilesExportsOnlyRule } from "./exports-only-rule";
|
|
2
|
-
export { noReexportsOutsideBarrelsRule } from "./no-reexports-outside-barrels-rule";
|
|
3
|
-
export { consistentBarrelFilesRule } from "./rule";
|
|
4
|
-
export type { BarrelFilesExportsOnlyOptions, ConsistentBarrelFilesOptions, NoReexportsOutsideBarrelsOptions, } from "./types";
|
|
5
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/architecture/consistent-barrel-files/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AACnD,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,SAAS,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { barrelFilesExportsOnlyRule } from "./exports-only-rule";
|
|
2
|
-
export { noReexportsOutsideBarrelsRule } from "./no-reexports-outside-barrels-rule";
|
|
3
|
-
export { consistentBarrelFilesRule } from "./rule";
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGJhcnJlbEZpbGVzRXhwb3J0c09ubHlSdWxlIH0gZnJvbSBcIi4vZXhwb3J0cy1vbmx5LXJ1bGVcIjtcbmV4cG9ydCB7IG5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNSdWxlIH0gZnJvbSBcIi4vbm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVscy1ydWxlXCI7XG5leHBvcnQgeyBjb25zaXN0ZW50QmFycmVsRmlsZXNSdWxlIH0gZnJvbSBcIi4vcnVsZVwiO1xuZXhwb3J0IHR5cGUge1xuICBCYXJyZWxGaWxlc0V4cG9ydHNPbmx5T3B0aW9ucyxcbiAgQ29uc2lzdGVudEJhcnJlbEZpbGVzT3B0aW9ucyxcbiAgTm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc09wdGlvbnMsXG59IGZyb20gXCIuL3R5cGVzXCI7XG4iXX0=
|
package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"no-reexports-outside-barrels-rule.d.ts","sourceRoot":"","sources":["../../../src/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAO,IAAI,EAAE,MAAM,QAAQ,CAAC;AAoExC;;;;;;GAMG;AACH,QAAA,MAAM,6BAA6B,EAAE,IAAI,CAAC,UAiDzC,CAAC;AAEF,OAAO,EAAE,6BAA6B,EAAE,CAAC"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { createRuleDocumentation } from "../../custom-rule-documentation";
|
|
2
|
-
import { collectImportedNames, getOptions, hasImportedExport, isBarrelFile, shouldLintFile, } from "./no-reexports-outside-barrels-utilities";
|
|
3
|
-
/**
|
|
4
|
-
* Builds a rule listener for the supplied file.
|
|
5
|
-
* @param context Rule execution context.
|
|
6
|
-
* @param filename Absolute filename to lint.
|
|
7
|
-
* @param options Normalized rule options.
|
|
8
|
-
* @returns The rule listener for the file.
|
|
9
|
-
* @example
|
|
10
|
-
* ```typescript
|
|
11
|
-
* const listener = buildListenerForFile(context, filename, state);
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
const buildListenerForFile = (context, filename, options) => {
|
|
15
|
-
if (!shouldLintFile(filename, options) || isBarrelFile(filename, options)) {
|
|
16
|
-
return {};
|
|
17
|
-
}
|
|
18
|
-
return {
|
|
19
|
-
Program(node) {
|
|
20
|
-
const importedNames = collectImportedNames(node.body);
|
|
21
|
-
for (const statement of node.body) {
|
|
22
|
-
const isExportFrom = statement.type === "ExportAllDeclaration" ||
|
|
23
|
-
(statement.type === "ExportNamedDeclaration" &&
|
|
24
|
-
statement.source !== null &&
|
|
25
|
-
statement.source !== void 0);
|
|
26
|
-
const isImportedDefaultExport = statement.type === "ExportDefaultDeclaration" &&
|
|
27
|
-
statement.declaration.type === "Identifier" &&
|
|
28
|
-
importedNames.has(statement.declaration.name);
|
|
29
|
-
if (isExportFrom) {
|
|
30
|
-
context.report({
|
|
31
|
-
messageId: "reexportNotAllowed",
|
|
32
|
-
node: statement,
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
else if (hasImportedExport(statement, importedNames)) {
|
|
36
|
-
context.report({
|
|
37
|
-
messageId: "reexportedImport",
|
|
38
|
-
node: statement,
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
else if (isImportedDefaultExport) {
|
|
42
|
-
context.report({
|
|
43
|
-
messageId: "reexportedImport",
|
|
44
|
-
node: statement,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
},
|
|
49
|
-
};
|
|
50
|
-
};
|
|
51
|
-
/**
|
|
52
|
-
* ESLint rule preventing re-exports outside barrel files.
|
|
53
|
-
* @example
|
|
54
|
-
* ```typescript
|
|
55
|
-
* const rule = noReexportsOutsideBarrelsRule;
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
const noReexportsOutsideBarrelsRule = {
|
|
59
|
-
create(context) {
|
|
60
|
-
return buildListenerForFile(context, context.filename, getOptions(context.options));
|
|
61
|
-
},
|
|
62
|
-
meta: {
|
|
63
|
-
docs: createRuleDocumentation("no-reexports-outside-barrels", "Require non-barrel files to export only locally defined values."),
|
|
64
|
-
messages: {
|
|
65
|
-
reexportedImport: "Non-barrel files must not export identifiers imported from other modules.",
|
|
66
|
-
reexportNotAllowed: "Non-barrel files must not re-export from other modules.",
|
|
67
|
-
},
|
|
68
|
-
schema: [
|
|
69
|
-
{
|
|
70
|
-
additionalProperties: false,
|
|
71
|
-
properties: {
|
|
72
|
-
folders: {
|
|
73
|
-
oneOf: [
|
|
74
|
-
{ type: "string" },
|
|
75
|
-
{
|
|
76
|
-
items: { type: "string" },
|
|
77
|
-
minItems: 1,
|
|
78
|
-
type: "array",
|
|
79
|
-
},
|
|
80
|
-
],
|
|
81
|
-
},
|
|
82
|
-
names: {
|
|
83
|
-
oneOf: [
|
|
84
|
-
{ type: "string" },
|
|
85
|
-
{
|
|
86
|
-
items: { type: "string" },
|
|
87
|
-
minItems: 1,
|
|
88
|
-
type: "array",
|
|
89
|
-
},
|
|
90
|
-
],
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
type: "object",
|
|
94
|
-
},
|
|
95
|
-
],
|
|
96
|
-
type: "problem",
|
|
97
|
-
},
|
|
98
|
-
};
|
|
99
|
-
export { noReexportsOutsideBarrelsRule };
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVscy1ydWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FyY2hpdGVjdHVyZS9jb25zaXN0ZW50LWJhcnJlbC1maWxlcy9uby1yZWV4cG9ydHMtb3V0c2lkZS1iYXJyZWxzLXJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDMUUsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixVQUFVLEVBQ1YsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixjQUFjLEdBQ2YsTUFBTSwwQ0FBMEMsQ0FBQztBQUVsRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxvQkFBb0IsR0FBRyxDQUMzQixPQUF5QixFQUN6QixRQUFnQixFQUNoQixPQUFzQyxFQUNuQixFQUFFO0lBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxJQUFJLFlBQVksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUMxRSxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxDQUFDLElBQWlCO1lBQ3ZCLE1BQU0sYUFBYSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV0RCxLQUFLLE1BQU0sU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbEMsTUFBTSxZQUFZLEdBQ2hCLFNBQVMsQ0FBQyxJQUFJLEtBQUssc0JBQXNCO29CQUN6QyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUssd0JBQXdCO3dCQUMxQyxTQUFTLENBQUMsTUFBTSxLQUFLLElBQUk7d0JBQ3pCLFNBQVMsQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFFakMsTUFBTSx1QkFBdUIsR0FDM0IsU0FBUyxDQUFDLElBQUksS0FBSywwQkFBMEI7b0JBQzdDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLFlBQVk7b0JBQzNDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFaEQsSUFBSSxZQUFZLEVBQUUsQ0FBQztvQkFDakIsT0FBTyxDQUFDLE1BQU0sQ0FBQzt3QkFDYixTQUFTLEVBQUUsb0JBQW9CO3dCQUMvQixJQUFJLEVBQUUsU0FBUztxQkFDaEIsQ0FBQyxDQUFDO2dCQUNMLENBQUM7cUJBQU0sSUFBSSxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLEVBQUUsQ0FBQztvQkFDdkQsT0FBTyxDQUFDLE1BQU0sQ0FBQzt3QkFDYixTQUFTLEVBQUUsa0JBQWtCO3dCQUM3QixJQUFJLEVBQUUsU0FBUztxQkFDaEIsQ0FBQyxDQUFDO2dCQUNMLENBQUM7cUJBQU0sSUFBSSx1QkFBdUIsRUFBRSxDQUFDO29CQUNuQyxPQUFPLENBQUMsTUFBTSxDQUFDO3dCQUNiLFNBQVMsRUFBRSxrQkFBa0I7d0JBQzdCLElBQUksRUFBRSxTQUFTO3FCQUNoQixDQUFDLENBQUM7Z0JBQ0wsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7Ozs7R0FNRztBQUNILE1BQU0sNkJBQTZCLEdBQW9CO0lBQ3JELE1BQU0sQ0FBQyxPQUF5QjtRQUM5QixPQUFPLG9CQUFvQixDQUN6QixPQUFPLEVBQ1AsT0FBTyxDQUFDLFFBQVEsRUFDaEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FDNUIsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsdUJBQXVCLENBQzNCLDhCQUE4QixFQUM5QixpRUFBaUUsQ0FDbEU7UUFDRCxRQUFRLEVBQUU7WUFDUixnQkFBZ0IsRUFDZCwyRUFBMkU7WUFDN0Usa0JBQWtCLEVBQ2hCLHlEQUF5RDtTQUM1RDtRQUNELE1BQU0sRUFBRTtZQUNOO2dCQUNFLG9CQUFvQixFQUFFLEtBQUs7Z0JBQzNCLFVBQVUsRUFBRTtvQkFDVixPQUFPLEVBQUU7d0JBQ1AsS0FBSyxFQUFFOzRCQUNMLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTs0QkFDbEI7Z0NBQ0UsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQ0FDekIsUUFBUSxFQUFFLENBQUM7Z0NBQ1gsSUFBSSxFQUFFLE9BQU87NkJBQ2Q7eUJBQ0Y7cUJBQ0Y7b0JBQ0QsS0FBSyxFQUFFO3dCQUNMLEtBQUssRUFBRTs0QkFDTCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7NEJBQ2xCO2dDQUNFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7Z0NBQ3pCLFFBQVEsRUFBRSxDQUFDO2dDQUNYLElBQUksRUFBRSxPQUFPOzZCQUNkO3lCQUNGO3FCQUNGO2lCQUNGO2dCQUNELElBQUksRUFBRSxRQUFRO2FBQ2Y7U0FDRjtRQUNELElBQUksRUFBRSxTQUFTO0tBQ2hCO0NBQ0YsQ0FBQztBQUVGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBBU1QsIFJ1bGUgfSBmcm9tIFwiZXNsaW50XCI7XG5cbmltcG9ydCB7IGNyZWF0ZVJ1bGVEb2N1bWVudGF0aW9uIH0gZnJvbSBcIi4uLy4uL2N1c3RvbS1ydWxlLWRvY3VtZW50YXRpb25cIjtcbmltcG9ydCB7XG4gIGNvbGxlY3RJbXBvcnRlZE5hbWVzLFxuICBnZXRPcHRpb25zLFxuICBoYXNJbXBvcnRlZEV4cG9ydCxcbiAgaXNCYXJyZWxGaWxlLFxuICBzaG91bGRMaW50RmlsZSxcbn0gZnJvbSBcIi4vbm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVscy11dGlsaXRpZXNcIjtcblxuLyoqXG4gKiBCdWlsZHMgYSBydWxlIGxpc3RlbmVyIGZvciB0aGUgc3VwcGxpZWQgZmlsZS5cbiAqIEBwYXJhbSBjb250ZXh0IFJ1bGUgZXhlY3V0aW9uIGNvbnRleHQuXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUgdG8gbGludC5cbiAqIEBwYXJhbSBvcHRpb25zIE5vcm1hbGl6ZWQgcnVsZSBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIHJ1bGUgbGlzdGVuZXIgZm9yIHRoZSBmaWxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGxpc3RlbmVyID0gYnVpbGRMaXN0ZW5lckZvckZpbGUoY29udGV4dCwgZmlsZW5hbWUsIHN0YXRlKTtcbiAqIGBgYFxuICovXG5jb25zdCBidWlsZExpc3RlbmVyRm9yRmlsZSA9IChcbiAgY29udGV4dDogUnVsZS5SdWxlQ29udGV4dCxcbiAgZmlsZW5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0T3B0aW9ucz4sXG4pOiBSdWxlLlJ1bGVMaXN0ZW5lciA9PiB7XG4gIGlmICghc2hvdWxkTGludEZpbGUoZmlsZW5hbWUsIG9wdGlvbnMpIHx8IGlzQmFycmVsRmlsZShmaWxlbmFtZSwgb3B0aW9ucykpIHtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICByZXR1cm4ge1xuICAgIFByb2dyYW0obm9kZTogQVNULlByb2dyYW0pOiB2b2lkIHtcbiAgICAgIGNvbnN0IGltcG9ydGVkTmFtZXMgPSBjb2xsZWN0SW1wb3J0ZWROYW1lcyhub2RlLmJvZHkpO1xuXG4gICAgICBmb3IgKGNvbnN0IHN0YXRlbWVudCBvZiBub2RlLmJvZHkpIHtcbiAgICAgICAgY29uc3QgaXNFeHBvcnRGcm9tID1cbiAgICAgICAgICBzdGF0ZW1lbnQudHlwZSA9PT0gXCJFeHBvcnRBbGxEZWNsYXJhdGlvblwiIHx8XG4gICAgICAgICAgKHN0YXRlbWVudC50eXBlID09PSBcIkV4cG9ydE5hbWVkRGVjbGFyYXRpb25cIiAmJlxuICAgICAgICAgICAgc3RhdGVtZW50LnNvdXJjZSAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgc3RhdGVtZW50LnNvdXJjZSAhPT0gdm9pZCAwKTtcblxuICAgICAgICBjb25zdCBpc0ltcG9ydGVkRGVmYXVsdEV4cG9ydCA9XG4gICAgICAgICAgc3RhdGVtZW50LnR5cGUgPT09IFwiRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uXCIgJiZcbiAgICAgICAgICBzdGF0ZW1lbnQuZGVjbGFyYXRpb24udHlwZSA9PT0gXCJJZGVudGlmaWVyXCIgJiZcbiAgICAgICAgICBpbXBvcnRlZE5hbWVzLmhhcyhzdGF0ZW1lbnQuZGVjbGFyYXRpb24ubmFtZSk7XG5cbiAgICAgICAgaWYgKGlzRXhwb3J0RnJvbSkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG1lc3NhZ2VJZDogXCJyZWV4cG9ydE5vdEFsbG93ZWRcIixcbiAgICAgICAgICAgIG5vZGU6IHN0YXRlbWVudCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChoYXNJbXBvcnRlZEV4cG9ydChzdGF0ZW1lbnQsIGltcG9ydGVkTmFtZXMpKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgbWVzc2FnZUlkOiBcInJlZXhwb3J0ZWRJbXBvcnRcIixcbiAgICAgICAgICAgIG5vZGU6IHN0YXRlbWVudCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0ltcG9ydGVkRGVmYXVsdEV4cG9ydCkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG1lc3NhZ2VJZDogXCJyZWV4cG9ydGVkSW1wb3J0XCIsXG4gICAgICAgICAgICBub2RlOiBzdGF0ZW1lbnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICB9O1xufTtcblxuLyoqXG4gKiBFU0xpbnQgcnVsZSBwcmV2ZW50aW5nIHJlLWV4cG9ydHMgb3V0c2lkZSBiYXJyZWwgZmlsZXMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcnVsZSA9IG5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNSdWxlO1xuICogYGBgXG4gKi9cbmNvbnN0IG5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNSdWxlOiBSdWxlLlJ1bGVNb2R1bGUgPSB7XG4gIGNyZWF0ZShjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0KTogUnVsZS5SdWxlTGlzdGVuZXIge1xuICAgIHJldHVybiBidWlsZExpc3RlbmVyRm9yRmlsZShcbiAgICAgIGNvbnRleHQsXG4gICAgICBjb250ZXh0LmZpbGVuYW1lLFxuICAgICAgZ2V0T3B0aW9ucyhjb250ZXh0Lm9wdGlvbnMpLFxuICAgICk7XG4gIH0sXG4gIG1ldGE6IHtcbiAgICBkb2NzOiBjcmVhdGVSdWxlRG9jdW1lbnRhdGlvbihcbiAgICAgIFwibm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVsc1wiLFxuICAgICAgXCJSZXF1aXJlIG5vbi1iYXJyZWwgZmlsZXMgdG8gZXhwb3J0IG9ubHkgbG9jYWxseSBkZWZpbmVkIHZhbHVlcy5cIixcbiAgICApLFxuICAgIG1lc3NhZ2VzOiB7XG4gICAgICByZWV4cG9ydGVkSW1wb3J0OlxuICAgICAgICBcIk5vbi1iYXJyZWwgZmlsZXMgbXVzdCBub3QgZXhwb3J0IGlkZW50aWZpZXJzIGltcG9ydGVkIGZyb20gb3RoZXIgbW9kdWxlcy5cIixcbiAgICAgIHJlZXhwb3J0Tm90QWxsb3dlZDpcbiAgICAgICAgXCJOb24tYmFycmVsIGZpbGVzIG11c3Qgbm90IHJlLWV4cG9ydCBmcm9tIG90aGVyIG1vZHVsZXMuXCIsXG4gICAgfSxcbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgZm9sZGVyczoge1xuICAgICAgICAgICAgb25lT2Y6IFtcbiAgICAgICAgICAgICAgeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpdGVtczogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAgICAgICAgbWluSXRlbXM6IDEsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG5hbWVzOiB7XG4gICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgICAgICAgICBtaW5JdGVtczogMSxcbiAgICAgICAgICAgICAgICB0eXBlOiBcImFycmF5XCIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IFwib2JqZWN0XCIsXG4gICAgICB9LFxuICAgIF0sXG4gICAgdHlwZTogXCJwcm9ibGVtXCIsXG4gIH0sXG59O1xuXG5leHBvcnQgeyBub1JlZXhwb3J0c091dHNpZGVCYXJyZWxzUnVsZSB9O1xuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"no-reexports-outside-barrels-test-utilities.d.ts","sourceRoot":"","sources":["../../../src/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAC;AAKtC,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,SAAS,CAAC;AA0BhE,qCAAqC;AACrC,UAAU,UAAU;IAClB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAiBD,qCAAqC;AACrC,UAAU,eAAe;IACvB,qCAAqC;IACrC,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC;IAElE,uCAAuC;IACvC,mBAAmB,EAAE,CACnB,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAC5B,OAAO,CAAC,EAAE,gCAAgC,KACvC,UAAU,EAAE,CAAC;IAElB,qCAAqC;IACrC,iBAAiB,EAAE,CACjB,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAC5B,OAAO,CAAC,EAAE,gCAAgC,KACvC,UAAU,EAAE,CAAC;CACnB;AAkCD;;;;;;;;;;GAUG;AACH,QAAA,MAAM,OAAO,GACX,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAC5B,UAAU,gCAAgC,KACzC,UAAU,EAeZ,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,qBAAqB,GACzB,sBAAsB,MAAM,EAAE,KAC7B,eAmCF,CAAC;AAEF,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC"}
|
package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.js
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { SourceCode } from "eslint";
|
|
2
|
-
import path from "node:path";
|
|
3
|
-
import { noReexportsOutsideBarrelsRule } from "./no-reexports-outside-barrels-rule";
|
|
4
|
-
import { createProgram, createRepoDirectory } from "./test-helpers";
|
|
5
|
-
/**
|
|
6
|
-
* Builds a rule context for running the rule.
|
|
7
|
-
* @param parameters Context parameters and report sink.
|
|
8
|
-
* @returns The ESLint rule context.
|
|
9
|
-
* @example
|
|
10
|
-
* ```typescript
|
|
11
|
-
* const context = createRuleContext({ filename, reports, sourceCode });
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
const createRuleContext = (parameters) => ({
|
|
15
|
-
cwd: process.cwd(),
|
|
16
|
-
filename: parameters.filename,
|
|
17
|
-
id: "no-reexports-outside-barrels",
|
|
18
|
-
languageOptions: {
|
|
19
|
-
ecmaVersion: "latest",
|
|
20
|
-
sourceType: "module",
|
|
21
|
-
},
|
|
22
|
-
options: parameters.options === void 0 ? [] : [parameters.options],
|
|
23
|
-
parserOptions: {},
|
|
24
|
-
parserPath: void 0,
|
|
25
|
-
physicalFilename: parameters.filename,
|
|
26
|
-
report: (report) => {
|
|
27
|
-
const { messageId } = report;
|
|
28
|
-
parameters.reports.push({ messageId });
|
|
29
|
-
},
|
|
30
|
-
settings: {},
|
|
31
|
-
sourceCode: parameters.sourceCode,
|
|
32
|
-
});
|
|
33
|
-
/**
|
|
34
|
-
* Runs the rule against the provided AST body.
|
|
35
|
-
* @param filename Target filename.
|
|
36
|
-
* @param body AST program body.
|
|
37
|
-
* @param options Rule options when provided.
|
|
38
|
-
* @returns The captured rule reports.
|
|
39
|
-
* @example
|
|
40
|
-
* ```typescript
|
|
41
|
-
* const reports = runRule("feature.ts", createBody());
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
|
-
const runRule = (filename, body, options) => {
|
|
45
|
-
const reports = [];
|
|
46
|
-
const sourceCode = new SourceCode("", createProgram(body));
|
|
47
|
-
const context = createRuleContext({
|
|
48
|
-
filename,
|
|
49
|
-
reports,
|
|
50
|
-
sourceCode,
|
|
51
|
-
...(options === void 0 ? {} : { options }),
|
|
52
|
-
});
|
|
53
|
-
const listeners = noReexportsOutsideBarrelsRule.create(context);
|
|
54
|
-
const programListener = listeners.Program;
|
|
55
|
-
programListener?.(context.sourceCode.ast);
|
|
56
|
-
return reports;
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* Creates temporary file runners for the rule.
|
|
60
|
-
* @param temporaryDirectories Directories created during the run.
|
|
61
|
-
* @returns Helpers for running the rule in temp folders.
|
|
62
|
-
* @example
|
|
63
|
-
* ```typescript
|
|
64
|
-
* const runner = createTemporaryRunner([]);
|
|
65
|
-
* ```
|
|
66
|
-
*/
|
|
67
|
-
const createTemporaryRunner = (temporaryDirectories) => {
|
|
68
|
-
const runForTemporaryFile = (options) => {
|
|
69
|
-
const directory = createRepoDirectory(options.root);
|
|
70
|
-
temporaryDirectories.push(directory);
|
|
71
|
-
const filePath = path.join(directory, options.filename);
|
|
72
|
-
return runRule(filePath, options.body, options.options);
|
|
73
|
-
};
|
|
74
|
-
const runDefaultFeature = (body) => runForTemporaryFile({ body, filename: "feature.ts", root: "src" });
|
|
75
|
-
const runTemporaryFeature = (body, options) => runForTemporaryFile({
|
|
76
|
-
body,
|
|
77
|
-
filename: "feature.ts",
|
|
78
|
-
root: "tmp",
|
|
79
|
-
...(options === void 0 ? {} : { options }),
|
|
80
|
-
});
|
|
81
|
-
const runTemporaryIndex = (body, options) => runForTemporaryFile({
|
|
82
|
-
body,
|
|
83
|
-
filename: "index.ts",
|
|
84
|
-
root: "tmp",
|
|
85
|
-
...(options === void 0 ? {} : { options }),
|
|
86
|
-
});
|
|
87
|
-
return { runDefaultFeature, runTemporaryFeature, runTemporaryIndex };
|
|
88
|
-
};
|
|
89
|
-
export { createTemporaryRunner, runRule };
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVscy10ZXN0LXV0aWxpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcmNoaXRlY3R1cmUvY29uc2lzdGVudC1iYXJyZWwtZmlsZXMvbm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVscy10ZXN0LXV0aWxpdGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUk3QixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRixPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUE4RHBFOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUN4QixVQUFpQyxFQUNmLEVBQUUsQ0FDcEIsQ0FBQztJQUNDLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFO0lBQ2xCLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUTtJQUM3QixFQUFFLEVBQUUsOEJBQThCO0lBQ2xDLGVBQWUsRUFBRTtRQUNmLFdBQVcsRUFBRSxRQUFRO1FBQ3JCLFVBQVUsRUFBRSxRQUFRO0tBQ3JCO0lBQ0QsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDO0lBQ2xFLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLFVBQVUsRUFBRSxLQUFLLENBQUM7SUFDbEIsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLFFBQVE7SUFDckMsTUFBTSxFQUFFLENBQUMsTUFBNkIsRUFBUSxFQUFFO1FBQzlDLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUF1QyxDQUFDO1FBQzlELFVBQVUsQ0FBQyxPQUFP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cm9tIFwiZXNsaW50XCI7XG5pbXBvcnQgdHlwZSAqIGFzIEVTVHJlZSBmcm9tIFwiZXN0cmVlXCI7XG5cbmltcG9ydCB7IFNvdXJjZUNvZGUgfSBmcm9tIFwiZXNsaW50XCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5cbmltcG9ydCB0eXBlIHsgTm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc09wdGlvbnMgfSBmcm9tIFwiLi90eXBlc1wiO1xuXG5pbXBvcnQgeyBub1JlZXhwb3J0c091dHNpZGVCYXJyZWxzUnVsZSB9IGZyb20gXCIuL25vLXJlZXhwb3J0cy1vdXRzaWRlLWJhcnJlbHMtcnVsZVwiO1xuaW1wb3J0IHsgY3JlYXRlUHJvZ3JhbSwgY3JlYXRlUmVwb0RpcmVjdG9yeSB9IGZyb20gXCIuL3Rlc3QtaGVscGVyc1wiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgUmVwb3J0RGVzY3JpcHRvcldpdGhNZXNzYWdlSWQge1xuICAvKiogTWVzc2FnZUlkIGZpZWxkIHZhbHVlLiAqL1xuICBtZXNzYWdlSWQ/OiBzdHJpbmc7XG59XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBSdWxlQ29udGV4dFBhcmFtZXRlcnMge1xuICAvKiogRmlsZW5hbWUgZmllbGQgdmFsdWUuICovXG4gIGZpbGVuYW1lOiBzdHJpbmc7XG5cbiAgLyoqIE9wdGlvbnMgaGVscGVyIHZhbHVlLiAqL1xuICBvcHRpb25zPzogTm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc09wdGlvbnM7XG5cbiAgLyoqIFJlcG9ydHMgZmllbGQgdmFsdWUuICovXG4gIHJlcG9ydHM6IFJ1bGVSZXBvcnRbXTtcblxuICAvKiogU291cmNlQ29kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgc291cmNlQ29kZTogU291cmNlQ29kZTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFJ1bGVSZXBvcnQge1xuICAvKiogTWVzc2FnZUlkIGhlbHBlciB2YWx1ZS4gKi9cbiAgbWVzc2FnZUlkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBUZW1wb3JhcnlGaWxlT3B0aW9ucyB7XG4gIC8qKiBCb2R5IGZpZWxkIHZhbHVlLiAqL1xuICBib2R5OiBFU1RyZWUuUHJvZ3JhbVtcImJvZHlcIl07XG5cbiAgLyoqIEZpbGVuYW1lIGZpZWxkIHZhbHVlLiAqL1xuICBmaWxlbmFtZTogc3RyaW5nO1xuXG4gIC8qKiBPcHRpb25zIGhlbHBlciB2YWx1ZS4gKi9cbiAgb3B0aW9ucz86IE5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNPcHRpb25zO1xuXG4gIC8qKiBSb290IGZpZWxkIHZhbHVlLiAqL1xuICByb290OiBcInNyY1wiIHwgXCJ0bXBcIjtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFRlbXBvcmFyeVJ1bm5lciB7XG4gIC8qKiBSdW5EZWZhdWx0RmVhdHVyZSBmaWVsZCB2YWx1ZS4gKi9cbiAgcnVuRGVmYXVsdEZlYXR1cmU6IChib2R5OiBFU1RyZWUuUHJvZ3JhbVtcImJvZHlcIl0pID0+IFJ1bGVSZXBvcnRbXTtcblxuICAvKiogUnVuVGVtcG9yYXJ5RmVhdHVyZSBmaWVsZCB2YWx1ZS4gKi9cbiAgcnVuVGVtcG9yYXJ5RmVhdHVyZTogKFxuICAgIGJvZHk6IEVTVHJlZS5Qcm9ncmFtW1wiYm9keVwiXSxcbiAgICBvcHRpb25zPzogTm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc09wdGlvbnMsXG4gICkgPT4gUnVsZVJlcG9ydFtdO1xuXG4gIC8qKiBSdW5UZW1wb3JhcnlJbmRleCBmaWVsZCB2YWx1ZS4gKi9cbiAgcnVuVGVtcG9yYXJ5SW5kZXg6IChcbiAgICBib2R5OiBFU1RyZWUuUHJvZ3JhbVtcImJvZHlcIl0sXG4gICAgb3B0aW9ucz86IE5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNPcHRpb25zLFxuICApID0+IFJ1bGVSZXBvcnRbXTtcbn1cblxuLyoqXG4gKiBCdWlsZHMgYSBydWxlIGNvbnRleHQgZm9yIHJ1bm5pbmcgdGhlIHJ1bGUuXG4gKiBAcGFyYW0gcGFyYW1ldGVycyBDb250ZXh0IHBhcmFtZXRlcnMgYW5kIHJlcG9ydCBzaW5rLlxuICogQHJldHVybnMgVGhlIEVTTGludCBydWxlIGNvbnRleHQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgY29udGV4dCA9IGNyZWF0ZVJ1bGVDb250ZXh0KHsgZmlsZW5hbWUsIHJlcG9ydHMsIHNvdXJjZUNvZGUgfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlUnVsZUNvbnRleHQgPSAoXG4gIHBhcmFtZXRlcnM6IFJ1bGVDb250ZXh0UGFyYW1ldGVycyxcbik6IFJ1bGUuUnVsZUNvbnRleHQgPT5cbiAgKHtcbiAgICBjd2Q6IHByb2Nlc3MuY3dkKCksXG4gICAgZmlsZW5hbWU6IHBhcmFtZXRlcnMuZmlsZW5hbWUsXG4gICAgaWQ6IFwibm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVsc1wiLFxuICAgIGxhbmd1YWdlT3B0aW9uczoge1xuICAgICAgZWNtYVZlcnNpb246IFwibGF0ZXN0XCIsXG4gICAgICBzb3VyY2VUeXBlOiBcIm1vZHVsZVwiLFxuICAgIH0sXG4gICAgb3B0aW9uczogcGFyYW1ldGVycy5vcHRpb25zID09PSB2b2lkIDAgPyBbXSA6IFtwYXJhbWV0ZXJzLm9wdGlvbnNdLFxuICAgIHBhcnNlck9wdGlvbnM6IHt9LFxuICAgIHBhcnNlclBhdGg6IHZvaWQgMCxcbiAgICBwaHlzaWNhbEZpbGVuYW1lOiBwYXJhbWV0ZXJzLmZpbGVuYW1lLFxuICAgIHJlcG9ydDogKHJlcG9ydDogUnVsZS5SZXBvcnREZXNjcmlwdG9yKTogdm9pZCA9PiB7XG4gICAgICBjb25zdCB7IG1lc3NhZ2VJZCB9ID0gcmVwb3J0IGFzIFJlcG9ydERlc2NyaXB0b3JXaXRoTWVzc2FnZUlkO1xuICAgICAgcGFyYW1ldGVycy5yZXBvcnRzLnB1c2goeyBtZXNzYWdlSWQgfSk7XG4gICAgfSxcbiAgICBzZXR0aW5nczoge30sXG4gICAgc291cmNlQ29kZTogcGFyYW1ldGVycy5zb3VyY2VDb2RlLFxuICB9KSBhcyB1bmtub3duIGFzIFJ1bGUuUnVsZUNvbnRleHQ7XG5cbi8qKlxuICogUnVucyB0aGUgcnVsZSBhZ2FpbnN0IHRoZSBwcm92aWRlZCBBU1QgYm9keS5cbiAqIEBwYXJhbSBmaWxlbmFtZSBUYXJnZXQgZmlsZW5hbWUuXG4gKiBAcGFyYW0gYm9keSBBU1QgcHJvZ3JhbSBib2R5LlxuICogQHBhcmFtIG9wdGlvbnMgUnVsZSBvcHRpb25zIHdoZW4gcHJvdmlkZWQuXG4gKiBAcmV0dXJucyBUaGUgY2FwdHVyZWQgcnVsZSByZXBvcnRzLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlcG9ydHMgPSBydW5SdWxlKFwiZmVhdHVyZS50c1wiLCBjcmVhdGVCb2R5KCkpO1xuICogYGBgXG4gKi9cbmNvbnN0IHJ1blJ1bGUgPSAoXG4gIGZpbGVuYW1lOiBzdHJpbmcsXG4gIGJvZHk6IEVTVHJlZS5Qcm9ncmFtW1wiYm9keVwiXSxcbiAgb3B0aW9ucz86IE5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNPcHRpb25zLFxuKTogUnVsZVJlcG9ydFtdID0+IHtcbiAgY29uc3QgcmVwb3J0czogUnVsZVJlcG9ydFtdID0gW107XG4gIGNvbnN0IHNvdXJjZUNvZGUgPSBuZXcgU291cmNlQ29kZShcIlwiLCBjcmVhdGVQcm9ncmFtKGJvZHkpKTtcbiAgY29uc3QgY29udGV4dCA9IGNyZWF0ZVJ1bGVDb250ZXh0KHtcbiAgICBmaWxlbmFtZSxcbiAgICByZXBvcnRzLFxuICAgIHNvdXJjZUNvZGUsXG4gICAgLi4uKG9wdGlvbnMgPT09IHZvaWQgMCA/IHt9IDogeyBvcHRpb25zIH0pLFxuICB9KTtcbiAgY29uc3QgbGlzdGVuZXJzID0gbm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc1J1bGUuY3JlYXRlKGNvbnRleHQpO1xuICBjb25zdCBwcm9ncmFtTGlzdGVuZXIgPSBsaXN0ZW5lcnMuUHJvZ3JhbTtcblxuICBwcm9ncmFtTGlzdGVuZXI/Lihjb250ZXh0LnNvdXJjZUNvZGUuYXN0KTtcblxuICByZXR1cm4gcmVwb3J0cztcbn07XG5cbi8qKlxuICogQ3JlYXRlcyB0ZW1wb3JhcnkgZmlsZSBydW5uZXJzIGZvciB0aGUgcnVsZS5cbiAqIEBwYXJhbSB0ZW1wb3JhcnlEaXJlY3RvcmllcyBEaXJlY3RvcmllcyBjcmVhdGVkIGR1cmluZyB0aGUgcnVuLlxuICogQHJldHVybnMgSGVscGVycyBmb3IgcnVubmluZyB0aGUgcnVsZSBpbiB0ZW1wIGZvbGRlcnMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcnVubmVyID0gY3JlYXRlVGVtcG9yYXJ5UnVubmVyKFtdKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVUZW1wb3JhcnlSdW5uZXIgPSAoXG4gIHRlbXBvcmFyeURpcmVjdG9yaWVzOiBzdHJpbmdbXSxcbik6IFRlbXBvcmFyeVJ1bm5lciA9PiB7XG4gIGNvbnN0IHJ1bkZvclRlbXBvcmFyeUZpbGUgPSAob3B0aW9uczogVGVtcG9yYXJ5RmlsZU9wdGlvbnMpOiBSdWxlUmVwb3J0W10gPT4ge1xuICAgIGNvbnN0IGRpcmVjdG9yeSA9IGNyZWF0ZVJlcG9EaXJlY3Rvcnkob3B0aW9ucy5yb290KTtcbiAgICB0ZW1wb3JhcnlEaXJlY3Rvcmllcy5wdXNoKGRpcmVjdG9yeSk7XG4gICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZGlyZWN0b3J5LCBvcHRpb25zLmZpbGVuYW1lKTtcblxuICAgIHJldHVybiBydW5SdWxlKGZpbGVQYXRoLCBvcHRpb25zLmJvZHksIG9wdGlvbnMub3B0aW9ucyk7XG4gIH07XG5cbiAgY29uc3QgcnVuRGVmYXVsdEZlYXR1cmUgPSAoYm9keTogRVNUcmVlLlByb2dyYW1bXCJib2R5XCJdKTogUnVsZVJlcG9ydFtdID0+XG4gICAgcnVuRm9yVGVtcG9yYXJ5RmlsZSh7IGJvZHksIGZpbGVuYW1lOiBcImZlYXR1cmUudHNcIiwgcm9vdDogXCJzcmNcIiB9KTtcblxuICBjb25zdCBydW5UZW1wb3JhcnlGZWF0dXJlID0gKFxuICAgIGJvZHk6IEVTVHJlZS5Qcm9ncmFtW1wiYm9keVwiXSxcbiAgICBvcHRpb25zPzogTm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc09wdGlvbnMsXG4gICk6IFJ1bGVSZXBvcnRbXSA9PlxuICAgIHJ1bkZvclRlbXBvcmFyeUZpbGUoe1xuICAgICAgYm9keSxcbiAgICAgIGZpbGVuYW1lOiBcImZlYXR1cmUudHNcIixcbiAgICAgIHJvb3Q6IFwidG1wXCIsXG4gICAgICAuLi4ob3B0aW9ucyA9PT0gdm9pZCAwID8ge30gOiB7IG9wdGlvbnMgfSksXG4gICAgfSk7XG5cbiAgY29uc3QgcnVuVGVtcG9yYXJ5SW5kZXggPSAoXG4gICAgYm9keTogRVNUcmVlLlByb2dyYW1bXCJib2R5XCJdLFxuICAgIG9wdGlvbnM/OiBOb1JlZXhwb3J0c091dHNpZGVCYXJyZWxzT3B0aW9ucyxcbiAgKTogUnVsZVJlcG9ydFtdID0+XG4gICAgcnVuRm9yVGVtcG9yYXJ5RmlsZSh7XG4gICAgICBib2R5LFxuICAgICAgZmlsZW5hbWU6IFwiaW5kZXgudHNcIixcbiAgICAgIHJvb3Q6IFwidG1wXCIsXG4gICAgICAuLi4ob3B0aW9ucyA9PT0gdm9pZCAwID8ge30gOiB7IG9wdGlvbnMgfSksXG4gICAgfSk7XG5cbiAgcmV0dXJuIHsgcnVuRGVmYXVsdEZlYXR1cmUsIHJ1blRlbXBvcmFyeUZlYXR1cmUsIHJ1blRlbXBvcmFyeUluZGV4IH07XG59O1xuXG5leHBvcnQgeyBjcmVhdGVUZW1wb3JhcnlSdW5uZXIsIHJ1blJ1bGUgfTtcbiJdfQ==
|
package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"no-reexports-outside-barrels-utilities.d.ts","sourceRoot":"","sources":["../../../src/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAalC,qCAAqC;AACrC,UAAU,8BAA8B;IACtC,2BAA2B;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB,yBAAyB;IACzB,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,4BAA4B;IAC5B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACvB;AA4BD;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU,GACd,SAAS,SAAS,OAAO,EAAE,KAC1B,8BAMF,CAAC;AAgDF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,GAClB,UAAU,MAAM,EAChB,SAAS,8BAA8B,KACtC,OAUF,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,YAAY,GAChB,UAAU,MAAM,EAChB,SAAS,8BAA8B,KACtC,OAEF,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,oBAAoB,GAAI,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAG,GAAG,CAAC,MAAM,CAYnE,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,iBAAiB,GACrB,WAAW,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACtC,eAAe,GAAG,CAAC,MAAM,CAAC,KACzB,OAcF,CAAC;AAEF,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,CAAC"}
|