typeorm 0.3.20-dev.c22e30f → 0.3.20-dev.dd8c0fd

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 (85) hide show
  1. package/browser/data-source/DataSource.js +3 -1
  2. package/browser/data-source/DataSource.js.map +1 -1
  3. package/browser/driver/cockroachdb/CockroachQueryRunner.js +3 -3
  4. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  5. package/browser/driver/oracle/OracleDriver.js +18 -10
  6. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  7. package/browser/driver/oracle/OracleQueryRunner.js +2 -2
  8. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  9. package/browser/driver/postgres/PostgresDriver.js +9 -3
  10. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  11. package/browser/driver/postgres/PostgresQueryRunner.d.ts +1 -1
  12. package/browser/driver/postgres/PostgresQueryRunner.js +30 -10
  13. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  14. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  15. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +3 -3
  16. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  17. package/browser/driver/types/ColumnTypes.d.ts +1 -1
  18. package/browser/driver/types/ColumnTypes.js.map +1 -1
  19. package/browser/entity-manager/EntityManager.d.ts +2 -2
  20. package/browser/entity-manager/EntityManager.js.map +1 -1
  21. package/browser/metadata/ColumnMetadata.js +0 -4
  22. package/browser/metadata/ColumnMetadata.js.map +1 -1
  23. package/browser/metadata/EntityMetadata.js +1 -4
  24. package/browser/metadata/EntityMetadata.js.map +1 -1
  25. package/browser/query-builder/InsertQueryBuilder.js +4 -3
  26. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  27. package/browser/query-builder/QueryBuilder.d.ts +1 -1
  28. package/browser/query-builder/QueryBuilder.js +5 -5
  29. package/browser/query-builder/QueryBuilder.js.map +1 -1
  30. package/browser/query-builder/ReturningResultsEntityUpdator.js +5 -2
  31. package/browser/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  32. package/browser/query-builder/SelectQueryBuilder.d.ts +4 -4
  33. package/browser/query-builder/SelectQueryBuilder.js +5 -5
  34. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  35. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +0 -9
  36. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +0 -28
  37. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  38. package/browser/repository/Repository.js.map +1 -1
  39. package/browser/schema-builder/RdbmsSchemaBuilder.js +2 -1
  40. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  41. package/browser/util/PathUtils.js +1 -1
  42. package/browser/util/PathUtils.js.map +1 -1
  43. package/data-source/DataSource.js +3 -1
  44. package/data-source/DataSource.js.map +1 -1
  45. package/driver/cockroachdb/CockroachQueryRunner.js +3 -3
  46. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  47. package/driver/oracle/OracleDriver.js +18 -10
  48. package/driver/oracle/OracleDriver.js.map +1 -1
  49. package/driver/oracle/OracleQueryRunner.js +2 -2
  50. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  51. package/driver/postgres/PostgresDriver.js +9 -3
  52. package/driver/postgres/PostgresDriver.js.map +1 -1
  53. package/driver/postgres/PostgresQueryRunner.d.ts +1 -1
  54. package/driver/postgres/PostgresQueryRunner.js +30 -10
  55. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  56. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  57. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +3 -3
  58. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  59. package/driver/types/ColumnTypes.d.ts +1 -1
  60. package/driver/types/ColumnTypes.js.map +1 -1
  61. package/entity-manager/EntityManager.d.ts +2 -2
  62. package/entity-manager/EntityManager.js.map +1 -1
  63. package/metadata/ColumnMetadata.js +0 -4
  64. package/metadata/ColumnMetadata.js.map +1 -1
  65. package/metadata/EntityMetadata.js +1 -4
  66. package/metadata/EntityMetadata.js.map +1 -1
  67. package/package.json +1 -1
  68. package/query-builder/InsertQueryBuilder.js +4 -3
  69. package/query-builder/InsertQueryBuilder.js.map +1 -1
  70. package/query-builder/QueryBuilder.d.ts +1 -1
  71. package/query-builder/QueryBuilder.js +5 -5
  72. package/query-builder/QueryBuilder.js.map +1 -1
  73. package/query-builder/ReturningResultsEntityUpdator.js +5 -2
  74. package/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  75. package/query-builder/SelectQueryBuilder.d.ts +4 -4
  76. package/query-builder/SelectQueryBuilder.js +5 -5
  77. package/query-builder/SelectQueryBuilder.js.map +1 -1
  78. package/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +0 -9
  79. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +0 -28
  80. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  81. package/repository/Repository.js.map +1 -1
  82. package/schema-builder/RdbmsSchemaBuilder.js +2 -1
  83. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  84. package/util/PathUtils.js +1 -1
  85. package/util/PathUtils.js.map +1 -1
@@ -418,6 +418,10 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
418
418
  downQueries.push(this.dropIndexSql(table, index));
419
419
  });
420
420
  }
421
+ if (table.comment) {
422
+ upQueries.push(new Query_1.Query("COMMENT ON TABLE " + this.escapePath(table) + " IS '" + table.comment + "'"));
423
+ downQueries.push(new Query_1.Query("COMMENT ON TABLE " + this.escapePath(table) + " IS NULL"));
424
+ }
421
425
  await this.executeQueries(upQueries, downQueries);
422
426
  }
