@xyo-network/hash 3.9.18 → 3.9.20

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 (91) hide show
  1. package/dist/browser/BrowserObjectHasher.d.ts +12 -0
  2. package/dist/browser/BrowserObjectHasher.d.ts.map +1 -0
  3. package/dist/browser/NodeObjectHasher.d.ts +9 -0
  4. package/dist/browser/NodeObjectHasher.d.ts.map +1 -0
  5. package/dist/browser/ObjectHasher.d.ts +72 -0
  6. package/dist/browser/ObjectHasher.d.ts.map +1 -0
  7. package/dist/browser/createBrowserWorker.d.ts +2 -0
  8. package/dist/browser/createBrowserWorker.d.ts.map +1 -0
  9. package/dist/browser/createNodeWorker.d.ts +2 -0
  10. package/dist/browser/createNodeWorker.d.ts.map +1 -0
  11. package/dist/browser/hasEmptyFields.d.ts +3 -0
  12. package/dist/browser/hasEmptyFields.d.ts.map +1 -0
  13. package/dist/browser/index-browser.d.ts +5 -54
  14. package/dist/browser/index-browser.d.ts.map +1 -0
  15. package/dist/browser/index.d.ts +6 -0
  16. package/dist/browser/index.d.ts.map +1 -0
  17. package/dist/browser/removeEmptyFields.d.ts +3 -0
  18. package/dist/browser/removeEmptyFields.d.ts.map +1 -0
  19. package/dist/browser/sortFields.d.ts +3 -0
  20. package/dist/browser/sortFields.d.ts.map +1 -0
  21. package/dist/browser/worker/index.d.ts +3 -2
  22. package/dist/browser/worker/index.d.ts.map +1 -0
  23. package/dist/browser/worker/subtleHash.d.ts +2 -2
  24. package/dist/browser/worker/subtleHash.d.ts.map +1 -0
  25. package/dist/browser/worker/subtleHashNode.d.ts +2 -3
  26. package/dist/browser/worker/subtleHashNode.d.ts.map +1 -0
  27. package/dist/browser/worker/wasmHash.d.ts +2 -2
  28. package/dist/browser/worker/wasmHash.d.ts.map +1 -0
  29. package/dist/browser/worker/wasmHashNode.d.ts +2 -3
  30. package/dist/browser/worker/wasmHashNode.d.ts.map +1 -0
  31. package/dist/neutral/BrowserObjectHasher.d.ts +12 -0
  32. package/dist/neutral/BrowserObjectHasher.d.ts.map +1 -0
  33. package/dist/neutral/NodeObjectHasher.d.ts +9 -0
  34. package/dist/neutral/NodeObjectHasher.d.ts.map +1 -0
  35. package/dist/neutral/ObjectHasher.d.ts +72 -0
  36. package/dist/neutral/ObjectHasher.d.ts.map +1 -0
  37. package/dist/neutral/createBrowserWorker.d.ts +2 -0
  38. package/dist/neutral/createBrowserWorker.d.ts.map +1 -0
  39. package/dist/neutral/createNodeWorker.d.ts +2 -0
  40. package/dist/neutral/createNodeWorker.d.ts.map +1 -0
  41. package/dist/neutral/hasEmptyFields.d.ts +3 -0
  42. package/dist/neutral/hasEmptyFields.d.ts.map +1 -0
  43. package/dist/neutral/index-browser.d.ts +5 -0
  44. package/dist/neutral/index-browser.d.ts.map +1 -0
  45. package/dist/neutral/index.d.ts +6 -52
  46. package/dist/neutral/index.d.ts.map +1 -0
  47. package/dist/neutral/removeEmptyFields.d.ts +3 -0
  48. package/dist/neutral/removeEmptyFields.d.ts.map +1 -0
  49. package/dist/neutral/sortFields.d.ts +3 -0
  50. package/dist/neutral/sortFields.d.ts.map +1 -0
  51. package/dist/neutral/worker/index.d.ts +3 -0
  52. package/dist/neutral/worker/index.d.ts.map +1 -0
  53. package/dist/neutral/worker/subtleHash.d.ts +2 -0
  54. package/dist/neutral/worker/subtleHash.d.ts.map +1 -0
  55. package/dist/neutral/worker/subtleHashNode.d.ts +2 -0
  56. package/dist/neutral/worker/subtleHashNode.d.ts.map +1 -0
  57. package/dist/neutral/worker/wasmHash.d.ts +2 -0
  58. package/dist/neutral/worker/wasmHash.d.ts.map +1 -0
  59. package/dist/neutral/worker/wasmHashNode.d.ts +2 -0
  60. package/dist/neutral/worker/wasmHashNode.d.ts.map +1 -0
  61. package/dist/node/BrowserObjectHasher.d.ts +12 -0
  62. package/dist/node/BrowserObjectHasher.d.ts.map +1 -0
  63. package/dist/node/NodeObjectHasher.d.ts +9 -0
  64. package/dist/node/NodeObjectHasher.d.ts.map +1 -0
  65. package/dist/node/ObjectHasher.d.ts +72 -0
  66. package/dist/node/ObjectHasher.d.ts.map +1 -0
  67. package/dist/node/createBrowserWorker.d.ts +2 -0
  68. package/dist/node/createBrowserWorker.d.ts.map +1 -0
  69. package/dist/node/createNodeWorker.d.ts +2 -0
  70. package/dist/node/createNodeWorker.d.ts.map +1 -0
  71. package/dist/node/hasEmptyFields.d.ts +3 -0
  72. package/dist/node/hasEmptyFields.d.ts.map +1 -0
  73. package/dist/node/index-browser.d.ts +5 -0
  74. package/dist/node/index-browser.d.ts.map +1 -0
  75. package/dist/node/index.d.ts +6 -52
  76. package/dist/node/index.d.ts.map +1 -0
  77. package/dist/node/removeEmptyFields.d.ts +3 -0
  78. package/dist/node/removeEmptyFields.d.ts.map +1 -0
  79. package/dist/node/sortFields.d.ts +3 -0
  80. package/dist/node/sortFields.d.ts.map +1 -0
  81. package/dist/node/worker/index.d.ts +3 -2
  82. package/dist/node/worker/index.d.ts.map +1 -0
  83. package/dist/node/worker/subtleHash.d.ts +2 -2
  84. package/dist/node/worker/subtleHash.d.ts.map +1 -0
  85. package/dist/node/worker/subtleHashNode.d.ts +2 -3
  86. package/dist/node/worker/subtleHashNode.d.ts.map +1 -0
  87. package/dist/node/worker/wasmHash.d.ts +2 -2
  88. package/dist/node/worker/wasmHash.d.ts.map +1 -0
  89. package/dist/node/worker/wasmHashNode.d.ts +2 -3
  90. package/dist/node/worker/wasmHashNode.d.ts.map +1 -0
  91. package/package.json +5 -5
