| OLD | NEW |
| 1 /* | 1 /* |
| 2 * This file is part of Adblock Plus <https://adblockplus.org/>, | 2 * This file is part of Adblock Plus <https://adblockplus.org/>, |
| 3 * Copyright (C) 2006-present eyeo GmbH | 3 * Copyright (C) 2006-present eyeo GmbH |
| 4 * | 4 * |
| 5 * Adblock Plus is free software: you can redistribute it and/or modify | 5 * Adblock Plus is free software: you can redistribute it and/or modify |
| 6 * it under the terms of the GNU General Public License version 3 as | 6 * it under the terms of the GNU General Public License version 3 as |
| 7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
| 8 * | 8 * |
| 9 * Adblock Plus is distributed in the hope that it will be useful, | 9 * Adblock Plus is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 744 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 755 } | 755 } |
| 756 | 756 |
| 757 let contentType = null; | 757 let contentType = null; |
| 758 let matchCase = null; | 758 let matchCase = null; |
| 759 let domains = null; | 759 let domains = null; |
| 760 let sitekeys = null; | 760 let sitekeys = null; |
| 761 let thirdParty = null; | 761 let thirdParty = null; |
| 762 let collapse = null; | 762 let collapse = null; |
| 763 let csp = null; | 763 let csp = null; |
| 764 let rewrite = null; | 764 let rewrite = null; |
| 765 let options; | 765 |
| 766 let match = text.includes("$") ? Filter.optionsRegExp.exec(text) : null; | 766 let match = text.includes("$") ? Filter.optionsRegExp.exec(text) : null; |
| 767 if (match) | 767 if (match) |
| 768 { | 768 { |
| 769 options = match[1].split(","); | |
| 770 text = match.input.substr(0, match.index); | 769 text = match.input.substr(0, match.index); |
| 771 for (let option of options) | 770 |
| 771 for (let re = /([^,=]+)(?:=([^,]*))?/g, m; m = re.exec(match[1]);) |
| 772 { | 772 { |
| 773 let value = null; | 773 let [, option, value] = m; |
| 774 let separatorIndex = option.indexOf("="); | |
| 775 if (separatorIndex >= 0) | |
| 776 { | |
| 777 value = option.substr(separatorIndex + 1); | |
| 778 option = option.substr(0, separatorIndex); | |
| 779 } | |
| 780 | 774 |
| 781 let inverse = option[0] == "~"; | 775 let inverse = option[0] == "~"; |
| 782 if (inverse) | 776 if (inverse) |
| 783 option = option.substr(1); | 777 option = option.substr(1); |
| 784 | 778 |
| 785 let type = RegExpFilter.typeMap[option.replace(/-/, "_").toUpperCase()]; | 779 let type = RegExpFilter.typeMap[option.replace(/-/, "_").toUpperCase()]; |
| 786 if (type) | 780 if (type) |
| 787 { | 781 { |
| 788 if (inverse) | 782 if (inverse) |
| 789 { | 783 { |
| (...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1187 | 1181 |
| 1188 /** | 1182 /** |
| 1189 * Script that should be executed | 1183 * Script that should be executed |
| 1190 * @type {string} | 1184 * @type {string} |
| 1191 */ | 1185 */ |
| 1192 get script() | 1186 get script() |
| 1193 { | 1187 { |
| 1194 return this.body; | 1188 return this.body; |
| 1195 } | 1189 } |
| 1196 }); | 1190 }); |
| OLD | NEW |