Skip to content

Commit

Permalink
Rename "locking" domain "community" (#1562)
Browse files Browse the repository at this point in the history
Renames "locking" domain to "community" - the folder and all related components within it:

- `/src/domain/locking` -> `/src/domain/community`
- `ILockingRepository`-> `ICommunityRepository`
- `LockingRepository` -> `CommunityRepository`
- `LockingDomainModule` -> `CommunityDomainModule`
  • Loading branch information
iamacook authored May 17, 2024
1 parent 9b6371b commit 114b28b
Show file tree
Hide file tree
Showing 34 changed files with 89 additions and 92 deletions.
10 changes: 5 additions & 5 deletions src/datasources/locking-api/locking-api.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import {
lockEventItemBuilder,
unlockEventItemBuilder,
withdrawEventItemBuilder,
} from '@/domain/locking/entities/__tests__/locking-event.builder';
} from '@/domain/community/entities/__tests__/locking-event.builder';
import { getAddress } from 'viem';
import { rankBuilder } from '@/domain/locking/entities/__tests__/rank.builder';
import { campaignBuilder } from '@/domain/locking/entities/__tests__/campaign.builder';
import { campaignRankBuilder } from '@/domain/locking/entities/__tests__/campaign-rank.builder';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { rankBuilder } from '@/domain/community/entities/__tests__/rank.builder';
import { campaignBuilder } from '@/domain/community/entities/__tests__/campaign.builder';
import { campaignRankBuilder } from '@/domain/community/entities/__tests__/campaign-rank.builder';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';

const networkService = {
get: jest.fn(),
Expand Down
8 changes: 4 additions & 4 deletions src/datasources/locking-api/locking-api.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ import {
} from '@/datasources/network/network.service.interface';
import { Page } from '@/domain/entities/page.entity';
import { ILockingApi } from '@/domain/interfaces/locking-api.interface';
import { Campaign } from '@/domain/locking/entities/campaign.entity';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/locking/entities/locking-event.entity';
import { Rank } from '@/domain/locking/entities/rank.entity';
import { Campaign } from '@/domain/community/entities/campaign.entity';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/community/entities/locking-event.entity';
import { Rank } from '@/domain/community/entities/rank.entity';
import { Inject } from '@nestjs/common';

export class LockingApi implements ILockingApi {
Expand Down
11 changes: 11 additions & 0 deletions src/domain/community/community.domain.module.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { Module } from '@nestjs/common';
import { LockingApiModule } from '@/datasources/locking-api/locking-api.module';
import { ICommunityRepository } from '@/domain/community/community.repository.interface';
import { CommunityRepository } from '@/domain/community/community.repository';

@Module({
imports: [LockingApiModule],
providers: [{ provide: ICommunityRepository, useClass: CommunityRepository }],
exports: [ICommunityRepository],
})
export class CommunityDomainModule {}
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { Page } from '@/domain/entities/page.entity';
import { Campaign } from '@/domain/locking/entities/campaign.entity';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/locking/entities/locking-event.entity';
import { Rank } from '@/domain/locking/entities/rank.entity';
import { Campaign } from '@/domain/community/entities/campaign.entity';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/community/entities/locking-event.entity';
import { Rank } from '@/domain/community/entities/rank.entity';

export const ILockingRepository = Symbol('ILockingRepository');
export const ICommunityRepository = Symbol('ICommunityRepository');

export interface ILockingRepository {
export interface ICommunityRepository {
getCampaignById(campaignId: string): Promise<Campaign>;

getCampaigns(args: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@ import {
Campaign,
CampaignPageSchema,
CampaignSchema,
} from '@/domain/locking/entities/campaign.entity';
} from '@/domain/community/entities/campaign.entity';
import {
CampaignRank,
CampaignRankPageSchema,
} from '@/domain/locking/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/locking/entities/locking-event.entity';
import { Rank } from '@/domain/locking/entities/rank.entity';
import { LockingEventPageSchema } from '@/domain/locking/entities/schemas/locking-event.schema';
} from '@/domain/community/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/community/entities/locking-event.entity';
import { Rank } from '@/domain/community/entities/rank.entity';
import { LockingEventPageSchema } from '@/domain/community/entities/schemas/locking-event.schema';
import {
RankPageSchema,
RankSchema,
} from '@/domain/locking/entities/schemas/rank.schema';
import { ILockingRepository } from '@/domain/locking/locking.repository.interface';
} from '@/domain/community/entities/schemas/rank.schema';
import { ICommunityRepository } from '@/domain/community/community.repository.interface';
import { Inject, Injectable } from '@nestjs/common';

@Injectable()
export class LockingRepository implements ILockingRepository {
export class CommunityRepository implements ICommunityRepository {
constructor(
@Inject(ILockingApi)
private readonly lockingApi: ILockingApi,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Builder, IBuilder } from '@/__tests__/builder';
import { ActivityMetadata } from '@/domain/locking/entities/activity-metadata.entity';
import { ActivityMetadata } from '@/domain/community/entities/activity-metadata.entity';
import { faker } from '@faker-js/faker';

export function activityMetadataBuilder(): IBuilder<ActivityMetadata> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Builder, IBuilder } from '@/__tests__/builder';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { faker } from '@faker-js/faker';
import { getAddress } from 'viem';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { IBuilder, Builder } from '@/__tests__/builder';
import { activityMetadataBuilder } from '@/domain/locking/entities/__tests__/activity-metadata.builder';
import { Campaign } from '@/domain/locking/entities/campaign.entity';
import { activityMetadataBuilder } from '@/domain/community/entities/__tests__/activity-metadata.builder';
import { Campaign } from '@/domain/community/entities/campaign.entity';
import { faker } from '@faker-js/faker';

export function campaignBuilder(): IBuilder<Campaign> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ import {
LockEventItem,
UnlockEventItem,
WithdrawEventItem,
} from '@/domain/locking/entities/locking-event.entity';
} from '@/domain/community/entities/locking-event.entity';
import {
LockEventItemSchema,
LockingEventType,
UnlockEventItemSchema,
WithdrawEventItemSchema,
} from '@/domain/locking/entities/schemas/locking-event.schema';
} from '@/domain/community/entities/schemas/locking-event.schema';
import { faker } from '@faker-js/faker';
import { Hex, getAddress } from 'viem';
import { z } from 'zod';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { IBuilder, Builder } from '@/__tests__/builder';
import { Rank } from '@/domain/locking/entities/rank.entity';
import { Rank } from '@/domain/community/entities/rank.entity';
import { faker } from '@faker-js/faker';
import { getAddress } from 'viem';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { buildPageSchema } from '@/domain/entities/schemas/page.schema.factory';
import { ActivityMetadataSchema } from '@/domain/locking/entities/activity-metadata.entity';
import { ActivityMetadataSchema } from '@/domain/community/entities/activity-metadata.entity';
import { z } from 'zod';

export type Campaign = z.infer<typeof CampaignSchema>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {
LockingEventSchema,
UnlockEventItemSchema,
WithdrawEventItemSchema,
} from '@/domain/locking/entities/schemas/locking-event.schema';
} from '@/domain/community/entities/schemas/locking-event.schema';
import { z } from 'zod';

