{# GET /admin/workspace — crate::pages::admin::admin::ui::AdminWorkspace Also included by pages/admin.html for the first paint. Both structs expose the same `page: AdminPageState` field. #}

Profiles

{{ page.profiles.len() }}
{% if page.profiles.is_empty() %}

No profiles available.

{% else %} {% for profile in page.profiles %}
{% endfor %} {% endif %}

Tables

{{ page.tables.len() }}
{% if page.selected_profile.is_none() %}

Select a profile to see its tables.

{% else if page.tables.is_empty() %} {% if page.is_global() %}

There are no global tables.

{% else %}

This profile has no tables of its own.

{% endif %} {% else %} {% for table in page.tables %}
{# The actions for the table you are pointed at, next to the table itself. Each one is a page of its own; this pane is where you choose what to act on, so it is also where you say what to do. #} {% if page.selected_table.as_deref() == Some(table.name.as_str()) %}
{% if page.can_manage_tables && !table.is_system() %} Add / rename columns Delete table {% endif %} Who may use it
{% endif %} {% endfor %} {% if page.selected_table.is_none() %}

Pick a table to add columns to it, delete it, or say who may use it.

{% endif %} {% endif %}
{% if page.can_manage_tables && page.selected_profile.is_some() %} {% endif %}

Columns

{{ page.user_columns().len() }} user · {{ page.system_columns().len() }} system
{% if page.selected_table.is_none() %}

Select a table to inspect its columns.

{% else if page.columns.is_empty() %}

This table has no visible columns.

{% else %} {% for column in page.user_columns() %}
{{ column.name }} {{ column.data_type }} {{ column.flags()|join(" · ") }}
{% endfor %} {% let system_columns = page.system_columns() %} {% if !system_columns.is_empty() %}

System columns · hidden from users

{% for column in system_columns %}
{{ column.name }} {{ column.data_type }} {{ column.flags()|join(" · ") }}
{% endfor %} {% endif %} {% endif %}