refactored container and moved all columns, relations, tables, listeners into same index.ts namespace

This commit is contained in:
Umed Khudoiberdiev 2016-08-09 17:45:15 +05:00
parent 56f24e2375
commit 41412c21ce
88 changed files with 306 additions and 301 deletions

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample1_post")
export class Post {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToOne, ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToOne, ManyToMany} from "../../../src/index";
import {Post} from "./Post";
import {PostDetails} from "./PostDetails";

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToMany} from "../../../src/index";
import {PostDetails} from "./PostDetails";
@Table("sample10_chapter")

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToMany} from "../../../src/index";
import {Post} from "./Post";
@Table("sample10_cover")

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToOne, OneToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToOne, OneToOne} from "../../../src/index";
import {Post} from "./Post";
import {ImageDetails} from "./ImageDetails";
import {JoinColumn} from "../../../src/decorator/relations/JoinColumn";

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToOne} from "../../../src/index";
import {Image} from "./Image";
@Table("sample10_image_details")

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToMany, ManyToOne, ManyToMany, OneToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToMany, ManyToOne, ManyToMany, OneToOne} from "../../../src/index";
import {Image} from "./Image";
import {Cover} from "./Cover";
import {Category} from "./Category";

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToOne, OneToMany, ManyToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToOne, OneToMany, ManyToOne} from "../../../src/index";
import {Post} from "./Post";
import {Chapter} from "./Chapter";
import {Category} from "./Category";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {CreateDateColumn} from "../../../src/decorator/columns/CreateDateColumn";
import {UpdateDateColumn} from "../../../src/decorator/columns/UpdateDateColumn";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample1_post")
export class Post {

View File

@ -1,4 +1,4 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {PrimaryColumn, Column} from "../../../src/index";
import {AbstractTable} from "../../../src/decorator/tables/AbstractTable";
import {BasePost} from "./BasePost";
import {PostAuthor} from "./PostAuthor";

View File

@ -1,4 +1,4 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {PrimaryColumn, Column} from "../../../src/index";
import {AbstractTable} from "../../../src/decorator/tables/AbstractTable";
@AbstractTable()

View File

@ -1,5 +1,5 @@
import {Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {PostAuthor} from "./PostAuthor";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,5 +1,5 @@
import {Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";
import {PostAuthor} from "./PostAuthor";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";
import {PostUser} from "./PostUser";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample13_post_user")
export class PostUser {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToOne} from "../../../src/index";
import {PostAuthor} from "./PostAuthor";
import {JoinColumn} from "../../../src/decorator/relations/JoinColumn";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToOne} from "../../../src/relations";
import {OneToOne} from "../../../src/index";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample15_post")
export class Post {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Index} from "../../../src/decorator/indices/Index";
import {CompositeIndex} from "../../../src/decorator/indices/CompositeIndex";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {VersionColumn} from "../../../src/decorator/columns/VersionColumn";
@Table("sample17_post")

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";
import {Post} from "./Post";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Author} from "./Author";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {Category} from "./Category";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample19_author")
export class Author {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample19_category")
export class Category {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Author} from "./Author";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {Category} from "./Category";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample19_post_metadata")
export class PostMetadata {

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {PostDetails} from "./PostDetails";
import {OneToOne} from "../../../src/relations";
import {OneToOne} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {PostAuthor} from "./PostAuthor";
import {PostInformation} from "./PostInformation";

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToOne} from "../../../src/relations";
import {OneToOne} from "../../../src/index";
@Table("sample2_post_author")
export class PostAuthor {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample2_post_category")
export class PostCategory {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToOne} from "../../../src/index";
import {Post} from "./Post";
@Table("sample2_post_details")

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToOne} from "../../../src/relations";
import {OneToOne} from "../../../src/index";
@Table("sample2_post_image")
export class PostImage {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToOne} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToOne} from "../../../src/index";
import {Post} from "./Post";
@Table("sample2_post_information")

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToOne} from "../../../src/relations";
import {OneToOne} from "../../../src/index";
@Table("sample2_post_metadata")
export class PostMetadata {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample20_author")
export class Author {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample20_category")
export class Category {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Author} from "./Author";
import {Category} from "./Category";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";
import {Post} from "./Post";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Author} from "./Author";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {Category} from "./Category";

View File

@ -1,4 +1,4 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {PrimaryColumn, Column} from "../../../src/index";
import {TreeLevelColumn} from "../../../src/decorator/tree/TreeLevelColumn";
import {ClosureTable} from "../../../src/decorator/tables/ClosureTable";
import {TreeParent} from "../../../src/decorator/tree/TreeParent";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample23_author")
export class Author {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Author} from "./Author";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";
import {JoinTable} from "../../../src/decorator/relations/JoinTable";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Category} from "./Category";
import {Author} from "./Author";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";
import {Post} from "./Post";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Author} from "./Author";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";

