@adguard/agtree
Version:
Tool set for working with adblock filter lists
77 lines (75 loc) • 2.39 kB
JavaScript
/*
* AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 GMT)
* (c) 2025 Adguard Software Ltd.
* Released under the MIT license
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
*/
/* eslint-disable no-bitwise */
/**
* @file Provides platform enums.
* The difference between specific and generic platforms is that specific platforms are individual platforms
* (e.g. AdGuard for Windows, AdGuard for Android, etc.),
* while generic platforms are groups of specific platforms
* (e.g. AdGuard for any OS, AdGuard for any Chromium-based extension, etc.).
*/
/**
* List of specific platforms.
*/
const SpecificPlatform = {
AdgOsWindows: 1,
AdgOsMac: 1 << 1,
AdgOsAndroid: 1 << 2,
AdgExtChrome: 1 << 3,
AdgExtOpera: 1 << 4,
AdgExtEdge: 1 << 5,
AdgExtFirefox: 1 << 6,
AdgCbAndroid: 1 << 7,
AdgCbIos: 1 << 8,
AdgCbSafari: 1 << 9,
UboExtChrome: 1 << 10,
UboExtOpera: 1 << 11,
UboExtEdge: 1 << 12,
UboExtFirefox: 1 << 13,
AbpExtChrome: 1 << 14,
AbpExtOpera: 1 << 15,
AbpExtEdge: 1 << 16,
AbpExtFirefox: 1 << 17,
};
const AdgOsAny = SpecificPlatform.AdgOsWindows
| SpecificPlatform.AdgOsMac
| SpecificPlatform.AdgOsAndroid;
const AdgSafariAny = SpecificPlatform.AdgCbSafari | SpecificPlatform.AdgCbIos;
const AdgExtChromium = SpecificPlatform.AdgExtChrome
| SpecificPlatform.AdgExtOpera
| SpecificPlatform.AdgExtEdge;
const AdgExtAny = AdgExtChromium | SpecificPlatform.AdgExtFirefox;
const AdgAny = AdgExtAny | AdgOsAny | AdgSafariAny | SpecificPlatform.AdgCbAndroid;
const UboExtChromium = SpecificPlatform.UboExtChrome
| SpecificPlatform.UboExtOpera
| SpecificPlatform.UboExtEdge;
const UboExtAny = UboExtChromium | SpecificPlatform.UboExtFirefox;
const UboAny = UboExtAny;
const AbpExtChromium = SpecificPlatform.AbpExtChrome
| SpecificPlatform.AbpExtOpera
| SpecificPlatform.AbpExtEdge;
const AbpExtAny = AbpExtChromium | SpecificPlatform.AbpExtFirefox;
const AbpAny = AbpExtAny;
const Any = AdgAny | UboAny | AbpAny;
/**
* List of generic platforms (combinations of specific platforms).
*/
const GenericPlatform = {
AdgOsAny,
AdgSafariAny,
AdgExtChromium,
AdgExtAny,
AdgAny,
UboExtChromium,
UboExtAny,
UboAny,
AbpExtChromium,
AbpExtAny,
AbpAny,
Any,
};
export { GenericPlatform, SpecificPlatform };