From 97801646d3c6d83bdada8422fd94b9786e8c4bd6 Mon Sep 17 00:00:00 2001 From: Ryo Igarashi Date: Sun, 20 Nov 2022 23:00:16 +0900 Subject: [PATCH 1/3] chore: Introduce barrelsby --- cspell.json | 1 + packages/@neet/vschedule-api/barrelsby.json | 12 ++++ packages/@neet/vschedule-api/package.json | 4 +- .../src/adapters/controllers/auth.ts | 2 +- .../src/adapters/controllers/index.ts | 7 ++ .../src/adapters/controllers/rest/index.ts | 5 ++ .../src/adapters/controllers/rest/v1/index.ts | 8 +++ .../controllers/rest/v1/organizations.ts | 2 +- .../controllers/rest/v1/performers.ts | 2 +- .../adapters/controllers/rest/v1/streams.ts | 2 +- .../src/adapters/controllers/websub/index.ts | 5 ++ .../@neet/vschedule-api/src/adapters/index.ts | 8 +++ .../src/adapters/mappers/index.ts | 7 ++ .../src/adapters/query-services/index.ts | 31 ++------ .../organization-query-service-prisma.ts | 2 +- .../performer-query-service-prisma.ts | 2 +- .../adapters/query-services/query-services.ts | 25 +++++++ .../stream-query-service-prisma.ts | 2 +- .../src/adapters/repositories/index.ts | 72 ++----------------- .../media-attachment-repository-prisma.ts | 2 +- .../organization-repository-prisma.ts | 2 +- .../performer-repository-prisma.ts | 2 +- .../src/adapters/repositories/repositories.ts | 69 ++++++++++++++++++ .../repositories/stream-repository-prisma.ts | 2 +- .../repositories/token-repository-prisma.ts | 2 +- .../repositories/user-repository-prisma.ts | 2 +- .../vschedule-api/src/app/_external/index.ts | 4 ++ .../src/app/_shared/config/index.ts | 4 ++ .../src/app/_shared/errors/index.ts | 4 ++ .../vschedule-api/src/app/_shared/index.ts | 8 ++- .../@neet/vschedule-api/src/app/factories.ts | 6 +- packages/@neet/vschedule-api/src/app/index.ts | 20 +++--- .../src/app/media-attachment/index.ts | 4 ++ .../src/app/organization/index.ts | 5 ++ .../vschedule-api/src/app/performer/index.ts | 5 ++ .../vschedule-api/src/app/stream/index.ts | 5 ++ .../src/app/stream/list-streams.ts | 6 +- .../app/token/create-resubscription-task.ts | 7 +- .../vschedule-api/src/app/token/index.ts | 4 ++ .../@neet/vschedule-api/src/app/user/index.ts | 4 ++ .../vschedule-api/src/domain/_core/index.ts | 4 ++ .../src/domain/entities/__fixtures__/index.ts | 6 ++ .../domain/entities/_shared/actor/index.ts | 4 ++ .../src/domain/entities/_shared/index.ts | 6 +- .../src/domain/entities/branch/branch-id.ts | 3 +- .../src/domain/entities/branch/branch.ts | 9 ++- .../src/domain/entities/branch/index.ts | 4 ++ .../src/domain/entities/index.ts | 23 +++--- .../domain/entities/media-attachment/index.ts | 4 ++ .../src/domain/entities/organization/index.ts | 4 ++ .../src/domain/entities/performer/index.ts | 4 ++ .../entities/resubscription-task/index.ts | 4 ++ .../src/domain/entities/stream/index.ts | 4 ++ .../entities/stream/stream-repository.ts | 4 +- .../src/domain/entities/stream/stream.spec.ts | 2 +- .../src/domain/entities/token/index.ts | 4 ++ .../src/domain/entities/user/index.ts | 4 ++ .../@neet/vschedule-api/src/domain/index.ts | 10 ++- .../src/domain/services/index.ts | 5 ++ packages/@neet/vschedule-api/src/index.ts | 9 +++ packages/@neet/vschedule-api/src/infra/app.ts | 26 ++++--- .../@neet/vschedule-api/src/infra/index.ts | 11 +++ .../src/infra/inversify-config.ts | 18 ++--- .../src/infra/middlewares/index.ts | 8 +++ .../vschedule-api/src/infra/passport/index.ts | 6 ++ .../vschedule-api/src/infra/services/index.ts | 16 +++++ yarn.lock | 50 ++++++++++++- 67 files changed, 452 insertions(+), 166 deletions(-) create mode 100644 packages/@neet/vschedule-api/barrelsby.json create mode 100644 packages/@neet/vschedule-api/src/adapters/controllers/index.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/controllers/rest/index.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/index.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/controllers/websub/index.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/index.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/mappers/index.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/query-services/query-services.ts create mode 100644 packages/@neet/vschedule-api/src/adapters/repositories/repositories.ts create mode 100644 packages/@neet/vschedule-api/src/domain/entities/__fixtures__/index.ts create mode 100644 packages/@neet/vschedule-api/src/index.ts create mode 100644 packages/@neet/vschedule-api/src/infra/index.ts create mode 100644 packages/@neet/vschedule-api/src/infra/middlewares/index.ts create mode 100644 packages/@neet/vschedule-api/src/infra/services/index.ts diff --git a/cspell.json b/cspell.json index 915f0326..38290ba4 100644 --- a/cspell.json +++ b/cspell.json @@ -11,6 +11,7 @@ "agpl", "aspida", "asteasolutions", + "barrelsby", "bodyparser", "chromaui", "cloudsdktool", diff --git a/packages/@neet/vschedule-api/barrelsby.json b/packages/@neet/vschedule-api/barrelsby.json new file mode 100644 index 00000000..143f7410 --- /dev/null +++ b/packages/@neet/vschedule-api/barrelsby.json @@ -0,0 +1,12 @@ +{ + "directory": ["./src"], + "delete": true, + "exclude": [ + "(.+?)\\.spec\\.(tsx?|jsx?)", + "(.+?)\\.stories\\.(tsx?|jsx?)", + "generated", + "./src/infra/setup.ts", + "./src/infra/server.ts" + ], + "location": "all" +} diff --git a/packages/@neet/vschedule-api/package.json b/packages/@neet/vschedule-api/package.json index 81697b3b..e9612f1d 100644 --- a/packages/@neet/vschedule-api/package.json +++ b/packages/@neet/vschedule-api/package.json @@ -6,7 +6,8 @@ "build": "yarn run codegen && tsc", "start": "node ./dist/src/infra/server.js", "dev": "ts-node-dev --respawn --transpile-only --exit-child ./src/infra/server", - "test": "jest --runInBand --coverage" + "test": "jest --runInBand --coverage", + "generate-barrels": "barrelsby -c barrelsby.json" }, "dependencies": { "@google-cloud/connect-firestore": "^2.0.2", @@ -78,6 +79,7 @@ "@types/supertest": "^2.0.12", "@types/swagger-ui-express": "^4.1.3", "@types/validator": "^13.7.10", + "barrelsby": "^2.5.1", "eslint": "^8.27.0", "execa": "^5.1.1", "jest": "^29.3.1", diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts b/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts index 0f82db3a..641f09a5 100644 --- a/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts +++ b/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts @@ -12,7 +12,7 @@ import { import { CreateUser } from '../../app'; import { Methods } from '../generated/auth/signup'; -import { RestPresenter } from '../mappers/rest-presenter'; +import { RestPresenter } from '../mappers'; @injectable() @JsonController('/auth') diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/index.ts b/packages/@neet/vschedule-api/src/adapters/controllers/index.ts new file mode 100644 index 00000000..e491397c --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/controllers/index.ts @@ -0,0 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './auth'; +export * from './rest/index'; +export * from './websub/index'; diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/rest/index.ts b/packages/@neet/vschedule-api/src/adapters/controllers/rest/index.ts new file mode 100644 index 00000000..26d4a07d --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/controllers/rest/index.ts @@ -0,0 +1,5 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './v1/index'; diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/index.ts b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/index.ts new file mode 100644 index 00000000..cae9647e --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/index.ts @@ -0,0 +1,8 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './media'; +export * from './organizations'; +export * from './performers'; +export * from './streams'; diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/organizations.ts b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/organizations.ts index a87d550b..1034c5cb 100644 --- a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/organizations.ts +++ b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/organizations.ts @@ -4,7 +4,7 @@ import { Get, JsonController, Param, QueryParams } from 'routing-controllers'; import { ListOrganization, ShowOrganization } from '../../../../app'; import { Methods } from '../../../generated/rest/v1/organizations'; import { Methods as MethodsId } from '../../../generated/rest/v1/organizations/_organizationId@string'; -import { RestPresenter } from '../../../mappers/rest-presenter'; +import { RestPresenter } from '../../../mappers'; @injectable() @JsonController() diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/performers.ts b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/performers.ts index d4b65a0b..274eadd2 100644 --- a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/performers.ts +++ b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/performers.ts @@ -15,7 +15,7 @@ import { SubscribeToPerformer, } from '../../../../app'; import { Methods } from '../../../generated/rest/v1/performers'; -import { RestPresenter } from '../../../mappers/rest-presenter'; +import { RestPresenter } from '../../../mappers'; @injectable() @JsonController('/rest/v1/performers') diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/streams.ts b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/streams.ts index 3a9cffc0..3d5efbee 100644 --- a/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/streams.ts +++ b/packages/@neet/vschedule-api/src/adapters/controllers/rest/v1/streams.ts @@ -10,7 +10,7 @@ import { import { ListStreams, ShowStream } from '../../../../app'; import { Methods } from '../../../generated/rest/v1/streams'; -import { RestPresenter } from '../../../mappers/rest-presenter'; +import { RestPresenter } from '../../../mappers'; @injectable() @Controller('/rest/v1/streams') diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/websub/index.ts b/packages/@neet/vschedule-api/src/adapters/controllers/websub/index.ts new file mode 100644 index 00000000..c3f17edb --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/controllers/websub/index.ts @@ -0,0 +1,5 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './youtube'; diff --git a/packages/@neet/vschedule-api/src/adapters/index.ts b/packages/@neet/vschedule-api/src/adapters/index.ts new file mode 100644 index 00000000..ee0ef4a1 --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/index.ts @@ -0,0 +1,8 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './controllers/index'; +export * from './mappers/index'; +export * from './query-services/index'; +export * from './repositories/index'; diff --git a/packages/@neet/vschedule-api/src/adapters/mappers/index.ts b/packages/@neet/vschedule-api/src/adapters/mappers/index.ts new file mode 100644 index 00000000..4011eb7f --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/mappers/index.ts @@ -0,0 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './prisma-dto-mapper'; +export * from './prisma-entity-mapper'; +export * from './rest-presenter'; diff --git a/packages/@neet/vschedule-api/src/adapters/query-services/index.ts b/packages/@neet/vschedule-api/src/adapters/query-services/index.ts index 00de8383..69bc33d2 100644 --- a/packages/@neet/vschedule-api/src/adapters/query-services/index.ts +++ b/packages/@neet/vschedule-api/src/adapters/query-services/index.ts @@ -1,25 +1,8 @@ -import { ContainerModule } from 'inversify'; +/** + * @file Automatically generated by barrelsby. + */ -import { - IOrganizationQueryService, - IPerformerQueryService, - IStreamQueryService, -} from '../../app'; -import { TYPES } from '../../types'; -import { OrganizationQueryServicePrisma } from './organization-query-service-prisma'; -import { PerformerQueryServicePrisma } from './performer-query-service-prisma'; -import { StreamQueryServicePrisma } from './stream-query-service-prisma'; - -const prisma = new ContainerModule((bind) => { - bind(TYPES.StreamQueryService).to( - StreamQueryServicePrisma, - ); - bind(TYPES.PerformerQueryService).to( - PerformerQueryServicePrisma, - ); - bind(TYPES.OrganizationQueryService).to( - OrganizationQueryServicePrisma, - ); -}); - -export const queryServices = { prisma }; +export * from './organization-query-service-prisma'; +export * from './performer-query-service-prisma'; +export * from './query-services'; +export * from './stream-query-service-prisma'; diff --git a/packages/@neet/vschedule-api/src/adapters/query-services/organization-query-service-prisma.ts b/packages/@neet/vschedule-api/src/adapters/query-services/organization-query-service-prisma.ts index 376c4666..1c6c5531 100644 --- a/packages/@neet/vschedule-api/src/adapters/query-services/organization-query-service-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/query-services/organization-query-service-prisma.ts @@ -8,7 +8,7 @@ import { } from '../../app'; import { OrganizationId, YoutubeChannelId } from '../../domain'; import { TYPES } from '../../types'; -import { transferOrganizationFromPrisma } from '../mappers/prisma-dto-mapper'; +import { transferOrganizationFromPrisma } from '../mappers'; const DEFAULT_INCLUDE = Object.freeze({ actor: { diff --git a/packages/@neet/vschedule-api/src/adapters/query-services/performer-query-service-prisma.ts b/packages/@neet/vschedule-api/src/adapters/query-services/performer-query-service-prisma.ts index 6a3c5145..9baee483 100644 --- a/packages/@neet/vschedule-api/src/adapters/query-services/performer-query-service-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/query-services/performer-query-service-prisma.ts @@ -8,7 +8,7 @@ import { } from '../../app'; import { PerformerId, YoutubeChannelId } from '../../domain'; import { TYPES } from '../../types'; -import { transferPerformerFromPrisma } from '../mappers/prisma-dto-mapper'; +import { transferPerformerFromPrisma } from '../mappers'; const DEFAULT_INCLUDE = { actor: { diff --git a/packages/@neet/vschedule-api/src/adapters/query-services/query-services.ts b/packages/@neet/vschedule-api/src/adapters/query-services/query-services.ts new file mode 100644 index 00000000..00de8383 --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/query-services/query-services.ts @@ -0,0 +1,25 @@ +import { ContainerModule } from 'inversify'; + +import { + IOrganizationQueryService, + IPerformerQueryService, + IStreamQueryService, +} from '../../app'; +import { TYPES } from '../../types'; +import { OrganizationQueryServicePrisma } from './organization-query-service-prisma'; +import { PerformerQueryServicePrisma } from './performer-query-service-prisma'; +import { StreamQueryServicePrisma } from './stream-query-service-prisma'; + +const prisma = new ContainerModule((bind) => { + bind(TYPES.StreamQueryService).to( + StreamQueryServicePrisma, + ); + bind(TYPES.PerformerQueryService).to( + PerformerQueryServicePrisma, + ); + bind(TYPES.OrganizationQueryService).to( + OrganizationQueryServicePrisma, + ); +}); + +export const queryServices = { prisma }; diff --git a/packages/@neet/vschedule-api/src/adapters/query-services/stream-query-service-prisma.ts b/packages/@neet/vschedule-api/src/adapters/query-services/stream-query-service-prisma.ts index cb01dc45..31f6255a 100644 --- a/packages/@neet/vschedule-api/src/adapters/query-services/stream-query-service-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/query-services/stream-query-service-prisma.ts @@ -9,7 +9,7 @@ import { } from '../../app'; import { StreamId } from '../../domain'; import { TYPES } from '../../types'; -import { transferStreamFromPrisma } from '../mappers/prisma-dto-mapper'; +import { transferStreamFromPrisma } from '../mappers'; const SHARED_INCLUDE = { thumbnail: true, diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/index.ts b/packages/@neet/vschedule-api/src/adapters/repositories/index.ts index f98ea9a2..ed9ec7e9 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/index.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/index.ts @@ -1,75 +1,11 @@ -import { ContainerModule } from 'inversify'; +/** + * @file Automatically generated by barrelsby. + */ -import { - IMediaAttachmentRepository, - IOrganizationRepository, - IPerformerRepository, - IResubscriptionTaskRepository, - IStreamRepository, - ITokenRepository, - IUserRepository, -} from '../../domain'; -import { TYPES } from '../../types'; -import { MediaAttachmentRepositoryPrisma } from './media-attachment-repository-prisma'; -import { OrganizationRepositoryPrisma } from './organization-repository-prisma'; -import { PerformerRepositoryPrisma } from './performer-repository-prisma'; -import { ResubscriptionTaskRepositoryCloudTasks } from './resubscription-task-repository-cloud-tasks'; -import { ResubscriptionTaskRepositoryInMemory } from './resubscription-task-repository-in-memory'; -import { StreamRepositoryPrisma } from './stream-repository-prisma'; -import { TokenRepositoryPrisma } from './token-repository-prisma'; -import { UserRepositoryPrisma } from './user-repository-prisma'; - -const prisma = new ContainerModule((bind) => { - bind(TYPES.PerformerRepository).to( - PerformerRepositoryPrisma, - ); - - bind(TYPES.OrganizationRepository).to( - OrganizationRepositoryPrisma, - ); - - bind(TYPES.StreamRepository).to(StreamRepositoryPrisma); - - bind(TYPES.MediaAttachmentRepository).to( - MediaAttachmentRepositoryPrisma, - ); - - bind(TYPES.ResubscriptionTaskRepository).to( - ResubscriptionTaskRepositoryCloudTasks, - ); - - bind(TYPES.UserRepository).to(UserRepositoryPrisma); - - bind(TYPES.TokenRepository).to(TokenRepositoryPrisma); -}); - -const withoutGcp = new ContainerModule((bind) => { - bind(TYPES.PerformerRepository).to( - PerformerRepositoryPrisma, - ); - - bind(TYPES.OrganizationRepository).to( - OrganizationRepositoryPrisma, - ); - - bind(TYPES.StreamRepository).to(StreamRepositoryPrisma); - - bind(TYPES.MediaAttachmentRepository).to( - MediaAttachmentRepositoryPrisma, - ); - bind(TYPES.UserRepository).to(UserRepositoryPrisma); - - bind(TYPES.TokenRepository).to(TokenRepositoryPrisma); - - bind(TYPES.ResubscriptionTaskRepository) - .to(ResubscriptionTaskRepositoryInMemory) - .inSingletonScope(); -}); - -export const repositories = { prisma, withoutGcp }; export * from './media-attachment-repository-prisma'; export * from './organization-repository-prisma'; export * from './performer-repository-prisma'; +export * from './repositories'; export * from './resubscription-task-repository-cloud-tasks'; export * from './resubscription-task-repository-in-memory'; export * from './stream-repository-prisma'; diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/media-attachment-repository-prisma.ts b/packages/@neet/vschedule-api/src/adapters/repositories/media-attachment-repository-prisma.ts index b6725d4b..f5dbf569 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/media-attachment-repository-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/media-attachment-repository-prisma.ts @@ -10,7 +10,7 @@ import { MediaAttachmentId, } from '../../domain'; import { TYPES } from '../../types'; -import { rehydrateMediaAttachmentFromPrisma } from '../mappers/prisma-entity-mapper'; +import { rehydrateMediaAttachmentFromPrisma } from '../mappers'; @injectable() export class MediaAttachmentRepositoryPrisma diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/organization-repository-prisma.ts b/packages/@neet/vschedule-api/src/adapters/repositories/organization-repository-prisma.ts index 7f989318..199af0dd 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/organization-repository-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/organization-repository-prisma.ts @@ -12,7 +12,7 @@ import { YoutubeChannelId, } from '../../domain'; import { TYPES } from '../../types'; -import { rehydrateOrganizationFromPrisma } from '../mappers/prisma-entity-mapper'; +import { rehydrateOrganizationFromPrisma } from '../mappers'; @injectable() export class OrganizationRepositoryPrisma implements IOrganizationRepository { diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/performer-repository-prisma.ts b/packages/@neet/vschedule-api/src/adapters/repositories/performer-repository-prisma.ts index c9ef258f..aa39c98d 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/performer-repository-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/performer-repository-prisma.ts @@ -11,7 +11,7 @@ import { YoutubeChannelId, } from '../../domain'; import { TYPES } from '../../types'; -import { rehydratePerformerFromPrisma } from '../mappers/prisma-entity-mapper'; +import { rehydratePerformerFromPrisma } from '../mappers'; @injectable() export class PerformerRepositoryPrisma implements IPerformerRepository { diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/repositories.ts b/packages/@neet/vschedule-api/src/adapters/repositories/repositories.ts new file mode 100644 index 00000000..69bb6ff5 --- /dev/null +++ b/packages/@neet/vschedule-api/src/adapters/repositories/repositories.ts @@ -0,0 +1,69 @@ +import { ContainerModule } from 'inversify'; + +import { + IMediaAttachmentRepository, + IOrganizationRepository, + IPerformerRepository, + IResubscriptionTaskRepository, + IStreamRepository, + ITokenRepository, + IUserRepository, +} from '../../domain'; +import { TYPES } from '../../types'; +import { MediaAttachmentRepositoryPrisma } from './media-attachment-repository-prisma'; +import { OrganizationRepositoryPrisma } from './organization-repository-prisma'; +import { PerformerRepositoryPrisma } from './performer-repository-prisma'; +import { ResubscriptionTaskRepositoryCloudTasks } from './resubscription-task-repository-cloud-tasks'; +import { ResubscriptionTaskRepositoryInMemory } from './resubscription-task-repository-in-memory'; +import { StreamRepositoryPrisma } from './stream-repository-prisma'; +import { TokenRepositoryPrisma } from './token-repository-prisma'; +import { UserRepositoryPrisma } from './user-repository-prisma'; + +const prisma = new ContainerModule((bind) => { + bind(TYPES.PerformerRepository).to( + PerformerRepositoryPrisma, + ); + + bind(TYPES.OrganizationRepository).to( + OrganizationRepositoryPrisma, + ); + + bind(TYPES.StreamRepository).to(StreamRepositoryPrisma); + + bind(TYPES.MediaAttachmentRepository).to( + MediaAttachmentRepositoryPrisma, + ); + + bind(TYPES.ResubscriptionTaskRepository).to( + ResubscriptionTaskRepositoryCloudTasks, + ); + + bind(TYPES.UserRepository).to(UserRepositoryPrisma); + + bind(TYPES.TokenRepository).to(TokenRepositoryPrisma); +}); + +const withoutGcp = new ContainerModule((bind) => { + bind(TYPES.PerformerRepository).to( + PerformerRepositoryPrisma, + ); + + bind(TYPES.OrganizationRepository).to( + OrganizationRepositoryPrisma, + ); + + bind(TYPES.StreamRepository).to(StreamRepositoryPrisma); + + bind(TYPES.MediaAttachmentRepository).to( + MediaAttachmentRepositoryPrisma, + ); + bind(TYPES.UserRepository).to(UserRepositoryPrisma); + + bind(TYPES.TokenRepository).to(TokenRepositoryPrisma); + + bind(TYPES.ResubscriptionTaskRepository) + .to(ResubscriptionTaskRepositoryInMemory) + .inSingletonScope(); +}); + +export const repositories = { prisma, withoutGcp }; diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/stream-repository-prisma.ts b/packages/@neet/vschedule-api/src/adapters/repositories/stream-repository-prisma.ts index 03e4ac87..820c1816 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/stream-repository-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/stream-repository-prisma.ts @@ -10,7 +10,7 @@ import { unwrap, } from '../../domain'; import { TYPES } from '../../types'; -import { rehydrateStreamFromPrisma } from '../mappers/prisma-entity-mapper'; +import { rehydrateStreamFromPrisma } from '../mappers'; @injectable() export class StreamRepositoryPrisma implements IStreamRepository { diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/token-repository-prisma.ts b/packages/@neet/vschedule-api/src/adapters/repositories/token-repository-prisma.ts index b874c0d4..ee7c35b5 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/token-repository-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/token-repository-prisma.ts @@ -3,7 +3,7 @@ import { inject, injectable } from 'inversify'; import { ITokenRepository, Token, TokenId } from '../../domain'; import { TYPES } from '../../types'; -import { rehydrateTokenFromPrisma } from '../mappers/prisma-entity-mapper'; +import { rehydrateTokenFromPrisma } from '../mappers'; @injectable() export class TokenRepositoryPrisma implements ITokenRepository { diff --git a/packages/@neet/vschedule-api/src/adapters/repositories/user-repository-prisma.ts b/packages/@neet/vschedule-api/src/adapters/repositories/user-repository-prisma.ts index e20bd576..e6a2e6d6 100644 --- a/packages/@neet/vschedule-api/src/adapters/repositories/user-repository-prisma.ts +++ b/packages/@neet/vschedule-api/src/adapters/repositories/user-repository-prisma.ts @@ -3,7 +3,7 @@ import { inject, injectable } from 'inversify'; import { IUserRepository, User, UserEmail, UserId } from '../../domain'; import { TYPES } from '../../types'; -import { rehydrateUserFromPrisma } from '../mappers/prisma-entity-mapper'; +import { rehydrateUserFromPrisma } from '../mappers'; @injectable() export class UserRepositoryPrisma implements IUserRepository { diff --git a/packages/@neet/vschedule-api/src/app/_external/index.ts b/packages/@neet/vschedule-api/src/app/_external/index.ts index 0ad60996..981c5b65 100644 --- a/packages/@neet/vschedule-api/src/app/_external/index.ts +++ b/packages/@neet/vschedule-api/src/app/_external/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './storage'; export * from './youtube-api-service'; export * from './youtube-websub-service'; diff --git a/packages/@neet/vschedule-api/src/app/_shared/config/index.ts b/packages/@neet/vschedule-api/src/app/_shared/config/index.ts index a0a564b8..57932922 100644 --- a/packages/@neet/vschedule-api/src/app/_shared/config/index.ts +++ b/packages/@neet/vschedule-api/src/app/_shared/config/index.ts @@ -1,2 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './config'; export * from './config-base'; diff --git a/packages/@neet/vschedule-api/src/app/_shared/errors/index.ts b/packages/@neet/vschedule-api/src/app/_shared/errors/index.ts index c82815a7..40c62b19 100644 --- a/packages/@neet/vschedule-api/src/app/_shared/errors/index.ts +++ b/packages/@neet/vschedule-api/src/app/_shared/errors/index.ts @@ -1,2 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './app-error'; export * from './unexpected-error'; diff --git a/packages/@neet/vschedule-api/src/app/_shared/index.ts b/packages/@neet/vschedule-api/src/app/_shared/index.ts index 57bb8a26..811ebca0 100644 --- a/packages/@neet/vschedule-api/src/app/_shared/index.ts +++ b/packages/@neet/vschedule-api/src/app/_shared/index.ts @@ -1,3 +1,7 @@ -export * from './config'; -export * from './errors'; +/** + * @file Automatically generated by barrelsby. + */ + +export * from './config/index'; +export * from './errors/index'; export * from './logger'; diff --git a/packages/@neet/vschedule-api/src/app/factories.ts b/packages/@neet/vschedule-api/src/app/factories.ts index 5d893f8a..32386b38 100644 --- a/packages/@neet/vschedule-api/src/app/factories.ts +++ b/packages/@neet/vschedule-api/src/app/factories.ts @@ -6,9 +6,9 @@ import { IStreamFactory, } from '../domain'; import { TYPES } from '../types'; -import { OrganizationFactory } from './organization/organization-factory-impl'; -import { PerformerFactoryImpl } from './performer/performer-factory-impl'; -import { StreamFactoryImpl } from './stream/stream-factory-impl'; +import { OrganizationFactory } from './organization'; +import { PerformerFactoryImpl } from './performer'; +import { StreamFactoryImpl } from './stream'; export const factories = new ContainerModule((bind) => { bind(TYPES.StreamFactory).to(StreamFactoryImpl); diff --git a/packages/@neet/vschedule-api/src/app/index.ts b/packages/@neet/vschedule-api/src/app/index.ts index 16c5ff93..a25b0f87 100644 --- a/packages/@neet/vschedule-api/src/app/index.ts +++ b/packages/@neet/vschedule-api/src/app/index.ts @@ -1,10 +1,14 @@ -export * from './_external'; -export * from './_shared'; +/** + * @file Automatically generated by barrelsby. + */ + +export * from './_external/index'; +export * from './_shared/index'; export * from './dto'; export * from './factories'; -export * from './media-attachment'; -export * from './organization'; -export * from './performer'; -export * from './stream'; -export * from './token'; -export * from './user'; +export * from './media-attachment/index'; +export * from './organization/index'; +export * from './performer/index'; +export * from './stream/index'; +export * from './token/index'; +export * from './user/index'; diff --git a/packages/@neet/vschedule-api/src/app/media-attachment/index.ts b/packages/@neet/vschedule-api/src/app/media-attachment/index.ts index fcbabc85..fdfebaeb 100644 --- a/packages/@neet/vschedule-api/src/app/media-attachment/index.ts +++ b/packages/@neet/vschedule-api/src/app/media-attachment/index.ts @@ -1 +1,5 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './show-media-attachment'; diff --git a/packages/@neet/vschedule-api/src/app/organization/index.ts b/packages/@neet/vschedule-api/src/app/organization/index.ts index 0f648b40..fdd8c7d9 100644 --- a/packages/@neet/vschedule-api/src/app/organization/index.ts +++ b/packages/@neet/vschedule-api/src/app/organization/index.ts @@ -1,4 +1,9 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './list-organizations'; +export * from './organization-factory-impl'; export * from './organization-query-service'; export * from './show-organization'; export * from './upsert-organization'; diff --git a/packages/@neet/vschedule-api/src/app/performer/index.ts b/packages/@neet/vschedule-api/src/app/performer/index.ts index abc929ab..b830c352 100644 --- a/packages/@neet/vschedule-api/src/app/performer/index.ts +++ b/packages/@neet/vschedule-api/src/app/performer/index.ts @@ -1,4 +1,9 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './list-performers'; +export * from './performer-factory-impl'; export * from './performer-query-service'; export * from './show-performer'; export * from './subscribe-to-performer'; diff --git a/packages/@neet/vschedule-api/src/app/stream/index.ts b/packages/@neet/vschedule-api/src/app/stream/index.ts index e0557f11..84957d34 100644 --- a/packages/@neet/vschedule-api/src/app/stream/index.ts +++ b/packages/@neet/vschedule-api/src/app/stream/index.ts @@ -1,5 +1,10 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './list-streams'; export * from './remove-stream'; export * from './show-stream'; +export * from './stream-factory-impl'; export * from './stream-query-service'; export * from './upsert-stream'; diff --git a/packages/@neet/vschedule-api/src/app/stream/list-streams.ts b/packages/@neet/vschedule-api/src/app/stream/list-streams.ts index 89a00340..13639c96 100644 --- a/packages/@neet/vschedule-api/src/app/stream/list-streams.ts +++ b/packages/@neet/vschedule-api/src/app/stream/list-streams.ts @@ -7,12 +7,12 @@ import { ILogger } from '../_shared'; import { StreamDto } from '../dto'; import { IStreamQueryService } from './stream-query-service'; -export interface ListStreamsParams { +export type ListStreamsCommand = { readonly limit?: number; readonly since?: Dayjs; readonly until?: Dayjs; readonly organizationId?: string; -} +}; @injectable() export class ListStreams { @@ -24,7 +24,7 @@ export class ListStreams { private readonly _logger: ILogger, ) {} - async invoke(params: ListStreamsParams = {}): Promise { + async invoke(params: ListStreamsCommand = {}): Promise { this._logger.debug(JSON.stringify(params)); const streams = await this._streamQueryService.queryMany({ diff --git a/packages/@neet/vschedule-api/src/app/token/create-resubscription-task.ts b/packages/@neet/vschedule-api/src/app/token/create-resubscription-task.ts index fe28967a..2616fe06 100644 --- a/packages/@neet/vschedule-api/src/app/token/create-resubscription-task.ts +++ b/packages/@neet/vschedule-api/src/app/token/create-resubscription-task.ts @@ -2,8 +2,11 @@ import dayjs from 'dayjs'; import { inject, injectable } from 'inversify'; import { URL } from 'url'; -import { IPerformerRepository, YoutubeChannelId } from '../../domain'; -import { TaskService } from '../../domain/services/task-service'; +import { + IPerformerRepository, + TaskService, + YoutubeChannelId, +} from '../../domain'; import { TYPES } from '../../types'; import { AppError, IConfig, ILogger } from '../_shared'; diff --git a/packages/@neet/vschedule-api/src/app/token/index.ts b/packages/@neet/vschedule-api/src/app/token/index.ts index 77401d7a..080fb4de 100644 --- a/packages/@neet/vschedule-api/src/app/token/index.ts +++ b/packages/@neet/vschedule-api/src/app/token/index.ts @@ -1,2 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './create-resubscription-task'; export * from './drain-token'; diff --git a/packages/@neet/vschedule-api/src/app/user/index.ts b/packages/@neet/vschedule-api/src/app/user/index.ts index 4654f80a..6ff0e6ce 100644 --- a/packages/@neet/vschedule-api/src/app/user/index.ts +++ b/packages/@neet/vschedule-api/src/app/user/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './create-user'; export * from './login'; export * from './show-user'; diff --git a/packages/@neet/vschedule-api/src/domain/_core/index.ts b/packages/@neet/vschedule-api/src/domain/_core/index.ts index a9f5c58e..61db1572 100644 --- a/packages/@neet/vschedule-api/src/domain/_core/index.ts +++ b/packages/@neet/vschedule-api/src/domain/_core/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './aggregate-root'; export * from './domain-error'; export * from './entity'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/__fixtures__/index.ts b/packages/@neet/vschedule-api/src/domain/entities/__fixtures__/index.ts new file mode 100644 index 00000000..0520c4bb --- /dev/null +++ b/packages/@neet/vschedule-api/src/domain/entities/__fixtures__/index.ts @@ -0,0 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './actor'; +export * from './organization'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/_shared/actor/index.ts b/packages/@neet/vschedule-api/src/domain/entities/_shared/actor/index.ts index af8d66e5..c66b1870 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/_shared/actor/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/_shared/actor/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './actor'; export * from './actor-description'; export * from './actor-name'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/_shared/index.ts b/packages/@neet/vschedule-api/src/domain/entities/_shared/index.ts index 40327738..ed83ab90 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/_shared/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/_shared/index.ts @@ -1,4 +1,8 @@ -export * from './actor'; +/** + * @file Automatically generated by barrelsby. + */ + +export * from './actor/index'; export * from './data-uri'; export * from './timestamps'; export * from './twitter-username'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/branch/branch-id.ts b/packages/@neet/vschedule-api/src/domain/entities/branch/branch-id.ts index 3767b9e4..d013342e 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/branch/branch-id.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/branch/branch-id.ts @@ -1,7 +1,6 @@ import { nanoid } from 'nanoid'; -import { ValueObject } from '../../_core'; -import { isNanoid } from '../../_core/is-nanoid'; +import { isNanoid, ValueObject } from '../../_core'; export class BranchIdInvalidError extends Error { public constructor(public readonly value: string) { diff --git a/packages/@neet/vschedule-api/src/domain/entities/branch/branch.ts b/packages/@neet/vschedule-api/src/domain/entities/branch/branch.ts index df2c6651..139ee64d 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/branch/branch.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/branch/branch.ts @@ -1,8 +1,13 @@ import { Mixin } from 'ts-mixer'; import { AggregateRoot, Recipe } from '../../_core'; -import { ITimestamps, TimestampMixin, Timestamps } from '../_shared'; -import { Actor, ActorProps } from '../_shared/actor'; +import { + Actor, + ActorProps, + ITimestamps, + TimestampMixin, + Timestamps, +} from '../_shared'; import { OrganizationId } from '../organization'; import { BranchId } from './branch-id'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/branch/index.ts b/packages/@neet/vschedule-api/src/domain/entities/branch/index.ts index 681a84d1..debb073b 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/branch/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/branch/index.ts @@ -1,2 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './branch'; export * from './branch-id'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/index.ts b/packages/@neet/vschedule-api/src/domain/entities/index.ts index fcd48d8d..e588537e 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/index.ts @@ -1,9 +1,14 @@ -export * from './_shared'; -export * from './branch'; -export * from './media-attachment'; -export * from './organization'; -export * from './performer'; -export * from './resubscription-task'; -export * from './stream'; -export * from './token'; -export * from './user'; +/** + * @file Automatically generated by barrelsby. + */ + +export * from './__fixtures__/index'; +export * from './_shared/index'; +export * from './branch/index'; +export * from './media-attachment/index'; +export * from './organization/index'; +export * from './performer/index'; +export * from './resubscription-task/index'; +export * from './stream/index'; +export * from './token/index'; +export * from './user/index'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/media-attachment/index.ts b/packages/@neet/vschedule-api/src/domain/entities/media-attachment/index.ts index cb8e3cce..76cbefb8 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/media-attachment/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/media-attachment/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './media-attachment'; export * from './media-attachment-bucket'; export * from './media-attachment-filename'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/organization/index.ts b/packages/@neet/vschedule-api/src/domain/entities/organization/index.ts index 7660d319..8aade1a8 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/organization/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/organization/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './organization'; export * from './organization-factory'; export * from './organization-id'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/performer/index.ts b/packages/@neet/vschedule-api/src/domain/entities/performer/index.ts index f964c74d..0ab7c11a 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/performer/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/performer/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './performer'; export * from './performer-factory'; export * from './performer-id'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/resubscription-task/index.ts b/packages/@neet/vschedule-api/src/domain/entities/resubscription-task/index.ts index 056f47d6..4b0ebc5e 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/resubscription-task/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/resubscription-task/index.ts @@ -1,2 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './resubscription-task'; export * from './resubscription-task-repository'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/stream/index.ts b/packages/@neet/vschedule-api/src/domain/entities/stream/index.ts index 74ac0b2f..a70abc47 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/stream/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/stream/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './stream'; export * from './stream-description'; export * from './stream-factory'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/stream/stream-repository.ts b/packages/@neet/vschedule-api/src/domain/entities/stream/stream-repository.ts index dc0cd38b..1af1269a 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/stream/stream-repository.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/stream/stream-repository.ts @@ -3,11 +3,11 @@ import { URL } from 'url'; import { Stream } from './stream'; import { StreamId } from './stream-id'; -export interface ListStreamsParams { +export type ListStreamsParams = { readonly limit?: number; readonly offset?: number; readonly organizationId?: string; -} +}; export interface IStreamRepository { findById(id: StreamId): Promise; diff --git a/packages/@neet/vschedule-api/src/domain/entities/stream/stream.spec.ts b/packages/@neet/vschedule-api/src/domain/entities/stream/stream.spec.ts index 6ddb0ea4..d56c58a9 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/stream/stream.spec.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/stream/stream.spec.ts @@ -1,7 +1,7 @@ import dayjs from 'dayjs'; import { URL } from 'url'; -import { actorFixture } from '../__fixtures__/actor'; +import { actorFixture } from '../__fixtures__'; import { Timestamps } from '../_shared'; import { Stream } from './stream'; import { StreamId } from './stream-id'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/token/index.ts b/packages/@neet/vschedule-api/src/domain/entities/token/index.ts index 644a1190..ef12ff84 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/token/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/token/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './token'; export * from './token-id'; export * from './token-repository'; diff --git a/packages/@neet/vschedule-api/src/domain/entities/user/index.ts b/packages/@neet/vschedule-api/src/domain/entities/user/index.ts index b8806b4d..b32f7cde 100644 --- a/packages/@neet/vschedule-api/src/domain/entities/user/index.ts +++ b/packages/@neet/vschedule-api/src/domain/entities/user/index.ts @@ -1,3 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './user'; export * from './user-email'; export * from './user-id'; diff --git a/packages/@neet/vschedule-api/src/domain/index.ts b/packages/@neet/vschedule-api/src/domain/index.ts index 4916a368..20e34e6a 100644 --- a/packages/@neet/vschedule-api/src/domain/index.ts +++ b/packages/@neet/vschedule-api/src/domain/index.ts @@ -1,3 +1,7 @@ -export * from './_core'; -export * from './entities'; -export * from './services'; +/** + * @file Automatically generated by barrelsby. + */ + +export * from './_core/index'; +export * from './entities/index'; +export * from './services/index'; diff --git a/packages/@neet/vschedule-api/src/domain/services/index.ts b/packages/@neet/vschedule-api/src/domain/services/index.ts index d9cd8df5..75d8dc6f 100644 --- a/packages/@neet/vschedule-api/src/domain/services/index.ts +++ b/packages/@neet/vschedule-api/src/domain/services/index.ts @@ -1 +1,6 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './organization-service'; +export * from './task-service'; diff --git a/packages/@neet/vschedule-api/src/index.ts b/packages/@neet/vschedule-api/src/index.ts new file mode 100644 index 00000000..8ff439b2 --- /dev/null +++ b/packages/@neet/vschedule-api/src/index.ts @@ -0,0 +1,9 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './adapters/index'; +export * from './app/index'; +export * from './domain/index'; +export * from './infra/index'; +export * from './types'; diff --git a/packages/@neet/vschedule-api/src/infra/app.ts b/packages/@neet/vschedule-api/src/infra/app.ts index 639c0882..6e9e27b3 100644 --- a/packages/@neet/vschedule-api/src/infra/app.ts +++ b/packages/@neet/vschedule-api/src/infra/app.ts @@ -10,20 +10,24 @@ import { useExpressServer } from 'routing-controllers'; import swaggerUi from 'swagger-ui-express'; import winston from 'winston'; -import { AuthController } from '../adapters/controllers/auth'; -import { MediaAttachmentController } from '../adapters/controllers/rest/v1/media'; -import { OrganizationsController } from '../adapters/controllers/rest/v1/organizations'; -import { PerformersController } from '../adapters/controllers/rest/v1/performers'; -import { StreamsController } from '../adapters/controllers/rest/v1/streams'; -import { YoutubeWebsubController } from '../adapters/controllers/websub/youtube'; +import { + AuthController, + MediaAttachmentController, + OrganizationsController, + PerformersController, + StreamsController, + YoutubeWebsubController, +} from '../adapters'; import { IConfig, ILogger } from '../app'; import { TYPES } from '../types'; -import { appErrorHandler } from './middlewares/app-error-handler'; -import { domainErrorHandler } from './middlewares/domain-error-handler'; -import { openapiErrorHandler } from './middlewares/openapi-error-handler'; -import { routingControllerErrorHandler } from './middlewares/routing-controller-error-handler'; +import { + appErrorHandler, + domainErrorHandler, + openapiErrorHandler, + routingControllerErrorHandler, +} from './middlewares'; import { Passport } from './passport'; -import { YoutubeWebsubParser } from './services/youtube-websub-parser'; +import { YoutubeWebsubParser } from './services'; import { createSession } from './session'; @injectable() diff --git a/packages/@neet/vschedule-api/src/infra/index.ts b/packages/@neet/vschedule-api/src/infra/index.ts new file mode 100644 index 00000000..b01b4273 --- /dev/null +++ b/packages/@neet/vschedule-api/src/infra/index.ts @@ -0,0 +1,11 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './app'; +export * from './inversify-adapter'; +export * from './inversify-config'; +export * from './middlewares/index'; +export * from './passport/index'; +export * from './services/index'; +export * from './session'; diff --git a/packages/@neet/vschedule-api/src/infra/inversify-config.ts b/packages/@neet/vschedule-api/src/infra/inversify-config.ts index eb0ac93b..57f7c543 100644 --- a/packages/@neet/vschedule-api/src/infra/inversify-config.ts +++ b/packages/@neet/vschedule-api/src/infra/inversify-config.ts @@ -4,21 +4,23 @@ import { Container } from 'inversify'; import { queryServices } from '../adapters/query-services'; import { repositories } from '../adapters/repositories'; import { + factories, IConfig, ILogger, IStorage, IYoutubeApiService, IYoutubeWebsubService, } from '../app'; -import { factories } from '../app/factories'; import { TYPES } from '../types'; -import { ConfigConsmiconfig } from './services/config-cosmiconfig'; -import { loggerCloudLogging } from './services/logger-cloud-logging'; -import { loggerConsole } from './services/logger-console'; -import { StorageCloudStorage } from './services/storage-cloud-storage'; -import { StorageFilesystem } from './services/storage-filesystem'; -import { YoutubeApiService } from './services/youtube-api-service'; -import { YoutubeWebsubService } from './services/youtube-websub-service'; +import { + ConfigConsmiconfig, + loggerCloudLogging, + loggerConsole, + StorageCloudStorage, + StorageFilesystem, + YoutubeApiService, + YoutubeWebsubService, +} from './services'; const container = new Container({ autoBindInjectable: true, diff --git a/packages/@neet/vschedule-api/src/infra/middlewares/index.ts b/packages/@neet/vschedule-api/src/infra/middlewares/index.ts new file mode 100644 index 00000000..eac0c886 --- /dev/null +++ b/packages/@neet/vschedule-api/src/infra/middlewares/index.ts @@ -0,0 +1,8 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './app-error-handler'; +export * from './domain-error-handler'; +export * from './openapi-error-handler'; +export * from './routing-controller-error-handler'; diff --git a/packages/@neet/vschedule-api/src/infra/passport/index.ts b/packages/@neet/vschedule-api/src/infra/passport/index.ts index 40a902a4..b7c9365a 100644 --- a/packages/@neet/vschedule-api/src/infra/passport/index.ts +++ b/packages/@neet/vschedule-api/src/infra/passport/index.ts @@ -1 +1,7 @@ +/** + * @file Automatically generated by barrelsby. + */ + export * from './passport'; +export * from './strategy-token'; +export * from './strategy-user'; diff --git a/packages/@neet/vschedule-api/src/infra/services/index.ts b/packages/@neet/vschedule-api/src/infra/services/index.ts new file mode 100644 index 00000000..15c3e802 --- /dev/null +++ b/packages/@neet/vschedule-api/src/infra/services/index.ts @@ -0,0 +1,16 @@ +/** + * @file Automatically generated by barrelsby. + */ + +export * from './config-cosmiconfig'; +export * from './config-environment'; +export * from './logger-cloud-logging'; +export * from './logger-console'; +export * from './logger-silent'; +export * from './storage-cloud-storage'; +export * from './storage-filesystem'; +export * from './storage-in-memory'; +export * from './youtube-api-service'; +export * from './youtube-websub-parser'; +export * from './youtube-websub-service'; +export * from './youtube-websub-service-mock'; diff --git a/yarn.lock b/yarn.lock index 35ba5b46..6e32ef97 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3822,6 +3822,7 @@ __metadata: "@types/supertest": ^2.0.12 "@types/swagger-ui-express": ^4.1.3 "@types/validator": ^13.7.10 + barrelsby: ^2.5.1 bcryptjs: ^2.4.3 body-parser-xml: ^2.0.3 class-transformer: ^0.5.1 @@ -7401,7 +7402,7 @@ __metadata: languageName: node linkType: hard -"@types/yargs@npm:^17.0.8": +"@types/yargs@npm:^17.0.10, @types/yargs@npm:^17.0.8": version: 17.0.13 resolution: "@types/yargs@npm:17.0.13" dependencies: @@ -9208,6 +9209,19 @@ __metadata: languageName: node linkType: hard +"barrelsby@npm:^2.5.1": + version: 2.5.1 + resolution: "barrelsby@npm:2.5.1" + dependencies: + "@types/yargs": ^17.0.10 + signale: ^1.4.0 + yargs: ^17.4.1 + bin: + barrelsby: bin/cli.js + checksum: 65701e640df5ed439c6343de5174699be970859978f1d4f612f619f38e71b4d438f5539a36b38e56617b6bb5bedd7572a4671a499480c643a7300d3d5dcf7445 + languageName: node + linkType: hard + "base64-js@npm:^1.0.2, base64-js@npm:^1.3.0, base64-js@npm:^1.3.1": version: 1.5.1 resolution: "base64-js@npm:1.5.1" @@ -10052,7 +10066,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^2.0.0, chalk@npm:^2.4.1, chalk@npm:^2.4.2": +"chalk@npm:^2.0.0, chalk@npm:^2.3.2, chalk@npm:^2.4.1, chalk@npm:^2.4.2": version: 2.4.2 resolution: "chalk@npm:2.4.2" dependencies: @@ -13732,6 +13746,15 @@ __metadata: languageName: node linkType: hard +"figures@npm:^2.0.0": + version: 2.0.0 + resolution: "figures@npm:2.0.0" + dependencies: + escape-string-regexp: ^1.0.5 + checksum: 081beb16ea57d1716f8447c694f637668322398b57017b20929376aaf5def9823b35245b734cdd87e4832dc96e9c6f46274833cada77bfe15e5f980fea1fd21f + languageName: node + linkType: hard + "figures@npm:^3.0.0, figures@npm:^3.2.0": version: 3.2.0 resolution: "figures@npm:3.2.0" @@ -21820,6 +21843,16 @@ __metadata: languageName: node linkType: hard +"pkg-conf@npm:^2.1.0": + version: 2.1.0 + resolution: "pkg-conf@npm:2.1.0" + dependencies: + find-up: ^2.0.0 + load-json-file: ^4.0.0 + checksum: b50775157262abd1bfb4d3d948f3fc6c009d10266c6507d4de296af4e2cbb6d2738310784432185886d83144466fbb286b6e8ff0bc23dc5ee7d81810dc6c4788 + languageName: node + linkType: hard + "pkg-dir@npm:^3.0.0": version: 3.0.0 resolution: "pkg-dir@npm:3.0.0" @@ -24584,6 +24617,17 @@ __metadata: languageName: node linkType: hard +"signale@npm:^1.4.0": + version: 1.4.0 + resolution: "signale@npm:1.4.0" + dependencies: + chalk: ^2.3.2 + figures: ^2.0.0 + pkg-conf: ^2.1.0 + checksum: a6a540e054096a1f4cf8b1f21fea62ca3e44a19faa63bd486723b736348609caab1fa59a87f16559de347dde8ae1fdebfc25a8b6723c88ae8239f176ffb0dda5 + languageName: node + linkType: hard + "simple-concat@npm:^1.0.0": version: 1.0.1 resolution: "simple-concat@npm:1.0.1" @@ -28060,7 +28104,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^17.0.1, yargs@npm:^17.6.0": +"yargs@npm:^17.0.1, yargs@npm:^17.4.1, yargs@npm:^17.6.0": version: 17.6.2 resolution: "yargs@npm:17.6.2" dependencies: From 83433f265cb5840dbe3cc80a9a9d0e85aeaa5de6 Mon Sep 17 00:00:00 2001 From: Ryo Igarashi Date: Tue, 22 Nov 2022 17:06:38 +0900 Subject: [PATCH 2/3] chore: Remove entrypoint --- .../@neet/vschedule-api-spec/package.json | 2 +- packages/@neet/vschedule-api/barrelsby.json | 2 +- packages/@neet/vschedule-api/package.json | 14 +- packages/@neet/vschedule-api/src/index.ts | 9 - packages/@neet/vschedule-client/package.json | 2 +- packages/@neet/vschedule-seed/package.json | 2 +- yarn.lock | 201 +++++++++++------- 7 files changed, 134 insertions(+), 98 deletions(-) delete mode 100644 packages/@neet/vschedule-api/src/index.ts diff --git a/packages/@neet/vschedule-api-spec/package.json b/packages/@neet/vschedule-api-spec/package.json index a313a521..077e8957 100644 --- a/packages/@neet/vschedule-api-spec/package.json +++ b/packages/@neet/vschedule-api-spec/package.json @@ -18,7 +18,7 @@ "@types/eslint": "^8.4.10", "@types/mkdirp": "^1.0.2", "@types/rimraf": "^3.0.2", - "eslint": "^8.27.0", + "eslint": "^8.28.0", "mkdirp": "^1.0.4", "rimraf": "^3.0.2", "typescript": "^4.9.3", diff --git a/packages/@neet/vschedule-api/barrelsby.json b/packages/@neet/vschedule-api/barrelsby.json index 143f7410..115d18ba 100644 --- a/packages/@neet/vschedule-api/barrelsby.json +++ b/packages/@neet/vschedule-api/barrelsby.json @@ -1,5 +1,5 @@ { - "directory": ["./src"], + "directory": ["./src/domain", "./src/app", "./src/adapters", "./src/infra"], "delete": true, "exclude": [ "(.+?)\\.spec\\.(tsx?|jsx?)", diff --git a/packages/@neet/vschedule-api/package.json b/packages/@neet/vschedule-api/package.json index e9612f1d..e2e88108 100644 --- a/packages/@neet/vschedule-api/package.json +++ b/packages/@neet/vschedule-api/package.json @@ -7,7 +7,7 @@ "start": "node ./dist/src/infra/server.js", "dev": "ts-node-dev --respawn --transpile-only --exit-child ./src/infra/server", "test": "jest --runInBand --coverage", - "generate-barrels": "barrelsby -c barrelsby.json" + "generate-barrels": "barrelsby -c barrelsby.json && eslint --fix './src/**/index.ts'" }, "dependencies": { "@google-cloud/connect-firestore": "^2.0.2", @@ -28,14 +28,14 @@ "cosmiconfig-toml-loader": "^1.0.0", "dayjs": "^1.11.6", "express": "^4.18.2", - "express-openapi-validator": "^4.13.8", + "express-openapi-validator": "^5.0.0", "express-session": "^1.17.3", "express-winston": "^4.2.0", "get-image-colors": "^4.0.1", "googleapis": "^109.0.1", "immer": "^9.0.16", "inversify": "^6.0.1", - "memfs": "^3.4.11", + "memfs": "^3.4.12", "mkdirp": "^1.0.4", "nanoid": "^3.3.4", "node-fetch": "^2.6.7", @@ -59,12 +59,12 @@ "@neet/eslint-plugin-vschedule": "workspace:^", "@neet/tsconfig-vschedule": "workspace:^", "@quramy/jest-prisma-node": "^1.1.2", - "@swc/core": "^1.3.18", + "@swc/core": "^1.3.19", "@swc/jest": "^0.2.23", "@types/bcryptjs": "^2.4.2", "@types/body-parser-xml": "^2.0.2", "@types/color": "^3.0.3", - "@types/cors": "^2", + "@types/cors": "^2.8.12", "@types/eslint": "^8.4.10", "@types/express": "^4.17.14", "@types/express-session": "^1.17.5", @@ -73,14 +73,14 @@ "@types/mkdirp": "^1.0.2", "@types/node": "^18.11.9", "@types/node-fetch": "^2.6.2", - "@types/passport": "^0.4.7", + "@types/passport": "^1.0.11", "@types/passport-local": "^1.0.34", "@types/sharp": "^0.31.0", "@types/supertest": "^2.0.12", "@types/swagger-ui-express": "^4.1.3", "@types/validator": "^13.7.10", "barrelsby": "^2.5.1", - "eslint": "^8.27.0", + "eslint": "^8.28.0", "execa": "^5.1.1", "jest": "^29.3.1", "jest-date-mock": "^1.0.8", diff --git a/packages/@neet/vschedule-api/src/index.ts b/packages/@neet/vschedule-api/src/index.ts deleted file mode 100644 index 8ff439b2..00000000 --- a/packages/@neet/vschedule-api/src/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/** - * @file Automatically generated by barrelsby. - */ - -export * from './adapters/index'; -export * from './app/index'; -export * from './domain/index'; -export * from './infra/index'; -export * from './types'; diff --git a/packages/@neet/vschedule-client/package.json b/packages/@neet/vschedule-client/package.json index 865dad59..0fbec379 100644 --- a/packages/@neet/vschedule-client/package.json +++ b/packages/@neet/vschedule-client/package.json @@ -85,7 +85,7 @@ "@typescript-eslint/parser": "^5.41.0", "babel-loader": "^8.2.3", "cspell": "^5.13.2", - "eslint": "^8.27.0", + "eslint": "^8.28.0", "eslint-config-next": "^13.0.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-storybook": "^0.6.6", diff --git a/packages/@neet/vschedule-seed/package.json b/packages/@neet/vschedule-seed/package.json index b172925c..a32565c2 100644 --- a/packages/@neet/vschedule-seed/package.json +++ b/packages/@neet/vschedule-seed/package.json @@ -10,7 +10,7 @@ "@types/eslint": "^8.4.10", "@types/mkdirp": "^1.0.2", "@types/rimraf": "^3.0.2", - "eslint": "^8.27.0", + "eslint": "^8.28.0", "mkdirp": "^1.0.4", "rimraf": "^3.0.2", "toml": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 6e32ef97..2892682f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3779,7 +3779,7 @@ __metadata: "@types/eslint": ^8.4.10 "@types/mkdirp": ^1.0.2 "@types/rimraf": ^3.0.2 - eslint: ^8.27.0 + eslint: ^8.28.0 mkdirp: ^1.0.4 rimraf: ^3.0.2 typescript: ^4.9.3 @@ -3802,12 +3802,12 @@ __metadata: "@neet/vschedule-seed": "workspace:^" "@prisma/client": ^4.6.1 "@quramy/jest-prisma-node": ^1.1.2 - "@swc/core": ^1.3.18 + "@swc/core": ^1.3.19 "@swc/jest": ^0.2.23 "@types/bcryptjs": ^2.4.2 "@types/body-parser-xml": ^2.0.2 "@types/color": ^3.0.3 - "@types/cors": ^2 + "@types/cors": ^2.8.12 "@types/eslint": ^8.4.10 "@types/express": ^4.17.14 "@types/express-session": ^1.17.5 @@ -3816,7 +3816,7 @@ __metadata: "@types/mkdirp": ^1.0.2 "@types/node": ^18.11.9 "@types/node-fetch": ^2.6.2 - "@types/passport": ^0.4.7 + "@types/passport": ^1.0.11 "@types/passport-local": ^1.0.34 "@types/sharp": ^0.31.0 "@types/supertest": ^2.0.12 @@ -3832,10 +3832,10 @@ __metadata: cosmiconfig: ^7.1.0 cosmiconfig-toml-loader: ^1.0.0 dayjs: ^1.11.6 - eslint: ^8.27.0 + eslint: ^8.28.0 execa: ^5.1.1 express: ^4.18.2 - express-openapi-validator: ^4.13.8 + express-openapi-validator: ^5.0.0 express-session: ^1.17.3 express-winston: ^4.2.0 get-image-colors: ^4.0.1 @@ -3844,7 +3844,7 @@ __metadata: inversify: ^6.0.1 jest: ^29.3.1 jest-date-mock: ^1.0.8 - memfs: ^3.4.11 + memfs: ^3.4.12 mkdirp: ^1.0.4 nanoid: ^3.3.4 node-fetch: ^2.6.7 @@ -3922,7 +3922,7 @@ __metadata: classnames: ^2.3.2 cspell: ^5.13.2 dayjs: ^1.11.6 - eslint: ^8.27.0 + eslint: ^8.28.0 eslint-config-next: ^13.0.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-storybook: ^0.6.6 @@ -3964,7 +3964,7 @@ __metadata: "@types/eslint": ^8.4.10 "@types/mkdirp": ^1.0.2 "@types/rimraf": ^3.0.2 - eslint: ^8.27.0 + eslint: ^8.28.0 mkdirp: ^1.0.4 rimraf: ^3.0.2 toml: ^3.0.0 @@ -6228,90 +6228,90 @@ __metadata: languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-darwin-arm64@npm:1.3.18" +"@swc/core-darwin-arm64@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-darwin-arm64@npm:1.3.19" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-darwin-x64@npm:1.3.18" +"@swc/core-darwin-x64@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-darwin-x64@npm:1.3.19" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.18" +"@swc/core-linux-arm-gnueabihf@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.19" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-linux-arm64-gnu@npm:1.3.18" +"@swc/core-linux-arm64-gnu@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-linux-arm64-gnu@npm:1.3.19" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-linux-arm64-musl@npm:1.3.18" +"@swc/core-linux-arm64-musl@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-linux-arm64-musl@npm:1.3.19" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-linux-x64-gnu@npm:1.3.18" +"@swc/core-linux-x64-gnu@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-linux-x64-gnu@npm:1.3.19" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-linux-x64-musl@npm:1.3.18" +"@swc/core-linux-x64-musl@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-linux-x64-musl@npm:1.3.19" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-win32-arm64-msvc@npm:1.3.18" +"@swc/core-win32-arm64-msvc@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-win32-arm64-msvc@npm:1.3.19" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-win32-ia32-msvc@npm:1.3.18" +"@swc/core-win32-ia32-msvc@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-win32-ia32-msvc@npm:1.3.19" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.3.18": - version: 1.3.18 - resolution: "@swc/core-win32-x64-msvc@npm:1.3.18" +"@swc/core-win32-x64-msvc@npm:1.3.19": + version: 1.3.19 + resolution: "@swc/core-win32-x64-msvc@npm:1.3.19" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@swc/core@npm:^1.3.18": - version: 1.3.18 - resolution: "@swc/core@npm:1.3.18" +"@swc/core@npm:^1.3.19": + version: 1.3.19 + resolution: "@swc/core@npm:1.3.19" dependencies: - "@swc/core-darwin-arm64": 1.3.18 - "@swc/core-darwin-x64": 1.3.18 - "@swc/core-linux-arm-gnueabihf": 1.3.18 - "@swc/core-linux-arm64-gnu": 1.3.18 - "@swc/core-linux-arm64-musl": 1.3.18 - "@swc/core-linux-x64-gnu": 1.3.18 - "@swc/core-linux-x64-musl": 1.3.18 - "@swc/core-win32-arm64-msvc": 1.3.18 - "@swc/core-win32-ia32-msvc": 1.3.18 - "@swc/core-win32-x64-msvc": 1.3.18 + "@swc/core-darwin-arm64": 1.3.19 + "@swc/core-darwin-x64": 1.3.19 + "@swc/core-linux-arm-gnueabihf": 1.3.19 + "@swc/core-linux-arm64-gnu": 1.3.19 + "@swc/core-linux-arm64-musl": 1.3.19 + "@swc/core-linux-x64-gnu": 1.3.19 + "@swc/core-linux-x64-musl": 1.3.19 + "@swc/core-win32-arm64-msvc": 1.3.19 + "@swc/core-win32-ia32-msvc": 1.3.19 + "@swc/core-win32-x64-msvc": 1.3.19 dependenciesMeta: "@swc/core-darwin-arm64": optional: true @@ -6335,7 +6335,7 @@ __metadata: optional: true bin: swcx: run_swcx.js - checksum: 5b9bef826366bf691b9ba8b91c17df1fc725d979b45840d3dcfcc8c224753a161fb07132bcf3d9c666e70d680c928d9379a9bfbe968b43f2c47c7e13ca9cf008 + checksum: 752499e18f81df789a9737936b2a83ea1db34bb2f983c80b394766796d853fa7d30701b52b9cb30ba943ad15286d8316603149683f4c553a5493aa78d89a76e0 languageName: node linkType: hard @@ -6639,7 +6639,7 @@ __metadata: languageName: node linkType: hard -"@types/cors@npm:^2": +"@types/cors@npm:^2.8.12": version: 2.8.12 resolution: "@types/cors@npm:2.8.12" checksum: 8c45f112c7d1d2d831b4b266f2e6ed33a1887a35dcbfe2a18b28370751fababb7cd045e745ef84a523c33a25932678097bf79afaa367c6cb3fa0daa7a6438257 @@ -7099,7 +7099,7 @@ __metadata: languageName: node linkType: hard -"@types/passport@npm:*": +"@types/passport@npm:*, @types/passport@npm:^1.0.11": version: 1.0.11 resolution: "@types/passport@npm:1.0.11" dependencies: @@ -7108,15 +7108,6 @@ __metadata: languageName: node linkType: hard -"@types/passport@npm:^0.4.7": - version: 0.4.7 - resolution: "@types/passport@npm:0.4.7" - dependencies: - "@types/express": "*" - checksum: c22a84226d763db30cc6d8b330022820d067ea4039dc625371825e0d2fb8e3d6e7387cf4619e79a4cc293e8c3f3420f3da3067c564da14c21fadb03b5f5c870f - languageName: node - linkType: hard - "@types/prettier@npm:^2, @types/prettier@npm:^2.1.5": version: 2.4.3 resolution: "@types/prettier@npm:2.4.3" @@ -8248,6 +8239,18 @@ __metadata: languageName: node linkType: hard +"ajv-draft-04@npm:^1.0.0": + version: 1.0.0 + resolution: "ajv-draft-04@npm:1.0.0" + peerDependencies: + ajv: ^8.5.0 + peerDependenciesMeta: + ajv: + optional: true + checksum: 3f11fa0e7f7359bef6608657f02ab78e9cc62b1fb7bdd860db0d00351b3863a1189c1a23b72466d2d82726cab4eb20725c76f5e7c134a89865e2bfd0e6828137 + languageName: node + linkType: hard + "ajv-errors@npm:^1.0.0": version: 1.0.1 resolution: "ajv-errors@npm:1.0.1" @@ -8257,6 +8260,20 @@ __metadata: languageName: node linkType: hard +"ajv-formats@npm:^2.1.1": + version: 2.1.1 + resolution: "ajv-formats@npm:2.1.1" + dependencies: + ajv: ^8.0.0 + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + checksum: 4a287d937f1ebaad4683249a4c40c0fa3beed30d9ddc0adba04859026a622da0d317851316ea64b3680dc60f5c3c708105ddd5d5db8fe595d9d0207fd19f90b7 + languageName: node + linkType: hard + "ajv-keywords@npm:^3.1.0, ajv-keywords@npm:^3.4.1, ajv-keywords@npm:^3.5.2": version: 3.5.2 resolution: "ajv-keywords@npm:3.5.2" @@ -8266,7 +8283,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.1.0, ajv@npm:^6.10.0, ajv@npm:^6.10.2, ajv@npm:^6.12.2, ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.12.5, ajv@npm:^6.12.6": +"ajv@npm:^6.1.0, ajv@npm:^6.10.0, ajv@npm:^6.10.2, ajv@npm:^6.12.2, ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.12.5": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -8278,6 +8295,18 @@ __metadata: languageName: node linkType: hard +"ajv@npm:^8.0.0, ajv@npm:^8.6.2": + version: 8.11.2 + resolution: "ajv@npm:8.11.2" + dependencies: + fast-deep-equal: ^3.1.1 + json-schema-traverse: ^1.0.0 + require-from-string: ^2.0.2 + uri-js: ^4.2.2 + checksum: 53435bf79ee7d1eabba8085962dba4c08d08593334b304db7772887f0b7beebc1b3d957432f7437ed4b60e53b5d966a57b439869890209c50fed610459999e3e + languageName: node + linkType: hard + "ansi-align@npm:^3.0.0": version: 3.0.1 resolution: "ansi-align@npm:3.0.1" @@ -13104,9 +13133,9 @@ __metadata: languageName: node linkType: hard -"eslint@npm:^8.27.0": - version: 8.27.0 - resolution: "eslint@npm:8.27.0" +"eslint@npm:^8.28.0": + version: 8.28.0 + resolution: "eslint@npm:8.28.0" dependencies: "@eslint/eslintrc": ^1.3.3 "@humanwhocodes/config-array": ^0.11.6 @@ -13149,7 +13178,7 @@ __metadata: text-table: ^0.2.0 bin: eslint: bin/eslint.js - checksum: 153b022d309e1b647a73b1bb0fa98912add699b06e279084155f23c6f2b5fc5abd05411fc1ba81608a24bbfaf044ca079544c16fffa6fc987b8f676c9960a2c4 + checksum: 1b793486b2ec80f0602d75fff7116f7c39a3286f523608a999eead9bec4154a06841785d2b4fb87f8292a94cf85778c1dbfaec727772a09c4d604fdb9ff0809a languageName: node linkType: hard @@ -13378,12 +13407,14 @@ __metadata: languageName: node linkType: hard -"express-openapi-validator@npm:^4.13.8": - version: 4.13.8 - resolution: "express-openapi-validator@npm:4.13.8" +"express-openapi-validator@npm:^5.0.0": + version: 5.0.0 + resolution: "express-openapi-validator@npm:5.0.0" dependencies: "@types/multer": ^1.4.7 - ajv: ^6.12.6 + ajv: ^8.6.2 + ajv-draft-04: ^1.0.0 + ajv-formats: ^2.1.1 content-type: ^1.0.4 json-schema-ref-parser: ^9.0.9 lodash.clonedeep: ^4.5.0 @@ -13394,7 +13425,7 @@ __metadata: multer: ^1.4.5-lts.1 ono: ^7.1.3 path-to-regexp: ^6.2.0 - checksum: a20a82c37115ed0125207f5c54983a012dcc4699b70e97be99ee80d12abe572c787af566338e3bcb37d04e69a48f6d565d454e189dbab709ede8b0c6d286b86f + checksum: 6c61999d1ec812e0f9c1840cced993c6abd59a6a15fde7db7ac633943478053d8eb5889e79b31936fcb851bea8f282daf5d74e7eca61debd76fc9d7420bba511 languageName: node linkType: hard @@ -18109,6 +18140,13 @@ __metadata: languageName: node linkType: hard +"json-schema-traverse@npm:^1.0.0": + version: 1.0.0 + resolution: "json-schema-traverse@npm:1.0.0" + checksum: 02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad + languageName: node + linkType: hard + "json-schema@npm:0.4.0": version: 0.4.0 resolution: "json-schema@npm:0.4.0" @@ -19303,12 +19341,12 @@ __metadata: languageName: node linkType: hard -"memfs@npm:^3.4.11": - version: 3.4.11 - resolution: "memfs@npm:3.4.11" +"memfs@npm:^3.4.12": + version: 3.4.12 + resolution: "memfs@npm:3.4.12" dependencies: fs-monkey: ^1.0.3 - checksum: 47a9b0ea5d96da7978ac190df1420340ff3d010e087b8e4e1a971b1913a82f892eb0603b71a1b913d833e9b919113e3a7e541fe366e759bb16ff30d5940c8bcb + checksum: dab8dec1ae0b2a92e4d563ac86846047cd7aeb17cde4ad51da85cff6e580c32d12b886354527788e36eb75f733dd8edbaf174476b7cea73fed9c5a0e45a6b428 languageName: node linkType: hard @@ -23689,6 +23727,13 @@ __metadata: languageName: node linkType: hard +"require-from-string@npm:^2.0.2": + version: 2.0.2 + resolution: "require-from-string@npm:2.0.2" + checksum: a03ef6895445f33a4015300c426699bc66b2b044ba7b670aa238610381b56d3f07c686251740d575e22f4c87531ba662d06937508f0f3c0f1ddc04db3130560b + languageName: node + linkType: hard + "requireindex@npm:^1.1.0": version: 1.2.0 resolution: "requireindex@npm:1.2.0" From 88898df3a985ae9e54705413a6bb8b6eee793867 Mon Sep 17 00:00:00 2001 From: Ryo Igarashi Date: Tue, 22 Nov 2022 18:00:47 +0900 Subject: [PATCH 3/3] fix: Fix tsc errors --- .../vschedule-api/src/adapters/controllers/auth.ts | 10 +++++++--- .../@neet/vschedule-api/src/infra/passport/passport.ts | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts b/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts index 641f09a5..8cfbaf8a 100644 --- a/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts +++ b/packages/@neet/vschedule-api/src/adapters/controllers/auth.ts @@ -11,6 +11,7 @@ import { } from 'routing-controllers'; import { CreateUser } from '../../app'; +import { User } from '../../domain'; import { Methods } from '../generated/auth/signup'; import { RestPresenter } from '../mappers'; @@ -27,8 +28,11 @@ export class AuthController { @Post('/login') @Authorized() - public login(@Req() req: Request) { - return this._presenter.presentUser(req.user); + public login(@Req() req: Request, @Res() res: Response) { + if (req.user == null) { + return res.status(500); + } + return this._presenter.presentUser(req.user as User); } @Post('/logout') @@ -45,7 +49,7 @@ export class AuthController { @OnUndefined(204) public verifyCredentials(@Req() req: Request) { if (req.user != null) { - return this._presenter.presentUser(req.user); + return this._presenter.presentUser(req.user as User); } } diff --git a/packages/@neet/vschedule-api/src/infra/passport/passport.ts b/packages/@neet/vschedule-api/src/infra/passport/passport.ts index 9a5fa73d..6006f59c 100644 --- a/packages/@neet/vschedule-api/src/infra/passport/passport.ts +++ b/packages/@neet/vschedule-api/src/infra/passport/passport.ts @@ -21,8 +21,8 @@ export class Passport { ) {} configure(): RequestHandler[] { - passport.serializeUser((user: User, done) => { - done(null, user.id); + passport.serializeUser((user, done) => { + done(null, (user as User).id); }); passport.deserializeUser(async (id: string, done) => { const user = await this._showUser.invoke(id);