149 lines
5.7 KiB
Handlebars
149 lines
5.7 KiB
Handlebars
{{page-title (t 'resources.target.title_plural')}}
|
|
|
|
{{#each @model as |target|}}
|
|
{{#each target.sessions as |session|}}
|
|
{{#if session.started_desktop_client}}
|
|
{{#unless session.acknowledged}}
|
|
<DialogDetail
|
|
@heading={{concat
|
|
(t 'resources.target.messages.connection-details.title')
|
|
': '
|
|
target.id
|
|
}}
|
|
@notificationStyle='success'
|
|
@notification={{t
|
|
'resources.target.messages.connection-success.title'
|
|
}}
|
|
@dismiss={{route-action 'acknowledge' session}}
|
|
@dismissButtonText={{t 'actions.ok'}}
|
|
>
|
|
<:body>
|
|
<h3>
|
|
{{t 'resources.target.messages.proxy_url.title'}}
|
|
({{t 'resources.target.types.tcp'}})
|
|
</h3>
|
|
<p>
|
|
<Copyable
|
|
@text={{session.proxy}}
|
|
@buttonText={{t 'actions.copy-to-clipboard'}}
|
|
@acknowledgeText={{t 'states.copied'}}
|
|
>
|
|
<code>{{session.proxy}}</code>
|
|
</Copyable>
|
|
</p>
|
|
|
|
{{#if session.credentials}}
|
|
<Rose::Separator />
|
|
|
|
<h3>{{t 'resources.session.credential.title_plural'}}</h3>
|
|
|
|
{{#each session.credentials as |credential|}}
|
|
<Card
|
|
@heading='{{t 'resources.session.credential.title'}}
|
|
{{if
|
|
credential.library.name
|
|
(concat ' (' credential.library.name ')')
|
|
}}'
|
|
@icon='flight-icons/key-16'
|
|
>
|
|
<:header>
|
|
<Rose::Dropdown
|
|
@text={{t
|
|
'resources.session.credential.credential_library.title'
|
|
}}
|
|
@style='condensed'
|
|
@dropdownRight={{true}}
|
|
@ignoreClickInside={{true}}
|
|
as |dropdown|
|
|
>
|
|
<dropdown.key-value>
|
|
<:key>{{t 'form.id.label'}}</:key>
|
|
<:value>
|
|
<Copyable
|
|
@text={{credential.library.id}}
|
|
@buttonText={{t 'actions.copy-to-clipboard'}}
|
|
@acknowledgeText={{t 'states.copied'}}
|
|
>
|
|
<code>{{credential.library.id}}</code>
|
|
</Copyable>
|
|
</:value>
|
|
</dropdown.key-value>
|
|
<dropdown.key-value>
|
|
<:key>{{t 'form.type.label'}}</:key>
|
|
<:value>{{credential.library.type}}</:value>
|
|
</dropdown.key-value>
|
|
{{#if credential.library.name}}
|
|
<dropdown.key-value>
|
|
<:key>{{t 'form.name.label'}}</:key>
|
|
<:value>{{credential.library.name}}</:value>
|
|
</dropdown.key-value>
|
|
{{/if}}
|
|
{{#if credential.library.description}}
|
|
<dropdown.key-value>
|
|
<:key>{{t 'form.description.label'}}</:key>
|
|
<:value>{{credential.library.description}}</:value>
|
|
</dropdown.key-value>
|
|
{{/if}}
|
|
</Rose::Dropdown>
|
|
</:header>
|
|
<:body>
|
|
{{#if credential.secrets}}
|
|
<Rose::Table @style='condensed' as |table|>
|
|
<table.header as |header|>
|
|
<header.row as |row|>
|
|
<row.headerCell @shrink={{true}}>{{t
|
|
'form.key.label'
|
|
}}</row.headerCell>
|
|
<row.headerCell colspan='2'>{{t
|
|
'form.value.label'
|
|
}}</row.headerCell>
|
|
</header.row>
|
|
</table.header>
|
|
<table.body as |body|>
|
|
{{#each credential.secrets as |secret|}}
|
|
<body.row as |row|>
|
|
<row.headerCell
|
|
@shrink={{true}}
|
|
>{{secret.key}}</row.headerCell>
|
|
<row.cell colspan='2'>
|
|
<HiddenSecret @secret={{secret.value}} />
|
|
</row.cell>
|
|
</body.row>
|
|
{{/each}}
|
|
</table.body>
|
|
</Rose::Table>
|
|
{{/if}}
|
|
</:body>
|
|
<:footer>
|
|
<Reveal
|
|
@textWhenOpen={{t
|
|
'resources.session.credential.actions.raw-api.hide'
|
|
}}
|
|
@textWhenClose={{t
|
|
'resources.session.credential.actions.raw-api.show'
|
|
}}
|
|
>
|
|
<pre>{{raw-json credential.rawCredential}}</pre>
|
|
</Reveal>
|
|
</:footer>
|
|
</Card>
|
|
{{/each}}
|
|
{{/if}}
|
|
</:body>
|
|
<:footer>
|
|
<div>
|
|
<Rose::Button
|
|
@style='secondary'
|
|
{{on 'click' (route-action 'acknowledge' session)}}
|
|
>
|
|
{{t 'actions.close'}}
|
|
</Rose::Button>
|
|
</div>
|
|
</:footer>
|
|
</DialogDetail>
|
|
{{/unless}}
|
|
{{/if}}
|
|
{{/each}}
|
|
{{/each}}
|
|
|
|
{{outlet}} |