feat(kit): replace @angular/fire with vanilla firebase/auth - #11
Merged
Conversation
Skip slot="top" tab bars when auto-selecting positionAnchor so desktop layouts like airlec no longer pull toasts to the header. Co-authored-by: Cursor <cursoragent@cursor.com>
@angular/fire is unmaintained and blocks the Angular upgrade path. Since the auth-firebase entry point was already designed around the KIT_FIREBASE_AUTH seam, swap the SDK provider-locally: initialize firebase/app + firebase/auth directly in provideKitFirebase (getApps guard + useValue bind), and import all auth ops from firebase/auth instead of @angular/fire/auth. Consumers are unchanged. Declare firebase as an optional peerDependency so the app's single firebase copy is shared by the provider, ops, and KIT_FIREBASE_AUTH (avoids the dual-SDK silent no-op). Drop the @angular/fire dependency and the ng-package allowedNonPeerDependencies entry. Co-authored-by: Cursor <cursoragent@cursor.com>
✅ Deploy Preview for rdlabo-ionic-angular-library ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Comment on lines
+5
to
+8
| "@angular/common": "^22.0.0", | ||
| "@angular/core": "^22.0.0", | ||
| "@angular/forms": "^22.0.0", | ||
| "@angular/router": "^22.0.0", |
Contributor
There was a problem hiding this comment.
🔴 公開パッケージのAngular最低バージョンが存在しないバージョンに引き上げられ、全利用者のインストールが失敗する
公開パッケージのAngularピア依存関係が ^22.0.0 に引き上げられている(projects/kit/package.json:5-8)が、リポジトリ自体と全利用プロジェクトはAngular 21を使用しているため、全利用者で npm install 時にピア依存関係エラーが発生する。
Impact: パッケージを更新した全てのアプリでインストールが失敗し、ビルドできなくなる。
ルートpackage.jsonとの不整合の詳細
ルート package.json:35-42 では全Angular依存関係が ^21.0.0 で宣言されている。AGENTS.mdに記載された全利用プロジェクト(winecode, receptray, tipsys, foodlabel, odss-mobile)もAngular 21を使用している。^22.0.0 はAngular 22以上を要求するが、現時点でAngular 22はリリースされていない。以前のバージョン(^21.0.0)が正しい値。
Suggested change
| "@angular/common": "^22.0.0", | |
| "@angular/core": "^22.0.0", | |
| "@angular/forms": "^22.0.0", | |
| "@angular/router": "^22.0.0", | |
| "@angular/common": "^21.0.0", | |
| "@angular/core": "^21.0.0", | |
| "@angular/forms": "^21.0.0", | |
| "@angular/router": "^21.0.0", |
Was this helpful? React with 👍 or 👎 to provide feedback.
…elease The Angular 22 peer bump (^21 -> ^22) and version 0.0.24 leaked in from the shelved Angular 22 WIP. Ship the firebase migration on the Angular 21 line: peers back to ^21.0.0, version 0.0.22 -> 0.0.23. Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@angular/fireはメンテ終了 & Angular アップグレードのブロッカーのため、kit のauth-firebaseを vanillafirebase/authに移行KIT_FIREBASE_AUTHseam を活かし provider ローカルの内部変更で完結(consumer 側アプリのソースは無変更)provideKitFirebase:firebase/app+firebase/authを直接初期化(getApps()ガード)しKIT_FIREBASE_AUTHをuseValueでバインド。シグネチャ・戻り値型は不変kit-firebase-auth.ts/kit-social.ts)の import を@angular/fire/auth→firebase/authprovideKitFirebaseAnalytics:firebase/analyticsへfirebaseを optional peerDependency(>=11 <13)に。provider・ops・KIT_FIREBASE_AUTHがアプリの単一 firebase コピーを共有し dual-SDK silent no-op を回避@angular/fire依存とng-package.jsonのallowedNonPeerDependenciesを削除^21.0.0維持)。kit version0.0.22→0.0.23参考: markgoho/doula-cooperative#89
Test plan
npm run lint(All files pass)npm test(206 passed / auth・social spec 含む)npx ng build kit(auth-firebase / social エントリ含めビルド成功、dist に firebase peer 反映)firebase直接依存整備 + kit bump + 実機の sign-in/out/token 動作確認Note