@unlink-xyz/core 0.1.6 → 0.1.8
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/dist/browser/index.js +257 -154
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/wallet/index.js +209 -153
- package/dist/browser/wallet/index.js.map +1 -1
- package/dist/config.d.ts +6 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +180 -77
- package/dist/index.js.map +1 -1
- package/dist/transactions/adapter.d.ts +34 -1
- package/dist/transactions/adapter.d.ts.map +1 -1
- package/dist/transactions/index.d.ts +1 -1
- package/dist/transactions/index.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/wallet/adapter.d.ts +2 -2
- package/dist/wallet/adapter.d.ts.map +1 -1
- package/dist/wallet/burner/service.d.ts +1 -0
- package/dist/wallet/burner/service.d.ts.map +1 -1
- package/dist/wallet/burner/types.d.ts +2 -2
- package/dist/wallet/burner/types.d.ts.map +1 -1
- package/dist/wallet/index.d.ts +2 -2
- package/dist/wallet/index.d.ts.map +1 -1
- package/dist/wallet/index.js +132 -76
- package/dist/wallet/index.js.map +1 -1
- package/dist/wallet/sdk.d.ts +2 -2
- package/dist/wallet/types.d.ts +49 -38
- package/dist/wallet/types.d.ts.map +1 -1
- package/dist/wallet/{unlink-wallet.d.ts → unlink.d.ts} +38 -31
- package/dist/wallet/unlink.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/wallet/unlink-wallet.d.ts.map +0 -1
|
@@ -3555,7 +3555,7 @@ var init_fs = __esm({
|
|
|
3555
3555
|
init_process();
|
|
3556
3556
|
init_buffer();
|
|
3557
3557
|
|
|
3558
|
-
// wallet/unlink
|
|
3558
|
+
// wallet/unlink.ts
|
|
3559
3559
|
init_process();
|
|
3560
3560
|
init_buffer();
|
|
3561
3561
|
|
|
@@ -3755,6 +3755,11 @@ function parseChainConfig(chain2, value) {
|
|
|
3755
3755
|
"artifactVersion",
|
|
3756
3756
|
raw.artifactVersion
|
|
3757
3757
|
).replace(/^\/+|\/+$/g, "");
|
|
3758
|
+
const adapterAddress = parseOptionalString(
|
|
3759
|
+
chain2,
|
|
3760
|
+
"adapterAddress",
|
|
3761
|
+
raw.adapterAddress
|
|
3762
|
+
);
|
|
3758
3763
|
const frostUrl = parseOptionalString(
|
|
3759
3764
|
chain2,
|
|
3760
3765
|
"frostUrl",
|
|
@@ -3765,13 +3770,33 @@ function parseChainConfig(chain2, value) {
|
|
|
3765
3770
|
"artifactBaseUrl",
|
|
3766
3771
|
raw.artifactBaseUrl
|
|
3767
3772
|
)?.replace(/\/+$/, "");
|
|
3773
|
+
let tokenAddresses;
|
|
3774
|
+
if (raw.tokenAddresses !== void 0) {
|
|
3775
|
+
if (raw.tokenAddresses === null || typeof raw.tokenAddresses !== "object" || Array.isArray(raw.tokenAddresses)) {
|
|
3776
|
+
throw new InitializationError(
|
|
3777
|
+
`Invalid SDK config for ${chain2}: tokenAddresses must be an object`
|
|
3778
|
+
);
|
|
3779
|
+
}
|
|
3780
|
+
tokenAddresses = {};
|
|
3781
|
+
for (const [name, addr] of Object.entries(
|
|
3782
|
+
raw.tokenAddresses
|
|
3783
|
+
)) {
|
|
3784
|
+
tokenAddresses[name] = parseRequiredString(
|
|
3785
|
+
chain2,
|
|
3786
|
+
`tokenAddresses.${name}`,
|
|
3787
|
+
addr
|
|
3788
|
+
);
|
|
3789
|
+
}
|
|
3790
|
+
}
|
|
3768
3791
|
return {
|
|
3769
3792
|
chainId,
|
|
3770
3793
|
gatewayUrl,
|
|
3771
3794
|
...frostUrl !== void 0 ? { frostUrl } : {},
|
|
3772
3795
|
poolAddress,
|
|
3796
|
+
...adapterAddress !== void 0 ? { adapterAddress } : {},
|
|
3773
3797
|
artifactVersion,
|
|
3774
|
-
...artifactBaseUrl !== void 0 ? { artifactBaseUrl } : { artifactBaseUrl: DEFAULT_ARTIFACT_BASE_URL }
|
|
3798
|
+
...artifactBaseUrl !== void 0 ? { artifactBaseUrl } : { artifactBaseUrl: DEFAULT_ARTIFACT_BASE_URL },
|
|
3799
|
+
...tokenAddresses !== void 0 ? { tokenAddresses } : {}
|
|
3775
3800
|
};
|
|
3776
3801
|
}
|
|
3777
3802
|
async function fetchChainConfig(chain2) {
|
|
@@ -28519,8 +28544,8 @@ var ContractUnknownEventPayload = class extends EventPayload {
|
|
|
28519
28544
|
/**
|
|
28520
28545
|
* @_event:
|
|
28521
28546
|
*/
|
|
28522
|
-
constructor(
|
|
28523
|
-
super(
|
|
28547
|
+
constructor(contract2, listener, filter, log) {
|
|
28548
|
+
super(contract2, listener, filter);
|
|
28524
28549
|
defineProperties(this, { log });
|
|
28525
28550
|
}
|
|
28526
28551
|
/**
|
|
@@ -28546,9 +28571,9 @@ var ContractEventPayload = class extends ContractUnknownEventPayload {
|
|
|
28546
28571
|
/**
|
|
28547
28572
|
* @_ignore:
|
|
28548
28573
|
*/
|
|
28549
|
-
constructor(
|
|
28550
|
-
super(
|
|
28551
|
-
const args =
|
|
28574
|
+
constructor(contract2, listener, filter, fragment, _log) {
|
|
28575
|
+
super(contract2, listener, filter, new EventLog(_log, contract2.interface, fragment));
|
|
28576
|
+
const args = contract2.interface.decodeEventLog(fragment, this.log.data, this.log.topics);
|
|
28552
28577
|
defineProperties(this, { args, fragment });
|
|
28553
28578
|
}
|
|
28554
28579
|
/**
|
|
@@ -28593,12 +28618,12 @@ function getResolver(value) {
|
|
|
28593
28618
|
var PreparedTopicFilter = class {
|
|
28594
28619
|
#filter;
|
|
28595
28620
|
fragment;
|
|
28596
|
-
constructor(
|
|
28621
|
+
constructor(contract2, fragment, args) {
|
|
28597
28622
|
defineProperties(this, { fragment });
|
|
28598
28623
|
if (fragment.inputs.length < args.length) {
|
|
28599
28624
|
throw new Error("too many arguments");
|
|
28600
28625
|
}
|
|
28601
|
-
const runner = getRunner(
|
|
28626
|
+
const runner = getRunner(contract2.runner, "resolveName");
|
|
28602
28627
|
const resolver = canResolve(runner) ? runner : null;
|
|
28603
28628
|
this.#filter = (async function() {
|
|
28604
28629
|
const resolvedArgs = await Promise.all(fragment.inputs.map((param, index) => {
|
|
@@ -28616,7 +28641,7 @@ var PreparedTopicFilter = class {
|
|
|
28616
28641
|
return value;
|
|
28617
28642
|
});
|
|
28618
28643
|
}));
|
|
28619
|
-
return
|
|
28644
|
+
return contract2.interface.encodeFilterTopics(fragment, resolvedArgs);
|
|
28620
28645
|
})();
|
|
28621
28646
|
}
|
|
28622
28647
|
getTopicFilter() {
|
|
@@ -28665,14 +28690,14 @@ async function resolveArgs(_runner, inputs, args) {
|
|
|
28665
28690
|
});
|
|
28666
28691
|
}));
|
|
28667
28692
|
}
|
|
28668
|
-
function buildWrappedFallback(
|
|
28693
|
+
function buildWrappedFallback(contract2) {
|
|
28669
28694
|
const populateTransaction = async function(overrides) {
|
|
28670
28695
|
const tx = await copyOverrides(overrides, ["data"]);
|
|
28671
|
-
tx.to = await
|
|
28696
|
+
tx.to = await contract2.getAddress();
|
|
28672
28697
|
if (tx.from) {
|
|
28673
|
-
tx.from = await resolveAddress(tx.from, getResolver(
|
|
28698
|
+
tx.from = await resolveAddress(tx.from, getResolver(contract2.runner));
|
|
28674
28699
|
}
|
|
28675
|
-
const iface =
|
|
28700
|
+
const iface = contract2.interface;
|
|
28676
28701
|
const noValue = getBigInt(tx.value || BN_09, "overrides.value") === BN_09;
|
|
28677
28702
|
const noData = (tx.data || "0x") === "0x";
|
|
28678
28703
|
if (iface.fallback && !iface.fallback.payable && iface.receive && !noData && !noValue) {
|
|
@@ -28685,27 +28710,27 @@ function buildWrappedFallback(contract) {
|
|
|
28685
28710
|
return tx;
|
|
28686
28711
|
};
|
|
28687
28712
|
const staticCall = async function(overrides) {
|
|
28688
|
-
const runner = getRunner(
|
|
28713
|
+
const runner = getRunner(contract2.runner, "call");
|
|
28689
28714
|
assert(canCall(runner), "contract runner does not support calling", "UNSUPPORTED_OPERATION", { operation: "call" });
|
|
28690
28715
|
const tx = await populateTransaction(overrides);
|
|
28691
28716
|
try {
|
|
28692
28717
|
return await runner.call(tx);
|
|
28693
28718
|
} catch (error) {
|
|
28694
28719
|
if (isCallException(error) && error.data) {
|
|
28695
|
-
throw
|
|
28720
|
+
throw contract2.interface.makeError(error.data, tx);
|
|
28696
28721
|
}
|
|
28697
28722
|
throw error;
|
|
28698
28723
|
}
|
|
28699
28724
|
};
|
|
28700
28725
|
const send = async function(overrides) {
|
|
28701
|
-
const runner =
|
|
28726
|
+
const runner = contract2.runner;
|
|
28702
28727
|
assert(canSend(runner), "contract runner does not support sending transactions", "UNSUPPORTED_OPERATION", { operation: "sendTransaction" });
|
|
28703
28728
|
const tx = await runner.sendTransaction(await populateTransaction(overrides));
|
|
28704
|
-
const provider = getProvider(
|
|
28705
|
-
return new ContractTransactionResponse(
|
|
28729
|
+
const provider = getProvider(contract2.runner);
|
|
28730
|
+
return new ContractTransactionResponse(contract2.interface, provider, tx);
|
|
28706
28731
|
};
|
|
28707
28732
|
const estimateGas = async function(overrides) {
|
|
28708
|
-
const runner = getRunner(
|
|
28733
|
+
const runner = getRunner(contract2.runner, "estimateGas");
|
|
28709
28734
|
assert(canEstimate(runner), "contract runner does not support gas estimation", "UNSUPPORTED_OPERATION", { operation: "estimateGas" });
|
|
28710
28735
|
return await runner.estimateGas(await populateTransaction(overrides));
|
|
28711
28736
|
};
|
|
@@ -28713,7 +28738,7 @@ function buildWrappedFallback(contract) {
|
|
|
28713
28738
|
return await send(overrides);
|
|
28714
28739
|
};
|
|
28715
28740
|
defineProperties(method, {
|
|
28716
|
-
_contract:
|
|
28741
|
+
_contract: contract2,
|
|
28717
28742
|
estimateGas,
|
|
28718
28743
|
populateTransaction,
|
|
28719
28744
|
send,
|
|
@@ -28721,9 +28746,9 @@ function buildWrappedFallback(contract) {
|
|
|
28721
28746
|
});
|
|
28722
28747
|
return method;
|
|
28723
28748
|
}
|
|
28724
|
-
function buildWrappedMethod(
|
|
28749
|
+
function buildWrappedMethod(contract2, key) {
|
|
28725
28750
|
const getFragment = function(...args) {
|
|
28726
|
-
const fragment =
|
|
28751
|
+
const fragment = contract2.interface.getFunction(key, args);
|
|
28727
28752
|
assert(fragment, "no matching fragment", "UNSUPPORTED_OPERATION", {
|
|
28728
28753
|
operation: "fragment",
|
|
28729
28754
|
info: { key, args }
|
|
@@ -28736,16 +28761,16 @@ function buildWrappedMethod(contract, key) {
|
|
|
28736
28761
|
if (fragment.inputs.length + 1 === args.length) {
|
|
28737
28762
|
overrides = await copyOverrides(args.pop());
|
|
28738
28763
|
if (overrides.from) {
|
|
28739
|
-
overrides.from = await resolveAddress(overrides.from, getResolver(
|
|
28764
|
+
overrides.from = await resolveAddress(overrides.from, getResolver(contract2.runner));
|
|
28740
28765
|
}
|
|
28741
28766
|
}
|
|
28742
28767
|
if (fragment.inputs.length !== args.length) {
|
|
28743
28768
|
throw new Error("internal error: fragment inputs doesn't match arguments; should not happen");
|
|
28744
28769
|
}
|
|
28745
|
-
const resolvedArgs = await resolveArgs(
|
|
28770
|
+
const resolvedArgs = await resolveArgs(contract2.runner, fragment.inputs, args);
|
|
28746
28771
|
return Object.assign({}, overrides, await resolveProperties({
|
|
28747
|
-
to:
|
|
28748
|
-
data:
|
|
28772
|
+
to: contract2.getAddress(),
|
|
28773
|
+
data: contract2.interface.encodeFunctionData(fragment, resolvedArgs)
|
|
28749
28774
|
}));
|
|
28750
28775
|
};
|
|
28751
28776
|
const staticCall = async function(...args) {
|
|
@@ -28756,19 +28781,19 @@ function buildWrappedMethod(contract, key) {
|
|
|
28756
28781
|
return result;
|
|
28757
28782
|
};
|
|
28758
28783
|
const send = async function(...args) {
|
|
28759
|
-
const runner =
|
|
28784
|
+
const runner = contract2.runner;
|
|
28760
28785
|
assert(canSend(runner), "contract runner does not support sending transactions", "UNSUPPORTED_OPERATION", { operation: "sendTransaction" });
|
|
28761
28786
|
const tx = await runner.sendTransaction(await populateTransaction(...args));
|
|
28762
|
-
const provider = getProvider(
|
|
28763
|
-
return new ContractTransactionResponse(
|
|
28787
|
+
const provider = getProvider(contract2.runner);
|
|
28788
|
+
return new ContractTransactionResponse(contract2.interface, provider, tx);
|
|
28764
28789
|
};
|
|
28765
28790
|
const estimateGas = async function(...args) {
|
|
28766
|
-
const runner = getRunner(
|
|
28791
|
+
const runner = getRunner(contract2.runner, "estimateGas");
|
|
28767
28792
|
assert(canEstimate(runner), "contract runner does not support gas estimation", "UNSUPPORTED_OPERATION", { operation: "estimateGas" });
|
|
28768
28793
|
return await runner.estimateGas(await populateTransaction(...args));
|
|
28769
28794
|
};
|
|
28770
28795
|
const staticCallResult = async function(...args) {
|
|
28771
|
-
const runner = getRunner(
|
|
28796
|
+
const runner = getRunner(contract2.runner, "call");
|
|
28772
28797
|
assert(canCall(runner), "contract runner does not support calling", "UNSUPPORTED_OPERATION", { operation: "call" });
|
|
28773
28798
|
const tx = await populateTransaction(...args);
|
|
28774
28799
|
let result = "0x";
|
|
@@ -28776,12 +28801,12 @@ function buildWrappedMethod(contract, key) {
|
|
|
28776
28801
|
result = await runner.call(tx);
|
|
28777
28802
|
} catch (error) {
|
|
28778
28803
|
if (isCallException(error) && error.data) {
|
|
28779
|
-
throw
|
|
28804
|
+
throw contract2.interface.makeError(error.data, tx);
|
|
28780
28805
|
}
|
|
28781
28806
|
throw error;
|
|
28782
28807
|
}
|
|
28783
28808
|
const fragment = getFragment(...args);
|
|
28784
|
-
return
|
|
28809
|
+
return contract2.interface.decodeFunctionResult(fragment, result);
|
|
28785
28810
|
};
|
|
28786
28811
|
const method = async (...args) => {
|
|
28787
28812
|
const fragment = getFragment(...args);
|
|
@@ -28791,8 +28816,8 @@ function buildWrappedMethod(contract, key) {
|
|
|
28791
28816
|
return await send(...args);
|
|
28792
28817
|
};
|
|
28793
28818
|
defineProperties(method, {
|
|
28794
|
-
name:
|
|
28795
|
-
_contract:
|
|
28819
|
+
name: contract2.interface.getFunctionName(key),
|
|
28820
|
+
_contract: contract2,
|
|
28796
28821
|
_key: key,
|
|
28797
28822
|
getFragment,
|
|
28798
28823
|
estimateGas,
|
|
@@ -28805,7 +28830,7 @@ function buildWrappedMethod(contract, key) {
|
|
|
28805
28830
|
configurable: false,
|
|
28806
28831
|
enumerable: true,
|
|
28807
28832
|
get: () => {
|
|
28808
|
-
const fragment =
|
|
28833
|
+
const fragment = contract2.interface.getFunction(key);
|
|
28809
28834
|
assert(fragment, "no matching fragment", "UNSUPPORTED_OPERATION", {
|
|
28810
28835
|
operation: "fragment",
|
|
28811
28836
|
info: { key }
|
|
@@ -28815,9 +28840,9 @@ function buildWrappedMethod(contract, key) {
|
|
|
28815
28840
|
});
|
|
28816
28841
|
return method;
|
|
28817
28842
|
}
|
|
28818
|
-
function buildWrappedEvent(
|
|
28843
|
+
function buildWrappedEvent(contract2, key) {
|
|
28819
28844
|
const getFragment = function(...args) {
|
|
28820
|
-
const fragment =
|
|
28845
|
+
const fragment = contract2.interface.getEvent(key, args);
|
|
28821
28846
|
assert(fragment, "no matching fragment", "UNSUPPORTED_OPERATION", {
|
|
28822
28847
|
operation: "fragment",
|
|
28823
28848
|
info: { key, args }
|
|
@@ -28825,11 +28850,11 @@ function buildWrappedEvent(contract, key) {
|
|
|
28825
28850
|
return fragment;
|
|
28826
28851
|
};
|
|
28827
28852
|
const method = function(...args) {
|
|
28828
|
-
return new PreparedTopicFilter(
|
|
28853
|
+
return new PreparedTopicFilter(contract2, getFragment(...args), args);
|
|
28829
28854
|
};
|
|
28830
28855
|
defineProperties(method, {
|
|
28831
|
-
name:
|
|
28832
|
-
_contract:
|
|
28856
|
+
name: contract2.interface.getEventName(key),
|
|
28857
|
+
_contract: contract2,
|
|
28833
28858
|
_key: key,
|
|
28834
28859
|
getFragment
|
|
28835
28860
|
});
|
|
@@ -28837,7 +28862,7 @@ function buildWrappedEvent(contract, key) {
|
|
|
28837
28862
|
configurable: false,
|
|
28838
28863
|
enumerable: true,
|
|
28839
28864
|
get: () => {
|
|
28840
|
-
const fragment =
|
|
28865
|
+
const fragment = contract2.interface.getEvent(key);
|
|
28841
28866
|
assert(fragment, "no matching fragment", "UNSUPPORTED_OPERATION", {
|
|
28842
28867
|
operation: "fragment",
|
|
28843
28868
|
info: { key }
|
|
@@ -28849,16 +28874,16 @@ function buildWrappedEvent(contract, key) {
|
|
|
28849
28874
|
}
|
|
28850
28875
|
var internal2 = /* @__PURE__ */ Symbol.for("_ethersInternal_contract");
|
|
28851
28876
|
var internalValues = /* @__PURE__ */ new WeakMap();
|
|
28852
|
-
function setInternal(
|
|
28853
|
-
internalValues.set(
|
|
28877
|
+
function setInternal(contract2, values) {
|
|
28878
|
+
internalValues.set(contract2[internal2], values);
|
|
28854
28879
|
}
|
|
28855
|
-
function getInternal(
|
|
28856
|
-
return internalValues.get(
|
|
28880
|
+
function getInternal(contract2) {
|
|
28881
|
+
return internalValues.get(contract2[internal2]);
|
|
28857
28882
|
}
|
|
28858
28883
|
function isDeferred(value) {
|
|
28859
28884
|
return value && typeof value === "object" && "getTopicFilter" in value && typeof value.getTopicFilter === "function" && value.fragment;
|
|
28860
28885
|
}
|
|
28861
|
-
async function getSubInfo(
|
|
28886
|
+
async function getSubInfo(contract2, event) {
|
|
28862
28887
|
let topics;
|
|
28863
28888
|
let fragment = null;
|
|
28864
28889
|
if (Array.isArray(event)) {
|
|
@@ -28866,7 +28891,7 @@ async function getSubInfo(contract, event) {
|
|
|
28866
28891
|
if (isHexString(name, 32)) {
|
|
28867
28892
|
return name;
|
|
28868
28893
|
}
|
|
28869
|
-
const fragment2 =
|
|
28894
|
+
const fragment2 = contract2.interface.getEvent(name);
|
|
28870
28895
|
assertArgument(fragment2, "unknown fragment", "name", name);
|
|
28871
28896
|
return fragment2.topicHash;
|
|
28872
28897
|
};
|
|
@@ -28885,7 +28910,7 @@ async function getSubInfo(contract, event) {
|
|
|
28885
28910
|
if (isHexString(event, 32)) {
|
|
28886
28911
|
topics = [event];
|
|
28887
28912
|
} else {
|
|
28888
|
-
fragment =
|
|
28913
|
+
fragment = contract2.interface.getEvent(event);
|
|
28889
28914
|
assertArgument(fragment, "unknown fragment", "event", event);
|
|
28890
28915
|
topics = [fragment.topicHash];
|
|
28891
28916
|
}
|
|
@@ -28922,36 +28947,36 @@ async function getSubInfo(contract, event) {
|
|
|
28922
28947
|
}).join("&");
|
|
28923
28948
|
return { fragment, tag, topics };
|
|
28924
28949
|
}
|
|
28925
|
-
async function hasSub(
|
|
28926
|
-
const { subs } = getInternal(
|
|
28927
|
-
return subs.get((await getSubInfo(
|
|
28950
|
+
async function hasSub(contract2, event) {
|
|
28951
|
+
const { subs } = getInternal(contract2);
|
|
28952
|
+
return subs.get((await getSubInfo(contract2, event)).tag) || null;
|
|
28928
28953
|
}
|
|
28929
|
-
async function getSub(
|
|
28930
|
-
const provider = getProvider(
|
|
28954
|
+
async function getSub(contract2, operation, event) {
|
|
28955
|
+
const provider = getProvider(contract2.runner);
|
|
28931
28956
|
assert(provider, "contract runner does not support subscribing", "UNSUPPORTED_OPERATION", { operation });
|
|
28932
|
-
const { fragment, tag, topics } = await getSubInfo(
|
|
28933
|
-
const { addr, subs } = getInternal(
|
|
28957
|
+
const { fragment, tag, topics } = await getSubInfo(contract2, event);
|
|
28958
|
+
const { addr, subs } = getInternal(contract2);
|
|
28934
28959
|
let sub2 = subs.get(tag);
|
|
28935
28960
|
if (!sub2) {
|
|
28936
|
-
const address = addr ? addr :
|
|
28961
|
+
const address = addr ? addr : contract2;
|
|
28937
28962
|
const filter = { address, topics };
|
|
28938
28963
|
const listener = (log) => {
|
|
28939
28964
|
let foundFragment = fragment;
|
|
28940
28965
|
if (foundFragment == null) {
|
|
28941
28966
|
try {
|
|
28942
|
-
foundFragment =
|
|
28967
|
+
foundFragment = contract2.interface.getEvent(log.topics[0]);
|
|
28943
28968
|
} catch (error) {
|
|
28944
28969
|
}
|
|
28945
28970
|
}
|
|
28946
28971
|
if (foundFragment) {
|
|
28947
28972
|
const _foundFragment = foundFragment;
|
|
28948
|
-
const args = fragment ?
|
|
28949
|
-
emit2(
|
|
28950
|
-
return new ContractEventPayload(
|
|
28973
|
+
const args = fragment ? contract2.interface.decodeEventLog(fragment, log.data, log.topics) : [];
|
|
28974
|
+
emit2(contract2, event, args, (listener2) => {
|
|
28975
|
+
return new ContractEventPayload(contract2, listener2, event, _foundFragment, log);
|
|
28951
28976
|
});
|
|
28952
28977
|
} else {
|
|
28953
|
-
emit2(
|
|
28954
|
-
return new ContractUnknownEventPayload(
|
|
28978
|
+
emit2(contract2, event, [], (listener2) => {
|
|
28979
|
+
return new ContractUnknownEventPayload(contract2, listener2, event, log);
|
|
28955
28980
|
});
|
|
28956
28981
|
}
|
|
28957
28982
|
};
|
|
@@ -28977,9 +29002,9 @@ async function getSub(contract, operation, event) {
|
|
|
28977
29002
|
return sub2;
|
|
28978
29003
|
}
|
|
28979
29004
|
var lastEmit = Promise.resolve();
|
|
28980
|
-
async function _emit(
|
|
29005
|
+
async function _emit(contract2, event, args, payloadFunc) {
|
|
28981
29006
|
await lastEmit;
|
|
28982
|
-
const sub2 = await hasSub(
|
|
29007
|
+
const sub2 = await hasSub(contract2, event);
|
|
28983
29008
|
if (!sub2) {
|
|
28984
29009
|
return false;
|
|
28985
29010
|
}
|
|
@@ -28990,23 +29015,23 @@ async function _emit(contract, event, args, payloadFunc) {
|
|
|
28990
29015
|
passArgs.push(payloadFunc(once2 ? null : listener));
|
|
28991
29016
|
}
|
|
28992
29017
|
try {
|
|
28993
|
-
listener.call(
|
|
29018
|
+
listener.call(contract2, ...passArgs);
|
|
28994
29019
|
} catch (error) {
|
|
28995
29020
|
}
|
|
28996
29021
|
return !once2;
|
|
28997
29022
|
});
|
|
28998
29023
|
if (sub2.listeners.length === 0) {
|
|
28999
29024
|
sub2.stop();
|
|
29000
|
-
getInternal(
|
|
29025
|
+
getInternal(contract2).subs.delete(sub2.tag);
|
|
29001
29026
|
}
|
|
29002
29027
|
return count > 0;
|
|
29003
29028
|
}
|
|
29004
|
-
async function emit2(
|
|
29029
|
+
async function emit2(contract2, event, args, payloadFunc) {
|
|
29005
29030
|
try {
|
|
29006
29031
|
await lastEmit;
|
|
29007
29032
|
} catch (error) {
|
|
29008
29033
|
}
|
|
29009
|
-
const resultPromise = _emit(
|
|
29034
|
+
const resultPromise = _emit(contract2, event, args, payloadFunc);
|
|
29010
29035
|
lastEmit = resultPromise;
|
|
29011
29036
|
return await resultPromise;
|
|
29012
29037
|
}
|
|
@@ -29432,8 +29457,8 @@ var BaseContract = class _BaseContract {
|
|
|
29432
29457
|
if (runner == null) {
|
|
29433
29458
|
runner = null;
|
|
29434
29459
|
}
|
|
29435
|
-
const
|
|
29436
|
-
return
|
|
29460
|
+
const contract2 = new this(target, abi, runner);
|
|
29461
|
+
return contract2;
|
|
29437
29462
|
}
|
|
29438
29463
|
};
|
|
29439
29464
|
function _ContractBase() {
|
|
@@ -29734,7 +29759,7 @@ var EnsResolver = class _EnsResolver {
|
|
|
29734
29759
|
return { url: null, linkage };
|
|
29735
29760
|
}
|
|
29736
29761
|
const tokenId = comps[1];
|
|
29737
|
-
const
|
|
29762
|
+
const contract2 = new Contract(comps[0], [
|
|
29738
29763
|
// ERC-721
|
|
29739
29764
|
"function tokenURI(uint) view returns (string)",
|
|
29740
29765
|
"function ownerOf(uint) view returns (address)",
|
|
@@ -29743,21 +29768,21 @@ var EnsResolver = class _EnsResolver {
|
|
|
29743
29768
|
"function balanceOf(address, uint256) view returns (uint)"
|
|
29744
29769
|
], this.provider);
|
|
29745
29770
|
if (scheme === "erc721") {
|
|
29746
|
-
const tokenOwner = await
|
|
29771
|
+
const tokenOwner = await contract2.ownerOf(tokenId);
|
|
29747
29772
|
if (owner !== tokenOwner) {
|
|
29748
29773
|
linkage.push({ type: "!owner", value: tokenOwner });
|
|
29749
29774
|
return { url: null, linkage };
|
|
29750
29775
|
}
|
|
29751
29776
|
linkage.push({ type: "owner", value: tokenOwner });
|
|
29752
29777
|
} else if (scheme === "erc1155") {
|
|
29753
|
-
const balance = await
|
|
29778
|
+
const balance = await contract2.balanceOf(owner, tokenId);
|
|
29754
29779
|
if (!balance) {
|
|
29755
29780
|
linkage.push({ type: "!balance", value: "0" });
|
|
29756
29781
|
return { url: null, linkage };
|
|
29757
29782
|
}
|
|
29758
29783
|
linkage.push({ type: "balance", value: balance.toString() });
|
|
29759
29784
|
}
|
|
29760
|
-
let metadataUrl = await
|
|
29785
|
+
let metadataUrl = await contract2[selector](tokenId);
|
|
29761
29786
|
if (metadataUrl == null || metadataUrl === "0x") {
|
|
29762
29787
|
linkage.push({ type: "!metadata-url", value: "" });
|
|
29763
29788
|
return { url: null, linkage };
|
|
@@ -29829,10 +29854,10 @@ var EnsResolver = class _EnsResolver {
|
|
|
29829
29854
|
static async #getResolver(provider, name) {
|
|
29830
29855
|
const ensAddr = await _EnsResolver.getEnsAddress(provider);
|
|
29831
29856
|
try {
|
|
29832
|
-
const
|
|
29857
|
+
const contract2 = new Contract(ensAddr, [
|
|
29833
29858
|
"function resolver(bytes32) view returns (address)"
|
|
29834
29859
|
], provider);
|
|
29835
|
-
const addr = await
|
|
29860
|
+
const addr = await contract2.resolver(namehash(name), {
|
|
29836
29861
|
enableCcipRead: true
|
|
29837
29862
|
});
|
|
29838
29863
|
if (addr === ZeroAddress) {
|
|
@@ -54558,26 +54583,34 @@ function normalizeCall2(call, index) {
|
|
|
54558
54583
|
value: call.value
|
|
54559
54584
|
};
|
|
54560
54585
|
}
|
|
54561
|
-
function
|
|
54562
|
-
const token = ensureAddress(`
|
|
54586
|
+
function normalizeSpendInput(input, index) {
|
|
54587
|
+
const token = ensureAddress(`spend[${index}].token`, input.token);
|
|
54588
|
+
if (token.toLowerCase() === ETH_TOKEN.toLowerCase()) {
|
|
54589
|
+
throw new AdapterError(
|
|
54590
|
+
`spend[${index}].token: native ETH is not supported in adapter execution`
|
|
54591
|
+
);
|
|
54592
|
+
}
|
|
54563
54593
|
if (input.amount <= 0n) {
|
|
54564
|
-
throw new AdapterError(`
|
|
54594
|
+
throw new AdapterError(`spend[${index}].amount must be greater than zero`);
|
|
54565
54595
|
}
|
|
54566
54596
|
return {
|
|
54567
54597
|
token,
|
|
54568
54598
|
amount: input.amount
|
|
54569
54599
|
};
|
|
54570
54600
|
}
|
|
54571
|
-
function
|
|
54572
|
-
const token = ensureAddress(`
|
|
54573
|
-
if (
|
|
54601
|
+
function normalizeReceiveInput(receive, index) {
|
|
54602
|
+
const token = ensureAddress(`receive[${index}].token`, receive.token);
|
|
54603
|
+
if (token.toLowerCase() === ETH_TOKEN.toLowerCase()) {
|
|
54574
54604
|
throw new AdapterError(
|
|
54575
|
-
`
|
|
54605
|
+
`receive[${index}].token: native ETH is not supported in adapter execution`
|
|
54576
54606
|
);
|
|
54577
54607
|
}
|
|
54608
|
+
if (receive.minAmount < 0n) {
|
|
54609
|
+
throw new AdapterError(`receive[${index}].minAmount must be non-negative`);
|
|
54610
|
+
}
|
|
54578
54611
|
return {
|
|
54579
54612
|
token,
|
|
54580
|
-
minAmount:
|
|
54613
|
+
minAmount: receive.minAmount
|
|
54581
54614
|
};
|
|
54582
54615
|
}
|
|
54583
54616
|
function randomFieldElement(randomBigintFn) {
|
|
@@ -54597,41 +54630,41 @@ function createAdapterService(deps) {
|
|
|
54597
54630
|
"adapterAddress",
|
|
54598
54631
|
params.adapterAddress
|
|
54599
54632
|
);
|
|
54600
|
-
if (!params.
|
|
54601
|
-
throw new AdapterError("at least one
|
|
54633
|
+
if (!params.spend.length) {
|
|
54634
|
+
throw new AdapterError("at least one spend token is required");
|
|
54602
54635
|
}
|
|
54603
54636
|
if (!params.calls.length) {
|
|
54604
54637
|
throw new AdapterError("at least one adapter call is required");
|
|
54605
54638
|
}
|
|
54606
|
-
if (!params.
|
|
54607
|
-
throw new AdapterError("at least one
|
|
54639
|
+
if (!params.receive.length) {
|
|
54640
|
+
throw new AdapterError("at least one receive output is required");
|
|
54608
54641
|
}
|
|
54609
|
-
const
|
|
54610
|
-
(input, i) =>
|
|
54642
|
+
const spendInputs = params.spend.map(
|
|
54643
|
+
(input, i) => normalizeSpendInput(input, i)
|
|
54611
54644
|
);
|
|
54612
54645
|
const seenTokens = /* @__PURE__ */ new Set();
|
|
54613
|
-
for (const input of
|
|
54646
|
+
for (const input of spendInputs) {
|
|
54614
54647
|
const lower = input.token.toLowerCase();
|
|
54615
54648
|
if (seenTokens.has(lower)) {
|
|
54616
54649
|
throw new AdapterError(
|
|
54617
|
-
`duplicate
|
|
54650
|
+
`duplicate spend token ${input.token}; combine amounts per token instead`
|
|
54618
54651
|
);
|
|
54619
54652
|
}
|
|
54620
54653
|
seenTokens.add(lower);
|
|
54621
54654
|
}
|
|
54622
54655
|
const calls = params.calls.map((call, i) => normalizeCall2(call, i));
|
|
54623
|
-
const
|
|
54624
|
-
(
|
|
54656
|
+
const receiveSpecs = params.receive.map(
|
|
54657
|
+
(receive, i) => normalizeReceiveInput(receive, i)
|
|
54625
54658
|
);
|
|
54626
|
-
const
|
|
54627
|
-
for (const r2 of
|
|
54659
|
+
const seenReceiveTokens = /* @__PURE__ */ new Set();
|
|
54660
|
+
for (const r2 of receiveSpecs) {
|
|
54628
54661
|
const lower = r2.token.toLowerCase();
|
|
54629
|
-
if (
|
|
54662
|
+
if (seenReceiveTokens.has(lower)) {
|
|
54630
54663
|
throw new AdapterError(
|
|
54631
|
-
`duplicate
|
|
54664
|
+
`duplicate receive token ${r2.token}; each receive must target a unique token`
|
|
54632
54665
|
);
|
|
54633
54666
|
}
|
|
54634
|
-
|
|
54667
|
+
seenReceiveTokens.add(lower);
|
|
54635
54668
|
}
|
|
54636
54669
|
const account = overrides?.account ?? await deps.requireActiveAccount();
|
|
54637
54670
|
const signer = overrides?.signer ?? deps.requireSigner(account);
|
|
@@ -54641,19 +54674,19 @@ function createAdapterService(deps) {
|
|
|
54641
54674
|
throw new AdapterError("deadline must be in the future");
|
|
54642
54675
|
}
|
|
54643
54676
|
const executionCalls = calls;
|
|
54644
|
-
const reshields =
|
|
54645
|
-
(
|
|
54677
|
+
const reshields = receiveSpecs.map(
|
|
54678
|
+
(receive) => {
|
|
54646
54679
|
const random = randomFieldElement(randomBigintImpl);
|
|
54647
54680
|
const npk = poseidon([account.masterPublicKey, random]);
|
|
54648
54681
|
return {
|
|
54649
54682
|
npk,
|
|
54650
54683
|
random,
|
|
54651
|
-
token:
|
|
54652
|
-
minAmount:
|
|
54684
|
+
token: receive.token,
|
|
54685
|
+
minAmount: receive.minAmount
|
|
54653
54686
|
};
|
|
54654
54687
|
}
|
|
54655
54688
|
);
|
|
54656
|
-
const inputTokens =
|
|
54689
|
+
const inputTokens = spendInputs.map((input) => input.token);
|
|
54657
54690
|
const nonce = randomFieldElement(randomBigintImpl);
|
|
54658
54691
|
const adapterDataHash = computeAdapterDataHash({
|
|
54659
54692
|
calls: executionCalls,
|
|
@@ -54670,7 +54703,7 @@ function createAdapterService(deps) {
|
|
|
54670
54703
|
});
|
|
54671
54704
|
const withdrawalPlans = planWithdrawalsImpl(
|
|
54672
54705
|
notes,
|
|
54673
|
-
|
|
54706
|
+
spendInputs.map((input) => ({
|
|
54674
54707
|
token: input.token,
|
|
54675
54708
|
amount: input.amount,
|
|
54676
54709
|
recipient: adapterAddress
|
|
@@ -54753,7 +54786,7 @@ function createAdapterService(deps) {
|
|
|
54753
54786
|
adapterCalldata,
|
|
54754
54787
|
historyPreview: {
|
|
54755
54788
|
kind: "Withdraw",
|
|
54756
|
-
amounts:
|
|
54789
|
+
amounts: spendInputs.map((input) => ({
|
|
54757
54790
|
token: input.token,
|
|
54758
54791
|
delta: (-input.amount).toString()
|
|
54759
54792
|
}))
|
|
@@ -54775,6 +54808,9 @@ init_process();
|
|
|
54775
54808
|
init_buffer();
|
|
54776
54809
|
var BIP44_ETH_PREFIX = "m/44'/60'/0'/0";
|
|
54777
54810
|
var ERC20_BALANCE_OF = "function balanceOf(address) view returns (uint256)";
|
|
54811
|
+
function isNativeToken(token) {
|
|
54812
|
+
return token.toLowerCase() === ETH_TOKEN.toLowerCase();
|
|
54813
|
+
}
|
|
54778
54814
|
function createBurnerService(deps) {
|
|
54779
54815
|
const { chainRpcUrl, getMasterSeed, withdrawToAddress, requestDeposit } = deps;
|
|
54780
54816
|
const provider = new JsonRpcProvider(chainRpcUrl);
|
|
@@ -54822,8 +54858,8 @@ function createBurnerService(deps) {
|
|
|
54822
54858
|
}
|
|
54823
54859
|
async function getTokenBalance(address, token) {
|
|
54824
54860
|
const iface = new Interface([ERC20_BALANCE_OF]);
|
|
54825
|
-
const
|
|
54826
|
-
const bal = await
|
|
54861
|
+
const contract2 = new Contract(token, iface, provider);
|
|
54862
|
+
const bal = await contract2.getFunction("balanceOf")(address);
|
|
54827
54863
|
return BigInt(bal ?? 0);
|
|
54828
54864
|
}
|
|
54829
54865
|
async function getBalance(address) {
|
|
@@ -54842,6 +54878,12 @@ function createBurnerService(deps) {
|
|
|
54842
54878
|
}
|
|
54843
54879
|
async function sweepToPool(index, params) {
|
|
54844
54880
|
const { address } = await addressOf(index);
|
|
54881
|
+
const native = isNativeToken(params.token);
|
|
54882
|
+
if (native && params.amount == null) {
|
|
54883
|
+
throw new Error(
|
|
54884
|
+
"amount is required for native ETH sweeps (needed to reserve gas)"
|
|
54885
|
+
);
|
|
54886
|
+
}
|
|
54845
54887
|
const amount = params.amount ?? await getTokenBalance(address, params.token);
|
|
54846
54888
|
if (amount === 0n) {
|
|
54847
54889
|
throw new Error("No token balance to sweep");
|
|
@@ -54852,17 +54894,20 @@ function createBurnerService(deps) {
|
|
|
54852
54894
|
depositor: address,
|
|
54853
54895
|
deposits: [{ token: params.token, amount }]
|
|
54854
54896
|
});
|
|
54855
|
-
|
|
54856
|
-
|
|
54857
|
-
|
|
54858
|
-
|
|
54859
|
-
|
|
54860
|
-
|
|
54861
|
-
|
|
54862
|
-
|
|
54897
|
+
if (!native) {
|
|
54898
|
+
const erc20Iface = new Interface([
|
|
54899
|
+
"function approve(address spender, uint256 amount)"
|
|
54900
|
+
]);
|
|
54901
|
+
const approveData = erc20Iface.encodeFunctionData("approve", [
|
|
54902
|
+
params.poolAddress,
|
|
54903
|
+
amount
|
|
54904
|
+
]);
|
|
54905
|
+
await send(index, { to: params.token, data: approveData });
|
|
54906
|
+
}
|
|
54863
54907
|
const { txHash } = await send(index, {
|
|
54864
54908
|
to: depositResult.to,
|
|
54865
|
-
data: depositResult.calldata
|
|
54909
|
+
data: depositResult.calldata,
|
|
54910
|
+
value: depositResult.value
|
|
54866
54911
|
});
|
|
54867
54912
|
return { txHash };
|
|
54868
54913
|
}
|
|
@@ -55572,21 +55617,27 @@ async function createBrowserWalletSDK(options) {
|
|
|
55572
55617
|
};
|
|
55573
55618
|
}
|
|
55574
55619
|
|
|
55575
|
-
// wallet/unlink
|
|
55576
|
-
var
|
|
55620
|
+
// wallet/unlink.ts
|
|
55621
|
+
var Unlink = class _Unlink {
|
|
55577
55622
|
/** @internal */
|
|
55578
55623
|
sdk;
|
|
55579
55624
|
/** Chain ID this wallet operates on. */
|
|
55580
55625
|
chainId;
|
|
55581
55626
|
/** Pool contract address this wallet transacts with. */
|
|
55582
55627
|
poolAddress;
|
|
55583
|
-
|
|
55628
|
+
/** Adapter contract address for DeFi operations. */
|
|
55629
|
+
adapterAddress;
|
|
55630
|
+
constructor(sdk, chainId, poolAddress, adapterAddress) {
|
|
55584
55631
|
this.sdk = sdk;
|
|
55585
55632
|
this.chainId = chainId;
|
|
55586
55633
|
this.poolAddress = poolAddress;
|
|
55634
|
+
this.adapterAddress = adapterAddress;
|
|
55635
|
+
this.adapter = {
|
|
55636
|
+
address: adapterAddress
|
|
55637
|
+
};
|
|
55587
55638
|
}
|
|
55588
55639
|
/**
|
|
55589
|
-
* Create a new
|
|
55640
|
+
* Create a new Unlink instance.
|
|
55590
55641
|
*
|
|
55591
55642
|
* Handles all initialization internally:
|
|
55592
55643
|
* - Resolves chain config (if using `chain` instead of explicit URLs)
|
|
@@ -55598,12 +55649,14 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55598
55649
|
let chainId;
|
|
55599
55650
|
let gatewayUrl;
|
|
55600
55651
|
let poolAddress;
|
|
55652
|
+
let adapterAddress;
|
|
55601
55653
|
let proverConfig = config2.prover;
|
|
55602
55654
|
if ("chain" in config2) {
|
|
55603
55655
|
const chainConfig = await fetchChainConfig(config2.chain);
|
|
55604
55656
|
chainId = chainConfig.chainId;
|
|
55605
55657
|
gatewayUrl = chainConfig.gatewayUrl;
|
|
55606
55658
|
poolAddress = config2.poolAddress ?? chainConfig.poolAddress;
|
|
55659
|
+
adapterAddress = config2.adapterAddress ?? chainConfig.adapterAddress;
|
|
55607
55660
|
proverConfig = {
|
|
55608
55661
|
artifactSource: {
|
|
55609
55662
|
baseUrl: config2.prover?.artifactSource?.baseUrl ?? chainConfig.artifactBaseUrl,
|
|
@@ -55615,6 +55668,7 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55615
55668
|
chainId = config2.chainId;
|
|
55616
55669
|
gatewayUrl = config2.gatewayUrl;
|
|
55617
55670
|
poolAddress = config2.poolAddress;
|
|
55671
|
+
adapterAddress = config2.adapterAddress;
|
|
55618
55672
|
if (typeof window !== "undefined" && !config2.prover?.artifactSource?.version) {
|
|
55619
55673
|
throw new InitializationError(
|
|
55620
55674
|
"prover.artifactSource.version is required in browser when using explicit gatewayUrl mode. Use chain mode or provide a pinned artifact version."
|
|
@@ -55635,7 +55689,7 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55635
55689
|
autoSync: config2.autoSync
|
|
55636
55690
|
}
|
|
55637
55691
|
);
|
|
55638
|
-
return new
|
|
55692
|
+
return new _Unlink(sdk, chainId, poolAddress, adapterAddress ?? "");
|
|
55639
55693
|
}
|
|
55640
55694
|
// ===== Seed Lifecycle =====
|
|
55641
55695
|
/** Seed management (create, import, export, delete mnemonic). */
|
|
@@ -55666,10 +55720,10 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55666
55720
|
return this.sdk.deposit.reconcile(relayId);
|
|
55667
55721
|
}
|
|
55668
55722
|
/**
|
|
55669
|
-
*
|
|
55723
|
+
* Send a private transfer (1 or more recipients).
|
|
55670
55724
|
* Handles note selection, circuit selection, and proof generation automatically.
|
|
55671
55725
|
*/
|
|
55672
|
-
async
|
|
55726
|
+
async send(params, overrides) {
|
|
55673
55727
|
return this.sdk.transfer.send(
|
|
55674
55728
|
{
|
|
55675
55729
|
chainId: this.chainId,
|
|
@@ -55680,9 +55734,9 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55680
55734
|
);
|
|
55681
55735
|
}
|
|
55682
55736
|
/**
|
|
55683
|
-
* Get a
|
|
55737
|
+
* Get a send plan without executing (for preview/confirmation UIs).
|
|
55684
55738
|
*/
|
|
55685
|
-
async
|
|
55739
|
+
async planSend(params, account) {
|
|
55686
55740
|
return this.sdk.transfer.plan(
|
|
55687
55741
|
{
|
|
55688
55742
|
chainId: this.chainId,
|
|
@@ -55692,8 +55746,8 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55692
55746
|
account
|
|
55693
55747
|
);
|
|
55694
55748
|
}
|
|
55695
|
-
/** Execute a pre-built
|
|
55696
|
-
async
|
|
55749
|
+
/** Execute a pre-built send plan. */
|
|
55750
|
+
async executeSend(plans, overrides) {
|
|
55697
55751
|
return this.sdk.transfer.execute(
|
|
55698
55752
|
plans,
|
|
55699
55753
|
{ chainId: this.chainId, poolAddress: this.poolAddress },
|
|
@@ -55842,31 +55896,31 @@ var UnlinkWallet = class _UnlinkWallet {
|
|
|
55842
55896
|
return this.sdk.burner.getBalance(address);
|
|
55843
55897
|
}
|
|
55844
55898
|
};
|
|
55845
|
-
// =====
|
|
55899
|
+
// ===== Interact (Private DeFi) =====
|
|
55846
55900
|
/**
|
|
55847
|
-
*
|
|
55848
|
-
*
|
|
55901
|
+
* Adapter contract address (resolved from config).
|
|
55902
|
+
* Use for building DeFi calls that reference the adapter.
|
|
55849
55903
|
*/
|
|
55850
|
-
adapter
|
|
55851
|
-
|
|
55852
|
-
|
|
55853
|
-
|
|
55854
|
-
|
|
55855
|
-
|
|
55856
|
-
|
|
55857
|
-
|
|
55858
|
-
|
|
55859
|
-
|
|
55860
|
-
|
|
55861
|
-
|
|
55862
|
-
|
|
55863
|
-
|
|
55864
|
-
|
|
55865
|
-
|
|
55866
|
-
|
|
55867
|
-
|
|
55868
|
-
|
|
55869
|
-
}
|
|
55904
|
+
adapter;
|
|
55905
|
+
/**
|
|
55906
|
+
* Execute an atomic unshield -> DeFi call(s) -> reshield flow through an adapter.
|
|
55907
|
+
* chainId/poolAddress/adapterAddress are injected automatically.
|
|
55908
|
+
*/
|
|
55909
|
+
async interact(params, opts, overrides) {
|
|
55910
|
+
return this.sdk.adapter.execute(
|
|
55911
|
+
{
|
|
55912
|
+
chainId: this.chainId,
|
|
55913
|
+
poolAddress: this.poolAddress,
|
|
55914
|
+
adapterAddress: this.adapterAddress,
|
|
55915
|
+
spend: params.spend,
|
|
55916
|
+
calls: params.calls,
|
|
55917
|
+
receive: params.receive,
|
|
55918
|
+
deadline: params.deadline
|
|
55919
|
+
},
|
|
55920
|
+
opts,
|
|
55921
|
+
overrides
|
|
55922
|
+
);
|
|
55923
|
+
}
|
|
55870
55924
|
// ===== Advanced =====
|
|
55871
55925
|
/**
|
|
55872
55926
|
* Advanced escape hatch for raw JoinSplit transaction building.
|
|
@@ -55914,6 +55968,7 @@ var defaultRng = (n2) => {
|
|
|
55914
55968
|
}
|
|
55915
55969
|
return globalThis.crypto.getRandomValues(new Uint8Array(n2));
|
|
55916
55970
|
};
|
|
55971
|
+
var UnlinkWallet = Unlink;
|
|
55917
55972
|
|
|
55918
55973
|
// utils/amounts.ts
|
|
55919
55974
|
init_process();
|
|
@@ -55970,6 +56025,7 @@ export {
|
|
|
55970
56025
|
HttpError,
|
|
55971
56026
|
InitializationError,
|
|
55972
56027
|
ProofError,
|
|
56028
|
+
Unlink,
|
|
55973
56029
|
UnlinkWallet,
|
|
55974
56030
|
ValidationError,
|
|
55975
56031
|
computeBalances,
|