class WebAuthn::PublicKeyCredential::RequestOptions

def allow_credentials

def allow_credentials
  @allow_credentials || allow_credentials_from_allow || []
end

def allow_credentials_from_allow

def allow_credentials_from_allow
  if allow
    as_public_key_descriptors(allow)
  end
end

def attributes

def attributes
  super.concat([:allow_credentials, :rp_id, :user_verification])
end

def default_extensions

def default_extensions
  extensions = super || {}
  if relying_party.legacy_u2f_appid
    extensions.merge!(appid: relying_party.legacy_u2f_appid)
  end
  extensions
end

def initialize(rp_id: nil, allow_credentials: nil, allow: nil, user_verification: nil, **keyword_arguments)

def initialize(rp_id: nil, allow_credentials: nil, allow: nil, user_verification: nil, **keyword_arguments)
  super(**keyword_arguments)
  @rp_id = rp_id || relying_party.id
  @allow_credentials = allow_credentials
  @allow = allow
  @user_verification = user_verification
end