export type LockEventItem = z.infer<typeof LockEventItemSchema>;
Expand Down
4 changes: 4 additions & 0 deletions src/domain/community/entities/rank.entity.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import { RankSchema } from '@/domain/community/entities/schemas/rank.schema';
import { z } from 'zod';

export type Rank = z.infer<typeof RankSchema>;
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { activityMetadataBuilder } from '@/domain/locking/entities/__tests__/activity-metadata.builder';
import { ActivityMetadataSchema } from '@/domain/locking/entities/activity-metadata.entity';
import { activityMetadataBuilder } from '@/domain/community/entities/__tests__/activity-metadata.builder';
import { ActivityMetadataSchema } from '@/domain/community/entities/activity-metadata.entity';
import { faker } from '@faker-js/faker';
import { ZodError } from 'zod';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { campaignRankBuilder } from '@/domain/locking/entities/__tests__/campaign-rank.builder';
import { CampaignRankSchema } from '@/domain/locking/entities/campaign-rank.entity';
import { campaignRankBuilder } from '@/domain/community/entities/__tests__/campaign-rank.builder';
import { CampaignRankSchema } from '@/domain/community/entities/campaign-rank.entity';
import { faker } from '@faker-js/faker';
import { getAddress } from 'viem';
import { ZodError } from 'zod';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { campaignBuilder } from '@/domain/locking/entities/__tests__/campaign.builder';
import { CampaignSchema } from '@/domain/locking/entities/campaign.entity';
import { campaignBuilder } from '@/domain/community/entities/__tests__/campaign.builder';
import { CampaignSchema } from '@/domain/community/entities/campaign.entity';
import { faker } from '@faker-js/faker';
import { ZodError } from 'zod';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ import {
lockEventItemBuilder,
unlockEventItemBuilder,
withdrawEventItemBuilder,
} from '@/domain/locking/entities/__tests__/locking-event.builder';
} from '@/domain/community/entities/__tests__/locking-event.builder';
import {
LockEventItemSchema,
LockingEventPageSchema,
LockingEventSchema,
UnlockEventItemSchema,
WithdrawEventItemSchema,
} from '@/domain/locking/entities/schemas/locking-event.schema';
} from '@/domain/community/entities/schemas/locking-event.schema';
import { faker } from '@faker-js/faker';
import { getAddress } from 'viem';
import { ZodError } from 'zod';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { rankBuilder } from '@/domain/locking/entities/__tests__/rank.builder';
import { RankSchema } from '@/domain/locking/entities/schemas/rank.schema';
import { rankBuilder } from '@/domain/community/entities/__tests__/rank.builder';
import { RankSchema } from '@/domain/community/entities/schemas/rank.schema';
import { faker } from '@faker-js/faker';
import { getAddress } from 'viem';
import { ZodError } from 'zod';
Expand Down
8 changes: 4 additions & 4 deletions src/domain/interfaces/locking-api.interface.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { Page } from '@/domain/entities/page.entity';
import { Campaign } from '@/domain/locking/entities/campaign.entity';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/locking/entities/locking-event.entity';
import { Rank } from '@/domain/locking/entities/rank.entity';
import { Campaign } from '@/domain/community/entities/campaign.entity';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/community/entities/locking-event.entity';
import { Rank } from '@/domain/community/entities/rank.entity';

