FirebaseOauthProviders {firebase}R Documentation

OAuth Providers

Description

Use OAuth provides such as Github or Facebook to allow users to conveniently sign in.

Value

An object of class FirebaseOauthProviders.

Super classes

firebase::Firebase -> firebase::FirebaseAuth -> FirebaseOauthProviders

Methods

Public methods

Inherited methods

Method new()

Usage
FirebaseOauthProviders$new(
  persistence = c("session", "local", "memory"),
  config_path = "firebase.rds",
  language_code = NULL,
  session = shiny::getDefaultReactiveDomain()
)
Arguments
persistence

How the auth should persit: none, the user has to sign in at every visit, session will only persist in current tab, local persist even when window is closed.

config_path

Path to the configuration file as created by firebase_config.

language_code

Sets the language to use for the UI. Supported languages are listed here. Set to browser to use the default browser language of the user.

session

A valid shiny session.

Details

Initialiases Firebase Email Link

Initialises the Firebase application client-side.


Method set_provider()

Usage
FirebaseOauthProviders$set_provider(provider, ...)
Arguments
provider

The provider to user, e.g.: microsoft.com, yahoo.com or google.com.

...

Additional options to pass to setCustomParameters.

Details

Define provider to use

Returns

self


Method launch()

Usage
FirebaseOauthProviders$launch(
  flow = c("popup", "redirect"),
  get_credentials = FALSE
)
Arguments
flow

Authentication flow, either popup or redirect.

get_credentials

Whether to extract underlying oauth credentials.

Details

Launch sign in with Google.

Returns

self


Method clone()

The objects of this class are cloneable with this method.

Usage
FirebaseOauthProviders$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

Examples

library(shiny)
library(firebase)

ui <- fluidPage(
  useFirebase(),
  actionButton("signin", "Sign in with Microsoft", icon = icon("microsoft")),
  plotOutput("plot")
)

server <- function(input, output, session){
  f <- FirebaseOauthProviders$
    new()$
    set_provider("microsoft.com")

  observeEvent(input$signin, {
    f$launch()
  })

  output$plot <- renderPlot({
    f$req_sign_in()
    plot(cars)
  })
  
}

## Not run: shinyApp(ui, server)


[Package firebase version 1.0.2 Index]