echadospalante-core
Version:
This package contains the core of the echadospalante project, it contains the domain entities, helpers, and other utilities that are shared between the different services.
106 lines (87 loc) • 2.56 kB
text/typescript
import {
Column,
CreateDateColumn,
Entity,
JoinColumn,
JoinTable,
ManyToMany,
ManyToOne,
OneToMany,
OneToOne,
PrimaryGeneratedColumn,
UpdateDateColumn,
} from "typeorm";
import { VentureCategoryData } from "./venture-category.data";
import { VentureContactData } from "./venture-contact.data";
import { VentureEventData } from "./venture-event.data";
import { VentureLocationData } from "./venture-location.data";
import { VenturePublicationData } from "./venture-publication.data";
import { VentureSponsorshipData } from "./venture-sponsorship.data";
import { VentureSubscriptionData } from "./venture-subscription.data";
import { UserData } from "./user.data";
({ name: "venture" })
export class VentureData {
("uuid")
id: string;
()
name: string;
({ unique: true })
slug: string;
()
coverPhoto: string;
()
description: string;
({ default: true })
active: boolean;
({ default: false })
verified: boolean;
()
createdAt: Date;
()
updatedAt: Date;
(
() => VentureLocationData,
(ventureLocation) => ventureLocation.Venture,
{ cascade: true, eager: true }
)
({ name: "locationId" })
location?: VentureLocationData;
(() => UserData, (user) => user.ventures)
({ name: "ownerId" })
owner?: UserData;
(
() => VentureContactData,
(ventureContact) => ventureContact.Venture,
{ cascade: true }
)
({ name: "ventureContactId" })
contact?: VentureContactData;
(
() => VentureCategoryData,
(ventureCategory) => ventureCategory.ventures,
{ eager: true }
)
({
name: "x_venture_venture_category",
joinColumn: { name: "ventureId", referencedColumnName: "id" },
inverseJoinColumn: { name: "categoryId", referencedColumnName: "id" },
})
categories: VentureCategoryData[];
(() => VentureEventData, (ventureEvent) => ventureEvent.venture)
events: VentureEventData[];
(
() => VenturePublicationData,
(venturePublication) => venturePublication.venture
)
publications: VenturePublicationData[];
(
() => VentureSponsorshipData,
(ventureSponsorship) => ventureSponsorship.venture
)
sponsorships: VentureSponsorshipData[];
(
() => VentureSubscriptionData,
(ventureSubscription) => ventureSubscription.venture
)
subscriptions: VentureSubscriptionData[];
}