# `layout.call_direction`

Shared code depends on a domain.

Area 1, [Project layout and modules](../topics/project-layout-and-modules.md); not declinable; the next step is usually the human's.

```jadpo
type DiscountTerms = Object {
    applies_to: OrderTotal
}
```

```text
error: Shared code uses `OrderTotal` from domain `ordering`
 --> shared/types/discount_terms.jadpo:2:17
  |
2 |     applies_to: OrderTotal
  |                 ^^^^^^^^^^ domain code
  reason: `shared/` holds code every domain may use, so it can't depend on any one domain; `OrderTotal` is a type in `domains/ordering/types/order_total.jadpo`.
  next: Move the shared declaration into `ordering`, or stop it depending on `OrderTotal` (human)
  rule: layout.call_direction
  help: https://jadpo.dev/docs/errors/layout.call_direction

check failed: 1 error, 4 files
```
