{% extends "base.html" %} {% block title %}{{ table.name }} — Table detail{% endblock %} {% block head_extra %} {% endblock %} {% block content %} {# Back link — prefer the first parent package, fall back to /catalog. #} ← Back to {% if parent_packages %}{{ parent_packages[0].name }}{% else %}catalog{% endif %} {# ── Hero card ─────────────────────────────────────────────── #} {% set _qmode = (table.query_mode or 'local')|lower %} {% set _glyph_bg = table.color or '#0073D1' %} {% set _initials = (table.name or table.id or '?').split()|map('first')|join('')|upper %}
{{ table.description }}
{% endif %} {% if parent_packages %} {% endif %}No sample questions seeded yet. {% if user.is_admin %}Click + Add to seed some.{% endif %}
{% endif %} {% if user.is_admin %}| Column | Type | Nullable |
|---|---|---|
{{ c.name }} |
{{ c.type or '—' }} | {{ 'yes' if c.nullable else 'no' }} |
{% if table.source_type|lower == 'internal' %} No column profile cached yet — Agnes internal tables are populated by the server itself; columns surface once the table accumulates its first rows. {% else %} No column profile available yet. Run a sync to populate the column list, types, and nullability. {% endif %}
{# Trigger sync only makes sense for non-internal tables — internal ones are server-managed (no upstream to pull from). #} {% if user.is_admin and table.source_type|lower != 'internal' %}No caveats or join hints recorded yet. {% if user.is_admin %}Click + Add to record some.{% endif %}
{% endif %} {% if user.is_admin %}No related tables suggested yet. {% if user.is_admin %}Click + Add to link some.{% endif %}
{% endif %} {% if user.is_admin %}table_registry.id values. Unknown ids are silently dropped on render.