UI: Use buttons instead of anchors where appropriate (#4939)

Use buttons instead of anchors where appropriate
This commit is contained in:
John Cowen 2018-11-19 14:57:22 +00:00 committed by John Cowen
parent 3780622df0
commit 9ec7f3851b
9 changed files with 69 additions and 55 deletions

View File

@ -1,6 +1,14 @@
%action-group label span {
display: none;
}
%action-group-action {
width: 170px;
padding: 10px 10px;
text-align: left;
}
%action-group li > * {
@extend %action-group-action;
}
%action-group::before {
margin-left: -1px;
}
@ -59,10 +67,6 @@
position: relative;
z-index: 1;
}
%action-group li a {
width: 170px;
padding: 10px 10px;
}
%action-group input[type='radio'],
%action-group input[type='radio'] ~ ul,
%action-group input[type='radio'] ~ .with-confirmation > ul {

View File

@ -5,7 +5,8 @@
/* frame-gray */
background-color: $gray-050;
}
%action-group label {
%action-group label,
%action-group-action {
cursor: pointer;
}
%action-group label::after,
@ -26,7 +27,10 @@
%action-group ul::before {
border-color: $color-action;
}
%action-group li a:hover {
%action-group-action {
background-color: $white;
}
%action-group-action:hover {
@extend %frame-blue-800;
}
%action-group ul,

View File

@ -3,12 +3,13 @@ button[type='submit'],
a.type-create {
@extend %primary-button;
}
// the :not(li)'s here avoid styling action-group buttons
button[type='reset'],
button[type='button']:not(.copy-btn):not(.type-delete),
:not(li) > button[type='button']:not(.copy-btn):not(.type-delete),
html.template-error div > a {
@extend %secondary-button;
}
button.type-delete {
:not(li) > button.type-delete {
@extend %dangerous-button;
}
button.copy-btn {

View File

@ -52,7 +52,7 @@ caption {
}
th,
%breadcrumbs a,
%action-group a,
%action-group-action,
%tab-nav,
%tooltip-bubble {
font-weight: $typo-weight-medium;
@ -80,6 +80,7 @@ h2,
font-size: $typo-size-500;
}
body,
%action-group-action,
pre code,
input,
textarea,

View File

@ -48,20 +48,20 @@
</li>
{{#if (eq item.ID token.SecretID) }}
<li>
<a data-test-logout onclick={{queue (action confirm 'logout' item) (action change)}}>Stop using</a>
<button type="button" data-test-logout {{action confirm 'logout' item}}>Stop using</button>
</li>
{{else}}
<li>
<a data-test-use onclick={{queue (action confirm 'use' item) (action change)}}>Use</a>
<button type="button" data-test-use {{action confirm 'use' item}}>Use</button>
</li>
{{/if}}
<li>
<a data-test-clone onclick={{action 'sendClone' item}}>Clone</a>
<button type="button" data-test-clone {{action 'sendClone' item}}>Clone</button>
</li>
{{# if (not-eq item.ID 'anonymous') }}
<li>
<a data-test-delete onclick={{action confirm 'delete' item}}>Delete</a>
<button type="button" class="type-delete" data-test-delete {{action confirm 'delete' item}}>Delete</button>
</li>
{{/if}}
</ul>

View File

@ -61,7 +61,7 @@
<a data-test-edit href={{href-to 'dc.acls.policies.edit' item.ID}}>Edit</a>
</li>
<li>
<a data-test-delete onclick={{action confirm 'delete' item}}>Delete</a>
<button type="button" class="type-delete" data-test-delete {{action confirm 'delete' item}}>Delete</button>
</li>
{{/if}}
</ul>

View File

@ -26,7 +26,7 @@
</form>
{{/if}}
{{#if (token/is-legacy items)}}
<p data-test-notification-update class="notice info"><strong>Update.</strong> We have upgraded our ACL System to allow the creation of reusable policies that can be applied to tokens. Read more about the changes and how to upgrade legacy tokens in our <a href="{{env 'CONSUL_DOCUMENTATION_URL'}}/guides/acl-migrate-tokens.html" target="_blank" rel="noopener noreferrer">documentation</a>.</p>
<p data-test-notification-update class="notice info"><strong>Update.</strong> We have upgraded our ACL System to allow the creation of reusable policies that can be applied to tokens. Read more about the changes and how to upgrade legacy tokens in our <a href="{{env 'CONSUL_DOCUMENTATION_URL'}}/guide/acl-migrate-tokens.html" target="_blank" rel="noopener noreferrer">documentation</a>.</p>
{{/if}}
{{#changeable-set dispatcher=searchable}}
{{#block-slot 'set' as |filtered|}}
@ -78,21 +78,22 @@
</li>
{{#if (not (token/is-legacy item))}}
<li>
<a data-test-clone onclick={{action 'sendClone' item}}>Duplicate</a>
<button type="button" data-test-clone {{action 'sendClone' item}}>Duplicate</button>
</li>
{{/if}}
{{#if (eq item.AccessorID token.AccessorID) }}
<li>
<a data-test-logout onclick={{queue (action confirm 'logout' item) (action change)}}>Stop using</a>
<button type="button" data-test-logout {{action confirm 'logout' item}}>Stop using</button>
</li>
{{else}}
<li>
<a data-test-use onclick={{queue (action confirm 'use' item) (action change)}}>Use</a>
<button type="button" data-test-use {{action confirm 'use' item}}>Use</button>
</li>
{{/if}}
{{#unless (or (token/is-anonymous item) (eq item.AccessorID token.AccessorID)) }}
{{#unless (token/is-anonymous item) }}
<li>
<a data-test-delete onclick={{action confirm 'delete' item}}>Delete</a>
<button type="button" class="type-delete" data-test-delete {{action confirm 'delete' item}}>Delete</button>
</li>
{{/unless}}
</ul>
@ -102,6 +103,9 @@
<p>
{{#if (eq name 'delete')}}
{{message}}
{{#if (eq item.AccessorID token.AccessorID)}}
Warning: This is the token you are currently using!
{{/if}}
{{else if (eq name 'logout')}}
Are you sure you want to stop using this ACL token? This will log you out.
{{else if (eq name 'use')}}

View File

@ -63,7 +63,7 @@
<a href={{href-to 'dc.intentions.edit' item.ID}}>Edit</a>
</li>
<li>
<a data-test-delete onclick={{action confirm 'delete' item}}>Delete</a>
<button type="button" class="type-delete" data-test-delete {{action confirm 'delete' item}}>Delete</button>
</li>
</ul>
{{/action-group}}

View File

@ -59,7 +59,7 @@
<a data-test-edit href={{href-to (if item.isFolder 'dc.kv.folder' 'dc.kv.edit') item.Key}}>{{if item.isFolder 'View' 'Edit'}}</a>
</li>
<li>
<a data-test-delete onclick={{action confirm 'delete' item}}>Delete</a>
<button type="button" class="type-delete" data-test-delete {{action confirm 'delete' item}}>Delete</button>
</li>
</ul>
{{/action-group}}