1- import { FetchHttpClient } from '@effect/platform'
2- import { Context , Effect , Layer , pipe , Redacted } from 'effect'
1+ import { Context , Effect , Layer , pipe } from 'effect'
32import * as Commands from '../Commands.ts'
43import { UnableToHandleCommand } from '../Commands.ts'
5- import * as LegacyPrereview from '../legacy-prereview.ts'
64import * as Queries from '../Queries.ts'
7- import { FptsToEffect } from '../RefactoringUtilities/index.ts'
85import { Temporal , type OrcidId } from '../types/index.ts'
96import { possiblePseudonyms } from '../types/Pseudonym.ts'
107import { GetAvailablePseudonym } from './GetAvailablePseudonym.ts'
@@ -17,14 +14,10 @@ import { RegisterPrereviewer } from './RegisterPrereviewer.ts'
1714export class Prereviewers extends Context . Tag ( 'Prereviewers' ) <
1815 Prereviewers ,
1916 {
20- legacyRegister : ( orcidId : OrcidId . OrcidId ) => Effect . Effect < void , UnableToHandleCommand >
2117 register : ( orcidId : OrcidId . OrcidId ) => Effect . Effect < void , UnableToHandleCommand >
2218 isRegistered : Queries . FromOnDemandQuery < typeof IsRegistered >
2319 getPseudonym : Queries . FromOnDemandQuery < typeof GetPseudonym >
2420 listAllPrereviewersForStats : Queries . FromStatefulQuery < typeof ListAllPrereviewersForStats >
25- importRegisteredOrcidId : (
26- orcidId : OrcidId . OrcidId ,
27- ) => ReturnType < Commands . FromCommand < typeof ImportRegisteredPrereviewer > >
2821 importRegisteredPrereviewer : Commands . FromCommand < typeof ImportRegisteredPrereviewer >
2922 }
3023> ( ) { }
@@ -34,9 +27,6 @@ export const { listAllPrereviewersForStats } = Effect.serviceFunctions(Prereview
3427export const layer = Layer . effect (
3528 Prereviewers ,
3629 Effect . gen ( function * ( ) {
37- const fetch = yield * FetchHttpClient . Fetch
38- const legacyPrereviewApi = yield * LegacyPrereview . LegacyPrereviewApi
39-
4030 const importRegisteredPrereviewer = yield * Commands . makeCommand ( ImportRegisteredPrereviewer )
4131 const registerPrereviewer = yield * Commands . makeCommand ( RegisterPrereviewer )
4232
@@ -47,19 +37,6 @@ export const layer = Layer.effect(
4737 )
4838
4939 return {
50- legacyRegister : orcid =>
51- pipe (
52- FptsToEffect . readerTaskEither ( LegacyPrereview . createUserOnLegacyPrereview ( { name : orcid , orcid } ) , {
53- fetch,
54- legacyPrereviewApi : {
55- app : legacyPrereviewApi . app ,
56- key : Redacted . value ( legacyPrereviewApi . key ) ,
57- url : legacyPrereviewApi . origin ,
58- } ,
59- } ) ,
60- Effect . asVoid ,
61- Effect . mapError ( ( ) => new UnableToHandleCommand ( { cause : 'Legacy user API unavailable' } ) ) ,
62- ) ,
6340 register : Effect . fn ( 'Prereviewers.register' ) (
6441 function * ( orcidId ) {
6542 const prereviewer = {
@@ -80,21 +57,6 @@ export const layer = Layer.effect(
8057 isRegistered : yield * Queries . makeOnDemandQuery ( IsRegistered ) ,
8158 getPseudonym : yield * Queries . makeOnDemandQuery ( GetPseudonym ) ,
8259 listAllPrereviewersForStats : yield * Queries . makeStatefulQuery ( ListAllPrereviewersForStats ) ,
83- importRegisteredOrcidId : orcid =>
84- pipe (
85- FptsToEffect . readerTaskEither ( LegacyPrereview . getUserFromLegacyPrereview ( orcid ) , {
86- fetch,
87- legacyPrereviewApi : {
88- app : legacyPrereviewApi . app ,
89- key : Redacted . value ( legacyPrereviewApi . key ) ,
90- url : legacyPrereviewApi . origin ,
91- } ,
92- } ) ,
93- Effect . mapError ( ( ) => new UnableToHandleCommand ( { cause : 'Legacy user API unavailable' } ) ) ,
94- Effect . andThen ( ( { pseudonym, createdAt } ) =>
95- importRegisteredPrereviewer ( { orcidId : orcid , pseudonym, registeredAt : createdAt } ) ,
96- ) ,
97- ) ,
9860 importRegisteredPrereviewer,
9961 }
10062 } ) ,
0 commit comments