@url-sanitize/clearurls 0.1.4 → 1.0.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/README.md CHANGED
@@ -32,6 +32,12 @@ tooling), use the secondary entrypoint:
32
32
  import { clearurlsRawData, clearurlsMetadata } from '@url-sanitize/clearurls/raw';
33
33
  ```
34
34
 
35
+ If you only need the adapter without importing the bundled snapshot, use:
36
+
37
+ ```ts
38
+ import { clearurlsToCatalog } from '@url-sanitize/clearurls/adapter';
39
+ ```
40
+
35
41
  ## License
36
42
 
37
43
  - `src/` (adapter, types) — **MIT**
@@ -0,0 +1,6 @@
1
+ import { SanitizerCatalog } from '@url-sanitize/core';
2
+ import { ClearUrlsData, ClearUrlsMetadata } from './types.js';
3
+
4
+ declare function clearurlsToCatalog(data: ClearUrlsData, meta: ClearUrlsMetadata): SanitizerCatalog;
5
+
6
+ export { clearurlsToCatalog };
@@ -0,0 +1,6 @@
1
+ import {
2
+ clearurlsToCatalog
3
+ } from "./chunk-43SRPR7A.js";
4
+ export {
5
+ clearurlsToCatalog
6
+ };
@@ -0,0 +1,79 @@
1
+ // src/adapter.ts
2
+ function clearurlsToCatalog(data, meta) {
3
+ const rules = [];
4
+ for (const [name, provider] of Object.entries(data.providers)) {
5
+ const exceptions = provider.exceptions ?? [];
6
+ if (provider.completeProvider) {
7
+ rules.push({
8
+ kind: "block-domain",
9
+ source: "clearurls",
10
+ provider: name,
11
+ urlPattern: provider.urlPattern,
12
+ exceptions
13
+ });
14
+ continue;
15
+ }
16
+ for (const pattern of provider.rawRules ?? []) {
17
+ rules.push({
18
+ kind: "raw-replace",
19
+ source: "clearurls",
20
+ provider: name,
21
+ urlPattern: provider.urlPattern,
22
+ pattern,
23
+ replacement: "",
24
+ exceptions
25
+ });
26
+ }
27
+ for (const pattern of provider.redirections ?? []) {
28
+ rules.push({
29
+ kind: "unwrap-redirect",
30
+ source: "clearurls",
31
+ provider: name,
32
+ urlPattern: provider.urlPattern,
33
+ pattern,
34
+ captureGroup: 1,
35
+ exceptions
36
+ });
37
+ }
38
+ for (const paramPattern of provider.rules ?? []) {
39
+ rules.push({
40
+ kind: "strip-param",
41
+ source: "clearurls",
42
+ provider: name,
43
+ urlPattern: provider.urlPattern,
44
+ paramPattern,
45
+ exceptions,
46
+ isReferralMarketing: false
47
+ });
48
+ }
49
+ for (const paramPattern of provider.referralMarketing ?? []) {
50
+ rules.push({
51
+ kind: "strip-param",
52
+ source: "clearurls",
53
+ provider: name,
54
+ urlPattern: provider.urlPattern,
55
+ paramPattern,
56
+ exceptions,
57
+ isReferralMarketing: true
58
+ });
59
+ }
60
+ }
61
+ return {
62
+ version: meta.version,
63
+ generatedAt: meta.fetchedAt,
64
+ sources: [
65
+ {
66
+ name: "clearurls",
67
+ version: meta.version,
68
+ hash: meta.hash,
69
+ license: "LGPL-3.0-only",
70
+ upstream: meta.upstream
71
+ }
72
+ ],
73
+ rules
74
+ };
75
+ }
76
+
77
+ export {
78
+ clearurlsToCatalog
79
+ };
package/dist/index.d.ts CHANGED
@@ -1,11 +1,10 @@
1
1
  import { SanitizerCatalog, Sanitizer } 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;
2
+ export { clearurlsToCatalog } from './adapter.js';
3
+ import { ClearUrlsMetadata } from './types.js';
4
+ export { ClearUrlsData, ClearUrlsProvider } from './types.js';
6
5
 
7
6
  declare const clearurlsCatalog: SanitizerCatalog;
8
7
  declare const clearurlsMetadata: ClearUrlsMetadata;
9
8
  declare const sanitize: Sanitizer;
10
9
 
11
- export { ClearUrlsData, ClearUrlsMetadata, clearurlsCatalog, clearurlsMetadata, clearurlsToCatalog, sanitize };
10
+ export { ClearUrlsMetadata, clearurlsCatalog, clearurlsMetadata, sanitize };
package/dist/index.js CHANGED
@@ -1,3 +1,6 @@
1
+ import {
2
+ clearurlsToCatalog
3
+ } from "./chunk-43SRPR7A.js";
1
4
  import {
2
5
  data_default,
3
6
  metadata_default
@@ -5,84 +8,6 @@ import {
5
8
 
6
9
  // src/index.ts
7
10
  import { compileSanitizer } from "@url-sanitize/core";
8
-
9
- // src/adapter.ts
10
- function clearurlsToCatalog(data, meta) {
11
- const rules = [];
12
- for (const [name, provider] of Object.entries(data.providers)) {
13
- const exceptions = provider.exceptions ?? [];
14
- if (provider.completeProvider) {
15
- rules.push({
16
- kind: "block-domain",
17
- source: "clearurls",
18
- provider: name,
19
- urlPattern: provider.urlPattern,
20
- exceptions
21
- });
22
- continue;
23
- }
24
- for (const pattern of provider.rawRules ?? []) {
25
- rules.push({
26
- kind: "raw-replace",
27
- source: "clearurls",
28
- provider: name,
29
- urlPattern: provider.urlPattern,
30
- pattern,
31
- replacement: "",
32
- exceptions
33
- });
34
- }
35
- for (const pattern of provider.redirections ?? []) {
36
- rules.push({
37
- kind: "unwrap-redirect",
38
- source: "clearurls",
39
- provider: name,
40
- urlPattern: provider.urlPattern,
41
- pattern,
42
- captureGroup: 1,
43
- exceptions
44
- });
45
- }
46
- for (const paramPattern of provider.rules ?? []) {
47
- rules.push({
48
- kind: "strip-param",
49
- source: "clearurls",
50
- provider: name,
51
- urlPattern: provider.urlPattern,
52
- paramPattern,
53
- exceptions,
54
- isReferralMarketing: false
55
- });
56
- }
57
- for (const paramPattern of provider.referralMarketing ?? []) {
58
- rules.push({
59
- kind: "strip-param",
60
- source: "clearurls",
61
- provider: name,
62
- urlPattern: provider.urlPattern,
63
- paramPattern,
64
- exceptions,
65
- isReferralMarketing: true
66
- });
67
- }
68
- }
69
- return {
70
- version: meta.version,
71
- generatedAt: meta.fetchedAt,
72
- sources: [
73
- {
74
- name: "clearurls",
75
- version: meta.version,
76
- hash: meta.hash,
77
- license: "LGPL-3.0-only",
78
- upstream: meta.upstream
79
- }
80
- ],
81
- rules
82
- };
83
- }
84
-
85
- // src/index.ts
86
11
  var clearurlsCatalog = clearurlsToCatalog(
87
12
  data_default,
88
13
  metadata_default
package/dist/raw.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { a as ClearUrlsMetadata, C as ClearUrlsData } from './types-DHX4A7iO.js';
1
+ import { ClearUrlsMetadata, ClearUrlsData } from './types.js';
2
2
 
3
3
  declare const clearurlsRawData: ClearUrlsData;
4
4
  declare const clearurlsMetadata: ClearUrlsMetadata;
@@ -18,4 +18,4 @@ interface ClearUrlsMetadata {
18
18
  upstream: string;
19
19
  }
20
20
 
21
- export type { ClearUrlsData as C, ClearUrlsMetadata as a, ClearUrlsProvider as b };
21
+ export type { ClearUrlsData, ClearUrlsMetadata, ClearUrlsProvider };
package/dist/types.js ADDED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@url-sanitize/clearurls",
3
- "version": "0.1.4",
3
+ "version": "1.0.0",
4
4
  "description": "ClearURLs-compatible rule catalog and adapter for @url-sanitize/core. Daily-synced from upstream.",
5
5
  "license": "LGPL-3.0-only",
6
6
  "type": "module",
@@ -12,9 +12,17 @@
12
12
  "types": "./dist/index.d.ts",
13
13
  "import": "./dist/index.js"
14
14
  },
15
+ "./adapter": {
16
+ "types": "./dist/adapter.d.ts",
17
+ "import": "./dist/adapter.js"
18
+ },
15
19
  "./raw": {
16
20
  "types": "./dist/raw.d.ts",
17
21
  "import": "./dist/raw.js"
22
+ },
23
+ "./types": {
24
+ "types": "./dist/types.d.ts",
25
+ "import": "./dist/types.js"
18
26
  }
19
27
  },
20
28
  "files": [
@@ -23,7 +31,7 @@
23
31
  "NOTICE"
24
32
  ],
25
33
  "dependencies": {
26
- "@url-sanitize/core": "0.1.4"
34
+ "@url-sanitize/core": "1.0.0"
27
35
  },
28
36
  "keywords": [
29
37
  "clearurls",
@@ -43,7 +51,7 @@
43
51
  },
44
52
  "sideEffects": false,
45
53
  "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"
54
+ "build": "tsup src/index.ts src/raw.ts src/adapter.ts src/types.ts --format esm --dts --clean",
55
+ "dev": "tsup src/index.ts src/raw.ts src/adapter.ts src/types.ts --format esm --dts --watch"
48
56
  }
49
57
  }