typeorm 0.2.44 → 0.2.45-dev.0fc093d

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 (134) hide show
  1. package/browser/decorator/options/ViewColumnOptions.d.ts +6 -0
  2. package/browser/decorator/options/ViewColumnOptions.js.map +1 -1
  3. package/browser/driver/Driver.d.ts +4 -0
  4. package/browser/driver/Driver.js.map +1 -1
  5. package/browser/driver/aurora-data-api/AuroraDataApiDriver.d.ts +4 -0
  6. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +4 -0
  7. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  8. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +66 -28
  9. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  10. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +4 -0
  11. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +4 -0
  12. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
  13. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +43 -11
  14. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  15. package/browser/driver/cockroachdb/CockroachDriver.d.ts +4 -0
  16. package/browser/driver/cockroachdb/CockroachDriver.js +4 -0
  17. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  18. package/browser/driver/cockroachdb/CockroachQueryRunner.js +98 -61
  19. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  20. package/browser/driver/expo/ExpoQueryRunner.js +42 -10
  21. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  22. package/browser/driver/mongodb/MongoDriver.d.ts +4 -0
  23. package/browser/driver/mongodb/MongoDriver.js +4 -0
  24. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  25. package/browser/driver/mysql/MysqlDriver.d.ts +4 -0
  26. package/browser/driver/mysql/MysqlDriver.js +4 -0
  27. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  28. package/browser/driver/mysql/MysqlQueryRunner.js +71 -37
  29. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  30. package/browser/driver/oracle/OracleDriver.d.ts +4 -0
  31. package/browser/driver/oracle/OracleDriver.js +4 -0
  32. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  33. package/browser/driver/oracle/OracleQueryRunner.js +62 -28
  34. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  35. package/browser/driver/postgres/PostgresDriver.d.ts +4 -0
  36. package/browser/driver/postgres/PostgresDriver.js +4 -0
  37. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  38. package/browser/driver/postgres/PostgresQueryRunner.js +69 -32
  39. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  40. package/browser/driver/sap/SapDriver.d.ts +4 -0
  41. package/browser/driver/sap/SapDriver.js +4 -0
  42. package/browser/driver/sap/SapDriver.js.map +1 -1
  43. package/browser/driver/sap/SapQueryRunner.js +20 -14
  44. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  45. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +4 -0
  46. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -0
  47. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  48. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +1 -0
  49. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +78 -36
  50. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  51. package/browser/driver/sqlserver/SqlServerDriver.d.ts +4 -0
  52. package/browser/driver/sqlserver/SqlServerDriver.js +4 -0
  53. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  54. package/browser/driver/sqlserver/SqlServerQueryRunner.js +132 -95
  55. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  56. package/browser/entity-manager/EntityManager.js +19 -30
  57. package/browser/entity-manager/EntityManager.js.map +1 -1
  58. package/browser/metadata/ColumnMetadata.js +7 -1
  59. package/browser/metadata/ColumnMetadata.js.map +1 -1
  60. package/browser/naming-strategy/DefaultNamingStrategy.d.ts +1 -1
  61. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  62. package/browser/query-builder/UpdateQueryBuilder.js +1 -1
  63. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  64. package/browser/query-runner/BaseQueryRunner.d.ts +5 -0
  65. package/browser/query-runner/BaseQueryRunner.js +5 -0
  66. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  67. package/cli.js +0 -0
  68. package/decorator/options/ViewColumnOptions.d.ts +6 -0
  69. package/decorator/options/ViewColumnOptions.js.map +1 -1
  70. package/driver/Driver.d.ts +4 -0
  71. package/driver/Driver.js.map +1 -1
  72. package/driver/aurora-data-api/AuroraDataApiDriver.d.ts +4 -0
  73. package/driver/aurora-data-api/AuroraDataApiDriver.js +4 -0
  74. package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  75. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +66 -28
  76. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  77. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +4 -0
  78. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +4 -0
  79. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
  80. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +43 -11
  81. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  82. package/driver/cockroachdb/CockroachDriver.d.ts +4 -0
  83. package/driver/cockroachdb/CockroachDriver.js +4 -0
  84. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  85. package/driver/cockroachdb/CockroachQueryRunner.js +98 -61
  86. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  87. package/driver/expo/ExpoQueryRunner.js +42 -10
  88. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  89. package/driver/mongodb/MongoDriver.d.ts +4 -0
  90. package/driver/mongodb/MongoDriver.js +4 -0
  91. package/driver/mongodb/MongoDriver.js.map +1 -1
  92. package/driver/mysql/MysqlDriver.d.ts +4 -0
  93. package/driver/mysql/MysqlDriver.js +4 -0
  94. package/driver/mysql/MysqlDriver.js.map +1 -1
  95. package/driver/mysql/MysqlQueryRunner.js +71 -37
  96. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  97. package/driver/oracle/OracleDriver.d.ts +4 -0
  98. package/driver/oracle/OracleDriver.js +4 -0
  99. package/driver/oracle/OracleDriver.js.map +1 -1
  100. package/driver/oracle/OracleQueryRunner.js +62 -28
  101. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  102. package/driver/postgres/PostgresDriver.d.ts +4 -0
  103. package/driver/postgres/PostgresDriver.js +4 -0
  104. package/driver/postgres/PostgresDriver.js.map +1 -1
  105. package/driver/postgres/PostgresQueryRunner.js +69 -32
  106. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  107. package/driver/sap/SapDriver.d.ts +4 -0
  108. package/driver/sap/SapDriver.js +4 -0
  109. package/driver/sap/SapDriver.js.map +1 -1
  110. package/driver/sap/SapQueryRunner.js +20 -14
  111. package/driver/sap/SapQueryRunner.js.map +1 -1
  112. package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +4 -0
  113. package/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -0
  114. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  115. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +1 -0
  116. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +78 -36
  117. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  118. package/driver/sqlserver/SqlServerDriver.d.ts +4 -0
  119. package/driver/sqlserver/SqlServerDriver.js +4 -0
  120. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  121. package/driver/sqlserver/SqlServerQueryRunner.js +132 -95
  122. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  123. package/entity-manager/EntityManager.js +19 -30
  124. package/entity-manager/EntityManager.js.map +1 -1
  125. package/metadata/ColumnMetadata.js +7 -1
  126. package/metadata/ColumnMetadata.js.map +1 -1
  127. package/naming-strategy/DefaultNamingStrategy.d.ts +1 -1
  128. package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  129. package/package.json +1 -259
  130. package/query-builder/UpdateQueryBuilder.js +1 -1
  131. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  132. package/query-runner/BaseQueryRunner.d.ts +5 -0
  133. package/query-runner/BaseQueryRunner.js +5 -0
  134. package/query-runner/BaseQueryRunner.js.map +1 -1
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AuroraDataApiQueryRunner = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var QueryResult_1 = require("../../query-runner/QueryResult");
6
- var TransactionAlreadyStartedError_1 = require("../../error/TransactionAlreadyStartedError");
7
6
  var TransactionNotStartedError_1 = require("../../error/TransactionNotStartedError");
