@adguard/agtree 3.2.0 → 3.2.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.
Files changed (425) 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 +2 -2
  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 +18 -16
  32. package/dist/converter/cosmetic/rule-modifiers/adg.js +1 -1
  33. package/dist/converter/cosmetic/rule-modifiers/ubo.js +1 -8
  34. package/dist/converter/cosmetic/scriptlet.js +33 -6
  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/raw-rule.js +1 -1
  43. package/dist/converter/rule.js +1 -1
  44. package/dist/deserializer/base-deserializer.js +1 -1
  45. package/dist/deserializer/comment/agent-comment-deserializer.js +1 -1
  46. package/dist/deserializer/comment/agent-deserializer.js +1 -1
  47. package/dist/deserializer/comment/comment-rule-deserializer.js +1 -1
  48. package/dist/deserializer/comment/config-comment-deserializer.js +1 -1
  49. package/dist/deserializer/comment/hint-comment-deserializer.js +1 -1
  50. package/dist/deserializer/comment/hint-deserializer.js +1 -1
  51. package/dist/deserializer/comment/metadata-comment-deserializer.js +1 -1
  52. package/dist/deserializer/comment/pre-processor-comment-deserializer.js +1 -1
  53. package/dist/deserializer/comment/simple-comment-deserializer.js +1 -1
  54. package/dist/deserializer/cosmetic/cosmetic-rule-deserializer.js +1 -1
  55. package/dist/deserializer/cosmetic/css-injection-body-deserializer.js +1 -1
  56. package/dist/deserializer/cosmetic/element-hiding-body-deserializer.js +1 -1
  57. package/dist/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.js +1 -1
  58. package/dist/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.js +1 -1
  59. package/dist/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.js +1 -1
  60. package/dist/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.js +1 -1
  61. package/dist/deserializer/empty-rule-deserializer.js +1 -1
  62. package/dist/deserializer/filterlist-deserializer.js +1 -1
  63. package/dist/deserializer/index.js +1 -1
  64. package/dist/deserializer/invalid-rule-deserializer.js +1 -1
  65. package/dist/deserializer/invalid-rule-error-node-deserializer.js +1 -1
  66. package/dist/deserializer/misc/domain-list-deserializer.js +1 -1
  67. package/dist/deserializer/misc/list-item-deserializer.js +1 -1
  68. package/dist/deserializer/misc/list-items-deserializer.js +1 -1
  69. package/dist/deserializer/misc/logical-expression-deserializer.js +1 -1
  70. package/dist/deserializer/misc/modifier-deserializer.js +1 -1
  71. package/dist/deserializer/misc/modifier-list-deserializer.js +1 -1
  72. package/dist/deserializer/misc/parameter-list-deserializer.js +1 -1
  73. package/dist/deserializer/misc/value-deserializer.js +1 -1
  74. package/dist/deserializer/network/host-rule-deserializer.js +1 -1
  75. package/dist/deserializer/network/hostname-list-deserializer.js +1 -1
  76. package/dist/deserializer/network/network-rule-deserializer.js +1 -1
  77. package/dist/deserializer/rule-deserializer.js +1 -1
  78. package/dist/deserializer/syntax-deserialization-map.js +1 -1
  79. package/dist/errors/adblock-syntax-error.js +1 -1
  80. package/dist/errors/binary-schema-mismatch-error.js +1 -1
  81. package/dist/errors/not-implemented-error.js +1 -1
  82. package/dist/errors/rule-conversion-error.js +1 -1
  83. package/dist/generator/base-generator.js +1 -1
  84. package/dist/generator/comment/agent-comment-generator.js +1 -1
  85. package/dist/generator/comment/agent-generator.js +1 -1
  86. package/dist/generator/comment/comment-rule-generator.js +1 -1
  87. package/dist/generator/comment/config-comment-generator.js +1 -1
  88. package/dist/generator/comment/hint-comment-generator.js +1 -1
  89. package/dist/generator/comment/hint-generator.js +1 -1
  90. package/dist/generator/comment/metadata-comment-generator.js +1 -1
  91. package/dist/generator/comment/pre-processor-comment-generator.js +1 -1
  92. package/dist/generator/comment/simple-comment-generator.js +1 -1
  93. package/dist/generator/cosmetic/body/abp-snippet-injection-body-generator.js +1 -1
  94. package/dist/generator/cosmetic/body/adg-scriptlet-injection-body-generator.js +1 -1
  95. package/dist/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.js +1 -1
  96. package/dist/generator/cosmetic/cosmetic-rule-body-generator.js +1 -1
  97. package/dist/generator/cosmetic/cosmetic-rule-generator.js +1 -1
  98. package/dist/generator/cosmetic/cosmetic-rule-pattern-generator.js +1 -1
  99. package/dist/generator/css/adg-css-injection-generator.js +1 -1
  100. package/dist/generator/filterlist-generator.js +1 -1
  101. package/dist/generator/index.js +1 -1
  102. package/dist/generator/misc/domain-list-generator.js +1 -1
  103. package/dist/generator/misc/list-items-generator.js +1 -1
  104. package/dist/generator/misc/logical-expression-generator.js +1 -1
  105. package/dist/generator/misc/modifier-generator.js +1 -1
  106. package/dist/generator/misc/modifier-list-generator.js +1 -1
  107. package/dist/generator/misc/parameter-list-generator.js +1 -1
  108. package/dist/generator/misc/value-generator.js +1 -1
  109. package/dist/generator/network/host-rule-generator.js +1 -1
  110. package/dist/generator/network/network-rule-generator.js +1 -1
  111. package/dist/generator/rule-generator.js +1 -1
  112. package/dist/index.js +1 -1
  113. package/dist/marshalling-utils/comment/agent-comment-common.js +1 -1
  114. package/dist/marshalling-utils/comment/agent-common.js +1 -1
  115. package/dist/marshalling-utils/comment/config-comment-common.js +1 -1
  116. package/dist/marshalling-utils/comment/hint-comment-common.js +1 -1
  117. package/dist/marshalling-utils/comment/hint-common.js +1 -1
  118. package/dist/marshalling-utils/comment/metadata-comment-common.js +1 -1
  119. package/dist/marshalling-utils/comment/pre-processor-comment-common.js +1 -1
  120. package/dist/marshalling-utils/comment/simple-comment-common.js +1 -1
  121. package/dist/marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.js +1 -1
  122. package/dist/marshalling-utils/cosmetic/body/adg-scriptlet-injection-body-common.js +1 -1
  123. package/dist/marshalling-utils/cosmetic/body/css-injection-body-common.js +1 -1
  124. package/dist/marshalling-utils/cosmetic/body/element-hiding-body-common.js +1 -1
  125. package/dist/marshalling-utils/cosmetic/body/ubo-scriptlet-injection-body-common.js +1 -1
  126. package/dist/marshalling-utils/cosmetic/cosmetic-rule-common.js +1 -1
  127. package/dist/marshalling-utils/empty-rule-common.js +1 -1
  128. package/dist/marshalling-utils/filter-list-common.js +1 -1
  129. package/dist/marshalling-utils/invalid-rule-common.js +1 -1
  130. package/dist/marshalling-utils/invalid-rule-error-node-common.js +1 -1
  131. package/dist/marshalling-utils/misc/binary-type-common.js +1 -1
  132. package/dist/marshalling-utils/misc/domain-list-common.js +1 -1
  133. package/dist/marshalling-utils/misc/host-rule-common.js +1 -1
  134. package/dist/marshalling-utils/misc/hostname-list-common.js +1 -1
  135. package/dist/marshalling-utils/misc/list-item-common.js +1 -1
  136. package/dist/marshalling-utils/misc/logical-expression-common.js +1 -1
  137. package/dist/marshalling-utils/misc/modifier-common.js +1 -1
  138. package/dist/marshalling-utils/misc/modifier-list-common.js +1 -1
  139. package/dist/marshalling-utils/misc/parameter-list-common.js +1 -1
  140. package/dist/marshalling-utils/misc/value-common.js +1 -1
  141. package/dist/marshalling-utils/network/network-rule-common.js +1 -1
  142. package/dist/marshalling-utils/syntax-serialization-map.js +1 -1
  143. package/dist/nodes/index.js +1 -1
  144. package/dist/package.json.js +2 -2
  145. package/dist/parser/base-parser.js +1 -1
  146. package/dist/parser/comment/agent-comment-parser.js +1 -1
  147. package/dist/parser/comment/agent-parser.js +1 -1
  148. package/dist/parser/comment/comment-parser.js +1 -1
  149. package/dist/parser/comment/config-comment-parser.js +1 -1
  150. package/dist/parser/comment/hint-comment-parser.js +1 -1
  151. package/dist/parser/comment/hint-parser.js +1 -1
  152. package/dist/parser/comment/metadata-comment-parser.js +1 -1
  153. package/dist/parser/comment/preprocessor-parser.js +1 -1
  154. package/dist/parser/comment/simple-comment-parser.js +1 -1
  155. package/dist/parser/cosmetic/body/abp-snippet-injection-body-parser.js +1 -1
  156. package/dist/parser/cosmetic/body/adg-scriptlet-injection-body-parser.js +1 -1
  157. package/dist/parser/cosmetic/body/ubo-scriptlet-injection-body-parser.js +1 -1
  158. package/dist/parser/cosmetic/cosmetic-rule-parser.js +1 -1
  159. package/dist/parser/css/adg-css-injection-parser.js +1 -1
  160. package/dist/parser/css/balancing.js +1 -1
  161. package/dist/parser/css/constants.js +1 -1
  162. package/dist/parser/css/css-token-stream.js +1 -1
  163. package/dist/parser/css/ubo-selector-parser.js +2 -2
  164. package/dist/parser/filterlist-parser.js +1 -1
  165. package/dist/parser/index.js +1 -1
  166. package/dist/parser/misc/app-list-parser.js +1 -1
  167. package/dist/parser/misc/domain-list-parser.js +1 -1
  168. package/dist/parser/misc/list-items-parser.js +1 -1
  169. package/dist/parser/misc/logical-expression-parser.js +1 -1
  170. package/dist/parser/misc/method-list-parser.js +1 -1
  171. package/dist/parser/misc/modifier-list.js +1 -1
  172. package/dist/parser/misc/modifier-parser.js +1 -1
  173. package/dist/parser/misc/parameter-list-parser.js +1 -1
  174. package/dist/parser/misc/stealth-option-list-parser.js +1 -1
  175. package/dist/parser/misc/ubo-parameter-list-parser.js +1 -1
  176. package/dist/parser/misc/value-parser.js +1 -1
  177. package/dist/parser/network/host-rule-parser.js +1 -1
  178. package/dist/parser/network/network-rule-parser.js +1 -1
  179. package/dist/parser/options.js +1 -1
  180. package/dist/parser/rule-parser.js +1 -1
  181. package/dist/serializer/base-serializer.js +1 -1
  182. package/dist/serializer/comment/agent-comment-serializer.js +1 -1
  183. package/dist/serializer/comment/agent-serializer.js +1 -1
  184. package/dist/serializer/comment/comment-rule-serializer.js +1 -1
  185. package/dist/serializer/comment/config-comment-serializer.js +1 -1
  186. package/dist/serializer/comment/hint-comment-serializer.js +1 -1
  187. package/dist/serializer/comment/hint-serializer.js +1 -1
  188. package/dist/serializer/comment/metadata-comment-serializer.js +1 -1
  189. package/dist/serializer/comment/pre-processor-comment-serializer.js +1 -1
  190. package/dist/serializer/comment/simple-comment-serializer.js +1 -1
  191. package/dist/serializer/cosmetic/body/abp-snippet-injection-body-serializer.js +1 -1
  192. package/dist/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.js +1 -1
  193. package/dist/serializer/cosmetic/body/scriptlet-body-serializer.js +1 -1
  194. package/dist/serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.js +1 -1
  195. package/dist/serializer/cosmetic/cosmetic-rule-serializer.js +1 -1
  196. package/dist/serializer/cosmetic/css-injection-body-serializer.js +1 -1
  197. package/dist/serializer/cosmetic/element-hiding-body-serializer.js +1 -1
  198. package/dist/serializer/empty-rule-serializer.js +1 -1
  199. package/dist/serializer/filterlist-serializer.js +1 -1
  200. package/dist/serializer/index.js +1 -1
  201. package/dist/serializer/invalid-rule-error-node-serializer.js +1 -1
  202. package/dist/serializer/invalid-rule-serializer.js +1 -1
  203. package/dist/serializer/misc/domain-list-serializer.js +1 -1
  204. package/dist/serializer/misc/list-item-serializer.js +1 -1
  205. package/dist/serializer/misc/list-items-serializer.js +1 -1
  206. package/dist/serializer/misc/logical-expression-serializer.js +1 -1
  207. package/dist/serializer/misc/modifier-list-serializer.js +1 -1
  208. package/dist/serializer/misc/modifier-serializer.js +1 -1
  209. package/dist/serializer/misc/parameter-list-serializer.js +1 -1
  210. package/dist/serializer/misc/value-serializer.js +1 -1
  211. package/dist/serializer/network/host-rule-serializer.js +1 -1
  212. package/dist/serializer/network/hostname-list-serializer.js +1 -1
  213. package/dist/serializer/network/network-rule-serializer.js +1 -1
  214. package/dist/serializer/rule-serializer.js +1 -1
  215. package/dist/types/ast-utils/clone.d.ts +1 -1
  216. package/dist/types/ast-utils/filter-list.d.ts +1 -1
  217. package/dist/types/ast-utils/modifiers.d.ts +1 -1
  218. package/dist/types/ast-utils/network-rules.d.ts +2 -2
  219. package/dist/types/ast-utils/scriptlets.d.ts +2 -2
  220. package/dist/types/common/agent-common.d.ts +1 -1
  221. package/dist/types/compatibility-tables/base.d.ts +4 -4
  222. package/dist/types/compatibility-tables/compatibility-table-data.d.ts +1 -1
  223. package/dist/types/compatibility-tables/index.d.ts +10 -10
  224. package/dist/types/compatibility-tables/modifiers.d.ts +3 -3
  225. package/dist/types/compatibility-tables/redirects.d.ts +4 -4
  226. package/dist/types/compatibility-tables/schemas/index.d.ts +5 -5
  227. package/dist/types/compatibility-tables/scriptlets.d.ts +2 -2
  228. package/dist/types/compatibility-tables/utils/platform-helpers.d.ts +1 -1
  229. package/dist/types/compatibility-tables/utils/resource-type-helpers.d.ts +2 -2
  230. package/dist/types/converter/base-interfaces/base-converter.d.ts +1 -1
  231. package/dist/types/converter/base-interfaces/conversion-result.d.ts +1 -1
  232. package/dist/types/converter/base-interfaces/rule-converter-base.d.ts +3 -3
  233. package/dist/types/converter/comment/index.d.ts +3 -3
  234. package/dist/types/converter/cosmetic/css.d.ts +3 -3
  235. package/dist/types/converter/cosmetic/element-hiding.d.ts +3 -3
  236. package/dist/types/converter/cosmetic/header-removal.d.ts +3 -3
  237. package/dist/types/converter/cosmetic/html.d.ts +3 -3
  238. package/dist/types/converter/cosmetic/index.d.ts +3 -3
  239. package/dist/types/converter/cosmetic/rule-modifiers/adg.d.ts +2 -2
  240. package/dist/types/converter/cosmetic/rule-modifiers/ubo.d.ts +2 -2
  241. package/dist/types/converter/cosmetic/scriptlet.d.ts +3 -3
  242. package/dist/types/converter/css/index.d.ts +3 -3
  243. package/dist/types/converter/filter-list.d.ts +3 -3
  244. package/dist/types/converter/index.d.ts +4 -4
  245. package/dist/types/converter/misc/network-rule-modifier.d.ts +3 -3
  246. package/dist/types/converter/network/index.d.ts +3 -3
  247. package/dist/types/converter/raw-filter-list.d.ts +2 -2
  248. package/dist/types/converter/raw-rule.d.ts +2 -2
  249. package/dist/types/converter/rule.d.ts +3 -3
  250. package/dist/types/deserializer/base-deserializer.d.ts +2 -2
  251. package/dist/types/deserializer/comment/agent-comment-deserializer.d.ts +3 -3
  252. package/dist/types/deserializer/comment/agent-deserializer.d.ts +3 -3
  253. package/dist/types/deserializer/comment/comment-rule-deserializer.d.ts +3 -3
  254. package/dist/types/deserializer/comment/config-comment-deserializer.d.ts +3 -3
  255. package/dist/types/deserializer/comment/hint-comment-deserializer.d.ts +3 -3
  256. package/dist/types/deserializer/comment/hint-deserializer.d.ts +3 -3
  257. package/dist/types/deserializer/comment/metadata-comment-deserializer.d.ts +3 -3
  258. package/dist/types/deserializer/comment/pre-processor-comment-deserializer.d.ts +3 -3
  259. package/dist/types/deserializer/comment/simple-comment-deserializer.d.ts +3 -3
  260. package/dist/types/deserializer/cosmetic/cosmetic-rule-deserializer.d.ts +3 -3
  261. package/dist/types/deserializer/cosmetic/css-injection-body-deserializer.d.ts +3 -3
  262. package/dist/types/deserializer/cosmetic/element-hiding-body-deserializer.d.ts +3 -3
  263. package/dist/types/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.d.ts +3 -3
  264. package/dist/types/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.d.ts +3 -3
  265. package/dist/types/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.d.ts +3 -3
  266. package/dist/types/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.d.ts +3 -3
  267. package/dist/types/deserializer/empty-rule-deserializer.d.ts +3 -3
  268. package/dist/types/deserializer/filterlist-deserializer.d.ts +3 -3
  269. package/dist/types/deserializer/index.d.ts +2 -2
  270. package/dist/types/deserializer/invalid-rule-deserializer.d.ts +3 -3
  271. package/dist/types/deserializer/invalid-rule-error-node-deserializer.d.ts +3 -3
  272. package/dist/types/deserializer/misc/domain-list-deserializer.d.ts +3 -3
  273. package/dist/types/deserializer/misc/list-item-deserializer.d.ts +3 -3
  274. package/dist/types/deserializer/misc/list-items-deserializer.d.ts +2 -2
  275. package/dist/types/deserializer/misc/logical-expression-deserializer.d.ts +3 -3
  276. package/dist/types/deserializer/misc/modifier-deserializer.d.ts +3 -3
  277. package/dist/types/deserializer/misc/modifier-list-deserializer.d.ts +3 -3
  278. package/dist/types/deserializer/misc/parameter-list-deserializer.d.ts +3 -3
  279. package/dist/types/deserializer/misc/value-deserializer.d.ts +3 -3
  280. package/dist/types/deserializer/network/host-rule-deserializer.d.ts +3 -3
  281. package/dist/types/deserializer/network/hostname-list-deserializer.d.ts +3 -3
  282. package/dist/types/deserializer/network/network-rule-deserializer.d.ts +3 -3
  283. package/dist/types/deserializer/rule-deserializer.d.ts +3 -3
  284. package/dist/types/deserializer/syntax-deserialization-map.d.ts +1 -1
  285. package/dist/types/generator/base-generator.d.ts +1 -1
  286. package/dist/types/generator/comment/agent-comment-generator.d.ts +2 -2
  287. package/dist/types/generator/comment/agent-generator.d.ts +2 -2
  288. package/dist/types/generator/comment/comment-rule-generator.d.ts +2 -2
  289. package/dist/types/generator/comment/config-comment-generator.d.ts +2 -2
  290. package/dist/types/generator/comment/hint-comment-generator.d.ts +2 -2
  291. package/dist/types/generator/comment/hint-generator.d.ts +2 -2
  292. package/dist/types/generator/comment/index.d.ts +1 -1
  293. package/dist/types/generator/comment/metadata-comment-generator.d.ts +2 -2
  294. package/dist/types/generator/comment/pre-processor-comment-generator.d.ts +2 -2
  295. package/dist/types/generator/comment/simple-comment-generator.d.ts +2 -2
  296. package/dist/types/generator/cosmetic/body/abp-snippet-injection-body-generator.d.ts +2 -2
  297. package/dist/types/generator/cosmetic/body/adg-scriptlet-injection-body-generator.d.ts +2 -2
  298. package/dist/types/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.d.ts +2 -2
  299. package/dist/types/generator/cosmetic/cosmetic-rule-body-generator.d.ts +2 -2
  300. package/dist/types/generator/cosmetic/cosmetic-rule-generator.d.ts +2 -2
  301. package/dist/types/generator/cosmetic/cosmetic-rule-pattern-generator.d.ts +2 -2
  302. package/dist/types/generator/cosmetic/index.d.ts +1 -1
  303. package/dist/types/generator/css/adg-css-injection-generator.d.ts +2 -2
  304. package/dist/types/generator/css/ubo-selector-generator.d.ts +2 -2
  305. package/dist/types/generator/filterlist-generator.d.ts +2 -2
  306. package/dist/types/generator/index.d.ts +4 -4
  307. package/dist/types/generator/misc/domain-list-generator.d.ts +2 -2
  308. package/dist/types/generator/misc/list-items-generator.d.ts +1 -1
  309. package/dist/types/generator/misc/logical-expression-generator.d.ts +2 -2
  310. package/dist/types/generator/misc/modifier-generator.d.ts +2 -2
  311. package/dist/types/generator/misc/modifier-list-generator.d.ts +2 -2
  312. package/dist/types/generator/misc/parameter-list-generator.d.ts +2 -2
  313. package/dist/types/generator/misc/value-generator.d.ts +2 -2
  314. package/dist/types/generator/network/host-rule-generator.d.ts +2 -2
  315. package/dist/types/generator/network/index.d.ts +2 -2
  316. package/dist/types/generator/network/network-rule-generator.d.ts +2 -2
  317. package/dist/types/generator/rule-generator.d.ts +2 -2
  318. package/dist/types/index.d.ts +52 -52
  319. package/dist/types/marshalling-utils/misc/logical-expression-common.d.ts +1 -1
  320. package/dist/types/marshalling-utils/syntax-serialization-map.d.ts +1 -1
  321. package/dist/types/nodes/index.d.ts +2 -2
  322. package/dist/types/parser/base-parser.d.ts +2 -2
  323. package/dist/types/parser/comment/agent-comment-parser.d.ts +3 -3
  324. package/dist/types/parser/comment/agent-parser.d.ts +3 -3
  325. package/dist/types/parser/comment/comment-parser.d.ts +3 -3
  326. package/dist/types/parser/comment/config-comment-parser.d.ts +3 -3
  327. package/dist/types/parser/comment/hint-comment-parser.d.ts +3 -3
  328. package/dist/types/parser/comment/hint-parser.d.ts +3 -3
  329. package/dist/types/parser/comment/metadata-comment-parser.d.ts +3 -3
  330. package/dist/types/parser/comment/preprocessor-parser.d.ts +3 -3
  331. package/dist/types/parser/comment/simple-comment-parser.d.ts +3 -3
  332. package/dist/types/parser/cosmetic/body/abp-snippet-injection-body-parser.d.ts +3 -3
  333. package/dist/types/parser/cosmetic/body/adg-scriptlet-injection-body-parser.d.ts +3 -3
  334. package/dist/types/parser/cosmetic/body/ubo-scriptlet-injection-body-parser.d.ts +3 -3
  335. package/dist/types/parser/cosmetic/cosmetic-rule-parser.d.ts +3 -3
  336. package/dist/types/parser/css/adg-css-injection-parser.d.ts +3 -3
  337. package/dist/types/parser/css/ubo-selector-parser.d.ts +3 -3
  338. package/dist/types/parser/filterlist-parser.d.ts +3 -3
  339. package/dist/types/parser/index.d.ts +6 -6
  340. package/dist/types/parser/misc/app-list-parser.d.ts +3 -3
  341. package/dist/types/parser/misc/domain-list-parser.d.ts +3 -3
  342. package/dist/types/parser/misc/list-items-parser.d.ts +2 -2
  343. package/dist/types/parser/misc/logical-expression-parser.d.ts +3 -3
  344. package/dist/types/parser/misc/method-list-parser.d.ts +3 -3
  345. package/dist/types/parser/misc/modifier-list.d.ts +3 -3
  346. package/dist/types/parser/misc/modifier-parser.d.ts +3 -3
  347. package/dist/types/parser/misc/parameter-list-parser.d.ts +3 -3
  348. package/dist/types/parser/misc/stealth-option-list-parser.d.ts +3 -3
  349. package/dist/types/parser/misc/ubo-parameter-list-parser.d.ts +3 -3
  350. package/dist/types/parser/misc/value-parser.d.ts +3 -3
  351. package/dist/types/parser/network/host-rule-parser.d.ts +3 -3
  352. package/dist/types/parser/network/network-rule-parser.d.ts +3 -3
  353. package/dist/types/parser/rule-parser.d.ts +3 -3
  354. package/dist/types/serializer/base-serializer.d.ts +2 -2
  355. package/dist/types/serializer/comment/agent-comment-serializer.d.ts +3 -3
  356. package/dist/types/serializer/comment/agent-serializer.d.ts +3 -3
  357. package/dist/types/serializer/comment/comment-rule-serializer.d.ts +3 -3
  358. package/dist/types/serializer/comment/config-comment-serializer.d.ts +3 -3
  359. package/dist/types/serializer/comment/hint-comment-serializer.d.ts +3 -3
  360. package/dist/types/serializer/comment/hint-serializer.d.ts +3 -3
  361. package/dist/types/serializer/comment/metadata-comment-serializer.d.ts +3 -3
  362. package/dist/types/serializer/comment/pre-processor-comment-serializer.d.ts +3 -3
  363. package/dist/types/serializer/comment/simple-comment-serializer.d.ts +3 -3
  364. package/dist/types/serializer/cosmetic/body/abp-snippet-injection-body-serializer.d.ts +3 -3
  365. package/dist/types/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.d.ts +3 -3
  366. package/dist/types/serializer/cosmetic/body/scriptlet-body-serializer.d.ts +3 -3
  367. package/dist/types/serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.d.ts +3 -3
  368. package/dist/types/serializer/cosmetic/cosmetic-rule-serializer.d.ts +3 -3
  369. package/dist/types/serializer/cosmetic/css-injection-body-serializer.d.ts +3 -3
  370. package/dist/types/serializer/cosmetic/element-hiding-body-serializer.d.ts +3 -3
  371. package/dist/types/serializer/empty-rule-serializer.d.ts +3 -3
  372. package/dist/types/serializer/filterlist-serializer.d.ts +3 -3
  373. package/dist/types/serializer/index.d.ts +1 -1
  374. package/dist/types/serializer/invalid-rule-error-node-serializer.d.ts +3 -3
  375. package/dist/types/serializer/invalid-rule-serializer.d.ts +3 -3
  376. package/dist/types/serializer/misc/domain-list-serializer.d.ts +3 -3
  377. package/dist/types/serializer/misc/list-item-serializer.d.ts +3 -3
  378. package/dist/types/serializer/misc/list-items-serializer.d.ts +2 -2
  379. package/dist/types/serializer/misc/logical-expression-serializer.d.ts +3 -3
  380. package/dist/types/serializer/misc/modifier-list-serializer.d.ts +3 -3
  381. package/dist/types/serializer/misc/modifier-serializer.d.ts +3 -3
  382. package/dist/types/serializer/misc/parameter-list-serializer.d.ts +3 -3
  383. package/dist/types/serializer/misc/value-serializer.d.ts +3 -3
  384. package/dist/types/serializer/network/host-rule-serializer.d.ts +3 -3
  385. package/dist/types/serializer/network/hostname-list-serializer.d.ts +3 -3
  386. package/dist/types/serializer/network/network-rule-serializer.d.ts +3 -3
  387. package/dist/types/serializer/rule-serializer.d.ts +3 -3
  388. package/dist/types/tokenizer/tokenizer.d.ts +173 -0
  389. package/dist/types/utils/categorizer.d.ts +1 -1
  390. package/dist/types/utils/cosmetic-rule-separator.d.ts +1 -1
  391. package/dist/types/utils/index.d.ts +15 -15
  392. package/dist/types/utils/input-byte-buffer.d.ts +2 -2
  393. package/dist/types/utils/logical-expression.d.ts +1 -1
  394. package/dist/types/utils/output-byte-buffer.d.ts +2 -2
  395. package/dist/types/validator/index.d.ts +3 -3
  396. package/dist/types/validator/value.d.ts +2 -2
  397. package/dist/utils/adblockers.js +1 -1
  398. package/dist/utils/binary-schema-version.js +1 -1
  399. package/dist/utils/byte-buffer.js +1 -1
  400. package/dist/utils/categorizer.js +1 -1
  401. package/dist/utils/clone.js +1 -1
  402. package/dist/utils/constants.js +1 -1
  403. package/dist/utils/cosmetic-rule-separator.js +1 -1
  404. package/dist/utils/deep-freeze.js +1 -1
  405. package/dist/utils/domain.js +1 -1
  406. package/dist/utils/error.js +1 -1
  407. package/dist/utils/index.js +1 -1
  408. package/dist/utils/input-byte-buffer.js +1 -1
  409. package/dist/utils/is-chromium.js +1 -1
  410. package/dist/utils/logical-expression.js +1 -1
  411. package/dist/utils/multi-value-map.js +1 -1
  412. package/dist/utils/output-byte-buffer.js +1 -1
  413. package/dist/utils/position-provider.js +1 -1
  414. package/dist/utils/quotes.js +1 -1
  415. package/dist/utils/regexp.js +1 -1
  416. package/dist/utils/string.js +1 -1
  417. package/dist/utils/text-decoder-polyfill.js +1 -1
  418. package/dist/utils/text-encoder-polyfill.js +1 -1
  419. package/dist/utils/type-guards.js +1 -1
  420. package/dist/validator/constants.js +1 -1
  421. package/dist/validator/helpers.js +1 -1
  422. package/dist/validator/index.js +1 -1
  423. package/dist/validator/value.js +1 -1
  424. package/dist/version.js +1 -1
  425. package/package.json +29 -28
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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
@@ -110,27 +110,29 @@ class CosmeticRuleConverter extends RuleConverterBase {
110
110
  * If the rule was not converted, the result array will contain the original node with the same object reference
111
111
  * @throws If the rule is invalid or cannot be converted
112
112
  */
113
- // TODO: Add support for other cosmetic rule types
114
113
  static convertToUbo(rule) {
115
114
  // Skip conversation if the rule is already in uBO format
116
115
  if (rule.syntax === AdblockSyntax.Ubo) {
117
116
  return createNodeConversionResult([rule], false);
118
117
  }
119
- // Check if the rule is a simple hiding rule
120
- // TODO: Handle elemhide rules with extended CSS pseudos even if type is not marked explicitly
121
- if (rule.type === CosmeticRuleType.ElementHidingRule
122
- && (rule.separator.value === CosmeticRuleSeparator.ElementHidingException
123
- || rule.separator.value === CosmeticRuleSeparator.ElementHiding)
124
- && !rule.modifiers) {
125
- return createNodeConversionResult([rule], false);
126
- }
127
- // Convert cosmetic rule based on its type
128
- if (rule.type === CosmeticRuleType.ScriptletInjectionRule) {
129
- if (rule.syntax === AdblockSyntax.Adg && rule.modifiers?.children.length) {
130
- // e.g. example.com##+js(set-constant.js, foo, bar):matches-path(/baz)
131
- throw new RuleConversionError('uBO scriptlet injection rules do not support cosmetic rule modifiers');
118
+ // TODO: Add support for other cosmetic rule types
119
+ switch (rule.type) {
120
+ case CosmeticRuleType.HtmlFilteringRule:
121
+ return HtmlRuleConverter.convertToUbo(rule);
122
+ case CosmeticRuleType.ElementHidingRule: {
123
+ // Check if the rule is a simple hiding rule
124
+ // TODO: Handle elemhide rules with extended CSS pseudos even if type is not marked explicitly
125
+ const isElementHidingRule = (rule.separator.value === CosmeticRuleSeparator.ElementHidingException
126
+ || rule.separator.value === CosmeticRuleSeparator.ElementHiding);
127
+ if (isElementHidingRule && !rule.modifiers) {
128
+ return createNodeConversionResult([rule], false);
129
+ }
130
+ break;
132
131
  }
133
- return ScriptletRuleConverter.convertToUbo(rule);
132
+ case CosmeticRuleType.ScriptletInjectionRule:
133
+ return ScriptletRuleConverter.convertToUbo(rule);
134
+ case CosmeticRuleType.JsInjectionRule:
135
+ throw new RuleConversionError('uBO does not support JS injection rules');
134
136
  }
135
137
  let convertedModifiers;
136
138
  // Convert cosmetic rule modifiers, if any
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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
@@ -12,14 +12,7 @@ import { StringUtils } from '../../../utils/string.js';
12
12
  import { MultiValueMap } from '../../../utils/multi-value-map.js';
13
13
  import { clone } from '../../../utils/clone.js';
14
14
  import { createConversionResult } from '../../base-interfaces/conversion-result.js';
15
- import 'json5';
16
- import 'sprintf-js';
17
- import '@adguard/css-tokenizer';
18
15
  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
16
 
24
17
  /**
25
18
  * @file Cosmetic rule modifier converter from ADG to uBO
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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
@@ -8,7 +8,7 @@ import { CosmeticRuleSeparator } from '../../nodes/index.js';
8
8
  import { RuleConverterBase } from '../base-interfaces/rule-converter-base.js';
9
9
  import { AdblockSyntax } from '../../utils/adblockers.js';
10
10
  import { QuoteUtils, QuoteType } from '../../utils/quotes.js';
11
- import { EMPTY, SPACE } from '../../utils/constants.js';
11
+ import { EMPTY, ADG_DOMAINS_MODIFIER, PIPE_MODIFIER_SEPARATOR, SPACE } from '../../utils/constants.js';
12
12
  import { getScriptletName, setScriptletName, transformAllScriptletArguments, setScriptletQuoteType, transformNthScriptletArgument } from '../../ast-utils/scriptlets.js';
13
13
  import { RuleConversionError } from '../../errors/rule-conversion-error.js';
14
14
  import { createNodeConversionResult } from '../base-interfaces/conversion-result.js';
@@ -26,6 +26,7 @@ import '../../compatibility-tables/utils/platform-helpers.js';
26
26
  import '../../compatibility-tables/schemas/resource-type.js';
27
27
  import '../../compatibility-tables/utils/resource-type-helpers.js';
28
28
  import { isUndefined, isNull } from '../../utils/type-guards.js';
29
+ import { DomainListParser } from '../../parser/misc/domain-list-parser.js';
29
30
 
30
31
  /**
31
32
  * @file Scriptlet injection rule converter
@@ -229,6 +230,35 @@ class ScriptletRuleConverter extends RuleConverterBase {
229
230
  if (rule.syntax === AdblockSyntax.Ubo) {
230
231
  return createNodeConversionResult([rule], false);
231
232
  }
233
+ let ruleDomainsList = cloneDomainListNode(rule.domains);
234
+ if (rule.syntax === AdblockSyntax.Adg && rule.modifiers?.children.length) {
235
+ const { modifiers } = rule;
236
+ // Validate modifiers structure
237
+ if (!modifiers || !modifiers.children || modifiers.children.length === 0) {
238
+ throw new RuleConversionError('Invalid modifiers in AdGuard rule.');
239
+ }
240
+ // Check for single domain modifier
241
+ const [domainModifier] = modifiers.children;
242
+ const hasSingleDomainModifier = (modifiers.children.length === 1
243
+ && domainModifier.name?.value === ADG_DOMAINS_MODIFIER
244
+ && domainModifier.value?.value);
245
+ if (!hasSingleDomainModifier) {
246
+ throw new RuleConversionError('uBlock Origin scriptlet injection rules do not support cosmetic rule modifiers.');
247
+ }
248
+ // Validate domain modifier
249
+ if (!domainModifier.value?.value) {
250
+ throw new RuleConversionError('Invalid domain modifier in AdGuard rule.');
251
+ }
252
+ // Parse domain list
253
+ const parsedDomainList = DomainListParser.parse(domainModifier.value.value, {}, domainModifier.start, PIPE_MODIFIER_SEPARATOR);
254
+ // Merge domain lists
255
+ if (ruleDomainsList) {
256
+ ruleDomainsList.children.push(...parsedDomainList.children);
257
+ }
258
+ else {
259
+ ruleDomainsList = parsedDomainList;
260
+ }
261
+ }
232
262
  const separator = rule.separator.value;
233
263
  let convertedSeparator = separator;
234
264
  convertedSeparator = rule.exception
@@ -337,7 +367,7 @@ class ScriptletRuleConverter extends RuleConverterBase {
337
367
  type: rule.type,
338
368
  syntax: AdblockSyntax.Ubo,
339
369
  exception: rule.exception,
340
- domains: cloneDomainListNode(rule.domains),
370
+ domains: ruleDomainsList,
341
371
  separator: {
342
372
  type: 'Value',
343
373
  value: convertedSeparator,
@@ -347,9 +377,6 @@ class ScriptletRuleConverter extends RuleConverterBase {
347
377
  children: [scriptlet],
348
378
  },
349
379
  };
350
- if (rule.modifiers) {
351
- res.modifiers = cloneModifierListNode(rule.modifiers);
352
- }
353
380
  return res;
354
381
  }), true);
355
382
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * AGTree v3.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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.2.0 (build date: Thu, 22 May 2025 15:50:51 GMT)
2
+ * AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 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