Exemple #1
0
    public CoinJoinHistoryItemViewModel(
        int orderIndex,
        TransactionSummary transactionSummary,
        WalletViewModel walletViewModel,
        Money balance,
        IObservable <Unit> updateTrigger,
        bool isSingleCoinJoinTransaction)
        : base(orderIndex, transactionSummary)
    {
        IsConfirmed                 = transactionSummary.IsConfirmed();
        Date                        = transactionSummary.DateTime.ToLocalTime();
        Balance                     = balance;
        IsCoinJoin                  = true;
        CoinJoinTransaction         = transactionSummary;
        IsSingleCoinJoinTransaction = isSingleCoinJoinTransaction;

        var amount = transactionSummary.Amount;

        if (amount < Money.Zero)
        {
            OutgoingAmount = amount * -1;
        }
        else
        {
            IncomingAmount = amount;
        }

        ShowDetailsCommand = ReactiveCommand.Create(() =>
                                                    RoutableViewModel.Navigate(NavigationTarget.DialogScreen).To(
                                                        new CoinJoinDetailsViewModel(this, updateTrigger)));

        DateString = $"{Date.ToLocalTime():MM/dd/yyyy HH:mm}";
    }
Exemple #2
0
    public TransactionHistoryItemViewModel(
        int orderIndex,
        TransactionSummary transactionSummary,
        WalletViewModel walletViewModel,
        Money balance,
        IObservable <Unit> updateTrigger)
        : base(orderIndex, transactionSummary)
    {
        Label         = transactionSummary.Label.Take(1).FirstOrDefault();
        FilteredLabel = transactionSummary.Label.Skip(1).ToList();
        IsConfirmed   = transactionSummary.IsConfirmed();
        Date          = transactionSummary.DateTime.ToLocalTime();
        Balance       = balance;

        var amount = transactionSummary.Amount;

        if (amount < Money.Zero)
        {
            OutgoingAmount = amount * -1;
        }
        else
        {
            IncomingAmount = amount;
        }

        ShowDetailsCommand = ReactiveCommand.Create(() =>
                                                    RoutableViewModel.Navigate(NavigationTarget.DialogScreen).To(
                                                        new TransactionDetailsViewModel(transactionSummary, walletViewModel.Wallet, updateTrigger)));

        DateString = $"{Date.ToLocalTime():MM/dd/yy HH:mm}";
    }
Exemple #3
0
    public TransactionHistoryItemViewModel(
        int orderIndex,
        TransactionSummary transactionSummary,
        WalletViewModel walletViewModel,
        Money balance,
        IObservable <Unit> updateTrigger)
        : base(orderIndex, transactionSummary)
    {
        Label       = transactionSummary.Label;
        IsConfirmed = transactionSummary.IsConfirmed();
        Date        = transactionSummary.DateTime.ToLocalTime();
        Balance     = balance;

        var amount = transactionSummary.Amount;

        if (amount < Money.Zero)
        {
            OutgoingAmount = amount * -1;
        }
        else
        {
            IncomingAmount = amount;
        }

        ShowDetailsCommand = ReactiveCommand.Create(() =>
                                                    RoutableViewModel.Navigate(NavigationTarget.DialogScreen).To(
                                                        new TransactionDetailsViewModel(transactionSummary, walletViewModel.Wallet, updateTrigger)));

        var speedUpTransactionCommandCanExecute = this.WhenAnyValue(x => x.IsConfirmed)
                                                  .Select(x => !x)
                                                  .ObserveOn(RxApp.MainThreadScheduler);

        SpeedUpTransactionCommand = ReactiveCommand.Create(
            () =>
        {
            // TODO: Show speed up transaction dialog.
        },
            speedUpTransactionCommandCanExecute);

        DateString = $"{Date.ToLocalTime():MM/dd/yyyy HH:mm}";
    }