@adguard/agtree 3.0.0-alpha.2 → 3.0.0-alpha.3
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/dist/ast-utils/clone.js +2 -2
- package/dist/ast-utils/modifiers.js +2 -2
- package/dist/ast-utils/network-rules.js +2 -2
- package/dist/ast-utils/scriptlets.js +2 -2
- package/dist/common/abp-snippet-injection-body-common.js +2 -2
- package/dist/common/agent-common.js +2 -2
- package/dist/common/ubo-selector-common.js +2 -2
- package/dist/compatibility-tables/base.js +2 -2
- package/dist/compatibility-tables/compatibility-table-data.js +2 -2
- package/dist/compatibility-tables/modifiers.js +2 -2
- package/dist/compatibility-tables/platforms.js +2 -2
- package/dist/compatibility-tables/redirects.js +2 -2
- package/dist/compatibility-tables/schemas/base.js +2 -2
- package/dist/compatibility-tables/schemas/modifier.js +2 -2
- package/dist/compatibility-tables/schemas/platform.js +2 -2
- package/dist/compatibility-tables/schemas/redirect.js +2 -2
- package/dist/compatibility-tables/schemas/resource-type.js +2 -2
- package/dist/compatibility-tables/schemas/scriptlet.js +2 -2
- package/dist/compatibility-tables/scriptlets.js +2 -2
- package/dist/compatibility-tables/utils/platform-helpers.js +2 -2
- package/dist/compatibility-tables/utils/resource-type-helpers.js +2 -2
- package/dist/compatibility-tables/utils/zod-camelcase.js +2 -2
- package/dist/converter/base-interfaces/base-converter.js +2 -2
- package/dist/converter/base-interfaces/conversion-result.js +2 -2
- package/dist/converter/base-interfaces/rule-converter-base.js +2 -2
- package/dist/converter/comment/index.js +2 -2
- package/dist/converter/cosmetic/css.js +2 -2
- package/dist/converter/cosmetic/element-hiding.js +2 -2
- package/dist/converter/cosmetic/header-removal.js +2 -2
- package/dist/converter/cosmetic/html.js +2 -2
- package/dist/converter/cosmetic/index.js +2 -2
- package/dist/converter/cosmetic/rule-modifiers/adg.js +2 -2
- package/dist/converter/cosmetic/scriptlet.js +2 -2
- package/dist/converter/css/index.js +2 -2
- package/dist/converter/data/css.js +2 -2
- package/dist/converter/filter-list.js +2 -2
- package/dist/converter/index.js +2 -2
- package/dist/converter/misc/network-rule-modifier.js +2 -2
- package/dist/converter/network/index.js +2 -2
- package/dist/converter/raw-filter-list.js +2 -2
- package/dist/converter/rule.js +2 -2
- package/dist/deserializer/base-deserializer.js +2 -2
- package/dist/deserializer/comment/agent-comment-deserializer.js +2 -2
- package/dist/deserializer/comment/agent-deserializer.js +2 -2
- package/dist/deserializer/comment/comment-rule-deserializer.js +2 -2
- package/dist/deserializer/comment/config-comment-deserializer.js +2 -2
- package/dist/deserializer/comment/hint-comment-deserializer.js +2 -2
- package/dist/deserializer/comment/hint-deserializer.js +2 -2
- package/dist/deserializer/comment/metadata-comment-deserializer.js +2 -2
- package/dist/deserializer/comment/pre-processor-comment-deserializer.js +2 -2
- package/dist/deserializer/comment/simple-comment-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/cosmetic-rule-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/css-injection-body-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/element-hiding-body-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.js +2 -2
- package/dist/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.js +2 -2
- package/dist/deserializer/empty-rule-deserializer.js +2 -2
- package/dist/deserializer/filterlist-deserializer.js +2 -2
- package/dist/deserializer/index.js +2 -2
- package/dist/deserializer/invalid-rule-deserializer.js +2 -2
- package/dist/deserializer/invalid-rule-error-node-deserializer.js +2 -2
- package/dist/deserializer/misc/domain-list-deserializer.js +2 -2
- package/dist/deserializer/misc/list-item-deserializer.js +2 -2
- package/dist/deserializer/misc/list-items-deserializer.js +2 -2
- package/dist/deserializer/misc/logical-expression-deserializer.js +2 -2
- package/dist/deserializer/misc/modifier-deserializer.js +2 -2
- package/dist/deserializer/misc/modifier-list-deserializer.js +2 -2
- package/dist/deserializer/misc/parameter-list-deserializer.js +2 -2
- package/dist/deserializer/misc/value-deserializer.js +2 -2
- package/dist/deserializer/network/host-rule-deserializer.js +2 -2
- package/dist/deserializer/network/hostname-list-deserializer.js +2 -2
- package/dist/deserializer/network/network-rule-deserializer.js +2 -2
- package/dist/deserializer/rule-deserializer.js +2 -2
- package/dist/deserializer/syntax-deserialization-map.js +2 -2
- package/dist/errors/adblock-syntax-error.js +2 -2
- package/dist/errors/binary-schema-mismatch-error.js +2 -2
- package/dist/errors/not-implemented-error.js +2 -2
- package/dist/errors/rule-conversion-error.js +2 -2
- package/dist/generator/base-generator.js +2 -2
- package/dist/generator/comment/agent-comment-generator.js +2 -2
- package/dist/generator/comment/agent-generator.js +2 -2
- package/dist/generator/comment/comment-rule-generator.js +2 -2
- package/dist/generator/comment/config-comment-generator.js +2 -2
- package/dist/generator/comment/hint-comment-generator.js +2 -2
- package/dist/generator/comment/hint-generator.js +2 -2
- package/dist/generator/comment/metadata-comment-generator.js +2 -2
- package/dist/generator/comment/pre-processor-comment-generator.js +2 -2
- package/dist/generator/comment/simple-comment-generator.js +2 -2
- package/dist/generator/cosmetic/body/abp-snippet-injection-body-generator.js +2 -2
- package/dist/generator/cosmetic/body/adg-scriptlet-injection-body-generator.js +2 -2
- package/dist/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.js +2 -2
- package/dist/generator/cosmetic/cosmetic-rule-body-generator.js +3 -3
- package/dist/generator/cosmetic/cosmetic-rule-generator.js +2 -2
- package/dist/generator/cosmetic/cosmetic-rule-pattern-generator.js +2 -2
- package/dist/generator/css/adg-css-injection-generator.js +2 -2
- package/dist/generator/filterlist-generator.js +2 -2
- package/dist/generator/index.js +2 -2
- package/dist/generator/misc/domain-list-generator.js +2 -2
- package/dist/generator/misc/list-items-generator.js +2 -2
- package/dist/generator/misc/logical-expression-generator.js +2 -2
- package/dist/generator/misc/modifier-generator.js +2 -2
- package/dist/generator/misc/modifier-list-generator.js +2 -2
- package/dist/generator/misc/parameter-list-generator.js +2 -2
- package/dist/generator/misc/value-generator.js +2 -2
- package/dist/generator/network/host-rule-generator.js +2 -2
- package/dist/generator/network/network-rule-generator.js +2 -2
- package/dist/generator/rule-generator.js +2 -2
- package/dist/index.js +2 -2
- package/dist/marshalling-utils/comment/agent-comment-common.js +2 -2
- package/dist/marshalling-utils/comment/agent-common.js +2 -2
- package/dist/marshalling-utils/comment/config-comment-common.js +2 -2
- package/dist/marshalling-utils/comment/hint-comment-common.js +2 -2
- package/dist/marshalling-utils/comment/hint-common.js +2 -2
- package/dist/marshalling-utils/comment/metadata-comment-common.js +2 -2
- package/dist/marshalling-utils/comment/pre-processor-comment-common.js +2 -2
- package/dist/marshalling-utils/comment/simple-comment-common.js +2 -2
- package/dist/marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.js +2 -2
- package/dist/marshalling-utils/cosmetic/body/adg-scriptlet-injection-body-common.js +2 -2
- package/dist/marshalling-utils/cosmetic/body/css-injection-body-common.js +2 -2
- package/dist/marshalling-utils/cosmetic/body/element-hiding-body-common.js +2 -2
- package/dist/marshalling-utils/cosmetic/body/ubo-scriptlet-injection-body-common.js +2 -2
- package/dist/marshalling-utils/cosmetic/cosmetic-rule-common.js +2 -2
- package/dist/marshalling-utils/empty-rule-common.js +2 -2
- package/dist/marshalling-utils/filter-list-common.js +2 -2
- package/dist/marshalling-utils/invalid-rule-common.js +2 -2
- package/dist/marshalling-utils/invalid-rule-error-node-common.js +2 -2
- package/dist/marshalling-utils/misc/binary-type-common.js +2 -2
- package/dist/marshalling-utils/misc/domain-list-common.js +2 -2
- package/dist/marshalling-utils/misc/host-rule-common.js +2 -2
- package/dist/marshalling-utils/misc/hostname-list-common.js +2 -2
- package/dist/marshalling-utils/misc/list-item-common.js +2 -2
- package/dist/marshalling-utils/misc/logical-expression-common.js +2 -2
- package/dist/marshalling-utils/misc/modifier-common.js +2 -2
- package/dist/marshalling-utils/misc/modifier-list-common.js +2 -2
- package/dist/marshalling-utils/misc/parameter-list-common.js +2 -2
- package/dist/marshalling-utils/misc/value-common.js +2 -2
- package/dist/marshalling-utils/network/network-rule-common.js +2 -2
- package/dist/marshalling-utils/syntax-serialization-map.js +2 -2
- package/dist/nodes/index.js +2 -2
- package/dist/package.json.js +3 -3
- package/dist/parser/base-parser.js +2 -2
- package/dist/parser/comment/agent-comment-parser.js +2 -2
- package/dist/parser/comment/agent-parser.js +2 -2
- package/dist/parser/comment/comment-parser.js +2 -2
- package/dist/parser/comment/config-comment-parser.js +2 -2
- package/dist/parser/comment/hint-comment-parser.js +2 -2
- package/dist/parser/comment/hint-parser.js +2 -2
- package/dist/parser/comment/metadata-comment-parser.js +2 -2
- package/dist/parser/comment/preprocessor-parser.js +2 -2
- package/dist/parser/comment/simple-comment-parser.js +2 -2
- package/dist/parser/cosmetic/body/abp-snippet-injection-body-parser.js +2 -2
- package/dist/parser/cosmetic/body/adg-scriptlet-injection-body-parser.js +2 -2
- package/dist/parser/cosmetic/body/ubo-scriptlet-injection-body-parser.js +2 -2
- package/dist/parser/cosmetic/cosmetic-rule-parser.js +48 -7
- package/dist/parser/css/adg-css-injection-parser.js +2 -2
- package/dist/parser/css/balancing.js +2 -2
- package/dist/parser/css/constants.js +2 -2
- package/dist/parser/css/css-token-stream.js +19 -9
- package/dist/parser/css/has-token.js +43 -0
- package/dist/parser/css/ubo-selector-parser.js +2 -2
- package/dist/parser/filterlist-parser.js +2 -2
- package/dist/parser/index.js +2 -2
- package/dist/parser/misc/app-list-parser.js +2 -2
- package/dist/parser/misc/domain-list-parser.js +2 -2
- package/dist/parser/misc/list-items-parser.js +2 -2
- package/dist/parser/misc/logical-expression-parser.js +2 -2
- package/dist/parser/misc/method-list-parser.js +2 -2
- package/dist/parser/misc/modifier-list.js +2 -2
- package/dist/parser/misc/modifier-parser.js +2 -2
- package/dist/parser/misc/parameter-list-parser.js +2 -2
- package/dist/parser/misc/stealth-option-list-parser.js +2 -2
- package/dist/parser/misc/ubo-parameter-list-parser.js +2 -2
- package/dist/parser/misc/value-parser.js +2 -2
- package/dist/parser/network/host-rule-parser.js +5 -5
- package/dist/parser/network/network-rule-parser.js +2 -2
- package/dist/parser/options.js +2 -2
- package/dist/parser/rule-parser.js +2 -2
- package/dist/serializer/base-serializer.js +2 -2
- package/dist/serializer/comment/agent-comment-serializer.js +2 -2
- package/dist/serializer/comment/agent-serializer.js +2 -2
- package/dist/serializer/comment/comment-rule-serializer.js +2 -2
- package/dist/serializer/comment/config-comment-serializer.js +2 -2
- package/dist/serializer/comment/hint-comment-serializer.js +2 -2
- package/dist/serializer/comment/hint-serializer.js +2 -2
- package/dist/serializer/comment/metadata-comment-serializer.js +2 -2
- package/dist/serializer/comment/pre-processor-comment-serializer.js +2 -2
- package/dist/serializer/comment/simple-comment-serializer.js +2 -2
- package/dist/serializer/cosmetic/body/abp-snippet-injection-body-serializer.js +2 -2
- package/dist/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.js +2 -2
- package/dist/serializer/cosmetic/body/scriptlet-body-serializer.js +2 -2
- package/dist/serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.js +2 -2
- package/dist/serializer/cosmetic/cosmetic-rule-serializer.js +2 -2
- package/dist/serializer/cosmetic/css-injection-body-serializer.js +2 -2
- package/dist/serializer/cosmetic/element-hiding-body-serializer.js +2 -2
- package/dist/serializer/empty-rule-serializer.js +2 -2
- package/dist/serializer/filterlist-serializer.js +2 -2
- package/dist/serializer/index.js +2 -2
- package/dist/serializer/invalid-rule-error-node-serializer.js +2 -2
- package/dist/serializer/invalid-rule-serializer.js +2 -2
- package/dist/serializer/misc/domain-list-serializer.js +2 -2
- package/dist/serializer/misc/list-item-serializer.js +2 -2
- package/dist/serializer/misc/list-items-serializer.js +2 -2
- package/dist/serializer/misc/logical-expression-serializer.js +2 -2
- package/dist/serializer/misc/modifier-list-serializer.js +2 -2
- package/dist/serializer/misc/modifier-serializer.js +2 -2
- package/dist/serializer/misc/parameter-list-serializer.js +2 -2
- package/dist/serializer/misc/value-serializer.js +2 -2
- package/dist/serializer/network/host-rule-serializer.js +2 -2
- package/dist/serializer/network/hostname-list-serializer.js +2 -2
- package/dist/serializer/network/network-rule-serializer.js +2 -2
- package/dist/serializer/rule-serializer.js +2 -2
- package/dist/types/parser/css/has-token.d.ts +10 -0
- package/dist/utils/adblockers.js +2 -2
- package/dist/utils/binary-schema-version.js +2 -2
- package/dist/utils/byte-buffer.js +2 -2
- package/dist/utils/categorizer.js +2 -2
- package/dist/utils/clone.js +2 -2
- package/dist/utils/constants.js +5 -3
- package/dist/utils/cosmetic-rule-separator.js +2 -2
- package/dist/utils/deep-freeze.js +2 -2
- package/dist/utils/domain.js +2 -2
- package/dist/utils/error.js +2 -2
- package/dist/utils/index.js +2 -2
- package/dist/utils/input-byte-buffer.js +2 -2
- package/dist/utils/is-chromium.js +2 -2
- package/dist/utils/logical-expression.js +2 -2
- package/dist/utils/multi-value-map.js +2 -2
- package/dist/utils/output-byte-buffer.js +2 -2
- package/dist/utils/position-provider.js +2 -2
- package/dist/utils/quotes.js +2 -2
- package/dist/utils/regexp.js +2 -2
- package/dist/utils/string.js +2 -2
- package/dist/utils/text-decoder-polyfill.js +2 -2
- package/dist/utils/text-encoder-polyfill.js +2 -2
- package/dist/utils/type-guards.js +2 -2
- package/dist/validator/constants.js +2 -2
- package/dist/validator/helpers.js +2 -2
- package/dist/validator/index.js +2 -2
- package/dist/validator/value.js +2 -2
- package/dist/version.js +2 -2
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
package/dist/nodes/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
package/dist/package.json.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 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
|
-
const version = "3.0.0-alpha.
|
|
7
|
+
const version = "3.0.0-alpha.3";
|
|
8
8
|
|
|
9
9
|
export { version };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 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 { sprintf } from 'sprintf-js';
|
|
8
|
+
import { TokenType } from '@adguard/css-tokenizer';
|
|
8
9
|
import { CosmeticRuleSeparatorUtils } from '../../utils/cosmetic-rule-separator.js';
|
|
9
10
|
import { AdblockSyntax } from '../../utils/adblockers.js';
|
|
10
11
|
import { DomainListParser } from '../misc/domain-list-parser.js';
|
|
11
12
|
import { ModifierListParser } from '../misc/modifier-list.js';
|
|
12
|
-
import { OPEN_SQUARE_BRACKET, DOLLAR_SIGN, CLOSE_SQUARE_BRACKET, UBO_SCRIPTLET_MASK, UBO_SCRIPTLET_MASK_LEGACY, ADG_SCRIPTLET_MASK, UBO_HTML_MASK } from '../../utils/constants.js';
|
|
13
|
+
import { OPEN_SQUARE_BRACKET, DOLLAR_SIGN, CLOSE_SQUARE_BRACKET, CSS_BLOCK_OPEN, CSS_BLOCK_CLOSE, UBO_SCRIPTLET_MASK, UBO_SCRIPTLET_MASK_LEGACY, ADG_SCRIPTLET_MASK, UBO_HTML_MASK } from '../../utils/constants.js';
|
|
13
14
|
import { RuleCategory, CosmeticRuleType } from '../../nodes/index.js';
|
|
14
15
|
import { AdblockSyntaxError } from '../../errors/adblock-syntax-error.js';
|
|
15
16
|
import { StringUtils } from '../../utils/string.js';
|
|
@@ -22,6 +23,7 @@ import { UboScriptletInjectionBodyParser } from './body/ubo-scriptlet-injection-
|
|
|
22
23
|
import { AdgScriptletInjectionBodyParser } from './body/adg-scriptlet-injection-body-parser.js';
|
|
23
24
|
import { BaseParser } from '../base-parser.js';
|
|
24
25
|
import { UboPseudoName } from '../../common/ubo-selector-common.js';
|
|
26
|
+
import { hasToken } from '../css/has-token.js';
|
|
25
27
|
|
|
26
28
|
/**
|
|
27
29
|
* Possible error messages for uBO selectors. Formatted with {@link sprintf}.
|
|
@@ -306,6 +308,33 @@ class CosmeticRuleParser extends BaseParser {
|
|
|
306
308
|
body: AdgCssInjectionParser.parse(rawBody, options, baseOffset + bodyStart),
|
|
307
309
|
};
|
|
308
310
|
};
|
|
311
|
+
/**
|
|
312
|
+
* Parses Adb CSS injection rules
|
|
313
|
+
* eg: example.com##.foo { display: none; }
|
|
314
|
+
*
|
|
315
|
+
* @returns parsed rule
|
|
316
|
+
*/
|
|
317
|
+
const parseAbpCssInjection = () => {
|
|
318
|
+
if (!options.parseAbpSpecificRules) {
|
|
319
|
+
return null;
|
|
320
|
+
}
|
|
321
|
+
// check if the rule contains both CSS block open and close characters
|
|
322
|
+
// if none of them is present we can stop parsing
|
|
323
|
+
if (rawBody.indexOf(CSS_BLOCK_OPEN) === -1 && rawBody.indexOf(CSS_BLOCK_CLOSE) === -1) {
|
|
324
|
+
return null;
|
|
325
|
+
}
|
|
326
|
+
if (!hasToken(rawBody, new Set([TokenType.OpenCurlyBracket, TokenType.CloseCurlyBracket]))) {
|
|
327
|
+
return null;
|
|
328
|
+
}
|
|
329
|
+
// try to parse the raw body as an AdGuard CSS injection rule
|
|
330
|
+
const body = AdgCssInjectionParser.parse(rawBody, options, baseOffset + bodyStart);
|
|
331
|
+
// if the parsed rule type is a 'CssInjectionRuleBody', return the parsed rule
|
|
332
|
+
return {
|
|
333
|
+
syntax: AdblockSyntax.Abp,
|
|
334
|
+
type: CosmeticRuleType.CssInjectionRule,
|
|
335
|
+
body,
|
|
336
|
+
};
|
|
337
|
+
};
|
|
309
338
|
const parseAbpSnippetInjection = () => {
|
|
310
339
|
if (!options.parseAbpSpecificRules) {
|
|
311
340
|
throw new AdblockSyntaxError(sprintf(ERROR_MESSAGES.SYNTAX_DISABLED, AdblockSyntax.Abp), baseOffset + bodyStart, baseOffset + bodyEnd);
|
|
@@ -417,10 +446,22 @@ class CosmeticRuleParser extends BaseParser {
|
|
|
417
446
|
// the next function is called, and so on.
|
|
418
447
|
// If all functions return null, an error should be thrown.
|
|
419
448
|
const separatorMap = {
|
|
420
|
-
'##': [
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
449
|
+
'##': [
|
|
450
|
+
parseUboHtmlFiltering,
|
|
451
|
+
parseUboScriptletInjection,
|
|
452
|
+
parseUboCssInjection,
|
|
453
|
+
parseAbpCssInjection,
|
|
454
|
+
parseElementHiding,
|
|
455
|
+
],
|
|
456
|
+
'#@#': [
|
|
457
|
+
parseUboHtmlFiltering,
|
|
458
|
+
parseUboScriptletInjection,
|
|
459
|
+
parseUboCssInjection,
|
|
460
|
+
parseAbpCssInjection,
|
|
461
|
+
parseElementHiding,
|
|
462
|
+
],
|
|
463
|
+
'#?#': [parseUboCssInjection, parseAbpCssInjection, parseElementHiding],
|
|
464
|
+
'#@?#': [parseUboCssInjection, parseAbpCssInjection, parseElementHiding],
|
|
424
465
|
'#$#': [parseAdgCssInjection, parseAbpSnippetInjection],
|
|
425
466
|
'#@$#': [parseAdgCssInjection, parseAbpSnippetInjection],
|
|
426
467
|
'#$?#': [parseAdgCssInjection],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v3.0.0-alpha.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v3.0.0-alpha.3 (build date: Thu, 30 Jan 2025 11:44:31 GMT)
|
|
3
|
+
* (c) 2025 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -51,14 +51,24 @@ class CssTokenStream {
|
|
|
51
51
|
// - end: end index of the token
|
|
52
52
|
// - props: additional properties of the token, if any (we don't use it here, this is why we use underscore)
|
|
53
53
|
// - balance: balance level of the token
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
54
|
+
try {
|
|
55
|
+
tokenizeBalanced(source, (type, start, end, _, balance) => {
|
|
56
|
+
this.tokens.push({
|
|
57
|
+
type,
|
|
58
|
+
start,
|
|
59
|
+
end,
|
|
60
|
+
balance,
|
|
61
|
+
});
|
|
60
62
|
});
|
|
61
|
-
}
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
// If the error is an AdblockSyntaxError, adjust the error positions to the base offset
|
|
66
|
+
if (error instanceof AdblockSyntaxError) {
|
|
67
|
+
error.start += baseOffset;
|
|
68
|
+
error.end += baseOffset;
|
|
69
|
+
throw error;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
62
72
|
this.index = 0;
|
|
63
73
|
this.baseOffset = baseOffset;
|
|
64
74
|
}
|