87 lines
3.5 KiB
HTML
87 lines
3.5 KiB
HTML
<link rel="stylesheet" href="{{ root_path }}/css_dist/navbar.css">
|
|
<nav class="navbar">
|
|
<button type="button" class="base-switcher">
|
|
<div>{{ base.name }}</div>
|
|
{#- TODO: icon #}
|
|
</button>
|
|
<section>
|
|
<h2 class="navbar__heading">Tables</h2>
|
|
<menu class="navbar__menu">
|
|
{%- for schema in namespaces %}
|
|
<li class="navbar__menu-item">
|
|
<collapsible-menu class="navbar__collapsible-menu" root-path="{{ root_path }}">
|
|
<h3 slot="summary" class="navbar__heading navbar__heading--entity">
|
|
{{ schema.name }}
|
|
</h3>
|
|
<menu slot="content" class="navbar__menu">
|
|
{%- for rel in schema.rels %}
|
|
<li class="navbar__menu-item
|
|
{%- if current == Some(NavLocation::Rel(rel.class_oid.to_owned(), None)) -%}
|
|
{# preserve space #} navbar__menu-item--active
|
|
{%- endif -%}
|
|
">
|
|
<collapsible-menu
|
|
class="navbar__collapsible-menu"
|
|
root-path="{{ root_path }}"
|
|
expanded="
|
|
{%- if let Some(NavLocation::Rel(rel_oid, _)) = current -%}
|
|
{%- if rel_oid.to_owned() == rel.class_oid -%}
|
|
true
|
|
{%- endif -%}
|
|
{%- endif -%}
|
|
"
|
|
>
|
|
<h4 slot="summary" class="navbar__heading navbar__heading--entity">
|
|
{{ rel.name }}
|
|
</h4>
|
|
<menu slot="content" class="navbar__menu">
|
|
<li class="navbar__menu-item">
|
|
<a
|
|
href="{{ root_path }}/d/{{ base.id.simple() }}/r/{{ rel.class_oid.0 }}/rbac"
|
|
class="navbar__menu-link"
|
|
>
|
|
Sharing
|
|
</a>
|
|
</li>
|
|
<li class="navbar__menu-item">
|
|
<collapsible-menu class="navbar__collapsible-menu" root-path="{{ root_path }}">
|
|
<h5 slot="summary" class="navbar__heading">Tabs</h5>
|
|
<menu slot="content" class="navbar__menu">
|
|
{% for lens in rel.lenses %}
|
|
<li class="navbar__menu-item
|
|
">
|
|
<a
|
|
href="
|
|
{{- root_path -}}
|
|
/d/
|
|
{{- base.id.simple() -}}
|
|
/r/
|
|
{{- rel.class_oid.0 -}}
|
|
/l/
|
|
{{- lens.id.simple() -}}
|
|
"
|
|
class="navbar__menu-link navbar__menu-link--entity
|
|
{%- if current == Some(NavLocation::Rel(rel.class_oid.to_owned(), Some(RelLocation::Lens(lens.id.to_owned())))) -%}
|
|
{# preserve space #} navbar__menu-link--current
|
|
{%- endif -%}
|
|
"
|
|
>
|
|
{{ lens.name }}
|
|
</a>
|
|
</li>
|
|
{% endfor %}
|
|
</menu>
|
|
</collapsible-menu>
|
|
</li>
|
|
</menu>
|
|
</collapsible-menu>
|
|
</li>
|
|
{% endfor -%}
|
|
</menu>
|
|
</collapsible-menu>
|
|
</li>
|
|
{% endfor -%}
|
|
</menu>
|
|
</section>
|
|
<script type="module" src="{{ root_path }}/js_dist/collapsible-menu.webc.mjs"></script>
|
|
</nav>
|