Module: GitFit::Auth::Garmin

Defined in:
lib/git_fit/auth/garmin.rb,
lib/git_fit/auth/garmin/strategy_a.rb,
lib/git_fit/auth/garmin/strategy_b.rb,
lib/git_fit/auth/garmin/di_exchange.rb,
lib/git_fit/auth/garmin/login_session.rb

Defined Under Namespace

Modules: DIExchange, LoginSession, StrategyA, StrategyB Classes: MfaRequired, Orchestrator

Constant Summary collapse

SEED_SECRET_NAME =

Orchestrator for git fit auth garmin — faithful Ruby port of workouts/scripts/garmin_auth_local.sh with the finalized -A/-B/--auto/--sync CLI interface. The module namespace is shared with the strategies (StrategyA/StrategyB/DIExchange), so the orchestrator lives in a nested class and GitFit::Auth::Garmin.new delegates to it (same call site as GitFit::Auth::Strava).

'SYNC_GARMIN_AUTH_SEED'
FLAGS =
%i[A B auto sync].freeze
STRATEGIES =
{ A: StrategyA, B: StrategyB }.freeze

Class Method Summary collapse

Class Method Details

.new(options, config) ⇒ Object



277
278
279
# File 'lib/git_fit/auth/garmin.rb', line 277

def self.new(options, config)
  Orchestrator.new(options, config)
end