@codeperfect/eslint-plugin 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/dist/application/custom-rules.d.ts +3 -0
  2. package/dist/application/custom-rules.d.ts.map +1 -1
  3. package/dist/application/custom-rules.js +3 -2
  4. package/dist/application/index.d.ts +1 -1
  5. package/dist/application/index.d.ts.map +1 -1
  6. package/dist/application/index.js +2 -2
  7. package/dist/codeperfect-eslint-plugin-1.0.0.tgz +0 -0
  8. package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.d.ts +0 -2
  9. package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.d.ts.map +1 -1
  10. package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.js +1 -2
  11. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts +0 -2
  12. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts.map +1 -1
  13. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.js +2 -10
  14. package/dist/domain/architecture/index.d.ts +1 -0
  15. package/dist/domain/architecture/index.d.ts.map +1 -1
  16. package/dist/domain/architecture/index.js +2 -1
  17. package/dist/domain/architecture/no-unused-public-members/index.d.ts +2 -0
  18. package/dist/domain/architecture/no-unused-public-members/index.d.ts.map +1 -0
  19. package/dist/domain/architecture/no-unused-public-members/index.js +2 -0
  20. package/dist/domain/architecture/no-unused-public-members/member-contract-utilities.d.ts +16 -0
  21. package/dist/domain/architecture/no-unused-public-members/member-contract-utilities.d.ts.map +1 -0
  22. package/dist/domain/architecture/no-unused-public-members/member-contract-utilities.js +102 -0
  23. package/dist/domain/architecture/no-unused-public-members/member-declaration-utilities.d.ts +34 -0
  24. package/dist/domain/architecture/no-unused-public-members/member-declaration-utilities.d.ts.map +1 -0
  25. package/dist/domain/architecture/no-unused-public-members/member-declaration-utilities.js +55 -0
  26. package/dist/domain/architecture/no-unused-public-members/member-host-utilities.d.ts +68 -0
  27. package/dist/domain/architecture/no-unused-public-members/member-host-utilities.d.ts.map +1 -0
  28. package/dist/domain/architecture/no-unused-public-members/member-host-utilities.js +195 -0
  29. package/dist/domain/architecture/no-unused-public-members/member-public-api-utilities.d.ts +30 -0
  30. package/dist/domain/architecture/no-unused-public-members/member-public-api-utilities.d.ts.map +1 -0
  31. package/dist/domain/architecture/no-unused-public-members/member-public-api-utilities.js +101 -0
  32. package/dist/domain/architecture/no-unused-public-members/member-usage-handoff-utilities.d.ts +28 -0
  33. package/dist/domain/architecture/no-unused-public-members/member-usage-handoff-utilities.d.ts.map +1 -0
  34. package/dist/domain/architecture/no-unused-public-members/member-usage-handoff-utilities.js +125 -0
  35. package/dist/domain/architecture/no-unused-public-members/member-usage-reference-utilities.d.ts +29 -0
  36. package/dist/domain/architecture/no-unused-public-members/member-usage-reference-utilities.d.ts.map +1 -0
  37. package/dist/domain/architecture/no-unused-public-members/member-usage-reference-utilities.js +108 -0
  38. package/dist/domain/architecture/no-unused-public-members/member-usage-type-utilities.d.ts +42 -0
  39. package/dist/domain/architecture/no-unused-public-members/member-usage-type-utilities.d.ts.map +1 -0
  40. package/dist/domain/architecture/no-unused-public-members/member-usage-type-utilities.js +96 -0
  41. package/dist/domain/architecture/no-unused-public-members/member-usage-utilities.d.ts +18 -0
  42. package/dist/domain/architecture/no-unused-public-members/member-usage-utilities.d.ts.map +1 -0
  43. package/dist/domain/architecture/no-unused-public-members/member-usage-utilities.js +128 -0
  44. package/dist/domain/architecture/no-unused-public-members/member-utilities.d.ts +41 -0
  45. package/dist/domain/architecture/no-unused-public-members/member-utilities.d.ts.map +1 -0
  46. package/dist/domain/architecture/no-unused-public-members/member-utilities.js +51 -0
  47. package/dist/domain/architecture/no-unused-public-members/rule.d.ts +5 -0
  48. package/dist/domain/architecture/no-unused-public-members/rule.d.ts.map +1 -0
  49. package/dist/domain/architecture/no-unused-public-members/rule.js +78 -0
  50. package/dist/domain/docs/no-interface-member-docs/comment-utilities.js +4 -4
  51. package/dist/domain/docs/no-interface-member-docs/parameter-tags.d.ts.map +1 -1
  52. package/dist/domain/docs/no-interface-member-docs/parameter-tags.js +2 -2
  53. package/dist/domain/docs/no-interface-member-docs/parameter-utilities.js +4 -4
  54. package/dist/domain/docs/no-interface-member-docs/rule.d.ts.map +1 -1
  55. package/dist/domain/docs/no-interface-member-docs/rule.js +2 -5
  56. package/dist/domain/docs/require-example-language/example-utilities.d.ts +1 -7
  57. package/dist/domain/docs/require-example-language/example-utilities.d.ts.map +1 -1
  58. package/dist/domain/docs/require-example-language/example-utilities.js +4 -6
  59. package/dist/domain/docs/require-example-language/examples.d.ts.map +1 -1
  60. package/dist/domain/docs/require-example-language/examples.js +2 -4
  61. package/dist/domain/docs/require-example-language/reporting.d.ts.map +1 -1
  62. package/dist/domain/docs/require-example-language/reporting.js +1 -4
  63. package/dist/domain/docs/require-example-language/types.d.ts +0 -2
  64. package/dist/domain/docs/require-example-language/types.d.ts.map +1 -1
  65. package/dist/domain/docs/require-example-language/types.js +1 -1
  66. package/dist/domain/index.d.ts +1 -1
  67. package/dist/domain/index.d.ts.map +1 -1
  68. package/dist/domain/index.js +2 -2
  69. package/dist/domain/testing/aaa/analyzer.analysis.d.ts.map +1 -1
  70. package/dist/domain/testing/aaa/analyzer.analysis.js +2 -7
  71. package/dist/domain/testing/aaa/analyzer.assertions.js +2 -2
  72. package/dist/domain/testing/aaa/analyzer.classification.js +2 -2
  73. package/dist/domain/testing/aaa/types.d.ts +0 -4
  74. package/dist/domain/testing/aaa/types.d.ts.map +1 -1
  75. package/dist/domain/testing/aaa/types.js +1 -1
  76. package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.d.ts.map +1 -1
  77. package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.js +2 -7
  78. package/dist/domain/testing/prefer-vi-mocked-import/match-bindings.d.ts.map +1 -1
  79. package/dist/domain/testing/prefer-vi-mocked-import/match-bindings.js +5 -9
  80. package/dist/domain/testing/prefer-vi-mocked-import/match-collisions.d.ts.map +1 -1
  81. package/dist/domain/testing/prefer-vi-mocked-import/match-collisions.js +2 -7
  82. package/dist/domain/testing/prefer-vi-mocked-import/match-declarations.d.ts.map +1 -1
  83. package/dist/domain/testing/prefer-vi-mocked-import/match-declarations.js +5 -5
  84. package/dist/domain/testing/prefer-vi-mocked-import/match-imports.d.ts.map +1 -1
  85. package/dist/domain/testing/prefer-vi-mocked-import/match-imports.js +13 -20
  86. package/dist/domain/testing/prefer-vi-mocked-import/types.d.ts +0 -2
  87. package/dist/domain/testing/prefer-vi-mocked-import/types.d.ts.map +1 -1
  88. package/dist/domain/testing/prefer-vi-mocked-import/types.js +1 -1
  89. package/dist/domain/testing/require-test-companion/require-test-companion-options.js +3 -3
  90. package/dist/domain/testing/require-test-companion/rule.js +2 -2
  91. package/dist/index.d.ts +1 -1
  92. package/dist/index.d.ts.map +1 -1
  93. package/dist/index.js +2 -2
  94. package/dist/infrastructure/codeperfect-plugin.d.ts +2 -0
  95. package/dist/infrastructure/codeperfect-plugin.d.ts.map +1 -1
  96. package/dist/infrastructure/codeperfect-plugin.js +3 -2
  97. package/dist/infrastructure/presets.d.ts.map +1 -1
  98. package/dist/infrastructure/presets.js +3 -1
  99. package/package.json +24 -24