View File

@ -1,4 +1,4 @@
import {Column} from "../../../src/columns";
import {Column} from "../../../src/index";
import {EmbeddableTable} from "../../../src/decorator/tables/EmbeddableTable";
@EmbeddableTable()

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Counters} from "./Counters";
import {Embedded} from "../../../src/decorator/Embedded";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Counters} from "./Counters";
import {Embedded} from "../../../src/decorator/Embedded";

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {PostDetails} from "./PostDetails";
import {ManyToOne} from "../../../src/relations";
import {ManyToOne} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {PostAuthor} from "./PostAuthor";
import {PostInformation} from "./PostInformation";

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/relations";
import {OneToMany} from "../../../src/index";
@Table("sample3_post_author")
export class PostAuthor {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample3_post_category")
export class PostCategory {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToMany} from "../../../src/index";
import {Post} from "./Post";
@Table("sample3_post_details")

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/relations";
import {OneToMany} from "../../../src/index";
@Table("sample3_post_image")
export class PostImage {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {OneToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {OneToMany} from "../../../src/index";
import {Post} from "./Post";
@Table("sample3_post_information")

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/relations";
import {OneToMany} from "../../../src/index";
@Table("sample3_post_metadata")
export class PostMetadata {

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {PostDetails} from "./PostDetails";
import {ManyToMany} from "../../../src/relations";
import {ManyToMany} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {PostAuthor} from "./PostAuthor";
import {PostInformation} from "./PostInformation";

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/relations";
import {ManyToMany} from "../../../src/index";
@Table("sample4_post_author")
export class PostAuthor {

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
@Table("sample4_post_category")
export class PostCategory {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/index";
import {Post} from "./Post";
import {JoinTable} from "../../../src/decorator/relations/JoinTable";

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/relations";
import {ManyToMany} from "../../../src/index";
@Table("sample4_post_image")
export class PostImage {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/index";
import {Post} from "./Post";
@Table("sample4_post_information")

View File

@ -1,7 +1,7 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/relations";
import {ManyToMany} from "../../../src/index";
@Table("sample4_post_metadata")
export class PostMetadata {

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {PostAuthor} from "./PostAuthor";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,4 +1,4 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {PrimaryColumn, Column} from "../../../src/index";
import {AbstractTable} from "../../../src/decorator/tables/AbstractTable";
@AbstractTable()

View File

@ -1,5 +1,5 @@
import {Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {BasePost} from "./BasePost";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {PostAuthor} from "./PostAuthor";

View File

@ -1,5 +1,5 @@
import {Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {BasePost} from "./BasePost";
import {PostCategory} from "./PostCategory";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {PostAuthor} from "./PostAuthor";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/index";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";
import {OneToOne} from "../../../src/decorator/relations/OneToOne";

View File

@ -1,6 +1,6 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {ManyToMany} from "../../../src/relations";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {ManyToMany} from "../../../src/index";
import {PostCategory} from "./PostCategory";
import {PostAuthor} from "./PostAuthor";
import {ManyToOne} from "../../../src/decorator/relations/ManyToOne";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {OneToMany} from "../../../src/decorator/relations/OneToMany";
import {AfterRemove} from "../../../src/decorator/listeners/AfterRemove";

View File

@ -1,5 +1,5 @@
import {PrimaryColumn, Column} from "../../../src/columns";
import {Table} from "../../../src/tables";
import {PrimaryColumn, Column} from "../../../src/index";
import {Table} from "../../../src/index";
import {Post} from "./Post";
import {ManyToMany} from "../../../src/decorator/relations/ManyToMany";
import {AfterRemove} from "../../../src/decorator/listeners/AfterRemove";

View File

@ -1,6 +0,0 @@
export * from "./decorator/columns/Column";
export * from "./decorator/columns/PrimaryColumn";
export * from "./decorator/columns/CreateDateColumn";
export * from "./decorator/columns/UpdateDateColumn";
export * from "./decorator/relations/RelationCount";

65
src/container.ts Normal file
View File

@ -0,0 +1,65 @@
/**
* Container options.
*/
export interface UseContainerOptions {
/**
* If set to true, then default container will be used in the case if given container haven't returned anything.
*/
fallback?: boolean;
/**
* If set to true, then default container will be used in the case if given container thrown an exception.
*/
fallbackOnErrors?: boolean;
}
/**
* Container to be used by this library for inversion control. If container was not implicitly set then by default
* container simply creates a new instance of the given class.
*/
const defaultContainer: { get<T>(someClass: { new (...args: any[]): T }|Function): T } = new (class {
private instances: { type: Function, object: any }[] = [];
get<T>(someClass: { new (...args: any[]): T }): T {
let instance = this.instances.find(instance => instance.type === someClass);
if (!instance) {
instance = { type: someClass, object: new someClass() };
this.instances.push(instance);
}
return instance.object;
}
})();
let userContainer: { get<T>(someClass: { new (...args: any[]): T }|Function): T };
let userContainerOptions: UseContainerOptions|undefined;
/**
* Sets container to be used by this library.
*/
export function useContainer(iocContainer: { get(someClass: any): any }, options?: UseContainerOptions) {
userContainer = iocContainer;
userContainerOptions = options;
}
/**
* Gets the IOC container used by this library.
*/
export function getFromContainer<T>(someClass: { new (...args: any[]): T }|Function): T {
if (userContainer) {
try {
const instance = userContainer.get(someClass);
if (instance)
return instance;
if (!userContainerOptions || !userContainerOptions.fallback)
return instance;
} catch (error) {
if (!userContainerOptions || !userContainerOptions.fallbackOnErrors)
throw error;
}
}
return defaultContainer.get<T>(someClass);
}

View File

@ -8,98 +8,40 @@ import {Connection} from "./connection/Connection";
import {MysqlDriver} from "./driver/MysqlDriver";
import {MetadataArgsStorage} from "./metadata-args/MetadataArgsStorage";
import {ConnectionOptions} from "./connection/ConnectionOptions";
// -------------------------------------------------------------------------
// Global Container
// -------------------------------------------------------------------------
/**
* Container to be used by this library for inversion control. If container was not implicitly set then by default
* container simply creates a new instance of the given class.
*/
let container: { get<T>(someClass: { new (...args: any[]): T }|Function): T } = new (class {
private instances: any[] = [];
get<T>(someClass: { new (...args: any[]): T }): T {
if (!this.instances[<any>someClass])
this.instances[<any>someClass] = new someClass();
return this.instances[<any>someClass];
}
})();
/**
* Sets container to be used by this library.
*
* @param iocContainer
*/
export function useContainer(iocContainer: { get(someClass: any): any }) {
container = iocContainer;
}
/**
* Gets the IOC container used by this library.
*/
export function getFromContainer<T>(someClass: { new (...args: any[]): T }|Function): T {
return container.get<T>(someClass);
}
// -------------------------------------------------------------------------
// Global Metadata Storage
// -------------------------------------------------------------------------
/**
* Default metadata storage used as singleton and can be used to storage all metadatas in the system.
*/
let metadataArgsStorage: MetadataArgsStorage;
/**
* Gets metadata args storage.
*/
export function getMetadataArgsStorage() {
if (!metadataArgsStorage && container) {
metadataArgsStorage = container.get(MetadataArgsStorage);
} else if (!metadataArgsStorage) {
metadataArgsStorage = new MetadataArgsStorage();
}
return metadataArgsStorage;
}
// -------------------------------------------------------------------------
// Global Connection Manager
// -------------------------------------------------------------------------
/**
* Default export. Global connection manager.
*/
let connectionManager: ConnectionManager;
/**
* Gets a ConnectionManager which creates connections.
*/
export function getConnectionManager() {
if (!connectionManager && container) {
connectionManager = container.get(ConnectionManager);
} else if (!connectionManager) {
connectionManager = new ConnectionManager();
}
return connectionManager;
}
/**
* Allows to quickly create a connection based on the given options. Uses ConnectionManager.
*/
export function createConnection(options: ConnectionOptions) {
return getConnectionManager().createAndConnect(options);
}
import {getFromContainer} from "./container";
// -------------------------------------------------------------------------
// Commonly Used exports
// -------------------------------------------------------------------------
export * from "./container";
export * from "./decorator/columns/Column";
export * from "./decorator/columns/PrimaryColumn";
export * from "./decorator/columns/CreateDateColumn";
export * from "./decorator/columns/UpdateDateColumn";
export * from "./decorator/relations/RelationCount";
export * from "./decorator/indices/Index";
export * from "./decorator/indices/CompositeIndex";
export * from "./decorator/listeners/EventSubscriber";
export * from "./decorator/listeners/AfterInsert";
export * from "./decorator/listeners/BeforeInsert";
export * from "./decorator/listeners/AfterUpdate";
export * from "./decorator/listeners/BeforeUpdate";
export * from "./decorator/listeners/AfterRemove";
export * from "./decorator/listeners/BeforeRemove";
export * from "./decorator/relations/OneToOne";
export * from "./decorator/relations/OneToMany";
export * from "./decorator/relations/ManyToOne";
export * from "./decorator/relations/ManyToMany";
export * from "./decorator/relations/JoinTable";
export * from "./decorator/relations/JoinColumn";
export * from "./decorator/relations/RelationCount";
export * from "./decorator/relations/RelationId";
export * from "./decorator/tables/Table";
export * from "./decorator/tables/AbstractTable";
export * from "./decorator/tree/TreeLevelColumn";
export * from "./decorator/tree/TreeParent";
export {Connection} from "./connection/Connection";
export {DriverOptions} from "./driver/DriverOptions";
export {ConnectionManager} from "./connection/ConnectionManager";
@ -113,4 +55,29 @@ export {FindOptions} from "./repository/FindOptions";
export {InsertEvent} from "./subscriber/event/InsertEvent";
export {UpdateEvent} from "./subscriber/event/UpdateEvent";
export {RemoveEvent} from "./subscriber/event/RemoveEvent";
export {EntitySubscriberInterface} from "./subscriber/EntitySubscriberInterface";
export {EntitySubscriberInterface} from "./subscriber/EntitySubscriberInterface";
// -------------------------------------------------------------------------
// Commonly used functionality
// -------------------------------------------------------------------------
/**
* Gets metadata args storage.
*/
export function getMetadataArgsStorage() {
return getFromContainer(MetadataArgsStorage);
}
/**
* Gets a ConnectionManager which creates connections.
*/
export function getConnectionManager() {
return getFromContainer(ConnectionManager);
}
/**
* Allows to quickly create a connection based on the given options. Uses ConnectionManager.
*/
export function createConnection(options: ConnectionOptions) {
return getConnectionManager().createAndConnect(options);
}

View File

@ -1,2 +0,0 @@
export * from "./decorator/indices/Index";
export * from "./decorator/indices/CompositeIndex";

View File

@ -1,7 +0,0 @@
export * from "./decorator/listeners/EventSubscriber";
export * from "./decorator/listeners/AfterInsert";
export * from "./decorator/listeners/BeforeInsert";
export * from "./decorator/listeners/AfterUpdate";
export * from "./decorator/listeners/BeforeUpdate";
export * from "./decorator/listeners/AfterRemove";
export * from "./decorator/listeners/BeforeRemove";

View File

@ -1,8 +0,0 @@
export * from "./decorator/relations/OneToOne";
export * from "./decorator/relations/OneToMany";
export * from "./decorator/relations/ManyToOne";
export * from "./decorator/relations/ManyToMany";
export * from "./decorator/relations/JoinTable";
export * from "./decorator/relations/JoinColumn";
export * from "./decorator/relations/RelationCount";
export * from "./decorator/relations/RelationId";

View File

@ -1,2 +0,0 @@
export * from "./decorator/tables/Table";
export * from "./decorator/tables/AbstractTable";

View File

@ -1,2 +0,0 @@
export * from "./decorator/tree/TreeLevelColumn";
export * from "./decorator/tree/TreeParent";