Namespace: transaction
Functions​
buildUDCCall​
â–¸ buildUDCCall(payload
, address
): Object
Builds a UDCCall object.
Parameters​
Name | Type | Description |
---|---|---|
payload | UniversalDeployerContractPayload | UniversalDeployerContractPayload [] | the payload data for the UDCCall. Can be a single payload object or an array of payload objects. |
address | string | the address to be used in the UDCCall |
Returns​
Object
the UDCCall object containing an array of calls and an array of addresses.
Name | Type |
---|---|
calls | { contractAddress : "0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf" = UDC.ADDRESS; entrypoint : "deployContract" = UDC.ENTRYPOINT; calldata : BigNumberish [] }[] |
addresses | string [] |
Example
const payload: UniversalDeployerContractPayload = {
classHash: "0x1234567890123456789012345678901234567890",
salt: "0x0987654321098765432109876543210987654321",
unique:true,
constructorCalldata: [1, 2, 3]
};
const address = "0xABCDEF1234567890ABCDEF1234567890ABCDEF12";
const result = transaction.buildUDCCall(payload, address);
// result = {
// calls: [
// {
// contractAddress: "0xABCDEF1234567890ABCDEF1234567890ABCDEF12",
// entrypoint: "functionName",
// calldata: [classHash, salt, true, 3, 1, 2, 3]
// }],
// addresses: ["0x6fD084B56a7EDc5C06B3eB40f97Ae5A0C707A865"]
// }
Defined in​
getVersionsByType​
â–¸ getVersionsByType(versionType?
): { v1
: "0x100000000000000000000000000000001"
= ETransactionVersion.F1; v2
: "0x100000000000000000000000000000002"
= ETransactionVersion.F2; v3
: "0x100000000000000000000000000000003"
= ETransactionVersion.F3 } | { v1
: "0x1"
= ETransactionVersion.V1; v2
: "0x2"
= ETransactionVersion.V2; v3
: "0x3"
= ETransactionVersion.V3 }
Return transaction versions based on version type, default version type is 'transaction'.
Parameters​
Name | Type | Description |
---|---|---|
versionType? | "fee" | "transaction" | the type of version ("fee" or "transaction") |
Returns​
{ v1
: "0x100000000000000000000000000000001"
= ETransactionVersion.F1; v2
: "0x100000000000000000000000000000002"
= ETransactionVersion.F2; v3
: "0x100000000000000000000000000000003"
= ETransactionVersion.F3 } | { v1
: "0x1"
= ETransactionVersion.V1; v2
: "0x2"
= ETransactionVersion.V2; v3
: "0x3"
= ETransactionVersion.V3 }
an object containing the transaction versions.
Example
const result = transaction.getVersionsByType('fee');
// result = {
// v1: '0x100000000000000000000000000000001',
// v2: '0x100000000000000000000000000000002',
// v3: '0x100000000000000000000000000000003'
// }
Defined in​
transformCallsToMulticallArrays​
â–¸ transformCallsToMulticallArrays(calls
): Object
Transforms a list of Calls, each with their own calldata, into two arrays: one with the entry points, and one with the concatenated calldata
Parameters​
Name | Type | Description |
---|---|---|
calls | Call [] | the list of calls to transform. |
Returns​
Object
An object containing two arrays: callArray and calldata.
Name | Type |
---|---|
callArray | ParsedStruct [] |
calldata | Calldata |
Example
const calls: Call[] = [
{
contractAddress: "0x1234567890123456789012345678901234567890",
entrypoint: "functionName",
calldata: [1,2,3]
},
{
contractAddress: "0x0987654321098765432109876543210987654321",
entrypoint: "anotherFunction",
calldata: [4,5,6]
}
];
const result = transaction.transformCallsToMulticallArrays(calls);
// result = {
// callArray: [
// { to: "0x1234567890123456789012345678901234567890", selector: "1234567890",
// data_offset: "0", data_len: "3" },
// { to: "0x0987654321098765432109876543210987654321", selector: "1234567890",
// data_offset: "0987654321", data_offset: "3", data_len: "3"}
// ], calldata: [1, 2, 3, 4, 5, 6]
// }
Defined in​
fromCallsToExecuteCalldata​
â–¸ fromCallsToExecuteCalldata(calls
): Calldata
Transforms a list of calls into the Cairo 0 __execute__
calldata.
Parameters​
Name | Type | Description |
---|---|---|
calls | Call [] | the list of calls to transform |
Returns​
the Cairo 0 __execute__
calldata
Example
const calls: Call[] = [
{
contractAddress: "0x1234567890123456789012345678901234567890",
entrypoint: "functionName",
calldata: [1, 2, 3]
},
{
contractAddress: "0x0987654321098765432109876543210987654321",
entrypoint: "anotherFunction",
calldata: [4, 5, 6]
}
];
const result = transaction.fromCallsToExecuteCalldata(calls);
// result = ['2', '103929005307130220006098923584552504982110632080',
// '784552248838722632831848474045274978537388011177294206940059575485454596699', '0',
// '3', '54400338722927882010739357306608455014511100705',
// '836430224577382061379420368022192503799782058803937958828224424676927281484',
// '3', '3', '6', '1', '2', '3', '4', '5', '6']
Defined in​
fromCallsToExecuteCalldataWithNonce​
â–¸ fromCallsToExecuteCalldataWithNonce(calls
, nonce
): Calldata
Transforms a list of calls into the Cairo 0 __execute__
calldata including nonce.
Parameters​
Name | Type |
---|---|
calls | Call [] |
nonce | BigNumberish |
Returns​
Deprecated
Defined in​
transformCallsToMulticallArrays_cairo1​
â–¸ transformCallsToMulticallArrays_cairo1(calls
): CallStruct
[]
Format Data inside Calls
Parameters​
Name | Type |
---|---|
calls | Call [] |
Returns​
Deprecated
Not required for getting execute Calldata
Defined in​
fromCallsToExecuteCalldata_cairo1​
â–¸ fromCallsToExecuteCalldata_cairo1(calls
): Calldata
Transforms a list of calls into the Cairo 1 __execute__
calldata.
Parameters​
Name | Type | Description |
---|---|---|
calls | Call [] | the list of calls to transform. |
Returns​
the Cairo 1 __execute__
calldata.
Example
const calls: Call[] = [
{
contractAddress: "0x1234567890123456789012345678901234567890",
entrypoint: "functionName",
calldata: [1, 2, 3]
},
{
contractAddress: "0x0987654321098765432109876543210987654321",
entrypoint: "anotherFunction",
calldata: [4, 5, 6]
}
];
const result = transaction.fromCallsToExecuteCalldata_cairo1(calls);
// result = ['2', '103929005307130220006098923584552504982110632080',
// '784552248838722632831848474045274978537388011177294206940059575485454596699',
// '3', '1', '2', '3', '54400338722927882010739357306608455014511100705',
// '836430224577382061379420368022192503799782058803937958828224424676927281484',
// '3', '4', '5', '6']
Defined in​
getExecuteCalldata​
â–¸ getExecuteCalldata(calls
, cairoVersion?
): Calldata
Create __execute__
Calldata from Calls based on Cairo versions.
Parameters​
Name | Type | Default value | Description |
---|---|---|---|
calls | Call [] | undefined | the list of calls to transform |
cairoVersion | CairoVersion | '0' | the Cairo version |
Returns​
the __execute__
calldata.
Example
const calls: Call[] = [
{
contractAddress: "0x1234567890123456789012345678901234567890",
entrypoint: "functionName",
calldata: [1, 2, 3]
},
{
contractAddress: "0x0987654321098765432109876543210987654321",
entrypoint: "anotherFunction",
calldata: [4, 5, 6]
}
];
const result = transaction.getExecuteCalldata(calls, '1');
// result = ['2', '103929005307130220006098923584552504982110632080',
// '784552248838722632831848474045274978537388011177294206940059575485454596699',
// '3', '1', '2', '3', '54400338722927882010739357306608455014511100705',
// '836430224577382061379420368022192503799782058803937958828224424676927281484',
// '3', '4', '5', '6']