@url-sanitize/clearurls 0.1.0
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/LICENSE +33 -0
- package/NOTICE +14 -0
- package/README.md +38 -0
- package/data/data.json +1984 -0
- package/data/metadata.json +6 -0
- package/dist/chunk-TAQSU2JX.js +1998 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +92 -0
- package/dist/raw.d.ts +6 -0
- package/dist/raw.js +12 -0
- package/dist/types-DHX4A7iO.d.ts +21 -0
- package/package.json +49 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SanitizerCatalog } from '@url-sanitize/core';
|
|
2
|
+
import { C as ClearUrlsData, a as ClearUrlsMetadata } from './types-DHX4A7iO.js';
|
|
3
|
+
export { b as ClearUrlsProvider } from './types-DHX4A7iO.js';
|
|
4
|
+
|
|
5
|
+
declare function clearurlsToCatalog(data: ClearUrlsData, meta: ClearUrlsMetadata): SanitizerCatalog;
|
|
6
|
+
|
|
7
|
+
declare const clearurlsCatalog: SanitizerCatalog;
|
|
8
|
+
declare const clearurlsMetadata: ClearUrlsMetadata;
|
|
9
|
+
|
|
10
|
+
export { ClearUrlsData, ClearUrlsMetadata, clearurlsCatalog, clearurlsMetadata, clearurlsToCatalog };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import {
|
|
2
|
+
data_default,
|
|
3
|
+
metadata_default
|
|
4
|
+
} from "./chunk-TAQSU2JX.js";
|
|
5
|
+
|
|
6
|
+
// src/adapter.ts
|
|
7
|
+
function clearurlsToCatalog(data, meta) {
|
|
8
|
+
const rules = [];
|
|
9
|
+
for (const [name, provider] of Object.entries(data.providers)) {
|
|
10
|
+
const exceptions = provider.exceptions ?? [];
|
|
11
|
+
if (provider.completeProvider) {
|
|
12
|
+
rules.push({
|
|
13
|
+
kind: "block-domain",
|
|
14
|
+
source: "clearurls",
|
|
15
|
+
provider: name,
|
|
16
|
+
urlPattern: provider.urlPattern,
|
|
17
|
+
exceptions
|
|
18
|
+
});
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
for (const pattern of provider.rawRules ?? []) {
|
|
22
|
+
rules.push({
|
|
23
|
+
kind: "raw-replace",
|
|
24
|
+
source: "clearurls",
|
|
25
|
+
provider: name,
|
|
26
|
+
urlPattern: provider.urlPattern,
|
|
27
|
+
pattern,
|
|
28
|
+
replacement: "",
|
|
29
|
+
exceptions
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
for (const pattern of provider.redirections ?? []) {
|
|
33
|
+
rules.push({
|
|
34
|
+
kind: "unwrap-redirect",
|
|
35
|
+
source: "clearurls",
|
|
36
|
+
provider: name,
|
|
37
|
+
urlPattern: provider.urlPattern,
|
|
38
|
+
pattern,
|
|
39
|
+
captureGroup: 1,
|
|
40
|
+
exceptions
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
for (const paramPattern of provider.rules ?? []) {
|
|
44
|
+
rules.push({
|
|
45
|
+
kind: "strip-param",
|
|
46
|
+
source: "clearurls",
|
|
47
|
+
provider: name,
|
|
48
|
+
urlPattern: provider.urlPattern,
|
|
49
|
+
paramPattern,
|
|
50
|
+
exceptions,
|
|
51
|
+
isReferralMarketing: false
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
for (const paramPattern of provider.referralMarketing ?? []) {
|
|
55
|
+
rules.push({
|
|
56
|
+
kind: "strip-param",
|
|
57
|
+
source: "clearurls",
|
|
58
|
+
provider: name,
|
|
59
|
+
urlPattern: provider.urlPattern,
|
|
60
|
+
paramPattern,
|
|
61
|
+
exceptions,
|
|
62
|
+
isReferralMarketing: true
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
version: meta.version,
|
|
68
|
+
generatedAt: meta.fetchedAt,
|
|
69
|
+
sources: [
|
|
70
|
+
{
|
|
71
|
+
name: "clearurls",
|
|
72
|
+
version: meta.version,
|
|
73
|
+
hash: meta.hash,
|
|
74
|
+
license: "LGPL-3.0-only",
|
|
75
|
+
upstream: meta.upstream
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
rules
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// src/index.ts
|
|
83
|
+
var clearurlsCatalog = clearurlsToCatalog(
|
|
84
|
+
data_default,
|
|
85
|
+
metadata_default
|
|
86
|
+
);
|
|
87
|
+
var clearurlsMetadata = metadata_default;
|
|
88
|
+
export {
|
|
89
|
+
clearurlsCatalog,
|
|
90
|
+
clearurlsMetadata,
|
|
91
|
+
clearurlsToCatalog
|
|
92
|
+
};
|
package/dist/raw.d.ts
ADDED
package/dist/raw.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
interface ClearUrlsProvider {
|
|
2
|
+
urlPattern: string;
|
|
3
|
+
completeProvider?: boolean;
|
|
4
|
+
forceRedirection?: boolean;
|
|
5
|
+
rules?: string[];
|
|
6
|
+
rawRules?: string[];
|
|
7
|
+
referralMarketing?: string[];
|
|
8
|
+
redirections?: string[];
|
|
9
|
+
exceptions?: string[];
|
|
10
|
+
}
|
|
11
|
+
interface ClearUrlsData {
|
|
12
|
+
providers: Record<string, ClearUrlsProvider>;
|
|
13
|
+
}
|
|
14
|
+
interface ClearUrlsMetadata {
|
|
15
|
+
version: string;
|
|
16
|
+
hash: string;
|
|
17
|
+
fetchedAt: string;
|
|
18
|
+
upstream: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export type { ClearUrlsData as C, ClearUrlsMetadata as a, ClearUrlsProvider as b };
|
package/package.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@url-sanitize/clearurls",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "ClearURLs-compatible rule catalog and adapter for @url-sanitize/core. Daily-synced from upstream.",
|
|
5
|
+
"license": "LGPL-3.0-only",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"module": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./raw": {
|
|
16
|
+
"types": "./dist/raw.d.ts",
|
|
17
|
+
"import": "./dist/raw.js"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist",
|
|
22
|
+
"data",
|
|
23
|
+
"NOTICE"
|
|
24
|
+
],
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@url-sanitize/core": "0.1.0"
|
|
27
|
+
},
|
|
28
|
+
"keywords": [
|
|
29
|
+
"clearurls",
|
|
30
|
+
"clearurls-ts",
|
|
31
|
+
"clearurls-typescript",
|
|
32
|
+
"url",
|
|
33
|
+
"tracking",
|
|
34
|
+
"privacy"
|
|
35
|
+
],
|
|
36
|
+
"publishConfig": {
|
|
37
|
+
"access": "public"
|
|
38
|
+
},
|
|
39
|
+
"repository": {
|
|
40
|
+
"type": "git",
|
|
41
|
+
"url": "https://github.com/antonio-orionus/url-sanitize.git",
|
|
42
|
+
"directory": "packages/clearurls"
|
|
43
|
+
},
|
|
44
|
+
"sideEffects": false,
|
|
45
|
+
"scripts": {
|
|
46
|
+
"build": "tsup src/index.ts src/raw.ts --format esm --dts --clean",
|
|
47
|
+
"dev": "tsup src/index.ts src/raw.ts --format esm --dts --watch"
|
|
48
|
+
}
|
|
49
|
+
}
|