mirror of
https://github.com/status-im/MyCrypto.git
synced 2025-01-21 16:38:48 +00:00
182eaa4329
* Basic webpack build started. * Get build working with electron-packager. Not fully satisfied, might investigate electron-builder. * Custom title bar * Rewrite all webpack configs to use common function. Organize webpack utils. Split into multiple dist folders. * Replace electron build with electron-builder. Leave around packager for a bit. * Check in progress on updater. * Update modal flow. * Fix tscheck. * Adjust publish info. * Arbitrary version bump. * Bump version again. * 5.0.2 bump fix autodownload. * 5.0.2 bump again, readd dmg * 5.0.3 bump * Turn auto update back off. Log errors. Revert versions. * Add os-specific builds. Improve update failure. * Open external links in browser in electron. * Remove custom title bar temporarily. * Add info about the update download to the modal. * Turn off development changes. * Take the postBuild sorting script and move it into a webpack config. * Initial conversion to typescript and electron-webpack. * Switch from electron-webpack back to custom config, clean up unused code, typify electron bridge. * Better typing for bridge. * Remove unnecessary file. * Reminify. * Add shared folder resolving to jest config. * Add enum to electron events
57 lines
1.3 KiB
TypeScript
57 lines
1.3 KiB
TypeScript
import React from 'react';
|
|
import { openInBrowser } from 'utils/electron';
|
|
|
|
interface AAttributes {
|
|
charset?: string;
|
|
className?: string;
|
|
coords?: string;
|
|
download?: string;
|
|
href: string;
|
|
hreflang?: string;
|
|
media?: string;
|
|
name?: string;
|
|
rel?:
|
|
| 'alternate'
|
|
| 'author'
|
|
| 'bookmark'
|
|
| 'external'
|
|
| 'help'
|
|
| 'license'
|
|
| 'next'
|
|
| 'nofollow'
|
|
| 'noreferrer'
|
|
| 'noopener'
|
|
| 'prev'
|
|
| 'search'
|
|
| 'tag';
|
|
rev?: string;
|
|
shape?: 'default' | 'rect' | 'circle' | 'poly';
|
|
target?: '_blank' | '_parent' | '_self' | '_top';
|
|
type?: string;
|
|
onClick?(ev: React.MouseEvent<HTMLAnchorElement>): void;
|
|
}
|
|
|
|
interface NewTabLinkProps extends AAttributes {
|
|
content?: React.ReactElement<any> | string;
|
|
children?: React.ReactElement<any> | string;
|
|
}
|
|
|
|
export class NewTabLink extends React.Component<NewTabLinkProps> {
|
|
public render() {
|
|
const { content, children, ...rest } = this.props;
|
|
return (
|
|
<a target="_blank" rel="noopener noreferrer" onClick={this.handleClick} {...rest}>
|
|
{content || children}
|
|
</a>
|
|
);
|
|
}
|
|
|
|
private handleClick(ev: React.MouseEvent<HTMLAnchorElement>) {
|
|
if (openInBrowser(ev.currentTarget.href)) {
|
|
ev.preventDefault();
|
|
}
|
|
}
|
|
}
|
|
|
|
export default NewTabLink;
|