architecture-linter 0.1.7 → 0.1.8

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.
@@ -1 +1 @@
1
- {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAkD1D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CA+DnE"}
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAwD1D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CA+DnE"}
package/dist/presets.js CHANGED
@@ -16,15 +16,21 @@ exports.PRESETS = {
16
16
  'nestjs': {
17
17
  architecture: {
18
18
  layers: [
19
- 'module', 'controller', 'service', 'repository',
20
- 'guard', 'interceptor', 'pipe', 'decorator', 'dto', 'entity',
19
+ 'module', 'controller', 'service', 'schema',
20
+ 'dto', 'utils', 'guard', 'decorator', 'filter', 'interceptor', 'pipe',
21
21
  ],
22
22
  },
23
23
  rules: {
24
- controller: { cannot_import: ['repository', 'entity'] },
25
- guard: { cannot_import: ['repository'] },
26
- interceptor: { cannot_import: ['repository'] },
27
- pipe: { cannot_import: ['repository'] },
24
+ // Controllers handle HTTP only — no direct DB access, no cross-controller imports
25
+ controller: { cannot_import: ['schema', 'controller'] },
26
+ // Services orchestrate logic — must not depend on HTTP layer
27
+ service: { cannot_import: ['controller'] },
28
+ // Utils must stay pure — no business logic or HTTP concerns
29
+ utils: { cannot_import: ['service', 'controller'] },
30
+ // Cross-cutting infrastructure layers must not touch DB models directly
31
+ guard: { cannot_import: ['schema'] },
32
+ interceptor: { cannot_import: ['schema'] },
33
+ pipe: { cannot_import: ['schema'] },
28
34
  },
29
35
  },
30
36
  'clean-architecture': {
@@ -1 +1 @@
1
- {"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "architecture-linter",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "A CLI tool that enforces architecture rules in TypeScript projects",
5
5
  "keywords": [
6
6
  "architecture",