depKey function

String depKey(
  1. String entity,
  2. String field
)

Dependency key for field on entity entity — the currency used to tell scopes what changed (ROOT_QUERY.launches_c0y93u18lig6v, Launch:launch-181.name).

Unambiguous even when an id contains dots (User:a.name + id vs User:a + name): field is a cache alias — a GraphQL name, optionally with an _<hash> suffix — and never contains ., so the entity is always everything before the last dot (what list rules rely on) (#26).

A list held by an entity field has two finer keys (#54), which keep that property: elementDepKey (read through one inline element) and lengthDepKey (Accessor.list of inline objects). A write touches depKey whenever anything under the field changed, plus the finer keys of what changed in the list.

Implementation

String depKey(String entity, String field) => '$entity.$field';