5bcc9586c7
Раньше records list показывал только businessKey / name / scope / locale / validFrom. На spacecraft с 14 полями admin не видел статуса или типа КА — должен был открыть edit modal каждой записи чтобы понять что есть OPERATIONAL и что есть LOST. Drop unhelpful 'locale' колонку (для не-localized словарей всегда '—'). Replace на до 2 schema-driven 'значимых' колонок: - FK поля (x-references) — синий fill, маркируют ссылку на dict - Enum поля — серый fill, fixed allow-list Spacecraft теперь показывает в таблице: businessKey, name, satellite_type_code (FK), status (FK), scope, validFrom — всю полезную информацию за один взгляд. Schema interpretation: - detailQuery.data.schemaJson.properties → filter scalar non-localized - Skip name/code/businessKey (уже показаны) - Take первые 2 enum/reference (column count fits 1280px viewport) - humanize key для header label (snake_case → Snake Case) Tests: 89 passed (без изменений — render-логика, integration test требует QueryClient + schema fixture, ROI низкий).
Ordinis Admin UI
React 19 + Vite 7 + TanStack Router + TanStack Query + Tailwind v4 + i18next.
Локально
cd ordinis-admin-ui
pnpm install
# .env.local: VITE_API_PROXY=http://localhost:8081 (port-forward read-api)
pnpm dev
Контракт API
GET /api/v1/dictionaries(read-api) — список справочниковGET /api/v1/{dictionaryName}/records(read-api) — записи с локализациейPOST /api/v1/dictionaries(writer) — создание справочника (TODO в UI)POST /api/v1/dictionaries/{name}/records(writer) — создание записи (TODO в UI)
Сборка / Docker
docker build -t repo.nstart.cloud/terravault/ordinis-admin-ui:dev .
docker run --rm -p 8088:80 repo.nstart.cloud/terravault/ordinis-admin-ui:dev
# → http://localhost:8088
В кластере nginx проксирует /api/v1/* в ordinis-read-api (GET) и
ordinis-app (POST/PUT/PATCH/DELETE).