typeorm 0.2.40-dev.e80f97d → 0.2.41-dev.2d0abe7

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.
Files changed (101) hide show
  1. package/browser/cache/DbQueryResultCache.js +12 -3
  2. package/browser/cache/DbQueryResultCache.js.map +1 -1
  3. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +33 -39
  4. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  5. package/browser/driver/cockroachdb/CockroachQueryRunner.js +24 -30
  6. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  7. package/browser/driver/mongodb/MongoConnectionOptions.d.ts +4 -0
  8. package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  9. package/browser/driver/mongodb/MongoQueryRunner.d.ts +2 -0
  10. package/browser/driver/mongodb/MongoQueryRunner.js +3 -0
  11. package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
  12. package/browser/driver/mysql/MysqlQueryRunner.js +37 -39
  13. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  14. package/browser/driver/oracle/OracleDriver.js +1 -1
  15. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  16. package/browser/driver/oracle/OracleQueryRunner.js +13 -24
  17. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  18. package/browser/driver/postgres/PostgresDriver.d.ts +1 -0
  19. package/browser/driver/postgres/PostgresDriver.js +16 -7
  20. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  21. package/browser/driver/postgres/PostgresQueryRunner.d.ts +5 -0
  22. package/browser/driver/postgres/PostgresQueryRunner.js +314 -135
  23. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  24. package/browser/driver/sap/SapQueryRunner.js +36 -42
  25. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  26. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +8 -14
  27. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  28. package/browser/driver/sqlserver/SqlServerQueryRunner.js +31 -33
  29. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  30. package/browser/driver/types/MetadataTableType.d.ts +5 -0
  31. package/browser/driver/types/MetadataTableType.js +8 -0
  32. package/browser/driver/types/MetadataTableType.js.map +1 -0
  33. package/browser/find-options/FindTreeOptions.d.ts +5 -1
  34. package/browser/find-options/FindTreeOptions.js.map +1 -1
  35. package/browser/migration/MigrationExecutor.js +55 -48
  36. package/browser/migration/MigrationExecutor.js.map +1 -1
  37. package/browser/query-runner/BaseQueryRunner.d.ts +23 -0
  38. package/browser/query-runner/BaseQueryRunner.js +37 -0
  39. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  40. package/browser/query-runner/QueryRunner.d.ts +5 -0
  41. package/browser/query-runner/QueryRunner.js.map +1 -1
  42. package/browser/repository/FindTreesOptions.d.ts +9 -0
  43. package/browser/repository/FindTreesOptions.js +3 -0
  44. package/browser/repository/FindTreesOptions.js.map +1 -0
  45. package/browser/repository/TreeRepository.d.ts +4 -1
  46. package/browser/repository/TreeRepository.js +8 -4
  47. package/browser/repository/TreeRepository.js.map +1 -1
  48. package/browser/schema-builder/RdbmsSchemaBuilder.d.ts +5 -1
  49. package/browser/schema-builder/RdbmsSchemaBuilder.js +58 -49
  50. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  51. package/cache/DbQueryResultCache.js +12 -3
  52. package/cache/DbQueryResultCache.js.map +1 -1
  53. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +33 -39
  54. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  55. package/driver/cockroachdb/CockroachQueryRunner.js +24 -30
  56. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  57. package/driver/mongodb/MongoConnectionOptions.d.ts +4 -0
  58. package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  59. package/driver/mongodb/MongoQueryRunner.d.ts +2 -0
  60. package/driver/mongodb/MongoQueryRunner.js +3 -0
  61. package/driver/mongodb/MongoQueryRunner.js.map +1 -1
  62. package/driver/mysql/MysqlQueryRunner.js +37 -39
  63. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  64. package/driver/oracle/OracleDriver.js +1 -1
  65. package/driver/oracle/OracleDriver.js.map +1 -1
  66. package/driver/oracle/OracleQueryRunner.js +13 -24
  67. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  68. package/driver/postgres/PostgresDriver.d.ts +1 -0
  69. package/driver/postgres/PostgresDriver.js +16 -7
  70. package/driver/postgres/PostgresDriver.js.map +1 -1
  71. package/driver/postgres/PostgresQueryRunner.d.ts +5 -0
  72. package/driver/postgres/PostgresQueryRunner.js +314 -135
  73. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  74. package/driver/sap/SapQueryRunner.js +36 -42
  75. package/driver/sap/SapQueryRunner.js.map +1 -1
  76. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +8 -14
  77. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  78. package/driver/sqlserver/SqlServerQueryRunner.js +31 -33
  79. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  80. package/driver/types/MetadataTableType.d.ts +5 -0
  81. package/driver/types/MetadataTableType.js +11 -0
  82. package/driver/types/MetadataTableType.js.map +1 -0
  83. package/find-options/FindTreeOptions.d.ts +5 -1
  84. package/find-options/FindTreeOptions.js.map +1 -1
  85. package/migration/MigrationExecutor.js +55 -48
  86. package/migration/MigrationExecutor.js.map +1 -1
  87. package/package.json +1 -1
  88. package/query-runner/BaseQueryRunner.d.ts +23 -0
  89. package/query-runner/BaseQueryRunner.js +37 -0
  90. package/query-runner/BaseQueryRunner.js.map +1 -1
  91. package/query-runner/QueryRunner.d.ts +5 -0
  92. package/query-runner/QueryRunner.js.map +1 -1
  93. package/repository/FindTreesOptions.d.ts +9 -0
  94. package/repository/FindTreesOptions.js +4 -0
  95. package/repository/FindTreesOptions.js.map +1 -0
  96. package/repository/TreeRepository.d.ts +4 -1
  97. package/repository/TreeRepository.js +7 -3
  98. package/repository/TreeRepository.js.map +1 -1
  99. package/schema-builder/RdbmsSchemaBuilder.d.ts +5 -1
  100. package/schema-builder/RdbmsSchemaBuilder.js +58 -49
  101. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
