Skip to content

Commit 05ef5ee

Browse files
author
Nika Hassani
committed
chore(auth): sign-up state machine to use AmplifyOutputs instead of AmplifyConfig types
1 parent ca8c795 commit 05ef5ee

File tree

3 files changed

+27
-13
lines changed

3 files changed

+27
-13
lines changed

packages/auth/amplify_auth_cognito_dart/lib/src/state/machines/sign_up_state_machine.dart

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ import 'package:amplify_auth_cognito_dart/src/sdk/cognito_identity_provider.dart
77
import 'package:amplify_auth_cognito_dart/src/state/cognito_state_machine.dart';
88
import 'package:amplify_auth_cognito_dart/src/state/state.dart';
99
import 'package:amplify_core/amplify_core.dart';
10+
// ignore: implementation_imports
11+
import 'package:amplify_core/src/config/amplify_outputs/auth/auth_outputs.dart';
1012

1113
/// {@template amplify_auth_cognito.sign_up_state_machine}
1214
/// Manages user sign up with Cognito.
@@ -34,12 +36,15 @@ final class SignUpStateMachine
3436
return cognitoIdp;
3537
}
3638

37-
CognitoUserPoolConfig get _userPoolConfig {
38-
final userPoolConfig = get<CognitoUserPoolConfig>();
39-
if (userPoolConfig == null) {
39+
AuthOutputs get _authOutputs {
40+
final amplifyOutputs = get<AmplifyOutputs>();
41+
if (amplifyOutputs == null ||
42+
amplifyOutputs.auth == null ||
43+
amplifyOutputs.auth?.userPoolId == null ||
44+
amplifyOutputs.auth?.userPoolClientId == null) {
4045
throw const InvalidAccountTypeException.noUserPool();
4146
}
42-
return userPoolConfig;
47+
return amplifyOutputs.auth!;
4348
}
4449

4550
ASFContextDataProvider get _contextDataProvider => getOrCreate();
@@ -78,7 +83,7 @@ final class SignUpStateMachine
7883
SignUpRequest.build(
7984
(b) {
8085
b
81-
..clientId = _userPoolConfig.appClientId
86+
..clientId = _authOutputs.userPoolClientId
8287
..username = event.parameters.username
8388
..password = event.parameters.password
8489
..clientMetadata.addAll(event.clientMetadata)
@@ -100,11 +105,12 @@ final class SignUpStateMachine
100105
)
101106
..analyticsMetadata = get<AnalyticsMetadataType>()?.toBuilder();
102107

103-
final clientSecret = _userPoolConfig.appClientSecret;
108+
// ignore: invalid_use_of_internal_member
109+
final clientSecret = _authOutputs.appClientSecret;
104110
if (clientSecret != null) {
105111
b.secretHash = computeSecretHash(
106112
event.parameters.username,
107-
_userPoolConfig.appClientId,
113+
_authOutputs.userPoolClientId!,
108114
clientSecret,
109115
);
110116
}
@@ -138,17 +144,18 @@ final class SignUpStateMachine
138144
await _cognito.confirmSignUp(
139145
ConfirmSignUpRequest.build((b) {
140146
b
141-
..clientId = _userPoolConfig.appClientId
147+
..clientId = _authOutputs.userPoolClientId
142148
..username = event.username
143149
..confirmationCode = event.confirmationCode
144150
..clientMetadata.addAll(event.clientMetadata)
145151
..analyticsMetadata = get<AnalyticsMetadataType>()?.toBuilder();
146152

147-
final clientSecret = _userPoolConfig.appClientSecret;
153+
// ignore: invalid_use_of_internal_member
154+
final clientSecret = _authOutputs.appClientSecret;
148155
if (clientSecret != null) {
149156
b.secretHash = computeSecretHash(
150157
event.username,
151-
_userPoolConfig.appClientId,
158+
_authOutputs.userPoolClientId!,
152159
clientSecret,
153160
);
154161
}

packages/auth/amplify_auth_cognito_test/test/plugin/sign_up_test.dart

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,9 @@ void main() {
4747
userSub: userSub,
4848
),
4949
);
50-
stateMachine.addInstance<CognitoIdentityProviderClient>(mockIdp);
50+
stateMachine
51+
..addInstance<CognitoIdentityProviderClient>(mockIdp)
52+
..addInstance<AmplifyOutputs>(mockConfig);
5153

5254
await expectLater(
5355
plugin.signUp(
@@ -96,7 +98,9 @@ void main() {
9698
codeDeliveryDetails: codeDeliveryDetails,
9799
),
98100
);
99-
stateMachine.addInstance<CognitoIdentityProviderClient>(mockIdp);
101+
stateMachine
102+
..addInstance<CognitoIdentityProviderClient>(mockIdp)
103+
..addInstance<AmplifyOutputs>(mockConfig);
100104

101105
await expectLater(
102106
plugin.signUp(

packages/auth/amplify_auth_cognito_test/test/state/sign_up_state_machine_test.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
22
// SPDX-License-Identifier: Apache-2.0
33

4-
import 'package:amplify_auth_cognito_dart/amplify_auth_cognito_dart.dart';
54
import 'package:amplify_auth_cognito_dart/src/model/sign_up_parameters.dart';
65
import 'package:amplify_auth_cognito_dart/src/sdk/cognito_identity_provider.dart';
76
import 'package:amplify_auth_cognito_dart/src/state/cognito_state_machine.dart';
87
import 'package:amplify_auth_cognito_dart/src/state/state.dart';
98
import 'package:amplify_auth_cognito_test/common/mock_clients.dart';
109
import 'package:amplify_auth_cognito_test/common/mock_config.dart';
1110
import 'package:amplify_auth_cognito_test/common/mock_secure_storage.dart';
11+
import 'package:amplify_core/amplify_core.dart';
1212
import 'package:amplify_secure_storage_dart/amplify_secure_storage_dart.dart';
1313
import 'package:stream_transform/stream_transform.dart';
1414
import 'package:test/test.dart';
@@ -50,6 +50,7 @@ void main() {
5050

5151
stateMachine
5252
..addInstance<CognitoIdentityProviderClient>(client)
53+
..addInstance<AmplifyOutputs>(mockConfig)
5354
..dispatch(signUpEvent).ignore();
5455

5556
expect(
@@ -78,6 +79,7 @@ void main() {
7879

7980
stateMachine
8081
..addInstance<CognitoIdentityProviderClient>(client)
82+
..addInstance<AmplifyOutputs>(mockConfig)
8183
..dispatch(signUpEvent).ignore();
8284

8385
await expectLater(
@@ -118,6 +120,7 @@ void main() {
118120

119121
stateMachine
120122
..addInstance<CognitoIdentityProviderClient>(client)
123+
..addInstance<AmplifyOutputs>(mockConfig)
121124
..dispatch(signUpEvent).ignore();
122125

123126
await expectLater(

0 commit comments

Comments
 (0)