<%= t("providers.snaptrade.description") %>

<%= t("providers.snaptrade.setup_title") %>

  1. <%= t("providers.snaptrade.step_1_html") %>
  2. <%= t("providers.snaptrade.step_2") %>
  3. <%= t("providers.snaptrade.step_3") %>
  4. <%= t("providers.snaptrade.step_4") %>

<%= icon("alert-triangle", class: "inline-block w-4 h-4 mr-1") %><%= t("providers.snaptrade.free_tier_warning") %>

<% error_msg = local_assigns[:error_message] || @error_message %> <% if error_msg.present? %>

<%= error_msg %>

<% end %> <% snaptrade_item = Current.family.snaptrade_items.first_or_initialize(name: "SnapTrade Connection") is_new_record = snaptrade_item.new_record? is_configured = snaptrade_item.persisted? && snaptrade_item.credentials_configured? is_registered = snaptrade_item.persisted? && snaptrade_item.user_registered? %> <%= styled_form_with model: snaptrade_item, url: is_new_record ? snaptrade_items_path : snaptrade_item_path(snaptrade_item), scope: :snaptrade_item, method: is_new_record ? :post : :patch, data: { turbo: true }, class: "space-y-3" do |form| %> <%= form.text_field :client_id, label: t("providers.snaptrade.client_id_label"), placeholder: is_new_record ? t("providers.snaptrade.client_id_placeholder") : t("providers.snaptrade.client_id_update_placeholder"), type: :password %> <%= form.text_field :consumer_key, label: t("providers.snaptrade.consumer_key_label"), placeholder: is_new_record ? t("providers.snaptrade.consumer_key_placeholder") : t("providers.snaptrade.consumer_key_update_placeholder"), type: :password %>
<%= form.submit is_new_record ? t("providers.snaptrade.save_button") : t("providers.snaptrade.update_button"), class: "btn btn--primary" %>
<% end %> <% items = local_assigns[:snaptrade_items] || @snaptrade_items || Current.family.snaptrade_items.where.not(client_id: [nil, ""]) %>
<% if items&.any? %> <% item = items.first %> <% if item.user_registered? %>

<%= t("providers.snaptrade.status_connected", count: item.snaptrade_accounts.count) %> <% if item.unlinked_accounts_count > 0 %> (<%= t("providers.snaptrade.needs_setup", count: item.unlinked_accounts_count) %>) <% end %>

<%= t("providers.snaptrade.manage_connections") %> <%= icon "chevron-right", class: "w-3 h-3 transition-transform group-open:rotate-90" %>

<%= t("providers.snaptrade.connection_limit_info") %>

<%= icon "loader-2", class: "w-4 h-4 animate-spin" %> <%= t("providers.snaptrade.loading_connections") %>
<% else %>

<%= t("providers.snaptrade.status_needs_registration") %>

<% end %> <% else %>

<%= t("providers.snaptrade.status_not_configured") %>

<% end %>