@adguard/aglint
Version:
Universal adblock filter list linter.
57 lines (55 loc) • 1.82 kB
JavaScript
/*
* AGLint v3.0.0 (build date: Wed, 21 May 2025 13:24:14 GMT)
* (c) 2025 AdGuard Software Ltd.
* Released under the MIT license
* https://github.com/AdguardTeam/AGLint#readme
*/
/**
* @file Constant values used by all parts of the library
*/
const REPO_URL = 'https://github.com/AdguardTeam/AGLint';
// General
const EMPTY = '';
const SPACE = ' ';
const TAB = '\t';
const COLON = ':';
const COMMA = ',';
const DOT = '.';
const HASHMARK = '#';
// Escape characters
const BACKSLASH = '\\';
const ESCAPE_CHARACTER = BACKSLASH;
// Newlines
const CR = '\r';
const FF = '\f';
const LF = '\n';
const CRLF = CR + LF;
const DOUBLE_NEWLINE = '\n\n';
const NEWLINE = LF;
// Brackets
const OPEN_PARENTHESIS = '(';
const CLOSE_PARENTHESIS = ')';
const OPEN_SQUARE_BRACKET = '[';
const CLOSE_SQUARE_BRACKET = ']';
// Letters
const SMALL_LETTER_A = 'a';
const SMALL_LETTER_Z = 'z';
// Capital letters
const CAPITAL_LETTER_A = 'A';
const CAPITAL_LETTER_Z = 'Z';
// Numbers as strings
const NUMBER_0 = '0';
const NUMBER_9 = '9';
const IF_DIRECTIVE = 'if';
const ELSE_DIRECTIVE = 'else';
const ENDIF_DIRECTIVE = 'endif';
const INCLUDE_DIRECTIVE = 'include';
const SAFARI_CB_AFFINITY_DIRECTIVE = 'safari_cb_affinity';
const SUPPORTED_PREPROCESSOR_DIRECTIVES = new Set([
ELSE_DIRECTIVE,
ENDIF_DIRECTIVE,
IF_DIRECTIVE,
INCLUDE_DIRECTIVE,
SAFARI_CB_AFFINITY_DIRECTIVE,
]);
export { BACKSLASH, CAPITAL_LETTER_A, CAPITAL_LETTER_Z, CLOSE_PARENTHESIS, CLOSE_SQUARE_BRACKET, COLON, COMMA, CR, CRLF, DOT, DOUBLE_NEWLINE, ELSE_DIRECTIVE, EMPTY, ENDIF_DIRECTIVE, ESCAPE_CHARACTER, FF, HASHMARK, IF_DIRECTIVE, INCLUDE_DIRECTIVE, LF, NEWLINE, NUMBER_0, NUMBER_9, OPEN_PARENTHESIS, OPEN_SQUARE_BRACKET, REPO_URL, SAFARI_CB_AFFINITY_DIRECTIVE, SMALL_LETTER_A, SMALL_LETTER_Z, SPACE, SUPPORTED_PREPROCESSOR_DIRECTIVES, TAB };