@@ -17,6 +17,7 @@ import { OrmUtils } from "../../util/OrmUtils";
17
17
  import { TableCheck } from "../../schema-builder/table/TableCheck";
18
18
  import { TableExclusion } from "../../schema-builder/table/TableExclusion";
19
19
  import { TypeORMError } from "../../error";
20
+ import { MetadataTableType } from "../types/MetadataTableType";
20
21
  /**
21
22
  * Runs queries on a single postgres database connection.
22
23
  */
@@ -2111,7 +2112,7 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
2111
2112
  return "(\"t\".\"schema\" = '" + (schema || currentSchema) + "' AND \"t\".\"name\" = '" + tableName + "')";
2112
2113
  }).join(" OR ");
2113
2114
  query = "SELECT \"t\".*, \"v\".\"check_option\" FROM " + this.escapePath(this.getTypeormMetadataTableName()) + " \"t\" " +
2114
- ("INNER JOIN \"information_schema\".\"views\" \"v\" ON \"v\".\"table_schema\" = \"t\".\"schema\" AND \"v\".\"table_name\" = \"t\".\"name\" WHERE \"t\".\"type\" = 'VIEW' " + (viewsCondition ? "AND (" + viewsCondition + ")" : ""));
2115
+ ("INNER JOIN \"information_schema\".\"views\" \"v\" ON \"v\".\"table_schema\" = \"t\".\"schema\" AND \"v\".\"table_name\" = \"t\".\"name\" WHERE \"t\".\"type\" = '" + MetadataTableType.VIEW + "' " + (viewsCondition ? "AND (" + viewsCondition + ")" : ""));
2115
2116
  return [4 /*yield*/, this.query(query)];
2116
2117
  case 4:
2117
2118
  dbViews = _a.sent();
