@xyo-network/url-plugin 2.73.4 → 2.74.1

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.
Files changed (49) hide show
  1. package/dist/Plugin.d.mts +55 -0
  2. package/dist/Plugin.d.mts.map +1 -0
  3. package/dist/Plugin.d.ts +55 -0
  4. package/dist/Plugin.d.ts.map +1 -0
  5. package/dist/Witness/Config.d.mts +8 -0
  6. package/dist/Witness/Config.d.mts.map +1 -0
  7. package/dist/Witness/Config.d.ts +8 -0
  8. package/dist/Witness/Config.d.ts.map +1 -0
  9. package/dist/Witness/Params.d.mts +5 -0
  10. package/dist/Witness/Params.d.mts.map +1 -0
  11. package/dist/Witness/Params.d.ts +5 -0
  12. package/dist/Witness/Params.d.ts.map +1 -0
  13. package/dist/Witness/Witness.d.mts +9 -0
  14. package/dist/Witness/Witness.d.mts.map +1 -0
  15. package/dist/Witness/Witness.d.ts +9 -0
  16. package/dist/Witness/Witness.d.ts.map +1 -0
  17. package/dist/Witness/index.d.mts +4 -0
  18. package/dist/Witness/index.d.mts.map +1 -0
  19. package/dist/Witness/index.d.ts +4 -0
  20. package/dist/Witness/index.d.ts.map +1 -0
  21. package/dist/docs.json +7533 -8213
  22. package/dist/index.d.mts +5 -80
  23. package/dist/index.d.mts.map +1 -0
  24. package/dist/index.d.ts +5 -80
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +4 -3
  27. package/dist/index.js.map +1 -1
  28. package/dist/index.mjs +5 -4
  29. package/dist/index.mjs.map +1 -1
  30. package/dist/util/hashFile.d.mts +2 -0
  31. package/dist/util/hashFile.d.mts.map +1 -0
  32. package/dist/util/hashFile.d.ts +2 -0
  33. package/dist/util/hashFile.d.ts.map +1 -0
  34. package/dist/util/hashHttpUrl.d.mts +2 -0
  35. package/dist/util/hashHttpUrl.d.mts.map +1 -0
  36. package/dist/util/hashHttpUrl.d.ts +2 -0
  37. package/dist/util/hashHttpUrl.d.ts.map +1 -0
  38. package/dist/util/hashUrl.d.mts +2 -0
  39. package/dist/util/hashUrl.d.mts.map +1 -0
  40. package/dist/util/hashUrl.d.ts +2 -0
  41. package/dist/util/hashUrl.d.ts.map +1 -0
  42. package/dist/util/index.d.mts +2 -0
  43. package/dist/util/index.d.mts.map +1 -0
  44. package/dist/util/index.d.ts +2 -0
  45. package/dist/util/index.d.ts.map +1 -0
  46. package/package.json +8 -14
  47. package/src/util/hashFile.ts +2 -2
  48. package/src/util/hashHttpUrl.ts +2 -2
  49. package/tsup.config.ts +0 -16
