@dereekb/dbx-firebase 2.1.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_index.scss +18 -0
- package/esm2020/lib/auth/auth.mjs +10 -0
- package/esm2020/lib/auth/error.mjs +28 -0
- package/esm2020/lib/auth/firebase.auth.module.mjs +34 -0
- package/esm2020/lib/auth/index.mjs +6 -0
- package/esm2020/lib/auth/login/firebase.login.module.mjs +274 -0
- package/esm2020/lib/auth/login/index.mjs +26 -0
- package/esm2020/lib/auth/login/login.anonymous.component.mjs +22 -0
- package/esm2020/lib/auth/login/login.apple.component.mjs +22 -0
- package/esm2020/lib/auth/login/login.button.component.mjs +139 -0
- package/esm2020/lib/auth/login/login.component.mjs +43 -0
- package/esm2020/lib/auth/login/login.context.back.component.mjs +27 -0
- package/esm2020/lib/auth/login/login.context.directive.mjs +25 -0
- package/esm2020/lib/auth/login/login.context.mjs +7 -0
- package/esm2020/lib/auth/login/login.email.component.mjs +23 -0
- package/esm2020/lib/auth/login/login.email.content.component.mjs +105 -0
- package/esm2020/lib/auth/login/login.email.form.component.mjs +35 -0
- package/esm2020/lib/auth/login/login.email.recovery.form.component.mjs +21 -0
- package/esm2020/lib/auth/login/login.facebook.component.mjs +22 -0
- package/esm2020/lib/auth/login/login.github.component.mjs +22 -0
- package/esm2020/lib/auth/login/login.google.component.mjs +22 -0
- package/esm2020/lib/auth/login/login.list.component.mjs +87 -0
- package/esm2020/lib/auth/login/login.microsoft.component.mjs +22 -0
- package/esm2020/lib/auth/login/login.mjs +3 -0
- package/esm2020/lib/auth/login/login.password.mjs +4 -0
- package/esm2020/lib/auth/login/login.service.mjs +134 -0
- package/esm2020/lib/auth/login/login.terms.component.mjs +26 -0
- package/esm2020/lib/auth/login/login.terms.mjs +3 -0
- package/esm2020/lib/auth/login/login.terms.simple.component.mjs +39 -0
- package/esm2020/lib/auth/login/login.twitter.component.mjs +22 -0
- package/esm2020/lib/auth/login/register.component.mjs +24 -0
- package/esm2020/lib/auth/login/register.email.component.mjs +21 -0
- package/esm2020/lib/auth/service/firebase.auth.rxjs.mjs +39 -0
- package/esm2020/lib/auth/service/firebase.auth.service.mjs +99 -0
- package/esm2020/lib/auth/service/index.mjs +3 -0
- package/esm2020/lib/firebase/emulators.mjs +3 -0
- package/esm2020/lib/firebase/firebase.emulator.module.mjs +36 -0
- package/esm2020/lib/firebase/firebase.module.mjs +188 -0
- package/esm2020/lib/firebase/index.mjs +5 -0
- package/esm2020/lib/firebase/options.mjs +2 -0
- package/esm2020/lib/firestore/firebase.firestore.context.service.mjs +23 -0
- package/esm2020/lib/firestore/firebase.firestore.mjs +6 -0
- package/esm2020/lib/firestore/firebase.firestore.module.mjs +31 -0
- package/esm2020/lib/firestore/index.mjs +4 -0
- package/esm2020/lib/function/firebase.function.module.mjs +47 -0
- package/esm2020/lib/function/index.mjs +2 -0
- package/esm2020/lib/index.mjs +7 -2
- package/esm2020/lib/model/error.mjs +6 -0
- package/esm2020/lib/model/index.mjs +5 -0
- package/esm2020/lib/model/loader/collection.loader.instance.mjs +101 -0
- package/esm2020/lib/model/loader/collection.loader.mjs +2 -0
- package/esm2020/lib/model/loader/index.mjs +3 -0
- package/esm2020/lib/model/model.module.mjs +17 -0
- package/esm2020/lib/model/store/index.mjs +14 -0
- package/esm2020/lib/model/store/model.store.module.mjs +41 -0
- package/esm2020/lib/model/store/store.collection.change.directive.mjs +54 -0
- package/esm2020/lib/model/store/store.collection.change.if.directive.mjs +57 -0
- package/esm2020/lib/model/store/store.collection.directive.mjs +52 -0
- package/esm2020/lib/model/store/store.collection.list.directive.mjs +27 -0
- package/esm2020/lib/model/store/store.collection.mjs +50 -0
- package/esm2020/lib/model/store/store.document.auth.directive.mjs +33 -0
- package/esm2020/lib/model/store/store.document.directive.mjs +46 -0
- package/esm2020/lib/model/store/store.document.mjs +81 -0
- package/esm2020/lib/model/store/store.document.router.directive.mjs +53 -0
- package/esm2020/lib/model/store/store.subcollection.document.mjs +37 -0
- package/esm2020/lib/model/store/store.subcollection.mjs +37 -0
- package/esm2020/lib/model/store/store.subcollection.rxjs.mjs +42 -0
- package/esm2020/lib/module.mjs +17 -0
- package/fesm2015/dereekb-dbx-firebase.mjs +2266 -2
- package/fesm2015/dereekb-dbx-firebase.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-firebase.mjs +2247 -2
- package/fesm2020/dereekb-dbx-firebase.mjs.map +1 -1
- package/lib/auth/auth.d.ts +4 -0
- package/lib/auth/error.d.ts +9 -0
- package/lib/auth/firebase.auth.module.d.ts +12 -0
- package/lib/auth/index.d.ts +5 -0
- package/lib/auth/login/_login.scss +72 -0
- package/lib/auth/login/firebase.login.module.d.ts +48 -0
- package/lib/auth/login/index.d.ts +25 -0
- package/lib/auth/login/login.anonymous.component.d.ts +8 -0
- package/lib/auth/login/login.apple.component.d.ts +8 -0
- package/lib/auth/login/login.button.component.d.ts +51 -0
- package/lib/auth/login/login.component.d.ts +14 -0
- package/lib/auth/login/login.context.back.component.d.ts +9 -0
- package/lib/auth/login/login.context.d.ts +6 -0
- package/lib/auth/login/login.context.directive.d.ts +10 -0
- package/lib/auth/login/login.d.ts +7 -0
- package/lib/auth/login/login.email.component.d.ts +8 -0
- package/lib/auth/login/login.email.content.component.d.ts +39 -0
- package/lib/auth/login/login.email.form.component.d.ts +21 -0
- package/lib/auth/login/login.email.recovery.form.component.d.ts +11 -0
- package/lib/auth/login/login.facebook.component.d.ts +8 -0
- package/lib/auth/login/login.github.component.d.ts +8 -0
- package/lib/auth/login/login.google.component.d.ts +8 -0
- package/lib/auth/login/login.list.component.d.ts +28 -0
- package/lib/auth/login/login.microsoft.component.d.ts +8 -0
- package/lib/auth/login/login.password.d.ts +4 -0
- package/lib/auth/login/login.service.d.ts +115 -0
- package/lib/auth/login/login.terms.component.d.ts +10 -0
- package/lib/auth/login/login.terms.d.ts +4 -0
- package/lib/auth/login/login.terms.simple.component.d.ts +11 -0
- package/lib/auth/login/login.twitter.component.d.ts +8 -0
- package/lib/auth/login/register.component.d.ts +13 -0
- package/lib/auth/login/register.email.component.d.ts +8 -0
- package/lib/auth/service/firebase.auth.rxjs.d.ts +21 -0
- package/lib/auth/service/firebase.auth.service.d.ts +49 -0
- package/lib/auth/service/index.d.ts +2 -0
- package/lib/firebase/emulators.d.ts +52 -0
- package/lib/firebase/firebase.emulator.module.d.ts +12 -0
- package/lib/firebase/firebase.module.d.ts +50 -0
- package/lib/firebase/index.d.ts +4 -0
- package/lib/firebase/options.d.ts +6 -0
- package/lib/firestore/firebase.firestore.context.service.d.ts +11 -0
- package/lib/firestore/firebase.firestore.d.ts +5 -0
- package/lib/firestore/firebase.firestore.module.d.ts +17 -0
- package/lib/firestore/index.d.ts +3 -0
- package/lib/function/firebase.function.module.d.ts +24 -0
- package/lib/function/index.d.ts +1 -0
- package/lib/index.d.ts +6 -1
- package/lib/model/error.d.ts +5 -0
- package/lib/model/index.d.ts +4 -0
- package/lib/model/loader/collection.loader.d.ts +38 -0
- package/lib/model/loader/collection.loader.instance.d.ts +52 -0
- package/lib/model/loader/index.d.ts +2 -0
- package/lib/model/model.module.d.ts +7 -0
- package/lib/model/store/index.d.ts +13 -0
- package/lib/model/store/model.store.module.d.ts +11 -0
- package/lib/model/store/store.collection.change.directive.d.ts +30 -0
- package/lib/model/store/store.collection.change.if.directive.d.ts +24 -0
- package/lib/model/store/store.collection.d.ts +47 -0
- package/lib/model/store/store.collection.directive.d.ts +30 -0
- package/lib/model/store/store.collection.list.directive.d.ts +13 -0
- package/lib/model/store/store.document.auth.directive.d.ts +19 -0
- package/lib/model/store/store.document.d.ts +69 -0
- package/lib/model/store/store.document.directive.d.ts +34 -0
- package/lib/model/store/store.document.router.directive.d.ts +25 -0
- package/lib/model/store/store.subcollection.d.ts +31 -0
- package/lib/model/store/store.subcollection.document.d.ts +31 -0
- package/lib/model/store/store.subcollection.rxjs.d.ts +23 -0
- package/lib/module.d.ts +7 -0
- package/lib/style/_all-core.scss +6 -0
- package/lib/style/_all-theme.scss +6 -0
- package/lib/style/_all-typography.scss +6 -0
- package/lib/style/_config.scss +20 -0
- package/lib/style/_core.scss +9 -0
- package/lib/style/_mixin.scss +3 -0
- package/lib/style/_theming.scss +19 -0
- package/lib/style/_variables.scss +1 -0
- package/package.json +21 -12
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginAppleComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "apple";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginAppleComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginAppleComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { OnInit } from "@angular/core";
|
|
2
|
+
import { HandleActionFunction } from "@dereekb/dbx-core";
|
|
3
|
+
import { Maybe } from "@dereekb/util";
|
|
4
|
+
import { DbxFirebaseAuthService } from "../service/firebase.auth.service";
|
|
5
|
+
import { FirebaseLoginMethodType } from "./login";
|
|
6
|
+
import { DbxFirebaseAuthLoginService } from "./login.service";
|
|
7
|
+
import { DbxFirebaseLoginContext } from './login.context';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export interface DbxFirebaseLoginButtonConfig {
|
|
10
|
+
text: string;
|
|
11
|
+
iconUrl?: string;
|
|
12
|
+
icon?: string;
|
|
13
|
+
buttonColor?: string;
|
|
14
|
+
buttonTextColor?: string;
|
|
15
|
+
handleLogin: () => Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Login button and action.
|
|
19
|
+
*/
|
|
20
|
+
export declare class DbxFirebaseLoginButtonComponent {
|
|
21
|
+
config: Maybe<DbxFirebaseLoginButtonConfig>;
|
|
22
|
+
get iconUrl(): string | undefined;
|
|
23
|
+
get icon(): string | undefined;
|
|
24
|
+
get text(): string | undefined;
|
|
25
|
+
get buttonColor(): string;
|
|
26
|
+
get buttonTextColor(): string | undefined;
|
|
27
|
+
readonly handleAction: HandleActionFunction;
|
|
28
|
+
onActionSuccess: (value: any) => void;
|
|
29
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginButtonComponent, never>;
|
|
30
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginButtonComponent, "dbx-firebase-login-button", never, { "config": "config"; }, {}, never, never>;
|
|
31
|
+
}
|
|
32
|
+
export declare class DbxFirebaseLoginButtonContainerComponent {
|
|
33
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginButtonContainerComponent, never>;
|
|
34
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginButtonContainerComponent, "dbx-firebase-login-button-container", never, {}, {}, never, ["*"]>;
|
|
35
|
+
}
|
|
36
|
+
export declare const DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE = "\n <dbx-firebase-login-button-container>\n <dbx-firebase-login-button [config]=\"config\"></dbx-firebase-login-button>\n </dbx-firebase-login-button-container>\n";
|
|
37
|
+
export declare abstract class AbstractConfiguredDbxFirebaseLoginButtonDirective implements OnInit {
|
|
38
|
+
readonly dbxFirebaseAuthService: DbxFirebaseAuthService;
|
|
39
|
+
readonly dbxFirebaseAuthLoginService: DbxFirebaseAuthLoginService;
|
|
40
|
+
readonly dbxFirebaseLoginContext: DbxFirebaseLoginContext;
|
|
41
|
+
private _config;
|
|
42
|
+
abstract readonly loginProvider: FirebaseLoginMethodType;
|
|
43
|
+
constructor(dbxFirebaseAuthService: DbxFirebaseAuthService, dbxFirebaseAuthLoginService: DbxFirebaseAuthLoginService, dbxFirebaseLoginContext: DbxFirebaseLoginContext);
|
|
44
|
+
ngOnInit(): void;
|
|
45
|
+
abstract handleLogin(): Promise<any>;
|
|
46
|
+
get providerConfig(): Maybe<import("./login.service").DbxFirebaseAuthLoginProvider<any>>;
|
|
47
|
+
get assetConfig(): import("./login.service").DbxFirebaseAuthLoginProviderAssets;
|
|
48
|
+
get config(): DbxFirebaseLoginButtonConfig;
|
|
49
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractConfiguredDbxFirebaseLoginButtonDirective, never>;
|
|
50
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractConfiguredDbxFirebaseLoginButtonDirective, never, never, {}, {}, never>;
|
|
51
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DbxFirebaseLoginMode, FirebaseLoginMethodCategory, FirebaseLoginMethodType } from './login';
|
|
2
|
+
import { ArrayOrValue, Maybe } from '@dereekb/util';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Pre-configured login component that displays all configured login types.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxFirebaseLoginComponent {
|
|
8
|
+
loginMode: DbxFirebaseLoginMode;
|
|
9
|
+
providerTypes: Maybe<ArrayOrValue<FirebaseLoginMethodType>>;
|
|
10
|
+
omitProviderTypes: Maybe<ArrayOrValue<FirebaseLoginMethodType>>;
|
|
11
|
+
providerCategories: Maybe<ArrayOrValue<FirebaseLoginMethodCategory>>;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginComponent, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginComponent, "dbx-firebase-login", never, { "loginMode": "loginMode"; "providerTypes": "providerTypes"; "omitProviderTypes": "omitProviderTypes"; "providerCategories": "providerCategories"; }, {}, never, never>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ClickableAnchor } from '@dereekb/dbx-core';
|
|
2
|
+
import { EventEmitter } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class DbxFirebaseLoginContextBackButtonComponent {
|
|
5
|
+
readonly onCancel: EventEmitter<void>;
|
|
6
|
+
readonly anchor: ClickableAnchor;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginContextBackButtonComponent, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginContextBackButtonComponent, "dbx-firebase-login-context-back-button", never, {}, { "onCancel": "onCancel"; }, never, never>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AbstractForwardDbxInjectionContextDirective } from "@dereekb/dbx-core";
|
|
2
|
+
import { DbxFirebaseLoginContext } from "./login.context";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* DbxFirebaseLoginContext implementation.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxFirebaseLoginContextDirective extends AbstractForwardDbxInjectionContextDirective implements DbxFirebaseLoginContext {
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginContextDirective, never>;
|
|
9
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<DbxFirebaseLoginContextDirective, "[dbxFirebaseLoginContext]", never, {}, {}, never>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare type FirebaseLoginMethodType = string;
|
|
2
|
+
export declare type FirebaseLoginMethodCategory = string;
|
|
3
|
+
export declare type KnownFirebaseLoginMethodType = 'email' | 'phone' | 'google' | 'facebook' | 'github' | 'twitter' | 'apple' | 'microsoft' | 'anonymous';
|
|
4
|
+
export declare const DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY = "default";
|
|
5
|
+
export declare const OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY = "oauth";
|
|
6
|
+
export declare type KnownFirebaseLoginMethodCategory = typeof DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY | typeof OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY;
|
|
7
|
+
export declare type DbxFirebaseLoginMode = 'login' | 'register';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginEmailComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "email";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginEmailComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginEmailComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { DbxFirebaseEmailRecoveryFormValue } from './login.email.recovery.form.component';
|
|
2
|
+
import { HandleActionFunction, ClickableAnchor } from '@dereekb/dbx-core';
|
|
3
|
+
import { DbxFirebaseAuthService } from './../service/firebase.auth.service';
|
|
4
|
+
import { EventEmitter, OnDestroy } from "@angular/core";
|
|
5
|
+
import { DbxFirebaseLoginContext } from "./login.context";
|
|
6
|
+
import { DbxFirebaseEmailFormValue, DbxFirebaseEmailFormConfig } from './login.email.form.component';
|
|
7
|
+
import { DbxFirebaseLoginMode } from './login';
|
|
8
|
+
import { Maybe } from '@dereekb/util';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export interface DbxFirebaseLoginEmailContentComponentConfig extends DbxFirebaseEmailFormConfig {
|
|
11
|
+
loginMode: DbxFirebaseLoginMode;
|
|
12
|
+
}
|
|
13
|
+
export declare type DbxFirebaseLoginEmailContentMode = 'login' | 'recover' | 'recovering';
|
|
14
|
+
export declare class DbxFirebaseLoginEmailContentComponent implements OnDestroy {
|
|
15
|
+
readonly dbxFirebaseAuthService: DbxFirebaseAuthService;
|
|
16
|
+
readonly config: DbxFirebaseLoginEmailContentComponentConfig;
|
|
17
|
+
readonly formConfig: DbxFirebaseEmailFormConfig;
|
|
18
|
+
emailFormValue: Maybe<DbxFirebaseEmailFormValue>;
|
|
19
|
+
recoveryFormValue: Maybe<DbxFirebaseEmailRecoveryFormValue>;
|
|
20
|
+
private _emailMode;
|
|
21
|
+
readonly emailMode$: import("rxjs").Observable<DbxFirebaseLoginEmailContentMode>;
|
|
22
|
+
readonly forgotAnchor: ClickableAnchor;
|
|
23
|
+
readonly doneOrCancelled: EventEmitter<boolean>;
|
|
24
|
+
constructor(dbxFirebaseAuthService: DbxFirebaseAuthService, config: DbxFirebaseLoginEmailContentComponentConfig);
|
|
25
|
+
ngOnDestroy(): void;
|
|
26
|
+
static openEmailLoginContext(dbxFirebaseLoginContext: DbxFirebaseLoginContext, config: DbxFirebaseLoginEmailContentComponentConfig): Promise<boolean>;
|
|
27
|
+
get loginMode(): DbxFirebaseLoginMode;
|
|
28
|
+
get isLoginMode(): boolean;
|
|
29
|
+
get isRegisterMode(): boolean;
|
|
30
|
+
get buttonText(): "Register" | "Log In";
|
|
31
|
+
readonly handleLoginAction: HandleActionFunction;
|
|
32
|
+
openRecovery(): void;
|
|
33
|
+
readonly handleRecoveryAction: HandleActionFunction;
|
|
34
|
+
onRecoveringSuccess(): void;
|
|
35
|
+
onCancel(): void;
|
|
36
|
+
onCancelReset(): void;
|
|
37
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginEmailContentComponent, never>;
|
|
38
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginEmailContentComponent, "ng-component", never, {}, {}, never, never>;
|
|
39
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { OnDestroy } from "@angular/core";
|
|
2
|
+
import { TextPasswordFieldConfig, AbstractAsyncFormlyFormDirective, DefaultUsernameLoginFieldsValue } from "@dereekb/dbx-form";
|
|
3
|
+
import { Maybe } from "@dereekb/util";
|
|
4
|
+
import { FormlyFieldConfig } from "@ngx-formly/core";
|
|
5
|
+
import { Observable } from "rxjs";
|
|
6
|
+
import { DbxFirebaseLoginMode } from "./login";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export interface DbxFirebaseEmailFormValue extends DefaultUsernameLoginFieldsValue {
|
|
9
|
+
}
|
|
10
|
+
export interface DbxFirebaseEmailFormConfig {
|
|
11
|
+
loginMode: DbxFirebaseLoginMode;
|
|
12
|
+
passwordConfig?: TextPasswordFieldConfig;
|
|
13
|
+
}
|
|
14
|
+
export declare class DbxFirebaseEmailFormComponent extends AbstractAsyncFormlyFormDirective<DbxFirebaseEmailFormValue> implements OnDestroy {
|
|
15
|
+
private _config;
|
|
16
|
+
readonly fields$: Observable<Maybe<FormlyFieldConfig[]>>;
|
|
17
|
+
set config(config: DbxFirebaseEmailFormConfig);
|
|
18
|
+
ngOnDestroy(): void;
|
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseEmailFormComponent, never>;
|
|
20
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseEmailFormComponent, "dbx-firebase-email-form", never, { "config": "config"; }, {}, never, never>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AbstractSyncFormlyFormDirective } from "@dereekb/dbx-form";
|
|
2
|
+
import { FormlyFieldConfig } from "@ngx-formly/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export interface DbxFirebaseEmailRecoveryFormValue {
|
|
5
|
+
email: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class DbxFirebaseEmailRecoveryFormComponent extends AbstractSyncFormlyFormDirective<DbxFirebaseEmailRecoveryFormValue> {
|
|
8
|
+
readonly fields: FormlyFieldConfig[];
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseEmailRecoveryFormComponent, never>;
|
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseEmailRecoveryFormComponent, "dbx-firebase-email-recovery-form", never, {}, {}, never, never>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginFacebookComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "facebook";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginFacebookComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginFacebookComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginGitHubComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "github";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginGitHubComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginGitHubComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginGoogleComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "google";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginGoogleComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginGoogleComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { DbxFirebaseAuthLoginProvider, DbxFirebaseAuthLoginService } from './login.service';
|
|
3
|
+
import { DbxFirebaseLoginMode, FirebaseLoginMethodType, FirebaseLoginMethodCategory } from './login';
|
|
4
|
+
import { OnDestroy } from "@angular/core";
|
|
5
|
+
import { Maybe, ArrayOrValue } from '@dereekb/util';
|
|
6
|
+
import { DbxInjectionComponentConfig } from '@dereekb/dbx-core';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
/**
|
|
9
|
+
* Pre-configured login component that displays all configured login types.
|
|
10
|
+
*/
|
|
11
|
+
export declare class DbxFirebaseLoginListComponent implements OnDestroy {
|
|
12
|
+
readonly dbxFirebaseAuthLoginService: DbxFirebaseAuthLoginService;
|
|
13
|
+
private _loginMode;
|
|
14
|
+
private _inputProviderCategories;
|
|
15
|
+
private _omitProviderTypes;
|
|
16
|
+
private _inputProviderTypes;
|
|
17
|
+
readonly providerTypes$: Observable<string[]>;
|
|
18
|
+
readonly providers$: Observable<DbxFirebaseAuthLoginProvider<any>[]>;
|
|
19
|
+
readonly providerInjectionConfigs$: Observable<DbxInjectionComponentConfig[]>;
|
|
20
|
+
constructor(dbxFirebaseAuthLoginService: DbxFirebaseAuthLoginService);
|
|
21
|
+
ngOnDestroy(): void;
|
|
22
|
+
set loginMode(loginMode: DbxFirebaseLoginMode);
|
|
23
|
+
set providerTypes(providerTypes: Maybe<ArrayOrValue<FirebaseLoginMethodType>>);
|
|
24
|
+
set omitProviderTypes(providerTypes: Maybe<ArrayOrValue<FirebaseLoginMethodType>>);
|
|
25
|
+
set providerCategories(providerCategories: Maybe<ArrayOrValue<FirebaseLoginMethodCategory>>);
|
|
26
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginListComponent, never>;
|
|
27
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginListComponent, "dbx-firebase-login-list", never, { "loginMode": "loginMode"; "providerTypes": "providerTypes"; "omitProviderTypes": "omitProviderTypes"; "providerCategories": "providerCategories"; }, {}, never, never>;
|
|
28
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginMicrosoftComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "microsoft";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginMicrosoftComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginMicrosoftComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { TextPasswordFieldPasswordParameters } from "@dereekb/dbx-form";
|
|
2
|
+
export interface DbxFirebaseAuthLoginPasswordConfig extends TextPasswordFieldPasswordParameters {
|
|
3
|
+
}
|
|
4
|
+
export declare const DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG: DbxFirebaseAuthLoginPasswordConfig;
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Maybe, ArrayOrValue } from "@dereekb/util";
|
|
2
|
+
import { InjectionToken, Type } from "@angular/core";
|
|
3
|
+
import { FirebaseLoginMethodCategory, FirebaseLoginMethodType, KnownFirebaseLoginMethodType } from "./login";
|
|
4
|
+
import { DbxFirebaseAuthLoginPasswordConfig } from "./login.password";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Default providers to inject.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN: InjectionToken<unknown>;
|
|
10
|
+
export declare const DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN: InjectionToken<unknown>;
|
|
11
|
+
export declare const DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN: InjectionToken<unknown>;
|
|
12
|
+
export interface DbxFirebaseAuthLoginProvider<D = any> {
|
|
13
|
+
/**
|
|
14
|
+
* Category for this login method.
|
|
15
|
+
*/
|
|
16
|
+
readonly category?: FirebaseLoginMethodCategory;
|
|
17
|
+
/**
|
|
18
|
+
* Login method key for this type.
|
|
19
|
+
*/
|
|
20
|
+
readonly loginMethodType: KnownFirebaseLoginMethodType | FirebaseLoginMethodType;
|
|
21
|
+
/**
|
|
22
|
+
* Login/Registration class to use.
|
|
23
|
+
*/
|
|
24
|
+
readonly componentClass: Type<any>;
|
|
25
|
+
/**
|
|
26
|
+
* Custom registration type to use instead. If false, registration is not allowd for this type.
|
|
27
|
+
*/
|
|
28
|
+
readonly registrationComponentClass?: Type<any> | false;
|
|
29
|
+
/**
|
|
30
|
+
* Custom data available to the components.
|
|
31
|
+
*
|
|
32
|
+
* Components are responsible for knowing the typing information of this data.
|
|
33
|
+
*/
|
|
34
|
+
readonly componentData?: D;
|
|
35
|
+
/**
|
|
36
|
+
* Asset configuration for this type.
|
|
37
|
+
*/
|
|
38
|
+
readonly assets: DbxFirebaseAuthLoginProviderAssets;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Asset configurations for a provider.
|
|
42
|
+
*/
|
|
43
|
+
export interface DbxFirebaseAuthLoginProviderAssets {
|
|
44
|
+
/**
|
|
45
|
+
* URL of the logo to use.
|
|
46
|
+
*/
|
|
47
|
+
readonly logoUrl?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Icon to use in place of the logo.
|
|
50
|
+
*/
|
|
51
|
+
readonly loginIcon?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Log in text to display next to the logo.
|
|
54
|
+
*/
|
|
55
|
+
readonly loginText?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Optional background color to apply.
|
|
58
|
+
*/
|
|
59
|
+
readonly backgroundColor?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Optional background color to apply.
|
|
62
|
+
*/
|
|
63
|
+
readonly textColor?: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Service used for registering components used for logging in.
|
|
67
|
+
*
|
|
68
|
+
* Default providers can be configured by the DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN injectable value.
|
|
69
|
+
*/
|
|
70
|
+
export declare class DbxFirebaseAuthLoginService {
|
|
71
|
+
readonly termsComponentClass: Type<any>;
|
|
72
|
+
private _enableAll;
|
|
73
|
+
private _passwordConfig;
|
|
74
|
+
private _providers;
|
|
75
|
+
private _assets;
|
|
76
|
+
private _enabled;
|
|
77
|
+
constructor(defaultProviders: DbxFirebaseAuthLoginProvider[], passwordConfig: DbxFirebaseAuthLoginPasswordConfig, termsComponentClass?: Type<any>);
|
|
78
|
+
/**
|
|
79
|
+
* Used to register a provider. If a provider is already registered, this will override it by default.
|
|
80
|
+
*
|
|
81
|
+
* @param provider
|
|
82
|
+
* @param override
|
|
83
|
+
*/
|
|
84
|
+
register(provider: DbxFirebaseAuthLoginProvider, override?: boolean): boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Updates the assets for a provider type.
|
|
87
|
+
*
|
|
88
|
+
* @param type
|
|
89
|
+
* @param assets
|
|
90
|
+
*/
|
|
91
|
+
updateAssetsForProvider(type: FirebaseLoginMethodType, assets: Partial<DbxFirebaseAuthLoginProviderAssets>): void;
|
|
92
|
+
/**
|
|
93
|
+
* Enables all providers and any providers that will be registered.
|
|
94
|
+
*/
|
|
95
|
+
setEnableAll(enableAll?: boolean): void;
|
|
96
|
+
clearEnabled(): void;
|
|
97
|
+
/**
|
|
98
|
+
* Enables all of the specified types.
|
|
99
|
+
*
|
|
100
|
+
* @param types
|
|
101
|
+
*/
|
|
102
|
+
enable(types: ArrayOrValue<FirebaseLoginMethodType>): void;
|
|
103
|
+
disable(types: ArrayOrValue<FirebaseLoginMethodType>): void;
|
|
104
|
+
getRegisteredTypes(): FirebaseLoginMethodType[];
|
|
105
|
+
getEnabledTypes(): FirebaseLoginMethodType[];
|
|
106
|
+
getLoginProvider(type: FirebaseLoginMethodType): Maybe<DbxFirebaseAuthLoginProvider>;
|
|
107
|
+
getLoginProviders(types: Iterable<FirebaseLoginMethodType>): DbxFirebaseAuthLoginProvider[];
|
|
108
|
+
getRegisterProvider(type: FirebaseLoginMethodType): Maybe<DbxFirebaseAuthLoginProvider>;
|
|
109
|
+
getRegisterProviders(types: Iterable<FirebaseLoginMethodType>): DbxFirebaseAuthLoginProvider[];
|
|
110
|
+
getProviderAssets(type: FirebaseLoginMethodType): Maybe<DbxFirebaseAuthLoginProviderAssets>;
|
|
111
|
+
getPasswordConfig(): DbxFirebaseAuthLoginPasswordConfig;
|
|
112
|
+
setPasswordConfig(passwordConfig: DbxFirebaseAuthLoginPasswordConfig): void;
|
|
113
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseAuthLoginService, [{ optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
114
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DbxFirebaseAuthLoginService>;
|
|
115
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DbxInjectionComponentConfig } from '@dereekb/dbx-core';
|
|
2
|
+
import { DbxFirebaseAuthLoginService } from "./login.service";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class DbxFirebaseLoginTermsComponent {
|
|
5
|
+
readonly dbxFirebaseAuthLoginService: DbxFirebaseAuthLoginService;
|
|
6
|
+
readonly config: DbxInjectionComponentConfig;
|
|
7
|
+
constructor(dbxFirebaseAuthLoginService: DbxFirebaseAuthLoginService);
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginTermsComponent, never>;
|
|
9
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginTermsComponent, "dbx-firebase-login-terms", never, {}, {}, never, never>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ClickableAnchor } from '@dereekb/dbx-core';
|
|
2
|
+
import { DbxFirebaseLoginTermsConfig } from './login.terms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class DbxFirebaseLoginTermsSimpleComponent {
|
|
5
|
+
readonly dbxFirebaseLoginTermsConfig: DbxFirebaseLoginTermsConfig;
|
|
6
|
+
readonly tosAnchor: ClickableAnchor;
|
|
7
|
+
readonly privacyAnchor: ClickableAnchor;
|
|
8
|
+
constructor(dbxFirebaseLoginTermsConfig: DbxFirebaseLoginTermsConfig);
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginTermsSimpleComponent, never>;
|
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginTermsSimpleComponent, "ng-component", never, {}, {}, never, never>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseLoginTwitterComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "twitter";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseLoginTwitterComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseLoginTwitterComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FirebaseLoginMethodCategory, FirebaseLoginMethodType } from './login';
|
|
2
|
+
import { ArrayOrValue, Maybe } from '@dereekb/util';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Pre-configured register component that displays all configured login types and their registration components.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxFirebaseRegisterComponent {
|
|
8
|
+
providerTypes: Maybe<ArrayOrValue<FirebaseLoginMethodType>>;
|
|
9
|
+
omitProviderTypes: Maybe<ArrayOrValue<FirebaseLoginMethodType>>;
|
|
10
|
+
providerCategories: Maybe<ArrayOrValue<FirebaseLoginMethodCategory>>;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseRegisterComponent, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseRegisterComponent, "dbx-firebase-register", never, { "providerTypes": "providerTypes"; "omitProviderTypes": "omitProviderTypes"; "providerCategories": "providerCategories"; }, {}, never, never>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractConfiguredDbxFirebaseLoginButtonDirective } from "./login.button.component";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class DbxFirebaseRegisterEmailComponent extends AbstractConfiguredDbxFirebaseLoginButtonDirective {
|
|
4
|
+
readonly loginProvider = "email";
|
|
5
|
+
handleLogin(): Promise<any>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseRegisterEmailComponent, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseRegisterEmailComponent, "ng-component", never, {}, {}, never, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AuthUserState } from '@dereekb/dbx-core';
|
|
2
|
+
import { IdTokenResult } from 'firebase/auth';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { DbxFirebaseAuthService } from "./firebase.auth.service";
|
|
5
|
+
/**
|
|
6
|
+
* Derives a user state from the input firebase auth service.
|
|
7
|
+
*
|
|
8
|
+
* @param dbxFirebaseAuthService
|
|
9
|
+
* @param stateForLoggedInUser Optional function that returns an observable for the user's state if they are logged in and not an anonymous user.
|
|
10
|
+
* @returns
|
|
11
|
+
*/
|
|
12
|
+
export declare function authUserStateFromFirebaseAuthService(dbxFirebaseAuthService: DbxFirebaseAuthService, stateForLoggedInUser?: (dbxFirebaseAuthService: DbxFirebaseAuthService) => Observable<AuthUserState>): Observable<AuthUserState>;
|
|
13
|
+
/**
|
|
14
|
+
* Convenience function to read a value from an IdTokenResult off of the current user.
|
|
15
|
+
*
|
|
16
|
+
* @param dbxFirebaseAuthService
|
|
17
|
+
* @param readBooleanFromIdToken
|
|
18
|
+
* @param defaultValue
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
export declare function readValueFromIdToken<T>(dbxFirebaseAuthService: DbxFirebaseAuthService, readBooleanFromIdToken: (idToken: IdTokenResult) => Observable<T>, defaultValue: T): Observable<T>;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { AuthUserState, DbxAuthService, AuthUserIdentifier } from "@dereekb/dbx-core";
|
|
2
|
+
import { Auth, User, IdTokenResult, ParsedToken, AuthProvider, PopupRedirectResolver, UserCredential } from '@angular/fire/auth';
|
|
3
|
+
import { Observable } from "rxjs";
|
|
4
|
+
import { AuthRoleSet, Maybe } from "@dereekb/util";
|
|
5
|
+
import { AuthUserInfo } from '../auth';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export declare abstract class DbxFirebaseAuthServiceDelegate {
|
|
8
|
+
abstract authUserStateObs(dbxFirebaseAuthService: DbxFirebaseAuthService): Observable<AuthUserState>;
|
|
9
|
+
abstract authRolesObs(dbxFirebaseAuthService: DbxFirebaseAuthService): Observable<AuthRoleSet>;
|
|
10
|
+
abstract isOnboarded(dbxFirebaseAuthService: DbxFirebaseAuthService): Observable<boolean>;
|
|
11
|
+
}
|
|
12
|
+
export declare const DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE: DbxFirebaseAuthServiceDelegate;
|
|
13
|
+
export declare class DbxFirebaseAuthService implements DbxAuthService {
|
|
14
|
+
readonly firebaseAuth: Auth;
|
|
15
|
+
private readonly _authState$;
|
|
16
|
+
readonly currentAuthUser$: Observable<Maybe<User>>;
|
|
17
|
+
readonly currentAuthUserInfo$: Observable<Maybe<AuthUserInfo>>;
|
|
18
|
+
readonly authUser$: Observable<User>;
|
|
19
|
+
readonly authUserInfo$: Observable<AuthUserInfo>;
|
|
20
|
+
readonly hasAuthUser$: Observable<boolean>;
|
|
21
|
+
readonly isAnonymousUser$: Observable<boolean>;
|
|
22
|
+
readonly isNotAnonymousUser$: Observable<boolean>;
|
|
23
|
+
readonly isLoggedIn$: Observable<boolean>;
|
|
24
|
+
readonly isNotLoggedIn$: Observable<boolean>;
|
|
25
|
+
readonly onLogIn$: Observable<void>;
|
|
26
|
+
readonly onLogOut$: Observable<void>;
|
|
27
|
+
readonly userIdentifier$: Observable<AuthUserIdentifier>;
|
|
28
|
+
readonly idTokenResult$: Observable<IdTokenResult>;
|
|
29
|
+
readonly claims$: Observable<ParsedToken>;
|
|
30
|
+
readonly authUserState$: Observable<AuthUserState>;
|
|
31
|
+
readonly authRoles$: Observable<AuthRoleSet>;
|
|
32
|
+
readonly isOnboarded$: Observable<boolean>;
|
|
33
|
+
constructor(firebaseAuth: Auth, delegate: DbxFirebaseAuthServiceDelegate);
|
|
34
|
+
logInWithGoogle(): Promise<UserCredential>;
|
|
35
|
+
logInWithFacebook(): Promise<UserCredential>;
|
|
36
|
+
logInWithTwitter(): Promise<UserCredential>;
|
|
37
|
+
logInWithGithub(): Promise<UserCredential>;
|
|
38
|
+
logInWithApple(): Promise<UserCredential>;
|
|
39
|
+
logInWithMicrosoft(): Promise<UserCredential>;
|
|
40
|
+
logInWithPhone(): Promise<UserCredential>;
|
|
41
|
+
logInWithPopup(provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;
|
|
42
|
+
registerWithEmailAndPassword(email: string, password: string): Promise<UserCredential>;
|
|
43
|
+
sendPasswordResetEmail(email: string): Promise<void>;
|
|
44
|
+
logInWithEmailAndPassword(email: string, password: string): Promise<UserCredential>;
|
|
45
|
+
logInAsAnonymous(): Promise<UserCredential>;
|
|
46
|
+
logOut(): Promise<void>;
|
|
47
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseAuthService, [null, { optional: true; }]>;
|
|
48
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DbxFirebaseAuthService>;
|
|
49
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export interface DbxFirebaseEmulatorConfig {
|
|
2
|
+
/**
|
|
3
|
+
* Port to target.
|
|
4
|
+
*/
|
|
5
|
+
port: number;
|
|
6
|
+
/**
|
|
7
|
+
* Defaults to localhost if not provided.
|
|
8
|
+
*/
|
|
9
|
+
host?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface DbxFirebaseEmulatorsConfig {
|
|
12
|
+
/**
|
|
13
|
+
* Whether or not to enable the emulators.
|
|
14
|
+
*/
|
|
15
|
+
useEmulators?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Default host to target. Defaults to localhost if not provided.
|
|
18
|
+
*/
|
|
19
|
+
host?: string;
|
|
20
|
+
/**
|
|
21
|
+
* emulator UI configuration
|
|
22
|
+
*/
|
|
23
|
+
ui?: DbxFirebaseEmulatorConfig;
|
|
24
|
+
/**
|
|
25
|
+
* Auth emulator configuration
|
|
26
|
+
*/
|
|
27
|
+
auth?: DbxFirebaseEmulatorConfig;
|
|
28
|
+
/**
|
|
29
|
+
* Firestore emulator configuration
|
|
30
|
+
*/
|
|
31
|
+
firestore?: DbxFirebaseEmulatorConfig;
|
|
32
|
+
/**
|
|
33
|
+
* Firestore emulator configuration
|
|
34
|
+
*/
|
|
35
|
+
storage?: DbxFirebaseEmulatorConfig;
|
|
36
|
+
/**
|
|
37
|
+
* Functions emulator configuration
|
|
38
|
+
*/
|
|
39
|
+
functions?: DbxFirebaseEmulatorConfig;
|
|
40
|
+
/**
|
|
41
|
+
* Database emulator configuration
|
|
42
|
+
*/
|
|
43
|
+
database?: DbxFirebaseEmulatorConfig;
|
|
44
|
+
}
|
|
45
|
+
export declare abstract class DbxFirebaseParsedEmulatorsConfig implements DbxFirebaseEmulatorsConfig {
|
|
46
|
+
useEmulators?: boolean;
|
|
47
|
+
auth?: Required<DbxFirebaseEmulatorConfig>;
|
|
48
|
+
firestore?: Required<DbxFirebaseEmulatorConfig>;
|
|
49
|
+
storage?: Required<DbxFirebaseEmulatorConfig>;
|
|
50
|
+
functions?: Required<DbxFirebaseEmulatorConfig>;
|
|
51
|
+
database?: Required<DbxFirebaseEmulatorConfig>;
|
|
52
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ModuleWithProviders } from '@angular/core';
|
|
2
|
+
import { DbxFirebaseEmulatorsConfig } from './emulators';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Used to configure the DbxFirebaseEmulatorsConfig provider.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxFirebaseEmulatorModule {
|
|
8
|
+
static forRoot(config: DbxFirebaseEmulatorsConfig): ModuleWithProviders<DbxFirebaseEmulatorModule>;
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseEmulatorModule, never>;
|
|
10
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<DbxFirebaseEmulatorModule, never, never, never>;
|
|
11
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<DbxFirebaseEmulatorModule>;
|
|
12
|
+
}
|