typeorm 0.2.39-dev.6558295 → 0.2.39-dev.6929ae3
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/browser/query-builder/SelectQueryBuilder.d.ts +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +20 -4
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/package.json +1 -1
- package/query-builder/SelectQueryBuilder.d.ts +1 -1
- package/query-builder/SelectQueryBuilder.js +20 -4
- package/query-builder/SelectQueryBuilder.js.map +1 -1
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{ "name": "typeorm", "private": false, "version": "0.2.39-dev.
|
|
1
|
+
{ "name": "typeorm", "private": false, "version": "0.2.39-dev.6929ae3", "description": "Data-Mapper ORM for TypeScript, ES7, ES6, ES5. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, MongoDB databases.", "license": "MIT", "readmeFilename": "README.md", "author": { "name": "Umed Khudoiberdiev", "email": "pleerock.me@gmail.com" }, "main": "./index.js", "browser": { "./browser/driver/aurora-data-api/AuroraDataApiDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/cockroachdb/CockroachDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/postgres/PostgresDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/oracle/OracleDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/sap/SapDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/mysql/MysqlDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/sqlserver/SqlServerDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/mongodb/MongoDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/mongodb/MongoQueryRunner.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/entity-manager/MongoEntityManager.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/repository/MongoRepository.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/sqlite/SqliteDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/better-sqlite3/BetterSqlite3Driver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/util/DirectoryExportedClassesLoader.js": "./browser/platform/BrowserDirectoryExportedClassesLoader.js", "./browser/logger/FileLogger.js": "./browser/platform/BrowserFileLoggerDummy.js", "./browser/connection/ConnectionOptionsReader.js": "./browser/platform/BrowserConnectionOptionsReaderDummy.js", "./browser/connection/options-reader/ConnectionOptionsXmlReader.js": "./browser/platform/BrowserConnectionOptionsReaderDummy.js", "./browser/connection/options-reader/ConnectionOptionsYmlReader.js": "./browser/platform/BrowserConnectionOptionsReaderDummy.js", "./browser/platform/PlatformTools.js": "./browser/platform/BrowserPlatformTools.js", "./index.js": "./browser/index.js" }, "repository": { "type": "git", "url": "https://github.com/typeorm/typeorm.git" }, "bugs": { "url": "https://github.com/typeorm/typeorm/issues" }, "tags": [ "orm", "typescript", "typescript-orm", "mysql", "mysql-orm", "postgresql", "postgresql-orm", "mariadb", "mariadb-orm", "sqlite", "sqlite-orm", "sql-server", "sql-server-orm", "oracle", "oracle-orm" ], "devDependencies": { "@types/app-root-path": "^1.2.4", "@types/chai": "^4.2.15", "@types/chai-as-promised": "^7.1.3", "@types/debug": "^4.1.5", "@types/dotenv": "^8.2.0", "@types/js-yaml": "^4.0.0", "@types/mkdirp": "^1.0.1", "@types/mocha": "^8.2.1", "@types/node": "^14.14.31", "@types/rimraf": "^3.0.0", "@types/sha.js": "^2.4.0", "@types/sinon": "^9.0.10", "@types/source-map-support": "^0.5.3", "@types/xml2js": "^0.4.8", "@types/yargs": "^17.0.2", "@typescript-eslint/eslint-plugin": "^4.15.2", "@typescript-eslint/parser": "^4.15.2", "better-sqlite3": "^7.1.2", "chai": "^4.3.0", "chai-as-promised": "^7.1.1", "class-transformer": "^0.4.0", "conventional-changelog-angular": "^5.0.12", "conventional-changelog-cli": "^2.1.1", "del": "^6.0.0", "eslint": "^7.20.0", "gulp": "^4.0.2", "gulp-eslint": "^6.0.0", "gulp-istanbul": "^1.1.3", "gulp-mocha": "^8.0.0", "gulp-rename": "^2.0.0", "gulp-replace": "^1.0.0", "gulp-shell": "^0.8.0", "gulp-sourcemaps": "^3.0.0", "gulp-typescript": "^6.0.0-alpha.1", "gulpclass": "^0.2.0", "husky": "^5.1.1", "lint-staged": "^10.5.4", "mocha": "^8.3.0", "mongodb": "^3.6.4", "mssql": "^6.3.1", "mysql": "^2.18.1", "mysql2": "^2.2.5", "oracledb": "^5.1.0", "pg": "^8.5.1", "pg-query-stream": "^4.0.0", "redis": "^3.1.1", "remap-istanbul": "^0.13.0", "rimraf": "^3.0.2", "sinon": "^9.2.4", "sinon-chai": "^3.5.0", "source-map-support": "^0.5.19", "sql.js": "^1.4.0", "sqlite3": "^5.0.2", "ts-node": "^9.1.1", "typeorm-aurora-data-api-driver": "^2.0.0", "typescript": "^4.2.2" }, "peerDependencies": { "@sap/hana-client": "*", "better-sqlite3": "*", "hdb-pool": "*", "ioredis": "*", "mongodb": "^3.6.0", "mssql": "*", "mysql2": "*", "oracledb": "*", "pg": "*", "pg-native": "*", "pg-query-stream": "*", "redis": "*", "sql.js": "*", "sqlite3": "*", "typeorm-aurora-data-api-driver": "*" }, "peerDependenciesMeta": { "@sap/hana-client": { "optional": true }, "better-sqlite3": { "optional": true }, "hdb-pool": { "optional": true }, "ioredis": { "optional": true }, "mongodb": { "optional": true }, "mssql": { "optional": true }, "mysql2": { "optional": true }, "oracledb": { "optional": true }, "pg": { "optional": true }, "pg-native": { "optional": true }, "pg-query-stream": { "optional": true }, "redis": { "optional": true }, "sql.js": { "optional": true }, "sqlite3": { "optional": true }, "typeorm-aurora-data-api-driver": { "optional": true } }, "dependencies": { "@sqltools/formatter": "^1.2.2", "app-root-path": "^3.0.0", "buffer": "^6.0.3", "chalk": "^4.1.0", "cli-highlight": "^2.1.11", "debug": "^4.3.1", "dotenv": "^8.2.0", "glob": "^7.1.6", "js-yaml": "^4.0.0", "mkdirp": "^1.0.4", "reflect-metadata": "^0.1.13", "sha.js": "^2.4.11", "tslib": "^2.1.0", "xml2js": "^0.4.23", "yargs": "^17.0.1", "zen-observable-ts": "^1.0.0" }, "lint-staged": { "*.ts": [ "eslint --fix", "git add" ] }, "scripts": { "test": "rimraf ./build && tsc && mocha --file ./build/compiled/test/utils/test-setup.js --bail --recursive --timeout 60000 ./build/compiled/test", "test-fast": "mocha --file ./build/compiled/test/utils/test-setup.js --bail --recursive --timeout 60000 ./build/compiled/test", "compile": "rimraf ./build && tsc", "watch": "./node_modules/.bin/tsc -w", "package": "gulp package", "pack": "gulp pack", "lint": "eslint -c ./.eslintrc.js src/**/*.ts test/**/*.ts sample/**/*.ts", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 1" }, "bin": { "typeorm": "./cli.js" }, "funding": "https://opencollective.com/typeorm", "collective": { "type": "opencollective", "url": "https://opencollective.com/typeorm", "logo": "https://opencollective.com/opencollective/logo.txt" }, "nyc": { "all": true, "cache": false, "exclude": [ "**/*.d.ts" ], "extension": [ ".ts" ], "include": [ "build/compiled/src/**", "src/**" ], "reporter": "json" } }
|
|
@@ -597,7 +597,7 @@ export declare class SelectQueryBuilder<Entity> extends QueryBuilder<Entity> imp
|
|
|
597
597
|
entities: Entity[];
|
|
598
598
|
raw: any[];
|
|
599
599
|
}>;
|
|
600
|
-
protected createOrderByCombinedWithSelectExpression(parentAlias: string): [string, OrderByCondition];
|
|
600
|
+
protected createOrderByCombinedWithSelectExpression(parentAlias: string): [string, OrderByCondition, string];
|
|
601
601
|
/**
|
|
602
602
|
* Loads raw results from the database.
|
|
603
603
|
*/
|
|
@@ -1461,7 +1461,7 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1461
1461
|
*/
|
|
1462
1462
|
SelectQueryBuilder.prototype.executeEntitiesAndRawResults = function (queryRunner) {
|
|
1463
1463
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1464
|
-
var metadata, relationIdLoader, relationCountLoader, relationIdMetadataTransformer, relationCountMetadataTransformer, rawResults, entities, _a, selects, orderBys_1, metadata_1, mainAliasName_1, querySelects, condition, parameters_1, alias_1, ids, areAllNumbers, rawRelationIdResults, rawRelationCountResults, transformer;
|
|
1464
|
+
var metadata, relationIdLoader, relationCountLoader, relationIdMetadataTransformer, relationCountMetadataTransformer, rawResults, entities, _a, selects, orderBys_1, subquerySelect, metadata_1, mainAliasName_1, querySelects, condition, parameters_1, alias_1, ids, areAllNumbers, rawRelationIdResults, rawRelationCountResults, transformer;
|
|
1465
1465
|
var _this = this;
|
|
1466
1466
|
return (0, tslib_1.__generator)(this, function (_b) {
|
|
1467
1467
|
switch (_b.label) {
|
|
@@ -1483,7 +1483,7 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1483
1483
|
relationCountMetadataTransformer.transform();
|
|
1484
1484
|
rawResults = [], entities = [];
|
|
1485
1485
|
if (!((this.expressionMap.skip || this.expressionMap.take) && this.expressionMap.joinAttributes.length > 0)) return [3 /*break*/, 4];
|
|
1486
|
-
_a = (0, tslib_1.__read)(this.createOrderByCombinedWithSelectExpression("distinctAlias"),
|
|
1486
|
+
_a = (0, tslib_1.__read)(this.createOrderByCombinedWithSelectExpression("distinctAlias"), 3), selects = _a[0], orderBys_1 = _a[1], subquerySelect = _a[2];
|
|
1487
1487
|
metadata_1 = this.expressionMap.mainAlias.metadata;
|
|
1488
1488
|
mainAliasName_1 = this.expressionMap.mainAlias.name;
|
|
1489
1489
|
querySelects = metadata_1.primaryColumns.map(function (primaryColumn) {
|
|
@@ -1497,7 +1497,7 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1497
1497
|
return [4 /*yield*/, new SelectQueryBuilder(this.connection, queryRunner)
|
|
1498
1498
|
.select("DISTINCT " + querySelects.join(", "))
|
|
1499
1499
|
.addSelect(selects)
|
|
1500
|
-
.from("(" + this.clone().orderBy().getQuery() + ")", "distinctAlias")
|
|
1500
|
+
.from("(" + this.clone().orderBy().addSelect(subquerySelect).getQuery() + ")", "distinctAlias")
|
|
1501
1501
|
.offset(this.expressionMap.skip)
|
|
1502
1502
|
.limit(this.expressionMap.take)
|
|
1503
1503
|
.orderBy(orderBys_1)
|
|
@@ -1607,7 +1607,23 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1607
1607
|
}
|
|
1608
1608
|
}
|
|
1609
1609
|
});
|
|
1610
|
-
|
|
1610
|
+
var subquerySelectString = Object.keys(orderBys)
|
|
1611
|
+
.filter(function (orderCriteria) { return orderCriteria.includes("."); })
|
|
1612
|
+
.map(function (orderCriteria) {
|
|
1613
|
+
var criteriaParts = orderCriteria.split(".");
|
|
1614
|
+
var aliasName = criteriaParts[0];
|
|
1615
|
+
var propertyPath = criteriaParts.slice(1).join(".");
|
|
1616
|
+
var alias = _this.expressionMap.findAliasByName(aliasName);
|
|
1617
|
+
if (alias.type !== "join") {
|
|
1618
|
+
return "";
|
|
1619
|
+
}
|
|
1620
|
+
var column = alias.metadata.findColumnWithPropertyPath(propertyPath);
|
|
1621
|
+
var property = _this.escape(alias.name) + "." + _this.escape(column.databaseName);
|
|
1622
|
+
var propertyAlias = _this.escape(DriverUtils_1.DriverUtils.buildAlias(_this.connection.driver, aliasName, column.databaseName));
|
|
1623
|
+
return [property, "AS", propertyAlias].join(" ");
|
|
1624
|
+
})
|
|
1625
|
+
.join(", ");
|
|
1626
|
+
return [selectString, orderByObject, subquerySelectString];
|
|
1611
1627
|
};
|
|
1612
1628
|
/**
|
|
1613
1629
|
* Loads raw results from the database.
|