Skip to content

atticoos/angular-digits

Repository files navigation

angular-digits

This is an angular wrapper for twitter fabric's digits sdk. It bridges the gap between Angular's digest cycle and the foreign SDK by applying the asynchronous events to the digest cycle. It also provides convenient models to provide insight to the responses from the API (if the workflow was closed by the user, popup was blocked, etc).

Example usage

angular.module('app', ['atticoos.digits'])

.config(function (DigitsProvider) {
  // configure the provider before the application's run phase
  DigitsProvider.setConsumerKey('XXX');
})

.run(function (Digits) {
  var options = {
    accountFields: Digits.AccountFields.Email // Access Email Addresses
  };


  Digits.login(options).then(function (loginResponse) {
    // successfully logged in
  }).catch(function (error) {
    // a decorated error object describing the issue logging in
    if (error.wasPopupBlocked()) {
      // popup blocked
    } else if (error.wasWindowClosed()) {
      // user closed the window
    } else {
      // something else
    }
  });
});

Login Options

You can customize the Digits for Web sign in flow to collect user email addresses or pre-fill phone number information, based on your app’s needs.

For more informations go to Digits SDK Sign in Options Doc

Response Objects

This wrapper comes with some convenient models for better transparency of state and response information from the Digits SDK. It is suggested by the Digits SDK Docs that you securely verify the response data when logging in.

Login Response

Digits.login().then(function (loginResponse) { });

loginResponse.getOAuthHeaders()

Returns: Object

Returns the headers used to perform verification of the login response (X-Verify-Credentials-Authorization and X-Auth-Service-Provider)

{
  authorization: 'xx',
  url: 'https://xx'
}

Error Response

Digits.login().catch(function (loginError) { });

loginError.wasWindowClosed()

Returns: Boolean

Indicates if the workflow was aborted directly by the user closing the window before the process had completed

loginError.wasPopupBlocked()

Returns: Boolean

Indicates if the browser prevented the workflow by blocking the popup

loginError.type

The type attribute from the original response object

loginError.message

The message attribute from the original response object

About

🔢 AngularJS module for Twitter Fabric Digits

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •