error TS2300: Duplicate identifier 'type' in Angular. while running ng build
- Dominant language
- TypeScript
- Stars
- 7.8k
- Forks
- 2.2k
- Avg merge
- 22h 28m
- Merged PRs (30d)
- 6
Description
### Version info
**Angular: 12.2.0**
**Firebase: 9.0.0**
**@angular/fire: 7.0.0**
**Error: node_modules/@firebase/auth-compat/dist/auth-compat/index.d.ts:53:10 - error TS2300: Duplicate identifier 'type'.**
`import { type User, type Unsubscribe, type ActionCodeInfo, type UserCredential, type Auth, type IdTokenResult, type MultiFactorError, type MultiFactorResolver, type PopupRedirectResolver, type Dependencies, type AuthCredential, type ApplicationVerifier, type ConfirmationResult, type AuthProvider, type MultiFactorUser, type NextOrObserver, type ErrorFn, type CompleteFn, type ActionCodeSettings, type Persistence, type PhoneAuthCredential } from "@firebase/auth";`
**My package.json**
`"dependencies": {
"@angular/animations": "^11.2.9",
"@angular/cdk": "^13.0.2",
"@angular/common": "~12.2.0",
"@angular/compiler": "~12.2.0",
"@angular/core": "~12.2.0",
"@angular/fire": "^7.2.0",
"@angular/forms": "~12.2.0",
"@angular/material": "^11.2.12",
"@angular/platform-browser": "~12.2.0",
"@angular/platform-browser-dynamic": "~12.2.0",
"@angular/router": "~12.2.0",
"@ng-bootstrap/ng-bootstrap": "^10.0.0",
"angularfire2": "^5.4.2",
"aws-sdk": "^2.1081.0",
"bootstrap": "^5.1.3",
"concurrently": "^6.2.1",
"cors": "^2.8.5",
"file-saver": "^2.0.5",
"firebase": "^9.4.1",
"http": "0.0.1-security",
"http-client": "^4.3.1",
"http-server": "^13.0.2",
"karma-chai": "^0.1.0",
"karma-mocha": "^2.0.1",
"karma-spec-reporter": "0.0.32",
"karma-viewport": "^1.0.8",
"mocha": "^9.1.1",
"ngx-toastr": "^14.1.4",
"rxjs": "~6.6.0",
"tslib": "^2.3.0",
"util": "^0.12.4",
"uuid-generator-ts": "^1.1.0",
"zone.js": "~0.11.4"
},
"devDependencies": {
"@angular-devkit/build-angular": "~12.2.6",
"@angular/cli": "~12.2.6",
"@angular/compiler-cli": "~12.2.0",
"@types/file-saver": "^2.0.5",
"@types/jasmine": "~3.8.0",
"@types/node": "^12.20.46",
"@types/uuid": "^8.3.4",
"jasmine-core": "~3.8.0",
"karma": "~6.3.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage": "~2.0.3",
"karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "~1.7.0",
"typescript": "~4.3.5"
`
**My tsconfig.json**
`{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"forceConsistentCasingInFileNames": true,
"strict": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"moduleResolution": "node",
"importHelpers": true,
"target": "es2017",
"module": "es2020",
"lib": [
"es2018",
"dom"
]
},
"angularCompilerOptions": {
"enableI18nLegacyMessageIdFormat": false,
"strictInjectionParameters": true,
"strictInputAccessModifiers": true,
"strictTemplates": false
}
}`
after i **add skipLipCheck: true** in **tsconfig.json** file, i get below error.
`Error: node_modules/@firebase/auth-compat/dist/auth-compat/index.d.ts:53:421 - error TS1005: ',' expected.`
`import { type User, type Unsubscribe, type ActionCodeInfo, type UserCredential, type Auth, type IdTokenResult, type MultiFactorError, type MultiFactorResolver, type PopupRedirectResolver, type Dependencies, type AuthCredential, type ApplicationVerifier, type ConfirmationResult, type AuthProvider, type MultiFactorUser, type NextOrObserver, type ErrorFn, type CompleteFn, type ActionCodeSettings, type Persistence, type PhoneAuthCredential } from "@firebase/auth";`
How to fix this error?
Contributor guide
Research direction
Start with package.json and tsconfig.json, then run ng build to reproduce the TypeScript errors from @firebase/auth-compat/dist/auth-compat/index.d.ts. Check the Angular, TypeScript, Firebase, and @angular/fire versions against the reported syntax and duplicate-identifier errors; done means the project builds without these errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, firebase, typescript
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100