Listory/src/music-library/track.entity.ts

31 lines
618 B
TypeScript
Raw Normal View History

2020-02-02 19:21:58 +01:00
import { SpotifyLibraryDetails } from "src/sources/spotify/spotify-library-details.entity";
import {
Column,
Entity,
JoinTable,
ManyToMany,
ManyToOne,
2020-05-02 17:17:20 +02:00
PrimaryGeneratedColumn,
2020-02-02 19:21:58 +01:00
} from "typeorm";
import { Album } from "./album.entity";
import { Artist } from "./artist.entity";
@Entity()
export class Track {
@PrimaryGeneratedColumn("uuid")
id: string;
@Column()
name: string;
2020-05-02 17:17:20 +02:00
@ManyToOne((type) => Album, (album) => album.tracks)
2020-02-02 19:21:58 +01:00
album: Album;
2020-05-02 17:17:20 +02:00
@ManyToMany((type) => Artist)
2020-02-02 19:21:58 +01:00
@JoinTable()
artists: Artist[];
2020-05-02 17:17:20 +02:00
@Column((type) => SpotifyLibraryDetails)
2020-02-02 19:21:58 +01:00
spotify?: SpotifyLibraryDetails;
}