typeorm 0.3.10 → 0.3.11-dev.5253c8f

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 (144) hide show
  1. package/README.md +3 -1
  2. package/browser/cli-ts-node-commonjs.js +0 -0
  3. package/browser/cli-ts-node-esm.js +0 -0
  4. package/browser/decorator/columns/VirtualColumn.d.ts +10 -0
  5. package/browser/decorator/columns/VirtualColumn.js +46 -0
  6. package/browser/decorator/columns/VirtualColumn.js.map +1 -0
  7. package/browser/decorator/options/VirtualColumnOptions.d.ts +27 -0
  8. package/browser/decorator/options/VirtualColumnOptions.js +3 -0
  9. package/browser/decorator/options/VirtualColumnOptions.js.map +1 -0
  10. package/browser/driver/aurora-mysql/AuroraMysqlDriver.js +4 -0
  11. package/browser/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
  12. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +1 -1
  13. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +5 -3
  14. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  15. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +1 -1
  16. package/browser/driver/cockroachdb/CockroachQueryRunner.js +5 -3
  17. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  18. package/browser/driver/mysql/MysqlDriver.js +8 -0
  19. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  20. package/browser/driver/mysql/MysqlQueryRunner.d.ts +1 -1
  21. package/browser/driver/mysql/MysqlQueryRunner.js +5 -3
  22. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  23. package/browser/driver/oracle/OracleDriver.js +4 -0
  24. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  25. package/browser/driver/oracle/OracleQueryRunner.d.ts +1 -1
  26. package/browser/driver/oracle/OracleQueryRunner.js +5 -3
  27. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  28. package/browser/driver/postgres/PostgresDriver.js +4 -0
  29. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  30. package/browser/driver/postgres/PostgresQueryRunner.d.ts +1 -1
  31. package/browser/driver/postgres/PostgresQueryRunner.js +5 -3
  32. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  33. package/browser/driver/sap/SapDriver.js +4 -0
  34. package/browser/driver/sap/SapDriver.js.map +1 -1
  35. package/browser/driver/sap/SapQueryRunner.d.ts +1 -1
  36. package/browser/driver/sap/SapQueryRunner.js +5 -3
  37. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  38. package/browser/driver/spanner/SpannerDriver.js +4 -0
  39. package/browser/driver/spanner/SpannerDriver.js.map +1 -1
  40. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -0
  41. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  42. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +1 -1
  43. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +5 -3
  44. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  45. package/browser/driver/sqlserver/SqlServerDriver.js +4 -0
  46. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  47. package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +1 -1
  48. package/browser/driver/sqlserver/SqlServerQueryRunner.js +5 -3
  49. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  50. package/browser/index.d.ts +1 -0
  51. package/browser/index.js +1 -0
  52. package/browser/index.js.map +1 -1
  53. package/browser/metadata/ColumnMetadata.d.ts +12 -0
  54. package/browser/metadata/ColumnMetadata.js +13 -0
  55. package/browser/metadata/ColumnMetadata.js.map +1 -1
  56. package/browser/metadata-args/types/ColumnMode.d.ts +1 -1
  57. package/browser/metadata-args/types/ColumnMode.js.map +1 -1
  58. package/browser/metadata-builder/EntityMetadataValidator.js +9 -5
  59. package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
  60. package/browser/migration/MigrationExecutor.js +13 -3
  61. package/browser/migration/MigrationExecutor.js.map +1 -1
  62. package/browser/query-builder/SelectQueryBuilder.js +22 -3
  63. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  64. package/browser/query-runner/QueryRunner.d.ts +1 -1
  65. package/browser/query-runner/QueryRunner.js.map +1 -1
  66. package/browser/schema-builder/RdbmsSchemaBuilder.js +11 -5
  67. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  68. package/browser/schema-builder/table/Table.js +1 -1
  69. package/browser/schema-builder/table/Table.js.map +1 -1
  70. package/browser/util/DateUtils.js +2 -1
  71. package/browser/util/DateUtils.js.map +1 -1
  72. package/cli-ts-node-commonjs.js +0 -0
  73. package/cli-ts-node-esm.js +0 -0
  74. package/cli.js +0 -0
  75. package/decorator/columns/VirtualColumn.d.ts +10 -0
  76. package/decorator/columns/VirtualColumn.js +50 -0
  77. package/decorator/columns/VirtualColumn.js.map +1 -0
  78. package/decorator/options/VirtualColumnOptions.d.ts +27 -0
  79. package/decorator/options/VirtualColumnOptions.js +4 -0
  80. package/decorator/options/VirtualColumnOptions.js.map +1 -0
  81. package/driver/aurora-mysql/AuroraMysqlDriver.js +4 -0
  82. package/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
  83. package/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +1 -1
  84. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +5 -3
  85. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  86. package/driver/cockroachdb/CockroachQueryRunner.d.ts +1 -1
  87. package/driver/cockroachdb/CockroachQueryRunner.js +5 -3
  88. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  89. package/driver/mysql/MysqlDriver.js +8 -0
  90. package/driver/mysql/MysqlDriver.js.map +1 -1
  91. package/driver/mysql/MysqlQueryRunner.d.ts +1 -1
  92. package/driver/mysql/MysqlQueryRunner.js +5 -3
  93. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  94. package/driver/oracle/OracleDriver.js +4 -0
  95. package/driver/oracle/OracleDriver.js.map +1 -1
  96. package/driver/oracle/OracleQueryRunner.d.ts +1 -1
  97. package/driver/oracle/OracleQueryRunner.js +5 -3
  98. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  99. package/driver/postgres/PostgresDriver.js +4 -0
  100. package/driver/postgres/PostgresDriver.js.map +1 -1
  101. package/driver/postgres/PostgresQueryRunner.d.ts +1 -1
  102. package/driver/postgres/PostgresQueryRunner.js +5 -3
  103. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  104. package/driver/sap/SapDriver.js +4 -0
  105. package/driver/sap/SapDriver.js.map +1 -1
  106. package/driver/sap/SapQueryRunner.d.ts +1 -1
  107. package/driver/sap/SapQueryRunner.js +5 -3
  108. package/driver/sap/SapQueryRunner.js.map +1 -1
  109. package/driver/spanner/SpannerDriver.js +4 -0
  110. package/driver/spanner/SpannerDriver.js.map +1 -1
  111. package/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -0
  112. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  113. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +1 -1
  114. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +5 -3
  115. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  116. package/driver/sqlserver/SqlServerDriver.js +4 -0
  117. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  118. package/driver/sqlserver/SqlServerQueryRunner.d.ts +1 -1
  119. package/driver/sqlserver/SqlServerQueryRunner.js +5 -3
  120. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  121. package/index.d.ts +1 -0
  122. package/index.js +1 -0
  123. package/index.js.map +1 -1
  124. package/index.mjs +2 -0
  125. package/metadata/ColumnMetadata.d.ts +12 -0
  126. package/metadata/ColumnMetadata.js +13 -0
  127. package/metadata/ColumnMetadata.js.map +1 -1
  128. package/metadata-args/types/ColumnMode.d.ts +1 -1
  129. package/metadata-args/types/ColumnMode.js.map +1 -1
  130. package/metadata-builder/EntityMetadataValidator.js +9 -5
  131. package/metadata-builder/EntityMetadataValidator.js.map +1 -1
  132. package/migration/MigrationExecutor.js +13 -3
  133. package/migration/MigrationExecutor.js.map +1 -1
  134. package/package.json +1 -274
  135. package/query-builder/SelectQueryBuilder.js +22 -3
  136. package/query-builder/SelectQueryBuilder.js.map +1 -1
  137. package/query-runner/QueryRunner.d.ts +1 -1
  138. package/query-runner/QueryRunner.js.map +1 -1
  139. package/schema-builder/RdbmsSchemaBuilder.js +11 -5
  140. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  141. package/schema-builder/table/Table.js +1 -1
  142. package/schema-builder/table/Table.js.map +1 -1
  143. package/util/DateUtils.js +2 -1
  144. package/util/DateUtils.js.map +1 -1
