@gurge/sdk-react-native 0.3.64 → 0.3.69

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.
@@ -1 +1 @@
1
- var e=`/assets/snarkjsWorkerLauncher-NqkZe2c_.js`;exports.default=e;
1
+ var e=`/assets/snarkjsWorkerLauncher-BgZW26bM.js`;exports.default=e;
@@ -1,4 +1,4 @@
1
1
  //#region common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url
2
- var e = "/assets/snarkjsWorkerLauncher-NqkZe2c_.js";
2
+ var e = "/assets/snarkjsWorkerLauncher-BgZW26bM.js";
3
3
  //#endregion
4
4
  export { e as default };
@@ -1 +1 @@
1
- var e=`/assets/utxoWorkerLauncher-BE-lFkMX.js`;exports.default=e;
1
+ var e=`/assets/utxoWorkerLauncher-DvkI4llp.js`;exports.default=e;
@@ -1,4 +1,4 @@
1
1
  //#region common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url
2
- var e = "/assets/utxoWorkerLauncher-BE-lFkMX.js";
2
+ var e = "/assets/utxoWorkerLauncher-DvkI4llp.js";
3
3
  //#endregion
4
4
  export { e as default };
@@ -1,13 +1,27 @@
1
- import { WorkerVariant as e } from "./worker.registry.mjs";
2
- import t from "./zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs";
3
- import n from "./snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs";
4
- import r from "./utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs";
5
- import "./viteWorkerURL.constant.fallback.mjs";
6
- //#region common/src/webworker/viteWorkerURL.constant.ts
7
- var i = async () => ({
8
- [e.ZKProof]: t,
9
- [e.SnarkJS]: n,
10
- [e.UTXO]: r
11
- });
12
- //#endregion
13
- export { i as getWorkerViteURL };
1
+
2
+ const domain = 'https://storage.googleapis.com/hinkal-workers-staging';
3
+
4
+ const WORKER_CDN_URLS = {
5
+ ZKProof: domain + '/0.3.69/' + 'zkProofWorkerLauncher.js',
6
+ SnarkJS: domain + '/0.3.69/' + 'snarkjsWorkerLauncher.js',
7
+ UTXO: domain + '/0.3.69/' + 'utxoWorkerLauncher.js',
8
+ };
9
+
10
+ // Returns a blob:// URL which points
11
+ // to a javascript file which will call
12
+ // importScripts with the given URL
13
+ async function getWorkerURL(url) {
14
+ const contentRes = await fetch(url);
15
+ const content = await contentRes.text()
16
+
17
+ return URL.createObjectURL(new Blob([content], { type: "application/javascript" }));
18
+ }
19
+
20
+ var e = /* @__PURE__ */ ((r) => (r.ZKProof = "ZKProof", r.SnarkJS = "SnarkJS", r.UTXO = "UTXO", r))(e || {});
21
+
22
+ const n = async () => ({
23
+ [e.ZKProof]: await getWorkerURL(WORKER_CDN_URLS.ZKProof),
24
+ [e.SnarkJS]: await getWorkerURL(WORKER_CDN_URLS.SnarkJS),
25
+ [e.UTXO]: await getWorkerURL(WORKER_CDN_URLS.UTXO),
26
+ });
27
+ export { n as getWorkerViteURL, WORKER_CDN_URLS };
@@ -1 +1 @@
1
- var e=`/assets/zkProofWorkerLauncher-XzdRmFBf.js`;exports.default=e;
1
+ var e=`/assets/zkProofWorkerLauncher-sNtxURBH.js`;exports.default=e;
@@ -1,4 +1,4 @@
1
1
  //#region common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url
2
- var e = "/assets/zkProofWorkerLauncher-XzdRmFBf.js";
2
+ var e = "/assets/zkProofWorkerLauncher-sNtxURBH.js";
3
3
  //#endregion
