private void TransactionItemsDeleted(object sender, int[] e)
        {
            var indicies = e.Where(i => i < MAX_ITEMS_COUNT).OrderByDescending(i => i);

            foreach (var index in indicies)
            {
                Transactions.RemoveAt(index);
                Debug.WriteLine($"[TransactionsWidgetViewModel] Transaction at {index} deleted from widget");
            }

            var currentTransactionsCount = Transactions.Count;

            if (currentTransactionsCount < _transactionsRepository.Transactions.Count)
            {
                for (int i = currentTransactionsCount; i < MAX_ITEMS_COUNT; i++)
                {
                    if (_transactionsRepository.Transactions.Count - 1 > i)
                    {
                        Transactions.Add(_transactionsRepository.Transactions[i]);
                        Debug.WriteLine($"[TransactionsWidgetViewModel] Transaction added to widget. Root transactions index: {i}");
                    }
                }
            }

            OnTransactionsChanged?.Invoke(this, EventArgs.Empty);
        }
        private void TransactionItemsInserted(object sender, int[] e)
        {
            var indicies = e.Where(i => i < MAX_ITEMS_COUNT);

            foreach (var index in indicies)
            {
                Transactions.Insert(index, _transactionsRepository.Transactions[index]);
                if (Transactions.Count > MAX_ITEMS_COUNT)
                {
                    Transactions.RemoveAt(MAX_ITEMS_COUNT);
                }
            }

            OnTransactionsChanged?.Invoke(this, EventArgs.Empty);
        }