@url-sanitize/firefox 2.0.4 → 2.0.6
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/dist/adapter.d.ts +5 -6
- package/dist/adapter.js +36 -6
- package/dist/index.d.ts +9 -9
- package/dist/index.js +7 -18
- package/dist/raw-DQN0NRnq.js +64 -0
- package/dist/raw.d.ts +5 -6
- package/dist/raw.js +1 -8
- package/dist/types.d.ts +17 -17
- package/dist/types.js +1 -0
- package/package.json +4 -4
- package/dist/chunk-56UUX4DC.js +0 -47
- package/dist/chunk-AEDX63WT.js +0 -71
package/dist/adapter.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
declare function firefoxToCatalog(data: FirefoxQueryStrippingData, meta: FirefoxMetadata): SanitizerCatalog;
|
|
5
|
-
|
|
6
|
-
export { firefoxToCatalog };
|
|
1
|
+
import { FirefoxMetadata, FirefoxQueryStrippingData } from "./types.js";
|
|
2
|
+
import { SanitizerCatalog } from "@url-sanitize/core";
|
|
3
|
+
//#region src/adapter.d.ts
|
|
4
|
+
export declare function firefoxToCatalog(data: FirefoxQueryStrippingData, meta: FirefoxMetadata): SanitizerCatalog;
|
|
5
|
+
//#endregion
|
package/dist/adapter.js
CHANGED
|
@@ -1,6 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
};
|
|
1
|
+
//#region src/adapter.ts
|
|
2
|
+
function firefoxToCatalog(data, meta) {
|
|
3
|
+
const rules = [];
|
|
4
|
+
const globalExceptions = data.data.flatMap((record) => record.stripList.length === 0 ? record.allowList.map(domainPattern) : []);
|
|
5
|
+
for (const record of data.data) {
|
|
6
|
+
if (record.filter_expression) throw new Error(`Unsupported Firefox filter_expression in record ${record.id}`);
|
|
7
|
+
const exceptions = [...globalExceptions, ...record.allowList.map(domainPattern)];
|
|
8
|
+
for (const param of record.stripList) rules.push({
|
|
9
|
+
kind: "strip-param",
|
|
10
|
+
source: "firefox",
|
|
11
|
+
provider: `firefox-${record.id}`,
|
|
12
|
+
paramPattern: escapeRegExp(param),
|
|
13
|
+
exceptions
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
return {
|
|
17
|
+
version: meta.version,
|
|
18
|
+
generatedAt: meta.fetchedAt,
|
|
19
|
+
sources: [{
|
|
20
|
+
name: "firefox",
|
|
21
|
+
version: meta.version,
|
|
22
|
+
hash: meta.hash,
|
|
23
|
+
license: meta.license,
|
|
24
|
+
upstream: meta.upstream
|
|
25
|
+
}],
|
|
26
|
+
rules
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function domainPattern(domain) {
|
|
30
|
+
return `^https?:\\/\\/([^/?#]+\\.)?${escapeRegExp(domain)}(?::[0-9]+)?(?:[/?#]|$)`;
|
|
31
|
+
}
|
|
32
|
+
function escapeRegExp(value) {
|
|
33
|
+
return value.replace(/[|\\{}()[\]^$+?.*]/g, "\\$&");
|
|
34
|
+
}
|
|
35
|
+
//#endregion
|
|
36
|
+
export { firefoxToCatalog };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
declare const firefoxCatalog: SanitizerCatalog;
|
|
7
|
-
declare const sanitize: Sanitizer;
|
|
8
|
-
|
|
9
|
-
export {
|
|
1
|
+
import { FirefoxMetadata, FirefoxQueryStrippingData, FirefoxQueryStrippingRecord } from "./types.js";
|
|
2
|
+
import { firefoxToCatalog } from "./adapter.js";
|
|
3
|
+
import { firefoxMetadata, firefoxRawData } from "./raw.js";
|
|
4
|
+
import { Sanitizer, SanitizerCatalog } from "@url-sanitize/core";
|
|
5
|
+
//#region src/index.d.ts
|
|
6
|
+
export declare const firefoxCatalog: SanitizerCatalog;
|
|
7
|
+
export declare const sanitize: Sanitizer;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { type FirefoxMetadata, type FirefoxQueryStrippingData, type FirefoxQueryStrippingRecord, firefoxMetadata, firefoxRawData, firefoxToCatalog };
|
package/dist/index.js
CHANGED
|
@@ -1,19 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
} from "./chunk-56UUX4DC.js";
|
|
4
|
-
import {
|
|
5
|
-
firefoxMetadata,
|
|
6
|
-
firefoxRawData
|
|
7
|
-
} from "./chunk-AEDX63WT.js";
|
|
8
|
-
|
|
9
|
-
// src/index.ts
|
|
1
|
+
import { firefoxToCatalog } from "./adapter.js";
|
|
2
|
+
import { n as firefoxRawData, t as firefoxMetadata } from "./raw-DQN0NRnq.js";
|
|
10
3
|
import { compileSanitizer } from "@url-sanitize/core";
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
firefoxRawData,
|
|
17
|
-
firefoxToCatalog,
|
|
18
|
-
sanitize
|
|
19
|
-
};
|
|
4
|
+
//#region src/index.ts
|
|
5
|
+
const firefoxCatalog = firefoxToCatalog(firefoxRawData, firefoxMetadata);
|
|
6
|
+
const sanitize = compileSanitizer(firefoxCatalog);
|
|
7
|
+
//#endregion
|
|
8
|
+
export { firefoxCatalog, firefoxMetadata, firefoxRawData, firefoxToCatalog, sanitize };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
//#region data/data.json
|
|
2
|
+
var data_default = { data: [
|
|
3
|
+
{
|
|
4
|
+
"schema": 1694684344305,
|
|
5
|
+
"allowList": ["googleadservices.com"],
|
|
6
|
+
"stripList": [],
|
|
7
|
+
"id": "a61d2791-d7e1-42e6-9824-0dbe69c33b97",
|
|
8
|
+
"last_modified": 1694689843914
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"schema": 1678379807899,
|
|
12
|
+
"allowList": [],
|
|
13
|
+
"stripList": [
|
|
14
|
+
"gclid",
|
|
15
|
+
"dclid",
|
|
16
|
+
"msclkid",
|
|
17
|
+
"_openstat",
|
|
18
|
+
"yclid",
|
|
19
|
+
"wickedid",
|
|
20
|
+
"twclid",
|
|
21
|
+
"_hsenc",
|
|
22
|
+
"__hssc",
|
|
23
|
+
"__hstc",
|
|
24
|
+
"__hsfp",
|
|
25
|
+
"hsctatracking",
|
|
26
|
+
"wbraid",
|
|
27
|
+
"gbraid",
|
|
28
|
+
"ysclid"
|
|
29
|
+
],
|
|
30
|
+
"id": "85078bad-f31e-4d93-bb8a-81088b25d6dd",
|
|
31
|
+
"last_modified": 1678736907773
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"schema": 1649695008608,
|
|
35
|
+
"allowList": [],
|
|
36
|
+
"stripList": [
|
|
37
|
+
"mc_eid",
|
|
38
|
+
"oly_anon_id",
|
|
39
|
+
"oly_enc_id",
|
|
40
|
+
"__s",
|
|
41
|
+
"vero_id",
|
|
42
|
+
"_hsenc",
|
|
43
|
+
"mkt_tok",
|
|
44
|
+
"fbclid"
|
|
45
|
+
],
|
|
46
|
+
"id": "76495cfc-fac9-4079-9b5f-9ff0784484de",
|
|
47
|
+
"last_modified": 1649762862679
|
|
48
|
+
}
|
|
49
|
+
] };
|
|
50
|
+
//#endregion
|
|
51
|
+
//#region data/metadata.json
|
|
52
|
+
var metadata_default = {
|
|
53
|
+
version: "61578ba740b7",
|
|
54
|
+
hash: "61578ba740b7bb0e9b5450eab725dd3b7be8995ba42633d9d46825745f9e0c7d",
|
|
55
|
+
fetchedAt: "2026-06-03T17:40:39.112Z",
|
|
56
|
+
upstream: "https://firefox.settings.services.mozilla.com/v1/buckets/main/collections/query-stripping/records",
|
|
57
|
+
license: "MPL-2.0"
|
|
58
|
+
};
|
|
59
|
+
//#endregion
|
|
60
|
+
//#region src/raw.ts
|
|
61
|
+
const firefoxRawData = data_default;
|
|
62
|
+
const firefoxMetadata = metadata_default;
|
|
63
|
+
//#endregion
|
|
64
|
+
export { firefoxRawData as n, firefoxMetadata as t };
|
package/dist/raw.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { FirefoxMetadata, FirefoxQueryStrippingData } from
|
|
2
|
-
|
|
3
|
-
declare const firefoxRawData: FirefoxQueryStrippingData;
|
|
4
|
-
declare const firefoxMetadata: FirefoxMetadata;
|
|
5
|
-
|
|
6
|
-
export { firefoxMetadata, firefoxRawData };
|
|
1
|
+
import { FirefoxMetadata, FirefoxQueryStrippingData } from "./types.js";
|
|
2
|
+
//#region src/raw.d.ts
|
|
3
|
+
export declare const firefoxRawData: FirefoxQueryStrippingData;
|
|
4
|
+
export declare const firefoxMetadata: FirefoxMetadata;
|
|
5
|
+
//#endregion
|
package/dist/raw.js
CHANGED
package/dist/types.d.ts
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
//#region src/types.d.ts
|
|
2
|
+
export interface FirefoxQueryStrippingRecord {
|
|
3
|
+
allowList: string[];
|
|
4
|
+
filter_expression?: string;
|
|
5
|
+
id: string;
|
|
6
|
+
last_modified: number;
|
|
7
|
+
schema: number;
|
|
8
|
+
stripList: string[];
|
|
8
9
|
}
|
|
9
|
-
interface FirefoxQueryStrippingData {
|
|
10
|
-
|
|
10
|
+
export interface FirefoxQueryStrippingData {
|
|
11
|
+
data: FirefoxQueryStrippingRecord[];
|
|
11
12
|
}
|
|
12
|
-
interface FirefoxMetadata {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
export interface FirefoxMetadata {
|
|
14
|
+
version: string;
|
|
15
|
+
hash: string;
|
|
16
|
+
fetchedAt: string;
|
|
17
|
+
upstream: string;
|
|
18
|
+
license: string;
|
|
18
19
|
}
|
|
19
|
-
|
|
20
|
-
export type { FirefoxMetadata, FirefoxQueryStrippingData, FirefoxQueryStrippingRecord };
|
|
20
|
+
//#endregion
|
package/dist/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@url-sanitize/firefox",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.6",
|
|
4
4
|
"description": "Firefox Query Stripping catalog adapter for @url-sanitize/core.",
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"NOTICE"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@url-sanitize/core": "2.0.
|
|
34
|
+
"@url-sanitize/core": "2.0.6"
|
|
35
35
|
},
|
|
36
36
|
"keywords": [
|
|
37
37
|
"firefox",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
},
|
|
51
51
|
"sideEffects": false,
|
|
52
52
|
"scripts": {
|
|
53
|
-
"build": "
|
|
54
|
-
"dev": "
|
|
53
|
+
"build": "vp pack",
|
|
54
|
+
"dev": "vp pack --watch"
|
|
55
55
|
}
|
|
56
56
|
}
|
package/dist/chunk-56UUX4DC.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
// src/adapter.ts
|
|
2
|
-
function firefoxToCatalog(data, meta) {
|
|
3
|
-
const rules = [];
|
|
4
|
-
const globalExceptions = data.data.flatMap(
|
|
5
|
-
(record) => record.stripList.length === 0 ? record.allowList.map(domainPattern) : []
|
|
6
|
-
);
|
|
7
|
-
for (const record of data.data) {
|
|
8
|
-
if (record.filter_expression) {
|
|
9
|
-
throw new Error(`Unsupported Firefox filter_expression in record ${record.id}`);
|
|
10
|
-
}
|
|
11
|
-
const exceptions = [...globalExceptions, ...record.allowList.map(domainPattern)];
|
|
12
|
-
for (const param of record.stripList) {
|
|
13
|
-
rules.push({
|
|
14
|
-
kind: "strip-param",
|
|
15
|
-
source: "firefox",
|
|
16
|
-
provider: `firefox-${record.id}`,
|
|
17
|
-
paramPattern: escapeRegExp(param),
|
|
18
|
-
exceptions
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return {
|
|
23
|
-
version: meta.version,
|
|
24
|
-
generatedAt: meta.fetchedAt,
|
|
25
|
-
sources: [
|
|
26
|
-
{
|
|
27
|
-
name: "firefox",
|
|
28
|
-
version: meta.version,
|
|
29
|
-
hash: meta.hash,
|
|
30
|
-
license: meta.license,
|
|
31
|
-
upstream: meta.upstream
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
rules
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
function domainPattern(domain) {
|
|
38
|
-
const escaped = escapeRegExp(domain);
|
|
39
|
-
return `^https?:\\/\\/([^/?#]+\\.)?${escaped}(?::[0-9]+)?(?:[/?#]|$)`;
|
|
40
|
-
}
|
|
41
|
-
function escapeRegExp(value) {
|
|
42
|
-
return value.replace(/[|\\{}()[\]^$+?.*]/g, "\\$&");
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export {
|
|
46
|
-
firefoxToCatalog
|
|
47
|
-
};
|
package/dist/chunk-AEDX63WT.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
// data/data.json
|
|
2
|
-
var data_default = {
|
|
3
|
-
data: [
|
|
4
|
-
{
|
|
5
|
-
schema: 1694684344305,
|
|
6
|
-
allowList: [
|
|
7
|
-
"googleadservices.com"
|
|
8
|
-
],
|
|
9
|
-
stripList: [],
|
|
10
|
-
id: "a61d2791-d7e1-42e6-9824-0dbe69c33b97",
|
|
11
|
-
last_modified: 1694689843914
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
schema: 1678379807899,
|
|
15
|
-
allowList: [],
|
|
16
|
-
stripList: [
|
|
17
|
-
"gclid",
|
|
18
|
-
"dclid",
|
|
19
|
-
"msclkid",
|
|
20
|
-
"_openstat",
|
|
21
|
-
"yclid",
|
|
22
|
-
"wickedid",
|
|
23
|
-
"twclid",
|
|
24
|
-
"_hsenc",
|
|
25
|
-
"__hssc",
|
|
26
|
-
"__hstc",
|
|
27
|
-
"__hsfp",
|
|
28
|
-
"hsctatracking",
|
|
29
|
-
"wbraid",
|
|
30
|
-
"gbraid",
|
|
31
|
-
"ysclid"
|
|
32
|
-
],
|
|
33
|
-
id: "85078bad-f31e-4d93-bb8a-81088b25d6dd",
|
|
34
|
-
last_modified: 1678736907773
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
schema: 1649695008608,
|
|
38
|
-
allowList: [],
|
|
39
|
-
stripList: [
|
|
40
|
-
"mc_eid",
|
|
41
|
-
"oly_anon_id",
|
|
42
|
-
"oly_enc_id",
|
|
43
|
-
"__s",
|
|
44
|
-
"vero_id",
|
|
45
|
-
"_hsenc",
|
|
46
|
-
"mkt_tok",
|
|
47
|
-
"fbclid"
|
|
48
|
-
],
|
|
49
|
-
id: "76495cfc-fac9-4079-9b5f-9ff0784484de",
|
|
50
|
-
last_modified: 1649762862679
|
|
51
|
-
}
|
|
52
|
-
]
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
// data/metadata.json
|
|
56
|
-
var metadata_default = {
|
|
57
|
-
version: "61578ba740b7",
|
|
58
|
-
hash: "61578ba740b7bb0e9b5450eab725dd3b7be8995ba42633d9d46825745f9e0c7d",
|
|
59
|
-
fetchedAt: "2026-06-03T17:40:39.112Z",
|
|
60
|
-
upstream: "https://firefox.settings.services.mozilla.com/v1/buckets/main/collections/query-stripping/records",
|
|
61
|
-
license: "MPL-2.0"
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
// src/raw.ts
|
|
65
|
-
var firefoxRawData = data_default;
|
|
66
|
-
var firefoxMetadata = metadata_default;
|
|
67
|
-
|
|
68
|
-
export {
|
|
69
|
-
firefoxRawData,
|
|
70
|
-
firefoxMetadata
|
|
71
|
-
};
|