add auth-panel block
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
.auth-panel__pseudo-link {
|
||||
display: inline-block;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
color: #06c5c5;
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
import { h, Component } from 'preact';
|
||||
|
||||
export default class AuthPanel extends Component {
|
||||
render(props, state) {
|
||||
const { user, providers } = props;
|
||||
|
||||
return (
|
||||
<div className={b('auth-panel', props)}>
|
||||
{
|
||||
!!user.name && (
|
||||
<span>You signed in as <strong>{user.name}</strong>. <span className="auth-panel__pseudo-link" onClick={props.onSignOut}>Sign out?</span></span>
|
||||
)
|
||||
}
|
||||
|
||||
{
|
||||
!user.name && (
|
||||
<span>
|
||||
Sign in to comment using
|
||||
{' '}
|
||||
{
|
||||
providers.map((provider, i) => {
|
||||
const comma = i === 0 ? '' : ', ';
|
||||
|
||||
return (
|
||||
<span>
|
||||
{comma}
|
||||
<span
|
||||
className="auth-panel__pseudo-link"
|
||||
onClick={() => props.onSignIn(provider)}
|
||||
>{provider}</span>
|
||||
</span>
|
||||
)
|
||||
})
|
||||
}
|
||||
{'.'}
|
||||
</span>
|
||||
)
|
||||
}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
.auth-panel {
|
||||
font-size: 12px;
|
||||
line-height: 16px;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
export { default } from './auth-panel';
|
||||
|
||||
require('./auth-panel.scss');
|
||||
|
||||
require('./__pseudo-link/auth-panel__pseudo-link.scss');
|
||||
Reference in New Issue
Block a user