mirror of
https://github.com/immich-app/immich
synced 2025-11-07 17:27:20 +00:00
25 lines
1 KiB
TypeScript
25 lines
1 KiB
TypeScript
import { Controller, Get, Query } from '@nestjs/common';
|
|
import { ApiTags } from '@nestjs/swagger';
|
|
import { AssetResponseDto } from 'src/dtos/asset-response.dto';
|
|
import { AuthDto } from 'src/dtos/auth.dto';
|
|
import { TimeBucketAssetDto, TimeBucketDto, TimeBucketResponseDto } from 'src/dtos/time-bucket.dto';
|
|
import { Auth, Authenticated } from 'src/middleware/auth.guard';
|
|
import { TimelineService } from 'src/services/timeline.service';
|
|
|
|
@ApiTags('Timeline')
|
|
@Controller('timeline')
|
|
export class TimelineController {
|
|
constructor(private service: TimelineService) {}
|
|
|
|
@Authenticated({ sharedLink: true })
|
|
@Get('buckets')
|
|
getTimeBuckets(@Auth() auth: AuthDto, @Query() dto: TimeBucketDto): Promise<TimeBucketResponseDto[]> {
|
|
return this.service.getTimeBuckets(auth, dto);
|
|
}
|
|
|
|
@Authenticated({ sharedLink: true })
|
|
@Get('bucket')
|
|
getTimeBucket(@Auth() auth: AuthDto, @Query() dto: TimeBucketAssetDto): Promise<AssetResponseDto[]> {
|
|
return this.service.getTimeBucket(auth, dto) as Promise<AssetResponseDto[]>;
|
|
}
|
|
}
|