toModel method

OperationDeposit toModel()

Constructs a new OperationDeposit from this OperationDepositMixin.

Implementation

OperationDeposit toModel() => OperationDeposit(
  id: id,
  num: this.num,
  status: status,
  origin: origin,
  direction: direction,
  amount: amount.toModel(),
  holdUntil: holdUntil,
  createdAt: createdAt,
  canceled: canceled?.toModel(),
  kind: kind,
  billingCountry: billingCountry,
  invoice: invoice,
  details: switch (details.$$typename) {
    'OperationDepositPayPalDetails' => OperationDepositPayPalDetails(
      processingUrl: Url(
        (details
                as OperationDepositMixin$Details$OperationDepositPayPalDetails)
            .processingUrl,
      ),
    ),
    (_) => throw Exception(
      'Unsupported `OperationDepositDetails` type: ${details.$$typename}',
    ),
  },
  pricing: price?.toModel(),
  failed: failed?.toModel(),
);