@@ -2254,7 +2255,7 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
2254
2255
  return [4 /*yield*/, Promise.all(dbColumns
2255
2256
  .filter(function (dbColumn) { return dbColumn["table_name"] === dbTable["table_name"] && dbColumn["table_schema"] === dbTable["table_schema"]; })
2256
2257
  .map(function (dbColumn) { return __awaiter(_this, void 0, void 0, function () {
2257
- var columnConstraints, tableColumn, type, length_1, uniqueConstraint, isConstraintComposite;
2258
+ var columnConstraints, tableColumn, type, length_1, uniqueConstraints, isConstraintComposite;
2258
2259
  return __generator(this, function (_a) {
2259
2260
  columnConstraints = dbConstraints.filter(function (dbConstraint) {
2260
2261
  return (dbConstraint["table_name"] === dbColumn["table_name"] &&
@@ -2296,13 +2297,13 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
2296
2297
  }
2297
2298
  tableColumn.isNullable = dbColumn["is_nullable"] === "YES";
2298
2299
  tableColumn.isPrimary = !!columnConstraints.find(function (constraint) { return constraint["constraint_type"] === "PRIMARY"; });
2299
- uniqueConstraint = columnConstraints.find(function (constraint) { return constraint["constraint_type"] === "UNIQUE"; });
2300
- isConstraintComposite = uniqueConstraint
2301
- ? !!dbConstraints.find(function (dbConstraint) { return dbConstraint["constraint_type"] === "UNIQUE"
2300
+ uniqueConstraints = columnConstraints.filter(function (constraint) { return constraint["constraint_type"] === "UNIQUE"; });
2301
+ isConstraintComposite = uniqueConstraints.every(function (uniqueConstraint) {
2302
+ return dbConstraints.some(function (dbConstraint) { return dbConstraint["constraint_type"] === "UNIQUE"
2302
2303
  && dbConstraint["constraint_name"] === uniqueConstraint["constraint_name"]
2303
- && dbConstraint["column_name"] !== dbColumn["column_name"]; })
2304
- : false;
2305
- tableColumn.isUnique = !!uniqueConstraint && !isConstraintComposite;
2304
+ && dbConstraint["column_name"] !== dbColumn["column_name"]; });
2305
+ });
2306
+ tableColumn.isUnique = uniqueConstraints.length > 0 && !isConstraintComposite;
2306
2307
  if (dbColumn["column_default"] !== null && dbColumn["column_default"] !== undefined) {
2307
2308
  if (dbColumn["column_default"] === "unique_rowid()") {
2308
2309
  tableColumn.isGenerated = true;
@@ -2492,23 +2493,23 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
2492
2493
  };
2493
2494
  CockroachQueryRunner.prototype.insertViewDefinitionSql = function (view) {
2494
2495
  return __awaiter(this, void 0, void 0, function () {
2495
- var currentSchema, _a, schema, name, expression, _b, query, parameters;
2496
- return __generator(this, function (_c) {
2497
- switch (_c.label) {
2496
+ var currentSchema, _a, schema, name, expression;
2497
+ return __generator(this, function (_b) {
2498
+ switch (_b.label) {
2498
2499
  case 0: return [4 /*yield*/, this.getCurrentSchema()];
2499
2500
  case 1:
2500
- currentSchema = _c.sent();
2501
+ currentSchema = _b.sent();
2501
2502
  _a = this.driver.parseTableName(view), schema = _a.schema, name = _a.tableName;
2502
2503
  if (!schema) {
2503
2504
  schema = currentSchema;
2504
2505
  }
2505
2506
  expression = typeof view.expression === "string" ? view.expression.trim() : view.expression(this.connection).getQuery();
2506
- _b = __read(this.connection.createQueryBuilder()
2507
- .insert()
2508
- .into(this.getTypeormMetadataTableName())
2509
- .values({ type: "VIEW", schema: schema, name: name, value: expression })
2510
- .getQueryAndParameters(), 2), query = _b[0], parameters = _b[1];
2511
- return [2 /*return*/, new Query(query, parameters)];
2507
+ return [2 /*return*/, this.insertTypeormMetadataSql({
2508
+ type: MetadataTableType.VIEW,
2509
+ schema: schema,
2510
+ name: name,
2511
+ value: expression
2512
+ })];
2512
2513
  }
2513
2514
  });
2514
2515
  });
@@ -2524,24 +2525,17 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
2524
2525
  */
2525
2526
  CockroachQueryRunner.prototype.deleteViewDefinitionSql = function (viewOrPath) {
2526
2527
  return __awaiter(this, void 0, void 0, function () {
2527
- var currentSchema, _a, schema, name, qb, _b, query, parameters;
2528
- return __generator(this, function (_c) {
2529
- switch (_c.label) {
2528
+ var currentSchema, _a, schema, name;
2529
+ return __generator(this, function (_b) {
2530
+ switch (_b.label) {
2530
2531
  case 0: return [4 /*yield*/, this.getCurrentSchema()];
2531
2532
  case 1:
2532
- currentSchema = _c.sent();
2533
+ currentSchema = _b.sent();
2533
2534
  _a = this.driver.parseTableName(viewOrPath), schema = _a.schema, name = _a.tableName;
2534
2535
  if (!schema) {
2535
2536
  schema = currentSchema;
2536
2537
  }
2537
- qb = this.connection.createQueryBuilder();
2538
- _b = __read(qb.delete()
2539
- .from(this.getTypeormMetadataTableName())
2540
- .where(qb.escape("type") + " = 'VIEW'")
2541
- .andWhere(qb.escape("schema") + " = :schema", { schema: schema })
2542
- .andWhere(qb.escape("name") + " = :name", { name: name })
2543
- .getQueryAndParameters(), 2), query = _b[0], parameters = _b[1];
2544
- return [2 /*return*/, new Query(query, parameters)];
2538
+ return [2 /*return*/, this.deleteTypeormMetadataSql({ type: MetadataTableType.VIEW, schema: schema, name: name })];
2545
2539
  }
2546
2540
  });
2547
2541
  });