From 6732266141c33c959a9a667dad35858fbbd311c4 Mon Sep 17 00:00:00 2001 From: Gildas Garcia <1122076+djhi@users.noreply.github.com> Date: Wed, 3 Jul 2024 11:59:36 +0200 Subject: [PATCH] Enable strictNullChecks --- package.json | 2 +- packages/ra-supabase-core/src/authProvider.ts | 19 +-- .../ra-supabase-core/src/useResetPassword.ts | 12 ++ .../ra-supabase-core/src/useSetPassword.ts | 12 ++ packages/ra-supabase-core/tsconfig.json | 3 +- .../ra-supabase-language-english/src/index.ts | 1 + .../tsconfig.json | 3 +- .../ra-supabase-language-french/src/index.ts | 2 + .../ra-supabase-language-french/tsconfig.json | 3 +- .../src/ForgotPasswordForm.tsx | 2 +- .../src/SetPasswordForm.tsx | 20 ++- .../ra-supabase-ui-materialui/tsconfig.json | 3 +- packages/ra-supabase/tsconfig.json | 3 +- yarn.lock | 149 +++++++++++++++--- 14 files changed, 197 insertions(+), 37 deletions(-) diff --git a/package.json b/package.json index 4c1e6cc..207f153 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "lerna": "^6.6.2", "prettier": "~2.8.8", "raf": "^3.4.1", - "supabase": "^1.131.2", + "supabase": "^1.178.2", "typescript": "^4.9.5", "ts-jest": "^29.1.0", "whatwg-fetch": "^3.0.0" diff --git a/packages/ra-supabase-core/src/authProvider.ts b/packages/ra-supabase-core/src/authProvider.ts index 884843f..b3872da 100644 --- a/packages/ra-supabase-core/src/authProvider.ts +++ b/packages/ra-supabase-core/src/authProvider.ts @@ -5,7 +5,7 @@ export const supabaseAuthProvider = ( client: SupabaseClient, { getIdentity, getPermissions, redirectTo }: SupabaseAuthProviderOptions ): SupabaseAuthProvider => { - return { + const authProvider: SupabaseAuthProvider = { async login(params) { const emailPasswordParams = params as LoginWithEmailPasswordParams; if (emailPasswordParams.email && emailPasswordParams.password) { @@ -153,21 +153,22 @@ export const supabaseAuthProvider = ( } return undefined; }, - async getIdentity() { + }; + + if (typeof getIdentity === 'function') { + authProvider.getIdentity = async () => { const { data } = await client.auth.getUser(); if (data.user == null) { throw new Error(); } - if (typeof getIdentity === 'function') { - const identity = await getIdentity(data.user); - return identity; - } + const identity = await getIdentity(data.user); + return identity; + }; + } - return undefined; - }, - }; + return authProvider; }; export type GetIdentity = (user: User) => Promise; diff --git a/packages/ra-supabase-core/src/useResetPassword.ts b/packages/ra-supabase-core/src/useResetPassword.ts index f231ce3..5f77875 100644 --- a/packages/ra-supabase-core/src/useResetPassword.ts +++ b/packages/ra-supabase-core/src/useResetPassword.ts @@ -35,6 +35,18 @@ export const useResetPassword = ( const notify = useNotify(); const authProvider = useAuthProvider(); + if (authProvider == null) { + throw new Error( + 'No authProvider found. Did you forget to set up an AuthProvider on the component?' + ); + } + + if (authProvider.resetPassword == null) { + throw new Error( + 'The authProvider does not support the resetPassword() method' + ); + } + const { onSuccess = () => { notify('ra-supabase.auth.password_reset', { type: 'info' }); diff --git a/packages/ra-supabase-core/src/useSetPassword.ts b/packages/ra-supabase-core/src/useSetPassword.ts index 8848834..ca4a68c 100644 --- a/packages/ra-supabase-core/src/useSetPassword.ts +++ b/packages/ra-supabase-core/src/useSetPassword.ts @@ -44,6 +44,18 @@ export const useSetPassword = ( const redirect = useRedirect(); const authProvider = useAuthProvider(); + if (authProvider == null) { + throw new Error( + 'No authProvider found. Did you forget to set up an AuthProvider on the component?' + ); + } + + if (authProvider.setPassword == null) { + throw new Error( + 'The authProvider does not support the setPassword() method' + ); + } + const { onSuccess = () => redirect('/'), onError = error => notify(error.message, { type: 'error' }), diff --git a/packages/ra-supabase-core/tsconfig.json b/packages/ra-supabase-core/tsconfig.json index e250c5d..bfe4f60 100644 --- a/packages/ra-supabase-core/tsconfig.json +++ b/packages/ra-supabase-core/tsconfig.json @@ -5,7 +5,8 @@ "rootDir": "src", "declaration": true, "declarationMap": true, - "allowJs": false + "allowJs": false, + "strictNullChecks": true }, "exclude": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js"], "include": ["src"], diff --git a/packages/ra-supabase-language-english/src/index.ts b/packages/ra-supabase-language-english/src/index.ts index 04a2d42..fb5ebb2 100644 --- a/packages/ra-supabase-language-english/src/index.ts +++ b/packages/ra-supabase-language-english/src/index.ts @@ -8,6 +8,7 @@ export const raSupabaseEnglishMessages = { reset_password: 'Reset password', password_reset: 'Your password has been reset. You will receive an email containing a link to log in.', + missing_tokens: 'Access and refresh tokens are missing', }, validation: { password_mismatch: 'Passwords do not match', diff --git a/packages/ra-supabase-language-english/tsconfig.json b/packages/ra-supabase-language-english/tsconfig.json index f9f0259..f1c48b3 100644 --- a/packages/ra-supabase-language-english/tsconfig.json +++ b/packages/ra-supabase-language-english/tsconfig.json @@ -5,7 +5,8 @@ "rootDir": "src", "declaration": true, "declarationMap": true, - "allowJs": false + "allowJs": false, + "strictNullChecks": true }, "exclude": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js"], "include": ["src"] diff --git a/packages/ra-supabase-language-french/src/index.ts b/packages/ra-supabase-language-french/src/index.ts index 53df030..4184cfa 100644 --- a/packages/ra-supabase-language-french/src/index.ts +++ b/packages/ra-supabase-language-french/src/index.ts @@ -8,6 +8,8 @@ export const raSupabaseFrenchMessages = { reset_password: 'Réinitialiser le mot de passe', password_reset: 'Votre mot de passe a été réinitialisé. Vous recevrez un email contenant un lien pour vous connecter.', + missing_tokens: + "Les jetons d'accès et de rafraîchissement sont manquants", }, validation: { password_mismatch: 'Les mots de passe ne correspondent pas', diff --git a/packages/ra-supabase-language-french/tsconfig.json b/packages/ra-supabase-language-french/tsconfig.json index f9f0259..f1c48b3 100644 --- a/packages/ra-supabase-language-french/tsconfig.json +++ b/packages/ra-supabase-language-french/tsconfig.json @@ -5,7 +5,8 @@ "rootDir": "src", "declaration": true, "declarationMap": true, - "allowJs": false + "allowJs": false, + "strictNullChecks": true }, "exclude": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js"], "include": ["src"] diff --git a/packages/ra-supabase-ui-materialui/src/ForgotPasswordForm.tsx b/packages/ra-supabase-ui-materialui/src/ForgotPasswordForm.tsx index 3cb5e88..64ef62e 100644 --- a/packages/ra-supabase-ui-materialui/src/ForgotPasswordForm.tsx +++ b/packages/ra-supabase-ui-materialui/src/ForgotPasswordForm.tsx @@ -69,7 +69,7 @@ export const ForgotPasswordForm = () => { }; interface FormData { - email?: string; + email: string; } const PREFIX = 'RaSupabaseForgotPasswordForm'; diff --git a/packages/ra-supabase-ui-materialui/src/SetPasswordForm.tsx b/packages/ra-supabase-ui-materialui/src/SetPasswordForm.tsx index 046453d..4dd4129 100644 --- a/packages/ra-supabase-ui-materialui/src/SetPasswordForm.tsx +++ b/packages/ra-supabase-ui-materialui/src/SetPasswordForm.tsx @@ -13,6 +13,7 @@ export const SetPasswordForm = () => { const refresh_token = useSupabaseAccessToken({ parameterName: 'refresh_token', }); + const notify = useNotify(); const translate = useTranslate(); const [setPassword] = useSetPassword({ @@ -45,9 +46,22 @@ export const SetPasswordForm = () => { confirmPassword: 'ra-supabase.validation.password_mismatch', }; } - return undefined; + return {}; }; + if (!access_token || !refresh_token) { + if (process.env.NODE_ENV === 'development') { + console.error( + 'Missing access_token or refresh_token for set password' + ); + } + return ( +
+
{translate('ra-supabase.auth.missing_tokens')}
+
+ ); + } + const submit = (values: FormData) => { return setPassword({ access_token, @@ -94,8 +108,8 @@ export const SetPasswordForm = () => { }; interface FormData { - password?: string; - confirmPassword?: string; + password: string; + confirmPassword: string; } const PREFIX = 'RaSupabaseSetPasswordForm'; diff --git a/packages/ra-supabase-ui-materialui/tsconfig.json b/packages/ra-supabase-ui-materialui/tsconfig.json index f9f0259..f1c48b3 100644 --- a/packages/ra-supabase-ui-materialui/tsconfig.json +++ b/packages/ra-supabase-ui-materialui/tsconfig.json @@ -5,7 +5,8 @@ "rootDir": "src", "declaration": true, "declarationMap": true, - "allowJs": false + "allowJs": false, + "strictNullChecks": true }, "exclude": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js"], "include": ["src"] diff --git a/packages/ra-supabase/tsconfig.json b/packages/ra-supabase/tsconfig.json index f9f0259..f1c48b3 100644 --- a/packages/ra-supabase/tsconfig.json +++ b/packages/ra-supabase/tsconfig.json @@ -5,7 +5,8 @@ "rootDir": "src", "declaration": true, "declarationMap": true, - "allowJs": false + "allowJs": false, + "strictNullChecks": true }, "exclude": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js"], "include": ["src"] diff --git a/yarn.lock b/yarn.lock index cfce2d0..24b799d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1415,6 +1415,13 @@ wrap-ansi "^8.1.0" wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" +"@isaacs/fs-minipass@^4.0.0": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz#2d59ae3ab4b38fb4270bfa23d30f8e2e86c7fe32" + integrity sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w== + dependencies: + minipass "^7.0.4" + "@isaacs/string-locale-compare@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" @@ -4063,6 +4070,11 @@ chownr@^2.0.0: resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== +chownr@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-3.0.0.tgz#9855e64ecd240a9cc4267ce8a4aa5d24a1da15e4" + integrity sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g== + ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" @@ -6281,6 +6293,18 @@ glob@^10.2.2: minipass "^5.0.0 || ^6.0.2 || ^7.0.0" path-scurry "^1.10.1" +glob@^10.3.7: + version "10.4.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.2.tgz#bed6b95dade5c1f80b4434daced233aee76160e5" + integrity sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -7188,6 +7212,15 @@ jackspeak@^2.3.5: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" +jackspeak@^3.1.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.0.tgz#a75763ff36ad778ede6a156d8ee8b124de445b4a" + integrity sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jake@^10.8.5: version "10.8.5" resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" @@ -8098,6 +8131,11 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +lru-cache@^10.2.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.3.0.tgz#4a4aaf10c84658ab70f79a85a9a3f1e1fb11196b" + integrity sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -8328,6 +8366,13 @@ minimatch@^9.0.0, minimatch@^9.0.1: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -8432,6 +8477,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== +minipass@^7.0.4, minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -8440,6 +8490,14 @@ minizlib@^2.1.1, minizlib@^2.1.2: minipass "^3.0.0" yallist "^4.0.0" +minizlib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-3.0.1.tgz#46d5329d1eb3c83924eff1d3b858ca0a31581012" + integrity sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg== + dependencies: + minipass "^7.0.4" + rimraf "^5.0.5" + mkdirp-infer-owner@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" @@ -8461,6 +8519,11 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== +mkdirp@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50" + integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg== + modify-values@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" @@ -9161,6 +9224,11 @@ p-waterfall@2.1.1: dependencies: p-reduce "^2.0.0" +package-json-from-dist@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz#e501cd3094b278495eb4258d4c9f6d5ac3019f00" + integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw== + pacote@15.1.1: version "15.1.1" resolved "https://registry.yarnpkg.com/pacote/-/pacote-15.1.1.tgz#94d8c6e0605e04d427610b3aacb0357073978348" @@ -9297,6 +9365,14 @@ path-scurry@^1.10.1, path-scurry@^1.6.1: lru-cache "^9.1.1 || ^10.0.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -10165,6 +10241,13 @@ rimraf@^4.4.1: dependencies: glob "^9.2.0" +rimraf@^5.0.5: + version "5.0.7" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.7.tgz#27bddf202e7d89cb2e0381656380d1734a854a74" + integrity sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg== + dependencies: + glob "^10.3.7" + rimraf@~2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" @@ -10578,7 +10661,16 @@ string-natural-compare@^3.0.1: resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw== -"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -10678,7 +10770,14 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -10738,15 +10837,15 @@ stylis@4.2.0: resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== -supabase@^1.131.2: - version "1.131.2" - resolved "https://registry.yarnpkg.com/supabase/-/supabase-1.131.2.tgz#8b69951290ee2d7fd931db9ae6b807e017546418" - integrity sha512-9wI4bdMfUfZhwz9JaXCZ4MGlwgT5++GgiXRj9Pjiy0LY+8ocBWQ/jmEnzjWg39AN7h4hnfWoOA7T3x5JkeMxNA== +supabase@^1.178.2: + version "1.178.2" + resolved "https://registry.yarnpkg.com/supabase/-/supabase-1.178.2.tgz#f7efaed43031258f9770f7a287cf26becd8f5083" + integrity sha512-JdjNY56cF5PbuhFdhgdYah5qXOPRsLQn0kXaY7uapTFopdIFX4tRiFXqKSig8S0SdznF/y/f6vLdq30Sek1ZZQ== dependencies: bin-links "^4.0.3" https-proxy-agent "^7.0.2" node-fetch "^3.3.2" - tar "6.2.0" + tar "7.4.0" supports-color@^5.3.0: version "5.5.0" @@ -10802,17 +10901,17 @@ tar@6.1.11: mkdirp "^1.0.3" yallist "^4.0.0" -tar@6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.0.tgz#b14ce49a79cb1cd23bc9b016302dea5474493f73" - integrity sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ== +tar@7.4.0: + version "7.4.0" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.4.0.tgz#e513afef5ba20ce250fd99397b4599db07d06443" + integrity sha512-XQs0S8fuAkQWuqhDeCdMlJXDX80D7EOVLDPVFkna9yQfzS+PHKgfxcei0jf6/+QAWcjqrnC8uM3fSAnrQl+XYg== dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^5.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" + "@isaacs/fs-minipass" "^4.0.0" + chownr "^3.0.0" + minipass "^7.1.2" + minizlib "^3.0.1" + mkdirp "^3.0.1" + yallist "^5.0.0" tar@^6.1.11, tar@^6.1.2: version "6.1.13" @@ -11551,7 +11650,7 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -11569,6 +11668,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" @@ -11677,6 +11785,11 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== +yallist@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533" + integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw== + yaml@^1.10.0: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"