@adguard/agtree 3.0.1 → 3.1.0

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.
Files changed (246) hide show
  1. package/dist/ast-utils/clone.js +1 -1
  2. package/dist/ast-utils/modifiers.js +1 -1
  3. package/dist/ast-utils/network-rules.js +1 -1
  4. package/dist/ast-utils/scriptlets.js +1 -1
  5. package/dist/common/abp-snippet-injection-body-common.js +1 -1
  6. package/dist/common/agent-common.js +1 -1
  7. package/dist/common/ubo-selector-common.js +1 -1
  8. package/dist/compatibility-tables/base.js +1 -1
  9. package/dist/compatibility-tables/compatibility-table-data.js +1 -1
  10. package/dist/compatibility-tables/modifiers.js +1 -1
  11. package/dist/compatibility-tables/platforms.js +1 -1
  12. package/dist/compatibility-tables/redirects.js +1 -1
  13. package/dist/compatibility-tables/schemas/base.js +1 -1
  14. package/dist/compatibility-tables/schemas/modifier.js +1 -1
  15. package/dist/compatibility-tables/schemas/platform.js +1 -1
  16. package/dist/compatibility-tables/schemas/redirect.js +1 -1
  17. package/dist/compatibility-tables/schemas/resource-type.js +1 -1
  18. package/dist/compatibility-tables/schemas/scriptlet.js +1 -1
  19. package/dist/compatibility-tables/scriptlets.js +1 -1
  20. package/dist/compatibility-tables/utils/platform-helpers.js +1 -1
  21. package/dist/compatibility-tables/utils/resource-type-helpers.js +1 -1
  22. package/dist/compatibility-tables/utils/zod-camelcase.js +1 -1
  23. package/dist/converter/base-interfaces/base-converter.js +1 -1
  24. package/dist/converter/base-interfaces/conversion-result.js +1 -1
  25. package/dist/converter/base-interfaces/rule-converter-base.js +1 -1
  26. package/dist/converter/comment/index.js +1 -1
  27. package/dist/converter/cosmetic/css.js +1 -1
  28. package/dist/converter/cosmetic/element-hiding.js +1 -1
  29. package/dist/converter/cosmetic/header-removal.js +1 -1
  30. package/dist/converter/cosmetic/html.js +1 -1
  31. package/dist/converter/cosmetic/index.js +31 -1
  32. package/dist/converter/cosmetic/rule-modifiers/adg.js +1 -1
  33. package/dist/converter/cosmetic/rule-modifiers/ubo.js +149 -0
  34. package/dist/converter/cosmetic/scriptlet.js +1 -1
  35. package/dist/converter/css/index.js +1 -1
  36. package/dist/converter/data/css.js +1 -1
  37. package/dist/converter/filter-list.js +1 -1
  38. package/dist/converter/index.js +1 -1
  39. package/dist/converter/misc/network-rule-modifier.js +1 -1
  40. package/dist/converter/network/index.js +1 -1
  41. package/dist/converter/raw-filter-list.js +1 -1
  42. package/dist/converter/rule.js +1 -1
  43. package/dist/deserializer/base-deserializer.js +1 -1
  44. package/dist/deserializer/comment/agent-comment-deserializer.js +1 -1
  45. package/dist/deserializer/comment/agent-deserializer.js +1 -1
  46. package/dist/deserializer/comment/comment-rule-deserializer.js +1 -1
  47. package/dist/deserializer/comment/config-comment-deserializer.js +1 -1
  48. package/dist/deserializer/comment/hint-comment-deserializer.js +1 -1
  49. package/dist/deserializer/comment/hint-deserializer.js +1 -1
  50. package/dist/deserializer/comment/metadata-comment-deserializer.js +1 -1
  51. package/dist/deserializer/comment/pre-processor-comment-deserializer.js +1 -1
  52. package/dist/deserializer/comment/simple-comment-deserializer.js +1 -1
  53. package/dist/deserializer/cosmetic/cosmetic-rule-deserializer.js +1 -1
  54. package/dist/deserializer/cosmetic/css-injection-body-deserializer.js +1 -1
  55. package/dist/deserializer/cosmetic/element-hiding-body-deserializer.js +1 -1
  56. package/dist/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.js +1 -1
  57. package/dist/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.js +1 -1
  58. package/dist/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.js +1 -1
  59. package/dist/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.js +1 -1
  60. package/dist/deserializer/empty-rule-deserializer.js +1 -1
  61. package/dist/deserializer/filterlist-deserializer.js +1 -1
  62. package/dist/deserializer/index.js +1 -1
  63. package/dist/deserializer/invalid-rule-deserializer.js +1 -1
  64. package/dist/deserializer/invalid-rule-error-node-deserializer.js +1 -1
  65. package/dist/deserializer/misc/domain-list-deserializer.js +1 -1
  66. package/dist/deserializer/misc/list-item-deserializer.js +1 -1
  67. package/dist/deserializer/misc/list-items-deserializer.js +1 -1
  68. package/dist/deserializer/misc/logical-expression-deserializer.js +1 -1
  69. package/dist/deserializer/misc/modifier-deserializer.js +1 -1
  70. package/dist/deserializer/misc/modifier-list-deserializer.js +1 -1
  71. package/dist/deserializer/misc/parameter-list-deserializer.js +1 -1
  72. package/dist/deserializer/misc/value-deserializer.js +1 -1
  73. package/dist/deserializer/network/host-rule-deserializer.js +1 -1
  74. package/dist/deserializer/network/hostname-list-deserializer.js +1 -1
  75. package/dist/deserializer/network/network-rule-deserializer.js +1 -1
  76. package/dist/deserializer/rule-deserializer.js +1 -1
  77. package/dist/deserializer/syntax-deserialization-map.js +1 -1
  78. package/dist/errors/adblock-syntax-error.js +1 -1
  79. package/dist/errors/binary-schema-mismatch-error.js +1 -1
  80. package/dist/errors/not-implemented-error.js +1 -1
  81. package/dist/errors/rule-conversion-error.js +1 -1
  82. package/dist/generator/base-generator.js +1 -1
  83. package/dist/generator/comment/agent-comment-generator.js +1 -1
  84. package/dist/generator/comment/agent-generator.js +1 -1
  85. package/dist/generator/comment/comment-rule-generator.js +1 -1
  86. package/dist/generator/comment/config-comment-generator.js +1 -1
  87. package/dist/generator/comment/hint-comment-generator.js +1 -1
  88. package/dist/generator/comment/hint-generator.js +1 -1
  89. package/dist/generator/comment/metadata-comment-generator.js +1 -1
  90. package/dist/generator/comment/pre-processor-comment-generator.js +1 -1
  91. package/dist/generator/comment/simple-comment-generator.js +1 -1
  92. package/dist/generator/cosmetic/body/abp-snippet-injection-body-generator.js +1 -1
  93. package/dist/generator/cosmetic/body/adg-scriptlet-injection-body-generator.js +1 -1
  94. package/dist/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.js +1 -1
  95. package/dist/generator/cosmetic/cosmetic-rule-body-generator.js +1 -1
  96. package/dist/generator/cosmetic/cosmetic-rule-generator.js +11 -3
  97. package/dist/generator/cosmetic/cosmetic-rule-pattern-generator.js +1 -1
  98. package/dist/generator/css/adg-css-injection-generator.js +1 -1
  99. package/dist/generator/filterlist-generator.js +1 -1
  100. package/dist/generator/index.js +1 -1
  101. package/dist/generator/misc/domain-list-generator.js +1 -1
  102. package/dist/generator/misc/list-items-generator.js +1 -1
  103. package/dist/generator/misc/logical-expression-generator.js +1 -1
  104. package/dist/generator/misc/modifier-generator.js +1 -1
  105. package/dist/generator/misc/modifier-list-generator.js +1 -1
  106. package/dist/generator/misc/parameter-list-generator.js +1 -1
  107. package/dist/generator/misc/value-generator.js +1 -1
  108. package/dist/generator/network/host-rule-generator.js +1 -1
  109. package/dist/generator/network/network-rule-generator.js +1 -1
  110. package/dist/generator/rule-generator.js +1 -1
  111. package/dist/index.js +1 -1
  112. package/dist/marshalling-utils/comment/agent-comment-common.js +1 -1
  113. package/dist/marshalling-utils/comment/agent-common.js +1 -1
  114. package/dist/marshalling-utils/comment/config-comment-common.js +1 -1
  115. package/dist/marshalling-utils/comment/hint-comment-common.js +1 -1
  116. package/dist/marshalling-utils/comment/hint-common.js +1 -1
  117. package/dist/marshalling-utils/comment/metadata-comment-common.js +1 -1
  118. package/dist/marshalling-utils/comment/pre-processor-comment-common.js +1 -1
  119. package/dist/marshalling-utils/comment/simple-comment-common.js +1 -1
  120. package/dist/marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.js +1 -1
  121. package/dist/marshalling-utils/cosmetic/body/adg-scriptlet-injection-body-common.js +1 -1
  122. package/dist/marshalling-utils/cosmetic/body/css-injection-body-common.js +1 -1
  123. package/dist/marshalling-utils/cosmetic/body/element-hiding-body-common.js +1 -1
  124. package/dist/marshalling-utils/cosmetic/body/ubo-scriptlet-injection-body-common.js +1 -1
  125. package/dist/marshalling-utils/cosmetic/cosmetic-rule-common.js +1 -1
  126. package/dist/marshalling-utils/empty-rule-common.js +1 -1
  127. package/dist/marshalling-utils/filter-list-common.js +1 -1
  128. package/dist/marshalling-utils/invalid-rule-common.js +1 -1
  129. package/dist/marshalling-utils/invalid-rule-error-node-common.js +1 -1
  130. package/dist/marshalling-utils/misc/binary-type-common.js +1 -1
  131. package/dist/marshalling-utils/misc/domain-list-common.js +1 -1
  132. package/dist/marshalling-utils/misc/host-rule-common.js +1 -1
  133. package/dist/marshalling-utils/misc/hostname-list-common.js +1 -1
  134. package/dist/marshalling-utils/misc/list-item-common.js +1 -1
  135. package/dist/marshalling-utils/misc/logical-expression-common.js +1 -1
  136. package/dist/marshalling-utils/misc/modifier-common.js +1 -1
  137. package/dist/marshalling-utils/misc/modifier-list-common.js +1 -1
  138. package/dist/marshalling-utils/misc/parameter-list-common.js +1 -1
  139. package/dist/marshalling-utils/misc/value-common.js +1 -1
  140. package/dist/marshalling-utils/network/network-rule-common.js +1 -1
  141. package/dist/marshalling-utils/syntax-serialization-map.js +1 -1
  142. package/dist/nodes/index.js +1 -1
  143. package/dist/package.json.js +2 -2
  144. package/dist/parser/base-parser.js +1 -1
  145. package/dist/parser/comment/agent-comment-parser.js +1 -1
  146. package/dist/parser/comment/agent-parser.js +1 -1
  147. package/dist/parser/comment/comment-parser.js +1 -1
  148. package/dist/parser/comment/config-comment-parser.js +1 -1
  149. package/dist/parser/comment/hint-comment-parser.js +1 -1
  150. package/dist/parser/comment/hint-parser.js +1 -1
  151. package/dist/parser/comment/metadata-comment-parser.js +1 -1
  152. package/dist/parser/comment/preprocessor-parser.js +1 -1
  153. package/dist/parser/comment/simple-comment-parser.js +1 -1
  154. package/dist/parser/cosmetic/body/abp-snippet-injection-body-parser.js +1 -1
  155. package/dist/parser/cosmetic/body/adg-scriptlet-injection-body-parser.js +1 -1
  156. package/dist/parser/cosmetic/body/ubo-scriptlet-injection-body-parser.js +1 -1
  157. package/dist/parser/cosmetic/cosmetic-rule-parser.js +1 -1
  158. package/dist/parser/css/adg-css-injection-parser.js +1 -1
  159. package/dist/parser/css/balancing.js +1 -1
  160. package/dist/parser/css/constants.js +1 -1
  161. package/dist/parser/css/css-token-stream.js +1 -1
  162. package/dist/parser/css/ubo-selector-parser.js +1 -1
  163. package/dist/parser/filterlist-parser.js +1 -1
  164. package/dist/parser/index.js +1 -1
  165. package/dist/parser/misc/app-list-parser.js +1 -1
  166. package/dist/parser/misc/domain-list-parser.js +1 -1
  167. package/dist/parser/misc/list-items-parser.js +1 -1
  168. package/dist/parser/misc/logical-expression-parser.js +1 -1
  169. package/dist/parser/misc/method-list-parser.js +1 -1
  170. package/dist/parser/misc/modifier-list.js +1 -1
  171. package/dist/parser/misc/modifier-parser.js +1 -1
  172. package/dist/parser/misc/parameter-list-parser.js +1 -1
  173. package/dist/parser/misc/stealth-option-list-parser.js +1 -1
  174. package/dist/parser/misc/ubo-parameter-list-parser.js +1 -1
  175. package/dist/parser/misc/value-parser.js +1 -1
  176. package/dist/parser/network/host-rule-parser.js +1 -1
  177. package/dist/parser/network/network-rule-parser.js +1 -1
  178. package/dist/parser/options.js +1 -1
  179. package/dist/parser/rule-parser.js +1 -1
  180. package/dist/serializer/base-serializer.js +1 -1
  181. package/dist/serializer/comment/agent-comment-serializer.js +1 -1
  182. package/dist/serializer/comment/agent-serializer.js +1 -1
  183. package/dist/serializer/comment/comment-rule-serializer.js +1 -1
  184. package/dist/serializer/comment/config-comment-serializer.js +1 -1
  185. package/dist/serializer/comment/hint-comment-serializer.js +1 -1
  186. package/dist/serializer/comment/hint-serializer.js +1 -1
  187. package/dist/serializer/comment/metadata-comment-serializer.js +1 -1
  188. package/dist/serializer/comment/pre-processor-comment-serializer.js +1 -1
  189. package/dist/serializer/comment/simple-comment-serializer.js +1 -1
  190. package/dist/serializer/cosmetic/body/abp-snippet-injection-body-serializer.js +1 -1
  191. package/dist/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.js +1 -1
  192. package/dist/serializer/cosmetic/body/scriptlet-body-serializer.js +1 -1
  193. package/dist/serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.js +1 -1
  194. package/dist/serializer/cosmetic/cosmetic-rule-serializer.js +1 -1
  195. package/dist/serializer/cosmetic/css-injection-body-serializer.js +1 -1
  196. package/dist/serializer/cosmetic/element-hiding-body-serializer.js +1 -1
  197. package/dist/serializer/empty-rule-serializer.js +1 -1
  198. package/dist/serializer/filterlist-serializer.js +1 -1
  199. package/dist/serializer/index.js +1 -1
  200. package/dist/serializer/invalid-rule-error-node-serializer.js +1 -1
  201. package/dist/serializer/invalid-rule-serializer.js +1 -1
  202. package/dist/serializer/misc/domain-list-serializer.js +1 -1
  203. package/dist/serializer/misc/list-item-serializer.js +1 -1
  204. package/dist/serializer/misc/list-items-serializer.js +1 -1
  205. package/dist/serializer/misc/logical-expression-serializer.js +1 -1
  206. package/dist/serializer/misc/modifier-list-serializer.js +1 -1
  207. package/dist/serializer/misc/modifier-serializer.js +1 -1
  208. package/dist/serializer/misc/parameter-list-serializer.js +1 -1
  209. package/dist/serializer/misc/value-serializer.js +1 -1
  210. package/dist/serializer/network/host-rule-serializer.js +1 -1
  211. package/dist/serializer/network/hostname-list-serializer.js +1 -1
  212. package/dist/serializer/network/network-rule-serializer.js +1 -1
  213. package/dist/serializer/rule-serializer.js +1 -1
  214. package/dist/types/converter/cosmetic/rule-modifiers/ubo.d.ts +24 -0
  215. package/dist/types/utils/constants.d.ts +5 -0
  216. package/dist/types/utils/index.d.ts +1 -1
  217. package/dist/types/utils/regexp.d.ts +21 -0
  218. package/dist/utils/adblockers.js +1 -1
  219. package/dist/utils/binary-schema-version.js +1 -1
  220. package/dist/utils/byte-buffer.js +1 -1
  221. package/dist/utils/categorizer.js +1 -1
  222. package/dist/utils/clone.js +1 -1
  223. package/dist/utils/constants.js +7 -2
  224. package/dist/utils/cosmetic-rule-separator.js +1 -1
  225. package/dist/utils/deep-freeze.js +1 -1
  226. package/dist/utils/domain.js +1 -1
  227. package/dist/utils/error.js +1 -1
  228. package/dist/utils/index.js +2 -2
  229. package/dist/utils/input-byte-buffer.js +1 -1
  230. package/dist/utils/is-chromium.js +1 -1
  231. package/dist/utils/logical-expression.js +1 -1
  232. package/dist/utils/multi-value-map.js +1 -1
  233. package/dist/utils/output-byte-buffer.js +1 -1
  234. package/dist/utils/position-provider.js +1 -1
  235. package/dist/utils/quotes.js +1 -1
  236. package/dist/utils/regexp.js +47 -1
  237. package/dist/utils/string.js +1 -1
  238. package/dist/utils/text-decoder-polyfill.js +1 -1
  239. package/dist/utils/text-encoder-polyfill.js +1 -1
  240. package/dist/utils/type-guards.js +1 -1
  241. package/dist/validator/constants.js +1 -1
  242. package/dist/validator/helpers.js +1 -1
  243. package/dist/validator/index.js +1 -1
  244. package/dist/validator/value.js +1 -1
  245. package/dist/version.js +1 -1
  246. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -15,6 +15,15 @@ import { CssInjectionRuleConverter } from './css.js';
