INNER CODE UNIT · TypeScript
ApiNamespace
aws-devtools-labs/aws-blocks · packages/bb-auth-basic/src/index.ts:410
return new ApiNamespace(this, 'auth', (context) => ({
getAuthState: async (): Promise<AuthState> => {
const user = await this.getUserFromCookie(context);
if (user) return signedInState(user);
return this.signedOutState();
},
setAuthState: async (input: AuthActionInput): Promise<AuthState> => {
try {
switch (input.action) {
case 'signIn': {
const user = await this.signIn(input.username, input.password, context);
return signedInState(user);
}
case 'signUp': {
await this.signUp(input.username, input.password);
if (this.codeDelivery) {
return confirmingSignUpState();
}