'$refresh',
'transaction-saved' => '$refresh'
];
// methods
public function showTransactionDialog($transactionId)
{
if (!auth()->user()->can('fullAccess', $this->portfolio)) {
$this->error(__('You do not have permission to manage transactions for this portfolio'));
return;
}
$this->editingTransaction = Transaction::findOrFail($transactionId);
$this->dispatch('toggle-manage-transaction');
}
public function goToHolding($holding)
{
return $this->redirect(route('holding.show', ['portfolio' => $holding['portfolio_id'], 'symbol' => $holding['symbol']]));
}
public function updateOffset($amount = 0)
{
$this->offset = $this->offset + $amount;
}
}; ?>
@foreach($transactions->sortByDesc('date')->slice($offset)->take($perPage) as $transaction)
{ loading = true }, 200);
$wire.showTransactionDialog('{{ $transaction->id }}').then(() => {
clearTimeout(timeout);
loading = false;
})
"
>
{{ $transaction->symbol }}
({{ $transaction->quantity }}
@ {{ $transaction->transaction_type == 'BUY'
? Number::currency($transaction->cost_basis)
: Number::currency($transaction->sale_price) }})
@if($showPortfolio)
{{ $transaction->portfolio->title }}
·
@endif
{{ $transaction->date->format('F j, Y') }}
@endforeach
@if ($paginate && count($transactions) > $perPage)
@if($offset > 0)
{!! __('pagination.previous') !!}
@endif
@if(count($transactions) - $offset > $offset)
{!! __('pagination.next') !!}
@endif
@endif
@livewire('manage-transaction-form', [
'portfolio' => $portfolio,
'transaction' => $editingTransaction,
], key($editingTransaction?->id.rand()))