diff --git a/.eslintrc.cjs b/.eslintrc.cjs index fbaf4b5ab3..0e240a5320 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -56,6 +56,11 @@ module.exports = { '@typescript-eslint/indent': 'off', '@typescript-eslint/no-shadow': 'off', '@typescript-eslint/dot-notation': 'off', + '@typescript-eslint/consistent-type-imports': [ + 'error', { + fixStyle: 'inline-type-imports', + }, + ], 'import/no-extraneous-dependencies': 'off', 'import/no-cycle': 'off', 'import/prefer-default-export': 'off', @@ -171,6 +176,7 @@ module.exports = { 'wrap-iife': 'off', 'func-names': 'off', 'prefer-destructuring': 'off', + 'brace-style': ['error', '1tbs', { 'allowSingleLine': false }], 'consistent-return': 'off', 'curly': ['error', 'all'], 'dot-notation': 'off', diff --git a/Extension/src/background/api/filtering-log.ts b/Extension/src/background/api/filtering-log.ts index e85368b1d6..7141b433e5 100644 --- a/Extension/src/background/api/filtering-log.ts +++ b/Extension/src/background/api/filtering-log.ts @@ -15,17 +15,17 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { Tabs } from 'webextension-polyfill'; +import { type Tabs } from 'webextension-polyfill'; import { RuleGenerator } from '@adguard/agtree/generator'; import { RULE_INDEX_NONE } from '@adguard/tsurlfilter'; import { BACKGROUND_TAB_ID, - ContentType, - CookieEvent, + type ContentType, + type CookieEvent, isExtensionUrl, - StealthActionEvent, + type StealthActionEvent, getDomain, getRuleSourceText, getRuleSourceIndex, diff --git a/Extension/src/background/api/filters/categories.ts b/Extension/src/background/api/filters/categories.ts index 4288cdfa6d..0b144c0f32 100644 --- a/Extension/src/background/api/filters/categories.ts +++ b/Extension/src/background/api/filters/categories.ts @@ -25,19 +25,19 @@ import { customFilterMetadataStorage, } from '../../storages'; import { - GroupMetadata, - TagMetadata, - RegularFilterMetadata, - GroupStateData, - FilterStateData, - FilterVersionData, - CustomFilterMetadata, + type GroupMetadata, + type TagMetadata, + type RegularFilterMetadata, + type GroupStateData, + type FilterStateData, + type FilterVersionData, + type CustomFilterMetadata, } from '../../schema'; import { logger } from '../../../common/logger'; import { CustomFilterHelper } from '../../../common/custom-filter-helper'; import { CommonFilterApi } from './common'; -import { FilterMetadata, FiltersApi } from './main'; +import { type FilterMetadata, FiltersApi } from './main'; import { FilterUpdateApi } from './update'; /** diff --git a/Extension/src/background/api/filters/common.ts b/Extension/src/background/api/filters/common.ts index 4ae5cfb741..ff336e0b74 100644 --- a/Extension/src/background/api/filters/common.ts +++ b/Extension/src/background/api/filters/common.ts @@ -20,7 +20,7 @@ import browser from 'webextension-polyfill'; import { BrowserUtils } from '../../utils/browser-utils'; import { logger } from '../../../common/logger'; import { UserAgent } from '../../../common/user-agent'; -import { SettingOption, RegularFilterMetadata } from '../../schema'; +import { SettingOption, type RegularFilterMetadata } from '../../schema'; import { AntiBannerFiltersId } from '../../../common/constants'; import { metadataStorage, @@ -34,7 +34,7 @@ import { network } from '../network'; import { CustomFilterApi } from './custom'; import { FiltersApi } from './main'; -import type { FilterUpdateOptions } from './update'; +import { type FilterUpdateOptions } from './update'; import { FilterParser } from './parser'; /** diff --git a/Extension/src/background/api/filters/custom.ts b/Extension/src/background/api/filters/custom.ts index de8e28cdc0..c37f1ae126 100644 --- a/Extension/src/background/api/filters/custom.ts +++ b/Extension/src/background/api/filters/custom.ts @@ -17,12 +17,12 @@ */ import MD5 from 'crypto-js/md5'; -import { DownloadResult } from '@adguard/filters-downloader/browser'; +import { type DownloadResult } from '@adguard/filters-downloader/browser'; import { BrowserUtils } from '../../utils/browser-utils'; import { AntibannerGroupsId, CUSTOM_FILTERS_START_ID } from '../../../common/constants'; import { logger } from '../../../common/logger'; -import { CustomFilterMetadata, customFilterMetadataStorageDataValidator } from '../../schema'; +import { type CustomFilterMetadata, customFilterMetadataStorageDataValidator } from '../../schema'; import { customFilterMetadataStorage } from '../../storages/custom-filter-metadata'; import { filterStateStorage } from '../../storages/filter-state'; import { groupStateStorage } from '../../storages/group-state'; @@ -33,8 +33,8 @@ import { type Network } from '../network/main'; import { CustomFilterHelper } from '../../../common/custom-filter-helper'; import { createPromiseWithTimeout } from '../../utils/timeouts'; -import type { FilterUpdateOptions } from './update'; -import { FilterParsedData, FilterParser } from './parser'; +import { type FilterUpdateOptions } from './update'; +import { type FilterParsedData, FilterParser } from './parser'; import { type FilterMetadata } from './main'; import { CustomFilterLoader } from './custom/loader'; diff --git a/Extension/src/background/api/filters/hit-stats.ts b/Extension/src/background/api/filters/hit-stats.ts index 221619984f..576bf0f62e 100644 --- a/Extension/src/background/api/filters/hit-stats.ts +++ b/Extension/src/background/api/filters/hit-stats.ts @@ -26,8 +26,8 @@ import { logger } from '../../../common/logger'; import { hitStatsStorageDataValidator } from '../../schema'; import { filterVersionStorage, hitStatsStorage } from '../../storages'; import { - FilterHitStats, - FiltersHitStats, + type FilterHitStats, + type FiltersHitStats, network, } from '../network'; import { getErrorMessage } from '../../../common/error'; diff --git a/Extension/src/background/api/filters/update.ts b/Extension/src/background/api/filters/update.ts index f57d17b8f1..3ad0a24612 100644 --- a/Extension/src/background/api/filters/update.ts +++ b/Extension/src/background/api/filters/update.ts @@ -18,8 +18,8 @@ import { filterVersionStorage, settingsStorage } from '../../storages'; import { SettingOption, - RegularFilterMetadata, - CustomFilterMetadata, + type RegularFilterMetadata, + type CustomFilterMetadata, } from '../../schema'; import { DEFAULT_FILTERS_UPDATE_PERIOD } from '../../../common/settings'; import { logger } from '../../../common/logger'; @@ -27,7 +27,7 @@ import { FiltersUpdateTime } from '../../../common/constants'; import { engine } from '../../engine'; import { getErrorMessage } from '../../../common/error'; -import { FilterMetadata, FiltersApi } from './main'; +import { type FilterMetadata, FiltersApi } from './main'; import { CustomFilterApi } from './custom'; import { CommonFilterApi } from './common'; diff --git a/Extension/src/background/api/filters/userrules.ts b/Extension/src/background/api/filters/userrules.ts index ed363e2463..a3381cde6a 100644 --- a/Extension/src/background/api/filters/userrules.ts +++ b/Extension/src/background/api/filters/userrules.ts @@ -15,12 +15,12 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { AnyRule, InputByteBuffer } from '@adguard/agtree'; +import { type AnyRule, InputByteBuffer } from '@adguard/agtree'; import { RuleParser } from '@adguard/agtree/parser'; import { RuleDeserializer } from '@adguard/agtree/deserializer'; import { FilterListPreprocessor, - PreprocessedFilterList, + type PreprocessedFilterList, RuleSyntaxUtils, } from '@adguard/tsurlfilter'; diff --git a/Extension/src/background/api/install/main.ts b/Extension/src/background/api/install/main.ts index a00c0d606e..d8fdd10395 100644 --- a/Extension/src/background/api/install/main.ts +++ b/Extension/src/background/api/install/main.ts @@ -25,7 +25,7 @@ import { } from '../../../common/constants'; import { defaultSettings } from '../../../common/settings'; import { browserStorage } from '../../storages'; -import { RunInfo } from '../../utils'; +import { type RunInfo } from '../../utils'; /** * The Install API should set the base version of the schema and application, diff --git a/Extension/src/background/api/network/main.ts b/Extension/src/background/api/network/main.ts index 78c75fd8dc..c88bdd9ace 100644 --- a/Extension/src/background/api/network/main.ts +++ b/Extension/src/background/api/network/main.ts @@ -20,7 +20,7 @@ import browser from 'webextension-polyfill'; import { FiltersApi } from '@adguard/tswebextension/mv3'; import { FiltersDownloader, - DefinedExpressions, + type DefinedExpressions, type DownloadResult, } from '@adguard/filters-downloader/browser'; import { getRuleSetPath } from '@adguard/tsurlfilter/es/declarative-converter-utils'; diff --git a/Extension/src/background/api/safebrowsing.ts b/Extension/src/background/api/safebrowsing.ts index 0b8aef73b2..c2ef22db1f 100644 --- a/Extension/src/background/api/safebrowsing.ts +++ b/Extension/src/background/api/safebrowsing.ts @@ -32,7 +32,7 @@ import { SAFEBROWSING_OUTPUT } from '../../../../constants'; import { type ExtensionXMLHttpRequest, network, - ResponseLikeXMLHttpRequest, + type ResponseLikeXMLHttpRequest, } from './network/main'; /** diff --git a/Extension/src/background/api/settings/main.ts b/Extension/src/background/api/settings/main.ts index 66e55945bf..cc23938989 100644 --- a/Extension/src/background/api/settings/main.ts +++ b/Extension/src/background/api/settings/main.ts @@ -21,25 +21,25 @@ import { type SettingsConfig as SettingsConfigMV2 } from '@adguard/tswebextensio import { logger } from '../../../common/logger'; import { type AppearanceTheme, defaultSettings } from '../../../common/settings'; import { - AllowlistConfig, + type AllowlistConfig, AllowlistOption, configValidator, - ExtensionSpecificSettingsConfig, + type ExtensionSpecificSettingsConfig, ExtensionSpecificSettingsOption, - FiltersConfig, + type FiltersConfig, FiltersOption, - GeneralSettingsConfig, + type GeneralSettingsConfig, GeneralSettingsOption, RootOption, PROTOCOL_VERSION, - StealthConfig, + type StealthConfig, StealthOption, - UserFilterConfig, + type UserFilterConfig, UserFilterOption, SettingOption, - Settings, + type Settings, settingsValidator, - Config, + type Config, } from '../../schema'; import { filterStateStorage, diff --git a/Extension/src/background/api/ui/context-menu.ts b/Extension/src/background/api/ui/context-menu.ts index 609821fcc1..d90b1a1556 100644 --- a/Extension/src/background/api/ui/context-menu.ts +++ b/Extension/src/background/api/ui/context-menu.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { Menus } from 'webextension-polyfill'; +import browser, { type Menus } from 'webextension-polyfill'; import { nanoid } from 'nanoid'; import { throttle } from 'lodash-es'; @@ -29,7 +29,7 @@ import { SettingOption } from '../../schema'; import { SettingsApi } from '../settings'; import { OPTIONS_PAGE } from '../../../common/constants'; -import { FrameData } from './frames'; +import { type FrameData } from './frames'; export type AddMenuItemOptions = Menus.CreateCreatePropertiesType & { messageArgs?: { [key: string]: unknown }, diff --git a/Extension/src/background/api/ui/icons.ts b/Extension/src/background/api/ui/icons.ts index 467b602586..033a928003 100644 --- a/Extension/src/background/api/ui/icons.ts +++ b/Extension/src/background/api/ui/icons.ts @@ -19,13 +19,16 @@ import browser from 'webextension-polyfill'; import { RulesLimitsService } from 'rules-limits-service'; -import { settingsStorage } from '../../storages'; +import { + settingsStorage, + type IconData, + type IconVariants, +} from '../../storages'; import { SettingOption } from '../../schema'; import { getIconImageData } from '../../../common/api/extension'; -import type { IconData, IconVariants } from '../../storages'; import { logger } from '../../../common/logger'; -import { FrameData } from './frames'; +import { type FrameData } from './frames'; import { promoNotificationApi } from './promo-notification'; import { browserAction } from './browser-action'; diff --git a/Extension/src/background/api/ui/main.ts b/Extension/src/background/api/ui/main.ts index 2425033bf4..2c1b97bf07 100644 --- a/Extension/src/background/api/ui/main.ts +++ b/Extension/src/background/api/ui/main.ts @@ -23,7 +23,7 @@ import { TabsApi } from '../../../common/api/extension'; import { logger } from '../../../common/logger'; import { ContextMenuApi } from './context-menu'; -import { FrameData, FramesApi } from './frames'; +import { type FrameData, FramesApi } from './frames'; import { iconsApi } from './icons'; /** diff --git a/Extension/src/background/api/ui/pages.ts b/Extension/src/background/api/ui/pages.ts index 72577ed5a3..a0544a512f 100644 --- a/Extension/src/background/api/ui/pages.ts +++ b/Extension/src/background/api/ui/pages.ts @@ -28,7 +28,7 @@ import { Forward, ForwardAction, ForwardFrom, - ForwardParams, + type ForwardParams, } from '../../../common/forward'; import { UrlUtils } from '../../utils/url'; import { diff --git a/Extension/src/background/api/ui/promo-notification.ts b/Extension/src/background/api/ui/promo-notification.ts index 832a7cb5dd..01221f9435 100644 --- a/Extension/src/background/api/ui/promo-notification.ts +++ b/Extension/src/background/api/ui/promo-notification.ts @@ -23,7 +23,7 @@ import { notificationStorage, browserStorage, } from '../../storages'; -import { NotificationTextRecord } from '../../schema'; +import { type NotificationTextRecord } from '../../schema'; import { LAST_NOTIFICATION_TIME_KEY, VIEWED_NOTIFICATIONS_KEY } from '../../../common/constants'; import { I18n } from '../../utils'; diff --git a/Extension/src/background/api/ui/toasts.ts b/Extension/src/background/api/ui/toasts.ts index 3c973d4955..8f0b5c1945 100644 --- a/Extension/src/background/api/ui/toasts.ts +++ b/Extension/src/background/api/ui/toasts.ts @@ -22,7 +22,7 @@ import { BrowserUtils } from '../../utils/browser-utils'; import { translator } from '../../../common/translators/translator'; import { notificationTextRecordValidator } from '../../schema'; import { TabsApi } from '../../../common/api/extension'; -import { FilterMetadata } from '../filters'; +import { type FilterMetadata } from '../filters'; import { sendTabMessage, MessageType } from '../../../common/messages'; import { Forward, diff --git a/Extension/src/background/api/update/assets/old-browser-storage-v1.ts b/Extension/src/background/api/update/assets/old-browser-storage-v1.ts index 78433a5661..37d978ccf0 100644 --- a/Extension/src/background/api/update/assets/old-browser-storage-v1.ts +++ b/Extension/src/background/api/update/assets/old-browser-storage-v1.ts @@ -17,7 +17,7 @@ */ import browser from 'webextension-polyfill'; -import { ExtendedStorageInterface } from '../../../../common/storage'; +import { type ExtendedStorageInterface } from '../../../../common/storage'; /** * Wrapper for browser.storage.local with dev-friendly interface. diff --git a/Extension/src/background/api/update/assets/old-hybrid-storage-v1.ts b/Extension/src/background/api/update/assets/old-hybrid-storage-v1.ts index afc3bbef51..950b43ccb6 100644 --- a/Extension/src/background/api/update/assets/old-hybrid-storage-v1.ts +++ b/Extension/src/background/api/update/assets/old-hybrid-storage-v1.ts @@ -9,7 +9,7 @@ import { nanoid } from 'nanoid'; import * as idb from 'idb'; import { isObject } from 'lodash-es'; -import { ExtendedStorageInterface } from '../../../../common/storage'; +import { type ExtendedStorageInterface } from '../../../../common/storage'; import { BrowserStorage } from './old-browser-storage-v1'; import { IDBStorage } from './old-idb-storage-v1'; diff --git a/Extension/src/background/api/update/assets/old-idb-storage-v1.ts b/Extension/src/background/api/update/assets/old-idb-storage-v1.ts index dc44f63b61..174b0fb835 100644 --- a/Extension/src/background/api/update/assets/old-idb-storage-v1.ts +++ b/Extension/src/background/api/update/assets/old-idb-storage-v1.ts @@ -6,7 +6,7 @@ import * as idb from 'idb'; import { logger } from '../../../../common/logger'; import { getErrorMessage } from '../../../../common/error'; -import { ExtendedStorageInterface } from '../../../../common/storage'; +import { type ExtendedStorageInterface } from '../../../../common/storage'; const DEFAULT_STORE_NAME = 'defaultStore'; const DEFAULT_IDB_NAME = 'adguardIDB'; diff --git a/Extension/src/background/api/update/main.ts b/Extension/src/background/api/update/main.ts index e6ee325f26..ac030ef812 100644 --- a/Extension/src/background/api/update/main.ts +++ b/Extension/src/background/api/update/main.ts @@ -49,7 +49,7 @@ import { SchemaPreprocessor, SettingOption, } from '../../schema'; -import type { RunInfo } from '../../utils/run-info'; +import { type RunInfo } from '../../utils/run-info'; import { IDBUtils } from '../../utils/indexed-db'; import { defaultSettings } from '../../../common/settings'; import { InstallApi } from '../install'; diff --git a/Extension/src/background/connection-handler.ts b/Extension/src/background/connection-handler.ts index ba348c8ae8..7db3e5d024 100644 --- a/Extension/src/background/connection-handler.ts +++ b/Extension/src/background/connection-handler.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { Runtime } from 'webextension-polyfill'; +import browser, { type Runtime } from 'webextension-polyfill'; import { KEEP_ALIVE_PORT_NAME } from '../common/constants'; import { diff --git a/Extension/src/background/engine/engine-mv2.ts b/Extension/src/background/engine/engine-mv2.ts index 165971549d..9f0b51a746 100644 --- a/Extension/src/background/engine/engine-mv2.ts +++ b/Extension/src/background/engine/engine-mv2.ts @@ -20,7 +20,7 @@ import { debounce } from 'lodash-es'; // Because this file is already MV2 replacement module, we can import directly // from basic MV2 tswebextension without using aliases. import { - ConfigurationMV2, + type ConfigurationMV2, MESSAGE_HANDLER_NAME, createTsWebExtension, type Message as EngineMessage, diff --git a/Extension/src/background/engine/engine-mv3.ts b/Extension/src/background/engine/engine-mv3.ts index 21c6a5b910..27fa431232 100644 --- a/Extension/src/background/engine/engine-mv3.ts +++ b/Extension/src/background/engine/engine-mv3.ts @@ -21,7 +21,7 @@ import { debounce } from 'lodash-es'; // from mv3 tswebextension without using aliases. import { MESSAGE_HANDLER_NAME, - Configuration, + type Configuration, TsWebExtension, type MessageHandler, type Message as EngineMessage, diff --git a/Extension/src/background/events/settings.ts b/Extension/src/background/events/settings.ts index 251d525d4b..123950e53d 100644 --- a/Extension/src/background/events/settings.ts +++ b/Extension/src/background/events/settings.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { SettingOption, Settings } from '../schema'; +import { type SettingOption, type Settings } from '../schema'; export type SettingsListener = (value: Settings[T]) => void | Promise; diff --git a/Extension/src/background/message-handler.ts b/Extension/src/background/message-handler.ts index e24e2381bc..aa464d629f 100644 --- a/Extension/src/background/message-handler.ts +++ b/Extension/src/background/message-handler.ts @@ -15,12 +15,12 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { Runtime } from 'webextension-polyfill'; +import { type Runtime } from 'webextension-polyfill'; import { Engine, type EngineMessage } from 'engine'; import { - Message, + type Message, APP_MESSAGE_HANDLER_NAME, MessageHandler, } from '../common/messages'; diff --git a/Extension/src/background/services/allowlist.ts b/Extension/src/background/services/allowlist.ts index c7b3a43455..0c9f99bc62 100644 --- a/Extension/src/background/services/allowlist.ts +++ b/Extension/src/background/services/allowlist.ts @@ -18,9 +18,9 @@ import { logger } from '../../common/logger'; import { MessageType, - SaveAllowlistDomainsMessage, - AddAllowlistDomainMessage, - RemoveAllowlistDomainMessage, + type SaveAllowlistDomainsMessage, + type AddAllowlistDomainMessage, + type RemoveAllowlistDomainMessage, } from '../../common/messages'; import { messageHandler } from '../message-handler'; import { engine } from '../engine'; diff --git a/Extension/src/background/services/custom-filters/custom-filters-service-mv2.ts b/Extension/src/background/services/custom-filters/custom-filters-service-mv2.ts index 9b628c563c..30b4ea6911 100644 --- a/Extension/src/background/services/custom-filters/custom-filters-service-mv2.ts +++ b/Extension/src/background/services/custom-filters/custom-filters-service-mv2.ts @@ -27,15 +27,15 @@ import { SUBSCRIBE_OUTPUT } from '../../../../../constants'; import { NotifierType, BACKGROUND_TAB_ID } from '../../../common/constants'; import { MessageType, - LoadCustomFilterInfoMessage, - SubscribeToCustomFilterMessage, - RemoveAntiBannerFilterMessage, + type LoadCustomFilterInfoMessage, + type SubscribeToCustomFilterMessage, + type RemoveAntiBannerFilterMessage, } from '../../../common/messages'; -import { CustomFilterApi, GetCustomFilterInfoResult } from '../../api/filters/custom'; +import { CustomFilterApi, type GetCustomFilterInfoResult } from '../../api/filters/custom'; import { messageHandler } from '../../message-handler'; import { notifier } from '../../notifier'; import { engine } from '../../engine'; -import type { CustomFilterMetadata } from '../../schema'; +import { type CustomFilterMetadata } from '../../schema'; import { executeScript } from '../scripting/scripting-service-mv2'; /** diff --git a/Extension/src/background/services/document-block.ts b/Extension/src/background/services/document-block.ts index 2f3753de24..f36a634a62 100644 --- a/Extension/src/background/services/document-block.ts +++ b/Extension/src/background/services/document-block.ts @@ -17,7 +17,7 @@ */ import browser from 'webextension-polyfill'; -import { AddUrlToTrustedMessage, MessageType } from '../../common/messages'; +import { type AddUrlToTrustedMessage, MessageType } from '../../common/messages'; import { DocumentBlockApi, TabsApi } from '../api'; import { engine } from '../engine'; import { messageHandler } from '../message-handler'; diff --git a/Extension/src/background/services/event.ts b/Extension/src/background/services/event.ts index 0bb36b7193..b414674279 100644 --- a/Extension/src/background/services/event.ts +++ b/Extension/src/background/services/event.ts @@ -15,15 +15,15 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { Runtime } from 'webextension-polyfill'; +import browser, { type Runtime } from 'webextension-polyfill'; import { notifier } from '../notifier'; import { messageHandler } from '../message-handler'; import { - RemoveListenerMessage, - CreateEventListenerMessage, + type RemoveListenerMessage, + type CreateEventListenerMessage, MessageType, - NotifyListenersMessage, + type NotifyListenersMessage, } from '../../common/messages'; export type CreateEventListenerResponse = { diff --git a/Extension/src/background/services/filtering-log.ts b/Extension/src/background/services/filtering-log.ts index db40bf6aa3..55fe0f5c7d 100644 --- a/Extension/src/background/services/filtering-log.ts +++ b/Extension/src/background/services/filtering-log.ts @@ -17,47 +17,47 @@ */ import { - TabContext, + type TabContext, tabsApi as tsWebExtTabsApi, defaultFilteringLog, FilteringEventType, - SendRequestEvent, - ReceiveResponseEvent, - TabReloadEvent, - RemoveParamEvent, - RemoveHeaderEvent, - ApplyCosmeticRuleEvent, - ApplyBasicRuleEvent, - ApplyCspRuleEvent, - CookieEvent, - JsInjectEvent, - ReplaceRuleApplyEvent, - StealthActionEvent, - StealthAllowlistActionEvent, - CspReportBlockedEvent, + type SendRequestEvent, + type ReceiveResponseEvent, + type TabReloadEvent, + type RemoveParamEvent, + type RemoveHeaderEvent, + type ApplyCosmeticRuleEvent, + type ApplyBasicRuleEvent, + type ApplyCspRuleEvent, + type CookieEvent, + type JsInjectEvent, + type ReplaceRuleApplyEvent, + type StealthActionEvent, + type StealthAllowlistActionEvent, + type CspReportBlockedEvent, getDomain, - ApplyPermissionsRuleEvent, - DeclarativeRuleEvent, + type ApplyPermissionsRuleEvent, + type DeclarativeRuleEvent, } from 'tswebextension'; import { messageHandler } from '../message-handler'; import { - ClearEventsByTabIdMessage, - GetFilteringInfoByTabIdMessage, + type ClearEventsByTabIdMessage, + type GetFilteringInfoByTabIdMessage, MessageType, type RefreshPageMessage, - SetFilteringLogWindowStateMessage, - SetPreserveLogStateMessage, + type SetFilteringLogWindowStateMessage, + type SetPreserveLogStateMessage, } from '../../common/messages'; import { UserAgent } from '../../common/user-agent'; import { AntiBannerFiltersId, FILTERING_LOG_WINDOW_STATE } from '../../common/constants'; import { FiltersApi, - FilterMetadata, + type FilterMetadata, filteringLogApi, SettingsApi, - SettingsData, - FilteringLogTabInfo, + type SettingsData, + type FilteringLogTabInfo, TabsApi, HitStatsApi, } from '../api'; diff --git a/Extension/src/background/services/filters/filters-service-mv2.ts b/Extension/src/background/services/filters/filters-service-mv2.ts index 351d016c99..4582d4cbd6 100644 --- a/Extension/src/background/services/filters/filters-service-mv2.ts +++ b/Extension/src/background/services/filters/filters-service-mv2.ts @@ -32,7 +32,7 @@ import { engine } from '../../engine'; import { annoyancesConsent, Categories, - FilterMetadata, + type FilterMetadata, FiltersApi, FilterUpdateApi, HitStatsApi, diff --git a/Extension/src/background/services/locale-detect.ts b/Extension/src/background/services/locale-detect.ts index 995a02c595..2bd5f4d7ff 100644 --- a/Extension/src/background/services/locale-detect.ts +++ b/Extension/src/background/services/locale-detect.ts @@ -16,11 +16,11 @@ * along with AdGuard Browser Extension. If not, see . */ -import browser, { Tabs } from 'webextension-polyfill'; +import browser, { type Tabs } from 'webextension-polyfill'; import { getDomain, isHttpRequest } from '../tswebextension'; import { UserAgent } from '../../common/user-agent'; -import { RegularFilterMetadata, SettingOption } from '../schema'; +import { type RegularFilterMetadata, SettingOption } from '../schema'; import { groupStateStorage, metadataStorage, diff --git a/Extension/src/background/services/rules-limits/rules-limits-service-mv3.ts b/Extension/src/background/services/rules-limits/rules-limits-service-mv3.ts index ebc57b620e..69d73fbccf 100644 --- a/Extension/src/background/services/rules-limits/rules-limits-service-mv3.ts +++ b/Extension/src/background/services/rules-limits/rules-limits-service-mv3.ts @@ -49,11 +49,11 @@ import { messageHandler } from '../../message-handler'; import { arraysAreEqual } from '../../utils/arrays-are-equal'; import { SettingOption } from '../../schema/settings/enum'; -import type { - StaticLimitsCheckResult, - IRulesLimits, - DynamicLimitsCheckResult, - Mv3LimitsCheckResult, +import { + type StaticLimitsCheckResult, + type IRulesLimits, + type DynamicLimitsCheckResult, + type Mv3LimitsCheckResult, } from './interface'; const { diff --git a/Extension/src/background/services/safebrowsing.ts b/Extension/src/background/services/safebrowsing.ts index 9101d02a54..4b91a1513b 100644 --- a/Extension/src/background/services/safebrowsing.ts +++ b/Extension/src/background/services/safebrowsing.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { WebRequest } from 'webextension-polyfill'; +import browser, { type WebRequest } from 'webextension-polyfill'; import { RequestType } from '@adguard/tsurlfilter/es/request-type'; // Note: we don't use alias here, because we don't use safebrowsing service in MV3. @@ -33,7 +33,7 @@ import { import { SettingOption } from '../schema'; import { settingsEvents } from '../events'; import { messageHandler } from '../message-handler'; -import { MessageType, OpenSafebrowsingTrustedMessage } from '../../common/messages'; +import { MessageType, type OpenSafebrowsingTrustedMessage } from '../../common/messages'; import { UserAgent } from '../../common/user-agent'; import { logger } from '../../common/logger'; diff --git a/Extension/src/background/services/settings/settings-service-mv2.ts b/Extension/src/background/services/settings/settings-service-mv2.ts index edb905cf0f..cd49bf9e08 100644 --- a/Extension/src/background/services/settings/settings-service-mv2.ts +++ b/Extension/src/background/services/settings/settings-service-mv2.ts @@ -43,7 +43,7 @@ import { } from '../../events'; import { fullscreenUserRulesEditor } from '../fullscreen-user-rules-editor'; -import type { ExportMessageResponse, GetOptionsDataResponse } from './types'; +import { type ExportMessageResponse, type GetOptionsDataResponse } from './types'; /** * SettingsService handles all setting-related messages and diff --git a/Extension/src/background/services/settings/settings-service-mv3.ts b/Extension/src/background/services/settings/settings-service-mv3.ts index 9234535cda..2bc6f99484 100644 --- a/Extension/src/background/services/settings/settings-service-mv3.ts +++ b/Extension/src/background/services/settings/settings-service-mv3.ts @@ -44,7 +44,7 @@ import { } from '../../events'; import { fullscreenUserRulesEditor } from '../fullscreen-user-rules-editor'; -import type { ExportMessageResponse, GetOptionsDataResponse } from './types'; +import { type ExportMessageResponse, type GetOptionsDataResponse } from './types'; /** * SettingsService handles all setting-related messages and diff --git a/Extension/src/background/services/settings/types.ts b/Extension/src/background/services/settings/types.ts index f6e88b3b92..547cf274e4 100644 --- a/Extension/src/background/services/settings/types.ts +++ b/Extension/src/background/services/settings/types.ts @@ -16,8 +16,8 @@ * along with AdGuard Browser Extension. If not, see . */ -import { AntiBannerFiltersId } from '../../../common/constants'; -import type { CategoriesData, SettingsData } from '../../api'; +import { type AntiBannerFiltersId } from '../../../common/constants'; +import { type CategoriesData, type SettingsData } from '../../api'; /** * Settings data to be exported. diff --git a/Extension/src/background/services/ui/main.ts b/Extension/src/background/services/ui/main.ts index 6dc3b7a45f..f92314d928 100644 --- a/Extension/src/background/services/ui/main.ts +++ b/Extension/src/background/services/ui/main.ts @@ -27,12 +27,12 @@ import { logger } from '../../../common/logger'; import { messageHandler } from '../../message-handler'; import { MessageType, - OpenAbuseTabMessage, - OpenSiteReportTabMessage, + type OpenAbuseTabMessage, + type OpenSiteReportTabMessage, } from '../../../common/messages'; import { UserAgent } from '../../../common/user-agent'; import { engine } from '../../engine'; -import { AntiBannerFiltersId, NotifierType } from '../../../common/constants'; +import { AntiBannerFiltersId, type NotifierType } from '../../../common/constants'; import { notifier } from '../../notifier'; import { toasts, @@ -41,8 +41,8 @@ import { SettingsApi, PagesApi, AssistantApi, - SettingsData, - FilterMetadata, + type SettingsData, + type FilterMetadata, ContextMenuApi, UiApi, PageStatsApi, diff --git a/Extension/src/background/services/ui/popup.ts b/Extension/src/background/services/ui/popup.ts index c564989e94..a01b857726 100644 --- a/Extension/src/background/services/ui/popup.ts +++ b/Extension/src/background/services/ui/popup.ts @@ -19,8 +19,8 @@ import { RulesLimitsService } from 'rules-limits-service'; import { tabsApi as tsWebExtTabsApi } from '../../tswebextension'; import { - ChangeApplicationFilteringPausedMessage, - GetTabInfoForPopupMessage, + type ChangeApplicationFilteringPausedMessage, + type GetTabInfoForPopupMessage, MessageType, } from '../../../common/messages'; import { messageHandler } from '../../message-handler'; diff --git a/Extension/src/background/services/ui/promo-notification.ts b/Extension/src/background/services/ui/promo-notification.ts index b8873ad897..94d70b3318 100644 --- a/Extension/src/background/services/ui/promo-notification.ts +++ b/Extension/src/background/services/ui/promo-notification.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { MessageType, SetNotificationViewedMessage } from '../../../common/messages'; +import { MessageType, type SetNotificationViewedMessage } from '../../../common/messages'; import { promoNotificationApi } from '../../api'; import { messageHandler } from '../../message-handler'; diff --git a/Extension/src/background/services/userrules.ts b/Extension/src/background/services/userrules.ts index bb09f2cfd1..813aa1095b 100644 --- a/Extension/src/background/services/userrules.ts +++ b/Extension/src/background/services/userrules.ts @@ -20,21 +20,21 @@ // because checkUserRulesRegexpErrors use only in engine-mv3 import { type ConfigurationResult, UnsupportedRegexpError } from '@adguard/tswebextension/mv3'; -import type { Engine } from 'engine'; +import { type Engine } from 'engine'; import { - AddUserRuleMessage, + type AddUserRuleMessage, MessageType, - RemoveUserRuleMessage, - ResetUserRulesForPageMessage, - SaveUserRulesMessage, - SetEditorStorageContentMessage, + type RemoveUserRuleMessage, + type ResetUserRulesForPageMessage, + type SaveUserRulesMessage, + type SetEditorStorageContentMessage, } from '../../common/messages'; import { messageHandler } from '../message-handler'; import { SettingOption } from '../schema'; import { SettingsApi, - SettingsData, + type SettingsData, UserRulesApi, TabsApi, } from '../api'; diff --git a/Extension/src/background/storages/annoyances-consent.ts b/Extension/src/background/storages/annoyances-consent.ts index 2378eb4fdf..7a87904871 100644 --- a/Extension/src/background/storages/annoyances-consent.ts +++ b/Extension/src/background/storages/annoyances-consent.ts @@ -17,7 +17,7 @@ */ import { ANNOYANCES_CONSENT_KEY } from '../../common/constants'; -import { AnnoyancesConsentStorageData } from '../schema'; +import { type AnnoyancesConsentStorageData } from '../schema'; import { StringStorage } from '../utils/string-storage'; import { browserStorage } from './shared-instances'; diff --git a/Extension/src/background/storages/browser-storage.ts b/Extension/src/background/storages/browser-storage.ts index 98a8dfb219..5101516fd9 100644 --- a/Extension/src/background/storages/browser-storage.ts +++ b/Extension/src/background/storages/browser-storage.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import type { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { type ExtendedStorageInterface } from './storage-interface'; diff --git a/Extension/src/background/storages/custom-filter-metadata.ts b/Extension/src/background/storages/custom-filter-metadata.ts index 1a91ee1045..af26f999f6 100644 --- a/Extension/src/background/storages/custom-filter-metadata.ts +++ b/Extension/src/background/storages/custom-filter-metadata.ts @@ -18,8 +18,8 @@ import { StringStorage } from '../utils/string-storage'; import { SettingOption, - CustomFilterMetadata, - CustomFilterMetadataStorageData, + type CustomFilterMetadata, + type CustomFilterMetadataStorageData, } from '../schema'; import { settingsStorage } from './settings'; diff --git a/Extension/src/background/storages/filter-state.ts b/Extension/src/background/storages/filter-state.ts index fa90b91639..dff4f9442a 100644 --- a/Extension/src/background/storages/filter-state.ts +++ b/Extension/src/background/storages/filter-state.ts @@ -19,9 +19,9 @@ import { AntiBannerFiltersId } from '../../common/constants'; import { StringStorage } from '../utils/string-storage'; import { SettingOption, - Metadata, - FilterStateData, - FilterStateStorageData, + type Metadata, + type FilterStateData, + type FilterStateStorageData, } from '../schema'; import { settingsStorage } from './settings'; diff --git a/Extension/src/background/storages/filter-version.ts b/Extension/src/background/storages/filter-version.ts index b505245f2c..a1421f0415 100644 --- a/Extension/src/background/storages/filter-version.ts +++ b/Extension/src/background/storages/filter-version.ts @@ -18,12 +18,12 @@ import { logger } from '../../common/logger'; import { SettingOption, - Metadata, - FilterVersionStorageData, - FilterVersionData, + type Metadata, + type FilterVersionStorageData, + type FilterVersionData, } from '../schema'; import { StringStorage } from '../utils/string-storage'; -import type { FilterUpdateOptionsList } from '../api'; +import { type FilterUpdateOptionsList } from '../api'; import { settingsStorage } from './settings'; diff --git a/Extension/src/background/storages/filters-adapter.ts b/Extension/src/background/storages/filters-adapter.ts index c752845282..e302d68e89 100644 --- a/Extension/src/background/storages/filters-adapter.ts +++ b/Extension/src/background/storages/filters-adapter.ts @@ -21,7 +21,7 @@ import { FiltersStorage as TsWebExtensionFiltersStorage } from '@adguard/tswebex import { extractRuleSetId } from '@adguard/tsurlfilter/es/declarative-converter-utils'; import { METADATA_RULESET_ID } from '@adguard/tsurlfilter/es/declarative-converter'; -import { FilterListPreprocessor, PreprocessedFilterList } from 'tswebextension'; +import { FilterListPreprocessor, type PreprocessedFilterList } from 'tswebextension'; import { logger } from '../../common/logger'; diff --git a/Extension/src/background/storages/group-state.ts b/Extension/src/background/storages/group-state.ts index 42964e1611..3e488d9166 100644 --- a/Extension/src/background/storages/group-state.ts +++ b/Extension/src/background/storages/group-state.ts @@ -17,9 +17,9 @@ */ import { SettingOption, - Metadata, - GroupStateData, - GroupStateStorageData, + type Metadata, + type GroupStateData, + type GroupStateStorageData, } from '../schema'; import { StringStorage } from '../utils/string-storage'; diff --git a/Extension/src/background/storages/hit-stats.ts b/Extension/src/background/storages/hit-stats.ts index d21a2b5379..c0bb189196 100644 --- a/Extension/src/background/storages/hit-stats.ts +++ b/Extension/src/background/storages/hit-stats.ts @@ -17,7 +17,7 @@ */ import { HIT_STATISTIC_KEY } from '../../common/constants'; import { StringStorage } from '../utils/string-storage'; -import { HitStatsStorageData } from '../schema'; +import { type HitStatsStorageData } from '../schema'; import { browserStorage } from './shared-instances'; import { filterVersionStorage } from './filter-version'; diff --git a/Extension/src/background/storages/hybrid-storage.ts b/Extension/src/background/storages/hybrid-storage.ts index 98714d78e7..e4c7780de0 100644 --- a/Extension/src/background/storages/hybrid-storage.ts +++ b/Extension/src/background/storages/hybrid-storage.ts @@ -21,7 +21,7 @@ * providing a unified API for storage operations. It automatically chooses between IndexedDB storage and * a fallback storage mechanism based on the environment's capabilities. */ -import type { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { nanoid } from 'nanoid'; import { SuperJSON, type SuperJSONResult } from 'superjson'; import { deleteDB, openDB } from 'idb'; diff --git a/Extension/src/background/storages/i18n-metadata.ts b/Extension/src/background/storages/i18n-metadata.ts index b51c40caee..b4fe03a8b8 100644 --- a/Extension/src/background/storages/i18n-metadata.ts +++ b/Extension/src/background/storages/i18n-metadata.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { SettingOption, I18nMetadata } from '../schema'; +import { SettingOption, type I18nMetadata } from '../schema'; import { StringStorage } from '../utils/string-storage'; import { settingsStorage } from './settings'; diff --git a/Extension/src/background/storages/notification.ts b/Extension/src/background/storages/notification.ts index ee27e1235c..b5885541d3 100644 --- a/Extension/src/background/storages/notification.ts +++ b/Extension/src/background/storages/notification.ts @@ -18,7 +18,7 @@ import browser from 'webextension-polyfill'; import { Forward, ForwardAction } from '../../common/forward'; -import { NotificationTextRecord } from '../schema'; +import { type NotificationTextRecord } from '../schema'; import { defaultIconVariants } from '../api/ui/icons'; /** diff --git a/Extension/src/background/storages/page-stats.ts b/Extension/src/background/storages/page-stats.ts index bdc92cec49..0157683c3f 100644 --- a/Extension/src/background/storages/page-stats.ts +++ b/Extension/src/background/storages/page-stats.ts @@ -28,9 +28,9 @@ import { import { PAGE_STATISTIC_KEY, TOTAL_BLOCKED_STATS_GROUP_ID } from '../../common/constants'; import { StringStorage } from '../utils/string-storage'; import { - PageStats, - PageStatsData, - PageStatsDataItem, + type PageStats, + type PageStatsData, + type PageStatsDataItem, } from '../schema'; import { browserStorage } from './shared-instances'; diff --git a/Extension/src/background/storages/rules-limits.ts b/Extension/src/background/storages/rules-limits.ts index 30832ee12d..0cc4e7078e 100644 --- a/Extension/src/background/storages/rules-limits.ts +++ b/Extension/src/background/storages/rules-limits.ts @@ -18,7 +18,7 @@ import { RULES_LIMITS_KEY } from '../../common/constants'; import { StringStorage } from '../utils/string-storage'; -import { RulesLimitsStorageData } from '../schema/rules-limits/rules-limits'; +import { type RulesLimitsStorageData } from '../schema/rules-limits/rules-limits'; import { browserStorage } from './shared-instances'; diff --git a/Extension/src/background/storages/settings.ts b/Extension/src/background/storages/settings.ts index 618f9af276..e942cb7736 100644 --- a/Extension/src/background/storages/settings.ts +++ b/Extension/src/background/storages/settings.ts @@ -18,8 +18,8 @@ import { debounce } from 'lodash-es'; import { ADGUARD_SETTINGS_KEY } from '../../common/constants'; -import { StorageInterface } from '../../common/storage'; -import { Settings, SettingOption } from '../schema'; +import { type StorageInterface } from '../../common/storage'; +import { type Settings, type SettingOption } from '../schema'; import { browserStorage } from './shared-instances'; diff --git a/Extension/src/background/storages/trusted-domains.ts b/Extension/src/background/storages/trusted-domains.ts index 4489f17309..1ceeb0e410 100644 --- a/Extension/src/background/storages/trusted-domains.ts +++ b/Extension/src/background/storages/trusted-domains.ts @@ -16,7 +16,7 @@ * along with AdGuard Browser Extension. If not, see . */ import { TRUSTED_DOCUMENTS_CACHE_KEY } from '../../common/constants'; -import { TrustedDomainData } from '../schema'; +import { type TrustedDomainData } from '../schema'; import { StringStorage } from '../utils/string-storage'; import { browserStorage } from './shared-instances'; diff --git a/Extension/src/background/utils/string-storage.ts b/Extension/src/background/utils/string-storage.ts index 7d6958c08f..0ad3c1c31d 100644 --- a/Extension/src/background/utils/string-storage.ts +++ b/Extension/src/background/utils/string-storage.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { StorageInterface } from '../../common/storage'; +import { type StorageInterface } from '../../common/storage'; /** * Class for managing data that is persisted as string in another key value storage. diff --git a/Extension/src/common/api/extension/iconsCache.ts b/Extension/src/common/api/extension/iconsCache.ts index 4ccacbd349..d6b7584699 100644 --- a/Extension/src/common/api/extension/iconsCache.ts +++ b/Extension/src/common/api/extension/iconsCache.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { Action } from 'webextension-polyfill'; +import { type Action } from 'webextension-polyfill'; import { logger } from '../../logger'; diff --git a/Extension/src/common/api/extension/tabs.ts b/Extension/src/common/api/extension/tabs.ts index b5c2a0e105..671176411d 100644 --- a/Extension/src/common/api/extension/tabs.ts +++ b/Extension/src/common/api/extension/tabs.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { Tabs } from 'webextension-polyfill'; +import browser, { type Tabs } from 'webextension-polyfill'; import { Prefs } from '../../../background/prefs'; diff --git a/Extension/src/common/api/extension/windows.ts b/Extension/src/common/api/extension/windows.ts index fc1b68794d..8c9e1cbffd 100644 --- a/Extension/src/common/api/extension/windows.ts +++ b/Extension/src/common/api/extension/windows.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { type Windows, Tabs } from 'webextension-polyfill'; +import browser, { type Windows, type Tabs } from 'webextension-polyfill'; /** * Helper class for browser.windows API. diff --git a/Extension/src/common/messages/constants.ts b/Extension/src/common/messages/constants.ts index 34b554007b..f7c45c776a 100644 --- a/Extension/src/common/messages/constants.ts +++ b/Extension/src/common/messages/constants.ts @@ -26,28 +26,28 @@ import { type Windows } from 'webextension-polyfill'; import { type ForwardFrom } from '../forward'; -import type { - CustomFilterMetadata, - SettingOption, - Settings, +import { + type CustomFilterMetadata, + type SettingOption, + type Settings, } from '../../background/schema'; -import type { NotifierType } from '../constants'; -import type { AppearanceTheme } from '../settings'; -import type { FilteringLogTabInfo } from '../../background/api/filtering-log'; -import type { GetTabInfoForPopupResponse } from '../../background/services/ui/popup'; -import type { GetFilteringLogDataResponse } from '../../background/services/filtering-log'; -import type { - IRulesLimits, - Mv3LimitsCheckResult, - StaticLimitsCheckResult, +import { type NotifierType } from '../constants'; +import { type AppearanceTheme } from '../settings'; +import { type FilteringLogTabInfo } from '../../background/api/filtering-log'; +import { type GetTabInfoForPopupResponse } from '../../background/services/ui/popup'; +import { type GetFilteringLogDataResponse } from '../../background/services/filtering-log'; +import { + type IRulesLimits, + type Mv3LimitsCheckResult, + type StaticLimitsCheckResult, } from '../../background/services/rules-limits/interface'; -import type { PageInitAppData } from '../../background/services/ui/main'; -import type { ExportMessageResponse, GetOptionsDataResponse } from '../../background/services/settings/types'; -import type { CreateEventListenerResponse } from '../../background/services/event'; -import type { FilterMetadata } from '../../background/api/filters/main'; -import type { GetAllowlistDomainsResponse } from '../../background/services/allowlist'; -import type { GetUserRulesEditorDataResponse, GetUserRulesResponse } from '../../background/services/userrules'; -import type { GetCustomFilterInfoResult } from '../../background/api'; +import { type PageInitAppData } from '../../background/services/ui/main'; +import { type ExportMessageResponse, type GetOptionsDataResponse } from '../../background/services/settings/types'; +import { type CreateEventListenerResponse } from '../../background/services/event'; +import { type FilterMetadata } from '../../background/api/filters/main'; +import { type GetAllowlistDomainsResponse } from '../../background/services/allowlist'; +import { type GetUserRulesEditorDataResponse, type GetUserRulesResponse } from '../../background/services/userrules'; +import { type GetCustomFilterInfoResult } from '../../background/api'; export const APP_MESSAGE_HANDLER_NAME = 'app'; diff --git a/Extension/src/common/messages/message-handler.ts b/Extension/src/common/messages/message-handler.ts index 1d449b04e0..bd60239bad 100644 --- a/Extension/src/common/messages/message-handler.ts +++ b/Extension/src/common/messages/message-handler.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import browser, { Runtime } from 'webextension-polyfill'; +import browser, { type Runtime } from 'webextension-polyfill'; import { type EngineMessage } from 'engine'; diff --git a/Extension/src/common/messages/send-message.ts b/Extension/src/common/messages/send-message.ts index 72b26a29bb..23e8b5964a 100644 --- a/Extension/src/common/messages/send-message.ts +++ b/Extension/src/common/messages/send-message.ts @@ -19,8 +19,8 @@ import browser from 'webextension-polyfill'; import { - MessageType, - MessageWithoutHandlerName, + type MessageType, + type MessageWithoutHandlerName, APP_MESSAGE_HANDLER_NAME, } from './constants'; diff --git a/Extension/src/common/settings.ts b/Extension/src/common/settings.ts index 7052c6e3de..908eb196b5 100644 --- a/Extension/src/common/settings.ts +++ b/Extension/src/common/settings.ts @@ -16,7 +16,7 @@ * along with AdGuard Browser Extension. If not, see . */ -import { SettingOption, Settings } from '../background/schema'; +import { SettingOption, type Settings } from '../background/schema'; import { UserAgent } from './user-agent'; diff --git a/Extension/src/common/translators/reactTranslator.ts b/Extension/src/common/translators/reactTranslator.ts index 928d7399a8..246c2738ba 100644 --- a/Extension/src/common/translators/reactTranslator.ts +++ b/Extension/src/common/translators/reactTranslator.ts @@ -18,7 +18,7 @@ import React from 'react'; -import { I18nInterface, translate } from '@adguard/translate'; +import { type I18nInterface, translate } from '@adguard/translate'; import { i18n } from './i18n'; diff --git a/Extension/src/common/translators/translator.ts b/Extension/src/common/translators/translator.ts index 13271f1b90..47baacd6d8 100644 --- a/Extension/src/common/translators/translator.ts +++ b/Extension/src/common/translators/translator.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { I18nInterface, translate } from '@adguard/translate'; +import { type I18nInterface, translate } from '@adguard/translate'; import { i18n } from './i18n'; diff --git a/Extension/src/content-script/content-utils/message-handler.ts b/Extension/src/content-script/content-utils/message-handler.ts index a0fceaeebf..9fad52509e 100644 --- a/Extension/src/content-script/content-utils/message-handler.ts +++ b/Extension/src/content-script/content-utils/message-handler.ts @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with AdGuard Browser Extension. If not, see . */ -import { Runtime } from 'webextension-polyfill'; +import { type Runtime } from 'webextension-polyfill'; import { MessageType } from '@adguard/tswebextension'; diff --git a/Extension/src/pages/common/components/AttachmentPortal/AttachmentPortal.tsx b/Extension/src/pages/common/components/AttachmentPortal/AttachmentPortal.tsx index c08fdbbd83..15962dc6cf 100644 --- a/Extension/src/pages/common/components/AttachmentPortal/AttachmentPortal.tsx +++ b/Extension/src/pages/common/components/AttachmentPortal/AttachmentPortal.tsx @@ -19,7 +19,7 @@ import { useEffect, useRef } from 'react'; import { createPortal } from 'react-dom'; -import { Position } from '../types'; +import { type Position } from '../types'; const TOOLTIP_EDGE_PADDING = 4; // px diff --git a/Extension/src/pages/common/components/Editor/EditorLeaveModal.tsx b/Extension/src/pages/common/components/Editor/EditorLeaveModal.tsx index 4a9e5515be..b470239d96 100644 --- a/Extension/src/pages/common/components/Editor/EditorLeaveModal.tsx +++ b/Extension/src/pages/common/components/Editor/EditorLeaveModal.tsx @@ -21,7 +21,7 @@ import React, { useEffect, useRef, } from 'react'; -import { useBlocker, BlockerFunction } from 'react-router-dom'; +import { useBlocker, type BlockerFunction } from 'react-router-dom'; import { noop } from 'lodash-es'; diff --git a/Extension/src/pages/common/components/ui/Icon.tsx b/Extension/src/pages/common/components/ui/Icon.tsx index 1665868f19..3c89e2fe0d 100644 --- a/Extension/src/pages/common/components/ui/Icon.tsx +++ b/Extension/src/pages/common/components/ui/Icon.tsx @@ -16,7 +16,7 @@ * along with AdGuard Browser Extension. If not, see . */ -import React, { ReactNode } from 'react'; +import React, { type ReactNode } from 'react'; import cn from 'classnames'; diff --git a/Extension/src/pages/common/components/ui/Popover/Popover.tsx b/Extension/src/pages/common/components/ui/Popover/Popover.tsx index 6504e2cd86..98b3c75044 100644 --- a/Extension/src/pages/common/components/ui/Popover/Popover.tsx +++ b/Extension/src/pages/common/components/ui/Popover/Popover.tsx @@ -24,7 +24,7 @@ import React, { import { AttachmentPortal } from '../../AttachmentPortal'; import { Tooltip } from '../Tooltip'; -import { Position } from '../../types'; +import { type Position } from '../../types'; import './popover.pcss'; diff --git a/Extension/src/pages/common/hooks/useOverflowed.ts b/Extension/src/pages/common/hooks/useOverflowed.ts index 3833cd4c9a..1c1153d24d 100644 --- a/Extension/src/pages/common/hooks/useOverflowed.ts +++ b/Extension/src/pages/common/hooks/useOverflowed.ts @@ -19,7 +19,7 @@ import { useState, useCallback, - RefObject, + type RefObject, } from 'react'; import { useResizeObserver } from './useResizeObserver'; diff --git a/Extension/src/pages/common/hooks/useResizeObserver.ts b/Extension/src/pages/common/hooks/useResizeObserver.ts index 3c2ea7e6db..b010e0a129 100644 --- a/Extension/src/pages/common/hooks/useResizeObserver.ts +++ b/Extension/src/pages/common/hooks/useResizeObserver.ts @@ -16,7 +16,7 @@ * along with AdGuard Browser Extension. If not, see . */ -import { RefObject, useEffect } from 'react'; +import { type RefObject, useEffect } from 'react'; import { throttle } from 'lodash-es'; diff --git a/Extension/src/pages/filtering-log/components/FilteringLog/FilteringLog.tsx b/Extension/src/pages/filtering-log/components/FilteringLog/FilteringLog.tsx index 93a3829344..a6a5b3d4d9 100644 --- a/Extension/src/pages/filtering-log/components/FilteringLog/FilteringLog.tsx +++ b/Extension/src/pages/filtering-log/components/FilteringLog/FilteringLog.tsx @@ -25,7 +25,7 @@ import { Filters } from '../Filters'; import { Messenger, messenger, - LongLivedConnectionCallbackMessage, + type LongLivedConnectionCallbackMessage, Page, } from '../../../services/messenger'; import { logger } from '../../../../common/logger'; diff --git a/Extension/src/pages/filtering-log/components/Filters/TabSelector/TabSelector.jsx b/Extension/src/pages/filtering-log/components/Filters/TabSelector/TabSelector.jsx index cbdada5b17..b7e68da08a 100644 --- a/Extension/src/pages/filtering-log/components/Filters/TabSelector/TabSelector.jsx +++ b/Extension/src/pages/filtering-log/components/Filters/TabSelector/TabSelector.jsx @@ -176,7 +176,7 @@ const TabSelector = observer(() => { id={tabId} role="button" className="tab-selector__result-item" - onClick={() => { selectionHandlerSearch(tabId); }} + onClick={() => selectionHandlerSearch(tabId)} tabIndex={0} > diff --git a/Extension/src/pages/filtering-log/components/RequestWizard/RequestInfo/RequestInfo.tsx b/Extension/src/pages/filtering-log/components/RequestWizard/RequestInfo/RequestInfo.tsx index e6193a6237..42ac7cf651 100644 --- a/Extension/src/pages/filtering-log/components/RequestWizard/RequestInfo/RequestInfo.tsx +++ b/Extension/src/pages/filtering-log/components/RequestWizard/RequestInfo/RequestInfo.tsx @@ -56,7 +56,7 @@ import { DEFAULT_MODAL_WIDTH_PX, LINE_COUNT_LIMIT } from '../constants'; import { TextCollapser } from '../../../../common/components/TextCollapser/TextCollapser'; import { AddedRuleState } from '../../../constants'; import { type FilteringLogEvent, type FilteringEventRuleData } from '../../../../../background/api/filtering-log'; -import { FilterMetadata } from '../../../../../background/api'; +import { type FilterMetadata } from '../../../../../background/api'; import { Popover } from '../../../../common/components/ui/Popover/Popover'; import './request-info.pcss'; diff --git a/Extension/src/pages/filtering-log/components/RequestWizard/ruleCreators.ts b/Extension/src/pages/filtering-log/components/RequestWizard/ruleCreators.ts index 7875bd29cd..f01b388256 100644 --- a/Extension/src/pages/filtering-log/components/RequestWizard/ruleCreators.ts +++ b/Extension/src/pages/filtering-log/components/RequestWizard/ruleCreators.ts @@ -23,10 +23,10 @@ import { OPTIONS_DELIMITER, } from '@adguard/tsurlfilter'; -import type { FilteringEventRuleData, FilteringLogEvent } from '../../../../background/api'; +import { type FilteringEventRuleData, type FilteringLogEvent } from '../../../../background/api'; import { strings } from '../../../../common/strings'; import { logger } from '../../../../common/logger'; -import type { RuleCreationOptions } from '../../types'; +import { type RuleCreationOptions } from '../../types'; import { COMMA_DELIMITER } from './constants'; import { UrlUtils } from './utils'; diff --git a/Extension/src/pages/filtering-log/components/RequestWizard/utils.ts b/Extension/src/pages/filtering-log/components/RequestWizard/utils.ts index 7a8e2cd5d3..b5052ba52c 100644 --- a/Extension/src/pages/filtering-log/components/RequestWizard/utils.ts +++ b/Extension/src/pages/filtering-log/components/RequestWizard/utils.ts @@ -20,7 +20,7 @@ import { ContentType as RequestType } from 'tswebextension'; import { AntiBannerFiltersId } from '../../../../common/constants'; import { strings } from '../../../../common/strings'; import { translator } from '../../../../common/translators/translator'; -import type { FilteringLogEvent, FilterMetadata } from '../../../../background/api'; +import { type FilteringLogEvent, type FilterMetadata } from '../../../../background/api'; /** * Url utils diff --git a/Extension/src/pages/filtering-log/stores/LogStore.ts b/Extension/src/pages/filtering-log/stores/LogStore.ts index e5ede17703..ec6d3b2fe0 100644 --- a/Extension/src/pages/filtering-log/stores/LogStore.ts +++ b/Extension/src/pages/filtering-log/stores/LogStore.ts @@ -28,11 +28,11 @@ import { find, truncate } from 'lodash-es'; import { ContentType as RequestType } from 'tswebextension'; -import type { - FilteringLogTabInfo, - FilterMetadata, - SettingsData, - UIFilteringLogEvent, +import { + type FilteringLogTabInfo, + type FilterMetadata, + type SettingsData, + type UIFilteringLogEvent, } from '../../../background/api'; import { translator } from '../../../common/translators/translator'; import { messenger } from '../../services/messenger'; @@ -42,7 +42,7 @@ import { getStatusMode, StatusMode } from '../filteringLogStatus'; import { logger } from '../../../common/logger'; import { matchesSearch } from './helpers'; -import type { RootStore } from './RootStore'; +import { type RootStore } from './RootStore'; const enum MiscellaneousFilters { Regular = 'regular', diff --git a/Extension/src/pages/filtering-log/stores/WizardStore.ts b/Extension/src/pages/filtering-log/stores/WizardStore.ts index 8f16e0991b..d5ccf5e4c8 100644 --- a/Extension/src/pages/filtering-log/stores/WizardStore.ts +++ b/Extension/src/pages/filtering-log/stores/WizardStore.ts @@ -39,12 +39,12 @@ import { getRuleText, } from '../components/RequestWizard/ruleCreators'; import { messenger } from '../../services/messenger'; -import { AddedRuleState, WizardRequestState } from '../constants'; -import type { RuleCreationOptions } from '../types'; -import type { FilteringLogEvent } from '../../../background/api/filtering-log'; +import { type AddedRuleState, WizardRequestState } from '../constants'; +import { type RuleCreationOptions } from '../types'; +import { type FilteringLogEvent } from '../../../background/api/filtering-log'; import { logger } from '../../../common/logger'; -import type { RootStore } from './RootStore'; +import { type RootStore } from './RootStore'; const defaultRuleOptions: RuleCreationOptions = { [RULE_CREATION_OPTION.DOMAIN]: { checked: false }, diff --git a/Extension/src/pages/fullscreen-user-rules/components/fullscreen-user-rules/FullscreenUserRules.tsx b/Extension/src/pages/fullscreen-user-rules/components/fullscreen-user-rules/FullscreenUserRules.tsx index 4b6a5b4865..b15f52e8ec 100644 --- a/Extension/src/pages/fullscreen-user-rules/components/fullscreen-user-rules/FullscreenUserRules.tsx +++ b/Extension/src/pages/fullscreen-user-rules/components/fullscreen-user-rules/FullscreenUserRules.tsx @@ -26,7 +26,7 @@ import { NotifierType } from '../../../../common/constants'; import { rootStore } from '../../../options/stores/RootStore'; import { Messenger, - LongLivedConnectionCallbackMessage, + type LongLivedConnectionCallbackMessage, Page, } from '../../../services/messenger'; import { logger } from '../../../../common/logger'; diff --git a/Extension/src/pages/helpers.ts b/Extension/src/pages/helpers.ts index 278792ff55..d6b66c90bf 100644 --- a/Extension/src/pages/helpers.ts +++ b/Extension/src/pages/helpers.ts @@ -20,7 +20,7 @@ import { type FilterMetadata } from '../background/api'; import { translator } from '../common/translators/translator'; import { FILE_WRONG_EXTENSION_CAUSE } from './options/constants'; -import { Notification, NotificationType } from './options/stores/UiStore'; +import { type Notification, NotificationType } from './options/stores/UiStore'; export const getFilenameExtension = (filename: string): string | undefined => { if (!filename) { diff --git a/Extension/src/pages/options/components/Filters/AddCustomInput/AddCustomInput.tsx b/Extension/src/pages/options/components/Filters/AddCustomInput/AddCustomInput.tsx index 56ba7f362a..4babdfa1cf 100644 --- a/Extension/src/pages/options/components/Filters/AddCustomInput/AddCustomInput.tsx +++ b/Extension/src/pages/options/components/Filters/AddCustomInput/AddCustomInput.tsx @@ -19,8 +19,8 @@ /* eslint-disable jsx-a11y/no-autofocus */ import React, { - ChangeEventHandler, - HTMLInputTypeAttribute, + type ChangeEventHandler, + type HTMLInputTypeAttribute, useRef, } from 'react'; diff --git a/Extension/src/pages/options/components/Filters/Filter.tsx b/Extension/src/pages/options/components/Filters/Filter.tsx index dab60827db..26ec7f2e81 100644 --- a/Extension/src/pages/options/components/Filters/Filter.tsx +++ b/Extension/src/pages/options/components/Filters/Filter.tsx @@ -27,11 +27,11 @@ import { observer } from 'mobx-react'; import cn from 'classnames'; -import type { - CustomFilterMetadata, - FilterVersionData, - RegularFilterMetadata, - TagMetadata, +import { + type CustomFilterMetadata, + type FilterVersionData, + type RegularFilterMetadata, + type TagMetadata, } from '../../../../background/schema'; import { Setting, SETTINGS_TYPES } from '../Settings/Setting'; import { rootStore } from '../../stores/RootStore'; diff --git a/Extension/src/pages/options/components/Filters/FilterTags/FilterTags.tsx b/Extension/src/pages/options/components/Filters/FilterTags/FilterTags.tsx index dfad58ae4e..1095854b9f 100644 --- a/Extension/src/pages/options/components/Filters/FilterTags/FilterTags.tsx +++ b/Extension/src/pages/options/components/Filters/FilterTags/FilterTags.tsx @@ -19,7 +19,7 @@ import React from 'react'; import { Popover } from '../../../../common/components/ui/Popover'; -import { TagMetadata } from '../../../../../background/schema'; +import { type TagMetadata } from '../../../../../background/schema'; import { FilterTag } from './FilterTag'; diff --git a/Extension/src/pages/options/components/Filters/helpers.ts b/Extension/src/pages/options/components/Filters/helpers.ts index 23d723434f..2df4fdee43 100644 --- a/Extension/src/pages/options/components/Filters/helpers.ts +++ b/Extension/src/pages/options/components/Filters/helpers.ts @@ -18,7 +18,7 @@ import { sortBy } from 'lodash-es'; -import type { CategoriesFilterData, CategoriesGroupData } from '../../../../background/api'; +import { type CategoriesFilterData, type CategoriesGroupData } from '../../../../background/api'; /** * Sorts filters by enabled status and displayNumber diff --git a/Extension/src/pages/options/components/General/General.tsx b/Extension/src/pages/options/components/General/General.tsx index 322ed60de6..66b98e8444 100644 --- a/Extension/src/pages/options/components/General/General.tsx +++ b/Extension/src/pages/options/components/General/General.tsx @@ -39,7 +39,7 @@ import { } from '../../constants'; import { addMinDelayLoader } from '../../../common/components/helpers'; import { exportData, ExportTypes } from '../../../common/utils/export'; -import { SettingHandler } from '../../types'; +import { type SettingHandler } from '../../types'; import { ensurePermission } from '../../ensure-permission'; import { reactTranslator } from '../../../../common/translators/reactTranslator'; import { translator } from '../../../../common/translators/translator'; diff --git a/Extension/src/pages/options/components/Settings/TextInput/TextInput.tsx b/Extension/src/pages/options/components/Settings/TextInput/TextInput.tsx index 5c5c3a7345..3b02d277a5 100644 --- a/Extension/src/pages/options/components/Settings/TextInput/TextInput.tsx +++ b/Extension/src/pages/options/components/Settings/TextInput/TextInput.tsx @@ -28,7 +28,7 @@ import React, { import { debounce, type DebouncedFunc } from 'lodash-es'; -import type { SettingHandler } from '../../../types'; +import { type SettingHandler } from '../../../types'; import './input.pcss'; diff --git a/Extension/src/pages/options/components/Warnings/DynamicRulesLimitsWarning.tsx b/Extension/src/pages/options/components/Warnings/DynamicRulesLimitsWarning.tsx index 412e96721c..afa57fe55e 100644 --- a/Extension/src/pages/options/components/Warnings/DynamicRulesLimitsWarning.tsx +++ b/Extension/src/pages/options/components/Warnings/DynamicRulesLimitsWarning.tsx @@ -24,7 +24,7 @@ import { OptionsPageSections } from '../../../../common/nav'; import { translator } from '../../../../common/translators/translator'; import { rootStore } from '../../stores/RootStore'; -import type { LimitWarningProps } from './types'; +import { type LimitWarningProps } from './types'; import './limit-warning.pcss'; diff --git a/Extension/src/pages/options/components/Warnings/StaticFiltersLimitsWarning.tsx b/Extension/src/pages/options/components/Warnings/StaticFiltersLimitsWarning.tsx index 16caee1f22..698ecb8c08 100644 --- a/Extension/src/pages/options/components/Warnings/StaticFiltersLimitsWarning.tsx +++ b/Extension/src/pages/options/components/Warnings/StaticFiltersLimitsWarning.tsx @@ -24,7 +24,7 @@ import { OptionsPageSections } from '../../../../common/nav'; import { translator } from '../../../../common/translators/translator'; import { rootStore } from '../../stores/RootStore'; -import type { LimitWarningProps } from './types'; +import { type LimitWarningProps } from './types'; import './limit-warning.pcss'; diff --git a/Extension/src/pages/options/stores/UiStore.ts b/Extension/src/pages/options/stores/UiStore.ts index 8e6122dcbe..2038058692 100644 --- a/Extension/src/pages/options/stores/UiStore.ts +++ b/Extension/src/pages/options/stores/UiStore.ts @@ -23,11 +23,11 @@ import { } from 'mobx'; import { nanoid } from 'nanoid'; -import type { InvalidStaticResultData, InvalidDynamicResultData } from '../../../background/services/rules-limits'; +import { type InvalidStaticResultData, type InvalidDynamicResultData } from '../../../background/services/rules-limits'; // TODO: Maybe not import from components folder here? import { getDynamicWarningMessage, getStaticWarningMessage } from '../components/Warnings/messages'; -import type { RootStore } from './RootStore'; +import { type RootStore } from './RootStore'; export enum NotificationType { SUCCESS = 'success', diff --git a/Extension/src/pages/options/types.ts b/Extension/src/pages/options/types.ts index d84f9e898b..af4dd84a74 100644 --- a/Extension/src/pages/options/types.ts +++ b/Extension/src/pages/options/types.ts @@ -19,7 +19,7 @@ // TODO remove when types can be placed in the corresponding places. // This file is temporary storage for common types. We use it until not all modules moved to // typescript -import type { ChangeEvent } from 'react'; +import { type ChangeEvent } from 'react'; type HandlerPayload = { data: unknown, diff --git a/Extension/src/pages/popup/components/Popup/Popup.tsx b/Extension/src/pages/popup/components/Popup/Popup.tsx index 7e1115431e..cf675a6785 100644 --- a/Extension/src/pages/popup/components/Popup/Popup.tsx +++ b/Extension/src/pages/popup/components/Popup/Popup.tsx @@ -32,7 +32,7 @@ import { messenger } from '../../../services/messenger'; import { useAppearanceTheme } from '../../../common/hooks/useAppearanceTheme'; import { Icons as CommonIcons } from '../../../common/components/ui/Icons'; import { - ExtractedMessage, + type ExtractedMessage, messageHasTypeAndDataFields, messageHasTypeField, MessageType, diff --git a/Extension/src/pages/popup/stores/PopupStore.ts b/Extension/src/pages/popup/stores/PopupStore.ts index 2e098409ca..ef23d8af86 100644 --- a/Extension/src/pages/popup/stores/PopupStore.ts +++ b/Extension/src/pages/popup/stores/PopupStore.ts @@ -29,9 +29,9 @@ import { } from 'mobx'; import punycode from 'punycode/'; -import type { GetStatisticsDataResponse, SettingsData } from '../../../background/api'; +import { type GetStatisticsDataResponse, type SettingsData } from '../../../background/api'; import { type GetTabInfoForPopupResponse } from '../../../background/services'; -import type { PageStatsDataItem } from '../../../background/schema'; +import { type PageStatsDataItem } from '../../../background/schema'; import { messenger } from '../../services/messenger'; import { SpecificPopupState, diff --git a/Extension/src/pages/services/messenger.ts b/Extension/src/pages/services/messenger.ts index ad08d972a1..cab213574e 100644 --- a/Extension/src/pages/services/messenger.ts +++ b/Extension/src/pages/services/messenger.ts @@ -25,46 +25,44 @@ import { MessageType, messageHasTypeAndDataFields, messageHasTypeField, + type MessageWithoutHandlerName, + type ChangeUserSettingMessage, + type AddAndEnableFilterMessage, + type DisableFilterMessage, + type ApplySettingsJsonMessage, + type SetFilteringLogWindowStateMessage, + type SaveUserRulesMessage, + type SetConsentedFiltersMessage, + type GetIsConsentedFilterMessage, + type LoadCustomFilterInfoMessage, + type SubscribeToCustomFilterMessage, + type RemoveAntiBannerFilterMessage, + type GetTabInfoForPopupMessage, + type ChangeApplicationFilteringPausedMessage, + type OpenAbuseTabMessage, + type OpenSiteReportTabMessage, + type ResetUserRulesForPageMessage, + type RemoveAllowlistDomainMessage, + type AddAllowlistDomainMessage, + type GetFilteringInfoByTabIdMessage, + type ClearEventsByTabIdMessage, + type RefreshPageMessage, + type AddUserRuleMessage, + type RemoveUserRuleMessage, + type SetPreserveLogStateMessage, + type SetEditorStorageContentMessage, + type CanEnableStaticFilterMv3Message, + type CanEnableStaticGroupMv3Message, + type ExtractMessageResponse, + type ValidMessageTypes, + type SetNotificationViewedMessage, + type UpdateFullscreenUserRulesThemeMessage, + type AddUrlToTrustedMessage, + type ExtractedMessage, + type OpenSafebrowsingTrustedMessage, } from '../../common/messages'; -import type { - MessageWithoutHandlerName, - ChangeUserSettingMessage, - AddAndEnableFilterMessage, - DisableFilterMessage, - ApplySettingsJsonMessage, - SetFilteringLogWindowStateMessage, - SaveUserRulesMessage, - SetConsentedFiltersMessage, - GetIsConsentedFilterMessage, - LoadCustomFilterInfoMessage, - SubscribeToCustomFilterMessage, - RemoveAntiBannerFilterMessage, - GetTabInfoForPopupMessage, - ChangeApplicationFilteringPausedMessage, - OpenAbuseTabMessage, - OpenSiteReportTabMessage, - ResetUserRulesForPageMessage, - RemoveAllowlistDomainMessage, - AddAllowlistDomainMessage, - GetFilteringInfoByTabIdMessage, - ClearEventsByTabIdMessage, - RefreshPageMessage, - AddUserRuleMessage, - RemoveUserRuleMessage, - SetPreserveLogStateMessage, - SetEditorStorageContentMessage, - CanEnableStaticFilterMv3Message, - CanEnableStaticGroupMv3Message, - ExtractMessageResponse, - ValidMessageTypes, - SetNotificationViewedMessage, - UpdateFullscreenUserRulesThemeMessage, - AddUrlToTrustedMessage, - ExtractedMessage, - OpenSafebrowsingTrustedMessage, -} from '../../common/messages'; -import { NotifierType } from '../../common/constants'; -import { CreateEventListenerResponse } from '../../background/services/event'; +import { type NotifierType } from '../../common/constants'; +import { type CreateEventListenerResponse } from '../../background/services/event'; /** * @typedef {import('../../common/messages').MessageMap} MessageMap diff --git a/bamboo-specs/auto-build.yaml b/bamboo-specs/auto-build.yaml index 58a190f8c1..14aa3a9e42 100644 --- a/bamboo-specs/auto-build.yaml +++ b/bamboo-specs/auto-build.yaml @@ -130,7 +130,7 @@ branch-overrides: pnpm install ${bamboo.varsPnpm} - ./bamboo-specs/scripts/timeout-wrapper.sh 90s pnpm lint + ./bamboo-specs/scripts/timeout-wrapper.sh 120s pnpm lint final-tasks: - script: interpreter: SHELL diff --git a/bamboo-specs/tests.yaml b/bamboo-specs/tests.yaml index 736827c294..f0d29ce9b1 100644 --- a/bamboo-specs/tests.yaml +++ b/bamboo-specs/tests.yaml @@ -139,7 +139,7 @@ Lint: pnpm install ${bamboo.varsPnpm} - ./bamboo-specs/scripts/timeout-wrapper.sh 90s pnpm lint + ./bamboo-specs/scripts/timeout-wrapper.sh 120s pnpm lint final-tasks: - script: interpreter: SHELL diff --git a/tests/helpers/fixtures/getCustomExportFixture.ts b/tests/helpers/fixtures/getCustomExportFixture.ts index 1ba0666866..241862f19e 100644 --- a/tests/helpers/fixtures/getCustomExportFixture.ts +++ b/tests/helpers/fixtures/getCustomExportFixture.ts @@ -1,5 +1,5 @@ import { - Config, + type Config, RootOption, PROTOCOL_VERSION, GeneralSettingsOption, diff --git a/tests/helpers/fixtures/getDefaultExportFixture.ts b/tests/helpers/fixtures/getDefaultExportFixture.ts index 28fed302dc..5a3dbe65c8 100644 --- a/tests/helpers/fixtures/getDefaultExportFixture.ts +++ b/tests/helpers/fixtures/getDefaultExportFixture.ts @@ -1,5 +1,5 @@ import { - Config, + type Config, RootOption, PROTOCOL_VERSION, GeneralSettingsOption, diff --git a/tests/helpers/fixtures/getEmptyPageStatsDataFixture.ts b/tests/helpers/fixtures/getEmptyPageStatsDataFixture.ts index eabe2e6806..5f6a30c9bd 100644 --- a/tests/helpers/fixtures/getEmptyPageStatsDataFixture.ts +++ b/tests/helpers/fixtures/getEmptyPageStatsDataFixture.ts @@ -1,4 +1,4 @@ -import { PageStatsData } from '../../../Extension/src/background/schema'; +import { type PageStatsData } from '../../../Extension/src/background/schema'; import { PageStatsStorage } from '../../../Extension/src/background/storages/page-stats'; export const getEmptyPageStatsDataFixture = ( diff --git a/tests/helpers/fixtures/getEmptyStatisticDataFixture.ts b/tests/helpers/fixtures/getEmptyStatisticDataFixture.ts index 7e9d99d10b..62dab66c8b 100644 --- a/tests/helpers/fixtures/getEmptyStatisticDataFixture.ts +++ b/tests/helpers/fixtures/getEmptyStatisticDataFixture.ts @@ -1,4 +1,4 @@ -import { GetStatisticsDataResponse } from '../../../Extension/src/background/api'; +import { type GetStatisticsDataResponse } from '../../../Extension/src/background/api'; import { PageStatsStorage } from '../../../Extension/src/background/storages/page-stats'; import { translator } from '../../../Extension/src/common/translators/translator'; diff --git a/tests/helpers/fixtures/getI18nMetadataFixture.ts b/tests/helpers/fixtures/getI18nMetadataFixture.ts index e3621c2f69..7021115cac 100644 --- a/tests/helpers/fixtures/getI18nMetadataFixture.ts +++ b/tests/helpers/fixtures/getI18nMetadataFixture.ts @@ -1,6 +1,6 @@ import i18nMetadataMv2 from '../../../Extension/filters/chromium/filters_i18n.json'; import i18nMetadataMv3 from '../../../Extension/filters/chromium-mv3/filters_i18n.json'; -import { i18nMetadataValidator, I18nMetadata } from '../../../Extension/src/background/schema'; +import { i18nMetadataValidator, type I18nMetadata } from '../../../Extension/src/background/schema'; export const getI18nMetadataFixture = (): I18nMetadata => { const i18nMetadata = __IS_MV3__ ? i18nMetadataMv3 : i18nMetadataMv2; diff --git a/tests/helpers/fixtures/getMetadataFixture.ts b/tests/helpers/fixtures/getMetadataFixture.ts index e2821f71d3..4ba0485891 100644 --- a/tests/helpers/fixtures/getMetadataFixture.ts +++ b/tests/helpers/fixtures/getMetadataFixture.ts @@ -5,7 +5,7 @@ import { METADATA_RULESET_ID, MetadataRuleSet } from '@adguard/tsurlfilter/es/de import { getRuleSetPath } from '@adguard/tsurlfilter/es/declarative-converter-utils'; import metadataMv2 from '../../../Extension/filters/chromium/filters.json'; -import { metadataValidator, Metadata } from '../../../Extension/src/background/schema'; +import { metadataValidator, type Metadata } from '../../../Extension/src/background/schema'; // eslint-disable-next-line @typescript-eslint/naming-convention const __dirname = path.dirname(new URL(import.meta.url).pathname); diff --git a/tests/helpers/mocks/event-channel.ts b/tests/helpers/mocks/event-channel.ts index 4096558e97..abfc277afa 100644 --- a/tests/helpers/mocks/event-channel.ts +++ b/tests/helpers/mocks/event-channel.ts @@ -1,7 +1,7 @@ import { vi } from 'vitest'; // TODO: Use 'tswebextension' alias to work with mv3 version. AG-37302 -import type { EventChannelInterface } from '@adguard/tswebextension'; +import { type EventChannelInterface } from '@adguard/tswebextension'; export class MockedEventCannel implements EventChannelInterface { dispatch = vi.fn(); diff --git a/tests/helpers/mocks/storage.ts b/tests/helpers/mocks/storage.ts index d0f594bd0b..9798d86c39 100644 --- a/tests/helpers/mocks/storage.ts +++ b/tests/helpers/mocks/storage.ts @@ -1,5 +1,5 @@ import browser from 'sinon-chrome'; -import { Storage, Events } from 'webextension-polyfill'; +import { type Storage, type Events } from 'webextension-polyfill'; /** * Emulated browser.storage.local diff --git a/tests/helpers/mocks/tswebextension.ts b/tests/helpers/mocks/tswebextension.ts index 24293ea67d..a596d2cbfa 100644 --- a/tests/helpers/mocks/tswebextension.ts +++ b/tests/helpers/mocks/tswebextension.ts @@ -2,9 +2,9 @@ import { vi } from 'vitest'; // TODO: Use 'tswebextension' alias to work with mv3 version. AG-37302 import { - EventChannel, - FilteringLogEvent, - ConfigurationMV2Context, + type EventChannel, + type FilteringLogEvent, + type ConfigurationMV2Context, } from '@adguard/tswebextension'; import { MockedEventCannel } from './event-channel'; diff --git a/tests/src/background/api/document-block.test.ts b/tests/src/background/api/document-block.test.ts index 615d097a04..db813b0b47 100644 --- a/tests/src/background/api/document-block.test.ts +++ b/tests/src/background/api/document-block.test.ts @@ -1,5 +1,5 @@ import browser from 'sinon-chrome'; -import { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { describe, it, diff --git a/tests/src/background/api/filters/hit-stats.test.ts b/tests/src/background/api/filters/hit-stats.test.ts index d3f1894c06..0fe5d1e71b 100644 --- a/tests/src/background/api/filters/hit-stats.test.ts +++ b/tests/src/background/api/filters/hit-stats.test.ts @@ -16,7 +16,7 @@ import { getRuleSetId, getRuleSetPath } from '@adguard/tsurlfilter/es/declarativ import { network } from '../../../../../Extension/src/background/api/network'; import { HitStatsApi } from '../../../../../Extension/src/background/api/filters/hit-stats'; -import { FilterVersionData, HitStatsStorageData } from '../../../../../Extension/src/background/schema'; +import { type FilterVersionData, type HitStatsStorageData } from '../../../../../Extension/src/background/schema'; import { AntiBannerFiltersId, CUSTOM_FILTERS_START_ID, diff --git a/tests/src/background/api/filters/update-metadata.test.ts b/tests/src/background/api/filters/update-metadata.test.ts index 5723fe2ed7..efb112a0e3 100644 --- a/tests/src/background/api/filters/update-metadata.test.ts +++ b/tests/src/background/api/filters/update-metadata.test.ts @@ -1,4 +1,4 @@ -import { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import sinon from 'sinon'; import { afterEach, diff --git a/tests/src/background/api/filters/update.test.ts b/tests/src/background/api/filters/update.test.ts index 83a7cacd51..484377cbe7 100644 --- a/tests/src/background/api/filters/update.test.ts +++ b/tests/src/background/api/filters/update.test.ts @@ -1,4 +1,4 @@ -import { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { afterEach, beforeEach, diff --git a/tests/src/background/api/page-stats.test.ts b/tests/src/background/api/page-stats.test.ts index e0c641e257..aa0848da1f 100644 --- a/tests/src/background/api/page-stats.test.ts +++ b/tests/src/background/api/page-stats.test.ts @@ -1,5 +1,5 @@ import browser from 'sinon-chrome'; -import { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { vi, describe, diff --git a/tests/src/background/api/safebrowsing.test.ts b/tests/src/background/api/safebrowsing.test.ts index 3d43bf2d93..3309b718ab 100644 --- a/tests/src/background/api/safebrowsing.test.ts +++ b/tests/src/background/api/safebrowsing.test.ts @@ -1,5 +1,5 @@ import browser from 'sinon-chrome'; -import { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { describe, beforeEach, diff --git a/tests/src/background/api/settings.test.ts b/tests/src/background/api/settings.test.ts index 35728e1177..8ff2bb72ef 100644 --- a/tests/src/background/api/settings.test.ts +++ b/tests/src/background/api/settings.test.ts @@ -1,5 +1,5 @@ import browser from 'sinon-chrome'; -import { Storage } from 'webextension-polyfill'; +import { type Storage } from 'webextension-polyfill'; import { vi, describe, @@ -18,7 +18,7 @@ import { import { Network, SettingsApi, - SettingsData, + type SettingsData, } from '../../../../Extension/src/background/api'; import { App } from '../../../../Extension/src/background/app'; import { diff --git a/tests/src/background/storages/browser-storage.test.ts b/tests/src/background/storages/browser-storage.test.ts index 6b084a1fcf..c908060c90 100644 --- a/tests/src/background/storages/browser-storage.test.ts +++ b/tests/src/background/storages/browser-storage.test.ts @@ -1,4 +1,4 @@ -import browser, { Storage } from 'webextension-polyfill'; +import browser, { type Storage } from 'webextension-polyfill'; import { afterEach, beforeEach, diff --git a/tests/src/background/storages/filters-adapter.test.ts b/tests/src/background/storages/filters-adapter.test.ts index fb0ffb0a60..943f34fbd0 100644 --- a/tests/src/background/storages/filters-adapter.test.ts +++ b/tests/src/background/storages/filters-adapter.test.ts @@ -5,7 +5,7 @@ import { describe, expect, it, - MockInstance, + type MockInstance, vi, } from 'vitest'; diff --git a/tests/src/background/storages/hybrid-storage.test.ts b/tests/src/background/storages/hybrid-storage.test.ts index 83c9fd2ce7..71bde84fce 100644 --- a/tests/src/background/storages/hybrid-storage.test.ts +++ b/tests/src/background/storages/hybrid-storage.test.ts @@ -1,4 +1,4 @@ -import browser, { Storage } from 'webextension-polyfill'; +import browser, { type Storage } from 'webextension-polyfill'; import { cloneDeep } from 'lodash-es'; import { afterEach, diff --git a/tools/browser-test/index.ts b/tools/browser-test/index.ts index e50a3f36b3..41da82adee 100644 --- a/tools/browser-test/index.ts +++ b/tools/browser-test/index.ts @@ -45,7 +45,7 @@ import { } from './test-constants'; import { addQunitListeners, - SerializedConfiguration, + type SerializedConfiguration, setTsWebExtensionConfig, waitUntilExtensionInitialized, } from './page-injections'; @@ -55,7 +55,7 @@ import { logTestResult, logTestTimeout, logTestUnknownError, - TestDetails, + type TestDetails, } from './logger'; import { Product } from './product'; import { TestStatus } from './text-color'; diff --git a/tools/browser-test/requests.ts b/tools/browser-test/requests.ts index b714eeac54..088d6e553d 100644 --- a/tools/browser-test/requests.ts +++ b/tools/browser-test/requests.ts @@ -19,7 +19,7 @@ import axios from 'axios'; import { TESTCASES_BASE_URL, TESTCASES_DATA_PATH } from './test-constants'; -import { Testcase } from './testcase'; +import { type Testcase } from './testcase'; axios.defaults.baseURL = TESTCASES_BASE_URL; diff --git a/tools/browser-test/testcase.ts b/tools/browser-test/testcase.ts index 155bc425f6..97be8a118b 100644 --- a/tools/browser-test/testcase.ts +++ b/tools/browser-test/testcase.ts @@ -16,7 +16,7 @@ * along with AdGuard Browser Extension. If not, see . */ -import { Product } from './product'; +import { type Product } from './product'; /** * Key is a product name, diff --git a/tools/bundle/chrome-mv3/webpack.chrome-mv3.ts b/tools/bundle/chrome-mv3/webpack.chrome-mv3.ts index 7ad6b74368..035fb684da 100644 --- a/tools/bundle/chrome-mv3/webpack.chrome-mv3.ts +++ b/tools/bundle/chrome-mv3/webpack.chrome-mv3.ts @@ -22,7 +22,7 @@ import { fileURLToPath } from 'node:url'; import CopyWebpackPlugin from 'copy-webpack-plugin'; import { merge } from 'webpack-merge'; -import type { Configuration } from 'webpack'; +import { type Configuration } from 'webpack'; import { RulesetsInjector } from '@adguard/dnr-rulesets'; diff --git a/tools/bundle/chrome/webpack.chrome.ts b/tools/bundle/chrome/webpack.chrome.ts index 83ea1efb12..ffc3d6de1f 100644 --- a/tools/bundle/chrome/webpack.chrome.ts +++ b/tools/bundle/chrome/webpack.chrome.ts @@ -21,7 +21,7 @@ import { fileURLToPath } from 'node:url'; import CopyWebpackPlugin from 'copy-webpack-plugin'; import { merge } from 'webpack-merge'; -import { Configuration } from 'webpack'; +import { type Configuration } from 'webpack'; import { genMv2CommonConfig } from '../webpack.common-mv2'; import { CHROMIUM_DEVTOOLS_ENTRIES, CHROMIUM_DEVTOOLS_PAGES_PLUGINS } from '../webpack.common'; diff --git a/tools/bundle/common-constants.ts b/tools/bundle/common-constants.ts index b5af7d6629..6aab5955aa 100644 --- a/tools/bundle/common-constants.ts +++ b/tools/bundle/common-constants.ts @@ -19,7 +19,7 @@ import path from 'node:path'; import { fileURLToPath } from 'node:url'; -import HtmlWebpackPlugin from 'html-webpack-plugin'; +import type HtmlWebpackPlugin from 'html-webpack-plugin'; import { Browser } from '../constants'; diff --git a/tools/bundle/edge/webpack.edge.ts b/tools/bundle/edge/webpack.edge.ts index 0efd5ef6d4..289294f061 100644 --- a/tools/bundle/edge/webpack.edge.ts +++ b/tools/bundle/edge/webpack.edge.ts @@ -21,7 +21,7 @@ import { fileURLToPath } from 'node:url'; import CopyWebpackPlugin from 'copy-webpack-plugin'; import { merge } from 'webpack-merge'; -import { Configuration } from 'webpack'; +import { type Configuration } from 'webpack'; import { genMv2CommonConfig } from '../webpack.common-mv2'; import { CHROMIUM_DEVTOOLS_ENTRIES, CHROMIUM_DEVTOOLS_PAGES_PLUGINS } from '../webpack.common'; diff --git a/tools/bundle/firefox/webpack.firefox.ts b/tools/bundle/firefox/webpack.firefox.ts index 1d1632220d..fbaed4f0bd 100644 --- a/tools/bundle/firefox/webpack.firefox.ts +++ b/tools/bundle/firefox/webpack.firefox.ts @@ -22,7 +22,7 @@ import { fileURLToPath } from 'node:url'; import CopyWebpackPlugin from 'copy-webpack-plugin'; import ZipWebpackPlugin from 'zip-webpack-plugin'; import { merge } from 'webpack-merge'; -import { WebpackPluginInstance } from 'webpack'; +import { type WebpackPluginInstance } from 'webpack'; import { genMv2CommonConfig } from '../webpack.common-mv2'; import { updateManifestBuffer } from '../../helpers'; diff --git a/tools/bundle/helpers.ts b/tools/bundle/helpers.ts index 8d7b7382e5..fcfae557c0 100644 --- a/tools/bundle/helpers.ts +++ b/tools/bundle/helpers.ts @@ -17,8 +17,8 @@ */ import { - Browser, - BuildTargetEnv, + type Browser, + type BuildTargetEnv, ENV_CONF, type EnvConfig, } from '../constants'; diff --git a/tools/bundle/webpack.common.ts b/tools/bundle/webpack.common.ts index c04ef50f74..b2823d057e 100644 --- a/tools/bundle/webpack.common.ts +++ b/tools/bundle/webpack.common.ts @@ -24,7 +24,7 @@ import CopyWebpackPlugin from 'copy-webpack-plugin'; import ZipWebpackPlugin from 'zip-webpack-plugin'; import { CleanWebpackPlugin } from 'clean-webpack-plugin'; // webpack.DefinePlugin is not named exported by webpack. -import webpack, { Configuration, type EntryObject } from 'webpack'; +import webpack, { type Configuration, type EntryObject } from 'webpack'; import { BUILD_PATH, diff --git a/tools/helpers.ts b/tools/helpers.ts index a7a7c47710..47c0ea3539 100644 --- a/tools/helpers.ts +++ b/tools/helpers.ts @@ -21,7 +21,7 @@ import path from 'node:path'; import { fileURLToPath } from 'node:url'; import { merge } from 'webpack-merge'; -import type { Manifest } from 'webextension-polyfill'; +import { type Manifest } from 'webextension-polyfill'; import { Redirects } from '@adguard/scriptlets/redirects'; diff --git a/tools/locales/download-locales.js b/tools/locales/download-locales.js index f5f0a77dd5..e18aabc577 100644 --- a/tools/locales/download-locales.js +++ b/tools/locales/download-locales.js @@ -137,7 +137,9 @@ const shouldRetry = (errorMessage) => { * @returns {Promise} Resolves after the specified delay. */ const delayExecution = (delay) => { - return new Promise((resolve) => { setTimeout(resolve, delay); }); + return new Promise((resolve) => { + setTimeout(resolve, delay); + }); }; /** diff --git a/tools/resources/dangerous-rules/safety-checker.ts b/tools/resources/dangerous-rules/safety-checker.ts index b68dfa64b9..e4b177d972 100644 --- a/tools/resources/dangerous-rules/safety-checker.ts +++ b/tools/resources/dangerous-rules/safety-checker.ts @@ -22,7 +22,7 @@ import 'dotenv/config'; import { dangerousRules } from './samples/dangerous'; import { safeRules } from './samples/safe'; -import { RuleSample } from './samples/samples-types'; +import { type RuleSample } from './samples/samples-types'; /** * Result type. diff --git a/tools/resources/dangerous-rules/samples/dangerous.ts b/tools/resources/dangerous-rules/samples/dangerous.ts index 093d24ddaa..9d3e6102f4 100644 --- a/tools/resources/dangerous-rules/samples/dangerous.ts +++ b/tools/resources/dangerous-rules/samples/dangerous.ts @@ -17,7 +17,7 @@ * along with AdGuard Browser Extension. If not, see . */ -import { RuleSample } from './samples-types'; +import { type RuleSample } from './samples-types'; /** * This is the list of dangerous rules used for creating prompt to open ai api. diff --git a/tools/resources/dangerous-rules/samples/safe.ts b/tools/resources/dangerous-rules/samples/safe.ts index 0d796574f6..1ec2962613 100644 --- a/tools/resources/dangerous-rules/samples/safe.ts +++ b/tools/resources/dangerous-rules/samples/safe.ts @@ -17,7 +17,7 @@ * along with AdGuard Browser Extension. If not, see . */ -import { RuleSample } from './samples-types'; +import { type RuleSample } from './samples-types'; /** * List of the rules, which are considered to be safe. It used to prepare prompt to open ai api. diff --git a/tools/resources/filter-extractor.ts b/tools/resources/filter-extractor.ts index db1e045948..0b16aac1a1 100644 --- a/tools/resources/filter-extractor.ts +++ b/tools/resources/filter-extractor.ts @@ -23,7 +23,7 @@ import { RuleSetByteRangeCategory, } from '@adguard/tsurlfilter/es/declarative-converter'; import { getRuleSetPath } from '@adguard/tsurlfilter/es/declarative-converter-utils'; -import { ByteRange } from '@adguard/tsurlfilter'; +import { type ByteRange } from '@adguard/tsurlfilter'; /** * Reads a specific byte range from a file. diff --git a/vitest.setup.ts b/vitest.setup.ts index c7bf7bdccf..010878cb6a 100644 --- a/vitest.setup.ts +++ b/vitest.setup.ts @@ -21,7 +21,7 @@ import browser from 'sinon-chrome'; import escape from 'css.escape'; // @ts-ignore import chrome from 'sinon-chrome/extensions'; -import type { DebouncedFunc } from 'lodash-es/debounce'; +import { type DebouncedFunc } from 'lodash-es/debounce'; import { ResourceType } from '@adguard/tsurlfilter/es/declarative-converter';