package/dist/index.d.mts CHANGED
@@ -1,80 +1,5 @@
1
- import * as _xyo_network_payloadset_plugin from '@xyo-network/payloadset-plugin';
2
- import * as _xyo_network_wallet_model from '@xyo-network/wallet-model';
3
- import * as _xyo_network_module_model from '@xyo-network/module-model';
4
- import * as _xyo_network_payload_model from '@xyo-network/payload-model';
5
- import { Payload } from '@xyo-network/payload-model';
6
- import * as _xyo_network_account_model from '@xyo-network/account-model';
7
- import * as _xyo_network_core from '@xyo-network/core';
8
- import { WitnessConfig, WitnessParams, AbstractWitness } from '@xyo-network/witness';
9
- import { AnyConfigSchema } from '@xyo-network/module';
10
-
11
- declare const UrlWitnessConfigSchema: "network.xyo.url.witness.config";
12
- type UrlWitnessConfigSchema = typeof UrlWitnessConfigSchema;
13
- type UrlWitnessConfig = WitnessConfig<{
14
- schema: UrlWitnessConfigSchema;
15
- urls?: string[];
16
- }>;
17
-
18
- type UrlWitnessParams = WitnessParams<AnyConfigSchema<UrlWitnessConfig>>;
19
-
20
- declare class UrlWitness<TParams extends UrlWitnessParams = UrlWitnessParams> extends AbstractWitness<TParams> {
21
- static configSchemas: "network.xyo.url.witness.config"[];
22
- get urls(): string[] | undefined;
23
- protected observeHandler(payloads?: Payload[]): Promise<Payload[]>;
24
- }
25
-
26
- declare const UrlPlugin: () => _xyo_network_payloadset_plugin.PayloadSetWitnessPlugin<UrlWitness<_xyo_network_core.BaseParamsFields & {
27
- account?: _xyo_network_account_model.AccountInstance | "random" | undefined;
28
- config: _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & {
29
- accountDerivationPath?: string | undefined;
30
- readonly archivist?: _xyo_network_module_model.ArchivistModuleConfig | undefined;
31
- readonly name?: string | undefined;
32
- readonly paging?: Record<string, {
33
- size?: number | undefined;
34
- }> | undefined;
35
- readonly schema: string;
36
- readonly security?: {
37
- readonly allowAnonymous?: boolean | undefined;
38
- readonly allowed?: Record<string, (string | _xyo_network_module_model.CosigningAddressSet)[]> | undefined;
39
- readonly disallowed?: Record<string, string[]> | undefined;
40
- } | undefined;
41
- readonly sign?: boolean | undefined;
42
- readonly storeQueries?: boolean | undefined;
43
- readonly timestamp?: boolean | undefined;
44
- } & Omit<Omit<_xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & {
45
- accountDerivationPath?: string | undefined;
46
- readonly archivist?: _xyo_network_module_model.ArchivistModuleConfig | undefined;
47
- readonly name?: string | undefined;
48
- readonly paging?: Record<string, {
49
- size?: number | undefined;
50
- }> | undefined;
51
- readonly schema: "network.xyo.url.witness.config";
52
- readonly security?: {
53
- readonly allowAnonymous?: boolean | undefined;
54
- readonly allowed?: Record<string, (string | _xyo_network_module_model.CosigningAddressSet)[]> | undefined;
55
- readonly disallowed?: Record<string, string[]> | undefined;
56
- } | undefined;
57
- readonly sign?: boolean | undefined;
58
- readonly storeQueries?: boolean | undefined;
59
- readonly timestamp?: boolean | undefined;
60
- } & Omit<{
61
- archivist?: string | undefined;
62
- schema: "network.xyo.url.witness.config";
63
- targetSet?: (_xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & _xyo_network_payload_model.PayloadSet & {
64
- schema: "network.xyo.payload.set";
65
- }) | undefined;
66
- } & {
67
- schema: "network.xyo.url.witness.config";
68
- urls?: string[] | undefined;
69
- }, "schema"> & {
70
- schema: "network.xyo.url.witness.config";
71
- }, "schema"> & {
72
- schema: string;
73
- }, "schema"> & {
74
- schema: string;
75
- };
76
- ephemeralQueryAccountEnabled?: boolean | undefined;
77
- wallet?: _xyo_network_wallet_model.WalletInstance | undefined;
78
- }>>;
79
-
80
- export { UrlPlugin, UrlWitness, UrlWitnessConfig, UrlWitnessConfigSchema, UrlWitnessParams, UrlPlugin as default };
1
+ import { UrlPlugin } from './Plugin';
2
+ export * from './Witness';
3
+ export { UrlPlugin };
4
+ export default UrlPlugin;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,CAAA;AAGpB,eAAe,SAAS,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,80 +1,5 @@
1
- import * as _xyo_network_payloadset_plugin from '@xyo-network/payloadset-plugin';
2
- import * as _xyo_network_wallet_model from '@xyo-network/wallet-model';
3
- import * as _xyo_network_module_model from '@xyo-network/module-model';
4
- import * as _xyo_network_payload_model from '@xyo-network/payload-model';
5
- import { Payload } from '@xyo-network/payload-model';
6
- import * as _xyo_network_account_model from '@xyo-network/account-model';
7
- import * as _xyo_network_core from '@xyo-network/core';
8
- import { WitnessConfig, WitnessParams, AbstractWitness } from '@xyo-network/witness';
9
- import { AnyConfigSchema } from '@xyo-network/module';
10
-
11
- declare const UrlWitnessConfigSchema: "network.xyo.url.witness.config";
12
- type UrlWitnessConfigSchema = typeof UrlWitnessConfigSchema;
13
- type UrlWitnessConfig = WitnessConfig<{
14
- schema: UrlWitnessConfigSchema;
15
- urls?: string[];
16
- }>;
17
-
18
- type UrlWitnessParams = WitnessParams<AnyConfigSchema<UrlWitnessConfig>>;
19
-
20
- declare class UrlWitness<TParams extends UrlWitnessParams = UrlWitnessParams> extends AbstractWitness<TParams> {
21
- static configSchemas: "network.xyo.url.witness.config"[];
22
- get urls(): string[] | undefined;
23
- protected observeHandler(payloads?: Payload[]): Promise<Payload[]>;
24
- }
25
-
26
- declare const UrlPlugin: () => _xyo_network_payloadset_plugin.PayloadSetWitnessPlugin<UrlWitness<_xyo_network_core.BaseParamsFields & {
27
- account?: _xyo_network_account_model.AccountInstance | "random" | undefined;
28
- config: _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & {
29
- accountDerivationPath?: string | undefined;
30
- readonly archivist?: _xyo_network_module_model.ArchivistModuleConfig | undefined;
31
- readonly name?: string | undefined;
32
- readonly paging?: Record<string, {
33
- size?: number | undefined;
34
- }> | undefined;
35
- readonly schema: string;
36
- readonly security?: {
37
- readonly allowAnonymous?: boolean | undefined;
38
- readonly allowed?: Record<string, (string | _xyo_network_module_model.CosigningAddressSet)[]> | undefined;
39
- readonly disallowed?: Record<string, string[]> | undefined;
40
- } | undefined;
41
- readonly sign?: boolean | undefined;
42
- readonly storeQueries?: boolean | undefined;
43
- readonly timestamp?: boolean | undefined;
44
- } & Omit<Omit<_xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & {
45
- accountDerivationPath?: string | undefined;
46
- readonly archivist?: _xyo_network_module_model.ArchivistModuleConfig | undefined;
47
- readonly name?: string | undefined;
48
- readonly paging?: Record<string, {
49
- size?: number | undefined;
50
- }> | undefined;
51
- readonly schema: "network.xyo.url.witness.config";
52
- readonly security?: {
53
- readonly allowAnonymous?: boolean | undefined;
54
- readonly allowed?: Record<string, (string | _xyo_network_module_model.CosigningAddressSet)[]> | undefined;
55
- readonly disallowed?: Record<string, string[]> | undefined;
56
- } | undefined;
57
- readonly sign?: boolean | undefined;
58
- readonly storeQueries?: boolean | undefined;
59
- readonly timestamp?: boolean | undefined;
60
- } & Omit<{
61
- archivist?: string | undefined;
62
- schema: "network.xyo.url.witness.config";
63
- targetSet?: (_xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & _xyo_network_payload_model.PayloadSet & {
64
- schema: "network.xyo.payload.set";
65
- }) | undefined;
66
- } & {
67
- schema: "network.xyo.url.witness.config";
68
- urls?: string[] | undefined;
69
- }, "schema"> & {
70
- schema: "network.xyo.url.witness.config";
71
- }, "schema"> & {
72
- schema: string;
73
- }, "schema"> & {
74
- schema: string;
75
- };
76
- ephemeralQueryAccountEnabled?: boolean | undefined;
77
- wallet?: _xyo_network_wallet_model.WalletInstance | undefined;
78
- }>>;
79
-
80
- export { UrlPlugin, UrlWitness, UrlWitnessConfig, UrlWitnessConfigSchema, UrlWitnessParams, UrlPlugin as default };
1
+ import { UrlPlugin } from './Plugin';
2
+ export * from './Witness';
3
+ export { UrlPlugin };
4
+ export default UrlPlugin;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,CAAA;AAGpB,eAAe,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -50,8 +50,10 @@ var UrlWitnessConfigSchema = `${import_url_payload_plugin.UrlSchema}.witness.con
50
50
  var import_url_payload_plugin2 = require("@xyo-network/url-payload-plugin");
51
51
  var import_witness = require("@xyo-network/witness");
52
52
 
53
+ // ../../../../../../node_modules/@xylabs/crypto/dist/nodeIndex.mjs
54
+ var import_crypto = __toESM(require("crypto"), 1);
55
+
53
56
  // src/util/hashFile.ts
54
- var import_crypto = __toESM(require("crypto"));
55
57
  var import_fs = require("fs");
56
58
  var import_url = require("url");
57
59
  var hashFile = (url) => {
@@ -73,12 +75,11 @@ var hashFile = (url) => {
73
75
  };
74
76
 
75
77
  // src/util/hashHttpUrl.ts
76
- var import_crypto2 = __toESM(require("crypto"));
77
78
  var import_http = __toESM(require("http"));
78
79
  var import_https = __toESM(require("https"));
79
80
  var hashHttpUrl = (url) => {
80
81
  const ret = new Promise((resolve, reject) => {
81
- const hash = import_crypto2.default.createHash("sha256");
82
+ const hash = import_crypto.default.createHash("sha256");
82
83
  const lib = url.startsWith("https") ? import_https.default : import_http.default;
83
84
  lib.get(url, (res) => {
84
85
  res.on("data", (data) => {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/Plugin.ts","../src/Witness/Config.ts","../src/Witness/Witness.ts","../src/util/hashFile.ts","../src/util/hashHttpUrl.ts","../src/util/hashUrl.ts"],"sourcesContent":["import { UrlPlugin } from './Plugin'\n\nexport * from './Witness'\n\nexport { UrlPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default UrlPlugin\n","import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UrlSchema } from '@xyo-network/url-payload-plugin'\n\nimport { UrlWitness } from './Witness'\n\nexport const UrlPlugin = () =>\n createPayloadSetWitnessPlugin<UrlWitness>(\n { required: { [UrlSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UrlWitness.create(params)\n return result\n },\n },\n )\n","import { UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { WitnessConfig } from '@xyo-network/witness'\n\nexport const UrlWitnessConfigSchema = `${UrlSchema}.witness.config` as const\nexport type UrlWitnessConfigSchema = typeof UrlWitnessConfigSchema\n\nexport type UrlWitnessConfig = WitnessConfig<{\n schema: UrlWitnessConfigSchema\n urls?: string[]\n}>\n","import { Payload } from '@xyo-network/payload-model'\nimport { UrlPayload, UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { AbstractWitness } from '@xyo-network/witness'\n\nimport { hashUrl } from '../util'\nimport { UrlWitnessConfigSchema } from './Config'\nimport { UrlWitnessParams } from './Params'\n\nexport class UrlWitness<TParams extends UrlWitnessParams = UrlWitnessParams> extends AbstractWitness<TParams> {\n static override configSchemas = [UrlWitnessConfigSchema]\n\n get urls() {\n return this.config?.urls\n }\n\n protected override async observeHandler(payloads: Payload[] = []): Promise<Payload[]> {\n const urls: UrlPayload[] =\n this.urls?.map((url) => ({ schema: UrlSchema, url })) ??\n payloads\n .filter((p): p is UrlPayload => p.schema === UrlSchema)\n .map((p) => {\n return { schema: UrlSchema, url: p.url }\n })\n const hashed = await Promise.all(\n urls.map(async (url) => {\n // TODO: Different schema for hashed url\n return { ...url, hash: await hashUrl(url.url) }\n }),\n )\n // TODO: Handle partial success\n return hashed\n }\n}\n","import crypto from 'crypto'\nimport { createReadStream } from 'fs'\nimport { fileURLToPath } from 'url'\n\nexport const hashFile = (url: string): Promise<string> => {\n const path = url.startsWith('file://') ? fileURLToPath(url) : url\n const ret = new Promise<string>((resolve, reject) => {\n const hash = crypto.createHash('sha256')\n const stream = createReadStream(path)\n stream.on('data', (data) => {\n hash.update(data)\n })\n stream.on('end', () => {\n resolve(hash.digest('hex'))\n })\n stream.on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import crypto from 'crypto'\nimport http from 'http'\nimport https from 'https'\n\nexport const hashHttpUrl = (url: string): Promise<string> => {\n const ret = new Promise<string>((resolve, reject) => {\n const hash = crypto.createHash('sha256')\n const lib = url.startsWith('https') ? https : http\n lib\n .get(url, (res) => {\n res.on('data', (data) => {\n hash.update(data)\n })\n res.on('end', () => {\n resolve(hash.digest('hex'))\n })\n })\n .on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import { hashFile } from './hashFile'\nimport { hashHttpUrl } from './hashHttpUrl'\n\nexport const hashUrl = (url: string): Promise<string> => {\n const scheme = url.split('://')[0]?.toLowerCase()\n switch (scheme) {\n case 'file':\n return hashFile(url)\n case 'http':\n case 'https':\n return hashHttpUrl(url)\n default:\n throw new Error(`Unsupported URL scheme: ${scheme}`)\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,2BAAiC;AACjC,+BAA8C;AAC9C,IAAAA,6BAA0B;;;ACF1B,gCAA0B;AAGnB,IAAM,yBAAyB,GAAG,mCAAS;;;ACFlD,IAAAC,6BAAsC;AACtC,qBAAgC;;;ACFhC,oBAAmB;AACnB,gBAAiC;AACjC,iBAA8B;AAEvB,IAAM,WAAW,CAAC,QAAiC;AACxD,QAAM,OAAO,IAAI,WAAW,SAAS,QAAI,0BAAc,GAAG,IAAI;AAC9D,QAAM,MAAM,IAAI,QAAgB,CAAC,SAAS,WAAW;AACnD,UAAM,OAAO,cAAAC,QAAO,WAAW,QAAQ;AACvC,UAAM,aAAS,4BAAiB,IAAI;AACpC,WAAO,GAAG,QAAQ,CAAC,SAAS;AAC1B,WAAK,OAAO,IAAI;AAAA,IAClB,CAAC;AACD,WAAO,GAAG,OAAO,MAAM;AACrB,cAAQ,KAAK,OAAO,KAAK,CAAC;AAAA,IAC5B,CAAC;AACD,WAAO,GAAG,SAAS,CAAC,QAAQ;AAC1B,aAAO,GAAG;AAAA,IACZ,CAAC;AAAA,EACH,CAAC;AACD,SAAO;AACT;;;ACpBA,IAAAC,iBAAmB;AACnB,kBAAiB;AACjB,mBAAkB;AAEX,IAAM,cAAc,CAAC,QAAiC;AAC3D,QAAM,MAAM,IAAI,QAAgB,CAAC,SAAS,WAAW;AACnD,UAAM,OAAO,eAAAC,QAAO,WAAW,QAAQ;AACvC,UAAM,MAAM,IAAI,WAAW,OAAO,IAAI,aAAAC,UAAQ,YAAAC;AAC9C,QACG,IAAI,KAAK,CAAC,QAAQ;AACjB,UAAI,GAAG,QAAQ,CAAC,SAAS;AACvB,aAAK,OAAO,IAAI;AAAA,MAClB,CAAC;AACD,UAAI,GAAG,OAAO,MAAM;AAClB,gBAAQ,KAAK,OAAO,KAAK,CAAC;AAAA,MAC5B,CAAC;AAAA,IACH,CAAC,EACA,GAAG,SAAS,CAAC,QAAQ;AACpB,aAAO,GAAG;AAAA,IACZ,CAAC;AAAA,EACL,CAAC;AACD,SAAO;AACT;;;ACnBO,IAAM,UAAU,CAAC,QAAiC;AACvD,QAAM,SAAS,IAAI,MAAM,KAAK,EAAE,CAAC,GAAG,YAAY;AAChD,UAAQ,QAAQ;AAAA,IACd,KAAK;AACH,aAAO,SAAS,GAAG;AAAA,IACrB,KAAK;AAAA,IACL,KAAK;AACH,aAAO,YAAY,GAAG;AAAA,IACxB;AACE,YAAM,IAAI,MAAM,2BAA2B,MAAM,EAAE;AAAA,EACvD;AACF;;;AHNO,IAAM,aAAN,cAA8E,+BAAyB;AAAA,EAC5G,OAAgB,gBAAgB,CAAC,sBAAsB;AAAA,EAEvD,IAAI,OAAO;AACT,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEA,MAAyB,eAAe,WAAsB,CAAC,GAAuB;AACpF,UAAM,OACJ,KAAK,MAAM,IAAI,CAAC,SAAS,EAAE,QAAQ,sCAAW,IAAI,EAAE,KACpD,SACG,OAAO,CAAC,MAAuB,EAAE,WAAW,oCAAS,EACrD,IAAI,CAAC,MAAM;AACV,aAAO,EAAE,QAAQ,sCAAW,KAAK,EAAE,IAAI;AAAA,IACzC,CAAC;AACL,UAAM,SAAS,MAAM,QAAQ;AAAA,MAC3B,KAAK,IAAI,OAAO,QAAQ;AAEtB,eAAO,EAAE,GAAG,KAAK,MAAM,MAAM,QAAQ,IAAI,GAAG,EAAE;AAAA,MAChD,CAAC;AAAA,IACH;AAEA,WAAO;AAAA,EACT;AACF;;;AF1BO,IAAM,YAAY,UACvB;AAAA,EACE,EAAE,UAAU,EAAE,CAAC,oCAAS,GAAG,EAAE,GAAG,QAAQ,sCAAiB;AAAA,EACzD;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,YAAM,SAAS,MAAM,WAAW,OAAO,MAAM;AAC7C,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;ADRF,IAAO,cAAQ;","names":["import_url_payload_plugin","import_url_payload_plugin","crypto","import_crypto","crypto","https","http"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/Plugin.ts","../src/Witness/Config.ts","../src/Witness/Witness.ts","../../../../../../../node_modules/@xylabs/crypto/src/node/Crypto.ts","../../../../../../../node_modules/@xylabs/crypto/src/node/cryptoPolyfill.ts","../src/util/hashFile.ts","../src/util/hashHttpUrl.ts","../src/util/hashUrl.ts"],"sourcesContent":["import { UrlPlugin } from './Plugin'\n\nexport * from './Witness'\n\nexport { UrlPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default UrlPlugin\n","import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UrlSchema } from '@xyo-network/url-payload-plugin'\n\nimport { UrlWitness } from './Witness'\n\nexport const UrlPlugin = () =>\n createPayloadSetWitnessPlugin<UrlWitness>(\n { required: { [UrlSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UrlWitness.create(params)\n return result\n },\n },\n )\n","import { UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { WitnessConfig } from '@xyo-network/witness'\n\nexport const UrlWitnessConfigSchema = `${UrlSchema}.witness.config` as const\nexport type UrlWitnessConfigSchema = typeof UrlWitnessConfigSchema\n\nexport type UrlWitnessConfig = WitnessConfig<{\n schema: UrlWitnessConfigSchema\n urls?: string[]\n}>\n","import { Payload } from '@xyo-network/payload-model'\nimport { UrlPayload, UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { AbstractWitness } from '@xyo-network/witness'\n\nimport { hashUrl } from '../util'\nimport { UrlWitnessConfigSchema } from './Config'\nimport { UrlWitnessParams } from './Params'\n\nexport class UrlWitness<TParams extends UrlWitnessParams = UrlWitnessParams> extends AbstractWitness<TParams> {\n static override configSchemas = [UrlWitnessConfigSchema]\n\n get urls() {\n return this.config?.urls\n }\n\n protected override async observeHandler(payloads: Payload[] = []): Promise<Payload[]> {\n const urls: UrlPayload[] =\n this.urls?.map((url) => ({ schema: UrlSchema, url })) ??\n payloads\n .filter((p): p is UrlPayload => p.schema === UrlSchema)\n .map((p) => {\n return { schema: UrlSchema, url: p.url }\n })\n const hashed = await Promise.all(\n urls.map(async (url) => {\n // TODO: Different schema for hashed url\n return { ...url, hash: await hashUrl(url.url) }\n }),\n )\n // TODO: Handle partial success\n return hashed\n }\n}\n","import NodeCrypto from 'crypto'\n// eslint-disable-next-line import/no-default-export\nexport { NodeCrypto }\n","export const cryptoPolyfillNode = () => {\n return\n}\n","import { Crypto } from '@xylabs/crypto'\nimport { createReadStream } from 'fs'\nimport { fileURLToPath } from 'url'\n\nexport const hashFile = (url: string): Promise<string> => {\n const path = url.startsWith('file://') ? fileURLToPath(url) : url\n const ret = new Promise<string>((resolve, reject) => {\n const hash = Crypto.createHash('sha256')\n const stream = createReadStream(path)\n stream.on('data', (data) => {\n hash.update(data)\n })\n stream.on('end', () => {\n resolve(hash.digest('hex'))\n })\n stream.on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import { Crypto } from '@xylabs/crypto'\nimport http from 'http'\nimport https from 'https'\n\nexport const hashHttpUrl = (url: string): Promise<string> => {\n const ret = new Promise<string>((resolve, reject) => {\n const hash = Crypto.createHash('sha256')\n const lib = url.startsWith('https') ? https : http\n lib\n .get(url, (res) => {\n res.on('data', (data) => {\n hash.update(data)\n })\n res.on('end', () => {\n resolve(hash.digest('hex'))\n })\n })\n .on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import { hashFile } from './hashFile'\nimport { hashHttpUrl } from './hashHttpUrl'\n\nexport const hashUrl = (url: string): Promise<string> => {\n const scheme = url.split('://')[0]?.toLowerCase()\n switch (scheme) {\n case 'file':\n return hashFile(url)\n case 'http':\n case 'https':\n return hashHttpUrl(url)\n default:\n throw new Error(`Unsupported URL scheme: ${scheme}`)\n }\n}\n"],"mappings":"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","names":["import_url_payload_plugin","import_url_payload_plugin","NodeCrypto","NodeCrypto","https","http"]}
package/dist/index.mjs CHANGED
@@ -11,14 +11,16 @@ var UrlWitnessConfigSchema = `${UrlSchema}.witness.config`;
11
11
  import { UrlSchema as UrlSchema2 } from "@xyo-network/url-payload-plugin";
12
12
  import { AbstractWitness } from "@xyo-network/witness";
13
13
 
14
+ // ../../../../../../node_modules/@xylabs/crypto/dist/nodeIndex.mjs
15
+ import NodeCrypto from "crypto";
16
+
14
17
  // src/util/hashFile.ts
15
- import crypto from "crypto";
16
18
  import { createReadStream } from "fs";
17
19
  import { fileURLToPath } from "url";
18
20
  var hashFile = (url) => {
19
21
  const path = url.startsWith("file://") ? fileURLToPath(url) : url;
20
22
  const ret = new Promise((resolve, reject) => {
21
- const hash = crypto.createHash("sha256");
23
+ const hash = NodeCrypto.createHash("sha256");
22
24
  const stream = createReadStream(path);
23
25
  stream.on("data", (data) => {
24
26
  hash.update(data);
@@ -34,12 +36,11 @@ var hashFile = (url) => {
34
36
  };
35
37
 
36
38
  // src/util/hashHttpUrl.ts
37
- import crypto2 from "crypto";
38
39
  import http from "http";
39
40
  import https from "https";
40
41
  var hashHttpUrl = (url) => {
41
42
  const ret = new Promise((resolve, reject) => {
42
- const hash = crypto2.createHash("sha256");
43
+ const hash = NodeCrypto.createHash("sha256");
43
44
  const lib = url.startsWith("https") ? https : http;
44
45
  lib.get(url, (res) => {
45
46
  res.on("data", (data) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Plugin.ts","../src/Witness/Config.ts","../src/Witness/Witness.ts","../src/util/hashFile.ts","../src/util/hashHttpUrl.ts","../src/util/hashUrl.ts","../src/index.ts"],"sourcesContent":["import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UrlSchema } from '@xyo-network/url-payload-plugin'\n\nimport { UrlWitness } from './Witness'\n\nexport const UrlPlugin = () =>\n createPayloadSetWitnessPlugin<UrlWitness>(\n { required: { [UrlSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UrlWitness.create(params)\n return result\n },\n },\n )\n","import { UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { WitnessConfig } from '@xyo-network/witness'\n\nexport const UrlWitnessConfigSchema = `${UrlSchema}.witness.config` as const\nexport type UrlWitnessConfigSchema = typeof UrlWitnessConfigSchema\n\nexport type UrlWitnessConfig = WitnessConfig<{\n schema: UrlWitnessConfigSchema\n urls?: string[]\n}>\n","import { Payload } from '@xyo-network/payload-model'\nimport { UrlPayload, UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { AbstractWitness } from '@xyo-network/witness'\n\nimport { hashUrl } from '../util'\nimport { UrlWitnessConfigSchema } from './Config'\nimport { UrlWitnessParams } from './Params'\n\nexport class UrlWitness<TParams extends UrlWitnessParams = UrlWitnessParams> extends AbstractWitness<TParams> {\n static override configSchemas = [UrlWitnessConfigSchema]\n\n get urls() {\n return this.config?.urls\n }\n\n protected override async observeHandler(payloads: Payload[] = []): Promise<Payload[]> {\n const urls: UrlPayload[] =\n this.urls?.map((url) => ({ schema: UrlSchema, url })) ??\n payloads\n .filter((p): p is UrlPayload => p.schema === UrlSchema)\n .map((p) => {\n return { schema: UrlSchema, url: p.url }\n })\n const hashed = await Promise.all(\n urls.map(async (url) => {\n // TODO: Different schema for hashed url\n return { ...url, hash: await hashUrl(url.url) }\n }),\n )\n // TODO: Handle partial success\n return hashed\n }\n}\n","import crypto from 'crypto'\nimport { createReadStream } from 'fs'\nimport { fileURLToPath } from 'url'\n\nexport const hashFile = (url: string): Promise<string> => {\n const path = url.startsWith('file://') ? fileURLToPath(url) : url\n const ret = new Promise<string>((resolve, reject) => {\n const hash = crypto.createHash('sha256')\n const stream = createReadStream(path)\n stream.on('data', (data) => {\n hash.update(data)\n })\n stream.on('end', () => {\n resolve(hash.digest('hex'))\n })\n stream.on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import crypto from 'crypto'\nimport http from 'http'\nimport https from 'https'\n\nexport const hashHttpUrl = (url: string): Promise<string> => {\n const ret = new Promise<string>((resolve, reject) => {\n const hash = crypto.createHash('sha256')\n const lib = url.startsWith('https') ? https : http\n lib\n .get(url, (res) => {\n res.on('data', (data) => {\n hash.update(data)\n })\n res.on('end', () => {\n resolve(hash.digest('hex'))\n })\n })\n .on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import { hashFile } from './hashFile'\nimport { hashHttpUrl } from './hashHttpUrl'\n\nexport const hashUrl = (url: string): Promise<string> => {\n const scheme = url.split('://')[0]?.toLowerCase()\n switch (scheme) {\n case 'file':\n return hashFile(url)\n case 'http':\n case 'https':\n return hashHttpUrl(url)\n default:\n throw new Error(`Unsupported URL scheme: ${scheme}`)\n }\n}\n","import { UrlPlugin } from './Plugin'\n\nexport * from './Witness'\n\nexport { UrlPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default UrlPlugin\n"],"mappings":"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","names":["UrlSchema","UrlSchema","crypto","UrlSchema","UrlSchema"]}
1
+ {"version":3,"sources":["../src/Plugin.ts","../src/Witness/Config.ts","../src/Witness/Witness.ts","../../../../../../../node_modules/@xylabs/crypto/src/node/Crypto.ts","../../../../../../../node_modules/@xylabs/crypto/src/node/cryptoPolyfill.ts","../src/util/hashFile.ts","../src/util/hashHttpUrl.ts","../src/util/hashUrl.ts","../src/index.ts"],"sourcesContent":["import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UrlSchema } from '@xyo-network/url-payload-plugin'\n\nimport { UrlWitness } from './Witness'\n\nexport const UrlPlugin = () =>\n createPayloadSetWitnessPlugin<UrlWitness>(\n { required: { [UrlSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UrlWitness.create(params)\n return result\n },\n },\n )\n","import { UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { WitnessConfig } from '@xyo-network/witness'\n\nexport const UrlWitnessConfigSchema = `${UrlSchema}.witness.config` as const\nexport type UrlWitnessConfigSchema = typeof UrlWitnessConfigSchema\n\nexport type UrlWitnessConfig = WitnessConfig<{\n schema: UrlWitnessConfigSchema\n urls?: string[]\n}>\n","import { Payload } from '@xyo-network/payload-model'\nimport { UrlPayload, UrlSchema } from '@xyo-network/url-payload-plugin'\nimport { AbstractWitness } from '@xyo-network/witness'\n\nimport { hashUrl } from '../util'\nimport { UrlWitnessConfigSchema } from './Config'\nimport { UrlWitnessParams } from './Params'\n\nexport class UrlWitness<TParams extends UrlWitnessParams = UrlWitnessParams> extends AbstractWitness<TParams> {\n static override configSchemas = [UrlWitnessConfigSchema]\n\n get urls() {\n return this.config?.urls\n }\n\n protected override async observeHandler(payloads: Payload[] = []): Promise<Payload[]> {\n const urls: UrlPayload[] =\n this.urls?.map((url) => ({ schema: UrlSchema, url })) ??\n payloads\n .filter((p): p is UrlPayload => p.schema === UrlSchema)\n .map((p) => {\n return { schema: UrlSchema, url: p.url }\n })\n const hashed = await Promise.all(\n urls.map(async (url) => {\n // TODO: Different schema for hashed url\n return { ...url, hash: await hashUrl(url.url) }\n }),\n )\n // TODO: Handle partial success\n return hashed\n }\n}\n","import NodeCrypto from 'crypto'\n// eslint-disable-next-line import/no-default-export\nexport { NodeCrypto }\n","export const cryptoPolyfillNode = () => {\n return\n}\n","import { Crypto } from '@xylabs/crypto'\nimport { createReadStream } from 'fs'\nimport { fileURLToPath } from 'url'\n\nexport const hashFile = (url: string): Promise<string> => {\n const path = url.startsWith('file://') ? fileURLToPath(url) : url\n const ret = new Promise<string>((resolve, reject) => {\n const hash = Crypto.createHash('sha256')\n const stream = createReadStream(path)\n stream.on('data', (data) => {\n hash.update(data)\n })\n stream.on('end', () => {\n resolve(hash.digest('hex'))\n })\n stream.on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import { Crypto } from '@xylabs/crypto'\nimport http from 'http'\nimport https from 'https'\n\nexport const hashHttpUrl = (url: string): Promise<string> => {\n const ret = new Promise<string>((resolve, reject) => {\n const hash = Crypto.createHash('sha256')\n const lib = url.startsWith('https') ? https : http\n lib\n .get(url, (res) => {\n res.on('data', (data) => {\n hash.update(data)\n })\n res.on('end', () => {\n resolve(hash.digest('hex'))\n })\n })\n .on('error', (err) => {\n reject(err)\n })\n })\n return ret\n}\n","import { hashFile } from './hashFile'\nimport { hashHttpUrl } from './hashHttpUrl'\n\nexport const hashUrl = (url: string): Promise<string> => {\n const scheme = url.split('://')[0]?.toLowerCase()\n switch (scheme) {\n case 'file':\n return hashFile(url)\n case 'http':\n case 'https':\n return hashHttpUrl(url)\n default:\n throw new Error(`Unsupported URL scheme: ${scheme}`)\n }\n}\n","import { UrlPlugin } from './Plugin'\n\nexport * from './Witness'\n\nexport { UrlPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default UrlPlugin\n"],"mappings":"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","names":["UrlSchema","UrlSchema","UrlSchema","UrlSchema"]}
@@ -0,0 +1,2 @@
1
+ export declare const hashFile: (url: string) => Promise<string>;
2
+ //# sourceMappingURL=hashFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashFile.d.ts","sourceRoot":"","sources":["../../src/util/hashFile.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,QAAQ,QAAS,MAAM,KAAG,QAAQ,MAAM,CAgBpD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hashFile: (url: string) => Promise<string>;
2
+ //# sourceMappingURL=hashFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashFile.d.ts","sourceRoot":"","sources":["../../src/util/hashFile.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,QAAQ,QAAS,MAAM,KAAG,QAAQ,MAAM,CAgBpD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hashHttpUrl: (url: string) => Promise<string>;
2
+ //# sourceMappingURL=hashHttpUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashHttpUrl.d.ts","sourceRoot":"","sources":["../../src/util/hashHttpUrl.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,WAAW,QAAS,MAAM,KAAG,QAAQ,MAAM,CAkBvD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hashHttpUrl: (url: string) => Promise<string>;
2
+ //# sourceMappingURL=hashHttpUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashHttpUrl.d.ts","sourceRoot":"","sources":["../../src/util/hashHttpUrl.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,WAAW,QAAS,MAAM,KAAG,QAAQ,MAAM,CAkBvD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hashUrl: (url: string) => Promise<string>;
2
+ //# sourceMappingURL=hashUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashUrl.d.ts","sourceRoot":"","sources":["../../src/util/hashUrl.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,QAAS,MAAM,KAAG,QAAQ,MAAM,CAWnD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hashUrl: (url: string) => Promise<string>;
2
+ //# sourceMappingURL=hashUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashUrl.d.ts","sourceRoot":"","sources":["../../src/util/hashUrl.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,QAAS,MAAM,KAAG,QAAQ,MAAM,CAWnD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './hashUrl';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './hashUrl';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
package/package.json CHANGED
@@ -10,23 +10,17 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xyo-network/module": "~2.73.4",
14
- "@xyo-network/payload-model": "~2.73.4",
15
- "@xyo-network/payloadset-plugin": "~2.73.4",
16
- "@xyo-network/url-payload-plugin": "~2.73.4",
17
- "@xyo-network/witness": "~2.73.4"
13
+ "@xyo-network/module": "~2.74.1",
14
+ "@xyo-network/payload-model": "~2.74.1",
15
+ "@xyo-network/payloadset-plugin": "~2.74.1",
16
+ "@xyo-network/url-payload-plugin": "~2.74.1",
17
+ "@xyo-network/witness": "~2.74.1"
18
18
  },
19
19
  "devDependencies": {
20
- "@xylabs/ts-scripts-yarn3": "^2.19.12",
21
- "@xylabs/tsconfig": "^2.19.12",
22
- "publint": "^0.2.2",
23
- "tsup": "^7.2.0",
20
+ "@xylabs/ts-scripts-yarn3": "^3.0.28",
21
+ "@xylabs/tsconfig": "^3.0.28",
24
22
  "typescript": "^5.2.2"
25
23
  },
26
- "scripts": {
27
- "package-compile": "tsup && publint",
28
- "package-recompile": "tsup && publint"
29
- },
30
24
  "description": "Primary SDK for using XYO Protocol 2.0",
31
25
  "docs": "dist/docs.json",
32
26
  "types": "dist/index.d.ts",
@@ -67,5 +61,5 @@
67
61
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
68
62
  },
69
63
  "sideEffects": false,
70
- "version": "2.73.4"
64
+ "version": "2.74.1"
71
65
  }
@@ -1,11 +1,11 @@
1
- import crypto from 'crypto'
1
+ import { Crypto } from '@xylabs/crypto'
2
2
  import { createReadStream } from 'fs'
3
3
  import { fileURLToPath } from 'url'
4
4
 
5
5
  export const hashFile = (url: string): Promise<string> => {
6
6
  const path = url.startsWith('file://') ? fileURLToPath(url) : url
7
7
  const ret = new Promise<string>((resolve, reject) => {
8
- const hash = crypto.createHash('sha256')
8
+ const hash = Crypto.createHash('sha256')
9
9
  const stream = createReadStream(path)
10
10
  stream.on('data', (data) => {
11
11
  hash.update(data)
@@ -1,10 +1,10 @@
1
- import crypto from 'crypto'
1
+ import { Crypto } from '@xylabs/crypto'
2
2
  import http from 'http'
3
3
  import https from 'https'
4
4
 
5
5
  export const hashHttpUrl = (url: string): Promise<string> => {
6
6
  const ret = new Promise<string>((resolve, reject) => {
7
- const hash = crypto.createHash('sha256')
7
+ const hash = Crypto.createHash('sha256')
8
8
  const lib = url.startsWith('https') ? https : http
9
9
  lib
10
10
  .get(url, (res) => {
package/tsup.config.ts DELETED
@@ -1,16 +0,0 @@
1
- import { defineConfig } from 'tsup'
2
-
3
- // eslint-disable-next-line import/no-default-export
4
- export default defineConfig({
5
- bundle: true,
6
- cjsInterop: true,
7
- clean: false,
8
- dts: {
9
- entry: ['src/index.ts'],
10
- },
11
- entry: ['src/index.ts'],
12
- format: ['cjs', 'esm'],
13
- sourcemap: true,
14
- splitting: false,
15
- tsconfig: 'tsconfig.json',
16
- })