diff --git a/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiService.ts b/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiService.ts index b6de0da15..bfd184210 100644 --- a/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiService.ts +++ b/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiService.ts @@ -58,10 +58,7 @@ export class AuthenticatorApiService implements AuthenticatorApiServiceInterface } } - async generateRegistrationOptions( - userUuid: string, - username: string, - ): Promise { + async generateRegistrationOptions(): Promise { if (this.operationsInProgress.get(AuthenticatorApiOperations.GenerateRegistrationOptions)) { throw new ApiCallError(ErrorMessage.GenericInProgress) } @@ -69,10 +66,7 @@ export class AuthenticatorApiService implements AuthenticatorApiServiceInterface this.operationsInProgress.set(AuthenticatorApiOperations.GenerateRegistrationOptions, true) try { - const response = await this.authenticatorServer.generateRegistrationOptions({ - username, - userUuid, - }) + const response = await this.authenticatorServer.generateRegistrationOptions() return response } catch (error) { @@ -116,7 +110,7 @@ export class AuthenticatorApiService implements AuthenticatorApiServiceInterface this.operationsInProgress.set(AuthenticatorApiOperations.GenerateAuthenticationOptions, true) try { - const response = await this.authenticatorServer.generateAuthenticationOptions({}) + const response = await this.authenticatorServer.generateAuthenticationOptions() return response } catch (error) { diff --git a/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiServiceInterface.ts b/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiServiceInterface.ts index 5619a8d42..ed814b68e 100644 --- a/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiServiceInterface.ts +++ b/packages/api/src/Domain/Client/Authenticator/AuthenticatorApiServiceInterface.ts @@ -10,10 +10,7 @@ import { export interface AuthenticatorApiServiceInterface { list(): Promise delete(authenticatorId: string): Promise - generateRegistrationOptions( - userUuid: string, - username: string, - ): Promise + generateRegistrationOptions(): Promise verifyRegistrationResponse( userUuid: string, name: string, diff --git a/packages/api/src/Domain/Request/Authenticator/GenerateAuthenticatorAuthenticationOptionsRequestParams.ts b/packages/api/src/Domain/Request/Authenticator/GenerateAuthenticatorAuthenticationOptionsRequestParams.ts deleted file mode 100644 index f5d5f4f26..000000000 --- a/packages/api/src/Domain/Request/Authenticator/GenerateAuthenticatorAuthenticationOptionsRequestParams.ts +++ /dev/null @@ -1,3 +0,0 @@ -export interface GenerateAuthenticatorAuthenticationOptionsRequestParams { - [additionalParam: string]: unknown -} diff --git a/packages/api/src/Domain/Request/Authenticator/GenerateAuthenticatorRegistrationOptionsRequestParams.ts b/packages/api/src/Domain/Request/Authenticator/GenerateAuthenticatorRegistrationOptionsRequestParams.ts deleted file mode 100644 index 80ecd9465..000000000 --- a/packages/api/src/Domain/Request/Authenticator/GenerateAuthenticatorRegistrationOptionsRequestParams.ts +++ /dev/null @@ -1,5 +0,0 @@ -export interface GenerateAuthenticatorRegistrationOptionsRequestParams { - userUuid: string - username: string - [additionalParam: string]: unknown -} diff --git a/packages/api/src/Domain/Request/index.ts b/packages/api/src/Domain/Request/index.ts index ee6c7e1be..ed13a52ca 100644 --- a/packages/api/src/Domain/Request/index.ts +++ b/packages/api/src/Domain/Request/index.ts @@ -1,7 +1,5 @@ export * from './ApiEndpointParam' export * from './Authenticator/DeleteAuthenticatorRequestParams' -export * from './Authenticator/GenerateAuthenticatorAuthenticationOptionsRequestParams' -export * from './Authenticator/GenerateAuthenticatorRegistrationOptionsRequestParams' export * from './Authenticator/ListAuthenticatorsRequestParams' export * from './Authenticator/VerifyAuthenticatorAuthenticationResponseRequestParams' export * from './Authenticator/VerifyAuthenticatorRegistrationResponseRequestParams' diff --git a/packages/api/src/Domain/Server/Authenticator/AuthenticatorServer.ts b/packages/api/src/Domain/Server/Authenticator/AuthenticatorServer.ts index f2511ba14..a7e51acf9 100644 --- a/packages/api/src/Domain/Server/Authenticator/AuthenticatorServer.ts +++ b/packages/api/src/Domain/Server/Authenticator/AuthenticatorServer.ts @@ -2,9 +2,7 @@ import { HttpServiceInterface } from '../../Http/HttpServiceInterface' import { ListAuthenticatorsRequestParams, DeleteAuthenticatorRequestParams, - GenerateAuthenticatorRegistrationOptionsRequestParams, VerifyAuthenticatorRegistrationResponseRequestParams, - GenerateAuthenticatorAuthenticationOptionsRequestParams, VerifyAuthenticatorAuthenticationResponseRequestParams, } from '../../Request' import { @@ -33,10 +31,8 @@ export class AuthenticatorServer implements AuthenticatorServerInterface { return response as DeleteAuthenticatorResponse } - async generateRegistrationOptions( - params: GenerateAuthenticatorRegistrationOptionsRequestParams, - ): Promise { - const response = await this.httpService.get(Paths.v1.generateRegistrationOptions, params) + async generateRegistrationOptions(): Promise { + const response = await this.httpService.get(Paths.v1.generateRegistrationOptions) return response as GenerateAuthenticatorRegistrationOptionsResponse } @@ -49,10 +45,8 @@ export class AuthenticatorServer implements AuthenticatorServerInterface { return response as VerifyAuthenticatorRegistrationResponseResponse } - async generateAuthenticationOptions( - params: GenerateAuthenticatorAuthenticationOptionsRequestParams, - ): Promise { - const response = await this.httpService.get(Paths.v1.generateAuthenticationOptions, params) + async generateAuthenticationOptions(): Promise { + const response = await this.httpService.get(Paths.v1.generateAuthenticationOptions) return response as GenerateAuthenticatorAuthenticationOptionsResponse } diff --git a/packages/api/src/Domain/Server/Authenticator/AuthenticatorServerInterface.ts b/packages/api/src/Domain/Server/Authenticator/AuthenticatorServerInterface.ts index c43704241..a1a8ed418 100644 --- a/packages/api/src/Domain/Server/Authenticator/AuthenticatorServerInterface.ts +++ b/packages/api/src/Domain/Server/Authenticator/AuthenticatorServerInterface.ts @@ -1,9 +1,7 @@ import { ListAuthenticatorsRequestParams, DeleteAuthenticatorRequestParams, - GenerateAuthenticatorRegistrationOptionsRequestParams, VerifyAuthenticatorRegistrationResponseRequestParams, - GenerateAuthenticatorAuthenticationOptionsRequestParams, VerifyAuthenticatorAuthenticationResponseRequestParams, } from '../../Request' import { @@ -18,15 +16,11 @@ import { export interface AuthenticatorServerInterface { list(params: ListAuthenticatorsRequestParams): Promise delete(params: DeleteAuthenticatorRequestParams): Promise - generateRegistrationOptions( - params: GenerateAuthenticatorRegistrationOptionsRequestParams, - ): Promise + generateRegistrationOptions(): Promise verifyRegistrationResponse( params: VerifyAuthenticatorRegistrationResponseRequestParams, ): Promise - generateAuthenticationOptions( - params: GenerateAuthenticatorAuthenticationOptionsRequestParams, - ): Promise + generateAuthenticationOptions(): Promise verifyAuthenticationResponse( params: VerifyAuthenticatorAuthenticationResponseRequestParams, ): Promise diff --git a/packages/services/src/Domain/Authenticator/AuthenticatorClientInterface.ts b/packages/services/src/Domain/Authenticator/AuthenticatorClientInterface.ts index df11ab19f..aa7d9795d 100644 --- a/packages/services/src/Domain/Authenticator/AuthenticatorClientInterface.ts +++ b/packages/services/src/Domain/Authenticator/AuthenticatorClientInterface.ts @@ -1,9 +1,9 @@ -import { Username, Uuid } from '@standardnotes/domain-core' +import { Uuid } from '@standardnotes/domain-core' export interface AuthenticatorClientInterface { list(): Promise> delete(authenticatorId: Uuid): Promise - generateRegistrationOptions(userUuid: Uuid, username: Username): Promise | null> + generateRegistrationOptions(): Promise | null> verifyRegistrationResponse( userUuid: Uuid, name: string, diff --git a/packages/services/src/Domain/Authenticator/AuthenticatorManager.ts b/packages/services/src/Domain/Authenticator/AuthenticatorManager.ts index bd110ea9e..ddd1be832 100644 --- a/packages/services/src/Domain/Authenticator/AuthenticatorManager.ts +++ b/packages/services/src/Domain/Authenticator/AuthenticatorManager.ts @@ -1,7 +1,7 @@ /* istanbul ignore file */ import { AuthenticatorApiServiceInterface } from '@standardnotes/api' -import { Username, Uuid } from '@standardnotes/domain-core' +import { Uuid } from '@standardnotes/domain-core' import { InternalEventBusInterface } from '../Internal/InternalEventBusInterface' import { AbstractService } from '../Service/AbstractService' @@ -43,9 +43,9 @@ export class AuthenticatorManager extends AbstractService implements Authenticat } } - async generateRegistrationOptions(userUuid: Uuid, username: Username): Promise | null> { + async generateRegistrationOptions(): Promise | null> { try { - const result = await this.authenticatorApiService.generateRegistrationOptions(userUuid.value, username.value) + const result = await this.authenticatorApiService.generateRegistrationOptions() if (result.data.error) { return null diff --git a/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.spec.ts b/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.spec.ts index d229c2baf..3e239b4b5 100644 --- a/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.spec.ts +++ b/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.spec.ts @@ -23,7 +23,6 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: 'invalid', - username: 'username', authenticatorName: 'authenticatorName', }) @@ -31,25 +30,11 @@ describe('AddAuthenticator', () => { expect(result.getError()).toBe('Could not generate authenticator registration options: Given value is not a valid uuid: invalid') }) - it('should return error if username is invalid', async () => { - const useCase = createUseCase() - - const result = await useCase.execute({ - userUuid: '00000000-0000-0000-0000-000000000000', - username: '', - authenticatorName: 'authenticatorName', - }) - - expect(result.isFailed()).toBe(true) - expect(result.getError()).toBe('Could not generate authenticator registration options: Username cannot be empty') - }) - it('should return error if authenticatorName is invalid', async () => { const useCase = createUseCase() const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', authenticatorName: '', }) @@ -64,7 +49,6 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', authenticatorName: 'authenticator', }) @@ -79,7 +63,6 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', authenticatorName: 'authenticator', }) @@ -96,7 +79,6 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', authenticatorName: 'authenticator', }) @@ -111,7 +93,7 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', + authenticatorName: 'authenticator', }) @@ -124,7 +106,6 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', authenticatorName: 'authenticator', }) @@ -136,7 +117,6 @@ describe('AddAuthenticator', () => { const result = await useCase.execute({ userUuid: '00000000-0000-0000-0000-000000000000', - username: 'username', authenticatorName: 'authenticator', }) diff --git a/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.ts b/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.ts index b7de6ce2f..d8bceb528 100644 --- a/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.ts +++ b/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticator.ts @@ -1,5 +1,5 @@ import { AuthenticatorClientInterface } from '@standardnotes/services' -import { Result, UseCaseInterface, Username, Uuid, Validator } from '@standardnotes/domain-core' +import { Result, UseCaseInterface, Uuid, Validator } from '@standardnotes/domain-core' import { AddAuthenticatorDTO } from './AddAuthenticatorDTO' @@ -24,12 +24,6 @@ export class AddAuthenticator implements UseCaseInterface { } const userUuid = userUuidOrError.getValue() - const usernameOrError = Username.create(dto.username) - if (usernameOrError.isFailed()) { - return Result.fail(`Could not generate authenticator registration options: ${usernameOrError.getError()}`) - } - const username = usernameOrError.getValue() - const authenticatorNameValidatorResult = Validator.isNotEmpty(dto.authenticatorName) if (authenticatorNameValidatorResult.isFailed()) { return Result.fail( @@ -37,7 +31,7 @@ export class AddAuthenticator implements UseCaseInterface { ) } - const registrationOptions = await this.authenticatorClient.generateRegistrationOptions(userUuid, username) + const registrationOptions = await this.authenticatorClient.generateRegistrationOptions() if (registrationOptions === null) { return Result.fail('Could not generate authenticator registration options') } diff --git a/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticatorDTO.ts b/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticatorDTO.ts index abe33ab1a..77aa3d8bd 100644 --- a/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticatorDTO.ts +++ b/packages/snjs/lib/Domain/UseCase/AddAuthenticator/AddAuthenticatorDTO.ts @@ -1,5 +1,4 @@ export interface AddAuthenticatorDTO { userUuid: string - username: string authenticatorName: string }