Skip to content

Commit a0f7311

Browse files
committed
Workaround for --prod build error #76
1 parent 5e40126 commit a0f7311

3 files changed

Lines changed: 34 additions & 12 deletions

File tree

README.MD

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,19 @@ import {BrowserModule} from '@angular/platform-browser';
3030
import {NgModule} from '@angular/core';
3131
import {FormsModule} from '@angular/forms';
3232
import {AppComponent} from './app.component';
33-
import {FirebaseUIModule} from 'firebaseui-angular';
3433
import {environment} from '../environments/environment';
3534
import {AppRoutingModule} from './app-routing.module';
36-
import * as firebase from 'firebase/app/dist/index.esm';
37-
import * as firebaseui from 'firebaseui/dist/firebaseui.js';
35+
36+
37+
import {FirebaseUIModule} from 'firebaseui-angular';
38+
import * as firebase from 'firebase/app';
39+
import * as firebaseui from 'firebaseui';
40+
// currently there is a bug while building the app with --prod
41+
// - https://github.com/RaphaelJenni/FirebaseUI-Angular/issues/76
42+
// the plugin exposes the two libraries as well. You can use those:
43+
import {FirebaseUIModule, firebase, firebaseui} from 'firebaseui-angular';
44+
45+
3846
import {AngularFireModule} from '@angular/fire';
3947
import {AngularFireAuthModule} from '@angular/fire/auth';
4048

@@ -222,6 +230,18 @@ $ npm run lint
222230
There are test files, but they are empty at the moment.
223231

224232
## Troubleshoot
233+
### Prod build error
234+
```
235+
ERROR in ./src/app/app.module.ngfactory.js
236+
Module not found: Error: Can't resolve 'firebase/index' in '...'
237+
ERROR in ./src/app/app.module.ngfactory.js
238+
Module not found: Error: Can't resolve 'firebaseui/dist/index' in '...'
239+
```
240+
241+
Use the firebase and firebaseui instances exposed by the plugin:
242+
243+
`import {..., firebase, firebaseui} from 'firebaseui-angular';`
244+
225245
### CSS not loaded
226246
If you have added the css to the angular.json but nothing happened. Try to restart the server (`Ctrl-C` and `ng serve`)
227247

projects/firebaseui-angular-library/src/lib/firebaseui-angular-library.helper.ts

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,12 @@
33
* Copyright (c) 2017 Raphael Jenni
44
*/
55

6-
import * as firebase from 'firebase';
6+
import * as firebaseOriginal from 'firebase/app';
77
import UserCredential = firebase.auth.UserCredential;
8-
import * as firebaseui from 'firebaseui';
8+
import * as firebaseuiOriginal from 'firebaseui';
9+
10+
export const firebase = firebaseOriginal;
11+
export const firebaseui = firebaseuiOriginal;
912

1013
/**
1114
* @deprecated Please use native configuration of firebaseui (firebaseui.auth.Config)
@@ -25,7 +28,7 @@ export class FirebaseUIAuthConfig {
2528
disableSignInSuccessCallback?: boolean;
2629
}
2730

28-
export type NativeFirebaseUIAuthConfig = firebaseui.auth.Config;
31+
export type NativeFirebaseUIAuthConfig = firebaseuiOriginal.auth.Config;
2932

3033

3134
export class FirebaseUISignInSuccessWithAuthResult {
@@ -35,15 +38,15 @@ export class FirebaseUISignInSuccessWithAuthResult {
3538

3639
export class FirebaseUISignInFailure {
3740
code: string;
38-
credential: firebase.auth.AuthCredential;
41+
credential: firebaseOriginal.auth.AuthCredential;
3942
}
4043

4144
/**
4245
* @deprecated Use {@link FirebaseUISignInSuccessWithAuthResult}
4346
*/
4447
export class FirebaseUISignInSuccess {
45-
currentUser: firebase.User;
46-
credential: firebase.auth.AuthCredential;
48+
currentUser: firebaseOriginal.User;
49+
credential: firebaseOriginal.auth.AuthCredential;
4750
redirectUrl: string;
4851
}
4952

src/app/app.module.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,13 @@ import {BrowserModule} from '@angular/platform-browser';
22
import {NgModule} from '@angular/core';
33
import {FormsModule} from '@angular/forms';
44
import {AppComponent} from './app.component';
5-
import {FirebaseUIModule} from 'firebaseui-angular';
5+
import {FirebaseUIModule, firebase, firebaseui} from 'firebaseui-angular';
66
import {environment} from '../environments/environment';
77
import {AppRoutingModule} from './app-routing.module';
8-
import * as firebase from 'firebase/app';
9-
import * as firebaseui from 'firebaseui';
108
import {AngularFireModule} from '@angular/fire';
119
import {AngularFireAuthModule} from '@angular/fire/auth';
1210

11+
1312
const firebaseUiAuthConfig: firebaseui.auth.Config = {
1413
signInFlow: 'popup',
1514
signInOptions: [

0 commit comments

Comments
 (0)