@sabaaa1/common 0.1.3 → 0.1.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sabaaa1/common",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "homepage": "hinkal.pro",
5
5
  "author": {
6
6
  "name": "Hinkal Protocol"
@@ -1 +1 @@
1
- "use strict";const r=""+(typeof document>"u"?require("url").pathToFileURL(__dirname+"/../../assets/snarkjsWorkerLauncher-B7rmy0gx.js").href:new URL("../../assets/snarkjsWorkerLauncher-B7rmy0gx.js",document.currentScript&&document.currentScript.src||document.baseURI).href);module.exports=r;
1
+ "use strict";const e=""+(typeof document>"u"?require("url").pathToFileURL(__dirname+"/../../assets/snarkjsWorkerLauncher-Dsmwcy9L.js").href:new URL("../../assets/snarkjsWorkerLauncher-Dsmwcy9L.js",document.currentScript&&document.currentScript.src||document.baseURI).href);module.exports=e;
@@ -1,4 +1,4 @@
1
- const r = "" + new URL("../../assets/snarkjsWorkerLauncher-B7rmy0gx.js", import.meta.url).href;
1
+ const r = "" + new URL("../../assets/snarkjsWorkerLauncher-Dsmwcy9L.js", import.meta.url).href;
2
2
  export {
3
3
  r as default
4
4
  };
@@ -1 +1 @@
1
- "use strict";const e=""+(typeof document>"u"?require("url").pathToFileURL(__dirname+"/../../assets/utxoWorkerLauncher-BP1uNzSU.js").href:new URL("../../assets/utxoWorkerLauncher-BP1uNzSU.js",document.currentScript&&document.currentScript.src||document.baseURI).href);module.exports=e;
1
+ "use strict";const e=""+(typeof document>"u"?require("url").pathToFileURL(__dirname+"/../../assets/utxoWorkerLauncher-Bvb09Ewh.js").href:new URL("../../assets/utxoWorkerLauncher-Bvb09Ewh.js",document.currentScript&&document.currentScript.src||document.baseURI).href);module.exports=e;
@@ -1,4 +1,4 @@
1
- const e = "" + new URL("../../assets/utxoWorkerLauncher-BP1uNzSU.js", import.meta.url).href;
1
+ const e = "" + new URL("../../assets/utxoWorkerLauncher-Bvb09Ewh.js", import.meta.url).href;
2
2
  export {
3
3
  e as default
4
4
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("../../crypto/preProcessing.cjs"),a=require("../../data-structures/crypto-keys/keys.cjs"),T=require("../../data-structures/utxo/Utxo.cjs"),h=require("../../data-structures/crypto-keys/encryptDecryptUtxo.cjs"),y=require("../../data-structures/crypto-keys/decodeUTXO.cjs"),k=require("../workerProxy.cjs"),d=require("./utxoWorker.types.cjs"),c=new k.WorkerProxy,p=async({data:e})=>{const{utxos:r,nullifiers:s}=e,o=r.filter(t=>{const u=new T.Utxo(t);return!s.has(u.getNullifier())});c.postMessageToMainThread({utxoConstructors:o,stealthPairCache:a.stealthPairCacheDevice.serialize(),stealthAddressCache:a.stealthAddressCacheDevice.serialize()})},U=async({data:e})=>{const r=new a.UserKeys(e.signature),s=r.getShieldedPrivateKey(),o=e.encryptedOutputs.map(t=>{try{return t.isPositive?h.decryptUtxoConstructorArgs(Buffer.from(t.value.slice(2),"hex"),r):y.decodeUtxoConstructorArgs(t.value,s)}catch{return}}).filter(t=>t!==void 0&&t.amount!==0n);c.postMessageToMainThread(o)},x=async({data:e})=>{const r=new a.UserKeys(e.signature),s=[],{encryptedOutputs:o}=e;let{lastOutput:t}=e;const u=r.getShieldedPrivateKey();for(let l=0;l<o.length;l+=1){const n=o[l];if(t=n.value,n.isPositive)try{const i=h.decryptUtxo(Buffer.from(t.slice(2),"hex"),r);if(!i.erc20TokenAddress||!i.amount||!i.stealthAddress)throw Error("bruh");s.push(n)}catch{}else try{y.checkUtxoSignature(t,u)&&s.push(n)}catch{}}c.postMessageToMainThread({additionalEncryptedOutputs:s,lastOutput:t})},g=async e=>{try{await f.preProcessing();const{type:r}=e.payload;switch(r){case d.UtxoWorkerActionType.BATCH_FILTER_UTXOS_WITH_NULLIFIER:await p(e.payload);return;case d.UtxoWorkerActionType.BUILD_UTXOS:await U(e.payload);return;case d.UtxoWorkerActionType.DECIPHER_OUTPUTS:await x(e.payload);return;default:throw Error(`Unknown worker message type ${r}`)}}catch(r){console.error(r),c.postErrorToMainThread(r)}};c.attachWorkerSideOnMessage(g);exports.default=c;exports.handleBuildUtxosMessage=U;exports.handleDecipherMessage=x;exports.handleFilterUtxosWithNullifier=p;exports.onWorkerMessage=g;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h=require("buffer"),T=require("process"),k=require("../../crypto/preProcessing.cjs"),c=require("../../data-structures/crypto-keys/keys.cjs"),v=require("../../data-structures/utxo/Utxo.cjs"),p=require("../../data-structures/crypto-keys/encryptDecryptUtxo.cjs"),f=require("../../data-structures/crypto-keys/decodeUTXO.cjs"),w=require("../workerProxy.cjs"),d=require("./utxoWorker.types.cjs");globalThis.process=T;globalThis.Buffer=h.Buffer;const i=new w.WorkerProxy,g=async({data:e})=>{const{utxos:r,nullifiers:s}=e,o=r.filter(t=>{const l=new v.Utxo(t);return!s.has(l.getNullifier())});i.postMessageToMainThread({utxoConstructors:o,stealthPairCache:c.stealthPairCacheDevice.serialize(),stealthAddressCache:c.stealthAddressCacheDevice.serialize()})},U=async({data:e})=>{const r=new c.UserKeys(e.signature),s=r.getShieldedPrivateKey(),o=e.encryptedOutputs.map(t=>{try{return t.isPositive?p.decryptUtxoConstructorArgs(h.Buffer.from(t.value.slice(2),"hex"),r):f.decodeUtxoConstructorArgs(t.value,s)}catch{return}}).filter(t=>t!==void 0&&t.amount!==0n);i.postMessageToMainThread(o)},x=async({data:e})=>{const r=new c.UserKeys(e.signature),s=[],{encryptedOutputs:o}=e;let{lastOutput:t}=e;const l=r.getShieldedPrivateKey();for(let u=0;u<o.length;u+=1){const a=o[u];if(t=a.value,a.isPositive)try{const n=p.decryptUtxo(h.Buffer.from(t.slice(2),"hex"),r);if(!n.erc20TokenAddress||!n.amount||!n.stealthAddress)throw Error("bruh");s.push(a)}catch{}else try{f.checkUtxoSignature(t,l)&&s.push(a)}catch{}}i.postMessageToMainThread({additionalEncryptedOutputs:s,lastOutput:t})},y=async e=>{try{await k.preProcessing();const{type:r}=e.payload;switch(r){case d.UtxoWorkerActionType.BATCH_FILTER_UTXOS_WITH_NULLIFIER:await g(e.payload);return;case d.UtxoWorkerActionType.BUILD_UTXOS:await U(e.payload);return;case d.UtxoWorkerActionType.DECIPHER_OUTPUTS:await x(e.payload);return;default:throw Error(`Unknown worker message type ${r}`)}}catch(r){console.error(r),i.postErrorToMainThread(r)}};self.addEventListener("message",async e=>{await y(e.data)});self.addEventListener("error",e=>{console.error("Worker error:",e)});self.addEventListener("unhandledrejection",e=>{console.error("Worker unhandled rejection:",e.reason)});i.attachWorkerSideOnMessage(y);exports.default=i;exports.handleBuildUtxosMessage=U;exports.handleDecipherMessage=x;exports.handleFilterUtxosWithNullifier=g;exports.onWorkerMessage=y;
@@ -1,76 +1,89 @@
1
- import { preProcessing as u } from "../../crypto/preProcessing.mjs";
2
- import { stealthPairCacheDevice as p, stealthAddressCacheDevice as y, UserKeys as h } from "../../data-structures/crypto-keys/keys.mjs";
3
- import { Utxo as f } from "../../data-structures/utxo/Utxo.mjs";
4
- import { decryptUtxoConstructorArgs as m, decryptUtxo as g } from "../../data-structures/crypto-keys/encryptDecryptUtxo.mjs";
5
- import { decodeUtxoConstructorArgs as x, checkUtxoSignature as U } from "../../data-structures/crypto-keys/decodeUTXO.mjs";
6
- import { WorkerProxy as T } from "../workerProxy.mjs";
1
+ import { Buffer as h } from "buffer";
2
+ import f from "process";
3
+ import { preProcessing as y } from "../../crypto/preProcessing.mjs";
4
+ import { stealthPairCacheDevice as m, stealthAddressCacheDevice as g, UserKeys as u } from "../../data-structures/crypto-keys/keys.mjs";
5
+ import { Utxo as T } from "../../data-structures/utxo/Utxo.mjs";
6
+ import { decryptUtxoConstructorArgs as x, decryptUtxo as U } from "../../data-structures/crypto-keys/encryptDecryptUtxo.mjs";
7
+ import { decodeUtxoConstructorArgs as v, checkUtxoSignature as w } from "../../data-structures/crypto-keys/decodeUTXO.mjs";
8
+ import { WorkerProxy as k } from "../workerProxy.mjs";
7
9
  import { UtxoWorkerActionType as d } from "./utxoWorker.types.mjs";
8
- const i = new T(), w = async ({ data: e }) => {
9
- const { utxos: r, nullifiers: s } = e, o = r.filter((t) => {
10
- const n = new f(t);
11
- return !s.has(n.getNullifier());
10
+ globalThis.process = f;
11
+ globalThis.Buffer = h;
12
+ const n = new k(), P = async ({ data: e }) => {
13
+ const { utxos: r, nullifiers: o } = e, s = r.filter((t) => {
14
+ const c = new T(t);
15
+ return !o.has(c.getNullifier());
12
16
  });
13
- i.postMessageToMainThread({
14
- utxoConstructors: o,
15
- stealthPairCache: p.serialize(),
16
- stealthAddressCache: y.serialize()
17
+ n.postMessageToMainThread({
18
+ utxoConstructors: s,
19
+ stealthPairCache: m.serialize(),
20
+ stealthAddressCache: g.serialize()
17
21
  });
18
- }, P = async ({ data: e }) => {
19
- const r = new h(e.signature), s = r.getShieldedPrivateKey(), o = e.encryptedOutputs.map((t) => {
22
+ }, E = async ({ data: e }) => {
23
+ const r = new u(e.signature), o = r.getShieldedPrivateKey(), s = e.encryptedOutputs.map((t) => {
20
24
  try {
21
- return t.isPositive ? m(Buffer.from(t.value.slice(2), "hex"), r) : x(t.value, s);
25
+ return t.isPositive ? x(h.from(t.value.slice(2), "hex"), r) : v(t.value, o);
22
26
  } catch {
23
27
  return;
24
28
  }
25
29
  }).filter((t) => t !== void 0 && t.amount !== 0n);
26
- i.postMessageToMainThread(o);
27
- }, v = async ({ data: e }) => {
28
- const r = new h(e.signature), s = [], { encryptedOutputs: o } = e;
30
+ n.postMessageToMainThread(s);
31
+ }, M = async ({ data: e }) => {
32
+ const r = new u(e.signature), o = [], { encryptedOutputs: s } = e;
29
33
  let { lastOutput: t } = e;
30
- const n = r.getShieldedPrivateKey();
31
- for (let l = 0; l < o.length; l += 1) {
32
- const c = o[l];
33
- if (t = c.value, c.isPositive)
34
+ const c = r.getShieldedPrivateKey();
35
+ for (let l = 0; l < s.length; l += 1) {
36
+ const i = s[l];
37
+ if (t = i.value, i.isPositive)
34
38
  try {
35
- const a = g(Buffer.from(t.slice(2), "hex"), r);
39
+ const a = U(h.from(t.slice(2), "hex"), r);
36
40
  if (!a.erc20TokenAddress || !a.amount || !a.stealthAddress)
37
41
  throw Error("bruh");
38
- s.push(c);
42
+ o.push(i);
39
43
  } catch {
40
44
  }
41
45
  else
42
46
  try {
43
- U(t, n) && s.push(c);
47
+ w(t, c) && o.push(i);
44
48
  } catch {
45
49
  }
46
50
  }
47
- i.postMessageToMainThread({ additionalEncryptedOutputs: s, lastOutput: t });
48
- }, k = async (e) => {
51
+ n.postMessageToMainThread({ additionalEncryptedOutputs: o, lastOutput: t });
52
+ }, p = async (e) => {
49
53
  try {
50
- await u();
54
+ await y();
51
55
  const { type: r } = e.payload;
52
56
  switch (r) {
53
57
  case d.BATCH_FILTER_UTXOS_WITH_NULLIFIER:
54
- await w(e.payload);
58
+ await P(e.payload);
55
59
  return;
56
60
  case d.BUILD_UTXOS:
57
- await P(e.payload);
61
+ await E(e.payload);
58
62
  return;
59
63
  case d.DECIPHER_OUTPUTS:
60
- await v(e.payload);
64
+ await M(e.payload);
61
65
  return;
62
66
  default:
63
67
  throw Error(`Unknown worker message type ${r}`);
64
68
  }
65
69
  } catch (r) {
66
- console.error(r), i.postErrorToMainThread(r);
70
+ console.error(r), n.postErrorToMainThread(r);
67
71
  }
68
72
  };
69
- i.attachWorkerSideOnMessage(k);
73
+ self.addEventListener("message", async (e) => {
74
+ await p(e.data);
75
+ });
76
+ self.addEventListener("error", (e) => {
77
+ console.error("Worker error:", e);
78
+ });
79
+ self.addEventListener("unhandledrejection", (e) => {
80
+ console.error("Worker unhandled rejection:", e.reason);
81
+ });
82
+ n.attachWorkerSideOnMessage(p);
70
83
  export {
71
- i as default,
72
- P as handleBuildUtxosMessage,
73
- v as handleDecipherMessage,
74
- w as handleFilterUtxosWithNullifier,
75
- k as onWorkerMessage
84
+ n as default,
85
+ E as handleBuildUtxosMessage,
86
+ M as handleDecipherMessage,
87
+ P as handleFilterUtxosWithNullifier,
88
+ p as onWorkerMessage
76
89
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class o{isNode=!1;isSandbox=!1;errorCount=0;MAX_ERRORS=5;onmessage=null;onerror=null;_eventEmitter;get eventEmitter(){if(this._eventEmitter)return this._eventEmitter;if(this.isNode){const e=require("events");this._eventEmitter=new e}else this._eventEmitter=new EventTarget;return this._eventEmitter}constructor(){this.isNode=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,this.isSandbox=typeof window<"u"&&window.origin==="null"}terminate(){}postMessage(e){this.isNode?this.eventEmitter.emit("message",e):this.isSandbox?this.eventEmitter?.dispatchEvent(new CustomEvent("worker-message",{detail:e})):postMessage(e)}postMessageToMainThread(e){const s={data:e};if(this.onmessage){this.onmessage(s);return}const t=typeof self<"u"?self:globalThis;t.postMessage&&t.postMessage(e)}postErrorToMainThread(e){if(this.errorCount++,this.errorCount>this.MAX_ERRORS){console.error("Too many errors, stopping error reporting"),typeof self<"u"&&self.close&&self.close();return}const s={data:{error:e}};if(this.onerror){try{this.onerror(s)}catch(r){console.error("Error in onerror handler:",r)}return}const t={error:!0,message:e instanceof Error?e.message:String(e),stack:e instanceof Error?e.stack:void 0};try{const r=typeof self<"u"?self:globalThis;r.postMessage&&r.postMessage(t)}catch(r){console.error("Failed to post error:",r)}}attachWorkerSideOnMessage(e){if(this.isNode){this.eventEmitter.on("message",t=>{e(t)});return}if(this.isSandbox){this.eventEmitter.addEventListener("worker-message",t=>{e(t.detail)});return}const s=typeof self<"u"?self:globalThis;s.addEventListener&&s.addEventListener("message",t=>{if(this.errorCount=0,!t||!t.data){console.warn("Worker received invalid message:",t);return}try{e(t.data)}catch(r){console.error("Error in message handler:",r),this.postErrorToMainThread(r)}})}}exports.WorkerProxy=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class s{isNode=!1;isSandbox=!1;onmessage=null;onerror=null;_eventEmitter;get eventEmitter(){if(this._eventEmitter)return this._eventEmitter;if(this.isNode){const e=require("events");this._eventEmitter=new e}else this._eventEmitter=new EventTarget;return this._eventEmitter}constructor(){this.isNode=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,this.isSandbox=typeof window<"u"&&window.origin==="null"}terminate(){}postMessage(e){this.isNode?this.eventEmitter.emit("message",e):this.isSandbox?this.eventEmitter?.dispatchEvent(new CustomEvent("worker-message",{detail:e})):postMessage(e)}postMessageToMainThread(e){const t={data:e};this.onmessage?this.onmessage(t):postMessage(e)}postErrorToMainThread(e){const t={data:{error:e}};this.onerror?this.onerror(t):postMessage(e)}attachWorkerSideOnMessage(e){this.isNode?this.eventEmitter.on("message",t=>{e(t)}):this.isSandbox&&this.eventEmitter.addEventListener("worker-message",t=>{e(t.detail)})}}exports.WorkerProxy=s;
@@ -11,8 +11,6 @@
11
11
  export declare class WorkerProxy {
12
12
  private isNode;
13
13
  private isSandbox;
14
- private errorCount;
15
- private readonly MAX_ERRORS;
16
14
  /**
17
15
  * This allow browser or main thread to listen for worker response message
18
16
  * using the normal `worker.onmessage = () => {}` syntax. Is should only be side on the
@@ -1,8 +1,6 @@
1
- class n {
1
+ class i {
2
2
  isNode = !1;
3
3
  isSandbox = !1;
4
- errorCount = 0;
5
- MAX_ERRORS = 5;
6
4
  /**
7
5
  * This allow browser or main thread to listen for worker response message
8
6
  * using the normal `worker.onmessage = () => {}` syntax. Is should only be side on the
@@ -36,67 +34,21 @@ class n {
36
34
  this.isNode ? this.eventEmitter.emit("message", e) : this.isSandbox ? this.eventEmitter?.dispatchEvent(new CustomEvent("worker-message", { detail: e })) : postMessage(e);
37
35
  }
38
36
  postMessageToMainThread(e) {
39
- const r = { data: e };
40
- if (this.onmessage) {
41
- this.onmessage(r);
42
- return;
43
- }
44
- const t = typeof self < "u" ? self : globalThis;
45
- t.postMessage && t.postMessage(e);
37
+ const t = { data: e };
38
+ this.onmessage ? this.onmessage(t) : postMessage(e);
46
39
  }
47
40
  postErrorToMainThread(e) {
48
- if (this.errorCount++, this.errorCount > this.MAX_ERRORS) {
49
- console.error("Too many errors, stopping error reporting"), typeof self < "u" && self.close && self.close();
50
- return;
51
- }
52
- const r = { data: { error: e } };
53
- if (this.onerror) {
54
- try {
55
- this.onerror(r);
56
- } catch (s) {
57
- console.error("Error in onerror handler:", s);
58
- }
59
- return;
60
- }
61
- const t = {
62
- error: !0,
63
- message: e instanceof Error ? e.message : String(e),
64
- stack: e instanceof Error ? e.stack : void 0
65
- };
66
- try {
67
- const s = typeof self < "u" ? self : globalThis;
68
- s.postMessage && s.postMessage(t);
69
- } catch (s) {
70
- console.error("Failed to post error:", s);
71
- }
41
+ const t = { data: { error: e } };
42
+ this.onerror ? this.onerror(t) : postMessage(e);
72
43
  }
73
44
  attachWorkerSideOnMessage(e) {
74
- if (this.isNode) {
75
- this.eventEmitter.on("message", (t) => {
76
- e(t);
77
- });
78
- return;
79
- }
80
- if (this.isSandbox) {
81
- this.eventEmitter.addEventListener("worker-message", (t) => {
82
- e(t.detail);
83
- });
84
- return;
85
- }
86
- const r = typeof self < "u" ? self : globalThis;
87
- r.addEventListener && r.addEventListener("message", (t) => {
88
- if (this.errorCount = 0, !t || !t.data) {
89
- console.warn("Worker received invalid message:", t);
90
- return;
91
- }
92
- try {
93
- e(t.data);
94
- } catch (s) {
95
- console.error("Error in message handler:", s), this.postErrorToMainThread(s);
96
- }
45
+ this.isNode ? this.eventEmitter.on("message", (t) => {
46
+ e(t);
47
+ }) : this.isSandbox && this.eventEmitter.addEventListener("worker-message", (t) => {
48
+ e(t.detail);
97
49
  });
98
50
  }
99
51
  }
100
52
  export {
101
- n as WorkerProxy
53
+ i as WorkerProxy
102
54
  };
@@ -1 +1 @@
1
- "use strict";const r=""+(typeof document>"u"?require("url").pathToFileURL(__dirname+"/../../assets/zkProofWorkerLauncher-D-WqUrAW.js").href:new URL("../../assets/zkProofWorkerLauncher-D-WqUrAW.js",document.currentScript&&document.currentScript.src||document.baseURI).href);module.exports=r;
1
+ "use strict";const e=""+(typeof document>"u"?require("url").pathToFileURL(__dirname+"/../../assets/zkProofWorkerLauncher-CoKmCKjC.js").href:new URL("../../assets/zkProofWorkerLauncher-CoKmCKjC.js",document.currentScript&&document.currentScript.src||document.baseURI).href);module.exports=e;
@@ -1,4 +1,4 @@
1
- const r = "" + new URL("../../assets/zkProofWorkerLauncher-D-WqUrAW.js", import.meta.url).href;
1
+ const r = "" + new URL("../../assets/zkProofWorkerLauncher-CoKmCKjC.js", import.meta.url).href;
2
2
  export {
3
3
  r as default
4
4
  };