@@ -0,0 +1,12 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ import { ObjectHasher } from './ObjectHasher.ts';
3
+ export declare class BrowserObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
4
+ static readonly createBrowserWorker: (url?: URL) => import("@xylabs/threads/master").WorkerImplementation | undefined;
5
+ static readonly createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
6
+ static readonly subtleHashWorkerUrl: import("url").URL | undefined;
7
+ static readonly wasmHashWorkerUrl: import("url").URL | undefined;
8
+ }
9
+ /** @deprecated use BrowserObjectHasher instead */
10
+ export declare class BrowserPayloadHasher<T extends EmptyObject = EmptyObject> extends BrowserObjectHasher<T> {
11
+ }
12
+ //# sourceMappingURL=BrowserObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserObjectHasher.d.ts","sourceRoot":"","sources":["../../src/BrowserObjectHasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAIjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAKhD,qBAAa,mBAAmB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IAC3F,gBAAyB,mBAAmB,mFAAsB;IAClE,gBAAyB,gBAAgB,8FAAmB;IAC5D,gBAAyB,mBAAmB,gCAMxC;IAEJ,gBAAyB,iBAAiB,gCAMtC;CACL;AAED,kDAAkD;AAClD,qBAAa,oBAAoB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,9 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ import { ObjectHasher } from './ObjectHasher.ts';
3
+ export declare class NodeObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
4
+ static readonly createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
5
+ }
6
+ /** @deprecated use NodeObjectHasher instead */
7
+ export declare class NodePayloadHasher<T extends EmptyObject = EmptyObject> extends NodeObjectHasher<T> {
8
+ }
9
+ //# sourceMappingURL=NodeObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeObjectHasher.d.ts","sourceRoot":"","sources":["../../src/NodeObjectHasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIhD,qBAAa,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACxF,gBAAyB,gBAAgB,8FAAmB;CAC7D;AAED,+CAA+C;AAC/C,qBAAa,iBAAiB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,72 @@
1
+ import type { Hash } from '@xylabs/hex';
2
+ import type { EmptyObject } from '@xylabs/object';
3
+ import { ObjectWrapper } from '@xylabs/object';
4
+ import type { Worker } from '@xylabs/threads';
5
+ import { WasmSupport } from '@xyo-network/wasm';
6
+ export type WorkerFunction = ((...args: unknown[]) => unknown) | (() => unknown);
7
+ export type WorkerModule<Keys extends string> = {
8
+ [key in Keys]: WorkerFunction;
9
+ };
10
+ export declare class ObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectWrapper<T> {
11
+ static allowHashPooling: boolean;
12
+ static allowSubtle: boolean;
13
+ static createBrowserWorker?: (url?: URL) => Worker | undefined;
14
+ static createNodeWorker?: (func?: () => unknown) => Worker | undefined;
15
+ static readonly initialized: void;
16
+ static readonly subtleHashWorkerUrl?: URL;
17
+ static warnIfUsingJsHash: boolean;
18
+ static readonly wasmHashWorkerUrl?: URL;
19
+ static readonly wasmInitialized: Promise<void>;
20
+ static readonly wasmSupport: WasmSupport;
21
+ private static _subtleHashPool?;
22
+ private static _wasmHashPool?;
23
+ private static get subtleHashPool();
24
+ private static get wasmHashPool();
25
+ static createWorker(url?: URL, func?: () => unknown): import("@xylabs/threads/master").Worker;
26
+ static filterExcludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
27
+ static filterIncludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
28
+ static findByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash): Promise<T | undefined>;
29
+ /**
30
+ * Asynchronously hashes a payload
31
+ * @param obj A payload
32
+ * @returns The payload hash
33
+ */
34
+ static hash<T extends EmptyObject>(obj: T): Promise<Hash>;
35
+ static hashFields<T extends EmptyObject>(obj: T): T;
36
+ /**
37
+ * Creates an array of payload/hash tuples based on the payloads passed in
38
+ * @param objs Any array of payloads
39
+ * @returns An array of payload/hash tuples
40
+ */
41
+ static hashPairs<T extends EmptyObject>(objs: T[]): Promise<[T, Hash][]>;
42
+ /**
43
+ * Creates an array of payload hashes based on the payloads passed in
44
+ * @param objs Any array of payloads
45
+ * @returns An array of payload hashes
46
+ */
47
+ static hashes<T extends EmptyObject>(objs?: T[]): Promise<Hash[] | undefined>;
48
+ /**
49
+ * Returns a clone of the payload that is JSON safe
50
+ * @param obj A payload
51
+ * @param meta Keeps underscore (meta) fields if set to true
52
+ * @returns Returns a clone of the payload that is JSON safe
53
+ */
54
+ static json<T extends EmptyObject>(payload: T, meta?: boolean): T;
55
+ /** @deprecated us json instead */
56
+ static jsonPayload<T extends EmptyObject>(payload: T, meta?: boolean): T;
57
+ static stringifyHashFields<T extends EmptyObject>(obj: T): string;
58
+ static subtleHash(data: Uint8Array): Promise<ArrayBuffer>;
59
+ static wasmHash(data: string): Promise<any>;
60
+ private static createWorkerPool;
61
+ hash(): Promise<Hash>;
62
+ /**
63
+ * Returns a clone of the payload that is JSON safe
64
+ * @param meta Keeps underscore (meta) fields if set to true
65
+ * @returns Returns a clone of the payload that is JSON safe
66
+ */
67
+ json(meta?: boolean): T;
68
+ }
69
+ /** @deprecated use PayloadBuilder or ObjectHasher instead */
70
+ export declare class PayloadHasher<T extends object> extends ObjectHasher<T> {
71
+ }
72
+ //# sourceMappingURL=ObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectHasher.d.ts","sourceRoot":"","sources":["../../src/ObjectHasher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const createBrowserWorker: (url?: URL) => import("@xylabs/threads/master").WorkerImplementation | undefined;
2
+ //# sourceMappingURL=createBrowserWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBrowserWorker.d.ts","sourceRoot":"","sources":["../../src/createBrowserWorker.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,GAAI,MAAM,GAAG,sEAO5C,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
2
+ //# sourceMappingURL=createNodeWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createNodeWorker.d.ts","sourceRoot":"","sources":["../../src/createNodeWorker.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,OAAO,sEAWpD,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const hasEmptyFields: <T extends EmptyObject>(obj: T) => boolean;
3
+ //# sourceMappingURL=hasEmptyFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasEmptyFields.d.ts","sourceRoot":"","sources":["../../src/hasEmptyFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,OAa9D,CAAA"}
@@ -1,54 +1,5 @@
1
- import * as url from 'url';
2
- import * as _xylabs_threads_master from '@xylabs/threads/master';
3
- import { EmptyObject, ObjectWrapper } from '@xylabs/object';
4
- import { Hash } from '@xylabs/hex';
5
- import { Worker } from '@xylabs/threads';
6
- import { WasmSupport } from '@xyo-network/wasm';
7
-
8
- declare class ObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectWrapper<T> {
9
- static allowHashPooling: boolean;
10
- static allowSubtle: boolean;
11
- static createBrowserWorker?: (url?: URL) => Worker | undefined;
12
- static createNodeWorker?: (func?: () => unknown) => Worker | undefined;
13
- static readonly initialized: void;
14
- static readonly subtleHashWorkerUrl?: URL;
15
- static warnIfUsingJsHash: boolean;
16
- static readonly wasmHashWorkerUrl?: URL;
17
- static readonly wasmInitialized: Promise<void>;
18
- static readonly wasmSupport: WasmSupport;
19
- private static _subtleHashPool?;
20
- private static _wasmHashPool?;
21
- private static get subtleHashPool();
22
- private static get wasmHashPool();
23
- static createWorker(url?: URL, func?: () => unknown): _xylabs_threads_master.Worker;
24
- static filterExcludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
25
- static filterIncludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
26
- static findByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash): Promise<T | undefined>;
27
- static hash<T extends EmptyObject>(obj: T): Promise<Hash>;
28
- static hashFields<T extends EmptyObject>(obj: T): T;
29
- static hashPairs<T extends EmptyObject>(objs: T[]): Promise<[T, Hash][]>;
30
- static hashes<T extends EmptyObject>(objs?: T[]): Promise<Hash[] | undefined>;
31
- static json<T extends EmptyObject>(payload: T, meta?: boolean): T;
32
- static jsonPayload<T extends EmptyObject>(payload: T, meta?: boolean): T;
33
- static stringifyHashFields<T extends EmptyObject>(obj: T): string;
34
- static subtleHash(data: Uint8Array): Promise<ArrayBuffer>;
35
- static wasmHash(data: string): Promise<any>;
36
- private static createWorkerPool;
37
- hash(): Promise<Hash>;
38
- json(meta?: boolean): T;
39
- }
40
-
41
- declare class BrowserObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
42
- static readonly createBrowserWorker: (url?: URL) => _xylabs_threads_master.WorkerImplementation | undefined;
43
- static readonly createNodeWorker: (func?: () => unknown) => _xylabs_threads_master.WorkerImplementation | undefined;
44
- static readonly subtleHashWorkerUrl: url.URL | undefined;
45
- static readonly wasmHashWorkerUrl: url.URL | undefined;
46
- }
47
- declare class BrowserPayloadHasher<T extends EmptyObject = EmptyObject> extends BrowserObjectHasher<T> {
48
- }
49
-
50
- declare const removeEmptyFields: <T extends EmptyObject>(obj: T) => T;
51
-
52
- declare const sortFields: <T extends EmptyObject>(obj: T) => T;
53
-
54
- export { BrowserObjectHasher as ObjectHasher, BrowserPayloadHasher as PayloadHasher, removeEmptyFields, sortFields };
1
+ export { BrowserObjectHasher as ObjectHasher } from './BrowserObjectHasher.ts';
2
+ export { BrowserPayloadHasher as PayloadHasher } from './BrowserObjectHasher.ts';
3
+ export * from './removeEmptyFields.ts';
4
+ export * from './sortFields.ts';
5
+ //# sourceMappingURL=index-browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-browser.d.ts","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC9E,OAAO,EAAE,oBAAoB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAChF,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,6 @@
1
+ export * from './hasEmptyFields.ts';
2
+ export { NodeObjectHasher as ObjectHasher } from './NodeObjectHasher.ts';
3
+ export { NodePayloadHasher as PayloadHasher } from './NodeObjectHasher.ts';
4
+ export * from './removeEmptyFields.ts';
5
+ export * from './sortFields.ts';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACxE,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC1E,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const removeEmptyFields: <T extends EmptyObject>(obj: T) => T;
3
+ //# sourceMappingURL=removeEmptyFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeEmptyFields.d.ts","sourceRoot":"","sources":["../../src/removeEmptyFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5D,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,CAgBjE,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const sortFields: <T extends EmptyObject>(obj: T) => T;
3
+ //# sourceMappingURL=sortFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortFields.d.ts","sourceRoot":"","sources":["../../src/sortFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAQ5D,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAOrC,CAClB,CAAA"}
@@ -1,2 +1,3 @@
1
- export { subtleHashFunc } from './subtleHashNode.js';
2
- export { wasmHashFunc } from './wasmHashNode.js';
1
+ export * from './subtleHashNode.ts';
2
+ export * from './wasmHashNode.ts';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/worker/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA"}
@@ -1,2 +1,2 @@
1
-
2
- export { }
1
+ export {};
2
+ //# sourceMappingURL=subtleHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtleHash.d.ts","sourceRoot":"","sources":["../../../src/worker/subtleHash.ts"],"names":[],"mappings":""}
@@ -1,3 +1,2 @@
1
- declare const subtleHashFunc: () => void;
2
-
3
- export { subtleHashFunc };
1
+ export declare const subtleHashFunc: () => void;
2
+ //# sourceMappingURL=subtleHashNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtleHashNode.d.ts","sourceRoot":"","sources":["../../../src/worker/subtleHashNode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,cAAc,YAS1B,CAAA"}
@@ -1,2 +1,2 @@
1
-
2
- export { }
1
+ export {};
2
+ //# sourceMappingURL=wasmHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasmHash.d.ts","sourceRoot":"","sources":["../../../src/worker/wasmHash.ts"],"names":[],"mappings":""}
@@ -1,3 +1,2 @@
1
- declare const wasmHashFunc: () => void;
2
-
3
- export { wasmHashFunc };
1
+ export declare const wasmHashFunc: () => void;
2
+ //# sourceMappingURL=wasmHashNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasmHashNode.d.ts","sourceRoot":"","sources":["../../../src/worker/wasmHashNode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,YAWxB,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ import { ObjectHasher } from './ObjectHasher.ts';
3
+ export declare class BrowserObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
4
+ static readonly createBrowserWorker: (url?: URL) => import("@xylabs/threads/master").WorkerImplementation | undefined;
5
+ static readonly createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
6
+ static readonly subtleHashWorkerUrl: import("url").URL | undefined;
7
+ static readonly wasmHashWorkerUrl: import("url").URL | undefined;
8
+ }
9
+ /** @deprecated use BrowserObjectHasher instead */
10
+ export declare class BrowserPayloadHasher<T extends EmptyObject = EmptyObject> extends BrowserObjectHasher<T> {
11
+ }
12
+ //# sourceMappingURL=BrowserObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserObjectHasher.d.ts","sourceRoot":"","sources":["../../src/BrowserObjectHasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAIjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAKhD,qBAAa,mBAAmB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IAC3F,gBAAyB,mBAAmB,mFAAsB;IAClE,gBAAyB,gBAAgB,8FAAmB;IAC5D,gBAAyB,mBAAmB,gCAMxC;IAEJ,gBAAyB,iBAAiB,gCAMtC;CACL;AAED,kDAAkD;AAClD,qBAAa,oBAAoB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,9 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ import { ObjectHasher } from './ObjectHasher.ts';
3
+ export declare class NodeObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
4
+ static readonly createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
5
+ }
6
+ /** @deprecated use NodeObjectHasher instead */
7
+ export declare class NodePayloadHasher<T extends EmptyObject = EmptyObject> extends NodeObjectHasher<T> {
8
+ }
9
+ //# sourceMappingURL=NodeObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeObjectHasher.d.ts","sourceRoot":"","sources":["../../src/NodeObjectHasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIhD,qBAAa,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACxF,gBAAyB,gBAAgB,8FAAmB;CAC7D;AAED,+CAA+C;AAC/C,qBAAa,iBAAiB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,72 @@
1
+ import type { Hash } from '@xylabs/hex';
2
+ import type { EmptyObject } from '@xylabs/object';
3
+ import { ObjectWrapper } from '@xylabs/object';
4
+ import type { Worker } from '@xylabs/threads';
5
+ import { WasmSupport } from '@xyo-network/wasm';
6
+ export type WorkerFunction = ((...args: unknown[]) => unknown) | (() => unknown);
7
+ export type WorkerModule<Keys extends string> = {
8
+ [key in Keys]: WorkerFunction;
9
+ };
10
+ export declare class ObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectWrapper<T> {
11
+ static allowHashPooling: boolean;
12
+ static allowSubtle: boolean;
13
+ static createBrowserWorker?: (url?: URL) => Worker | undefined;
14
+ static createNodeWorker?: (func?: () => unknown) => Worker | undefined;
15
+ static readonly initialized: void;
16
+ static readonly subtleHashWorkerUrl?: URL;
17
+ static warnIfUsingJsHash: boolean;
18
+ static readonly wasmHashWorkerUrl?: URL;
19
+ static readonly wasmInitialized: Promise<void>;
20
+ static readonly wasmSupport: WasmSupport;
21
+ private static _subtleHashPool?;
22
+ private static _wasmHashPool?;
23
+ private static get subtleHashPool();
24
+ private static get wasmHashPool();
25
+ static createWorker(url?: URL, func?: () => unknown): import("@xylabs/threads/master").Worker;
26
+ static filterExcludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
27
+ static filterIncludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
28
+ static findByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash): Promise<T | undefined>;
29
+ /**
30
+ * Asynchronously hashes a payload
31
+ * @param obj A payload
32
+ * @returns The payload hash
33
+ */
34
+ static hash<T extends EmptyObject>(obj: T): Promise<Hash>;
35
+ static hashFields<T extends EmptyObject>(obj: T): T;
36
+ /**
37
+ * Creates an array of payload/hash tuples based on the payloads passed in
38
+ * @param objs Any array of payloads
39
+ * @returns An array of payload/hash tuples
40
+ */
41
+ static hashPairs<T extends EmptyObject>(objs: T[]): Promise<[T, Hash][]>;
42
+ /**
43
+ * Creates an array of payload hashes based on the payloads passed in
44
+ * @param objs Any array of payloads
45
+ * @returns An array of payload hashes
46
+ */
47
+ static hashes<T extends EmptyObject>(objs?: T[]): Promise<Hash[] | undefined>;
48
+ /**
49
+ * Returns a clone of the payload that is JSON safe
50
+ * @param obj A payload
51
+ * @param meta Keeps underscore (meta) fields if set to true
52
+ * @returns Returns a clone of the payload that is JSON safe
53
+ */
54
+ static json<T extends EmptyObject>(payload: T, meta?: boolean): T;
55
+ /** @deprecated us json instead */
56
+ static jsonPayload<T extends EmptyObject>(payload: T, meta?: boolean): T;
57
+ static stringifyHashFields<T extends EmptyObject>(obj: T): string;
58
+ static subtleHash(data: Uint8Array): Promise<ArrayBuffer>;
59
+ static wasmHash(data: string): Promise<any>;
60
+ private static createWorkerPool;
61
+ hash(): Promise<Hash>;
62
+ /**
63
+ * Returns a clone of the payload that is JSON safe
64
+ * @param meta Keeps underscore (meta) fields if set to true
65
+ * @returns Returns a clone of the payload that is JSON safe
66
+ */
67
+ json(meta?: boolean): T;
68
+ }
69
+ /** @deprecated use PayloadBuilder or ObjectHasher instead */
70
+ export declare class PayloadHasher<T extends object> extends ObjectHasher<T> {
71
+ }
72
+ //# sourceMappingURL=ObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectHasher.d.ts","sourceRoot":"","sources":["../../src/ObjectHasher.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAU,MAAM,gBAAgB,CAAA;AAEtD,OAAO,KAAK,EAAgB,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAO/C,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,CAAA;AAChF,MAAM,MAAM,YAAY,CAAC,IAAI,SAAS,MAAM,IAAI;KAC7C,GAAG,IAAI,IAAI,GAAG,cAAc;CAC9B,CAAA;AASD,qBAAa,YAAY,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;IACrF,MAAM,CAAC,gBAAgB,UAAO;IAC9B,MAAM,CAAC,WAAW,UAAO;IACzB,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,MAAM,GAAG,SAAS,CAAA;IAC9D,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,OAAO,KAAK,MAAM,GAAG,SAAS,CAAA;IAEtE,MAAM,CAAC,QAAQ,CAAC,WAAW,OAKvB;IAEJ,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,GAAG,CAAA;IAEzC,MAAM,CAAC,iBAAiB,UAAO;IAE/B,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAA;IAEvC,MAAM,CAAC,QAAQ,CAAC,eAAe,gBAAiC;IAChE,MAAM,CAAC,QAAQ,CAAC,WAAW,cAAoB;IAG/C,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAA8C;IAE7E,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAA8C;IAE3E,OAAO,CAAC,MAAM,KAAK,cAAc,GAYhC;IAED,OAAO,CAAC,MAAM,KAAK,YAAY,GAY9B;IAED,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,OAAO;WAKtC,mBAAmB,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,YAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAK7F,mBAAmB,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,YAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAK7F,UAAU,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,YAAK,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAIlG;;;;OAIG;WACU,IAAI,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB/D,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC;IAInD;;;;OAIG;WACU,SAAS,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;IAI9E;;;;OAIG;WACU,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,SAAS,CAAC;IAInF;;;;;OAKG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,UAAQ,GAAG,CAAC;IAI/D,kCAAkC;IAClC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,UAAQ,GAAG,CAAC;IAItE,MAAM,CAAC,mBAAmB,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,CAAC;WAI3C,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;WAKlD,QAAQ,CAAC,IAAI,EAAE,MAAM;IAMlC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAMzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;;OAIG;IACH,IAAI,CAAC,IAAI,UAAQ,GAAG,CAAC;CAGtB;AAED,6DAA6D;AAC7D,qBAAa,aAAa,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,2 @@
1
+ export declare const createBrowserWorker: (url?: URL) => import("@xylabs/threads/master").WorkerImplementation | undefined;
2
+ //# sourceMappingURL=createBrowserWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBrowserWorker.d.ts","sourceRoot":"","sources":["../../src/createBrowserWorker.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,GAAI,MAAM,GAAG,sEAO5C,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
2
+ //# sourceMappingURL=createNodeWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createNodeWorker.d.ts","sourceRoot":"","sources":["../../src/createNodeWorker.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,OAAO,sEAWpD,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const hasEmptyFields: <T extends EmptyObject>(obj: T) => boolean;
3
+ //# sourceMappingURL=hasEmptyFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasEmptyFields.d.ts","sourceRoot":"","sources":["../../src/hasEmptyFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,OAa9D,CAAA"}
@@ -0,0 +1,5 @@
1
+ export { BrowserObjectHasher as ObjectHasher } from './BrowserObjectHasher.ts';
2
+ export { BrowserPayloadHasher as PayloadHasher } from './BrowserObjectHasher.ts';
3
+ export * from './removeEmptyFields.ts';
4
+ export * from './sortFields.ts';
5
+ //# sourceMappingURL=index-browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-browser.d.ts","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC9E,OAAO,EAAE,oBAAoB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAChF,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA"}
@@ -1,52 +1,6 @@
1
- import { EmptyObject, ObjectWrapper } from '@xylabs/object';
2
- import * as _xylabs_threads_master from '@xylabs/threads/master';
3
- import { Hash } from '@xylabs/hex';
4
- import { Worker } from '@xylabs/threads';
5
- import { WasmSupport } from '@xyo-network/wasm';
6
-
7
- declare const hasEmptyFields: <T extends EmptyObject>(obj: T) => boolean;
8
-
9
- declare class ObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectWrapper<T> {
10
- static allowHashPooling: boolean;
11
- static allowSubtle: boolean;
12
- static createBrowserWorker?: (url?: URL) => Worker | undefined;
13
- static createNodeWorker?: (func?: () => unknown) => Worker | undefined;
14
- static readonly initialized: void;
15
- static readonly subtleHashWorkerUrl?: URL;
16
- static warnIfUsingJsHash: boolean;
17
- static readonly wasmHashWorkerUrl?: URL;
18
- static readonly wasmInitialized: Promise<void>;
19
- static readonly wasmSupport: WasmSupport;
20
- private static _subtleHashPool?;
21
- private static _wasmHashPool?;
22
- private static get subtleHashPool();
23
- private static get wasmHashPool();
24
- static createWorker(url?: URL, func?: () => unknown): _xylabs_threads_master.Worker;
25
- static filterExcludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
26
- static filterIncludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
27
- static findByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash): Promise<T | undefined>;
28
- static hash<T extends EmptyObject>(obj: T): Promise<Hash>;
29
- static hashFields<T extends EmptyObject>(obj: T): T;
30
- static hashPairs<T extends EmptyObject>(objs: T[]): Promise<[T, Hash][]>;
31
- static hashes<T extends EmptyObject>(objs?: T[]): Promise<Hash[] | undefined>;
32
- static json<T extends EmptyObject>(payload: T, meta?: boolean): T;
33
- static jsonPayload<T extends EmptyObject>(payload: T, meta?: boolean): T;
34
- static stringifyHashFields<T extends EmptyObject>(obj: T): string;
35
- static subtleHash(data: Uint8Array): Promise<ArrayBuffer>;
36
- static wasmHash(data: string): Promise<any>;
37
- private static createWorkerPool;
38
- hash(): Promise<Hash>;
39
- json(meta?: boolean): T;
40
- }
41
-
42
- declare class NodeObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
43
- static readonly createNodeWorker: (func?: () => unknown) => _xylabs_threads_master.WorkerImplementation | undefined;
44
- }
45
- declare class NodePayloadHasher<T extends EmptyObject = EmptyObject> extends NodeObjectHasher<T> {
46
- }
47
-
48
- declare const removeEmptyFields: <T extends EmptyObject>(obj: T) => T;
49
-
50
- declare const sortFields: <T extends EmptyObject>(obj: T) => T;
51
-
52
- export { NodeObjectHasher as ObjectHasher, NodePayloadHasher as PayloadHasher, hasEmptyFields, removeEmptyFields, sortFields };
1
+ export * from './hasEmptyFields.ts';
2
+ export { NodeObjectHasher as ObjectHasher } from './NodeObjectHasher.ts';
3
+ export { NodePayloadHasher as PayloadHasher } from './NodeObjectHasher.ts';
4
+ export * from './removeEmptyFields.ts';
5
+ export * from './sortFields.ts';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACxE,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC1E,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const removeEmptyFields: <T extends EmptyObject>(obj: T) => T;
3
+ //# sourceMappingURL=removeEmptyFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeEmptyFields.d.ts","sourceRoot":"","sources":["../../src/removeEmptyFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5D,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,CAgBjE,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const sortFields: <T extends EmptyObject>(obj: T) => T;
3
+ //# sourceMappingURL=sortFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortFields.d.ts","sourceRoot":"","sources":["../../src/sortFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAQ5D,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAOrC,CAClB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './subtleHashNode.ts';
2
+ export * from './wasmHashNode.ts';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/worker/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=subtleHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtleHash.d.ts","sourceRoot":"","sources":["../../../src/worker/subtleHash.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare const subtleHashFunc: () => void;
2
+ //# sourceMappingURL=subtleHashNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtleHashNode.d.ts","sourceRoot":"","sources":["../../../src/worker/subtleHashNode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,cAAc,YAS1B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=wasmHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasmHash.d.ts","sourceRoot":"","sources":["../../../src/worker/wasmHash.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare const wasmHashFunc: () => void;
2
+ //# sourceMappingURL=wasmHashNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasmHashNode.d.ts","sourceRoot":"","sources":["../../../src/worker/wasmHashNode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,YAWxB,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ import { ObjectHasher } from './ObjectHasher.ts';
3
+ export declare class BrowserObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
4
+ static readonly createBrowserWorker: (url?: URL) => import("@xylabs/threads/master").WorkerImplementation | undefined;
5
+ static readonly createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
6
+ static readonly subtleHashWorkerUrl: import("url").URL | undefined;
7
+ static readonly wasmHashWorkerUrl: import("url").URL | undefined;
8
+ }
9
+ /** @deprecated use BrowserObjectHasher instead */
10
+ export declare class BrowserPayloadHasher<T extends EmptyObject = EmptyObject> extends BrowserObjectHasher<T> {
11
+ }
12
+ //# sourceMappingURL=BrowserObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserObjectHasher.d.ts","sourceRoot":"","sources":["../../src/BrowserObjectHasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAIjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAKhD,qBAAa,mBAAmB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IAC3F,gBAAyB,mBAAmB,mFAAsB;IAClE,gBAAyB,gBAAgB,8FAAmB;IAC5D,gBAAyB,mBAAmB,gCAMxC;IAEJ,gBAAyB,iBAAiB,gCAMtC;CACL;AAED,kDAAkD;AAClD,qBAAa,oBAAoB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,9 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ import { ObjectHasher } from './ObjectHasher.ts';
3
+ export declare class NodeObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
4
+ static readonly createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
5
+ }
6
+ /** @deprecated use NodeObjectHasher instead */
7
+ export declare class NodePayloadHasher<T extends EmptyObject = EmptyObject> extends NodeObjectHasher<T> {
8
+ }
9
+ //# sourceMappingURL=NodeObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeObjectHasher.d.ts","sourceRoot":"","sources":["../../src/NodeObjectHasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIhD,qBAAa,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACxF,gBAAyB,gBAAgB,8FAAmB;CAC7D;AAED,+CAA+C;AAC/C,qBAAa,iBAAiB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,72 @@
1
+ import type { Hash } from '@xylabs/hex';
2
+ import type { EmptyObject } from '@xylabs/object';
3
+ import { ObjectWrapper } from '@xylabs/object';
4
+ import type { Worker } from '@xylabs/threads';
5
+ import { WasmSupport } from '@xyo-network/wasm';
6
+ export type WorkerFunction = ((...args: unknown[]) => unknown) | (() => unknown);
7
+ export type WorkerModule<Keys extends string> = {
8
+ [key in Keys]: WorkerFunction;
9
+ };
10
+ export declare class ObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectWrapper<T> {
11
+ static allowHashPooling: boolean;
12
+ static allowSubtle: boolean;
13
+ static createBrowserWorker?: (url?: URL) => Worker | undefined;
14
+ static createNodeWorker?: (func?: () => unknown) => Worker | undefined;
15
+ static readonly initialized: void;
16
+ static readonly subtleHashWorkerUrl?: URL;
17
+ static warnIfUsingJsHash: boolean;
18
+ static readonly wasmHashWorkerUrl?: URL;
19
+ static readonly wasmInitialized: Promise<void>;
20
+ static readonly wasmSupport: WasmSupport;
21
+ private static _subtleHashPool?;
22
+ private static _wasmHashPool?;
23
+ private static get subtleHashPool();
24
+ private static get wasmHashPool();
25
+ static createWorker(url?: URL, func?: () => unknown): import("@xylabs/threads/master").Worker;
26
+ static filterExcludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
27
+ static filterIncludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
28
+ static findByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash): Promise<T | undefined>;
29
+ /**
30
+ * Asynchronously hashes a payload
31
+ * @param obj A payload
32
+ * @returns The payload hash
33
+ */
34
+ static hash<T extends EmptyObject>(obj: T): Promise<Hash>;
35
+ static hashFields<T extends EmptyObject>(obj: T): T;
36
+ /**
37
+ * Creates an array of payload/hash tuples based on the payloads passed in
38
+ * @param objs Any array of payloads
39
+ * @returns An array of payload/hash tuples
40
+ */
41
+ static hashPairs<T extends EmptyObject>(objs: T[]): Promise<[T, Hash][]>;
42
+ /**
43
+ * Creates an array of payload hashes based on the payloads passed in
44
+ * @param objs Any array of payloads
45
+ * @returns An array of payload hashes
46
+ */
47
+ static hashes<T extends EmptyObject>(objs?: T[]): Promise<Hash[] | undefined>;
48
+ /**
49
+ * Returns a clone of the payload that is JSON safe
50
+ * @param obj A payload
51
+ * @param meta Keeps underscore (meta) fields if set to true
52
+ * @returns Returns a clone of the payload that is JSON safe
53
+ */
54
+ static json<T extends EmptyObject>(payload: T, meta?: boolean): T;
55
+ /** @deprecated us json instead */
56
+ static jsonPayload<T extends EmptyObject>(payload: T, meta?: boolean): T;
57
+ static stringifyHashFields<T extends EmptyObject>(obj: T): string;
58
+ static subtleHash(data: Uint8Array): Promise<ArrayBuffer>;
59
+ static wasmHash(data: string): Promise<any>;
60
+ private static createWorkerPool;
61
+ hash(): Promise<Hash>;
62
+ /**
63
+ * Returns a clone of the payload that is JSON safe
64
+ * @param meta Keeps underscore (meta) fields if set to true
65
+ * @returns Returns a clone of the payload that is JSON safe
66
+ */
67
+ json(meta?: boolean): T;
68
+ }
69
+ /** @deprecated use PayloadBuilder or ObjectHasher instead */
70
+ export declare class PayloadHasher<T extends object> extends ObjectHasher<T> {
71
+ }
72
+ //# sourceMappingURL=ObjectHasher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectHasher.d.ts","sourceRoot":"","sources":["../../src/ObjectHasher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const createBrowserWorker: (url?: URL) => import("@xylabs/threads/master").WorkerImplementation | undefined;
2
+ //# sourceMappingURL=createBrowserWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBrowserWorker.d.ts","sourceRoot":"","sources":["../../src/createBrowserWorker.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,GAAI,MAAM,GAAG,sEAO5C,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const createNodeWorker: (func?: () => unknown) => import("@xylabs/threads/master").WorkerImplementation | undefined;
2
+ //# sourceMappingURL=createNodeWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createNodeWorker.d.ts","sourceRoot":"","sources":["../../src/createNodeWorker.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,OAAO,sEAWpD,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const hasEmptyFields: <T extends EmptyObject>(obj: T) => boolean;
3
+ //# sourceMappingURL=hasEmptyFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasEmptyFields.d.ts","sourceRoot":"","sources":["../../src/hasEmptyFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,OAa9D,CAAA"}
@@ -0,0 +1,5 @@
1
+ export { BrowserObjectHasher as ObjectHasher } from './BrowserObjectHasher.ts';
2
+ export { BrowserPayloadHasher as PayloadHasher } from './BrowserObjectHasher.ts';
3
+ export * from './removeEmptyFields.ts';
4
+ export * from './sortFields.ts';
5
+ //# sourceMappingURL=index-browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-browser.d.ts","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC9E,OAAO,EAAE,oBAAoB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAChF,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA"}
@@ -1,52 +1,6 @@
1
- import { EmptyObject, ObjectWrapper } from '@xylabs/object';
2
- import * as _xylabs_threads_master from '@xylabs/threads/master';
3
- import { Hash } from '@xylabs/hex';
4
- import { Worker } from '@xylabs/threads';
5
- import { WasmSupport } from '@xyo-network/wasm';
6
-
7
- declare const hasEmptyFields: <T extends EmptyObject>(obj: T) => boolean;
8
-
9
- declare class ObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectWrapper<T> {
10
- static allowHashPooling: boolean;
11
- static allowSubtle: boolean;
12
- static createBrowserWorker?: (url?: URL) => Worker | undefined;
13
- static createNodeWorker?: (func?: () => unknown) => Worker | undefined;
14
- static readonly initialized: void;
15
- static readonly subtleHashWorkerUrl?: URL;
16
- static warnIfUsingJsHash: boolean;
17
- static readonly wasmHashWorkerUrl?: URL;
18
- static readonly wasmInitialized: Promise<void>;
19
- static readonly wasmSupport: WasmSupport;
20
- private static _subtleHashPool?;
21
- private static _wasmHashPool?;
22
- private static get subtleHashPool();
23
- private static get wasmHashPool();
24
- static createWorker(url?: URL, func?: () => unknown): _xylabs_threads_master.Worker;
25
- static filterExcludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
26
- static filterIncludeByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash[] | Hash): Promise<T[]>;
27
- static findByHash<T extends EmptyObject>(objs: T[] | undefined, hash: Hash): Promise<T | undefined>;
28
- static hash<T extends EmptyObject>(obj: T): Promise<Hash>;
29
- static hashFields<T extends EmptyObject>(obj: T): T;
30
- static hashPairs<T extends EmptyObject>(objs: T[]): Promise<[T, Hash][]>;
31
- static hashes<T extends EmptyObject>(objs?: T[]): Promise<Hash[] | undefined>;
32
- static json<T extends EmptyObject>(payload: T, meta?: boolean): T;
33
- static jsonPayload<T extends EmptyObject>(payload: T, meta?: boolean): T;
34
- static stringifyHashFields<T extends EmptyObject>(obj: T): string;
35
- static subtleHash(data: Uint8Array): Promise<ArrayBuffer>;
36
- static wasmHash(data: string): Promise<any>;
37
- private static createWorkerPool;
38
- hash(): Promise<Hash>;
39
- json(meta?: boolean): T;
40
- }
41
-
42
- declare class NodeObjectHasher<T extends EmptyObject = EmptyObject> extends ObjectHasher<T> {
43
- static readonly createNodeWorker: (func?: () => unknown) => _xylabs_threads_master.WorkerImplementation | undefined;
44
- }
45
- declare class NodePayloadHasher<T extends EmptyObject = EmptyObject> extends NodeObjectHasher<T> {
46
- }
47
-
48
- declare const removeEmptyFields: <T extends EmptyObject>(obj: T) => T;
49
-
50
- declare const sortFields: <T extends EmptyObject>(obj: T) => T;
51
-
52
- export { NodeObjectHasher as ObjectHasher, NodePayloadHasher as PayloadHasher, hasEmptyFields, removeEmptyFields, sortFields };
1
+ export * from './hasEmptyFields.ts';
2
+ export { NodeObjectHasher as ObjectHasher } from './NodeObjectHasher.ts';
3
+ export { NodePayloadHasher as PayloadHasher } from './NodeObjectHasher.ts';
4
+ export * from './removeEmptyFields.ts';
5
+ export * from './sortFields.ts';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACxE,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC1E,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const removeEmptyFields: <T extends EmptyObject>(obj: T) => T;
3
+ //# sourceMappingURL=removeEmptyFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeEmptyFields.d.ts","sourceRoot":"","sources":["../../src/removeEmptyFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5D,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,CAgBjE,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from '@xylabs/object';
2
+ export declare const sortFields: <T extends EmptyObject>(obj: T) => T;
3
+ //# sourceMappingURL=sortFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortFields.d.ts","sourceRoot":"","sources":["../../src/sortFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAQ5D,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAOrC,CAClB,CAAA"}
@@ -1,2 +1,3 @@
1
- export { subtleHashFunc } from './subtleHashNode.js';
2
- export { wasmHashFunc } from './wasmHashNode.js';
1
+ export * from './subtleHashNode.ts';
2
+ export * from './wasmHashNode.ts';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/worker/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA"}
@@ -1,2 +1,2 @@
1
-
2
- export { }
1
+ export {};
2
+ //# sourceMappingURL=subtleHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtleHash.d.ts","sourceRoot":"","sources":["../../../src/worker/subtleHash.ts"],"names":[],"mappings":""}
@@ -1,3 +1,2 @@
1
- declare const subtleHashFunc: () => void;
2
-
3
- export { subtleHashFunc };
1
+ export declare const subtleHashFunc: () => void;
2
+ //# sourceMappingURL=subtleHashNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtleHashNode.d.ts","sourceRoot":"","sources":["../../../src/worker/subtleHashNode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,cAAc,YAS1B,CAAA"}
@@ -1,2 +1,2 @@
1
-
2
- export { }
1
+ export {};
2
+ //# sourceMappingURL=wasmHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasmHash.d.ts","sourceRoot":"","sources":["../../../src/worker/wasmHash.ts"],"names":[],"mappings":""}
@@ -1,3 +1,2 @@
1
- declare const wasmHashFunc: () => void;
2
-
3
- export { wasmHashFunc };
1
+ export declare const wasmHashFunc: () => void;
2
+ //# sourceMappingURL=wasmHashNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasmHashNode.d.ts","sourceRoot":"","sources":["../../../src/worker/wasmHashNode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,YAWxB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/hash",
3
- "version": "3.9.18",
3
+ "version": "3.9.20",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -56,16 +56,16 @@
56
56
  "@xylabs/platform": "^4.5.1",
57
57
  "@xylabs/threads": "^4.5.1",
58
58
  "@xylabs/typeof": "^4.5.1",
59
- "@xyo-network/wasm": "^3.9.18",
59
+ "@xyo-network/wasm": "^3.9.20",
60
60
  "hash-wasm": "^4.12.0"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@xylabs/delay": "^4.5.1",
64
- "@xylabs/tsconfig": "^5.0.25",
64
+ "@xylabs/tsconfig": "^5.0.39",
65
65
  "@xylabs/vitest-extended": "^4.5.1",
66
66
  "esbuild": "^0.25.0",
67
- "publint": "^0.3.6",
68
- "typescript": "^5.7.3",
67
+ "publint": "^0.3.7",
68
+ "typescript": "^5.8.2",
69
69
  "vitest": "^3.0.7"
70
70
  },
71
71
  "publishConfig": {