333
schangxiang@126.com
2025-09-19 18966e02fb573c7e2bb0c6426ed792b38b910940
1
{"version":3,"sources":["../../src/decorator/relations/JoinTable.ts"],"names":[],"mappings":";;AAAA,4BAAgE;AAsBhE;;;GAGG;AACH,SAAgB,SAAS,CAAC,OAA0D;IAChF,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,OAAO,GAAG,OAAO,IAAI,EAAsD,CAAC;QAC5E,0BAAsB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;YACrC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,WAAW,EAAE,CAAC,OAAO,IAAK,OAA4B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAE,OAA4B,CAAC,UAAW,CAAC,CAAC,CAAC,CAAE,OAA2C,CAAC,WAAW,CAAQ;YAClL,kBAAkB,EAAE,CAAC,OAAO,IAAK,OAA4B,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAE,OAA4B,CAAC,iBAAkB,CAAC,CAAC,CAAC,CAAE,OAA2C,CAAC,kBAAkB,CAAQ;YAC9M,MAAM,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YAC9D,QAAQ,EAAE,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC,CAAC;IAChC,CAAC,CAAC;AACN,CAAC;AAbD,8BAaC","file":"JoinTable.js","sourcesContent":["import {getMetadataArgsStorage, JoinTableOptions} from \"../../\";\nimport {JoinTableMetadataArgs} from \"../../metadata-args/JoinTableMetadataArgs\";\nimport {JoinTableMultipleColumnsOptions} from \"../options/JoinTableMultipleColumnsOptions\";\n\n/**\n * JoinTable decorator is used in many-to-many relationship to specify owner side of relationship.\n * Its also used to set a custom junction table's name, column names and referenced columns.\n */\nexport function JoinTable(): Function;\n\n/**\n * JoinTable decorator is used in many-to-many relationship to specify owner side of relationship.\n * Its also used to set a custom junction table's name, column names and referenced columns.\n */\nexport function JoinTable(options: JoinTableOptions): Function;\n\n/**\n * JoinTable decorator is used in many-to-many relationship to specify owner side of relationship.\n * Its also used to set a custom junction table's name, column names and referenced columns.\n */\nexport function JoinTable(options: JoinTableMultipleColumnsOptions): Function;\n\n/**\n * JoinTable decorator is used in many-to-many relationship to specify owner side of relationship.\n * Its also used to set a custom junction table's name, column names and referenced columns.\n */\nexport function JoinTable(options?: JoinTableOptions|JoinTableMultipleColumnsOptions): Function {\n    return function (object: Object, propertyName: string) {\n        options = options || {} as JoinTableOptions|JoinTableMultipleColumnsOptions;\n        getMetadataArgsStorage().joinTables.push({\n            target: object.constructor,\n            propertyName: propertyName,\n            name: options.name,\n            joinColumns: (options && (options as JoinTableOptions).joinColumn ? [(options as JoinTableOptions).joinColumn!] : (options as JoinTableMultipleColumnsOptions).joinColumns) as any,\n            inverseJoinColumns: (options && (options as JoinTableOptions).inverseJoinColumn ? [(options as JoinTableOptions).inverseJoinColumn!] : (options as JoinTableMultipleColumnsOptions).inverseJoinColumns) as any,\n            schema: options && options.schema ? options.schema : undefined,\n            database: options && options.database ? options.database : undefined,\n        } as JoinTableMetadataArgs);\n    };\n}\n"],"sourceRoot":"../.."}