diff --git a/awx/ui/client/features/output/_index.less b/awx/ui/client/features/output/_index.less index a41721dd37..8ca2c8a5d0 100644 --- a/awx/ui/client/features/output/_index.less +++ b/awx/ui/client/features/output/_index.less @@ -366,6 +366,8 @@ } .JobResults-resultRowText { + display: flex; + flex-flow: row wrap; width: ~"calc(70% - 20px)"; flex: 1 0 auto; text-transform: none; diff --git a/awx/ui/client/features/output/details.component.js b/awx/ui/client/features/output/details.component.js index 512e68985a..03fd2f9d02 100644 --- a/awx/ui/client/features/output/details.component.js +++ b/awx/ui/client/features/output/details.component.js @@ -389,27 +389,29 @@ function getResultTracebackDetails () { } function getCredentialDetails () { - const credential = resource.model.get('summary_fields.credential'); + const credentials = resource.model.get('summary_fields.credentials'); - if (!credential) { + let credentialTags = []; + + if (!credentials || credentials.length < 1) { return null; } - let label = strings.get('labels.CREDENTIAL'); + credentialTags = credentials.map((cred) => buildCredentialDetails(cred)); - if (resource.type === 'playbook') { - label = strings.get('labels.MACHINE_CREDENTIAL'); - } + const label = strings.get('labels.CREDENTIAL'); + const value = credentialTags; - if (resource.type === 'inventory') { - label = strings.get('labels.SOURCE_CREDENTIAL'); - } + return { label, value }; +} +function buildCredentialDetails (credential) { + const icon = `${credential.kind}`; const link = `/#/credentials/${credential.id}`; const tooltip = strings.get('tooltips.CREDENTIAL'); const value = $filter('sanitize')(credential.name); - return { label, link, tooltip, value }; + return { icon, link, tooltip, value }; } function getForkDetails () { @@ -679,7 +681,7 @@ function JobDetailsController ( vm.launchedBy = getLaunchedByDetails(); vm.jobExplanation = getJobExplanationDetails(); vm.verbosity = getVerbosityDetails(); - vm.credential = getCredentialDetails(); + vm.credentials = getCredentialDetails(); vm.forks = getForkDetails(); vm.limit = getLimitDetails(); vm.instanceGroup = getInstanceGroupDetails(); diff --git a/awx/ui/client/features/output/details.partial.html b/awx/ui/client/features/output/details.partial.html index 1913c4c074..47f538a44c 100644 --- a/awx/ui/client/features/output/details.partial.html +++ b/awx/ui/client/features/output/details.partial.html @@ -216,15 +216,18 @@ -
- +
+
- - {{ vm.credential.value }} - + data-tip-watch="credential.tooltip"> +
diff --git a/awx/ui/client/features/output/search.partial.html b/awx/ui/client/features/output/search.partial.html index ff2a49e73a..702b4749b3 100644 --- a/awx/ui/client/features/output/search.partial.html +++ b/awx/ui/client/features/output/search.partial.html @@ -37,7 +37,7 @@
-
+
diff --git a/awx/ui/client/lib/components/list/_index.less b/awx/ui/client/lib/components/list/_index.less index 08b39d8f05..321631559a 100644 --- a/awx/ui/client/lib/components/list/_index.less +++ b/awx/ui/client/lib/components/list/_index.less @@ -170,7 +170,6 @@ } .at-RowItem-tag { - text-transform: uppercase; font-weight: 100; background-color: @at-color-list-row-item-tag-background; border-radius: @at-border-radius; diff --git a/awx/ui/client/lib/components/tag/_index.less b/awx/ui/client/lib/components/tag/_index.less index 1fa4f5ace5..5fa309c106 100644 --- a/awx/ui/client/lib/components/tag/_index.less +++ b/awx/ui/client/lib/components/tag/_index.less @@ -1,8 +1,6 @@ -.TagComponentWrapper { - padding: @at-space; -} .TagComponent { - color: white; + color: @at-white; + cursor: default; background: @at-blue; border-radius: @at-space; font-size: 12px; @@ -12,30 +10,48 @@ min-height: @at-space-4x; overflow: hidden; max-width: 200px; + margin: @at-space; } .TagComponent-name { + color: @at-white; margin: 2px @at-space-2x; align-self: center; word-break: break-word; text-transform: lowercase; -} -.TagComponent--cloud { - &:before { - content: '\f0c2'; - color: white; - height: @at-space-4x; - width: @at-space-4x; + &:hover, + &:focus { + color: @at-white; } } -.TagComponent--key { - &:before { +.TagComponent-icon { + line-height: 20px; + margin-left: @at-space-2x; + + &--cloud:before { + content: '\f0c2'; + } + + &--insights:before { + content: '\f129'; + } + + &--net:before { + content: '\f0e8'; + } + + &--scm:before { + content: '\f126'; + } + + &--ssh:before { content: '\f084'; - color: white; - height: @at-space-4x; - width: @at-space-4x; + } + + &--vault:before { + content: '\f187'; } } diff --git a/awx/ui/client/lib/components/tag/tag.directive.js b/awx/ui/client/lib/components/tag/tag.directive.js index 0616bb5e0d..f18ae9dce9 100644 --- a/awx/ui/client/lib/components/tag/tag.directive.js +++ b/awx/ui/client/lib/components/tag/tag.directive.js @@ -8,6 +8,8 @@ function atTag () { templateUrl, scope: { tag: '=', + icon: '@?', + link: '@?', removeTag: '&?', }, }; diff --git a/awx/ui/client/lib/components/tag/tag.partial.html b/awx/ui/client/lib/components/tag/tag.partial.html index ba7fbada4f..f16da4da42 100644 --- a/awx/ui/client/lib/components/tag/tag.partial.html +++ b/awx/ui/client/lib/components/tag/tag.partial.html @@ -1,5 +1,7 @@
-
{{ tag }}
+
+ {{ tag }} +
{{ tag }}