getRouterData method

Future<({InternalAddress adminAddress, DexType dexType, bool isLocked, Cell jettonLpWalletCode, Cell lpAccountCode, Cell poolCode, int routerId, Cell tempUpgrade, Cell vaultCode})> getRouterData()

Implementation

Future<({
      int routerId,
      DexType dexType,
      bool isLocked,
      InternalAddress adminAddress,
      Cell tempUpgrade,
      Cell poolCode,
      Cell jettonLpWalletCode,
      Cell lpAccountCode,
      Cell vaultCode,
    })> getRouterData() async {
  final result = await stonfiProvider!.get("get_router_data", []);
  return (
    routerId: result.stack.readInt(),
    dexType: DexType.values
        .firstWhere((e) => (String.fromCharCodes((result.stack.readString().toString().replaceAll('[', '').replaceAll(']', '')).split(',').map((e) => int.parse(e.trim())))) == e.value),
    isLocked: result.stack.readBool(),
    adminAddress: result.stack.readAddress(),
    tempUpgrade: result.stack.readCell(),
    poolCode: result.stack.readCell(),
    jettonLpWalletCode: result.stack.readCell(),
    lpAccountCode: result.stack.readCell(),
    vaultCode: result.stack.readCell(),
  );
}