starknet 9.0.0 → 9.1.0
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/CHANGELOG.md +12 -0
- package/dist/index.d.ts +159 -27
- package/dist/index.global.js +185 -1
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +188 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +185 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -1
package/dist/index.js
CHANGED
|
@@ -123,6 +123,7 @@ __export(index_exports, {
|
|
|
123
123
|
Uint: () => Uint,
|
|
124
124
|
ValidateType: () => ValidateType,
|
|
125
125
|
WalletAccount: () => WalletAccount,
|
|
126
|
+
WalletAccountV5: () => WalletAccountV5,
|
|
126
127
|
WebSocketChannel: () => WebSocketChannel,
|
|
127
128
|
WebSocketNotConnectedError: () => WebSocketNotConnectedError,
|
|
128
129
|
addAddressPadding: () => addAddressPadding,
|
|
@@ -188,7 +189,8 @@ __export(index_exports, {
|
|
|
188
189
|
validateAndParseAddress: () => validateAndParseAddress,
|
|
189
190
|
validateChecksumAddress: () => validateChecksumAddress,
|
|
190
191
|
verifyMessageInStarknet: () => verifyMessageInStarknet,
|
|
191
|
-
wallet: () => connect_exports
|
|
192
|
+
wallet: () => connect_exports,
|
|
193
|
+
walletV5: () => connectV5_exports
|
|
192
194
|
});
|
|
193
195
|
module.exports = __toCommonJS(index_exports);
|
|
194
196
|
|
|
@@ -12126,6 +12128,188 @@ var WalletAccount = class _WalletAccount extends Account {
|
|
|
12126
12128
|
// TODO: MISSING ESTIMATES
|
|
12127
12129
|
};
|
|
12128
12130
|
|
|
12131
|
+
// src/wallet/connectV5.ts
|
|
12132
|
+
var connectV5_exports = {};
|
|
12133
|
+
__export(connectV5_exports, {
|
|
12134
|
+
addDeclareTransaction: () => addDeclareTransaction2,
|
|
12135
|
+
addInvokeTransaction: () => addInvokeTransaction2,
|
|
12136
|
+
addStarknetChain: () => addStarknetChain2,
|
|
12137
|
+
deploymentData: () => deploymentData2,
|
|
12138
|
+
getPermissions: () => getPermissions2,
|
|
12139
|
+
requestAccounts: () => requestAccounts2,
|
|
12140
|
+
requestChainId: () => requestChainId2,
|
|
12141
|
+
signMessage: () => signMessage2,
|
|
12142
|
+
subscribeWalletEvent: () => subscribeWalletEvent,
|
|
12143
|
+
supportedSpecs: () => supportedSpecs2,
|
|
12144
|
+
switchStarknetChain: () => switchStarknetChain2,
|
|
12145
|
+
watchAsset: () => watchAsset2
|
|
12146
|
+
});
|
|
12147
|
+
function requestAccounts2(walletWSF, silent_mode = false) {
|
|
12148
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12149
|
+
type: "wallet_requestAccounts",
|
|
12150
|
+
params: { silent_mode }
|
|
12151
|
+
});
|
|
12152
|
+
}
|
|
12153
|
+
function getPermissions2(walletWSF) {
|
|
12154
|
+
return walletWSF.features["starknet:walletApi"].request({ type: "wallet_getPermissions" });
|
|
12155
|
+
}
|
|
12156
|
+
function watchAsset2(walletWSF, asset) {
|
|
12157
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12158
|
+
type: "wallet_watchAsset",
|
|
12159
|
+
params: asset
|
|
12160
|
+
});
|
|
12161
|
+
}
|
|
12162
|
+
function addStarknetChain2(walletWSF, chain) {
|
|
12163
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12164
|
+
type: "wallet_addStarknetChain",
|
|
12165
|
+
params: chain
|
|
12166
|
+
});
|
|
12167
|
+
}
|
|
12168
|
+
function switchStarknetChain2(walletWSF, chainId) {
|
|
12169
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12170
|
+
type: "wallet_switchStarknetChain",
|
|
12171
|
+
params: { chainId }
|
|
12172
|
+
});
|
|
12173
|
+
}
|
|
12174
|
+
function requestChainId2(walletWSF) {
|
|
12175
|
+
return walletWSF.features["starknet:walletApi"].request({ type: "wallet_requestChainId" });
|
|
12176
|
+
}
|
|
12177
|
+
function deploymentData2(walletWSF) {
|
|
12178
|
+
return walletWSF.features["starknet:walletApi"].request({ type: "wallet_deploymentData" });
|
|
12179
|
+
}
|
|
12180
|
+
function addInvokeTransaction2(walletWSF, params) {
|
|
12181
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12182
|
+
type: "wallet_addInvokeTransaction",
|
|
12183
|
+
params
|
|
12184
|
+
});
|
|
12185
|
+
}
|
|
12186
|
+
function addDeclareTransaction2(walletWSF, params) {
|
|
12187
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12188
|
+
type: "wallet_addDeclareTransaction",
|
|
12189
|
+
params
|
|
12190
|
+
});
|
|
12191
|
+
}
|
|
12192
|
+
function signMessage2(walletWSF, typedData) {
|
|
12193
|
+
return walletWSF.features["starknet:walletApi"].request({
|
|
12194
|
+
type: "wallet_signTypedData",
|
|
12195
|
+
params: typedData
|
|
12196
|
+
});
|
|
12197
|
+
}
|
|
12198
|
+
function supportedSpecs2(walletWSF) {
|
|
12199
|
+
return walletWSF.features["starknet:walletApi"].request({ type: "wallet_supportedSpecs" });
|
|
12200
|
+
}
|
|
12201
|
+
function subscribeWalletEvent(walletWSF, callback) {
|
|
12202
|
+
return walletWSF.features["standard:events"].on("change", callback);
|
|
12203
|
+
}
|
|
12204
|
+
|
|
12205
|
+
// src/wallet/accountV5.ts
|
|
12206
|
+
var WalletAccountV5 = class _WalletAccountV5 extends Account {
|
|
12207
|
+
walletProvider;
|
|
12208
|
+
/**
|
|
12209
|
+
* The function to use to unsubscribe from the wallet events.
|
|
12210
|
+
* To call before the instance is deleted.
|
|
12211
|
+
*/
|
|
12212
|
+
unsubscribe;
|
|
12213
|
+
constructor(options) {
|
|
12214
|
+
super({ ...options, signer: "" });
|
|
12215
|
+
this.walletProvider = options.walletProvider;
|
|
12216
|
+
this.unsubscribe = this.walletProvider.features["standard:events"].on(
|
|
12217
|
+
"change",
|
|
12218
|
+
(change) => {
|
|
12219
|
+
if (!change.accounts?.length) return;
|
|
12220
|
+
if (change.accounts[0].address) this.address = change.accounts[0].address;
|
|
12221
|
+
if (change.accounts[0].chains)
|
|
12222
|
+
this.channel.setChainId(change.accounts[0].chains[0].slice(9));
|
|
12223
|
+
}
|
|
12224
|
+
);
|
|
12225
|
+
}
|
|
12226
|
+
/**
|
|
12227
|
+
* WALLET EVENTS
|
|
12228
|
+
*/
|
|
12229
|
+
onChange(callback) {
|
|
12230
|
+
subscribeWalletEvent(this.walletProvider, callback);
|
|
12231
|
+
}
|
|
12232
|
+
unsubscribeChange() {
|
|
12233
|
+
this.unsubscribe();
|
|
12234
|
+
}
|
|
12235
|
+
/**
|
|
12236
|
+
* WALLET SPECIFIC METHODS
|
|
12237
|
+
*/
|
|
12238
|
+
requestAccounts(silentMode = false) {
|
|
12239
|
+
return requestAccounts2(this.walletProvider, silentMode);
|
|
12240
|
+
}
|
|
12241
|
+
getPermissions() {
|
|
12242
|
+
return getPermissions2(this.walletProvider);
|
|
12243
|
+
}
|
|
12244
|
+
switchStarknetChain(chainId) {
|
|
12245
|
+
return switchStarknetChain2(this.walletProvider, chainId);
|
|
12246
|
+
}
|
|
12247
|
+
watchAsset(asset) {
|
|
12248
|
+
return watchAsset2(this.walletProvider, asset);
|
|
12249
|
+
}
|
|
12250
|
+
addStarknetChain(chain) {
|
|
12251
|
+
return addStarknetChain2(this.walletProvider, chain);
|
|
12252
|
+
}
|
|
12253
|
+
/**
|
|
12254
|
+
* ACCOUNT METHODS
|
|
12255
|
+
*/
|
|
12256
|
+
execute(calls) {
|
|
12257
|
+
const txCalls = [].concat(calls).map((it) => {
|
|
12258
|
+
const { contractAddress, entrypoint, calldata } = it;
|
|
12259
|
+
return {
|
|
12260
|
+
contract_address: contractAddress,
|
|
12261
|
+
entry_point: entrypoint,
|
|
12262
|
+
calldata
|
|
12263
|
+
};
|
|
12264
|
+
});
|
|
12265
|
+
const params = {
|
|
12266
|
+
calls: txCalls
|
|
12267
|
+
};
|
|
12268
|
+
return addInvokeTransaction2(this.walletProvider, params);
|
|
12269
|
+
}
|
|
12270
|
+
declare(payload) {
|
|
12271
|
+
const declareContractPayload = extractContractHashes(payload);
|
|
12272
|
+
const pContract = payload.contract;
|
|
12273
|
+
const cairo1Contract = {
|
|
12274
|
+
...pContract,
|
|
12275
|
+
abi: stringify2(pContract.abi)
|
|
12276
|
+
};
|
|
12277
|
+
if (!declareContractPayload.compiledClassHash) {
|
|
12278
|
+
throw Error("compiledClassHash is required");
|
|
12279
|
+
}
|
|
12280
|
+
const params = {
|
|
12281
|
+
compiled_class_hash: declareContractPayload.compiledClassHash,
|
|
12282
|
+
contract_class: cairo1Contract
|
|
12283
|
+
};
|
|
12284
|
+
return addDeclareTransaction2(this.walletProvider, params);
|
|
12285
|
+
}
|
|
12286
|
+
async deploy(payload) {
|
|
12287
|
+
const { calls, addresses } = defaultDeployer.buildDeployerCall(payload, this.address);
|
|
12288
|
+
const invokeResponse = await this.execute(calls);
|
|
12289
|
+
return {
|
|
12290
|
+
...invokeResponse,
|
|
12291
|
+
contract_address: addresses
|
|
12292
|
+
};
|
|
12293
|
+
}
|
|
12294
|
+
signMessage(typedData) {
|
|
12295
|
+
return signMessage2(this.walletProvider, typedData);
|
|
12296
|
+
}
|
|
12297
|
+
static async connect(provider, walletProvider, cairoVersion, paymaster, silentMode = false) {
|
|
12298
|
+
const [accountAddress] = await requestAccounts2(walletProvider, silentMode);
|
|
12299
|
+
return new _WalletAccountV5({
|
|
12300
|
+
provider,
|
|
12301
|
+
walletProvider,
|
|
12302
|
+
address: accountAddress,
|
|
12303
|
+
cairoVersion,
|
|
12304
|
+
paymaster
|
|
12305
|
+
});
|
|
12306
|
+
}
|
|
12307
|
+
static async connectSilent(provider, walletProvider, cairoVersion, paymaster) {
|
|
12308
|
+
return _WalletAccountV5.connect(provider, walletProvider, cairoVersion, paymaster, true);
|
|
12309
|
+
}
|
|
12310
|
+
// TODO: MISSING ESTIMATES
|
|
12311
|
+
};
|
|
12312
|
+
|
|
12129
12313
|
// src/utils/events/index.ts
|
|
12130
12314
|
var events_exports = {};
|
|
12131
12315
|
__export(events_exports, {
|
|
@@ -12814,6 +12998,7 @@ function units(amount, simbol = "fri") {
|
|
|
12814
12998
|
Uint,
|
|
12815
12999
|
ValidateType,
|
|
12816
13000
|
WalletAccount,
|
|
13001
|
+
WalletAccountV5,
|
|
12817
13002
|
WebSocketChannel,
|
|
12818
13003
|
WebSocketNotConnectedError,
|
|
12819
13004
|
addAddressPadding,
|
|
@@ -12879,6 +13064,7 @@ function units(amount, simbol = "fri") {
|
|
|
12879
13064
|
validateAndParseAddress,
|
|
12880
13065
|
validateChecksumAddress,
|
|
12881
13066
|
verifyMessageInStarknet,
|
|
12882
|
-
wallet
|
|
13067
|
+
wallet,
|
|
13068
|
+
walletV5
|
|
12883
13069
|
});
|
|
12884
13070
|
//# sourceMappingURL=index.js.map
|