export const ILockingApi = Symbol('ILockingApi');

Expand Down
4 changes: 0 additions & 4 deletions src/domain/locking/entities/rank.entity.ts

This file was deleted.

12 changes: 0 additions & 12 deletions src/domain/locking/locking.domain.module.ts

This file was deleted.

14 changes: 7 additions & 7 deletions src/routes/community/community.controller.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,22 +23,22 @@ import {
unlockEventItemBuilder,
withdrawEventItemBuilder,
toJson as lockingEventToJson,
} from '@/domain/locking/entities/__tests__/locking-event.builder';
import { LockingEvent } from '@/domain/locking/entities/locking-event.entity';
} from '@/domain/community/entities/__tests__/locking-event.builder';
import { LockingEvent } from '@/domain/community/entities/locking-event.entity';
import { TestAccountDataSourceModule } from '@/datasources/account/__tests__/test.account.datasource.module';
import { AccountDataSourceModule } from '@/datasources/account/account.datasource.module';
import { getAddress } from 'viem';
import { rankBuilder } from '@/domain/locking/entities/__tests__/rank.builder';
import { rankBuilder } from '@/domain/community/entities/__tests__/rank.builder';
import { PaginationData } from '@/routes/common/pagination/pagination.data';
import { TestQueuesApiModule } from '@/datasources/queues/__tests__/test.queues-api.module';
import { QueuesApiModule } from '@/datasources/queues/queues-api.module';
import {
campaignBuilder,
toJson as campaignToJson,
} from '@/domain/locking/entities/__tests__/campaign.builder';
import { Campaign } from '@/domain/locking/entities/campaign.entity';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { campaignRankBuilder } from '@/domain/locking/entities/__tests__/campaign-rank.builder';
} from '@/domain/community/entities/__tests__/campaign.builder';
import { Campaign } from '@/domain/community/entities/campaign.entity';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { campaignRankBuilder } from '@/domain/community/entities/__tests__/campaign-rank.builder';

