diff options
| author | Emīls Piņķis <emils@mullvad.net> | 2019-07-18 18:02:54 +0100 |
|---|---|---|
| committer | Emīls Piņķis <emils@mullvad.net> | 2019-07-26 11:25:54 +0100 |
| commit | 7106c34585f3db116307bc908f1eb1fbf51a73cf (patch) | |
| tree | 196e3baf05d1366ae59d8ac6f1fd0a189defec62 /gui/src/shared | |
| parent | ace147c273e058e85df619fb4300e3953cedd2dd (diff) | |
| download | mullvadvpn-7106c34585f3db116307bc908f1eb1fbf51a73cf.tar.xz mullvadvpn-7106c34585f3db116307bc908f1eb1fbf51a73cf.zip | |
Adjust GUI code to the new settings schema
Diffstat (limited to 'gui/src/shared')
| -rw-r--r-- | gui/src/shared/daemon-rpc-types.ts | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/gui/src/shared/daemon-rpc-types.ts b/gui/src/shared/daemon-rpc-types.ts index 5d2c77d223..8dc87cc2b1 100644 --- a/gui/src/shared/daemon-rpc-types.ts +++ b/gui/src/shared/daemon-rpc-types.ts @@ -44,6 +44,13 @@ export function tunnelTypeToString(tunnel: TunnelType): string { export type RelayProtocol = 'tcp' | 'udp'; +export function liftConstraint<T>(constraint: 'any' | { only: T }): 'any' | T { + if (constraint === 'any') { + return 'any'; + } + return constraint.only; +} + export type ProxyType = 'shadowsocks' | 'custom'; export function proxyTypeToString(proxy: ProxyType): string { switch (proxy) { @@ -101,19 +108,21 @@ export interface IWireguardConstraints { port: 'any' | { only: number }; } -type TunnelConstraints<OpenVpn, Wireguard> = { wireguard: Wireguard } | { openvpn: OpenVpn }; +export type TunnelProtocol = 'wireguard' | 'openvpn'; -interface IRelaySettingsNormal<TTunnelConstraints> { +interface IRelaySettingsNormal<OpenVpn, Wireguard> { location: | 'any' | { only: RelayLocation; }; - tunnel: + tunnelProtocol: | 'any' | { - only: TTunnelConstraints; + only: TunnelProtocol; }; + openvpnConstraints: OpenVpn; + wireguardConstraints: Wireguard; } export type ConnectionConfig = @@ -150,7 +159,7 @@ export interface IRelaySettingsCustom { } export type RelaySettings = | { - normal: IRelaySettingsNormal<TunnelConstraints<IOpenVpnConstraints, IWireguardConstraints>>; + normal: IRelaySettingsNormal<IOpenVpnConstraints, IWireguardConstraints>; } | { customTunnelEndpoint: IRelaySettingsCustom; @@ -158,9 +167,7 @@ export type RelaySettings = // types describing the partial update of RelaySettings export type RelaySettingsNormalUpdate = Partial< - IRelaySettingsNormal< - TunnelConstraints<Partial<IOpenVpnConstraints>, Partial<IWireguardConstraints>> - > + IRelaySettingsNormal<Partial<IOpenVpnConstraints>, Partial<IWireguardConstraints>> >; export type RelaySettingsUpdate = |
