summaryrefslogtreecommitdiffhomepage
path: root/gui/src
diff options
context:
space:
mode:
Diffstat (limited to 'gui/src')
-rw-r--r--gui/src/main/account-data-cache.ts2
-rw-r--r--gui/src/main/autostart.ts1
-rw-r--r--gui/src/main/changelog.ts1
-rw-r--r--gui/src/main/daemon-rpc.ts70
-rw-r--r--gui/src/main/gui-settings.ts1
-rw-r--r--gui/src/main/index.ts15
-rw-r--r--gui/src/main/ipc-event-channel.ts1
-rw-r--r--gui/src/main/linux-desktop-entry.ts1
-rw-r--r--gui/src/main/linux-split-tunneling.ts7
-rw-r--r--gui/src/main/load-translations.ts1
-rw-r--r--gui/src/main/logging.ts3
-rw-r--r--gui/src/main/notification-controller.ts3
-rw-r--r--gui/src/main/tray-icon-controller.ts3
-rw-r--r--gui/src/main/window-controller.ts1
-rw-r--r--gui/src/main/windows-split-tunneling.ts21
-rw-r--r--gui/src/renderer/app.tsx49
-rw-r--r--gui/src/renderer/components/Account.tsx10
-rw-r--r--gui/src/renderer/components/AccountStyles.tsx1
-rw-r--r--gui/src/renderer/components/AdvancedSettings.tsx5
-rw-r--r--gui/src/renderer/components/AdvancedSettingsStyles.tsx3
-rw-r--r--gui/src/renderer/components/AppButton.tsx1
-rw-r--r--gui/src/renderer/components/AppButtonStyles.tsx1
-rw-r--r--gui/src/renderer/components/AppRouter.tsx17
-rw-r--r--gui/src/renderer/components/BetaLabel.tsx1
-rw-r--r--gui/src/renderer/components/BridgeLocations.tsx1
-rw-r--r--gui/src/renderer/components/Changelog.tsx1
-rw-r--r--gui/src/renderer/components/ChevronButton.tsx1
-rw-r--r--gui/src/renderer/components/ClipboardLabel.tsx1
-rw-r--r--gui/src/renderer/components/Connect.tsx3
-rw-r--r--gui/src/renderer/components/ConnectionPanel.tsx1
-rw-r--r--gui/src/renderer/components/ConnectionPanelDisclosure.tsx1
-rw-r--r--gui/src/renderer/components/CustomDnsSettings.tsx1
-rw-r--r--gui/src/renderer/components/CustomDnsSettingsStyles.tsx1
-rw-r--r--gui/src/renderer/components/CustomScrollbars.tsx1
-rw-r--r--gui/src/renderer/components/DeviceRevokedView.tsx5
-rw-r--r--gui/src/renderer/components/ErrorBoundary.tsx1
-rw-r--r--gui/src/renderer/components/ErrorView.tsx1
-rw-r--r--gui/src/renderer/components/ExpiredAccountAddTime.tsx7
-rw-r--r--gui/src/renderer/components/ExpiredAccountErrorView.tsx1
-rw-r--r--gui/src/renderer/components/ExpiredAccountErrorViewStyles.tsx1
-rw-r--r--gui/src/renderer/components/FilterByProvider.tsx1
-rw-r--r--gui/src/renderer/components/Focus.tsx1
-rw-r--r--gui/src/renderer/components/FormattableTextInput.tsx1
-rw-r--r--gui/src/renderer/components/HeaderBar.tsx3
-rw-r--r--gui/src/renderer/components/KeyboardNavigation.tsx1
-rw-r--r--gui/src/renderer/components/Layout.tsx1
-rw-r--r--gui/src/renderer/components/List.tsx1
-rw-r--r--gui/src/renderer/components/LocationList.tsx3
-rw-r--r--gui/src/renderer/components/LocationRow.tsx1
-rw-r--r--gui/src/renderer/components/Locations.tsx1
-rw-r--r--gui/src/renderer/components/Login.tsx14
-rw-r--r--gui/src/renderer/components/LoginStyles.tsx3
-rw-r--r--gui/src/renderer/components/MacOsScrollbarDetection.tsx5
-rw-r--r--gui/src/renderer/components/MainView.tsx3
-rw-r--r--gui/src/renderer/components/Map.tsx1
-rw-r--r--gui/src/renderer/components/Marquee.tsx1
-rw-r--r--gui/src/renderer/components/Modal.tsx3
-rw-r--r--gui/src/renderer/components/MultiButton.tsx1
-rw-r--r--gui/src/renderer/components/NavigationBar.tsx3
-rw-r--r--gui/src/renderer/components/NavigationBarStyles.tsx1
-rw-r--r--gui/src/renderer/components/NotificationArea.tsx1
-rw-r--r--gui/src/renderer/components/NotificationBanner.tsx1
-rw-r--r--gui/src/renderer/components/OpenVPNSettings.tsx7
-rw-r--r--gui/src/renderer/components/Preferences.tsx1
-rw-r--r--gui/src/renderer/components/PreferencesStyles.tsx1
-rw-r--r--gui/src/renderer/components/RedeemVoucher.tsx3
-rw-r--r--gui/src/renderer/components/RedeemVoucherStyles.tsx1
-rw-r--r--gui/src/renderer/components/RelayStatusIndicator.tsx1
-rw-r--r--gui/src/renderer/components/ScopeBar.tsx1
-rw-r--r--gui/src/renderer/components/SecuredLabel.tsx1
-rw-r--r--gui/src/renderer/components/SelectLanguage.tsx5
-rw-r--r--gui/src/renderer/components/SelectLocation.tsx15
-rw-r--r--gui/src/renderer/components/SelectLocationStyles.tsx1
-rw-r--r--gui/src/renderer/components/Settings.tsx8
-rw-r--r--gui/src/renderer/components/SettingsHeader.tsx1
-rw-r--r--gui/src/renderer/components/SettingsStyles.tsx1
-rw-r--r--gui/src/renderer/components/SplitTunnelingSettings.tsx39
-rw-r--r--gui/src/renderer/components/SplitTunnelingSettingsStyles.tsx1
-rw-r--r--gui/src/renderer/components/Support.tsx10
-rw-r--r--gui/src/renderer/components/SupportStyles.tsx1
-rw-r--r--gui/src/renderer/components/SvgMap.tsx3
-rw-r--r--gui/src/renderer/components/Switch.tsx1
-rw-r--r--gui/src/renderer/components/TooManyDevices.tsx1
-rw-r--r--gui/src/renderer/components/TransitionContainer.tsx1
-rw-r--r--gui/src/renderer/components/TunnelControl.tsx1
-rw-r--r--gui/src/renderer/components/WireguardSettings.tsx5
-rw-r--r--gui/src/renderer/components/cell/CellButton.tsx1
-rw-r--r--gui/src/renderer/components/cell/Container.tsx1
-rw-r--r--gui/src/renderer/components/cell/Footer.tsx1
-rw-r--r--gui/src/renderer/components/cell/Input.tsx7
-rw-r--r--gui/src/renderer/components/cell/Label.tsx1
-rw-r--r--gui/src/renderer/components/cell/Section.tsx1
-rw-r--r--gui/src/renderer/components/cell/Selector.tsx3
-rw-r--r--gui/src/renderer/components/common-styles.ts1
-rw-r--r--gui/src/renderer/containers/AccountPage.tsx4
-rw-r--r--gui/src/renderer/containers/AdvancedSettingsPage.tsx2
-rw-r--r--gui/src/renderer/containers/ConnectPage.tsx1
-rw-r--r--gui/src/renderer/containers/ConnectionPanelContainer.tsx1
-rw-r--r--gui/src/renderer/containers/ExpiredAccountErrorViewContainer.tsx6
-rw-r--r--gui/src/renderer/containers/LoginPage.tsx1
-rw-r--r--gui/src/renderer/containers/OpenVPNSettingsPage.tsx2
-rw-r--r--gui/src/renderer/containers/PlatformWindowContainer.tsx2
-rw-r--r--gui/src/renderer/containers/PreferencesPage.tsx1
-rw-r--r--gui/src/renderer/containers/SelectLanguagePage.tsx1
-rw-r--r--gui/src/renderer/containers/SelectLocationPage.tsx1
-rw-r--r--gui/src/renderer/containers/SettingsPage.tsx1
-rw-r--r--gui/src/renderer/containers/SupportPage.tsx1
-rw-r--r--gui/src/renderer/containers/WireguardSettingsPage.tsx2
-rw-r--r--gui/src/renderer/context.tsx1
-rw-r--r--gui/src/renderer/index.ts1
-rw-r--r--gui/src/renderer/lib/constraint-updater.ts2
-rw-r--r--gui/src/renderer/lib/history.tsx3
-rw-r--r--gui/src/renderer/lib/ipc-event-channel.ts1
-rw-r--r--gui/src/renderer/lib/load-translations.ts1
-rw-r--r--gui/src/renderer/preload.ts1
-rw-r--r--gui/src/renderer/redux/account/actions.ts2
-rw-r--r--gui/src/renderer/redux/settings/actions.ts2
-rw-r--r--gui/src/renderer/redux/settings/reducers.ts4
-rw-r--r--gui/src/shared/account-expiry.ts2
-rw-r--r--gui/src/shared/date-helper.ts1
-rw-r--r--gui/src/shared/gettext.ts1
-rw-r--r--gui/src/shared/ipc-helpers.ts3
-rw-r--r--gui/src/shared/ipc-schema.ts5
-rw-r--r--gui/src/shared/notifications/close-to-account-expiry.ts1
-rw-r--r--gui/src/shared/notifications/connected.ts1
-rw-r--r--gui/src/shared/notifications/connecting.ts1
-rw-r--r--gui/src/shared/notifications/error.ts2
-rw-r--r--gui/src/shared/notifications/unsupported-version.ts2
-rw-r--r--gui/src/shared/notifications/update-available.ts1
129 files changed, 296 insertions, 192 deletions
diff --git a/gui/src/main/account-data-cache.ts b/gui/src/main/account-data-cache.ts
index 031ffb50bd..38d2cb8a01 100644
--- a/gui/src/main/account-data-cache.ts
+++ b/gui/src/main/account-data-cache.ts
@@ -1,6 +1,6 @@
import { closeToExpiry, hasExpired } from '../shared/account-expiry';
import { AccountToken, IAccountData, VoucherResponse } from '../shared/daemon-rpc-types';
-import { DateComponent, dateByAddingComponent } from '../shared/date-helper';
+import { dateByAddingComponent, DateComponent } from '../shared/date-helper';
import log from '../shared/logging';
import { Scheduler } from '../shared/scheduler';
import { InvalidAccountError } from './errors';
diff --git a/gui/src/main/autostart.ts b/gui/src/main/autostart.ts
index d5fdf39685..763862178e 100644
--- a/gui/src/main/autostart.ts
+++ b/gui/src/main/autostart.ts
@@ -1,6 +1,7 @@
import { app } from 'electron';
import fs from 'fs';
import path from 'path';
+
import log from '../shared/logging';
import { getDesktopEntries } from './linux-desktop-entry';
diff --git a/gui/src/main/changelog.ts b/gui/src/main/changelog.ts
index 76fead30af..978b0b28e6 100644
--- a/gui/src/main/changelog.ts
+++ b/gui/src/main/changelog.ts
@@ -1,5 +1,6 @@
import fs from 'fs';
import path from 'path';
+
import { IChangelog } from '../shared/ipc-types';
import log from '../shared/logging';
diff --git a/gui/src/main/daemon-rpc.ts b/gui/src/main/daemon-rpc.ts
index b57591c4af..b3add4ec1d 100644
--- a/gui/src/main/daemon-rpc.ts
+++ b/gui/src/main/daemon-rpc.ts
@@ -1,61 +1,61 @@
import * as grpc from '@grpc/grpc-js';
+import { Empty } from 'google-protobuf/google/protobuf/empty_pb.js';
import {
BoolValue,
StringValue,
UInt32Value,
} from 'google-protobuf/google/protobuf/wrappers_pb.js';
-import { Empty } from 'google-protobuf/google/protobuf/empty_pb.js';
import { promisify } from 'util';
+
import {
AccountToken,
+ AfterDisconnect,
+ BridgeSettings,
+ BridgeState,
+ ConnectionConfig,
Constraint,
- IRelayListCountry,
- IRelayListCity,
- IRelayListHostname,
- IWireguardTunnelData,
+ DaemonEvent,
+ ErrorStateCause,
+ FirewallPolicyError,
+ IAccountData,
+ IAppVersionInfo,
IBridgeConstraints,
- IWireguardConstraints,
- ITunnelOptions,
+ IDevice,
+ IDeviceConfig,
+ IDeviceEvent,
+ IDeviceRemoval,
+ IDnsOptions,
+ IErrorState,
+ ILocation,
IOpenVpnConstraints,
+ IOpenVpnTunnelData,
+ IProxyEndpoint,
IRelayList,
+ IRelayListCity,
+ IRelayListCountry,
+ IRelayListHostname,
+ ISettings,
IShadowsocksEndpointData,
- RelayProtocol,
- BridgeSettings,
- FirewallPolicyError,
- BridgeState,
- ILocation,
- IAppVersionInfo,
- IAccountData,
- IOpenVpnTunnelData,
- TunnelState,
- AfterDisconnect,
- IErrorState,
- ErrorStateCause,
- TunnelParameterError,
+ ITunnelOptions,
ITunnelStateRelayInfo,
- TunnelType,
- IProxyEndpoint,
+ IWireguardConstraints,
+ IWireguardTunnelData,
+ ProxySettings,
ProxyType,
- ISettings,
- ConnectionConfig,
- DaemonEvent,
+ RelayLocation,
+ RelayProtocol,
RelaySettings,
RelaySettingsUpdate,
- RelayLocation,
- ProxySettings,
- VoucherResponse,
+ TunnelParameterError,
TunnelProtocol,
- IDnsOptions,
- IDeviceConfig,
- IDevice,
- IDeviceRemoval,
- IDeviceEvent,
+ TunnelState,
+ TunnelType,
+ VoucherResponse,
} from '../shared/daemon-rpc-types';
import log from '../shared/logging';
-
+import { CommunicationError, InvalidAccountError, TooManyDevicesError } from './errors';
import { ManagementServiceClient } from './management_interface/management_interface_grpc_pb';
import * as grpcTypes from './management_interface/management_interface_pb';
-import { CommunicationError, InvalidAccountError, TooManyDevicesError } from './errors';
const NETWORK_CALL_TIMEOUT = 10000;
const CHANNEL_STATE_TIMEOUT = 1000 * 60 * 60;
diff --git a/gui/src/main/gui-settings.ts b/gui/src/main/gui-settings.ts
index a4e7a31d22..f8aa81f665 100644
--- a/gui/src/main/gui-settings.ts
+++ b/gui/src/main/gui-settings.ts
@@ -1,6 +1,7 @@
import { app } from 'electron';
import * as fs from 'fs';
import * as path from 'path';
+
import { IGuiSettingsState, SYSTEM_PREFERRED_LOCALE_KEY } from '../shared/gui-settings-state';
import log from '../shared/logging';
diff --git a/gui/src/main/index.ts b/gui/src/main/index.ts
index a47fa699df..e36c8d1b70 100644
--- a/gui/src/main/index.ts
+++ b/gui/src/main/index.ts
@@ -16,10 +16,12 @@ import {
import fs from 'fs';
import * as path from 'path';
import util from 'util';
+
import config from '../config.json';
import { closeToExpiry, hasExpired } from '../shared/account-expiry';
import { IWindowsApplication } from '../shared/application-types';
import BridgeSettingsBuilder from '../shared/bridge-settings-builder';
+import { connectEnabled, disconnectEnabled, reconnectEnabled } from '../shared/connect-helper';
import {
AccountToken,
BridgeSettings,
@@ -28,6 +30,7 @@ import {
IAccountData,
IAppVersionInfo,
IDeviceConfig,
+ IDeviceEvent,
IDeviceRemoval,
IDnsOptions,
IRelayList,
@@ -36,15 +39,13 @@ import {
RelaySettings,
RelaySettingsUpdate,
TunnelState,
- IDeviceEvent,
} from '../shared/daemon-rpc-types';
import { messages, relayLocations } from '../shared/gettext';
import { SYSTEM_PREFERRED_LOCALE_KEY } from '../shared/gui-settings-state';
+import { ITranslations, MacOsScrollbarVisibility } from '../shared/ipc-schema';
+import { IChangelog, ICurrentAppVersionInfo } from '../shared/ipc-types';
import log, { ConsoleOutput, Logger } from '../shared/logging';
import { LogLevel } from '../shared/logging-types';
-import { readChangelog } from './changelog';
-import { IpcMainEventChannel } from './ipc-event-channel';
-import { IChangelog, ICurrentAppVersionInfo } from '../shared/ipc-types';
import {
AccountExpiredNotificationProvider,
CloseToAccountExpiryNotificationProvider,
@@ -55,11 +56,14 @@ import {
import { Scheduler } from '../shared/scheduler';
import AccountDataCache from './account-data-cache';
import { getOpenAtLogin, setOpenAtLogin } from './autostart';
+import { readChangelog } from './changelog';
import { ConnectionObserver, DaemonRpc, SubscriptionListener } from './daemon-rpc';
import { InvalidAccountError } from './errors';
import Expectation from './expectation';
import GuiSettings from './gui-settings';
+import { IpcMainEventChannel } from './ipc-event-channel';
import { findIconPath } from './linux-desktop-entry';
+import { loadTranslations } from './load-translations';
import {
backupLogFile,
cleanUpLogDirectory,
@@ -70,15 +74,12 @@ import {
IpcInput,
OLD_LOG_FILES,
} from './logging';
-import { loadTranslations } from './load-translations';
import NotificationController from './notification-controller';
import { isMacOs11OrNewer } from './platform-version';
import { resolveBin } from './proc';
import ReconnectionBackoff from './reconnection-backoff';
import TrayIconController, { TrayIconType } from './tray-icon-controller';
import WindowController from './window-controller';
-import { ITranslations, MacOsScrollbarVisibility } from '../shared/ipc-schema';
-import { connectEnabled, disconnectEnabled, reconnectEnabled } from '../shared/connect-helper';
const execAsync = util.promisify(exec);
diff --git a/gui/src/main/ipc-event-channel.ts b/gui/src/main/ipc-event-channel.ts
index 9bd8af1490..d883f52152 100644
--- a/gui/src/main/ipc-event-channel.ts
+++ b/gui/src/main/ipc-event-channel.ts
@@ -1,4 +1,5 @@
import { ipcMain } from 'electron';
+
import { createIpcMain } from '../shared/ipc-helpers';
import { ipcSchema } from '../shared/ipc-schema';
diff --git a/gui/src/main/linux-desktop-entry.ts b/gui/src/main/linux-desktop-entry.ts
index 52ea526022..23b2756f23 100644
--- a/gui/src/main/linux-desktop-entry.ts
+++ b/gui/src/main/linux-desktop-entry.ts
@@ -2,6 +2,7 @@ import child_process from 'child_process';
import { nativeImage } from 'electron';
import fs from 'fs';
import path from 'path';
+
import { ILinuxApplication } from '../shared/application-types';
import log from '../shared/logging';
diff --git a/gui/src/main/linux-split-tunneling.ts b/gui/src/main/linux-split-tunneling.ts
index 17f24619f4..cb8bd9e740 100644
--- a/gui/src/main/linux-split-tunneling.ts
+++ b/gui/src/main/linux-split-tunneling.ts
@@ -1,17 +1,18 @@
import argvSplit from 'argv-split';
import child_process from 'child_process';
import path from 'path';
+
import { ILinuxSplitTunnelingApplication } from '../shared/application-types';
import { messages } from '../shared/gettext';
import { LaunchApplicationResult } from '../shared/ipc-schema';
import { Scheduler } from '../shared/scheduler';
import {
- getDesktopEntries,
- readDesktopEntry,
+ DesktopEntry,
findIconPath,
+ getDesktopEntries,
getImageDataUrl,
+ readDesktopEntry,
shouldShowApplication,
- DesktopEntry,
} from './linux-desktop-entry';
const PROBLEMATIC_APPLICATIONS = {
diff --git a/gui/src/main/load-translations.ts b/gui/src/main/load-translations.ts
index cb597e484d..a3e892ce0b 100644
--- a/gui/src/main/load-translations.ts
+++ b/gui/src/main/load-translations.ts
@@ -2,6 +2,7 @@ import fs from 'fs';
import { GetTextTranslations, po } from 'gettext-parser';
import Gettext from 'node-gettext';
import path from 'path';
+
import log from '../shared/logging';
const SOURCE_LANGUAGE = 'en';
diff --git a/gui/src/main/logging.ts b/gui/src/main/logging.ts
index 79a42b35c1..0e488914ce 100644
--- a/gui/src/main/logging.ts
+++ b/gui/src/main/logging.ts
@@ -1,8 +1,9 @@
import { app } from 'electron';
import fs from 'fs';
import path from 'path';
+
+import { ILogInput, ILogOutput, LogLevel } from '../shared/logging-types';
import { IpcMainEventChannel } from './ipc-event-channel';
-import { LogLevel, ILogInput, ILogOutput } from '../shared/logging-types';
export const OLD_LOG_FILES = ['main.log', 'renderer.log', 'frontend.log'];
diff --git a/gui/src/main/notification-controller.ts b/gui/src/main/notification-controller.ts
index c4816e796a..1f3b143590 100644
--- a/gui/src/main/notification-controller.ts
+++ b/gui/src/main/notification-controller.ts
@@ -1,6 +1,7 @@
-import { app, nativeImage, NativeImage, Notification } from 'electron';
+import { app, NativeImage, nativeImage, Notification } from 'electron';
import os from 'os';
import path from 'path';
+
import { TunnelState } from '../shared/daemon-rpc-types';
import log from '../shared/logging';
import {
diff --git a/gui/src/main/tray-icon-controller.ts b/gui/src/main/tray-icon-controller.ts
index f1028bd11c..42d69397cf 100644
--- a/gui/src/main/tray-icon-controller.ts
+++ b/gui/src/main/tray-icon-controller.ts
@@ -1,8 +1,9 @@
import { exec as execAsync } from 'child_process';
-import { Menu, nativeImage, NativeImage, Tray } from 'electron';
+import { Menu, NativeImage, nativeImage, Tray } from 'electron';
import path from 'path';
import { sprintf } from 'sprintf-js';
import { promisify } from 'util';
+
import { connectEnabled, disconnectEnabled, reconnectEnabled } from '../shared/connect-helper';
import { AccountToken, TunnelState } from '../shared/daemon-rpc-types';
import { messages } from '../shared/gettext';
diff --git a/gui/src/main/window-controller.ts b/gui/src/main/window-controller.ts
index 09250f4f8c..4676dbbecb 100644
--- a/gui/src/main/window-controller.ts
+++ b/gui/src/main/window-controller.ts
@@ -1,4 +1,5 @@
import { BrowserWindow, Display, screen, Tray, WebContents } from 'electron';
+
import { IWindowShapeParameters } from '../shared/ipc-types';
import { Scheduler } from '../shared/scheduler';
import { IpcMainEventChannel } from './ipc-event-channel';
diff --git a/gui/src/main/windows-split-tunneling.ts b/gui/src/main/windows-split-tunneling.ts
index 2ae118db4a..00c316ca79 100644
--- a/gui/src/main/windows-split-tunneling.ts
+++ b/gui/src/main/windows-split-tunneling.ts
@@ -1,34 +1,35 @@
import { app, shell } from 'electron';
import fs from 'fs';
import path from 'path';
+
import { IWindowsApplication } from '../shared/application-types';
import log from '../shared/logging';
import {
ArrayValue,
DOS_HEADER,
+ DWORD,
IMAGE_DATA_DIRECTORY,
IMAGE_DIRECTORY_ENTRY_IMPORT,
+ IMAGE_DIRECTORY_ENTRY_RESOURCE,
IMAGE_FILE_HEADER,
IMAGE_IMPORT_MODULE_DIRECTORY,
IMAGE_NT_HEADERS,
IMAGE_NT_HEADERS64,
- ImageNtHeadersUnion,
IMAGE_OPTIONAL_HEADER32,
+ IMAGE_RESOURCE_DIRECTORY,
+ IMAGE_RESOURCE_DIRECTORY_DATA_ENTRY,
+ IMAGE_RESOURCE_DIRECTORY_ID_ENTRY,
+ ImageNtHeadersUnion,
ImageOptionalHeaderUnion,
PrimitiveValue,
rvaToOffset as rvaToOffsetImpl,
- StructValue,
- Value,
- DWORD,
- IMAGE_DIRECTORY_ENTRY_RESOURCE,
- IMAGE_RESOURCE_DIRECTORY,
- IMAGE_RESOURCE_DIRECTORY_DATA_ENTRY,
- VS_VERSIONINFO,
STRING_FILE_INFO,
STRING_TABLE,
- StructWrapper,
STRING_TABLE_STRING,
- IMAGE_RESOURCE_DIRECTORY_ID_ENTRY,
+ StructValue,
+ StructWrapper,
+ Value,
+ VS_VERSIONINFO,
} from './windows-pe-parser';
interface ShortcutDetails {
diff --git a/gui/src/renderer/app.tsx b/gui/src/renderer/app.tsx
index 6e29794a83..b221f0a0e1 100644
--- a/gui/src/renderer/app.tsx
+++ b/gui/src/renderer/app.tsx
@@ -2,29 +2,7 @@ import { batch, Provider } from 'react-redux';
import { Router } from 'react-router';
import { bindActionCreators } from 'redux';
-import AppRouter from './components/AppRouter';
-import MacOsScrollbarDetection from './components/MacOsScrollbarDetection';
-import ErrorBoundary from './components/ErrorBoundary';
-import PlatformWindowContainer from './containers/PlatformWindowContainer';
-import { AppContext } from './context';
-
-import accountActions from './redux/account/actions';
-import connectionActions from './redux/connection/actions';
-import settingsActions from './redux/settings/actions';
-import configureStore from './redux/store';
-import userInterfaceActions from './redux/userinterface/actions';
-import versionActions from './redux/version/actions';
-
-import { IChangelog, ICurrentAppVersionInfo } from '../shared/ipc-types';
-import { IWindowsApplication, ILinuxSplitTunnelingApplication } from '../shared/application-types';
-import { IGuiSettingsState, SYSTEM_PREFERRED_LOCALE_KEY } from '../shared/gui-settings-state';
-import { messages, relayLocations } from '../shared/gettext';
-import log, { ConsoleOutput } from '../shared/logging';
-import { IRelayListPair, LaunchApplicationResult } from '../shared/ipc-schema';
-import { Scheduler } from '../shared/scheduler';
-import History, { ITransitionSpecification, transitions } from './lib/history';
-import { loadTranslations } from './lib/load-translations';
-
+import { ILinuxSplitTunnelingApplication, IWindowsApplication } from '../shared/application-types';
import {
AccountToken,
BridgeSettings,
@@ -33,6 +11,7 @@ import {
IAppVersionInfo,
IDevice,
IDeviceConfig,
+ IDeviceEvent,
IDeviceRemoval,
IDnsOptions,
ILocation,
@@ -42,13 +21,31 @@ import {
RelaySettingsUpdate,
TunnelState,
VoucherResponse,
- IDeviceEvent,
} from '../shared/daemon-rpc-types';
+import { messages, relayLocations } from '../shared/gettext';
+import { IGuiSettingsState, SYSTEM_PREFERRED_LOCALE_KEY } from '../shared/gui-settings-state';
+import { IRelayListPair, LaunchApplicationResult } from '../shared/ipc-schema';
+import { IChangelog, ICurrentAppVersionInfo } from '../shared/ipc-types';
+import log, { ConsoleOutput } from '../shared/logging';
import { LogLevel } from '../shared/logging-types';
-import IpcOutput from './lib/logging';
-import { RoutePath } from './lib/routes';
+import { Scheduler } from '../shared/scheduler';
+import AppRouter from './components/AppRouter';
import { Changelog } from './components/Changelog';
+import ErrorBoundary from './components/ErrorBoundary';
+import MacOsScrollbarDetection from './components/MacOsScrollbarDetection';
import { ModalContainer } from './components/Modal';
+import PlatformWindowContainer from './containers/PlatformWindowContainer';
+import { AppContext } from './context';
+import History, { ITransitionSpecification, transitions } from './lib/history';
+import { loadTranslations } from './lib/load-translations';
+import IpcOutput from './lib/logging';
+import { RoutePath } from './lib/routes';
+import accountActions from './redux/account/actions';
+import connectionActions from './redux/connection/actions';
+import settingsActions from './redux/settings/actions';
+import configureStore from './redux/store';
+import userInterfaceActions from './redux/userinterface/actions';
+import versionActions from './redux/version/actions';
const IpcRendererEventChannel = window.ipc;
diff --git a/gui/src/renderer/components/Account.tsx b/gui/src/renderer/components/Account.tsx
index 4a84e3c110..af714273af 100644
--- a/gui/src/renderer/components/Account.tsx
+++ b/gui/src/renderer/components/Account.tsx
@@ -1,5 +1,7 @@
import * as React from 'react';
+
import { formatDate, hasExpired } from '../../shared/account-expiry';
+import { AccountToken, IDevice } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
import {
AccountContainer,
@@ -10,23 +12,21 @@ import {
AccountRows,
AccountRowValue,
DeviceRowValue,
- StyledSpinnerContainer,
StyledBuyCreditButton,
StyledContainer,
StyledRedeemVoucherButton,
+ StyledSpinnerContainer,
} from './AccountStyles';
import AccountTokenLabel from './AccountTokenLabel';
import * as AppButton from './AppButton';
import { AriaDescribed, AriaDescription, AriaDescriptionGroup } from './AriaGroup';
+import ImageView from './ImageView';
+import { BackAction } from './KeyboardNavigation';
import { Layout } from './Layout';
import { ModalAlert, ModalAlertType, ModalMessage } from './Modal';
import { NavigationBar, NavigationItems, TitleBarItem } from './NavigationBar';
import SettingsHeader, { HeaderTitle } from './SettingsHeader';
-import { AccountToken, IDevice } from '../../shared/daemon-rpc-types';
-import ImageView from './ImageView';
-import { BackAction } from './KeyboardNavigation';
-
interface IProps {
deviceName?: string;
accountToken?: AccountToken;
diff --git a/gui/src/renderer/components/AccountStyles.tsx b/gui/src/renderer/components/AccountStyles.tsx
index 549b0cda7d..cccb1c95af 100644
--- a/gui/src/renderer/components/AccountStyles.tsx
+++ b/gui/src/renderer/components/AccountStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as AppButton from './AppButton';
import { normalText, tinyText } from './common-styles';
diff --git a/gui/src/renderer/components/AdvancedSettings.tsx b/gui/src/renderer/components/AdvancedSettings.tsx
index 596a638f51..4e6485a6e6 100644
--- a/gui/src/renderer/components/AdvancedSettings.tsx
+++ b/gui/src/renderer/components/AdvancedSettings.tsx
@@ -1,4 +1,5 @@
import * as React from 'react';
+
import { TunnelProtocol } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
import {
@@ -9,14 +10,14 @@ import {
import * as AppButton from './AppButton';
import { AriaDescription, AriaInput, AriaInputGroup, AriaLabel } from './AriaGroup';
import * as Cell from './cell';
+import { ISelectorItem } from './cell/Selector';
import CustomDnsSettings from './CustomDnsSettings';
+import { BackAction } from './KeyboardNavigation';
import { Layout, SettingsContainer } from './Layout';
import { ModalAlert, ModalAlertType, ModalMessage } from './Modal';
import { NavigationBar, NavigationContainer, NavigationItems, TitleBarItem } from './NavigationBar';
-import { ISelectorItem } from './cell/Selector';
import SettingsHeader, { HeaderTitle } from './SettingsHeader';
import Switch from './Switch';
-import { BackAction } from './KeyboardNavigation';
type OptionalTunnelProtocol = TunnelProtocol | undefined;
diff --git a/gui/src/renderer/components/AdvancedSettingsStyles.tsx b/gui/src/renderer/components/AdvancedSettingsStyles.tsx
index f7a87b5311..06a0103855 100644
--- a/gui/src/renderer/components/AdvancedSettingsStyles.tsx
+++ b/gui/src/renderer/components/AdvancedSettingsStyles.tsx
@@ -1,6 +1,7 @@
import styled from 'styled-components';
-import { NavigationScrollbars } from './NavigationBar';
+
import Selector from './cell/Selector';
+import { NavigationScrollbars } from './NavigationBar';
export const StyledSelectorContainer = styled.div({
flex: 0,
diff --git a/gui/src/renderer/components/AppButton.tsx b/gui/src/renderer/components/AppButton.tsx
index b4329bed61..a9bc44a7f4 100644
--- a/gui/src/renderer/components/AppButton.tsx
+++ b/gui/src/renderer/components/AppButton.tsx
@@ -1,5 +1,6 @@
import React, { useCallback, useContext, useMemo, useState } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import log from '../../shared/logging';
import { useMounted } from '../lib/utilityHooks';
diff --git a/gui/src/renderer/components/AppButtonStyles.tsx b/gui/src/renderer/components/AppButtonStyles.tsx
index 6322a33783..f22eb3473a 100644
--- a/gui/src/renderer/components/AppButtonStyles.tsx
+++ b/gui/src/renderer/components/AppButtonStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { buttonText } from './common-styles';
export const StyledLabel = styled.span(buttonText, (props: { textOffset: number }) => ({
diff --git a/gui/src/renderer/components/AppRouter.tsx b/gui/src/renderer/components/AppRouter.tsx
index 46b322785a..d061c7b9d5 100644
--- a/gui/src/renderer/components/AppRouter.tsx
+++ b/gui/src/renderer/components/AppRouter.tsx
@@ -1,12 +1,7 @@
import { Action } from 'history';
import * as React from 'react';
import { Route, Switch } from 'react-router';
-import Launch from './Launch';
-import KeyboardNavigation from './KeyboardNavigation';
-import MainView from './MainView';
-import Focus, { IFocusHandle } from './Focus';
-import SplitTunnelingSettings from './SplitTunnelingSettings';
-import TransitionContainer, { TransitionView } from './TransitionContainer';
+
import AccountPage from '../containers/AccountPage';
import AdvancedSettingsPage from '../containers/AdvancedSettingsPage';
import LoginPage from '../containers/LoginPage';
@@ -18,16 +13,22 @@ import SettingsPage from '../containers/SettingsPage';
import SupportPage from '../containers/SupportPage';
import WireguardSettingsPage from '../containers/WireguardSettingsPage';
import { IHistoryProps, ITransitionSpecification, transitions, withHistory } from '../lib/history';
+import { RoutePath } from '../lib/routes';
+import { DeviceRevokedView } from './DeviceRevokedView';
import {
SetupFinished,
TimeAdded,
VoucherInput,
VoucherVerificationSuccess,
} from './ExpiredAccountAddTime';
-import { RoutePath } from '../lib/routes';
import FilterByProvider from './FilterByProvider';
+import Focus, { IFocusHandle } from './Focus';
+import KeyboardNavigation from './KeyboardNavigation';
+import Launch from './Launch';
+import MainView from './MainView';
+import SplitTunnelingSettings from './SplitTunnelingSettings';
import TooManyDevices from './TooManyDevices';
-import { DeviceRevokedView } from './DeviceRevokedView';
+import TransitionContainer, { TransitionView } from './TransitionContainer';
interface IAppRoutesState {
currentLocation: IHistoryProps['history']['location'];
diff --git a/gui/src/renderer/components/BetaLabel.tsx b/gui/src/renderer/components/BetaLabel.tsx
index 998e6ad278..ca19a9ef4b 100644
--- a/gui/src/renderer/components/BetaLabel.tsx
+++ b/gui/src/renderer/components/BetaLabel.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/BridgeLocations.tsx b/gui/src/renderer/components/BridgeLocations.tsx
index 9a185915c8..2eed268e2f 100644
--- a/gui/src/renderer/components/BridgeLocations.tsx
+++ b/gui/src/renderer/components/BridgeLocations.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { LiftedConstraint, RelayLocation } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/Changelog.tsx b/gui/src/renderer/components/Changelog.tsx
index 7299e40c30..9bd55ba411 100644
--- a/gui/src/renderer/components/Changelog.tsx
+++ b/gui/src/renderer/components/Changelog.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { messages } from '../../shared/gettext';
import { useAppContext } from '../context';
import { useSelector } from '../redux/store';
diff --git a/gui/src/renderer/components/ChevronButton.tsx b/gui/src/renderer/components/ChevronButton.tsx
index 1e62ebbc08..0485c22caf 100644
--- a/gui/src/renderer/components/ChevronButton.tsx
+++ b/gui/src/renderer/components/ChevronButton.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as Cell from './cell';
diff --git a/gui/src/renderer/components/ClipboardLabel.tsx b/gui/src/renderer/components/ClipboardLabel.tsx
index 071a6991a8..98fcede85e 100644
--- a/gui/src/renderer/components/ClipboardLabel.tsx
+++ b/gui/src/renderer/components/ClipboardLabel.tsx
@@ -1,5 +1,6 @@
import { useCallback } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import log from '../../shared/logging';
diff --git a/gui/src/renderer/components/Connect.tsx b/gui/src/renderer/components/Connect.tsx
index d861ab51f6..057858b477 100644
--- a/gui/src/renderer/components/Connect.tsx
+++ b/gui/src/renderer/components/Connect.tsx
@@ -1,8 +1,9 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { hasExpired } from '../../shared/account-expiry';
-import NotificationArea from '../components/NotificationArea';
import { AuthFailureKind, parseAuthFailure } from '../../shared/auth-failure';
+import NotificationArea from '../components/NotificationArea';
import { LoginState } from '../redux/account/reducers';
import { IConnectionReduxState } from '../redux/connection/reducers';
import { calculateHeaderBarStyle, DefaultHeaderBar } from './HeaderBar';
diff --git a/gui/src/renderer/components/ConnectionPanel.tsx b/gui/src/renderer/components/ConnectionPanel.tsx
index 8564bbe417..b6e14f21d9 100644
--- a/gui/src/renderer/components/ConnectionPanel.tsx
+++ b/gui/src/renderer/components/ConnectionPanel.tsx
@@ -1,6 +1,7 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import {
ProxyType,
diff --git a/gui/src/renderer/components/ConnectionPanelDisclosure.tsx b/gui/src/renderer/components/ConnectionPanelDisclosure.tsx
index 3d5db7eea1..bb6bdc988c 100644
--- a/gui/src/renderer/components/ConnectionPanelDisclosure.tsx
+++ b/gui/src/renderer/components/ConnectionPanelDisclosure.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { normalText } from './common-styles';
import ImageView from './ImageView';
diff --git a/gui/src/renderer/components/CustomDnsSettings.tsx b/gui/src/renderer/components/CustomDnsSettings.tsx
index 287ed58a4b..8c06ae8029 100644
--- a/gui/src/renderer/components/CustomDnsSettings.tsx
+++ b/gui/src/renderer/components/CustomDnsSettings.tsx
@@ -1,5 +1,6 @@
import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
import { sprintf } from 'sprintf-js';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import { useAppContext } from '../context';
diff --git a/gui/src/renderer/components/CustomDnsSettingsStyles.tsx b/gui/src/renderer/components/CustomDnsSettingsStyles.tsx
index 1973a453b1..b8ec59ec36 100644
--- a/gui/src/renderer/components/CustomDnsSettingsStyles.tsx
+++ b/gui/src/renderer/components/CustomDnsSettingsStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as Cell from './cell';
import ImageView from './ImageView';
diff --git a/gui/src/renderer/components/CustomScrollbars.tsx b/gui/src/renderer/components/CustomScrollbars.tsx
index ad471e8c67..7acabeaeab 100644
--- a/gui/src/renderer/components/CustomScrollbars.tsx
+++ b/gui/src/renderer/components/CustomScrollbars.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { MacOsScrollbarVisibility } from '../../shared/ipc-schema';
import { Scheduler } from '../../shared/scheduler';
import { useSelector } from '../redux/store';
diff --git a/gui/src/renderer/components/DeviceRevokedView.tsx b/gui/src/renderer/components/DeviceRevokedView.tsx
index f7a41d6a41..74d4c0fd53 100644
--- a/gui/src/renderer/components/DeviceRevokedView.tsx
+++ b/gui/src/renderer/components/DeviceRevokedView.tsx
@@ -1,15 +1,16 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import { useAppContext } from '../context';
import { useSelector } from '../redux/store';
import * as AppButton from './AppButton';
+import { bigText, smallText } from './common-styles';
import CustomScrollbars from './CustomScrollbars';
import { calculateHeaderBarStyle, DefaultHeaderBar } from './HeaderBar';
-import { Container } from './Layout';
import ImageView from './ImageView';
+import { Container } from './Layout';
import { Layout } from './Layout';
-import { bigText, smallText } from './common-styles';
export const StyledHeader = styled(DefaultHeaderBar)({
flex: 0,
diff --git a/gui/src/renderer/components/ErrorBoundary.tsx b/gui/src/renderer/components/ErrorBoundary.tsx
index e3fdfdd6f6..7014175ffa 100644
--- a/gui/src/renderer/components/ErrorBoundary.tsx
+++ b/gui/src/renderer/components/ErrorBoundary.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import styled from 'styled-components';
+
import { supportEmail } from '../../config.json';
import { messages } from '../../shared/gettext';
import log from '../../shared/logging';
diff --git a/gui/src/renderer/components/ErrorView.tsx b/gui/src/renderer/components/ErrorView.tsx
index b233b46ede..527b982860 100644
--- a/gui/src/renderer/components/ErrorView.tsx
+++ b/gui/src/renderer/components/ErrorView.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { HeaderBarSettingsButton } from './HeaderBar';
import ImageView from './ImageView';
diff --git a/gui/src/renderer/components/ExpiredAccountAddTime.tsx b/gui/src/renderer/components/ExpiredAccountAddTime.tsx
index 47939b8c65..276af92e26 100644
--- a/gui/src/renderer/components/ExpiredAccountAddTime.tsx
+++ b/gui/src/renderer/components/ExpiredAccountAddTime.tsx
@@ -1,8 +1,9 @@
import { useCallback } from 'react';
-import { useSelector } from '../redux/store';
+import { useParams } from 'react-router';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
-import { links, colors } from '../../config.json';
+
+import { colors, links } from '../../config.json';
import { formatDate } from '../../shared/account-expiry';
import { formatRelativeDate } from '../../shared/date-helper';
import { messages } from '../../shared/gettext';
@@ -11,6 +12,7 @@ import useActions from '../lib/actionsHook';
import { transitions, useHistory } from '../lib/history';
import { generateRoutePath, RoutePath } from '../lib/routes';
import account from '../redux/account/actions';
+import { useSelector } from '../redux/store';
import * as AppButton from './AppButton';
import { AriaDescribed, AriaDescription, AriaDescriptionGroup } from './AriaGroup';
import { hugeText, tinyText } from './common-styles';
@@ -24,7 +26,6 @@ import {
RedeemVoucherResponse,
RedeemVoucherSubmitButton,
} from './RedeemVoucher';
-import { useParams } from 'react-router';
export const StyledHeader = styled(DefaultHeaderBar)({
flex: 0,
diff --git a/gui/src/renderer/components/ExpiredAccountErrorView.tsx b/gui/src/renderer/components/ExpiredAccountErrorView.tsx
index 8b2439e406..4367881fad 100644
--- a/gui/src/renderer/components/ExpiredAccountErrorView.tsx
+++ b/gui/src/renderer/components/ExpiredAccountErrorView.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
+
import { links } from '../../config.json';
import { AccountToken, TunnelState } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/ExpiredAccountErrorViewStyles.tsx b/gui/src/renderer/components/ExpiredAccountErrorViewStyles.tsx
index 293604efe6..c1edce3599 100644
--- a/gui/src/renderer/components/ExpiredAccountErrorViewStyles.tsx
+++ b/gui/src/renderer/components/ExpiredAccountErrorViewStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import AccountTokenLabel from './AccountTokenLabel';
import * as AppButton from './AppButton';
diff --git a/gui/src/renderer/components/FilterByProvider.tsx b/gui/src/renderer/components/FilterByProvider.tsx
index 24aba7a097..335d8597d8 100644
--- a/gui/src/renderer/components/FilterByProvider.tsx
+++ b/gui/src/renderer/components/FilterByProvider.tsx
@@ -1,5 +1,6 @@
import { useCallback, useMemo, useState } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import { useAppContext } from '../context';
diff --git a/gui/src/renderer/components/Focus.tsx b/gui/src/renderer/components/Focus.tsx
index 85c2c307e4..c29cbe653e 100644
--- a/gui/src/renderer/components/Focus.tsx
+++ b/gui/src/renderer/components/Focus.tsx
@@ -2,6 +2,7 @@ import React, { useImperativeHandle, useState } from 'react';
import { useLocation } from 'react-router';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { messages } from '../../shared/gettext';
const FOCUS_FALLBACK_CLASS = 'focus-fallback';
diff --git a/gui/src/renderer/components/FormattableTextInput.tsx b/gui/src/renderer/components/FormattableTextInput.tsx
index e1ea604fb9..133a6692e0 100644
--- a/gui/src/renderer/components/FormattableTextInput.tsx
+++ b/gui/src/renderer/components/FormattableTextInput.tsx
@@ -1,4 +1,5 @@
import React, { useCallback, useEffect, useRef } from 'react';
+
import { useCombinedRefs } from '../lib/utilityHooks';
interface IFormattableTextInputProps extends React.InputHTMLAttributes<HTMLInputElement> {
diff --git a/gui/src/renderer/components/HeaderBar.tsx b/gui/src/renderer/components/HeaderBar.tsx
index 15ec961400..ab0284cfaf 100644
--- a/gui/src/renderer/components/HeaderBar.tsx
+++ b/gui/src/renderer/components/HeaderBar.tsx
@@ -1,14 +1,15 @@
import React, { useCallback } from 'react';
import { useSelector } from 'react-redux';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { TunnelState } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
import { useHistory } from '../lib/history';
+import { RoutePath } from '../lib/routes';
import { IReduxState } from '../redux/store';
import { FocusFallback } from './Focus';
import ImageView from './ImageView';
-import { RoutePath } from '../lib/routes';
export enum HeaderBarStyle {
default = 'default',
diff --git a/gui/src/renderer/components/KeyboardNavigation.tsx b/gui/src/renderer/components/KeyboardNavigation.tsx
index 6b3851a49f..d098adc2b7 100644
--- a/gui/src/renderer/components/KeyboardNavigation.tsx
+++ b/gui/src/renderer/components/KeyboardNavigation.tsx
@@ -1,5 +1,6 @@
import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react';
import { useLocation } from 'react-router';
+
import { useHistory } from '../lib/history';
import { disableDismissForRoutes, RoutePath } from '../lib/routes';
diff --git a/gui/src/renderer/components/Layout.tsx b/gui/src/renderer/components/Layout.tsx
index f868c7671a..500084e5b1 100644
--- a/gui/src/renderer/components/Layout.tsx
+++ b/gui/src/renderer/components/Layout.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import HeaderBar from './HeaderBar';
diff --git a/gui/src/renderer/components/List.tsx b/gui/src/renderer/components/List.tsx
index b78577eac1..2d4f73b7f1 100644
--- a/gui/src/renderer/components/List.tsx
+++ b/gui/src/renderer/components/List.tsx
@@ -1,4 +1,5 @@
import { useCallback, useEffect, useRef, useState } from 'react';
+
import { Scheduler } from '../../shared/scheduler';
import Accordion from './Accordion';
diff --git a/gui/src/renderer/components/LocationList.tsx b/gui/src/renderer/components/LocationList.tsx
index 3fda5e0f49..50419bc838 100644
--- a/gui/src/renderer/components/LocationList.tsx
+++ b/gui/src/renderer/components/LocationList.tsx
@@ -1,6 +1,7 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import {
compareRelayLocation,
@@ -10,8 +11,8 @@ import {
} from '../../shared/daemon-rpc-types';
import { messages, relayLocations } from '../../shared/gettext';
import {
- IRelayLocationRedux,
IRelayLocationCityRedux,
+ IRelayLocationRedux,
IRelayLocationRelayRedux,
} from '../redux/settings/reducers';
import * as Cell from './cell';
diff --git a/gui/src/renderer/components/LocationRow.tsx b/gui/src/renderer/components/LocationRow.tsx
index 207c5900e8..38c0db4cfd 100644
--- a/gui/src/renderer/components/LocationRow.tsx
+++ b/gui/src/renderer/components/LocationRow.tsx
@@ -1,6 +1,7 @@
import React, { useCallback, useRef } from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { compareRelayLocation, RelayLocation } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/Locations.tsx b/gui/src/renderer/components/Locations.tsx
index 901d27c9ec..4f7fadfb5d 100644
--- a/gui/src/renderer/components/Locations.tsx
+++ b/gui/src/renderer/components/Locations.tsx
@@ -1,4 +1,5 @@
import * as React from 'react';
+
import { RelayLocation } from '../../shared/daemon-rpc-types';
import { IRelayLocationRedux } from '../redux/settings/reducers';
import LocationList, {
diff --git a/gui/src/renderer/components/Login.tsx b/gui/src/renderer/components/Login.tsx
index ab93e1d6ac..d9ae7f105f 100644
--- a/gui/src/renderer/components/Login.tsx
+++ b/gui/src/renderer/components/Login.tsx
@@ -1,10 +1,17 @@
import React, { useCallback } from 'react';
import { sprintf } from 'sprintf-js';
+
import { colors } from '../../config.json';
+import { AccountToken } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
+import { useAppContext } from '../context';
import { formatAccountToken } from '../lib/account';
+import { formatMarkdown } from '../markdown-formatter';
+import { LoginState } from '../redux/account/reducers';
+import { useSelector } from '../redux/store';
import Accordion from './Accordion';
import * as AppButton from './AppButton';
+import { AriaControlGroup, AriaControlled, AriaControls } from './AriaGroup';
import { Brand, HeaderBarSettingsButton } from './HeaderBar';
import ImageView from './ImageView';
import { Container, Header, Layout } from './Layout';
@@ -33,13 +40,6 @@ import {
StyledTopInfo,
} from './LoginStyles';
-import { AccountToken } from '../../shared/daemon-rpc-types';
-import { LoginState } from '../redux/account/reducers';
-import { AriaControlGroup, AriaControlled, AriaControls } from './AriaGroup';
-import { useSelector } from '../redux/store';
-import { useAppContext } from '../context';
-import { formatMarkdown } from '../markdown-formatter';
-
interface IProps {
accountToken?: AccountToken;
accountHistory?: AccountToken;
diff --git a/gui/src/renderer/components/LoginStyles.tsx b/gui/src/renderer/components/LoginStyles.tsx
index f3302a397b..dcfc85c6c3 100644
--- a/gui/src/renderer/components/LoginStyles.tsx
+++ b/gui/src/renderer/components/LoginStyles.tsx
@@ -1,9 +1,10 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
-import ImageView from './ImageView';
import * as Cell from './cell';
import { hugeText, largeText, smallText, tinyText } from './common-styles';
import FormattableTextInput from './FormattableTextInput';
+import ImageView from './ImageView';
export const StyledAccountDropdownContainer = styled.ul({
display: 'flex',
diff --git a/gui/src/renderer/components/MacOsScrollbarDetection.tsx b/gui/src/renderer/components/MacOsScrollbarDetection.tsx
index 69de63cc6a..79910c3cdd 100644
--- a/gui/src/renderer/components/MacOsScrollbarDetection.tsx
+++ b/gui/src/renderer/components/MacOsScrollbarDetection.tsx
@@ -1,9 +1,10 @@
import React, { useEffect, useRef } from 'react';
import styled from 'styled-components';
+
+import { MacOsScrollbarVisibility } from '../../shared/ipc-schema';
import useActions from '../lib/actionsHook';
-import userInterface from '../redux/userinterface/actions';
import { useSelector } from '../redux/store';
-import { MacOsScrollbarVisibility } from '../../shared/ipc-schema';
+import userInterface from '../redux/userinterface/actions';
const StyledContainer = styled.div({
position: 'absolute',
diff --git a/gui/src/renderer/components/MainView.tsx b/gui/src/renderer/components/MainView.tsx
index 56878fb521..ea678aa061 100644
--- a/gui/src/renderer/components/MainView.tsx
+++ b/gui/src/renderer/components/MainView.tsx
@@ -1,10 +1,11 @@
import { useEffect, useState } from 'react';
+
import { hasExpired } from '../../shared/account-expiry';
-import { useSelector } from '../redux/store';
import ConnectPage from '../containers/ConnectPage';
import ExpiredAccountErrorViewContainer from '../containers/ExpiredAccountErrorViewContainer';
import { useHistory } from '../lib/history';
import { RoutePath } from '../lib/routes';
+import { useSelector } from '../redux/store';
export default function MainView() {
const history = useHistory();
diff --git a/gui/src/renderer/components/Map.tsx b/gui/src/renderer/components/Map.tsx
index ddab985992..acfe0f3000 100644
--- a/gui/src/renderer/components/Map.tsx
+++ b/gui/src/renderer/components/Map.tsx
@@ -1,4 +1,5 @@
import * as React from 'react';
+
import SvgMap from './SvgMap';
// Higher zoom level is more zoomed in
diff --git a/gui/src/renderer/components/Marquee.tsx b/gui/src/renderer/components/Marquee.tsx
index 7a981b4aef..778a47cefb 100644
--- a/gui/src/renderer/components/Marquee.tsx
+++ b/gui/src/renderer/components/Marquee.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import styled from 'styled-components';
+
import { Scheduler } from '../../shared/scheduler';
const Container = styled.div({
diff --git a/gui/src/renderer/components/Modal.tsx b/gui/src/renderer/components/Modal.tsx
index c9cb5e6c8b..f6fa9f25b4 100644
--- a/gui/src/renderer/components/Modal.tsx
+++ b/gui/src/renderer/components/Modal.tsx
@@ -1,10 +1,11 @@
import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
import ReactDOM from 'react-dom';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import log from '../../shared/logging';
-import CustomScrollbars from './CustomScrollbars';
import { tinyText } from './common-styles';
+import CustomScrollbars from './CustomScrollbars';
import ImageView from './ImageView';
import { BackAction } from './KeyboardNavigation';
diff --git a/gui/src/renderer/components/MultiButton.tsx b/gui/src/renderer/components/MultiButton.tsx
index a9f1d09dee..e1fa3d379e 100644
--- a/gui/src/renderer/components/MultiButton.tsx
+++ b/gui/src/renderer/components/MultiButton.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import styled from 'styled-components';
+
import * as AppButton from './AppButton';
const SIDE_BUTTON_WIDTH = 50;
diff --git a/gui/src/renderer/components/NavigationBar.tsx b/gui/src/renderer/components/NavigationBar.tsx
index 064e58817d..2628f484eb 100644
--- a/gui/src/renderer/components/NavigationBar.tsx
+++ b/gui/src/renderer/components/NavigationBar.tsx
@@ -1,4 +1,5 @@
import React, { useCallback, useContext, useLayoutEffect, useRef } from 'react';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import useActions from '../lib/actionsHook';
@@ -12,8 +13,8 @@ import {
StyledBackBarItemButton,
StyledBackBarItemIcon,
StyledNavigationBar,
- StyledNavigationItems,
StyledNavigationBarSeparator,
+ StyledNavigationItems,
StyledTitleBarItemLabel,
} from './NavigationBarStyles';
diff --git a/gui/src/renderer/components/NavigationBarStyles.tsx b/gui/src/renderer/components/NavigationBarStyles.tsx
index 973709d90f..e3b879908e 100644
--- a/gui/src/renderer/components/NavigationBarStyles.tsx
+++ b/gui/src/renderer/components/NavigationBarStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { normalText } from './common-styles';
import ImageView from './ImageView';
diff --git a/gui/src/renderer/components/NotificationArea.tsx b/gui/src/renderer/components/NotificationArea.tsx
index de8b547087..4d59109ea8 100644
--- a/gui/src/renderer/components/NotificationArea.tsx
+++ b/gui/src/renderer/components/NotificationArea.tsx
@@ -1,5 +1,6 @@
import { useCallback } from 'react';
import { useSelector } from 'react-redux';
+
import log from '../../shared/logging';
import {
BlockWhenDisconnectedNotificationProvider,
diff --git a/gui/src/renderer/components/NotificationBanner.tsx b/gui/src/renderer/components/NotificationBanner.tsx
index 5c6e094bda..e26b42ea26 100644
--- a/gui/src/renderer/components/NotificationBanner.tsx
+++ b/gui/src/renderer/components/NotificationBanner.tsx
@@ -1,5 +1,6 @@
import React, { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import { InAppNotificationIndicatorType } from '../../shared/notifications/notification';
diff --git a/gui/src/renderer/components/OpenVPNSettings.tsx b/gui/src/renderer/components/OpenVPNSettings.tsx
index d32a60ed36..fdbbd2305e 100644
--- a/gui/src/renderer/components/OpenVPNSettings.tsx
+++ b/gui/src/renderer/components/OpenVPNSettings.tsx
@@ -1,11 +1,15 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { BridgeState, RelayProtocol } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
+import { formatMarkdown } from '../markdown-formatter';
import * as AppButton from './AppButton';
import { AriaDescription, AriaInput, AriaInputGroup, AriaLabel } from './AriaGroup';
import * as Cell from './cell';
+import Selector, { ISelectorItem } from './cell/Selector';
+import { BackAction } from './KeyboardNavigation';
import { Layout, SettingsContainer } from './Layout';
import { ModalAlert, ModalAlertType } from './Modal';
import {
@@ -15,10 +19,7 @@ import {
NavigationScrollbars,
TitleBarItem,
} from './NavigationBar';
-import Selector, { ISelectorItem } from './cell/Selector';
import SettingsHeader, { HeaderTitle } from './SettingsHeader';
-import { formatMarkdown } from '../markdown-formatter';
-import { BackAction } from './KeyboardNavigation';
const MIN_MSSFIX_VALUE = 1000;
const MAX_MSSFIX_VALUE = 1450;
diff --git a/gui/src/renderer/components/Preferences.tsx b/gui/src/renderer/components/Preferences.tsx
index 5cdd110023..9213c7c7e9 100644
--- a/gui/src/renderer/components/Preferences.tsx
+++ b/gui/src/renderer/components/Preferences.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
+
import { colors } from '../../config.json';
import { IDnsOptions } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/PreferencesStyles.tsx b/gui/src/renderer/components/PreferencesStyles.tsx
index f4fa114469..704934769a 100644
--- a/gui/src/renderer/components/PreferencesStyles.tsx
+++ b/gui/src/renderer/components/PreferencesStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { Container } from './Layout';
diff --git a/gui/src/renderer/components/RedeemVoucher.tsx b/gui/src/renderer/components/RedeemVoucher.tsx
index ef14ef77a9..98cba482aa 100644
--- a/gui/src/renderer/components/RedeemVoucher.tsx
+++ b/gui/src/renderer/components/RedeemVoucher.tsx
@@ -1,6 +1,6 @@
import React, { useCallback, useContext, useState } from 'react';
-import { useSelector } from '../redux/store';
import { sprintf } from 'sprintf-js';
+
import { formatDate } from '../../shared/account-expiry';
import { VoucherResponse } from '../../shared/daemon-rpc-types';
import { formatRelativeDate } from '../../shared/date-helper';
@@ -8,6 +8,7 @@ import { messages } from '../../shared/gettext';
import { useAppContext } from '../context';
import useActions from '../lib/actionsHook';
import accountActions from '../redux/account/actions';
+import { useSelector } from '../redux/store';
import * as AppButton from './AppButton';
import ImageView from './ImageView';
import { ModalAlert } from './Modal';
diff --git a/gui/src/renderer/components/RedeemVoucherStyles.tsx b/gui/src/renderer/components/RedeemVoucherStyles.tsx
index 616fe098fd..2ef0cc2634 100644
--- a/gui/src/renderer/components/RedeemVoucherStyles.tsx
+++ b/gui/src/renderer/components/RedeemVoucherStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { normalText, smallText, tinyText } from './common-styles';
import FormattableTextInput from './FormattableTextInput';
diff --git a/gui/src/renderer/components/RelayStatusIndicator.tsx b/gui/src/renderer/components/RelayStatusIndicator.tsx
index 9148ca8797..7d90e1491d 100644
--- a/gui/src/renderer/components/RelayStatusIndicator.tsx
+++ b/gui/src/renderer/components/RelayStatusIndicator.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as Cell from './cell';
diff --git a/gui/src/renderer/components/ScopeBar.tsx b/gui/src/renderer/components/ScopeBar.tsx
index dbc5739b2c..be5420b0b5 100644
--- a/gui/src/renderer/components/ScopeBar.tsx
+++ b/gui/src/renderer/components/ScopeBar.tsx
@@ -1,5 +1,6 @@
import React, { useCallback, useEffect, useState } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { smallText } from './common-styles';
diff --git a/gui/src/renderer/components/SecuredLabel.tsx b/gui/src/renderer/components/SecuredLabel.tsx
index 4e53ae8ec6..06be4f524f 100644
--- a/gui/src/renderer/components/SecuredLabel.tsx
+++ b/gui/src/renderer/components/SecuredLabel.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/SelectLanguage.tsx b/gui/src/renderer/components/SelectLanguage.tsx
index a65a02153b..f0e5ffb624 100644
--- a/gui/src/renderer/components/SelectLanguage.tsx
+++ b/gui/src/renderer/components/SelectLanguage.tsx
@@ -1,9 +1,12 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { messages } from '../../shared/gettext';
import { AriaInputGroup } from './AriaGroup';
+import Selector, { ISelectorItem } from './cell/Selector';
import { CustomScrollbarsRef } from './CustomScrollbars';
+import { BackAction } from './KeyboardNavigation';
import { Container, Layout } from './Layout';
import {
NavigationBar,
@@ -12,9 +15,7 @@ import {
NavigationScrollbars,
TitleBarItem,
} from './NavigationBar';
-import Selector, { ISelectorItem } from './cell/Selector';
import SettingsHeader, { HeaderTitle } from './SettingsHeader';
-import { BackAction } from './KeyboardNavigation';
interface IProps {
preferredLocale: string;
diff --git a/gui/src/renderer/components/SelectLocation.tsx b/gui/src/renderer/components/SelectLocation.tsx
index 48d50084dc..3d64906a78 100644
--- a/gui/src/renderer/components/SelectLocation.tsx
+++ b/gui/src/renderer/components/SelectLocation.tsx
@@ -1,19 +1,21 @@
import React from 'react';
import { sprintf } from 'sprintf-js';
+
import { colors } from '../../config.json';
import { LiftedConstraint, RelayLocation, TunnelProtocol } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
import { IRelayLocationRedux } from '../redux/settings/reducers';
import BridgeLocations, { SpecialBridgeLocationType } from './BridgeLocations';
import { CustomScrollbarsRef } from './CustomScrollbars';
-import { EntryLocations, ExitLocations } from './Locations';
import ImageView from './ImageView';
+import { BackAction } from './KeyboardNavigation';
import { Layout } from './Layout';
import LocationList, {
DisabledReason,
LocationSelection,
LocationSelectionType,
} from './LocationList';
+import { EntryLocations, ExitLocations } from './Locations';
import {
NavigationBar,
NavigationContainer,
@@ -23,21 +25,20 @@ import {
} from './NavigationBar';
import { ScopeBarItem } from './ScopeBar';
import {
+ StyledClearProvidersButton,
StyledContainer,
StyledContent,
- StyledFilterIconButton,
+ StyledFilterByProviderButton,
StyledFilterContainer,
+ StyledFilterIconButton,
StyledFilterMenu,
StyledNavigationBarAttachment,
- StyledScopeBar,
- StyledFilterByProviderButton,
- StyledProvidersCount,
StyledProviderCountRow,
- StyledClearProvidersButton,
+ StyledProvidersCount,
+ StyledScopeBar,
StyledSettingsHeader,
} from './SelectLocationStyles';
import { HeaderSubTitle, HeaderTitle } from './SettingsHeader';
-import { BackAction } from './KeyboardNavigation';
interface IProps {
locale: string;
diff --git a/gui/src/renderer/components/SelectLocationStyles.tsx b/gui/src/renderer/components/SelectLocationStyles.tsx
index de09b8b872..4ace3b15cc 100644
--- a/gui/src/renderer/components/SelectLocationStyles.tsx
+++ b/gui/src/renderer/components/SelectLocationStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { tinyText } from './common-styles';
import { Container } from './Layout';
diff --git a/gui/src/renderer/components/Settings.tsx b/gui/src/renderer/components/Settings.tsx
index 2d7abb19cf..2deb1ee0e7 100644
--- a/gui/src/renderer/components/Settings.tsx
+++ b/gui/src/renderer/components/Settings.tsx
@@ -1,10 +1,13 @@
import * as React from 'react';
+
import { colors, links } from '../../config.json';
-import { hasExpired, formatRemainingTime } from '../../shared/account-expiry';
+import { formatRemainingTime, hasExpired } from '../../shared/account-expiry';
import { messages } from '../../shared/gettext';
import History from '../lib/history';
+import { LoginState } from '../redux/account/reducers';
import { AriaDescribed, AriaDescription, AriaDescriptionGroup } from './AriaGroup';
import * as Cell from './cell';
+import { BackAction } from './KeyboardNavigation';
import { Layout } from './Layout';
import { NavigationBar, NavigationContainer, NavigationItems, TitleBarItem } from './NavigationBar';
import SettingsHeader, { HeaderTitle } from './SettingsHeader';
@@ -19,9 +22,6 @@ import {
StyledSettingsContent,
} from './SettingsStyles';
-import { LoginState } from '../redux/account/reducers';
-import { BackAction } from './KeyboardNavigation';
-
export interface IProps {
preferredLocaleDisplayName: string;
loginState: LoginState;
diff --git a/gui/src/renderer/components/SettingsHeader.tsx b/gui/src/renderer/components/SettingsHeader.tsx
index bf7dea7e3e..01e62e50d0 100644
--- a/gui/src/renderer/components/SettingsHeader.tsx
+++ b/gui/src/renderer/components/SettingsHeader.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { hugeText, tinyText } from './common-styles';
diff --git a/gui/src/renderer/components/SettingsStyles.tsx b/gui/src/renderer/components/SettingsStyles.tsx
index 4061d1cded..88a4c8258a 100644
--- a/gui/src/renderer/components/SettingsStyles.tsx
+++ b/gui/src/renderer/components/SettingsStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as AppButton from './AppButton';
import * as Cell from './cell';
diff --git a/gui/src/renderer/components/SplitTunnelingSettings.tsx b/gui/src/renderer/components/SplitTunnelingSettings.tsx
index 3cabb8d3c6..c77673953b 100644
--- a/gui/src/renderer/components/SplitTunnelingSettings.tsx
+++ b/gui/src/renderer/components/SplitTunnelingSettings.tsx
@@ -1,53 +1,54 @@
import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
import { useSelector } from 'react-redux';
import { sprintf } from 'sprintf-js';
+
import { colors } from '../../config.json';
-import { messages } from '../../shared/gettext';
import {
IApplication,
ILinuxSplitTunnelingApplication,
IWindowsApplication,
} from '../../shared/application-types';
+import { messages } from '../../shared/gettext';
import { useAppContext } from '../context';
import { useHistory } from '../lib/history';
import { useAsyncEffect } from '../lib/utilityHooks';
+import { formatMarkdown } from '../markdown-formatter';
import { IReduxState } from '../redux/store';
import Accordion from './Accordion';
import * as AppButton from './AppButton';
import * as Cell from './cell';
import { CustomScrollbarsRef } from './CustomScrollbars';
import ImageView from './ImageView';
+import { BackAction } from './KeyboardNavigation';
import { Layout } from './Layout';
import List from './List';
import { ModalAlert, ModalAlertType } from './Modal';
import { NavigationBar, NavigationContainer, NavigationItems, TitleBarItem } from './NavigationBar';
import SettingsHeader, { HeaderSubTitle, HeaderTitle } from './SettingsHeader';
import {
- StyledPageCover,
- StyledContainer,
- StyledNavigationScrollbars,
- StyledContent,
+ StyledActionIcon,
+ StyledBrowseButton,
StyledCellButton,
- StyledIcon,
StyledCellLabel,
- StyledIconPlaceholder,
- StyledSpinnerRow,
- StyledBrowseButton,
- StyledSearchInput,
+ StyledCellWarningIcon,
StyledClearButton,
- StyledSearchIcon,
StyledClearIcon,
+ StyledContainer,
+ StyledContent,
+ StyledHeaderTitle,
+ StyledHeaderTitleContainer,
+ StyledIcon,
+ StyledIconPlaceholder,
+ StyledListContainer,
+ StyledNavigationScrollbars,
+ StyledNoResult,
StyledNoResultText,
+ StyledPageCover,
StyledSearchContainer,
- StyledNoResult,
- StyledActionIcon,
- StyledCellWarningIcon,
- StyledListContainer,
- StyledHeaderTitleContainer,
- StyledHeaderTitle,
+ StyledSearchIcon,
+ StyledSearchInput,
+ StyledSpinnerRow,
} from './SplitTunnelingSettingsStyles';
-import { formatMarkdown } from '../markdown-formatter';
-import { BackAction } from './KeyboardNavigation';
import Switch from './Switch';
export default function SplitTunneling() {
diff --git a/gui/src/renderer/components/SplitTunnelingSettingsStyles.tsx b/gui/src/renderer/components/SplitTunnelingSettingsStyles.tsx
index b33c814545..1c946d8c72 100644
--- a/gui/src/renderer/components/SplitTunnelingSettingsStyles.tsx
+++ b/gui/src/renderer/components/SplitTunnelingSettingsStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as AppButton from './AppButton';
import * as Cell from './cell';
diff --git a/gui/src/renderer/components/Support.tsx b/gui/src/renderer/components/Support.tsx
index 2246f1110b..9b445e25c9 100644
--- a/gui/src/renderer/components/Support.tsx
+++ b/gui/src/renderer/components/Support.tsx
@@ -1,9 +1,13 @@
import * as React from 'react';
+
import { links } from '../../config.json';
+import { AccountToken } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
+import { ISupportReportForm } from '../redux/support/actions';
import * as AppButton from './AppButton';
import { AriaDescribed, AriaDescription, AriaDescriptionGroup } from './AriaGroup';
import ImageView from './ImageView';
+import { BackAction } from './KeyboardNavigation';
import { Layout } from './Layout';
import { ModalAlert, ModalAlertType } from './Modal';
import { NavigationBar, NavigationItems, TitleBarItem } from './NavigationBar';
@@ -19,17 +23,13 @@ import {
StyledForm,
StyledFormEmailRow,
StyledFormMessageRow,
+ StyledMessageInput,
StyledSendStatus,
StyledSentMessage,
StyledStatusIcon,
StyledThanks,
- StyledMessageInput,
} from './SupportStyles';
-import { AccountToken } from '../../shared/daemon-rpc-types';
-import { ISupportReportForm } from '../redux/support/actions';
-import { BackAction } from './KeyboardNavigation';
-
enum SendState {
initial,
confirm,
diff --git a/gui/src/renderer/components/SupportStyles.tsx b/gui/src/renderer/components/SupportStyles.tsx
index b3de7ebcb1..bc5166297c 100644
--- a/gui/src/renderer/components/SupportStyles.tsx
+++ b/gui/src/renderer/components/SupportStyles.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import * as AppButton from './AppButton';
import { hugeText, smallText } from './common-styles';
diff --git a/gui/src/renderer/components/SvgMap.tsx b/gui/src/renderer/components/SvgMap.tsx
index b72ea36bbd..8b2c2deaf4 100644
--- a/gui/src/renderer/components/SvgMap.tsx
+++ b/gui/src/renderer/components/SvgMap.tsx
@@ -4,9 +4,8 @@ import React, { useCallback, useEffect, useMemo, useRef } from 'react';
import { ComposableMap, Geographies, Geography, Marker } from 'react-simple-maps';
import geographyData from '../../../assets/geo/geometry.json';
-import statesProvincesLinesData from '../../../assets/geo/states-provinces-lines.json';
-
import geometryTreeData from '../../../assets/geo/geometry.rbush.json';
+import statesProvincesLinesData from '../../../assets/geo/states-provinces-lines.json';
import statesProvincesLinesTreeData from '../../../assets/geo/states-provinces-lines.rbush.json';
interface IGeometryLeaf extends rbush.BBox {
diff --git a/gui/src/renderer/components/Switch.tsx b/gui/src/renderer/components/Switch.tsx
index 0a2c28147b..cb9e86b219 100644
--- a/gui/src/renderer/components/Switch.tsx
+++ b/gui/src/renderer/components/Switch.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
interface IProps {
diff --git a/gui/src/renderer/components/TooManyDevices.tsx b/gui/src/renderer/components/TooManyDevices.tsx
index 84c33d28ed..d1401ed33b 100644
--- a/gui/src/renderer/components/TooManyDevices.tsx
+++ b/gui/src/renderer/components/TooManyDevices.tsx
@@ -1,6 +1,7 @@
import { useCallback, useEffect } from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { colors } from '../../config.json';
import { IDevice } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
diff --git a/gui/src/renderer/components/TransitionContainer.tsx b/gui/src/renderer/components/TransitionContainer.tsx
index 4dc354d924..e360e6838e 100644
--- a/gui/src/renderer/components/TransitionContainer.tsx
+++ b/gui/src/renderer/components/TransitionContainer.tsx
@@ -1,5 +1,6 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { ITransitionSpecification } from '../lib/history';
interface ITransitioningViewProps {
diff --git a/gui/src/renderer/components/TunnelControl.tsx b/gui/src/renderer/components/TunnelControl.tsx
index af6680139d..db91e9558f 100644
--- a/gui/src/renderer/components/TunnelControl.tsx
+++ b/gui/src/renderer/components/TunnelControl.tsx
@@ -1,6 +1,7 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { TunnelState } from '../../shared/daemon-rpc-types';
import { messages, relayLocations } from '../../shared/gettext';
import ConnectionPanelContainer from '../containers/ConnectionPanelContainer';
diff --git a/gui/src/renderer/components/WireguardSettings.tsx b/gui/src/renderer/components/WireguardSettings.tsx
index 8bec012986..1235735012 100644
--- a/gui/src/renderer/components/WireguardSettings.tsx
+++ b/gui/src/renderer/components/WireguardSettings.tsx
@@ -1,11 +1,14 @@
import * as React from 'react';
import { sprintf } from 'sprintf-js';
import styled from 'styled-components';
+
import { IpVersion } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
import * as AppButton from './AppButton';
import { AriaDescription, AriaInput, AriaInputGroup, AriaLabel } from './AriaGroup';
import * as Cell from './cell';
+import Selector, { ISelectorItem } from './cell/Selector';
+import { BackAction } from './KeyboardNavigation';
import { Layout, SettingsContainer } from './Layout';
import { ModalAlert, ModalAlertType } from './Modal';
import {
@@ -15,10 +18,8 @@ import {
NavigationScrollbars,
TitleBarItem,
} from './NavigationBar';
-import Selector, { ISelectorItem } from './cell/Selector';
import SettingsHeader, { HeaderTitle } from './SettingsHeader';
import Switch from './Switch';
-import { BackAction } from './KeyboardNavigation';
const MIN_WIREGUARD_MTU_VALUE = 1280;
const MAX_WIREGUARD_MTU_VALUE = 1420;
diff --git a/gui/src/renderer/components/cell/CellButton.tsx b/gui/src/renderer/components/cell/CellButton.tsx
index 1295b7783a..5a24cfe901 100644
--- a/gui/src/renderer/components/cell/CellButton.tsx
+++ b/gui/src/renderer/components/cell/CellButton.tsx
@@ -1,5 +1,6 @@
import React, { useContext } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
import { CellDisabledContext } from './Container';
import { CellSectionContext } from './Section';
diff --git a/gui/src/renderer/components/cell/Container.tsx b/gui/src/renderer/components/cell/Container.tsx
index 843180af76..6a2ef108c6 100644
--- a/gui/src/renderer/components/cell/Container.tsx
+++ b/gui/src/renderer/components/cell/Container.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
const StyledContainer = styled.div({
diff --git a/gui/src/renderer/components/cell/Footer.tsx b/gui/src/renderer/components/cell/Footer.tsx
index 87a899cae8..2cdf8aa8fa 100644
--- a/gui/src/renderer/components/cell/Footer.tsx
+++ b/gui/src/renderer/components/cell/Footer.tsx
@@ -1,4 +1,5 @@
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
import { tinyText } from '../common-styles';
diff --git a/gui/src/renderer/components/cell/Input.tsx b/gui/src/renderer/components/cell/Input.tsx
index 007ac9cdb6..81ba648338 100644
--- a/gui/src/renderer/components/cell/Input.tsx
+++ b/gui/src/renderer/components/cell/Input.tsx
@@ -1,12 +1,13 @@
import React, { useCallback, useContext, useEffect, useRef, useState } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
+import { useBoolean } from '../../lib/utilityHooks';
import { normalText } from '../common-styles';
-import { CellDisabledContext, Container } from './Container';
-import StandaloneSwitch from '../Switch';
import ImageView from '../ImageView';
-import { useBoolean } from '../../lib/utilityHooks';
import { BackAction } from '../KeyboardNavigation';
+import StandaloneSwitch from '../Switch';
+import { CellDisabledContext, Container } from './Container';
export const Switch = React.forwardRef(function SwitchT(
props: StandaloneSwitch['props'],
diff --git a/gui/src/renderer/components/cell/Label.tsx b/gui/src/renderer/components/cell/Label.tsx
index 5df99922fb..1288a94dfb 100644
--- a/gui/src/renderer/components/cell/Label.tsx
+++ b/gui/src/renderer/components/cell/Label.tsx
@@ -1,5 +1,6 @@
import React, { useContext } from 'react';
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
import { buttonText, tinyText } from '../common-styles';
import ImageView, { IImageViewProps } from '../ImageView';
diff --git a/gui/src/renderer/components/cell/Section.tsx b/gui/src/renderer/components/cell/Section.tsx
index b0978cf98e..41f57ee52c 100644
--- a/gui/src/renderer/components/cell/Section.tsx
+++ b/gui/src/renderer/components/cell/Section.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
import { buttonText } from '../common-styles';
diff --git a/gui/src/renderer/components/cell/Selector.tsx b/gui/src/renderer/components/cell/Selector.tsx
index 53ac9a15f4..5ea1687a1e 100644
--- a/gui/src/renderer/components/cell/Selector.tsx
+++ b/gui/src/renderer/components/cell/Selector.tsx
@@ -1,9 +1,10 @@
import * as React from 'react';
import styled from 'styled-components';
+
import { colors } from '../../../config.json';
import { AriaInput, AriaLabel } from '../AriaGroup';
-import * as Cell from '.';
import { normalText } from '../common-styles';
+import * as Cell from '.';
export interface ISelectorItem<T> {
label: string;
diff --git a/gui/src/renderer/components/common-styles.ts b/gui/src/renderer/components/common-styles.ts
index a5da3fcda0..641048d72d 100644
--- a/gui/src/renderer/components/common-styles.ts
+++ b/gui/src/renderer/components/common-styles.ts
@@ -1,4 +1,5 @@
import React from 'react';
+
import { colors } from '../../config.json';
export const openSans: React.CSSProperties = {
diff --git a/gui/src/renderer/containers/AccountPage.tsx b/gui/src/renderer/containers/AccountPage.tsx
index 2309c614fb..a813b12002 100644
--- a/gui/src/renderer/containers/AccountPage.tsx
+++ b/gui/src/renderer/containers/AccountPage.tsx
@@ -1,12 +1,12 @@
import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
+
import { links } from '../../config.json';
import Account from '../components/Account';
-
import withAppContext, { IAppContext } from '../context';
import { IHistoryProps, withHistory } from '../lib/history';
-import { IReduxState, ReduxDispatch } from '../redux/store';
import accountActions from '../redux/account/actions';
+import { IReduxState, ReduxDispatch } from '../redux/store';
const mapStateToProps = (state: IReduxState) => ({
deviceName: state.account.deviceName,
diff --git a/gui/src/renderer/containers/AdvancedSettingsPage.tsx b/gui/src/renderer/containers/AdvancedSettingsPage.tsx
index 0bc00ee204..203067f1af 100644
--- a/gui/src/renderer/containers/AdvancedSettingsPage.tsx
+++ b/gui/src/renderer/containers/AdvancedSettingsPage.tsx
@@ -1,9 +1,9 @@
import { connect } from 'react-redux';
+
import { TunnelProtocol } from '../../shared/daemon-rpc-types';
import log from '../../shared/logging';
import RelaySettingsBuilder from '../../shared/relay-settings-builder';
import AdvancedSettings from '../components/AdvancedSettings';
-
import withAppContext, { IAppContext } from '../context';
import { IHistoryProps, withHistory } from '../lib/history';
import { RoutePath } from '../lib/routes';
diff --git a/gui/src/renderer/containers/ConnectPage.tsx b/gui/src/renderer/containers/ConnectPage.tsx
index 9d507ede18..aeba16e5d0 100644
--- a/gui/src/renderer/containers/ConnectPage.tsx
+++ b/gui/src/renderer/containers/ConnectPage.tsx
@@ -1,5 +1,6 @@
import { connect } from 'react-redux';
import { sprintf } from 'sprintf-js';
+
import { messages, relayLocations } from '../../shared/gettext';
import log from '../../shared/logging';
import Connect from '../components/Connect';
diff --git a/gui/src/renderer/containers/ConnectionPanelContainer.tsx b/gui/src/renderer/containers/ConnectionPanelContainer.tsx
index bf8ac77660..f55fa8cacd 100644
--- a/gui/src/renderer/containers/ConnectionPanelContainer.tsx
+++ b/gui/src/renderer/containers/ConnectionPanelContainer.tsx
@@ -1,5 +1,6 @@
import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
+
import { ITunnelEndpoint, parseSocketAddress } from '../../shared/daemon-rpc-types';
import ConnectionPanel, {
IBridgeData,
diff --git a/gui/src/renderer/containers/ExpiredAccountErrorViewContainer.tsx b/gui/src/renderer/containers/ExpiredAccountErrorViewContainer.tsx
index dc5b12a40e..14cde1d3db 100644
--- a/gui/src/renderer/containers/ExpiredAccountErrorViewContainer.tsx
+++ b/gui/src/renderer/containers/ExpiredAccountErrorViewContainer.tsx
@@ -1,11 +1,11 @@
import { connect } from 'react-redux';
+
import log from '../../shared/logging';
import ExpiredAccountErrorView from '../components/ExpiredAccountErrorView';
-import { IHistoryProps, withHistory } from '../lib/history';
-
import withAppContext, { IAppContext } from '../context';
-import { IReduxState, ReduxDispatch } from '../redux/store';
+import { IHistoryProps, withHistory } from '../lib/history';
import { RoutePath } from '../lib/routes';
+import { IReduxState, ReduxDispatch } from '../redux/store';
const mapStateToProps = (state: IReduxState) => ({
accountToken: state.account.accountToken,
diff --git a/gui/src/renderer/containers/LoginPage.tsx b/gui/src/renderer/containers/LoginPage.tsx
index a6c494c601..1abfa863a2 100644
--- a/gui/src/renderer/containers/LoginPage.tsx
+++ b/gui/src/renderer/containers/LoginPage.tsx
@@ -1,5 +1,6 @@
import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
+
import Login from '../components/Login';
import withAppContext, { IAppContext } from '../context';
import accountActions from '../redux/account/actions';
diff --git a/gui/src/renderer/containers/OpenVPNSettingsPage.tsx b/gui/src/renderer/containers/OpenVPNSettingsPage.tsx
index e8033a2d70..ab42f4a137 100644
--- a/gui/src/renderer/containers/OpenVPNSettingsPage.tsx
+++ b/gui/src/renderer/containers/OpenVPNSettingsPage.tsx
@@ -1,9 +1,9 @@
import { connect } from 'react-redux';
+
import { BridgeState, RelayProtocol } from '../../shared/daemon-rpc-types';
import log from '../../shared/logging';
import RelaySettingsBuilder from '../../shared/relay-settings-builder';
import OpenVPNSettings, { BridgeModeAvailability } from '../components/OpenVPNSettings';
-
import withAppContext, { IAppContext } from '../context';
import { IHistoryProps, withHistory } from '../lib/history';
import { RelaySettingsRedux } from '../redux/settings/reducers';
diff --git a/gui/src/renderer/containers/PlatformWindowContainer.tsx b/gui/src/renderer/containers/PlatformWindowContainer.tsx
index e929836f7d..9652a54a6c 100644
--- a/gui/src/renderer/containers/PlatformWindowContainer.tsx
+++ b/gui/src/renderer/containers/PlatformWindowContainer.tsx
@@ -1,6 +1,6 @@
import { connect } from 'react-redux';
-import PlatformWindow from '../components/PlatformWindow';
+import PlatformWindow from '../components/PlatformWindow';
import { IReduxState } from '../redux/store';
const mapStateToProps = (state: IReduxState) => ({
diff --git a/gui/src/renderer/containers/PreferencesPage.tsx b/gui/src/renderer/containers/PreferencesPage.tsx
index d4176d1ca2..be2dce9373 100644
--- a/gui/src/renderer/containers/PreferencesPage.tsx
+++ b/gui/src/renderer/containers/PreferencesPage.tsx
@@ -1,4 +1,5 @@
import { connect } from 'react-redux';
+
import { IDnsOptions } from '../../shared/daemon-rpc-types';
import log from '../../shared/logging';
import Preferences from '../components/Preferences';
diff --git a/gui/src/renderer/containers/SelectLanguagePage.tsx b/gui/src/renderer/containers/SelectLanguagePage.tsx
index 1bd21c84dd..5a0f2f9d29 100644
--- a/gui/src/renderer/containers/SelectLanguagePage.tsx
+++ b/gui/src/renderer/containers/SelectLanguagePage.tsx
@@ -1,4 +1,5 @@
import { connect } from 'react-redux';
+
import SelectLanguage from '../components/SelectLanguage';
import withAppContext, { IAppContext } from '../context';
import { IHistoryProps, withHistory } from '../lib/history';
diff --git a/gui/src/renderer/containers/SelectLocationPage.tsx b/gui/src/renderer/containers/SelectLocationPage.tsx
index e6c2199820..d14323457e 100644
--- a/gui/src/renderer/containers/SelectLocationPage.tsx
+++ b/gui/src/renderer/containers/SelectLocationPage.tsx
@@ -1,4 +1,5 @@
import { connect } from 'react-redux';
+
import BridgeSettingsBuilder from '../../shared/bridge-settings-builder';
import { LiftedConstraint, RelayLocation } from '../../shared/daemon-rpc-types';
import log from '../../shared/logging';
diff --git a/gui/src/renderer/containers/SettingsPage.tsx b/gui/src/renderer/containers/SettingsPage.tsx
index 2bea17892b..58689e31d9 100644
--- a/gui/src/renderer/containers/SettingsPage.tsx
+++ b/gui/src/renderer/containers/SettingsPage.tsx
@@ -1,4 +1,5 @@
import { connect } from 'react-redux';
+
import Settings from '../components/Settings';
import withAppContext, { IAppContext } from '../context';
import { IHistoryProps, withHistory } from '../lib/history';
diff --git a/gui/src/renderer/containers/SupportPage.tsx b/gui/src/renderer/containers/SupportPage.tsx
index 8457d6f6ff..37e6b86031 100644
--- a/gui/src/renderer/containers/SupportPage.tsx
+++ b/gui/src/renderer/containers/SupportPage.tsx
@@ -1,5 +1,6 @@
import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
+
import Support from '../components/Support';
import withAppContext, { IAppContext } from '../context';
import { IHistoryProps, withHistory } from '../lib/history';
diff --git a/gui/src/renderer/containers/WireguardSettingsPage.tsx b/gui/src/renderer/containers/WireguardSettingsPage.tsx
index d9ac31756d..6217c723d2 100644
--- a/gui/src/renderer/containers/WireguardSettingsPage.tsx
+++ b/gui/src/renderer/containers/WireguardSettingsPage.tsx
@@ -1,8 +1,8 @@
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';
diff --git a/gui/src/renderer/context.tsx b/gui/src/renderer/context.tsx
index 341ddda893..0867618136 100644
--- a/gui/src/renderer/context.tsx
+++ b/gui/src/renderer/context.tsx
@@ -1,4 +1,5 @@
import React, { useContext } from 'react';
+
import App from './app';
export interface IAppContext {
diff --git a/gui/src/renderer/index.ts b/gui/src/renderer/index.ts
index 906be20bfa..815095408f 100644
--- a/gui/src/renderer/index.ts
+++ b/gui/src/renderer/index.ts
@@ -1,4 +1,5 @@
import ReactDOM from 'react-dom';
+
import App from './app';
const app = new App();
diff --git a/gui/src/renderer/lib/constraint-updater.ts b/gui/src/renderer/lib/constraint-updater.ts
index ce9f49f376..3ebbcccbc0 100644
--- a/gui/src/renderer/lib/constraint-updater.ts
+++ b/gui/src/renderer/lib/constraint-updater.ts
@@ -1,5 +1,5 @@
-import { RelaySettingsRedux } from '../redux/settings/reducers';
import RelaySettingsBuilder from '../../shared/relay-settings-builder';
+import { RelaySettingsRedux } from '../redux/settings/reducers';
export function createWireguardRelayUpdater(
relaySettings: RelaySettingsRedux,
diff --git a/gui/src/renderer/lib/history.tsx b/gui/src/renderer/lib/history.tsx
index f5bc213112..2eb08d001d 100644
--- a/gui/src/renderer/lib/history.tsx
+++ b/gui/src/renderer/lib/history.tsx
@@ -1,6 +1,7 @@
-import { Location, Action, LocationDescriptorObject, History as OriginalHistory } from 'history';
+import { Action, History as OriginalHistory, Location, LocationDescriptorObject } from 'history';
import React from 'react';
import { RouteComponentProps, useHistory as useReactRouterHistory, withRouter } from 'react-router';
+
import { GeneratedRoutePath, RoutePath } from './routes';
export interface ITransitionSpecification {
diff --git a/gui/src/renderer/lib/ipc-event-channel.ts b/gui/src/renderer/lib/ipc-event-channel.ts
index bcb816e918..03b5471cb7 100644
--- a/gui/src/renderer/lib/ipc-event-channel.ts
+++ b/gui/src/renderer/lib/ipc-event-channel.ts
@@ -1,4 +1,5 @@
import { ipcRenderer } from 'electron';
+
import { createIpcRenderer } from '../../shared/ipc-helpers';
import { ipcSchema } from '../../shared/ipc-schema';
diff --git a/gui/src/renderer/lib/load-translations.ts b/gui/src/renderer/lib/load-translations.ts
index 43a483de25..d418f54b4f 100644
--- a/gui/src/renderer/lib/load-translations.ts
+++ b/gui/src/renderer/lib/load-translations.ts
@@ -1,5 +1,6 @@
import { GetTextTranslations } from 'gettext-parser';
import Gettext from 'node-gettext';
+
import log from '../../shared/logging';
const SOURCE_LANGUAGE = 'en';
diff --git a/gui/src/renderer/preload.ts b/gui/src/renderer/preload.ts
index 4df178fcc2..8f37905ece 100644
--- a/gui/src/renderer/preload.ts
+++ b/gui/src/renderer/preload.ts
@@ -1,4 +1,5 @@
import { contextBridge } from 'electron';
+
import { IpcRendererEventChannel } from './lib/ipc-event-channel';
contextBridge.exposeInMainWorld('ipc', IpcRendererEventChannel);
diff --git a/gui/src/renderer/redux/account/actions.ts b/gui/src/renderer/redux/account/actions.ts
index aa0a949533..ba9d524cc0 100644
--- a/gui/src/renderer/redux/account/actions.ts
+++ b/gui/src/renderer/redux/account/actions.ts
@@ -1,4 +1,4 @@
-import { AccountToken, IDeviceConfig, IDevice } from '../../../shared/daemon-rpc-types';
+import { AccountToken, IDevice, IDeviceConfig } from '../../../shared/daemon-rpc-types';
interface IStartLoginAction {
type: 'START_LOGIN';
diff --git a/gui/src/renderer/redux/settings/actions.ts b/gui/src/renderer/redux/settings/actions.ts
index 1e12e7ec14..9e12df542d 100644
--- a/gui/src/renderer/redux/settings/actions.ts
+++ b/gui/src/renderer/redux/settings/actions.ts
@@ -1,6 +1,6 @@
+import { IWindowsApplication } from '../../../shared/application-types';
import { BridgeState, IDnsOptions } from '../../../shared/daemon-rpc-types';
import { IGuiSettingsState } from '../../../shared/gui-settings-state';
-import { IWindowsApplication } from '../../../shared/application-types';
import { BridgeSettingsRedux, IRelayLocationRedux, RelaySettingsRedux } from './reducers';
export interface IUpdateGuiSettingsAction {
diff --git a/gui/src/renderer/redux/settings/reducers.ts b/gui/src/renderer/redux/settings/reducers.ts
index a5dd938126..3d665ba86b 100644
--- a/gui/src/renderer/redux/settings/reducers.ts
+++ b/gui/src/renderer/redux/settings/reducers.ts
@@ -1,13 +1,13 @@
import { IWindowsApplication } from '../../../shared/application-types';
import {
BridgeState,
+ IDnsOptions,
+ IpVersion,
LiftedConstraint,
ProxySettings,
RelayLocation,
RelayProtocol,
TunnelProtocol,
- IDnsOptions,
- IpVersion,
} from '../../../shared/daemon-rpc-types';
import { IGuiSettingsState } from '../../../shared/gui-settings-state';
import { ReduxAction } from '../store';
diff --git a/gui/src/shared/account-expiry.ts b/gui/src/shared/account-expiry.ts
index 81c45fec07..c6fa0c6d07 100644
--- a/gui/src/shared/account-expiry.ts
+++ b/gui/src/shared/account-expiry.ts
@@ -1,4 +1,4 @@
-import { DateComponent, DateType, formatRelativeDate, dateByAddingComponent } from './date-helper';
+import { dateByAddingComponent, DateComponent, DateType, formatRelativeDate } from './date-helper';
import { capitalize } from './string-helpers';
export function hasExpired(expiry: DateType): boolean {
diff --git a/gui/src/shared/date-helper.ts b/gui/src/shared/date-helper.ts
index 36353c9b44..7f232552b3 100644
--- a/gui/src/shared/date-helper.ts
+++ b/gui/src/shared/date-helper.ts
@@ -1,4 +1,5 @@
import { sprintf } from 'sprintf-js';
+
import { messages } from './gettext';
export type DateType = Date | string | number;
diff --git a/gui/src/shared/gettext.ts b/gui/src/shared/gettext.ts
index 9acdd80a55..90391107e0 100644
--- a/gui/src/shared/gettext.ts
+++ b/gui/src/shared/gettext.ts
@@ -1,4 +1,5 @@
import Gettext from 'node-gettext';
+
import { LocalizationContexts } from './localization-contexts';
import log from './logging';
diff --git a/gui/src/shared/ipc-helpers.ts b/gui/src/shared/ipc-helpers.ts
index 31469ce88a..cde27bb32b 100644
--- a/gui/src/shared/ipc-helpers.ts
+++ b/gui/src/shared/ipc-helpers.ts
@@ -1,6 +1,7 @@
import { IpcMain as EIpcMain, IpcRenderer as EIpcRenderer, WebContents } from 'electron';
-import { capitalize } from './string-helpers';
+
import log from './logging';
+import { capitalize } from './string-helpers';
type Handler<T, R> = (callback: (arg: T) => R) => void;
type Sender<T, R> = (arg: T) => R;
diff --git a/gui/src/shared/ipc-schema.ts b/gui/src/shared/ipc-schema.ts
index 8f5d0d8d83..1700ddc606 100644
--- a/gui/src/shared/ipc-schema.ts
+++ b/gui/src/shared/ipc-schema.ts
@@ -1,5 +1,6 @@
import { GetTextTranslations } from 'gettext-parser';
-import { IWindowsApplication, ILinuxSplitTunnelingApplication } from './application-types';
+
+import { ILinuxSplitTunnelingApplication, IWindowsApplication } from './application-types';
import {
AccountToken,
BridgeSettings,
@@ -8,6 +9,7 @@ import {
IAppVersionInfo,
IDevice,
IDeviceConfig,
+ IDeviceEvent,
IDeviceRemoval,
IDnsOptions,
ILocation,
@@ -16,7 +18,6 @@ import {
RelaySettingsUpdate,
TunnelState,
VoucherResponse,
- IDeviceEvent,
} from './daemon-rpc-types';
import { IGuiSettingsState } from './gui-settings-state';
import { LogLevel } from './logging-types';
diff --git a/gui/src/shared/notifications/close-to-account-expiry.ts b/gui/src/shared/notifications/close-to-account-expiry.ts
index e0f13b33b3..82daf05562 100644
--- a/gui/src/shared/notifications/close-to-account-expiry.ts
+++ b/gui/src/shared/notifications/close-to-account-expiry.ts
@@ -1,4 +1,5 @@
import { sprintf } from 'sprintf-js';
+
import { links } from '../../config.json';
import { messages } from '../../shared/gettext';
import { closeToExpiry, formatRemainingTime } from '../account-expiry';
diff --git a/gui/src/shared/notifications/connected.ts b/gui/src/shared/notifications/connected.ts
index 0ce1dceeb5..5fc667b78c 100644
--- a/gui/src/shared/notifications/connected.ts
+++ b/gui/src/shared/notifications/connected.ts
@@ -1,4 +1,5 @@
import { sprintf } from 'sprintf-js';
+
import { messages } from '../../shared/gettext';
import { TunnelState } from '../daemon-rpc-types';
import { SystemNotificationProvider } from './notification';
diff --git a/gui/src/shared/notifications/connecting.ts b/gui/src/shared/notifications/connecting.ts
index 3b574dad18..b35d9ed3b6 100644
--- a/gui/src/shared/notifications/connecting.ts
+++ b/gui/src/shared/notifications/connecting.ts
@@ -1,4 +1,5 @@
import { sprintf } from 'sprintf-js';
+
import { messages } from '../../shared/gettext';
import { TunnelState } from '../daemon-rpc-types';
import {
diff --git a/gui/src/shared/notifications/error.ts b/gui/src/shared/notifications/error.ts
index d2a43ade8d..fa654b8291 100644
--- a/gui/src/shared/notifications/error.ts
+++ b/gui/src/shared/notifications/error.ts
@@ -1,6 +1,6 @@
import { hasExpired } from '../account-expiry';
import { AuthFailureKind, parseAuthFailure } from '../auth-failure';
-import { IErrorState, TunnelState, TunnelParameterError } from '../daemon-rpc-types';
+import { IErrorState, TunnelParameterError, TunnelState } from '../daemon-rpc-types';
import { messages } from '../gettext';
import {
InAppNotification,
diff --git a/gui/src/shared/notifications/unsupported-version.ts b/gui/src/shared/notifications/unsupported-version.ts
index 2560119c4c..3db1db9fc7 100644
--- a/gui/src/shared/notifications/unsupported-version.ts
+++ b/gui/src/shared/notifications/unsupported-version.ts
@@ -2,8 +2,8 @@ import { links } from '../../config.json';
import { messages } from '../../shared/gettext';
import {
InAppNotification,
- SystemNotification,
InAppNotificationProvider,
+ SystemNotification,
SystemNotificationProvider,
} from './notification';
diff --git a/gui/src/shared/notifications/update-available.ts b/gui/src/shared/notifications/update-available.ts
index 54dcc02ca8..61a2452138 100644
--- a/gui/src/shared/notifications/update-available.ts
+++ b/gui/src/shared/notifications/update-available.ts
@@ -1,4 +1,5 @@
import { sprintf } from 'sprintf-js';
+
import { links } from '../../config.json';
import { messages } from '../../shared/gettext';
import {