1010using Supabase . Core . Extensions ;
1111using Supabase . Functions . Exceptions ;
1212using Supabase . Functions . Interfaces ;
13- using Supabase . Functions . Responses ;
1413
1514[ assembly: InternalsVisibleTo ( "FunctionsTests" ) ]
1615
@@ -21,6 +20,7 @@ public partial class Client : IFunctionsClient
2120 {
2221 private HttpClient _httpClient = new HttpClient ( ) ;
2322 private readonly string _baseUrl ;
23+ private FunctionRegion _region ;
2424
2525 /// <summary>
2626 /// Function that can be set to return dynamic headers.
@@ -33,9 +33,11 @@ public partial class Client : IFunctionsClient
3333 /// Initializes a functions client
3434 /// </summary>
3535 /// <param name="baseUrl"></param>
36- public Client ( string baseUrl )
36+ /// <param name="region"></param>
37+ public Client ( string baseUrl , FunctionRegion ? region = null )
3738 {
3839 _baseUrl = baseUrl ;
40+ _region = region ?? FunctionRegion . Any ;
3941 }
4042
4143 /// <summary>
@@ -126,9 +128,14 @@ private async Task<HttpResponseMessage> HandleRequest(
126128
127129 options . Headers [ "X-Client-Info" ] = Util . GetAssemblyVersion ( typeof ( Client ) ) ;
128130
129- if ( options . FunctionRegion != FunctionRegion . Any )
131+ if ( options . FunctionRegion != null )
130132 {
131- options . Headers [ "x-region" ] = options . FunctionRegion . ToString ( ) ;
133+ _region = options . FunctionRegion ;
134+ }
135+
136+ if ( _region != FunctionRegion . Any )
137+ {
138+ options . Headers [ "x-region" ] = _region . ToString ( ) ;
132139 }
133140
134141 var builder = new UriBuilder ( url ) ;
0 commit comments