package/package.json CHANGED
@@ -1,274 +1 @@
1
- {
2
- "name": "typeorm",
3
- "private": false,
4
- "version": "0.3.10",
5
- "description": "Data-Mapper ORM for TypeScript, ES7, ES6, ES5. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, MongoDB databases.",
6
- "license": "MIT",
7
- "readmeFilename": "README.md",
8
- "author": {
9
- "name": "Umed Khudoiberdiev",
10
- "email": "pleerock.me@gmail.com"
11
- },
12
- "engines": {
13
- "node": ">= 12.9.0"
14
- },
15
- "exports": {
16
- ".": {
17
- "types": "./index.d.ts",
18
- "node": {
19
- "import": "./index.mjs",
20
- "require": "./index.js",
21
- "types": "./index.d.ts"
22
- },
23
- "browser": {
24
- "require": "./index.js",
25
- "import": "./browser/index.js",
26
- "default": "./index.js"
27
- }
28
- },
29
- "./browser": {
30
- "types": "./index.d.ts",
31
- "default": "./browser/index.js"
32
- },
33
- "./*.js": "./*.js",
34
- "./*": {
35
- "require": "./*.js",
36
- "import": "./*"
37
- }
38
- },
39
- "main": "./index.js",
40
- "module": "./index.mjs",
41
- "types": "./index.d.ts",
42
- "browser": {
43
- "./browser/connection/ConnectionOptionsReader.js": "./browser/platform/BrowserConnectionOptionsReaderDummy.js",
44
- "./browser/connection/options-reader/ConnectionOptionsXmlReader.js": "./browser/platform/BrowserConnectionOptionsReaderDummy.js",
45
- "./browser/connection/options-reader/ConnectionOptionsYmlReader.js": "./browser/platform/BrowserConnectionOptionsReaderDummy.js",
46
- "./browser/driver/aurora-data-api/AuroraDataApiDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
47
- "./browser/driver/better-sqlite3/BetterSqlite3Driver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
48
- "./browser/driver/cockroachdb/CockroachDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
49
- "./browser/driver/mongodb/MongoDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
50
- "./browser/driver/mongodb/MongoQueryRunner.js": "./browser/platform/BrowserDisabledDriversDummy.js",
51
- "./browser/driver/mysql/MysqlDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
52
- "./browser/driver/oracle/OracleDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
53
- "./browser/driver/postgres/PostgresDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
54
- "./browser/driver/sap/SapDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
55
- "./browser/driver/sqlite/SqliteDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
56
- "./browser/driver/sqlserver/SqlServerDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js",
57
- "./browser/entity-manager/MongoEntityManager.js": "./browser/platform/BrowserDisabledDriversDummy.js",
58
- "./browser/logger/FileLogger.js": "./browser/platform/BrowserFileLoggerDummy.js",
59
- "./browser/platform/PlatformTools.js": "./browser/platform/BrowserPlatformTools.js",
60
- "./browser/repository/MongoRepository.js": "./browser/platform/BrowserDisabledDriversDummy.js",
61
- "./browser/util/DirectoryExportedClassesLoader.js": "./browser/platform/BrowserDirectoryExportedClassesLoader.js",
62
- "./index.js": "./browser/index.js",
63
- "./index.mjs": "./browser/index.js"
64
- },
65
- "repository": {
66
- "type": "git",
67
- "url": "https://github.com/typeorm/typeorm.git"
68
- },
69
- "bugs": {
70
- "url": "https://github.com/typeorm/typeorm/issues"
71
- },
72
- "homepage": "https://typeorm.io",
73
- "tags": [
74
- "orm",
75
- "typescript",
76
- "typescript-orm",
77
- "mysql",
78
- "mysql-orm",
79
- "postgresql",
80
- "postgresql-orm",
81
- "mariadb",
82
- "mariadb-orm",
83
- "spanner",
84
- "sqlite",
85
- "sqlite-orm",
86
- "sql-server",
87
- "sql-server-orm",
88
- "oracle",
89
- "oracle-orm",
90
- "cloud-spanner",
91
- "cloud-spanner-orm"
92
- ],
93
- "devDependencies": {
94
- "@types/app-root-path": "^1.2.4",
95
- "@types/chai": "^4.2.15",
96
- "@types/chai-as-promised": "^7.1.3",
97
- "@types/debug": "^4.1.5",
98
- "@types/js-yaml": "^4.0.0",
99
- "@types/mkdirp": "^1.0.1",
100
- "@types/mocha": "^8.2.1",
101
- "@types/node": "^14.14.31",
102
- "@types/rimraf": "^3.0.0",
103
- "@types/sha.js": "^2.4.0",
104
- "@types/sinon": "^9.0.10",
105
- "@types/source-map-support": "^0.5.3",
106
- "@types/uuid": "^8.3.4",
107
- "@types/xml2js": "^0.4.8",
108
- "@types/yargs": "^17.0.2",
109
- "better-sqlite3": "^7.1.2",
110
- "chai": "^4.3.0",
111
- "chai-as-promised": "^7.1.1",
112
- "class-transformer": "^0.4.0",
113
- "conventional-changelog-angular": "^5.0.12",
114
- "conventional-changelog-cli": "^2.1.1",
115
- "del": "^6.0.0",
116
- "gulp": "^4.0.2",
117
- "gulp-istanbul": "^1.1.3",
118
- "gulp-mocha": "^8.0.0",
119
- "gulp-rename": "^2.0.0",
120
- "gulp-replace": "^1.0.0",
121
- "gulp-shell": "^0.8.0",
122
- "gulp-sourcemaps": "^3.0.0",
123
- "gulp-typescript": "^6.0.0-alpha.1",
124
- "gulpclass": "^0.2.0",
125
- "husky": "^5.1.1",
126
- "mocha": "^8.3.0",
127
- "mongodb": "^3.6.4",
128
- "mssql": "^7.3.0",
129
- "mysql": "^2.18.1",
130
- "mysql2": "^2.2.5",
131
- "pg": "^8.5.1",
132
- "pg-query-stream": "^4.0.0",
133
- "prettier": "^2.5.1",
134
- "redis": "^3.1.1",
135
- "remap-istanbul": "^0.13.0",
136
- "rimraf": "^3.0.2",
137
- "sinon": "^9.2.4",
138
- "sinon-chai": "^3.5.0",
139
- "source-map-support": "^0.5.19",
140
- "sql.js": "^1.4.0",
141
- "sqlite3": "^5.0.11",
142
- "ts-node": "^10.7.0",
143
- "typeorm-aurora-data-api-driver": "^2.0.0",
144
- "typescript": "^4.8.2"
145
- },
146
- "peerDependencies": {
147
- "@google-cloud/spanner": "^5.18.0",
148
- "@sap/hana-client": "^2.12.25",
149
- "better-sqlite3": "^7.1.2",
150
- "hdb-pool": "^0.1.6",
151
- "ioredis": "^5.0.4",
152
- "mongodb": "^3.6.0",
153
- "mssql": "^7.3.0",
154
- "mysql2": "^2.2.5",
155
- "oracledb": "^5.1.0",
156
- "pg": "^8.5.1",
157
- "pg-native": "^3.0.0",
158
- "pg-query-stream": "^4.0.0",
159
- "redis": "^3.1.1 || ^4.0.0",
160
- "sql.js": "^1.4.0",
161
- "sqlite3": "^5.0.3",
162
- "ts-node": "^10.7.0",
163
- "typeorm-aurora-data-api-driver": "^2.0.0"
164
- },
165
- "peerDependenciesMeta": {
166
- "@google-cloud/spanner": {
167
- "optional": true
168
- },
169
- "@sap/hana-client": {
170
- "optional": true
171
- },
172
- "better-sqlite3": {
173
- "optional": true
174
- },
175
- "hdb-pool": {
176
- "optional": true
177
- },
178
- "ioredis": {
179
- "optional": true
180
- },
181
- "mongodb": {
182
- "optional": true
183
- },
184
- "mssql": {
185
- "optional": true
186
- },
187
- "mysql2": {
188
- "optional": true
189
- },
190
- "oracledb": {
191
- "optional": true
192
- },
193
- "pg": {
194
- "optional": true
195
- },
196
- "pg-native": {
197
- "optional": true
198
- },
199
- "pg-query-stream": {
200
- "optional": true
201
- },
202
- "redis": {
203
- "optional": true
204
- },
205
- "sql.js": {
206
- "optional": true
207
- },
208
- "sqlite3": {
209
- "optional": true
210
- },
211
- "ts-node": {
212
- "optional": true
213
- },
214
- "typeorm-aurora-data-api-driver": {
215
- "optional": true
216
- }
217
- },
218
- "dependencies": {
219
- "@sqltools/formatter": "^1.2.2",
220
- "app-root-path": "^3.0.0",
221
- "buffer": "^6.0.3",
222
- "chalk": "^4.1.0",
223
- "cli-highlight": "^2.1.11",
224
- "date-fns": "^2.28.0",
225
- "debug": "^4.3.3",
226
- "dotenv": "^16.0.0",
227
- "glob": "^7.2.0",
228
- "js-yaml": "^4.1.0",
229
- "mkdirp": "^1.0.4",
230
- "reflect-metadata": "^0.1.13",
231
- "sha.js": "^2.4.11",
232
- "tslib": "^2.3.1",
233
- "uuid": "^8.3.2",
234
- "xml2js": "^0.4.23",
235
- "yargs": "^17.3.1"
236
- },
237
- "scripts": {
238
- "test": "rimraf ./build && tsc && mocha --file ./build/compiled/test/utils/test-setup.js --bail --recursive --timeout 60000 ./build/compiled/test",
239
- "test-fast": "mocha --file ./build/compiled/test/utils/test-setup.js --bail --recursive --timeout 60000 ./build/compiled/test",
240
- "compile": "rimraf ./build && tsc",
241
- "watch": "./node_modules/.bin/tsc -w",
242
- "package": "gulp package",
243
- "pack": "gulp pack",
244
- "lint": "prettier --check \"./src/**/*.ts\" \"./test/**/*.ts\" \"./sample/**/*.ts\"",
245
- "format": "prettier --write \"./src/**/*.ts\" \"./test/**/*.ts\" \"./sample/**/*.ts\"",
246
- "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 2"
247
- },
248
- "bin": {
249
- "typeorm": "./cli.js",
250
- "typeorm-ts-node-commonjs": "./cli-ts-node-commonjs.js",
251
- "typeorm-ts-node-esm": "./cli-ts-node-esm.js"
252
- },
253
- "funding": "https://opencollective.com/typeorm",
254
- "collective": {
255
- "type": "opencollective",
256
- "url": "https://opencollective.com/typeorm",
257
- "logo": "https://opencollective.com/opencollective/logo.txt"
258
- },
259
- "nyc": {
260
- "all": true,
261
- "cache": false,
262
- "exclude": [
263
- "**/*.d.ts"
264
- ],
265
- "extension": [
266
- ".ts"
267
- ],
268
- "include": [
269
- "build/compiled/src/**",
270
- "src/**"
271
- ],
272
- "reporter": "json"
273
- }
274
- }
1
+ { "name": "typeorm", "private": false, "version": "0.3.11-dev.5253c8f", "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" }, "engines": { "node": ">= 12.9.0" }, "exports": { ".": { "types": "./index.d.ts", "node": { "import": "./index.mjs", "require": "./index.js", "types": "./index.d.ts" }, "browser": { "require": "./index.js", "import": "./browser/index.js", "default": "./index.js" } }, "./browser": { "types": "./index.d.ts", "default": "./browser/index.js" }, "./*.js": "./*.js", "./*": { "require": "./*.js", "import": "./*" } }, "main": "./index.js", "module": "./index.mjs", "types": "./index.d.ts", "browser": { "./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/driver/aurora-data-api/AuroraDataApiDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/better-sqlite3/BetterSqlite3Driver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/cockroachdb/CockroachDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/mongodb/MongoDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/mongodb/MongoQueryRunner.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/mysql/MysqlDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/oracle/OracleDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/postgres/PostgresDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/sap/SapDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/sqlite/SqliteDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/driver/sqlserver/SqlServerDriver.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/entity-manager/MongoEntityManager.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/logger/FileLogger.js": "./browser/platform/BrowserFileLoggerDummy.js", "./browser/platform/PlatformTools.js": "./browser/platform/BrowserPlatformTools.js", "./browser/repository/MongoRepository.js": "./browser/platform/BrowserDisabledDriversDummy.js", "./browser/util/DirectoryExportedClassesLoader.js": "./browser/platform/BrowserDirectoryExportedClassesLoader.js", "./index.js": "./browser/index.js", "./index.mjs": "./browser/index.js" }, "repository": { "type": "git", "url": "https://github.com/typeorm/typeorm.git" }, "bugs": { "url": "https://github.com/typeorm/typeorm/issues" }, "homepage": "https://typeorm.io", "tags": [ "orm", "typescript", "typescript-orm", "mysql", "mysql-orm", "postgresql", "postgresql-orm", "mariadb", "mariadb-orm", "spanner", "sqlite", "sqlite-orm", "sql-server", "sql-server-orm", "oracle", "oracle-orm", "cloud-spanner", "cloud-spanner-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/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/uuid": "^8.3.4", "@types/xml2js": "^0.4.8", "@types/yargs": "^17.0.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", "gulp": "^4.0.2", "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", "mocha": "^8.3.0", "mongodb": "^3.6.4", "mssql": "^7.3.0", "mysql": "^2.18.1", "mysql2": "^2.2.5", "pg": "^8.5.1", "pg-query-stream": "^4.0.0", "prettier": "^2.5.1", "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.11", "ts-node": "^10.7.0", "typeorm-aurora-data-api-driver": "^2.0.0", "typescript": "^4.8.2" }, "peerDependencies": { "@google-cloud/spanner": "^5.18.0", "@sap/hana-client": "^2.12.25", "better-sqlite3": "^7.1.2", "hdb-pool": "^0.1.6", "ioredis": "^5.0.4", "mongodb": "^3.6.0", "mssql": "^7.3.0", "mysql2": "^2.2.5", "oracledb": "^5.1.0", "pg": "^8.5.1", "pg-native": "^3.0.0", "pg-query-stream": "^4.0.0", "redis": "^3.1.1 || ^4.0.0", "sql.js": "^1.4.0", "sqlite3": "^5.0.3", "ts-node": "^10.7.0", "typeorm-aurora-data-api-driver": "^2.0.0" }, "peerDependenciesMeta": { "@google-cloud/spanner": { "optional": true }, "@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 }, "ts-node": { "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", "date-fns": "^2.28.0", "debug": "^4.3.3", "dotenv": "^16.0.0", "glob": "^7.2.0", "js-yaml": "^4.1.0", "mkdirp": "^1.0.4", "reflect-metadata": "^0.1.13", "sha.js": "^2.4.11", "tslib": "^2.3.1", "uuid": "^8.3.2", "xml2js": "^0.4.23", "yargs": "^17.3.1" }, "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": "prettier --check \"./src/**/*.ts\" \"./test/**/*.ts\" \"./sample/**/*.ts\"", "format": "prettier --write \"./src/**/*.ts\" \"./test/**/*.ts\" \"./sample/**/*.ts\"", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 2" }, "bin": { "typeorm": "./cli.js", "typeorm-ts-node-commonjs": "./cli-ts-node-commonjs.js", "typeorm-ts-node-esm": "./cli-ts-node-esm.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" } }
@@ -1485,8 +1485,12 @@ class SelectQueryBuilder extends QueryBuilder_1.QueryBuilder {
1485
1485
  : [];
1486
1486
  const allColumns = [...columns, ...nonSelectedPrimaryColumns];
1487
1487
  const finalSelects = [];
1488
+ const escapedAliasName = this.escape(aliasName);
1488
1489
  allColumns.forEach((column) => {
1489
- let selectionPath = this.escape(aliasName) + "." + this.escape(column.databaseName);
1490
+ let selectionPath = escapedAliasName + "." + this.escape(column.databaseName);
1491
+ if (column.isVirtualProperty && column.query) {
1492
+ selectionPath = `(${column.query(escapedAliasName)})`;
1493
+ }
1490
1494
  if (this.connection.driver.spatialTypes.indexOf(column.type) !== -1) {
1491
1495
  if (DriverUtils_1.DriverUtils.isMySQLFamily(this.connection.driver) ||
1492
1496
  this.connection.driver.options.type === "aurora-mysql") {
@@ -2263,7 +2267,19 @@ class SelectQueryBuilder extends QueryBuilder_1.QueryBuilder {
2263
2267
  : (nulls === null || nulls === void 0 ? void 0 : nulls.toLowerCase()) === "last"
2264
2268
  ? "NULLS LAST"
2265
2269
  : undefined;
2266
- this.addOrderBy(`${alias}.${propertyPath}`, direction, nulls);
2270
+ let aliasPath = `${alias}.${propertyPath}`;
2271
+ if (column.isVirtualProperty && column.query) {
2272
+ const selection = this.expressionMap.selects.find((s) => s.selection === aliasPath);
2273
+ if (selection) {
2274
+ // this is not building correctly now???
2275
+ aliasPath = DriverUtils_1.DriverUtils.buildAlias(this.connection.driver, alias, column.databaseName);
2276
+ selection.aliasName = aliasPath;
2277
+ }
2278
+ else {
2279
+ aliasPath = `(${column.query(alias)})`;
2280
+ }
2281
+ }
2282
+ this.addOrderBy(aliasPath, direction, nulls);
2267
2283
  // this.orderBys.push({ alias: alias + "." + propertyPath, direction, nulls });
2268
2284
  }
2269
2285
  else if (embed) {
@@ -2317,7 +2333,10 @@ class SelectQueryBuilder extends QueryBuilder_1.QueryBuilder {
2317
2333
  if (!embed && !column && !relation)
2318
2334
  throw new EntityPropertyNotFoundError_1.EntityPropertyNotFoundError(propertyPath, metadata);
2319
2335
  if (column) {
2320
- const aliasPath = `${alias}.${propertyPath}`;
2336
+ let aliasPath = `${alias}.${propertyPath}`;
2337
+ if (column.isVirtualProperty && column.query) {
2338
+ aliasPath = `(${column.query(alias)})`;
2339
+ }
2321
2340
  // const parameterName = alias + "_" + propertyPath.split(".").join("_") + "_" + parameterIndex;
2322
2341
  // todo: we need to handle other operators as well?
2323
2342
  let parameterValue = where[key];