on 6bf0691 help sign in
35 lines 682 B history raw
1import React from 'react';
2import cn from 'classnames';
4export default function LinkButton({
5 as: As = 'a',
6 disabled = false,
7 className,
8 onClick,
9 children,
10 ...rest
11}) {
12 return (
13 <As
14 onClick={!disabled && onClick ? onClick : undefined}
15 style={{
16 ...(disabled && {
17 pointerEvents: 'none',
18 cursor: 'not-allowed',
19 }),
20 }}
21 className={cn(
22 'us-none pointer underline',
23 {
24 // NOTE: inherit styling from parent otherwise
25 gray4: disabled,
26 },
27 className
28 )}
29 target="_blank"
30 rel="noopener noreferrer"
31 {...rest}>
32 {children}
33 </As>
34 );