diff --git a/apps/docs/content/guides/auth/social-login/auth-google.mdx b/apps/docs/content/guides/auth/social-login/auth-google.mdx
index 6279925e6f3..d7134a4ad6c 100644
--- a/apps/docs/content/guides/auth/social-login/auth-google.mdx
+++ b/apps/docs/content/guides/auth/social-login/auth-google.mdx
@@ -232,21 +232,20 @@ Before you can use Sign in with Google, you need to obtain a [Google Cloud Platf
- ## Using native sign-in with Google on Flutter
+ ## Google sign-in for iOS and Android
- Native Google sign in with Supabase is done through the [google_sign_in](https://pub.dev/packages/google_sign_in) package for iOS and Android. Follow the instructions on the [google_sign_in](https://pub.dev/packages/google_sign_in) package for plugin specific settings.
+ Google sign-in with Supabase is done through the [google_sign_in](https://pub.dev/packages/google_sign_in) package for iOS and Android.
When the user provides consent, Google issues an identity token (commonly abbreviated as ID token) that is then sent to your project's Supabase Auth server. When valid, a new user session is started by issuing an access and refresh token from Supabase Auth.
- Follow the code sample below to implement native Google sign in with Supabase in your Flutter app.
+ Follow the code sample below to implement native Google sign-in with Supabase in your Flutter iOS and Android app.
```dart
import 'package:google_sign_in/google_sign_in.dart';
import 'package:supabase_flutter/supabase_flutter.dart';
...
-
- Future _googleSignIn() async {
+ Future _nativeGoogleSignIn() async {
/// TODO: update the Web client ID with your own.
///
/// Web Client ID that you registered with Google Cloud.
@@ -257,9 +256,6 @@ Before you can use Sign in with Google, you need to obtain a [Google Cloud Platf
/// iOS Client ID that you registered with Google Cloud.
const iosClientId = 'my-ios.apps.googleusercontent.com';
- // Google sign in on Android will work without providing the Android
- // Client ID registered on Google Cloud.
-
final GoogleSignIn googleSignIn = GoogleSignIn(
clientId: iosClientId,
serverClientId: webClientId,
@@ -276,7 +272,7 @@ Before you can use Sign in with Google, you need to obtain a [Google Cloud Platf
throw 'No ID Token found.';
}
- return supabase.auth.signInWithIdToken(
+ await supabase.auth.signInWithIdToken(
provider: OAuthProvider.google,
idToken: idToken,
accessToken: accessToken,
@@ -287,15 +283,63 @@ Before you can use Sign in with Google, you need to obtain a [Google Cloud Platf
### Configuration [#flutter-configuration-native-app]
- 1. Configure OAuth credentials for your Google Cloud project in the [Credentials](https://console.cloud.google.com/apis/credentials) page of the console. When creating a new OAuth client ID, choose _Android_ or _iOS_ depending on the mobile operating system your app is built for. Also create a web client ID.
-
- - For Android, use the instructions on screen to provide the SHA-1 certificate fingerprint used to sign your Android app. You also need to create a web client ID to perform Google sign in on Android.
- - For iOS, use the instructions on screen to provide the app Bundle ID, and App Store ID and Team ID if the app is already published on the Apple AppStore.
-
+ 1. Configure Web, Android, and iOS OAuth credentials. Follow the Platform integration instructions on the [README of google_sign_in package](https://pub.dev/packages/google_sign_in#platform-integration) for Android and iOS.
+ - For both Android and iOS, you will need to create a Web client ID in the [Google Cloud Console](https://console.cloud.google.com/apis/credentials).
+ - For Android, use the instructions on screen to provide the SHA-1 certificate fingerprint used to sign your Android app.
+ - For iOS, use the instructions on screen to provide the app Bundle ID, and App Store ID and Team ID if the app is already published on the Apple AppStore.
2. Configure the [OAuth Consent Screen](https://console.cloud.google.com/apis/credentials/consent). This information is shown to the user when giving consent to your app. In particular, make sure you have set up links to your app's privacy policy and terms of service.
- 3. Finally, add the web client ID from step 1 in the [Google provider on the Supabase Dashboard](https://supabase.com/dashboard/project/_/auth/providers), under _Authorized Client IDs_. You do not need to add the Android or iOS client ID here. If you need iOS support, enable the `Skip nonce check` option.
+ 3. Add only the web client ID from step 1 in the [Google provider on the Supabase Dashboard](https://supabase.com/dashboard/project/_/auth/providers), under _Authorized Client IDs_. If you need iOS support, enable the `Skip nonce check` option.
+ 4. For iOS, add the `CFBundleURLTypes` attributes below into the `/ios/Runner/Info.plist` file.
+ ```xml
+
+
+ CFBundleURLTypes
+
+
+ CFBundleTypeRole
+ Editor
+ CFBundleURLSchemes
+
+
+
+ com.googleusercontent.apps.861823949799-vc35cprkp249096uujjn0vvnmcvjppkn
+
+
+
+
+ ```
- Note that you do not have to configure the OAuth flow in the Supabase Dashboard in order to use native sign in.
+ ## Google sign-in for Web, macOS, Windows, and Linux
+
+ Google sign-in with Supabase on Web, macOS, Windows, and Linux is done through the [signInWithOAuth](docs/reference/dart/auth-signinwithoauth) method.
+
+ This method of signing in is web based, and will open a browser window to perform the sign in. For non-web platforms, the user is brought back to the app via [deep linking](/docs/guides/auth/native-mobile-deep-linking?platform=flutter).
+
+ ```dart
+ supabase.auth.signInWithOAuth(
+ OAuthProvider.google,
+ redirectTo: 'my-scheme://login-callback',
+ );
+ ```
+
+ This call takes the user to Google's consent screen. Once the flow ends, the user's profile information is exchanged and validated with Supabase Auth before it redirects back to your Flutter application with an access and refresh token representing the user's session.
+
+ ### Configuration [#flutter-configuration-web]
+
+ To use the OAuth 2.0 flow, you will require the following information:
+
+ 1. Obtain OAuth credentials for your Google Cloud project in the [Credentials](https://console.developers.google.com/apis/credentials) page of the console. If you already have a web client ID, no need to create a new one. When creating a new credential, choose _Web application_. In _Authorized redirect URIs_ enter `https://.supabase.co/auth/v1/callback`. This URL will be seen by your users, and you can customize it by configuring [custom domains](/docs/guides/platform/custom-domains).
+ 2. Configure the [OAuth Consent Screen](https://console.cloud.google.com/apis/credentials/consent). This information is shown to the user when giving consent to your app. Within _Authorized domains_ make sure you add your Supabase project's domain `.supabase.co`. Configure the non-sensitive scopes by making sure the following ones are selected: `.../auth/userinfo.email`, `.../auth/userinfo.profile`, `openid`. If you're selecting other sensitive scopes, your app may require additional verification. In those cases, it's best to use [custom domains](/docs/guides/platform/custom-domains).
+ 3. Finally, add the client ID and secret from step 1 in the [Google provider on the Supabase Dashboard](https://supabase.com/dashboard/project/_/auth/providers).
+
+
+
+
@@ -456,6 +500,17 @@ Before you can use Sign in with Google, you need to obtain a [Google Cloud Platf
2. Configure the [OAuth Consent Screen](https://console.cloud.google.com/apis/credentials/consent). This information is shown to the user when giving consent to your app. In particular, make sure you have set up links to your app's privacy policy and terms of service.
3. Finally, add the client ID from step 1 in the [Google provider on the Supabase Dashboard](https://supabase.com/dashboard/project/_/auth/providers), under _Authorized Client IDs_.
+ Note that you do not have to configure the OAuth flow in the Supabase Dashboard in order to use native sign in.
+
+
+
+
+
diff --git a/apps/docs/content/guides/storage/buckets/creating-buckets.mdx b/apps/docs/content/guides/storage/buckets/creating-buckets.mdx
index b63979bc8b1..b7684933de7 100644
--- a/apps/docs/content/guides/storage/buckets/creating-buckets.mdx
+++ b/apps/docs/content/guides/storage/buckets/creating-buckets.mdx
@@ -78,7 +78,7 @@ You can achieve the following by providing: `allowedMimeTypes` and `maxFileSize`
const { data, error } = await supabase.storage.createBucket('avatars', {
public: true,
allowedMimeTypes: ['image/*'],
- maxFileSize: '1MB',
+ fileSizeLimit: '1MB',
})
```
diff --git a/apps/docs/public/favicon/android-icon-144x144.png b/apps/docs/public/favicon/android-icon-144x144.png
index 4aa46d4d25d..a6af05bf04b 100644
Binary files a/apps/docs/public/favicon/android-icon-144x144.png and b/apps/docs/public/favicon/android-icon-144x144.png differ
diff --git a/apps/docs/public/favicon/android-icon-192x192.png b/apps/docs/public/favicon/android-icon-192x192.png
index 7583d2035e3..2259b4d1310 100644
Binary files a/apps/docs/public/favicon/android-icon-192x192.png and b/apps/docs/public/favicon/android-icon-192x192.png differ
diff --git a/apps/docs/public/favicon/android-icon-36x36.png b/apps/docs/public/favicon/android-icon-36x36.png
index 5e4eabec411..a920f49dbed 100644
Binary files a/apps/docs/public/favicon/android-icon-36x36.png and b/apps/docs/public/favicon/android-icon-36x36.png differ
diff --git a/apps/docs/public/favicon/android-icon-48x48.png b/apps/docs/public/favicon/android-icon-48x48.png
index f8d8a7d9c05..5b5a527f888 100644
Binary files a/apps/docs/public/favicon/android-icon-48x48.png and b/apps/docs/public/favicon/android-icon-48x48.png differ
diff --git a/apps/docs/public/favicon/android-icon-72x72.png b/apps/docs/public/favicon/android-icon-72x72.png
index e4418058cef..d97644b51b6 100644
Binary files a/apps/docs/public/favicon/android-icon-72x72.png and b/apps/docs/public/favicon/android-icon-72x72.png differ
diff --git a/apps/docs/public/favicon/android-icon-96x96.png b/apps/docs/public/favicon/android-icon-96x96.png
index 0f1351f3670..d3121ca964a 100644
Binary files a/apps/docs/public/favicon/android-icon-96x96.png and b/apps/docs/public/favicon/android-icon-96x96.png differ
diff --git a/apps/docs/public/favicon/apple-icon-114x114.png b/apps/docs/public/favicon/apple-icon-114x114.png
index 4aa46d4d25d..eec6b433f4b 100644
Binary files a/apps/docs/public/favicon/apple-icon-114x114.png and b/apps/docs/public/favicon/apple-icon-114x114.png differ
diff --git a/apps/docs/public/favicon/apple-icon-120x120.png b/apps/docs/public/favicon/apple-icon-120x120.png
index d2b0e50ef41..abb84bb15d8 100644
Binary files a/apps/docs/public/favicon/apple-icon-120x120.png and b/apps/docs/public/favicon/apple-icon-120x120.png differ
diff --git a/apps/docs/public/favicon/apple-icon-144x144.png b/apps/docs/public/favicon/apple-icon-144x144.png
index 00a5d8b5180..a6af05bf04b 100644
Binary files a/apps/docs/public/favicon/apple-icon-144x144.png and b/apps/docs/public/favicon/apple-icon-144x144.png differ
diff --git a/apps/docs/public/favicon/apple-icon-152x152.png b/apps/docs/public/favicon/apple-icon-152x152.png
index 310532c4648..41f8008da33 100644
Binary files a/apps/docs/public/favicon/apple-icon-152x152.png and b/apps/docs/public/favicon/apple-icon-152x152.png differ
diff --git a/apps/docs/public/favicon/apple-icon-180x180.png b/apps/docs/public/favicon/apple-icon-180x180.png
index 2a80dbc2f68..403bc426458 100644
Binary files a/apps/docs/public/favicon/apple-icon-180x180.png and b/apps/docs/public/favicon/apple-icon-180x180.png differ
diff --git a/apps/docs/public/favicon/apple-icon-57x57.png b/apps/docs/public/favicon/apple-icon-57x57.png
index e7b08eb605f..a4bc19b9c0f 100644
Binary files a/apps/docs/public/favicon/apple-icon-57x57.png and b/apps/docs/public/favicon/apple-icon-57x57.png differ
diff --git a/apps/docs/public/favicon/apple-icon-60x60.png b/apps/docs/public/favicon/apple-icon-60x60.png
index 0615675e809..380aa8c5168 100644
Binary files a/apps/docs/public/favicon/apple-icon-60x60.png and b/apps/docs/public/favicon/apple-icon-60x60.png differ
diff --git a/apps/docs/public/favicon/apple-icon-72x72.png b/apps/docs/public/favicon/apple-icon-72x72.png
index e4418058cef..d97644b51b6 100644
Binary files a/apps/docs/public/favicon/apple-icon-72x72.png and b/apps/docs/public/favicon/apple-icon-72x72.png differ
diff --git a/apps/docs/public/favicon/apple-icon-76x76.png b/apps/docs/public/favicon/apple-icon-76x76.png
index 9a76327f94b..2abcb5eeffa 100644
Binary files a/apps/docs/public/favicon/apple-icon-76x76.png and b/apps/docs/public/favicon/apple-icon-76x76.png differ
diff --git a/apps/docs/public/favicon/apple-icon-precomposed.png b/apps/docs/public/favicon/apple-icon-precomposed.png
index 7583d2035e3..f81f2980e18 100644
Binary files a/apps/docs/public/favicon/apple-icon-precomposed.png and b/apps/docs/public/favicon/apple-icon-precomposed.png differ
diff --git a/apps/docs/public/favicon/apple-icon.png b/apps/docs/public/favicon/apple-icon.png
index 7583d2035e3..f81f2980e18 100644
Binary files a/apps/docs/public/favicon/apple-icon.png and b/apps/docs/public/favicon/apple-icon.png differ
diff --git a/apps/docs/public/favicon/android-chrome-192x192.png b/apps/docs/public/favicon/archive/android-chrome-192x192.png
similarity index 100%
rename from apps/docs/public/favicon/android-chrome-192x192.png
rename to apps/docs/public/favicon/archive/android-chrome-192x192.png
diff --git a/apps/docs/public/favicon/android-chrome-512x512.png b/apps/docs/public/favicon/archive/android-chrome-512x512.png
similarity index 100%
rename from apps/docs/public/favicon/android-chrome-512x512.png
rename to apps/docs/public/favicon/archive/android-chrome-512x512.png
diff --git a/apps/docs/public/favicon/apple-touch-icon-114x114.png b/apps/docs/public/favicon/archive/android-icon-144x144.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-114x114.png
rename to apps/docs/public/favicon/archive/android-icon-144x144.png
diff --git a/apps/docs/public/favicon/archive/android-icon-192x192.png b/apps/docs/public/favicon/archive/android-icon-192x192.png
new file mode 100644
index 00000000000..7583d2035e3
Binary files /dev/null and b/apps/docs/public/favicon/archive/android-icon-192x192.png differ
diff --git a/apps/docs/public/favicon/archive/android-icon-36x36.png b/apps/docs/public/favicon/archive/android-icon-36x36.png
new file mode 100644
index 00000000000..5e4eabec411
Binary files /dev/null and b/apps/docs/public/favicon/archive/android-icon-36x36.png differ
diff --git a/apps/docs/public/favicon/archive/android-icon-48x48.png b/apps/docs/public/favicon/archive/android-icon-48x48.png
new file mode 100644
index 00000000000..f8d8a7d9c05
Binary files /dev/null and b/apps/docs/public/favicon/archive/android-icon-48x48.png differ
diff --git a/apps/docs/public/favicon/apple-touch-icon-72x72.png b/apps/docs/public/favicon/archive/android-icon-72x72.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-72x72.png
rename to apps/docs/public/favicon/archive/android-icon-72x72.png
diff --git a/apps/docs/public/favicon/archive/android-icon-96x96.png b/apps/docs/public/favicon/archive/android-icon-96x96.png
new file mode 100644
index 00000000000..0f1351f3670
Binary files /dev/null and b/apps/docs/public/favicon/archive/android-icon-96x96.png differ
diff --git a/apps/studio/public/favicon/apple-touch-icon-114x114.png b/apps/docs/public/favicon/archive/apple-icon-114x114.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-114x114.png
rename to apps/docs/public/favicon/archive/apple-icon-114x114.png
diff --git a/apps/docs/public/favicon/apple-touch-icon-120x120.png b/apps/docs/public/favicon/archive/apple-icon-120x120.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-120x120.png
rename to apps/docs/public/favicon/archive/apple-icon-120x120.png
diff --git a/apps/docs/public/favicon/apple-touch-icon-144x144.png b/apps/docs/public/favicon/archive/apple-icon-144x144.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-144x144.png
rename to apps/docs/public/favicon/archive/apple-icon-144x144.png
diff --git a/apps/docs/public/favicon/apple-touch-icon-152x152.png b/apps/docs/public/favicon/archive/apple-icon-152x152.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-152x152.png
rename to apps/docs/public/favicon/archive/apple-icon-152x152.png
diff --git a/apps/docs/public/favicon/archive/apple-icon-180x180.png b/apps/docs/public/favicon/archive/apple-icon-180x180.png
new file mode 100644
index 00000000000..2a80dbc2f68
Binary files /dev/null and b/apps/docs/public/favicon/archive/apple-icon-180x180.png differ
diff --git a/apps/docs/public/favicon/archive/apple-icon-57x57.png b/apps/docs/public/favicon/archive/apple-icon-57x57.png
new file mode 100644
index 00000000000..e7b08eb605f
Binary files /dev/null and b/apps/docs/public/favicon/archive/apple-icon-57x57.png differ
diff --git a/apps/docs/public/favicon/apple-touch-icon-60x60.png b/apps/docs/public/favicon/archive/apple-icon-60x60.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-60x60.png
rename to apps/docs/public/favicon/archive/apple-icon-60x60.png
diff --git a/apps/studio/public/favicon/apple-touch-icon-72x72.png b/apps/docs/public/favicon/archive/apple-icon-72x72.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-72x72.png
rename to apps/docs/public/favicon/archive/apple-icon-72x72.png
diff --git a/apps/docs/public/favicon/apple-touch-icon-76x76.png b/apps/docs/public/favicon/archive/apple-icon-76x76.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-76x76.png
rename to apps/docs/public/favicon/archive/apple-icon-76x76.png
diff --git a/apps/docs/public/favicon/archive/apple-icon-precomposed.png b/apps/docs/public/favicon/archive/apple-icon-precomposed.png
new file mode 100644
index 00000000000..7583d2035e3
Binary files /dev/null and b/apps/docs/public/favicon/archive/apple-icon-precomposed.png differ
diff --git a/apps/docs/public/favicon/archive/apple-icon.png b/apps/docs/public/favicon/archive/apple-icon.png
new file mode 100644
index 00000000000..7583d2035e3
Binary files /dev/null and b/apps/docs/public/favicon/archive/apple-icon.png differ
diff --git a/apps/www/public/favicon/apple-touch-icon-114x114.png b/apps/docs/public/favicon/archive/apple-touch-icon-114x114.png
similarity index 100%
rename from apps/www/public/favicon/apple-touch-icon-114x114.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-114x114.png
diff --git a/apps/studio/public/favicon/apple-touch-icon-120x120.png b/apps/docs/public/favicon/archive/apple-touch-icon-120x120.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-120x120.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-120x120.png
diff --git a/apps/studio/public/favicon/apple-touch-icon-144x144.png b/apps/docs/public/favicon/archive/apple-touch-icon-144x144.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-144x144.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-144x144.png
diff --git a/apps/studio/public/favicon/apple-touch-icon-152x152.png b/apps/docs/public/favicon/archive/apple-touch-icon-152x152.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-152x152.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-152x152.png
diff --git a/apps/docs/public/favicon/apple-touch-icon-57x57.png b/apps/docs/public/favicon/archive/apple-touch-icon-57x57.png
similarity index 100%
rename from apps/docs/public/favicon/apple-touch-icon-57x57.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-57x57.png
diff --git a/apps/studio/public/favicon/apple-touch-icon-60x60.png b/apps/docs/public/favicon/archive/apple-touch-icon-60x60.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-60x60.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-60x60.png
diff --git a/apps/www/public/favicon/apple-touch-icon-72x72.png b/apps/docs/public/favicon/archive/apple-touch-icon-72x72.png
similarity index 100%
rename from apps/www/public/favicon/apple-touch-icon-72x72.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-72x72.png
diff --git a/apps/studio/public/favicon/apple-touch-icon-76x76.png b/apps/docs/public/favicon/archive/apple-touch-icon-76x76.png
similarity index 100%
rename from apps/studio/public/favicon/apple-touch-icon-76x76.png
rename to apps/docs/public/favicon/archive/apple-touch-icon-76x76.png
diff --git a/apps/docs/public/favicon/archive/browserconfig.xml b/apps/docs/public/favicon/archive/browserconfig.xml
new file mode 100644
index 00000000000..c5541482230
--- /dev/null
+++ b/apps/docs/public/favicon/archive/browserconfig.xml
@@ -0,0 +1,2 @@
+
+#ffffff
\ No newline at end of file
diff --git a/apps/docs/public/favicon/favicon-128.png b/apps/docs/public/favicon/archive/favicon-128.png
similarity index 100%
rename from apps/docs/public/favicon/favicon-128.png
rename to apps/docs/public/favicon/archive/favicon-128.png
diff --git a/apps/docs/public/favicon/archive/favicon-16x16.png b/apps/docs/public/favicon/archive/favicon-16x16.png
new file mode 100644
index 00000000000..fa07282ee8d
Binary files /dev/null and b/apps/docs/public/favicon/archive/favicon-16x16.png differ
diff --git a/apps/docs/public/favicon/favicon-196x196.png b/apps/docs/public/favicon/archive/favicon-196x196.png
similarity index 100%
rename from apps/docs/public/favicon/favicon-196x196.png
rename to apps/docs/public/favicon/archive/favicon-196x196.png
diff --git a/apps/docs/public/favicon/archive/favicon-32x32.png b/apps/docs/public/favicon/archive/favicon-32x32.png
new file mode 100644
index 00000000000..7fa29c547a6
Binary files /dev/null and b/apps/docs/public/favicon/archive/favicon-32x32.png differ
diff --git a/apps/docs/public/favicon/archive/favicon-96x96.png b/apps/docs/public/favicon/archive/favicon-96x96.png
new file mode 100644
index 00000000000..0f1351f3670
Binary files /dev/null and b/apps/docs/public/favicon/archive/favicon-96x96.png differ
diff --git a/apps/docs/public/favicon/archive/favicon.ico b/apps/docs/public/favicon/archive/favicon.ico
new file mode 100644
index 00000000000..5c4d1dcc5cf
Binary files /dev/null and b/apps/docs/public/favicon/archive/favicon.ico differ
diff --git a/apps/docs/public/favicon/archive/lw7/android-chrome-192x192.png b/apps/docs/public/favicon/archive/lw7/android-chrome-192x192.png
deleted file mode 100644
index f0a2817a744..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/android-chrome-192x192.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/android-chrome-512x512.png b/apps/docs/public/favicon/archive/lw7/android-chrome-512x512.png
deleted file mode 100644
index 1c658733e6e..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/android-chrome-512x512.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-114x114.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-114x114.png
deleted file mode 100644
index d2ee4b9e139..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-114x114.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-120x120.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-120x120.png
deleted file mode 100644
index 5bd0e4963a1..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-120x120.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-144x144.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-144x144.png
deleted file mode 100644
index c73891c985d..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-144x144.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-152x152.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-152x152.png
deleted file mode 100644
index 65f90a02357..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-152x152.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-57x57.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-57x57.png
deleted file mode 100644
index bfa1628afb5..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-57x57.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-60x60.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-60x60.png
deleted file mode 100644
index 15c5dca8005..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-60x60.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-72x72.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-72x72.png
deleted file mode 100644
index fb0c4fb3663..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-72x72.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-76x76.png b/apps/docs/public/favicon/archive/lw7/apple-touch-icon-76x76.png
deleted file mode 100644
index 7d950f0862e..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/apple-touch-icon-76x76.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/favicon-128.png b/apps/docs/public/favicon/archive/lw7/favicon-128.png
deleted file mode 100644
index 2206096f21b..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/favicon-128.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/favicon-16x16.png b/apps/docs/public/favicon/archive/lw7/favicon-16x16.png
deleted file mode 100644
index 2e07b15e106..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/favicon-16x16.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/favicon-196x196.png b/apps/docs/public/favicon/archive/lw7/favicon-196x196.png
deleted file mode 100644
index d10fc7e36d9..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/favicon-196x196.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/favicon-32x32.png b/apps/docs/public/favicon/archive/lw7/favicon-32x32.png
deleted file mode 100644
index 4101a08499b..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/favicon-32x32.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/favicon-96x96.png b/apps/docs/public/favicon/archive/lw7/favicon-96x96.png
deleted file mode 100644
index b23072a2c02..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/favicon-96x96.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/favicon.ico b/apps/docs/public/favicon/archive/lw7/favicon.ico
deleted file mode 100644
index 51b9988fdcb..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/favicon.ico and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/mstile-144x144.png b/apps/docs/public/favicon/archive/lw7/mstile-144x144.png
deleted file mode 100644
index c73891c985d..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/mstile-144x144.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/mstile-150x150.png b/apps/docs/public/favicon/archive/lw7/mstile-150x150.png
deleted file mode 100644
index bd10ae0a5df..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/mstile-150x150.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/mstile-310x150.png b/apps/docs/public/favicon/archive/lw7/mstile-310x150.png
deleted file mode 100644
index fb4d58022df..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/mstile-310x150.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/mstile-310x310.png b/apps/docs/public/favicon/archive/lw7/mstile-310x310.png
deleted file mode 100644
index 0adc45ea0ac..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/mstile-310x310.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw7/mstile-70x70.png b/apps/docs/public/favicon/archive/lw7/mstile-70x70.png
deleted file mode 100644
index 2206096f21b..00000000000
Binary files a/apps/docs/public/favicon/archive/lw7/mstile-70x70.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/android-icon-144x144.png b/apps/docs/public/favicon/archive/lw8/android-icon-144x144.png
deleted file mode 100644
index e34cdc489bf..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/android-icon-144x144.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/android-icon-192x192.png b/apps/docs/public/favicon/archive/lw8/android-icon-192x192.png
deleted file mode 100644
index 3779f7008a4..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/android-icon-192x192.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/android-icon-36x36.png b/apps/docs/public/favicon/archive/lw8/android-icon-36x36.png
deleted file mode 100644
index 620f828d767..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/android-icon-36x36.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/android-icon-48x48.png b/apps/docs/public/favicon/archive/lw8/android-icon-48x48.png
deleted file mode 100644
index 0918c9d5a5f..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/android-icon-48x48.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/android-icon-72x72.png b/apps/docs/public/favicon/archive/lw8/android-icon-72x72.png
deleted file mode 100644
index 83dfc47bd21..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/android-icon-72x72.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/android-icon-96x96.png b/apps/docs/public/favicon/archive/lw8/android-icon-96x96.png
deleted file mode 100644
index 5f1fda34086..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/android-icon-96x96.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-114x114.png b/apps/docs/public/favicon/archive/lw8/apple-icon-114x114.png
deleted file mode 100644
index f32fa5c91e5..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-114x114.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-120x120.png b/apps/docs/public/favicon/archive/lw8/apple-icon-120x120.png
deleted file mode 100644
index f740816a889..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-120x120.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-144x144.png b/apps/docs/public/favicon/archive/lw8/apple-icon-144x144.png
deleted file mode 100644
index e34cdc489bf..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-144x144.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-152x152.png b/apps/docs/public/favicon/archive/lw8/apple-icon-152x152.png
deleted file mode 100644
index 07dbf228a9a..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-152x152.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-180x180.png b/apps/docs/public/favicon/archive/lw8/apple-icon-180x180.png
deleted file mode 100644
index bf1bfbf7f00..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-180x180.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-57x57.png b/apps/docs/public/favicon/archive/lw8/apple-icon-57x57.png
deleted file mode 100644
index e24842ebed2..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-57x57.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-60x60.png b/apps/docs/public/favicon/archive/lw8/apple-icon-60x60.png
deleted file mode 100644
index 7075a8eb8c5..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-60x60.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-72x72.png b/apps/docs/public/favicon/archive/lw8/apple-icon-72x72.png
deleted file mode 100644
index 83dfc47bd21..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-72x72.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-76x76.png b/apps/docs/public/favicon/archive/lw8/apple-icon-76x76.png
deleted file mode 100644
index 283e804eee7..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-76x76.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon-precomposed.png b/apps/docs/public/favicon/archive/lw8/apple-icon-precomposed.png
deleted file mode 100644
index 7d55e102305..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon-precomposed.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/apple-icon.png b/apps/docs/public/favicon/archive/lw8/apple-icon.png
deleted file mode 100644
index 7d55e102305..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/apple-icon.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/favicon-16x16.png b/apps/docs/public/favicon/archive/lw8/favicon-16x16.png
deleted file mode 100644
index 9dc90100bf3..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/favicon-16x16.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/favicon-32x32.png b/apps/docs/public/favicon/archive/lw8/favicon-32x32.png
deleted file mode 100644
index b8fd7965f93..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/favicon-32x32.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/favicon-96x96.png b/apps/docs/public/favicon/archive/lw8/favicon-96x96.png
deleted file mode 100644
index 408eebc96d7..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/favicon-96x96.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/favicon.ico b/apps/docs/public/favicon/archive/lw8/favicon.ico
deleted file mode 100644
index 97615df1d2d..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/favicon.ico and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/ms-icon-144x144.png b/apps/docs/public/favicon/archive/lw8/ms-icon-144x144.png
deleted file mode 100644
index bcbff0884b1..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/ms-icon-144x144.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/ms-icon-150x150.png b/apps/docs/public/favicon/archive/lw8/ms-icon-150x150.png
deleted file mode 100644
index c61ccd6bc02..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/ms-icon-150x150.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/ms-icon-310x310.png b/apps/docs/public/favicon/archive/lw8/ms-icon-310x310.png
deleted file mode 100644
index 474d2d508f4..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/ms-icon-310x310.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/lw8/ms-icon-70x70.png b/apps/docs/public/favicon/archive/lw8/ms-icon-70x70.png
deleted file mode 100644
index c0f3a66542c..00000000000
Binary files a/apps/docs/public/favicon/archive/lw8/ms-icon-70x70.png and /dev/null differ
diff --git a/apps/docs/public/favicon/archive/manifest.json b/apps/docs/public/favicon/archive/manifest.json
new file mode 100644
index 00000000000..3b557aab8c6
--- /dev/null
+++ b/apps/docs/public/favicon/archive/manifest.json
@@ -0,0 +1,41 @@
+{
+ "name": "App",
+ "icons": [
+ {
+ "src": "/android-icon-36x36.png",
+ "sizes": "36x36",
+ "type": "image/png",
+ "density": "0.75"
+ },
+ {
+ "src": "/android-icon-48x48.png",
+ "sizes": "48x48",
+ "type": "image/png",
+ "density": "1.0"
+ },
+ {
+ "src": "/android-icon-72x72.png",
+ "sizes": "72x72",
+ "type": "image/png",
+ "density": "1.5"
+ },
+ {
+ "src": "/android-icon-96x96.png",
+ "sizes": "96x96",
+ "type": "image/png",
+ "density": "2.0"
+ },
+ {
+ "src": "/android-icon-144x144.png",
+ "sizes": "144x144",
+ "type": "image/png",
+ "density": "3.0"
+ },
+ {
+ "src": "/android-icon-192x192.png",
+ "sizes": "192x192",
+ "type": "image/png",
+ "density": "4.0"
+ }
+ ]
+}
diff --git a/apps/docs/public/favicon/mstile-144x144.png b/apps/docs/public/favicon/archive/ms-icon-144x144.png
similarity index 100%
rename from apps/docs/public/favicon/mstile-144x144.png
rename to apps/docs/public/favicon/archive/ms-icon-144x144.png
diff --git a/apps/docs/public/favicon/mstile-150x150.png b/apps/docs/public/favicon/archive/ms-icon-150x150.png
similarity index 100%
rename from apps/docs/public/favicon/mstile-150x150.png
rename to apps/docs/public/favicon/archive/ms-icon-150x150.png
diff --git a/apps/docs/public/favicon/mstile-310x310.png b/apps/docs/public/favicon/archive/ms-icon-310x310.png
similarity index 100%
rename from apps/docs/public/favicon/mstile-310x310.png
rename to apps/docs/public/favicon/archive/ms-icon-310x310.png
diff --git a/apps/docs/public/favicon/archive/ms-icon-70x70.png b/apps/docs/public/favicon/archive/ms-icon-70x70.png
new file mode 100644
index 00000000000..48f6391fcdc
Binary files /dev/null and b/apps/docs/public/favicon/archive/ms-icon-70x70.png differ
diff --git a/apps/studio/public/favicon/mstile-144x144.png b/apps/docs/public/favicon/archive/mstile-144x144.png
similarity index 100%
rename from apps/studio/public/favicon/mstile-144x144.png
rename to apps/docs/public/favicon/archive/mstile-144x144.png
diff --git a/apps/studio/public/favicon/mstile-150x150.png b/apps/docs/public/favicon/archive/mstile-150x150.png
similarity index 100%
rename from apps/studio/public/favicon/mstile-150x150.png
rename to apps/docs/public/favicon/archive/mstile-150x150.png
diff --git a/apps/docs/public/favicon/mstile-310x150.png b/apps/docs/public/favicon/archive/mstile-310x150.png
similarity index 100%
rename from apps/docs/public/favicon/mstile-310x150.png
rename to apps/docs/public/favicon/archive/mstile-310x150.png
diff --git a/apps/studio/public/favicon/mstile-310x310.png b/apps/docs/public/favicon/archive/mstile-310x310.png
similarity index 100%
rename from apps/studio/public/favicon/mstile-310x310.png
rename to apps/docs/public/favicon/archive/mstile-310x310.png
diff --git a/apps/docs/public/favicon/mstile-70x70.png b/apps/docs/public/favicon/archive/mstile-70x70.png
similarity index 100%
rename from apps/docs/public/favicon/mstile-70x70.png
rename to apps/docs/public/favicon/archive/mstile-70x70.png
diff --git a/apps/docs/public/favicon/site.webmanifest b/apps/docs/public/favicon/archive/site.webmanifest
similarity index 100%
rename from apps/docs/public/favicon/site.webmanifest
rename to apps/docs/public/favicon/archive/site.webmanifest
diff --git a/apps/docs/public/favicon/favicon-16x16.png b/apps/docs/public/favicon/favicon-16x16.png
index fa07282ee8d..6bb606640e0 100644
Binary files a/apps/docs/public/favicon/favicon-16x16.png and b/apps/docs/public/favicon/favicon-16x16.png differ
diff --git a/apps/docs/public/favicon/favicon-32x32.png b/apps/docs/public/favicon/favicon-32x32.png
index 7fa29c547a6..86d22222607 100644
Binary files a/apps/docs/public/favicon/favicon-32x32.png and b/apps/docs/public/favicon/favicon-32x32.png differ
diff --git a/apps/docs/public/favicon/favicon-96x96.png b/apps/docs/public/favicon/favicon-96x96.png
index 0f1351f3670..d3121ca964a 100644
Binary files a/apps/docs/public/favicon/favicon-96x96.png and b/apps/docs/public/favicon/favicon-96x96.png differ
diff --git a/apps/docs/public/favicon/favicon.ico b/apps/docs/public/favicon/favicon.ico
index 5c4d1dcc5cf..343ad561d71 100644
Binary files a/apps/docs/public/favicon/favicon.ico and b/apps/docs/public/favicon/favicon.ico differ
diff --git a/apps/docs/public/favicon/ms-icon-144x144.png b/apps/docs/public/favicon/ms-icon-144x144.png
index 00a5d8b5180..a6af05bf04b 100644
Binary files a/apps/docs/public/favicon/ms-icon-144x144.png and b/apps/docs/public/favicon/ms-icon-144x144.png differ
diff --git a/apps/docs/public/favicon/ms-icon-150x150.png b/apps/docs/public/favicon/ms-icon-150x150.png
index 4de1d9b1cc1..bbdf205047c 100644
Binary files a/apps/docs/public/favicon/ms-icon-150x150.png and b/apps/docs/public/favicon/ms-icon-150x150.png differ
diff --git a/apps/docs/public/favicon/ms-icon-310x310.png b/apps/docs/public/favicon/ms-icon-310x310.png
index 7ea95ae09c0..42bd0698a0f 100644
Binary files a/apps/docs/public/favicon/ms-icon-310x310.png and b/apps/docs/public/favicon/ms-icon-310x310.png differ
diff --git a/apps/docs/public/favicon/ms-icon-70x70.png b/apps/docs/public/favicon/ms-icon-70x70.png
index 48f6391fcdc..b29d70d3bef 100644
Binary files a/apps/docs/public/favicon/ms-icon-70x70.png and b/apps/docs/public/favicon/ms-icon-70x70.png differ
diff --git a/apps/studio/components/interfaces/BranchManagement/BranchPanels.tsx b/apps/studio/components/interfaces/BranchManagement/BranchPanels.tsx
index f2a1cf2035e..425e4b246ad 100644
--- a/apps/studio/components/interfaces/BranchManagement/BranchPanels.tsx
+++ b/apps/studio/components/interfaces/BranchManagement/BranchPanels.tsx
@@ -1,7 +1,14 @@
import { useParams } from 'common'
import dayjs from 'dayjs'
+import { GitPullRequest } from 'lucide-react'
import Link from 'next/link'
import { PropsWithChildren, ReactNode } from 'react'
+import { useInView } from 'react-intersection-observer'
+
+import ShimmeringLoader from 'components/ui/ShimmeringLoader'
+import { useBranchQuery } from 'data/branches/branch-query'
+import { Branch } from 'data/branches/branches-query'
+import { GitHubPullRequest } from 'data/integrations/integrations-github-pull-requests-query'
import {
Badge,
Button,
@@ -15,11 +22,7 @@ import {
IconShield,
IconTrash,
} from 'ui'
-
-import ShimmeringLoader from 'components/ui/ShimmeringLoader'
-import { Branch } from 'data/branches/branches-query'
-import { GitHubPullRequest } from 'data/integrations/integrations-github-pull-requests-query'
-import { GitPullRequest } from 'lucide-react'
+import BranchStatusBadge from './BranchStatusBadge'
interface BranchManagementSectionProps {
header: string
@@ -86,8 +89,8 @@ export const BranchRow = ({
generateCreatePullRequestURL,
onSelectDeleteBranch,
}: BranchRowProps) => {
- const { ref } = useParams()
- const isActive = ref === branch?.project_ref
+ const { ref: projectRef } = useParams()
+ const isActive = projectRef === branch?.project_ref
const daysFromNow = dayjs().diff(dayjs(branch.updated_at), 'day')
const formattedTimeFromNow = dayjs(branch.updated_at).fromNow()
@@ -96,8 +99,23 @@ export const BranchRow = ({
const createPullRequestURL =
generateCreatePullRequestURL?.(branch.git_branch) ?? 'https://github.com'
+ const { ref, inView } = useInView()
+ const { data } = useBranchQuery(
+ { projectRef, id: branch.id },
+ {
+ enabled: inView,
+ refetchInterval(data) {
+ if (data?.status !== 'ACTIVE_HEALTHY') {
+ return 1000 * 3 // 3 seconds
+ }
+
+ return false
+ },
+ }
+ )
+
return (
-