@gurge/sdk 0.3.32 → 0.3.36
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/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +2 -4
- package/common/src/data-structures/IndexedDB/key-val-store.cjs +1 -1
- package/common/src/data-structures/IndexedDB/key-val-store.mjs +1 -1
- package/common/src/webworker/package.json +12 -24
- package/common/src/webworker/viteWorkerURL.constant.cjs +3 -3
- package/common/src/webworker/viteWorkerURL.constant.mjs +3 -3
- package/package.json +12 -24
- package/providers/prepareWagmiHinkal.cjs +1 -1
- package/providers/prepareWagmiHinkal.mjs +5 -15
- package/react-native/HinkalProvider.cjs +1 -0
- package/react-native/HinkalProvider.d.ts +6 -0
- package/react-native/HinkalProvider.mjs +6 -0
- package/react-native/HinkalWebViewWorker.cjs +1 -1
- package/react-native/index.cjs +1 -0
- package/react-native/index.d.ts +2 -0
- package/react-native/index.mjs +10 -0
- package/react-native/metro-config.js +12 -0
- package/react-native/setup.cjs +1 -0
- package/react-native/setup.d.ts +0 -0
- package/react-native/setup.mjs +8 -0
- package/sdk/package.json.cjs +1 -1
- package/sdk/package.json.mjs +13 -19
- package/react-native/shims/globals.js +0 -15
- package/react-native/shims.d.ts +0 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../types/ethereum-network.types.cjs`),n=require(`../../types/balances.types.cjs`),r=require(`../../types/events.types.cjs`);require(`../../types/index.cjs`);const i=require(`../../functions/utils/map.utils.cjs`),a=require(`../../functions/utils/mutexes.utils.cjs`),o=require(`../../functions/utils/create-provider.cjs`),s=require(`../../functions/utils/getContractAddress.cjs`),c=require(`../private-balances/BalanceChangedHandler.cjs`),l=require(`../event-service/evm/ClientBlockchainEventEmitter.cjs`),u=require(`../event-service/solana/ClientSolanaBlockchainEventEmitter.cjs`);require(`../event-service/index.cjs`);const d=require(`../snapshot/SnapshotFetcherService.cjs`),f=require(`../snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs`),p=require(`../snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs`),m=require(`../snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs`),h=require(`../snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs`);require(`../snapshot/index.cjs`);let g=require(`@solana/web3.js`),_=require(`async-mutex`);var v=new Map,y=e=>i.getOrCreateMapValue(v,e,()=>new _.Mutex),b=async(i,_)=>{let v=_??i.getSupportedChains()
|
|
1
|
+
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../types/ethereum-network.types.cjs`),n=require(`../../types/balances.types.cjs`),r=require(`../../types/events.types.cjs`);require(`../../types/index.cjs`);const i=require(`../../functions/utils/map.utils.cjs`),a=require(`../../functions/utils/mutexes.utils.cjs`),o=require(`../../functions/utils/create-provider.cjs`),s=require(`../../functions/utils/getContractAddress.cjs`),c=require(`../private-balances/BalanceChangedHandler.cjs`),l=require(`../event-service/evm/ClientBlockchainEventEmitter.cjs`),u=require(`../event-service/solana/ClientSolanaBlockchainEventEmitter.cjs`);require(`../event-service/index.cjs`);const d=require(`../snapshot/SnapshotFetcherService.cjs`),f=require(`../snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs`),p=require(`../snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs`),m=require(`../snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs`),h=require(`../snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs`);require(`../snapshot/index.cjs`);let g=require(`@solana/web3.js`),_=require(`async-mutex`);var v=new Map,y=e=>i.getOrCreateMapValue(v,e,()=>new _.Mutex),b=async(i,_)=>{let v=(_??i.getSupportedChains()).map(_=>y(_).runExclusive(async()=>{i.commitmentsSnapshotServiceByChain[_]?.intervalClear(),i.nullifierSnapshotServiceByChain[_]?.intervalClear();let{maxPageSize:v,fetchRpcUrl:y,contractData:b}=e.networkRegistry[_],x;if(e.isSolanaLike(_)){let e=b.hinkalAddress;if(!y||!e)throw Error(`Fetch RPC URL or Solana program ID is not set`);x=new u.ClientSolanaBlockchainEventEmitter(_,o.createCustomSolanaConnection(y),new g.PublicKey(e),0,a.getChainBalanceFetchingMutex(_),v);let t=b.hinkalIdl;t&&x.setIdl(t);let n=new d.SnapshotFetcherService(_,e);i.commitmentsSnapshotServiceByChain[_]=new f.ClientSolanaCommitmentsSnapshotService(x,n),i.nullifierSnapshotServiceByChain[_]=new p.ClientSolanaNullifierSnapshotService(x,n)}else{let e=i.getContractWithFetcherByChainId(_,t.ContractType.HinkalContract),n=i.getContractWithFetcherByChainId(_,t.ContractType.DepositOnChainUtxos),o=a.getChainBalanceFetchingMutex(_);x=new l.ClientBlockchainEventEmitter(r.EventCategory.MainContractEvents,_,e,0,o,v,n);let c=new d.SnapshotFetcherService(_,s.getContractAddress(e));i.commitmentsSnapshotServiceByChain[_]=new m.ClientCommitmentsSnapshotService(x,c),i.nullifierSnapshotServiceByChain[_]=new h.ClientNullifierSnapshotService(x,c)}let S=i.commitmentsSnapshotServiceByChain[_],C=i.nullifierSnapshotServiceByChain[_];if(!S||!C)throw Error(`Missing snapshot service for chain ${_}`);await Promise.all([S.init(),C.init()]),await x.init(),i.merkleTreeHinkalByChain[_]=S.merkleTree,i.nullifiersByChain[_]=C.nullifiers,i.encryptedOutputsByChain[_]=S.encryptedOutputs,x.onEventsProcessed=e=>{e>0&&c.balanceChangedHandler.dispatch({updateType:n.PrivateBalanceUpdateType.FreshWithoutLoader,updateTokensListBefore:!0,chainIdToUpdate:_})}}));await Promise.allSettled(v)};exports.resetMerkleTrees=b;
|
|
@@ -21,9 +21,7 @@ import { PublicKey as _ } from "@solana/web3.js";
|
|
|
21
21
|
import { Mutex as v } from "async-mutex";
|
|
22
22
|
//#region libs/shared/common/src/data-structures/Hinkal/resetMerkleTrees.ts
|
|
23
23
|
var y = /* @__PURE__ */ new Map(), b = (e) => a(y, e, () => new v()), x = async (a, v) => {
|
|
24
|
-
let y = v ?? a.getSupportedChains()
|
|
25
|
-
console.log("[HinkalRnConnect] resetMerkleTrees: start", { chainsToReset: y });
|
|
26
|
-
let x = y.map((v) => b(v).runExclusive(async () => {
|
|
24
|
+
let y = (v ?? a.getSupportedChains()).map((v) => b(v).runExclusive(async () => {
|
|
27
25
|
a.commitmentsSnapshotServiceByChain[v]?.intervalClear(), a.nullifierSnapshotServiceByChain[v]?.intervalClear();
|
|
28
26
|
let { maxPageSize: y, fetchRpcUrl: b, contractData: x } = t[v], S;
|
|
29
27
|
if (e(v)) {
|
|
@@ -50,7 +48,7 @@ var y = /* @__PURE__ */ new Map(), b = (e) => a(y, e, () => new v()), x = async
|
|
|
50
48
|
});
|
|
51
49
|
};
|
|
52
50
|
}));
|
|
53
|
-
await Promise.allSettled(
|
|
51
|
+
await Promise.allSettled(y);
|
|
54
52
|
};
|
|
55
53
|
//#endregion
|
|
56
54
|
export { x as resetMerkleTrees };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../functions/utils/serialize.utils.cjs`),t=require(`../../constants/vite.constants.cjs`);require(`../../constants/index.cjs`);const n=require(`../cacheDevices/FileCacheDevice.cjs`);var r=()=>typeof globalThis<`u`&&`indexedDB`in globalThis&&globalThis.indexedDB!=null||t.isReactNative,i=class{idbPromise=null;idb(){return this.idbPromise
|
|
1
|
+
const e=require(`../../functions/utils/serialize.utils.cjs`),t=require(`../../constants/vite.constants.cjs`);require(`../../constants/index.cjs`);const n=require(`../cacheDevices/FileCacheDevice.cjs`);var r=()=>typeof globalThis<`u`&&`indexedDB`in globalThis&&globalThis.indexedDB!=null||t.isReactNative,i=class{idbPromise=null;idb(){return this.idbPromise||=Promise.resolve(require(`idb-keyval`)),this.idbPromise}async get(e){let{get:t}=await this.idb();return t(e)}async set(e,t){let{set:n}=await this.idb();await n(e,t)}async update(e,t){let{update:n}=await this.idb(),r;return await n(e,e=>(r=t(e),r)),r}},a=class{device;constructor(){let e=require(`path`);this.device=new n.FileCacheDevice(!0,e.resolve(process.cwd(),`hinkalKeyValCache.json`))}async get(t){let n=this.device.get(t);if(n)return e.CustomJSONParse(n)}async set(t,n){this.device.set(t,e.CustomJSONStringify(n))}async update(e,t){let n=t(await this.get(e));return await this.set(e,n),n}},o=r()?new i:new a;exports.keyValStore=o;
|
|
@@ -7,7 +7,7 @@ import { FileCacheDevice as i } from "../cacheDevices/FileCacheDevice.mjs";
|
|
|
7
7
|
var a = () => typeof globalThis < "u" && "indexedDB" in globalThis && globalThis.indexedDB != null || r, o = class {
|
|
8
8
|
idbPromise = null;
|
|
9
9
|
idb() {
|
|
10
|
-
return this.idbPromise
|
|
10
|
+
return this.idbPromise ||= Promise.resolve(e("idb-keyval")), this.idbPromise;
|
|
11
11
|
}
|
|
12
12
|
async get(e) {
|
|
13
13
|
let { get: t } = await this.idb();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gurge/sdk",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.36",
|
|
4
4
|
"homepage": "hinkal.io",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hinkal Protocol"
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
"exports": {
|
|
15
15
|
".": {
|
|
16
16
|
"types": "./index.d.ts",
|
|
17
|
-
"react-native":
|
|
17
|
+
"react-native": {
|
|
18
|
+
"types": "./react-native/index.d.ts",
|
|
19
|
+
"import": "./react-native/index.mjs",
|
|
20
|
+
"default": "./react-native/index.cjs"
|
|
21
|
+
},
|
|
18
22
|
"import": "./index.mjs",
|
|
19
23
|
"default": "./index.cjs"
|
|
20
24
|
},
|
|
@@ -66,14 +70,7 @@
|
|
|
66
70
|
"import": "./providers/prepareSolanaHinkal.mjs",
|
|
67
71
|
"default": "./providers/prepareSolanaHinkal.cjs"
|
|
68
72
|
},
|
|
69
|
-
"./react-native/
|
|
70
|
-
"types": "./react-native/HinkalWebViewWorker.d.ts",
|
|
71
|
-
"react-native": "./react-native/HinkalWebViewWorker.cjs",
|
|
72
|
-
"import": "./react-native/HinkalWebViewWorker.mjs",
|
|
73
|
-
"default": "./react-native/HinkalWebViewWorker.cjs"
|
|
74
|
-
},
|
|
75
|
-
"./react-native/metro-config": "./react-native/metro-config.js",
|
|
76
|
-
"./react-native/shims/*": "./react-native/shims/*"
|
|
73
|
+
"./react-native/metro-config": "./react-native/metro-config.js"
|
|
77
74
|
},
|
|
78
75
|
"types": "./index.d.ts",
|
|
79
76
|
"scripts": {
|
|
@@ -111,14 +108,14 @@
|
|
|
111
108
|
"uuid": "^9.0.1",
|
|
112
109
|
"node-forge": "^1.3.1",
|
|
113
110
|
"poseidon-lite": "^0.3.0",
|
|
114
|
-
"tronweb": "^6.2.0"
|
|
111
|
+
"tronweb": "^6.2.0",
|
|
112
|
+
"@react-native-async-storage/async-storage": "^2.2.0",
|
|
113
|
+
"assert": "^2.1.0",
|
|
114
|
+
"react-native-get-random-values": "^1.11.0"
|
|
115
115
|
},
|
|
116
116
|
"peerDependencies": {
|
|
117
117
|
"wagmi": "2.13.3",
|
|
118
|
-
"@walletconnect/utils": "^2.17.2"
|
|
119
|
-
"react": "*",
|
|
120
|
-
"react-native": "*",
|
|
121
|
-
"react-native-webview": "*"
|
|
118
|
+
"@walletconnect/utils": "^2.17.2"
|
|
122
119
|
},
|
|
123
120
|
"peerDependenciesMeta": {
|
|
124
121
|
"wagmi": {
|
|
@@ -126,15 +123,6 @@
|
|
|
126
123
|
},
|
|
127
124
|
"@walletconnect/utils": {
|
|
128
125
|
"optional": true
|
|
129
|
-
},
|
|
130
|
-
"react": {
|
|
131
|
-
"optional": true
|
|
132
|
-
},
|
|
133
|
-
"react-native": {
|
|
134
|
-
"optional": true
|
|
135
|
-
},
|
|
136
|
-
"react-native-webview": {
|
|
137
|
-
"optional": true
|
|
138
126
|
}
|
|
139
127
|
}
|
|
140
128
|
}
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
var e = /* @__PURE__ */ ((r) => (r.ZKProof = "ZKProof", r.SnarkJS = "SnarkJS", r.UTXO = "UTXO", r))(e || {});
|
|
15
15
|
|
|
16
16
|
const n = async () => ({
|
|
17
|
-
[e.ZKProof]: await getWorkerURL(domain + '/0.3.
|
|
18
|
-
[e.SnarkJS]: await getWorkerURL(domain + '/0.3.
|
|
19
|
-
[e.UTXO]: await getWorkerURL(domain + '/0.3.
|
|
17
|
+
[e.ZKProof]: await getWorkerURL(domain + '/0.3.36/' + 'zkProofWorkerLauncher.js'),
|
|
18
|
+
[e.SnarkJS]: await getWorkerURL(domain + '/0.3.36/' + 'snarkjsWorkerLauncher.js'),
|
|
19
|
+
[e.UTXO]: await getWorkerURL(domain + '/0.3.36/' + 'utxoWorkerLauncher.js'),
|
|
20
20
|
});
|
|
21
21
|
exports.getWorkerViteURL = n;
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
var e = /* @__PURE__ */ ((r) => (r.ZKProof = "ZKProof", r.SnarkJS = "SnarkJS", r.UTXO = "UTXO", r))(e || {});
|
|
15
15
|
|
|
16
16
|
const n = async () => ({
|
|
17
|
-
[e.ZKProof]: await getWorkerURL(domain + '/0.3.
|
|
18
|
-
[e.SnarkJS]: await getWorkerURL(domain + '/0.3.
|
|
19
|
-
[e.UTXO]: await getWorkerURL(domain + '/0.3.
|
|
17
|
+
[e.ZKProof]: await getWorkerURL(domain + '/0.3.36/' + 'zkProofWorkerLauncher.js'),
|
|
18
|
+
[e.SnarkJS]: await getWorkerURL(domain + '/0.3.36/' + 'snarkjsWorkerLauncher.js'),
|
|
19
|
+
[e.UTXO]: await getWorkerURL(domain + '/0.3.36/' + 'utxoWorkerLauncher.js'),
|
|
20
20
|
});
|
|
21
21
|
export { n as getWorkerViteURL };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gurge/sdk",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.36",
|
|
4
4
|
"homepage": "hinkal.io",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hinkal Protocol"
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
"exports": {
|
|
15
15
|
".": {
|
|
16
16
|
"types": "./index.d.ts",
|
|
17
|
-
"react-native":
|
|
17
|
+
"react-native": {
|
|
18
|
+
"types": "./react-native/index.d.ts",
|
|
19
|
+
"import": "./react-native/index.mjs",
|
|
20
|
+
"default": "./react-native/index.cjs"
|
|
21
|
+
},
|
|
18
22
|
"import": "./index.mjs",
|
|
19
23
|
"default": "./index.cjs"
|
|
20
24
|
},
|
|
@@ -66,14 +70,7 @@
|
|
|
66
70
|
"import": "./providers/prepareSolanaHinkal.mjs",
|
|
67
71
|
"default": "./providers/prepareSolanaHinkal.cjs"
|
|
68
72
|
},
|
|
69
|
-
"./react-native/
|
|
70
|
-
"types": "./react-native/HinkalWebViewWorker.d.ts",
|
|
71
|
-
"react-native": "./react-native/HinkalWebViewWorker.cjs",
|
|
72
|
-
"import": "./react-native/HinkalWebViewWorker.mjs",
|
|
73
|
-
"default": "./react-native/HinkalWebViewWorker.cjs"
|
|
74
|
-
},
|
|
75
|
-
"./react-native/metro-config": "./react-native/metro-config.js",
|
|
76
|
-
"./react-native/shims/*": "./react-native/shims/*"
|
|
73
|
+
"./react-native/metro-config": "./react-native/metro-config.js"
|
|
77
74
|
},
|
|
78
75
|
"types": "./index.d.ts",
|
|
79
76
|
"scripts": {
|
|
@@ -111,14 +108,14 @@
|
|
|
111
108
|
"uuid": "^9.0.1",
|
|
112
109
|
"node-forge": "^1.3.1",
|
|
113
110
|
"poseidon-lite": "^0.3.0",
|
|
114
|
-
"tronweb": "^6.2.0"
|
|
111
|
+
"tronweb": "^6.2.0",
|
|
112
|
+
"@react-native-async-storage/async-storage": "^2.2.0",
|
|
113
|
+
"assert": "^2.1.0",
|
|
114
|
+
"react-native-get-random-values": "^1.11.0"
|
|
115
115
|
},
|
|
116
116
|
"peerDependencies": {
|
|
117
117
|
"wagmi": "2.13.3",
|
|
118
|
-
"@walletconnect/utils": "^2.17.2"
|
|
119
|
-
"react": "*",
|
|
120
|
-
"react-native": "*",
|
|
121
|
-
"react-native-webview": "*"
|
|
118
|
+
"@walletconnect/utils": "^2.17.2"
|
|
122
119
|
},
|
|
123
120
|
"peerDependenciesMeta": {
|
|
124
121
|
"wagmi": {
|
|
@@ -126,15 +123,6 @@
|
|
|
126
123
|
},
|
|
127
124
|
"@walletconnect/utils": {
|
|
128
125
|
"optional": true
|
|
129
|
-
},
|
|
130
|
-
"react": {
|
|
131
|
-
"optional": true
|
|
132
|
-
},
|
|
133
|
-
"react-native": {
|
|
134
|
-
"optional": true
|
|
135
|
-
},
|
|
136
|
-
"react-native-webview": {
|
|
137
|
-
"optional": true
|
|
138
126
|
}
|
|
139
127
|
}
|
|
140
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../common/src/crypto/preProcessing.cjs`),t=require(`../services/Hinkal.cjs`);require(`../services/index.cjs`);const n=require(`../common/src/providers/WagmiProviderAdapter.cjs`);var r=(
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../common/src/crypto/preProcessing.cjs`),t=require(`../services/Hinkal.cjs`);require(`../services/index.cjs`);const n=require(`../common/src/providers/WagmiProviderAdapter.cjs`);var r=async(r,i)=>{await e.preProcessing();let a=new t.Hinkal,o=n.default();return o.initConfig?.(i),await a.initProviderAdapter(r,o),await a.initUserKeys(),await a.resetMerkle(),a};exports.prepareWagmiHinkal=r;
|
|
@@ -3,20 +3,10 @@ import { Hinkal as t } from "../services/Hinkal.mjs";
|
|
|
3
3
|
import "../services/index.mjs";
|
|
4
4
|
import n from "../common/src/providers/WagmiProviderAdapter.mjs";
|
|
5
5
|
//#region libs/shared/sdk/src/providers/prepareWagmiHinkal.ts
|
|
6
|
-
var r = (
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
r("start", { connectorId: i?.id }), r("preProcessing"), await e(), r("preProcessing done", { ms: Date.now() - o });
|
|
12
|
-
let s = new t(), c = n();
|
|
13
|
-
return c.initConfig?.(a), r("initProviderAdapter"), await s.initProviderAdapter(i, c), r("initProviderAdapter done", { ms: Date.now() - o }), r("initUserKeys (wallet sign prompt)"), await s.initUserKeys(), r("initUserKeys done", { ms: Date.now() - o }), r("resetMerkle"), await s.resetMerkle(), r("resetMerkle done", { ms: Date.now() - o }), r("complete", { totalMs: Date.now() - o }), s;
|
|
14
|
-
} catch (e) {
|
|
15
|
-
throw r("error", {
|
|
16
|
-
ms: Date.now() - o,
|
|
17
|
-
err: String(e)
|
|
18
|
-
}), e;
|
|
19
|
-
}
|
|
6
|
+
var r = async (r, i) => {
|
|
7
|
+
await e();
|
|
8
|
+
let a = new t(), o = n();
|
|
9
|
+
return o.initConfig?.(i), await a.initProviderAdapter(r, o), await a.initUserKeys(), await a.resetMerkle(), a;
|
|
20
10
|
};
|
|
21
11
|
//#endregion
|
|
22
|
-
export {
|
|
12
|
+
export { r as prepareWagmiHinkal };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
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.default,{})]});exports.HinkalProvider=n;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import e from "./HinkalWebViewWorker.mjs";
|
|
2
|
+
import { Fragment as t, jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
3
|
+
//#region libs/shared/sdk/src/react-native/HinkalProvider.tsx
|
|
4
|
+
var i = ({ children: i }) => /* @__PURE__ */ r(t, { children: [i, /* @__PURE__ */ n(e, {})] });
|
|
5
|
+
//#endregion
|
|
6
|
+
export { i as HinkalProvider };
|
|
@@ -95,4 +95,4 @@ if (!window.__hinkalPageBoot) (function(){
|
|
|
95
95
|
|
|
96
96
|
post({ type: 'READY' });
|
|
97
97
|
})();
|
|
98
|
-
true;`,u=`<!DOCTYPE html><html><head><meta charset="utf-8"/></head><body><script>${l}<\/script></body></html>`,d=a.StyleSheet.create({hiddenHost:{position:`absolute`,height:1,width:1,left:-9999,top:-9999,opacity:0}}),f=()=>{let e=(0,i.useRef)(null),t=(0,i.useRef)({ready:!1,queue:[]}),r=(0,i.useCallback)((t,r,i)=>{let o;try{o=JSON.stringify({requestId:t,variant:r,message:i},n.bigIntReplacer)}catch(e){a.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,i.useEffect)(()=>{let e=a.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,i.useCallback)(e=>{let i;try{i=n.reviveBigInts(JSON.parse(e.nativeEvent.data))}catch(e){a.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,{type:`ERROR`,error:e?.message??`parse error`});return}if(i?.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}a.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,i)},[r]);return(0,s.jsx)(a.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)})})};
|
|
98
|
+
true;`,u=`<!DOCTYPE html><html><head><meta charset="utf-8"/></head><body><script>${l}<\/script></body></html>`,d=a.StyleSheet.create({hiddenHost:{position:`absolute`,height:1,width:1,left:-9999,top:-9999,opacity:0}}),f=()=>{let e=(0,i.useRef)(null),t=(0,i.useRef)({ready:!1,queue:[]}),r=(0,i.useCallback)((t,r,i)=>{let o;try{o=JSON.stringify({requestId:t,variant:r,message:i},n.bigIntReplacer)}catch(e){a.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,i.useEffect)(()=>{let e=a.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,i.useCallback)(e=>{let i;try{i=n.reviveBigInts(JSON.parse(e.nativeEvent.data))}catch(e){a.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,{type:`ERROR`,error:e?.message??`parse error`});return}if(i?.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}a.DeviceEventEmitter.emit(`FROM_WEBVIEW_WORKER`,i)},[r]);return(0,s.jsx)(a.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)})})};exports.default=f;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../common/src/types/external-action.types.cjs`),t=require(`../common/src/types/balances.types.cjs`),n=require(`../common/src/functions/pre-transaction/getFeeStructure.cjs`),r=require(`../common/src/crypto/preProcessing.cjs`),i=require(`../services/Hinkal.cjs`),a=require(`../functions/utils/refreshBalance.cjs`),o=require(`../functions/integrations/swapApi.cjs`);require(`../index.cjs`);const s=require(`./HinkalProvider.cjs`);exports.ExternalActionId=e.ExternalActionId,exports.Hinkal=i.Hinkal,exports.HinkalProvider=s.HinkalProvider,exports.PrivateBalanceUpdateType=t.PrivateBalanceUpdateType,exports.getEvmSwapPrices=o.getEvmSwapPrices,exports.getFeeStructure=n.getFeeStructure,exports.getSolanaSwapPrices=o.getSolanaSwapPrices,exports.preProcessing=r.preProcessing,exports.refreshBalance=a.refreshBalance;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ExternalActionId as e } from "../common/src/types/external-action.types.mjs";
|
|
2
|
+
import { PrivateBalanceUpdateType as t } from "../common/src/types/balances.types.mjs";
|
|
3
|
+
import { getFeeStructure as n } from "../common/src/functions/pre-transaction/getFeeStructure.mjs";
|
|
4
|
+
import { preProcessing as r } from "../common/src/crypto/preProcessing.mjs";
|
|
5
|
+
import { Hinkal as i } from "../services/Hinkal.mjs";
|
|
6
|
+
import { refreshBalance as a } from "../functions/utils/refreshBalance.mjs";
|
|
7
|
+
import { getEvmSwapPrices as o, getSolanaSwapPrices as s } from "../functions/integrations/swapApi.mjs";
|
|
8
|
+
import "../index.mjs";
|
|
9
|
+
import { HinkalProvider as c } from "./HinkalProvider.mjs";
|
|
10
|
+
export { e as ExternalActionId, i as Hinkal, c as HinkalProvider, t as PrivateBalanceUpdateType, o as getEvmSwapPrices, n as getFeeStructure, s as getSolanaSwapPrices, r as preProcessing, a as refreshBalance };
|
|
@@ -8,10 +8,13 @@
|
|
|
8
8
|
*
|
|
9
9
|
* const config = getDefaultConfig(__dirname);
|
|
10
10
|
* module.exports = applyHinkalMetroConfig(config);
|
|
11
|
+
*
|
|
12
|
+
* Wrap your app with `HinkalProvider` from `@hinkal/sdk`.
|
|
11
13
|
*/
|
|
12
14
|
const path = require('path');
|
|
13
15
|
|
|
14
16
|
const shimDir = path.join(__dirname, 'shims');
|
|
17
|
+
const setupModule = path.join(__dirname, 'setup.cjs');
|
|
15
18
|
const shim = (name) => ({
|
|
16
19
|
filePath: path.join(shimDir, `${name}.js`),
|
|
17
20
|
type: 'sourceFile',
|
|
@@ -84,6 +87,15 @@ const applyHinkalMetroConfig = (config) => {
|
|
|
84
87
|
return context.resolveRequest(context, moduleName, platform);
|
|
85
88
|
};
|
|
86
89
|
|
|
90
|
+
const upstreamGetModulesRunBeforeMainModule = config.serializer?.getModulesRunBeforeMainModule;
|
|
91
|
+
config.serializer = {
|
|
92
|
+
...(config.serializer ?? {}),
|
|
93
|
+
getModulesRunBeforeMainModule: () => [
|
|
94
|
+
...(upstreamGetModulesRunBeforeMainModule?.() ?? []),
|
|
95
|
+
setupModule,
|
|
96
|
+
],
|
|
97
|
+
};
|
|
98
|
+
|
|
87
99
|
return config;
|
|
88
100
|
};
|
|
89
101
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require(`../_virtual/_rolldown/runtime.cjs`);let t=require(`buffer`),n=require(`react-native`);n=e.__toESM(n),require(`react-native-get-random-values`),global.Buffer=t.Buffer,globalThis.indexedDB===void 0&&(globalThis.indexedDB={}),global.require===void 0&&(global.require=e=>{if(e===`react-native`)return n;throw Error(`global.require shim: unsupported module "${e}"`)});
|
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Buffer as e } from "buffer";
|
|
2
|
+
import * as t from "react-native";
|
|
3
|
+
import "react-native-get-random-values";
|
|
4
|
+
global.Buffer = e, globalThis.indexedDB === void 0 && (globalThis.indexedDB = {}), global.require === void 0 && (global.require = (e) => {
|
|
5
|
+
if (e === "react-native") return t;
|
|
6
|
+
throw Error(`global.require shim: unsupported module "${e}"`);
|
|
7
|
+
});
|
|
8
|
+
//#endregion
|
package/sdk/package.json.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={name:`@gurge/sdk`,version:`0.3.
|
|
1
|
+
var e={name:`@gurge/sdk`,version:`0.3.35`,homepage:`hinkal.io`,author:{name:`Hinkal Protocol`},keywords:[`blockchain`,`privacy`,`zero-knowledge`,`stealth addresses`],exports:{".":{types:`./index.d.ts`,"react-native":{types:`./react-native/index.d.ts`,import:`./react-native/index.mjs`,default:`./react-native/index.cjs`},import:`./index.mjs`,default:`./index.cjs`},"./providers/WagmiProviderAdapter":{types:`./providers/WagmiProviderAdapter.d.ts`,"react-native":`./providers/WagmiProviderAdapter.cjs`,import:`./providers/WagmiProviderAdapter.mjs`,default:`./providers/WagmiProviderAdapter.cjs`},"./providers/EthersProviderAdapter":{types:`./providers/EthersProviderAdapter.d.ts`,"react-native":`./providers/EthersProviderAdapter.cjs`,import:`./providers/EthersProviderAdapter.mjs`,default:`./providers/EthersProviderAdapter.cjs`},"./providers/TronProviderAdapter":{types:`./providers/TronProviderAdapter.d.ts`,"react-native":`./providers/TronProviderAdapter.cjs`,import:`./providers/TronProviderAdapter.mjs`,default:`./providers/TronProviderAdapter.cjs`},"./providers/SolanaProviderAdapter":{types:`./providers/SolanaProviderAdapter.d.ts`,"react-native":`./providers/SolanaProviderAdapter.cjs`,import:`./providers/SolanaProviderAdapter.mjs`,default:`./providers/SolanaProviderAdapter.cjs`},"./providers/prepareEthersHinkal":{types:`./providers/prepareEthersHinkal.d.ts`,"react-native":`./providers/prepareEthersHinkal.cjs`,import:`./providers/prepareEthersHinkal.mjs`,default:`./providers/prepareEthersHinkal.cjs`},"./providers/prepareWagmiHinkal":{types:`./providers/prepareWagmiHinkal.d.ts`,"react-native":`./providers/prepareWagmiHinkal.cjs`,import:`./providers/prepareWagmiHinkal.mjs`,default:`./providers/prepareWagmiHinkal.cjs`},"./providers/prepareTronHinkal":{types:`./providers/prepareTronHinkal.d.ts`,"react-native":`./providers/prepareTronHinkal.cjs`,import:`./providers/prepareTronHinkal.mjs`,default:`./providers/prepareTronHinkal.cjs`},"./providers/prepareSolanaHinkal":{types:`./providers/prepareSolanaHinkal.d.ts`,"react-native":`./providers/prepareSolanaHinkal.cjs`,import:`./providers/prepareSolanaHinkal.mjs`,default:`./providers/prepareSolanaHinkal.cjs`},"./react-native/metro-config":`./react-native/metro-config.js`},types:`./index.d.ts`,scripts:{prebuild:`nx prebuild:workers`,build:`nx build`,lint:`nx lint`,test:`nx test`},devDependencies:{nx:`22.6.4`,vite:`^8.0.4`,"vite-plugin-dts":`^4.5.4`,"vite-tsconfig-paths":`^6.1.1`},dependencies:{"@coral-xyz/anchor":`^0.31.0`,"@solana/spl-token":`^0.4.14`,"@solana/web3.js":`^1.98.4`,"@solana/wallet-adapter-react":`^0.15.39`,axios:`^1.15.0`,"async-mutex":`^0.4.0`,bs58:`^6.0.0`,buffer:`6.0.3`,"circomlibjs-hinkal-fork":`^0.0.10`,dotenv:`^16.4.5`,ethers:`^6.15.0`,"idb-keyval":`6.2.1`,multiformats:`^9.4.2`,snarkjs:`0.7.5`,"libsodium-wrappers":`^0.8.2`,lodash:`^4.17.21`,tweetnacl:`^1.0.3`,process:`0.11.10`,"ua-parser-js":`^1.0.37`,uuid:`^9.0.1`,"node-forge":`^1.3.1`,"poseidon-lite":`^0.3.0`,tronweb:`^6.2.0`,"@react-native-async-storage/async-storage":`^2.2.0`,assert:`^2.1.0`,"react-native-get-random-values":`^1.11.0`},peerDependencies:{wagmi:`2.13.3`,"@walletconnect/utils":`^2.17.2`},peerDependenciesMeta:{wagmi:{optional:!0},"@walletconnect/utils":{optional:!0}}};exports.default=e;
|
package/sdk/package.json.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
var e = {
|
|
2
2
|
name: "@gurge/sdk",
|
|
3
|
-
version: "0.3.
|
|
3
|
+
version: "0.3.35",
|
|
4
4
|
homepage: "hinkal.io",
|
|
5
5
|
author: { name: "Hinkal Protocol" },
|
|
6
6
|
keywords: [
|
|
@@ -12,7 +12,11 @@ var e = {
|
|
|
12
12
|
exports: {
|
|
13
13
|
".": {
|
|
14
14
|
types: "./index.d.ts",
|
|
15
|
-
"react-native":
|
|
15
|
+
"react-native": {
|
|
16
|
+
types: "./react-native/index.d.ts",
|
|
17
|
+
import: "./react-native/index.mjs",
|
|
18
|
+
default: "./react-native/index.cjs"
|
|
19
|
+
},
|
|
16
20
|
import: "./index.mjs",
|
|
17
21
|
default: "./index.cjs"
|
|
18
22
|
},
|
|
@@ -64,14 +68,7 @@ var e = {
|
|
|
64
68
|
import: "./providers/prepareSolanaHinkal.mjs",
|
|
65
69
|
default: "./providers/prepareSolanaHinkal.cjs"
|
|
66
70
|
},
|
|
67
|
-
"./react-native/
|
|
68
|
-
types: "./react-native/HinkalWebViewWorker.d.ts",
|
|
69
|
-
"react-native": "./react-native/HinkalWebViewWorker.cjs",
|
|
70
|
-
import: "./react-native/HinkalWebViewWorker.mjs",
|
|
71
|
-
default: "./react-native/HinkalWebViewWorker.cjs"
|
|
72
|
-
},
|
|
73
|
-
"./react-native/metro-config": "./react-native/metro-config.js",
|
|
74
|
-
"./react-native/shims/*": "./react-native/shims/*"
|
|
71
|
+
"./react-native/metro-config": "./react-native/metro-config.js"
|
|
75
72
|
},
|
|
76
73
|
types: "./index.d.ts",
|
|
77
74
|
scripts: {
|
|
@@ -109,21 +106,18 @@ var e = {
|
|
|
109
106
|
uuid: "^9.0.1",
|
|
110
107
|
"node-forge": "^1.3.1",
|
|
111
108
|
"poseidon-lite": "^0.3.0",
|
|
112
|
-
tronweb: "^6.2.0"
|
|
109
|
+
tronweb: "^6.2.0",
|
|
110
|
+
"@react-native-async-storage/async-storage": "^2.2.0",
|
|
111
|
+
assert: "^2.1.0",
|
|
112
|
+
"react-native-get-random-values": "^1.11.0"
|
|
113
113
|
},
|
|
114
114
|
peerDependencies: {
|
|
115
115
|
wagmi: "2.13.3",
|
|
116
|
-
"@walletconnect/utils": "^2.17.2"
|
|
117
|
-
react: "*",
|
|
118
|
-
"react-native": "*",
|
|
119
|
-
"react-native-webview": "*"
|
|
116
|
+
"@walletconnect/utils": "^2.17.2"
|
|
120
117
|
},
|
|
121
118
|
peerDependenciesMeta: {
|
|
122
119
|
wagmi: { optional: !0 },
|
|
123
|
-
"@walletconnect/utils": { optional: !0 }
|
|
124
|
-
react: { optional: !0 },
|
|
125
|
-
"react-native": { optional: !0 },
|
|
126
|
-
"react-native-webview": { optional: !0 }
|
|
120
|
+
"@walletconnect/utils": { optional: !0 }
|
|
127
121
|
}
|
|
128
122
|
};
|
|
129
123
|
//#endregion
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Buffer } from "buffer";
|
|
2
|
-
import * as ReactNative from "react-native";
|
|
3
|
-
global.Buffer = Buffer;
|
|
4
|
-
|
|
5
|
-
// key-val-store probes indexedDB; without it the SDK falls back to FileKeyValStore (process.cwd).
|
|
6
|
-
if (typeof globalThis.indexedDB === "undefined") {
|
|
7
|
-
globalThis.indexedDB = {};
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
if (typeof global.require === "undefined") {
|
|
11
|
-
global.require = (m) => {
|
|
12
|
-
if (m === "react-native") return ReactNative;
|
|
13
|
-
throw new Error(`global.require shim: unsupported module "${m}"`);
|
|
14
|
-
};
|
|
15
|
-
}
|
package/react-native/shims.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
declare module '@hinkal/sdk/react-native/shims/globals';
|
|
2
|
-
declare module '@hinkal/sdk/react-native/shims/circomlibjs';
|
|
3
|
-
declare module '@hinkal/sdk/react-native/shims/circomlibjs-hinkal-fork';
|
|
4
|
-
declare module '@hinkal/sdk/react-native/shims/constants';
|
|
5
|
-
declare module '@hinkal/sdk/react-native/shims/crypto';
|
|
6
|
-
declare module '@hinkal/sdk/react-native/shims/ffjavascript';
|
|
7
|
-
declare module '@hinkal/sdk/react-native/shims/fs';
|
|
8
|
-
declare module '@hinkal/sdk/react-native/shims/idb-keyval';
|
|
9
|
-
declare module '@hinkal/sdk/react-native/shims/multiformats';
|
|
10
|
-
declare module '@hinkal/sdk/react-native/shims/os';
|
|
11
|
-
declare module '@hinkal/sdk/react-native/shims/path';
|
|
12
|
-
declare module '@hinkal/sdk/react-native/shims/readline';
|
|
13
|
-
declare module '@hinkal/sdk/react-native/shims/snarkjs';
|
|
14
|
-
declare module '@hinkal/sdk/react-native/shims/url';
|
|
15
|
-
declare module '@hinkal/sdk/react-native/shims/web-worker';
|
|
16
|
-
declare module '@hinkal/sdk/react-native/shims/worker_threads';
|