Files
sure/app/models/enable_banking_item/sync_complete_event.rb
Number Eight 7725661a96 fix: Enable Banking DNS issues and provide better UI sync feedback (#1021)
* fix(docker): add explicit DNS config to fix enable banking sync

* fix(enable-banking): surface sync errors in the UI

* fix: add spaces inside array brackets for RuboCop

* fix(enable-banking): surface sync errors and partial failures in UI
2026-02-19 21:54:44 +01:00

40 lines
1.2 KiB
Ruby

class EnableBankingItem::SyncCompleteEvent
attr_reader :enable_banking_item
def initialize(enable_banking_item)
@enable_banking_item = enable_banking_item
end
def broadcast
enable_banking_item.reload
# Update UI with latest account data
enable_banking_item.accounts.each do |account|
account.broadcast_sync_complete
end
family = enable_banking_item.family
return unless family
# Update the Enable Banking item view on the Accounts page
enable_banking_item.broadcast_replace_to(
family,
target: "enable_banking_item_#{enable_banking_item.id}",
partial: "enable_banking_items/enable_banking_item",
locals: { enable_banking_item: enable_banking_item }
)
# Update the Settings > Providers panel
enable_banking_items = family.enable_banking_items.ordered.includes(:syncs)
enable_banking_item.broadcast_replace_to(
family,
target: "enable_banking-providers-panel",
partial: "settings/providers/enable_banking_panel",
locals: { enable_banking_items: enable_banking_items }
)
# Let family handle sync notifications
family.broadcast_sync_complete
end
end