Skip to content

Commit 0ec15e1

Browse files
authored
Merge branch 'firebase:main' into main
2 parents 8563de9 + c696842 commit 0ec15e1

125 files changed

Lines changed: 2747 additions & 445 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/code_health.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ jobs:
6464
"flutter pub get"
6565
6666
format:
67-
runs-on: ubuntu-latest
67+
# switch back to ubuntu-latest when swiftformat is working again
68+
runs-on: macos-latest
6869
steps:
6970
- uses: actions/checkout@v4.1.1
7071
- uses: subosito/flutter-action@v2

.github/workflows/e2e.yml

Lines changed: 53 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@ jobs:
2929
timeout-minutes: 45
3030
steps:
3131
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
32-
- uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8
32+
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8
3333
name: Install Node.js
3434
with:
3535
node-version: "18"
36-
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93
36+
- uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9
3737
with:
3838
distribution: "temurin"
3939
java-version: "17"
@@ -56,6 +56,8 @@ jobs:
5656
with:
5757
channel: "stable"
5858
cache: true
59+
- name: "Install Tools"
60+
run: sudo npm i -g firebase-tools
5961
- name: Firebase Emulator Cache
6062
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84
6163
with:
@@ -68,10 +70,12 @@ jobs:
6870
melos-version: "3.0.1"
6971
- name: "Bootstrap package"
7072
run: melos bootstrap --scope tests
71-
- name: "Install Tools"
72-
run: sudo npm i -g firebase-tools
7373
- name: Start Firebase Emulator
74-
run: ./scripts/start-firebase-emulator.sh
74+
run: |
75+
cd functions/
76+
npm i
77+
npm run build
78+
../scripts/start-firebase-emulator.sh
7579
- name: E2E Tests
7680
uses: reactivecircus/android-emulator-runner@v2
7781
with:
@@ -87,15 +91,15 @@ jobs:
8791
timeout-minutes: 45
8892
steps:
8993
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
90-
- uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8
94+
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8
9195
name: Install Node.js
9296
with:
9397
node-version: "18"
94-
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93
98+
- uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9
9599
with:
96100
distribution: "temurin"
97101
java-version: "11"
98-
- uses: hendrikmuhs/ccache-action@6d1841ec156c39a52b1b23a810da917ab98da1f4
102+
- uses: hendrikmuhs/ccache-action@faf867a11c028c0b483fb2ae72b6fc8f7d842714
99103
name: Xcode Compile Cache
100104
with:
101105
key: ${{ runner.os }}-ios-v3
@@ -107,6 +111,8 @@ jobs:
107111
path: tests/ios/Pods
108112
key: ${{ runner.os }}-pods-v3-${{ hashFiles('tests/ios/Podfile.lock') }}
109113
restore-keys: ${{ runner.os }}-ios-pods-v2
114+
- name: "Install Tools"
115+
run: sudo npm i -g firebase-tools
110116
- name: Firebase Emulator Cache
111117
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84
112118
with:
@@ -123,8 +129,6 @@ jobs:
123129
melos-version: "3.0.1"
124130
- name: "Bootstrap package"
125131
run: melos bootstrap --scope tests
126-
- name: "Install Tools"
127-
run: sudo npm i -g firebase-tools
128132
- name: "Build Application"
129133
working-directory: tests
130134
run: |
@@ -137,7 +141,12 @@ jobs:
137141
flutter build ios --no-codesign --simulator --debug --target=./integration_test/firebase_ui_test.dart --dart-define=CI=true
138142
ccache -s
139143
- name: Start Firebase Emulator and proxy
140-
run: ./scripts/start-firebase-emulator.sh
144+
run: |
145+
sudo chown -R 501:20 "/Users/runner/.npm"
146+
cd functions/
147+
npm i
148+
npm run build
149+
../scripts/start-firebase-emulator.sh
141150
- name: "E2E Tests"
142151
working-directory: tests
143152
run: |
@@ -157,15 +166,15 @@ jobs:
157166
timeout-minutes: 45
158167
steps:
159168
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
160-
- uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8
169+
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8
161170
name: Install Node.js
162171
with:
163172
node-version: "18"
164-
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93
173+
- uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9
165174
with:
166175
distribution: "temurin"
167176
java-version: "11"
168-
- uses: hendrikmuhs/ccache-action@6d1841ec156c39a52b1b23a810da917ab98da1f4
177+
- uses: hendrikmuhs/ccache-action@faf867a11c028c0b483fb2ae72b6fc8f7d842714
169178
name: Xcode Compile Cache
170179
with:
171180
key: ${{ runner.os }}-macos-v2
@@ -177,6 +186,8 @@ jobs:
177186
path: tests/macos/Pods
178187
key: ${{ runner.os }}-pods-v2-${{ hashFiles('tests/macos/Podfile.lock') }}
179188
restore-keys: ${{ runner.os }}-macos-pods-v1
189+
- name: "Install Tools"
190+
run: sudo npm i -g firebase-tools
180191
- name: Cache Firebase Emulator
181192
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84
182193
with:
@@ -193,8 +204,6 @@ jobs:
193204
melos-version: "3.0.1"
194205
- name: "Bootstrap package"
195206
run: melos bootstrap --scope tests
196-
- name: "Install Tools"
197-
run: sudo npm i -g firebase-tools
198207
- name: "Build Application"
199208
working-directory: tests
200209
run: |
@@ -207,7 +216,34 @@ jobs:
207216
flutter build macos --debug --target=./integration_test/firebase_ui_test.dart --device-id=macos --dart-define=CI=true
208217
ccache -s
209218
- name: Start Firebase Emulator and proxy
210-
run: ./scripts/start-firebase-emulator.sh
219+
run: |
220+
sudo chown -R 501:20 "/Users/runner/.npm"
221+
cd functions/
222+
npm i
223+
npm run build
224+
../scripts/start-firebase-emulator.sh
211225
- name: "E2E Tests"
212226
working-directory: tests
213227
run: flutter test ./integration_test/firebase_ui_test.dart -d macos --dart-define=CI=true
228+
web:
229+
runs-on: ubuntu-latest
230+
timeout-minutes: 15
231+
steps:
232+
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
233+
- uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225
234+
with:
235+
channel: 'stable'
236+
cache: true
237+
- uses: bluefireteam/melos-action@720a109b686f61979b4f9f0d14f582ab1637647e
238+
with:
239+
melos-version: "3.0.1"
240+
- name: 'Build Test Applications'
241+
run: |
242+
cd packages/firebase_ui_auth/example
243+
flutter build web
244+
cd ../../firebase_ui_database/example
245+
flutter build web
246+
cd ../../firebase_ui_firestore/example
247+
flutter build web
248+
cd ../../firebase_ui_storage/example
249+
flutter build web

