@adguard/agtree 1.1.6 → 1.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/agtree.cjs +299 -85
- package/dist/agtree.d.ts +2 -2
- package/dist/agtree.esm.js +299 -85
- package/dist/agtree.iife.min.js +12 -6
- package/dist/agtree.umd.min.js +12 -6
- package/dist/build.txt +1 -1
- package/package.json +113 -108
- package/CHANGELOG.md +0 -99
package/dist/agtree.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AGTree v1.1.
|
|
3
|
-
* (c)
|
|
2
|
+
* AGTree v1.1.8 (build date: Wed, 24 Apr 2024 15:20:41 GMT)
|
|
3
|
+
* (c) 2024 Adguard Software Ltd.
|
|
4
4
|
* Released under the MIT license
|
|
5
5
|
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
|
|
6
6
|
*/
|
|
@@ -6281,7 +6281,7 @@ class RuleConversionError extends Error {
|
|
|
6281
6281
|
}
|
|
6282
6282
|
}
|
|
6283
6283
|
|
|
6284
|
-
var data$
|
|
6284
|
+
var data$U = { adg_os_any:{ name:"all",
|
|
6285
6285
|
description:"$all modifier is made of $document, $popup, and all content-type modifiers combined.",
|
|
6286
6286
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#all-modifier",
|
|
6287
6287
|
negatable:false,
|
|
@@ -6306,15 +6306,21 @@ var data$T = { adg_os_any:{ name:"all",
|
|
|
6306
6306
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#all",
|
|
6307
6307
|
negatable:false,
|
|
6308
6308
|
block_only:false } };
|
|
6309
|
+
data$U.adg_os_any;
|
|
6310
|
+
data$U.adg_ext_any;
|
|
6311
|
+
data$U.adg_cb_ios;
|
|
6312
|
+
data$U.adg_cb_safari;
|
|
6313
|
+
data$U.ubo_ext_any;
|
|
6309
6314
|
|
|
6310
|
-
var data$
|
|
6315
|
+
var data$T = { adg_os_any:{ name:"app",
|
|
6311
6316
|
description:"The `$app` modifier lets you narrow the rule coverage down to a specific application or a list of applications.\nThe modifier's behavior and syntax perfectly match the corresponding basic rules `$app` modifier.",
|
|
6312
6317
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#app-modifier",
|
|
6313
6318
|
assignable:true,
|
|
6314
6319
|
negatable:false,
|
|
6315
6320
|
value_format:"pipe_separated_apps" } };
|
|
6321
|
+
data$T.adg_os_any;
|
|
6316
6322
|
|
|
6317
|
-
var data$
|
|
6323
|
+
var data$S = { adg_os_any:{ name:"badfilter",
|
|
6318
6324
|
description:"The rules with the `$badfilter` modifier disable other basic rules to which they refer. It means that\nthe text of the disabled rule should match the text of the `$badfilter` rule (without the `$badfilter` modifier).",
|
|
6319
6325
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#badfilter-modifier",
|
|
6320
6326
|
negatable:false },
|
|
@@ -6334,20 +6340,27 @@ var data$R = { adg_os_any:{ name:"badfilter",
|
|
|
6334
6340
|
description:"The rules with the `$badfilter` modifier disable other basic rules to which they refer. It means that\nthe text of the disabled rule should match the text of the `$badfilter` rule (without the `$badfilter` modifier).",
|
|
6335
6341
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#badfilter",
|
|
6336
6342
|
negatable:false } };
|
|
6343
|
+
data$S.adg_os_any;
|
|
6344
|
+
data$S.adg_ext_any;
|
|
6345
|
+
data$S.adg_cb_ios;
|
|
6346
|
+
data$S.adg_cb_safari;
|
|
6347
|
+
data$S.ubo_ext_any;
|
|
6337
6348
|
|
|
6338
|
-
var data$
|
|
6349
|
+
var data$R = { ubo_ext_any:{ name:"cname",
|
|
6339
6350
|
description:"When used in an exception filter,\nit will bypass blocking CNAME uncloaked requests for the current (specified) document.",
|
|
6340
6351
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#cname",
|
|
6341
6352
|
negatable:false,
|
|
6342
6353
|
exception_only:true } };
|
|
6354
|
+
data$R.ubo_ext_any;
|
|
6343
6355
|
|
|
6344
|
-
var data$
|
|
6356
|
+
var data$Q = { adg_os_any:{ name:"content",
|
|
6345
6357
|
description:"Disables HTML filtering and `$replace` rules on the pages that match the rule.",
|
|
6346
6358
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#content-modifier",
|
|
6347
6359
|
negatable:false,
|
|
6348
6360
|
exception_only:true } };
|
|
6361
|
+
data$Q.adg_os_any;
|
|
6349
6362
|
|
|
6350
|
-
var data$
|
|
6363
|
+
var data$P = { adg_os_any:{ name:"cookie",
|
|
6351
6364
|
description:"The `$cookie` modifier completely changes rule behavior.\nInstead of blocking a request, this modifier makes us suppress or modify the Cookie and Set-Cookie headers.",
|
|
6352
6365
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#cookie-modifier",
|
|
6353
6366
|
assignable:true,
|
|
@@ -6361,8 +6374,10 @@ var data$O = { adg_os_any:{ name:"cookie",
|
|
|
6361
6374
|
negatable:false,
|
|
6362
6375
|
value_optional:true,
|
|
6363
6376
|
value_format:"^([^;=\\s]*?)((?:;(maxAge=\\d+;?)?|(sameSite=(lax|none|strict);?)?){1,3})(?<!;)$" } };
|
|
6377
|
+
data$P.adg_os_any;
|
|
6378
|
+
data$P.adg_ext_any;
|
|
6364
6379
|
|
|
6365
|
-
var data$
|
|
6380
|
+
var data$O = { adg_os_any:{ name:"csp",
|
|
6366
6381
|
description:"This modifier completely changes the rule behavior.\nIf it is applied to a rule, it will not block the matching request.\nThe response headers are going to be modified instead.",
|
|
6367
6382
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#csp-modifier",
|
|
6368
6383
|
conflicts:[ "domain",
|
|
@@ -6408,8 +6423,12 @@ var data$N = { adg_os_any:{ name:"csp",
|
|
|
6408
6423
|
negatable:false,
|
|
6409
6424
|
value_optional:true,
|
|
6410
6425
|
value_format:"csp_value" } };
|
|
6426
|
+
data$O.adg_os_any;
|
|
6427
|
+
data$O.adg_ext_any;
|
|
6428
|
+
data$O.abp_ext_any;
|
|
6429
|
+
data$O.ubo_ext_any;
|
|
6411
6430
|
|
|
6412
|
-
var data$
|
|
6431
|
+
var data$N = { adg_os_any:{ name:"denyallow",
|
|
6413
6432
|
description:"The `$denyallow` modifier allows to avoid creating additional rules\nwhen it is needed to disable a certain rule for specific domains.\n`$denyallow` matches only target domains and not referrer domains.",
|
|
6414
6433
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#denyallow-modifier",
|
|
6415
6434
|
conflicts:[ "to" ],
|
|
@@ -6444,8 +6463,13 @@ var data$M = { adg_os_any:{ name:"denyallow",
|
|
|
6444
6463
|
assignable:true,
|
|
6445
6464
|
negatable:false,
|
|
6446
6465
|
value_format:"pipe_separated_denyallow_domains" } };
|
|
6466
|
+
data$N.adg_os_any;
|
|
6467
|
+
data$N.adg_ext_any;
|
|
6468
|
+
data$N.adg_cb_ios;
|
|
6469
|
+
data$N.adg_cb_safari;
|
|
6470
|
+
data$N.ubo_ext_any;
|
|
6447
6471
|
|
|
6448
|
-
var data$
|
|
6472
|
+
var data$M = { adg_os_any:{ name:"document",
|
|
6449
6473
|
description:"The rule corresponds to the main frame document requests,\ni.e. HTML documents that are loaded in the browser tab.",
|
|
6450
6474
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#document-modifier",
|
|
6451
6475
|
negatable:false },
|
|
@@ -6470,8 +6494,14 @@ var data$L = { adg_os_any:{ name:"document",
|
|
|
6470
6494
|
description:"The rule corresponds to the main frame document requests,\ni.e. HTML documents that are loaded in the browser tab.",
|
|
6471
6495
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#document",
|
|
6472
6496
|
negatable:false } };
|
|
6473
|
-
|
|
6474
|
-
|
|
6497
|
+
data$M.adg_os_any;
|
|
6498
|
+
data$M.adg_ext_any;
|
|
6499
|
+
data$M.adg_cb_ios;
|
|
6500
|
+
data$M.adg_cb_safari;
|
|
6501
|
+
data$M.abp_ext_any;
|
|
6502
|
+
data$M.ubo_ext_any;
|
|
6503
|
+
|
|
6504
|
+
var data$L = { adg_any:{ name:"domain",
|
|
6475
6505
|
aliases:[ "from" ],
|
|
6476
6506
|
description:"The `$domain` modifier limits the rule application area to a list of domains and their subdomains.",
|
|
6477
6507
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#domain-modifier",
|
|
@@ -6491,8 +6521,11 @@ var data$K = { adg_any:{ name:"domain",
|
|
|
6491
6521
|
assignable:true,
|
|
6492
6522
|
negatable:false,
|
|
6493
6523
|
value_format:"pipe_separated_domains" } };
|
|
6524
|
+
data$L.adg_any;
|
|
6525
|
+
data$L.abp_any;
|
|
6526
|
+
data$L.ubo_any;
|
|
6494
6527
|
|
|
6495
|
-
var data$
|
|
6528
|
+
var data$K = { adg_any:{ name:"elemhide",
|
|
6496
6529
|
aliases:[ "ehide" ],
|
|
6497
6530
|
description:"Disables any cosmetic rules on the pages matching the rule.",
|
|
6498
6531
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#elemhide-modifier",
|
|
@@ -6510,8 +6543,11 @@ var data$J = { adg_any:{ name:"elemhide",
|
|
|
6510
6543
|
exception_only:true,
|
|
6511
6544
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#elemhide-1",
|
|
6512
6545
|
description:"Disables any cosmetic rules on the pages matching the rule." } };
|
|
6546
|
+
data$K.adg_any;
|
|
6547
|
+
data$K.abp_any;
|
|
6548
|
+
data$K.ubo_any;
|
|
6513
6549
|
|
|
6514
|
-
var data$
|
|
6550
|
+
var data$J = { adg_os_any:{ name:"empty",
|
|
6515
6551
|
description:"This modifier is deprecated in favor of the $redirect modifier.\nRules with `$empty` are still supported and being converted into `$redirect=nooptext` now\nbut the support shall be removed in the future.",
|
|
6516
6552
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#empty-modifier",
|
|
6517
6553
|
deprecated:true,
|
|
@@ -6527,8 +6563,11 @@ var data$I = { adg_os_any:{ name:"empty",
|
|
|
6527
6563
|
description:"This modifier is deprecated in favor of the $redirect modifier.\nRules with `$empty` are supported and being converted into `$redirect=nooptext`.",
|
|
6528
6564
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#empty",
|
|
6529
6565
|
negatable:false } };
|
|
6566
|
+
data$J.adg_os_any;
|
|
6567
|
+
data$J.adg_ext_any;
|
|
6568
|
+
data$J.ubo_ext_any;
|
|
6530
6569
|
|
|
6531
|
-
var data$
|
|
6570
|
+
var data$I = { adg_any:{ name:"first-party",
|
|
6532
6571
|
aliases:[ "1p",
|
|
6533
6572
|
"~third-party" ],
|
|
6534
6573
|
description:"A restriction of first-party requests. Equal to `~third-party`.",
|
|
@@ -6540,8 +6579,10 @@ var data$H = { adg_any:{ name:"first-party",
|
|
|
6540
6579
|
description:"A restriction of first-party requests. Equal to `~third-party`.",
|
|
6541
6580
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#1p",
|
|
6542
6581
|
negatable:false } };
|
|
6582
|
+
data$I.adg_any;
|
|
6583
|
+
data$I.ubo_any;
|
|
6543
6584
|
|
|
6544
|
-
var data$
|
|
6585
|
+
var data$H = { adg_os_any:{ name:"extension",
|
|
6545
6586
|
description:"Disables all userscripts on the pages matching this rule.",
|
|
6546
6587
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#extension-modifier",
|
|
6547
6588
|
conflicts:[ "domain",
|
|
@@ -6556,8 +6597,9 @@ var data$G = { adg_os_any:{ name:"extension",
|
|
|
6556
6597
|
"badfilter" ],
|
|
6557
6598
|
inverse_conflicts:true,
|
|
6558
6599
|
exception_only:true } };
|
|
6600
|
+
data$H.adg_os_any;
|
|
6559
6601
|
|
|
6560
|
-
var data$
|
|
6602
|
+
var data$G = { adg_any:{ name:"font",
|
|
6561
6603
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#font-modifier",
|
|
6562
6604
|
description:"The rule corresponds to requests for fonts, e.g. `.woff` filename extension." },
|
|
6563
6605
|
abp_any:{ name:"font",
|
|
@@ -6566,8 +6608,11 @@ var data$F = { adg_any:{ name:"font",
|
|
|
6566
6608
|
ubo_any:{ name:"font",
|
|
6567
6609
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293#options",
|
|
6568
6610
|
description:"The rule corresponds to requests for fonts, e.g. `.woff` filename extension." } };
|
|
6611
|
+
data$G.adg_any;
|
|
6612
|
+
data$G.abp_any;
|
|
6613
|
+
data$G.ubo_any;
|
|
6569
6614
|
|
|
6570
|
-
var data$
|
|
6615
|
+
var data$F = { adg_os_any:{ name:"genericblock",
|
|
6571
6616
|
description:"Disables generic basic rules on pages that correspond to exception rule.",
|
|
6572
6617
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#genericblock-modifier",
|
|
6573
6618
|
conflicts:[ "domain",
|
|
@@ -6622,8 +6667,13 @@ var data$E = { adg_os_any:{ name:"genericblock",
|
|
|
6622
6667
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options",
|
|
6623
6668
|
negatable:false,
|
|
6624
6669
|
exception_only:true } };
|
|
6670
|
+
data$F.adg_os_any;
|
|
6671
|
+
data$F.adg_ext_any;
|
|
6672
|
+
data$F.adg_cb_ios;
|
|
6673
|
+
data$F.adg_cb_safari;
|
|
6674
|
+
data$F.abp_ext_any;
|
|
6625
6675
|
|
|
6626
|
-
var data$
|
|
6676
|
+
var data$E = { adg_any:{ name:"generichide",
|
|
6627
6677
|
aliases:[ "ghide" ],
|
|
6628
6678
|
description:"Disables all generic cosmetic rules.",
|
|
6629
6679
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#generichide-modifier",
|
|
@@ -6654,8 +6704,11 @@ var data$D = { adg_any:{ name:"generichide",
|
|
|
6654
6704
|
inverse_conflicts:true,
|
|
6655
6705
|
negatable:false,
|
|
6656
6706
|
exception_only:true } };
|
|
6707
|
+
data$E.adg_any;
|
|
6708
|
+
data$E.ubo_any;
|
|
6709
|
+
data$E.abp_any;
|
|
6657
6710
|
|
|
6658
|
-
var data$
|
|
6711
|
+
var data$D = { adg_os_any:{ name:"header",
|
|
6659
6712
|
description:"The `$header` modifier allows matching the HTTP response\nhaving a specific header with (optionally) a specific value.",
|
|
6660
6713
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#header-modifier",
|
|
6661
6714
|
assignable:true,
|
|
@@ -6670,8 +6723,11 @@ var data$C = { adg_os_any:{ name:"header",
|
|
|
6670
6723
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#header",
|
|
6671
6724
|
assignable:true,
|
|
6672
6725
|
value_format:"(?xi)\n ^\n # header name\n [\\w-]+\n (\n :\n # header value: string or regexp\n (\\w+|\\/.+\\/)\n )?" } };
|
|
6726
|
+
data$D.adg_os_any;
|
|
6727
|
+
data$D.adg_ext_any;
|
|
6728
|
+
data$D.ubo_ext_any;
|
|
6673
6729
|
|
|
6674
|
-
var data$
|
|
6730
|
+
var data$C = { adg_os_any:{ name:"hls",
|
|
6675
6731
|
description:"The `$hls` rules modify the response of a matching request.\nThey are intended as a convenient way to remove segments from HLS playlists (RFC 8216).",
|
|
6676
6732
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#hls-modifier",
|
|
6677
6733
|
version_added:"CoreLibs 1.10",
|
|
@@ -6686,8 +6742,9 @@ var data$B = { adg_os_any:{ name:"hls",
|
|
|
6686
6742
|
negatable:false,
|
|
6687
6743
|
value_optional:true,
|
|
6688
6744
|
value_format:"(?xi)\n (\n # string pattern\n \\w+\n # or regexp pattern\n |\n # TODO: improve regexp pattern to invalidate unescaped `/`, `$`, and `,`\n \\/.+\\/\n # options\n ([ti]*)?\n )" } };
|
|
6745
|
+
data$C.adg_os_any;
|
|
6689
6746
|
|
|
6690
|
-
var data$
|
|
6747
|
+
var data$B = { adg_any:{ name:"image",
|
|
6691
6748
|
description:"The rule corresponds to images requests.",
|
|
6692
6749
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#image-modifier" },
|
|
6693
6750
|
abp_any:{ name:"image",
|
|
@@ -6696,8 +6753,11 @@ var data$A = { adg_any:{ name:"image",
|
|
|
6696
6753
|
ubo_any:{ name:"image",
|
|
6697
6754
|
description:"The rule corresponds to images requests.",
|
|
6698
6755
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293#options" } };
|
|
6756
|
+
data$B.adg_any;
|
|
6757
|
+
data$B.abp_any;
|
|
6758
|
+
data$B.ubo_any;
|
|
6699
6759
|
|
|
6700
|
-
var data$
|
|
6760
|
+
var data$A = { adg_any:{ name:"important",
|
|
6701
6761
|
description:"The `$important` modifier applied to a rule increases its priority\nover any other rule without `$important` modifier. Even over basic exception rules.",
|
|
6702
6762
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#important-modifier",
|
|
6703
6763
|
negatable:false },
|
|
@@ -6705,8 +6765,10 @@ var data$z = { adg_any:{ name:"important",
|
|
|
6705
6765
|
description:"The `$important` modifier applied to a rule increases its priority\nover any other rule without `$important` modifier. Even over basic exception rules.",
|
|
6706
6766
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#important",
|
|
6707
6767
|
negatable:false } };
|
|
6768
|
+
data$A.adg_any;
|
|
6769
|
+
data$A.ubo_any;
|
|
6708
6770
|
|
|
6709
|
-
var data$
|
|
6771
|
+
var data$z = { adg_os_any:{ name:"inline-font",
|
|
6710
6772
|
description:"The `$inline-font` modifier is a sort of a shortcut for $csp modifier with specific value.\nE.g. `||example.org^$inline-font` is converting into:\n```adblock\n||example.org^$csp=font-src 'self' 'unsafe-eval' http: https: data: blob: mediastream: filesystem:\n```",
|
|
6711
6773
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#inline-font-modifier" },
|
|
6712
6774
|
adg_ext_any:{ name:"inline-font",
|
|
@@ -6715,8 +6777,11 @@ var data$y = { adg_os_any:{ name:"inline-font",
|
|
|
6715
6777
|
ubo_ext_any:{ name:"inline-font",
|
|
6716
6778
|
description:"The `$inline-font` modifier is a sort of a shortcut for $csp modifier with specific value.\nE.g. `||example.org^$inline-font` is converting into:\n```adblock\n||example.org^$csp=font-src 'self' 'unsafe-eval' http: https: data: blob: mediastream: filesystem:\n```",
|
|
6717
6779
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#inline-font" } };
|
|
6780
|
+
data$z.adg_os_any;
|
|
6781
|
+
data$z.adg_ext_any;
|
|
6782
|
+
data$z.ubo_ext_any;
|
|
6718
6783
|
|
|
6719
|
-
var data$
|
|
6784
|
+
var data$y = { adg_os_any:{ name:"inline-script",
|
|
6720
6785
|
description:"The `$inline-script` modifier is a sort of a shortcut for $csp modifier with specific value.\nE.g. `||example.org^$inline-script` is converting into:\n```adblock\n||example.org^$csp=script-src 'self' 'unsafe-eval' http: https: data: blob: mediastream: filesystem:\n```",
|
|
6721
6786
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#inline-script-modifier" },
|
|
6722
6787
|
adg_ext_any:{ name:"inline-script",
|
|
@@ -6725,8 +6790,11 @@ var data$x = { adg_os_any:{ name:"inline-script",
|
|
|
6725
6790
|
ubo_ext_any:{ name:"inline-script",
|
|
6726
6791
|
description:"The `$inline-script` modifier is a sort of a shortcut for $csp modifier with specific value.\nE.g. `||example.org^$inline-script` is converting into:\n```adblock\n||example.org^$csp=script-src 'self' 'unsafe-eval' http: https: data: blob: mediastream: filesystem:\n```",
|
|
6727
6792
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#inline-script" } };
|
|
6793
|
+
data$y.adg_os_any;
|
|
6794
|
+
data$y.adg_ext_any;
|
|
6795
|
+
data$y.ubo_ext_any;
|
|
6728
6796
|
|
|
6729
|
-
var data$
|
|
6797
|
+
var data$x = { adg_os_any:{ name:"jsinject",
|
|
6730
6798
|
description:"Forbids adding of javascript code to the page.",
|
|
6731
6799
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#jsinject-modifier",
|
|
6732
6800
|
conflicts:[ "domain",
|
|
@@ -6784,16 +6852,21 @@ var data$w = { adg_os_any:{ name:"jsinject",
|
|
|
6784
6852
|
inverse_conflicts:true,
|
|
6785
6853
|
negatable:false,
|
|
6786
6854
|
exception_only:true } };
|
|
6855
|
+
data$x.adg_os_any;
|
|
6856
|
+
data$x.adg_ext_any;
|
|
6857
|
+
data$x.adg_cb_ios;
|
|
6858
|
+
data$x.adg_cb_safari;
|
|
6787
6859
|
|
|
6788
|
-
var data$
|
|
6860
|
+
var data$w = { adg_os_any:{ name:"jsonprune",
|
|
6789
6861
|
description:"The `$jsonprune` rules modify the response to a matching request\nby removing JSON items that match a modified JSONPath expression.\nThey do not modify responses which are not valid JSON documents.",
|
|
6790
6862
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#jsonprune-modifier",
|
|
6791
6863
|
assignable:true,
|
|
6792
6864
|
negatable:false,
|
|
6793
6865
|
value_optional:true,
|
|
6794
6866
|
value_format:"(?xi)\n ^\n # the expression always starts with a dollar sign (for root)\n # which should be escaped\n \\\\\n \\$\n \\.?\n # TODO: improve the expression to invalidate unescaped `$` and `,`\n .+\n $" } };
|
|
6867
|
+
data$w.adg_os_any;
|
|
6795
6868
|
|
|
6796
|
-
var data$
|
|
6869
|
+
var data$v = { adg_any:{ name:"match-case",
|
|
6797
6870
|
description:"This modifier defines a rule which applies only to addresses that match the case.\nDefault rules are case-insensitive.",
|
|
6798
6871
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#match-case-modifier" },
|
|
6799
6872
|
abp_any:{ name:"match-case",
|
|
@@ -6802,8 +6875,11 @@ var data$u = { adg_any:{ name:"match-case",
|
|
|
6802
6875
|
ubo_any:{ name:"match-case",
|
|
6803
6876
|
description:"This modifier defines a rule which applies only to addresses that match the case.\nDefault rules are case-insensitive.",
|
|
6804
6877
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#match-case" } };
|
|
6878
|
+
data$v.adg_any;
|
|
6879
|
+
data$v.abp_any;
|
|
6880
|
+
data$v.ubo_any;
|
|
6805
6881
|
|
|
6806
|
-
var data$
|
|
6882
|
+
var data$u = { adg_any:{ name:"media",
|
|
6807
6883
|
description:"A restriction of third-party and own requests.\nA third-party request is a request from a different domain.\nFor example, a request to `example.org` from `domain.com` is a third-party request.",
|
|
6808
6884
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#media-modifier" },
|
|
6809
6885
|
abp_any:{ name:"media",
|
|
@@ -6812,8 +6888,11 @@ var data$t = { adg_any:{ name:"media",
|
|
|
6812
6888
|
ubo_any:{ name:"media",
|
|
6813
6889
|
description:"A restriction of third-party and own requests.\nA third-party request is a request from a different domain.\nFor example, a request to `example.org` from `domain.com` is a third-party request.",
|
|
6814
6890
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293#options" } };
|
|
6891
|
+
data$u.adg_any;
|
|
6892
|
+
data$u.abp_any;
|
|
6893
|
+
data$u.ubo_any;
|
|
6815
6894
|
|
|
6816
|
-
var data$
|
|
6895
|
+
var data$t = { adg_os_any:{ name:"method",
|
|
6817
6896
|
description:"This modifier limits the rule scope to requests that use the specified set of HTTP methods.\nNegated methods are allowed.",
|
|
6818
6897
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#method-modifier",
|
|
6819
6898
|
negatable:false,
|
|
@@ -6831,8 +6910,11 @@ var data$s = { adg_os_any:{ name:"method",
|
|
|
6831
6910
|
negatable:false,
|
|
6832
6911
|
assignable:true,
|
|
6833
6912
|
value_format:"pipe_separated_methods" } };
|
|
6913
|
+
data$t.adg_os_any;
|
|
6914
|
+
data$t.adg_ext_any;
|
|
6915
|
+
data$t.ubo_ext_any;
|
|
6834
6916
|
|
|
6835
|
-
var data$
|
|
6917
|
+
var data$s = { adg_os_any:{ name:"mp4",
|
|
6836
6918
|
description:"As a response to blocked request AdGuard returns a short video placeholder.\nRules with `$mp4` are still supported and being converted into `$redirect=noopmp4-1s` now\nbut the support shall be removed in the future.",
|
|
6837
6919
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#mp4-modifier",
|
|
6838
6920
|
deprecated:true,
|
|
@@ -6848,16 +6930,20 @@ var data$r = { adg_os_any:{ name:"mp4",
|
|
|
6848
6930
|
description:"As a response to blocked request a short video placeholder is returned.\nRules with `$mp4` are supported and being converted into `$redirect=noopmp4-1s`.",
|
|
6849
6931
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#mp4",
|
|
6850
6932
|
negatable:false } };
|
|
6933
|
+
data$s.adg_os_any;
|
|
6934
|
+
data$s.adg_ext_any;
|
|
6935
|
+
data$s.ubo_ext_any;
|
|
6851
6936
|
|
|
6852
|
-
var data$
|
|
6937
|
+
var data$r = { adg_os_any:{ name:"network",
|
|
6853
6938
|
description:"This is basically a Firewall-kind of rules allowing to fully block\nor unblock access to a specified remote address.",
|
|
6854
6939
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#network-modifier",
|
|
6855
6940
|
conflicts:[ "app",
|
|
6856
6941
|
"important" ],
|
|
6857
6942
|
inverse_conflicts:true,
|
|
6858
6943
|
negatable:false } };
|
|
6944
|
+
data$r.adg_os_any;
|
|
6859
6945
|
|
|
6860
|
-
var data$
|
|
6946
|
+
var data$q = { adg_os_any:{ name:"_",
|
|
6861
6947
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#noop-modifier",
|
|
6862
6948
|
description:"The noop modifier does nothing and can be used solely to increase rules' readability.\nIt consists of a sequence of underscore characters (_) of any length\nand can appear in a rule as many times as needed.",
|
|
6863
6949
|
negatable:false },
|
|
@@ -6877,14 +6963,20 @@ var data$p = { adg_os_any:{ name:"_",
|
|
|
6877
6963
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#_-aka-noop",
|
|
6878
6964
|
description:"The noop modifier does nothing and can be used solely to increase rules' readability.\nIt consists of a sequence of underscore characters (_) of any length\nand can appear in a rule as many times as needed.",
|
|
6879
6965
|
negatable:false } };
|
|
6966
|
+
data$q.adg_os_any;
|
|
6967
|
+
data$q.adg_ext_any;
|
|
6968
|
+
data$q.adg_cb_ios;
|
|
6969
|
+
data$q.adg_cb_safari;
|
|
6970
|
+
data$q.ubo_ext_any;
|
|
6880
6971
|
|
|
6881
|
-
var data$
|
|
6972
|
+
var data$p = { adg_any:{ name:"object-subrequest",
|
|
6882
6973
|
description:"The `$object-subrequest` modifier is removed and is no longer supported.\nRules with it are considered as invalid.\nThe rule corresponds to requests by browser plugins (it is usually Flash).",
|
|
6883
6974
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#object-subrequest-modifier",
|
|
6884
6975
|
removed:true,
|
|
6885
6976
|
removal_message:"The `$object-subrequest` modifier is removed and is no longer supported.\nRules with it are considered as invalid." } };
|
|
6977
|
+
data$p.adg_any;
|
|
6886
6978
|
|
|
6887
|
-
var data$
|
|
6979
|
+
var data$o = { adg_any:{ name:"object",
|
|
6888
6980
|
description:"The rule corresponds to browser plugins resources, e.g. Java or Flash",
|
|
6889
6981
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#object-modifier" },
|
|
6890
6982
|
abp_any:{ name:"object",
|
|
@@ -6893,8 +6985,11 @@ var data$n = { adg_any:{ name:"object",
|
|
|
6893
6985
|
ubo_any:{ name:"object",
|
|
6894
6986
|
description:"The rule corresponds to browser plugins resources, e.g. Java or Flash.",
|
|
6895
6987
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options" } };
|
|
6988
|
+
data$o.adg_any;
|
|
6989
|
+
data$o.abp_any;
|
|
6990
|
+
data$o.ubo_any;
|
|
6896
6991
|
|
|
6897
|
-
var data$
|
|
6992
|
+
var data$n = { adg_any:{ name:"other",
|
|
6898
6993
|
description:"The rule applies to requests for which the type has not been determined\nor does not match the types listed above.",
|
|
6899
6994
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#other-modifier" },
|
|
6900
6995
|
abp_any:{ name:"other",
|
|
@@ -6903,8 +6998,11 @@ var data$m = { adg_any:{ name:"other",
|
|
|
6903
6998
|
ubo_any:{ name:"other",
|
|
6904
6999
|
description:"The rule applies to requests for which the type has not been determined\nor does not match the types listed above.",
|
|
6905
7000
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options" } };
|
|
7001
|
+
data$n.adg_any;
|
|
7002
|
+
data$n.abp_any;
|
|
7003
|
+
data$n.ubo_any;
|
|
6906
7004
|
|
|
6907
|
-
var data$
|
|
7005
|
+
var data$m = { adg_os_any:{ name:"permissions",
|
|
6908
7006
|
description:"For the requests matching a `$permissions` rule, ad blocker strengthens response's feature policy\nby adding additional feature policy equal to the `$permissions` modifier contents.\n`$permissions` rules are applied independently from any other rule type.",
|
|
6909
7007
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#permissions-modifier",
|
|
6910
7008
|
version_added:"CoreLibs 1.11",
|
|
@@ -6916,8 +7014,9 @@ var data$l = { adg_os_any:{ name:"permissions",
|
|
|
6916
7014
|
negatable:false,
|
|
6917
7015
|
value_optional:true,
|
|
6918
7016
|
value_format:"permissions_value" } };
|
|
7017
|
+
data$m.adg_os_any;
|
|
6919
7018
|
|
|
6920
|
-
var data$
|
|
7019
|
+
var data$l = { adg_any:{ name:"ping",
|
|
6921
7020
|
description:"The rule corresponds to requests caused by either navigator.sendBeacon() or the ping attribute on links.",
|
|
6922
7021
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#ping-modifier" },
|
|
6923
7022
|
abp_any:{ name:"ping",
|
|
@@ -6926,14 +7025,18 @@ var data$k = { adg_any:{ name:"ping",
|
|
|
6926
7025
|
ubo_any:{ name:"ping",
|
|
6927
7026
|
description:"The rule corresponds to requests caused by either navigator.sendBeacon() or the ping attribute on links.",
|
|
6928
7027
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options" } };
|
|
7028
|
+
data$l.adg_any;
|
|
7029
|
+
data$l.abp_any;
|
|
7030
|
+
data$l.ubo_any;
|
|
6929
7031
|
|
|
6930
|
-
var data$
|
|
7032
|
+
var data$k = { ubo_ext_any:{ name:"popunder",
|
|
6931
7033
|
description:"To block \"popunders\" windows/tabs where the original page redirects to an advertisement\nand the desired content loads in the newly created one.\nTo be used in the same manner as the popup filter option, except that it will block popunders.",
|
|
6932
7034
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#popunder",
|
|
6933
7035
|
negatable:false,
|
|
6934
7036
|
block_only:true } };
|
|
7037
|
+
data$k.ubo_ext_any;
|
|
6935
7038
|
|
|
6936
|
-
var data$
|
|
7039
|
+
var data$j = { adg_any:{ name:"popup",
|
|
6937
7040
|
description:"Pages opened in a new tab or window.\nNote: Filters will not block pop-ups by default, only if the `$popup` type option is specified.",
|
|
6938
7041
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#popup-modifier",
|
|
6939
7042
|
negatable:false },
|
|
@@ -6945,8 +7048,11 @@ var data$i = { adg_any:{ name:"popup",
|
|
|
6945
7048
|
description:"Pages opened in a new tab or window.\nNote: Filters will not block pop-ups by default, only if the `$popup` type option is specified.",
|
|
6946
7049
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options",
|
|
6947
7050
|
negatable:false } };
|
|
7051
|
+
data$j.adg_any;
|
|
7052
|
+
data$j.abp_any;
|
|
7053
|
+
data$j.ubo_any;
|
|
6948
7054
|
|
|
6949
|
-
var data$
|
|
7055
|
+
var data$i = { adg_os_any:{ name:"redirect-rule",
|
|
6950
7056
|
description:"This is basically an alias to `$redirect`\nsince it has the same \"redirection\" values and the logic is almost similar.\nThe difference is that `$redirect-rule` is applied only in the case\nwhen the target request is blocked by a different basic rule.",
|
|
6951
7057
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#redirect-rule-modifier",
|
|
6952
7058
|
conflicts:[ "domain",
|
|
@@ -7036,8 +7142,11 @@ var data$h = { adg_os_any:{ name:"redirect-rule",
|
|
|
7036
7142
|
assignable:true,
|
|
7037
7143
|
negatable:false,
|
|
7038
7144
|
value_format:"(?x)\n ^(\n 1x1\\.gif|\n 2x2\\.png|\n 3x2\\.png|\n 32x32\\.png|\n noop\\.css|\n noop\\.html|\n noopframe|\n noop\\.js|\n noop\\.txt|\n noop-0\\.1s\\.mp3|\n noop-0\\.5s\\.mp3|\n noop-1s\\.mp4|\n none|\n click2load\\.html|\n addthis_widget\\.js|\n amazon_ads\\.js|\n amazon_apstag\\.js|\n monkeybroker\\.js|\n doubleclick_instream_ad_status|\n google-analytics_ga\\.js|\n google-analytics_analytics\\.js|\n google-analytics_inpage_linkid\\.js|\n google-analytics_cx_api\\.js|\n google-ima\\.js|\n googletagservices_gpt\\.js|\n googletagmanager_gtm\\.js|\n googlesyndication_adsbygoogle\\.js|\n scorecardresearch_beacon\\.js|\n outbrain-widget\\.js|\n hd-main\\.js\n )\n (:[0-9]+)?$" } };
|
|
7145
|
+
data$i.adg_os_any;
|
|
7146
|
+
data$i.adg_ext_any;
|
|
7147
|
+
data$i.ubo_ext_any;
|
|
7039
7148
|
|
|
7040
|
-
var data$
|
|
7149
|
+
var data$h = { adg_os_any:{ name:"redirect",
|
|
7041
7150
|
description:"Used to redirect web requests to a local \"resource\".",
|
|
7042
7151
|
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#redirect-modifier",
|
|
7043
7152
|
assignable:true,
|
|
@@ -7064,6 +7173,22 @@ var data$g = { adg_os_any:{ name:"redirect",
|
|
|
7064
7173
|
assignable:true,
|
|
7065
7174
|
negatable:false,
|
|
7066
7175
|
value_format:"(?x)\n # ABP resources always starts with the `abp-resource:` prefix\n ^abp-resource:\n # Possible resource names\n (\n blank-text|\n blank-css|\n blank-js|\n blank-html|\n blank-mp3|\n 1x1-transparent-gif|\n 2x2-transparent-png|\n 3x2-transparent-png|\n 32x32-transparent-png\n )$" } };
|
|
7176
|
+
data$h.adg_os_any;
|
|
7177
|
+
data$h.adg_ext_any;
|
|
7178
|
+
data$h.ubo_ext_any;
|
|
7179
|
+
data$h.abp_ext_any;
|
|
7180
|
+
|
|
7181
|
+
var data$g = { adg_os_any:{ name:"referrerpolicy",
|
|
7182
|
+
description:"This modifier allows overriding of a page's referrer policy.",
|
|
7183
|
+
docs:"https://adguard.app/kb/general/ad-filtering/create-own-filters/#referrerpolicy-modifier",
|
|
7184
|
+
conflicts:[ "document",
|
|
7185
|
+
"subdocument" ],
|
|
7186
|
+
inverse_conflicts:true,
|
|
7187
|
+
assignable:true,
|
|
7188
|
+
negatable:false,
|
|
7189
|
+
value_optional:true,
|
|
7190
|
+
value_format:"referrerpolicy_value" } };
|
|
7191
|
+
data$g.adg_os_any;
|
|
7067
7192
|
|
|
7068
7193
|
var data$f = { adg_os_any:{ name:"removeheader",
|
|
7069
7194
|
description:"Rules with the `$removeheader` modifier are intended to remove headers from HTTP requests and responses.",
|
|
@@ -7119,6 +7244,8 @@ var data$f = { adg_os_any:{ name:"removeheader",
|
|
|
7119
7244
|
negatable:false,
|
|
7120
7245
|
value_optional:true,
|
|
7121
7246
|
value_format:"(?xi)\n ^\n # Value may start with \"request:\"\n (request:)?\n\n # Forbidden header names\n (?!\n (\n access-control-allow-origin|\n access-control-allow-credentials|\n access-control-allow-headers|\n access-control-allow-methods|\n access-control-expose-headers|\n access-control-max-age|\n access-control-request-headers|\n access-control-request-method|\n origin|\n timing-allow-origin|\n allow|\n cross-origin-embedder-policy|\n cross-origin-opener-policy|\n cross-origin-resource-policy|\n content-security-policy|\n content-security-policy-report-only|\n expect-ct|\n feature-policy|\n origin-isolation|\n strict-transport-security|\n upgrade-insecure-requests|\n x-content-type-options|\n x-download-options|\n x-frame-options|\n x-permitted-cross-domain-policies|\n x-powered-by|\n x-xss-protection|\n public-key-pins|\n public-key-pins-report-only|\n sec-websocket-key|\n sec-websocket-extensions|\n sec-websocket-accept|\n sec-websocket-protocol|\n sec-websocket-version|\n p3p|\n sec-fetch-mode|\n sec-fetch-dest|\n sec-fetch-site|\n sec-fetch-user|\n referrer-policy|\n content-type|\n content-length|\n accept|\n accept-encoding|\n host|\n connection|\n transfer-encoding|\n upgrade\n )\n $)\n\n # Any other header name is allowed, if it matches the following regex\n [A-z0-9-]+\n $" } };
|
|
7247
|
+
data$f.adg_os_any;
|
|
7248
|
+
data$f.adg_ext_any;
|
|
7122
7249
|
|
|
7123
7250
|
var data$e = { adg_os_any:{ name:"removeparam",
|
|
7124
7251
|
description:"Rules with the `$removeparam` modifier are intended to strip query parameters from requests' URLs.",
|
|
@@ -7140,6 +7267,9 @@ var data$e = { adg_os_any:{ name:"removeparam",
|
|
|
7140
7267
|
assignable:true,
|
|
7141
7268
|
negatable:false,
|
|
7142
7269
|
value_format:"(?xi)\n (\n # string pattern\n \\w+\n # or regexp pattern\n |\n \\/.+\\/\n # flags\n ([gimuy]+)?\n )" } };
|
|
7270
|
+
data$e.adg_os_any;
|
|
7271
|
+
data$e.adg_ext_any;
|
|
7272
|
+
data$e.ubo_ext_any;
|
|
7143
7273
|
|
|
7144
7274
|
var data$d = { adg_os_any:{ name:"replace",
|
|
7145
7275
|
description:"This modifier completely changes the rule behavior.\nIf it is applied, the rule will not block the request. The response is going to be modified instead.",
|
|
@@ -7178,6 +7308,8 @@ var data$d = { adg_os_any:{ name:"replace",
|
|
|
7178
7308
|
assignable:true,
|
|
7179
7309
|
negatable:false,
|
|
7180
7310
|
value_format:"(?xi)\n ^\n \\/\n # the regexp to match by\n (.+)\n # separator\n \\/\n # replacement\n (.+)?\n \\/\n # flags\n ([gimuy]*)?\n $" } };
|
|
7311
|
+
data$d.adg_os_any;
|
|
7312
|
+
data$d.adg_ext_firefox;
|
|
7181
7313
|
|
|
7182
7314
|
var data$c = { adg_any:{ name:"script",
|
|
7183
7315
|
description:"The rule corresponds to script requests, e.g. javascript, vbscript.",
|
|
@@ -7188,6 +7320,9 @@ var data$c = { adg_any:{ name:"script",
|
|
|
7188
7320
|
ubo_any:{ name:"script",
|
|
7189
7321
|
description:"The rule corresponds to script requests, e.g. javascript, vbscript.",
|
|
7190
7322
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293#options" } };
|
|
7323
|
+
data$c.adg_any;
|
|
7324
|
+
data$c.abp_any;
|
|
7325
|
+
data$c.ubo_any;
|
|
7191
7326
|
|
|
7192
7327
|
var data$b = { adg_any:{ name:"specifichide",
|
|
7193
7328
|
aliases:[ "shide" ],
|
|
@@ -7213,6 +7348,8 @@ var data$b = { adg_any:{ name:"specifichide",
|
|
|
7213
7348
|
inverse_conflicts:true,
|
|
7214
7349
|
negatable:false,
|
|
7215
7350
|
exception_only:true } };
|
|
7351
|
+
data$b.adg_any;
|
|
7352
|
+
data$b.ubo_any;
|
|
7216
7353
|
|
|
7217
7354
|
var data$a = { adg_os_any:{ name:"stealth",
|
|
7218
7355
|
description:"Disables the Stealth Mode module for all corresponding pages and requests.",
|
|
@@ -7254,14 +7391,21 @@ var data$a = { adg_os_any:{ name:"stealth",
|
|
|
7254
7391
|
exception_only:true,
|
|
7255
7392
|
value_optional:true,
|
|
7256
7393
|
value_format:"pipe_separated_stealth_options" } };
|
|
7394
|
+
data$a.adg_os_any;
|
|
7395
|
+
data$a.adg_ext_chrome;
|
|
7396
|
+
data$a.adg_ext_firefox;
|
|
7397
|
+
data$a.adg_ext_opera;
|
|
7398
|
+
data$a.adg_ext_edge;
|
|
7257
7399
|
|
|
7258
7400
|
var data$9 = { ubo_any:{ name:"strict1p",
|
|
7259
7401
|
description:"This new `strict1p` option can check for strict partyness.\nFor example, a network request qualifies as 1st-party if both the context and the request share the same hostname.",
|
|
7260
7402
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#strict1p" } };
|
|
7403
|
+
data$9.ubo_any;
|
|
7261
7404
|
|
|
7262
7405
|
var data$8 = { ubo_any:{ name:"strict3p",
|
|
7263
7406
|
description:"This new `strict3p` option can check for strict partyness.\nFor example, a network request qualifies as 3rd-party if the context and the request hostnames are different.",
|
|
7264
7407
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#strict3p" } };
|
|
7408
|
+
data$8.ubo_any;
|
|
7265
7409
|
|
|
7266
7410
|
var data$7 = { adg_any:{ name:"stylesheet",
|
|
7267
7411
|
description:"The rule corresponds to CSS files requests.",
|
|
@@ -7273,6 +7417,9 @@ var data$7 = { adg_any:{ name:"stylesheet",
|
|
|
7273
7417
|
aliases:[ "css" ],
|
|
7274
7418
|
description:"The rule corresponds to CSS files requests.",
|
|
7275
7419
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#css" } };
|
|
7420
|
+
data$7.adg_any;
|
|
7421
|
+
data$7.abp_any;
|
|
7422
|
+
data$7.ubo_any;
|
|
7276
7423
|
|
|
7277
7424
|
var data$6 = { adg_any:{ name:"subdocument",
|
|
7278
7425
|
description:"The rule corresponds to requests for built-in pages — HTML tags frame and iframe.",
|
|
@@ -7284,6 +7431,9 @@ var data$6 = { adg_any:{ name:"subdocument",
|
|
|
7284
7431
|
aliases:[ "frame" ],
|
|
7285
7432
|
description:"The rule corresponds to requests for built-in pages — HTML tags frame and iframe.",
|
|
7286
7433
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#frame" } };
|
|
7434
|
+
data$6.adg_any;
|
|
7435
|
+
data$6.abp_any;
|
|
7436
|
+
data$6.ubo_any;
|
|
7287
7437
|
|
|
7288
7438
|
var data$5 = { adg_any:{ name:"third-party",
|
|
7289
7439
|
aliases:[ "3p" ],
|
|
@@ -7296,6 +7446,9 @@ var data$5 = { adg_any:{ name:"third-party",
|
|
|
7296
7446
|
abp_any:{ name:"third-party",
|
|
7297
7447
|
description:"A restriction of third-party and own requests.\nA third-party request is a request from a different domain.\nFor example, a request to `example.org` from `domain.com` is a third-party request.",
|
|
7298
7448
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293#party-requests" } };
|
|
7449
|
+
data$5.adg_any;
|
|
7450
|
+
data$5.ubo_any;
|
|
7451
|
+
data$5.abp_any;
|
|
7299
7452
|
|
|
7300
7453
|
var data$4 = { ubo_ext_any:{ name:"to",
|
|
7301
7454
|
description:"The main motivation of this option is\nto give static network filtering engine an equivalent of DNR's `requestDomains` and `excludedRequestDomains`.",
|
|
@@ -7303,6 +7456,7 @@ var data$4 = { ubo_ext_any:{ name:"to",
|
|
|
7303
7456
|
assignable:true,
|
|
7304
7457
|
negatable:false,
|
|
7305
7458
|
value_format:"pipe_separated_domains" } };
|
|
7459
|
+
data$4.ubo_ext_any;
|
|
7306
7460
|
|
|
7307
7461
|
var data$3 = { adg_any:{ name:"urlblock",
|
|
7308
7462
|
description:"Disables blocking of all requests sent from the pages matching the rule.",
|
|
@@ -7318,6 +7472,7 @@ var data$3 = { adg_any:{ name:"urlblock",
|
|
|
7318
7472
|
inverse_conflicts:true,
|
|
7319
7473
|
negatable:false,
|
|
7320
7474
|
exception_only:true } };
|
|
7475
|
+
data$3.adg_any;
|
|
7321
7476
|
|
|
7322
7477
|
var data$2 = { adg_any:{ name:"webrtc",
|
|
7323
7478
|
description:"The rule applies only to WebRTC connections.",
|
|
@@ -7333,6 +7488,9 @@ var data$2 = { adg_any:{ name:"webrtc",
|
|
|
7333
7488
|
description:"The rule applies only to WebRTC connections.",
|
|
7334
7489
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options",
|
|
7335
7490
|
version_added:"1.13.3" } };
|
|
7491
|
+
data$2.adg_any;
|
|
7492
|
+
data$2.ubo_any;
|
|
7493
|
+
data$2.abp_any;
|
|
7336
7494
|
|
|
7337
7495
|
var data$1 = { adg_os_any:{ name:"websocket",
|
|
7338
7496
|
description:"The rule applies only to WebSocket connections.",
|
|
@@ -7352,6 +7510,12 @@ var data$1 = { adg_os_any:{ name:"websocket",
|
|
|
7352
7510
|
ubo_ext_any:{ name:"websocket",
|
|
7353
7511
|
description:"The rule applies only to WebSocket connections.",
|
|
7354
7512
|
docs:"https://help.adblockplus.org/hc/en-us/articles/360062733293-How-to-write-filters#type-options" } };
|
|
7513
|
+
data$1.adg_os_any;
|
|
7514
|
+
data$1.adg_ext_any;
|
|
7515
|
+
data$1.adg_cb_ios;
|
|
7516
|
+
data$1.adg_cb_safari;
|
|
7517
|
+
data$1.abp_ext_any;
|
|
7518
|
+
data$1.ubo_ext_any;
|
|
7355
7519
|
|
|
7356
7520
|
var data = { adg_any:{ name:"xmlhttprequest",
|
|
7357
7521
|
aliases:[ "xhr" ],
|
|
@@ -7364,6 +7528,9 @@ var data = { adg_any:{ name:"xmlhttprequest",
|
|
|
7364
7528
|
aliases:[ "xmlhttprequest" ],
|
|
7365
7529
|
description:"The rule applies only to ajax requests (requests sent via javascript object XMLHttpRequest).",
|
|
7366
7530
|
docs:"https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#xhr" } };
|
|
7531
|
+
data.adg_any;
|
|
7532
|
+
data.abp_any;
|
|
7533
|
+
data.ubo_any;
|
|
7367
7534
|
|
|
7368
7535
|
/**
|
|
7369
7536
|
* @file Raw compatibility tables data reexport from yaml files.
|
|
@@ -7374,46 +7541,47 @@ var data = { adg_any:{ name:"xmlhttprequest",
|
|
|
7374
7541
|
// @ts-nocheck
|
|
7375
7542
|
// Please keep imports and exports in alphabetical order
|
|
7376
7543
|
const rawModifiersData = {
|
|
7377
|
-
all: data$
|
|
7378
|
-
app: data$
|
|
7379
|
-
badfilter: data$
|
|
7380
|
-
cname: data$
|
|
7381
|
-
content: data$
|
|
7382
|
-
cookie: data$
|
|
7383
|
-
csp: data$
|
|
7384
|
-
denyallow: data$
|
|
7385
|
-
document: data$
|
|
7386
|
-
domain: data$
|
|
7387
|
-
elemhide: data$
|
|
7388
|
-
empty: data$
|
|
7389
|
-
firstParty: data$
|
|
7390
|
-
extension: data$
|
|
7391
|
-
font: data$
|
|
7392
|
-
genericblock: data$
|
|
7393
|
-
generichide: data$
|
|
7394
|
-
header: data$
|
|
7395
|
-
hls: data$
|
|
7396
|
-
image: data$
|
|
7397
|
-
important: data$
|
|
7398
|
-
inlineFont: data$
|
|
7399
|
-
inlineScript: data$
|
|
7400
|
-
jsinject: data$
|
|
7401
|
-
jsonprune: data$
|
|
7402
|
-
matchCase: data$
|
|
7403
|
-
media: data$
|
|
7404
|
-
method: data$
|
|
7405
|
-
mp4: data$
|
|
7406
|
-
network: data$
|
|
7407
|
-
noop: data$
|
|
7408
|
-
objectSubrequest: data$
|
|
7409
|
-
object: data$
|
|
7410
|
-
other: data$
|
|
7411
|
-
permissions: data$
|
|
7412
|
-
ping: data$
|
|
7413
|
-
popunder: data$
|
|
7414
|
-
popup: data$
|
|
7415
|
-
redirectRule: data$
|
|
7416
|
-
redirect: data$
|
|
7544
|
+
all: data$U,
|
|
7545
|
+
app: data$T,
|
|
7546
|
+
badfilter: data$S,
|
|
7547
|
+
cname: data$R,
|
|
7548
|
+
content: data$Q,
|
|
7549
|
+
cookie: data$P,
|
|
7550
|
+
csp: data$O,
|
|
7551
|
+
denyallow: data$N,
|
|
7552
|
+
document: data$M,
|
|
7553
|
+
domain: data$L,
|
|
7554
|
+
elemhide: data$K,
|
|
7555
|
+
empty: data$J,
|
|
7556
|
+
firstParty: data$I,
|
|
7557
|
+
extension: data$H,
|
|
7558
|
+
font: data$G,
|
|
7559
|
+
genericblock: data$F,
|
|
7560
|
+
generichide: data$E,
|
|
7561
|
+
header: data$D,
|
|
7562
|
+
hls: data$C,
|
|
7563
|
+
image: data$B,
|
|
7564
|
+
important: data$A,
|
|
7565
|
+
inlineFont: data$z,
|
|
7566
|
+
inlineScript: data$y,
|
|
7567
|
+
jsinject: data$x,
|
|
7568
|
+
jsonprune: data$w,
|
|
7569
|
+
matchCase: data$v,
|
|
7570
|
+
media: data$u,
|
|
7571
|
+
method: data$t,
|
|
7572
|
+
mp4: data$s,
|
|
7573
|
+
network: data$r,
|
|
7574
|
+
noop: data$q,
|
|
7575
|
+
objectSubrequest: data$p,
|
|
7576
|
+
object: data$o,
|
|
7577
|
+
other: data$n,
|
|
7578
|
+
permissions: data$m,
|
|
7579
|
+
ping: data$l,
|
|
7580
|
+
popunder: data$k,
|
|
7581
|
+
popup: data$j,
|
|
7582
|
+
redirectRule: data$i,
|
|
7583
|
+
redirect: data$h,
|
|
7584
|
+
referrerpolicy: data$g,
|
|
7417
7585
|
removeheader: data$f,
|
|
7418
7586
|
removeparam: data$e,
|
|
7419
7587
|
replace: data$d,
|
|
@@ -7586,6 +7754,7 @@ const ALLOWED_CSP_DIRECTIVES = new Set([
|
|
|
7586
7754
|
'child-src',
|
|
7587
7755
|
'connect-src',
|
|
7588
7756
|
'default-src',
|
|
7757
|
+
'fenced-frame-src',
|
|
7589
7758
|
'font-src',
|
|
7590
7759
|
'form-action',
|
|
7591
7760
|
'frame-ancestors',
|
|
@@ -7597,16 +7766,23 @@ const ALLOWED_CSP_DIRECTIVES = new Set([
|
|
|
7597
7766
|
'object-src',
|
|
7598
7767
|
'plugin-types',
|
|
7599
7768
|
'prefetch-src',
|
|
7769
|
+
'referrer',
|
|
7600
7770
|
'report-to',
|
|
7601
7771
|
'report-uri',
|
|
7772
|
+
'require-trusted-types-for',
|
|
7602
7773
|
'sandbox',
|
|
7603
7774
|
'script-src',
|
|
7775
|
+
'script-src-attr',
|
|
7776
|
+
'script-src-elem',
|
|
7604
7777
|
'style-src',
|
|
7778
|
+
'style-src-attr',
|
|
7779
|
+
'style-src-elem',
|
|
7780
|
+
'trusted-types',
|
|
7605
7781
|
'upgrade-insecure-requests',
|
|
7606
7782
|
'worker-src',
|
|
7607
7783
|
]);
|
|
7608
7784
|
/**
|
|
7609
|
-
* Allowed
|
|
7785
|
+
* Allowed directives for $permissions modifier.
|
|
7610
7786
|
*
|
|
7611
7787
|
* @see {@link https://adguard.app/kb/general/ad-filtering/create-own-filters/#permissions-modifier}
|
|
7612
7788
|
*/
|
|
@@ -7656,6 +7832,21 @@ const PERMISSIONS_TOKEN_SELF = 'self';
|
|
|
7656
7832
|
* @see {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/Permissions_Policy#allowlists}
|
|
7657
7833
|
*/
|
|
7658
7834
|
const EMPTY_PERMISSIONS_ALLOWLIST = `${OPEN_PARENTHESIS}${CLOSE_PARENTHESIS}`;
|
|
7835
|
+
/**
|
|
7836
|
+
* Allowed directives for $referrerpolicy modifier.
|
|
7837
|
+
*
|
|
7838
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy}
|
|
7839
|
+
*/
|
|
7840
|
+
const REFERRER_POLICY_DIRECTIVES = new Set([
|
|
7841
|
+
'no-referrer',
|
|
7842
|
+
'no-referrer-when-downgrade',
|
|
7843
|
+
'origin',
|
|
7844
|
+
'origin-when-cross-origin',
|
|
7845
|
+
'same-origin',
|
|
7846
|
+
'strict-origin',
|
|
7847
|
+
'strict-origin-when-cross-origin',
|
|
7848
|
+
'unsafe-url',
|
|
7849
|
+
]);
|
|
7659
7850
|
/**
|
|
7660
7851
|
* Prefixes for error messages used in modifier validation.
|
|
7661
7852
|
*/
|
|
@@ -7668,6 +7859,7 @@ const VALIDATION_ERROR_PREFIX = {
|
|
|
7668
7859
|
INVALID_PERMISSION_DIRECTIVE: 'Invalid Permissions-Policy directive for the modifier',
|
|
7669
7860
|
INVALID_PERMISSION_ORIGINS: 'Origins in the value is invalid for the modifier and the directive',
|
|
7670
7861
|
INVALID_PERMISSION_ORIGIN_QUOTES: 'Double quotes should be used for origins in the value of the modifier',
|
|
7862
|
+
INVALID_REFERRER_POLICY_DIRECTIVE: 'Invalid Referrer-Policy directive for the modifier',
|
|
7671
7863
|
MIXED_NEGATIONS: 'Simultaneous usage of negated and not negated values is forbidden for the modifier',
|
|
7672
7864
|
NO_CSP_VALUE: 'No CSP value for the modifier and the directive',
|
|
7673
7865
|
NO_CSP_DIRECTIVE_QUOTE: 'CSP directives should no be quoted for the modifier',
|
|
@@ -7991,6 +8183,7 @@ var CustomValueFormatValidatorName;
|
|
|
7991
8183
|
CustomValueFormatValidatorName["Domain"] = "pipe_separated_domains";
|
|
7992
8184
|
CustomValueFormatValidatorName["Method"] = "pipe_separated_methods";
|
|
7993
8185
|
CustomValueFormatValidatorName["Permissions"] = "permissions_value";
|
|
8186
|
+
CustomValueFormatValidatorName["ReferrerPolicy"] = "referrerpolicy_value";
|
|
7994
8187
|
CustomValueFormatValidatorName["StealthOption"] = "pipe_separated_stealth_options";
|
|
7995
8188
|
})(CustomValueFormatValidatorName || (CustomValueFormatValidatorName = {}));
|
|
7996
8189
|
/**
|
|
@@ -8447,6 +8640,26 @@ const validatePermissions = (modifier) => {
|
|
|
8447
8640
|
}
|
|
8448
8641
|
return { valid: true };
|
|
8449
8642
|
};
|
|
8643
|
+
/**
|
|
8644
|
+
* Validates `referrerpolicy_value` custom value format.
|
|
8645
|
+
* Used for $referrerpolicy modifier.
|
|
8646
|
+
*
|
|
8647
|
+
* @param modifier Modifier AST node.
|
|
8648
|
+
*
|
|
8649
|
+
* @returns Validation result.
|
|
8650
|
+
*/
|
|
8651
|
+
const validateReferrerPolicy = (modifier) => {
|
|
8652
|
+
if (!modifier.value?.value) {
|
|
8653
|
+
return getValueRequiredValidationResult(modifier.modifier.value);
|
|
8654
|
+
}
|
|
8655
|
+
const modifierName = modifier.modifier.value;
|
|
8656
|
+
const modifierValue = modifier.value.value;
|
|
8657
|
+
if (!REFERRER_POLICY_DIRECTIVES.has(modifierValue)) {
|
|
8658
|
+
// eslint-disable-next-line max-len
|
|
8659
|
+
return getInvalidValidationResult(`${VALIDATION_ERROR_PREFIX.INVALID_REFERRER_POLICY_DIRECTIVE}: '${modifierName}': '${modifierValue}'`);
|
|
8660
|
+
}
|
|
8661
|
+
return { valid: true };
|
|
8662
|
+
};
|
|
8450
8663
|
/**
|
|
8451
8664
|
* Map of all available pre-defined validators for modifiers with custom `value_format`.
|
|
8452
8665
|
*/
|
|
@@ -8457,6 +8670,7 @@ const CUSTOM_VALUE_FORMAT_MAP = {
|
|
|
8457
8670
|
[CustomValueFormatValidatorName.Domain]: validatePipeSeparatedDomains,
|
|
8458
8671
|
[CustomValueFormatValidatorName.Method]: validatePipeSeparatedMethods,
|
|
8459
8672
|
[CustomValueFormatValidatorName.Permissions]: validatePermissions,
|
|
8673
|
+
[CustomValueFormatValidatorName.ReferrerPolicy]: validateReferrerPolicy,
|
|
8460
8674
|
[CustomValueFormatValidatorName.StealthOption]: validatePipeSeparatedStealthOptions,
|
|
8461
8675
|
};
|
|
8462
8676
|
/**
|
|
@@ -10535,7 +10749,7 @@ class LogicalExpressionUtils {
|
|
|
10535
10749
|
}
|
|
10536
10750
|
}
|
|
10537
10751
|
|
|
10538
|
-
const version$1 = "1.1.
|
|
10752
|
+
const version$1 = "1.1.8";
|
|
10539
10753
|
|
|
10540
10754
|
/**
|
|
10541
10755
|
* @file AGTree version
|