@codeperfect/eslint-plugin 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +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 +140 -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 +85 -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 +43 -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 +219 -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 +145 -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} +1 -1
- package/dist/domain/custom-rule-documentation.d.ts.map +1 -0
- package/dist/domain/custom-rule-documentation.js +35 -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 +168 -0
- package/dist/domain/docs/no-interface-member-docs/test-helpers.d.ts.map +1 -0
- package/dist/domain/docs/no-interface-member-docs/test-helpers.js +157 -0
- 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 +34 -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.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 +196 -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 +92 -0
- package/dist/domain/testing/aaa/analyzer.analysis.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.analysis.helpers.d.ts +4 -0
- package/dist/domain/testing/aaa/analyzer.analysis.helpers.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.analysis.helpers.js +4 -0
- package/dist/domain/testing/aaa/analyzer.analysis.js +247 -0
- package/dist/domain/testing/aaa/analyzer.assertions.d.ts +93 -0
- package/dist/domain/testing/aaa/analyzer.assertions.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.assertions.js +283 -0
- package/dist/domain/testing/aaa/analyzer.classification.d.ts +75 -0
- package/dist/domain/testing/aaa/analyzer.classification.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.classification.js +201 -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.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 +107 -0
- package/dist/domain/testing/aaa/analyzer.super.d.ts.map +1 -0
- package/dist/domain/testing/aaa/analyzer.super.js +228 -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 +113 -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.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 +34 -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 +85 -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 +36 -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 +86 -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 +150 -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 +81 -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 +189 -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 +92 -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 +62 -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 +203 -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 +129 -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 +217 -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 +106 -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 +57 -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 +34 -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 +54 -27
- 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/test-helpers.js +0 -157
- 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.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/rule.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
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { createRuleDocumentation } from "../../custom-rule-documentation.js";
|
|
2
|
+
/**
|
|
3
|
+
* Gets a nested type annotation from parameter wrappers.
|
|
4
|
+
* @param node Parameter wrapper node.
|
|
5
|
+
* @returns The nested type annotation when present.
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* const annotation = getNestedTypeAnnotation({ argument: node });
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
const getNestedTypeAnnotation = (node) => {
|
|
12
|
+
if (node.argument !== void 0) {
|
|
13
|
+
return getTypeAnnotationNode(node.argument);
|
|
14
|
+
}
|
|
15
|
+
if (node.parameter !== void 0) {
|
|
16
|
+
return getTypeAnnotationNode(node.parameter);
|
|
17
|
+
}
|
|
18
|
+
return void 0;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Extracts the type annotation from a node.
|
|
22
|
+
* @param node Node that may contain a type annotation.
|
|
23
|
+
* @returns The type annotation when present.
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* const annotation = getTypeAnnotationNode(node);
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
const getTypeAnnotationNode = (node) => {
|
|
30
|
+
if (node === null || typeof node !== "object") {
|
|
31
|
+
return void 0;
|
|
32
|
+
}
|
|
33
|
+
const directTypeAnnotation = node.typeAnnotation
|
|
34
|
+
?.typeAnnotation;
|
|
35
|
+
if (directTypeAnnotation !== void 0) {
|
|
36
|
+
return directTypeAnnotation;
|
|
37
|
+
}
|
|
38
|
+
return getNestedTypeAnnotation(node);
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Gets the return type annotation for a function-like node.
|
|
42
|
+
* @param node Node that may contain a return type.
|
|
43
|
+
* @returns The return type annotation when present.
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const annotation = getReturnTypeAnnotation(node);
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
const getReturnTypeAnnotation = (node) => {
|
|
50
|
+
if (node === null || typeof node !== "object") {
|
|
51
|
+
return void 0;
|
|
52
|
+
}
|
|
53
|
+
const typedNode = node;
|
|
54
|
+
return typedNode.returnType?.typeAnnotation;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Gets getParameters.
|
|
58
|
+
* @param node Input node value.
|
|
59
|
+
* @returns Return value output.
|
|
60
|
+
* @example
|
|
61
|
+
* ```typescript
|
|
62
|
+
* getParameters();
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
const getParameters = (node) => {
|
|
66
|
+
if (node === null || typeof node !== "object") {
|
|
67
|
+
return [];
|
|
68
|
+
}
|
|
69
|
+
const typedNode = node;
|
|
70
|
+
return Array.isArray(typedNode.params) ? typedNode.params : [];
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Checks whether the node represents a type literal.
|
|
74
|
+
* @param node Type annotation node to check.
|
|
75
|
+
* @returns True when the node is a type literal.
|
|
76
|
+
* @example
|
|
77
|
+
* ```typescript
|
|
78
|
+
* const isLiteral = isTypeLiteral(annotation);
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
const isTypeLiteral = (node) => node?.type === "TSTypeLiteral";
|
|
82
|
+
/**
|
|
83
|
+
* Reports an inline object type annotation.
|
|
84
|
+
* @param context Rule execution context.
|
|
85
|
+
* @param typeAnnotation Type annotation node to report.
|
|
86
|
+
* @example
|
|
87
|
+
* ```typescript
|
|
88
|
+
* reportTypeLiteral(context, typeAnnotation);
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
const reportTypeLiteral = (context, typeAnnotation) => {
|
|
92
|
+
context.report({
|
|
93
|
+
messageId: "preferNamedObject",
|
|
94
|
+
node: typeAnnotation,
|
|
95
|
+
});
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* Checks function-like nodes for inline object types.
|
|
99
|
+
* @param context Rule execution context.
|
|
100
|
+
* @param node Function-like node to check.
|
|
101
|
+
* @example
|
|
102
|
+
* ```typescript
|
|
103
|
+
* checkFunctionLike(context, node);
|
|
104
|
+
* ```
|
|
105
|
+
*/
|
|
106
|
+
const checkFunctionLike = (context, node) => {
|
|
107
|
+
for (const parameter of getParameters(node)) {
|
|
108
|
+
const typeAnnotation = getTypeAnnotationNode(parameter);
|
|
109
|
+
if (isTypeLiteral(typeAnnotation)) {
|
|
110
|
+
reportTypeLiteral(context, typeAnnotation);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
const returnTypeAnnotation = getReturnTypeAnnotation(node);
|
|
114
|
+
if (isTypeLiteral(returnTypeAnnotation)) {
|
|
115
|
+
reportTypeLiteral(context, returnTypeAnnotation);
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
/** ESLint rule requiring named interface/type aliases for object types. */
|
|
119
|
+
const preferInterfaceTypesRule = {
|
|
120
|
+
create(context) {
|
|
121
|
+
const listener = (node) => {
|
|
122
|
+
checkFunctionLike(context, node);
|
|
123
|
+
};
|
|
124
|
+
return {
|
|
125
|
+
ArrowFunctionExpression: listener,
|
|
126
|
+
FunctionDeclaration: listener,
|
|
127
|
+
FunctionExpression: listener,
|
|
128
|
+
TSCallSignatureDeclaration: listener,
|
|
129
|
+
TSConstructSignatureDeclaration: listener,
|
|
130
|
+
TSDeclareFunction: listener,
|
|
131
|
+
TSFunctionType: listener,
|
|
132
|
+
TSMethodSignature: listener,
|
|
133
|
+
};
|
|
134
|
+
},
|
|
135
|
+
meta: {
|
|
136
|
+
docs: createRuleDocumentation("prefer-interface-types", "Require named interfaces or type aliases for object types in parameters and return types."),
|
|
137
|
+
messages: {
|
|
138
|
+
preferNamedObject: "Use a named interface or type alias instead of an inline object type.",
|
|
139
|
+
},
|
|
140
|
+
schema: [],
|
|
141
|
+
type: "suggestion",
|
|
142
|
+
},
|
|
143
|
+
};
|
|
144
|
+
export { preferInterfaceTypesRule };
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vY29yZS9wcmVmZXItaW50ZXJmYWNlLXR5cGVzL3J1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFxQzFFOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRyxDQUM5QixJQUF3QixFQUNRLEVBQUU7SUFDbEMsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDN0IsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQyxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxDQUM1QixJQUFhLEVBQ21CLEVBQUU7SUFDbEMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlDLE9BQU8sS0FBSyxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sb0JBQW9CLEdBQUksSUFBZ0MsQ0FBQyxjQUFjO1FBQzNFLEVBQUUsY0FBYyxDQUFDO0lBRW5CLElBQUksb0JBQW9CLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUM7SUFFRCxPQUFPLHVCQUF1QixDQUFDLElBQTBCLENBQUMsQ0FBQztBQUM3RCxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sdUJBQXVCLEdBQUcsQ0FDOUIsSUFBYSxFQUNtQixFQUFFO0lBQ2xDLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QyxPQUFPLEtBQUssQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxJQUF3QixDQUFDO0lBRTNDLE9BQU8sU0FBUyxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLGFBQWEsR0FBRyxDQUFDLElBQWEsRUFBYSxFQUFFO0lBQ2pELElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QyxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxJQUF3QixDQUFDO0lBRTNDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNqRSxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sYUFBYSxHQUFHLENBQ3BCLElBQW9DLEVBQ1IsRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLEtBQUssZUFBZSxDQUFDO0FBRWhFOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUN4QixPQUF5QixFQUN6QixjQUFrQyxFQUM1QixFQUFFO0lBQ1IsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUNiLFNBQVMsRUFBRSxtQkFBbUI7UUFDOUIsSUFBSSxFQUFFLGNBQXNDO0tBQzdDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUN4QixPQUF5QixFQUN6QixJQUFlLEVBQ1QsRUFBRTtJQUNSLEtBQUssTUFBTSxTQUFTLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDNUMsTUFBTSxjQUFjLEdBQUcscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFeEQsSUFBSSxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLG9CQUFvQixHQUFHLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTNELElBQUksYUFBYSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztRQUN4QyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztJQUNuRCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsMkVBQTJFO0FBQzNFLE1BQU0sd0JBQXdCLEdBQW9CO0lBQ2hELE1BQU0sQ0FBQyxPQUF5QjtRQUM5QixNQUFNLFFBQVEsR0FBRyxDQUFDLElBQWUsRUFBUSxFQUFFO1lBQ3pDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUM7UUFFRixPQUFPO1lBQ0wsdUJBQXVCLEVBQUUsUUFBUTtZQUNqQyxtQkFBbUIsRUFBRSxRQUFRO1lBQzdCLGtCQUFrQixFQUFFLFFBQVE7WUFDNUIsMEJBQTBCLEVBQUUsUUFBUTtZQUNwQywrQkFBK0IsRUFBRSxRQUFRO1lBQ3pDLGlCQUFpQixFQUFFLFFBQVE7WUFDM0IsY0FBYyxFQUFFLFFBQVE7WUFDeEIsaUJBQWlCLEVBQUUsUUFBUTtTQUM1QixDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksRUFBRTtRQUNKLElBQUksRUFBRSx1QkFBdUIsQ0FDM0Isd0JBQXdCLEVBQ3hCLDJGQUEyRixDQUM1RjtRQUNELFFBQVEsRUFBRTtZQUNSLGlCQUFpQixFQUNmLHVFQUF1RTtTQUMxRTtRQUNELE1BQU0sRUFBRSxFQUFFO1FBQ1YsSUFBSSxFQUFFLFlBQVk7S0FDbkI7Q0FDRixDQUFDO0FBRUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJ1bGUgfSBmcm9tIFwiZXNsaW50XCI7XG5cbmltcG9ydCB7IGNyZWF0ZVJ1bGVEb2N1bWVudGF0aW9uIH0gZnJvbSBcIi4uLy4uL2N1c3RvbS1ydWxlLWRvY3VtZW50YXRpb25cIjtcbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBGdW5jdGlvbkxpa2VOb2RlIHtcbiAgLyoqIFBhcmFtcyBoZWxwZXIgdmFsdWUuICovXG4gIHBhcmFtcz86IHVua25vd25bXTtcblxuICAvKiogUmV0dXJuVHlwZSBoZWxwZXIgdmFsdWUuICovXG4gIHJldHVyblR5cGU/OiB7XG4gICAgLyoqIFR5cGVBbm5vdGF0aW9uIGhlbHBlciB2YWx1ZS4gKi9cbiAgICB0eXBlQW5ub3RhdGlvbj86IFR5cGVBbm5vdGF0aW9uTm9kZTtcbiAgfTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFBhcmFtZXRlckNvbnRhaW5lciB7XG4gIC8qKiBBcmd1bWVudCBoZWxwZXIgdmFsdWUuICovXG4gIGFyZ3VtZW50PzogdW5rbm93bjtcblxuICAvKiogUGFyYW1ldGVyIGhlbHBlciB2YWx1ZS4gKi9cbiAgcGFyYW1ldGVyPzogdW5rbm93bjtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFR5cGVBbm5vdGF0aW9uQ29udGFpbmVyIHtcbiAgLyoqIFR5cGVBbm5vdGF0aW9uIGhlbHBlciB2YWx1ZS4gKi9cbiAgdHlwZUFubm90YXRpb24/OiB7XG4gICAgLyoqIFR5cGVBbm5vdGF0aW9uIGhlbHBlciB2YWx1ZS4gKi9cbiAgICB0eXBlQW5ub3RhdGlvbj86IFR5cGVBbm5vdGF0aW9uTm9kZTtcbiAgfTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFR5cGVBbm5vdGF0aW9uTm9kZSB7XG4gIC8qKiBUeXBlIGZpZWxkIHZhbHVlLiAqL1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogR2V0cyBhIG5lc3RlZCB0eXBlIGFubm90YXRpb24gZnJvbSBwYXJhbWV0ZXIgd3JhcHBlcnMuXG4gKiBAcGFyYW0gbm9kZSBQYXJhbWV0ZXIgd3JhcHBlciBub2RlLlxuICogQHJldHVybnMgVGhlIG5lc3RlZCB0eXBlIGFubm90YXRpb24gd2hlbiBwcmVzZW50LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGFubm90YXRpb24gPSBnZXROZXN0ZWRUeXBlQW5ub3RhdGlvbih7IGFyZ3VtZW50OiBub2RlIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldE5lc3RlZFR5cGVBbm5vdGF0aW9uID0gKFxuICBub2RlOiBQYXJhbWV0ZXJDb250YWluZXIsXG4pOiBUeXBlQW5ub3RhdGlvbk5vZGUgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAobm9kZS5hcmd1bWVudCAhPT0gdm9pZCAwKSB7XG4gICAgcmV0dXJuIGdldFR5cGVBbm5vdGF0aW9uTm9kZShub2RlLmFyZ3VtZW50KTtcbiAgfVxuXG4gIGlmIChub2RlLnBhcmFtZXRlciAhPT0gdm9pZCAwKSB7XG4gICAgcmV0dXJuIGdldFR5cGVBbm5vdGF0aW9uTm9kZShub2RlLnBhcmFtZXRlcik7XG4gIH1cblxuICByZXR1cm4gdm9pZCAwO1xufTtcblxuLyoqXG4gKiBFeHRyYWN0cyB0aGUgdHlwZSBhbm5vdGF0aW9uIGZyb20gYSBub2RlLlxuICogQHBhcmFtIG5vZGUgTm9kZSB0aGF0IG1heSBjb250YWluIGEgdHlwZSBhbm5vdGF0aW9uLlxuICogQHJldHVybnMgVGhlIHR5cGUgYW5ub3RhdGlvbiB3aGVuIHByZXNlbnQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgYW5ub3RhdGlvbiA9IGdldFR5cGVBbm5vdGF0aW9uTm9kZShub2RlKTtcbiAqIGBgYFxuICovXG5jb25zdCBnZXRUeXBlQW5ub3RhdGlvbk5vZGUgPSAoXG4gIG5vZGU6IHVua25vd24sXG4pOiBUeXBlQW5ub3RhdGlvbk5vZGUgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAobm9kZSA9PT0gbnVsbCB8fCB0eXBlb2Ygbm9kZSAhPT0gXCJvYmplY3RcIikge1xuICAgIHJldHVybiB2b2lkIDA7XG4gIH1cblxuICBjb25zdCBkaXJlY3RUeXBlQW5ub3RhdGlvbiA9IChub2RlIGFzIFR5cGVBbm5vdGF0aW9uQ29udGFpbmVyKS50eXBlQW5ub3RhdGlvblxuICAgID8udHlwZUFubm90YXRpb247XG5cbiAgaWYgKGRpcmVjdFR5cGVBbm5vdGF0aW9uICE9PSB2b2lkIDApIHtcbiAgICByZXR1cm4gZGlyZWN0VHlwZUFubm90YXRpb247XG4gIH1cblxuICByZXR1cm4gZ2V0TmVzdGVkVHlwZUFubm90YXRpb24obm9kZSBhcyBQYXJhbWV0ZXJDb250YWluZXIpO1xufTtcblxuLyoqXG4gKiBHZXRzIHRoZSByZXR1cm4gdHlwZSBhbm5vdGF0aW9uIGZvciBhIGZ1bmN0aW9uLWxpa2Ugbm9kZS5cbiAqIEBwYXJhbSBub2RlIE5vZGUgdGhhdCBtYXkgY29udGFpbiBhIHJldHVybiB0eXBlLlxuICogQHJldHVybnMgVGhlIHJldHVybiB0eXBlIGFubm90YXRpb24gd2hlbiBwcmVzZW50LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGFubm90YXRpb24gPSBnZXRSZXR1cm5UeXBlQW5ub3RhdGlvbihub2RlKTtcbiAqIGBgYFxuICovXG5jb25zdCBnZXRSZXR1cm5UeXBlQW5ub3RhdGlvbiA9IChcbiAgbm9kZTogdW5rbm93bixcbik6IFR5cGVBbm5vdGF0aW9uTm9kZSB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChub2RlID09PSBudWxsIHx8IHR5cGVvZiBub2RlICE9PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHZvaWQgMDtcbiAgfVxuXG4gIGNvbnN0IHR5cGVkTm9kZSA9IG5vZGUgYXMgRnVuY3Rpb25MaWtlTm9kZTtcblxuICByZXR1cm4gdHlwZWROb2RlLnJldHVyblR5cGU/LnR5cGVBbm5vdGF0aW9uO1xufTtcblxuLyoqXG4gKiBHZXRzIGdldFBhcmFtZXRlcnMuXG4gKiBAcGFyYW0gbm9kZSBJbnB1dCBub2RlIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBnZXRQYXJhbWV0ZXJzKCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0UGFyYW1ldGVycyA9IChub2RlOiB1bmtub3duKTogdW5rbm93bltdID0+IHtcbiAgaWYgKG5vZGUgPT09IG51bGwgfHwgdHlwZW9mIG5vZGUgIT09IFwib2JqZWN0XCIpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICBjb25zdCB0eXBlZE5vZGUgPSBub2RlIGFzIEZ1bmN0aW9uTGlrZU5vZGU7XG5cbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkodHlwZWROb2RlLnBhcmFtcykgPyB0eXBlZE5vZGUucGFyYW1zIDogW107XG59O1xuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIHRoZSBub2RlIHJlcHJlc2VudHMgYSB0eXBlIGxpdGVyYWwuXG4gKiBAcGFyYW0gbm9kZSBUeXBlIGFubm90YXRpb24gbm9kZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIFRydWUgd2hlbiB0aGUgbm9kZSBpcyBhIHR5cGUgbGl0ZXJhbC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBpc0xpdGVyYWwgPSBpc1R5cGVMaXRlcmFsKGFubm90YXRpb24pO1xuICogYGBgXG4gKi9cbmNvbnN0IGlzVHlwZUxpdGVyYWwgPSAoXG4gIG5vZGU6IFR5cGVBbm5vdGF0aW9uTm9kZSB8IHVuZGVmaW5lZCxcbik6IG5vZGUgaXMgVHlwZUFubm90YXRpb25Ob2RlID0+IG5vZGU/LnR5cGUgPT09IFwiVFNUeXBlTGl0ZXJhbFwiO1xuXG4vKipcbiAqIFJlcG9ydHMgYW4gaW5saW5lIG9iamVjdCB0eXBlIGFubm90YXRpb24uXG4gKiBAcGFyYW0gY29udGV4dCBSdWxlIGV4ZWN1dGlvbiBjb250ZXh0LlxuICogQHBhcmFtIHR5cGVBbm5vdGF0aW9uIFR5cGUgYW5ub3RhdGlvbiBub2RlIHRvIHJlcG9ydC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiByZXBvcnRUeXBlTGl0ZXJhbChjb250ZXh0LCB0eXBlQW5ub3RhdGlvbik7XG4gKiBgYGBcbiAqL1xuY29uc3QgcmVwb3J0VHlwZUxpdGVyYWwgPSAoXG4gIGNvbnRleHQ6IFJ1bGUuUnVsZUNvbnRleHQsXG4gIHR5cGVBbm5vdGF0aW9uOiBUeXBlQW5ub3RhdGlvbk5vZGUsXG4pOiB2b2lkID0+IHtcbiAgY29udGV4dC5yZXBvcnQoe1xuICAgIG1lc3NhZ2VJZDogXCJwcmVmZXJOYW1lZE9iamVjdFwiLFxuICAgIG5vZGU6IHR5cGVBbm5vdGF0aW9uIGFzIHVua25vd24gYXMgUnVsZS5Ob2RlLFxuICB9KTtcbn07XG5cbi8qKlxuICogQ2hlY2tzIGZ1bmN0aW9uLWxpa2Ugbm9kZXMgZm9yIGlubGluZSBvYmplY3QgdHlwZXMuXG4gKiBAcGFyYW0gY29udGV4dCBSdWxlIGV4ZWN1dGlvbiBjb250ZXh0LlxuICogQHBhcmFtIG5vZGUgRnVuY3Rpb24tbGlrZSBub2RlIHRvIGNoZWNrLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNoZWNrRnVuY3Rpb25MaWtlKGNvbnRleHQsIG5vZGUpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNoZWNrRnVuY3Rpb25MaWtlID0gKFxuICBjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0LFxuICBub2RlOiBSdWxlLk5vZGUsXG4pOiB2b2lkID0+IHtcbiAgZm9yIChjb25zdCBwYXJhbWV0ZXIgb2YgZ2V0UGFyYW1ldGVycyhub2RlKSkge1xuICAgIGNvbnN0IHR5cGVBbm5vdGF0aW9uID0gZ2V0VHlwZUFubm90YXRpb25Ob2RlKHBhcmFtZXRlcik7XG5cbiAgICBpZiAoaXNUeXBlTGl0ZXJhbCh0eXBlQW5ub3RhdGlvbikpIHtcbiAgICAgIHJlcG9ydFR5cGVMaXRlcmFsKGNvbnRleHQsIHR5cGVBbm5vdGF0aW9uKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCByZXR1cm5UeXBlQW5ub3RhdGlvbiA9IGdldFJldHVyblR5cGVBbm5vdGF0aW9uKG5vZGUpO1xuXG4gIGlmIChpc1R5cGVMaXRlcmFsKHJldHVyblR5cGVBbm5vdGF0aW9uKSkge1xuICAgIHJlcG9ydFR5cGVMaXRlcmFsKGNvbnRleHQsIHJldHVyblR5cGVBbm5vdGF0aW9uKTtcbiAgfVxufTtcblxuLyoqIEVTTGludCBydWxlIHJlcXVpcmluZyBuYW1lZCBpbnRlcmZhY2UvdHlwZSBhbGlhc2VzIGZvciBvYmplY3QgdHlwZXMuICovXG5jb25zdCBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGU6IFJ1bGUuUnVsZU1vZHVsZSA9IHtcbiAgY3JlYXRlKGNvbnRleHQ6IFJ1bGUuUnVsZUNvbnRleHQpOiBSdWxlLlJ1bGVMaXN0ZW5lciB7XG4gICAgY29uc3QgbGlzdGVuZXIgPSAobm9kZTogUnVsZS5Ob2RlKTogdm9pZCA9PiB7XG4gICAgICBjaGVja0Z1bmN0aW9uTGlrZShjb250ZXh0LCBub2RlKTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIEFycm93RnVuY3Rpb25FeHByZXNzaW9uOiBsaXN0ZW5lcixcbiAgICAgIEZ1bmN0aW9uRGVjbGFyYXRpb246IGxpc3RlbmVyLFxuICAgICAgRnVuY3Rpb25FeHByZXNzaW9uOiBsaXN0ZW5lcixcbiAgICAgIFRTQ2FsbFNpZ25hdHVyZURlY2xhcmF0aW9uOiBsaXN0ZW5lcixcbiAgICAgIFRTQ29uc3RydWN0U2lnbmF0dXJlRGVjbGFyYXRpb246IGxpc3RlbmVyLFxuICAgICAgVFNEZWNsYXJlRnVuY3Rpb246IGxpc3RlbmVyLFxuICAgICAgVFNGdW5jdGlvblR5cGU6IGxpc3RlbmVyLFxuICAgICAgVFNNZXRob2RTaWduYXR1cmU6IGxpc3RlbmVyLFxuICAgIH07XG4gIH0sXG4gIG1ldGE6IHtcbiAgICBkb2NzOiBjcmVhdGVSdWxlRG9jdW1lbnRhdGlvbihcbiAgICAgIFwicHJlZmVyLWludGVyZmFjZS10eXBlc1wiLFxuICAgICAgXCJSZXF1aXJlIG5hbWVkIGludGVyZmFjZXMgb3IgdHlwZSBhbGlhc2VzIGZvciBvYmplY3QgdHlwZXMgaW4gcGFyYW1ldGVycyBhbmQgcmV0dXJuIHR5cGVzLlwiLFxuICAgICksXG4gICAgbWVzc2FnZXM6IHtcbiAgICAgIHByZWZlck5hbWVkT2JqZWN0OlxuICAgICAgICBcIlVzZSBhIG5hbWVkIGludGVyZmFjZSBvciB0eXBlIGFsaWFzIGluc3RlYWQgb2YgYW4gaW5saW5lIG9iamVjdCB0eXBlLlwiLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgICB0eXBlOiBcInN1Z2dlc3Rpb25cIixcbiAgfSxcbn07XG5cbmV4cG9ydCB7IHByZWZlckludGVyZmFjZVR5cGVzUnVsZSB9O1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../../../src/domain/core/prefer-interface-types/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAInC,qCAAqC;AACrC,UAAU,QAAQ;IAChB,iCAAiC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAEvB,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAWD,qCAAqC;AACrC,UAAU,WAAW;IACnB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9B,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED,qCAAqC;AACrC,UAAU,gBAAgB;IACxB,2BAA2B;IAC3B,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;IAE1B,2BAA2B;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,qCAAqC;AACrC,UAAU,qBAAqB;IAC7B,kCAAkC;IAClC,cAAc,EAAE;QACd,wBAAwB;QACxB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,aAAa,QAAO,gBAczB,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,qBAE3C,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,QAKxB,CAAC;AAEjB;;;;;;;GAOG;AACH,QAAA,MAAM,mBAAmB,QAAO,QAIhB,CAAC;AAEjB;;;;;;;;GAQG;AACH,QAAA,MAAM,uBAAuB,GAAI,MAAM,MAAM,KAAG,QAIhC,CAAC;AAEjB;;;;;;;;GAQG;AACH,QAAA,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,QAI5B,CAAC;AAEjB;;;;;;;;GAQG;AACH,QAAA,MAAM,kBAAkB,GAAI,WAAW,OAAO,CAAC,QAAQ,CAAC,KAAG,QAK3C,CAAC;AAEjB;;;;;;;;GAQG;AACH,QAAA,MAAM,WAAW,GAAI,SAAS,IAAI,CAAC,WAAW,EAAE,OAAO,QAAQ,KAAG,IAOjE,CAAC;AAEF,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,GACZ,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { preferInterfaceTypesRule } from "./rule.js";
|
|
2
|
+
/**
|
|
3
|
+
* Creates createContext.
|
|
4
|
+
* @returns Return value output.
|
|
5
|
+
* @example
|
|
6
|
+
* ```typescript
|
|
7
|
+
* createContext();
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
const createContext = () => {
|
|
11
|
+
const reports = [];
|
|
12
|
+
const context = {
|
|
13
|
+
id: "prefer-interface-types",
|
|
14
|
+
options: [],
|
|
15
|
+
report: (descriptor) => {
|
|
16
|
+
const { messageId, node } = descriptor;
|
|
17
|
+
const reportEntry = { messageId, nodeType: node?.type };
|
|
18
|
+
reports.push(reportEntry);
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
return { context, reports };
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Creates createTypeAnnotation.
|
|
25
|
+
* @param type Input type value.
|
|
26
|
+
* @returns Return value output.
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* createTypeAnnotation();
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
const createTypeAnnotation = (type) => ({
|
|
33
|
+
typeAnnotation: { type },
|
|
34
|
+
});
|
|
35
|
+
/**
|
|
36
|
+
* Creates createParameter.
|
|
37
|
+
* @param type Input type value.
|
|
38
|
+
* @returns Return value output.
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* createParameter();
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
const createParameter = (type) => ({
|
|
45
|
+
name: "value",
|
|
46
|
+
type: "Identifier",
|
|
47
|
+
typeAnnotation: createTypeAnnotation(type),
|
|
48
|
+
});
|
|
49
|
+
/**
|
|
50
|
+
* Creates createBareParameter.
|
|
51
|
+
* @returns Return value output.
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* createBareParameter();
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
const createBareParameter = () => ({
|
|
58
|
+
name: "value",
|
|
59
|
+
type: "Identifier",
|
|
60
|
+
});
|
|
61
|
+
/**
|
|
62
|
+
* Creates createParameterProperty.
|
|
63
|
+
* @param type Input type value.
|
|
64
|
+
* @returns Return value output.
|
|
65
|
+
* @example
|
|
66
|
+
* ```typescript
|
|
67
|
+
* createParameterProperty();
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
const createParameterProperty = (type) => ({
|
|
71
|
+
parameter: createParameter(type),
|
|
72
|
+
type: "TSParameterProperty",
|
|
73
|
+
});
|
|
74
|
+
/**
|
|
75
|
+
* Creates createRestParameter.
|
|
76
|
+
* @param type Input type value.
|
|
77
|
+
* @returns Return value output.
|
|
78
|
+
* @example
|
|
79
|
+
* ```typescript
|
|
80
|
+
* createRestParameter();
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
const createRestParameter = (type) => ({
|
|
84
|
+
argument: createParameter(type),
|
|
85
|
+
type: "RestElement",
|
|
86
|
+
});
|
|
87
|
+
/**
|
|
88
|
+
* Creates createFunctionNode.
|
|
89
|
+
* @param overrides Input overrides value.
|
|
90
|
+
* @returns Return value output.
|
|
91
|
+
* @example
|
|
92
|
+
* ```typescript
|
|
93
|
+
* createFunctionNode();
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
const createFunctionNode = (overrides) => ({
|
|
97
|
+
params: [],
|
|
98
|
+
type: "FunctionDeclaration",
|
|
99
|
+
...overrides,
|
|
100
|
+
});
|
|
101
|
+
/**
|
|
102
|
+
* Runs the listener for the supplied node.
|
|
103
|
+
* @param context Rule execution context.
|
|
104
|
+
* @param node Node to run through the listener.
|
|
105
|
+
* @example
|
|
106
|
+
* ```typescript
|
|
107
|
+
* runListener(context, node);
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
110
|
+
const runListener = (context, node) => {
|
|
111
|
+
const listeners = preferInterfaceTypesRule.create(context);
|
|
112
|
+
const listener = listeners.FunctionDeclaration;
|
|
113
|
+
listener?.(node);
|
|
114
|
+
};
|
|
115
|
+
export { createBareParameter, createContext, createFunctionNode, createParameter, createParameterProperty, createRestParameter, createTypeAnnotation, runListener, };
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RvbWFpbi9jb3JlL3ByZWZlci1pbnRlcmZhY2UtdHlwZXMvdGVzdC1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQStDbEQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sYUFBYSxHQUFHLEdBQXFCLEVBQUU7SUFDM0MsTUFBTSxPQUFPLEdBQWtCLEVBQUUsQ0FBQztJQUNsQyxNQUFNLE9BQU8sR0FBcUI7UUFDaEMsRUFBRSxFQUFFLHdCQUF3QjtRQUM1QixPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxDQUFDLFVBQWlDLEVBQVEsRUFBRTtZQUNsRCxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxHQUFHLFVBQXFDLENBQUM7WUFDbEUsTUFBTSxXQUFXLEdBQWdCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFFckUsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1QixDQUFDO0tBQzZCLENBQUM7SUFFakMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFZLEVBQXlCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRTtDQUN6QixDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sZUFBZSxHQUFHLENBQUMsSUFBWSxFQUFZLEVBQUUsQ0FDakQsQ0FBQztJQUNDLElBQUksRUFBRSxPQUFPO0lBQ2IsSUFBSSxFQUFFLFlBQVk7SUFDbEIsY0FBYyxFQUFFLG9CQUFvQixDQUFDLElBQUksQ0FBQztDQUMzQyxDQUFhLENBQUM7QUFFakI7Ozs7Ozs7R0FPRztBQUNILE1BQU0sbUJBQW1CLEdBQUcsR0FBYSxFQUFFLENBQ3pDLENBQUM7SUFDQyxJQUFJLEVBQUUsT0FBTztJQUNiLElBQUksRUFBRSxZQUFZO0NBQ25CLENBQWEsQ0FBQztBQUVqQjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxJQUFZLEVBQVksRUFBRSxDQUN6RCxDQUFDO0lBQ0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxJQUFJLENBQUM7SUFDaEMsSUFBSSxFQUFFLHFCQUFxQjtDQUM1QixDQUFhLENBQUM7QUFFakI7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsSUFBWSxFQUFZLEVBQUUsQ0FDckQsQ0FBQztJQUNDLFFBQVEsRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDO0lBQy9CLElBQUksRUFBRSxhQUFhO0NBQ3BCLENBQWEsQ0FBQztBQUVqQjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxTQUE0QixFQUFZLEVBQUUsQ0FDcEUsQ0FBQztJQUNDLE1BQU0sRUFBRSxFQUFFO0lBQ1YsSUFBSSxFQUFFLHFCQUFxQjtJQUMzQixHQUFHLFNBQVM7Q0FDYixDQUFhLENBQUM7QUFFakI7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFdBQVcsR0FBRyxDQUFDLE9BQXlCLEVBQUUsSUFBZSxFQUFRLEVBQUU7SUFDdkUsTUFBTSxTQUFTLEdBQUcsd0JBQXdCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNELE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxtQkFFZCxDQUFDO0lBRWQsUUFBUSxFQUFFLENBQUMsSUFBNEIsQ0FBQyxDQUFDO0FBQzNDLENBQUMsQ0FBQztBQUVGLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGtCQUFrQixFQUNsQixlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsV0FBVyxHQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJ1bGUgfSBmcm9tIFwiZXNsaW50XCI7XG5cbmltcG9ydCB7IHByZWZlckludGVyZmFjZVR5cGVzUnVsZSB9IGZyb20gXCIuL3J1bGVcIjtcblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIE1vY2tOb2RlIHtcbiAgLyoqIEluZGV4IHNpZ25hdHVyZSB2YWx1ZSBtYXAuICovXG4gIFtrZXk6IHN0cmluZ106IHVua25vd247XG5cbiAgLyoqIFR5cGUgZmllbGQgdmFsdWUuICovXG4gIHR5cGU6IHN0cmluZztcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFJlcG9ydERlc2NyaXB0b3JEZXRhaWxzIHtcbiAgLyoqIE1lc3NhZ2VJZCBmaWVsZCB2YWx1ZS4gKi9cbiAgbWVzc2FnZUlkPzogc3RyaW5nO1xuXG4gIC8qKiBOb2RlIGZpZWxkIHZhbHVlLiAqL1xuICBub2RlPzogUnVsZS5Ob2RlO1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgUmVwb3J0RW50cnkge1xuICAvKiogTWVzc2FnZUlkIGhlbHBlciB2YWx1ZS4gKi9cbiAgbWVzc2FnZUlkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqIE5vZGVUeXBlIGZpZWxkIHZhbHVlLiAqL1xuICBub2RlVHlwZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgUnVsZUNvbnRleHRTdGF0ZSB7XG4gIC8qKiBDb250ZXh0IGZpZWxkIHZhbHVlLiAqL1xuICBjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0O1xuXG4gIC8qKiBSZXBvcnRzIGZpZWxkIHZhbHVlLiAqL1xuICByZXBvcnRzOiBSZXBvcnRFbnRyeVtdO1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgVHlwZUFubm90YXRpb25XcmFwcGVyIHtcbiAgLyoqIFR5cGVBbm5vdGF0aW9uIGZpZWxkIHZhbHVlLiAqL1xuICB0eXBlQW5ub3RhdGlvbjoge1xuICAgIC8qKiBUeXBlIGZpZWxkIHZhbHVlLiAqL1xuICAgIHR5cGU6IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGNyZWF0ZUNvbnRleHQuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNyZWF0ZUNvbnRleHQoKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVDb250ZXh0ID0gKCk6IFJ1bGVDb250ZXh0U3RhdGUgPT4ge1xuICBjb25zdCByZXBvcnRzOiBSZXBvcnRFbnRyeVtdID0gW107XG4gIGNvbnN0IGNvbnRleHQ6IFJ1bGUuUnVsZUNvbnRleHQgPSB7XG4gICAgaWQ6IFwicHJlZmVyLWludGVyZmFjZS10eXBlc1wiLFxuICAgIG9wdGlvbnM6IFtdLFxuICAgIHJlcG9ydDogKGRlc2NyaXB0b3I6IFJ1bGUuUmVwb3J0RGVzY3JpcHRvcik6IHZvaWQgPT4ge1xuICAgICAgY29uc3QgeyBtZXNzYWdlSWQsIG5vZGUgfSA9IGRlc2NyaXB0b3IgYXMgUmVwb3J0RGVzY3JpcHRvckRldGFpbHM7XG4gICAgICBjb25zdCByZXBvcnRFbnRyeTogUmVwb3J0RW50cnkgPSB7IG1lc3NhZ2VJZCwgbm9kZVR5cGU6IG5vZGU/LnR5cGUgfTtcblxuICAgICAgcmVwb3J0cy5wdXNoKHJlcG9ydEVudHJ5KTtcbiAgICB9LFxuICB9IGFzIHVua25vd24gYXMgUnVsZS5SdWxlQ29udGV4dDtcblxuICByZXR1cm4geyBjb250ZXh0LCByZXBvcnRzIH07XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgY3JlYXRlVHlwZUFubm90YXRpb24uXG4gKiBAcGFyYW0gdHlwZSBJbnB1dCB0eXBlIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjcmVhdGVUeXBlQW5ub3RhdGlvbigpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZVR5cGVBbm5vdGF0aW9uID0gKHR5cGU6IHN0cmluZyk6IFR5cGVBbm5vdGF0aW9uV3JhcHBlciA9PiAoe1xuICB0eXBlQW5ub3RhdGlvbjogeyB0eXBlIH0sXG59KTtcblxuLyoqXG4gKiBDcmVhdGVzIGNyZWF0ZVBhcmFtZXRlci5cbiAqIEBwYXJhbSB0eXBlIElucHV0IHR5cGUgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNyZWF0ZVBhcmFtZXRlcigpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZVBhcmFtZXRlciA9ICh0eXBlOiBzdHJpbmcpOiBNb2NrTm9kZSA9PlxuICAoe1xuICAgIG5hbWU6IFwidmFsdWVcIixcbiAgICB0eXBlOiBcIklkZW50aWZpZXJcIixcbiAgICB0eXBlQW5ub3RhdGlvbjogY3JlYXRlVHlwZUFubm90YXRpb24odHlwZSksXG4gIH0pIGFzIE1vY2tOb2RlO1xuXG4vKipcbiAqIENyZWF0ZXMgY3JlYXRlQmFyZVBhcmFtZXRlci5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY3JlYXRlQmFyZVBhcmFtZXRlcigpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZUJhcmVQYXJhbWV0ZXIgPSAoKTogTW9ja05vZGUgPT5cbiAgKHtcbiAgICBuYW1lOiBcInZhbHVlXCIsXG4gICAgdHlwZTogXCJJZGVudGlmaWVyXCIsXG4gIH0pIGFzIE1vY2tOb2RlO1xuXG4vKipcbiAqIENyZWF0ZXMgY3JlYXRlUGFyYW1ldGVyUHJvcGVydHkuXG4gKiBAcGFyYW0gdHlwZSBJbnB1dCB0eXBlIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjcmVhdGVQYXJhbWV0ZXJQcm9wZXJ0eSgpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZVBhcmFtZXRlclByb3BlcnR5ID0gKHR5cGU6IHN0cmluZyk6IE1vY2tOb2RlID0+XG4gICh7XG4gICAgcGFyYW1ldGVyOiBjcmVhdGVQYXJhbWV0ZXIodHlwZSksXG4gICAgdHlwZTogXCJUU1BhcmFtZXRlclByb3BlcnR5XCIsXG4gIH0pIGFzIE1vY2tOb2RlO1xuXG4vKipcbiAqIENyZWF0ZXMgY3JlYXRlUmVzdFBhcmFtZXRlci5cbiAqIEBwYXJhbSB0eXBlIElucHV0IHR5cGUgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNyZWF0ZVJlc3RQYXJhbWV0ZXIoKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVSZXN0UGFyYW1ldGVyID0gKHR5cGU6IHN0cmluZyk6IE1vY2tOb2RlID0+XG4gICh7XG4gICAgYXJndW1lbnQ6IGNyZWF0ZVBhcmFtZXRlcih0eXBlKSxcbiAgICB0eXBlOiBcIlJlc3RFbGVtZW50XCIsXG4gIH0pIGFzIE1vY2tOb2RlO1xuXG4vKipcbiAqIENyZWF0ZXMgY3JlYXRlRnVuY3Rpb25Ob2RlLlxuICogQHBhcmFtIG92ZXJyaWRlcyBJbnB1dCBvdmVycmlkZXMgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNyZWF0ZUZ1bmN0aW9uTm9kZSgpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZUZ1bmN0aW9uTm9kZSA9IChvdmVycmlkZXM6IFBhcnRpYWw8TW9ja05vZGU+KTogTW9ja05vZGUgPT5cbiAgKHtcbiAgICBwYXJhbXM6IFtdLFxuICAgIHR5cGU6IFwiRnVuY3Rpb25EZWNsYXJhdGlvblwiLFxuICAgIC4uLm92ZXJyaWRlcyxcbiAgfSkgYXMgTW9ja05vZGU7XG5cbi8qKlxuICogUnVucyB0aGUgbGlzdGVuZXIgZm9yIHRoZSBzdXBwbGllZCBub2RlLlxuICogQHBhcmFtIGNvbnRleHQgUnVsZSBleGVjdXRpb24gY29udGV4dC5cbiAqIEBwYXJhbSBub2RlIE5vZGUgdG8gcnVuIHRocm91Z2ggdGhlIGxpc3RlbmVyLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIHJ1bkxpc3RlbmVyKGNvbnRleHQsIG5vZGUpO1xuICogYGBgXG4gKi9cbmNvbnN0IHJ1bkxpc3RlbmVyID0gKGNvbnRleHQ6IFJ1bGUuUnVsZUNvbnRleHQsIG5vZGU/OiBNb2NrTm9kZSk6IHZvaWQgPT4ge1xuICBjb25zdCBsaXN0ZW5lcnMgPSBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGUuY3JlYXRlKGNvbnRleHQpO1xuICBjb25zdCBsaXN0ZW5lciA9IGxpc3RlbmVycy5GdW5jdGlvbkRlY2xhcmF0aW9uIGFzXG4gICAgfCAoKG5vZGU6IFJ1bGUuTm9kZSkgPT4gdm9pZClcbiAgICB8IHVuZGVmaW5lZDtcblxuICBsaXN0ZW5lcj8uKG5vZGUgYXMgdW5rbm93biBhcyBSdWxlLk5vZGUpO1xufTtcblxuZXhwb3J0IHtcbiAgY3JlYXRlQmFyZVBhcmFtZXRlcixcbiAgY3JlYXRlQ29udGV4dCxcbiAgY3JlYXRlRnVuY3Rpb25Ob2RlLFxuICBjcmVhdGVQYXJhbWV0ZXIsXG4gIGNyZWF0ZVBhcmFtZXRlclByb3BlcnR5LFxuICBjcmVhdGVSZXN0UGFyYW1ldGVyLFxuICBjcmVhdGVUeXBlQW5ub3RhdGlvbixcbiAgcnVuTGlzdGVuZXIsXG59O1xuIl19
|
|
@@ -6,7 +6,7 @@ interface CustomRuleDocumentation {
|
|
|
6
6
|
url: string;
|
|
7
7
|
}
|
|
8
8
|
/** Base URL for published custom rule documentation pages. */
|
|
9
|
-
declare const customRuleDocumentationBaseUrl = "https://github.com/
|
|
9
|
+
declare const customRuleDocumentationBaseUrl = "https://github.com/parloti/eslint-plugin/blob/main/docs/rules";
|
|
10
10
|
/**
|
|
11
11
|
* Creates shared docs metadata for a package-owned custom rule.
|
|
12
12
|
* @param ruleName ESLint rule name without the plugin prefix.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-rule-documentation.d.ts","sourceRoot":"","sources":["../../src/domain/custom-rule-documentation.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,UAAU,uBAAuB;IAC/B,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IAEpB,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,8DAA8D;AAC9D,QAAA,MAAM,8BAA8B,kEAC6B,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,uBAAuB,CAKzB;AAED;;;;;;;;GAQG;AACH,iBAAS,6BAA6B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,GAC9B,CAAC;AACF,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** Base URL for published custom rule documentation pages. */
|
|
2
|
+
const customRuleDocumentationBaseUrl = "https://github.com/parloti/eslint-plugin/blob/main/docs/rules";
|
|
3
|
+
/**
|
|
4
|
+
* Creates shared docs metadata for a package-owned custom rule.
|
|
5
|
+
* @param ruleName ESLint rule name without the plugin prefix.
|
|
6
|
+
* @param description Input description value.
|
|
7
|
+
* @returns Return value output.
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* const docs = createRuleDocumentation(
|
|
11
|
+
* "prefer-interface-types",
|
|
12
|
+
* "Rule description",
|
|
13
|
+
* );
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
function createRuleDocumentation(ruleName, description) {
|
|
17
|
+
return {
|
|
18
|
+
description,
|
|
19
|
+
url: getCustomRuleDocumentationUrl(ruleName),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Builds the canonical documentation URL for a package-owned custom rule.
|
|
24
|
+
* @param ruleName ESLint rule name without the plugin prefix.
|
|
25
|
+
* @returns Return value output.
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const url = getCustomRuleDocumentationUrl("prefer-interface-types");
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
function getCustomRuleDocumentationUrl(ruleName) {
|
|
32
|
+
return `${customRuleDocumentationBaseUrl}/${ruleName}.md`;
|
|
33
|
+
}
|
|
34
|
+
export { createRuleDocumentation, customRuleDocumentationBaseUrl, getCustomRuleDocumentationUrl, };
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXJ1bGUtZG9jdW1lbnRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb21haW4vY3VzdG9tLXJ1bGUtZG9jdW1lbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSw4REFBOEQ7QUFDOUQsTUFBTSw4QkFBOEIsR0FDbEMsK0RBQStELENBQUM7QUFFbEU7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsU0FBUyx1QkFBdUIsQ0FDOUIsUUFBZ0IsRUFDaEIsV0FBbUI7SUFFbkIsT0FBTztRQUNMLFdBQVc7UUFDWCxHQUFHLEVBQUUsNkJBQTZCLENBQUMsUUFBUSxDQUFDO0tBQzdDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFTLDZCQUE2QixDQUFDLFFBQWdCO0lBQ3JELE9BQU8sR0FBRyw4QkFBOEIsSUFBSSxRQUFRLEtBQUssQ0FBQztBQUM1RCxDQUFDO0FBRUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qiw4QkFBOEIsRUFDOUIsNkJBQTZCLEdBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogTWluaW1hbCBzaGFyZWQgZG9jcyBtZXRhZGF0YSBzaGFwZSBmb3IgcGFja2FnZS1vd25lZCBjdXN0b20gcnVsZXMuICovXG5pbnRlcmZhY2UgQ3VzdG9tUnVsZURvY3VtZW50YXRpb24ge1xuICAvKiogSHVtYW4tcmVhZGFibGUgcnVsZSBkZXNjcmlwdGlvbi4gKi9cbiAgZGVzY3JpcHRpb246IHN0cmluZztcblxuICAvKiogQ2Fub25pY2FsIGRvY3VtZW50YXRpb24gVVJMIGZvciB0aGUgcnVsZS4gKi9cbiAgdXJsOiBzdHJpbmc7XG59XG5cbi8qKiBCYXNlIFVSTCBmb3IgcHVibGlzaGVkIGN1c3RvbSBydWxlIGRvY3VtZW50YXRpb24gcGFnZXMuICovXG5jb25zdCBjdXN0b21SdWxlRG9jdW1lbnRhdGlvbkJhc2VVcmwgPVxuICBcImh0dHBzOi8vZ2l0aHViLmNvbS9wYXJsb3RpL2VzbGludC1wbHVnaW4vYmxvYi9tYWluL2RvY3MvcnVsZXNcIjtcblxuLyoqXG4gKiBDcmVhdGVzIHNoYXJlZCBkb2NzIG1ldGFkYXRhIGZvciBhIHBhY2thZ2Utb3duZWQgY3VzdG9tIHJ1bGUuXG4gKiBAcGFyYW0gcnVsZU5hbWUgRVNMaW50IHJ1bGUgbmFtZSB3aXRob3V0IHRoZSBwbHVnaW4gcHJlZml4LlxuICogQHBhcmFtIGRlc2NyaXB0aW9uIElucHV0IGRlc2NyaXB0aW9uIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBkb2NzID0gY3JlYXRlUnVsZURvY3VtZW50YXRpb24oXG4gKiAgIFwicHJlZmVyLWludGVyZmFjZS10eXBlc1wiLFxuICogICBcIlJ1bGUgZGVzY3JpcHRpb25cIixcbiAqICk7XG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gY3JlYXRlUnVsZURvY3VtZW50YXRpb24oXG4gIHJ1bGVOYW1lOiBzdHJpbmcsXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcsXG4pOiBDdXN0b21SdWxlRG9jdW1lbnRhdGlvbiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb24sXG4gICAgdXJsOiBnZXRDdXN0b21SdWxlRG9jdW1lbnRhdGlvblVybChydWxlTmFtZSksXG4gIH07XG59XG5cbi8qKlxuICogQnVpbGRzIHRoZSBjYW5vbmljYWwgZG9jdW1lbnRhdGlvbiBVUkwgZm9yIGEgcGFja2FnZS1vd25lZCBjdXN0b20gcnVsZS5cbiAqIEBwYXJhbSBydWxlTmFtZSBFU0xpbnQgcnVsZSBuYW1lIHdpdGhvdXQgdGhlIHBsdWdpbiBwcmVmaXguXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHVybCA9IGdldEN1c3RvbVJ1bGVEb2N1bWVudGF0aW9uVXJsKFwicHJlZmVyLWludGVyZmFjZS10eXBlc1wiKTtcbiAqIGBgYFxuICovXG5mdW5jdGlvbiBnZXRDdXN0b21SdWxlRG9jdW1lbnRhdGlvblVybChydWxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAke2N1c3RvbVJ1bGVEb2N1bWVudGF0aW9uQmFzZVVybH0vJHtydWxlTmFtZX0ubWRgO1xufVxuXG5leHBvcnQge1xuICBjcmVhdGVSdWxlRG9jdW1lbnRhdGlvbixcbiAgY3VzdG9tUnVsZURvY3VtZW50YXRpb25CYXNlVXJsLFxuICBnZXRDdXN0b21SdWxlRG9jdW1lbnRhdGlvblVybCxcbn07XG5leHBvcnQgdHlwZSB7IEN1c3RvbVJ1bGVEb2N1bWVudGF0aW9uIH07XG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { noInterfaceMemberDocumentationRule } from "./no-interface-member-docs/index.js";
|
|
2
|
+
export { requireExampleLanguageRule } from "./require-example-language/index.js";
|
|
3
|
+
export { singleLineJsdocRule } from "./single-line-jsdoc/index.js";
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/docs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { noInterfaceMemberDocumentationRule } from "./no-interface-member-docs/index.js";
|
|
2
|
+
export { requireExampleLanguageRule } from "./require-example-language/index.js";
|
|
3
|
+
export { singleLineJsdocRule } from "./single-line-jsdoc/index.js";
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZG9tYWluL2RvY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBub0ludGVyZmFjZU1lbWJlckRvY3VtZW50YXRpb25SdWxlIH0gZnJvbSBcIi4vbm8taW50ZXJmYWNlLW1lbWJlci1kb2NzXCI7XG5leHBvcnQgeyByZXF1aXJlRXhhbXBsZUxhbmd1YWdlUnVsZSB9IGZyb20gXCIuL3JlcXVpcmUtZXhhbXBsZS1sYW5ndWFnZVwiO1xuZXhwb3J0IHsgc2luZ2xlTGluZUpzZG9jUnVsZSB9IGZyb20gXCIuL3NpbmdsZS1saW5lLWpzZG9jXCI7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-utilities-test-helpers.d.ts","sourceRoot":"","sources":["../../../../src/domain/docs/no-interface-member-docs/comment-utilities-test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,qCAAqC;AACrC,KAAK,OAAO,GAAG,UAAU,CACvB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,gBAAgB,CAAC,CACjD,CAAC,MAAM,CAAC,CAAC;AAEV,qCAAqC;AACrC,UAAU,gBAAgB;IACxB,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAEhB,0BAA0B;IAC1B,MAAM,EAAE,OAAO,CAAC;IAEhB,8BAA8B;IAC9B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED,qCAAqC;AACrC,UAAU,kBAAkB;IAC1B,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAEhB,8BAA8B;IAC9B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED,qCAAqC;AACrC,UAAU,kBAAkB;IAC1B,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;IAEjB,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAEhB,8BAA8B;IAC9B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED;;;;;;;;;GASG;AACH,QAAA,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,OAKlD,CAAC;AAEhB;;;;;;;;;GASG;AACH,QAAA,MAAM,gBAAgB,GACpB,MAAM,MAAM,EACZ,UAAU,OAAO,EAAE,KAClB,IAAI,CAAC,WAAW,CAAC,YAAY,CAIM,CAAC;AAiBvC;;;;;;;GAOG;AACH,QAAA,MAAM,sBAAsB,QAAO,gBAkBlC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,wBAAwB,QAAO,kBAYpC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,qBAAqB,QAAO,kBAYjC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,yBAAyB,QAAO,kBAWrC,CAAC;AAEF,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,GACjB,CAAC;AACF,YAAY,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a block comment value for tests.
|
|
3
|
+
* @param value Comment value without delimiters.
|
|
4
|
+
* @param range Comment range in the source text.
|
|
5
|
+
* @returns The comment object.
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* const comment = createComment("*\n * ok\n ", [0, 10]);
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
const createComment = (value, range) => ({
|
|
12
|
+
range,
|
|
13
|
+
type: "Block",
|
|
14
|
+
value,
|
|
15
|
+
});
|
|
16
|
+
/**
|
|
17
|
+
* Creates a source code wrapper with comments.
|
|
18
|
+
* @param text Full source text.
|
|
19
|
+
* @param comments Comment nodes to return.
|
|
20
|
+
* @returns SourceCode stub used in tests.
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* const sourceCode = createSourceCode("function demo() {}", []);
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
const createSourceCode = (text, comments) => ({
|
|
27
|
+
getAllComments: () => comments,
|
|
28
|
+
text,
|
|
29
|
+
});
|
|
30
|
+
/**
|
|
31
|
+
* Creates a function node for the test source text.
|
|
32
|
+
* @param sourceText Source content that includes a function.
|
|
33
|
+
* @returns Function declaration node used in tests.
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* const node = createFunctionNode("function demo() {}");
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
const createFunctionNode = (sourceText) => ({
|
|
40
|
+
range: [sourceText.indexOf("function"), sourceText.length],
|
|
41
|
+
type: "FunctionDeclaration",
|
|
42
|
+
});
|
|
43
|
+
/**
|
|
44
|
+
* Creates a context with two JSDoc comments.
|
|
45
|
+
* @returns The dual-comment context.
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* const context = createDualJsdocContext();
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
const createDualJsdocContext = () => {
|
|
52
|
+
const sourceText = [
|
|
53
|
+
"/**\n * first\n */",
|
|
54
|
+
"/**\n * second\n */",
|
|
55
|
+
"function demo() {}",
|
|
56
|
+
].join("\n");
|
|
57
|
+
const firstStart = sourceText.indexOf("/**");
|
|
58
|
+
const firstEnd = sourceText.indexOf("*/") + 2;
|
|
59
|
+
const secondStart = sourceText.indexOf("/**", firstEnd);
|
|
60
|
+
const secondEnd = sourceText.indexOf("*/", secondStart) + 2;
|
|
61
|
+
const first = createComment("*\n * first\n ", [firstStart, firstEnd]);
|
|
62
|
+
const second = createComment("*\n * second\n ", [secondStart, secondEnd]);
|
|
63
|
+
return {
|
|
64
|
+
node: createFunctionNode(sourceText),
|
|
65
|
+
second,
|
|
66
|
+
sourceCode: createSourceCode(sourceText, [first, second]),
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Creates a context with a single JSDoc comment.
|
|
71
|
+
* @returns The single-comment context.
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const context = createSingleJsdocContext();
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
const createSingleJsdocContext = () => {
|
|
78
|
+
const sourceText = ["/**\n * ok\n */", "function demo() {}"].join("\n");
|
|
79
|
+
const comment = createComment("*\n * ok\n ", [
|
|
80
|
+
0,
|
|
81
|
+
sourceText.indexOf("*/") + 2,
|
|
82
|
+
]);
|
|
83
|
+
return {
|
|
84
|
+
comment,
|
|
85
|
+
node: createFunctionNode(sourceText),
|
|
86
|
+
sourceCode: createSourceCode(sourceText, [comment]),
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* Creates a context with a non-JSDoc comment.
|
|
91
|
+
* @returns The lookup context.
|
|
92
|
+
* @example
|
|
93
|
+
* ```typescript
|
|
94
|
+
* const context = createNonJsdocContext();
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
const createNonJsdocContext = () => {
|
|
98
|
+
const sourceText = "// line\nfunction demo() {}";
|
|
99
|
+
const comment = {
|
|
100
|
+
range: [0, 7],
|
|
101
|
+
type: "Line",
|
|
102
|
+
value: " line",
|
|
103
|
+
};
|
|
104
|
+
return {
|
|
105
|
+
node: createFunctionNode(sourceText),
|
|
106
|
+
sourceCode: createSourceCode(sourceText, [comment]),
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* Creates a context with a JSDoc comment missing range data.
|
|
111
|
+
* @returns The lookup context.
|
|
112
|
+
* @example
|
|
113
|
+
* ```typescript
|
|
114
|
+
* const context = createRangeMissingContext();
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
const createRangeMissingContext = () => {
|
|
118
|
+
const sourceText = "function demo() {}";
|
|
119
|
+
const comment = {
|
|
120
|
+
type: "Block",
|
|
121
|
+
value: "*\n * ok\n ",
|
|
122
|
+
};
|
|
123
|
+
return {
|
|
124
|
+
node: createFunctionNode(sourceText),
|
|
125
|
+
sourceCode: createSourceCode(sourceText, [comment]),
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
export { createComment, createDualJsdocContext, createNonJsdocContext, createRangeMissingContext, createSingleJsdocContext, createSourceCode, };
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC11dGlsaXRpZXMtdGVzdC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RvbWFpbi9kb2NzL25vLWludGVyZmFjZS1tZW1iZXItZG9jcy9jb21tZW50LXV0aWxpdGllcy10ZXN0LWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0NBOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sYUFBYSxHQUFHLENBQUMsS0FBYSxFQUFFLEtBQXdCLEVBQVcsRUFBRSxDQUN6RSxDQUFDO0lBQ0MsS0FBSztJQUNMLElBQUksRUFBRSxPQUFPO0lBQ2IsS0FBSztDQUNOLENBQVksQ0FBQztBQUVoQjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLGdCQUFnQixHQUFHLENBQ3ZCLElBQVksRUFDWixRQUFtQixFQUNhLEVBQUUsQ0FDbEMsQ0FBQztJQUNDLGNBQWMsRUFBRSxHQUFjLEVBQUUsQ0FBQyxRQUFRO0lBQ3pDLElBQUk7Q0FDTCxDQUFtQyxDQUFDO0FBRXZDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLFVBQWtCLEVBQWEsRUFBRSxDQUMzRCxDQUFDO0lBQ0MsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDO0lBQzFELElBQUksRUFBRSxxQkFBcUI7Q0FDNUIsQ0FBYyxDQUFDO0FBRWxCOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLHNCQUFzQixHQUFHLEdBQXFCLEVBQUU7SUFDcEQsTUFBTSxVQUFVLEdBQUc7UUFDakIsb0JBQW9CO1FBQ3BCLHFCQUFxQjtRQUNyQixvQkFBb0I7S0FDckIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDYixNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1RCxNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN0RSxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUUxRSxPQUFPO1FBQ0wsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztRQUNwQyxNQUFNO1FBQ04sVUFBVSxFQUFFLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztLQUMxRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7R0FPRztBQUNILE1BQU0sd0JBQXdCLEdBQUcsR0FBdUIsRUFBRTtJQUN4RCxNQUFNLFVBQVUsR0FBRyxDQUFDLGlCQUFpQixFQUFFLG9CQUFvQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxhQUFhLEVBQUU7UUFDM0MsQ0FBQztRQUNELFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztLQUM3QixDQUFDLENBQUM7SUFFSCxPQUFPO1FBQ0wsT0FBTztRQUNQLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxVQUFVLENBQUM7UUFDcEMsVUFBVSxFQUFFLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3BELENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxHQUF1QixFQUFFO0lBQ3JELE1BQU0sVUFBVSxHQUFHLDZCQUE2QixDQUFDO0lBQ2pELE1BQU0sT0FBTyxHQUFHO1FBQ2QsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNiLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFLE9BQU87S0FDSixDQUFDO0lBRWIsT0FBTztRQUNMLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxVQUFVLENBQUM7UUFDcEMsVUFBVSxFQUFFLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3BELENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSx5QkFBeUIsR0FBRyxHQUF1QixFQUFFO0lBQ3pELE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDO0lBQ3hDLE1BQU0sT0FBTyxHQUFHO1FBQ2QsSUFBSSxFQUFFLE9BQU87UUFDYixLQUFLLEVBQUUsYUFBYTtLQUNWLENBQUM7SUFFYixPQUFPO1FBQ0wsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztRQUNwQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDcEQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE9BQU8sRUFDTCxhQUFhLEVBQ2Isc0JBQXNCLEVBQ3RCLHFCQUFxQixFQUNyQix5QkFBeUIsRUFDekIsd0JBQXdCLEVBQ3hCLGdCQUFnQixHQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSdWxlIH0gZnJvbSBcImVzbGludFwiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIENvbW1lbnQgPSBSZXR1cm5UeXBlPFxuICBSdWxlLlJ1bGVDb250ZXh0W1wic291cmNlQ29kZVwiXVtcImdldEFsbENvbW1lbnRzXCJdXG4+W251bWJlcl07XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBEdWFsSnNkb2NDb250ZXh0IHtcbiAgLyoqIE5vZGUgZmllbGQgdmFsdWUuICovXG4gIG5vZGU6IFJ1bGUuTm9kZTtcblxuICAvKiogU2Vjb25kIGZpZWxkIHZhbHVlLiAqL1xuICBzZWNvbmQ6IENvbW1lbnQ7XG5cbiAgLyoqIFNvdXJjZUNvZGUgZmllbGQgdmFsdWUuICovXG4gIHNvdXJjZUNvZGU6IFJ1bGUuUnVsZUNvbnRleHRbXCJzb3VyY2VDb2RlXCJdO1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgSnNkb2NMb29rdXBDb250ZXh0IHtcbiAgLyoqIE5vZGUgZmllbGQgdmFsdWUuICovXG4gIG5vZGU6IFJ1bGUuTm9kZTtcblxuICAvKiogU291cmNlQ29kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgc291cmNlQ29kZTogUnVsZS5SdWxlQ29udGV4dFtcInNvdXJjZUNvZGVcIl07XG59XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBTaW5nbGVKc2RvY0NvbnRleHQge1xuICAvKiogQ29tbWVudCBmaWVsZCB2YWx1ZS4gKi9cbiAgY29tbWVudDogQ29tbWVudDtcblxuICAvKiogTm9kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgbm9kZTogUnVsZS5Ob2RlO1xuXG4gIC8qKiBTb3VyY2VDb2RlIGZpZWxkIHZhbHVlLiAqL1xuICBzb3VyY2VDb2RlOiBSdWxlLlJ1bGVDb250ZXh0W1wic291cmNlQ29kZVwiXTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgYmxvY2sgY29tbWVudCB2YWx1ZSBmb3IgdGVzdHMuXG4gKiBAcGFyYW0gdmFsdWUgQ29tbWVudCB2YWx1ZSB3aXRob3V0IGRlbGltaXRlcnMuXG4gKiBAcGFyYW0gcmFuZ2UgQ29tbWVudCByYW5nZSBpbiB0aGUgc291cmNlIHRleHQuXG4gKiBAcmV0dXJucyBUaGUgY29tbWVudCBvYmplY3QuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgY29tbWVudCA9IGNyZWF0ZUNvbW1lbnQoXCIqXFxuICogb2tcXG4gXCIsIFswLCAxMF0pO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZUNvbW1lbnQgPSAodmFsdWU6IHN0cmluZywgcmFuZ2U/OiBbbnVtYmVyLCBudW1iZXJdKTogQ29tbWVudCA9PlxuICAoe1xuICAgIHJhbmdlLFxuICAgIHR5cGU6IFwiQmxvY2tcIixcbiAgICB2YWx1ZSxcbiAgfSkgYXMgQ29tbWVudDtcblxuLyoqXG4gKiBDcmVhdGVzIGEgc291cmNlIGNvZGUgd3JhcHBlciB3aXRoIGNvbW1lbnRzLlxuICogQHBhcmFtIHRleHQgRnVsbCBzb3VyY2UgdGV4dC5cbiAqIEBwYXJhbSBjb21tZW50cyBDb21tZW50IG5vZGVzIHRvIHJldHVybi5cbiAqIEByZXR1cm5zIFNvdXJjZUNvZGUgc3R1YiB1c2VkIGluIHRlc3RzLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHNvdXJjZUNvZGUgPSBjcmVhdGVTb3VyY2VDb2RlKFwiZnVuY3Rpb24gZGVtbygpIHt9XCIsIFtdKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVTb3VyY2VDb2RlID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGNvbW1lbnRzOiBDb21tZW50W10sXG4pOiBSdWxlLlJ1bGVDb250ZXh0W1wic291cmNlQ29kZVwiXSA9PlxuICAoe1xuICAgIGdldEFsbENvbW1lbnRzOiAoKTogQ29tbWVudFtdID0+IGNvbW1lbnRzLFxuICAgIHRleHQsXG4gIH0pIGFzIFJ1bGUuUnVsZUNvbnRleHRbXCJzb3VyY2VDb2RlXCJdO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBmdW5jdGlvbiBub2RlIGZvciB0aGUgdGVzdCBzb3VyY2UgdGV4dC5cbiAqIEBwYXJhbSBzb3VyY2VUZXh0IFNvdXJjZSBjb250ZW50IHRoYXQgaW5jbHVkZXMgYSBmdW5jdGlvbi5cbiAqIEByZXR1cm5zIEZ1bmN0aW9uIGRlY2xhcmF0aW9uIG5vZGUgdXNlZCBpbiB0ZXN0cy5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBub2RlID0gY3JlYXRlRnVuY3Rpb25Ob2RlKFwiZnVuY3Rpb24gZGVtbygpIHt9XCIpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZUZ1bmN0aW9uTm9kZSA9IChzb3VyY2VUZXh0OiBzdHJpbmcpOiBSdWxlLk5vZGUgPT5cbiAgKHtcbiAgICByYW5nZTogW3NvdXJjZVRleHQuaW5kZXhPZihcImZ1bmN0aW9uXCIpLCBzb3VyY2VUZXh0Lmxlbmd0aF0sXG4gICAgdHlwZTogXCJGdW5jdGlvbkRlY2xhcmF0aW9uXCIsXG4gIH0pIGFzIFJ1bGUuTm9kZTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgY29udGV4dCB3aXRoIHR3byBKU0RvYyBjb21tZW50cy5cbiAqIEByZXR1cm5zIFRoZSBkdWFsLWNvbW1lbnQgY29udGV4dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBjb250ZXh0ID0gY3JlYXRlRHVhbEpzZG9jQ29udGV4dCgpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZUR1YWxKc2RvY0NvbnRleHQgPSAoKTogRHVhbEpzZG9jQ29udGV4dCA9PiB7XG4gIGNvbnN0IHNvdXJjZVRleHQgPSBbXG4gICAgXCIvKipcXG4gKiBmaXJzdFxcbiAqL1wiLFxuICAgIFwiLyoqXFxuICogc2Vjb25kXFxuICovXCIsXG4gICAgXCJmdW5jdGlvbiBkZW1vKCkge31cIixcbiAgXS5qb2luKFwiXFxuXCIpO1xuICBjb25zdCBmaXJzdFN0YXJ0ID0gc291cmNlVGV4dC5pbmRleE9mKFwiLyoqXCIpO1xuICBjb25zdCBmaXJzdEVuZCA9IHNvdXJjZVRleHQuaW5kZXhPZihcIiovXCIpICsgMjtcbiAgY29uc3Qgc2Vjb25kU3RhcnQgPSBzb3VyY2VUZXh0LmluZGV4T2YoXCIvKipcIiwgZmlyc3RFbmQpO1xuICBjb25zdCBzZWNvbmRFbmQgPSBzb3VyY2VUZXh0LmluZGV4T2YoXCIqL1wiLCBzZWNvbmRTdGFydCkgKyAyO1xuICBjb25zdCBmaXJzdCA9IGNyZWF0ZUNvbW1lbnQoXCIqXFxuICogZmlyc3RcXG4gXCIsIFtmaXJzdFN0YXJ0LCBmaXJzdEVuZF0pO1xuICBjb25zdCBzZWNvbmQgPSBjcmVhdGVDb21tZW50KFwiKlxcbiAqIHNlY29uZFxcbiBcIiwgW3NlY29uZFN0YXJ0LCBzZWNvbmRFbmRdKTtcblxuICByZXR1cm4ge1xuICAgIG5vZGU6IGNyZWF0ZUZ1bmN0aW9uTm9kZShzb3VyY2VUZXh0KSxcbiAgICBzZWNvbmQsXG4gICAgc291cmNlQ29kZTogY3JlYXRlU291cmNlQ29kZShzb3VyY2VUZXh0LCBbZmlyc3QsIHNlY29uZF0pLFxuICB9O1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgY29udGV4dCB3aXRoIGEgc2luZ2xlIEpTRG9jIGNvbW1lbnQuXG4gKiBAcmV0dXJucyBUaGUgc2luZ2xlLWNvbW1lbnQgY29udGV4dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBjb250ZXh0ID0gY3JlYXRlU2luZ2xlSnNkb2NDb250ZXh0KCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlU2luZ2xlSnNkb2NDb250ZXh0ID0gKCk6IFNpbmdsZUpzZG9jQ29udGV4dCA9PiB7XG4gIGNvbnN0IHNvdXJjZVRleHQgPSBbXCIvKipcXG4gKiBva1xcbiAqL1wiLCBcImZ1bmN0aW9uIGRlbW8oKSB7fVwiXS5qb2luKFwiXFxuXCIpO1xuICBjb25zdCBjb21tZW50ID0gY3JlYXRlQ29tbWVudChcIipcXG4gKiBva1xcbiBcIiwgW1xuICAgIDAsXG4gICAgc291cmNlVGV4dC5pbmRleE9mKFwiKi9cIikgKyAyLFxuICBdKTtcblxuICByZXR1cm4ge1xuICAgIGNvbW1lbnQsXG4gICAgbm9kZTogY3JlYXRlRnVuY3Rpb25Ob2RlKHNvdXJjZVRleHQpLFxuICAgIHNvdXJjZUNvZGU6IGNyZWF0ZVNvdXJjZUNvZGUoc291cmNlVGV4dCwgW2NvbW1lbnRdKSxcbiAgfTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbnRleHQgd2l0aCBhIG5vbi1KU0RvYyBjb21tZW50LlxuICogQHJldHVybnMgVGhlIGxvb2t1cCBjb250ZXh0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGNvbnRleHQgPSBjcmVhdGVOb25Kc2RvY0NvbnRleHQoKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVOb25Kc2RvY0NvbnRleHQgPSAoKTogSnNkb2NMb29rdXBDb250ZXh0ID0+IHtcbiAgY29uc3Qgc291cmNlVGV4dCA9IFwiLy8gbGluZVxcbmZ1bmN0aW9uIGRlbW8oKSB7fVwiO1xuICBjb25zdCBjb21tZW50ID0ge1xuICAgIHJhbmdlOiBbMCwgN10sXG4gICAgdHlwZTogXCJMaW5lXCIsXG4gICAgdmFsdWU6IFwiIGxpbmVcIixcbiAgfSBhcyBDb21tZW50O1xuXG4gIHJldHVybiB7XG4gICAgbm9kZTogY3JlYXRlRnVuY3Rpb25Ob2RlKHNvdXJjZVRleHQpLFxuICAgIHNvdXJjZUNvZGU6IGNyZWF0ZVNvdXJjZUNvZGUoc291cmNlVGV4dCwgW2NvbW1lbnRdKSxcbiAgfTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbnRleHQgd2l0aCBhIEpTRG9jIGNvbW1lbnQgbWlzc2luZyByYW5nZSBkYXRhLlxuICogQHJldHVybnMgVGhlIGxvb2t1cCBjb250ZXh0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGNvbnRleHQgPSBjcmVhdGVSYW5nZU1pc3NpbmdDb250ZXh0KCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlUmFuZ2VNaXNzaW5nQ29udGV4dCA9ICgpOiBKc2RvY0xvb2t1cENvbnRleHQgPT4ge1xuICBjb25zdCBzb3VyY2VUZXh0ID0gXCJmdW5jdGlvbiBkZW1vKCkge31cIjtcbiAgY29uc3QgY29tbWVudCA9IHtcbiAgICB0eXBlOiBcIkJsb2NrXCIsXG4gICAgdmFsdWU6IFwiKlxcbiAqIG9rXFxuIFwiLFxuICB9IGFzIENvbW1lbnQ7XG5cbiAgcmV0dXJuIHtcbiAgICBub2RlOiBjcmVhdGVGdW5jdGlvbk5vZGUoc291cmNlVGV4dCksXG4gICAgc291cmNlQ29kZTogY3JlYXRlU291cmNlQ29kZShzb3VyY2VUZXh0LCBbY29tbWVudF0pLFxuICB9O1xufTtcblxuZXhwb3J0IHtcbiAgY3JlYXRlQ29tbWVudCxcbiAgY3JlYXRlRHVhbEpzZG9jQ29udGV4dCxcbiAgY3JlYXRlTm9uSnNkb2NDb250ZXh0LFxuICBjcmVhdGVSYW5nZU1pc3NpbmdDb250ZXh0LFxuICBjcmVhdGVTaW5nbGVKc2RvY0NvbnRleHQsXG4gIGNyZWF0ZVNvdXJjZUNvZGUsXG59O1xuZXhwb3J0IHR5cGUgeyBDb21tZW50IH07XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/docs/no-interface-member-docs/comment-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA2DpD;;;;;;;;;GASG;AACH,QAAA,MAAM,eAAe,GACnB,YAAY,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAC1C,MAAM,IAAI,CAAC,IAAI,KACd,OAAO,GAAG,SASZ,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,GAClB,YAAY,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAC1C,SAAS,OAAO,KACf,MASF,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,eAAe,GAAI,aAAa,MAAM,KAAG,WAAW,EAyBzD,CAAC;AAEF;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,GACrB,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,MAAM,WAAW,KAChB,CAAC,MAAM,EAAE,MAAM,CAuBjB,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
|