Files
threshold-ui/ui/admin/app/templates/scopes/scope.hbs
T

233 lines
8.3 KiB
Handlebars
Raw Normal View History

{{!
Copyright (c) HashiCorp, Inc.
SPDX-License-Identifier: MPL-2.0
}}
2020-10-29 12:30:18 -04:00
{{#if @model.isOrg}}
{{page-title (t 'resources.org.title_plural')}}
2020-11-16 14:57:42 -05:00
{{page-title @model.displayName}}
2020-10-29 12:30:18 -04:00
{{/if}}
{{#if @model.isProject}}
{{page-title (t 'resources.org.title_plural')}}
2020-11-16 14:57:42 -05:00
{{page-title this.scopes.selectedOrg.displayName}}
{{page-title (t 'resources.project.title_plural')}}
2020-11-16 14:57:42 -05:00
{{page-title @model.displayName}}
2020-10-29 12:30:18 -04:00
{{/if}}
2020-07-23 09:37:06 -04:00
<Rose::Layout::Sidebar as |sidebarLayout|>
2020-07-28 10:36:41 -04:00
{{#if this.session.isAuthenticated}}
<sidebarLayout.sidebar>
2020-10-26 11:17:03 -04:00
{{#if @model.isGlobal}}
<Rose::Nav::Sidebar @title={{t 'titles.general'}} as |nav|>
<nav.link @route='scopes.scope.scopes'>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/org-16' @size='medium' />
{{t 'resources.org.title_plural'}}
2020-10-26 11:17:03 -04:00
</nav.link>
{{#if (feature-flag 'session-recording')}}
{{#if
(can
'navigate session-recording'
@model
collection='session-recordings'
)
}}
<nav.link @route='scopes.scope.session-recordings'>
<Rose::Icon @name='flight-icons/svg/film-16' @size='medium' />
{{t 'resources.session-recording.title_plural'}}
</nav.link>
{{/if}}
2023-03-10 13:41:57 -05:00
{{#if
(can
'navigate storage-bucket' @model collection='storage-buckets'
)
}}
<nav.link @route='scopes.scope.storage-buckets'>
<Rose::Icon
@name='flight-icons/svg/cloud-upload-16'
@size='medium'
/>
{{t 'resources.storage-bucket.title_plural'}}
</nav.link>
{{/if}}
{{/if}}
{{#if
(and
(can 'navigate worker' @model collection='workers')
(feature-flag 'byow')
)
}}
<nav.link @route='scopes.scope.workers'>
<Rose::Icon @name='flight-icons/svg/cpu-16' @size='medium' />
{{t 'resources.worker.title_plural'}}
</nav.link>
{{/if}}
</Rose::Nav::Sidebar>
2020-10-26 11:17:03 -04:00
{{/if}}
{{#if @model.isOrg}}
<Rose::Nav::Sidebar @title={{t 'titles.general'}} as |nav|>
2020-10-27 14:57:56 -04:00
{{#if this.session.data.authenticated.isGlobal}}
<nav.link @route='scopes.scope.scopes' @model='global'>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/org-16' @size='medium' />
{{t 'resources.org.title_plural'}}
2020-10-27 14:57:56 -04:00
</nav.link>
{{/if}}
<nav.link @route='scopes.scope.scopes'>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/grid-16' @size='medium' />
{{t 'resources.project.title_plural'}}
2020-10-26 11:17:03 -04:00
</nav.link>
</Rose::Nav::Sidebar>
{{/if}}
2020-07-30 12:54:28 -04:00
2020-10-27 14:57:56 -04:00
{{#if @model.isProject}}
<Rose::Nav::Sidebar @title={{t 'titles.general'}} as |nav|>
2020-10-27 14:57:56 -04:00
{{#if this.session.data.authenticated.isGlobal}}
<nav.link @route='scopes.scope.scopes' @model='global'>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/org-16' @size='medium' />
{{t 'resources.org.title_plural'}}
2020-10-27 14:57:56 -04:00
</nav.link>
{{/if}}
<nav.link @route='scopes.scope.scopes' @model={{@model.scopeID}}>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/grid-16' @size='medium' />
{{t 'resources.project.title_plural'}}
</nav.link>
2020-10-27 14:57:56 -04:00
</Rose::Nav::Sidebar>
{{! TODO: after scope awareness refactor, update groups and roles
to support project scopes }}
2020-10-27 14:57:56 -04:00
{{!--
<Rose::Nav::Sidebar @title={{t "titles.iam"}} as |nav|>
<nav.link @route="scopes.scope.groups">
<Rose::Icon
2021-09-16 14:03:26 -07:00
@name="flight-icons/svg/folder-users-16"
@size="medium" />
{{t "resources.group.title_plural"}}
</nav.link>
<nav.link @route="scopes.scope.roles">
<Rose::Icon
2021-09-16 14:03:26 -07:00
@name="flight-icons/svg/identity-user-16"
@size="medium" />
{{t "resources.role.title_plural"}}
</nav.link>
</Rose::Nav::Sidebar>
2020-10-27 14:57:56 -04:00
--}}
<Rose::Nav::Sidebar @title={{t 'titles.resources'}} as |nav|>
2022-01-31 12:02:37 -05:00
{{#if (can 'navigate model' @model collection='sessions')}}
2021-08-31 19:41:11 -07:00
<nav.link @route='scopes.scope.sessions'>
2021-09-16 14:03:26 -07:00
<Rose::Icon
@name='flight-icons/svg/entry-point-16'
@size='medium'
/>
2021-08-31 19:41:11 -07:00
{{t 'resources.session.title_plural'}}
</nav.link>
{{/if}}
2022-01-31 12:02:37 -05:00
{{#if (can 'navigate model' @model collection='targets')}}
2021-08-31 23:34:32 -07:00
<nav.link @route='scopes.scope.targets'>
2021-09-16 14:03:26 -07:00
<Rose::Icon
@name='flight-icons/svg/crosshair-16'
@size='medium'
/>
2021-08-31 23:34:32 -07:00
{{t 'resources.target.title_plural'}}
</nav.link>
{{/if}}
2022-01-31 12:02:37 -05:00
{{#if (can 'navigate model' @model collection='host-catalogs')}}
2021-08-31 15:17:57 -07:00
<nav.link @route='scopes.scope.host-catalogs'>
2021-09-16 14:03:26 -07:00
<Rose::Icon
@name='flight-icons/svg/collections-16'
@size='medium'
/>
2021-08-31 15:17:57 -07:00
{{t 'resources.host-catalog.title_plural'}}
</nav.link>
{{/if}}
2022-01-31 12:02:37 -05:00
{{#if (can 'navigate model' @model collection='credential-stores')}}
<nav.link @route='scopes.scope.credential-stores'>
<Rose::Icon @name='flight-icons/svg/key-16' @size='medium' />
{{t 'resources.credential-store.title_plural'}}
</nav.link>
{{/if}}
2020-10-28 11:14:58 -04:00
</Rose::Nav::Sidebar>
2020-10-27 14:57:56 -04:00
{{/if}}
<Rose::Nav::Sidebar @title={{t 'titles.iam'}} as |nav|>
{{! Users are available only for org/global scopes }}
{{#unless @model.isProject}}
2022-01-31 12:02:37 -05:00
{{#if (can 'navigate model' @model collection='users')}}
<nav.link @route='scopes.scope.users'>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/users-16' @size='medium' />
{{t 'resources.user.title_plural'}}
</nav.link>
{{/if}}
{{/unless}}
{{! Groups and roles are available for all scopes }}
{{#if (can 'navigate model' @model collection='groups')}}
<nav.link @route='scopes.scope.groups'>
<Rose::Icon
@name='flight-icons/svg/folder-users-16'
@size='medium'
/>
{{t 'resources.group.title_plural'}}
</nav.link>
{{/if}}
{{#if (can 'navigate model' @model collection='roles')}}
<nav.link @route='scopes.scope.roles'>
<Rose::Icon
@name='flight-icons/svg/identity-user-16'
@size='medium'
/>
{{t 'resources.role.title_plural'}}
</nav.link>
{{/if}}
{{! Auth methods are available only for org/global scopes }}
{{#unless @model.isProject}}
2022-01-31 12:02:37 -05:00
{{#if (can 'navigate model' @model collection='auth-methods')}}
2021-08-30 19:16:58 -07:00
<nav.link @route='scopes.scope.auth-methods'>
2021-09-16 14:03:26 -07:00
<Rose::Icon @name='flight-icons/svg/lock-16' @size='medium' />
2021-08-30 19:16:58 -07:00
{{t 'resources.auth-method.title_plural'}}
</nav.link>
{{/if}}
{{/unless}}
</Rose::Nav::Sidebar>
2020-07-28 10:36:41 -04:00
2020-10-29 16:58:15 -04:00
{{#if @model.isOrg}}
{{#if this.session.data.authenticated.isGlobal}}
<Rose::Nav::Sidebar @title={{t 'titles.settings'}} as |nav|>
<nav.link @route='scopes.scope.edit'>
{{t 'resources.org.messages.settings.title'}}
2020-10-29 16:58:15 -04:00
</nav.link>
</Rose::Nav::Sidebar>
{{/if}}
{{/if}}
{{#if @model.isProject}}
<Rose::Nav::Sidebar @title={{t 'titles.settings'}} as |nav|>
<nav.link @route='scopes.scope.edit'>
{{t 'resources.project.messages.settings.title'}}
2020-10-28 11:19:09 -04:00
</nav.link>
</Rose::Nav::Sidebar>
2020-10-29 16:58:15 -04:00
{{/if}}
2020-10-28 11:19:09 -04:00
2020-07-28 10:36:41 -04:00
</sidebarLayout.sidebar>
{{/if}}
2020-07-23 09:37:06 -04:00
<sidebarLayout.body>
<main>
{{outlet}}
</main>
</sidebarLayout.body>
<sidebarLayout.footer>
<Rose::Footer as |footer|>
<footer.text>{{app-name}}</footer.text>
<footer.nav as |nav|>
<nav.link @href={{(doc-url)}}>
{{t 'titles.documentation'}}
</nav.link>
</footer.nav>
<footer.brand @logo='logo-company' @text={{(company-name)}} />
<footer.text>{{company-copyright}}</footer.text>
</Rose::Footer>
</sidebarLayout.footer>
2022-10-06 11:41:12 -04:00
</Rose::Layout::Sidebar>