Module: Leash

Defined in:
lib/leash/env.rb,
lib/leash/auth.rb,
lib/leash/types.rb,
lib/leash/client.rb,
lib/leash/errors.rb,
lib/leash/version.rb,
lib/leash/transport.rb,
lib/leash/integrations.rb,
lib/leash/integrations/base.rb,
lib/leash/integrations/drive.rb,
lib/leash/integrations/gmail.rb,
lib/leash/integrations/linear.rb,
lib/leash/integrations/calendar.rb

Defined Under Namespace

Modules: Auth, Integrations Classes: AuthError, Client, ConnectionRequiredError, Env, Error, KeyNotDeclaredError, NetworkError, TokenExpiredError, Transport, UnauthorizedError, UpgradeRequiredError, User

Constant Summary collapse

LeashUser =

Older alias — readers reaching for ‘Leash::LeashUser` get the same class.

User
DEFAULT_PLATFORM_URL =
"https://leash.build"
PlanBlockError =

Alias kept for the surface contract described in the 0.4 plan (‘Leash::PlanBlockError`). Same class as `UpgradeRequiredError`.

UpgradeRequiredError
NotConnectedError =

Backwards-compat alias for the 0.3 surface — kept so existing user code ‘rescue Leash::NotConnectedError` keeps working.

ConnectionRequiredError
VERSION =
"0.4.0"

Class Method Summary collapse

Class Method Details

.new(**kwargs) ⇒ Object

‘Leash.new(…)` is the idiomatic Ruby entry point. We delegate to `Client.new` so the module-level constant `Leash` stays a module (necessary because `Leash::Auth`, `Leash::Error`, etc. all live under it).



135
136
137
# File 'lib/leash/client.rb', line 135

def self.new(**kwargs)
  Client.new(**kwargs)
end