4
4
  export { e as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gurge/sdk-react-native",
3
- "version": "0.3.64",
3
+ "version": "0.3.69",
4
4
  "description": "Prebundled Hinkal SDK for React Native — no Metro config required.",
5
5
  "homepage": "hinkal.io",
6
6
  "author": {
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../libs/shared/sdk-react-native/src/react-native/HinkalWebViewWorker.cjs`);let t=require(`react/jsx-runtime`);var n=({children:n})=>(0,t.jsxs)(t.Fragment,{children:[n,(0,t.jsx)(e.default,{})]});exports.HinkalProvider=n;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`./HinkalWebViewWorker.cjs`);let t=require(`react/jsx-runtime`);var n=({children:n})=>(0,t.jsxs)(t.Fragment,{children:[n,(0,t.jsx)(e,{})]});exports.HinkalProvider=n;
@@ -1,6 +1,6 @@
1
- import e from "../libs/shared/sdk-react-native/src/react-native/HinkalWebViewWorker.mjs";
1
+ import e from "./HinkalWebViewWorker.mjs";
2
2
  import { Fragment as t, jsx as n, jsxs as r } from "react/jsx-runtime";
3
- //#region libs/shared/sdk-react-native/src/react-native/HinkalProvider.tsx
3
+ //#region ./react-native/HinkalProvider.tsx
4
4
  var i = ({ children: i }) => /* @__PURE__ */ r(t, { children: [i, /* @__PURE__ */ n(e, {})] });
5
5
  //#endregion
6
6
  export { i as HinkalProvider };
@@ -0,0 +1,98 @@
1
+ require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../common/src/webworker/workerFactory.cjs`),t=require(`../dist/libs/shared/workers-prebuild/viteWorkerURL.constant.es.cjs`),n=require(`./bridge/serialization.utils.cjs`),r=require(`./bridge/HinkalRNWorker.cjs`);let i=require(`react-native`),a=require(`react`),o=require(`react-native-webview`),s=require(`react/jsx-runtime`);var c=`${new URL(Object.values(t.WORKER_CDN_URLS)[0]).origin}/`;e.WorkerFactory.rnWorkerFactory=e=>new r.HinkalRNWorker(e);var l=`
2
+ if (!window.__hinkalPageBoot) (function(){
3
+ window.__hinkalPageBoot = true;
4
+ var URLS = ${JSON.stringify(t.WORKER_CDN_URLS)};
5
+ var BLOBS = {};
6
+
7
+ function replacer(_key, value){
8
+ if (typeof value === 'bigint') return { __bigint: value.toString() };
9
+ if (value instanceof Set) return { __set: Array.from(value) };
10
+ if (value instanceof Map) return { __map: Array.from(value.entries()) };
11
+ return value;
12
+ }
13
+ function revive(value){
14
+ if (value === null || typeof value !== 'object') return value;
15
+ var keys = Object.keys(value);
16
+ if (keys.length === 1) {
17
+ if (typeof value.__bigint === 'string') return BigInt(value.__bigint);
18
+ if (Array.isArray(value.__set)) return new Set(value.__set.map(revive));
19
+ if (Array.isArray(value.__map)) return new Map(value.__map.map(function(entry){ return [revive(entry[0]), revive(entry[1])]; }));
20
+ }
21
+ if (Array.isArray(value)) return value.map(revive);
22
+ var out = {}; for (var i = 0; i < keys.length; i++) out[keys[i]] = revive(value[keys[i]]); return out;
23
+ }
24
+ function post(payload){ try { window.ReactNativeWebView.postMessage(JSON.stringify(payload, replacer)); } catch(_){} }
25
+ function describe(error){
26
+ if (!error) return 'worker error';
27
+ if (error.message) return error.message;
28
+ if (error.error && error.error.stack) return error.error.stack;
29
+ try { return JSON.stringify(error); } catch(_){ return String(error); }
30
+ }
31
+
32
+ async function blobUrl(url){
33
+ if (BLOBS[url]) return BLOBS[url];
34
+ var response = await fetch(url);
35
+ if (!response.ok) throw new Error('HTTP ' + response.status + ' ' + url);
36
+ var body = await response.text();
37
+ BLOBS[url] = URL.createObjectURL(new Blob([${JSON.stringify(`(function(){
38
+ var post = self.postMessage.bind(self);
39
+ function describe(error){
40
+ if (!error) return 'unknown';
41
+ var parts = [];
42
+ if (error.message) parts.push(error.message);
43
+ if (error.error && error.error.stack) parts.push(error.error.stack);
44
+ if (!parts.length) { try { parts.push(JSON.stringify(error)); } catch(_) { parts.push(String(error)); } }
45
+ return parts.join(' | ');
46
+ }
47
+ self.addEventListener('error', function(event){ try { post({ __hinkalWorkerError: describe(event) }); } catch(_){} });
48
+ self.addEventListener('unhandledrejection', function(event){ try { post({ __hinkalWorkerError: 'unhandledrejection: ' + describe(event && event.reason) }); } catch(_){} });
49
+ try { post({ __hinkalWorkerReady: true }); } catch(_){}
50
+ })();`)}, body], { type: 'application/javascript' }));
51
+ return BLOBS[url];
52
+ }
53
+
54
+ function spawn(url){
55
+ try { return new Worker(url, { type: 'module' }); } catch(_){ return new Worker(url); }
56
+ }
57
+
58
+ window.handleMessage = async function(envelope){
59
+ var requestId = envelope && envelope.requestId;
60
+ var variant = envelope && envelope.variant;
61
+ var message = revive(envelope && envelope.message);
62
+ var url = URLS[variant];
63
+ if (!url) return post({ requestId: requestId, type: 'ERROR', error: 'Unknown variant: ' + variant });
64
+
65
+ var worker;
66
+ try { worker = spawn(await blobUrl(url)); }
67
+ catch (error) { return post({ requestId: requestId, type: 'ERROR', error: 'spawn failed: ' + describe(error) }); }
68
+
69
+ var done = false, ready = false, pending = message;
70
+ function finish(){ if (done) return; done = true; try { worker.terminate(); } catch(_){} }
71
+
72
+ worker.onmessage = function(event){
73
+ var data = event && event.data;
74
+ if (data && typeof data === 'object') {
75
+ if (data.__hinkalWorkerReady) {
76
+ ready = true;
77
+ try { worker.postMessage(pending); pending = null; }
78
+ catch (error) { post({ requestId: requestId, type: 'ERROR', error: 'postMessage failed: ' + describe(error) }); finish(); }
79
+ return;
80
+ }
81
+ if (typeof data.__hinkalWorkerError === 'string') {
82
+ post({ requestId: requestId, type: 'ERROR', error: data.__hinkalWorkerError });
83
+ finish();
84
+ return;
85
+ }
86
+ }
87
+ post({ requestId: requestId, type: 'RESULT', data: data });
88
+ finish();
89
+ };
90
+ worker.onerror = function(event){
91
+ post({ requestId: requestId, type: 'ERROR', error: (ready ? 'worker runtime: ' : 'worker startup: ') + describe(event) });
92
+ finish();
93
+ };
94
+ };
95
+
96
+ post({ type: 'READY' });
97
+ })();
98
+ true;`,u=`<!DOCTYPE html><html><head><meta charset="utf-8"/></head><body><script>${l}<\/script></body></html>`,d=i.StyleSheet.create({hiddenHost:{position:`absolute`,height:1,width:1,left:-9999,top:-9999,opacity:0}}),f=()=>{let e=(0,a.useRef)(null),t=(0,a.useRef)({ready:!1,queue:[]}),r=(0,a.useCallback)((t,r,a)=>{let o;try{o=JSON.stringify({requestId:t,variant:r,message:a},n.bigIntReplacer)}catch(e){i.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,{requestId:t,type:`ERROR`,error:`serialize failed: ${e?.message??e}`});return}e.current?.injectJavaScript(`window.handleMessage && window.handleMessage(${o}); true;`)},[]);(0,a.useEffect)(()=>{let e=i.DeviceEventEmitter.addListener(`TO_WEBVIEW_WORKER`,e=>{let n={requestId:e?.__requestId??``,variant:e?.variant??``,message:e?.message};t.current.ready?r(n.requestId,n.variant,n.message):t.current.queue.push(n)});return()=>e.remove()},[r]);let f=(0,a.useCallback)(e=>{let a;try{a=n.reviveBigInts(JSON.parse(e.nativeEvent.data))}catch(e){i.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,{type:`ERROR`,error:e?.message??`parse error`});return}if(a?.type===`READY`){t.current.ready=!0;let e=t.current.queue;t.current.queue=[],e.forEach(({requestId:e,variant:t,message:n})=>r(e,t,n));return}i.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,a)},[r]);return(0,s.jsx)(i.View,{pointerEvents:`none`,style:d.hiddenHost,children:(0,s.jsx)(o.WebView,{ref:e,source:{html:u,baseUrl:c},originWhitelist:[`*`],javaScriptEnabled:!0,domStorageEnabled:!0,androidLayerType:`hardware`,onMessage:f,onLoad:()=>e.current?.injectJavaScript(l)})})};module.exports=f;
@@ -0,0 +1,174 @@
1
+ import { WorkerFactory as e } from "../common/src/webworker/workerFactory.mjs";
2
+ import { WORKER_CDN_URLS as t } from "../common/src/webworker/viteWorkerURL.constant.mjs";
3
+ import { bigIntReplacer as n, reviveBigInts as r } from "./bridge/serialization.utils.mjs";
4
+ import { HinkalRNWorker as i } from "./bridge/HinkalRNWorker.mjs";
5
+ import { DeviceEventEmitter as a, StyleSheet as o, View as s } from "react-native";
6
+ import { useCallback as c, useEffect as l, useRef as u } from "react";
7
+ import { WebView as d } from "react-native-webview";
8
+ import { jsx as f } from "react/jsx-runtime";
9
+ //#region ./react-native/HinkalWebViewWorker.tsx
10
+ var p = `${new URL(Object.values(t)[0]).origin}/`;
11
+ e.rnWorkerFactory = (e) => new i(e);
12
+ var m = `
13
+ if (!window.__hinkalPageBoot) (function(){
14
+ window.__hinkalPageBoot = true;
15
+ var URLS = ${JSON.stringify(t)};
16
+ var BLOBS = {};
17
+
18
+ function replacer(_key, value){
19
+ if (typeof value === 'bigint') return { __bigint: value.toString() };
20
+ if (value instanceof Set) return { __set: Array.from(value) };
21
+ if (value instanceof Map) return { __map: Array.from(value.entries()) };
22
+ return value;
23
+ }
24
+ function revive(value){
25
+ if (value === null || typeof value !== 'object') return value;
26
+ var keys = Object.keys(value);
27
+ if (keys.length === 1) {
28
+ if (typeof value.__bigint === 'string') return BigInt(value.__bigint);
29
+ if (Array.isArray(value.__set)) return new Set(value.__set.map(revive));
30
+ if (Array.isArray(value.__map)) return new Map(value.__map.map(function(entry){ return [revive(entry[0]), revive(entry[1])]; }));
31
+ }
32
+ if (Array.isArray(value)) return value.map(revive);
33
+ var out = {}; for (var i = 0; i < keys.length; i++) out[keys[i]] = revive(value[keys[i]]); return out;
34
+ }
35
+ function post(payload){ try { window.ReactNativeWebView.postMessage(JSON.stringify(payload, replacer)); } catch(_){} }
36
+ function describe(error){
37
+ if (!error) return 'worker error';
38
+ if (error.message) return error.message;
39
+ if (error.error && error.error.stack) return error.error.stack;
40
+ try { return JSON.stringify(error); } catch(_){ return String(error); }
41
+ }
42
+
43
+ async function blobUrl(url){
44
+ if (BLOBS[url]) return BLOBS[url];
45
+ var response = await fetch(url);
46
+ if (!response.ok) throw new Error('HTTP ' + response.status + ' ' + url);
47
+ var body = await response.text();
48
+ BLOBS[url] = URL.createObjectURL(new Blob([${JSON.stringify("(function(){\n var post = self.postMessage.bind(self);\n function describe(error){\n if (!error) return 'unknown';\n var parts = [];\n if (error.message) parts.push(error.message);\n if (error.error && error.error.stack) parts.push(error.error.stack);\n if (!parts.length) { try { parts.push(JSON.stringify(error)); } catch(_) { parts.push(String(error)); } }\n return parts.join(' | ');\n }\n self.addEventListener('error', function(event){ try { post({ __hinkalWorkerError: describe(event) }); } catch(_){} });\n self.addEventListener('unhandledrejection', function(event){ try { post({ __hinkalWorkerError: 'unhandledrejection: ' + describe(event && event.reason) }); } catch(_){} });\n try { post({ __hinkalWorkerReady: true }); } catch(_){}\n})();")}, body], { type: 'application/javascript' }));
49
+ return BLOBS[url];
50
+ }
51
+
52
+ function spawn(url){
53
+ try { return new Worker(url, { type: 'module' }); } catch(_){ return new Worker(url); }
54
+ }
55
+
56
+ window.handleMessage = async function(envelope){
57
+ var requestId = envelope && envelope.requestId;
58
+ var variant = envelope && envelope.variant;
59
+ var message = revive(envelope && envelope.message);
60
+ var url = URLS[variant];
61
+ if (!url) return post({ requestId: requestId, type: 'ERROR', error: 'Unknown variant: ' + variant });
62
+
63
+ var worker;
64
+ try { worker = spawn(await blobUrl(url)); }
65
+ catch (error) { return post({ requestId: requestId, type: 'ERROR', error: 'spawn failed: ' + describe(error) }); }
66
+
67
+ var done = false, ready = false, pending = message;
68
+ function finish(){ if (done) return; done = true; try { worker.terminate(); } catch(_){} }
69
+
70
+ worker.onmessage = function(event){
71
+ var data = event && event.data;
72
+ if (data && typeof data === 'object') {
73
+ if (data.__hinkalWorkerReady) {
74
+ ready = true;
75
+ try { worker.postMessage(pending); pending = null; }
76
+ catch (error) { post({ requestId: requestId, type: 'ERROR', error: 'postMessage failed: ' + describe(error) }); finish(); }
77
+ return;
78
+ }
79
+ if (typeof data.__hinkalWorkerError === 'string') {
80
+ post({ requestId: requestId, type: 'ERROR', error: data.__hinkalWorkerError });
81
+ finish();
82
+ return;
83
+ }
84
+ }
85
+ post({ requestId: requestId, type: 'RESULT', data: data });
86
+ finish();
87
+ };
88
+ worker.onerror = function(event){
89
+ post({ requestId: requestId, type: 'ERROR', error: (ready ? 'worker runtime: ' : 'worker startup: ') + describe(event) });
90
+ finish();
91
+ };
92
+ };
93
+
94
+ post({ type: 'READY' });
95
+ })();
96
+ true;`, h = `<!DOCTYPE html><html><head><meta charset="utf-8"/></head><body><script>${m}<\/script></body></html>`, g = o.create({ hiddenHost: {
97
+ position: "absolute",
98
+ height: 1,
99
+ width: 1,
100
+ left: -9999,
101
+ top: -9999,
102
+ opacity: 0
103
+ } }), _ = () => {
104
+ let e = u(null), t = u({
105
+ ready: !1,
106
+ queue: []
107
+ }), i = c((t, r, i) => {
108
+ let o;
109
+ try {
110
+ o = JSON.stringify({
111
+ requestId: t,
112
+ variant: r,
113
+ message: i
114
+ }, n);
115
+ } catch (e) {
116
+ a.emit("FROM_WEBVIEW_WORKER", {
117
+ requestId: t,
118
+ type: "ERROR",
119
+ error: `serialize failed: ${e?.message ?? e}`
120
+ });
121
+ return;
122
+ }
123
+ e.current?.injectJavaScript(`window.handleMessage && window.handleMessage(${o}); true;`);
124
+ }, []);
125
+ l(() => {
126
+ let e = a.addListener("TO_WEBVIEW_WORKER", (e) => {
127
+ let n = {
128
+ requestId: e?.__requestId ?? "",
129
+ variant: e?.variant ?? "",
130
+ message: e?.message
131
+ };
132
+ t.current.ready ? i(n.requestId, n.variant, n.message) : t.current.queue.push(n);
133
+ });
134
+ return () => e.remove();
135
+ }, [i]);
136
+ let o = c((e) => {
137
+ let n;
138
+ try {
139
+ n = r(JSON.parse(e.nativeEvent.data));
140
+ } catch (e) {
141
+ a.emit("FROM_WEBVIEW_WORKER", {
142
+ type: "ERROR",
143
+ error: e?.message ?? "parse error"
144
+ });
145
+ return;
146
+ }
147
+ if (n?.type === "READY") {
148
+ t.current.ready = !0;
149
+ let e = t.current.queue;
150
+ t.current.queue = [], e.forEach(({ requestId: e, variant: t, message: n }) => i(e, t, n));
151
+ return;
152
+ }
153
+ a.emit("FROM_WEBVIEW_WORKER", n);
154
+ }, [i]);
155
+ return /* @__PURE__ */ f(s, {
156
+ pointerEvents: "none",
157
+ style: g.hiddenHost,
158
+ children: /* @__PURE__ */ f(d, {
159
+ ref: e,
160
+ source: {
161
+ html: h,
162
+ baseUrl: p
163
+ },
164
+ originWhitelist: ["*"],
165
+ javaScriptEnabled: !0,
166
+ domStorageEnabled: !0,
167
+ androidLayerType: "hardware",
168
+ onMessage: o,
169
+ onLoad: () => e.current?.injectJavaScript(m)
170
+ })
171
+ });
172
+ };
173
+ //#endregion
174
+ export { _ as default };
@@ -0,0 +1 @@
1
+ require(`../../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`./serialization.utils.cjs`);let t=require(`react-native`);var n=class{onmessage=null;onerror=null;requestId=e.nextRequestId();subscription;constructor(e){this.variant=e,this.subscription=t.DeviceEventEmitter.addListener(`FROM_WEBVIEW_WORKER`,e=>{!e||e.requestId!==this.requestId||(e.type===`RESULT`?this.onmessage?.({data:e.data}):e.type===`ERROR`&&this.onerror?.(Error(e.error??`WebView worker error`)))})}postMessage(e){t.DeviceEventEmitter.emit(`TO_WEBVIEW_WORKER`,{__requestId:this.requestId,variant:this.variant,message:e})}terminate(){this.subscription?.remove?.(),this.subscription=null}};exports.HinkalRNWorker=n;
@@ -0,0 +1,26 @@
1
+ import { nextRequestId as e } from "./serialization.utils.mjs";
2
+ import { DeviceEventEmitter as t } from "react-native";
3
+ //#region ./react-native/bridge/HinkalRNWorker.ts
4
+ var n = class {
5
+ onmessage = null;
6
+ onerror = null;
7
+ requestId = e();
8
+ subscription;
9
+ constructor(e) {
10
+ this.variant = e, this.subscription = t.addListener("FROM_WEBVIEW_WORKER", (e) => {
11
+ !e || e.requestId !== this.requestId || (e.type === "RESULT" ? this.onmessage?.({ data: e.data }) : e.type === "ERROR" && this.onerror?.(Error(e.error ?? "WebView worker error")));
12
+ });
13
+ }
14
+ postMessage(e) {
15
+ t.emit("TO_WEBVIEW_WORKER", {
16
+ __requestId: this.requestId,
17
+ variant: this.variant,
18
+ message: e
19
+ });
20
+ }
21
+ terminate() {
22
+ this.subscription?.remove?.(), this.subscription = null;
23
+ }
24
+ };
25
+ //#endregion
26
+ export { n as HinkalRNWorker };
@@ -0,0 +1 @@
1
+ var e=(e,t)=>typeof t==`bigint`?{__bigint:t.toString()}:t instanceof Set?{__set:Array.from(t)}:t instanceof Map?{__map:Array.from(t.entries())}:t,t=e=>{if(typeof e!=`object`||!e)return e;let n=Object.keys(e);if(n.length===1){if(typeof e.__bigint==`string`)return BigInt(e.__bigint);if(Array.isArray(e.__set))return new Set(e.__set.map(t));if(Array.isArray(e.__map))return new Map(e.__map.map(e=>[t(e[0]),t(e[1])]))}return Array.isArray(e)?e.map(t):Object.fromEntries(n.map(n=>[n,t(e[n])]))},n=()=>`hinkal-rnw-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`;exports.bigIntReplacer=e,exports.nextRequestId=n,exports.reviveBigInts=t;
@@ -0,0 +1,13 @@
1
+ //#region ./react-native/bridge/serialization.utils.ts
2
+ var e = (e, t) => typeof t == "bigint" ? { __bigint: t.toString() } : t instanceof Set ? { __set: Array.from(t) } : t instanceof Map ? { __map: Array.from(t.entries()) } : t, t = (e) => {
3
+ if (typeof e != "object" || !e) return e;
4
+ let n = Object.keys(e);
5
+ if (n.length === 1) {
6
+ if (typeof e.__bigint == "string") return BigInt(e.__bigint);
7
+ if (Array.isArray(e.__set)) return new Set(e.__set.map(t));
8
+ if (Array.isArray(e.__map)) return new Map(e.__map.map((e) => [t(e[0]), t(e[1])]));
9
+ }
10
+ return Array.isArray(e) ? e.map(t) : Object.fromEntries(n.map((n) => [n, t(e[n])]));
11
+ }, n = () => `hinkal-rnw-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 10)}`;
12
+ //#endregion
13
+ export { e as bigIntReplacer, n as nextRequestId, t as reviveBigInts };