getDeviceDetails static method

Future<Device> getDeviceDetails(
  1. Request request,
  2. String id
)

Implementation

static Future<Device> getDeviceDetails(Request request, String id) async {
  Link client = GraphLinkCreator.create(request);
  final req = GgetDevice((b) => b..vars.deviceId = id);
  final res = await client
      .request(
          gql.Request(operation: req.operation, variables: req.vars.toJson()))
      .first;
  final errors = res.errors;
  if (errors != null && errors.isNotEmpty) {
    throw errors.first;
  }

  final device = GgetDeviceData.fromJson(res.data!)!.device;
  return Device(
      device!.id,
      device.displayName,
      device.productInformation.description,
      device.productInformation.manufacturer,
      device.productInformation.model,
      device.productInformation.serialNumber,
      device.createdAt,
      device.updatedAt,
      responseToDeviceTraitConverter(device.traits.asList()));
}