add support for regexFilter

This commit is contained in:
lonelil
2024-01-23 18:50:12 +08:00
parent 055a97d12e
commit 4ab9546fcd

View File

@@ -7,7 +7,8 @@ import { assertDomainWhitelist } from '~utils/storage';
interface Request extends BaseRequest { interface Request extends BaseRequest {
ruleId: number; ruleId: number;
targetDomains: [string, ...string[]]; targetDomains?: [string, ...string[]];
targetRegex?: string;
requestHeaders?: Record<string, string>; requestHeaders?: Record<string, string>;
responseHeaders?: Record<string, string>; responseHeaders?: Record<string, string>;
} }
@@ -33,7 +34,8 @@ const handler: PlasmoMessaging.MessageHandler<Request, BaseResponse> = async (re
{ {
id: req.body.ruleId, id: req.body.ruleId,
condition: { condition: {
requestDomains: req.body.targetDomains, ...(req.body.targetDomains && { requestDomains: req.body.targetDomains }),
...(req.body.targetRegex && { regexFilter: req.body.targetRegex }),
}, },
action: { action: {
type: chrome.declarativeNetRequest.RuleActionType.MODIFY_HEADERS, type: chrome.declarativeNetRequest.RuleActionType.MODIFY_HEADERS,
@@ -78,7 +80,8 @@ const handler: PlasmoMessaging.MessageHandler<Request, BaseResponse> = async (re
{ {
id: req.body.ruleId, id: req.body.ruleId,
condition: { condition: {
requestDomains: req.body.targetDomains, ...(req.body.targetDomains && { requestDomains: req.body.targetDomains }),
...(req.body.targetRegex && { regexFilter: req.body.targetRegex }),
}, },
action: { action: {
type: 'modifyHeaders', type: 'modifyHeaders',