.github/workflows/ossf-scorecard.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,14 +59,14 @@ jobs:
5959
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
6060
# format to the repository Actions tab.
6161
- name: "Upload artifact"
62-
uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392 # v4.0.0
62+
uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
6363
with:
6464
name: SARIF file
6565
path: results.sarif
6666
retention-days: 5
6767

6868
# Upload the results to GitHub's code scanning dashboard.
6969
- name: "Upload to code-scanning"
70-
uses: github/codeql-action/upload-sarif@012739e5082ff0c22ca6d6ab32e07c36df03c4a4 # v3.22.12
70+
uses: github/codeql-action/upload-sarif@1b1aada464948af03b950897e5eb522f92603cc2 # v3.24.9
7171
with:
7272
sarif_file: results.sarif

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
.vscode/*
55
.melos_tool/*
66
!.vscode/tasks.json
7-
!.vscode/settings.json
7+
.vscode/settings.json
88

99
.packages
1010
.pub/
@@ -40,7 +40,7 @@ GeneratedPluginRegistrant.m
4040
GeneratedPluginRegistrant.java
4141
GeneratedPluginRegistrant.swift
4242
generated_plugin_registrant.dart
43-
43+
generated_plugin_registrant.cc
4444
build/
4545
.flutter-plugins
4646
.flutter-plugins-dependencies

CHANGELOG.md

Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,147 @@
33
All notable changes to this project will be documented in this file.
44
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
55

6+
## 2024-06-12
7+
8+
### Changes
9+
10+
---
11+
12+
Packages with breaking changes:
13+
14+
- There are no breaking changes in this release.
15+
16+
Packages with other changes:
17+
18+
- [`firebase_ui_auth` - `v1.15.0`](#firebase_ui_auth---v1150)
19+
- [`firebase_ui_localizations` - `v1.12.0`](#firebase_ui_localizations---v1120)
20+
- [`firebase_ui_oauth` - `v1.5.3`](#firebase_ui_oauth---v153)
21+
- [`firebase_ui_oauth_facebook` - `v1.2.21`](#firebase_ui_oauth_facebook---v1221)
22+
- [`firebase_ui_oauth_twitter` - `v1.2.21`](#firebase_ui_oauth_twitter---v1221)
23+
- [`firebase_ui_oauth_apple` - `v1.2.21`](#firebase_ui_oauth_apple---v1221)
24+
- [`firebase_ui_oauth_google` - `v1.3.3`](#firebase_ui_oauth_google---v133)
25+
- [`firebase_ui_firestore` - `v1.6.4`](#firebase_ui_firestore---v164)
26+
- [`firebase_ui_storage` - `v2.0.5`](#firebase_ui_storage---v205)
27+
- [`firebase_ui_database` - `v1.4.4`](#firebase_ui_database---v144)
28+
29+
Packages with dependency updates only:
30+
31+
> Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
32+
33+
- `firebase_ui_oauth` - `v1.5.3`
34+
- `firebase_ui_oauth_facebook` - `v1.2.21`
35+
- `firebase_ui_oauth_twitter` - `v1.2.21`
36+
- `firebase_ui_oauth_apple` - `v1.2.21`
37+
- `firebase_ui_oauth_google` - `v1.3.3`
38+
- `firebase_ui_firestore` - `v1.6.4`
39+
- `firebase_ui_storage` - `v2.0.5`
40+
- `firebase_ui_database` - `v1.4.4`
41+
42+
---
43+
44+
#### `firebase_ui_auth` - `v1.15.0`
45+
46+
- **FIX**(ui_auth): fix confirmation dialog for delete account button ([#346](https://github.com/firebase/FirebaseUI-Flutter/issues/346)). ([4fd041d1](https://github.com/firebase/FirebaseUI-Flutter/commit/4fd041d12756084da6e4e3e7232c0dd35fc3593c))
47+
- **FEAT**(firebase_ui_auth): add autofocus property to PhoneInput widget ([#334](https://github.com/firebase/FirebaseUI-Flutter/issues/334)). ([eb9e2bd1](https://github.com/firebase/FirebaseUI-Flutter/commit/eb9e2bd1e04be52472b70354dd253a362c3b49c2))
48+
49+
#### `firebase_ui_localizations` - `v1.12.0`
50+
51+
- **FIX**(ui_localizations): Add missing 'nb' language code to kSupportedLanguages ([#350](https://github.com/firebase/FirebaseUI-Flutter/issues/350)). ([3fbfded0](https://github.com/firebase/FirebaseUI-Flutter/commit/3fbfded079b8dbe54b15d805ed5be5836e0d1ff7))
52+
- **FEAT**(firebase_ui_localizations): Further German translations for auth labels that were still in English ([#319](https://github.com/firebase/FirebaseUI-Flutter/issues/319)). ([2f96686c](https://github.com/firebase/FirebaseUI-Flutter/commit/2f96686cb5dcbba2ad1cd02354ccc3b95af3ca5f))
53+
- **FEAT**(firebase_ui_localizations): Add Finnish language localization labels ([#332](https://github.com/firebase/FirebaseUI-Flutter/issues/332)). ([848b66cf](https://github.com/firebase/FirebaseUI-Flutter/commit/848b66cfc6bd7a84d57e94d0c6bcab8713ab9313))
54+
55+
56+
## 2024-04-24
57+
58+
### Changes
59+
60+
---
61+
62+
Packages with breaking changes:
63+
64+
- There are no breaking changes in this release.
65+
66+
Packages with other changes:
67+
68+
- [`firebase_ui_auth` - `v1.14.0`](#firebase_ui_auth---v1140)
69+
- [`firebase_ui_localizations` - `v1.11.0`](#firebase_ui_localizations---v1110)
70+
- [`firebase_ui_oauth` - `v1.5.2`](#firebase_ui_oauth---v152)
71+
- [`firebase_ui_oauth_apple` - `v1.2.20`](#firebase_ui_oauth_apple---v1220)
72+
- [`firebase_ui_oauth_twitter` - `v1.2.20`](#firebase_ui_oauth_twitter---v1220)
73+
- [`firebase_ui_oauth_facebook` - `v1.2.20`](#firebase_ui_oauth_facebook---v1220)
74+
- [`firebase_ui_oauth_google` - `v1.3.2`](#firebase_ui_oauth_google---v132)
75+
- [`firebase_ui_database` - `v1.4.3`](#firebase_ui_database---v143)
76+
- [`firebase_ui_firestore` - `v1.6.3`](#firebase_ui_firestore---v163)
77+
- [`firebase_ui_storage` - `v2.0.4`](#firebase_ui_storage---v204)
78+
79+
Packages with dependency updates only:
80+
81+
> Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
82+
83+
- `firebase_ui_oauth` - `v1.5.2`
84+
- `firebase_ui_oauth_apple` - `v1.2.20`
85+
- `firebase_ui_oauth_twitter` - `v1.2.20`
86+
- `firebase_ui_oauth_facebook` - `v1.2.20`
87+
- `firebase_ui_oauth_google` - `v1.3.2`
88+
- `firebase_ui_database` - `v1.4.3`
89+
- `firebase_ui_firestore` - `v1.6.3`
90+
- `firebase_ui_storage` - `v2.0.4`
91+
92+
---
93+
94+
#### `firebase_ui_auth` - `v1.14.0`
95+
96+
- **FIX**(auth): `ForgotPasswordScreen` display email within input box ([#336](https://github.com/firebase/FirebaseUI-Flutter/issues/336)). ([ad666666](https://github.com/firebase/FirebaseUI-Flutter/commit/ad666666b05c637d5bdf4d041c29a1eeac63d528))
97+
- **FIX**(firebase_ui_auth): `sendPasswordResetEmail` should not be executed when `isLoading=true` ([#315](https://github.com/firebase/FirebaseUI-Flutter/issues/315)). ([955e5c28](https://github.com/firebase/FirebaseUI-Flutter/commit/955e5c286ea5835defe0bd922428102e98f9e8d7))
98+
- **FIX**(ui_auth): Fixed a momentary form display after signing in with EmailLinkAuth. ([#318](https://github.com/firebase/FirebaseUI-Flutter/issues/318)). ([3e37d143](https://github.com/firebase/FirebaseUI-Flutter/commit/3e37d1435a4df12c41b9dd857cec67848b2af2c3))
99+
- **FIX**(firebase_ui_localizations): expose all Firebase UI localizations for overriding ([#309](https://github.com/firebase/FirebaseUI-Flutter/issues/309)). ([e4567478](https://github.com/firebase/FirebaseUI-Flutter/commit/e4567478205f2b88b54aa21af6429fb1c7c81564))
100+
- **FEAT**(firebase_ui_auth): add `showPasswordVisibilityToggle` to `RegisterScreen` ([#297](https://github.com/firebase/FirebaseUI-Flutter/issues/297)). ([6ec3ec1e](https://github.com/firebase/FirebaseUI-Flutter/commit/6ec3ec1edf584fe9f94142ceb7fbdeac57846678))
101+
- **FEAT**(firebase_ui_localizations): support for `sendVerificationEmailLabel()` label ([#280](https://github.com/firebase/FirebaseUI-Flutter/issues/280)). ([95be915d](https://github.com/firebase/FirebaseUI-Flutter/commit/95be915d162c6fb5dfdc6a8ad3298c2002d38dbf))
102+
- **DOCS**: Added superkey to example widget ([#326](https://github.com/firebase/FirebaseUI-Flutter/issues/326)). ([dd5507e1](https://github.com/firebase/FirebaseUI-Flutter/commit/dd5507e1953d9095a60e4cc127d0b8e72790a4ce))
103+
104+
#### `firebase_ui_localizations` - `v1.11.0`
105+
106+
- **FIX**(ui_localizations): In the Japanese file, change "login" to "sign and improve translations ([#304](https://github.com/firebase/FirebaseUI-Flutter/issues/304)). ([ae01e9f1](https://github.com/firebase/FirebaseUI-Flutter/commit/ae01e9f13dbd4d5b357c1124be39f9cc44ccb9ee))
107+
- **FIX**(firebase_ui_localizations): expose all Firebase UI localizations for overriding ([#309](https://github.com/firebase/FirebaseUI-Flutter/issues/309)). ([e4567478](https://github.com/firebase/FirebaseUI-Flutter/commit/e4567478205f2b88b54aa21af6429fb1c7c81564))
108+
- **FEAT**(firebase_ui_localizations): support for `sendVerificationEmailLabel()` label ([#280](https://github.com/firebase/FirebaseUI-Flutter/issues/280)). ([95be915d](https://github.com/firebase/FirebaseUI-Flutter/commit/95be915d162c6fb5dfdc6a8ad3298c2002d38dbf))
109+
110+
111+
## 2024-02-28
112+
113+
### Changes
114+
115+
---
116+
117+
Packages with breaking changes:
118+
119+
- There are no breaking changes in this release.
120+
121+
Packages with other changes:
122+
123+
- [`firebase_ui_oauth` - `v1.5.1`](#firebase_ui_oauth---v151)
124+
- [`firebase_ui_oauth_facebook` - `v1.2.19`](#firebase_ui_oauth_facebook---v1219)
125+
- [`firebase_ui_oauth_twitter` - `v1.2.19`](#firebase_ui_oauth_twitter---v1219)
126+
- [`firebase_ui_auth` - `v1.13.1`](#firebase_ui_auth---v1131)
127+
- [`firebase_ui_oauth_google` - `v1.3.1`](#firebase_ui_oauth_google---v131)
128+
- [`firebase_ui_oauth_apple` - `v1.2.19`](#firebase_ui_oauth_apple---v1219)
129+
130+
Packages with dependency updates only:
131+
132+
> Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
133+
134+
- `firebase_ui_oauth_facebook` - `v1.2.19`
135+
- `firebase_ui_oauth_twitter` - `v1.2.19`
136+
- `firebase_ui_auth` - `v1.13.1`
137+
- `firebase_ui_oauth_google` - `v1.3.1`
138+
- `firebase_ui_oauth_apple` - `v1.2.19`
139+
140+
---
141+
142+
#### `firebase_ui_oauth` - `v1.5.1`
143+
144+
- **FIX**(auth): `desktopSignIn()` method required in web mixin ([#294](https://github.com/firebase/FirebaseUI-Flutter/issues/294)). ([65568934](https://github.com/firebase/FirebaseUI-Flutter/commit/655689344bbf4fc7e8a6911ce67a3ce896079235))
145+
146+
6147
## 2024-02-06
7148

8149
### Changes

docs/firebase-ui-auth/providers/oauth.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ const webClientId = 'your-web-client-id.apps.googleusercontent.com';
8282
8383
String get googleClientId {
8484
return switch (defaultTargetPlatform) {
85-
TargetPlatfrom.iOS || TargetPlatform.macOS => iOSClientId,
85+
TargetPlatform.iOS || TargetPlatform.macOS => iOSClientId,
8686
_ => webClientId,
8787
}
8888
}

docs/firebase-ui-localizations.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,16 @@ dependencies:
1313
1414
## Usage
1515
16-
If your app supports only a single language, and you want to override labels – you will need to provide a custom class that implements [`DefaultLocalizations`](https://pub.dev/documentation/firebase_ui_localizations/latest/DefaultLocalizations-class.html),
17-
for example:
16+
If your app supports only a single language, and you want to override labels – you will need to provide a custom class that implements one of the [exposed localizations](https://github.com/firebase/FirebaseUI-Flutter/blob/main/packages/firebase_ui_localizations/lib/src/lang).
17+
18+
For example, we could override the Spanish localization class and customize the email and password labels:
1819
1920
```dart
2021
import 'package:flutter_localizations/flutter_localizations.dart';
2122
import 'package:firebase_ui_localizations/firebase_ui_localizations.dart';
2223

23-
class LabelOverrides extends DefaultLocalizations {
24+
// EsLocalizations is a class that provides Spanish labels. We override it here:
25+
class LabelOverrides extends EsLocalizations {
2426
const LabelOverrides();
2527

2628
@override

0 commit comments

Comments
 (0)