add fxA ui elements
This commit is contained in:
parent
4c64593262
commit
894545a6f0
29 changed files with 612 additions and 370 deletions
|
@ -3,22 +3,46 @@ const assets = require('../../../common/assets');
|
|||
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = function(state) {
|
||||
const notLoggedInMenu = html`
|
||||
<ul class="account_dropdown"
|
||||
tabindex="-1"
|
||||
>
|
||||
<li>
|
||||
<a class=account_dropdown__link>${state.translate(
|
||||
'accountMenuOption'
|
||||
)}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/signin"
|
||||
class=account_dropdown__link>${state.translate(
|
||||
'signInMenuOption'
|
||||
)}</a>
|
||||
</li>
|
||||
</ul>
|
||||
`;
|
||||
|
||||
return html`
|
||||
<div class="account">
|
||||
<img
|
||||
src="${assets.get('user.svg')}"
|
||||
onclick=${onclick}
|
||||
onclick=${avatarClick}
|
||||
alt="account"/>
|
||||
|
||||
<ul class=account_dropdown>
|
||||
<li class=account_dropdown__item>Placeholder</li>
|
||||
<li class=account_dropdown__item>Placeholder</li>
|
||||
</ul>
|
||||
${notLoggedInMenu}
|
||||
</div>`;
|
||||
|
||||
function onclick(event) {
|
||||
function avatarClick(event) {
|
||||
event.preventDefault();
|
||||
const dropdown = document.querySelector('.account_dropdown');
|
||||
dropdown.classList.toggle('visible');
|
||||
dropdown.focus();
|
||||
}
|
||||
|
||||
//the onblur trick makes links unclickable wtf
|
||||
/*
|
||||
function hideMenu(event) {
|
||||
event.stopPropagation();
|
||||
const dropdown = document.querySelector('.account_dropdown');
|
||||
dropdown.classList.remove('visible');
|
||||
}
|
||||
*/
|
||||
};
|
||||
|
|
|
@ -6,28 +6,59 @@
|
|||
}
|
||||
|
||||
.account_dropdown {
|
||||
z-index: 1;
|
||||
z-index: 2;
|
||||
position: absolute;
|
||||
top: 25px;
|
||||
left: -10px;
|
||||
top: 30px;
|
||||
left: -15px;
|
||||
width: 150px;
|
||||
list-style-type: none;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
background-color: var(--pageBGColor);
|
||||
box-shadow: 0 5px 12px 0 rgba(0, 0, 0, 0.2);
|
||||
padding: 11px 0;
|
||||
visibility: hidden;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
.account_dropdown__item {
|
||||
.account_dropdown::after,
|
||||
.account_dropdown::before {
|
||||
position: absolute;
|
||||
bottom: 100%;
|
||||
left: 18px;
|
||||
height: 0;
|
||||
width: 0;
|
||||
border: 1px solid transparent;
|
||||
content: '';
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.account_dropdown::after {
|
||||
border-bottom-color: var(--pageBGColor);
|
||||
border-width: 12px;
|
||||
}
|
||||
|
||||
.account_dropdown::before {
|
||||
border-bottom-color: #ccc;
|
||||
border-width: 13px;
|
||||
margin-left: -1px;
|
||||
}
|
||||
|
||||
.account_dropdown__link {
|
||||
display: block;
|
||||
padding: 0 14px;
|
||||
color: var(--lightTextColor);
|
||||
font-size: 13px;
|
||||
line-height: 24px;
|
||||
color: var(--lightTextColor);
|
||||
position: relative;
|
||||
z-index: 999;
|
||||
}
|
||||
|
||||
.account_dropdown__item:hover {
|
||||
.account_dropdown__link:visited {
|
||||
color: var(--lightTextColor);
|
||||
}
|
||||
|
||||
.account_dropdown__link:hover {
|
||||
background-color: var(--primaryControlBGColor);
|
||||
color: var(--primaryControlFGColor);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue