title: Angular 11 firebase site not launching
body: <p>I've been working on an Angular11 firebase website, and I have managed to break something that has completely lost me. I did an npm audit that managed to break everything</p>
  <p>I've tried removing and reinstalling everything I can, as well as starting a new project and readding</p>
  <p>The Error:</p>
  <pre><code>TypeError: Cannot read property 'toString' of undefined
      at new AngularFireModule (c:\nodejs\pt-web\node_modules\@angular\fire\__ivy_ngcc__\fesm2015\angular-fire.js:481:17)
      at Object.factory (c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:11332:1)
      at R3Injector.hydrate (c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:11385:1)
      at R3Injector.get (c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:11205:1)
      at c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:11242:1
      at Set.forEach (&lt;anonymous&gt;)
      at R3Injector._resolveInjectorDefTypes (c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:11242:1)
      at new NgModuleRef$1 (c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:25228:1)
      at NgModuleFactory$1.create (c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:25282:1)
      at http://localhost:4200/vendor.js:114008:45 {stack: 'TypeError: Cannot read property 'toString' of… at http://localhost:4200/vendor.js:114008:45', message: 'Cannot read property 'toString' of undefined'}
  arg0: TypeError: Cannot read property 'toString' of undefined
      at new AngularFireModule (http://localhost:4200/vendor.js:138898:118)
      at Object.factory (http://localhost:4200/vendor.js:96231:58)
      at R3Injector.hydrate (http://localhost:4200/vendor.js:96284:35)
      at R3Injector.get (http://localhost:4200/vendor.js:96104:33)
      at http://localhost:4200/vendor.js:96141:55
      at Set.forEach (&lt;anonymous&gt;)
      at R3Injector._resolveInjectorDefTypes (http://localhost:4200/vendor.js:96141:31)
      at new NgModuleRef$1 (http://localhost:4200/vendor.js:110127:26)
      at NgModuleFactory$1.create (http://localhost:4200/vendor.js:110181:16)
      at http://localhost:4200/vendor.js:114008:45 {stack: 'TypeError: Cannot read property 'toString' of… at http://localhost:4200/vendor.js:114008:45', message: 'Cannot read property 'toString' of undefined'}
  message: 'Cannot read property 'toString' of undefined'
  stack: 'TypeError: Cannot read property 'toString' of undefined\n    at new AngularFireModule (http://localhost:4200/vendor.js:138898:118)\n    at Object.factory (http://localhost:4200/vendor.js:96231:58)\n    at R3Injector.hydrate (http://localhost:4200/vendor.js:96284:35)\n    at R3Injector.get (http://localhost:4200/vendor.js:96104:33)\n    at http://localhost:4200/vendor.js:96141:55\n    at Set.forEach (&lt;anonymous&gt;)\n    at R3Injector._resolveInjectorDefTypes (http://localhost:4200/vendor.js:96141:31)\n    at new NgModuleRef$1 (http://localhost:4200/vendor.js:110127:26)\n    at NgModuleFactory$1.create (http://localhost:4200/vendor.js:110181:16)\n    at http://localhost:4200/vendor.js:114008:45'
  __proto__: Error
  &lt;anonymous&gt; @ c:\nodejs\pt-web\src\main.ts:12:25
  invoke @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:364
  run @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:123
  &lt;anonymous&gt; @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:857
  invokeTask @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:399
  runTask @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:167
  drainMicroTaskQueue @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:569
  ◀ Promise.then ▶
  scheduleMicroTask @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:552
  scheduleTask @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:388
  scheduleTask @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:210
  scheduleMicroTask @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:230
  scheduleResolveOrReject @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:847
  then @ c:\nodejs\pt-web\node_modules\zone.js\dist\zone-evergreen.js:979
  bootstrapModule @ c:\nodejs\pt-web\node_modules\@angular\core\__ivy_ngcc__\fesm2015\core.js:29159
  zUnb @ c:\nodejs\pt-web\src\main.ts:11:26
  __webpack_require__ @ c:\nodejs\pt-web\webpack\bootstrap:84
  0 @ localhost꞉4200/main.js:11:18
  __webpack_require__ @ c:\nodejs\pt-web\webpack\bootstrap:84
  checkDeferredModules @ c:\nodejs\pt-web\webpack\bootstrap:45
  webpackJsonpCallback @ c:\nodejs\pt-web\webpack\bootstrap:32
  &lt;anonymous&gt; @ localhost꞉4200/main.js:1:57
  [WDS] Live Reloading enabled.
  </code></pre>
  <p>package.json</p>
  <pre><code>{
    &quot;name&quot;: &quot;mega-able&quot;,
    &quot;version&quot;: &quot;1.3.0&quot;,
    &quot;scripts&quot;: {
      &quot;ng&quot;: &quot;ng&quot;,
      &quot;start&quot;: &quot;ng serve&quot;,
      &quot;build&quot;: &quot;ng build&quot;,
      &quot;test&quot;: &quot;ng test&quot;,
      &quot;lint&quot;: &quot;ng lint&quot;,
      &quot;e2e&quot;: &quot;ng e2e&quot;
    },
    &quot;private&quot;: true,
    &quot;dependencies&quot;: {
      &quot;@agm/core&quot;: &quot;^1.1.0&quot;,
      &quot;@angular/animations&quot;: &quot;^11.1.2&quot;,
      &quot;@angular/common&quot;: &quot;^11.1.2&quot;,
      &quot;@angular/compiler&quot;: &quot;^11.1.2&quot;,
      &quot;@angular/core&quot;: &quot;^11.2.7&quot;,
      &quot;@angular/fire&quot;: &quot;^6.1.4&quot;,
      &quot;@angular/forms&quot;: &quot;^11.1.2&quot;,
      &quot;@angular/localize&quot;: &quot;^11.2.7&quot;,
      &quot;@angular/platform-browser&quot;: &quot;^11.1.2&quot;,
      &quot;@angular/platform-browser-dynamic&quot;: &quot;^11.1.2&quot;,
      &quot;@angular/router&quot;: &quot;^11.1.2&quot;,
      &quot;@fullcalendar/angular&quot;: &quot;^5.6.0&quot;,
      &quot;@fullcalendar/core&quot;: &quot;^5.6.0&quot;,
      &quot;@fullcalendar/daygrid&quot;: &quot;^5.6.0&quot;,
      &quot;@fullcalendar/interaction&quot;: &quot;^5.6.0&quot;,
      &quot;@fullcalendar/timegrid&quot;: &quot;^5.6.0&quot;,
      &quot;@ng-bootstrap/ng-bootstrap&quot;: &quot;^7.0.0&quot;,
      &quot;@swimlane/ngx-datatable&quot;: &quot;^17.1.0&quot;,
      &quot;angular&quot;: &quot;^1.8.2&quot;,
      &quot;angular-archwizard&quot;: &quot;^6.1.0&quot;,
      &quot;angular-datatables&quot;: &quot;^9.1.1&quot;,
      &quot;angular-pell&quot;: &quot;^0.1.0&quot;,
      &quot;angular-tree-component&quot;: &quot;^8.5.6&quot;,
      &quot;angular2-chartjs&quot;: &quot;^0.5.1&quot;,
      &quot;angular2-text-mask&quot;: &quot;^9.0.0&quot;,
      &quot;bootstrap&quot;: &quot;^4.6.0&quot;,
      &quot;c3&quot;: &quot;^0.7.20&quot;,
      &quot;d3&quot;: &quot;^5.16.0&quot;,
      &quot;datatables.net&quot;: &quot;^1.10.24&quot;,
      &quot;datatables.net-buttons&quot;: &quot;^1.7.0&quot;,
      &quot;datatables.net-buttons-dt&quot;: &quot;^1.7.0&quot;,
      &quot;datatables.net-colreorder&quot;: &quot;^1.5.3&quot;,
      &quot;datatables.net-dt&quot;: &quot;^1.10.24&quot;,
      &quot;datatables.net-responsive&quot;: &quot;^2.2.7&quot;,
      &quot;datatables.net-select&quot;: &quot;^1.3.3&quot;,
      &quot;famfamfam-flags&quot;: &quot;^1.0.0&quot;,
      &quot;firebase&quot;: &quot;^8.3.1&quot;,
      &quot;firebaseui&quot;: &quot;^4.8.0&quot;,
      &quot;font-awesome-scss&quot;: &quot;^1.0.0&quot;,
      &quot;fullcalendar&quot;: &quot;^5.6.0&quot;,
      &quot;hammerjs&quot;: &quot;^2.0.8&quot;,
      &quot;jquery&quot;: &quot;^3.6.0&quot;,
      &quot;jszip&quot;: &quot;^3.6.0&quot;,
      &quot;netmask&quot;: &quot;^2.0.1&quot;,
      &quot;ng-click-outside&quot;: &quot;^6.0.0&quot;,
      &quot;ng-select&quot;: &quot;^1.0.2&quot;,
      &quot;ng2-currency-mask&quot;: &quot;^9.0.2&quot;,
      &quot;ng2-dragula&quot;: &quot;^1.5.0&quot;,
      &quot;ng2-file-upload&quot;: &quot;^1.4.0&quot;,
      &quot;ng2-google-charts&quot;: &quot;^6.1.0&quot;,
      &quot;ng2-nouislider&quot;: &quot;^1.8.3&quot;,
      &quot;ng2-toasty&quot;: &quot;^4.0.3&quot;,
      &quot;ngx-bar-rating&quot;: &quot;^1.1.0&quot;,
      &quot;ngx-chips&quot;: &quot;^2.2.2&quot;,
      &quot;ngx-color-picker&quot;: &quot;^9.1.0&quot;,
      &quot;ngx-custom-validators&quot;: &quot;^9.1.0&quot;,
      &quot;ngx-lightbox&quot;: &quot;^2.2.2&quot;,
      &quot;ngx-perfect-scrollbar&quot;: &quot;^8.0.0&quot;,
      &quot;node-sass&quot;: &quot;^4.14.1&quot;,
      &quot;nouislider&quot;: &quot;^14.6.4&quot;,
      &quot;rxjs&quot;: &quot;^6.6.7&quot;,
      &quot;rxjs-compat&quot;: &quot;^6.6.7&quot;,
      &quot;screenfull&quot;: &quot;^5.1.0&quot;,
      &quot;sweetalert2&quot;: &quot;^9.17.2&quot;,
      &quot;text-mask-addons&quot;: &quot;^3.8.0&quot;,
      &quot;tslib&quot;: &quot;^2.1.0&quot;,
      &quot;zone.js&quot;: &quot;~0.10.3&quot;
    },
    &quot;devDependencies&quot;: {
      &quot;@angular-devkit/architect&quot;: &quot;^0.1102.6&quot;,
      &quot;@angular-devkit/build-angular&quot;: &quot;^0.1101.4&quot;,
      &quot;@angular/cli&quot;: &quot;^11.2.6&quot;,
      &quot;@angular/compiler-cli&quot;: &quot;^11.1.2&quot;,
      &quot;@types/datatables.net&quot;: &quot;^1.10.19&quot;,
      &quot;@types/datatables.net-buttons&quot;: &quot;^1.4.5&quot;,
      &quot;@types/jasmine&quot;: &quot;^3.6.9&quot;,
      &quot;@types/jasminewd2&quot;: &quot;~2.0.3&quot;,
      &quot;@types/jquery&quot;: &quot;^3.5.5&quot;,
      &quot;@types/node&quot;: &quot;^12.20.7&quot;,
      &quot;codelyzer&quot;: &quot;^6.0.1&quot;,
      &quot;firebase-tools&quot;: &quot;^9.8.0&quot;,
      &quot;fuzzy&quot;: &quot;^0.1.3&quot;,
      &quot;inquirer&quot;: &quot;^6.2.2&quot;,
      &quot;inquirer-autocomplete-prompt&quot;: &quot;^1.0.1&quot;,
      &quot;jasmine-core&quot;: &quot;~3.6.0&quot;,
      &quot;jasmine-spec-reporter&quot;: &quot;~5.0.0&quot;,
      &quot;karma&quot;: &quot;~5.2.3&quot;,
      &quot;karma-chrome-launcher&quot;: &quot;~3.1.0&quot;,
      &quot;karma-coverage-istanbul-reporter&quot;: &quot;~3.0.2&quot;,
      &quot;karma-jasmine&quot;: &quot;~4.0.0&quot;,
      &quot;karma-jasmine-html-reporter&quot;: &quot;^1.5.0&quot;,
      &quot;open&quot;: &quot;^7.4.2&quot;,
      &quot;protractor&quot;: &quot;~7.0.0&quot;,
      &quot;ts-node&quot;: &quot;~8.3.0&quot;,
      &quot;tslint&quot;: &quot;^6.1.3&quot;,
      &quot;typescript&quot;: &quot;4.1.2&quot;
    }
  }
  </code></pre>
  <p>main.ts</p>
  <pre><code>import { enableProdMode } from '@angular/core';
  import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
  
  import { AppModule } from './app/app.module';
  import { environment } from './environments/environment';
  
  if (environment.production) {
    enableProdMode();
  }
  
  platformBrowserDynamic().bootstrapModule(AppModule)
    .catch(err =&gt; console.error(err));
  </code></pre>
  <p>I'm completely lost now, hoping someone here can see the obvious thing I'm sure I am missing</p>