describe('Community (Unit)', () => {
let app: INestApplication;
Expand Down
4 changes: 2 additions & 2 deletions src/routes/community/community.module.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { Module } from '@nestjs/common';
import { LockingDomainModule } from '@/domain/locking/locking.domain.module';
import { CommunityDomainModule } from '@/domain/community/community.domain.module';
import { CommunityService } from '@/routes/community/community.service';
import { CommunityController } from '@/routes/community/community.controller';

@Module({
imports: [LockingDomainModule],
imports: [CommunityDomainModule],
providers: [CommunityService],
controllers: [CommunityController],
})
Expand Down
26 changes: 13 additions & 13 deletions src/routes/community/community.service.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { Page } from '@/domain/entities/page.entity';
import { Campaign } from '@/domain/locking/entities/campaign.entity';
import { CampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/locking/entities/locking-event.entity';
import { Rank } from '@/domain/locking/entities/rank.entity';
import { ILockingRepository } from '@/domain/locking/locking.repository.interface';
import { Campaign } from '@/domain/community/entities/campaign.entity';
import { CampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { LockingEvent } from '@/domain/community/entities/locking-event.entity';
import { Rank } from '@/domain/community/entities/rank.entity';
import { ICommunityRepository } from '@/domain/community/community.repository.interface';
import {
PaginationData,
cursorUrlFromLimitAndOffset,
Expand All @@ -13,15 +13,15 @@ import { Inject, Injectable } from '@nestjs/common';
@Injectable()
export class CommunityService {
constructor(
@Inject(ILockingRepository)
private readonly lockingRepository: ILockingRepository,
@Inject(ICommunityRepository)
private readonly communityRepository: ICommunityRepository,
) {}

async getCampaigns(args: {
routeUrl: URL;
paginationData: PaginationData;
}): Promise<Page<Campaign>> {
const result = await this.lockingRepository.getCampaigns(
const result = await this.communityRepository.getCampaigns(
args.paginationData,
);

Expand All @@ -40,15 +40,15 @@ export class CommunityService {
}

async getCampaignById(campaignId: string): Promise<Campaign> {
return this.lockingRepository.getCampaignById(campaignId);
return this.communityRepository.getCampaignById(campaignId);
}

async getCampaignLeaderboard(args: {
campaignId: string;
routeUrl: URL;
paginationData: PaginationData;
}): Promise<Page<CampaignRank>> {
const result = await this.lockingRepository.getCampaignLeaderboard({
const result = await this.communityRepository.getCampaignLeaderboard({
campaignId: args.campaignId,
limit: args.paginationData.limit,
offset: args.paginationData.offset,
Expand All @@ -72,7 +72,7 @@ export class CommunityService {
routeUrl: URL;
paginationData: PaginationData;
}): Promise<Page<Rank>> {
const result = await this.lockingRepository.getLeaderboard(
const result = await this.communityRepository.getLeaderboard(
args.paginationData,
);

Expand All @@ -91,15 +91,15 @@ export class CommunityService {
}

async getLockingRank(safeAddress: `0x${string}`): Promise<Rank> {
return this.lockingRepository.getRank(safeAddress);
return this.communityRepository.getRank(safeAddress);
}

async getLockingHistory(args: {
safeAddress: `0x${string}`;
routeUrl: URL;
paginationData: PaginationData;
}): Promise<Page<LockingEvent>> {
const result = await this.lockingRepository.getLockingHistory({
const result = await this.communityRepository.getLockingHistory({
safeAddress: args.safeAddress,
limit: args.paginationData.limit,
offset: args.paginationData.offset,
Expand Down
2 changes: 1 addition & 1 deletion src/routes/locking/entities/activity-metadata.entity.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ActivityMetadata as DomainActivityMetadata } from '@/domain/locking/entities/activity-metadata.entity';
import { ActivityMetadata as DomainActivityMetadata } from '@/domain/community/entities/activity-metadata.entity';
import { ApiProperty } from '@nestjs/swagger';

export class ActivityMetadata implements DomainActivityMetadata {
Expand Down
2 changes: 1 addition & 1 deletion src/routes/locking/entities/campaign-rank.entity.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CampaignRank as DomainCampaignRank } from '@/domain/locking/entities/campaign-rank.entity';
import { CampaignRank as DomainCampaignRank } from '@/domain/community/entities/campaign-rank.entity';
import { ApiProperty } from '@nestjs/swagger';

export class CampaignRank implements DomainCampaignRank {
Expand Down
2 changes: 1 addition & 1 deletion src/routes/locking/entities/campaign.entity.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Campaign as DomainCampaign } from '@/domain/locking/entities/campaign.entity';
import { Campaign as DomainCampaign } from '@/domain/community/entities/campaign.entity';
import { ActivityMetadata } from '@/routes/locking/entities/activity-metadata.entity';
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';

Expand Down
4 changes: 2 additions & 2 deletions src/routes/locking/entities/locking-event.page.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import {
LockEventItem as DomainLockEventItem,
UnlockEventItem as DomainUnlockEventItem,
WithdrawEventItem as DomainWithdrawEventItem,
} from '@/domain/locking/entities/locking-event.entity';
import { LockingEventType } from '@/domain/locking/entities/schemas/locking-event.schema';
} from '@/domain/community/entities/locking-event.entity';
import { LockingEventType } from '@/domain/community/entities/schemas/locking-event.schema';
import { Page } from '@/routes/common/entities/page.entity';
import { ApiExtraModels, ApiProperty, getSchemaPath } from '@nestjs/swagger';

Expand Down
2 changes: 1 addition & 1 deletion src/routes/locking/entities/rank.entity.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Rank as DomainRank } from '@/domain/locking/entities/rank.entity';
import { Rank as DomainRank } from '@/domain/community/entities/rank.entity';
import { ApiProperty } from '@nestjs/swagger';

export class Rank implements DomainRank {
Expand Down
Loading

0 comments on commit 114b28b

Please sign in to comment.