@layerzerolabs/oft-sui-sdk-v2 0.0.0-stage → 1.2.104
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/LICENSE +23 -0
- package/README.md +172 -2
- package/dist/2PVXPTJR.js +57 -0
- package/dist/2PVXPTJR.js.map +1 -0
- package/dist/4DKNPMZP.js +82 -0
- package/dist/4DKNPMZP.js.map +1 -0
- package/dist/5YQUATNE.js +1292 -0
- package/dist/5YQUATNE.js.map +1 -0
- package/dist/A3B5LALR.js +67 -0
- package/dist/A3B5LALR.js.map +1 -0
- package/dist/AQUMEEKG.js +108 -0
- package/dist/AQUMEEKG.js.map +1 -0
- package/dist/DUMP7ZFT.js +200 -0
- package/dist/DUMP7ZFT.js.map +1 -0
- package/dist/F5PNGH74.js +212 -0
- package/dist/F5PNGH74.js.map +1 -0
- package/dist/GLVZWDOK.js +49 -0
- package/dist/GLVZWDOK.js.map +1 -0
- package/dist/HD4WZG6B.js +38 -0
- package/dist/HD4WZG6B.js.map +1 -0
- package/dist/I5Z2GNDD.js +9 -0
- package/dist/I5Z2GNDD.js.map +1 -0
- package/dist/JUS4ARN3.js +78 -0
- package/dist/JUS4ARN3.js.map +1 -0
- package/dist/TF6IBJWJ.js +3 -0
- package/dist/TF6IBJWJ.js.map +1 -0
- package/dist/TL7X5YWY.js +39 -0
- package/dist/TL7X5YWY.js.map +1 -0
- package/dist/U4WYCHEV.js +54 -0
- package/dist/U4WYCHEV.js.map +1 -0
- package/dist/UIOGD65B.js +35 -0
- package/dist/UIOGD65B.js.map +1 -0
- package/dist/VUOMXK5T.js +6 -0
- package/dist/VUOMXK5T.js.map +1 -0
- package/dist/XCARM3YF.js +219 -0
- package/dist/XCARM3YF.js.map +1 -0
- package/dist/bcs/oft.d.ts +23 -0
- package/dist/bcs/oft.d.ts.map +1 -0
- package/dist/bcs/oft.js +4 -0
- package/dist/bcs/oft.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/oft-composer-manager.d.ts +55 -0
- package/dist/modules/oft-composer-manager.d.ts.map +1 -0
- package/dist/modules/oft-composer-manager.js +16 -0
- package/dist/modules/oft-composer-manager.js.map +1 -0
- package/dist/modules/oft.d.ts +502 -0
- package/dist/modules/oft.d.ts.map +1 -0
- package/dist/modules/oft.js +17 -0
- package/dist/modules/oft.js.map +1 -0
- package/dist/protocol/args.d.ts +22 -0
- package/dist/protocol/args.d.ts.map +1 -0
- package/dist/protocol/args.js +4 -0
- package/dist/protocol/args.js.map +1 -0
- package/dist/protocol/deployments.d.ts +25 -0
- package/dist/protocol/deployments.d.ts.map +1 -0
- package/dist/protocol/deployments.js +4 -0
- package/dist/protocol/deployments.js.map +1 -0
- package/dist/protocol/endpoint.d.ts +40 -0
- package/dist/protocol/endpoint.d.ts.map +1 -0
- package/dist/protocol/endpoint.js +8 -0
- package/dist/protocol/endpoint.js.map +1 -0
- package/dist/protocol/index.d.ts +12 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/index.js +15 -0
- package/dist/protocol/index.js.map +1 -0
- package/dist/protocol/oapp.d.ts +14 -0
- package/dist/protocol/oapp.d.ts.map +1 -0
- package/dist/protocol/oapp.js +6 -0
- package/dist/protocol/oapp.js.map +1 -0
- package/dist/protocol/ptb-builder.d.ts +17 -0
- package/dist/protocol/ptb-builder.d.ts.map +1 -0
- package/dist/protocol/ptb-builder.js +7 -0
- package/dist/protocol/ptb-builder.js.map +1 -0
- package/dist/protocol/sdk.d.ts +27 -0
- package/dist/protocol/sdk.d.ts.map +1 -0
- package/dist/protocol/sdk.js +14 -0
- package/dist/protocol/sdk.js.map +1 -0
- package/dist/protocol/simulate.d.ts +10 -0
- package/dist/protocol/simulate.d.ts.map +1 -0
- package/dist/protocol/simulate.js +5 -0
- package/dist/protocol/simulate.js.map +1 -0
- package/dist/protocol/types.d.ts +63 -0
- package/dist/protocol/types.d.ts.map +1 -0
- package/dist/protocol/types.js +4 -0
- package/dist/protocol/types.js.map +1 -0
- package/dist/protocol/utils.d.ts +11 -0
- package/dist/protocol/utils.d.ts.map +1 -0
- package/dist/protocol/utils.js +5 -0
- package/dist/protocol/utils.js.map +1 -0
- package/dist/protocol/validators.d.ts +44 -0
- package/dist/protocol/validators.d.ts.map +1 -0
- package/dist/protocol/validators.js +7 -0
- package/dist/protocol/validators.js.map +1 -0
- package/dist/protocol/zro.d.ts +13 -0
- package/dist/protocol/zro.d.ts.map +1 -0
- package/dist/protocol/zro.js +4 -0
- package/dist/protocol/zro.js.map +1 -0
- package/dist/types.d.ts +31 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +4 -0
- package/dist/types.js.map +1 -0
- package/package.json +45 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/protocol/ptb-builder.ts"],"names":["ArgumentBcs","bcs","enum","ID","vector","u8","Object","Address","Pure","NestedResult","struct","call_index","u16","result_index","MoveCallBcs","function","FunctionBcs","arguments","type_arguments","string","is_builder_call","bool","result_ids","VectorMoveCallBcs","PtbBuilderErrorCode","MoveCallsBuilder_EInvalidMoveCallResult","MoveCallsBuilder_EResultIDNotFound","Argument_EInvalidArgument","PtbBuilder","packageId","client","simulatePtb","tx","sender","results","simulateAllResults","builderResult","findLast","returnValues","length","moveCalls","undefined","Error","buildPtb","resolutionIDs","Map","maxSimulationTimes","DEFAULT_SIMULATION_TIMES","nestedResult","baseOffset","finalMoveCalls","moveCallCount","remainingSimulation","builderMoveCallCount","placeholderInfos","currentMoveCallIndex","moveCall","processedMoveCall","map","arg","callIndex","resultIndex","newCallIndex","push","simulateTx","Transaction","from","newMoveCalls","placeholderMoveCallCount","index","reduce","acc","item","directCall","moveCallParam","target","package","module_name","name","object","pure","moveCallResult","result","get","toHex","JSON","stringify","typeArguments","toTypeArgument","i","resultID","has","set","value","decoded","parse","serialize","toBytes","Uint8Array","id","placeholderCount","placeholder"],"mappings":"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","file":"DUMP7ZFT.js","sourcesContent":["import { bcs } from '@mysten/sui/bcs';\nimport type { ClientWithCoreApi } from '@mysten/sui/client';\nimport {\n Transaction,\n type TransactionArgument,\n type TransactionResult,\n} from '@mysten/sui/transactions';\nimport { toHex } from '@mysten/sui/utils';\n\nimport { toTypeArgument } from './args';\nimport { simulateAllResults } from './simulate';\nimport {\n type BuilderPlaceholderInfo,\n DEFAULT_SIMULATION_TIMES,\n FunctionBcs,\n type MoveCall,\n type SimulateResult,\n} from './types';\n\nconst ArgumentBcs = bcs.enum('Argument', {\n ID: bcs.vector(bcs.u8()),\n Object: bcs.Address,\n Pure: bcs.vector(bcs.u8()),\n NestedResult: bcs.struct('NestedResult', {\n call_index: bcs.u16(),\n result_index: bcs.u16(),\n }),\n});\n\nconst MoveCallBcs = bcs.struct('MoveCall', {\n function: FunctionBcs,\n arguments: bcs.vector(ArgumentBcs),\n type_arguments: bcs.vector(bcs.string()),\n is_builder_call: bcs.bool(),\n result_ids: bcs.vector(bcs.vector(bcs.u8())),\n});\n\nconst VectorMoveCallBcs = bcs.vector(MoveCallBcs);\n\nexport const PtbBuilderErrorCode = {\n MoveCallsBuilder_EInvalidMoveCallResult: 1,\n MoveCallsBuilder_EResultIDNotFound: 2,\n Argument_EInvalidArgument: 1,\n} as const;\n\nexport class PtbBuilder {\n constructor(\n public readonly packageId: string,\n public readonly client: ClientWithCoreApi,\n ) {}\n\n async simulatePtb(tx: Transaction, sender?: string): Promise<MoveCall[]> {\n const results = await simulateAllResults(this.client, tx, sender);\n const builderResult = results.findLast((returnValues) => returnValues.length > 0);\n const moveCalls =\n builderResult === undefined ? undefined : this.#tryDecodeMoveCalls(builderResult);\n if (moveCalls === undefined)\n throw new Error('No move calls returned by the PTB builder simulation');\n return moveCalls;\n }\n\n async buildPtb(\n tx: Transaction,\n moveCalls: MoveCall[],\n resolutionIDs = new Map<string, TransactionArgument>(),\n sender: string | undefined = undefined,\n maxSimulationTimes = DEFAULT_SIMULATION_TIMES,\n nestedResult: TransactionResult[] = [],\n baseOffset = 0,\n ): Promise<[number, MoveCall[]]> {\n const finalMoveCalls: MoveCall[] = [];\n const moveCallCount = await this.#buildMoveCalls(\n tx,\n moveCalls,\n resolutionIDs,\n sender,\n maxSimulationTimes,\n finalMoveCalls,\n nestedResult,\n baseOffset,\n );\n return [moveCallCount, finalMoveCalls];\n }\n\n async #buildMoveCalls(\n tx: Transaction,\n moveCalls: MoveCall[],\n resolutionIDs: Map<string, TransactionArgument>,\n sender: string | undefined,\n remainingSimulation: number,\n finalMoveCalls: MoveCall[],\n nestedResult: TransactionResult[],\n baseOffset: number,\n ): Promise<number> {\n if (moveCalls.length === 0) return 0;\n let builderMoveCallCount = 0;\n const placeholderInfos: BuilderPlaceholderInfo[] = [];\n for (\n let currentMoveCallIndex = 0;\n currentMoveCallIndex < moveCalls.length;\n currentMoveCallIndex++\n ) {\n const moveCall = moveCalls[currentMoveCallIndex];\n const processedMoveCall: MoveCall = {\n ...moveCall,\n arguments: moveCall.arguments.map((arg) => {\n if ('NestedResult' in arg) {\n const [callIndex, resultIndex] = arg.NestedResult;\n const newCallIndex = this.#calculateOffset(\n callIndex,\n baseOffset,\n placeholderInfos,\n );\n return { NestedResult: [newCallIndex, resultIndex] as [number, number] };\n }\n return arg;\n }),\n };\n if (!moveCall.is_builder_call) {\n finalMoveCalls.push(processedMoveCall);\n this.#appendMoveCall(tx, processedMoveCall, resolutionIDs, nestedResult, true);\n } else {\n builderMoveCallCount++;\n if (remainingSimulation <= 0) {\n throw new Error('remainingSimulation is not enough');\n }\n remainingSimulation--;\n const simulateTx = Transaction.from(tx);\n this.#appendMoveCall(\n simulateTx,\n processedMoveCall,\n resolutionIDs,\n nestedResult,\n false,\n );\n const newMoveCalls = await this.simulatePtb(simulateTx, sender);\n const placeholderMoveCallCount = await this.#buildMoveCalls(\n tx,\n newMoveCalls,\n resolutionIDs,\n sender,\n remainingSimulation,\n finalMoveCalls,\n nestedResult,\n this.#calculateOffset(currentMoveCallIndex, baseOffset, placeholderInfos),\n );\n placeholderInfos.push({\n index: currentMoveCallIndex,\n moveCallCount: placeholderMoveCallCount,\n });\n }\n }\n const placeholderMoveCallCount = placeholderInfos.reduce(\n (acc, item) => acc + item.moveCallCount,\n 0,\n );\n return moveCalls.length - builderMoveCallCount + placeholderMoveCallCount;\n }\n\n #appendMoveCall(\n tx: Transaction,\n moveCall: MoveCall,\n resolutionIDs: Map<string, TransactionArgument>,\n nestedResult: TransactionResult[],\n directCall: boolean,\n ): void {\n const moveCallParam = {\n target: `${moveCall.function.package}::${moveCall.function.module_name}::${moveCall.function.name}`,\n arguments: moveCall.arguments.map((arg): TransactionArgument => {\n if ('Object' in arg) {\n return tx.object(arg.Object);\n } else if ('Pure' in arg) {\n return tx.pure(arg.Pure);\n } else if ('NestedResult' in arg) {\n const [callIndex, resultIndex] = arg.NestedResult;\n const moveCallResult = nestedResult[callIndex] as TransactionResult | undefined;\n if (\n moveCallResult === undefined ||\n typeof moveCallResult[resultIndex] === 'undefined'\n ) {\n throw new Error(\n `NestedResult resultIndex ${resultIndex} not available in call ${callIndex}`,\n );\n }\n return moveCallResult[resultIndex];\n } else if ('ID' in arg) {\n const result = resolutionIDs.get(toHex(arg.ID));\n if (result === undefined) {\n throw new Error(\n `Call substitution not found for \"${toHex(arg.ID)}\" in cache`,\n );\n }\n return result;\n }\n throw new Error(`Unknown argument variant: ${JSON.stringify(arg)}`);\n }),\n typeArguments: moveCall.type_arguments.map(toTypeArgument),\n };\n if (directCall) {\n const result = tx.moveCall(moveCallParam);\n nestedResult.push(result);\n for (let i = 0; i < moveCall.result_ids.length; i++) {\n const resultID = toHex(moveCall.result_ids[i]);\n if (i >= result.length) {\n throw new Error(\n `Move call result doesn't have output at index ${i} for call \"${resultID}\"`,\n );\n }\n if (resolutionIDs.has(resultID)) {\n throw new Error(`Move call result already exists for call \"${resultID}\"`);\n }\n resolutionIDs.set(resultID, result[i]);\n }\n } else {\n tx.moveCall(moveCallParam);\n }\n }\n\n #tryDecodeMoveCalls(returnValues: SimulateResult[]): MoveCall[] | undefined {\n if (returnValues.length !== 1) return undefined;\n const { value } = returnValues[0];\n let decoded: typeof VectorMoveCallBcs.$inferType | undefined;\n try {\n decoded = VectorMoveCallBcs.parse(value);\n } catch {\n return undefined;\n }\n if (toHex(VectorMoveCallBcs.serialize(decoded).toBytes()) !== toHex(value))\n return undefined;\n return decoded.map((moveCall) => ({\n function: {\n package: moveCall.function.package,\n module_name: moveCall.function.module_name,\n name: moveCall.function.name,\n },\n arguments: moveCall.arguments.map((arg) => {\n if (arg.ID !== undefined) {\n return { ID: new Uint8Array(arg.ID) };\n } else if (arg.Object !== undefined) {\n return { Object: arg.Object };\n } else if (arg.Pure !== undefined) {\n return { Pure: new Uint8Array(arg.Pure) };\n }\n return {\n NestedResult: [arg.NestedResult.call_index, arg.NestedResult.result_index] as [\n number,\n number,\n ],\n };\n }),\n type_arguments: moveCall.type_arguments,\n result_ids: moveCall.result_ids.map((id) => new Uint8Array(id)),\n is_builder_call: moveCall.is_builder_call,\n }));\n }\n\n #calculateOffset(\n index: number,\n baseOffset: number,\n placeholderInfos: BuilderPlaceholderInfo[],\n ): number {\n let placeholderCount = 0;\n let placeholderMoveCallCount = 0;\n for (const placeholder of placeholderInfos) {\n if (index > placeholder.index) {\n placeholderMoveCallCount += placeholder.moveCallCount;\n placeholderCount++;\n }\n }\n return index - placeholderCount + placeholderMoveCallCount + baseOffset;\n }\n}\n"]}
|
package/dist/F5PNGH74.js
ADDED
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { validateWithDetails, ShareObjectValidator, PackageAllowlistValidator, PackageWhitelistValidator } from './XCARM3YF.js';
|
|
2
|
+
import { executeSimulate, simulateTransaction } from './A3B5LALR.js';
|
|
3
|
+
import { DEFAULT_SIMULATION_TIMES, MessagingFeeBcs } from './TL7X5YWY.js';
|
|
4
|
+
import { asAddress, toTypeArgument } from './UIOGD65B.js';
|
|
5
|
+
import { __name } from './VUOMXK5T.js';
|
|
6
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
7
|
+
import { Transaction } from '@mysten/sui/transactions';
|
|
8
|
+
import { keccak_256 } from '@noble/hashes/sha3.js';
|
|
9
|
+
import { bytesToHex } from '@noble/hashes/utils.js';
|
|
10
|
+
|
|
11
|
+
var ENDPOINT_MODULE_NAME = "endpoint_v2";
|
|
12
|
+
var ENDPOINT_PTB_BUILDER_MODULE_NAME = "endpoint_ptb_builder";
|
|
13
|
+
var normalizeSuiPackageId = /* @__PURE__ */ __name((packageId, includePrefix = false, trimLeadingZeros = false) => {
|
|
14
|
+
let normalized = packageId.startsWith("0x") ? packageId.slice(2) : packageId;
|
|
15
|
+
if (trimLeadingZeros) {
|
|
16
|
+
normalized = normalized.replace(/^0+/, "") || "0";
|
|
17
|
+
}
|
|
18
|
+
return includePrefix ? `0x${normalized}` : normalized;
|
|
19
|
+
}, "normalizeSuiPackageId");
|
|
20
|
+
var buildTypeName = /* @__PURE__ */ __name((packageId, module, type) => `${normalizeSuiPackageId(packageId)}::${module}::${type}`, "buildTypeName");
|
|
21
|
+
var buildCallTypeName = /* @__PURE__ */ __name((packageId, paramType, resultType) => `${normalizeSuiPackageId(packageId)}::call::Call<${paramType},${resultType}>`, "buildCallTypeName");
|
|
22
|
+
var LzTypeName = {
|
|
23
|
+
EndpointQuoteParam: "EndpointQuoteParam",
|
|
24
|
+
EndpointSendParam: "EndpointSendParam",
|
|
25
|
+
MessagingFee: "MessagingFee",
|
|
26
|
+
MessagingReceipt: "MessagingReceipt"
|
|
27
|
+
};
|
|
28
|
+
var CallTypeName = {
|
|
29
|
+
EndpointQuoteCall: "EndpointQuoteCall",
|
|
30
|
+
EndpointSendCall: "EndpointSendCall"
|
|
31
|
+
};
|
|
32
|
+
var TYPE_CONFIG = {
|
|
33
|
+
EndpointQuoteParam: {
|
|
34
|
+
module: "endpoint_quote",
|
|
35
|
+
type: "QuoteParam"
|
|
36
|
+
},
|
|
37
|
+
EndpointSendParam: {
|
|
38
|
+
module: "endpoint_send",
|
|
39
|
+
type: "SendParam"
|
|
40
|
+
},
|
|
41
|
+
MessagingFee: {
|
|
42
|
+
module: "messaging_fee",
|
|
43
|
+
type: "MessagingFee"
|
|
44
|
+
},
|
|
45
|
+
MessagingReceipt: {
|
|
46
|
+
module: "messaging_receipt",
|
|
47
|
+
type: "MessagingReceipt"
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
var CALL_TYPE_CONFIG = {
|
|
51
|
+
EndpointQuoteCall: {
|
|
52
|
+
param: "EndpointQuoteParam",
|
|
53
|
+
result: "MessagingFee"
|
|
54
|
+
},
|
|
55
|
+
EndpointSendCall: {
|
|
56
|
+
param: "EndpointSendParam",
|
|
57
|
+
result: "MessagingReceipt"
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
var getTypeName = /* @__PURE__ */ __name((packages, type) => {
|
|
61
|
+
if (type in TYPE_CONFIG) {
|
|
62
|
+
const config = TYPE_CONFIG[type];
|
|
63
|
+
return buildTypeName(packages.endpointV2, config.module, config.type);
|
|
64
|
+
}
|
|
65
|
+
if (type in CALL_TYPE_CONFIG) {
|
|
66
|
+
const callConfig = CALL_TYPE_CONFIG[type];
|
|
67
|
+
return buildCallTypeName(packages.call, getTypeName(packages, callConfig.param), getTypeName(packages, callConfig.result));
|
|
68
|
+
}
|
|
69
|
+
throw new Error(`Unknown type name: ${JSON.stringify(type)}`);
|
|
70
|
+
}, "getTypeName");
|
|
71
|
+
var callId = /* @__PURE__ */ __name((packages, type) => bytesToHex(keccak_256(new TextEncoder().encode(getTypeName(packages, type)))), "callId");
|
|
72
|
+
var Endpoint = class {
|
|
73
|
+
static {
|
|
74
|
+
__name(this, "Endpoint");
|
|
75
|
+
}
|
|
76
|
+
client;
|
|
77
|
+
packages;
|
|
78
|
+
objects;
|
|
79
|
+
ptbBuilder;
|
|
80
|
+
constructor(client, packages, objects, ptbBuilder) {
|
|
81
|
+
this.client = client;
|
|
82
|
+
this.packages = packages;
|
|
83
|
+
this.objects = objects;
|
|
84
|
+
this.ptbBuilder = ptbBuilder;
|
|
85
|
+
}
|
|
86
|
+
get packageId() {
|
|
87
|
+
return this.packages.endpointV2;
|
|
88
|
+
}
|
|
89
|
+
getMessagingChannelMoveCall(tx, oapp) {
|
|
90
|
+
return tx.moveCall({
|
|
91
|
+
target: this.#target("get_messaging_channel"),
|
|
92
|
+
arguments: [
|
|
93
|
+
tx.object(this.objects.endpointV2),
|
|
94
|
+
asAddress(tx, oapp)
|
|
95
|
+
]
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
async getMessagingChannel(oapp) {
|
|
99
|
+
return executeSimulate(this.client, (tx) => {
|
|
100
|
+
this.getMessagingChannelMoveCall(tx, oapp);
|
|
101
|
+
}, (result) => bcs.Address.parse(result[0].value));
|
|
102
|
+
}
|
|
103
|
+
getOappInfoMoveCall(tx, oapp) {
|
|
104
|
+
return tx.moveCall({
|
|
105
|
+
target: this.#target("get_oapp_info"),
|
|
106
|
+
arguments: [
|
|
107
|
+
tx.object(this.objects.endpointV2),
|
|
108
|
+
asAddress(tx, oapp)
|
|
109
|
+
]
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
buildQuotePtbByCallMoveCall(tx, endpointQuoteCall) {
|
|
113
|
+
return tx.moveCall({
|
|
114
|
+
target: this.#ptbBuilderTarget("build_quote_ptb_by_call"),
|
|
115
|
+
arguments: [
|
|
116
|
+
tx.object(this.objects.endpointPtbBuilder),
|
|
117
|
+
tx.object(this.objects.endpointV2),
|
|
118
|
+
endpointQuoteCall
|
|
119
|
+
]
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
buildSendPtbByCallMoveCall(tx, endpointSendCall) {
|
|
123
|
+
return tx.moveCall({
|
|
124
|
+
target: this.#ptbBuilderTarget("build_send_ptb_by_call"),
|
|
125
|
+
arguments: [
|
|
126
|
+
tx.object(this.objects.endpointPtbBuilder),
|
|
127
|
+
tx.object(this.objects.endpointV2),
|
|
128
|
+
endpointSendCall
|
|
129
|
+
]
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
callResultMoveCall(tx, paramType, resultType, call) {
|
|
133
|
+
return tx.moveCall({
|
|
134
|
+
target: `${this.packages.call}::call::result`,
|
|
135
|
+
typeArguments: [
|
|
136
|
+
toTypeArgument(paramType),
|
|
137
|
+
toTypeArgument(resultType)
|
|
138
|
+
],
|
|
139
|
+
arguments: [
|
|
140
|
+
call
|
|
141
|
+
]
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
async quote(tx, quoteCall, sender = void 0, validators = [], maxSimulationTimes = DEFAULT_SIMULATION_TIMES) {
|
|
145
|
+
await this.populateQuoteTransaction(tx, quoteCall, sender, validators, maxSimulationTimes);
|
|
146
|
+
const quoteResult = this.callResultMoveCall(tx, getTypeName(this.packages, LzTypeName.EndpointQuoteParam), getTypeName(this.packages, LzTypeName.MessagingFee), quoteCall);
|
|
147
|
+
tx.moveCall({
|
|
148
|
+
target: "0x1::option::borrow",
|
|
149
|
+
typeArguments: [
|
|
150
|
+
toTypeArgument(getTypeName(this.packages, LzTypeName.MessagingFee))
|
|
151
|
+
],
|
|
152
|
+
arguments: [
|
|
153
|
+
quoteResult
|
|
154
|
+
]
|
|
155
|
+
});
|
|
156
|
+
const result = await simulateTransaction(this.client, tx, sender);
|
|
157
|
+
const messageFee = MessagingFeeBcs.parse(result[0].value);
|
|
158
|
+
return {
|
|
159
|
+
nativeFee: BigInt(messageFee.native_fee),
|
|
160
|
+
zroFee: BigInt(messageFee.zro_fee)
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
async populateQuoteTransaction(tx, quoteCall, sender = void 0, validators = [], maxSimulationTimes = DEFAULT_SIMULATION_TIMES) {
|
|
164
|
+
const simulateTx = Transaction.from(tx);
|
|
165
|
+
this.buildQuotePtbByCallMoveCall(simulateTx, quoteCall);
|
|
166
|
+
const moveCalls = await this.ptbBuilder.simulatePtb(simulateTx, sender);
|
|
167
|
+
const [, finalMoveCalls] = await this.ptbBuilder.buildPtb(tx, moveCalls, /* @__PURE__ */ new Map([
|
|
168
|
+
[
|
|
169
|
+
callId(this.packages, CallTypeName.EndpointQuoteCall),
|
|
170
|
+
quoteCall
|
|
171
|
+
]
|
|
172
|
+
]), sender, maxSimulationTimes);
|
|
173
|
+
await validateWithDetails(this.client, finalMoveCalls, this.#addRequiredValidators(validators), sender);
|
|
174
|
+
return finalMoveCalls;
|
|
175
|
+
}
|
|
176
|
+
async populateSendTransaction(tx, sendCall, sender = void 0, validators = [], maxSimulationTimes = DEFAULT_SIMULATION_TIMES) {
|
|
177
|
+
const simulateTx = Transaction.from(tx);
|
|
178
|
+
this.buildSendPtbByCallMoveCall(simulateTx, sendCall);
|
|
179
|
+
const moveCalls = await this.ptbBuilder.simulatePtb(simulateTx, sender);
|
|
180
|
+
const [, finalMoveCalls] = await this.ptbBuilder.buildPtb(tx, moveCalls, /* @__PURE__ */ new Map([
|
|
181
|
+
[
|
|
182
|
+
callId(this.packages, CallTypeName.EndpointSendCall),
|
|
183
|
+
sendCall
|
|
184
|
+
]
|
|
185
|
+
]), sender, maxSimulationTimes);
|
|
186
|
+
await validateWithDetails(this.client, finalMoveCalls, this.#addRequiredValidators(validators), sender);
|
|
187
|
+
return finalMoveCalls;
|
|
188
|
+
}
|
|
189
|
+
#addRequiredValidators(validators) {
|
|
190
|
+
const required = [];
|
|
191
|
+
if (!validators.some((v) => v instanceof ShareObjectValidator)) {
|
|
192
|
+
required.push(new ShareObjectValidator());
|
|
193
|
+
}
|
|
194
|
+
if (!validators.some((v) => v instanceof PackageAllowlistValidator)) {
|
|
195
|
+
required.push(new PackageAllowlistValidator([], new PackageWhitelistValidator(this.packages.packageWhitelistValidator, this.client, this.objects.packageWhitelistValidator)));
|
|
196
|
+
}
|
|
197
|
+
return [
|
|
198
|
+
...required,
|
|
199
|
+
...validators
|
|
200
|
+
];
|
|
201
|
+
}
|
|
202
|
+
#target(name) {
|
|
203
|
+
return `${this.packageId}::${ENDPOINT_MODULE_NAME}::${name}`;
|
|
204
|
+
}
|
|
205
|
+
#ptbBuilderTarget(name) {
|
|
206
|
+
return `${this.packages.endpointPtbBuilder}::${ENDPOINT_PTB_BUILDER_MODULE_NAME}::${name}`;
|
|
207
|
+
}
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
export { CallTypeName, Endpoint, LzTypeName, callId, getTypeName, normalizeSuiPackageId };
|
|
211
|
+
//# sourceMappingURL=F5PNGH74.js.map
|
|
212
|
+
//# sourceMappingURL=F5PNGH74.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/protocol/endpoint.ts"],"names":["ENDPOINT_MODULE_NAME","ENDPOINT_PTB_BUILDER_MODULE_NAME","normalizeSuiPackageId","packageId","includePrefix","trimLeadingZeros","normalized","startsWith","slice","replace","buildTypeName","module","type","buildCallTypeName","paramType","resultType","LzTypeName","EndpointQuoteParam","EndpointSendParam","MessagingFee","MessagingReceipt","CallTypeName","EndpointQuoteCall","EndpointSendCall","TYPE_CONFIG","CALL_TYPE_CONFIG","param","result","getTypeName","packages","config","endpointV2","callConfig","call","Error","JSON","stringify","callId","bytesToHex","keccak_256","TextEncoder","encode","Endpoint","client","objects","ptbBuilder","getMessagingChannelMoveCall","tx","oapp","moveCall","target","arguments","object","asAddress","getMessagingChannel","executeSimulate","bcs","Address","parse","value","getOappInfoMoveCall","buildQuotePtbByCallMoveCall","endpointQuoteCall","endpointPtbBuilder","buildSendPtbByCallMoveCall","endpointSendCall","callResultMoveCall","typeArguments","toTypeArgument","quote","quoteCall","sender","undefined","validators","maxSimulationTimes","DEFAULT_SIMULATION_TIMES","populateQuoteTransaction","quoteResult","simulateTransaction","messageFee","MessagingFeeBcs","nativeFee","BigInt","native_fee","zroFee","zro_fee","simulateTx","Transaction","from","moveCalls","simulatePtb","finalMoveCalls","buildPtb","Map","validateWithDetails","populateSendTransaction","sendCall","required","some","v","ShareObjectValidator","push","PackageAllowlistValidator","PackageWhitelistValidator","packageWhitelistValidator","name"],"mappings":"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","file":"F5PNGH74.js","sourcesContent":["import { bcs } from '@mysten/sui/bcs';\nimport type { ClientWithCoreApi } from '@mysten/sui/client';\nimport {\n Transaction,\n type TransactionArgument,\n type TransactionResult,\n} from '@mysten/sui/transactions';\nimport { keccak_256 } from '@noble/hashes/sha3.js';\nimport { bytesToHex } from '@noble/hashes/utils.js';\n\nimport { asAddress, toTypeArgument } from './args';\nimport type { ObjectOptions, PackageOptions } from './deployments';\nimport type { PtbBuilder } from './ptb-builder';\nimport { executeSimulate, simulateTransaction } from './simulate';\nimport {\n DEFAULT_SIMULATION_TIMES,\n type MessagingFee,\n MessagingFeeBcs,\n type MoveCall,\n} from './types';\nimport {\n type IPTBValidator,\n PackageAllowlistValidator,\n PackageWhitelistValidator,\n ShareObjectValidator,\n validateWithDetails,\n} from './validators';\n\nconst ENDPOINT_MODULE_NAME = 'endpoint_v2';\nconst ENDPOINT_PTB_BUILDER_MODULE_NAME = 'endpoint_ptb_builder';\n\nexport const normalizeSuiPackageId = (\n packageId: string,\n includePrefix = false,\n trimLeadingZeros = false,\n): string => {\n let normalized = packageId.startsWith('0x') ? packageId.slice(2) : packageId;\n if (trimLeadingZeros) {\n normalized = normalized.replace(/^0+/, '') || '0';\n }\n return includePrefix ? `0x${normalized}` : normalized;\n};\n\nconst buildTypeName = (packageId: string, module: string, type: string): string =>\n `${normalizeSuiPackageId(packageId)}::${module}::${type}`;\n\nconst buildCallTypeName = (packageId: string, paramType: string, resultType: string): string =>\n `${normalizeSuiPackageId(packageId)}::call::Call<${paramType},${resultType}>`;\n\nexport const LzTypeName = {\n EndpointQuoteParam: 'EndpointQuoteParam',\n EndpointSendParam: 'EndpointSendParam',\n MessagingFee: 'MessagingFee',\n MessagingReceipt: 'MessagingReceipt',\n} as const;\nexport type LzTypeName = (typeof LzTypeName)[keyof typeof LzTypeName];\n\nexport const CallTypeName = {\n EndpointQuoteCall: 'EndpointQuoteCall',\n EndpointSendCall: 'EndpointSendCall',\n} as const;\nexport type CallTypeName = (typeof CallTypeName)[keyof typeof CallTypeName];\n\nconst TYPE_CONFIG: Record<LzTypeName, { module: string; type: string }> = {\n EndpointQuoteParam: { module: 'endpoint_quote', type: 'QuoteParam' },\n EndpointSendParam: { module: 'endpoint_send', type: 'SendParam' },\n MessagingFee: { module: 'messaging_fee', type: 'MessagingFee' },\n MessagingReceipt: { module: 'messaging_receipt', type: 'MessagingReceipt' },\n};\n\nconst CALL_TYPE_CONFIG: Record<CallTypeName, { param: LzTypeName; result: LzTypeName }> = {\n EndpointQuoteCall: { param: 'EndpointQuoteParam', result: 'MessagingFee' },\n EndpointSendCall: { param: 'EndpointSendParam', result: 'MessagingReceipt' },\n};\n\nexport const getTypeName = (packages: PackageOptions, type: LzTypeName | CallTypeName): string => {\n if (type in TYPE_CONFIG) {\n const config = TYPE_CONFIG[type as LzTypeName];\n return buildTypeName(packages.endpointV2, config.module, config.type);\n }\n if (type in CALL_TYPE_CONFIG) {\n const callConfig = CALL_TYPE_CONFIG[type as CallTypeName];\n return buildCallTypeName(\n packages.call,\n getTypeName(packages, callConfig.param),\n getTypeName(packages, callConfig.result),\n );\n }\n throw new Error(`Unknown type name: ${JSON.stringify(type)}`);\n};\n\nexport const callId = (packages: PackageOptions, type: CallTypeName): string =>\n bytesToHex(keccak_256(new TextEncoder().encode(getTypeName(packages, type))));\n\nexport class Endpoint {\n constructor(\n public readonly client: ClientWithCoreApi,\n public readonly packages: PackageOptions,\n public readonly objects: ObjectOptions,\n private readonly ptbBuilder: PtbBuilder,\n ) {}\n\n get packageId(): string {\n return this.packages.endpointV2;\n }\n\n getMessagingChannelMoveCall(\n tx: Transaction,\n oapp: string | TransactionArgument,\n ): TransactionResult {\n return tx.moveCall({\n target: this.#target('get_messaging_channel'),\n arguments: [tx.object(this.objects.endpointV2), asAddress(tx, oapp)],\n });\n }\n\n async getMessagingChannel(oapp: string): Promise<string> {\n return executeSimulate(\n this.client,\n (tx) => {\n this.getMessagingChannelMoveCall(tx, oapp);\n },\n (result) => bcs.Address.parse(result[0].value),\n );\n }\n\n getOappInfoMoveCall(tx: Transaction, oapp: string | TransactionArgument): TransactionResult {\n return tx.moveCall({\n target: this.#target('get_oapp_info'),\n arguments: [tx.object(this.objects.endpointV2), asAddress(tx, oapp)],\n });\n }\n\n buildQuotePtbByCallMoveCall(\n tx: Transaction,\n endpointQuoteCall: TransactionArgument,\n ): TransactionResult {\n return tx.moveCall({\n target: this.#ptbBuilderTarget('build_quote_ptb_by_call'),\n arguments: [\n tx.object(this.objects.endpointPtbBuilder),\n tx.object(this.objects.endpointV2),\n endpointQuoteCall,\n ],\n });\n }\n\n buildSendPtbByCallMoveCall(\n tx: Transaction,\n endpointSendCall: TransactionArgument,\n ): TransactionResult {\n return tx.moveCall({\n target: this.#ptbBuilderTarget('build_send_ptb_by_call'),\n arguments: [\n tx.object(this.objects.endpointPtbBuilder),\n tx.object(this.objects.endpointV2),\n endpointSendCall,\n ],\n });\n }\n\n callResultMoveCall(\n tx: Transaction,\n paramType: string,\n resultType: string,\n call: TransactionArgument,\n ): TransactionResult {\n return tx.moveCall({\n target: `${this.packages.call}::call::result`,\n typeArguments: [toTypeArgument(paramType), toTypeArgument(resultType)],\n arguments: [call],\n });\n }\n\n async quote(\n tx: Transaction,\n quoteCall: TransactionArgument,\n sender: string | undefined = undefined,\n validators: IPTBValidator[] = [],\n maxSimulationTimes = DEFAULT_SIMULATION_TIMES,\n ): Promise<MessagingFee> {\n await this.populateQuoteTransaction(tx, quoteCall, sender, validators, maxSimulationTimes);\n const quoteResult = this.callResultMoveCall(\n tx,\n getTypeName(this.packages, LzTypeName.EndpointQuoteParam),\n getTypeName(this.packages, LzTypeName.MessagingFee),\n quoteCall,\n );\n tx.moveCall({\n target: '0x1::option::borrow',\n typeArguments: [toTypeArgument(getTypeName(this.packages, LzTypeName.MessagingFee))],\n arguments: [quoteResult],\n });\n const result = await simulateTransaction(this.client, tx, sender);\n const messageFee = MessagingFeeBcs.parse(result[0].value);\n return {\n nativeFee: BigInt(messageFee.native_fee),\n zroFee: BigInt(messageFee.zro_fee),\n };\n }\n\n async populateQuoteTransaction(\n tx: Transaction,\n quoteCall: TransactionArgument,\n sender: string | undefined = undefined,\n validators: IPTBValidator[] = [],\n maxSimulationTimes = DEFAULT_SIMULATION_TIMES,\n ): Promise<MoveCall[]> {\n const simulateTx = Transaction.from(tx);\n this.buildQuotePtbByCallMoveCall(simulateTx, quoteCall);\n const moveCalls = await this.ptbBuilder.simulatePtb(simulateTx, sender);\n const [, finalMoveCalls] = await this.ptbBuilder.buildPtb(\n tx,\n moveCalls,\n new Map([[callId(this.packages, CallTypeName.EndpointQuoteCall), quoteCall]]),\n sender,\n maxSimulationTimes,\n );\n await validateWithDetails(\n this.client,\n finalMoveCalls,\n this.#addRequiredValidators(validators),\n sender,\n );\n return finalMoveCalls;\n }\n\n async populateSendTransaction(\n tx: Transaction,\n sendCall: TransactionArgument,\n sender: string | undefined = undefined,\n validators: IPTBValidator[] = [],\n maxSimulationTimes = DEFAULT_SIMULATION_TIMES,\n ): Promise<MoveCall[]> {\n const simulateTx = Transaction.from(tx);\n this.buildSendPtbByCallMoveCall(simulateTx, sendCall);\n const moveCalls = await this.ptbBuilder.simulatePtb(simulateTx, sender);\n const [, finalMoveCalls] = await this.ptbBuilder.buildPtb(\n tx,\n moveCalls,\n new Map([[callId(this.packages, CallTypeName.EndpointSendCall), sendCall]]),\n sender,\n maxSimulationTimes,\n );\n await validateWithDetails(\n this.client,\n finalMoveCalls,\n this.#addRequiredValidators(validators),\n sender,\n );\n return finalMoveCalls;\n }\n\n #addRequiredValidators(validators: IPTBValidator[]): IPTBValidator[] {\n const required: IPTBValidator[] = [];\n if (!validators.some((v) => v instanceof ShareObjectValidator)) {\n required.push(new ShareObjectValidator());\n }\n if (!validators.some((v) => v instanceof PackageAllowlistValidator)) {\n required.push(\n new PackageAllowlistValidator(\n [],\n new PackageWhitelistValidator(\n this.packages.packageWhitelistValidator,\n this.client,\n this.objects.packageWhitelistValidator,\n ),\n ),\n );\n }\n return [...required, ...validators];\n }\n\n #target(name: string): string {\n return `${this.packageId}::${ENDPOINT_MODULE_NAME}::${name}`;\n }\n\n #ptbBuilderTarget(name: string): string {\n return `${this.packages.endpointPtbBuilder}::${ENDPOINT_PTB_BUILDER_MODULE_NAME}::${name}`;\n }\n}\n"]}
|
package/dist/GLVZWDOK.js
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { __name } from './VUOMXK5T.js';
|
|
2
|
+
|
|
3
|
+
// src/protocol/zro.ts
|
|
4
|
+
var Zro = class {
|
|
5
|
+
static {
|
|
6
|
+
__name(this, "Zro");
|
|
7
|
+
}
|
|
8
|
+
packageId;
|
|
9
|
+
utils;
|
|
10
|
+
zroType;
|
|
11
|
+
constructor(packageId, utils) {
|
|
12
|
+
this.packageId = packageId;
|
|
13
|
+
this.utils = utils;
|
|
14
|
+
this.zroType = `${this.packageId}::zro::ZRO`;
|
|
15
|
+
}
|
|
16
|
+
async splitOptionZroTokenMoveCall(tx, userAddress, value, maxCoins = 200, maxCoinsPerPage = 50) {
|
|
17
|
+
if (value === 0n) {
|
|
18
|
+
return this.noneOptionMoveCall(tx);
|
|
19
|
+
}
|
|
20
|
+
const zroCoin = await this.splitZroTokenMoveCall(tx, userAddress, value, maxCoins, maxCoinsPerPage);
|
|
21
|
+
return this.someOptionMoveCall(tx, zroCoin);
|
|
22
|
+
}
|
|
23
|
+
async splitZroTokenMoveCall(tx, owner, amount, limit = 200, pageSize = 50) {
|
|
24
|
+
return this.utils.splitCoinMoveCall(tx, this.zroType, owner, amount, limit, pageSize);
|
|
25
|
+
}
|
|
26
|
+
someOptionMoveCall(tx, zroCoin) {
|
|
27
|
+
return tx.moveCall({
|
|
28
|
+
target: `0x1::option::some`,
|
|
29
|
+
typeArguments: [
|
|
30
|
+
`0x2::coin::Coin<${this.zroType}>`
|
|
31
|
+
],
|
|
32
|
+
arguments: [
|
|
33
|
+
zroCoin
|
|
34
|
+
]
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
noneOptionMoveCall(tx) {
|
|
38
|
+
return tx.moveCall({
|
|
39
|
+
target: `0x1::option::none`,
|
|
40
|
+
typeArguments: [
|
|
41
|
+
`0x2::coin::Coin<${this.zroType}>`
|
|
42
|
+
]
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export { Zro };
|
|
48
|
+
//# sourceMappingURL=GLVZWDOK.js.map
|
|
49
|
+
//# sourceMappingURL=GLVZWDOK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/protocol/zro.ts"],"names":["Zro","zroType","packageId","utils","splitOptionZroTokenMoveCall","tx","userAddress","value","maxCoins","maxCoinsPerPage","noneOptionMoveCall","zroCoin","splitZroTokenMoveCall","someOptionMoveCall","owner","amount","limit","pageSize","splitCoinMoveCall","moveCall","target","typeArguments","arguments"],"mappings":";;;AAIO,IAAMA,MAAN,MAAMA;EAAb;;;;;AACaC,EAAAA,OAAAA;AAET,EAAA,WAAA,CACoBC,WACCC,KAAAA,EACnB;SAFkBD,SAAAA,GAAAA,SAAAA;SACCC,KAAAA,GAAAA,KAAAA;AAEjB,IAAA,IAAA,CAAKF,OAAAA,GAAU,CAAA,EAAG,IAAA,CAAKC,SAAS,CAAA,UAAA,CAAA;AACpC,EAAA;AAEA,EAAA,MAAME,4BACFC,EAAAA,EACAC,WAAAA,EACAC,OACAC,QAAAA,GAAW,GAAA,EACXC,kBAAkB,EAAA,EACQ;AAC1B,IAAA,IAAIF,UAAU,EAAA,EAAI;AACd,MAAA,OAAO,IAAA,CAAKG,mBAAmBL,EAAAA,CAAAA;AACnC,IAAA;AACA,IAAA,MAAMM,OAAAA,GAAU,MAAM,IAAA,CAAKC,qBAAAA,CACvBP,IACAC,WAAAA,EACAC,KAAAA,EACAC,UACAC,eAAAA,CAAAA;AAEJ,IAAA,OAAO,IAAA,CAAKI,kBAAAA,CAAmBR,EAAAA,EAAIM,OAAAA,CAAAA;AACvC,EAAA;AAEA,EAAA,MAAMC,sBACFP,EAAAA,EACAS,KAAAA,EACAC,QACAC,KAAAA,GAAQ,GAAA,EACRC,WAAW,EAAA,EACe;AAC1B,IAAA,OAAO,IAAA,CAAKd,MAAMe,iBAAAA,CAAkBb,EAAAA,EAAI,KAAKJ,OAAAA,EAASa,KAAAA,EAAOC,MAAAA,EAAQC,KAAAA,EAAOC,QAAAA,CAAAA;AAChF,EAAA;AAEAJ,EAAAA,kBAAAA,CAAmBR,IAAiBM,OAAAA,EAA+C;AAC/E,IAAA,OAAON,GAAGc,QAAAA,CAAS;MACfC,MAAAA,EAAQ,CAAA,iBAAA,CAAA;MACRC,aAAAA,EAAe;AAAC,QAAA,CAAA,gBAAA,EAAmB,KAAKpB,OAAO,CAAA,CAAA;;MAC/CqB,SAAAA,EAAW;AAACX,QAAAA;;KAChB,CAAA;AACJ,EAAA;AAEAD,EAAAA,kBAAAA,CAAmBL,EAAAA,EAAoC;AACnD,IAAA,OAAOA,GAAGc,QAAAA,CAAS;MACfC,MAAAA,EAAQ,CAAA,iBAAA,CAAA;MACRC,aAAAA,EAAe;AAAC,QAAA,CAAA,gBAAA,EAAmB,KAAKpB,OAAO,CAAA,CAAA;;KACnD,CAAA;AACJ,EAAA;AACJ","file":"GLVZWDOK.js","sourcesContent":["import type { Transaction, TransactionResult } from '@mysten/sui/transactions';\n\nimport type { Utils } from './utils';\n\nexport class Zro {\n readonly zroType: string;\n\n constructor(\n public readonly packageId: string,\n private readonly utils: Utils,\n ) {\n this.zroType = `${this.packageId}::zro::ZRO`;\n }\n\n async splitOptionZroTokenMoveCall(\n tx: Transaction,\n userAddress: string,\n value: bigint,\n maxCoins = 200,\n maxCoinsPerPage = 50,\n ): Promise<TransactionResult> {\n if (value === 0n) {\n return this.noneOptionMoveCall(tx);\n }\n const zroCoin = await this.splitZroTokenMoveCall(\n tx,\n userAddress,\n value,\n maxCoins,\n maxCoinsPerPage,\n );\n return this.someOptionMoveCall(tx, zroCoin);\n }\n\n async splitZroTokenMoveCall(\n tx: Transaction,\n owner: string,\n amount: bigint,\n limit = 200,\n pageSize = 50,\n ): Promise<TransactionResult> {\n return this.utils.splitCoinMoveCall(tx, this.zroType, owner, amount, limit, pageSize);\n }\n\n someOptionMoveCall(tx: Transaction, zroCoin: TransactionResult): TransactionResult {\n return tx.moveCall({\n target: `0x1::option::some`,\n typeArguments: [`0x2::coin::Coin<${this.zroType}>`],\n arguments: [zroCoin],\n });\n }\n\n noneOptionMoveCall(tx: Transaction): TransactionResult {\n return tx.moveCall({\n target: `0x1::option::none`,\n typeArguments: [`0x2::coin::Coin<${this.zroType}>`],\n });\n }\n}\n"]}
|
package/dist/HD4WZG6B.js
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { executeSimulate } from './A3B5LALR.js';
|
|
2
|
+
import { OAppInfoV1Bcs } from './TL7X5YWY.js';
|
|
3
|
+
import { __name } from './VUOMXK5T.js';
|
|
4
|
+
|
|
5
|
+
// src/protocol/oapp.ts
|
|
6
|
+
var OApp = class {
|
|
7
|
+
static {
|
|
8
|
+
__name(this, "OApp");
|
|
9
|
+
}
|
|
10
|
+
packageId;
|
|
11
|
+
oappCallCapId;
|
|
12
|
+
client;
|
|
13
|
+
endpoint;
|
|
14
|
+
constructor(packageId, oappCallCapId, client, endpoint) {
|
|
15
|
+
this.packageId = packageId;
|
|
16
|
+
this.oappCallCapId = oappCallCapId;
|
|
17
|
+
this.client = client;
|
|
18
|
+
this.endpoint = endpoint;
|
|
19
|
+
}
|
|
20
|
+
getOAppInfoV1MoveCall(tx) {
|
|
21
|
+
const oappInfoRaw = this.endpoint.getOappInfoMoveCall(tx, this.oappCallCapId);
|
|
22
|
+
return tx.moveCall({
|
|
23
|
+
target: `${this.packageId}::oapp_info_v1::decode`,
|
|
24
|
+
arguments: [
|
|
25
|
+
oappInfoRaw
|
|
26
|
+
]
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
async getOAppInfoV1() {
|
|
30
|
+
return executeSimulate(this.client, (tx) => {
|
|
31
|
+
this.getOAppInfoV1MoveCall(tx);
|
|
32
|
+
}, (result) => OAppInfoV1Bcs.parse(result[0].value));
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export { OApp };
|
|
37
|
+
//# sourceMappingURL=HD4WZG6B.js.map
|
|
38
|
+
//# sourceMappingURL=HD4WZG6B.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/protocol/oapp.ts"],"names":["OApp","packageId","oappCallCapId","client","endpoint","getOAppInfoV1MoveCall","tx","oappInfoRaw","getOappInfoMoveCall","moveCall","target","arguments","getOAppInfoV1","executeSimulate","result","OAppInfoV1Bcs","parse","value"],"mappings":";;;;;AAOO,IAAMA,OAAN,MAAMA;EAHb;;;;;;;EAII,WAAA,CACoBC,SAAAA,EACAC,aAAAA,EACAC,MAAAA,EACCC,QAAAA,EACnB;SAJkBH,SAAAA,GAAAA,SAAAA;SACAC,aAAAA,GAAAA,aAAAA;SACAC,MAAAA,GAAAA,MAAAA;SACCC,QAAAA,GAAAA,QAAAA;AAClB,EAAA;AAEHC,EAAAA,qBAAAA,CAAsBC,EAAAA,EAAoC;AACtD,IAAA,MAAMC,cAAc,IAAA,CAAKH,QAAAA,CAASI,mBAAAA,CAAoBF,EAAAA,EAAI,KAAKJ,aAAa,CAAA;AAC5E,IAAA,OAAOI,GAAGG,QAAAA,CAAS;MACfC,MAAAA,EAAQ,CAAA,EAAG,KAAKT,SAAS,CAAA,sBAAA,CAAA;MACzBU,SAAAA,EAAW;AAACJ,QAAAA;;KAChB,CAAA;AACJ,EAAA;AAEA,EAAA,MAAMK,aAAAA,GAAqC;AACvC,IAAA,OAAOC,eAAAA,CACH,IAAA,CAAKV,MAAAA,EACL,CAACG,EAAAA,KAAAA;AACG,MAAA,IAAA,CAAKD,sBAAsBC,EAAAA,CAAAA;IAC/B,CAAA,EACA,CAACQ,WAAWC,aAAAA,CAAcC,KAAAA,CAAMF,OAAO,CAAA,CAAA,CAAGG,KAAK,CAAA,CAAA;AAEvD,EAAA;AACJ","file":"HD4WZG6B.js","sourcesContent":["import type { ClientWithCoreApi } from '@mysten/sui/client';\nimport type { Transaction, TransactionResult } from '@mysten/sui/transactions';\n\nimport type { Endpoint } from './endpoint';\nimport { executeSimulate } from './simulate';\nimport { type OAppInfoV1, OAppInfoV1Bcs } from './types';\n\nexport class OApp {\n constructor(\n public readonly packageId: string,\n public readonly oappCallCapId: string,\n public readonly client: ClientWithCoreApi,\n private readonly endpoint: Endpoint,\n ) {}\n\n getOAppInfoV1MoveCall(tx: Transaction): TransactionResult {\n const oappInfoRaw = this.endpoint.getOappInfoMoveCall(tx, this.oappCallCapId);\n return tx.moveCall({\n target: `${this.packageId}::oapp_info_v1::decode`,\n arguments: [oappInfoRaw],\n });\n }\n\n async getOAppInfoV1(): Promise<OAppInfoV1> {\n return executeSimulate(\n this.client,\n (tx) => {\n this.getOAppInfoV1MoveCall(tx);\n },\n (result) => OAppInfoV1Bcs.parse(result[0].value),\n );\n }\n}\n"]}
|
package/dist/I5Z2GNDD.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types.ts"],"names":["OFTMsgType","SEND","SEND_AND_CALL"],"mappings":";AACO,IAAMA,UAAAA,GAAa;EACtBC,IAAAA,EAAM,CAAA;EACNC,aAAAA,EAAe;AACnB","file":"I5Z2GNDD.js","sourcesContent":["// Constants\nexport const OFTMsgType = {\n SEND: 1,\n SEND_AND_CALL: 2,\n} as const;\n\n// Type Definitions\nexport interface SendParam {\n dstEid: number;\n to: Uint8Array;\n amountLd: bigint;\n minAmountLd: bigint;\n extraOptions: Uint8Array;\n composeMsg: Uint8Array;\n oftCmd: Uint8Array;\n}\n\nexport interface OFTLimit {\n minAmountLd: bigint;\n maxAmountLd: bigint;\n}\n\nexport interface OFTFeeDetail {\n feeAmountLd: bigint;\n description: string;\n isReward: boolean;\n}\n\nexport interface OFTReceipt {\n amountSentLd: bigint;\n amountReceivedLd: bigint;\n}\n\nexport interface OFTInfoV1 {\n oftPackage: string;\n oftObject: string;\n}\n"]}
|
package/dist/JUS4ARN3.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { __name } from './VUOMXK5T.js';
|
|
2
|
+
|
|
3
|
+
// src/protocol/deployments.ts
|
|
4
|
+
var PACKAGE_ADDRESS_MAP = {
|
|
5
|
+
endpointV2: {
|
|
6
|
+
mainnet: "0x31beaef889b08b9c3b37d19280fc1f8b75bae5b2de2410fc3120f403e9a36dac",
|
|
7
|
+
testnet: "0xabf9629418d997fcc742a5ca22820241b72fb53691f010bc964eb49b4bd2263a",
|
|
8
|
+
sandbox: "0x391bd5cd878dce0b306f4dda68c33b48b30dd320845254c427f6c92d5449bc14"
|
|
9
|
+
},
|
|
10
|
+
utils: {
|
|
11
|
+
mainnet: "0x00245ba36f7a1cc643a2b037450dff1e4399e18069c6545fb5fcaaf37d39d7dc",
|
|
12
|
+
testnet: "0xb168928451914a99ec70aa954e4b7e45e2739fdb5c403f540caf647c01645f30",
|
|
13
|
+
sandbox: "0xb60f3952a3dc284637f419ac445b6b3d5a2ea112252c4bf686f2671cbecbb7a3"
|
|
14
|
+
},
|
|
15
|
+
zro: {
|
|
16
|
+
mainnet: "0x3de1504cf3fd75762759e353d9d95389618e557d0552697f19b52e4e927c1dee",
|
|
17
|
+
testnet: "0x6909c3aa2e31e11ed55bf8240e1d499fd6f9e4b6d6439b996e286771594da151",
|
|
18
|
+
sandbox: "0xce9cfe2dc60b2f45896a3c94a9af691c26b78ac4ce585ad7db429a3b6cc382c4"
|
|
19
|
+
},
|
|
20
|
+
call: {
|
|
21
|
+
mainnet: "0x28de9e8e087a6347001907fb698fdf8ab0467b342229b74b19264067aebc4ae9",
|
|
22
|
+
testnet: "0x4273b15ebff2b52be41813ae6f39c643e352fb7d02340fe0755ebbf20d4198c7",
|
|
23
|
+
sandbox: "0xdcaeaff56642980b1776fa19fbe231a0e21c9b1a002d6cc93e4f25ac7af6ceae"
|
|
24
|
+
},
|
|
25
|
+
endpointPtbBuilder: {
|
|
26
|
+
mainnet: "0x28417daea895a3dc2e70b5765ec67b99973e612107d56382e399cc75e666f2ba",
|
|
27
|
+
testnet: "0x8aa8f8212d35515298213099a317e7d79d54a35d455e17d6c8f0a3e017f37eb5",
|
|
28
|
+
sandbox: "0xe93d4ba7531715a2f3f91eb498f1c2fe91c761be649cace1b270ecff2ecbf9b9"
|
|
29
|
+
},
|
|
30
|
+
ptbMoveCall: {
|
|
31
|
+
mainnet: "0xc44d4a8623333b1a1d1397d23da4f12298b5763390f245dc7acba2ad98fbc2be",
|
|
32
|
+
testnet: "0xb824310acecc18cdbc4803d185d7c516dca47b991a5a0e43404e49cd46c91270",
|
|
33
|
+
sandbox: "0xbe27a34fd97e7987f7b85218571bd6229a7799e14322b504e5a1c349c2f5a897"
|
|
34
|
+
},
|
|
35
|
+
oapp: {
|
|
36
|
+
mainnet: "0xfdc28afc0110cb2edb94e3e57f2b1ce69b5a99c503b06d15e51cfa212de56e24",
|
|
37
|
+
testnet: "0x04c440985f5deab2fb7f821b3288d93225a3e637cf22dda476809836f0533751",
|
|
38
|
+
sandbox: "0xf8d3c5d886cd6488964fea8a91b2c2268c6df8ee89dd7c36aab9abb04e4f8fe0"
|
|
39
|
+
},
|
|
40
|
+
packageWhitelistValidator: {
|
|
41
|
+
mainnet: "0xe7358e7dd22bb2ff7d8e8f9f583186af6fb88100b51c5575bc38aeeeff3a8bfa",
|
|
42
|
+
testnet: "0xfd259aa95eec6f8b91e0ff3cc5c3313010fbe3226096cf02286b1f843dd036d4",
|
|
43
|
+
sandbox: "0x9fc738e7ec5fa8d43572c8961dcdfb2636a6811f1c9efe2723f79086f043ae8f"
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
var OBJECT_ADDRESS_MAP = {
|
|
47
|
+
endpointV2: {
|
|
48
|
+
mainnet: "0xd45b6890fa030bcb43347c0c69a9e5a1a288d1ca7b86b428014752b472f6bf91",
|
|
49
|
+
testnet: "0x2b96537c30c5fa962a1bfb58a168fc17c17f2546c88e2e9252f21ee7d5eff57a",
|
|
50
|
+
sandbox: "0xdb6c4e19cf6896fd1abbd6ee22ec915d08b70c88f35b4796dfedc218f3047168"
|
|
51
|
+
},
|
|
52
|
+
endpointPtbBuilder: {
|
|
53
|
+
mainnet: "0xe64fe6d281abb481de8d49953c564c9ea952bd0a1ce62f4f1a6de8812ec427d4",
|
|
54
|
+
testnet: "0x57ec59d312b807e12c4af7e5efa9764cba5feb03ebb9a238d3f3547f4d14c78a",
|
|
55
|
+
sandbox: "0xc5909ea6d4ccf1fd128a5f5e192add36864aff625ee388500bee469efc94fc9d"
|
|
56
|
+
},
|
|
57
|
+
packageWhitelistValidator: {
|
|
58
|
+
mainnet: "0x3ebd427d6237383d163b6d5595889793d52b0171ae908ab6f7159ccfa55b4d94",
|
|
59
|
+
testnet: "0x68fd353ff6848cb7281ce3ccbddbd4d651319e6427d71d170b13031416c93c10",
|
|
60
|
+
sandbox: "0x1f86aec48e9062d0177cdda25037ce5faeb0f784117a1463fe9b50bffb121ba7"
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
var mergeStage = /* @__PURE__ */ __name((map, stage, custom) => {
|
|
64
|
+
const config = {};
|
|
65
|
+
for (const [key, stageMap] of Object.entries(map)) {
|
|
66
|
+
config[key] = stageMap[stage];
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
...config,
|
|
70
|
+
...custom
|
|
71
|
+
};
|
|
72
|
+
}, "mergeStage");
|
|
73
|
+
var mergeDefaultPackageConfig = /* @__PURE__ */ __name((stage, customPackages) => mergeStage(PACKAGE_ADDRESS_MAP, stage, customPackages), "mergeDefaultPackageConfig");
|
|
74
|
+
var mergeDefaultObjectConfig = /* @__PURE__ */ __name((stage, customObjects) => mergeStage(OBJECT_ADDRESS_MAP, stage, customObjects), "mergeDefaultObjectConfig");
|
|
75
|
+
|
|
76
|
+
export { OBJECT_ADDRESS_MAP, PACKAGE_ADDRESS_MAP, mergeDefaultObjectConfig, mergeDefaultPackageConfig };
|
|
77
|
+
//# sourceMappingURL=JUS4ARN3.js.map
|
|
78
|
+
//# sourceMappingURL=JUS4ARN3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/protocol/deployments.ts"],"names":["PACKAGE_ADDRESS_MAP","endpointV2","mainnet","testnet","sandbox","utils","zro","call","endpointPtbBuilder","ptbMoveCall","oapp","packageWhitelistValidator","OBJECT_ADDRESS_MAP","mergeStage","map","stage","custom","config","key","stageMap","Object","entries","mergeDefaultPackageConfig","customPackages","mergeDefaultObjectConfig","customObjects"],"mappings":";;;AAmBO,IAAMA,mBAAAA,GAA8E;EACvFC,UAAAA,EAAY;IACRC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAC,KAAAA,EAAO;IACHH,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAE,GAAAA,EAAK;IACDJ,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAG,IAAAA,EAAM;IACFL,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAI,kBAAAA,EAAoB;IAChBN,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAK,WAAAA,EAAa;IACTP,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAM,IAAAA,EAAM;IACFR,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAO,yBAAAA,EAA2B;IACvBT,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb;AACJ;AAEO,IAAMQ,kBAAAA,GAA4E;EACrFX,UAAAA,EAAY;IACRC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAI,kBAAAA,EAAoB;IAChBN,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb,GAAA;EACAO,yBAAAA,EAA2B;IACvBT,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS,oEAAA;IACTC,OAAAA,EAAS;AACb;AACJ;AAEA,IAAMS,UAAAA,mBAAa,MAAA,CAAA,CACfC,GAAAA,EACAC,KAAAA,EACAC,MAAAA,KAAAA;AAEA,EAAA,MAAMC,SAAS,EAAC;AAChB,EAAA,KAAA,MAAW,CAACC,GAAAA,EAAKC,QAAAA,KAAaC,MAAAA,CAAOC,OAAAA,CAAQP,GAAAA,CAAAA,EAA2C;AACpFG,IAAAA,MAAAA,CAAOC,GAAAA,CAAAA,GAAOC,QAAAA,CAASJ,KAAAA,CAAAA;AAC3B,EAAA;AACA,EAAA,OAAO;IAAE,GAAIE,MAAAA;IAAc,GAAGD;AAAO,GAAA;AACzC,CAAA,EAVmB,YAAA,CAAA;AAYZ,IAAMM,yBAAAA,2BACTP,KAAAA,EACAQ,cAAAA,KACiBV,WAA2Bb,mBAAAA,EAAqBe,KAAAA,EAAOQ,cAAAA,CAAAA,EAHnC,2BAAA;AAKlC,IAAMC,wBAAAA,2BACTT,KAAAA,EACAU,aAAAA,KACgBZ,WAA0BD,kBAAAA,EAAoBG,KAAAA,EAAOU,aAAAA,CAAAA,EAHjC,0BAAA","file":"JUS4ARN3.js","sourcesContent":["export type Stage = 'mainnet' | 'testnet' | 'sandbox';\n\nexport interface PackageOptions {\n endpointV2: string;\n utils: string;\n zro: string;\n call: string;\n endpointPtbBuilder: string;\n ptbMoveCall: string;\n oapp: string;\n packageWhitelistValidator: string;\n}\n\nexport interface ObjectOptions {\n endpointV2: string;\n endpointPtbBuilder: string;\n packageWhitelistValidator: string;\n}\n\nexport const PACKAGE_ADDRESS_MAP: { [K in keyof PackageOptions]: Record<Stage, string> } = {\n endpointV2: {\n mainnet: '0x31beaef889b08b9c3b37d19280fc1f8b75bae5b2de2410fc3120f403e9a36dac',\n testnet: '0xabf9629418d997fcc742a5ca22820241b72fb53691f010bc964eb49b4bd2263a',\n sandbox: '0x391bd5cd878dce0b306f4dda68c33b48b30dd320845254c427f6c92d5449bc14',\n },\n utils: {\n mainnet: '0x00245ba36f7a1cc643a2b037450dff1e4399e18069c6545fb5fcaaf37d39d7dc',\n testnet: '0xb168928451914a99ec70aa954e4b7e45e2739fdb5c403f540caf647c01645f30',\n sandbox: '0xb60f3952a3dc284637f419ac445b6b3d5a2ea112252c4bf686f2671cbecbb7a3',\n },\n zro: {\n mainnet: '0x3de1504cf3fd75762759e353d9d95389618e557d0552697f19b52e4e927c1dee',\n testnet: '0x6909c3aa2e31e11ed55bf8240e1d499fd6f9e4b6d6439b996e286771594da151',\n sandbox: '0xce9cfe2dc60b2f45896a3c94a9af691c26b78ac4ce585ad7db429a3b6cc382c4',\n },\n call: {\n mainnet: '0x28de9e8e087a6347001907fb698fdf8ab0467b342229b74b19264067aebc4ae9',\n testnet: '0x4273b15ebff2b52be41813ae6f39c643e352fb7d02340fe0755ebbf20d4198c7',\n sandbox: '0xdcaeaff56642980b1776fa19fbe231a0e21c9b1a002d6cc93e4f25ac7af6ceae',\n },\n endpointPtbBuilder: {\n mainnet: '0x28417daea895a3dc2e70b5765ec67b99973e612107d56382e399cc75e666f2ba',\n testnet: '0x8aa8f8212d35515298213099a317e7d79d54a35d455e17d6c8f0a3e017f37eb5',\n sandbox: '0xe93d4ba7531715a2f3f91eb498f1c2fe91c761be649cace1b270ecff2ecbf9b9',\n },\n ptbMoveCall: {\n mainnet: '0xc44d4a8623333b1a1d1397d23da4f12298b5763390f245dc7acba2ad98fbc2be',\n testnet: '0xb824310acecc18cdbc4803d185d7c516dca47b991a5a0e43404e49cd46c91270',\n sandbox: '0xbe27a34fd97e7987f7b85218571bd6229a7799e14322b504e5a1c349c2f5a897',\n },\n oapp: {\n mainnet: '0xfdc28afc0110cb2edb94e3e57f2b1ce69b5a99c503b06d15e51cfa212de56e24',\n testnet: '0x04c440985f5deab2fb7f821b3288d93225a3e637cf22dda476809836f0533751',\n sandbox: '0xf8d3c5d886cd6488964fea8a91b2c2268c6df8ee89dd7c36aab9abb04e4f8fe0',\n },\n packageWhitelistValidator: {\n mainnet: '0xe7358e7dd22bb2ff7d8e8f9f583186af6fb88100b51c5575bc38aeeeff3a8bfa',\n testnet: '0xfd259aa95eec6f8b91e0ff3cc5c3313010fbe3226096cf02286b1f843dd036d4',\n sandbox: '0x9fc738e7ec5fa8d43572c8961dcdfb2636a6811f1c9efe2723f79086f043ae8f',\n },\n};\n\nexport const OBJECT_ADDRESS_MAP: { [K in keyof ObjectOptions]: Record<Stage, string> } = {\n endpointV2: {\n mainnet: '0xd45b6890fa030bcb43347c0c69a9e5a1a288d1ca7b86b428014752b472f6bf91',\n testnet: '0x2b96537c30c5fa962a1bfb58a168fc17c17f2546c88e2e9252f21ee7d5eff57a',\n sandbox: '0xdb6c4e19cf6896fd1abbd6ee22ec915d08b70c88f35b4796dfedc218f3047168',\n },\n endpointPtbBuilder: {\n mainnet: '0xe64fe6d281abb481de8d49953c564c9ea952bd0a1ce62f4f1a6de8812ec427d4',\n testnet: '0x57ec59d312b807e12c4af7e5efa9764cba5feb03ebb9a238d3f3547f4d14c78a',\n sandbox: '0xc5909ea6d4ccf1fd128a5f5e192add36864aff625ee388500bee469efc94fc9d',\n },\n packageWhitelistValidator: {\n mainnet: '0x3ebd427d6237383d163b6d5595889793d52b0171ae908ab6f7159ccfa55b4d94',\n testnet: '0x68fd353ff6848cb7281ce3ccbddbd4d651319e6427d71d170b13031416c93c10',\n sandbox: '0x1f86aec48e9062d0177cdda25037ce5faeb0f784117a1463fe9b50bffb121ba7',\n },\n};\n\nconst mergeStage = <T extends object>(\n map: { [K in keyof T]: Record<Stage, string> },\n stage: Stage,\n custom: Partial<T> | undefined,\n): T => {\n const config = {} as Record<string, string>;\n for (const [key, stageMap] of Object.entries(map) as [string, Record<Stage, string>][]) {\n config[key] = stageMap[stage];\n }\n return { ...(config as T), ...custom };\n};\n\nexport const mergeDefaultPackageConfig = (\n stage: Stage,\n customPackages?: Partial<PackageOptions>,\n): PackageOptions => mergeStage<PackageOptions>(PACKAGE_ADDRESS_MAP, stage, customPackages);\n\nexport const mergeDefaultObjectConfig = (\n stage: Stage,\n customObjects?: Partial<ObjectOptions>,\n): ObjectOptions => mergeStage<ObjectOptions>(OBJECT_ADDRESS_MAP, stage, customObjects);\n"]}
|
package/dist/TF6IBJWJ.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"TF6IBJWJ.js"}
|
package/dist/TL7X5YWY.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { __name } from './VUOMXK5T.js';
|
|
2
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
3
|
+
|
|
4
|
+
var MessagingFeeBcs = bcs.struct("MessagingFee", {
|
|
5
|
+
native_fee: bcs.U64,
|
|
6
|
+
zro_fee: bcs.U64
|
|
7
|
+
});
|
|
8
|
+
var FunctionBcs = bcs.struct("Function", {
|
|
9
|
+
package: bcs.Address,
|
|
10
|
+
module_name: bcs.string(),
|
|
11
|
+
name: bcs.string()
|
|
12
|
+
});
|
|
13
|
+
var OAppInfoV1Bcs = bcs.struct("OAppInfoV1", {
|
|
14
|
+
oapp_object: bcs.Address,
|
|
15
|
+
next_nonce_info: bcs.vector(bcs.u8()),
|
|
16
|
+
lz_receive_info: bcs.vector(bcs.u8()),
|
|
17
|
+
extra_info: bcs.vector(bcs.u8())
|
|
18
|
+
});
|
|
19
|
+
var MAX_BATCH_SIZE = 50;
|
|
20
|
+
var DEFAULT_SIMULATION_TIMES = 5;
|
|
21
|
+
var MoveAbortError = class extends Error {
|
|
22
|
+
static {
|
|
23
|
+
__name(this, "MoveAbortError");
|
|
24
|
+
}
|
|
25
|
+
abortCode;
|
|
26
|
+
constructor(abortCode, rawMsg) {
|
|
27
|
+
super(`Move abort with code: ${abortCode}. Raw error message: ${rawMsg}`);
|
|
28
|
+
this.abortCode = abortCode;
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
var UnclassifiedError = class extends Error {
|
|
32
|
+
static {
|
|
33
|
+
__name(this, "UnclassifiedError");
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export { DEFAULT_SIMULATION_TIMES, FunctionBcs, MAX_BATCH_SIZE, MessagingFeeBcs, MoveAbortError, OAppInfoV1Bcs, UnclassifiedError };
|
|
38
|
+
//# sourceMappingURL=TL7X5YWY.js.map
|
|
39
|
+
//# sourceMappingURL=TL7X5YWY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/protocol/types.ts"],"names":["MessagingFeeBcs","bcs","struct","native_fee","U64","zro_fee","FunctionBcs","package","Address","module_name","string","name","OAppInfoV1Bcs","oapp_object","next_nonce_info","vector","u8","lz_receive_info","extra_info","MAX_BATCH_SIZE","DEFAULT_SIMULATION_TIMES","MoveAbortError","Error","abortCode","rawMsg","UnclassifiedError"],"mappings":";;;AAOO,IAAMA,eAAAA,GAAkBC,GAAAA,CAAIC,MAAAA,CAAO,cAAA,EAAgB;AACtDC,EAAAA,UAAAA,EAAYF,GAAAA,CAAIG,GAAAA;AAChBC,EAAAA,OAAAA,EAASJ,GAAAA,CAAIG;AACjB,CAAA;AAEO,IAAME,WAAAA,GAAcL,GAAAA,CAAIC,MAAAA,CAAO,UAAA,EAAY;AAC9CK,EAAAA,OAAAA,EAASN,GAAAA,CAAIO,OAAAA;AACbC,EAAAA,WAAAA,EAAaR,IAAIS,MAAAA,EAAM;AACvBC,EAAAA,IAAAA,EAAMV,IAAIS,MAAAA;AACd,CAAA;AAEO,IAAME,aAAAA,GAAgBX,GAAAA,CAAIC,MAAAA,CAAO,YAAA,EAAc;AAClDW,EAAAA,WAAAA,EAAaZ,GAAAA,CAAIO,OAAAA;AACjBM,EAAAA,eAAAA,EAAiBb,GAAAA,CAAIc,MAAAA,CAAOd,GAAAA,CAAIe,EAAAA,EAAE,CAAA;AAClCC,EAAAA,eAAAA,EAAiBhB,GAAAA,CAAIc,MAAAA,CAAOd,GAAAA,CAAIe,EAAAA,EAAE,CAAA;AAClCE,EAAAA,UAAAA,EAAYjB,GAAAA,CAAIc,MAAAA,CAAOd,GAAAA,CAAIe,EAAAA,EAAE;AACjC,CAAA;AAiCO,IAAMG,cAAAA,GAAiB;AACvB,IAAMC,wBAAAA,GAA2B;AAEjC,IAAMC,cAAAA,GAAN,cAA6BC,KAAAA,CAAAA;EA3DpC;;;AA4DaC,EAAAA,SAAAA;AAET,EAAA,WAAA,CAAYA,WAAmBC,MAAAA,EAAgB;AAC3C,IAAA,KAAA,CAAM,CAAA,sBAAA,EAAyBD,SAAAA,CAAAA,qBAAAA,EAAiCC,MAAAA,CAAAA,CAAQ,CAAA;AACxE,IAAA,IAAA,CAAKD,SAAAA,GAAYA,SAAAA;AACrB,EAAA;AACJ;AAEO,IAAME,iBAAAA,GAAN,cAAgCH,KAAAA,CAAAA;EApEvC;;;AAoE8C","file":"TL7X5YWY.js","sourcesContent":["import { bcs } from '@mysten/sui/bcs';\n\nexport interface MessagingFee {\n nativeFee: bigint;\n zroFee: bigint;\n}\n\nexport const MessagingFeeBcs = bcs.struct('MessagingFee', {\n native_fee: bcs.U64,\n zro_fee: bcs.U64,\n});\n\nexport const FunctionBcs = bcs.struct('Function', {\n package: bcs.Address,\n module_name: bcs.string(),\n name: bcs.string(),\n});\n\nexport const OAppInfoV1Bcs = bcs.struct('OAppInfoV1', {\n oapp_object: bcs.Address,\n next_nonce_info: bcs.vector(bcs.u8()),\n lz_receive_info: bcs.vector(bcs.u8()),\n extra_info: bcs.vector(bcs.u8()),\n});\n\nexport type OAppInfoV1 = ReturnType<typeof OAppInfoV1Bcs.parse>;\n\nexport interface MoveCallFunction {\n package: string;\n module_name: string;\n name: string;\n}\n\nexport type MoveCallArgument =\n | { ID: Uint8Array }\n | { Object: string }\n | { Pure: Uint8Array }\n | { NestedResult: [number, number] };\n\nexport interface MoveCall {\n function: MoveCallFunction;\n arguments: MoveCallArgument[];\n type_arguments: string[];\n result_ids: Uint8Array[];\n is_builder_call: boolean;\n}\n\nexport interface BuilderPlaceholderInfo {\n index: number;\n moveCallCount: number;\n}\n\nexport interface SimulateResult {\n value: Uint8Array;\n}\n\nexport const MAX_BATCH_SIZE = 50;\nexport const DEFAULT_SIMULATION_TIMES = 5;\n\nexport class MoveAbortError extends Error {\n readonly abortCode: number;\n\n constructor(abortCode: number, rawMsg: string) {\n super(`Move abort with code: ${abortCode}. Raw error message: ${rawMsg}`);\n this.abortCode = abortCode;\n }\n}\n\nexport class UnclassifiedError extends Error {}\n"]}
|
package/dist/U4WYCHEV.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { __name } from './VUOMXK5T.js';
|
|
2
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
3
|
+
|
|
4
|
+
var OFTLimitBcs = bcs.struct("OFTLimit", {
|
|
5
|
+
min_amount_ld: bcs.U64,
|
|
6
|
+
max_amount_ld: bcs.U64
|
|
7
|
+
});
|
|
8
|
+
var OFTFeeDetailBcs = bcs.struct("OFTFeeDetail", {
|
|
9
|
+
fee_amount_ld: bcs.U64,
|
|
10
|
+
is_reward: bcs.Bool,
|
|
11
|
+
description: bcs.String
|
|
12
|
+
});
|
|
13
|
+
var OFTReceiptBcs = bcs.struct("OFTReceipt", {
|
|
14
|
+
amount_sent_ld: bcs.U64,
|
|
15
|
+
amount_received_ld: bcs.U64
|
|
16
|
+
});
|
|
17
|
+
var OFTInfoV1Bcs = bcs.struct("OFTInfoV1", {
|
|
18
|
+
oft_package: bcs.Address,
|
|
19
|
+
oft_object: bcs.Address
|
|
20
|
+
});
|
|
21
|
+
var parseOFTLimit = /* @__PURE__ */ __name((data) => {
|
|
22
|
+
const parsed = OFTLimitBcs.parse(data);
|
|
23
|
+
return {
|
|
24
|
+
minAmountLd: BigInt(parsed.min_amount_ld),
|
|
25
|
+
maxAmountLd: BigInt(parsed.max_amount_ld)
|
|
26
|
+
};
|
|
27
|
+
}, "parseOFTLimit");
|
|
28
|
+
var parseOFTFeeDetails = /* @__PURE__ */ __name((data) => {
|
|
29
|
+
const vectorBcs = bcs.vector(OFTFeeDetailBcs);
|
|
30
|
+
const parsed = vectorBcs.parse(data);
|
|
31
|
+
return parsed.map((detail) => ({
|
|
32
|
+
feeAmountLd: BigInt(detail.fee_amount_ld),
|
|
33
|
+
isReward: detail.is_reward,
|
|
34
|
+
description: detail.description
|
|
35
|
+
}));
|
|
36
|
+
}, "parseOFTFeeDetails");
|
|
37
|
+
var parseOFTReceipt = /* @__PURE__ */ __name((data) => {
|
|
38
|
+
const parsed = OFTReceiptBcs.parse(data);
|
|
39
|
+
return {
|
|
40
|
+
amountSentLd: BigInt(parsed.amount_sent_ld),
|
|
41
|
+
amountReceivedLd: BigInt(parsed.amount_received_ld)
|
|
42
|
+
};
|
|
43
|
+
}, "parseOFTReceipt");
|
|
44
|
+
var parseOFTInfoV1 = /* @__PURE__ */ __name((data) => {
|
|
45
|
+
const parsed = OFTInfoV1Bcs.parse(data);
|
|
46
|
+
return {
|
|
47
|
+
oftPackage: parsed.oft_package,
|
|
48
|
+
oftObject: parsed.oft_object
|
|
49
|
+
};
|
|
50
|
+
}, "parseOFTInfoV1");
|
|
51
|
+
|
|
52
|
+
export { OFTFeeDetailBcs, OFTInfoV1Bcs, OFTLimitBcs, OFTReceiptBcs, parseOFTFeeDetails, parseOFTInfoV1, parseOFTLimit, parseOFTReceipt };
|
|
53
|
+
//# sourceMappingURL=U4WYCHEV.js.map
|
|
54
|
+
//# sourceMappingURL=U4WYCHEV.js.map
|