Git Product home page Git Product logo

ng-oauth2's Introduction

Installing

Run the following commands :

npm i @xtof974/ng-oauth2

How to Use It ?

Importing the NgModule

import { APP_INITIALIZER } from  '@angular/core';
import {AuthInterceptor,
	AuthService,
	FlowType,
	NgOauth2Module,
	NgOauth2Service,
	RedirectComponent,
} from  '@xtof974/ng-oauth2';
// etc.

@NgModule({
  imports: [
    // etc.
    NgOauth2Module.forRoot({
		flowType:  'IMPLICIT_GRANT', //IMPLICIT_GRANT, PKCE
		rsURL:  environment.rsURL, //e.g. Resource Server URL
		asURL:  environment.asURL, //e.g. Authorization Server URL
		clientID:  environment.clientID,
		redirectInfos:  {
			redirectURI: environment.redirectURI,
			home:  '/home', //where to go after redirect
		},
		extras: {
			saveNavigation:  false, //available only if No refresh Token
			delayBeforeRefreshToken: 5 //number in seconds > 0
		},
		scopes: {			//optionnal
			scopes: ['READ', 'WRITE'], //list of scopes
		}
}),
  ],
  declarations: [
    AppComponent,
    HomeComponent,
    // etc.
  ],
  providers: [
	NgOauth2Service,
	{
	   provide:  APP_INITIALIZER,
	   useFactory:  initOauth2Service,
	   deps: [NgOauth2Service],
	   multi:  true,
	},
	{
	   provide:  HTTP_INTERCEPTORS,
       useClass:  AuthInterceptor,
	   multi:  true,
	},
	// etc. others interceptors
  ]
  bootstrap: [
    AppComponent
  ]
})
export class AppModule {
}
export  function  initOauth2Service(config: NgOauth2Service) {
	return (): Promise<any> => {
	return  config.init();
	};
}

ng-oauth2's People

Contributors

xtof974 avatar

Stargazers

 avatar Rituparna Warwatkar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.