mirror of
https://github.com/we-promise/sure.git
synced 2026-04-19 12:04:08 +00:00
@@ -2,22 +2,25 @@ module Plaidable
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
class_methods do
|
||||
def plaid_provider
|
||||
Provider::Plaid.new if Rails.application.config.plaid
|
||||
def plaid_us_provider
|
||||
Provider::Plaid.new(Rails.application.config.plaid, :us) if Rails.application.config.plaid
|
||||
end
|
||||
|
||||
def plaid_eu_provider
|
||||
Provider::Plaid.new if Rails.application.config.plaid_eu
|
||||
Provider::Plaid.new(Rails.application.config.plaid_eu, :eu) if Rails.application.config.plaid_eu
|
||||
end
|
||||
|
||||
def plaid_provider_for(plaid_item)
|
||||
return nil unless plaid_item
|
||||
plaid_item.eu? ? plaid_eu_provider : plaid_provider
|
||||
def plaid_provider_for_region(region)
|
||||
region.to_sym == :eu ? plaid_eu_provider : plaid_us_provider
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
def plaid_provider_for(plaid_item)
|
||||
self.class.plaid_provider_for(plaid_item)
|
||||
def eu?
|
||||
raise "eu? is not implemented for #{self.class.name}"
|
||||
end
|
||||
|
||||
def plaid_provider
|
||||
eu? ? self.class.plaid_eu_provider : self.class.plaid_us_provider
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user