@steroidsjs/nest 1.5.0-beta.14 → 1.5.0-beta.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -3
- package/src/infrastructure/adapters/QueryAdapterTypeORM.d.ts +2 -2
- package/src/infrastructure/base/DatabaseNamingStrategy.d.ts +1 -1
- package/src/infrastructure/base/DatabaseNamingStrategy.js +3 -3
- package/src/infrastructure/base/DatabaseNamingStrategy.js.map +1 -1
- package/src/infrastructure/commands/MigrateCommand.d.ts +1 -1
- package/src/infrastructure/commands/MigrateCommand.js +6 -6
- package/src/infrastructure/commands/MigrateCommand.js.map +1 -1
- package/src/infrastructure/commands/dbml/dbml2code.js +1 -1
- package/src/infrastructure/commands/dbml/dbml2code.js.map +1 -1
- package/src/infrastructure/commands/dbml/templates.js +1 -1
- package/src/infrastructure/commands/entity-generator/templates/RepositoryTemplate.txt +2 -2
- package/src/infrastructure/commands/generate/CustomPostgresQueryRunner.d.ts +11 -11
- package/src/infrastructure/commands/generate/CustomPostgresQueryRunner.js +13 -13
- package/src/infrastructure/commands/generate/CustomPostgresQueryRunner.js.map +1 -1
- package/src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.d.ts +1 -1
- package/src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.js +1 -1
- package/src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.js.map +1 -1
- package/src/infrastructure/commands/generate/index.d.ts +1 -1
- package/src/infrastructure/commands/generate/index.js +2 -2
- package/src/infrastructure/commands/generate/index.js.map +1 -1
- package/src/infrastructure/commands/importClassesFromDirectories.d.ts +1 -1
- package/src/infrastructure/commands/importClassesFromDirectories.js +3 -3
- package/src/infrastructure/commands/importClassesFromDirectories.js.map +1 -1
- package/src/infrastructure/decorators/TableFromModel.js +2 -2
- package/src/infrastructure/decorators/TableFromModel.js.map +1 -1
- package/src/infrastructure/decorators/fields/BaseField.d.ts +1 -1
- package/src/infrastructure/decorators/fields/BooleanField.js +2 -2
- package/src/infrastructure/decorators/fields/BooleanField.js.map +1 -1
- package/src/infrastructure/decorators/fields/CoordinateField.js +2 -2
- package/src/infrastructure/decorators/fields/CoordinateField.js.map +1 -1
- package/src/infrastructure/decorators/fields/CreateTimeField.js +4 -4
- package/src/infrastructure/decorators/fields/CreateTimeField.js.map +1 -1
- package/src/infrastructure/decorators/fields/DateField.js +2 -2
- package/src/infrastructure/decorators/fields/DateField.js.map +1 -1
- package/src/infrastructure/decorators/fields/DateTimeField.js +2 -2
- package/src/infrastructure/decorators/fields/DateTimeField.js.map +1 -1
- package/src/infrastructure/decorators/fields/DecimalField.js +2 -2
- package/src/infrastructure/decorators/fields/DecimalField.js.map +1 -1
- package/src/infrastructure/decorators/fields/EmailField.js +2 -2
- package/src/infrastructure/decorators/fields/EmailField.js.map +1 -1
- package/src/infrastructure/decorators/fields/EnumField.js +2 -2
- package/src/infrastructure/decorators/fields/EnumField.js.map +1 -1
- package/src/infrastructure/decorators/fields/FileField.js +2 -2
- package/src/infrastructure/decorators/fields/FileField.js.map +1 -1
- package/src/infrastructure/decorators/fields/HtmlField.js +2 -2
- package/src/infrastructure/decorators/fields/HtmlField.js.map +1 -1
- package/src/infrastructure/decorators/fields/IntegerField.js +2 -2
- package/src/infrastructure/decorators/fields/IntegerField.js.map +1 -1
- package/src/infrastructure/decorators/fields/PasswordField.js +2 -2
- package/src/infrastructure/decorators/fields/PasswordField.js.map +1 -1
- package/src/infrastructure/decorators/fields/PhoneField.js +2 -2
- package/src/infrastructure/decorators/fields/PhoneField.js.map +1 -1
- package/src/infrastructure/decorators/fields/PrimaryKeyField.js +2 -2
- package/src/infrastructure/decorators/fields/PrimaryKeyField.js.map +1 -1
- package/src/infrastructure/decorators/fields/RelationField.js +7 -7
- package/src/infrastructure/decorators/fields/RelationField.js.map +1 -1
- package/src/infrastructure/decorators/fields/RelationIdField.js +2 -2
- package/src/infrastructure/decorators/fields/RelationIdField.js.map +1 -1
- package/src/infrastructure/decorators/fields/StringField.js +2 -2
- package/src/infrastructure/decorators/fields/StringField.js.map +1 -1
- package/src/infrastructure/decorators/fields/TextField.js +2 -2
- package/src/infrastructure/decorators/fields/TextField.js.map +1 -1
- package/src/infrastructure/decorators/fields/TimeField.js +2 -2
- package/src/infrastructure/decorators/fields/TimeField.js.map +1 -1
- package/src/infrastructure/decorators/fields/UidField.js +4 -4
- package/src/infrastructure/decorators/fields/UidField.js.map +1 -1
- package/src/infrastructure/decorators/fields/UpdateTimeField.js +4 -4
- package/src/infrastructure/decorators/fields/UpdateTimeField.js.map +1 -1
- package/src/infrastructure/helpers/typeORM/ConditionHelperTypeORM.d.ts +1 -1
- package/src/infrastructure/helpers/typeORM/ConditionHelperTypeORM.js +12 -12
- package/src/infrastructure/helpers/typeORM/ConditionHelperTypeORM.js.map +1 -1
- package/src/infrastructure/helpers/typeORM/SearchHelperTypeORM.d.ts +2 -2
- package/src/infrastructure/repositories/CrudRepository.d.ts +2 -2
- package/src/infrastructure/tests/app/repositories/ArticleRepository.d.ts +1 -1
- package/src/infrastructure/tests/app/repositories/ArticleRepository.js +4 -4
- package/src/infrastructure/tests/app/repositories/ArticleRepository.js.map +1 -1
- package/src/infrastructure/tests/app/repositories/CommentRepository.d.ts +1 -1
- package/src/infrastructure/tests/app/repositories/CommentRepository.js +4 -4
- package/src/infrastructure/tests/app/repositories/CommentRepository.js.map +1 -1
- package/src/infrastructure/tests/app/repositories/FileRepository.d.ts +1 -1
- package/src/infrastructure/tests/app/repositories/FileRepository.js +4 -4
- package/src/infrastructure/tests/app/repositories/FileRepository.js.map +1 -1
- package/src/infrastructure/tests/app/repositories/ImageRepository.d.ts +1 -1
- package/src/infrastructure/tests/app/repositories/ImageRepository.js +4 -4
- package/src/infrastructure/tests/app/repositories/ImageRepository.js.map +1 -1
- package/src/infrastructure/tests/app/repositories/TagRepository.d.ts +1 -1
- package/src/infrastructure/tests/app/repositories/TagRepository.js +4 -4
- package/src/infrastructure/tests/app/repositories/TagRepository.js.map +1 -1
- package/src/infrastructure/tests/app/repositories/UserRepository.d.ts +1 -1
- package/src/infrastructure/tests/app/repositories/UserRepository.js +4 -4
- package/src/infrastructure/tests/app/repositories/UserRepository.js.map +1 -1
- package/src/infrastructure/tests/bootstrap.js +3 -3
- package/src/infrastructure/tests/bootstrap.js.map +1 -1
- package/src/usecases/base/SearchQuery.js +1 -1
- package/src/usecases/base/SearchQuery.js.map +1 -1
- package/src/usecases/interfaces/ICrudRepository.d.ts +1 -1
- package/tsconfig.tsbuildinfo +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steroidsjs/nest",
|
|
3
|
-
"version": "1.5.0-beta.
|
|
3
|
+
"version": "1.5.0-beta.16",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"script": "nps",
|
|
6
6
|
"watch": "nps watch",
|
|
@@ -27,7 +27,8 @@
|
|
|
27
27
|
"@nestjs/core": "^8.4.1",
|
|
28
28
|
"@nestjs/platform-express": "^8.4.1",
|
|
29
29
|
"@nestjs/swagger": "^5.2.0",
|
|
30
|
-
"nest-typeorm
|
|
30
|
+
"@steroidsjs/nest-typeorm": "^9.0.1",
|
|
31
|
+
"@steroidsjs/typeorm": "^0.3.11",
|
|
31
32
|
"@sqltools/formatter": "^1.2.3",
|
|
32
33
|
"bluebird": "^3.7.2",
|
|
33
34
|
"class-transformer": "^0.5.1",
|
|
@@ -39,7 +40,6 @@
|
|
|
39
40
|
"pluralize": "^8.0.0",
|
|
40
41
|
"rxjs": "^7.2.0",
|
|
41
42
|
"typedi": "^0.10.0",
|
|
42
|
-
"typeorm-steroids": "^0.3.11-beta1",
|
|
43
43
|
"uuid": "^8.3.2"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Repository } from 'typeorm
|
|
2
|
-
import { SelectQueryBuilder } from 'typeorm
|
|
1
|
+
import { Repository } from '@steroidsjs/typeorm';
|
|
2
|
+
import { SelectQueryBuilder } from '@steroidsjs/typeorm/query-builder/SelectQueryBuilder';
|
|
3
3
|
import SearchQuery from '../../usecases/base/SearchQuery';
|
|
4
4
|
export declare class QueryAdapterTypeORM {
|
|
5
5
|
static prepare(dbRepository: Repository<any>, dbQuery: SelectQueryBuilder<any>, searchQuery: SearchQuery<any>, eagerLoading?: boolean): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DefaultNamingStrategy } from 'typeorm
|
|
1
|
+
import { DefaultNamingStrategy } from '@steroidsjs/typeorm';
|
|
2
2
|
export declare class DatabaseNamingStrategy extends DefaultNamingStrategy {
|
|
3
3
|
joinTableName(firstTableName: string, secondTableName: string, firstPropertyName: string, secondPropertyName: string): string;
|
|
4
4
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DatabaseNamingStrategy = void 0;
|
|
4
|
-
const StringUtils_1 = require("typeorm
|
|
5
|
-
const
|
|
6
|
-
class DatabaseNamingStrategy extends
|
|
4
|
+
const StringUtils_1 = require("@steroidsjs/typeorm/util/StringUtils");
|
|
5
|
+
const typeorm_1 = require("@steroidsjs/typeorm");
|
|
6
|
+
class DatabaseNamingStrategy extends typeorm_1.DefaultNamingStrategy {
|
|
7
7
|
joinTableName(firstTableName, secondTableName, firstPropertyName, secondPropertyName) {
|
|
8
8
|
return (0, StringUtils_1.snakeCase)(firstTableName + '_' + secondTableName);
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseNamingStrategy.js","sourceRoot":"","sources":["../../../../src/infrastructure/base/DatabaseNamingStrategy.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"DatabaseNamingStrategy.js","sourceRoot":"","sources":["../../../../src/infrastructure/base/DatabaseNamingStrategy.ts"],"names":[],"mappings":";;;AAAA,sEAA+D;AAC/D,iDAA0D;AAE1D,MAAa,sBAAuB,SAAQ,+BAAqB;IAE7D,aAAa,CAAC,cAAsB,EACtB,eAAuB,EACvB,iBAAyB,EACzB,kBAA0B;QACpC,OAAO,IAAA,uBAAS,EAAC,cAAc,GAAG,GAAG,GAAG,eAAe,CAAC,CAAC;IAC7D,CAAC;CACJ;AARD,wDAQC"}
|
|
@@ -17,14 +17,14 @@ const nestjs_command_1 = require("nestjs-command");
|
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
18
|
const dbml2code_1 = require("./dbml/dbml2code");
|
|
19
19
|
const generate_1 = require("./generate");
|
|
20
|
-
const
|
|
21
|
-
const ConnectionMetadataBuilder_1 = require("typeorm
|
|
22
|
-
const OrmUtils_1 = require("typeorm
|
|
20
|
+
const typeorm_1 = require("@steroidsjs/typeorm");
|
|
21
|
+
const ConnectionMetadataBuilder_1 = require("@steroidsjs/typeorm/connection/ConnectionMetadataBuilder");
|
|
22
|
+
const OrmUtils_1 = require("@steroidsjs/typeorm/util/OrmUtils");
|
|
23
23
|
const importClassesFromDirectories_1 = require("./importClassesFromDirectories");
|
|
24
24
|
ConnectionMetadataBuilder_1.ConnectionMetadataBuilder.prototype.buildMigrations = async function (migrations) {
|
|
25
25
|
const [migrationClasses, migrationDirectories] = OrmUtils_1.OrmUtils.splitClassesAndStrings(migrations);
|
|
26
26
|
const allMigrationClasses = [...migrationClasses, ...(await (0, importClassesFromDirectories_1.importClassesFromDirectories)(this.connection.logger, migrationDirectories))];
|
|
27
|
-
return allMigrationClasses.map(migrationClass => (0,
|
|
27
|
+
return allMigrationClasses.map(migrationClass => (0, typeorm_1.getFromContainer)(migrationClass));
|
|
28
28
|
};
|
|
29
29
|
let MigrateCommand = class MigrateCommand {
|
|
30
30
|
constructor(dataSource) {
|
|
@@ -103,8 +103,8 @@ __decorate([
|
|
|
103
103
|
], MigrateCommand.prototype, "generate", null);
|
|
104
104
|
MigrateCommand = __decorate([
|
|
105
105
|
(0, common_1.Injectable)(),
|
|
106
|
-
__param(0, (0, common_1.Inject)(
|
|
107
|
-
__metadata("design:paramtypes", [
|
|
106
|
+
__param(0, (0, common_1.Inject)(typeorm_1.DataSource)),
|
|
107
|
+
__metadata("design:paramtypes", [typeorm_1.DataSource])
|
|
108
108
|
], MigrateCommand);
|
|
109
109
|
exports.MigrateCommand = MigrateCommand;
|
|
110
110
|
//# sourceMappingURL=MigrateCommand.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrateCommand.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/MigrateCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mDAAmD;AACnD,2CAAkD;AAClD,gDAA2C;AAC3C,yCAAoC;AACpC,
|
|
1
|
+
{"version":3,"file":"MigrateCommand.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/MigrateCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mDAAmD;AACnD,2CAAkD;AAClD,gDAA2C;AAC3C,yCAAoC;AACpC,iDAAqF;AACrF,wGAAmG;AACnG,gEAA2D;AAC3D,iFAA4E;AAE5E,qDAAyB,CAAC,SAAS,CAAC,eAAe,GAAG,KAAK,WAAW,UAA+B;IACjG,MAAM,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,GAAG,mBAAQ,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7F,MAAM,mBAAmB,GAAG,CAAC,GAAG,gBAAgB,EAAE,GAAG,CAAC,MAAM,IAAA,2DAA4B,EAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACzI,OAAO,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,IAAA,0BAAgB,EAAqB,cAAc,CAAC,CAAC,CAAC;AAC3G,CAAC,CAAA;AAGD,IAAa,cAAc,GAA3B,MAAa,cAAc;IACvB,YAEY,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAElC,CAAC;IAMD,KAAK,CAAC,KAAK;QACP,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;YAChC,WAAW,EAAE,MAAM;SACtB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;IAMD,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;YACpC,WAAW,EAAE,MAAM;SACtB,CAAC,CAAC;IACP,CAAC;IAMD,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;IAC3C,CAAC;IAMD,KAAK,CAAC,SAAS,CAOP,IAAY;QAEhB,MAAM,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAMD,KAAK,CAAC,QAAQ;QACV,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;CAEJ,CAAA;AAjDG;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,gBAAgB;KAC7B,CAAC;;;;2CAMD;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,gBAAgB;QACzB,QAAQ,EAAE,uBAAuB;KACpC,CAAC;;;;0CAKD;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,cAAc;QACvB,QAAQ,EAAE,sBAAsB;KACnC,CAAC;;;;0CAGD;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,iCAAiC;KAC9C,CAAC;IAEG,WAAA,IAAA,2BAAU,EAAC;QACR,IAAI,EAAE,MAAM;QAEZ,QAAQ,EAAE,qBAAqB;QAC/B,IAAI,EAAE,QAAQ;KACjB,CAAC,CAAA;;;;+CAIL;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,0CAA0C;KACvD,CAAC;;;;8CAGD;AA1DQ,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAGJ,WAAA,IAAA,eAAM,EAAC,oBAAU,CAAC,CAAA;qCACC,oBAAU;GAHzB,cAAc,CA4D1B;AA5DY,wCAAc"}
|
|
@@ -6,7 +6,7 @@ const fs = require("fs");
|
|
|
6
6
|
const lodash_1 = require("lodash");
|
|
7
7
|
const pluralize = require("pluralize");
|
|
8
8
|
const load_configuration_1 = require("@nestjs/cli/lib/utils/load-configuration");
|
|
9
|
-
const CommandUtils_1 = require("typeorm
|
|
9
|
+
const CommandUtils_1 = require("@steroidsjs/typeorm/commands/CommandUtils");
|
|
10
10
|
const core_1 = require("@dbml/core");
|
|
11
11
|
const templates_1 = require("./templates");
|
|
12
12
|
const relationsMap = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbml2code.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/dbml/dbml2code.ts"],"names":[],"mappings":";;;AAAA,+BAA0B;AAC1B,yBAAyB;AACzB,mCAOgB;AAChB,uCAAuC;AACvC,iFAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"dbml2code.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/dbml/dbml2code.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ function templateModelRelation(fieldLabel, relationType, isOwningSide, modelRigh
|
|
|
35
35
|
exports.templateModelRelation = templateModelRelation;
|
|
36
36
|
function templateTable(modelName, entityName, tableName) {
|
|
37
37
|
return `import {TableFromModel} from '@steroidsjs/nest/infrastructure/decorators/TableFromModel';
|
|
38
|
-
import {DeepPartial} from 'typeorm
|
|
38
|
+
import {DeepPartial} from '@steroidsjs/typeorm';
|
|
39
39
|
import {${modelName}} from '../../domain/models/${modelName}';
|
|
40
40
|
|
|
41
41
|
@TableFromModel(${modelName}, '${entityName}')
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {Repository} from 'typeorm
|
|
1
|
+
import {Repository} from '@steroidsjs/typeorm';
|
|
2
2
|
import {Injectable} from '@nestjs/common';
|
|
3
|
-
import {InjectRepository} from 'nest-typeorm
|
|
3
|
+
import {InjectRepository} from '@steroidsjs/nest-typeorm';
|
|
4
4
|
import {CrudRepository} from '@steroidsjs/nest/src/infrastructure/repositories/CrudRepository';
|
|
5
5
|
import {%entityName%Model} from '../../domain/models/%entityName%Model';
|
|
6
6
|
import {%entityName%Table} from '../tables/%entityName%Table';
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { QueryRunner } from 'typeorm
|
|
2
|
-
import { Table } from 'typeorm
|
|
3
|
-
import { TableCheck } from 'typeorm
|
|
4
|
-
import { TableColumn } from 'typeorm
|
|
5
|
-
import { TableExclusion } from 'typeorm
|
|
6
|
-
import { TableForeignKey } from 'typeorm
|
|
7
|
-
import { TableIndex } from 'typeorm
|
|
8
|
-
import { TableUnique } from 'typeorm
|
|
9
|
-
import { Query } from 'typeorm
|
|
10
|
-
import { PostgresQueryRunner } from 'typeorm
|
|
11
|
-
import { SqlInMemory } from 'typeorm
|
|
1
|
+
import { QueryRunner } from '@steroidsjs/typeorm/query-runner/QueryRunner';
|
|
2
|
+
import { Table } from '@steroidsjs/typeorm/schema-builder/table/Table';
|
|
3
|
+
import { TableCheck } from '@steroidsjs/typeorm/schema-builder/table/TableCheck';
|
|
4
|
+
import { TableColumn } from '@steroidsjs/typeorm/schema-builder/table/TableColumn';
|
|
5
|
+
import { TableExclusion } from '@steroidsjs/typeorm/schema-builder/table/TableExclusion';
|
|
6
|
+
import { TableForeignKey } from '@steroidsjs/typeorm/schema-builder/table/TableForeignKey';
|
|
7
|
+
import { TableIndex } from '@steroidsjs/typeorm/schema-builder/table/TableIndex';
|
|
8
|
+
import { TableUnique } from '@steroidsjs/typeorm/schema-builder/table/TableUnique';
|
|
9
|
+
import { Query } from '@steroidsjs/typeorm/driver/Query';
|
|
10
|
+
import { PostgresQueryRunner } from '@steroidsjs/typeorm/driver/postgres/PostgresQueryRunner';
|
|
11
|
+
import { SqlInMemory } from '@steroidsjs/typeorm/driver/SqlInMemory';
|
|
12
12
|
export declare class TableQuery {
|
|
13
13
|
tableName: string;
|
|
14
14
|
query: Query;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CustomPostgresQueryRunner = exports.TableSqlInMemory = exports.TableQuery = void 0;
|
|
4
|
-
const Table_1 = require("typeorm
|
|
5
|
-
const TableCheck_1 = require("typeorm
|
|
6
|
-
const TableColumn_1 = require("typeorm
|
|
7
|
-
const TableExclusion_1 = require("typeorm
|
|
8
|
-
const TableForeignKey_1 = require("typeorm
|
|
9
|
-
const TableIndex_1 = require("typeorm
|
|
10
|
-
const TableUnique_1 = require("typeorm
|
|
11
|
-
const OrmUtils_1 = require("typeorm
|
|
12
|
-
const Query_1 = require("typeorm
|
|
13
|
-
const TypeORMError_1 = require("typeorm
|
|
14
|
-
const MetadataTableType_1 = require("typeorm
|
|
15
|
-
const PostgresQueryRunner_1 = require("typeorm
|
|
16
|
-
const SqlInMemory_1 = require("typeorm
|
|
4
|
+
const Table_1 = require("@steroidsjs/typeorm/schema-builder/table/Table");
|
|
5
|
+
const TableCheck_1 = require("@steroidsjs/typeorm/schema-builder/table/TableCheck");
|
|
6
|
+
const TableColumn_1 = require("@steroidsjs/typeorm/schema-builder/table/TableColumn");
|
|
7
|
+
const TableExclusion_1 = require("@steroidsjs/typeorm/schema-builder/table/TableExclusion");
|
|
8
|
+
const TableForeignKey_1 = require("@steroidsjs/typeorm/schema-builder/table/TableForeignKey");
|
|
9
|
+
const TableIndex_1 = require("@steroidsjs/typeorm/schema-builder/table/TableIndex");
|
|
10
|
+
const TableUnique_1 = require("@steroidsjs/typeorm/schema-builder/table/TableUnique");
|
|
11
|
+
const OrmUtils_1 = require("@steroidsjs/typeorm/util/OrmUtils");
|
|
12
|
+
const Query_1 = require("@steroidsjs/typeorm/driver/Query");
|
|
13
|
+
const TypeORMError_1 = require("@steroidsjs/typeorm/error/TypeORMError");
|
|
14
|
+
const MetadataTableType_1 = require("@steroidsjs/typeorm/driver/types/MetadataTableType");
|
|
15
|
+
const PostgresQueryRunner_1 = require("@steroidsjs/typeorm/driver/postgres/PostgresQueryRunner");
|
|
16
|
+
const SqlInMemory_1 = require("@steroidsjs/typeorm/driver/SqlInMemory");
|
|
17
17
|
class TableQuery {
|
|
18
18
|
constructor(tableName, query) {
|
|
19
19
|
this.tableName = tableName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomPostgresQueryRunner.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/CustomPostgresQueryRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CustomPostgresQueryRunner.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/CustomPostgresQueryRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RdbmsSchemaBuilder } from 'typeorm
|
|
1
|
+
import { RdbmsSchemaBuilder } from '@steroidsjs/typeorm/schema-builder/RdbmsSchemaBuilder';
|
|
2
2
|
import { TableSqlInMemory } from './CustomPostgresQueryRunner';
|
|
3
3
|
export declare class CustomRdbmsSchemaBuilder extends RdbmsSchemaBuilder {
|
|
4
4
|
log(): Promise<TableSqlInMemory>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CustomRdbmsSchemaBuilder = void 0;
|
|
4
|
-
const RdbmsSchemaBuilder_1 = require("typeorm
|
|
4
|
+
const RdbmsSchemaBuilder_1 = require("@steroidsjs/typeorm/schema-builder/RdbmsSchemaBuilder");
|
|
5
5
|
const CustomPostgresQueryRunner_1 = require("./CustomPostgresQueryRunner");
|
|
6
6
|
class CustomRdbmsSchemaBuilder extends RdbmsSchemaBuilder_1.RdbmsSchemaBuilder {
|
|
7
7
|
async log() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomRdbmsSchemaBuilder.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.ts"],"names":[],"mappings":";;;AAIA,
|
|
1
|
+
{"version":3,"file":"CustomRdbmsSchemaBuilder.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.ts"],"names":[],"mappings":";;;AAIA,8FAAyF;AACzF,2EAAwF;AAExF,MAAa,wBAAyB,SAAQ,uCAAkB;IAE5D,KAAK,CAAC,GAAG;QAEL,MAAM,WAAW,GAAG,IAAI,qDAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAa,EAAE,QAAQ,CAAC,CAAC;QAC3F,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI;YAEA,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEpC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,wCAAwC,EAAE,CAAC;YAGtD,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB;gBAChC,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAEzE,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAsB,CAAC;SAE9D;gBAAS;YAIN,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SACpC;IACL,CAAC;IAEO,kBAAkB,CAAC,MAAgE;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CACxC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAC9C,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CACrD,CAAC;IACN,CAAC;CAEJ;AA1CD,4DA0CC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Connection } from 'typeorm
|
|
1
|
+
import { Connection } from '@steroidsjs/typeorm';
|
|
2
2
|
export declare const generate: (connection: Connection) => Promise<void>;
|
|
@@ -5,7 +5,7 @@ const load_configuration_1 = require("@nestjs/cli/lib/utils/load-configuration")
|
|
|
5
5
|
const path_1 = require("path");
|
|
6
6
|
const lodash = require("lodash");
|
|
7
7
|
const fs = require("fs");
|
|
8
|
-
const CommandUtils_1 = require("typeorm
|
|
8
|
+
const CommandUtils_1 = require("@steroidsjs/typeorm/commands/CommandUtils");
|
|
9
9
|
const formatter_1 = require("@sqltools/formatter");
|
|
10
10
|
const CustomRdbmsSchemaBuilder_1 = require("./CustomRdbmsSchemaBuilder");
|
|
11
11
|
const queryParams = (parameters) => {
|
|
@@ -22,7 +22,7 @@ const prettifyQuery = (query) => {
|
|
|
22
22
|
};
|
|
23
23
|
const getTemplate = (name, timestamp, upSqls, downSqls) => {
|
|
24
24
|
const migrationName = `${name}${timestamp}`;
|
|
25
|
-
return `import {MigrationInterface, QueryRunner} from 'typeorm
|
|
25
|
+
return `import {MigrationInterface, QueryRunner} from '@steroidsjs/typeorm';
|
|
26
26
|
|
|
27
27
|
export class ${migrationName} implements MigrationInterface {
|
|
28
28
|
name = '${migrationName}'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":";;;AAAA,iFAA2E;AAC3E,+BAA0B;AAC1B,iCAAiC;AACjC,yBAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Logger } from "typeorm
|
|
1
|
+
import { Logger } from "@steroidsjs/typeorm/logger/Logger";
|
|
2
2
|
export declare function importClassesFromDirectories(logger: Logger, directories: string[], formats?: string[]): Promise<Function[]>;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.importClassesFromDirectories = void 0;
|
|
4
4
|
const glob = require("glob");
|
|
5
|
-
const PlatformTools_1 = require("typeorm
|
|
6
|
-
const EntitySchema_1 = require("typeorm
|
|
7
|
-
const ImportUtils_1 = require("typeorm
|
|
5
|
+
const PlatformTools_1 = require("@steroidsjs/typeorm/platform/PlatformTools");
|
|
6
|
+
const EntitySchema_1 = require("@steroidsjs/typeorm/entity-schema/EntitySchema");
|
|
7
|
+
const ImportUtils_1 = require("@steroidsjs/typeorm/util/ImportUtils");
|
|
8
8
|
class MockMigration {
|
|
9
9
|
async up(queryRunner) {
|
|
10
10
|
await this._load();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importClassesFromDirectories.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/importClassesFromDirectories.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"importClassesFromDirectories.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/importClassesFromDirectories.ts"],"names":[],"mappings":"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"}
|