Skip to content

Commit cb3e3e0

Browse files
authored
feat: rename ClerkAuthProvider to ClerkAuthState to clarify its usage (#100)
1 parent 52c8dd3 commit cb3e3e0

22 files changed

+208
-203
lines changed

packages/clerk_auth/lib/src/clerk_auth/auth.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class Auth {
9595

9696
/// A method to be overridden by extension classes to cope with
9797
/// updating their systems when things change (e.g. the clerk_flutter
98-
/// [ClerkAuthProvider] class)
98+
/// ClerkAuth class)
9999
///
100100
void update() {}
101101

packages/clerk_auth/test/integration/clerk_api/environment_test.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,22 @@ import '../../test_helpers.dart';
77
void main() {
88
late final Api api;
99
late final TestEnv env;
10-
final httpClient = TestHttpClient();
10+
final httpService = TestHttpService();
1111

1212
setUpAll(() async {
1313
env = TestEnv('.env.test');
1414
api = Api(
1515
publishableKey: env.publishableKey,
1616
persistor: Persistor.none,
17-
httpService: httpClient,
17+
httpService: httpService,
1818
);
1919
await setUpLogging(printer: TestLogPrinter(), level: Level.SEVERE);
2020
});
2121

2222
group('Environment:', () {
2323
test('can fetch', () async {
2424
await runWithLogging(() async {
25-
httpClient.expect(
25+
httpService.expect(
2626
'GET /v1/environment',
2727
200,
2828
'{}',

packages/clerk_auth/test/integration/clerk_api/sign_in_test.dart

Lines changed: 13 additions & 13 deletions
Large diffs are not rendered by default.

packages/clerk_auth/test/integration/clerk_api/sign_up_test.dart

Lines changed: 9 additions & 9 deletions
Large diffs are not rendered by default.

packages/clerk_auth/test/integration/clerk_api/user_details_test.dart

Lines changed: 19 additions & 19 deletions
Large diffs are not rendered by default.

packages/clerk_auth/test/integration/clerk_auth/sign_in_test.dart

Lines changed: 17 additions & 17 deletions
Large diffs are not rendered by default.

packages/clerk_auth/test/integration/clerk_auth/sign_up_test.dart

Lines changed: 13 additions & 13 deletions
Large diffs are not rendered by default.

packages/clerk_auth/test/test_helpers.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class TestLogPrinter extends Printer {
3434
}
3535
}
3636

37-
class TestHttpClient implements HttpService {
37+
class TestHttpService implements HttpService {
3838
final _expectations = <String, List<Response>>{};
3939

4040
@override
@@ -51,7 +51,7 @@ class TestHttpClient implements HttpService {
5151
final resp = resps.removeAt(0);
5252
return Future.value(resp);
5353
}
54-
throw TestHttpClientError(message: 'No response available for $key');
54+
throw TestHttpServiceError(message: 'No response available for $key');
5555
}
5656

5757
void expect(String key, int status, String body) {
@@ -112,11 +112,11 @@ class TestHttpClient implements HttpService {
112112
}
113113
}
114114

115-
class TestHttpClientError extends Error {
116-
TestHttpClientError({required this.message});
115+
class TestHttpServiceError extends Error {
116+
TestHttpServiceError({required this.message});
117117

118118
final String message;
119119

120120
@override
121-
String toString() => 'TestHttpClientError: $message';
121+
String toString() => '$runtimeType: $message';
122122
}

packages/clerk_flutter/lib/clerk_flutter.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/// Package that will allow you to authenticate and use Clerk from Flutter code.
22
library;
33

4-
export 'src/clerk_auth_provider.dart';
4+
export 'src/clerk_auth_state.dart';
55
export 'src/utils/clerk_telemetry.dart';
66
export 'src/utils/clerk_translator.dart';
77
export 'src/widgets/authentication/clerk_authentication_widget.dart';

packages/clerk_flutter/lib/src/clerk_auth_provider.dart renamed to packages/clerk_flutter/lib/src/clerk_auth_state.dart

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import 'package:webview_flutter/webview_flutter.dart';
99
/// An extension of [clerk.Auth] with [ChangeNotifier] so that
1010
/// updates to the auth state can be propagated out into the UI
1111
///
12-
class ClerkAuthProvider extends clerk.Auth with ChangeNotifier {
13-
/// Construct a [ClerkAuthProvider]
14-
ClerkAuthProvider._({
12+
class ClerkAuthState extends clerk.Auth with ChangeNotifier {
13+
/// Construct a [ClerkAuthState]
14+
ClerkAuthState._({
1515
required super.publishableKey,
1616
required super.persistor,
1717
required this.translator,
@@ -21,15 +21,15 @@ class ClerkAuthProvider extends clerk.Auth with ChangeNotifier {
2121
builder: (context) => loading ?? defaultLoadingWidget,
2222
);
2323

24-
/// Create an [ClerkAuthProvider] object using appropriate Clerk credentials
25-
static Future<ClerkAuthProvider> create({
24+
/// Create an [ClerkAuthState] object using appropriate Clerk credentials
25+
static Future<ClerkAuthState> create({
2626
required String publishableKey,
2727
clerk.Persistor? persistor,
2828
ClerkTranslator translator = const DefaultClerkTranslator(),
2929
clerk.SessionTokenPollMode pollMode = clerk.SessionTokenPollMode.onDemand,
3030
Widget? loading,
3131
}) async {
32-
final provider = ClerkAuthProvider._(
32+
final provider = ClerkAuthState._(
3333
publishableKey: publishableKey,
3434
persistor: persistor ??
3535
await clerk.DefaultPersistor.create(
@@ -71,10 +71,10 @@ class ClerkAuthProvider extends clerk.Auth with ChangeNotifier {
7171
clerk.Strategy strategy, {
7272
void Function(clerk.AuthError)? onError,
7373
}) async {
74-
final auth = ClerkAuth.of(context, listen: false);
74+
final authState = ClerkAuth.of(context, listen: false);
7575
final client = await call(
7676
context,
77-
() => auth.oauthSignIn(strategy: strategy),
77+
() => authState.oauthSignIn(strategy: strategy),
7878
onError: onError,
7979
);
8080
final url = client?.signIn?.firstFactorVerification?.providerUrl;
@@ -92,13 +92,13 @@ class ClerkAuthProvider extends clerk.Auth with ChangeNotifier {
9292
if (token case String token) {
9393
await call(
9494
context,
95-
() => auth.attemptSignIn(strategy: strategy, token: token),
95+
() => authState.attemptSignIn(strategy: strategy, token: token),
9696
onError: onError,
9797
);
9898
} else {
99-
await auth.refreshClient();
99+
await authState.refreshClient();
100100
if (context.mounted) {
101-
await call(context, () => auth.transfer(), onError: onError);
101+
await call(context, () => authState.transfer(), onError: onError);
102102
}
103103
}
104104
if (context.mounted) {
@@ -119,15 +119,17 @@ class ClerkAuthProvider extends clerk.Auth with ChangeNotifier {
119119
}) async {
120120
T? result;
121121
try {
122-
if (context.mounted) {
122+
if (context.mounted && !_loadingOverlay.mounted) {
123123
Overlay.of(context).insert(_loadingOverlay);
124124
}
125125
result = await fn();
126126
} on clerk.AuthError catch (error) {
127127
_errors.add(error);
128128
onError?.call(error);
129129
} finally {
130-
_loadingOverlay.remove();
130+
if (_loadingOverlay.mounted) {
131+
_loadingOverlay.remove();
132+
}
131133
}
132134
return result;
133135
}

0 commit comments

Comments
 (0)