@xyo-network/url-safety-plugin 2.70.13 → 2.70.14
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/cjs/Witness/Witness.js +17 -1
- package/dist/cjs/Witness/Witness.js.map +1 -1
- package/dist/docs.json +1357 -1133
- package/dist/esm/Witness/Witness.js +15 -1
- package/dist/esm/Witness/Witness.js.map +1 -1
- package/dist/types/Witness/Witness.d.ts +2 -1
- package/dist/types/Witness/Witness.d.ts.map +1 -1
- package/package.json +9 -8
- package/src/Witness/Witness.ts +20 -2
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AxiosJson } from '@xyo-network/axios';
|
|
2
2
|
import { UrlSchema } from '@xyo-network/url-payload-plugin';
|
|
3
|
+
import { UrlSafetySchema } from '@xyo-network/url-safety-payload-plugin';
|
|
3
4
|
import { AbstractWitness } from '@xyo-network/witness';
|
|
4
5
|
import { UrlSafetyWitnessConfigSchema } from './Config';
|
|
5
6
|
export const GoogleSafeBrowsingMatchSchema = 'com.google.safebrowsing.match';
|
|
@@ -44,7 +45,20 @@ export class UrlSafetyWitness extends AbstractWitness {
|
|
|
44
45
|
.map((p) => {
|
|
45
46
|
return p.url;
|
|
46
47
|
});
|
|
47
|
-
|
|
48
|
+
const matches = await checkUrlSafety(urls, { key: this.key });
|
|
49
|
+
return urls.map((url) => {
|
|
50
|
+
const payload = matches.reduce((prev, match) => {
|
|
51
|
+
if (match.threat.url === url) {
|
|
52
|
+
prev.threatTypes = prev.threatTypes ?? [];
|
|
53
|
+
if (!prev.threatTypes.includes(match.threatEntryType)) {
|
|
54
|
+
prev.threatTypes.push(match.threatEntryType);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return prev;
|
|
58
|
+
}, { schema: UrlSafetySchema, url });
|
|
59
|
+
payload.threatTypes = payload.threatTypes?.sort();
|
|
60
|
+
return payload;
|
|
61
|
+
});
|
|
48
62
|
}
|
|
49
63
|
}
|
|
50
64
|
//# sourceMappingURL=Witness.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Witness.js","sourceRoot":"","sources":["../../../src/Witness/Witness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"Witness.js","sourceRoot":"","sources":["../../../src/Witness/Witness.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
2
2
|
import { UrlPayload } from '@xyo-network/url-payload-plugin';
|
|
3
|
+
import { UrlSafetyPayload } from '@xyo-network/url-safety-payload-plugin';
|
|
3
4
|
import { AbstractWitness } from '@xyo-network/witness';
|
|
4
5
|
import { UrlSafetyWitnessParams } from './Params';
|
|
5
6
|
export type GoogleSafeBrowsingMatchSchema = 'com.google.safebrowsing.match';
|
|
@@ -18,6 +19,6 @@ export declare class UrlSafetyWitness<TParams extends UrlSafetyWitnessParams = U
|
|
|
18
19
|
static configSchemas: "network.xyo.url.safety.witness.config"[];
|
|
19
20
|
get key(): string | undefined;
|
|
20
21
|
get urls(): string[] | undefined;
|
|
21
|
-
protected observeHandler(payloads?: UrlPayload[]): Promise<
|
|
22
|
+
protected observeHandler(payloads?: UrlPayload[]): Promise<UrlSafetyPayload[]>;
|
|
22
23
|
}
|
|
23
24
|
//# sourceMappingURL=Witness.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../../../src/Witness/Witness.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../../../src/Witness/Witness.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAa,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAwC,MAAM,wCAAwC,CAAA;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEjD,MAAM,MAAM,6BAA6B,GAAG,+BAA+B,CAAA;AAC3E,eAAO,MAAM,6BAA6B,EAAE,6BAA+D,CAAA;AAE3G,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;IACD,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,8BAA8B,GAAG,OAAO,CAAC,uBAAuB,EAAE,6BAA6B,CAAC,CAAA;AAuC5G,qBAAa,gBAAgB,CAAC,OAAO,SAAS,sBAAsB,GAAG,sBAAsB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC7H,OAAgB,aAAa,4CAAiC;IAE9D,IAAI,GAAG,uBAEN;IAED,IAAI,IAAI,yBAEP;cAEwB,cAAc,CAAC,QAAQ,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CA4BlG"}
|
package/package.json
CHANGED
|
@@ -10,13 +10,14 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xyo-network/axios": "~2.70.
|
|
14
|
-
"@xyo-network/
|
|
15
|
-
"@xyo-network/
|
|
16
|
-
"@xyo-network/
|
|
17
|
-
"@xyo-network/
|
|
18
|
-
"@xyo-network/url-
|
|
19
|
-
"@xyo-network/
|
|
13
|
+
"@xyo-network/axios": "~2.70.14",
|
|
14
|
+
"@xyo-network/core": "~2.70.14",
|
|
15
|
+
"@xyo-network/module": "~2.70.14",
|
|
16
|
+
"@xyo-network/payload-model": "~2.70.14",
|
|
17
|
+
"@xyo-network/payloadset-plugin": "~2.70.14",
|
|
18
|
+
"@xyo-network/url-payload-plugin": "~2.70.14",
|
|
19
|
+
"@xyo-network/url-safety-payload-plugin": "~2.70.14",
|
|
20
|
+
"@xyo-network/witness": "~2.70.14"
|
|
20
21
|
},
|
|
21
22
|
"devDependencies": {
|
|
22
23
|
"@xylabs/ts-scripts-yarn3": "^2.19.0",
|
|
@@ -56,5 +57,5 @@
|
|
|
56
57
|
},
|
|
57
58
|
"sideEffects": false,
|
|
58
59
|
"types": "dist/types/index.d.ts",
|
|
59
|
-
"version": "2.70.
|
|
60
|
+
"version": "2.70.14"
|
|
60
61
|
}
|
package/src/Witness/Witness.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AxiosJson } from '@xyo-network/axios'
|
|
2
2
|
import { Payload } from '@xyo-network/payload-model'
|
|
3
3
|
import { UrlPayload, UrlSchema } from '@xyo-network/url-payload-plugin'
|
|
4
|
+
import { UrlSafetyPayload, UrlSafetySchema, UrlSafetyThreatType } from '@xyo-network/url-safety-payload-plugin'
|
|
4
5
|
import { AbstractWitness } from '@xyo-network/witness'
|
|
5
6
|
|
|
6
7
|
import { UrlSafetyWitnessConfigSchema } from './Config'
|
|
@@ -69,7 +70,7 @@ export class UrlSafetyWitness<TParams extends UrlSafetyWitnessParams = UrlSafety
|
|
|
69
70
|
return this.config?.urls
|
|
70
71
|
}
|
|
71
72
|
|
|
72
|
-
protected override async observeHandler(payloads: UrlPayload[] = []): Promise<
|
|
73
|
+
protected override async observeHandler(payloads: UrlPayload[] = []): Promise<UrlSafetyPayload[]> {
|
|
73
74
|
const urls: string[] =
|
|
74
75
|
this.urls ??
|
|
75
76
|
payloads
|
|
@@ -78,6 +79,23 @@ export class UrlSafetyWitness<TParams extends UrlSafetyWitnessParams = UrlSafety
|
|
|
78
79
|
return p.url
|
|
79
80
|
})
|
|
80
81
|
|
|
81
|
-
|
|
82
|
+
const matches = await checkUrlSafety(urls, { key: this.key })
|
|
83
|
+
|
|
84
|
+
return urls.map((url) => {
|
|
85
|
+
const payload = matches.reduce<UrlSafetyPayload>(
|
|
86
|
+
(prev, match) => {
|
|
87
|
+
if (match.threat.url === url) {
|
|
88
|
+
prev.threatTypes = prev.threatTypes ?? []
|
|
89
|
+
if (!prev.threatTypes.includes(match.threatEntryType as UrlSafetyThreatType)) {
|
|
90
|
+
prev.threatTypes.push(match.threatEntryType as UrlSafetyThreatType)
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return prev
|
|
94
|
+
},
|
|
95
|
+
{ schema: UrlSafetySchema, url },
|
|
96
|
+
)
|
|
97
|
+
payload.threatTypes = payload.threatTypes?.sort()
|
|
98
|
+
return payload
|
|
99
|
+
})
|
|
82
100
|
}
|
|
83
101
|
}
|