@alephium/web3 0.10.0-rc.1 → 0.10.0-rc.3

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.
@@ -39,8 +39,8 @@ class NodeProvider {
39
39
  };
40
40
  // Only use this when the token is following the standard token interface
41
41
  this.fetchStdTokenMetaData = async (tokenId) => {
42
- const group = 0;
43
42
  const address = (0, utils_2.addressFromTokenId)(tokenId);
43
+ const group = (0, utils_2.groupOfAddress)(address);
44
44
  const calls = Array.from([0, 1, 2, 3], (index) => ({ methodIndex: index, group: group, address: address }));
45
45
  const result = await this.contracts.postContractsMulticallContract({
46
46
  calls: calls
@@ -220,10 +220,10 @@ export interface DeployContractParams<P extends Fields = Fields> {
220
220
  gasAmount?: number;
221
221
  gasPrice?: Number256;
222
222
  }
223
- export type DeployContractResult<T> = SignDeployContractTxResult & {
224
- instance: T;
223
+ export type DeployContractResult<T extends ContractInstance> = Omit<SignDeployContractTxResult, 'contractId' | 'contractAddress' | 'groupIndex'> & {
224
+ contractInstance: T;
225
225
  };
226
- export declare abstract class ContractFactory<I, F extends Fields = Fields> {
226
+ export declare abstract class ContractFactory<I extends ContractInstance, F extends Fields = Fields> {
227
227
  readonly contract: Contract;
228
228
  constructor(contract: Contract);
229
229
  abstract at(address: string): I;
@@ -278,7 +278,7 @@ export declare function subscribeEventsFromContract<T extends Fields, M extends
278
278
  export declare function addStdIdToFields<F extends Fields>(contract: Contract, fields: F): F | (F & {
279
279
  __stdInterfaceId: HexString;
280
280
  });
281
- export declare function testMethod<I, F extends Fields, A extends Arguments, R>(contract: ContractFactory<I, F>, methodName: string, params: Optional<TestContractParams<F, A>, 'testArgs' | 'initialFields'>): Promise<TestContractResult<R>>;
281
+ export declare function testMethod<I extends ContractInstance, F extends Fields, A extends Arguments, R>(contract: ContractFactory<I, F>, methodName: string, params: Optional<TestContractParams<F, A>, 'testArgs' | 'initialFields'>): Promise<TestContractResult<R>>;
282
282
  export declare abstract class ContractInstance {
283
283
  readonly address: Address;
284
284
  readonly contractId: string;
@@ -291,7 +291,7 @@ export declare function subscribeContractDestroyedEvent(options: SubscribeOption
291
291
  export declare function decodeEvent<F extends Fields, M extends ContractEvent<F>>(contract: Contract, instance: ContractInstance, event: node.ContractEvent, targetEventIndex: number): M;
292
292
  export declare function subscribeContractEvent<F extends Fields, M extends ContractEvent<F>>(contract: Contract, instance: ContractInstance, options: SubscribeOptions<M>, eventName: string, fromCount?: number): EventSubscription;
293
293
  export declare function subscribeContractEvents(contract: Contract, instance: ContractInstance, options: SubscribeOptions<ContractEvent<any>>, fromCount?: number): EventSubscription;
294
- export declare function callMethod<I, F extends Fields, A extends Arguments, R>(contract: ContractFactory<I, F>, instance: ContractInstance, methodName: string, params: Optional<CallContractParams<A>, 'args'>): Promise<CallContractResult<R>>;
295
- export declare function multicallMethods<I, F extends Fields>(contract: ContractFactory<I, F>, instance: ContractInstance, calls: Record<string, Optional<CallContractParams<any>, 'args'>>): Promise<Record<string, CallContractResult<any>>>;
294
+ export declare function callMethod<I extends ContractInstance, F extends Fields, A extends Arguments, R>(contract: ContractFactory<I, F>, instance: ContractInstance, methodName: string, params: Optional<CallContractParams<A>, 'args'>): Promise<CallContractResult<R>>;
295
+ export declare function multicallMethods<I extends ContractInstance, F extends Fields>(contract: ContractFactory<I, F>, instance: ContractInstance, calls: Record<string, Optional<CallContractParams<any>, 'args'>>): Promise<Record<string, CallContractResult<any>>>;
296
296
  export declare function getContractEventsCurrentCount(contractAddress: Address): Promise<number>;
297
297
  export {};
@@ -880,7 +880,7 @@ class ContractFactory {
880
880
  const result = await signer.signAndSubmitDeployContractTx(signerParams);
881
881
  return {
882
882
  ...result,
883
- instance: this.at(result.contractAddress)
883
+ contractInstance: this.at(result.contractAddress)
884
884
  };
885
885
  }
886
886
  // This is used for testing contract functions
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alephium/web3",
3
- "version": "0.10.0-rc.1",
3
+ "version": "0.10.0-rc.3",
4
4
  "description": "A JS/TS library to interact with the Alephium platform",
5
5
  "license": "GPL",
6
6
  "main": "dist/src/index.js",
@@ -102,8 +102,8 @@ export class NodeProvider implements NodeProviderApis {
102
102
 
103
103
  // Only use this when the token is following the standard token interface
104
104
  fetchStdTokenMetaData = async (tokenId: HexString): Promise<TokenMetaData> => {
105
- const group = 0
106
105
  const address = addressFromTokenId(tokenId)
106
+ const group = groupOfAddress(address)
107
107
  const calls = Array.from([0, 1, 2, 3], (index) => ({ methodIndex: index, group: group, address: address }))
108
108
  const result = await this.contracts.postContractsMulticallContract({
109
109
  calls: calls
@@ -1300,9 +1300,14 @@ assertType<
1300
1300
  Omit<SignDeployContractTxParams, 'signerAddress' | 'signerKeyType' | 'bytecode'>
1301
1301
  >
1302
1302
  >
1303
- export type DeployContractResult<T> = SignDeployContractTxResult & { instance: T }
1303
+ export type DeployContractResult<T extends ContractInstance> = Omit<
1304
+ SignDeployContractTxResult,
1305
+ 'contractId' | 'contractAddress' | 'groupIndex'
1306
+ > & {
1307
+ contractInstance: T
1308
+ }
1304
1309
 
1305
- export abstract class ContractFactory<I, F extends Fields = Fields> {
1310
+ export abstract class ContractFactory<I extends ContractInstance, F extends Fields = Fields> {
1306
1311
  readonly contract: Contract
1307
1312
 
1308
1313
  constructor(contract: Contract) {
@@ -1319,7 +1324,7 @@ export abstract class ContractFactory<I, F extends Fields = Fields> {
1319
1324
  const result = await signer.signAndSubmitDeployContractTx(signerParams)
1320
1325
  return {
1321
1326
  ...result,
1322
- instance: this.at(result.contractAddress)
1327
+ contractInstance: this.at(result.contractAddress)
1323
1328
  }
1324
1329
  }
1325
1330
 
@@ -1463,7 +1468,7 @@ export function addStdIdToFields<F extends Fields>(
1463
1468
  : { ...fields, __stdInterfaceId: stdInterfaceIdPrefix + contract.stdInterfaceId }
1464
1469
  }
1465
1470
 
1466
- export async function testMethod<I, F extends Fields, A extends Arguments, R>(
1471
+ export async function testMethod<I extends ContractInstance, F extends Fields, A extends Arguments, R>(
1467
1472
  contract: ContractFactory<I, F>,
1468
1473
  methodName: string,
1469
1474
  params: Optional<TestContractParams<F, A>, 'testArgs' | 'initialFields'>
@@ -1610,7 +1615,7 @@ export function subscribeContractEvents(
1610
1615
  return subscribeToEvents(opt, instance.address, fromCount)
1611
1616
  }
1612
1617
 
1613
- export async function callMethod<I, F extends Fields, A extends Arguments, R>(
1618
+ export async function callMethod<I extends ContractInstance, F extends Fields, A extends Arguments, R>(
1614
1619
  contract: ContractFactory<I, F>,
1615
1620
  instance: ContractInstance,
1616
1621
  methodName: string,
@@ -1629,7 +1634,7 @@ export async function callMethod<I, F extends Fields, A extends Arguments, R>(
1629
1634
  return callResult as CallContractResult<R>
1630
1635
  }
1631
1636
 
1632
- export async function multicallMethods<I, F extends Fields>(
1637
+ export async function multicallMethods<I extends ContractInstance, F extends Fields>(
1633
1638
  contract: ContractFactory<I, F>,
1634
1639
  instance: ContractInstance,
1635
1640
  calls: Record<string, Optional<CallContractParams<any>, 'args'>>