15
15
  import { ElementHidingRuleConverter } from './element-hiding.js';
16
16
  import { HeaderRemovalRuleConverter } from './header-removal.js';
17
17
  import { createNodeConversionResult } from '../base-interfaces/conversion-result.js';
18
+ import { UboCosmeticRuleModifierConverter } from './rule-modifiers/ubo.js';
19
+ import { clone } from '../../utils/clone.js';
20
+ import { COMMA } from '../../utils/constants.js';
21
+ import 'tldts';
22
+ import 'sprintf-js';
23
+ import '@adguard/css-tokenizer';
24
+ import 'json5';
25
+ import '../../parser/css/balancing.js';
26
+ import '../data/css.js';
18
27
 
19
28
  /**
20
29
  * @file Cosmetic rule converter
@@ -111,6 +120,27 @@ class CosmeticRuleConverter extends RuleConverterBase {
111
120
  }
112
121
  return ScriptletRuleConverter.convertToUbo(rule);
113
122
  }
123
+ let convertedModifiers;
124
+ // Convert cosmetic rule modifiers, if any
125
+ if (rule.modifiers) {
126
+ if (rule.syntax === AdblockSyntax.Abp) {
127
+ // TODO: Implement once ABP starts supporting cosmetic rule modifiers
128
+ throw new RuleConversionError('ABP does not support cosmetic rule modifiers');
129
+ }
130
+ else if (rule.syntax === AdblockSyntax.Adg) {
131
+ convertedModifiers = UboCosmeticRuleModifierConverter.convertFromAdg(rule.modifiers);
132
+ }
133
+ }
134
+ if (convertedModifiers && convertedModifiers.isConverted) {
135
+ const result = clone(rule);
136
+ result.modifiers = convertedModifiers.result.modifierList;
137
+ result.syntax = AdblockSyntax.Ubo;
138
+ if (convertedModifiers.result.domains) {
139
+ result.domains = convertedModifiers.result.domains;
140
+ result.domains.separator = COMMA;
141
+ }
142
+ return createNodeConversionResult([result], true);
143
+ }
114
144
  return createNodeConversionResult([rule], false);
115
145
  }
116
146
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -0,0 +1,149 @@
1
+ /*
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
+ * (c) 2025 Adguard Software Ltd.
4
+ * Released under the MIT license
5
+ * https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
6
+ */
7
+ import { ListNodeType, ListItemNodeType } from '../../../nodes/index.js';
8
+ import { createModifierNode } from '../../../ast-utils/modifiers.js';
9
+ import { RegExpUtils } from '../../../utils/regexp.js';
10
+ import { ADG_PATH_MODIFIER, ADG_URL_MODIFIER, COMMA_DOMAIN_LIST_SEPARATOR, ADG_DOMAINS_MODIFIER, PIPE_MODIFIER_SEPARATOR, ADG_APP_MODIFIER, UBO_MATCHES_PATH_OPERATOR, OPEN_SQUARE_BRACKET, CLOSE_SQUARE_BRACKET, ESCAPE_CHARACTER } from '../../../utils/constants.js';
11
+ import { StringUtils } from '../../../utils/string.js';
12
+ import { MultiValueMap } from '../../../utils/multi-value-map.js';
13
+ import { clone } from '../../../utils/clone.js';
14
+ import { createConversionResult } from '../../base-interfaces/conversion-result.js';
15
+ import 'json5';
16
+ import 'sprintf-js';
17
+ import '@adguard/css-tokenizer';
18
+ import { DomainListParser } from '../../../parser/misc/domain-list-parser.js';
19
+ import '../../../parser/css/balancing.js';
20
+ import '../../data/css.js';
21
+ import 'tldts';
22
+ import 'is-ip';
23
+
24
+ /**
25
+ * @file Cosmetic rule modifier converter from ADG to uBO
26
+ */
27
+ /**
28
+ * Regular expression pattern for matching the main page
29
+ * https://github.com/gorhill/uBlock/wiki/Procedural-cosmetic-filters#subjectmatches-patharg
30
+ */
31
+ const UBO_MAIN_PAGE_MATCHER = '/^/$/';
32
+ /**
33
+ * Special characters in modifier regexps that should be escaped
34
+ */
35
+ const SPECIAL_MODIFIER_REGEX_CHARS = new Set([
36
+ OPEN_SQUARE_BRACKET,
37
+ CLOSE_SQUARE_BRACKET,
38
+ COMMA_DOMAIN_LIST_SEPARATOR,
39
+ ESCAPE_CHARACTER,
40
+ ]);
41
+ /**
42
+ * Helper class for converting cosmetic rule modifiers from ADG to uBO
43
+ */
44
+ class UboCosmeticRuleModifierConverter {
45
+ /**
46
+ * Converts a ADG cosmetic rule modifier list to uBO, if possible.
47
+ *
48
+ * @param modifierList Cosmetic rule modifier list node to convert
49
+ * @returns An object which follows the {@link ConversionResult} interface. Its `result` property contains
50
+ * the converted node, and its `isConverted` flag indicates whether the original node was converted.
51
+ * If the node was not converted, the result will contain the original node with the same object reference
52
+ * @throws If the modifier list cannot be converted
53
+ * @see {@link https://github.com/gorhill/uBlock/wiki/Procedural-cosmetic-filters#cosmetic-filter-operators}
54
+ */
55
+ static convertFromAdg(modifierList) {
56
+ const conversionMap = new MultiValueMap();
57
+ let domainList = null;
58
+ let regexDomainValue;
59
+ modifierList.children.forEach((modifier, index) => {
60
+ let value;
61
+ let { exception } = modifier;
62
+ switch (modifier.name.value) {
63
+ // Special case: ADG's $app modifier
64
+ case ADG_APP_MODIFIER:
65
+ throw new Error('The $app modifier is not supported by uBO');
66
+ // Special case: ADG's $domains modifier
67
+ case ADG_DOMAINS_MODIFIER:
68
+ if (!domainList) {
69
+ domainList = {
70
+ type: ListNodeType.DomainList,
71
+ separator: COMMA_DOMAIN_LIST_SEPARATOR,
72
+ children: [],
73
+ start: modifier.start,
74
+ end: modifier.end,
75
+ };
76
+ }
77
+ if (!modifier?.value?.value) {
78
+ return;
79
+ }
80
+ domainList = DomainListParser.parse(modifier.value.value, {}, modifier.start, PIPE_MODIFIER_SEPARATOR);
81
+ conversionMap.add(index, null);
82
+ break;
83
+ // Special case: ADG's $url modifier
84
+ case ADG_URL_MODIFIER:
85
+ if (!domainList) {
86
+ domainList = {
87
+ type: ListNodeType.DomainList,
88
+ separator: COMMA_DOMAIN_LIST_SEPARATOR,
89
+ children: [],
90
+ start: modifier.start,
91
+ end: modifier.end,
92
+ };
93
+ }
94
+ if (!modifier?.value?.value) {
95
+ return;
96
+ }
97
+ regexDomainValue = RegExpUtils.patternToRegexp(modifier.value.value);
98
+ domainList = {
99
+ type: ListNodeType.DomainList,
100
+ separator: COMMA_DOMAIN_LIST_SEPARATOR,
101
+ children: [
102
+ {
103
+ type: ListItemNodeType.Domain,
104
+ value: RegExpUtils.ensureSlashes(regexDomainValue),
105
+ exception: modifier?.exception ?? false,
106
+ },
107
+ ],
108
+ start: modifier.start,
109
+ end: modifier.end,
110
+ };
111
+ conversionMap.add(index, null);
112
+ break;
113
+ // Special case: ADG's $path modifier
114
+ case ADG_PATH_MODIFIER:
115
+ if (!modifier.value) {
116
+ value = UBO_MAIN_PAGE_MATCHER;
117
+ }
118
+ else if (RegExpUtils.isNegatedRegexPattern(modifier.value.value)) {
119
+ exception = true;
120
+ value = StringUtils.escapeCharacters(RegExpUtils.removeNegationFromRegexPattern(modifier.value.value), SPECIAL_MODIFIER_REGEX_CHARS);
121
+ }
122
+ else {
123
+ value = RegExpUtils.isRegexPattern(modifier.value.value)
124
+ ? StringUtils.escapeCharacters(modifier.value.value, SPECIAL_MODIFIER_REGEX_CHARS)
125
+ : modifier.value.value;
126
+ }
127
+ conversionMap.add(index, createModifierNode(UBO_MATCHES_PATH_OPERATOR, value, exception));
128
+ break;
129
+ }
130
+ });
131
+ // Check if we have any converted modifiers
132
+ if (conversionMap.size) {
133
+ const modifierListClone = clone(modifierList);
134
+ // Replace the original modifiers with the converted ones
135
+ modifierListClone.children = modifierListClone.children
136
+ .map((modifier, index) => {
137
+ const convertedModifier = conversionMap.get(index);
138
+ return convertedModifier ?? modifier;
139
+ })
140
+ .flat()
141
+ .filter((modifier) => modifier !== null);
142
+ return createConversionResult({ modifierList: modifierListClone, domains: domainList || undefined }, true);
143
+ }
144
+ // Otherwise, just return the original modifier list without any changes
145
+ return createConversionResult({ modifierList, domains: undefined }, false);
146
+ }
147
+ }
148
+
149
+ export { UboCosmeticRuleModifierConverter };
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.0.1 (build date: Fri, 28 Feb 2025 15:31:12 GMT)
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
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