{% extends "base.html" %} {% block title %}Table Management - {{ config.INSTANCE_NAME }}{% endblock %} {% block body_attrs %}data-source-type="{{ data_source_type }}"{% endblock %} {% block head_extra %} {% endblock %} {% block content %} {% set page_hero_eyebrow = "Administration" %} {% set page_hero_title = "Tables & Data Packages" %} {% set page_hero_subtitle = "Group registered tables into Data Packages so analysts can opt-in to bundles." %} {% include "_page_hero.html" %}
{# ─── Top action bar (package-centric, replaces connector-tab nav) ─── Single row of high-level actions. The "+ Register new table" dropdown picks a connector → opens the matching modal (BQ / Keboola / Jira) instead of letting the connector drive the page layout. #}
Cache freshness — loading…
Show log

Live log from Re-warm all. Historical runs aren't persisted; check /admin/activity for the audit trail.


                
{# ─── Package-centric layout (replaces the connector-tab nav) ─── Hydrated client-side by loadAdminTablesLayout(): pulls both /api/admin/data-packages and /api/admin/registry, renders one collapsible
per package containing its member tables, then an "Unpackaged tables" section for everything else. "On the side" data-packages was the wrong framing — packages ARE the org structure now, so every table appears under either a package or the explicit Unpackaged bucket. Bucket / source_type survive as inline tags but no longer drive the layout. #}
{# Search bar — UX parity with /catalog + /memory. Filters the package details + the table rows inside them; an unpackaged row matches by table name / source_type / bucket. Hides any package whose name doesn't match AND has zero matching rows. #}
Loading packages…
{# Register modals (BigQuery / Keboola) live as top-level overlays, reachable via the "+ Register new table" dropdown in the action bar above. The connector tabs that used to drive the page layout were dropped — every table now appears in the package-centric layout regardless of source_type. #}
{# Connector-based listings (Jira read-only hint, internal tables section, per-tab Register buttons) lived inside the now-deleted tab-content sections. Their content is folded into the package-centric layout above: every table — including jira/* and internal — appears under a Data Package or in Unpackaged tables. Register modals (registerBqModal / registerKeboolaModal) remain in DOM as top-level overlays and are opened from the "+ Register new table" dropdown in the action bar. The data-source-type marker lives on so DATA_SOURCE_TYPE still has somewhere to read from. #}
{# (removed) Create Data Package RBAC step-2 modal — the per-group Available|Required matrix is now an inline collapsible section inside #createDataPackageModal (#cdp-rbac-details). The modal-on- modal pattern was confusing per user feedback. #} {# Group-by-bucket preview modal — replaces the old confirm(). Lets the admin see each distinct bucket, its table count, the resulting slug, and whether it would be skipped because a package with that slug already exists. Uncheck rows to opt out individually. #} {% endblock %} {% block scripts %} {% endblock %} {# Chip-input component (v55 — was globally loaded in base.html, now opt-in per template via this extra_scripts block; admin_tables mounts it via the BQ Register modal's `data-name="bq_package_ids"` host). #} {% block extra_scripts %} {% endblock %}