@layerzerolabs/lz-sui-sdk-v2 3.0.134-sui.3 → 3.0.134
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/deployments/sui-sandbox-local/blocked_message_lib.json +18 -18
- package/deployments/sui-sandbox-local/blocked_msglib_ptb_builder.json +25 -25
- package/deployments/sui-sandbox-local/counter.json +47 -82
- package/deployments/sui-sandbox-local/dvn.json +14 -15
- package/deployments/sui-sandbox-local/dvn_call_type.json +21 -21
- package/deployments/sui-sandbox-local/dvn_fee_lib.json +27 -27
- package/deployments/sui-sandbox-local/dvn_layerzero.json +24 -24
- package/deployments/sui-sandbox-local/dvn_ptb_builder.json +14 -14
- package/deployments/sui-sandbox-local/endpoint_ptb_builder.json +26 -26
- package/deployments/sui-sandbox-local/endpoint_v2.json +25 -25
- package/deployments/sui-sandbox-local/executor.json +14 -15
- package/deployments/sui-sandbox-local/executor_call_type.json +28 -28
- package/deployments/sui-sandbox-local/executor_fee_lib.json +28 -28
- package/deployments/sui-sandbox-local/executor_layerzero.json +17 -17
- package/deployments/sui-sandbox-local/executor_ptb_builder.json +21 -21
- package/deployments/sui-sandbox-local/layerzero_views.json +13 -13
- package/deployments/sui-sandbox-local/message_lib_common.json +21 -21
- package/deployments/sui-sandbox-local/msglib_ptb_builder_call_types.json +13 -13
- package/deployments/sui-sandbox-local/oapp.json +21 -23
- package/deployments/sui-sandbox-local/object-BlockedMessageLib.json +5 -5
- package/deployments/sui-sandbox-local/object-BlockedMsglibPtbBuilder.json +5 -5
- package/deployments/sui-sandbox-local/object-Counter.json +5 -5
- package/deployments/sui-sandbox-local/object-CounterAdminCap.json +5 -5
- package/deployments/sui-sandbox-local/object-CounterOApp.json +5 -5
- package/deployments/sui-sandbox-local/object-DVN.json +2 -2
- package/deployments/sui-sandbox-local/object-DVNCap.json +4 -4
- package/deployments/sui-sandbox-local/object-DVNFeeLib.json +5 -5
- package/deployments/sui-sandbox-local/object-EndpointPtbBuilder.json +5 -5
- package/deployments/sui-sandbox-local/object-EndpointPtbBuilderAdminCap.json +5 -5
- package/deployments/sui-sandbox-local/object-EndpointV2.json +5 -5
- package/deployments/sui-sandbox-local/object-EndpointV2AdminCap.json +5 -5
- package/deployments/sui-sandbox-local/object-Executor.json +2 -2
- package/deployments/sui-sandbox-local/object-ExecutorCap.json +4 -4
- package/deployments/sui-sandbox-local/object-ExecutorFeeLib.json +5 -5
- package/deployments/sui-sandbox-local/object-ExecutorOwnerCap.json +2 -2
- package/deployments/sui-sandbox-local/object-PackageWhitelistValidator.json +5 -5
- package/deployments/sui-sandbox-local/object-PriceFeed.json +5 -5
- package/deployments/sui-sandbox-local/object-PriceFeedOwnerCap.json +5 -5
- package/deployments/sui-sandbox-local/object-SimpleMessageLib.json +5 -5
- package/deployments/sui-sandbox-local/object-SimpleMessageLibAdminCap.json +5 -5
- package/deployments/sui-sandbox-local/object-SmlPtbBuilder.json +5 -5
- package/deployments/sui-sandbox-local/object-Treasury.json +5 -5
- package/deployments/sui-sandbox-local/object-TreasuryAdminCap.json +5 -5
- package/deployments/sui-sandbox-local/object-ULN302.json +5 -5
- package/deployments/sui-sandbox-local/object-ULN302AdminCap.json +5 -5
- package/deployments/sui-sandbox-local/object-Uln302PtbBuilder.json +5 -5
- package/deployments/sui-sandbox-local/object-Uln302Verification.json +5 -5
- package/deployments/sui-sandbox-local/package_whitelist_validator.json +51 -51
- package/deployments/sui-sandbox-local/price_feed.json +39 -39
- package/deployments/sui-sandbox-local/price_feed_call_types.json +19 -19
- package/deployments/sui-sandbox-local/ptb_move_call.json +20 -20
- package/deployments/sui-sandbox-local/simple_message_lib.json +33 -33
- package/deployments/sui-sandbox-local/simple_msglib_ptb_builder.json +18 -18
- package/deployments/sui-sandbox-local/treasury.json +41 -41
- package/deployments/sui-sandbox-local/uln_302.json +47 -43
- package/deployments/sui-sandbox-local/uln_302_ptb_builder.json +18 -18
- package/deployments/sui-sandbox-local/worker_common.json +14 -15
- package/deployments/sui-testnet/blocked_message_lib.json +22 -22
- package/deployments/sui-testnet/blocked_msglib_ptb_builder.json +29 -29
- package/deployments/sui-testnet/call.json +21 -21
- package/deployments/sui-testnet/counter.json +40 -40
- package/deployments/sui-testnet/dvn.json +21 -22
- package/deployments/sui-testnet/dvn_call_type.json +19 -19
- package/deployments/sui-testnet/dvn_fee_lib.json +26 -26
- package/deployments/sui-testnet/dvn_layerzero.json +24 -24
- package/deployments/sui-testnet/dvn_ptb_builder.json +20 -20
- package/deployments/sui-testnet/endpoint_ptb_builder.json +30 -30
- package/deployments/sui-testnet/endpoint_v2.json +26 -26
- package/deployments/sui-testnet/executor.json +21 -22
- package/deployments/sui-testnet/executor_call_type.json +19 -19
- package/deployments/sui-testnet/executor_fee_lib.json +18 -18
- package/deployments/sui-testnet/executor_layerzero.json +25 -25
- package/deployments/sui-testnet/executor_ptb_builder.json +20 -20
- package/deployments/sui-testnet/layerzero_views.json +13 -13
- package/deployments/sui-testnet/message_lib_common.json +21 -21
- package/deployments/sui-testnet/msglib_ptb_builder_call_types.json +13 -13
- package/deployments/sui-testnet/oapp.json +13 -15
- package/deployments/sui-testnet/object-BlockedMessageLib.json +5 -5
- package/deployments/sui-testnet/object-BlockedMsglibPtbBuilder.json +5 -5
- package/deployments/sui-testnet/object-Counter.json +5 -5
- package/deployments/sui-testnet/object-CounterAdminCap.json +5 -5
- package/deployments/sui-testnet/object-CounterOApp.json +5 -5
- package/deployments/sui-testnet/object-DVN.json +2 -2
- package/deployments/sui-testnet/object-DVNCap.json +5 -5
- package/deployments/sui-testnet/object-DVNFeeLib.json +5 -5
- package/deployments/sui-testnet/object-EndpointPtbBuilder.json +5 -5
- package/deployments/sui-testnet/object-EndpointPtbBuilderAdminCap.json +5 -5
- package/deployments/sui-testnet/object-EndpointV2.json +5 -5
- package/deployments/sui-testnet/object-EndpointV2AdminCap.json +5 -5
- package/deployments/sui-testnet/object-Executor.json +2 -2
- package/deployments/sui-testnet/object-ExecutorCap.json +5 -5
- package/deployments/sui-testnet/object-ExecutorFeeLib.json +5 -5
- package/deployments/sui-testnet/object-ExecutorOwnerCap.json +2 -2
- package/deployments/sui-testnet/object-PackageWhitelistValidator.json +5 -5
- package/deployments/sui-testnet/object-PriceFeed.json +5 -5
- package/deployments/sui-testnet/object-PriceFeedOwnerCap.json +5 -5
- package/deployments/sui-testnet/object-SimpleMessageLib.json +5 -5
- package/deployments/sui-testnet/object-SimpleMessageLibAdminCap.json +5 -5
- package/deployments/sui-testnet/object-SmlPtbBuilder.json +5 -5
- package/deployments/sui-testnet/object-Treasury.json +5 -5
- package/deployments/sui-testnet/object-TreasuryAdminCap.json +5 -5
- package/deployments/sui-testnet/object-ULN302.json +5 -5
- package/deployments/sui-testnet/object-ULN302AdminCap.json +5 -5
- package/deployments/sui-testnet/object-Uln302PtbBuilder.json +5 -5
- package/deployments/sui-testnet/object-Uln302Verification.json +5 -5
- package/deployments/sui-testnet/object-ZroCoinMetadata.json +5 -5
- package/deployments/sui-testnet/object-ZroTreasuryCap.json +5 -5
- package/deployments/sui-testnet/package_whitelist_validator.json +44 -44
- package/deployments/sui-testnet/price_feed.json +25 -25
- package/deployments/sui-testnet/price_feed_call_types.json +12 -12
- package/deployments/sui-testnet/ptb_move_call.json +21 -21
- package/deployments/sui-testnet/simple_message_lib.json +29 -29
- package/deployments/sui-testnet/simple_msglib_ptb_builder.json +26 -26
- package/deployments/sui-testnet/treasury.json +58 -30
- package/deployments/sui-testnet/uln_302.json +32 -28
- package/deployments/sui-testnet/uln_302_ptb_builder.json +25 -25
- package/deployments/sui-testnet/utils.json +12 -12
- package/deployments/sui-testnet/worker_common.json +20 -21
- package/deployments/sui-testnet/zro.json +28 -28
- package/dist/index.cjs +418 -1193
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +343 -693
- package/dist/index.d.ts +343 -693
- package/dist/index.mjs +418 -1182
- package/dist/index.mjs.map +1 -1
- package/package.json +7 -7
- package/src/bcs/index.ts +1 -2
- package/src/generated/addresses.ts +105 -123
- package/src/module-manager.ts +3 -15
- package/src/modules/call.ts +6 -16
- package/src/modules/endpoint.ts +4 -12
- package/src/modules/message-libs/simple-message-lib.ts +2 -3
- package/src/modules/message-libs/uln302.ts +26 -28
- package/src/modules/oapps/counter.ts +50 -34
- package/src/modules/oapps/oapp.ts +74 -489
- package/src/modules/ptb-builders/endpoint-ptb-builder.ts +3 -9
- package/src/modules/ptb-builders/ptb-builder.ts +4 -19
- package/src/modules/ptb-builders/uln302-ptb-builder.ts +0 -5
- package/src/modules/workers/dvn-layerzero.ts +0 -9
- package/src/modules/workers/dvn.ts +6 -214
- package/src/modules/workers/executor-fee-lib.ts +3 -11
- package/src/modules/workers/executor-layerzero.ts +0 -9
- package/src/modules/workers/executor.ts +0 -115
- package/src/modules/workers/index.ts +0 -1
- package/src/modules/workers/treasury.ts +4 -4
- package/src/resource.ts +0 -3
- package/src/sdk.ts +2 -7
- package/src/types/endpoint.ts +1 -2
- package/src/types/modules.ts +0 -1
- package/src/types/options.ts +0 -15
- package/src/utils/transaction.ts +3 -3
- package/deployments/sui-sandbox-local/object-WorkerRegistry.json +0 -9
- package/deployments/sui-sandbox-local/sequential_multi_call.json +0 -45
- package/deployments/sui-sandbox-local/uln_common.json +0 -49
- package/deployments/sui-sandbox-local/worker_registry.json +0 -58
- package/deployments/sui-testnet/object-WorkerRegistry.json +0 -9
- package/deployments/sui-testnet/sequential_multi_call.json +0 -45
- package/deployments/sui-testnet/uln_common.json +0 -49
- package/deployments/sui-testnet/worker_registry.json +0 -58
- package/src/bcs/oapp.ts +0 -14
- package/src/modules/workers/worker-registry.ts +0 -110
- package/src/types/oapp.ts +0 -6
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
|
|
20
20
|
const MODULE_NAME = 'uln_302'
|
|
21
21
|
|
|
22
|
-
// ULN-302 specific error codes
|
|
22
|
+
// ULN-302 specific error codes
|
|
23
23
|
export const Uln302ErrorCode = {
|
|
24
24
|
SendUln302_EDefaultExecutorConfigNotFound: 1,
|
|
25
25
|
SendUln302_EDefaultUlnConfigNotFound: 2,
|
|
@@ -33,28 +33,10 @@ export const Uln302ErrorCode = {
|
|
|
33
33
|
ReceiveUln302_EOAppUlnConfigNotFound: 4,
|
|
34
34
|
ReceiveUln302_EVerifying: 5,
|
|
35
35
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
// UlnConfig related errors (matching uln_config.move)
|
|
41
|
-
UlnConfig_EAtLeastOneDVN: 1,
|
|
42
|
-
UlnConfig_EDuplicateOptionalDVNs: 2,
|
|
43
|
-
UlnConfig_EDuplicateRequiredDVNs: 3,
|
|
44
|
-
UlnConfig_EInvalidOptionalDVNCount: 4,
|
|
45
|
-
UlnConfig_EInvalidOptionalDVNThreshold: 5,
|
|
46
|
-
UlnConfig_EInvalidRequiredDVNCount: 6,
|
|
47
|
-
UlnConfig_EInvalidUlnConfigBytes: 7,
|
|
48
|
-
|
|
49
|
-
// OAppUlnConfig related errors (matching oapp_uln_config.move)
|
|
50
|
-
OAppUlnConfig_EInvalidConfirmations: 1,
|
|
51
|
-
OAppUlnConfig_EInvalidRequiredDVNs: 2,
|
|
52
|
-
OAppUlnConfig_EInvalidOptionalDVNs: 3,
|
|
53
|
-
|
|
54
|
-
// ExecutorConfig related errors (matching executor_config.move)
|
|
55
|
-
ExecutorConfig_EInvalidExecutorAddress: 1,
|
|
56
|
-
ExecutorConfig_EInvalidExecutorBytes: 2,
|
|
57
|
-
ExecutorConfig_EZeroMessageSize: 3,
|
|
36
|
+
Uln302_EEndpointInitialized: 1,
|
|
37
|
+
Uln302_EInvalidConfigType: 2,
|
|
38
|
+
Uln302_EInvalidMessagingChannel: 3,
|
|
39
|
+
Uln302_EUnsupportedEid: 4,
|
|
58
40
|
} as const
|
|
59
41
|
|
|
60
42
|
export class Uln302 {
|
|
@@ -180,16 +162,32 @@ export class Uln302 {
|
|
|
180
162
|
}
|
|
181
163
|
|
|
182
164
|
/**
|
|
183
|
-
* Verify packet move call with DVN
|
|
184
|
-
* Note: This is typically called by DVNs
|
|
165
|
+
* Verify packet move call with DVN signatures
|
|
166
|
+
* Note: This is typically called by DVNs, not directly by users
|
|
185
167
|
* @param tx - The transaction to add the move call to
|
|
186
168
|
* @param verification - The verification object address or transaction argument
|
|
187
|
-
* @param
|
|
169
|
+
* @param dvn - The DVN address performing verification or transaction argument
|
|
170
|
+
* @param packetHeader - The packet header as bytes or transaction argument
|
|
171
|
+
* @param payloadHash - The payload hash as bytes or transaction argument
|
|
172
|
+
* @param confirmations - Required confirmations count or transaction argument
|
|
188
173
|
*/
|
|
189
|
-
verifyMoveCall(
|
|
174
|
+
verifyMoveCall(
|
|
175
|
+
tx: Transaction,
|
|
176
|
+
verification: string | TransactionArgument,
|
|
177
|
+
dvn: string | TransactionArgument,
|
|
178
|
+
packetHeader: Uint8Array | TransactionArgument,
|
|
179
|
+
payloadHash: Uint8Array | TransactionArgument,
|
|
180
|
+
confirmations: bigint | TransactionArgument
|
|
181
|
+
): void {
|
|
190
182
|
tx.moveCall({
|
|
191
183
|
target: this.#target('verify'),
|
|
192
|
-
arguments: [
|
|
184
|
+
arguments: [
|
|
185
|
+
asObject(tx, verification),
|
|
186
|
+
asObject(tx, dvn),
|
|
187
|
+
asBytes(tx, packetHeader),
|
|
188
|
+
asBytes32(tx, payloadHash, this.moduleManager.getUtils()),
|
|
189
|
+
asU64(tx, confirmations),
|
|
190
|
+
],
|
|
193
191
|
})
|
|
194
192
|
}
|
|
195
193
|
|
|
@@ -7,11 +7,11 @@ import { EndpointId } from '@layerzerolabs/lz-definitions'
|
|
|
7
7
|
import { ModuleManager } from '../../module-manager'
|
|
8
8
|
import { MessagingFee, ObjectOptions } from '../../types'
|
|
9
9
|
import {
|
|
10
|
-
IPTBValidator,
|
|
11
10
|
asAddress,
|
|
12
11
|
asBool,
|
|
13
12
|
asBytes,
|
|
14
13
|
asBytes32,
|
|
14
|
+
asObject,
|
|
15
15
|
asU32,
|
|
16
16
|
asU64,
|
|
17
17
|
asU8,
|
|
@@ -22,16 +22,15 @@ import {
|
|
|
22
22
|
const MODULE_NAME = 'counter'
|
|
23
23
|
|
|
24
24
|
export const CounterErrorCode = {
|
|
25
|
-
// Counter related errors
|
|
25
|
+
// Counter related errors
|
|
26
26
|
Counter_EInvalidMsgType: 0,
|
|
27
27
|
Counter_EInvalidValue: 1,
|
|
28
28
|
Counter_EInvalidNonce: 2,
|
|
29
29
|
Counter_EOnlyEndpoint: 3,
|
|
30
30
|
Counter_ESelfComposeOnly: 4,
|
|
31
31
|
Counter_EInvalidOApp: 5,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
OptionsBuilder_EInvalidSize: 1,
|
|
32
|
+
Counter_EInvalidAdminCap: 6,
|
|
33
|
+
Counter_EAlreadyInitialized: 7,
|
|
35
34
|
} as const
|
|
36
35
|
|
|
37
36
|
export class Counter {
|
|
@@ -84,8 +83,7 @@ export class Counter {
|
|
|
84
83
|
dstEid: EndpointId | TransactionArgument,
|
|
85
84
|
msgType: number | TransactionArgument,
|
|
86
85
|
options: Uint8Array | TransactionArgument,
|
|
87
|
-
payInZero: boolean | TransactionArgument
|
|
88
|
-
validators?: IPTBValidator[]
|
|
86
|
+
payInZero: boolean | TransactionArgument
|
|
89
87
|
): Promise<MessagingFee> {
|
|
90
88
|
const tx = new Transaction()
|
|
91
89
|
const quoteCall = tx.moveCall({
|
|
@@ -99,7 +97,7 @@ export class Counter {
|
|
|
99
97
|
asBool(tx, payInZero),
|
|
100
98
|
],
|
|
101
99
|
})
|
|
102
|
-
return this.moduleManager.getEndpoint().quote(tx, quoteCall
|
|
100
|
+
return this.moduleManager.getEndpoint().quote(tx, quoteCall)
|
|
103
101
|
}
|
|
104
102
|
|
|
105
103
|
/**
|
|
@@ -123,8 +121,7 @@ export class Counter {
|
|
|
123
121
|
sendValue: bigint | TransactionArgument,
|
|
124
122
|
nativeFee: bigint | TransactionArgument,
|
|
125
123
|
zroFee: bigint | TransactionArgument,
|
|
126
|
-
refundAddress: string | TransactionArgument
|
|
127
|
-
validators?: IPTBValidator[]
|
|
124
|
+
refundAddress: string | TransactionArgument
|
|
128
125
|
): Promise<void> {
|
|
129
126
|
const [nativeToken] = tx.splitCoins(tx.gas, [asU64(tx, nativeFee)])
|
|
130
127
|
const zroToken = isTransactionArgument(zroFee)
|
|
@@ -144,55 +141,74 @@ export class Counter {
|
|
|
144
141
|
asAddress(tx, refundAddress),
|
|
145
142
|
],
|
|
146
143
|
})
|
|
147
|
-
await this.moduleManager.getEndpoint().populateSendTransaction(tx, incrementCall, sender
|
|
144
|
+
await this.moduleManager.getEndpoint().populateSendTransaction(tx, incrementCall, sender)
|
|
148
145
|
}
|
|
149
146
|
|
|
150
147
|
/**
|
|
151
|
-
* Set
|
|
148
|
+
* Set peer counter on another chain
|
|
152
149
|
* @param tx - The transaction to add the move call to
|
|
153
|
-
* @param
|
|
150
|
+
* @param messagingChannel - The messaging channel object ID or transaction argument
|
|
151
|
+
* @param eid - The peer endpoint ID or transaction argument
|
|
152
|
+
* @param peer - The peer counter address as bytes or transaction argument
|
|
154
153
|
*/
|
|
155
|
-
|
|
154
|
+
setPeerMoveCall(
|
|
155
|
+
tx: Transaction,
|
|
156
|
+
messagingChannel: string | TransactionArgument,
|
|
157
|
+
eid: number | TransactionArgument,
|
|
158
|
+
peer: Uint8Array | TransactionArgument
|
|
159
|
+
): void {
|
|
156
160
|
tx.moveCall({
|
|
157
|
-
target: this.#target('
|
|
161
|
+
target: this.#target('set_peer'),
|
|
158
162
|
arguments: [
|
|
159
163
|
tx.object(this.objects.counter),
|
|
160
164
|
tx.object(this.objects.counterOapp),
|
|
161
165
|
tx.object(this.objects.counterAdminCap),
|
|
162
166
|
tx.object(this.objects.endpointV2),
|
|
163
|
-
|
|
167
|
+
asObject(tx, messagingChannel),
|
|
168
|
+
asU32(tx, eid),
|
|
169
|
+
asBytes32(tx, peer, this.moduleManager.getUtils()),
|
|
164
170
|
],
|
|
165
171
|
})
|
|
166
172
|
}
|
|
167
173
|
|
|
168
|
-
// === View Functions ===
|
|
169
|
-
|
|
170
174
|
/**
|
|
171
|
-
*
|
|
175
|
+
* Set delegate for the counter
|
|
172
176
|
* @param tx - The transaction to add the move call to
|
|
173
|
-
* @
|
|
177
|
+
* @param newDelegate - The new delegate address or transaction argument
|
|
174
178
|
*/
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
target: this.#target('
|
|
178
|
-
arguments: [
|
|
179
|
+
setDelegateMoveCall(tx: Transaction, newDelegate: string | TransactionArgument): void {
|
|
180
|
+
tx.moveCall({
|
|
181
|
+
target: this.#target('set_delegate'),
|
|
182
|
+
arguments: [
|
|
183
|
+
tx.object(this.objects.counter),
|
|
184
|
+
tx.object(this.objects.counterOapp),
|
|
185
|
+
tx.object(this.objects.counterAdminCap),
|
|
186
|
+
tx.object(this.objects.endpointV2),
|
|
187
|
+
asAddress(tx, newDelegate),
|
|
188
|
+
],
|
|
179
189
|
})
|
|
180
190
|
}
|
|
181
191
|
|
|
182
192
|
/**
|
|
183
|
-
*
|
|
184
|
-
* @
|
|
193
|
+
* Set LayerZero compose information for counter
|
|
194
|
+
* @param tx - The transaction to add the move call to
|
|
195
|
+
* @param lzComposeInfo - LayerZero compose information as bytes
|
|
185
196
|
*/
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
this
|
|
189
|
-
|
|
190
|
-
this.
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
197
|
+
setLzComposeInfoMoveCall(tx: Transaction, lzComposeInfo: Uint8Array | TransactionArgument): void {
|
|
198
|
+
tx.moveCall({
|
|
199
|
+
target: this.#target('set_lz_compose_info'),
|
|
200
|
+
arguments: [
|
|
201
|
+
tx.object(this.objects.counter),
|
|
202
|
+
tx.object(this.objects.counterOapp),
|
|
203
|
+
tx.object(this.objects.counterAdminCap),
|
|
204
|
+
tx.object(this.objects.endpointV2),
|
|
205
|
+
asBytes(tx, lzComposeInfo),
|
|
206
|
+
],
|
|
207
|
+
})
|
|
194
208
|
}
|
|
195
209
|
|
|
210
|
+
// === View Functions ===
|
|
211
|
+
|
|
196
212
|
/**
|
|
197
213
|
* Get call capability address for counter
|
|
198
214
|
* @param tx - The transaction to add the move call to
|