@adguard/agtree 4.0.0 → 4.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -3
- package/dist/ast-utils/clone.js +12 -8
- package/dist/ast-utils/modifiers.js +13 -11
- package/dist/ast-utils/network-rules.js +10 -9
- package/dist/ast-utils/scriptlets.js +20 -18
- package/dist/common/abp-snippet-injection-body-common.js +1 -1
- package/dist/common/agent-common.js +1 -1
- package/dist/common/ubo-html-filtering-body-common.js +1 -1
- package/dist/common/ubo-selector-common.js +1 -1
- package/dist/compatibility-tables/base.js +7 -6
- package/dist/compatibility-tables/compatibility-table-data.js +1 -1
- package/dist/compatibility-tables/modifiers.js +4 -3
- package/dist/compatibility-tables/platforms.js +1 -1
- package/dist/compatibility-tables/redirects.js +4 -4
- package/dist/compatibility-tables/schemas/base.js +2 -2
- package/dist/compatibility-tables/schemas/modifier.js +4 -4
- package/dist/compatibility-tables/schemas/platform.js +3 -2
- package/dist/compatibility-tables/schemas/redirect.js +1 -1
- package/dist/compatibility-tables/schemas/resource-type.js +1 -1
- package/dist/compatibility-tables/schemas/scriptlet.js +1 -1
- package/dist/compatibility-tables/scriptlets.js +2 -2
- package/dist/compatibility-tables/utils/platform-helpers.js +6 -4
- package/dist/compatibility-tables/utils/resource-type-helpers.js +1 -1
- package/dist/compatibility-tables/utils/zod-camelcase.js +3 -3
- package/dist/converter/base-interfaces/base-converter.js +22 -16
- package/dist/converter/base-interfaces/conversion-result.js +15 -11
- package/dist/converter/base-interfaces/rule-converter-base.js +19 -13
- package/dist/converter/comment/index.js +11 -9
- package/dist/converter/cosmetic/css.js +12 -10
- package/dist/converter/cosmetic/element-hiding.js +12 -10
- package/dist/converter/cosmetic/header-removal.js +16 -13
- package/dist/converter/cosmetic/html.js +18 -18
- package/dist/converter/cosmetic/index.js +28 -24
- package/dist/converter/cosmetic/rule-modifiers/adg.js +15 -12
- package/dist/converter/cosmetic/rule-modifiers/ubo.js +22 -19
- package/dist/converter/cosmetic/scriptlet.js +26 -22
- package/dist/converter/css/index.js +13 -11
- package/dist/converter/data/css.js +8 -8
- package/dist/converter/filter-list.js +12 -10
- package/dist/converter/index.js +1 -1
- package/dist/converter/misc/network-rule-modifier.js +20 -16
- package/dist/converter/network/index.js +16 -12
- package/dist/converter/raw-filter-list.js +12 -10
- package/dist/converter/raw-rule.js +14 -12
- package/dist/converter/rule.js +17 -13
- package/dist/errors/adblock-syntax-error.js +1 -1
- package/dist/errors/not-implemented-error.js +2 -2
- package/dist/errors/rule-conversion-error.js +2 -2
- package/dist/generator/base-generator.js +1 -1
- package/dist/generator/comment/agent-comment-generator.js +4 -3
- package/dist/generator/comment/agent-generator.js +5 -4
- package/dist/generator/comment/comment-rule-generator.js +6 -5
- package/dist/generator/comment/config-comment-generator.js +5 -4
- package/dist/generator/comment/hint-comment-generator.js +5 -4
- package/dist/generator/comment/hint-generator.js +4 -3
- package/dist/generator/comment/metadata-comment-generator.js +3 -2
- package/dist/generator/comment/pre-processor-comment-generator.js +6 -5
- package/dist/generator/comment/simple-comment-generator.js +3 -2
- package/dist/generator/cosmetic/cosmetic-rule-body-generator.js +13 -11
- package/dist/generator/cosmetic/cosmetic-rule-generator.js +5 -4
- package/dist/generator/cosmetic/cosmetic-rule-pattern-generator.js +7 -5
- package/dist/generator/cosmetic/html-filtering-body/adg-html-filtering-body-generator.js +3 -3
- package/dist/generator/cosmetic/html-filtering-body/html-filtering-body-generator.js +1 -1
- package/dist/generator/cosmetic/html-filtering-body/ubo-html-filtering-body-generator.js +2 -2
- package/dist/generator/cosmetic/scriptlet-body/abp-snippet-injection-body-generator.js +7 -5
- package/dist/generator/cosmetic/scriptlet-body/adg-scriptlet-injection-body-generator.js +7 -5
- package/dist/generator/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-generator.js +8 -6
- package/dist/generator/cosmetic/selector/attribute-selector-generator.js +2 -2
- package/dist/generator/cosmetic/selector/class-selector-generator.js +1 -1
- package/dist/generator/cosmetic/selector/complex-selector-generator.js +4 -4
- package/dist/generator/cosmetic/selector/id-selector-generator.js +1 -1
- package/dist/generator/cosmetic/selector/pseudo-class-selector-generator.js +1 -1
- package/dist/generator/cosmetic/selector/selector-combinator-generator.js +1 -1
- package/dist/generator/cosmetic/selector/selector-list-generator.js +1 -1
- package/dist/generator/cosmetic/selector/type-selector-generator.js +1 -1
- package/dist/generator/css/adg-css-injection-generator.js +5 -1
- package/dist/generator/filterlist-generator.js +5 -4
- package/dist/generator/index.js +1 -1
- package/dist/generator/misc/domain-list-generator.js +1 -1
- package/dist/generator/misc/list-items-generator.js +5 -3
- package/dist/generator/misc/logical-expression-generator.js +5 -4
- package/dist/generator/misc/modifier-generator.js +4 -3
- package/dist/generator/misc/modifier-list-generator.js +5 -4
- package/dist/generator/misc/parameter-list-generator.js +6 -5
- package/dist/generator/misc/value-generator.js +2 -1
- package/dist/generator/network/host-rule-generator.js +2 -1
- package/dist/generator/network/network-rule-generator.js +2 -1
- package/dist/generator/rule-generator.js +6 -4
- package/dist/index.js +1 -2
- package/dist/nodes/index.js +1 -1
- package/dist/package.json.js +2 -2
- package/dist/parser/base-parser.js +1 -1
- package/dist/parser/comment/agent-comment-parser.js +11 -9
- package/dist/parser/comment/agent-parser.js +12 -9
- package/dist/parser/comment/comment-parser.js +8 -7
- package/dist/parser/comment/config-comment-parser.js +9 -6
- package/dist/parser/comment/hint-comment-parser.js +17 -12
- package/dist/parser/comment/hint-parser.js +10 -7
- package/dist/parser/comment/metadata-comment-parser.js +9 -7
- package/dist/parser/comment/preprocessor-parser.js +14 -11
- package/dist/parser/comment/simple-comment-parser.js +5 -2
- package/dist/parser/cosmetic/cosmetic-rule-parser.js +29 -25
- package/dist/parser/cosmetic/html-filtering-body/adg-html-filtering-body-parser.js +3 -3
- package/dist/parser/cosmetic/html-filtering-body/html-filtering-body-parser.js +4 -4
- package/dist/parser/cosmetic/html-filtering-body/ubo-html-filtering-body-parser.js +7 -7
- package/dist/parser/cosmetic/scriptlet-body/abp-snippet-injection-body-parser.js +12 -9
- package/dist/parser/cosmetic/scriptlet-body/adg-scriptlet-injection-body-parser.js +12 -9
- package/dist/parser/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-parser.js +11 -8
- package/dist/parser/cosmetic/selector/handlers/attribute-selector-handler.js +1 -1
- package/dist/parser/cosmetic/selector/handlers/class-selector-handler.js +1 -1
- package/dist/parser/cosmetic/selector/handlers/complex-selector-handler.js +1 -1
- package/dist/parser/cosmetic/selector/handlers/compound-selector-handler.js +2 -2
- package/dist/parser/cosmetic/selector/handlers/id-selector-handler.js +1 -1
- package/dist/parser/cosmetic/selector/handlers/pseudo-class-selector-handler.js +5 -3
- package/dist/parser/cosmetic/selector/handlers/type-selector-handler.js +1 -1
- package/dist/parser/cosmetic/selector/selector-list-parser.js +7 -7
- package/dist/parser/css/adg-css-injection-parser.js +4 -3
- package/dist/parser/css/balancing.js +22 -18
- package/dist/parser/css/constants.js +1 -1
- package/dist/parser/css/css-token-stream.js +15 -4
- package/dist/parser/css/ubo-selector-parser.js +8 -4
- package/dist/parser/filterlist-parser.js +8 -5
- package/dist/parser/index.js +1 -1
- package/dist/parser/misc/app-list-parser.js +4 -3
- package/dist/parser/misc/domain-list-parser.js +8 -6
- package/dist/parser/misc/list-items-parser.js +8 -6
- package/dist/parser/misc/logical-expression-parser.js +25 -18
- package/dist/parser/misc/method-list-parser.js +4 -3
- package/dist/parser/misc/modifier-list.js +3 -3
- package/dist/parser/misc/modifier-parser.js +5 -4
- package/dist/parser/misc/parameter-list-parser.js +6 -5
- package/dist/parser/misc/stealth-option-list-parser.js +4 -3
- package/dist/parser/misc/ubo-parameter-list-parser.js +10 -9
- package/dist/parser/misc/value-parser.js +2 -2
- package/dist/parser/network/host-rule-parser.js +15 -7
- package/dist/parser/network/network-rule-parser.js +11 -9
- package/dist/parser/options.js +1 -1
- package/dist/parser/rule-parser.js +11 -7
- package/dist/types/ast-utils/clone.d.ts +12 -8
- package/dist/types/ast-utils/filter-list.d.ts +5 -4
- package/dist/types/ast-utils/modifiers.d.ts +11 -9
- package/dist/types/ast-utils/network-rules.d.ts +8 -7
- package/dist/types/ast-utils/scriptlets.d.ts +19 -17
- package/dist/types/compatibility-tables/base.d.ts +6 -5
- package/dist/types/compatibility-tables/redirects.d.ts +1 -1
- package/dist/types/compatibility-tables/schemas/platform.d.ts +1 -0
- package/dist/types/compatibility-tables/utils/platform-helpers.d.ts +5 -3
- package/dist/types/compatibility-tables/utils/zod-camelcase.d.ts +3 -3
- package/dist/types/converter/base-interfaces/base-converter.d.ts +21 -15
- package/dist/types/converter/base-interfaces/conversion-result.d.ts +20 -16
- package/dist/types/converter/base-interfaces/rule-converter-base.d.ts +19 -13
- package/dist/types/converter/comment/index.d.ts +9 -7
- package/dist/types/converter/cosmetic/css.d.ts +9 -7
- package/dist/types/converter/cosmetic/element-hiding.d.ts +9 -7
- package/dist/types/converter/cosmetic/header-removal.d.ts +10 -7
- package/dist/types/converter/cosmetic/html.d.ts +9 -9
- package/dist/types/converter/cosmetic/index.d.ts +14 -10
- package/dist/types/converter/cosmetic/rule-modifiers/adg.d.ts +9 -6
- package/dist/types/converter/cosmetic/rule-modifiers/ubo.d.ts +9 -6
- package/dist/types/converter/cosmetic/scriptlet.d.ts +14 -10
- package/dist/types/converter/css/index.d.ts +9 -7
- package/dist/types/converter/data/css.d.ts +1 -1
- package/dist/types/converter/filter-list.d.ts +10 -8
- package/dist/types/converter/index.d.ts +1 -1
- package/dist/types/converter/misc/network-rule-modifier.d.ts +13 -9
- package/dist/types/converter/network/index.d.ts +15 -11
- package/dist/types/converter/raw-filter-list.d.ts +8 -6
- package/dist/types/converter/raw-rule.d.ts +8 -6
- package/dist/types/converter/rule.d.ts +14 -10
- package/dist/types/errors/not-implemented-error.d.ts +1 -1
- package/dist/types/errors/rule-conversion-error.d.ts +1 -1
- package/dist/types/generator/comment/agent-comment-generator.d.ts +3 -2
- package/dist/types/generator/comment/agent-generator.d.ts +4 -3
- package/dist/types/generator/comment/comment-rule-generator.d.ts +3 -2
- package/dist/types/generator/comment/config-comment-generator.d.ts +4 -3
- package/dist/types/generator/comment/hint-comment-generator.d.ts +4 -3
- package/dist/types/generator/comment/hint-generator.d.ts +3 -2
- package/dist/types/generator/comment/metadata-comment-generator.d.ts +1 -0
- package/dist/types/generator/comment/pre-processor-comment-generator.d.ts +3 -2
- package/dist/types/generator/comment/simple-comment-generator.d.ts +2 -1
- package/dist/types/generator/cosmetic/cosmetic-rule-body-generator.d.ts +7 -5
- package/dist/types/generator/cosmetic/cosmetic-rule-generator.d.ts +3 -2
- package/dist/types/generator/cosmetic/cosmetic-rule-pattern-generator.d.ts +4 -2
- package/dist/types/generator/cosmetic/html-filtering-body/adg-html-filtering-body-generator.d.ts +1 -1
- package/dist/types/generator/cosmetic/html-filtering-body/html-filtering-body-generator.d.ts +1 -1
- package/dist/types/generator/cosmetic/html-filtering-body/ubo-html-filtering-body-generator.d.ts +2 -2
- package/dist/types/generator/cosmetic/scriptlet-body/abp-snippet-injection-body-generator.d.ts +5 -3
- package/dist/types/generator/cosmetic/scriptlet-body/adg-scriptlet-injection-body-generator.d.ts +5 -3
- package/dist/types/generator/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-generator.d.ts +7 -5
- package/dist/types/generator/css/adg-css-injection-generator.d.ts +4 -0
- package/dist/types/generator/css/ubo-selector-generator.d.ts +4 -3
- package/dist/types/generator/filterlist-generator.d.ts +3 -2
- package/dist/types/generator/misc/list-items-generator.d.ts +4 -2
- package/dist/types/generator/misc/logical-expression-generator.d.ts +4 -3
- package/dist/types/generator/misc/modifier-generator.d.ts +3 -2
- package/dist/types/generator/misc/modifier-list-generator.d.ts +4 -3
- package/dist/types/generator/misc/parameter-list-generator.d.ts +5 -4
- package/dist/types/generator/misc/value-generator.d.ts +1 -0
- package/dist/types/generator/network/host-rule-generator.d.ts +1 -0
- package/dist/types/generator/network/network-rule-generator.d.ts +1 -0
- package/dist/types/generator/rule-generator.d.ts +5 -3
- package/dist/types/index.d.ts +1 -2
- package/dist/types/nodes/index.d.ts +55 -54
- package/dist/types/parser/comment/agent-comment-parser.d.ts +5 -3
- package/dist/types/parser/comment/agent-parser.d.ts +7 -4
- package/dist/types/parser/comment/comment-parser.d.ts +5 -3
- package/dist/types/parser/comment/config-comment-parser.d.ts +5 -2
- package/dist/types/parser/comment/hint-comment-parser.d.ts +11 -6
- package/dist/types/parser/comment/hint-parser.d.ts +6 -3
- package/dist/types/parser/comment/metadata-comment-parser.d.ts +5 -3
- package/dist/types/parser/comment/preprocessor-parser.d.ts +9 -6
- package/dist/types/parser/comment/simple-comment-parser.d.ts +3 -0
- package/dist/types/parser/cosmetic/cosmetic-rule-parser.d.ts +9 -6
- package/dist/types/parser/cosmetic/html-filtering-body/adg-html-filtering-body-parser.d.ts +3 -3
- package/dist/types/parser/cosmetic/html-filtering-body/html-filtering-body-parser.d.ts +4 -4
- package/dist/types/parser/cosmetic/html-filtering-body/ubo-html-filtering-body-parser.d.ts +4 -4
- package/dist/types/parser/cosmetic/scriptlet-body/abp-snippet-injection-body-parser.d.ts +8 -5
- package/dist/types/parser/cosmetic/scriptlet-body/adg-scriptlet-injection-body-parser.d.ts +9 -6
- package/dist/types/parser/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-parser.d.ts +8 -5
- package/dist/types/parser/cosmetic/selector/context.d.ts +2 -2
- package/dist/types/parser/cosmetic/selector/selector-list-parser.d.ts +2 -2
- package/dist/types/parser/css/adg-css-injection-parser.d.ts +1 -0
- package/dist/types/parser/css/balancing.d.ts +17 -12
- package/dist/types/parser/css/css-token-stream.d.ts +11 -0
- package/dist/types/parser/css/ubo-selector-parser.d.ts +3 -0
- package/dist/types/parser/filterlist-parser.d.ts +5 -2
- package/dist/types/parser/misc/app-list-parser.d.ts +1 -0
- package/dist/types/parser/misc/domain-list-parser.d.ts +5 -3
- package/dist/types/parser/misc/list-items-parser.d.ts +5 -3
- package/dist/types/parser/misc/logical-expression-parser.d.ts +9 -5
- package/dist/types/parser/misc/method-list-parser.d.ts +1 -0
- package/dist/types/parser/misc/modifier-list.d.ts +2 -1
- package/dist/types/parser/misc/modifier-parser.d.ts +2 -1
- package/dist/types/parser/misc/parameter-list-parser.d.ts +3 -2
- package/dist/types/parser/misc/stealth-option-list-parser.d.ts +1 -0
- package/dist/types/parser/misc/ubo-parameter-list-parser.d.ts +2 -1
- package/dist/types/parser/misc/value-parser.d.ts +1 -1
- package/dist/types/parser/network/host-rule-parser.d.ts +10 -2
- package/dist/types/parser/network/network-rule-parser.d.ts +5 -3
- package/dist/types/parser/options.d.ts +1 -1
- package/dist/types/parser/rule-parser.d.ts +6 -2
- package/dist/types/tokenizer/tokenizer.d.ts +2 -2
- package/dist/types/utils/adblockers.d.ts +9 -6
- package/dist/types/utils/clone.d.ts +4 -3
- package/dist/types/utils/constants.d.ts +1 -1
- package/dist/types/utils/cosmetic-rule-separator.d.ts +13 -10
- package/dist/types/utils/deep-freeze.d.ts +4 -4
- package/dist/types/utils/domain.d.ts +3 -2
- package/dist/types/utils/logical-expression.d.ts +9 -5
- package/dist/types/utils/multi-value-map.d.ts +3 -3
- package/dist/types/utils/position-provider.d.ts +3 -2
- package/dist/types/utils/quotes.d.ts +48 -42
- package/dist/types/utils/regexp.d.ts +24 -17
- package/dist/types/utils/string.d.ts +135 -103
- package/dist/types/utils/type-guards.d.ts +1 -0
- package/dist/types/validator/helpers.d.ts +1 -1
- package/dist/types/validator/index.d.ts +3 -3
- package/dist/types/version.d.ts +1 -1
- package/dist/utils/adblockers.js +10 -7
- package/dist/utils/bit-count.js +1 -1
- package/dist/utils/categorizer.js +2 -2
- package/dist/utils/clone.js +5 -4
- package/dist/utils/constants.js +2 -2
- package/dist/utils/cosmetic-rule-separator.js +15 -11
- package/dist/utils/deep-freeze.js +5 -5
- package/dist/utils/domain.js +4 -3
- package/dist/utils/error.js +3 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/logical-expression.js +10 -6
- package/dist/utils/multi-value-map.js +4 -4
- package/dist/utils/noop-modifier.js +1 -1
- package/dist/utils/position-provider.js +2 -1
- package/dist/utils/quotes.js +49 -43
- package/dist/utils/regexp.js +25 -18
- package/dist/utils/string.js +136 -104
- package/dist/utils/type-guards.js +2 -1
- package/dist/validator/constants.js +1 -1
- package/dist/validator/helpers.js +1 -1
- package/dist/validator/index.js +8 -8
- package/dist/validator/value.js +6 -6
- package/dist/version.js +2 -2
- package/package.json +3 -1
- package/dist/errors/binary-schema-mismatch-error.js +0 -37
- package/dist/types/errors/binary-schema-mismatch-error.d.ts +0 -23
package/dist/converter/rule.js
CHANGED
|
@@ -1,38 +1,40 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
+
import { RuleConversionError } from '../errors/rule-conversion-error.js';
|
|
7
8
|
import { RuleCategory, NetworkRuleType } from '../nodes/index.js';
|
|
9
|
+
import { createConversionResult } from './base-interfaces/conversion-result.js';
|
|
10
|
+
import { RuleConverterBase } from './base-interfaces/rule-converter-base.js';
|
|
8
11
|
import { CommentRuleConverter } from './comment/index.js';
|
|
9
12
|
import { CosmeticRuleConverter } from './cosmetic/index.js';
|
|
10
13
|
import { NetworkRuleConverter } from './network/index.js';
|
|
11
|
-
import { RuleConversionError } from '../errors/rule-conversion-error.js';
|
|
12
|
-
import { RuleConverterBase } from './base-interfaces/rule-converter-base.js';
|
|
13
|
-
import { createConversionResult } from './base-interfaces/conversion-result.js';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
-
* @file Adblock rule converter
|
|
16
|
+
* @file Adblock rule converter.
|
|
17
17
|
*
|
|
18
18
|
* This file is the entry point for all rule converters
|
|
19
19
|
* which automatically detects the rule type and calls
|
|
20
20
|
* the corresponding "sub-converter".
|
|
21
21
|
*/
|
|
22
22
|
/**
|
|
23
|
-
* Adblock filtering rule converter class
|
|
23
|
+
* Adblock filtering rule converter class.
|
|
24
24
|
*
|
|
25
|
-
* @todo Implement `convertToUbo` and `convertToAbp
|
|
25
|
+
* @todo Implement `convertToUbo` and `convertToAbp`.
|
|
26
26
|
*/
|
|
27
27
|
class RuleConverter extends RuleConverterBase {
|
|
28
28
|
/**
|
|
29
29
|
* Converts an adblock filtering rule to AdGuard format, if possible.
|
|
30
30
|
*
|
|
31
|
-
* @param rule Rule node to convert
|
|
31
|
+
* @param rule Rule node to convert.
|
|
32
|
+
*
|
|
32
33
|
* @returns An object which follows the {@link NodeConversionResult} interface. Its `result` property contains
|
|
33
34
|
* the array of converted rule nodes, and its `isConverted` flag indicates whether the original rule was converted.
|
|
34
|
-
* If the rule was not converted, the result array will contain the original node with the same object reference
|
|
35
|
-
*
|
|
35
|
+
* If the rule was not converted, the result array will contain the original node with the same object reference.
|
|
36
|
+
*
|
|
37
|
+
* @throws If the rule is invalid or cannot be converted.
|
|
36
38
|
*/
|
|
37
39
|
static convertToAdg(rule) {
|
|
38
40
|
// Delegate conversion to the corresponding sub-converter
|
|
@@ -60,11 +62,13 @@ class RuleConverter extends RuleConverterBase {
|
|
|
60
62
|
/**
|
|
61
63
|
* Converts an adblock filtering rule to uBlock Origin format, if possible.
|
|
62
64
|
*
|
|
63
|
-
* @param rule Rule node to convert
|
|
65
|
+
* @param rule Rule node to convert.
|
|
66
|
+
*
|
|
64
67
|
* @returns An object which follows the {@link NodeConversionResult} interface. Its `result` property contains
|
|
65
68
|
* the array of converted rule nodes, and its `isConverted` flag indicates whether the original rule was converted.
|
|
66
|
-
* If the rule was not converted, the result array will contain the original node with the same object reference
|
|
67
|
-
*
|
|
69
|
+
* If the rule was not converted, the result array will contain the original node with the same object reference.
|
|
70
|
+
*
|
|
71
|
+
* @throws If the rule is invalid or cannot be converted.
|
|
68
72
|
*/
|
|
69
73
|
// TODO: Add support for other rule types
|
|
70
74
|
static convertToUbo(rule) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -16,7 +16,7 @@ class NotImplementedError extends Error {
|
|
|
16
16
|
/**
|
|
17
17
|
* Constructs a new `NotImplementedError` instance.
|
|
18
18
|
*
|
|
19
|
-
* @param message Additional error message (optional)
|
|
19
|
+
* @param message Additional error message (optional).
|
|
20
20
|
*/
|
|
21
21
|
constructor(message = undefined) {
|
|
22
22
|
// Prepare the full error message
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -15,7 +15,7 @@ class RuleConversionError extends Error {
|
|
|
15
15
|
/**
|
|
16
16
|
* Constructs a new `RuleConversionError` instance.
|
|
17
17
|
*
|
|
18
|
-
* @param message Error message
|
|
18
|
+
* @param message Error message.
|
|
19
19
|
*/
|
|
20
20
|
constructor(message) {
|
|
21
21
|
super(message);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -15,8 +15,9 @@ class AgentCommentGenerator extends BaseGenerator {
|
|
|
15
15
|
/**
|
|
16
16
|
* Converts an adblock agent AST to a string.
|
|
17
17
|
*
|
|
18
|
-
* @param ast Agent rule AST
|
|
19
|
-
*
|
|
18
|
+
* @param ast Agent rule AST.
|
|
19
|
+
*
|
|
20
|
+
* @returns Raw string.
|
|
20
21
|
*/
|
|
21
22
|
static generate(ast) {
|
|
22
23
|
let result = OPEN_SQUARE_BRACKET;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { BaseGenerator } from '../base-generator.js';
|
|
8
7
|
import { SPACE, EMPTY } from '../../utils/constants.js';
|
|
9
8
|
import { isUndefined } from '../../utils/type-guards.js';
|
|
9
|
+
import { BaseGenerator } from '../base-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Generator for adblock agent nodes.
|
|
@@ -16,8 +16,9 @@ class AgentGenerator extends BaseGenerator {
|
|
|
16
16
|
/**
|
|
17
17
|
* Converts an adblock agent node to a string.
|
|
18
18
|
*
|
|
19
|
-
* @param value Agent node
|
|
20
|
-
*
|
|
19
|
+
* @param value Agent node.
|
|
20
|
+
*
|
|
21
|
+
* @returns Raw string.
|
|
21
22
|
*/
|
|
22
23
|
static generate(value) {
|
|
23
24
|
let result = EMPTY;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
import { CommentRuleType } from '../../nodes/index.js';
|
|
8
8
|
import { BaseGenerator } from '../base-generator.js';
|
|
9
9
|
import { AgentCommentGenerator } from './agent-comment-generator.js';
|
|
10
|
+
import { ConfigCommentGenerator } from './config-comment-generator.js';
|
|
10
11
|
import { HintCommentGenerator } from './hint-comment-generator.js';
|
|
11
|
-
import { PreProcessorCommentGenerator } from './pre-processor-comment-generator.js';
|
|
12
12
|
import { MetadataCommentGenerator } from './metadata-comment-generator.js';
|
|
13
|
-
import {
|
|
13
|
+
import { PreProcessorCommentGenerator } from './pre-processor-comment-generator.js';
|
|
14
14
|
import { SimpleCommentGenerator } from './simple-comment-generator.js';
|
|
15
15
|
|
|
16
16
|
/* eslint-disable no-param-reassign */
|
|
@@ -21,8 +21,9 @@ class CommentRuleGenerator extends BaseGenerator {
|
|
|
21
21
|
/**
|
|
22
22
|
* Converts a comment rule node to a string.
|
|
23
23
|
*
|
|
24
|
-
* @param node Comment rule node
|
|
25
|
-
*
|
|
24
|
+
* @param node Comment rule node.
|
|
25
|
+
*
|
|
26
|
+
* @returns Raw string.
|
|
26
27
|
*/
|
|
27
28
|
static generate(node) {
|
|
28
29
|
switch (node.type) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { BaseGenerator } from '../base-generator.js';
|
|
8
7
|
import { SPACE, COMMA, EMPTY } from '../../utils/constants.js';
|
|
8
|
+
import { BaseGenerator } from '../base-generator.js';
|
|
9
9
|
import { ParameterListGenerator } from '../misc/parameter-list-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -15,8 +15,9 @@ class ConfigCommentGenerator extends BaseGenerator {
|
|
|
15
15
|
/**
|
|
16
16
|
* Converts an inline configuration comment node to a string.
|
|
17
17
|
*
|
|
18
|
-
* @param node Inline configuration comment node
|
|
19
|
-
*
|
|
18
|
+
* @param node Inline configuration comment node.
|
|
19
|
+
*
|
|
20
|
+
* @returns Raw string.
|
|
20
21
|
*/
|
|
21
22
|
static generate(node) {
|
|
22
23
|
let result = EMPTY;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { BaseGenerator } from '../base-generator.js';
|
|
8
7
|
import { SPACE, HINT_MARKER } from '../../utils/constants.js';
|
|
8
|
+
import { BaseGenerator } from '../base-generator.js';
|
|
9
9
|
import { HintGenerator } from './hint-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -15,8 +15,9 @@ class HintCommentGenerator extends BaseGenerator {
|
|
|
15
15
|
/**
|
|
16
16
|
* Converts a hint rule node to a raw string.
|
|
17
17
|
*
|
|
18
|
-
* @param node Hint rule node
|
|
19
|
-
*
|
|
18
|
+
* @param node Hint rule node.
|
|
19
|
+
*
|
|
20
|
+
* @returns Raw string.
|
|
20
21
|
*/
|
|
21
22
|
static generate(node) {
|
|
22
23
|
let result = HINT_MARKER + SPACE;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -15,8 +15,9 @@ class HintGenerator extends BaseGenerator {
|
|
|
15
15
|
/**
|
|
16
16
|
* Generates a string representation of a hint.
|
|
17
17
|
*
|
|
18
|
-
* @param hint Hint AST node
|
|
19
|
-
*
|
|
18
|
+
* @param hint Hint AST node.
|
|
19
|
+
*
|
|
20
|
+
* @returns String representation of the hint.
|
|
20
21
|
*/
|
|
21
22
|
static generate(hint) {
|
|
22
23
|
let result = EMPTY;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
7
|
import { SPACE, COLON, EMPTY } from '../../utils/constants.js';
|
|
8
|
-
import { ValueGenerator } from '../misc/value-generator.js';
|
|
9
8
|
import { BaseGenerator } from '../base-generator.js';
|
|
9
|
+
import { ValueGenerator } from '../misc/value-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Metadata comment generator.
|
|
@@ -16,6 +16,7 @@ class MetadataCommentGenerator extends BaseGenerator {
|
|
|
16
16
|
* Converts a metadata comment rule node to a string.
|
|
17
17
|
*
|
|
18
18
|
* @param node Metadata comment rule node.
|
|
19
|
+
*
|
|
19
20
|
* @returns Raw string.
|
|
20
21
|
*/
|
|
21
22
|
static generate(node) {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
7
|
import { SAFARI_CB_AFFINITY, SPACE, OPEN_PARENTHESIS, COMMA, CLOSE_PARENTHESIS, EMPTY, PREPROCESSOR_MARKER } from '../../utils/constants.js';
|
|
8
8
|
import { BaseGenerator } from '../base-generator.js';
|
|
9
|
-
import { ValueGenerator } from '../misc/value-generator.js';
|
|
10
|
-
import { ParameterListGenerator } from '../misc/parameter-list-generator.js';
|
|
11
9
|
import { LogicalExpressionGenerator } from '../misc/logical-expression-generator.js';
|
|
10
|
+
import { ParameterListGenerator } from '../misc/parameter-list-generator.js';
|
|
11
|
+
import { ValueGenerator } from '../misc/value-generator.js';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Pre-processor comment generator.
|
|
@@ -17,8 +17,9 @@ class PreProcessorCommentGenerator extends BaseGenerator {
|
|
|
17
17
|
/**
|
|
18
18
|
* Converts a pre-processor comment node to a string.
|
|
19
19
|
*
|
|
20
|
-
* @param node Pre-processor comment node
|
|
21
|
-
*
|
|
20
|
+
* @param node Pre-processor comment node.
|
|
21
|
+
*
|
|
22
|
+
* @returns Raw string.
|
|
22
23
|
*/
|
|
23
24
|
static generate(node) {
|
|
24
25
|
let result = EMPTY;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { BaseGenerator } from '../base-generator.js';
|
|
8
7
|
import { EMPTY } from '../../utils/constants.js';
|
|
8
|
+
import { BaseGenerator } from '../base-generator.js';
|
|
9
9
|
import { ValueGenerator } from '../misc/value-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -16,6 +16,7 @@ class SimpleCommentGenerator extends BaseGenerator {
|
|
|
16
16
|
* Converts a comment rule node to a string.
|
|
17
17
|
*
|
|
18
18
|
* @param node Comment rule node.
|
|
19
|
+
*
|
|
19
20
|
* @returns Raw string.
|
|
20
21
|
*/
|
|
21
22
|
static generate(node) {
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import { UboPseudoName } from '../../common/ubo-selector-common.js';
|
|
8
8
|
import { CosmeticRuleType } from '../../nodes/index.js';
|
|
9
|
-
import { UBO_HTML_MASK, CLOSE_PARENTHESIS, SPACE, COLON, OPEN_PARENTHESIS, EMPTY } from '../../utils/constants.js';
|
|
10
9
|
import { AdblockSyntax } from '../../utils/adblockers.js';
|
|
11
|
-
import {
|
|
10
|
+
import { UBO_HTML_MASK, CLOSE_PARENTHESIS, SPACE, COLON, OPEN_PARENTHESIS, EMPTY } from '../../utils/constants.js';
|
|
11
|
+
import { BaseGenerator } from '../base-generator.js';
|
|
12
12
|
import { AdgCssInjectionGenerator } from '../css/adg-css-injection-generator.js';
|
|
13
|
-
import { AbpSnippetInjectionBodyGenerator } from './scriptlet-body/abp-snippet-injection-body-generator.js';
|
|
14
|
-
import { UboScriptletInjectionBodyGenerator } from './scriptlet-body/ubo-scriptlet-injection-body-generator.js';
|
|
15
13
|
import { AdgHtmlFilteringBodyGenerator } from './html-filtering-body/adg-html-filtering-body-generator.js';
|
|
16
14
|
import { UboHtmlFilteringBodyGenerator } from './html-filtering-body/ubo-html-filtering-body-generator.js';
|
|
17
|
-
import {
|
|
15
|
+
import { AbpSnippetInjectionBodyGenerator } from './scriptlet-body/abp-snippet-injection-body-generator.js';
|
|
16
|
+
import { AdgScriptletInjectionBodyGenerator } from './scriptlet-body/adg-scriptlet-injection-body-generator.js';
|
|
17
|
+
import { UboScriptletInjectionBodyGenerator } from './scriptlet-body/ubo-scriptlet-injection-body-generator.js';
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* Cosmetic rule body generator.
|
|
@@ -23,14 +23,16 @@ class CosmeticRuleBodyGenerator extends BaseGenerator {
|
|
|
23
23
|
/**
|
|
24
24
|
* Generates the rule body from the node.
|
|
25
25
|
*
|
|
26
|
-
* @param node Cosmetic rule node
|
|
27
|
-
*
|
|
26
|
+
* @param node Cosmetic rule node.
|
|
27
|
+
*
|
|
28
|
+
* @returns Raw rule body.
|
|
29
|
+
*
|
|
30
|
+
* @throws Error if the rule type is unknown.
|
|
31
|
+
*
|
|
28
32
|
* @example
|
|
29
33
|
* - '##.foo' → '.foo'
|
|
30
34
|
* - 'example.com,example.org##.foo' → '.foo'
|
|
31
35
|
* - 'example.com#%#//scriptlet('foo')' → '//scriptlet('foo')'
|
|
32
|
-
*
|
|
33
|
-
* @throws Error if the rule type is unknown
|
|
34
36
|
*/
|
|
35
37
|
static generate(node) {
|
|
36
38
|
let result = EMPTY;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
import { AdblockSyntax } from '../../utils/adblockers.js';
|
|
8
8
|
import { COLON, CSS_NOT_PSEUDO, OPEN_PARENTHESIS, CLOSE_PARENTHESIS, SPACE, EMPTY } from '../../utils/constants.js';
|
|
9
9
|
import { BaseGenerator } from '../base-generator.js';
|
|
10
|
-
import { CosmeticRulePatternGenerator } from './cosmetic-rule-pattern-generator.js';
|
|
11
10
|
import { CosmeticRuleBodyGenerator } from './cosmetic-rule-body-generator.js';
|
|
11
|
+
import { CosmeticRulePatternGenerator } from './cosmetic-rule-pattern-generator.js';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* `CosmeticRuleGenerator` is responsible for generating cosmetic rules from their AST representation.
|
|
@@ -20,8 +20,9 @@ class CosmeticRuleGenerator extends BaseGenerator {
|
|
|
20
20
|
/**
|
|
21
21
|
* Converts a cosmetic rule AST into a string.
|
|
22
22
|
*
|
|
23
|
-
* @param node Cosmetic rule AST
|
|
24
|
-
*
|
|
23
|
+
* @param node Cosmetic rule AST.
|
|
24
|
+
*
|
|
25
|
+
* @returns Raw string.
|
|
25
26
|
*/
|
|
26
27
|
static generate(node) {
|
|
27
28
|
let result = EMPTY;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { CLOSE_SQUARE_BRACKET, EMPTY, OPEN_SQUARE_BRACKET, DOLLAR_SIGN } from '../../utils/constants.js';
|
|
8
7
|
import { AdblockSyntax } from '../../utils/adblockers.js';
|
|
8
|
+
import { CLOSE_SQUARE_BRACKET, EMPTY, OPEN_SQUARE_BRACKET, DOLLAR_SIGN } from '../../utils/constants.js';
|
|
9
9
|
import { BaseGenerator } from '../base-generator.js';
|
|
10
|
-
import { ModifierListGenerator } from '../misc/modifier-list-generator.js';
|
|
11
10
|
import { DomainListGenerator } from '../misc/domain-list-generator.js';
|
|
11
|
+
import { ModifierListGenerator } from '../misc/modifier-list-generator.js';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Cosmetic rule pattern generator.
|
|
@@ -17,8 +17,10 @@ class CosmeticRulePatternGenerator extends BaseGenerator {
|
|
|
17
17
|
/**
|
|
18
18
|
* Generates the rule pattern from the AST.
|
|
19
19
|
*
|
|
20
|
-
* @param node Cosmetic rule node
|
|
21
|
-
*
|
|
20
|
+
* @param node Cosmetic rule node.
|
|
21
|
+
*
|
|
22
|
+
* @returns Raw rule pattern.
|
|
23
|
+
*
|
|
22
24
|
* @example
|
|
23
25
|
* - '##.foo' → ''
|
|
24
26
|
* - 'example.com,example.org##.foo' → 'example.com,example.org'
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -8,11 +8,11 @@ import '../../../utils/adblockers.js';
|
|
|
8
8
|
import 'tldts';
|
|
9
9
|
import 'glob-to-regexp';
|
|
10
10
|
import { QuoteUtils } from '../../../utils/quotes.js';
|
|
11
|
-
import 'sprintf-js';
|
|
12
11
|
import '@adguard/css-tokenizer';
|
|
12
|
+
import 'sprintf-js';
|
|
13
13
|
import 'json5';
|
|
14
|
-
import '../../../parser/css/balancing.js';
|
|
15
14
|
import '../../../converter/data/css.js';
|
|
15
|
+
import '../../../parser/css/balancing.js';
|
|
16
16
|
import { BaseGenerator } from '../../base-generator.js';
|
|
17
17
|
import { HtmlFilteringBodyGenerator } from './html-filtering-body-generator.js';
|
|
18
18
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
@@ -11,7 +11,7 @@ import { ValueGenerator } from '../../misc/value-generator.js';
|
|
|
11
11
|
import { HtmlFilteringBodyGenerator } from './html-filtering-body-generator.js';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* UBlock HTML Filtering body generator.
|
|
15
15
|
*/
|
|
16
16
|
class UboHtmlFilteringBodyGenerator extends BaseGenerator {
|
|
17
17
|
/**
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
+
import { AbpSnippetInjectionBodyCommon } from '../../../common/abp-snippet-injection-body-common.js';
|
|
7
8
|
import { SPACE, SEMICOLON } from '../../../utils/constants.js';
|
|
8
9
|
import { BaseGenerator } from '../../base-generator.js';
|
|
9
10
|
import { ParameterListGenerator } from '../../misc/parameter-list-generator.js';
|
|
10
|
-
import { AbpSnippetInjectionBodyCommon } from '../../../common/abp-snippet-injection-body-common.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Adblock Plus snippet injection body generator.
|
|
@@ -16,9 +16,11 @@ class AbpSnippetInjectionBodyGenerator extends BaseGenerator {
|
|
|
16
16
|
/**
|
|
17
17
|
* Generates a string representation of the Adblock Plus-style snippet call body.
|
|
18
18
|
*
|
|
19
|
-
* @param node Scriptlet injection rule body
|
|
20
|
-
*
|
|
21
|
-
* @
|
|
19
|
+
* @param node Scriptlet injection rule body.
|
|
20
|
+
*
|
|
21
|
+
* @returns String representation of the rule body.
|
|
22
|
+
*
|
|
23
|
+
* @throws Error if the scriptlet call is empty.
|
|
22
24
|
*/
|
|
23
25
|
static generate(node) {
|
|
24
26
|
const result = [];
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
7
|
import { CLOSE_PARENTHESIS, EMPTY, ADG_SCRIPTLET_MASK, OPEN_PARENTHESIS } from '../../../utils/constants.js';
|
|
8
|
-
import { ParameterListGenerator } from '../../misc/parameter-list-generator.js';
|
|
9
8
|
import { BaseGenerator } from '../../base-generator.js';
|
|
9
|
+
import { ParameterListGenerator } from '../../misc/parameter-list-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* AdGuard scriptlet injection body generator.
|
|
@@ -21,9 +21,11 @@ class AdgScriptletInjectionBodyGenerator extends BaseGenerator {
|
|
|
21
21
|
/**
|
|
22
22
|
* Generates a string representation of the AdGuard scriptlet call body.
|
|
23
23
|
*
|
|
24
|
-
* @param node Scriptlet injection rule body
|
|
25
|
-
*
|
|
26
|
-
* @
|
|
24
|
+
* @param node Scriptlet injection rule body.
|
|
25
|
+
*
|
|
26
|
+
* @returns String representation of the rule body.
|
|
27
|
+
*
|
|
28
|
+
* @throws Error if the scriptlet call has multiple parameters.
|
|
27
29
|
*/
|
|
28
30
|
static generate(node) {
|
|
29
31
|
const result = [];
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { BaseGenerator } from '../../base-generator.js';
|
|
8
7
|
import { CLOSE_PARENTHESIS, EMPTY, UBO_SCRIPTLET_MASK, OPEN_PARENTHESIS } from '../../../utils/constants.js';
|
|
8
|
+
import { BaseGenerator } from '../../base-generator.js';
|
|
9
9
|
import { ParameterListGenerator } from '../../misc/parameter-list-generator.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* UBlock scriptlet injection body generator.
|
|
13
13
|
*/
|
|
14
14
|
class UboScriptletInjectionBodyGenerator extends BaseGenerator {
|
|
15
15
|
/**
|
|
@@ -21,9 +21,11 @@ class UboScriptletInjectionBodyGenerator extends BaseGenerator {
|
|
|
21
21
|
/**
|
|
22
22
|
* Generates a string representation of the uBlock scriptlet call body.
|
|
23
23
|
*
|
|
24
|
-
* @param node Scriptlet injection rule body
|
|
25
|
-
*
|
|
26
|
-
* @
|
|
24
|
+
* @param node Scriptlet injection rule body.
|
|
25
|
+
*
|
|
26
|
+
* @returns String representation of the rule body.
|
|
27
|
+
*
|
|
28
|
+
* @throws Error if the scriptlet call has multiple parameters.
|
|
27
29
|
*/
|
|
28
30
|
static generate(node) {
|
|
29
31
|
const result = [];
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
7
|
-
import { QuoteUtils, QuoteType } from '../../../utils/quotes.js';
|
|
8
7
|
import { SPACE, CLOSE_SQUARE_BRACKET, EMPTY, OPEN_SQUARE_BRACKET } from '../../../utils/constants.js';
|
|
8
|
+
import { QuoteUtils, QuoteType } from '../../../utils/quotes.js';
|
|
9
9
|
import { BaseGenerator } from '../../base-generator.js';
|
|
10
10
|
import { ValueGenerator } from '../../misc/value-generator.js';
|
|
11
11
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v4.0.
|
|
2
|
+
* AGTree v4.0.2 (build date: Tue, 17 Mar 2026 23:34:38 GMT)
|
|
3
3
|
* (c) 2026 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|