mirror of
https://github.com/we-promise/sure.git
synced 2026-04-09 15:24:48 +00:00
* Feat(CoinStats): Scaffold implementation, not yet functional * Feat(CoinStats): Implement crypto wallet balance and transactions * Feat(CoinStats): Add tests, Minor improvements * Feat(CoinStats): Utilize bulk fetch API endpoints * Feat(CoinStats): Migrate strings to i8n * Feat(CoinStats): Fix error handling in wallet link modal * Feat(CoinStats): Implement hourly provider sync job * Feat(CoinStats): Generate docstrings * Fix(CoinStats): Validate API Key on provider update * Fix(Providers): Safely handle race condition in merchance creation * Fix(CoinStats): Don't catch system signals in account processor * Fix(CoinStats): Preload before iterating accounts * Fix(CoinStats): Add no opener / referrer to API dashboard link * Fix(CoinStats): Use strict matching for symbols * Fix(CoinStats): Remove dead code in transactions importer * Fix(CoinStats): Avoid transaction fallback ID collisions * Fix(CoinStats): Improve Blockchains fetch error handling * Fix(CoinStats): Enforce NOT NULL constraint for API Key schema * Fix(CoinStats): Migrate sync status strings to i8n * Fix(CoinStats): Use class name rather than hardcoded string * Fix(CoinStats): Use account currency rather than hardcoded USD * Fix(CoinStats): Migrate from standalone to Provider class * Fix(CoinStats): Fix test failures due to string changes
57 lines
1.7 KiB
Plaintext
57 lines
1.7 KiB
Plaintext
<header class="flex justify-between items-center text-primary font-medium">
|
|
<h1 class="text-xl"><%= t(".accounts") %></h1>
|
|
<div class="flex items-center gap-5">
|
|
<div class="flex items-center gap-2">
|
|
<%= icon(
|
|
"refresh-cw",
|
|
as_button: true,
|
|
size: "sm",
|
|
href: sync_all_accounts_path,
|
|
disabled: Current.family.syncing?,
|
|
frame: :_top
|
|
) %>
|
|
<%= render DS::Link.new(
|
|
text: "New account",
|
|
href: new_account_path(return_to: accounts_path),
|
|
variant: "primary",
|
|
icon: "plus",
|
|
frame: :modal
|
|
) %>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
<% if @manual_accounts.empty? && @plaid_items.empty? && @simplefin_items.empty? && @lunchflow_items.empty? && @enable_banking_items.empty? && @coinstats_items.empty? %>
|
|
<%= render "empty" %>
|
|
<% else %>
|
|
<div class="space-y-2">
|
|
<% if @plaid_items.any? %>
|
|
<%= render @plaid_items.sort_by(&:created_at) %>
|
|
<% end %>
|
|
|
|
<% if @simplefin_items.any? %>
|
|
<%= render @simplefin_items.sort_by(&:created_at) %>
|
|
<% end %>
|
|
|
|
<% if @lunchflow_items.any? %>
|
|
<%= render @lunchflow_items.sort_by(&:created_at) %>
|
|
<% end %>
|
|
|
|
<% if @enable_banking_items.any? %>
|
|
<%= render @enable_banking_items.sort_by(&:created_at) %>
|
|
<% end %>
|
|
|
|
<% if @coinstats_items.any? %>
|
|
<%= render @coinstats_items.sort_by(&:created_at) %>
|
|
<% end %>
|
|
|
|
<% if @manual_accounts.any? %>
|
|
<div id="manual-accounts">
|
|
<%= render "accounts/index/manual_accounts", accounts: @manual_accounts %>
|
|
</div>
|
|
<% else %>
|
|
<div id="manual-accounts"></div>
|
|
<% end %>
|
|
</div>
|
|
<% end %>
|