423
427
  /**
@@ -1739,7 +1743,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
1739
1743
  const currentDatabase = await this.getCurrentDatabase();
1740
1744
  const dbTables = [];
1741
1745
  if (!tableNames) {
1742
- const tablesSql = `SELECT "table_schema", "table_name" FROM "information_schema"."tables"`;
1746
+ const tablesSql = `SELECT "table_schema", "table_name", obj_description(('"' || "table_schema" || '"."' || "table_name" || '"')::regclass, 'pg_class') AS table_comment FROM "information_schema"."tables"`;
1743
1747
  dbTables.push(...(await this.query(tablesSql)));
1744
1748
  }
1745
1749
  else {
@@ -1749,7 +1753,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
1749
1753
  return `("table_schema" = '${schema || currentSchema}' AND "table_name" = '${tableName}')`;
1750
1754
  })
1751
1755
  .join(" OR ");
1752
- const tablesSql = `SELECT "table_schema", "table_name" FROM "information_schema"."tables" WHERE ` +
1756
+ const tablesSql = `SELECT "table_schema", "table_name", obj_description(('"' || "table_schema" || '"."' || "table_name" || '"')::regclass, 'pg_class') AS table_comment FROM "information_schema"."tables" WHERE ` +
1753
1757
  tablesCondition;
1754
1758
  dbTables.push(...(await this.query(tablesSql)));
1755
1759
  }
@@ -1851,6 +1855,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
1851
1855
  const schema = getSchemaFromKey(dbTable, "table_schema");
1852
1856
  table.database = currentDatabase;
1853
1857
  table.schema = dbTable["table_schema"];
1858
+ table.comment = dbTable["table_comment"];
1854
1859
  table.name = this.driver.buildTableName(dbTable["table_name"], schema);
1855
1860
  // create columns from the loaded columns
1856
1861
  table.columns = await Promise.all(dbColumns
@@ -2050,7 +2055,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
2050
2055
  dbColumn["column_default"];
2051
2056
  }
2052
2057
  else {
2053
- tableColumn.default = dbColumn["column_default"].replace(/::[\w\s.\[\]\-"]+/g, "");
2058
+ tableColumn.default = dbColumn["column_default"].replace(/::[\w\s.[\]\-"]+/g, "");
2054
2059
  tableColumn.default =
2055
2060
  tableColumn.default.replace(/^(-?\d+)$/, "'$1'");
2056
2061
  }
@@ -2290,7 +2295,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
2290
2295
  */
2291
2296
  async getVersion() {
2292
2297
  const result = await this.query(`SELECT version()`);
2293
- return result[0]["version"].replace(/^PostgreSQL ([\d\.]+) .*$/, "$1");
2298
+ return result[0]["version"].replace(/^PostgreSQL ([\d.]+) .*$/, "$1");
2294
2299
  }
2295
2300
  /**
2296
2301
  * Builds drop table sql.
@@ -2402,7 +2407,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
2402
2407
  const columns = index.columnNames
2403
2408
  .map((columnName) => `"${columnName}"`)
2404
2409
  .join(", ");
2405
- return new Query_1.Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}${index.isConcurrent ? "CONCURRENTLY " : ""}INDEX "${index.name}" ON ${this.escapePath(table)} ${index.isSpatial ? "USING GiST " : ""}(${columns}) ${index.where ? "WHERE " + index.where : ""}`);
2410
+ return new Query_1.Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}INDEX${index.isConcurrent ? " CONCURRENTLY" : ""} "${index.name}" ON ${this.escapePath(table)} ${index.isSpatial ? "USING GiST " : ""}(${columns}) ${index.where ? "WHERE " + index.where : ""}`);
2406
2411
  }
2407
2412
  /**
2408
2413
  * Builds create view index sql.
@@ -2417,7 +2422,7 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
2417
2422
  * Builds drop index sql.
2418
2423
  */
2419
2424
  dropIndexSql(table, indexOrName) {
2420
- let indexName = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
2425
+ const indexName = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
2421
2426
  ? indexOrName.name
2422
2427
  : indexOrName;
2423
2428
  const concurrent = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
@@ -2425,8 +2430,8 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
2425
2430
  : false;
2426
2431
  const { schema } = this.driver.parseTableName(table);
2427
2432
  return schema
2428
- ? new Query_1.Query(`DROP INDEX ${concurrent ? "CONCURRENTLY" : ""}"${schema}"."${indexName}"`)
2429
- : new Query_1.Query(`DROP INDEX ${concurrent ? "CONCURRENTLY" : ""}"${indexName}"`);
2433
+ ? new Query_1.Query(`DROP INDEX ${concurrent ? "CONCURRENTLY " : ""}"${schema}"."${indexName}"`)
2434
+ : new Query_1.Query(`DROP INDEX ${concurrent ? "CONCURRENTLY " : ""}"${indexName}"`);
2430
2435
  }
2431
2436
  /**
2432
2437
  * Builds create primary key sql.
@@ -2689,8 +2694,23 @@ class PostgresQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
2689
2694
  /**
2690
2695
  * Change table comment.
2691
2696
  */
2692
- changeTableComment(tableOrName, comment) {
2693
- throw new error_1.TypeORMError(`postgres driver does not support change table comment.`);
2697
+ async changeTableComment(tableOrName, newComment) {
2698
+ const upQueries = [];
2699
+ const downQueries = [];
2700
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
2701
+ ? tableOrName
2702
+ : await this.getCachedTable(tableOrName);
2703
+ newComment = this.escapeComment(newComment);
2704
+ const comment = this.escapeComment(table.comment);
2705
+ if (newComment === comment) {
2706
+ return;
2707
+ }
2708
+ const newTable = table.clone();
2709
+ upQueries.push(new Query_1.Query(`COMMENT ON TABLE ${this.escapePath(newTable)} IS ${newComment}`));
2710
+ downQueries.push(new Query_1.Query(`COMMENT ON TABLE ${this.escapePath(table)} IS ${comment}`));
2711
+ await this.executeQueries(upQueries, downQueries);
2712
+ table.comment = newTable.comment;
2713
+ this.replaceCachedTable(table, newTable);
2694
2714
  }
2695
2715
  }
2696
2716
  exports.PostgresQueryRunner = PostgresQueryRunner;