WalletPasses.PassDataProvider behaviour (wallet_passes v0.6.0)

Copy Markdown View Source

Behaviour for consumers to implement pass data lookups.

The library calls this when it needs to autonomously build pass content, e.g. when Apple requests an updated pass via the callback router.

Summary

Types

pass_bundle()

@type pass_bundle() :: %{
  pass_data: WalletPasses.PassData.t(),
  apple: WalletPasses.Apple.Visual.t() | nil,
  google: WalletPasses.Google.Visual.t() | nil
}

Callbacks

build_pass_data(serial_number)

@callback build_pass_data(serial_number :: String.t()) ::
  {:ok, pass_bundle()} | {:error, term()}