8
7
  var TableColumn_1 = require("../../schema-builder/table/TableColumn");
9
8
  var Table_1 = require("../../schema-builder/table/Table");
@@ -63,20 +62,36 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
63
62
  */
64
63
  AuroraDataApiQueryRunner.prototype.startTransaction = function (isolationLevel) {
65
64
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
65
+ var err_1;
66
66
  return (0, tslib_1.__generator)(this, function (_a) {
67
67
  switch (_a.label) {
68
68
  case 0:
69
- if (this.isTransactionActive)
70
- throw new TransactionAlreadyStartedError_1.TransactionAlreadyStartedError();
71
- return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionStart')];
69
+ this.isTransactionActive = true;
70
+ _a.label = 1;
72
71
  case 1:
72
+ _a.trys.push([1, 3, , 4]);
73
+ return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionStart')];
74
+ case 2:
73
75
  _a.sent();
74
- this.isTransactionActive = true;
76
+ return [3 /*break*/, 4];
77
+ case 3:
78
+ err_1 = _a.sent();
79
+ this.isTransactionActive = false;
80
+ throw err_1;
81
+ case 4:
82
+ if (!(this.transactionDepth === 0)) return [3 /*break*/, 6];
75
83
  return [4 /*yield*/, this.client.startTransaction()];
76
- case 2:
84
+ case 5:
85
+ _a.sent();
86
+ return [3 /*break*/, 8];
87
+ case 6: return [4 /*yield*/, this.query("SAVEPOINT typeorm_" + this.transactionDepth)];
88
+ case 7:
77
89
  _a.sent();
90
+ _a.label = 8;
91
+ case 8:
92
+ this.transactionDepth += 1;
78
93
  return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionStart')];
79
- case 3:
94
+ case 9:
80
95
  _a.sent();
81
96
  return [2 /*return*/];
82
97
  }
@@ -97,12 +112,20 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
97
112
  return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionCommit')];
98
113
  case 1:
99
114
  _a.sent();
100
- return [4 /*yield*/, this.client.commitTransaction()];
115
+ if (!(this.transactionDepth > 1)) return [3 /*break*/, 3];
116
+ return [4 /*yield*/, this.query("RELEASE SAVEPOINT typeorm_" + (this.transactionDepth - 1))];
101
117
  case 2:
118
+ _a.sent();
119
+ return [3 /*break*/, 5];
120
+ case 3: return [4 /*yield*/, this.client.commitTransaction()];
121
+ case 4:
102
122
  _a.sent();
103
123
  this.isTransactionActive = false;
124
+ _a.label = 5;
125
+ case 5:
126
+ this.transactionDepth -= 1;
104
127
  return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionCommit')];
105
- case 3:
128
+ case 6:
106
129
  _a.sent();
107
130
  return [2 /*return*/];
108
131
  }
@@ -123,12 +146,20 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
123
146
  return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionRollback')];
124
147
  case 1:
125
148
  _a.sent();
126
- return [4 /*yield*/, this.client.rollbackTransaction()];
149
+ if (!(this.transactionDepth > 1)) return [3 /*break*/, 3];
150
+ return [4 /*yield*/, this.query("ROLLBACK TO SAVEPOINT typeorm_" + (this.transactionDepth - 1))];
127
151
  case 2:
152
+ _a.sent();
153
+ return [3 /*break*/, 5];
154
+ case 3: return [4 /*yield*/, this.client.rollbackTransaction()];
155
+ case 4:
128
156
  _a.sent();
129
157
  this.isTransactionActive = false;
158
+ _a.label = 5;
159
+ case 5:
160
+ this.transactionDepth -= 1;
130
161
  return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionRollback')];
131
- case 3:
162
+ case 6:
132
163
  _a.sent();
133
164
  return [2 /*return*/];
134
165
  }
@@ -174,7 +205,7 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
174
205
  if (this.isReleased)
175
206
  throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
176
207
  return new Promise(function (ok, fail) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
177
- var databaseConnection, stream, err_1;
208
+ var databaseConnection, stream, err_2;
178
209
  return (0, tslib_1.__generator)(this, function (_a) {
179
210
  switch (_a.label) {
180
211
  case 0:
@@ -190,8 +221,8 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
190
221
  ok(stream);
191
222
  return [3 /*break*/, 3];
192
223
  case 2:
193
- err_1 = _a.sent();
194
- fail(err_1);
224
+ err_2 = _a.sent();
225
+ fail(err_2);
195
226
  return [3 /*break*/, 3];
196
227
  case 3: return [2 /*return*/];
197
228
  }
@@ -1566,7 +1597,7 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
1566
1597
  */
1567
1598
  AuroraDataApiQueryRunner.prototype.clearDatabase = function (database) {
1568
1599
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
1569
- var dbName, isDatabaseExist, selectViewDropsQuery, dropViewQueries, disableForeignKeysCheckQuery, dropTablesQuery, enableForeignKeysCheckQuery, dropQueries, error_2, rollbackError_1;
1600
+ var dbName, isDatabaseExist, isAnotherTransactionActive, selectViewDropsQuery, dropViewQueries, disableForeignKeysCheckQuery, dropTablesQuery, enableForeignKeysCheckQuery, dropQueries, error_2, rollbackError_1;
1570
1601
  var _this = this;
1571
1602
  return (0, tslib_1.__generator)(this, function (_a) {
1572
1603
  switch (_a.label) {
@@ -1580,12 +1611,15 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
1580
1611
  return [2 /*return*/, Promise.resolve()];
1581
1612
  return [3 /*break*/, 3];
1582
1613
  case 2: throw new error_1.TypeORMError("Can not clear database. No database is specified");
1583
- case 3: return [4 /*yield*/, this.startTransaction()];
1614
+ case 3:
1615
+ isAnotherTransactionActive = this.isTransactionActive;
1616
+ if (!!isAnotherTransactionActive) return [3 /*break*/, 5];
1617
+ return [4 /*yield*/, this.startTransaction()];
1584
1618
  case 4:
1585
1619
  _a.sent();
1586
1620
  _a.label = 5;
1587
1621
  case 5:
1588
- _a.trys.push([5, 13, , 18]);
1622
+ _a.trys.push([5, 14, , 20]);
1589
1623
  selectViewDropsQuery = "SELECT concat('DROP VIEW IF EXISTS `', table_schema, '`.`', table_name, '`') AS `query` FROM `INFORMATION_SCHEMA`.`VIEWS` WHERE `TABLE_SCHEMA` = '" + dbName + "'";
1590
1624
  return [4 /*yield*/, this.query(selectViewDropsQuery)];
1591
1625
  case 6:
@@ -1608,24 +1642,28 @@ var AuroraDataApiQueryRunner = /** @class */ (function (_super) {
1608
1642
  return [4 /*yield*/, this.query(enableForeignKeysCheckQuery)];
1609
1643
  case 11:
1610
1644
  _a.sent();
1645
+ if (!!isAnotherTransactionActive) return [3 /*break*/, 13];
1611
1646
  return [4 /*yield*/, this.commitTransaction()];
1612
1647
  case 12:
1613
1648
  _a.sent();
1614
- return [3 /*break*/, 18];
1615
- case 13:
1616
- error_2 = _a.sent();
1617
- _a.label = 14;
1649
+ _a.label = 13;
1650
+ case 13: return [3 /*break*/, 20];
1618
1651
  case 14:
1619
- _a.trys.push([14, 16, , 17]);
1620
- return [4 /*yield*/, this.rollbackTransaction()];
1652
+ error_2 = _a.sent();
1653
+ _a.label = 15;
1621
1654
  case 15:
1622
- _a.sent();
1623
- return [3 /*break*/, 17];
1655
+ _a.trys.push([15, 18, , 19]);
1656
+ if (!!isAnotherTransactionActive) return [3 /*break*/, 17];
1657
+ return [4 /*yield*/, this.rollbackTransaction()];
1624
1658
  case 16:
1659
+ _a.sent();
1660
+ _a.label = 17;
1661
+ case 17: return [3 /*break*/, 19];
1662
+ case 18:
1625
1663
  rollbackError_1 = _a.sent();
1626
- return [3 /*break*/, 17];
1627
- case 17: throw error_2;
1628
- case 18: return [2 /*return*/];
1664
+ return [3 /*break*/, 19];
1665
+ case 19: throw error_2;
1666
+ case 20: return [2 /*return*/];
1629
1667
  }
1630
1668
  });
1631
1669
  });