diff options
| author | Oskar Nyberg <oskar@mullvad.net> | 2022-07-19 15:44:56 +0200 |
|---|---|---|
| committer | Oskar Nyberg <oskar@mullvad.net> | 2022-07-25 11:40:06 +0200 |
| commit | a46df6ba2f6f3fedd79dab4980c7fc883f79536d (patch) | |
| tree | 86e3405f6e0965f9f4afa9eb63c8776732fdd7ce /gui/src/renderer/containers | |
| parent | 9fa4063cfba1bd9bf44ad54bce650284522d6ebb (diff) | |
| download | mullvadvpn-a46df6ba2f6f3fedd79dab4980c7fc883f79536d.tar.xz mullvadvpn-a46df6ba2f6f3fedd79dab4980c7fc883f79536d.zip | |
Refactore WireguardSettings view
Diffstat (limited to 'gui/src/renderer/containers')
| -rw-r--r-- | gui/src/renderer/containers/WireguardSettingsPage.tsx | 115 |
1 files changed, 0 insertions, 115 deletions
diff --git a/gui/src/renderer/containers/WireguardSettingsPage.tsx b/gui/src/renderer/containers/WireguardSettingsPage.tsx deleted file mode 100644 index 6217c723d2..0000000000 --- a/gui/src/renderer/containers/WireguardSettingsPage.tsx +++ /dev/null @@ -1,115 +0,0 @@ -import { connect } from 'react-redux'; - -import { IpVersion } from '../../shared/daemon-rpc-types'; -import log from '../../shared/logging'; -import WireguardSettings from '../components/WireguardSettings'; -import withAppContext, { IAppContext } from '../context'; -import { createWireguardRelayUpdater } from '../lib/constraint-updater'; -import { IHistoryProps, withHistory } from '../lib/history'; -import { RelaySettingsRedux } from '../redux/settings/reducers'; -import { IReduxState, ReduxDispatch } from '../redux/store'; - -const mapStateToProps = (state: IReduxState, props: IAppContext) => { - const protocolAndPort = mapRelaySettingsToProtocolAndPort(state.settings.relaySettings); - - let wireguardMultihop = false; - if ('normal' in state.settings.relaySettings) { - wireguardMultihop = state.settings.relaySettings.normal.wireguard.useMultihop; - } - - return { - wireguardMtu: state.settings.wireguard.mtu, - wireguardMultihop, - ...protocolAndPort, - - setWireguardPort: async (port?: number) => { - const relayUpdate = createWireguardRelayUpdater(state.settings.relaySettings) - .tunnel.wireguard((wireguard) => { - if (port) { - wireguard.port.exact(port); - } else { - wireguard.port.any(); - } - }) - .build(); - try { - await props.app.updateRelaySettings(relayUpdate); - } catch (e) { - const error = e as Error; - log.error('Failed to update relay settings', error.message); - } - }, - - setWireguardIpVersion: async (ipVersion?: IpVersion) => { - const relayUpdate = createWireguardRelayUpdater(state.settings.relaySettings) - .tunnel.wireguard((wireguard) => { - if (ipVersion) { - wireguard.ipVersion.exact(ipVersion); - } else { - wireguard.ipVersion.any(); - } - }) - .build(); - try { - await props.app.updateRelaySettings(relayUpdate); - } catch (e) { - const error = e as Error; - log.error('Failed to update relay settings', error.message); - } - }, - - setWireguardMultihop: async (enabled: boolean) => { - const relayUpdate = createWireguardRelayUpdater(state.settings.relaySettings) - .tunnel.wireguard((wireguard) => wireguard.useMultihop(enabled)) - .build(); - try { - await props.app.updateRelaySettings(relayUpdate); - } catch (e) { - const error = e as Error; - log.error('Failed to update WireGuard multihop settings', error.message); - } - }, - }; -}; - -const mapRelaySettingsToProtocolAndPort = (relaySettings: RelaySettingsRedux) => { - if ('normal' in relaySettings) { - const port = relaySettings.normal.wireguard.port; - const ipVersion = relaySettings.normal.wireguard.ipVersion; - return { - wireguard: { - port: port === 'any' ? undefined : port, - ipVersion: ipVersion === 'any' ? undefined : ipVersion, - }, - }; - // since the GUI doesn't display custom settings, just display the default ones. - // If the user sets any settings, then those will be applied. - } else if ('customTunnelEndpoint' in relaySettings) { - return { - wireguard: { port: undefined }, - }; - } else { - throw new Error('Unknown type of relay settings.'); - } -}; - -const mapDispatchToProps = (_dispatch: ReduxDispatch, props: IHistoryProps & IAppContext) => { - return { - onClose: () => { - props.history.pop(); - }, - - setWireguardMtu: async (mtu?: number) => { - try { - await props.app.setWireguardMtu(mtu); - } catch (e) { - const error = e as Error; - log.error('Failed to update mtu value', error.message); - } - }, - }; -}; - -export default withAppContext( - withHistory(connect(mapStateToProps, mapDispatchToProps)(WireguardSettings)), -); |
