@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.
@@ -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
@@ -0,0 +1,6 @@
1
+ import { a as ClearUrlsMetadata, C as ClearUrlsData } from './types-DHX4A7iO.js';
2
+
3
+ declare const clearurlsRawData: ClearUrlsData;
4
+ declare const clearurlsMetadata: ClearUrlsMetadata;
5
+
6
+ export { clearurlsMetadata, clearurlsRawData };
package/dist/raw.js ADDED
@@ -0,0 +1,12 @@
1
+ import {
2
+ data_default,
3
+ metadata_default
4
+ } from "./chunk-TAQSU2JX.js";
5
+
6
+ // src/raw.ts
7
+ var clearurlsRawData = data_default;
8
+ var clearurlsMetadata = metadata_default;
9
+ export {
10
+ clearurlsMetadata,
11
+ clearurlsRawData
12
+ };
@@ -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
+ }