Data Layer medium complexity backend
0
Dependencies
0
Dependents
1
Entities
0
Integrations

Description

Persistence layer holding per-organization terminology overrides keyed by terminology key. Provides CRUD access for the Terminology Service and supports efficient lookup of all overrides for a given organization.

Feature: Custom Terminology

terminology-store

Sources & reasoning

Explicitly described as an existing mobile capability (§231) with overrideable terminology per org (§395). The admin portal must own the editor surface since admin-organization is the toggle/config hub. MVP because it's listed in the Admin MVP scope (§247) as 'terminologikonfigurasjon'.

  • Organization labels system - per-org terminology overrides fetched from backend and cached offline (currently: `contacts`, `my_contacts`, `peer_mentors`; extensible to singular forms and role terms
  • Contact | Person receiving support from a peer mentor | Kontakt (overrideable per org via the Organization Labels system, e.g. `Familie`, `Bruker`)

Responsibilities

  • Store terminology override records scoped by organization
  • Provide lookup of all overrides for an organization
  • Enforce uniqueness of org+key pairs
  • Support insert, update, and delete of override entries
  • Expose change timestamps for cache invalidation

Interfaces

findByOrg(orgId): TerminologyOverride[]
upsert(orgId, key, value): TerminologyOverride
delete(orgId, key): void

Related Data Entities (1)

Data entities managed by this component