Skip to content

Cats

concept
1 min readUpdated

What it is responsible for

Cats manages cat-oriented GraphQL schema work through CatsModule, linking CatsResolver and CatsService to the named query, mutation, and subscription members. Query exposes cats and cat; Mutation names createCat; and Subscription names catCreated. The subsystem also names the Cat, CreateCatInput, and CreateCatDto types, plus MINIMUM_AGE and MINIMUM_AGE_ERROR. CatsGuard and CatOwnerResolver are part of this boundary.

What it needs, and who needs it

Cats depends on sample/12-graphql-schema-first/src/owners. Without that owners subsystem, the Cats boundary's owner-related resolution represented by CatOwnerResolver cannot be present as named. The sample dependent needs CatsModule as its declared entry point; without Cats, its declared dependency cannot reach cats, cat, createCat, or catCreated. The dependency relation ties Cats to owners, while the declared sample relationship ties sample to Cats at CatsModule for its stated entry point.

18 entities in sample/12-graphql-schema-first/src/cats. 1 other subsystem depends on it, which makes it the 10th most depended-upon part of this codebase.

What it is made of

Its 18 entities sit in 7 files under sample/12-graphql-schema-first/src/cats: 6 graphql types, 3 classes, 2 services, 2 graphql querys and 5 more. cats.graphql holds 10 of them — more than any other file here. CatsResolver declares 4 methods, the widest surface here.

Where work enters

  • CatsModulesample/12-graphql-schema-first/src/cats/cats.module.ts:7

Boundaries

1 other subsystem depends on this oneSample. Changing what it exposes changes them.

They hold 1 edge into it between them. 1 edge arrives and 1 leaves. What they reach is narrower than the folder: 1 of its 18 members carries every inbound edge — CatsModule (1).

It depends on Owners, and on nothing else in this repository.

Was this page helpful?

Download as PDF
Cats — NestJS head-to-head