@@ -28,6 +28,9 @@ declare const customRules: readonly [{
28
28
  }, {
29
29
  readonly rule: Rule.RuleModule;
30
30
  readonly ruleName: "no-unused-exports";
31
+ }, {
32
+ readonly rule: Rule.RuleModule;
33
+ readonly ruleName: "no-unused-public-members";
31
34
  }, {
32
35
  readonly rule: Rule.RuleModule;
33
36
  readonly ruleName: "no-reexports-outside-barrels";
@@ -1 +1 @@
1
- {"version":3,"file":"custom-rules.d.ts","sourceRoot":"","sources":["../../src/application/custom-rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAuBnC,+DAA+D;AAC/D,UAAU,eAAe;IACvB,kCAAkC;IAClC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;IAEtB,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,mEAAmE;AACnE,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+B8B,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"custom-rules.d.ts","sourceRoot":"","sources":["../../src/application/custom-rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAwBnC,+DAA+D;AAC/D,UAAU,eAAe;IACvB,kCAAkC;IAClC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;IAEtB,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,mEAAmE;AACnE,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgC8B,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,eAAe,EAAE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { assertActualExpectedNamesRule, barrelFilesExportsOnlyRule, consistentBarrelFilesRule, enforceAaaStructureRule, noImportExportAliasesRule, noImportExportExtensionsRule, noInterfaceMemberDocumentationRule, noMultipleDeclaratorsRule, noReexportsOutsideBarrelsRule, noUnusedExportsRule, noUselessDelegationRule, preferInterfaceTypesRule, preferViMockedImportRule, requireActResultCaptureRule, requireExampleLanguageRule, requireTestCompanionRule, singleActStatementRule, singleLineJsdocRule, } from "../domain/index.js";
1
+ import { assertActualExpectedNamesRule, barrelFilesExportsOnlyRule, consistentBarrelFilesRule, enforceAaaStructureRule, noImportExportAliasesRule, noImportExportExtensionsRule, noInterfaceMemberDocumentationRule, noMultipleDeclaratorsRule, noReexportsOutsideBarrelsRule, noUnusedExportsRule, noUnusedPublicMembersRule, noUselessDelegationRule, preferInterfaceTypesRule, preferViMockedImportRule, requireActResultCaptureRule, requireExampleLanguageRule, requireTestCompanionRule, singleActStatementRule, singleLineJsdocRule, } from "../domain/index.js";
2
2
  /** Source-of-truth registry for all package-owned custom rules. */
3
3
  const customRules = [
4
4
  {
@@ -14,6 +14,7 @@ const customRules = [
14
14
  ruleName: "no-import-export-extensions",
15
15
  },
16
16
  { rule: noUnusedExportsRule, ruleName: "no-unused-exports" },
17
+ { rule: noUnusedPublicMembersRule, ruleName: "no-unused-public-members" },
17
18
  {
18
19
  rule: noReexportsOutsideBarrelsRule,
19
20
  ruleName: "no-reexports-outside-barrels",
@@ -33,4 +34,4 @@ const customRules = [
33
34
  { rule: singleActStatementRule, ruleName: "single-act-statement" },
34
35
  ];
35
36
  export { customRules };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXJ1bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcGxpY2F0aW9uL2N1c3RvbS1ydWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLDBCQUEwQixFQUMxQix5QkFBeUIsRUFDekIsdUJBQXVCLEVBQ3ZCLHlCQUF5QixFQUN6Qiw0QkFBNEIsRUFDNUIsa0NBQWtDLEVBQ2xDLHlCQUF5QixFQUN6Qiw2QkFBNkIsRUFDN0IsbUJBQW1CLEVBQ25CLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLDJCQUEyQixFQUMzQiwwQkFBMEIsRUFDMUIsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixtQkFBbUIsR0FDcEIsTUFBTSxXQUFXLENBQUM7QUFXbkIsbUVBQW1FO0FBQ25FLE1BQU0sV0FBVyxHQUFHO0lBQ2xCO1FBQ0UsSUFBSSxFQUFFLDZCQUE2QjtRQUNuQyxRQUFRLEVBQUUsOEJBQThCO0tBQ3pDO0lBQ0QsRUFBRSxJQUFJLEVBQUUsMEJBQTBCLEVBQUUsUUFBUSxFQUFFLDJCQUEyQixFQUFFO0lBQzNFLEVBQUUsSUFBSSxFQUFFLHlCQUF5QixFQUFFLFFBQVEsRUFBRSx5QkFBeUIsRUFBRTtJQUN4RSxFQUFFLElBQUksRUFBRSx1QkFBdUIsRUFBRSxRQUFRLEVBQUUsdUJBQXVCLEVBQUU7SUFDcEUsRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLDBCQUEwQixFQUFFO0lBQ3pFO1FBQ0UsSUFBSSxFQUFFLDRCQUE0QjtRQUNsQyxRQUFRLEVBQUUsNkJBQTZCO0tBQ3hDO0lBQ0QsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsUUFBUSxFQUFFLG1CQUFtQixFQUFFO0lBQzVEO1FBQ0UsSUFBSSxFQUFFLDZCQUE2QjtRQUNuQyxRQUFRLEVBQUUsOEJBQThCO0tBQ3pDO0lBQ0QsRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLHlCQUF5QixFQUFFO0lBQ3hFLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRTtJQUNwRSxFQUFFLElBQUksRUFBRSx3QkFBd0IsRUFBRSxRQUFRLEVBQUUsd0JBQXdCLEVBQUU7SUFDdEU7UUFDRSxJQUFJLEVBQUUsa0NBQWtDO1FBQ3hDLFFBQVEsRUFBRSwwQkFBMEI7S0FDckM7SUFDRCxFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUU7SUFDMUUsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsUUFBUSxFQUFFLG1CQUFtQixFQUFFO0lBQzVELEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLFFBQVEsRUFBRSx5QkFBeUIsRUFBRTtJQUN2RSxFQUFFLElBQUksRUFBRSwyQkFBMkIsRUFBRSxRQUFRLEVBQUUsNEJBQTRCLEVBQUU7SUFDN0UsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFO0lBQ3RFLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRTtDQUNyQixDQUFDO0FBRWhELE9BQU8sRUFBRSxXQUFXLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUnVsZSB9IGZyb20gXCJlc2xpbnRcIjtcblxuaW1wb3J0IHtcbiAgYXNzZXJ0QWN0dWFsRXhwZWN0ZWROYW1lc1J1bGUsXG4gIGJhcnJlbEZpbGVzRXhwb3J0c09ubHlSdWxlLFxuICBjb25zaXN0ZW50QmFycmVsRmlsZXNSdWxlLFxuICBlbmZvcmNlQWFhU3RydWN0dXJlUnVsZSxcbiAgbm9JbXBvcnRFeHBvcnRBbGlhc2VzUnVsZSxcbiAgbm9JbXBvcnRFeHBvcnRFeHRlbnNpb25zUnVsZSxcbiAgbm9JbnRlcmZhY2VNZW1iZXJEb2N1bWVudGF0aW9uUnVsZSxcbiAgbm9NdWx0aXBsZURlY2xhcmF0b3JzUnVsZSxcbiAgbm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc1J1bGUsXG4gIG5vVW51c2VkRXhwb3J0c1J1bGUsXG4gIG5vVXNlbGVzc0RlbGVnYXRpb25SdWxlLFxuICBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGUsXG4gIHByZWZlclZpTW9ja2VkSW1wb3J0UnVsZSxcbiAgcmVxdWlyZUFjdFJlc3VsdENhcHR1cmVSdWxlLFxuICByZXF1aXJlRXhhbXBsZUxhbmd1YWdlUnVsZSxcbiAgcmVxdWlyZVRlc3RDb21wYW5pb25SdWxlLFxuICBzaW5nbGVBY3RTdGF0ZW1lbnRSdWxlLFxuICBzaW5nbGVMaW5lSnNkb2NSdWxlLFxufSBmcm9tIFwiLi4vZG9tYWluXCI7XG5cbi8qKiBJbnRlcm5hbCByZWdpc3RyeSBlbnRyeSBmb3IgYSBwYWNrYWdlLW93bmVkIGN1c3RvbSBydWxlLiAqL1xuaW50ZXJmYWNlIEN1c3RvbVJ1bGVFbnRyeSB7XG4gIC8qKiBFU0xpbnQgcnVsZSBpbXBsZW1lbnRhdGlvbi4gKi9cbiAgcnVsZTogUnVsZS5SdWxlTW9kdWxlO1xuXG4gIC8qKiBFU0xpbnQgcnVsZSBuYW1lIHdpdGhvdXQgdGhlIHBsdWdpbiBwcmVmaXguICovXG4gIHJ1bGVOYW1lOiBzdHJpbmc7XG59XG5cbi8qKiBTb3VyY2Utb2YtdHJ1dGggcmVnaXN0cnkgZm9yIGFsbCBwYWNrYWdlLW93bmVkIGN1c3RvbSBydWxlcy4gKi9cbmNvbnN0IGN1c3RvbVJ1bGVzID0gW1xuICB7XG4gICAgcnVsZTogYXNzZXJ0QWN0dWFsRXhwZWN0ZWROYW1lc1J1bGUsXG4gICAgcnVsZU5hbWU6IFwiYXNzZXJ0LWFjdHVhbC1leHBlY3RlZC1uYW1lc1wiLFxuICB9LFxuICB7IHJ1bGU6IGJhcnJlbEZpbGVzRXhwb3J0c09ubHlSdWxlLCBydWxlTmFtZTogXCJiYXJyZWwtZmlsZXMtZXhwb3J0cy1vbmx5XCIgfSxcbiAgeyBydWxlOiBjb25zaXN0ZW50QmFycmVsRmlsZXNSdWxlLCBydWxlTmFtZTogXCJjb25zaXN0ZW50LWJhcnJlbC1maWxlc1wiIH0sXG4gIHsgcnVsZTogZW5mb3JjZUFhYVN0cnVjdHVyZVJ1bGUsIHJ1bGVOYW1lOiBcImVuZm9yY2UtYWFhLXN0cnVjdHVyZVwiIH0sXG4gIHsgcnVsZTogbm9JbXBvcnRFeHBvcnRBbGlhc2VzUnVsZSwgcnVsZU5hbWU6IFwibm8taW1wb3J0LWV4cG9ydC1hbGlhc2VzXCIgfSxcbiAge1xuICAgIHJ1bGU6IG5vSW1wb3J0RXhwb3J0RXh0ZW5zaW9uc1J1bGUsXG4gICAgcnVsZU5hbWU6IFwibm8taW1wb3J0LWV4cG9ydC1leHRlbnNpb25zXCIsXG4gIH0sXG4gIHsgcnVsZTogbm9VbnVzZWRFeHBvcnRzUnVsZSwgcnVsZU5hbWU6IFwibm8tdW51c2VkLWV4cG9ydHNcIiB9LFxuICB7XG4gICAgcnVsZTogbm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc1J1bGUsXG4gICAgcnVsZU5hbWU6IFwibm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVsc1wiLFxuICB9LFxuICB7IHJ1bGU6IG5vTXVsdGlwbGVEZWNsYXJhdG9yc1J1bGUsIHJ1bGVOYW1lOiBcIm5vLW11bHRpcGxlLWRlY2xhcmF0b3JzXCIgfSxcbiAgeyBydWxlOiBub1VzZWxlc3NEZWxlZ2F0aW9uUnVsZSwgcnVsZU5hbWU6IFwibm8tdXNlbGVzcy1kZWxlZ2F0aW9uXCIgfSxcbiAgeyBydWxlOiBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGUsIHJ1bGVOYW1lOiBcInByZWZlci1pbnRlcmZhY2UtdHlwZXNcIiB9LFxuICB7XG4gICAgcnVsZTogbm9JbnRlcmZhY2VNZW1iZXJEb2N1bWVudGF0aW9uUnVsZSxcbiAgICBydWxlTmFtZTogXCJuby1pbnRlcmZhY2UtbWVtYmVyLWRvY3NcIixcbiAgfSxcbiAgeyBydWxlOiByZXF1aXJlRXhhbXBsZUxhbmd1YWdlUnVsZSwgcnVsZU5hbWU6IFwicmVxdWlyZS1leGFtcGxlLWxhbmd1YWdlXCIgfSxcbiAgeyBydWxlOiBzaW5nbGVMaW5lSnNkb2NSdWxlLCBydWxlTmFtZTogXCJzaW5nbGUtbGluZS1qc2RvY1wiIH0sXG4gIHsgcnVsZTogcHJlZmVyVmlNb2NrZWRJbXBvcnRSdWxlLCBydWxlTmFtZTogXCJwcmVmZXItdmktbW9ja2VkLWltcG9ydFwiIH0sXG4gIHsgcnVsZTogcmVxdWlyZUFjdFJlc3VsdENhcHR1cmVSdWxlLCBydWxlTmFtZTogXCJyZXF1aXJlLWFjdC1yZXN1bHQtY2FwdHVyZVwiIH0sXG4gIHsgcnVsZTogcmVxdWlyZVRlc3RDb21wYW5pb25SdWxlLCBydWxlTmFtZTogXCJyZXF1aXJlLXRlc3QtY29tcGFuaW9uXCIgfSxcbiAgeyBydWxlOiBzaW5nbGVBY3RTdGF0ZW1lbnRSdWxlLCBydWxlTmFtZTogXCJzaW5nbGUtYWN0LXN0YXRlbWVudFwiIH0sXG5dIGFzIGNvbnN0IHNhdGlzZmllcyByZWFkb25seSBDdXN0b21SdWxlRW50cnlbXTtcblxuZXhwb3J0IHsgY3VzdG9tUnVsZXMgfTtcbmV4cG9ydCB0eXBlIHsgQ3VzdG9tUnVsZUVudHJ5IH07XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXJ1bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcGxpY2F0aW9uL2N1c3RvbS1ydWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLDBCQUEwQixFQUMxQix5QkFBeUIsRUFDekIsdUJBQXVCLEVBQ3ZCLHlCQUF5QixFQUN6Qiw0QkFBNEIsRUFDNUIsa0NBQWtDLEVBQ2xDLHlCQUF5QixFQUN6Qiw2QkFBNkIsRUFDN0IsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6Qix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHdCQUF3QixFQUN4QiwyQkFBMkIsRUFDM0IsMEJBQTBCLEVBQzFCLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsbUJBQW1CLEdBQ3BCLE1BQU0sV0FBVyxDQUFDO0FBV25CLG1FQUFtRTtBQUNuRSxNQUFNLFdBQVcsR0FBRztJQUNsQjtRQUNFLElBQUksRUFBRSw2QkFBNkI7UUFDbkMsUUFBUSxFQUFFLDhCQUE4QjtLQUN6QztJQUNELEVBQUUsSUFBSSxFQUFFLDBCQUEwQixFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBRTtJQUMzRSxFQUFFLElBQUksRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUseUJBQXlCLEVBQUU7SUFDeEUsRUFBRSxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLHVCQUF1QixFQUFFO0lBQ3BFLEVBQUUsSUFBSSxFQUFFLHlCQUF5QixFQUFFLFFBQVEsRUFBRSwwQkFBMEIsRUFBRTtJQUN6RTtRQUNFLElBQUksRUFBRSw0QkFBNEI7UUFDbEMsUUFBUSxFQUFFLDZCQUE2QjtLQUN4QztJQUNELEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxtQkFBbUIsRUFBRTtJQUM1RCxFQUFFLElBQUksRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUU7SUFDekU7UUFDRSxJQUFJLEVBQUUsNkJBQTZCO1FBQ25DLFFBQVEsRUFBRSw4QkFBOEI7S0FDekM7SUFDRCxFQUFFLElBQUksRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUseUJBQXlCLEVBQUU7SUFDeEUsRUFBRSxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLHVCQUF1QixFQUFFO0lBQ3BFLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLFFBQVEsRUFBRSx3QkFBd0IsRUFBRTtJQUN0RTtRQUNFLElBQUksRUFBRSxrQ0FBa0M7UUFDeEMsUUFBUSxFQUFFLDBCQUEwQjtLQUNyQztJQUNELEVBQUUsSUFBSSxFQUFFLDBCQUEwQixFQUFFLFFBQVEsRUFBRSwwQkFBMEIsRUFBRTtJQUMxRSxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUU7SUFDNUQsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsUUFBUSxFQUFFLHlCQUF5QixFQUFFO0lBQ3ZFLEVBQUUsSUFBSSxFQUFFLDJCQUEyQixFQUFFLFFBQVEsRUFBRSw0QkFBNEIsRUFBRTtJQUM3RSxFQUFFLElBQUksRUFBRSx3QkFBd0IsRUFBRSxRQUFRLEVBQUUsd0JBQXdCLEVBQUU7SUFDdEUsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFO0NBQ3JCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSdWxlIH0gZnJvbSBcImVzbGludFwiO1xuXG5pbXBvcnQge1xuICBhc3NlcnRBY3R1YWxFeHBlY3RlZE5hbWVzUnVsZSxcbiAgYmFycmVsRmlsZXNFeHBvcnRzT25seVJ1bGUsXG4gIGNvbnNpc3RlbnRCYXJyZWxGaWxlc1J1bGUsXG4gIGVuZm9yY2VBYWFTdHJ1Y3R1cmVSdWxlLFxuICBub0ltcG9ydEV4cG9ydEFsaWFzZXNSdWxlLFxuICBub0ltcG9ydEV4cG9ydEV4dGVuc2lvbnNSdWxlLFxuICBub0ludGVyZmFjZU1lbWJlckRvY3VtZW50YXRpb25SdWxlLFxuICBub011bHRpcGxlRGVjbGFyYXRvcnNSdWxlLFxuICBub1JlZXhwb3J0c091dHNpZGVCYXJyZWxzUnVsZSxcbiAgbm9VbnVzZWRFeHBvcnRzUnVsZSxcbiAgbm9VbnVzZWRQdWJsaWNNZW1iZXJzUnVsZSxcbiAgbm9Vc2VsZXNzRGVsZWdhdGlvblJ1bGUsXG4gIHByZWZlckludGVyZmFjZVR5cGVzUnVsZSxcbiAgcHJlZmVyVmlNb2NrZWRJbXBvcnRSdWxlLFxuICByZXF1aXJlQWN0UmVzdWx0Q2FwdHVyZVJ1bGUsXG4gIHJlcXVpcmVFeGFtcGxlTGFuZ3VhZ2VSdWxlLFxuICByZXF1aXJlVGVzdENvbXBhbmlvblJ1bGUsXG4gIHNpbmdsZUFjdFN0YXRlbWVudFJ1bGUsXG4gIHNpbmdsZUxpbmVKc2RvY1J1bGUsXG59IGZyb20gXCIuLi9kb21haW5cIjtcblxuLyoqIEludGVybmFsIHJlZ2lzdHJ5IGVudHJ5IGZvciBhIHBhY2thZ2Utb3duZWQgY3VzdG9tIHJ1bGUuICovXG5pbnRlcmZhY2UgQ3VzdG9tUnVsZUVudHJ5IHtcbiAgLyoqIEVTTGludCBydWxlIGltcGxlbWVudGF0aW9uLiAqL1xuICBydWxlOiBSdWxlLlJ1bGVNb2R1bGU7XG5cbiAgLyoqIEVTTGludCBydWxlIG5hbWUgd2l0aG91dCB0aGUgcGx1Z2luIHByZWZpeC4gKi9cbiAgcnVsZU5hbWU6IHN0cmluZztcbn1cblxuLyoqIFNvdXJjZS1vZi10cnV0aCByZWdpc3RyeSBmb3IgYWxsIHBhY2thZ2Utb3duZWQgY3VzdG9tIHJ1bGVzLiAqL1xuY29uc3QgY3VzdG9tUnVsZXMgPSBbXG4gIHtcbiAgICBydWxlOiBhc3NlcnRBY3R1YWxFeHBlY3RlZE5hbWVzUnVsZSxcbiAgICBydWxlTmFtZTogXCJhc3NlcnQtYWN0dWFsLWV4cGVjdGVkLW5hbWVzXCIsXG4gIH0sXG4gIHsgcnVsZTogYmFycmVsRmlsZXNFeHBvcnRzT25seVJ1bGUsIHJ1bGVOYW1lOiBcImJhcnJlbC1maWxlcy1leHBvcnRzLW9ubHlcIiB9LFxuICB7IHJ1bGU6IGNvbnNpc3RlbnRCYXJyZWxGaWxlc1J1bGUsIHJ1bGVOYW1lOiBcImNvbnNpc3RlbnQtYmFycmVsLWZpbGVzXCIgfSxcbiAgeyBydWxlOiBlbmZvcmNlQWFhU3RydWN0dXJlUnVsZSwgcnVsZU5hbWU6IFwiZW5mb3JjZS1hYWEtc3RydWN0dXJlXCIgfSxcbiAgeyBydWxlOiBub0ltcG9ydEV4cG9ydEFsaWFzZXNSdWxlLCBydWxlTmFtZTogXCJuby1pbXBvcnQtZXhwb3J0LWFsaWFzZXNcIiB9LFxuICB7XG4gICAgcnVsZTogbm9JbXBvcnRFeHBvcnRFeHRlbnNpb25zUnVsZSxcbiAgICBydWxlTmFtZTogXCJuby1pbXBvcnQtZXhwb3J0LWV4dGVuc2lvbnNcIixcbiAgfSxcbiAgeyBydWxlOiBub1VudXNlZEV4cG9ydHNSdWxlLCBydWxlTmFtZTogXCJuby11bnVzZWQtZXhwb3J0c1wiIH0sXG4gIHsgcnVsZTogbm9VbnVzZWRQdWJsaWNNZW1iZXJzUnVsZSwgcnVsZU5hbWU6IFwibm8tdW51c2VkLXB1YmxpYy1tZW1iZXJzXCIgfSxcbiAge1xuICAgIHJ1bGU6IG5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNSdWxlLFxuICAgIHJ1bGVOYW1lOiBcIm5vLXJlZXhwb3J0cy1vdXRzaWRlLWJhcnJlbHNcIixcbiAgfSxcbiAgeyBydWxlOiBub011bHRpcGxlRGVjbGFyYXRvcnNSdWxlLCBydWxlTmFtZTogXCJuby1tdWx0aXBsZS1kZWNsYXJhdG9yc1wiIH0sXG4gIHsgcnVsZTogbm9Vc2VsZXNzRGVsZWdhdGlvblJ1bGUsIHJ1bGVOYW1lOiBcIm5vLXVzZWxlc3MtZGVsZWdhdGlvblwiIH0sXG4gIHsgcnVsZTogcHJlZmVySW50ZXJmYWNlVHlwZXNSdWxlLCBydWxlTmFtZTogXCJwcmVmZXItaW50ZXJmYWNlLXR5cGVzXCIgfSxcbiAge1xuICAgIHJ1bGU6IG5vSW50ZXJmYWNlTWVtYmVyRG9jdW1lbnRhdGlvblJ1bGUsXG4gICAgcnVsZU5hbWU6IFwibm8taW50ZXJmYWNlLW1lbWJlci1kb2NzXCIsXG4gIH0sXG4gIHsgcnVsZTogcmVxdWlyZUV4YW1wbGVMYW5ndWFnZVJ1bGUsIHJ1bGVOYW1lOiBcInJlcXVpcmUtZXhhbXBsZS1sYW5ndWFnZVwiIH0sXG4gIHsgcnVsZTogc2luZ2xlTGluZUpzZG9jUnVsZSwgcnVsZU5hbWU6IFwic2luZ2xlLWxpbmUtanNkb2NcIiB9LFxuICB7IHJ1bGU6IHByZWZlclZpTW9ja2VkSW1wb3J0UnVsZSwgcnVsZU5hbWU6IFwicHJlZmVyLXZpLW1vY2tlZC1pbXBvcnRcIiB9LFxuICB7IHJ1bGU6IHJlcXVpcmVBY3RSZXN1bHRDYXB0dXJlUnVsZSwgcnVsZU5hbWU6IFwicmVxdWlyZS1hY3QtcmVzdWx0LWNhcHR1cmVcIiB9LFxuICB7IHJ1bGU6IHJlcXVpcmVUZXN0Q29tcGFuaW9uUnVsZSwgcnVsZU5hbWU6IFwicmVxdWlyZS10ZXN0LWNvbXBhbmlvblwiIH0sXG4gIHsgcnVsZTogc2luZ2xlQWN0U3RhdGVtZW50UnVsZSwgcnVsZU5hbWU6IFwic2luZ2xlLWFjdC1zdGF0ZW1lbnRcIiB9LFxuXSBhcyBjb25zdCBzYXRpc2ZpZXMgcmVhZG9ubHkgQ3VzdG9tUnVsZUVudHJ5W107XG5cbmV4cG9ydCB7IGN1c3RvbVJ1bGVzIH07XG5leHBvcnQgdHlwZSB7IEN1c3RvbVJ1bGVFbnRyeSB9O1xuIl19
@@ -1,4 +1,4 @@
1
- export { assertActualExpectedNamesRule, barrelFilesExportsOnlyRule, consistentBarrelFilesRule, enforceAaaStructureRule, noImportExportAliasesRule, noImportExportExtensionsRule, noInterfaceMemberDocumentationRule, noMultipleDeclaratorsRule, noReexportsOutsideBarrelsRule, noUnusedExportsRule, noUselessDelegationRule, preferInterfaceTypesRule, preferViMockedImportRule, requireActResultCaptureRule, requireExampleLanguageRule, requireTestCompanionRule, singleActStatementRule, singleLineJsdocRule, } from "../domain/index.js";
1
+ export { assertActualExpectedNamesRule, barrelFilesExportsOnlyRule, consistentBarrelFilesRule, enforceAaaStructureRule, noImportExportAliasesRule, noImportExportExtensionsRule, noInterfaceMemberDocumentationRule, noMultipleDeclaratorsRule, noReexportsOutsideBarrelsRule, noUnusedExportsRule, noUnusedPublicMembersRule, noUselessDelegationRule, preferInterfaceTypesRule, preferViMockedImportRule, requireActResultCaptureRule, requireExampleLanguageRule, requireTestCompanionRule, singleActStatementRule, singleLineJsdocRule, } from "../domain/index.js";
2
2
  export { customRules } from "./custom-rules.js";
3
3
  export type { CustomRuleEntry } from "./custom-rules.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,kCAAkC,EAClC,yBAAyB,EACzB,6BAA6B,EAC7B,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,kCAAkC,EAClC,yBAAyB,EACzB,6BAA6B,EAC7B,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,3 +1,3 @@
1
- export { assertActualExpectedNamesRule, barrelFilesExportsOnlyRule, consistentBarrelFilesRule, enforceAaaStructureRule, noImportExportAliasesRule, noImportExportExtensionsRule, noInterfaceMemberDocumentationRule, noMultipleDeclaratorsRule, noReexportsOutsideBarrelsRule, noUnusedExportsRule, noUselessDelegationRule, preferInterfaceTypesRule, preferViMockedImportRule, requireActResultCaptureRule, requireExampleLanguageRule, requireTestCompanionRule, singleActStatementRule, singleLineJsdocRule, } from "../domain/index.js";
1
+ export { assertActualExpectedNamesRule, barrelFilesExportsOnlyRule, consistentBarrelFilesRule, enforceAaaStructureRule, noImportExportAliasesRule, noImportExportExtensionsRule, noInterfaceMemberDocumentationRule, noMultipleDeclaratorsRule, noReexportsOutsideBarrelsRule, noUnusedExportsRule, noUnusedPublicMembersRule, noUselessDelegationRule, preferInterfaceTypesRule, preferViMockedImportRule, requireActResultCaptureRule, requireExampleLanguageRule, requireTestCompanionRule, singleActStatementRule, singleLineJsdocRule, } from "../domain/index.js";
2
2
  export { customRules } from "./custom-rules.js";
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwbGljYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLDZCQUE2QixFQUM3QiwwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIsNEJBQTRCLEVBQzVCLGtDQUFrQyxFQUNsQyx5QkFBeUIsRUFDekIsNkJBQTZCLEVBQzdCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHdCQUF3QixFQUN4QiwyQkFBMkIsRUFDM0IsMEJBQTBCLEVBQzFCLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsbUJBQW1CLEdBQ3BCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIGFzc2VydEFjdHVhbEV4cGVjdGVkTmFtZXNSdWxlLFxuICBiYXJyZWxGaWxlc0V4cG9ydHNPbmx5UnVsZSxcbiAgY29uc2lzdGVudEJhcnJlbEZpbGVzUnVsZSxcbiAgZW5mb3JjZUFhYVN0cnVjdHVyZVJ1bGUsXG4gIG5vSW1wb3J0RXhwb3J0QWxpYXNlc1J1bGUsXG4gIG5vSW1wb3J0RXhwb3J0RXh0ZW5zaW9uc1J1bGUsXG4gIG5vSW50ZXJmYWNlTWVtYmVyRG9jdW1lbnRhdGlvblJ1bGUsXG4gIG5vTXVsdGlwbGVEZWNsYXJhdG9yc1J1bGUsXG4gIG5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNSdWxlLFxuICBub1VudXNlZEV4cG9ydHNSdWxlLFxuICBub1VzZWxlc3NEZWxlZ2F0aW9uUnVsZSxcbiAgcHJlZmVySW50ZXJmYWNlVHlwZXNSdWxlLFxuICBwcmVmZXJWaU1vY2tlZEltcG9ydFJ1bGUsXG4gIHJlcXVpcmVBY3RSZXN1bHRDYXB0dXJlUnVsZSxcbiAgcmVxdWlyZUV4YW1wbGVMYW5ndWFnZVJ1bGUsXG4gIHJlcXVpcmVUZXN0Q29tcGFuaW9uUnVsZSxcbiAgc2luZ2xlQWN0U3RhdGVtZW50UnVsZSxcbiAgc2luZ2xlTGluZUpzZG9jUnVsZSxcbn0gZnJvbSBcIi4uL2RvbWFpblwiO1xuZXhwb3J0IHsgY3VzdG9tUnVsZXMgfSBmcm9tIFwiLi9jdXN0b20tcnVsZXNcIjtcbmV4cG9ydCB0eXBlIHsgQ3VzdG9tUnVsZUVudHJ5IH0gZnJvbSBcIi4vY3VzdG9tLXJ1bGVzXCI7XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwbGljYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLDZCQUE2QixFQUM3QiwwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIsNEJBQTRCLEVBQzVCLGtDQUFrQyxFQUNsQyx5QkFBeUIsRUFDekIsNkJBQTZCLEVBQzdCLG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4Qix3QkFBd0IsRUFDeEIsMkJBQTJCLEVBQzNCLDBCQUEwQixFQUMxQix3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3RCLG1CQUFtQixHQUNwQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBhc3NlcnRBY3R1YWxFeHBlY3RlZE5hbWVzUnVsZSxcbiAgYmFycmVsRmlsZXNFeHBvcnRzT25seVJ1bGUsXG4gIGNvbnNpc3RlbnRCYXJyZWxGaWxlc1J1bGUsXG4gIGVuZm9yY2VBYWFTdHJ1Y3R1cmVSdWxlLFxuICBub0ltcG9ydEV4cG9ydEFsaWFzZXNSdWxlLFxuICBub0ltcG9ydEV4cG9ydEV4dGVuc2lvbnNSdWxlLFxuICBub0ludGVyZmFjZU1lbWJlckRvY3VtZW50YXRpb25SdWxlLFxuICBub011bHRpcGxlRGVjbGFyYXRvcnNSdWxlLFxuICBub1JlZXhwb3J0c091dHNpZGVCYXJyZWxzUnVsZSxcbiAgbm9VbnVzZWRFeHBvcnRzUnVsZSxcbiAgbm9VbnVzZWRQdWJsaWNNZW1iZXJzUnVsZSxcbiAgbm9Vc2VsZXNzRGVsZWdhdGlvblJ1bGUsXG4gIHByZWZlckludGVyZmFjZVR5cGVzUnVsZSxcbiAgcHJlZmVyVmlNb2NrZWRJbXBvcnRSdWxlLFxuICByZXF1aXJlQWN0UmVzdWx0Q2FwdHVyZVJ1bGUsXG4gIHJlcXVpcmVFeGFtcGxlTGFuZ3VhZ2VSdWxlLFxuICByZXF1aXJlVGVzdENvbXBhbmlvblJ1bGUsXG4gIHNpbmdsZUFjdFN0YXRlbWVudFJ1bGUsXG4gIHNpbmdsZUxpbmVKc2RvY1J1bGUsXG59IGZyb20gXCIuLi9kb21haW5cIjtcbmV4cG9ydCB7IGN1c3RvbVJ1bGVzIH0gZnJvbSBcIi4vY3VzdG9tLXJ1bGVzXCI7XG5leHBvcnQgdHlwZSB7IEN1c3RvbVJ1bGVFbnRyeSB9IGZyb20gXCIuL2N1c3RvbS1ydWxlc1wiO1xuIl19
@@ -6,8 +6,6 @@ interface DirectoryBarrelState {
6
6
  hasNonBarrelModuleFile: boolean;
7
7
  /** The first allowed barrel file discovered in the directory. */
8
8
  primaryAllowedBarrelFile: string | undefined;
9
- /** The first non-barrel module file discovered in the directory. */
10
- primaryNonBarrelModuleFile: string | undefined;
11
9
  }
12
10
  /**
13
11
  * Normalizes allowed barrel names from raw rule input.
@@ -1 +1 @@
1
- {"version":3,"file":"barrel-file-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/barrel-file-utilities.ts"],"names":[],"mappings":"AAoBA,2EAA2E;AAC3E,UAAU,oBAAoB;IAC5B,6DAA6D;IAC7D,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iEAAiE;IACjE,sBAAsB,EAAE,OAAO,CAAC;IAChC,iEAAiE;IACjE,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,oEAAoE;IACpE,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAUD;;;;;;;;GAQG;AACH,QAAA,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,MAAM,EAW3D,CAAC;AAgDF;;;;;;;;GAQG;AACH,QAAA,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,OAKhD,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,YAAY,GAChB,UAAU,MAAM,EAChB,oBAAoB,WAAW,CAAC,MAAM,CAAC,KACtC,OAIF,CAAC;AA2BF;;;;;;;;;GASG;AACH,QAAA,MAAM,uBAAuB,GAC3B,WAAW,MAAM,EACjB,oBAAoB,WAAW,CAAC,MAAM,CAAC,KACtC,oBAeF,CAAC;AAEF,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EACpB,2BAA2B,GAC5B,CAAC"}
1
+ {"version":3,"file":"barrel-file-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/barrel-file-utilities.ts"],"names":[],"mappings":"AAoBA,2EAA2E;AAC3E,UAAU,oBAAoB;IAC5B,6DAA6D;IAC7D,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iEAAiE;IACjE,sBAAsB,EAAE,OAAO,CAAC;IAChC,iEAAiE;IACjE,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9C;AAUD;;;;;;;;GAQG;AACH,QAAA,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,MAAM,EAW3D,CAAC;AAgDF;;;;;;;;GAQG;AACH,QAAA,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,OAKhD,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,YAAY,GAChB,UAAU,MAAM,EAChB,oBAAoB,WAAW,CAAC,MAAM,CAAC,KACtC,OAIF,CAAC;AA2BF;;;;;;;;;GASG;AACH,QAAA,MAAM,uBAAuB,GAC3B,WAAW,MAAM,EACjB,oBAAoB,WAAW,CAAC,MAAM,CAAC,KACtC,oBAcF,CAAC;AAEF,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EACpB,2BAA2B,GAC5B,CAAC"}
@@ -143,8 +143,7 @@ const getDirectoryBarrelState = (directory, allowedBarrelNames) => {
143
143
  hasAllowedBarrelFile: primaryAllowedBarrelFile !== void 0,
144
144
  hasNonBarrelModuleFile: primaryNonBarrelModuleFile !== void 0,
145
145
  primaryAllowedBarrelFile,
146
- primaryNonBarrelModuleFile,
147
146
  };
148
147
  };
149
148
  export { getDirectoryBarrelState, isBarrelFile, isLintableModuleFile, normalizeAllowedBarrelNames, };
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFycmVsLWZpbGUtdXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RvbWFpbi9hcmNoaXRlY3R1cmUvY29uc2lzdGVudC1iYXJyZWwtZmlsZXMvYmFycmVsLWZpbGUtdXRpbGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdEMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFbkMsa0VBQWtFO0FBQ2xFLE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUMvQyw2RUFBNkU7QUFDN0UsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDaEUsa0VBQWtFO0FBQ2xFLE1BQU0sb0JBQW9CLEdBQUc7SUFDM0IsTUFBTTtJQUNOLE1BQU07SUFDTixLQUFLO0lBQ0wsTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sS0FBSztJQUNMLE1BQU07Q0FDUCxDQUFDO0FBc0JGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLEtBQWMsRUFBWSxFQUFFO0lBQy9ELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxDQUFDLEdBQUcsNEJBQTRCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsS0FBSztTQUNoQixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQW1CLEVBQUUsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7U0FDN0QsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDNUIsTUFBTSxDQUFDLENBQUMs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QUFDSixDQUFDLENBQUM7QUFFRixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsMkJBQTJCLEdBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFkZGlyU3luYyB9IGZyb20gXCJub2RlOmZzXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBjd2QgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5cbi8qKiBEZWZhdWx0IGJhcnJlbCBiYXNlbmFtZXMgdXNlZCB3aGVuIG5vIG9wdGlvbnMgYXJlIHN1cHBsaWVkLiAqL1xuY29uc3QgREVGQVVMVF9BTExPV0VEX0JBUlJFTF9OQU1FUyA9IFtcImluZGV4XCJdO1xuLyoqIERlY2xhcmF0aW9uLW9ubHkgc3VmZml4ZXMgdGhhdCBzaG91bGQgYmUgaWdub3JlZCBkdXJpbmcgbW9kdWxlIGNoZWNrcy4gKi9cbmNvbnN0IERFQ0xBUkFUSU9OX0ZJTEVfU1VGRklYRVMgPSBbXCIuZC5jdHNcIiwgXCIuZC5tdHNcIiwgXCIuZC50c1wiXTtcbi8qKiBNb2R1bGUgc3VmZml4ZXMgdGhhdCBwYXJ0aWNpcGF0ZSBpbiBiYXJyZWwtZmlsZSBldmFsdWF0aW9uLiAqL1xuY29uc3QgTU9EVUxFX0ZJTEVfU1VGRklYRVMgPSBbXG4gIFwiLmNqc1wiLFxuICBcIi5jdHNcIixcbiAgXCIuanNcIixcbiAgXCIuanN4XCIsXG4gIFwiLm1qc1wiLFxuICBcIi5tdHNcIixcbiAgXCIudHNcIixcbiAgXCIudHN4XCIsXG5dO1xuXG4vKiogQ2FwdHVyZXMgd2hldGhlciBhIGRpcmVjdG9yeSBjb250YWlucyBiYXJyZWwgYW5kIG5vbi1iYXJyZWwgbW9kdWxlcy4gKi9cbmludGVyZmFjZSBEaXJlY3RvcnlCYXJyZWxTdGF0ZSB7XG4gIC8qKiBXaGV0aGVyIHRoZSBkaXJlY3RvcnkgaW5jbHVkZXMgYW4gYWxsb3dlZCBiYXJyZWwgZmlsZS4gKi9cbiAgaGFzQWxsb3dlZEJhcnJlbEZpbGU6IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRoZSBkaXJlY3RvcnkgaW5jbHVkZXMgYW55IG5vbi1iYXJyZWwgbW9kdWxlIGZpbGUuICovXG4gIGhhc05vbkJhcnJlbE1vZHVsZUZpbGU6IGJvb2xlYW47XG4gIC8qKiBUaGUgZmlyc3QgYWxsb3dlZCBiYXJyZWwgZmlsZSBkaXNjb3ZlcmVkIGluIHRoZSBkaXJlY3RvcnkuICovXG4gIHByaW1hcnlBbGxvd2VkQmFycmVsRmlsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAvKiogVGhlIGZpcnN0IG5vbi1iYXJyZWwgbW9kdWxlIGZpbGUgZGlzY292ZXJlZCBpbiB0aGUgZGlyZWN0b3J5LiAqL1xuICBwcmltYXJ5Tm9uQmFycmVsTW9kdWxlRmlsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogU3RvcmVzIHRoZSBtb2R1bGUgZmlsZW5hbWUgYW5kIGRlcml2ZWQgc3RlbSBmb3IgYSBkaXJlY3RvcnkgZW50cnkuICovXG5pbnRlcmZhY2UgRGlyZWN0b3J5TW9kdWxlRmlsZSB7XG4gIC8qKiBUaGUgb3JpZ2luYWwgZmlsZW5hbWUgb2YgdGhlIG1vZHVsZSBlbnRyeS4gKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogVGhlIGZpbGVuYW1lIHN0ZW0gYWZ0ZXIgc3RyaXBwaW5nIHRoZSBtb2R1bGUgc3VmZml4LiAqL1xuICBzdGVtOiBzdHJpbmc7XG59XG5cbi8qKlxuICogTm9ybWFsaXplcyBhbGxvd2VkIGJhcnJlbCBuYW1lcyBmcm9tIHJhdyBydWxlIGlucHV0LlxuICogQHBhcmFtIHZhbHVlIFJhdyBhbGxvd2VkIGJhcnJlbCBuYW1lcyBpbnB1dC5cbiAqIEByZXR1cm5zIFRoZSBub3JtYWxpemVkIGJhcnJlbCBuYW1lcy5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBuYW1lcyA9IG5vcm1hbGl6ZUFsbG93ZWRCYXJyZWxOYW1lcyhbXCJpbmRleFwiLCBcImJhcnJlbFwiXSk7XG4gKiBgYGBcbiAqL1xuY29uc3Qgbm9ybWFsaXplQWxsb3dlZEJhcnJlbE5hbWVzID0gKHZhbHVlOiB1bmtub3duKTogc3RyaW5nW10gPT4ge1xuICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIFsuLi5ERUZBVUxUX0FMTE9XRURfQkFSUkVMX05BTUVTXTtcbiAgfVxuXG4gIGNvbnN0IG5hbWVzID0gdmFsdWVcbiAgICAuZmlsdGVyKChlbnRyeSk6IGVudHJ5IGlzIHN0cmluZyA9PiB0eXBlb2YgZW50cnkgPT09IFwic3RyaW5nXCIpXG4gICAgLm1hcCgoZW50cnkpID0+IGVudHJ5LnRyaW0oKSlcbiAgICAuZmlsdGVyKChlbnRyeSkgPT4gZW50cnkubGVuZ3RoID4gMCk7XG5cbiAgcmV0dXJuIG5hbWVzLmxlbmd0aCA9PT0gMCA/IFsuLi5ERUZBVUxUX0FMTE9XRURfQkFSUkVMX05BTUVTXSA6IG5hbWVzO1xufTtcblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBhYnNvbHV0ZSBmaWxlbmFtZSBpbnRvIGEgcmVwby1yZWxhdGl2ZSBwYXRoLlxuICogQHBhcmFtIGZpbGVuYW1lIEFic29sdXRlIGZpbGVuYW1lIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBUaGUgcmVwby1yZWxhdGl2ZSBwYXRoIHdoZW4gdGhlIGZpbGUgaXMgaW5zaWRlIHRoZSByZXBvLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlbGF0aXZlUGF0aCA9IGdldFJlcG9SZWxhdGl2ZVBhdGgoYCR7Y3dkKCl9L3NyYy9pbmRleC50c2ApO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldFJlcG9SZWxhdGl2ZVBhdGggPSAoZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChmaWxlbmFtZS5sZW5ndGggPT09IDAgfHwgIXBhdGguaXNBYnNvbHV0ZShmaWxlbmFtZSkpIHtcbiAgICByZXR1cm4gdm9pZCAwO1xuICB9XG5cbiAgY29uc3QgcmVsYXRpdmVQYXRoID0gcGF0aC5yZWxhdGl2ZShjd2QoKSwgZmlsZW5hbWUpO1xuXG4gIHJldHVybiByZWxhdGl2ZVBhdGguc3RhcnRzV2l0aChcIi4uXCIpIHx8IHBhdGguaXNBYnNvbHV0ZShyZWxhdGl2ZVBhdGgpXG4gICAgPyB2b2lkIDBcbiAgICA6IHJlbGF0aXZlUGF0aC5zcGxpdChwYXRoLnNlcCkuam9pbihcIi9cIik7XG59O1xuXG4vKipcbiAqIERlcml2ZXMgdGhlIG1vZHVsZSBzdGVtIGZvciBhIHN1cHBvcnRlZCBzb3VyY2UgZmlsZS5cbiAqIEBwYXJhbSBmaWxlbmFtZSBGaWxlbmFtZSB0byBpbnNwZWN0LlxuICogQHJldHVybnMgVGhlIG1vZHVsZSBzdGVtIHdoZW4gdGhlIGZpbGVuYW1lIGlzIGxpbnRhYmxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHN0ZW0gPSBnZXRNb2R1bGVGaWxlU3RlbShcImluZGV4LnRzXCIpO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldE1vZHVsZUZpbGVTdGVtID0gKGZpbGVuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICBjb25zdCBiYXNlbmFtZSA9IHBhdGguYmFzZW5hbWUoZmlsZW5hbWUpO1xuXG4gIGlmIChERUNMQVJBVElPTl9GSUxFX1NVRkZJWEVTLnNvbWUoKHN1ZmZpeCkgPT4gYmFzZW5hbWUuZW5kc1dpdGgoc3VmZml4KSkpIHtcbiAgICByZXR1cm4gdm9pZCAwO1xuICB9XG5cbiAgZm9yIChjb25zdCBzdWZmaXggb2YgTU9EVUxFX0ZJTEVfU1VGRklYRVMpIHtcbiAgICBpZiAoYmFzZW5hbWUuZW5kc1dpdGgoc3VmZml4KSkge1xuICAgICAgcmV0dXJuIGJhc2VuYW1lLnNsaWNlKDAsIC1zdWZmaXgubGVuZ3RoKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdm9pZCAwO1xufTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBmaWxlbmFtZSBpcyBhIGxpbnRhYmxlIG1vZHVsZSBmaWxlLlxuICogQHBhcmFtIGZpbGVuYW1lIEZpbGVuYW1lIHRvIGluc3BlY3QuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGVuYW1lIGJlbG9uZ3MgdG8gYSBzdXBwb3J0ZWQgbW9kdWxlIGluc2lkZSB0aGUgcmVwby5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBsaW50YWJsZSA9IGlzTGludGFibGVNb2R1bGVGaWxlKGAke2N3ZCgpfS9zcmMvaW5kZXgudHNgKTtcbiAqIGBgYFxuICovXG5jb25zdCBpc0xpbnRhYmxlTW9kdWxlRmlsZSA9IChmaWxlbmFtZTogc3RyaW5nKTogYm9vbGVhbiA9PiB7XG4gIHJldHVybiAoXG4gICAgZ2V0UmVwb1JlbGF0aXZlUGF0aChmaWxlbmFtZSkgIT09IHZvaWQgMCAmJlxuICAgIGdldE1vZHVsZUZpbGVTdGVtKGZpbGVuYW1lKSAhPT0gdm9pZCAwXG4gICk7XG59O1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIGZpbGVuYW1lIG1hdGNoZXMgYW4gYWxsb3dlZCBiYXJyZWwgbmFtZS5cbiAqIEBwYXJhbSBmaWxlbmFtZSBGaWxlbmFtZSB0byBpbnNwZWN0LlxuICogQHBhcmFtIGFsbG93ZWRCYXJyZWxOYW1lcyBBbGxvd2VkIGJhcnJlbCBuYW1lcyBmb3IgdGhlIHJ1bGUgcnVuLlxuICogQHJldHVybnMgVHJ1ZSB3aGVuIHRoZSBmaWxlbmFtZSBpcyBhIGJhcnJlbCBmaWxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGJhcnJlbCA9IGlzQmFycmVsRmlsZShgJHtjd2QoKX0vc3JjL2luZGV4LnRzYCwgbmV3IFNldChbXCJpbmRleFwiXSkpO1xuICogYGBgXG4gKi9cbmNvbnN0IGlzQmFycmVsRmlsZSA9IChcbiAgZmlsZW5hbWU6IHN0cmluZyxcbiAgYWxsb3dlZEJhcnJlbE5hbWVzOiBSZWFkb25seVNldDxzdHJpbmc+LFxuKTogYm9vbGVhbiA9PiB7XG4gIGNvbnN0IHN0ZW0gPSBnZXRNb2R1bGVGaWxlU3RlbShmaWxlbmFtZSk7XG5cbiAgcmV0dXJuIHN0ZW0gIT09IHZvaWQgMCAmJiBhbGxvd2VkQmFycmVsTmFtZXMuaGFzKHN0ZW0pO1xufTtcblxuLyoqXG4gKiBMaXN0cyBtb2R1bGUgZmlsZXMgaW4gYSBkaXJlY3Rvcnkgd2l0aCB0aGVpciBkZXJpdmVkIHN0ZW1zLlxuICogQHBhcmFtIGRpcmVjdG9yeSBEaXJlY3RvcnkgdG8gaW5zcGVjdC5cbiAqIEByZXR1cm5zIFRoZSBzb3J0ZWQgbW9kdWxlIGZpbGVzIGZvciB0aGUgZGlyZWN0b3J5LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGZpbGVzID0gZ2V0RGlyZWN0b3J5TW9kdWxlRmlsZXMoYCR7Y3dkKCl9L3NyY2ApO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldERpcmVjdG9yeU1vZHVsZUZpbGVzID0gKGRpcmVjdG9yeTogc3RyaW5nKTogRGlyZWN0b3J5TW9kdWxlRmlsZVtdID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcmVhZGRpclN5bmMoZGlyZWN0b3J5LCB7IHdpdGhGaWxlVHlwZXM6IHRydWUgfSlcbiAgICAgIC5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5pc0ZpbGUoKSlcbiAgICAgIC5tYXAoKGVudHJ5KSA9PiB7XG4gICAgICAgIGNvbnN0IHN0ZW0gPSBnZXRNb2R1bGVGaWxlU3RlbShlbnRyeS5uYW1lKTtcblxuICAgICAgICByZXR1cm4gc3RlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogeyBuYW1lOiBlbnRyeS5uYW1lLCBzdGVtIH07XG4gICAgICB9KVxuICAgICAgLmZpbHRlcigoZW50cnkpOiBlbnRyeSBpcyBEaXJlY3RvcnlNb2R1bGVGaWxlID0+IGVudHJ5ICE9PSB2b2lkIDApXG4gICAgICAudG9Tb3J0ZWQoKGxlZnQsIHJpZ2h0KSA9PiBsZWZ0Lm5hbWUubG9jYWxlQ29tcGFyZShyaWdodC5uYW1lKSk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBbXTtcbiAgfVxufTtcblxuLyoqXG4gKiBCdWlsZHMgYmFycmVsLXJlbGF0ZWQgc3RhdGUgZm9yIGEgZGlyZWN0b3J5LlxuICogQHBhcmFtIGRpcmVjdG9yeSBEaXJlY3RvcnkgdG8gaW5zcGVjdC5cbiAqIEBwYXJhbSBhbGxvd2VkQmFycmVsTmFtZXMgQWxsb3dlZCBiYXJyZWwgbmFtZXMgZm9yIHRoZSBydWxlIHJ1bi5cbiAqIEByZXR1cm5zIFRoZSBkZXJpdmVkIGJhcnJlbCBzdGF0ZSBmb3IgdGhlIGRpcmVjdG9yeS5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBzdGF0ZSA9IGdldERpcmVjdG9yeUJhcnJlbFN0YXRlKGAke2N3ZCgpfS9zcmNgLCBuZXcgU2V0KFtcImluZGV4XCJdKSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0RGlyZWN0b3J5QmFycmVsU3RhdGUgPSAoXG4gIGRpcmVjdG9yeTogc3RyaW5nLFxuICBhbGxvd2VkQmFycmVsTmFtZXM6IFJlYWRvbmx5U2V0PHN0cmluZz4sXG4pOiBEaXJlY3RvcnlCYXJyZWxTdGF0ZSA9PiB7XG4gIGNvbnN0IG1vZHVsZUZpbGVzID0gZ2V0RGlyZWN0b3J5TW9kdWxlRmlsZXMoZGlyZWN0b3J5KTtcbiAgY29uc3QgcHJpbWFyeUFsbG93ZWRCYXJyZWxGaWxlID0gbW9kdWxlRmlsZXMuZmluZCgoZW50cnkpID0+XG4gICAgYWxsb3dlZEJhcnJlbE5hbWVzLmhhcyhlbnRyeS5zdGVtKSxcbiAgKT8ubmFtZTtcbiAgY29uc3QgcHJpbWFyeU5vbkJhcnJlbE1vZHVsZUZpbGUgPSBtb2R1bGVGaWxlcy5maW5kKFxuICAgIChlbnRyeSkgPT4gIWFsbG93ZWRCYXJyZWxOYW1lcy5oYXMoZW50cnkuc3RlbSksXG4gICk/Lm5hbWU7XG5cbiAgcmV0dXJuIHtcbiAgICBoYXNBbGxvd2VkQmFycmVsRmlsZTogcHJpbWFyeUFsbG93ZWRCYXJyZWxGaWxlICE9PSB2b2lkIDAsXG4gICAgaGFzTm9uQmFycmVsTW9kdWxlRmlsZTogcHJpbWFyeU5vbkJhcnJlbE1vZHVsZUZpbGUgIT09IHZvaWQgMCxcbiAgICBwcmltYXJ5QWxsb3dlZEJhcnJlbEZpbGUsXG4gICAgcHJpbWFyeU5vbkJhcnJlbE1vZHVsZUZpbGUsXG4gIH07XG59O1xuXG5leHBvcnQge1xuICBnZXREaXJlY3RvcnlCYXJyZWxTdGF0ZSxcbiAgaXNCYXJyZWxGaWxlLFxuICBpc0xpbnRhYmxlTW9kdWxlRmlsZSxcbiAgbm9ybWFsaXplQWxsb3dlZEJhcnJlbE5hbWVzLFxufTtcbiJdfQ==
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFycmVsLWZpbGUtdXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RvbWFpbi9hcmNoaXRlY3R1cmUvY29uc2lzdGVudC1iYXJyZWwtZmlsZXMvYmFycmVsLWZpbGUtdXRpbGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdEMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFbkMsa0VBQWtFO0FBQ2xFLE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUMvQyw2RUFBNkU7QUFDN0UsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDaEUsa0VBQWtFO0FBQ2xFLE1BQU0sb0JBQW9CLEdBQUc7SUFDM0IsTUFBTTtJQUNOLE1BQU07SUFDTixLQUFLO0lBQ0wsTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sS0FBSztJQUNMLE1BQU07Q0FDUCxDQUFDO0FBb0JGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLEtBQWMsRUFBWSxFQUFFO0lBQy9ELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxDQUFDLEdBQUcsNEJBQTRCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsS0FBSztTQUNoQixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQW1CLEVBQUUsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7U0FDN0QsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDNUIsTUFBTSxDQUFDLENBQUMs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QztBQUVGLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsWUFBWSxFQUNaLG9CQUFvQixFQUNwQiwyQkFBMkIsR0FDNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlYWRkaXJTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IGN3ZCB9IGZyb20gXCJub2RlOnByb2Nlc3NcIjtcblxuLyoqIERlZmF1bHQgYmFycmVsIGJhc2VuYW1lcyB1c2VkIHdoZW4gbm8gb3B0aW9ucyBhcmUgc3VwcGxpZWQuICovXG5jb25zdCBERUZBVUxUX0FMTE9XRURfQkFSUkVMX05BTUVTID0gW1wiaW5kZXhcIl07XG4vKiogRGVjbGFyYXRpb24tb25seSBzdWZmaXhlcyB0aGF0IHNob3VsZCBiZSBpZ25vcmVkIGR1cmluZyBtb2R1bGUgY2hlY2tzLiAqL1xuY29uc3QgREVDTEFSQVRJT05fRklMRV9TVUZGSVhFUyA9IFtcIi5kLmN0c1wiLCBcIi5kLm10c1wiLCBcIi5kLnRzXCJdO1xuLyoqIE1vZHVsZSBzdWZmaXhlcyB0aGF0IHBhcnRpY2lwYXRlIGluIGJhcnJlbC1maWxlIGV2YWx1YXRpb24uICovXG5jb25zdCBNT0RVTEVfRklMRV9TVUZGSVhFUyA9IFtcbiAgXCIuY2pzXCIsXG4gIFwiLmN0c1wiLFxuICBcIi5qc1wiLFxuICBcIi5qc3hcIixcbiAgXCIubWpzXCIsXG4gIFwiLm10c1wiLFxuICBcIi50c1wiLFxuICBcIi50c3hcIixcbl07XG5cbi8qKiBDYXB0dXJlcyB3aGV0aGVyIGEgZGlyZWN0b3J5IGNvbnRhaW5zIGJhcnJlbCBhbmQgbm9uLWJhcnJlbCBtb2R1bGVzLiAqL1xuaW50ZXJmYWNlIERpcmVjdG9yeUJhcnJlbFN0YXRlIHtcbiAgLyoqIFdoZXRoZXIgdGhlIGRpcmVjdG9yeSBpbmNsdWRlcyBhbiBhbGxvd2VkIGJhcnJlbCBmaWxlLiAqL1xuICBoYXNBbGxvd2VkQmFycmVsRmlsZTogYm9vbGVhbjtcbiAgLyoqIFdoZXRoZXIgdGhlIGRpcmVjdG9yeSBpbmNsdWRlcyBhbnkgbm9uLWJhcnJlbCBtb2R1bGUgZmlsZS4gKi9cbiAgaGFzTm9uQmFycmVsTW9kdWxlRmlsZTogYm9vbGVhbjtcbiAgLyoqIFRoZSBmaXJzdCBhbGxvd2VkIGJhcnJlbCBmaWxlIGRpc2NvdmVyZWQgaW4gdGhlIGRpcmVjdG9yeS4gKi9cbiAgcHJpbWFyeUFsbG93ZWRCYXJyZWxGaWxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBTdG9yZXMgdGhlIG1vZHVsZSBmaWxlbmFtZSBhbmQgZGVyaXZlZCBzdGVtIGZvciBhIGRpcmVjdG9yeSBlbnRyeS4gKi9cbmludGVyZmFjZSBEaXJlY3RvcnlNb2R1bGVGaWxlIHtcbiAgLyoqIFRoZSBvcmlnaW5hbCBmaWxlbmFtZSBvZiB0aGUgbW9kdWxlIGVudHJ5LiAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKiBUaGUgZmlsZW5hbWUgc3RlbSBhZnRlciBzdHJpcHBpbmcgdGhlIG1vZHVsZSBzdWZmaXguICovXG4gIHN0ZW06IHN0cmluZztcbn1cblxuLyoqXG4gKiBOb3JtYWxpemVzIGFsbG93ZWQgYmFycmVsIG5hbWVzIGZyb20gcmF3IHJ1bGUgaW5wdXQuXG4gKiBAcGFyYW0gdmFsdWUgUmF3IGFsbG93ZWQgYmFycmVsIG5hbWVzIGlucHV0LlxuICogQHJldHVybnMgVGhlIG5vcm1hbGl6ZWQgYmFycmVsIG5hbWVzLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG5hbWVzID0gbm9ybWFsaXplQWxsb3dlZEJhcnJlbE5hbWVzKFtcImluZGV4XCIsIFwiYmFycmVsXCJdKTtcbiAqIGBgYFxuICovXG5jb25zdCBub3JtYWxpemVBbGxvd2VkQmFycmVsTmFtZXMgPSAodmFsdWU6IHVua25vd24pOiBzdHJpbmdbXSA9PiB7XG4gIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gWy4uLkRFRkFVTFRfQUxMT1dFRF9CQVJSRUxfTkFNRVNdO1xuICB9XG5cbiAgY29uc3QgbmFtZXMgPSB2YWx1ZVxuICAgIC5maWx0ZXIoKGVudHJ5KTogZW50cnkgaXMgc3RyaW5nID0+IHR5cGVvZiBlbnRyeSA9PT0gXCJzdHJpbmdcIilcbiAgICAubWFwKChlbnRyeSkgPT4gZW50cnkudHJpbSgpKVxuICAgIC5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5sZW5ndGggPiAwKTtcblxuICByZXR1cm4gbmFtZXMubGVuZ3RoID09PSAwID8gWy4uLkRFRkFVTFRfQUxMT1dFRF9CQVJSRUxfTkFNRVNdIDogbmFtZXM7XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIGFuIGFic29sdXRlIGZpbGVuYW1lIGludG8gYSByZXBvLXJlbGF0aXZlIHBhdGguXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSByZXBvLXJlbGF0aXZlIHBhdGggd2hlbiB0aGUgZmlsZSBpcyBpbnNpZGUgdGhlIHJlcG8uXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcmVsYXRpdmVQYXRoID0gZ2V0UmVwb1JlbGF0aXZlUGF0aChgJHtjd2QoKX0vc3JjL2luZGV4LnRzYCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0UmVwb1JlbGF0aXZlUGF0aCA9IChmaWxlbmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKGZpbGVuYW1lLmxlbmd0aCA9PT0gMCB8fCAhcGF0aC5pc0Fic29sdXRlKGZpbGVuYW1lKSkge1xuICAgIHJldHVybiB2b2lkIDA7XG4gIH1cblxuICBjb25zdCByZWxhdGl2ZVBhdGggPSBwYXRoLnJlbGF0aXZlKGN3ZCgpLCBmaWxlbmFtZSk7XG5cbiAgcmV0dXJuIHJlbGF0aXZlUGF0aC5zdGFydHNXaXRoKFwiLi5cIikgfHwgcGF0aC5pc0Fic29sdXRlKHJlbGF0aXZlUGF0aClcbiAgICA/IHZvaWQgMFxuICAgIDogcmVsYXRpdmVQYXRoLnNwbGl0KHBhdGguc2VwKS5qb2luKFwiL1wiKTtcbn07XG5cbi8qKlxuICogRGVyaXZlcyB0aGUgbW9kdWxlIHN0ZW0gZm9yIGEgc3VwcG9ydGVkIHNvdXJjZSBmaWxlLlxuICogQHBhcmFtIGZpbGVuYW1lIEZpbGVuYW1lIHRvIGluc3BlY3QuXG4gKiBAcmV0dXJucyBUaGUgbW9kdWxlIHN0ZW0gd2hlbiB0aGUgZmlsZW5hbWUgaXMgbGludGFibGUuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgc3RlbSA9IGdldE1vZHVsZUZpbGVTdGVtKFwiaW5kZXgudHNcIik7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0TW9kdWxlRmlsZVN0ZW0gPSAoZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IGJhc2VuYW1lID0gcGF0aC5iYXNlbmFtZShmaWxlbmFtZSk7XG5cbiAgaWYgKERFQ0xBUkFUSU9OX0ZJTEVfU1VGRklYRVMuc29tZSgoc3VmZml4KSA9PiBiYXNlbmFtZS5lbmRzV2l0aChzdWZmaXgpKSkge1xuICAgIHJldHVybiB2b2lkIDA7XG4gIH1cblxuICBmb3IgKGNvbnN0IHN1ZmZpeCBvZiBNT0RVTEVfRklMRV9TVUZGSVhFUykge1xuICAgIGlmIChiYXNlbmFtZS5lbmRzV2l0aChzdWZmaXgpKSB7XG4gICAgICByZXR1cm4gYmFzZW5hbWUuc2xpY2UoMCwgLXN1ZmZpeC5sZW5ndGgpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB2b2lkIDA7XG59O1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIGZpbGVuYW1lIGlzIGEgbGludGFibGUgbW9kdWxlIGZpbGUuXG4gKiBAcGFyYW0gZmlsZW5hbWUgRmlsZW5hbWUgdG8gaW5zcGVjdC5cbiAqIEByZXR1cm5zIFRydWUgd2hlbiB0aGUgZmlsZW5hbWUgYmVsb25ncyB0byBhIHN1cHBvcnRlZCBtb2R1bGUgaW5zaWRlIHRoZSByZXBvLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGxpbnRhYmxlID0gaXNMaW50YWJsZU1vZHVsZUZpbGUoYCR7Y3dkKCl9L3NyYy9pbmRleC50c2ApO1xuICogYGBgXG4gKi9cbmNvbnN0IGlzTGludGFibGVNb2R1bGVGaWxlID0gKGZpbGVuYW1lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIChcbiAgICBnZXRSZXBvUmVsYXRpdmVQYXRoKGZpbGVuYW1lKSAhPT0gdm9pZCAwICYmXG4gICAgZ2V0TW9kdWxlRmlsZVN0ZW0oZmlsZW5hbWUpICE9PSB2b2lkIDBcbiAgKTtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgZmlsZW5hbWUgbWF0Y2hlcyBhbiBhbGxvd2VkIGJhcnJlbCBuYW1lLlxuICogQHBhcmFtIGZpbGVuYW1lIEZpbGVuYW1lIHRvIGluc3BlY3QuXG4gKiBAcGFyYW0gYWxsb3dlZEJhcnJlbE5hbWVzIEFsbG93ZWQgYmFycmVsIG5hbWVzIGZvciB0aGUgcnVsZSBydW4uXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGVuYW1lIGlzIGEgYmFycmVsIGZpbGUuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgYmFycmVsID0gaXNCYXJyZWxGaWxlKGAke2N3ZCgpfS9zcmMvaW5kZXgudHNgLCBuZXcgU2V0KFtcImluZGV4XCJdKSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgaXNCYXJyZWxGaWxlID0gKFxuICBmaWxlbmFtZTogc3RyaW5nLFxuICBhbGxvd2VkQmFycmVsTmFtZXM6IFJlYWRvbmx5U2V0PHN0cmluZz4sXG4pOiBib29sZWFuID0+IHtcbiAgY29uc3Qgc3RlbSA9IGdldE1vZHVsZUZpbGVTdGVtKGZpbGVuYW1lKTtcblxuICByZXR1cm4gc3RlbSAhPT0gdm9pZCAwICYmIGFsbG93ZWRCYXJyZWxOYW1lcy5oYXMoc3RlbSk7XG59O1xuXG4vKipcbiAqIExpc3RzIG1vZHVsZSBmaWxlcyBpbiBhIGRpcmVjdG9yeSB3aXRoIHRoZWlyIGRlcml2ZWQgc3RlbXMuXG4gKiBAcGFyYW0gZGlyZWN0b3J5IERpcmVjdG9yeSB0byBpbnNwZWN0LlxuICogQHJldHVybnMgVGhlIHNvcnRlZCBtb2R1bGUgZmlsZXMgZm9yIHRoZSBkaXJlY3RvcnkuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgZmlsZXMgPSBnZXREaXJlY3RvcnlNb2R1bGVGaWxlcyhgJHtjd2QoKX0vc3JjYCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0RGlyZWN0b3J5TW9kdWxlRmlsZXMgPSAoZGlyZWN0b3J5OiBzdHJpbmcpOiBEaXJlY3RvcnlNb2R1bGVGaWxlW10gPT4ge1xuICB0cnkge1xuICAgIHJldHVybiByZWFkZGlyU3luYyhkaXJlY3RvcnksIHsgd2l0aEZpbGVUeXBlczogdHJ1ZSB9KVxuICAgICAgLmZpbHRlcigoZW50cnkpID0+IGVudHJ5LmlzRmlsZSgpKVxuICAgICAgLm1hcCgoZW50cnkpID0+IHtcbiAgICAgICAgY29uc3Qgc3RlbSA9IGdldE1vZHVsZUZpbGVTdGVtKGVudHJ5Lm5hbWUpO1xuXG4gICAgICAgIHJldHVybiBzdGVtID09PSB2b2lkIDAgPyB2b2lkIDAgOiB7IG5hbWU6IGVudHJ5Lm5hbWUsIHN0ZW0gfTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKChlbnRyeSk6IGVudHJ5IGlzIERpcmVjdG9yeU1vZHVsZUZpbGUgPT4gZW50cnkgIT09IHZvaWQgMClcbiAgICAgIC50b1NvcnRlZCgobGVmdCwgcmlnaHQpID0+IGxlZnQubmFtZS5sb2NhbGVDb21wYXJlKHJpZ2h0Lm5hbWUpKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG59O1xuXG4vKipcbiAqIEJ1aWxkcyBiYXJyZWwtcmVsYXRlZCBzdGF0ZSBmb3IgYSBkaXJlY3RvcnkuXG4gKiBAcGFyYW0gZGlyZWN0b3J5IERpcmVjdG9yeSB0byBpbnNwZWN0LlxuICogQHBhcmFtIGFsbG93ZWRCYXJyZWxOYW1lcyBBbGxvd2VkIGJhcnJlbCBuYW1lcyBmb3IgdGhlIHJ1bGUgcnVuLlxuICogQHJldHVybnMgVGhlIGRlcml2ZWQgYmFycmVsIHN0YXRlIGZvciB0aGUgZGlyZWN0b3J5LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHN0YXRlID0gZ2V0RGlyZWN0b3J5QmFycmVsU3RhdGUoYCR7Y3dkKCl9L3NyY2AsIG5ldyBTZXQoW1wiaW5kZXhcIl0pKTtcbiAqIGBgYFxuICovXG5jb25zdCBnZXREaXJlY3RvcnlCYXJyZWxTdGF0ZSA9IChcbiAgZGlyZWN0b3J5OiBzdHJpbmcsXG4gIGFsbG93ZWRCYXJyZWxOYW1lczogUmVhZG9ubHlTZXQ8c3RyaW5nPixcbik6IERpcmVjdG9yeUJhcnJlbFN0YXRlID0+IHtcbiAgY29uc3QgbW9kdWxlRmlsZXMgPSBnZXREaXJlY3RvcnlNb2R1bGVGaWxlcyhkaXJlY3RvcnkpO1xuICBjb25zdCBwcmltYXJ5QWxsb3dlZEJhcnJlbEZpbGUgPSBtb2R1bGVGaWxlcy5maW5kKChlbnRyeSkgPT5cbiAgICBhbGxvd2VkQmFycmVsTmFtZXMuaGFzKGVudHJ5LnN0ZW0pLFxuICApPy5uYW1lO1xuICBjb25zdCBwcmltYXJ5Tm9uQmFycmVsTW9kdWxlRmlsZSA9IG1vZHVsZUZpbGVzLmZpbmQoXG4gICAgKGVudHJ5KSA9PiAhYWxsb3dlZEJhcnJlbE5hbWVzLmhhcyhlbnRyeS5zdGVtKSxcbiAgKT8ubmFtZTtcblxuICByZXR1cm4ge1xuICAgIGhhc0FsbG93ZWRCYXJyZWxGaWxlOiBwcmltYXJ5QWxsb3dlZEJhcnJlbEZpbGUgIT09IHZvaWQgMCxcbiAgICBoYXNOb25CYXJyZWxNb2R1bGVGaWxlOiBwcmltYXJ5Tm9uQmFycmVsTW9kdWxlRmlsZSAhPT0gdm9pZCAwLFxuICAgIHByaW1hcnlBbGxvd2VkQmFycmVsRmlsZSxcbiAgfTtcbn07XG5cbmV4cG9ydCB7XG4gIGdldERpcmVjdG9yeUJhcnJlbFN0YXRlLFxuICBpc0JhcnJlbEZpbGUsXG4gIGlzTGludGFibGVNb2R1bGVGaWxlLFxuICBub3JtYWxpemVBbGxvd2VkQmFycmVsTmFtZXMsXG59O1xuIl19
@@ -2,8 +2,6 @@
2
2
  interface ConsistentBarrelFilesState {
3
3
  /** AllowedNames field value. */
4
4
  allowedNames: string[];
5
- /** AllowedNamesKey field value. */
6
- allowedNamesKey: string;
7
5
  /** AllowedNamesSet field value. */
8
6
  allowedNamesSet: Set<string>;
9
7
  /** Enforce field value. */
@@ -1 +1 @@
1
- {"version":3,"file":"consistent-barrel-files-options.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.ts"],"names":[],"mappings":"AASA,qCAAqC;AACrC,UAAU,0BAA0B;IAClC,gCAAgC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,mCAAmC;IACnC,eAAe,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE7B,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU,GACd,SAAS,SAAS,OAAO,EAAE,KAC1B,0BAcF,CAAC;AAkBF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,GAAI,UAAU,MAAM,EAAE,cAAc,MAAM,EAAE,KAAG,OAMlE,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"consistent-barrel-files-options.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.ts"],"names":[],"mappings":"AASA,qCAAqC;AACrC,UAAU,0BAA0B;IAClC,gCAAgC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,mCAAmC;IACnC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE7B,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU,GACd,SAAS,SAAS,OAAO,EAAE,KAC1B,0BAMF,CAAC;AAkBF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,GAAI,UAAU,MAAM,EAAE,cAAc,MAAM,EAAE,KAAG,OAMlE,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,0BAA0B,EAAE,CAAC"}
@@ -13,15 +13,7 @@ const getOptions = (options) => {
13
13
  const rawOptions = options[0];
14
14
  const enforce = rawOptions?.enforce ?? true;
15
15
  const allowedNames = normalizeAllowedBarrelNames(rawOptions?.allowedNames);
16
- const allowedNamesKey = allowedNames
17
- .toSorted((a, b) => a.localeCompare(b))
18
- .join("|");
19
- return {
20
- allowedNames,
21
- allowedNamesKey,
22
- allowedNamesSet: new Set(allowedNames),
23
- enforce,
24
- };
16
+ return { allowedNames, allowedNamesSet: new Set(allowedNames), enforce };
25
17
  };
26
18
  /**
27
19
  * Checks whether a path is nested inside a src directory.
@@ -53,4 +45,4 @@ const shouldLintFile = (filename, allowedNames) => {
53
45
  allowedNames.length > 0);
54
46
  };
55
47
  export { getOptions, shouldLintFile };
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc2lzdGVudC1iYXJyZWwtZmlsZXMtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBSTdCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsMkJBQTJCLEdBQzVCLE1BQU0seUJBQXlCLENBQUM7QUFpQmpDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLEdBQUcsQ0FDakIsT0FBMkIsRUFDQyxFQUFFO0lBQzlCLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQTZDLENBQUM7SUFDMUUsTUFBTSxPQUFPLEdBQUcsVUFBVSxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUM7SUFDNUMsTUFBTSxZQUFZLEdBQUcsMkJBQTJCLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzNFLE1BQU0sZUFBZSxHQUFHLFlBQVk7U0FDakMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN0QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFYixPQUFPO1FBQ0wsWUFBWTtRQUNaLGVBQWU7UUFDZixlQUFlLEVBQUUsSUFBSSxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQ3RDLE9BQU87S0FDUixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsUUFBZ0IsRUFBVyxFQUFFO0lBQ3hELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEQsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXBFLE9BQU8sWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN0QyxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLGNBQWMsR0FBRyxDQUFDLFFBQWdCLEVBQUUsWUFBc0IsRUFBVyxFQUFFO0lBQzNFLE9BQU8sQ0FDTCxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7UUFDOUIsbUJBQW1CLENBQUMsUUFBUSxDQUFDO1FBQzdCLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUN4QixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcblxuaW1wb3J0IHR5cGUgeyBDb25zaXN0ZW50QmFycmVsRmlsZXNPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuaW1wb3J0IHtcbiAgaXNMaW50YWJsZU1vZHVsZUZpbGUsXG4gIG5vcm1hbGl6ZUFsbG93ZWRCYXJyZWxOYW1lcyxcbn0gZnJvbSBcIi4vYmFycmVsLWZpbGUtdXRpbGl0aWVzXCI7XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBDb25zaXN0ZW50QmFycmVsRmlsZXNTdGF0ZSB7XG4gIC8qKiBBbGxvd2VkTmFtZXMgZmllbGQgdmFsdWUuICovXG4gIGFsbG93ZWROYW1lczogc3RyaW5nW107XG5cbiAgLyoqIEFsbG93ZWROYW1lc0tleSBmaWVsZCB2YWx1ZS4gKi9cbiAgYWxsb3dlZE5hbWVzS2V5OiBzdHJpbmc7XG5cbiAgLyoqIEFsbG93ZWROYW1lc1NldCBmaWVsZCB2YWx1ZS4gKi9cbiAgYWxsb3dlZE5hbWVzU2V0OiBTZXQ8c3RyaW5nPjtcblxuICAvKiogRW5mb3JjZSBmaWVsZCB2YWx1ZS4gKi9cbiAgZW5mb3JjZTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBCdWlsZHMgbm9ybWFsaXplZCBydWxlIG9wdGlvbnMgZnJvbSByYXcgcnVsZSBpbnB1dC5cbiAqIEBwYXJhbSBvcHRpb25zIFJhdyBydWxlIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBydWxlIHN0YXRlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHN0YXRlID0gZ2V0T3B0aW9ucyhbe31dKTtcbiAqIGBgYFxuICovXG5jb25zdCBnZXRPcHRpb25zID0gKFxuICBvcHRpb25zOiByZWFkb25seSB1bmtub3duW10sXG4pOiBDb25zaXN0ZW50QmFycmVsRmlsZXNTdGF0ZSA9PiB7XG4gIGNvbnN0IHJhd09wdGlvbnMgPSBvcHRpb25zWzBdIGFzIENvbnNpc3RlbnRCYXJyZWxGaWxlc09wdGlvbnMgfCB1bmRlZmluZWQ7XG4gIGNvbnN0IGVuZm9yY2UgPSByYXdPcHRpb25zPy5lbmZvcmNlID8/IHRydWU7XG4gIGNvbnN0IGFsbG93ZWROYW1lcyA9IG5vcm1hbGl6ZUFsbG93ZWRCYXJyZWxOYW1lcyhyYXdPcHRpb25zPy5hbGxvd2VkTmFtZXMpO1xuICBjb25zdCBhbGxvd2VkTmFtZXNLZXkgPSBhbGxvd2VkTmFtZXNcbiAgICAudG9Tb3J0ZWQoKGEsIGIpID0+IGEubG9jYWxlQ29tcGFyZShiKSlcbiAgICAuam9pbihcInxcIik7XG5cbiAgcmV0dXJuIHtcbiAgICBhbGxvd2VkTmFtZXMsXG4gICAgYWxsb3dlZE5hbWVzS2V5LFxuICAgIGFsbG93ZWROYW1lc1NldDogbmV3IFNldChhbGxvd2VkTmFtZXMpLFxuICAgIGVuZm9yY2UsXG4gIH07XG59O1xuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIGEgcGF0aCBpcyBuZXN0ZWQgaW5zaWRlIGEgc3JjIGRpcmVjdG9yeS5cbiAqIEBwYXJhbSBmaWxlbmFtZSBGaWxlbmFtZSB0byBpbnNwZWN0LlxuICogQHJldHVybnMgVHJ1ZSB3aGVuIHRoZSBmaWxlIHBhdGggY29udGFpbnMgYSBzcmMgcGF0aCBzZWdtZW50LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGluU3JjID0gaXNJblNvdXJjZURpcmVjdG9yeShgJHtjd2QoKX0vc3JjL2luZGV4LnRzYCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgaXNJblNvdXJjZURpcmVjdG9yeSA9IChmaWxlbmFtZTogc3RyaW5nKTogYm9vbGVhbiA9PiB7XG4gIGNvbnN0IG5vcm1hbGl6ZWRQYXRoID0gcGF0aC5ub3JtYWxpemUoZmlsZW5hbWUpO1xuICBjb25zdCBwYXRoU2VnbWVudHMgPSBub3JtYWxpemVkUGF0aC5zcGxpdChwYXRoLnNlcCkuZmlsdGVyKEJvb2xlYW4pO1xuXG4gIHJldHVybiBwYXRoU2VnbWVudHMuaW5jbHVkZXMoXCJzcmNcIik7XG59O1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciB0aGUgcnVsZSBzaG91bGQgbGludCBhIGZpbGUuXG4gKiBAcGFyYW0gZmlsZW5hbWUgRmlsZW5hbWUgdG8gaW5zcGVjdC5cbiAqIEBwYXJhbSBhbGxvd2VkTmFtZXMgQWxsb3dlZCBiYXJyZWwgbmFtZXMgZm9yIHRoZSBydWxlIHJ1bi5cbiAqIEByZXR1cm5zIFRydWUgd2hlbiB0aGUgZmlsZSBzaG91bGQgYmUgY2hlY2tlZC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBzaG91bGRMaW50ID0gc2hvdWxkTGludEZpbGUoYCR7Y3dkKCl9L3NyYy9pbmRleC50c2AsIFtcImluZGV4XCJdKTtcbiAqIGBgYFxuICovXG5jb25zdCBzaG91bGRMaW50RmlsZSA9IChmaWxlbmFtZTogc3RyaW5nLCBhbGxvd2VkTmFtZXM6IHN0cmluZ1tdKTogYm9vbGVhbiA9PiB7XG4gIHJldHVybiAoXG4gICAgaXNMaW50YWJsZU1vZHVsZUZpbGUoZmlsZW5hbWUpICYmXG4gICAgaXNJblNvdXJjZURpcmVjdG9yeShmaWxlbmFtZSkgJiZcbiAgICBhbGxvd2VkTmFtZXMubGVuZ3RoID4gMFxuICApO1xufTtcblxuZXhwb3J0IHsgZ2V0T3B0aW9ucywgc2hvdWxkTGludEZpbGUgfTtcbmV4cG9ydCB0eXBlIHsgQ29uc2lzdGVudEJhcnJlbEZpbGVzU3RhdGUgfTtcbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc2lzdGVudC1iYXJyZWwtZmlsZXMtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBSTdCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsMkJBQTJCLEdBQzVCLE1BQU0seUJBQXlCLENBQUM7QUFjakM7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUNqQixPQUEyQixFQUNDLEVBQUU7SUFDOUIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBNkMsQ0FBQztJQUMxRSxNQUFNLE9BQU8sR0FBRyxVQUFVLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQztJQUM1QyxNQUFNLFlBQVksR0FBRywyQkFBMkIsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFFM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsSUFBSSxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUM7QUFDM0UsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsUUFBZ0IsRUFBVyxFQUFFO0lBQ3hELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEQsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXBFLE9BQU8sWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN0QyxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLGNBQWMsR0FBRyxDQUFDLFFBQWdCLEVBQUUsWUFBc0IsRUFBVyxFQUFFO0lBQzNFLE9BQU8sQ0FDTCxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7UUFDOUIsbUJBQW1CLENBQUMsUUFBUSxDQUFDO1FBQzdCLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUN4QixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcblxuaW1wb3J0IHR5cGUgeyBDb25zaXN0ZW50QmFycmVsRmlsZXNPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuaW1wb3J0IHtcbiAgaXNMaW50YWJsZU1vZHVsZUZpbGUsXG4gIG5vcm1hbGl6ZUFsbG93ZWRCYXJyZWxOYW1lcyxcbn0gZnJvbSBcIi4vYmFycmVsLWZpbGUtdXRpbGl0aWVzXCI7XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBDb25zaXN0ZW50QmFycmVsRmlsZXNTdGF0ZSB7XG4gIC8qKiBBbGxvd2VkTmFtZXMgZmllbGQgdmFsdWUuICovXG4gIGFsbG93ZWROYW1lczogc3RyaW5nW107XG5cbiAgLyoqIEFsbG93ZWROYW1lc1NldCBmaWVsZCB2YWx1ZS4gKi9cbiAgYWxsb3dlZE5hbWVzU2V0OiBTZXQ8c3RyaW5nPjtcblxuICAvKiogRW5mb3JjZSBmaWVsZCB2YWx1ZS4gKi9cbiAgZW5mb3JjZTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBCdWlsZHMgbm9ybWFsaXplZCBydWxlIG9wdGlvbnMgZnJvbSByYXcgcnVsZSBpbnB1dC5cbiAqIEBwYXJhbSBvcHRpb25zIFJhdyBydWxlIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBydWxlIHN0YXRlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHN0YXRlID0gZ2V0T3B0aW9ucyhbe31dKTtcbiAqIGBgYFxuICovXG5jb25zdCBnZXRPcHRpb25zID0gKFxuICBvcHRpb25zOiByZWFkb25seSB1bmtub3duW10sXG4pOiBDb25zaXN0ZW50QmFycmVsRmlsZXNTdGF0ZSA9PiB7XG4gIGNvbnN0IHJhd09wdGlvbnMgPSBvcHRpb25zWzBdIGFzIENvbnNpc3RlbnRCYXJyZWxGaWxlc09wdGlvbnMgfCB1bmRlZmluZWQ7XG4gIGNvbnN0IGVuZm9yY2UgPSByYXdPcHRpb25zPy5lbmZvcmNlID8/IHRydWU7XG4gIGNvbnN0IGFsbG93ZWROYW1lcyA9IG5vcm1hbGl6ZUFsbG93ZWRCYXJyZWxOYW1lcyhyYXdPcHRpb25zPy5hbGxvd2VkTmFtZXMpO1xuXG4gIHJldHVybiB7IGFsbG93ZWROYW1lcywgYWxsb3dlZE5hbWVzU2V0OiBuZXcgU2V0KGFsbG93ZWROYW1lcyksIGVuZm9yY2UgfTtcbn07XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgYSBwYXRoIGlzIG5lc3RlZCBpbnNpZGUgYSBzcmMgZGlyZWN0b3J5LlxuICogQHBhcmFtIGZpbGVuYW1lIEZpbGVuYW1lIHRvIGluc3BlY3QuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGUgcGF0aCBjb250YWlucyBhIHNyYyBwYXRoIHNlZ21lbnQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgaW5TcmMgPSBpc0luU291cmNlRGlyZWN0b3J5KGAke2N3ZCgpfS9zcmMvaW5kZXgudHNgKTtcbiAqIGBgYFxuICovXG5jb25zdCBpc0luU291cmNlRGlyZWN0b3J5ID0gKGZpbGVuYW1lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgY29uc3Qgbm9ybWFsaXplZFBhdGggPSBwYXRoLm5vcm1hbGl6ZShmaWxlbmFtZSk7XG4gIGNvbnN0IHBhdGhTZWdtZW50cyA9IG5vcm1hbGl6ZWRQYXRoLnNwbGl0KHBhdGguc2VwKS5maWx0ZXIoQm9vbGVhbik7XG5cbiAgcmV0dXJuIHBhdGhTZWdtZW50cy5pbmNsdWRlcyhcInNyY1wiKTtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBydWxlIHNob3VsZCBsaW50IGEgZmlsZS5cbiAqIEBwYXJhbSBmaWxlbmFtZSBGaWxlbmFtZSB0byBpbnNwZWN0LlxuICogQHBhcmFtIGFsbG93ZWROYW1lcyBBbGxvd2VkIGJhcnJlbCBuYW1lcyBmb3IgdGhlIHJ1bGUgcnVuLlxuICogQHJldHVybnMgVHJ1ZSB3aGVuIHRoZSBmaWxlIHNob3VsZCBiZSBjaGVja2VkLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHNob3VsZExpbnQgPSBzaG91bGRMaW50RmlsZShgJHtjd2QoKX0vc3JjL2luZGV4LnRzYCwgW1wiaW5kZXhcIl0pO1xuICogYGBgXG4gKi9cbmNvbnN0IHNob3VsZExpbnRGaWxlID0gKGZpbGVuYW1lOiBzdHJpbmcsIGFsbG93ZWROYW1lczogc3RyaW5nW10pOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIChcbiAgICBpc0xpbnRhYmxlTW9kdWxlRmlsZShmaWxlbmFtZSkgJiZcbiAgICBpc0luU291cmNlRGlyZWN0b3J5KGZpbGVuYW1lKSAmJlxuICAgIGFsbG93ZWROYW1lcy5sZW5ndGggPiAwXG4gICk7XG59O1xuXG5leHBvcnQgeyBnZXRPcHRpb25zLCBzaG91bGRMaW50RmlsZSB9O1xuZXhwb3J0IHR5cGUgeyBDb25zaXN0ZW50QmFycmVsRmlsZXNTdGF0ZSB9O1xuIl19
@@ -1,4 +1,5 @@
1
1
  export { barrelFilesExportsOnlyRule, consistentBarrelFilesRule, noImportExportAliasesRule, noReexportsOutsideBarrelsRule, } from "./consistent-barrel-files/index.js";
2
2
  export { noImportExportExtensionsRule } from "./no-import-export-extensions/index.js";
3
3
  export { noUnusedExportsRule } from "./no-unused-exports/index.js";
4
+ export { noUnusedPublicMembersRule } from "./no-unused-public-members/index.js";
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/architecture/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/architecture/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { barrelFilesExportsOnlyRule, consistentBarrelFilesRule, noImportExportAliasesRule, noReexportsOutsideBarrelsRule, } from "./consistent-barrel-files/index.js";
2
2
  export { noImportExportExtensionsRule } from "./no-import-export-extensions/index.js";
3
3
  export { noUnusedExportsRule } from "./no-unused-exports/index.js";
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZG9tYWluL2FyY2hpdGVjdHVyZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsNkJBQTZCLEdBQzlCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBiYXJyZWxGaWxlc0V4cG9ydHNPbmx5UnVsZSxcbiAgY29uc2lzdGVudEJhcnJlbEZpbGVzUnVsZSxcbiAgbm9JbXBvcnRFeHBvcnRBbGlhc2VzUnVsZSxcbiAgbm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc1J1bGUsXG59IGZyb20gXCIuL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzXCI7XG5leHBvcnQgeyBub0ltcG9ydEV4cG9ydEV4dGVuc2lvbnNSdWxlIH0gZnJvbSBcIi4vbm8taW1wb3J0LWV4cG9ydC1leHRlbnNpb25zXCI7XG5leHBvcnQgeyBub1VudXNlZEV4cG9ydHNSdWxlIH0gZnJvbSBcIi4vbm8tdW51c2VkLWV4cG9ydHNcIjtcbiJdfQ==
4
+ export { noUnusedPublicMembersRule } from "./no-unused-public-members/index.js";
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZG9tYWluL2FyY2hpdGVjdHVyZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsNkJBQTZCLEdBQzlCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBiYXJyZWxGaWxlc0V4cG9ydHNPbmx5UnVsZSxcbiAgY29uc2lzdGVudEJhcnJlbEZpbGVzUnVsZSxcbiAgbm9JbXBvcnRFeHBvcnRBbGlhc2VzUnVsZSxcbiAgbm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc1J1bGUsXG59IGZyb20gXCIuL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzXCI7XG5leHBvcnQgeyBub0ltcG9ydEV4cG9ydEV4dGVuc2lvbnNSdWxlIH0gZnJvbSBcIi4vbm8taW1wb3J0LWV4cG9ydC1leHRlbnNpb25zXCI7XG5leHBvcnQgeyBub1VudXNlZEV4cG9ydHNSdWxlIH0gZnJvbSBcIi4vbm8tdW51c2VkLWV4cG9ydHNcIjtcbmV4cG9ydCB7IG5vVW51c2VkUHVibGljTWVtYmVyc1J1bGUgfSBmcm9tIFwiLi9uby11bnVzZWQtcHVibGljLW1lbWJlcnNcIjtcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export { noUnusedPublicMembersRule } from "./rule.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/no-unused-public-members/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { noUnusedPublicMembersRule } from "./rule.js";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZG9tYWluL2FyY2hpdGVjdHVyZS9uby11bnVzZWQtcHVibGljLW1lbWJlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgbm9VbnVzZWRQdWJsaWNNZW1iZXJzUnVsZSB9IGZyb20gXCIuL3J1bGVcIjtcbiJdfQ==
@@ -0,0 +1,16 @@
1
+ import * as ts from "typescript";
2
+ import type { PublicMember } from "./member-declaration-utilities.js";
3
+ /**
4
+ * Collects member symbols linked by implemented or inherited types.
5
+ * @param program TypeScript project program.
6
+ * @param checker TypeScript type checker.
7
+ * @param targetMember Member whose related contracts are being found.
8
+ * @returns Related member symbols from contract declarations.
9
+ * @example
10
+ * ```typescript
11
+ * const symbols = collectHeritageMemberSymbols(program, checker, member);
12
+ * ```
13
+ */
14
+ declare const collectHeritageMemberSymbols: (program: ts.Program, checker: ts.TypeChecker, targetMember: PublicMember) => ts.Symbol[];
15
+ export { collectHeritageMemberSymbols };
16
+ //# sourceMappingURL=member-contract-utilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-contract-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/no-unused-public-members/member-contract-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAyDnE;;;;;;;;;;GAUG;AACH,QAAA,MAAM,4BAA4B,GAChC,SAAS,EAAE,CAAC,OAAO,EACnB,SAAS,EAAE,CAAC,WAAW,EACvB,cAAc,YAAY,KACzB,EAAE,CAAC,MAAM,EA+EX,CAAC;AAEF,OAAO,EAAE,4BAA4B,EAAE,CAAC"}
@@ -0,0 +1,102 @@
1
+ import * as ts from "typescript";
2
+ import { isSameSymbol, resolveCanonicalSymbol, } from "../no-unused-exports/no-unused-exports-symbol-utilities.js";
3
+ import { isSupportedMember } from "./member-host-utilities.js";
4
+ /**
5
+ * Extracts the static key from a supported member declaration.
6
+ * @param declaration TypeScript member node to inspect.
7
+ * @returns Static name when the declaration is supported.
8
+ * @example
9
+ * ```typescript
10
+ * const name = getDeclaredMemberName(memberDeclaration);
11
+ * ```
12
+ */
13
+ const getDeclaredMemberName = (declaration) => {
14
+ if (!isSupportedMember(declaration)) {
15
+ return void 0;
16
+ }
17
+ const name = declaration.name;
18
+ return name !== void 0 &&
19
+ (ts.isIdentifier(name) || ts.isStringLiteralLike(name))
20
+ ? name.text
21
+ : void 0;
22
+ };
23
+ /**
24
+ * Gets the symbol for one direct member declaration.
25
+ * @param checker TypeScript type checker.
26
+ * @param declaration TypeScript syntax node naming the member.
27
+ * @param memberName Static member name.
28
+ * @returns Member symbol when available.
29
+ * @example
30
+ * ```typescript
31
+ * const symbol = getDeclaredMemberSymbol(checker, declaration, "run");
32
+ * ```
33
+ */
34
+ const getDeclaredMemberSymbol = (checker, declaration, memberName) => {
35
+ const name = declaration.name;
36
+ return name === void 0
37
+ ? void 0
38
+ : (checker.getSymbolAtLocation(name) ??
39
+ checker.getPropertyOfType(checker.getTypeAtLocation(declaration.parent), memberName));
40
+ };
41
+ /**
42
+ * Collects member symbols linked by implemented or inherited types.
43
+ * @param program TypeScript project program.
44
+ * @param checker TypeScript type checker.
45
+ * @param targetMember Member whose related contracts are being found.
46
+ * @returns Related member symbols from contract declarations.
47
+ * @example
48
+ * ```typescript
49
+ * const symbols = collectHeritageMemberSymbols(program, checker, member);
50
+ * ```
51
+ */
52
+ const collectHeritageMemberSymbols = (program, checker, targetMember) => {
53
+ const relatedSymbols = [];
54
+ const targetSymbol = resolveCanonicalSymbol(targetMember.memberSymbol, checker);
55
+ const addSymbol = (candidate) => {
56
+ if (candidate !== void 0 &&
57
+ relatedSymbols.every((symbol) => !isSameSymbol(symbol, candidate))) {
58
+ relatedSymbols.push(candidate);
59
+ }
60
+ };
61
+ const visit = (node) => {
62
+ if (ts.isClassDeclaration(node) ||
63
+ ts.isInterfaceDeclaration(node) ||
64
+ ts.isClassExpression(node)) {
65
+ const ownMembers = node.members.filter((member) => getDeclaredMemberName(member) === targetMember.memberName);
66
+ const matchingHeritageSymbols = [];
67
+ const heritageClauses = node.heritageClauses ?? [];
68
+ for (const clause of heritageClauses) {
69
+ for (const heritageType of clause.types) {
70
+ const inheritedMember = checker.getPropertyOfType(checker.getTypeAtLocation(heritageType), targetMember.memberName);
71
+ if (inheritedMember !== void 0 &&
72
+ (isSameSymbol(resolveCanonicalSymbol(inheritedMember, checker), targetSymbol) ||
73
+ node === targetMember.declaration.parent)) {
74
+ matchingHeritageSymbols.push(inheritedMember);
75
+ }
76
+ }
77
+ }
78
+ if (node === targetMember.declaration.parent) {
79
+ for (const member of ownMembers) {
80
+ addSymbol(getDeclaredMemberSymbol(checker, member, targetMember.memberName));
81
+ }
82
+ }
83
+ if (matchingHeritageSymbols.length > 0) {
84
+ for (const member of ownMembers) {
85
+ addSymbol(getDeclaredMemberSymbol(checker, member, targetMember.memberName));
86
+ }
87
+ }
88
+ for (const symbol of matchingHeritageSymbols) {
89
+ addSymbol(symbol);
90
+ }
91
+ }
92
+ ts.forEachChild(node, visit);
93
+ };
94
+ for (const sourceFile of program.getSourceFiles()) {
95
+ if (!sourceFile.isDeclarationFile) {
96
+ visit(sourceFile);
97
+ }
98
+ }
99
+ return relatedSymbols;
100
+ };
101
+ export { collectHeritageMemberSymbols };
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtYmVyLWNvbnRyYWN0LXV0aWxpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL25vLXVudXNlZC1wdWJsaWMtbWVtYmVycy9tZW1iZXItY29udHJhY3QtdXRpbGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBSWpDLE9BQU8sRUFDTCxZQUFZLEVBQ1osc0JBQXNCLEdBQ3ZCLE1BQU0seURBQXlELENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFNUQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLHFCQUFxQixHQUFHLENBQUMsV0FBb0IsRUFBc0IsRUFBRTtJQUN6RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxPQUFPLEtBQUssQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLElBQUksR0FBSSxXQUFtQyxDQUFDLElBQUksQ0FBQztJQUV2RCxPQUFPLElBQUksS0FBSyxLQUFLLENBQUM7UUFDcEIsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUk7UUFDWCxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDYixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRyxDQUM5QixPQUF1QixFQUN2QixXQUFvQixFQUNwQixVQUFrQixFQUNLLEVBQUU7SUFDekIsTUFBTSxJQUFJLEdBQUksV0FBbUMsQ0FBQyxJQUFJLENBQUM7SUFFdkQsT0FBTyxJQUFJLEtBQUssS0FBSyxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDUixD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QUssTUFBTSxNQUFNLElBQUksdUJBQXVCLEVBQUUsQ0FBQztnQkFDN0MsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3BCLENBQUM7UUFDSCxDQUFDO1FBRUQsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0lBRUYsS0FBSyxNQUFNLFVBQVUsSUFBSSxPQUFPLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDbEMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxjQUFjLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB0cyBmcm9tIFwidHlwZXNjcmlwdFwiO1xuXG5pbXBvcnQgdHlwZSB7IFB1YmxpY01lbWJlciB9IGZyb20gXCIuL21lbWJlci1kZWNsYXJhdGlvbi11dGlsaXRpZXNcIjtcblxuaW1wb3J0IHtcbiAgaXNTYW1lU3ltYm9sLFxuICByZXNvbHZlQ2Fub25pY2FsU3ltYm9sLFxufSBmcm9tIFwiLi4vbm8tdW51c2VkLWV4cG9ydHMvbm8tdW51c2VkLWV4cG9ydHMtc3ltYm9sLXV0aWxpdGllc1wiO1xuaW1wb3J0IHsgaXNTdXBwb3J0ZWRNZW1iZXIgfSBmcm9tIFwiLi9tZW1iZXItaG9zdC11dGlsaXRpZXNcIjtcblxuLyoqXG4gKiBFeHRyYWN0cyB0aGUgc3RhdGljIGtleSBmcm9tIGEgc3VwcG9ydGVkIG1lbWJlciBkZWNsYXJhdGlvbi5cbiAqIEBwYXJhbSBkZWNsYXJhdGlvbiBUeXBlU2NyaXB0IG1lbWJlciBub2RlIHRvIGluc3BlY3QuXG4gKiBAcmV0dXJucyBTdGF0aWMgbmFtZSB3aGVuIHRoZSBkZWNsYXJhdGlvbiBpcyBzdXBwb3J0ZWQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgbmFtZSA9IGdldERlY2xhcmVkTWVtYmVyTmFtZShtZW1iZXJEZWNsYXJhdGlvbik7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0RGVjbGFyZWRNZW1iZXJOYW1lID0gKGRlY2xhcmF0aW9uOiB0cy5Ob2RlKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKCFpc1N1cHBvcnRlZE1lbWJlcihkZWNsYXJhdGlvbikpIHtcbiAgICByZXR1cm4gdm9pZCAwO1xuICB9XG5cbiAgY29uc3QgbmFtZSA9IChkZWNsYXJhdGlvbiBhcyB0cy5OYW1lZERlY2xhcmF0aW9uKS5uYW1lO1xuXG4gIHJldHVybiBuYW1lICE9PSB2b2lkIDAgJiZcbiAgICAodHMuaXNJZGVudGlmaWVyKG5hbWUpIHx8IHRzLmlzU3RyaW5nTGl0ZXJhbExpa2UobmFtZSkpXG4gICAgPyBuYW1lLnRleHRcbiAgICA6IHZvaWQgMDtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgc3ltYm9sIGZvciBvbmUgZGlyZWN0IG1lbWJlciBkZWNsYXJhdGlvbi5cbiAqIEBwYXJhbSBjaGVja2VyIFR5cGVTY3JpcHQgdHlwZSBjaGVja2VyLlxuICogQHBhcmFtIGRlY2xhcmF0aW9uIFR5cGVTY3JpcHQgc3ludGF4IG5vZGUgbmFtaW5nIHRoZSBtZW1iZXIuXG4gKiBAcGFyYW0gbWVtYmVyTmFtZSBTdGF0aWMgbWVtYmVyIG5hbWUuXG4gKiBAcmV0dXJucyBNZW1iZXIgc3ltYm9sIHdoZW4gYXZhaWxhYmxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHN5bWJvbCA9IGdldERlY2xhcmVkTWVtYmVyU3ltYm9sKGNoZWNrZXIsIGRlY2xhcmF0aW9uLCBcInJ1blwiKTtcbiAqIGBgYFxuICovXG5jb25zdCBnZXREZWNsYXJlZE1lbWJlclN5bWJvbCA9IChcbiAgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsXG4gIGRlY2xhcmF0aW9uOiB0cy5Ob2RlLFxuICBtZW1iZXJOYW1lOiBzdHJpbmcsXG4pOiB0cy5TeW1ib2wgfCB1bmRlZmluZWQgPT4ge1xuICBjb25zdCBuYW1lID0gKGRlY2xhcmF0aW9uIGFzIHRzLk5hbWVkRGVjbGFyYXRpb24pLm5hbWU7XG5cbiAgcmV0dXJuIG5hbWUgPT09IHZvaWQgMFxuICAgID8gdm9pZCAwXG4gICAgOiAoY2hlY2tlci5nZXRTeW1ib2xBdExvY2F0aW9uKG5hbWUpID8/XG4gICAgICAgIGNoZWNrZXIuZ2V0UHJvcGVydHlPZlR5cGUoXG4gICAgICAgICAgY2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihkZWNsYXJhdGlvbi5wYXJlbnQpLFxuICAgICAgICAgIG1lbWJlck5hbWUsXG4gICAgICAgICkpO1xufTtcblxuLyoqXG4gKiBDb2xsZWN0cyBtZW1iZXIgc3ltYm9scyBsaW5rZWQgYnkgaW1wbGVtZW50ZWQgb3IgaW5oZXJpdGVkIHR5cGVzLlxuICogQHBhcmFtIHByb2dyYW0gVHlwZVNjcmlwdCBwcm9qZWN0IHByb2dyYW0uXG4gKiBAcGFyYW0gY2hlY2tlciBUeXBlU2NyaXB0IHR5cGUgY2hlY2tlci5cbiAqIEBwYXJhbSB0YXJnZXRNZW1iZXIgTWVtYmVyIHdob3NlIHJlbGF0ZWQgY29udHJhY3RzIGFyZSBiZWluZyBmb3VuZC5cbiAqIEByZXR1cm5zIFJlbGF0ZWQgbWVtYmVyIHN5bWJvbHMgZnJvbSBjb250cmFjdCBkZWNsYXJhdGlvbnMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgc3ltYm9scyA9IGNvbGxlY3RIZXJpdGFnZU1lbWJlclN5bWJvbHMocHJvZ3JhbSwgY2hlY2tlciwgbWVtYmVyKTtcbiAqIGBgYFxuICovXG5jb25zdCBjb2xsZWN0SGVyaXRhZ2VNZW1iZXJTeW1ib2xzID0gKFxuICBwcm9ncmFtOiB0cy5Qcm9ncmFtLFxuICBjaGVja2VyOiB0cy5UeXBlQ2hlY2tlcixcbiAgdGFyZ2V0TWVtYmVyOiBQdWJsaWNNZW1iZXIsXG4pOiB0cy5TeW1ib2xbXSA9PiB7XG4gIGNvbnN0IHJlbGF0ZWRTeW1ib2xzOiB0cy5TeW1ib2xbXSA9IFtdO1xuICBjb25zdCB0YXJnZXRTeW1ib2wgPSByZXNvbHZlQ2Fub25pY2FsU3ltYm9sKFxuICAgIHRhcmdldE1lbWJlci5tZW1iZXJTeW1ib2wsXG4gICAgY2hlY2tlcixcbiAgKTtcbiAgY29uc3QgYWRkU3ltYm9sID0gKGNhbmRpZGF0ZTogdHMuU3ltYm9sIHwgdW5kZWZpbmVkKTogdm9pZCA9PiB7XG4gICAgaWYgKFxuICAgICAgY2FuZGlkYXRlICE9PSB2b2lkIDAgJiZcbiAgICAgIHJlbGF0ZWRTeW1ib2xzLmV2ZXJ5KChzeW1ib2wpID0+ICFpc1NhbWVTeW1ib2woc3ltYm9sLCBjYW5kaWRhdGUpKVxuICAgICkge1xuICAgICAgcmVsYXRlZFN5bWJvbHMucHVzaChjYW5kaWRhdGUpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCB2aXNpdCA9IChub2RlOiB0cy5Ob2RlKTogdm9pZCA9PiB7XG4gICAgaWYgKFxuICAgICAgdHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpIHx8XG4gICAgICB0cy5pc0ludGVyZmFjZURlY2xhcmF0aW9uKG5vZGUpIHx8XG4gICAgICB0cy5pc0NsYXNzRXhwcmVzc2lvbihub2RlKVxuICAgICkge1xuICAgICAgY29uc3Qgb3duTWVtYmVycyA9IG5vZGUubWVtYmVycy5maWx0ZXIoXG4gICAgICAgIChtZW1iZXIpID0+IGdldERlY2xhcmVkTWVtYmVyTmFtZShtZW1iZXIpID09PSB0YXJnZXRNZW1iZXIubWVtYmVyTmFtZSxcbiAgICAgICk7XG4gICAgICBjb25zdCBtYXRjaGluZ0hlcml0YWdlU3ltYm9sczogdHMuU3ltYm9sW10gPSBbXTtcblxuICAgICAgY29uc3QgaGVyaXRhZ2VDbGF1c2VzID0gbm9kZS5oZXJpdGFnZUNsYXVzZXMgPz8gW107XG5cbiAgICAgIGZvciAoY29uc3QgY2xhdXNlIG9mIGhlcml0YWdlQ2xhdXNlcykge1xuICAgICAgICBmb3IgKGNvbnN0IGhlcml0YWdlVHlwZSBvZiBjbGF1c2UudHlwZXMpIHtcbiAgICAgICAgICBjb25zdCBpbmhlcml0ZWRNZW1iZXIgPSBjaGVja2VyLmdldFByb3BlcnR5T2ZUeXBlKFxuICAgICAgICAgICAgY2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihoZXJpdGFnZVR5cGUpLFxuICAgICAgICAgICAgdGFyZ2V0TWVtYmVyLm1lbWJlck5hbWUsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGluaGVyaXRlZE1lbWJlciAhPT0gdm9pZCAwICYmXG4gICAgICAgICAgICAoaXNTYW1lU3ltYm9sKFxuICAgICAgICAgICAgICByZXNvbHZlQ2Fub25pY2FsU3ltYm9sKGluaGVyaXRlZE1lbWJlciwgY2hlY2tlciksXG4gICAgICAgICAgICAgIHRhcmdldFN5bWJvbCxcbiAgICAgICAgICAgICkgfHxcbiAgICAgICAgICAgICAgbm9kZSA9PT0gdGFyZ2V0TWVtYmVyLmRlY2xhcmF0aW9uLnBhcmVudClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG1hdGNoaW5nSGVyaXRhZ2VTeW1ib2xzLnB1c2goaW5oZXJpdGVkTWVtYmVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKG5vZGUgPT09IHRhcmdldE1lbWJlci5kZWNsYXJhdGlvbi5wYXJlbnQpIHtcbiAgICAgICAgZm9yIChjb25zdCBtZW1iZXIgb2Ygb3duTWVtYmVycykge1xuICAgICAgICAgIGFkZFN5bWJvbChcbiAgICAgICAgICAgIGdldERlY2xhcmVkTWVtYmVyU3ltYm9sKGNoZWNrZXIsIG1lbWJlciwgdGFyZ2V0TWVtYmVyLm1lbWJlck5hbWUpLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKG1hdGNoaW5nSGVyaXRhZ2VTeW1ib2xzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZm9yIChjb25zdCBtZW1iZXIgb2Ygb3duTWVtYmVycykge1xuICAgICAgICAgIGFkZFN5bWJvbChcbiAgICAgICAgICAgIGdldERlY2xhcmVkTWVtYmVyU3ltYm9sKGNoZWNrZXIsIG1lbWJlciwgdGFyZ2V0TWVtYmVyLm1lbWJlck5hbWUpLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZm9yIChjb25zdCBzeW1ib2wgb2YgbWF0Y2hpbmdIZXJpdGFnZVN5bWJvbHMpIHtcbiAgICAgICAgYWRkU3ltYm9sKHN5bWJvbCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIHZpc2l0KTtcbiAgfTtcblxuICBmb3IgKGNvbnN0IHNvdXJjZUZpbGUgb2YgcHJvZ3JhbS5nZXRTb3VyY2VGaWxlcygpKSB7XG4gICAgaWYgKCFzb3VyY2VGaWxlLmlzRGVjbGFyYXRpb25GaWxlKSB7XG4gICAgICB2aXNpdChzb3VyY2VGaWxlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVsYXRlZFN5bWJvbHM7XG59O1xuXG5leHBvcnQgeyBjb2xsZWN0SGVyaXRhZ2VNZW1iZXJTeW1ib2xzIH07XG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { ESLintUtils } from "@typescript-eslint/utils";
2
+ import * as ts from "typescript";
3
+ /** One public member and its owning declaration. */
4
+ export interface PublicMember {
5
+ /** Member declaration in the TypeScript source tree. */
6
+ declaration: ts.Node;
7
+ /** Host declaration used to resolve declared member types. */
8
+ hostDeclaration: ts.Node;
9
+ /** Display name of the host. */
10
+ hostName: string;
11
+ /** Symbol of the host declaration, when available. */
12
+ hostSymbol: ts.Symbol | undefined;
13
+ /** Name used for contract matching and diagnostics. */
14
+ memberName: string;
15
+ /** TypeScript symbol for the member declaration. */
16
+ memberSymbol: ts.Symbol;
17
+ /** ESTree node used for the diagnostic location. */
18
+ reportNode: ReturnType<ParserServices["tsNodeToESTreeNodeMap"]["get"]>;
19
+ }
20
+ type ParserServices = ReturnType<typeof ESLintUtils.getParserServices>;
21
+ /**
22
+ * Collects direct public members from one source file.
23
+ * @param sourceFile Source file being analyzed.
24
+ * @param checker TypeScript type checker.
25
+ * @param parserServices TypeScript and ESTree node maps.
26
+ * @returns Public member declarations with resolved symbols.
27
+ * @example
28
+ * ```typescript
29
+ * const members = collectPublicMembers(sourceFile, checker, parserServices);
30
+ * ```
31
+ */
32
+ declare const collectPublicMembers: (sourceFile: ts.SourceFile, checker: ts.TypeChecker, parserServices: ParserServices) => PublicMember[];
33
+ export { collectPublicMembers };
34
+ //# sourceMappingURL=member-declaration-utilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-declaration-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/no-unused-public-members/member-declaration-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAWjC,oDAAoD;AACpD,MAAM,WAAW,YAAY;IAC3B,wDAAwD;IACxD,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC;IAErB,8DAA8D;IAC9D,eAAe,EAAE,EAAE,CAAC,IAAI,CAAC;IAEzB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;IAEjB,sDAAsD;IACtD,UAAU,EAAE,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC;IAElC,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IAEnB,oDAAoD;IACpD,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC;IAExB,oDAAoD;IACpD,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;CACxE;AAED,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,iBAAiB,CAAC,CAAC;AAEvE;;;;;;;;;;GAUG;AACH,QAAA,MAAM,oBAAoB,GACxB,YAAY,EAAE,CAAC,UAAU,EACzB,SAAS,EAAE,CAAC,WAAW,EACvB,gBAAgB,cAAc,KAC7B,YAAY,EA2Dd,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { ESLintUtils } from "@typescript-eslint/utils";
2
+ import * as ts from "typescript";
3
+ import { isSameSymbol } from "../no-unused-exports/no-unused-exports-symbol-utilities.js";
4
+ import { collectMemberHosts, getMemberSymbol, getStaticMemberName, isPublicClassMember, isSupportedMember, } from "./member-host-utilities.js";
5
+ /**
6
+ * Collects direct public members from one source file.
7
+ * @param sourceFile Source file being analyzed.
8
+ * @param checker TypeScript type checker.
9
+ * @param parserServices TypeScript and ESTree node maps.
10
+ * @returns Public member declarations with resolved symbols.
11
+ * @example
12
+ * ```typescript
13
+ * const members = collectPublicMembers(sourceFile, checker, parserServices);
14
+ * ```
15
+ */
16
+ const collectPublicMembers = (sourceFile, checker, parserServices) => {
17
+ const members = [];
18
+ for (const host of collectMemberHosts(sourceFile, checker)) {
19
+ const hostType = checker.getTypeAtLocation(host.node);
20
+ const isClassHost = ts.isClassDeclaration(host.node);
21
+ for (const declaration of host.members) {
22
+ if (!isSupportedMember(declaration) ||
23
+ (isClassHost && !isPublicClassMember(declaration))) {
24
+ continue;
25
+ }
26
+ const nameNode = declaration.name;
27
+ const memberName = getStaticMemberName(nameNode);
28
+ if (memberName === "constructor" ||
29
+ nameNode === void 0 ||
30
+ memberName === void 0 ||
31
+ !parserServices.tsNodeToESTreeNodeMap.has(nameNode)) {
32
+ continue;
33
+ }
34
+ const memberSymbol = getMemberSymbol(checker, declaration, memberName, hostType);
35
+ if (memberSymbol === void 0 ||
36
+ members.some((existing) => existing.hostSymbol === host.symbol &&
37
+ existing.hostName === host.name &&
38
+ isSameSymbol(existing.memberSymbol, memberSymbol))) {
39
+ continue;
40
+ }
41
+ members.push({
42
+ declaration,
43
+ hostDeclaration: host.node,
44
+ hostName: host.name,
45
+ hostSymbol: host.symbol,
46
+ memberName,
47
+ memberSymbol,
48
+ reportNode: parserServices.tsNodeToESTreeNodeMap.get(nameNode),
49
+ });
50
+ }
51
+ }
52
+ return members;
53
+ };
54
+ export { collectPublicMembers };
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtYmVyLWRlY2xhcmF0aW9uLXV0aWxpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL25vLXVudXNlZC1wdWJsaWMtbWVtYmVycy9tZW1iZXItZGVjbGFyYXRpb24tdXRpbGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVqQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdkYsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixlQUFlLEVBQ2YsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixpQkFBaUIsR0FDbEIsTUFBTSx5QkFBeUIsQ0FBQztBQTRCakM7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sb0JBQW9CLEdBQUcsQ0FDM0IsVUFBeUIsRUFDekIsT0FBdUIsRUFDdkIsY0FBOEIsRUFDZCxFQUFFO0lBQ2xCLE1BQU0sT0FBTyxHQUFtQixFQUFFLENBQUM7SUFFbkMsS0FBSyxNQUFNLElBQUksSUFBSSxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUMzRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckQsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkMsSUFDRSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQztnQkFDL0IsQ0FBQyxXQUFXLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUNsRCxDQUFDO2dCQUNELFNBQVM7WUFDWCxDQUFDO1lBRUQsTUFBTSxRQUFRLEdBQUksV0FBbUMsQ0FBQyxJQUFJLENBQUM7WUFDM0QsTUFBTSxVQUFVLEdBQUcsbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFakQsSUFDRSxVQUFVLEtBQUssYUFBYTtnQkFDNUIsUUFBUSxLQUFLLEtBQUssQ0FBQztnQkFDbkIsVUFBVSxLQUFLLEtBQUssQ0FBQztnQkFDckIsQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUNuRCxDQUFDO2dCQUNELFNBQVM7WUFDWCxDQUFDO1lBRUQsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUNsQyxPQUFPLEVBQ1AsV0FBVyxFQUNYLFVBQVUsRUFDVixRQUFRLENBQ1QsQ0FBQztZQUVGLElBQ0UsWUFBWSxLQUFLLEtBQUssQ0FBQztnQkFDdkIsT0FBTyxDQUFDLElBQUksQ0FDVixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ1gsUUFBUSxDQUFDLFVBQVUsS0FBSyxJQUFJLENBQUMsTUFBTTtvQkFDbkMsUUFBUSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsSUFBSTtvQkFDL0IsWUFBWSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQ3BELEVBQ0QsQ0FBQztnQkFDRCxTQUFTO1lBQ1gsQ0FBQztZQUVELE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ1gsV0FBVztnQkFDWCxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQzFCLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDbkIsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUN2QixVQUFVO2dCQUNWLFlBQVk7Z0JBQ1osVUFBVSxFQUFFLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO2FBQy9ELENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFU0xpbnRVdGlscyB9IGZyb20gXCJAdHlwZXNjcmlwdC1lc2xpbnQvdXRpbHNcIjtcbmltcG9ydCAqIGFzIHRzIGZyb20gXCJ0eXBlc2NyaXB0XCI7XG5cbmltcG9ydCB7IGlzU2FtZVN5bWJvbCB9IGZyb20gXCIuLi9uby11bnVzZWQtZXhwb3J0cy9uby11bnVzZWQtZXhwb3J0cy1zeW1ib2wtdXRpbGl0aWVzXCI7XG5pbXBvcnQge1xuICBjb2xsZWN0TWVtYmVySG9zdHMsXG4gIGdldE1lbWJlclN5bWJvbCxcbiAgZ2V0U3RhdGljTWVtYmVyTmFtZSxcbiAgaXNQdWJsaWNDbGFzc01lbWJlcixcbiAgaXNTdXBwb3J0ZWRNZW1iZXIsXG59IGZyb20gXCIuL21lbWJlci1ob3N0LXV0aWxpdGllc1wiO1xuXG4vKiogT25lIHB1YmxpYyBtZW1iZXIgYW5kIGl0cyBvd25pbmcgZGVjbGFyYXRpb24uICovXG5leHBvcnQgaW50ZXJmYWNlIFB1YmxpY01lbWJlciB7XG4gIC8qKiBNZW1iZXIgZGVjbGFyYXRpb24gaW4gdGhlIFR5cGVTY3JpcHQgc291cmNlIHRyZWUuICovXG4gIGRlY2xhcmF0aW9uOiB0cy5Ob2RlO1xuXG4gIC8qKiBIb3N0IGRlY2xhcmF0aW9uIHVzZWQgdG8gcmVzb2x2ZSBkZWNsYXJlZCBtZW1iZXIgdHlwZXMuICovXG4gIGhvc3REZWNsYXJhdGlvbjogdHMuTm9kZTtcblxuICAvKiogRGlzcGxheSBuYW1lIG9mIHRoZSBob3N0LiAqL1xuICBob3N0TmFtZTogc3RyaW5nO1xuXG4gIC8qKiBTeW1ib2wgb2YgdGhlIGhvc3QgZGVjbGFyYXRpb24sIHdoZW4gYXZhaWxhYmxlLiAqL1xuICBob3N0U3ltYm9sOiB0cy5TeW1ib2wgfCB1bmRlZmluZWQ7XG5cbiAgLyoqIE5hbWUgdXNlZCBmb3IgY29udHJhY3QgbWF0Y2hpbmcgYW5kIGRpYWdub3N0aWNzLiAqL1xuICBtZW1iZXJOYW1lOiBzdHJpbmc7XG5cbiAgLyoqIFR5cGVTY3JpcHQgc3ltYm9sIGZvciB0aGUgbWVtYmVyIGRlY2xhcmF0aW9uLiAqL1xuICBtZW1iZXJTeW1ib2w6IHRzLlN5bWJvbDtcblxuICAvKiogRVNUcmVlIG5vZGUgdXNlZCBmb3IgdGhlIGRpYWdub3N0aWMgbG9jYXRpb24uICovXG4gIHJlcG9ydE5vZGU6IFJldHVyblR5cGU8UGFyc2VyU2VydmljZXNbXCJ0c05vZGVUb0VTVHJlZU5vZGVNYXBcIl1bXCJnZXRcIl0+O1xufVxuXG50eXBlIFBhcnNlclNlcnZpY2VzID0gUmV0dXJuVHlwZTx0eXBlb2YgRVNMaW50VXRpbHMuZ2V0UGFyc2VyU2VydmljZXM+O1xuXG4vKipcbiAqIENvbGxlY3RzIGRpcmVjdCBwdWJsaWMgbWVtYmVycyBmcm9tIG9uZSBzb3VyY2UgZmlsZS5cbiAqIEBwYXJhbSBzb3VyY2VGaWxlIFNvdXJjZSBmaWxlIGJlaW5nIGFuYWx5emVkLlxuICogQHBhcmFtIGNoZWNrZXIgVHlwZVNjcmlwdCB0eXBlIGNoZWNrZXIuXG4gKiBAcGFyYW0gcGFyc2VyU2VydmljZXMgVHlwZVNjcmlwdCBhbmQgRVNUcmVlIG5vZGUgbWFwcy5cbiAqIEByZXR1cm5zIFB1YmxpYyBtZW1iZXIgZGVjbGFyYXRpb25zIHdpdGggcmVzb2x2ZWQgc3ltYm9scy5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBtZW1iZXJzID0gY29sbGVjdFB1YmxpY01lbWJlcnMoc291cmNlRmlsZSwgY2hlY2tlciwgcGFyc2VyU2VydmljZXMpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNvbGxlY3RQdWJsaWNNZW1iZXJzID0gKFxuICBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLFxuICBjaGVja2VyOiB0cy5UeXBlQ2hlY2tlcixcbiAgcGFyc2VyU2VydmljZXM6IFBhcnNlclNlcnZpY2VzLFxuKTogUHVibGljTWVtYmVyW10gPT4ge1xuICBjb25zdCBtZW1iZXJzOiBQdWJsaWNNZW1iZXJbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgaG9zdCBvZiBjb2xsZWN0TWVtYmVySG9zdHMoc291cmNlRmlsZSwgY2hlY2tlcikpIHtcbiAgICBjb25zdCBob3N0VHlwZSA9IGNoZWNrZXIuZ2V0VHlwZUF0TG9jYXRpb24oaG9zdC5ub2RlKTtcbiAgICBjb25zdCBpc0NsYXNzSG9zdCA9IHRzLmlzQ2xhc3NEZWNsYXJhdGlvbihob3N0Lm5vZGUpO1xuXG4gICAgZm9yIChjb25zdCBkZWNsYXJhdGlvbiBvZiBob3N0Lm1lbWJlcnMpIHtcbiAgICAgIGlmIChcbiAgICAgICAgIWlzU3VwcG9ydGVkTWVtYmVyKGRlY2xhcmF0aW9uKSB8fFxuICAgICAgICAoaXNDbGFzc0hvc3QgJiYgIWlzUHVibGljQ2xhc3NNZW1iZXIoZGVjbGFyYXRpb24pKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBuYW1lTm9kZSA9IChkZWNsYXJhdGlvbiBhcyB0cy5OYW1lZERlY2xhcmF0aW9uKS5uYW1lO1xuICAgICAgY29uc3QgbWVtYmVyTmFtZSA9IGdldFN0YXRpY01lbWJlck5hbWUobmFtZU5vZGUpO1xuXG4gICAgICBpZiAoXG4gICAgICAgIG1lbWJlck5hbWUgPT09IFwiY29uc3RydWN0b3JcIiB8fFxuICAgICAgICBuYW1lTm9kZSA9PT0gdm9pZCAwIHx8XG4gICAgICAgIG1lbWJlck5hbWUgPT09IHZvaWQgMCB8fFxuICAgICAgICAhcGFyc2VyU2VydmljZXMudHNOb2RlVG9FU1RyZWVOb2RlTWFwLmhhcyhuYW1lTm9kZSlcbiAgICAgICkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgbWVtYmVyU3ltYm9sID0gZ2V0TWVtYmVyU3ltYm9sKFxuICAgICAgICBjaGVja2VyLFxuICAgICAgICBkZWNsYXJhdGlvbixcbiAgICAgICAgbWVtYmVyTmFtZSxcbiAgICAgICAgaG9zdFR5cGUsXG4gICAgICApO1xuXG4gICAgICBpZiAoXG4gICAgICAgIG1lbWJlclN5bWJvbCA9PT0gdm9pZCAwIHx8XG4gICAgICAgIG1lbWJlcnMuc29tZShcbiAgICAgICAgICAoZXhpc3RpbmcpID0+XG4gICAgICAgICAgICBleGlzdGluZy5ob3N0U3ltYm9sID09PSBob3N0LnN5bWJvbCAmJlxuICAgICAgICAgICAgZXhpc3RpbmcuaG9zdE5hbWUgPT09IGhvc3QubmFtZSAmJlxuICAgICAgICAgICAgaXNTYW1lU3ltYm9sKGV4aXN0aW5nLm1lbWJlclN5bWJvbCwgbWVtYmVyU3ltYm9sKSxcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBtZW1iZXJzLnB1c2goe1xuICAgICAgICBkZWNsYXJhdGlvbixcbiAgICAgICAgaG9zdERlY2xhcmF0aW9uOiBob3N0Lm5vZGUsXG4gICAgICAgIGhvc3ROYW1lOiBob3N0Lm5hbWUsXG4gICAgICAgIGhvc3RTeW1ib2w6IGhvc3Quc3ltYm9sLFxuICAgICAgICBtZW1iZXJOYW1lLFxuICAgICAgICBtZW1iZXJTeW1ib2wsXG4gICAgICAgIHJlcG9ydE5vZGU6IHBhcnNlclNlcnZpY2VzLnRzTm9kZVRvRVNUcmVlTm9kZU1hcC5nZXQobmFtZU5vZGUpLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1lbWJlcnM7XG59O1xuXG5leHBvcnQgeyBjb2xsZWN0UHVibGljTWVtYmVycyB9O1xuIl19
@@ -0,0 +1,68 @@
1
+ import * as ts from "typescript";
2
+ /** One supported host and its direct member declarations. */
3
+ interface MemberHost {
4
+ /** Members declared directly by this host. */
5
+ members: readonly ts.Node[];
6
+ /** Display name of the host. */
7
+ name: string;
8
+ /** Host declaration node. */
9
+ node: ts.Node;
10
+ /** Host symbol, when available. */
11
+ symbol: ts.Symbol | undefined;
12
+ }
13
+ /**
14
+ * Gets a static member name, excluding dynamic and private keys.
15
+ * @param name Candidate declaration name.
16
+ * @returns Static name or undefined when the key is dynamic or private.
17
+ * @example
18
+ * ```typescript
19
+ * const name = getStaticMemberName(ts.factory.createIdentifier("run"));
20
+ * ```
21
+ */
22
+ declare const getStaticMemberName: (name: ts.Node | undefined) => string | undefined;
23
+ /**
24
+ * Resolves a direct object-literal property symbol before its contextual type.
25
+ * @param checker TypeScript type checker.
26
+ * @param member Member declaration.
27
+ * @param memberName Static member name.
28
+ * @param hostType Type of the containing host.
29
+ * @returns Member symbol when TypeScript can resolve it.
30
+ * @example
31
+ * ```typescript
32
+ * const symbol = getMemberSymbol(checker, property, "value", hostType);
33
+ * ```
34
+ */
35
+ declare const getMemberSymbol: (checker: ts.TypeChecker, member: ts.Node, memberName: string, hostType: ts.Type) => ts.Symbol | undefined;
36
+ /**
37
+ * Checks whether a class member is public or has implicit public visibility.
38
+ * @param member Class member declaration.
39
+ * @returns True when the member is not private or protected.
40
+ * @example
41
+ * ```typescript
42
+ * const visible = isPublicClassMember(classMethod);
43
+ * ```
44
+ */
45
+ declare const isPublicClassMember: (member: ts.Node) => boolean;
46
+ /**
47
+ * Checks whether a node is a supported direct property or method.
48
+ * @param member Candidate TypeScript member.
49
+ * @returns True when this rule analyzes the member kind.
50
+ * @example
51
+ * ```typescript
52
+ * const supported = isSupportedMember(typeMember);
53
+ * ```
54
+ */
55
+ declare const isSupportedMember: (member: ts.Node) => boolean;
56
+ /**
57
+ * Collects direct class, interface, type-alias, and const-object hosts.
58
+ * @param sourceFile Source file to inspect.
59
+ * @param checker TypeScript type checker.
60
+ * @returns Supported hosts declared by the source file.
61
+ * @example
62
+ * ```typescript
63
+ * const hosts = collectMemberHosts(sourceFile, checker);
64
+ * ```
65
+ */
66
+ declare const collectMemberHosts: (sourceFile: ts.SourceFile, checker: ts.TypeChecker) => MemberHost[];
67
+ export { collectMemberHosts, getMemberSymbol, getStaticMemberName, isPublicClassMember, isSupportedMember, };
68
+ //# sourceMappingURL=member-host-utilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-host-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/no-unused-public-members/member-host-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,6DAA6D;AAC7D,UAAU,UAAU;IAClB,8CAA8C;IAC9C,OAAO,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC;IAE5B,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IAEb,6BAA6B;IAC7B,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;IAEd,mCAAmC;IACnC,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,QAAA,MAAM,mBAAmB,GAAI,MAAM,EAAE,CAAC,IAAI,GAAG,SAAS,KAAG,MAAM,GAAG,SAcjE,CAAC;AA0BF;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,eAAe,GACnB,SAAS,EAAE,CAAC,WAAW,EACvB,QAAQ,EAAE,CAAC,IAAI,EACf,YAAY,MAAM,EAClB,UAAU,EAAE,CAAC,IAAI,KAChB,EAAE,CAAC,MAAM,GAAG,SAwBd,CAAC;AA+BF;;;;;;;;GAQG;AACH,QAAA,MAAM,mBAAmB,GAAI,QAAQ,EAAE,CAAC,IAAI,KAAG,OAoB9C,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,iBAAiB,GAAI,QAAQ,EAAE,CAAC,IAAI,KAAG,OAQH,CAAC;AAE3C;;;;;;;;;GASG;AACH,QAAA,MAAM,kBAAkB,GACtB,YAAY,EAAE,CAAC,UAAU,EACzB,SAAS,EAAE,CAAC,WAAW,KACtB,UAAU,EAsDZ,CAAC;AAEF,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,GAClB,CAAC"}