@zyno-io/dk-server-foundation 26.216.430

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 (663) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +458 -0
  3. package/dist/devconsole/assets/index-CKF3C3kv.css +1 -0
  4. package/dist/devconsole/assets/index-CsHdomhM.js +27 -0
  5. package/dist/devconsole/index.html +13 -0
  6. package/dist/resources/proto/generated/devconsole/devconsole.d.ts +320 -0
  7. package/dist/resources/proto/generated/devconsole/devconsole.d.ts.map +1 -0
  8. package/dist/resources/proto/generated/devconsole/devconsole.js +3751 -0
  9. package/dist/resources/proto/generated/devconsole/devconsole.js.map +1 -0
  10. package/dist/src/app/base.d.ts +36 -0
  11. package/dist/src/app/base.d.ts.map +1 -0
  12. package/dist/src/app/base.js +240 -0
  13. package/dist/src/app/base.js.map +1 -0
  14. package/dist/src/app/config.d.ts +90 -0
  15. package/dist/src/app/config.d.ts.map +1 -0
  16. package/dist/src/app/config.js +33 -0
  17. package/dist/src/app/config.js.map +1 -0
  18. package/dist/src/app/config.loader.d.ts +14 -0
  19. package/dist/src/app/config.loader.d.ts.map +1 -0
  20. package/dist/src/app/config.loader.js +67 -0
  21. package/dist/src/app/config.loader.js.map +1 -0
  22. package/dist/src/app/const.d.ts +3 -0
  23. package/dist/src/app/const.d.ts.map +1 -0
  24. package/dist/src/app/const.js +6 -0
  25. package/dist/src/app/const.js.map +1 -0
  26. package/dist/src/app/dev.d.ts +7 -0
  27. package/dist/src/app/dev.d.ts.map +1 -0
  28. package/dist/src/app/dev.js +105 -0
  29. package/dist/src/app/dev.js.map +1 -0
  30. package/dist/src/app/index.d.ts +7 -0
  31. package/dist/src/app/index.d.ts.map +1 -0
  32. package/dist/src/app/index.js +12 -0
  33. package/dist/src/app/index.js.map +1 -0
  34. package/dist/src/app/openapi.d.ts +4 -0
  35. package/dist/src/app/openapi.d.ts.map +1 -0
  36. package/dist/src/app/openapi.js +6 -0
  37. package/dist/src/app/openapi.js.map +1 -0
  38. package/dist/src/app/resolver.d.ts +11 -0
  39. package/dist/src/app/resolver.d.ts.map +1 -0
  40. package/dist/src/app/resolver.js +60 -0
  41. package/dist/src/app/resolver.js.map +1 -0
  42. package/dist/src/app/shutdown.d.ts +12 -0
  43. package/dist/src/app/shutdown.d.ts.map +1 -0
  44. package/dist/src/app/shutdown.js +63 -0
  45. package/dist/src/app/shutdown.js.map +1 -0
  46. package/dist/src/app/state.d.ts +16 -0
  47. package/dist/src/app/state.d.ts.map +1 -0
  48. package/dist/src/app/state.js +12 -0
  49. package/dist/src/app/state.js.map +1 -0
  50. package/dist/src/auth/index.d.ts +3 -0
  51. package/dist/src/auth/index.d.ts.map +1 -0
  52. package/dist/src/auth/index.js +6 -0
  53. package/dist/src/auth/index.js.map +1 -0
  54. package/dist/src/auth/jwt.d.ts +76 -0
  55. package/dist/src/auth/jwt.d.ts.map +1 -0
  56. package/dist/src/auth/jwt.js +218 -0
  57. package/dist/src/auth/jwt.js.map +1 -0
  58. package/dist/src/auth/provider.d.ts +15 -0
  59. package/dist/src/auth/provider.d.ts.map +1 -0
  60. package/dist/src/auth/provider.js +50 -0
  61. package/dist/src/auth/provider.js.map +1 -0
  62. package/dist/src/cli/dksf-dev.d.ts +3 -0
  63. package/dist/src/cli/dksf-dev.d.ts.map +1 -0
  64. package/dist/src/cli/dksf-dev.js +408 -0
  65. package/dist/src/cli/dksf-dev.js.map +1 -0
  66. package/dist/src/cli/dksf-gen-proto.d.ts +3 -0
  67. package/dist/src/cli/dksf-gen-proto.d.ts.map +1 -0
  68. package/dist/src/cli/dksf-gen-proto.js +164 -0
  69. package/dist/src/cli/dksf-gen-proto.js.map +1 -0
  70. package/dist/src/cli/dksf-install.d.ts +3 -0
  71. package/dist/src/cli/dksf-install.d.ts.map +1 -0
  72. package/dist/src/cli/dksf-install.js +10 -0
  73. package/dist/src/cli/dksf-install.js.map +1 -0
  74. package/dist/src/cli/dksf-test.d.ts +3 -0
  75. package/dist/src/cli/dksf-test.d.ts.map +1 -0
  76. package/dist/src/cli/dksf-test.js +78 -0
  77. package/dist/src/cli/dksf-test.js.map +1 -0
  78. package/dist/src/cli/dksf-update.d.ts +3 -0
  79. package/dist/src/cli/dksf-update.d.ts.map +1 -0
  80. package/dist/src/cli/dksf-update.js +86 -0
  81. package/dist/src/cli/dksf-update.js.map +1 -0
  82. package/dist/src/database/common.d.ts +84 -0
  83. package/dist/src/database/common.d.ts.map +1 -0
  84. package/dist/src/database/common.js +380 -0
  85. package/dist/src/database/common.js.map +1 -0
  86. package/dist/src/database/dialect.d.ts +10 -0
  87. package/dist/src/database/dialect.d.ts.map +1 -0
  88. package/dist/src/database/dialect.js +56 -0
  89. package/dist/src/database/dialect.js.map +1 -0
  90. package/dist/src/database/entity.d.ts +62 -0
  91. package/dist/src/database/entity.d.ts.map +1 -0
  92. package/dist/src/database/entity.js +198 -0
  93. package/dist/src/database/entity.js.map +1 -0
  94. package/dist/src/database/index.d.ts +8 -0
  95. package/dist/src/database/index.d.ts.map +1 -0
  96. package/dist/src/database/index.js +15 -0
  97. package/dist/src/database/index.js.map +1 -0
  98. package/dist/src/database/migration/MigrationResetCommand.d.ts +9 -0
  99. package/dist/src/database/migration/MigrationResetCommand.d.ts.map +1 -0
  100. package/dist/src/database/migration/MigrationResetCommand.js +75 -0
  101. package/dist/src/database/migration/MigrationResetCommand.js.map +1 -0
  102. package/dist/src/database/migration/MigrationRunCommand.d.ts +11 -0
  103. package/dist/src/database/migration/MigrationRunCommand.d.ts.map +1 -0
  104. package/dist/src/database/migration/MigrationRunCommand.js +118 -0
  105. package/dist/src/database/migration/MigrationRunCommand.js.map +1 -0
  106. package/dist/src/database/migration/characters.d.ts +14 -0
  107. package/dist/src/database/migration/characters.d.ts.map +1 -0
  108. package/dist/src/database/migration/characters.js +56 -0
  109. package/dist/src/database/migration/characters.js.map +1 -0
  110. package/dist/src/database/migration/create/MigrationCreateCommand.d.ts +11 -0
  111. package/dist/src/database/migration/create/MigrationCreateCommand.d.ts.map +1 -0
  112. package/dist/src/database/migration/create/MigrationCreateCommand.js +106 -0
  113. package/dist/src/database/migration/create/MigrationCreateCommand.js.map +1 -0
  114. package/dist/src/database/migration/create/comparator.d.ts +3 -0
  115. package/dist/src/database/migration/create/comparator.d.ts.map +1 -0
  116. package/dist/src/database/migration/create/comparator.js +408 -0
  117. package/dist/src/database/migration/create/comparator.js.map +1 -0
  118. package/dist/src/database/migration/create/db-reader.d.ts +5 -0
  119. package/dist/src/database/migration/create/db-reader.d.ts.map +1 -0
  120. package/dist/src/database/migration/create/db-reader.js +473 -0
  121. package/dist/src/database/migration/create/db-reader.js.map +1 -0
  122. package/dist/src/database/migration/create/ddl-generator.d.ts +3 -0
  123. package/dist/src/database/migration/create/ddl-generator.d.ts.map +1 -0
  124. package/dist/src/database/migration/create/ddl-generator.js +725 -0
  125. package/dist/src/database/migration/create/ddl-generator.js.map +1 -0
  126. package/dist/src/database/migration/create/entity-reader.d.ts +4 -0
  127. package/dist/src/database/migration/create/entity-reader.d.ts.map +1 -0
  128. package/dist/src/database/migration/create/entity-reader.js +417 -0
  129. package/dist/src/database/migration/create/entity-reader.js.map +1 -0
  130. package/dist/src/database/migration/create/file-generator.d.ts +3 -0
  131. package/dist/src/database/migration/create/file-generator.d.ts.map +1 -0
  132. package/dist/src/database/migration/create/file-generator.js +62 -0
  133. package/dist/src/database/migration/create/file-generator.js.map +1 -0
  134. package/dist/src/database/migration/create/prompt.d.ts +4 -0
  135. package/dist/src/database/migration/create/prompt.d.ts.map +1 -0
  136. package/dist/src/database/migration/create/prompt.js +55 -0
  137. package/dist/src/database/migration/create/prompt.js.map +1 -0
  138. package/dist/src/database/migration/create/schema-model.d.ts +109 -0
  139. package/dist/src/database/migration/create/schema-model.d.ts.map +1 -0
  140. package/dist/src/database/migration/create/schema-model.js +24 -0
  141. package/dist/src/database/migration/create/schema-model.js.map +1 -0
  142. package/dist/src/database/migration/helpers.d.ts +3 -0
  143. package/dist/src/database/migration/helpers.d.ts.map +1 -0
  144. package/dist/src/database/migration/helpers.js +13 -0
  145. package/dist/src/database/migration/helpers.js.map +1 -0
  146. package/dist/src/database/migration/index.d.ts +9 -0
  147. package/dist/src/database/migration/index.d.ts.map +1 -0
  148. package/dist/src/database/migration/index.js +43 -0
  149. package/dist/src/database/migration/index.js.map +1 -0
  150. package/dist/src/database/migration/migration.entity.d.ts +8 -0
  151. package/dist/src/database/migration/migration.entity.d.ts.map +1 -0
  152. package/dist/src/database/migration/migration.entity.js +16 -0
  153. package/dist/src/database/migration/migration.entity.js.map +1 -0
  154. package/dist/src/database/mysql.d.ts +16 -0
  155. package/dist/src/database/mysql.d.ts.map +1 -0
  156. package/dist/src/database/mysql.js +140 -0
  157. package/dist/src/database/mysql.js.map +1 -0
  158. package/dist/src/database/postgres.d.ts +16 -0
  159. package/dist/src/database/postgres.d.ts.map +1 -0
  160. package/dist/src/database/postgres.js +91 -0
  161. package/dist/src/database/postgres.js.map +1 -0
  162. package/dist/src/database/types.d.ts +21 -0
  163. package/dist/src/database/types.d.ts.map +1 -0
  164. package/dist/src/database/types.js +27 -0
  165. package/dist/src/database/types.js.map +1 -0
  166. package/dist/src/devconsole/devconsole.controller.d.ts +7 -0
  167. package/dist/src/devconsole/devconsole.controller.d.ts.map +1 -0
  168. package/dist/src/devconsole/devconsole.controller.js +82 -0
  169. package/dist/src/devconsole/devconsole.controller.js.map +1 -0
  170. package/dist/src/devconsole/devconsole.middleware.d.ts +12 -0
  171. package/dist/src/devconsole/devconsole.middleware.d.ts.map +1 -0
  172. package/dist/src/devconsole/devconsole.middleware.js +28 -0
  173. package/dist/src/devconsole/devconsole.middleware.js.map +1 -0
  174. package/dist/src/devconsole/devconsole.srpc.d.ts +14 -0
  175. package/dist/src/devconsole/devconsole.srpc.d.ts.map +1 -0
  176. package/dist/src/devconsole/devconsole.srpc.js +94 -0
  177. package/dist/src/devconsole/devconsole.srpc.js.map +1 -0
  178. package/dist/src/devconsole/devconsole.store.d.ts +101 -0
  179. package/dist/src/devconsole/devconsole.store.d.ts.map +1 -0
  180. package/dist/src/devconsole/devconsole.store.js +125 -0
  181. package/dist/src/devconsole/devconsole.store.js.map +1 -0
  182. package/dist/src/devconsole/devconsole.ws.d.ts +18 -0
  183. package/dist/src/devconsole/devconsole.ws.d.ts.map +1 -0
  184. package/dist/src/devconsole/devconsole.ws.js +470 -0
  185. package/dist/src/devconsole/devconsole.ws.js.map +1 -0
  186. package/dist/src/devconsole/index.d.ts +2 -0
  187. package/dist/src/devconsole/index.d.ts.map +1 -0
  188. package/dist/src/devconsole/index.js +6 -0
  189. package/dist/src/devconsole/index.js.map +1 -0
  190. package/dist/src/devconsole/patches.d.ts +6 -0
  191. package/dist/src/devconsole/patches.d.ts.map +1 -0
  192. package/dist/src/devconsole/patches.js +397 -0
  193. package/dist/src/devconsole/patches.js.map +1 -0
  194. package/dist/src/health/health.module.d.ts +6 -0
  195. package/dist/src/health/health.module.d.ts.map +1 -0
  196. package/dist/src/health/health.module.js +32 -0
  197. package/dist/src/health/health.module.js.map +1 -0
  198. package/dist/src/health/healthcheck.controller.d.ts +10 -0
  199. package/dist/src/health/healthcheck.controller.d.ts.map +1 -0
  200. package/dist/src/health/healthcheck.controller.js +30 -0
  201. package/dist/src/health/healthcheck.controller.js.map +1 -0
  202. package/dist/src/health/healthcheck.service.d.ts +13 -0
  203. package/dist/src/health/healthcheck.service.d.ts.map +1 -0
  204. package/dist/src/health/healthcheck.service.js +33 -0
  205. package/dist/src/health/healthcheck.service.js.map +1 -0
  206. package/dist/src/health/index.d.ts +3 -0
  207. package/dist/src/health/index.d.ts.map +1 -0
  208. package/dist/src/health/index.js +6 -0
  209. package/dist/src/health/index.js.map +1 -0
  210. package/dist/src/helpers/async/context.d.ts +11 -0
  211. package/dist/src/helpers/async/context.d.ts.map +1 -0
  212. package/dist/src/helpers/async/context.js +75 -0
  213. package/dist/src/helpers/async/context.js.map +1 -0
  214. package/dist/src/helpers/async/process.d.ts +16 -0
  215. package/dist/src/helpers/async/process.d.ts.map +1 -0
  216. package/dist/src/helpers/async/process.js +44 -0
  217. package/dist/src/helpers/async/process.js.map +1 -0
  218. package/dist/src/helpers/async/promise.d.ts +5 -0
  219. package/dist/src/helpers/async/promise.d.ts.map +1 -0
  220. package/dist/src/helpers/async/promise.js +27 -0
  221. package/dist/src/helpers/async/promise.js.map +1 -0
  222. package/dist/src/helpers/data/array.d.ts +3 -0
  223. package/dist/src/helpers/data/array.d.ts.map +1 -0
  224. package/dist/src/helpers/data/array.js +17 -0
  225. package/dist/src/helpers/data/array.js.map +1 -0
  226. package/dist/src/helpers/data/objects.d.ts +12 -0
  227. package/dist/src/helpers/data/objects.d.ts.map +1 -0
  228. package/dist/src/helpers/data/objects.js +75 -0
  229. package/dist/src/helpers/data/objects.js.map +1 -0
  230. package/dist/src/helpers/data/serialization.d.ts +4 -0
  231. package/dist/src/helpers/data/serialization.d.ts.map +1 -0
  232. package/dist/src/helpers/data/serialization.js +15 -0
  233. package/dist/src/helpers/data/serialization.js.map +1 -0
  234. package/dist/src/helpers/data/transformer.d.ts +13 -0
  235. package/dist/src/helpers/data/transformer.d.ts.map +1 -0
  236. package/dist/src/helpers/data/transformer.js +55 -0
  237. package/dist/src/helpers/data/transformer.js.map +1 -0
  238. package/dist/src/helpers/framework/decorators.d.ts +5 -0
  239. package/dist/src/helpers/framework/decorators.d.ts.map +1 -0
  240. package/dist/src/helpers/framework/decorators.js +39 -0
  241. package/dist/src/helpers/framework/decorators.js.map +1 -0
  242. package/dist/src/helpers/framework/event.d.ts +3 -0
  243. package/dist/src/helpers/framework/event.d.ts.map +1 -0
  244. package/dist/src/helpers/framework/event.js +20 -0
  245. package/dist/src/helpers/framework/event.js.map +1 -0
  246. package/dist/src/helpers/framework/injection.d.ts +7 -0
  247. package/dist/src/helpers/framework/injection.d.ts.map +1 -0
  248. package/dist/src/helpers/framework/injection.js +52 -0
  249. package/dist/src/helpers/framework/injection.js.map +1 -0
  250. package/dist/src/helpers/index.d.ts +22 -0
  251. package/dist/src/helpers/index.d.ts.map +1 -0
  252. package/dist/src/helpers/index.js +32 -0
  253. package/dist/src/helpers/index.js.map +1 -0
  254. package/dist/src/helpers/io/package.d.ts +5 -0
  255. package/dist/src/helpers/io/package.d.ts.map +1 -0
  256. package/dist/src/helpers/io/package.js +31 -0
  257. package/dist/src/helpers/io/package.js.map +1 -0
  258. package/dist/src/helpers/io/stream.d.ts +18 -0
  259. package/dist/src/helpers/io/stream.d.ts.map +1 -0
  260. package/dist/src/helpers/io/stream.js +91 -0
  261. package/dist/src/helpers/io/stream.js.map +1 -0
  262. package/dist/src/helpers/redis/broadcast.d.ts +13 -0
  263. package/dist/src/helpers/redis/broadcast.d.ts.map +1 -0
  264. package/dist/src/helpers/redis/broadcast.js +100 -0
  265. package/dist/src/helpers/redis/broadcast.js.map +1 -0
  266. package/dist/src/helpers/redis/cache.d.ts +7 -0
  267. package/dist/src/helpers/redis/cache.d.ts.map +1 -0
  268. package/dist/src/helpers/redis/cache.js +28 -0
  269. package/dist/src/helpers/redis/cache.js.map +1 -0
  270. package/dist/src/helpers/redis/mutex.d.ts +24 -0
  271. package/dist/src/helpers/redis/mutex.d.ts.map +1 -0
  272. package/dist/src/helpers/redis/mutex.js +240 -0
  273. package/dist/src/helpers/redis/mutex.js.map +1 -0
  274. package/dist/src/helpers/redis/redis.d.ts +11 -0
  275. package/dist/src/helpers/redis/redis.d.ts.map +1 -0
  276. package/dist/src/helpers/redis/redis.js +59 -0
  277. package/dist/src/helpers/redis/redis.js.map +1 -0
  278. package/dist/src/helpers/security/crypto.d.ts +26 -0
  279. package/dist/src/helpers/security/crypto.d.ts.map +1 -0
  280. package/dist/src/helpers/security/crypto.js +121 -0
  281. package/dist/src/helpers/security/crypto.js.map +1 -0
  282. package/dist/src/helpers/security/validation.d.ts +4 -0
  283. package/dist/src/helpers/security/validation.d.ts.map +1 -0
  284. package/dist/src/helpers/security/validation.js +25 -0
  285. package/dist/src/helpers/security/validation.js.map +1 -0
  286. package/dist/src/helpers/utils/date.d.ts +4 -0
  287. package/dist/src/helpers/utils/date.d.ts.map +1 -0
  288. package/dist/src/helpers/utils/date.js +23 -0
  289. package/dist/src/helpers/utils/date.js.map +1 -0
  290. package/dist/src/helpers/utils/error.d.ts +24 -0
  291. package/dist/src/helpers/utils/error.d.ts.map +1 -0
  292. package/dist/src/helpers/utils/error.js +168 -0
  293. package/dist/src/helpers/utils/error.js.map +1 -0
  294. package/dist/src/helpers/utils/jsx.d.ts +3 -0
  295. package/dist/src/helpers/utils/jsx.d.ts.map +1 -0
  296. package/dist/src/helpers/utils/jsx.js +13 -0
  297. package/dist/src/helpers/utils/jsx.js.map +1 -0
  298. package/dist/src/helpers/utils/uuid.d.ts +3 -0
  299. package/dist/src/helpers/utils/uuid.d.ts.map +1 -0
  300. package/dist/src/helpers/utils/uuid.js +14 -0
  301. package/dist/src/helpers/utils/uuid.js.map +1 -0
  302. package/dist/src/http/auth.d.ts +46 -0
  303. package/dist/src/http/auth.d.ts.map +1 -0
  304. package/dist/src/http/auth.js +162 -0
  305. package/dist/src/http/auth.js.map +1 -0
  306. package/dist/src/http/context.d.ts +5 -0
  307. package/dist/src/http/context.d.ts.map +1 -0
  308. package/dist/src/http/context.js +22 -0
  309. package/dist/src/http/context.js.map +1 -0
  310. package/dist/src/http/cors.d.ts +36 -0
  311. package/dist/src/http/cors.d.ts.map +1 -0
  312. package/dist/src/http/cors.js +171 -0
  313. package/dist/src/http/cors.js.map +1 -0
  314. package/dist/src/http/errors.d.ts +3 -0
  315. package/dist/src/http/errors.d.ts.map +1 -0
  316. package/dist/src/http/errors.js +10 -0
  317. package/dist/src/http/errors.js.map +1 -0
  318. package/dist/src/http/index.d.ts +24 -0
  319. package/dist/src/http/index.d.ts.map +1 -0
  320. package/dist/src/http/index.js +25 -0
  321. package/dist/src/http/index.js.map +1 -0
  322. package/dist/src/http/kernel.d.ts +17 -0
  323. package/dist/src/http/kernel.d.ts.map +1 -0
  324. package/dist/src/http/kernel.js +133 -0
  325. package/dist/src/http/kernel.js.map +1 -0
  326. package/dist/src/http/middleware.d.ts +12 -0
  327. package/dist/src/http/middleware.d.ts.map +1 -0
  328. package/dist/src/http/middleware.js +61 -0
  329. package/dist/src/http/middleware.js.map +1 -0
  330. package/dist/src/http/overrides.d.ts +2 -0
  331. package/dist/src/http/overrides.d.ts.map +1 -0
  332. package/dist/src/http/overrides.js +19 -0
  333. package/dist/src/http/overrides.js.map +1 -0
  334. package/dist/src/http/store.d.ts +33 -0
  335. package/dist/src/http/store.d.ts.map +1 -0
  336. package/dist/src/http/store.js +102 -0
  337. package/dist/src/http/store.js.map +1 -0
  338. package/dist/src/http/uploads.d.ts +7 -0
  339. package/dist/src/http/uploads.d.ts.map +1 -0
  340. package/dist/src/http/uploads.js +8 -0
  341. package/dist/src/http/uploads.js.map +1 -0
  342. package/dist/src/http/workflow.d.ts +18 -0
  343. package/dist/src/http/workflow.d.ts.map +1 -0
  344. package/dist/src/http/workflow.js +181 -0
  345. package/dist/src/http/workflow.js.map +1 -0
  346. package/dist/src/index.d.ts +13 -0
  347. package/dist/src/index.d.ts.map +1 -0
  348. package/dist/src/index.js +25 -0
  349. package/dist/src/index.js.map +1 -0
  350. package/dist/src/services/cli/invoke.d.ts +5 -0
  351. package/dist/src/services/cli/invoke.d.ts.map +1 -0
  352. package/dist/src/services/cli/invoke.js +45 -0
  353. package/dist/src/services/cli/invoke.js.map +1 -0
  354. package/dist/src/services/cli/repl-context.d.ts +13 -0
  355. package/dist/src/services/cli/repl-context.d.ts.map +1 -0
  356. package/dist/src/services/cli/repl-context.js +60 -0
  357. package/dist/src/services/cli/repl-context.js.map +1 -0
  358. package/dist/src/services/cli/repl.d.ts +5 -0
  359. package/dist/src/services/cli/repl.d.ts.map +1 -0
  360. package/dist/src/services/cli/repl.js +32 -0
  361. package/dist/src/services/cli/repl.js.map +1 -0
  362. package/dist/src/services/cli.d.ts +12 -0
  363. package/dist/src/services/cli.d.ts.map +1 -0
  364. package/dist/src/services/cli.js +76 -0
  365. package/dist/src/services/cli.js.map +1 -0
  366. package/dist/src/services/index.d.ts +7 -0
  367. package/dist/src/services/index.d.ts.map +1 -0
  368. package/dist/src/services/index.js +10 -0
  369. package/dist/src/services/index.js.map +1 -0
  370. package/dist/src/services/leader.d.ts +32 -0
  371. package/dist/src/services/leader.d.ts.map +1 -0
  372. package/dist/src/services/leader.js +174 -0
  373. package/dist/src/services/leader.js.map +1 -0
  374. package/dist/src/services/logger.d.ts +35 -0
  375. package/dist/src/services/logger.d.ts.map +1 -0
  376. package/dist/src/services/logger.js +245 -0
  377. package/dist/src/services/logger.js.map +1 -0
  378. package/dist/src/services/mail/index.d.ts +61 -0
  379. package/dist/src/services/mail/index.d.ts.map +1 -0
  380. package/dist/src/services/mail/index.js +90 -0
  381. package/dist/src/services/mail/index.js.map +1 -0
  382. package/dist/src/services/mail/postmark.d.ts +11 -0
  383. package/dist/src/services/mail/postmark.d.ts.map +1 -0
  384. package/dist/src/services/mail/postmark.js +42 -0
  385. package/dist/src/services/mail/postmark.js.map +1 -0
  386. package/dist/src/services/mail/smtp.d.ts +11 -0
  387. package/dist/src/services/mail/smtp.d.ts.map +1 -0
  388. package/dist/src/services/mail/smtp.js +61 -0
  389. package/dist/src/services/mail/smtp.js.map +1 -0
  390. package/dist/src/services/mesh.d.ts +65 -0
  391. package/dist/src/services/mesh.d.ts.map +1 -0
  392. package/dist/src/services/mesh.js +422 -0
  393. package/dist/src/services/mesh.js.map +1 -0
  394. package/dist/src/services/worker/bootstrap.d.ts +3 -0
  395. package/dist/src/services/worker/bootstrap.d.ts.map +1 -0
  396. package/dist/src/services/worker/bootstrap.js +64 -0
  397. package/dist/src/services/worker/bootstrap.js.map +1 -0
  398. package/dist/src/services/worker/cli.d.ts +11 -0
  399. package/dist/src/services/worker/cli.d.ts.map +1 -0
  400. package/dist/src/services/worker/cli.js +43 -0
  401. package/dist/src/services/worker/cli.js.map +1 -0
  402. package/dist/src/services/worker/entity.d.ts +18 -0
  403. package/dist/src/services/worker/entity.d.ts.map +1 -0
  404. package/dist/src/services/worker/entity.js +16 -0
  405. package/dist/src/services/worker/entity.js.map +1 -0
  406. package/dist/src/services/worker/index.d.ts +9 -0
  407. package/dist/src/services/worker/index.d.ts.map +1 -0
  408. package/dist/src/services/worker/index.js +40 -0
  409. package/dist/src/services/worker/index.js.map +1 -0
  410. package/dist/src/services/worker/queue.d.ts +8 -0
  411. package/dist/src/services/worker/queue.d.ts.map +1 -0
  412. package/dist/src/services/worker/queue.js +32 -0
  413. package/dist/src/services/worker/queue.js.map +1 -0
  414. package/dist/src/services/worker/recorder.d.ts +16 -0
  415. package/dist/src/services/worker/recorder.d.ts.map +1 -0
  416. package/dist/src/services/worker/recorder.js +168 -0
  417. package/dist/src/services/worker/recorder.js.map +1 -0
  418. package/dist/src/services/worker/runner.d.ts +21 -0
  419. package/dist/src/services/worker/runner.d.ts.map +1 -0
  420. package/dist/src/services/worker/runner.js +156 -0
  421. package/dist/src/services/worker/runner.js.map +1 -0
  422. package/dist/src/services/worker/types.d.ts +26 -0
  423. package/dist/src/services/worker/types.d.ts.map +1 -0
  424. package/dist/src/services/worker/types.js +29 -0
  425. package/dist/src/services/worker/types.js.map +1 -0
  426. package/dist/src/srpc/SrpcByteStream.d.ts +67 -0
  427. package/dist/src/srpc/SrpcByteStream.d.ts.map +1 -0
  428. package/dist/src/srpc/SrpcByteStream.js +319 -0
  429. package/dist/src/srpc/SrpcByteStream.js.map +1 -0
  430. package/dist/src/srpc/SrpcClient.d.ts +75 -0
  431. package/dist/src/srpc/SrpcClient.d.ts.map +1 -0
  432. package/dist/src/srpc/SrpcClient.js +445 -0
  433. package/dist/src/srpc/SrpcClient.js.map +1 -0
  434. package/dist/src/srpc/SrpcServer.d.ts +80 -0
  435. package/dist/src/srpc/SrpcServer.d.ts.map +1 -0
  436. package/dist/src/srpc/SrpcServer.js +561 -0
  437. package/dist/src/srpc/SrpcServer.js.map +1 -0
  438. package/dist/src/srpc/index.d.ts +7 -0
  439. package/dist/src/srpc/index.d.ts.map +1 -0
  440. package/dist/src/srpc/index.js +12 -0
  441. package/dist/src/srpc/index.js.map +1 -0
  442. package/dist/src/srpc/types.d.ts +131 -0
  443. package/dist/src/srpc/types.d.ts.map +1 -0
  444. package/dist/src/srpc/types.js +65 -0
  445. package/dist/src/srpc/types.js.map +1 -0
  446. package/dist/src/telemetry/index.d.ts +2 -0
  447. package/dist/src/telemetry/index.d.ts.map +1 -0
  448. package/dist/src/telemetry/index.js +5 -0
  449. package/dist/src/telemetry/index.js.map +1 -0
  450. package/dist/src/telemetry/otel/MariaDBInstrumentation.d.ts +22 -0
  451. package/dist/src/telemetry/otel/MariaDBInstrumentation.d.ts.map +1 -0
  452. package/dist/src/telemetry/otel/MariaDBInstrumentation.js +248 -0
  453. package/dist/src/telemetry/otel/MariaDBInstrumentation.js.map +1 -0
  454. package/dist/src/telemetry/otel/helpers.d.ts +27 -0
  455. package/dist/src/telemetry/otel/helpers.d.ts.map +1 -0
  456. package/dist/src/telemetry/otel/helpers.js +126 -0
  457. package/dist/src/telemetry/otel/helpers.js.map +1 -0
  458. package/dist/src/telemetry/otel/index.d.ts +14 -0
  459. package/dist/src/telemetry/otel/index.d.ts.map +1 -0
  460. package/dist/src/telemetry/otel/index.js +132 -0
  461. package/dist/src/telemetry/otel/index.js.map +1 -0
  462. package/dist/src/telemetry/otel/metrics.controller.d.ts +6 -0
  463. package/dist/src/telemetry/otel/metrics.controller.d.ts.map +1 -0
  464. package/dist/src/telemetry/otel/metrics.controller.js +63 -0
  465. package/dist/src/telemetry/otel/metrics.controller.js.map +1 -0
  466. package/dist/src/telemetry/sentry.d.ts +9 -0
  467. package/dist/src/telemetry/sentry.d.ts.map +1 -0
  468. package/dist/src/telemetry/sentry.js +62 -0
  469. package/dist/src/telemetry/sentry.js.map +1 -0
  470. package/dist/src/testing/expect.d.ts +25 -0
  471. package/dist/src/testing/expect.d.ts.map +1 -0
  472. package/dist/src/testing/expect.js +151 -0
  473. package/dist/src/testing/expect.js.map +1 -0
  474. package/dist/src/testing/fixtures.d.ts +19 -0
  475. package/dist/src/testing/fixtures.d.ts.map +1 -0
  476. package/dist/src/testing/fixtures.js +69 -0
  477. package/dist/src/testing/fixtures.js.map +1 -0
  478. package/dist/src/testing/index.d.ts +260 -0
  479. package/dist/src/testing/index.d.ts.map +1 -0
  480. package/dist/src/testing/index.js +345 -0
  481. package/dist/src/testing/index.js.map +1 -0
  482. package/dist/src/testing/requests.d.ts +10 -0
  483. package/dist/src/testing/requests.d.ts.map +1 -0
  484. package/dist/src/testing/requests.js +56 -0
  485. package/dist/src/testing/requests.js.map +1 -0
  486. package/dist/src/testing/sql.d.ts +11 -0
  487. package/dist/src/testing/sql.d.ts.map +1 -0
  488. package/dist/src/testing/sql.js +55 -0
  489. package/dist/src/testing/sql.js.map +1 -0
  490. package/dist/src/types/index.d.ts +57 -0
  491. package/dist/src/types/index.d.ts.map +1 -0
  492. package/dist/src/types/index.js +73 -0
  493. package/dist/src/types/index.js.map +1 -0
  494. package/dist/src/types/phone.d.ts +11 -0
  495. package/dist/src/types/phone.d.ts.map +1 -0
  496. package/dist/src/types/phone.js +73 -0
  497. package/dist/src/types/phone.js.map +1 -0
  498. package/docs/.vitepress/config.mts +79 -0
  499. package/docs/.yarnrc.yml +1 -0
  500. package/docs/content/CONTRIBUTING.md +140 -0
  501. package/docs/content/README-DEV.md +142 -0
  502. package/docs/content/README.md +39 -0
  503. package/docs/content/authentication.md +215 -0
  504. package/docs/content/cli.md +335 -0
  505. package/docs/content/configuration.md +175 -0
  506. package/docs/content/database.md +422 -0
  507. package/docs/content/devconsole.md +123 -0
  508. package/docs/content/getting-started.md +154 -0
  509. package/docs/content/guides/test-migration-guide.md +351 -0
  510. package/docs/content/health.md +54 -0
  511. package/docs/content/helpers.md +322 -0
  512. package/docs/content/http.md +253 -0
  513. package/docs/content/index.md +147 -0
  514. package/docs/content/leader-service.md +98 -0
  515. package/docs/content/logging.md +150 -0
  516. package/docs/content/mail.md +161 -0
  517. package/docs/content/mesh-service.md +204 -0
  518. package/docs/content/public/images/devconsole/01-dashboard.png +0 -0
  519. package/docs/content/public/images/devconsole/02-routes.png +0 -0
  520. package/docs/content/public/images/devconsole/03-openapi.png +0 -0
  521. package/docs/content/public/images/devconsole/04-requests.png +0 -0
  522. package/docs/content/public/images/devconsole/05-srpc.png +0 -0
  523. package/docs/content/public/images/devconsole/06-database.png +0 -0
  524. package/docs/content/public/images/devconsole/07-health.png +0 -0
  525. package/docs/content/public/images/devconsole/08-mutex.png +0 -0
  526. package/docs/content/public/images/devconsole/09-repl.png +0 -0
  527. package/docs/content/public/images/devconsole/10-workers.png +0 -0
  528. package/docs/content/redis.md +168 -0
  529. package/docs/content/srpc.md +261 -0
  530. package/docs/content/telemetry.md +166 -0
  531. package/docs/content/testing.md +222 -0
  532. package/docs/content/types.md +215 -0
  533. package/docs/content/worker.md +177 -0
  534. package/docs/package.json +16 -0
  535. package/docs/scripts/README-SCREENSHOTS.md +145 -0
  536. package/docs/scripts/capture-devconsole-screenshots.js +184 -0
  537. package/docs/yarn.lock +2408 -0
  538. package/package.json +144 -0
  539. package/patches/@deepkit+type+1.0.19.patch +38 -0
  540. package/patches/deepkit-openapi-core+0.0.9.patch +62 -0
  541. package/src/app/base.ts +253 -0
  542. package/src/app/config.loader.ts +66 -0
  543. package/src/app/config.ts +119 -0
  544. package/src/app/const.ts +4 -0
  545. package/src/app/dev.ts +92 -0
  546. package/src/app/index.ts +6 -0
  547. package/src/app/openapi.ts +3 -0
  548. package/src/app/resolver.ts +49 -0
  549. package/src/app/shutdown.ts +55 -0
  550. package/src/app/state.ts +19 -0
  551. package/src/auth/index.ts +2 -0
  552. package/src/auth/jwt.ts +275 -0
  553. package/src/auth/provider.ts +57 -0
  554. package/src/cli/dksf-dev.ts +416 -0
  555. package/src/cli/dksf-gen-proto.ts +176 -0
  556. package/src/cli/dksf-install.ts +11 -0
  557. package/src/cli/dksf-test.ts +84 -0
  558. package/src/cli/dksf-update.ts +101 -0
  559. package/src/database/common.ts +385 -0
  560. package/src/database/dialect.ts +43 -0
  561. package/src/database/entity.ts +285 -0
  562. package/src/database/index.ts +7 -0
  563. package/src/database/migration/MigrationResetCommand.ts +72 -0
  564. package/src/database/migration/MigrationRunCommand.ts +118 -0
  565. package/src/database/migration/characters.ts +53 -0
  566. package/src/database/migration/create/MigrationCreateCommand.ts +96 -0
  567. package/src/database/migration/create/comparator.ts +467 -0
  568. package/src/database/migration/create/db-reader.ts +510 -0
  569. package/src/database/migration/create/ddl-generator.ts +755 -0
  570. package/src/database/migration/create/entity-reader.ts +471 -0
  571. package/src/database/migration/create/file-generator.ts +57 -0
  572. package/src/database/migration/create/prompt.ts +49 -0
  573. package/src/database/migration/create/schema-model.ts +102 -0
  574. package/src/database/migration/helpers.ts +7 -0
  575. package/src/database/migration/index.ts +35 -0
  576. package/src/database/migration/migration.entity.ts +10 -0
  577. package/src/database/mysql.ts +140 -0
  578. package/src/database/postgres.ts +97 -0
  579. package/src/database/types.ts +18 -0
  580. package/src/devconsole/devconsole.controller.ts +59 -0
  581. package/src/devconsole/devconsole.middleware.ts +23 -0
  582. package/src/devconsole/devconsole.srpc.ts +94 -0
  583. package/src/devconsole/devconsole.store.ts +190 -0
  584. package/src/devconsole/devconsole.ws.ts +491 -0
  585. package/src/devconsole/index.ts +1 -0
  586. package/src/devconsole/patches.ts +428 -0
  587. package/src/health/health.module.ts +30 -0
  588. package/src/health/healthcheck.controller.ts +17 -0
  589. package/src/health/healthcheck.service.ts +28 -0
  590. package/src/health/index.ts +2 -0
  591. package/src/helpers/async/context.ts +67 -0
  592. package/src/helpers/async/process.ts +49 -0
  593. package/src/helpers/async/promise.ts +16 -0
  594. package/src/helpers/data/array.ts +11 -0
  595. package/src/helpers/data/objects.ts +64 -0
  596. package/src/helpers/data/serialization.ts +11 -0
  597. package/src/helpers/data/transformer.ts +54 -0
  598. package/src/helpers/framework/decorators.ts +27 -0
  599. package/src/helpers/framework/event.ts +11 -0
  600. package/src/helpers/framework/injection.ts +47 -0
  601. package/src/helpers/index.ts +34 -0
  602. package/src/helpers/io/package.ts +26 -0
  603. package/src/helpers/io/stream.ts +79 -0
  604. package/src/helpers/redis/broadcast.ts +96 -0
  605. package/src/helpers/redis/cache.ts +28 -0
  606. package/src/helpers/redis/mutex.ts +260 -0
  607. package/src/helpers/redis/redis.ts +60 -0
  608. package/src/helpers/security/crypto.ts +133 -0
  609. package/src/helpers/security/validation.ts +16 -0
  610. package/src/helpers/utils/date.ts +13 -0
  611. package/src/helpers/utils/error.ts +155 -0
  612. package/src/helpers/utils/jsx.ts +8 -0
  613. package/src/helpers/utils/uuid.ts +8 -0
  614. package/src/http/auth.ts +156 -0
  615. package/src/http/context.ts +15 -0
  616. package/src/http/cors.ts +159 -0
  617. package/src/http/errors.ts +9 -0
  618. package/src/http/index.ts +19 -0
  619. package/src/http/kernel.ts +138 -0
  620. package/src/http/middleware.ts +59 -0
  621. package/src/http/overrides.ts +20 -0
  622. package/src/http/store.ts +86 -0
  623. package/src/http/uploads.ts +6 -0
  624. package/src/http/workflow.ts +167 -0
  625. package/src/index.ts +19 -0
  626. package/src/services/cli/invoke.ts +39 -0
  627. package/src/services/cli/repl-context.ts +63 -0
  628. package/src/services/cli/repl.ts +22 -0
  629. package/src/services/cli.ts +74 -0
  630. package/src/services/index.ts +6 -0
  631. package/src/services/leader.ts +201 -0
  632. package/src/services/logger.ts +258 -0
  633. package/src/services/mail/index.ts +117 -0
  634. package/src/services/mail/postmark.ts +37 -0
  635. package/src/services/mail/smtp.ts +46 -0
  636. package/src/services/mesh.ts +508 -0
  637. package/src/services/worker/bootstrap.ts +53 -0
  638. package/src/services/worker/cli.ts +32 -0
  639. package/src/services/worker/entity.ts +22 -0
  640. package/src/services/worker/index.ts +30 -0
  641. package/src/services/worker/queue.ts +35 -0
  642. package/src/services/worker/recorder.ts +172 -0
  643. package/src/services/worker/runner.ts +179 -0
  644. package/src/services/worker/types.ts +32 -0
  645. package/src/srpc/SrpcByteStream.ts +382 -0
  646. package/src/srpc/SrpcClient.ts +512 -0
  647. package/src/srpc/SrpcServer.ts +681 -0
  648. package/src/srpc/index.ts +15 -0
  649. package/src/srpc/types.ts +146 -0
  650. package/src/telemetry/index.ts +1 -0
  651. package/src/telemetry/otel/MariaDBInstrumentation.ts +297 -0
  652. package/src/telemetry/otel/helpers.ts +117 -0
  653. package/src/telemetry/otel/index.ts +150 -0
  654. package/src/telemetry/otel/metrics.controller.ts +50 -0
  655. package/src/telemetry/sentry.ts +58 -0
  656. package/src/testing/expect.ts +148 -0
  657. package/src/testing/fixtures.ts +62 -0
  658. package/src/testing/index.ts +355 -0
  659. package/src/testing/requests.ts +68 -0
  660. package/src/testing/sql.ts +50 -0
  661. package/src/types/index.ts +64 -0
  662. package/src/types/phone.ts +64 -0
  663. package/types.d.ts +20 -0
@@ -0,0 +1,380 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.__ΩNewEntityFields = exports.__ΩEntityOptionals = exports.__ΩOptionalKeys = exports.__ΩHasDefault = exports.__ΩEntityClassFields = exports.__ΩEntityFields = exports.__ΩEntityFieldKeys = exports.__ΩDataTypes = exports.BaseDatabase = void 0;
4
+ exports.createEntity = createEntity;
5
+ exports.createEntities = createEntities;
6
+ exports.createQueuedEntity = createQueuedEntity;
7
+ exports.createQueuedEntities = createQueuedEntities;
8
+ exports.persistEntity = persistEntity;
9
+ exports.persistEntities = persistEntities;
10
+ exports.createPersistedEntity = createPersistedEntity;
11
+ exports.createPersistedEntities = createPersistedEntities;
12
+ exports.getPKFieldForEntity = getPKFieldForEntity;
13
+ exports.getPKFieldForEntityInstance = getPKFieldForEntityInstance;
14
+ exports.getEntityOrUndefined = getEntityOrUndefined;
15
+ exports.getEntityOr404 = getEntityOr404;
16
+ exports.getEntity = getEntity;
17
+ exports.entityExists = entityExists;
18
+ exports.getEntityFields = getEntityFields;
19
+ exports.logSql = logSql;
20
+ const __ΩInstanceType = ['T', 'args', 'new', 'InstanceType', 'l>e"!R"RPde#!P"@2"h"!/#qk#\'QRb!Pde"!p)w$y'];
21
+ const __ΩPick = ['T', 'K', 'Pick', 'l+e#!e"!fRb!b"Pde""N#!w#y'];
22
+ const __ΩOmit = ['T', 'K', () => __ΩPick, () => __ΩExclude, 'Omit', 'b!b"e!!e!!ge!"o$#o##w%y'];
23
+ const __ΩExclude = ['T', 'U', 'Exclude', 'l6!Re$!RPe#!e$"qk#%QRb!b"Pde"!p)w#y'];
24
+ function __assignType(fn, args) {
25
+ fn.__type = args;
26
+ return fn;
27
+ }
28
+ /*@ts-ignore*/
29
+ var { __ΩClassType, __ΩAbstractClassType, __ΩTypeAnnotation } = require('@deepkit/core');
30
+ const http_1 = require("@deepkit/http");
31
+ /*@ts-ignore*/
32
+ var { __ΩActiveRecordClassType, __ΩFilterQuery } = require('@deepkit/orm');
33
+ const orm_1 = require("@deepkit/orm");
34
+ const sql_1 = require("@deepkit/sql");
35
+ /*@ts-ignore*/
36
+ var { __ΩReceiveType, __ΩAutoIncrement } = require('@deepkit/type');
37
+ const type_1 = require("@deepkit/type");
38
+ const lodash_1 = require("lodash");
39
+ /*@ts-ignore*/
40
+ var { __ΩMutexKey } = require('../helpers');
41
+ const helpers_1 = require("../helpers");
42
+ /*@ts-ignore*/
43
+ var { __ΩObjectKeysMatching } = require('../types');
44
+ const dialect_1 = require("./dialect");
45
+ const PreCommitHooksSymbol = Symbol('PreCommitHooks');
46
+ const PostCommitHooksSymbol = Symbol('PostCommitHooks');
47
+ orm_1.DatabaseSession.prototype.addPreCommitHook = __assignType(function (hook) {
48
+ if (!this[PreCommitHooksSymbol])
49
+ this[PreCommitHooksSymbol] = [];
50
+ this[PreCommitHooksSymbol].push(hook);
51
+ }, ['', 'hook', 'PP$`/!2""/!']);
52
+ orm_1.DatabaseSession.prototype.addPostCommitHook = __assignType(function (hook) {
53
+ if (!this[PostCommitHooksSymbol])
54
+ this[PostCommitHooksSymbol] = [];
55
+ this[PostCommitHooksSymbol].push(hook);
56
+ }, ['', 'hook', 'PP$`/!2""/!']);
57
+ orm_1.DatabaseSession.prototype.acquireSessionLock = __assignType(async function (key) {
58
+ const flattenedKey = (0, helpers_1.flattenMutexKey)(key);
59
+ const adapter = this.adapter;
60
+ const dialect = (0, dialect_1.getDialect)(adapter);
61
+ if (dialect === 'postgres') {
62
+ // use a transaction-scoped advisory lock — automatically released on commit/rollback
63
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
+ const lockQuery = adapter.rawFactory(this).create((0, sql_1.sql) `SELECT pg_advisory_xact_lock(hashtext(${flattenedKey})::bigint)`);
65
+ await lockQuery.find();
66
+ }
67
+ else {
68
+ // the idea here is to create a new row outside the transaction so that a primary key index lock isn't obtained
69
+ // then we can use an in-transaction row level update so that a row-level lock is acquired
70
+ // this will be automatically released when the transaction is committed or rolled back
71
+ // insert the lock row outside the transaction on a separate connection
72
+ const insertConn = await adapter.connectionPool.getConnection();
73
+ try {
74
+ await insertConn.run(`INSERT IGNORE INTO _locks (\`key\`) VALUES (?)`, [flattenedKey]);
75
+ }
76
+ finally {
77
+ insertConn.release();
78
+ }
79
+ // update in-transaction to acquire row-level lock
80
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
81
+ const updateQuery = adapter.rawFactory(this).create((0, sql_1.sql) `UPDATE _locks SET lastTouched=NOW() WHERE \`key\` = ${flattenedKey}`);
82
+ await updateQuery.execute();
83
+ }
84
+ }, [() => __ΩMutexKey, () => __ΩMutexKey, 'key', '', 'PPn!n"FJ2#"/$']);
85
+ const __ΩQueryClassType = ['T', () => __ΩReceiveType, () => __ΩClassType, () => __ΩAbstractClassType, () => type_1.ReflectionClass, 'QueryClassType', 'b!Pe"!o""e"!o#"e"!o$"Pe#!7%Jw&y'];
86
+ class BaseDatabase extends orm_1.Database {
87
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
+ constructor(adapter, schemas) {
89
+ super(adapter, schemas);
90
+ // we don't like the default "clone" behavior of the query builder
91
+ // todo: ideally we could keep .clone but only have it actually perform the clone if it's called from outside the lib
92
+ const originalQuery = this.query;
93
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
94
+ this.query = __assignType((type, txn) => {
95
+ const result = txn ? txn.query(type) : originalQuery.apply(this, [type]);
96
+ result.clone = () => result;
97
+ return result;
98
+ }, [() => __ΩQueryClassType, 'type', () => orm_1.DatabaseAdapter, () => orm_1.DatabaseSession, 'txn', '', 'P"o!"2"PP7#7$2%8"/&']);
99
+ }
100
+ async transaction(callback) {
101
+ let session_;
102
+ const result = await super.transaction(__assignType(async (session) => {
103
+ session_ = session;
104
+ session.withIdentityMap = false;
105
+ const result = await callback(session);
106
+ if (session[PreCommitHooksSymbol]) {
107
+ await session.flush();
108
+ for (const hook of session[PreCommitHooksSymbol]) {
109
+ await hook();
110
+ }
111
+ }
112
+ return result;
113
+ }, ['session', '', 'P"2!"/"']));
114
+ if (session_?.[PostCommitHooksSymbol]) {
115
+ for (const hook of session_[PostCommitHooksSymbol]) {
116
+ await hook();
117
+ }
118
+ }
119
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
120
+ return result; // todo: types
121
+ }
122
+ async session(worker) {
123
+ return super.session(__assignType(async (session) => {
124
+ session.withIdentityMap = false;
125
+ return worker(session);
126
+ }, ['session', '', 'P"2!"/"']));
127
+ }
128
+ async withTransaction(txn, callback) {
129
+ if (txn) {
130
+ return await callback(txn);
131
+ }
132
+ else {
133
+ return await this.transaction(__assignType(async (txn) => callback(txn), ['txn', '', 'P"2!"/"']));
134
+ }
135
+ }
136
+ async withSession(session, callback) {
137
+ if (session) {
138
+ return await callback(session);
139
+ }
140
+ else {
141
+ return await this.session(__assignType(async (session) => callback(session), ['session', '', 'P"2!"/"']));
142
+ }
143
+ }
144
+ async rawExecute(sqlIn,
145
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
146
+ existingSession) {
147
+ return this.withSession(existingSession, __assignType(async (session) => {
148
+ if (!(session.adapter instanceof sql_1.SQLDatabaseAdapter)) {
149
+ throw new Error('Cannot perform raw query on non-SQL database');
150
+ }
151
+ // raw queries executed against a session likely expect the data to already be written,
152
+ // so let's flush everything we have already queued up
153
+ if (existingSession) {
154
+ await session.flush();
155
+ }
156
+ const adapter = session.adapter;
157
+ const sqlQuery = typeof sqlIn === 'string' ? new sql_1.SqlQuery([sqlIn]) : sqlIn;
158
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
159
+ const rawQuery = adapter.rawFactory(session).create(sqlQuery);
160
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
161
+ return rawQuery.execute();
162
+ }, ['session', '', 'P"2!"/"']));
163
+ }
164
+ async rawExecuteUnsafe(sqlIn,
165
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
166
+ bindings,
167
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
168
+ existingSession) {
169
+ return this.rawExecute(this.createSqlQuery(sqlIn, bindings), existingSession);
170
+ }
171
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
172
+ async rawQuery(sqlIn, existingSession) {
173
+ return this.withSession(existingSession, __assignType(async (session) => {
174
+ if (!(session.adapter instanceof sql_1.SQLDatabaseAdapter)) {
175
+ throw new Error('Cannot perform raw query on non-SQL database');
176
+ }
177
+ // raw queries executed against a session likely expect the data to already be written,
178
+ // so let's flush everything we have already queued up
179
+ if (existingSession) {
180
+ await session.flush();
181
+ }
182
+ const adapter = session.adapter;
183
+ const sqlQuery = typeof sqlIn === 'string' ? new sql_1.SqlQuery([sqlIn]) : sqlIn;
184
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
185
+ const rawQuery = adapter.rawFactory(session).create(sqlQuery);
186
+ return await rawQuery.find();
187
+ }, ['session', '', 'P"2!"/"']));
188
+ }
189
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
190
+ async rawFind(sqlIn, existingSession, type = this.rawFind.Ω?.[0]) {
191
+ this.rawFind.Ω = undefined;
192
+ const rows = await this.rawQuery(sqlIn, existingSession);
193
+ return type
194
+ ? rows.map(__assignType(row => (type_1.deserialize.Ω = [[type, 'n!']], (0, type_1.deserialize)(row, undefined, this.adapter.platform.serializer, undefined, type)), ['row', '', 'P"2!"/"']))
195
+ : rows;
196
+ }
197
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
198
+ async rawFindUnsafe(sqlIn, bindings, existingSession, type = this.rawFindUnsafe.Ω?.[0]) {
199
+ this.rawFindUnsafe.Ω = undefined;
200
+ return (this.rawFind.Ω = [[type, 'n!']], this.rawFind(this.createSqlQuery(sqlIn, bindings), existingSession, type));
201
+ }
202
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
203
+ async rawFindOne(sqlIn, existingSession, type = this.rawFindOne.Ω?.[0]) {
204
+ this.rawFindOne.Ω = undefined;
205
+ const rows = await (this.rawFind.Ω = [[type, 'n!']], this.rawFind(sqlIn, existingSession, type));
206
+ return rows[0];
207
+ }
208
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
209
+ async rawFindOneUnsafe(sqlIn, bindings, existingSession, type = this.rawFindOneUnsafe.Ω?.[0]) {
210
+ this.rawFindOneUnsafe.Ω = undefined;
211
+ return (this.rawFindOne.Ω = [[type, 'n!']], this.rawFindOne(this.createSqlQuery(sqlIn, bindings), existingSession, type));
212
+ }
213
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
214
+ createSqlQuery(sqlIn, bindings) {
215
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
216
+ const sqlPieces = sqlIn.split('?');
217
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
218
+ sqlPieces.raw = sqlIn;
219
+ return (0, sql_1.sql)(sqlPieces, ...bindings);
220
+ }
221
+ }
222
+ exports.BaseDatabase = BaseDatabase;
223
+ BaseDatabase.__type = [() => orm_1.DatabaseAdapter, 'A', () => orm_1.Database, 'adapter', 'Type', () => __ΩClassType, () => type_1.ReflectionClass, 'schemas', 'constructor', () => __ΩQueryClassType, 'type', () => orm_1.DatabaseAdapter, () => orm_1.DatabaseSession, 'txn', () => sql_1.SQLDatabaseQuery, '', 'query', () => orm_1.DatabaseSession, 'session', 'callback', 'transaction', () => orm_1.DatabaseSession, 'worker', () => orm_1.DatabaseSession, () => orm_1.DatabaseSession, 'withTransaction', () => orm_1.DatabaseSession, () => orm_1.DatabaseSession, 'withSession', () => sql_1.SqlQuery, 'sqlIn', () => orm_1.DatabaseSession, 'existingSession', 'affectedRows', 'insertId', 'warningStatus', 'rawExecute', 'bindings', () => orm_1.DatabaseSession, 'rawExecuteUnsafe', () => sql_1.SqlQuery, () => orm_1.DatabaseSession, 'rawQuery', () => sql_1.SqlQuery, () => orm_1.DatabaseSession, () => __ΩReceiveType, 'rawFind', () => orm_1.DatabaseSession, () => __ΩReceiveType, 'rawFindUnsafe', () => sql_1.SqlQuery, () => orm_1.DatabaseSession, () => __ΩReceiveType, 'rawFindOne', () => orm_1.DatabaseSession, () => __ΩReceiveType, 'rawFindOneUnsafe', () => sql_1.SqlQuery, 'createSqlQuery', 'BaseDatabase', 'P7!c"Pe"!7#Pe"!2$P"w%n&P"7\'JF2(8"0)P"o*"2+8PP7,7-2.8P"7//031PPPe$!7223"`/024"`05PPPe$!7623"`/027"`03PPPe$!78-J2.PPe$!7923"`/024"`0:PPPe$!7;-J23PPe$!7<23"`/024"`0=PPP7>&J2?P"7@2A8P\'4B\'4C\'4DM`0EP&2?"F2FP"7G2A8P\'4B\'4C\'4DM`0HPPP7I&J2?P"7J2A8"0KPPP7L&J2?P"7M2A8"oN"2+8"F`0OP&2?"F2FP"7P2A8"oQ"2+8"F`0RPPP7S&J2?P"7T2A8"oU"2+8P"-J`0VP&2?"F2FP"7W2A8"oX"2+8P"-J`0YP&2?"F2FP7Z0[5e!!6"w\\'];
224
+ const __ΩFieldsMatching = ['T', 'V', () => Function, 'FieldsMatching', 'lM!Re&!RPe&!e%!fPu#qk#%QR!RPe$!e#!fe$"qk):QRb!b"Pde"!gN<!e!!gfw$y'];
225
+ const __ΩDataTypes = ['DataTypes', 'P&\')T%,Jw!y'];
226
+ exports.__ΩDataTypes = __ΩDataTypes;
227
+ const __ΩEntityFieldKeys = ['T', () => __ΩFieldsMatching, () => __ΩDataTypes, 'EntityFieldKeys', 'b!e!!n#o"#w$y'];
228
+ exports.__ΩEntityFieldKeys = __ΩEntityFieldKeys;
229
+ const __ΩEntityFields = ['T', () => __ΩPick, () => __ΩEntityFieldKeys, 'EntityFields', 'b!e!!e!!o#"o"#w$y'];
230
+ exports.__ΩEntityFields = __ΩEntityFields;
231
+ const __ΩEntityClassFields = ['T', () => __ΩPick, () => __ΩInstanceType, () => __ΩEntityFieldKeys, () => __ΩInstanceType, 'EntityClassFields', 'b!e!!o#"e!!o%"o$"o"#w&y'];
232
+ exports.__ΩEntityClassFields = __ΩEntityClassFields;
233
+ const __ΩHasDefault = [() => __ΩTypeAnnotation, "dksf:hasDefault", 'HasDefault', '."o!"w#y'];
234
+ exports.__ΩHasDefault = __ΩHasDefault;
235
+ const __ΩOptionalKeys = ['T', () => __ΩObjectKeysMatching, () => __ΩHasDefault, () => __ΩObjectKeysMatching, () => __ΩObjectKeysMatching, () => __ΩAutoIncrement, 'OptionalKeys', 'b!Pe"!n#o"#e"!,o$#e"!n&o%#Jw\'y'];
236
+ exports.__ΩOptionalKeys = __ΩOptionalKeys;
237
+ const __ΩEntityOptionals = ['T', () => __ΩPick, () => __ΩOptionalKeys, () => __ΩOmit, () => __ΩOptionalKeys, 'EntityOptionals', 'l3e$!e"!fRe$!e"!fRb!PPde#!e#!o#"o"#gN#"Pde#!e#!o%"o$#gN+!Kw&y'];
238
+ exports.__ΩEntityOptionals = __ΩEntityOptionals;
239
+ const __ΩNewEntityFields = ['T', () => __ΩEntityOptionals, () => __ΩEntityFields, 'NewEntityFields', 'b!e!!o#"o""w$y'];
240
+ exports.__ΩNewEntityFields = __ΩNewEntityFields;
241
+ function createEntity(Entity, data) {
242
+ const entity = new Entity();
243
+ Object.assign(entity, data);
244
+ // fill in the nulls and auto-increments
245
+ const type = type_1.ReflectionClass.from(Entity);
246
+ for (const property of type.getProperties()) {
247
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
248
+ if (data[property.name] === undefined) {
249
+ if (property.isAutoIncrement()) {
250
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
251
+ entity[property.name] = 0;
252
+ }
253
+ else if (property.isNullable()) {
254
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
255
+ entity[property.name] = null;
256
+ }
257
+ }
258
+ }
259
+ return entity;
260
+ }
261
+ createEntity.__type = [() => __ΩClassType, 'Entity', () => __ΩNewEntityFields, 'data', 'createEntity', 'P"o!"2""o#"2$"/%'];
262
+ function createEntities(Entity, data) {
263
+ return data.map(__assignType(d => createEntity(Entity, d), ['d', '', 'P"2!"/"']));
264
+ }
265
+ createEntities.__type = [() => __ΩClassType, 'Entity', () => __ΩNewEntityFields, 'data', 'createEntities', 'P"o!"2""o#"F2$"F/%'];
266
+ function createQueuedEntity(Entity, data,
267
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
268
+ session) {
269
+ const entity = createEntity(Entity, data);
270
+ session.add(entity);
271
+ return entity;
272
+ }
273
+ createQueuedEntity.__type = [() => __ΩClassType, 'Entity', () => __ΩNewEntityFields, 'data', () => orm_1.DatabaseSession, 'session', 'createQueuedEntity', 'P"o!"2""o#"2$P"7%2&"/\''];
274
+ function createQueuedEntities(Entity, data,
275
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
276
+ session) {
277
+ const entities = createEntities(Entity, data);
278
+ session.add(...entities);
279
+ return entities;
280
+ }
281
+ createQueuedEntities.__type = [() => __ΩClassType, 'Entity', () => __ΩNewEntityFields, 'data', () => orm_1.DatabaseSession, 'session', 'createQueuedEntities', 'P"o!"2""o#"F2$P"7%2&"F/\''];
282
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
283
+ async function persistEntity(entity, session) {
284
+ return persistEntities([entity], session);
285
+ }
286
+ persistEntity.__type = ['entity', () => orm_1.DatabaseSession, 'session', 'persistEntity', 'P"2!P"7"2#8"/$'];
287
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
288
+ async function persistEntities(entities, session) {
289
+ if (session) {
290
+ session.add(...entities);
291
+ await session.flush();
292
+ }
293
+ else {
294
+ for (const entity of entities) {
295
+ await entity.save();
296
+ }
297
+ }
298
+ }
299
+ persistEntities.__type = ['entities', () => orm_1.DatabaseSession, 'session', 'persistEntities', 'P"F2!P"7"2#8"/$'];
300
+ async function createPersistedEntity(Entity, data,
301
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
302
+ session) {
303
+ const entity = createEntity(Entity, data);
304
+ await persistEntity(entity, session);
305
+ return entity;
306
+ }
307
+ createPersistedEntity.__type = [() => __ΩClassType, 'Entity', () => __ΩNewEntityFields, 'data', () => orm_1.DatabaseSession, 'session', 'createPersistedEntity', 'P"o!"2""o#"2$P"7%2&8"`/\''];
308
+ async function createPersistedEntities(Entity, data,
309
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
310
+ session) {
311
+ const entities = createEntities(Entity, data);
312
+ await persistEntities(entities, session);
313
+ return entities;
314
+ }
315
+ createPersistedEntities.__type = [() => __ΩClassType, 'Entity', () => __ΩNewEntityFields, 'data', () => orm_1.DatabaseSession, 'session', 'createPersistedEntities', 'P"o!"2""o#"F2$P"7%2&8"F`/\''];
316
+ const PKFieldCache = (WeakMap.Ω = [[() => __ΩActiveRecordClassType, 'n!'], ['&']], new WeakMap());
317
+ function getPKFieldForEntity(EntityClass) {
318
+ if (PKFieldCache.has(EntityClass))
319
+ return PKFieldCache.get(EntityClass);
320
+ const pkField = type_1.ReflectionClass.from(EntityClass).getPrimary().name;
321
+ PKFieldCache.set(EntityClass, pkField);
322
+ return pkField;
323
+ }
324
+ getPKFieldForEntity.__type = [() => __ΩActiveRecordClassType, 'EntityClass', 'getPKFieldForEntity', 'Pn!2""/#'];
325
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
326
+ function getPKFieldForEntityInstance(entity) {
327
+ if (!(entity instanceof orm_1.ActiveRecord)) {
328
+ if (typeof entity === 'object' && 'id' in entity)
329
+ return 'id';
330
+ throw new Error('Entity does not extend ActiveRecord class and does not have "id" field');
331
+ }
332
+ return getPKFieldForEntity(entity.constructor);
333
+ }
334
+ getPKFieldForEntityInstance.__type = ['entity', 'getPKFieldForEntityInstance', 'P"2!"/"'];
335
+ const __ΩEntityFilter = ['T', () => __ΩFilterQuery, () => __ΩInstanceType, 'EntityFilter', 'b!Pe"!o#"o""&\'Jw$y'];
336
+ function getEntityFilter(EntityClass, filter) {
337
+ if (typeof filter === 'object')
338
+ return filter;
339
+ const pkField = getPKFieldForEntity(EntityClass);
340
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
341
+ return { [pkField]: filter };
342
+ }
343
+ getEntityFilter.__type = ['EntityClass', () => __ΩEntityFilter, 'filter', () => __ΩFilterQuery, () => __ΩInstanceType, 'getEntityFilter', 'P"2!"o""2#"o%"o$"/&'];
344
+ async function getEntityOrUndefined(EntityClass, filter) {
345
+ const query = EntityClass.query();
346
+ const resolvedFilter = getEntityFilter(EntityClass, filter);
347
+ return query.filter(resolvedFilter).findOneOrUndefined();
348
+ }
349
+ getEntityOrUndefined.__type = ['EntityClass', () => __ΩEntityFilter, 'filter', () => __ΩInstanceType, 'getEntityOrUndefined', 'P"2!"o""2#P"o$"-J`/%'];
350
+ async function getEntityOr404(EntityClass, filter) {
351
+ const entity = await getEntityOrUndefined(EntityClass, filter);
352
+ if (!entity)
353
+ throw new http_1.HttpNotFoundError();
354
+ return entity;
355
+ }
356
+ getEntityOr404.__type = ['EntityClass', () => __ΩEntityFilter, 'filter', () => __ΩInstanceType, 'getEntityOr404', 'P"2!"o""2#"o$"`/%'];
357
+ async function getEntity(EntityClass, filter) {
358
+ const entity = await getEntityOrUndefined(EntityClass, filter);
359
+ if (!entity)
360
+ throw new orm_1.ItemNotFound();
361
+ return entity;
362
+ }
363
+ getEntity.__type = ['EntityClass', () => __ΩEntityFilter, 'filter', () => __ΩInstanceType, 'getEntity', 'P"2!"o""2#"o$"`/%'];
364
+ async function entityExists(EntityClass, filter) {
365
+ const query = EntityClass.query();
366
+ const resolvedFilter = getEntityFilter(EntityClass, filter);
367
+ return query.filter(resolvedFilter).has();
368
+ }
369
+ entityExists.__type = ['EntityClass', () => __ΩEntityFilter, 'filter', 'entityExists', 'P"2!"o""2#)`/$'];
370
+ function getEntityFields(entity) {
371
+ return (0, lodash_1.pick)(entity, Object.keys(entity));
372
+ }
373
+ getEntityFields.__type = ['entity', () => __ΩEntityFields, 'getEntityFields', 'P"2!"o""/#'];
374
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
375
+ function logSql(sql, bindings = []) {
376
+ const logBindings = [...bindings];
377
+ console.log(sql.replace(/\?/g, () => JSON.stringify(logBindings.shift())));
378
+ }
379
+ logSql.__type = ['sql', 'bindings', () => [], 'logSql', 'P&2!"F2">#"/$'];
380
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/database/common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { SQLDatabaseAdapter } from '@deepkit/sql';
2
+ export type Dialect = 'mysql' | 'postgres';
3
+ export declare function getDialect(adapter: SQLDatabaseAdapter): Dialect;
4
+ export declare function quoteId(dialect: Dialect, name: string): string;
5
+ export declare function tableExistsSql(dialect: Dialect, tableName: string, schema?: string): string;
6
+ export declare function listTablesSql(dialect: Dialect, schema?: string): string;
7
+ export declare function listDatabasesSql(dialect: Dialect): string;
8
+ export declare function currentDatabaseSql(dialect: Dialect): string;
9
+ export declare type __ΩDialect = any[];
10
+ //# sourceMappingURL=dialect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../../../src/database/dialect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAE3C,wBAAgB,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAK/D;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAG9D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,SAAW,GAAG,MAAM,CAK7F;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAW,GAAG,MAAM,CAKzE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAKzD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAK3D"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.__ΩDialect = void 0;
4
+ exports.getDialect = getDialect;
5
+ exports.quoteId = quoteId;
6
+ exports.tableExistsSql = tableExistsSql;
7
+ exports.listTablesSql = listTablesSql;
8
+ exports.listDatabasesSql = listDatabasesSql;
9
+ exports.currentDatabaseSql = currentDatabaseSql;
10
+ const sql_1 = require("@deepkit/sql");
11
+ const __ΩDialect = ["mysql", "postgres", 'Dialect', 'P.!."Jw#y'];
12
+ exports.__ΩDialect = __ΩDialect;
13
+ function getDialect(adapter) {
14
+ const name = adapter.getName();
15
+ if (name === 'mysql')
16
+ return 'mysql';
17
+ if (name === 'postgres')
18
+ return 'postgres';
19
+ throw new Error(`Unsupported database dialect: ${name}`);
20
+ }
21
+ getDialect.__type = [() => sql_1.SQLDatabaseAdapter, 'adapter', () => __ΩDialect, 'getDialect', 'PP7!2"n#/$'];
22
+ function quoteId(dialect, name) {
23
+ if (dialect === 'mysql')
24
+ return `\`${name.replace(/`/g, '``')}\``;
25
+ return `"${name.replace(/"/g, '""')}"`;
26
+ }
27
+ quoteId.__type = [() => __ΩDialect, 'dialect', 'name', 'quoteId', 'Pn!2"&2#&/$'];
28
+ function tableExistsSql(dialect, tableName, schema = 'public') {
29
+ if (dialect === 'mysql') {
30
+ return `SHOW TABLES LIKE '${tableName}'`;
31
+ }
32
+ return `SELECT tablename FROM pg_tables WHERE schemaname = '${schema}' AND tablename = '${tableName}'`;
33
+ }
34
+ tableExistsSql.__type = [() => __ΩDialect, 'dialect', 'tableName', 'schema', 'tableExistsSql', 'Pn!2"&2#"2$&/%'];
35
+ function listTablesSql(dialect, schema = 'public') {
36
+ if (dialect === 'mysql') {
37
+ return `SHOW TABLES`;
38
+ }
39
+ return `SELECT tablename FROM pg_tables WHERE schemaname = '${schema}'`;
40
+ }
41
+ listTablesSql.__type = [() => __ΩDialect, 'dialect', 'schema', 'listTablesSql', 'Pn!2""2#&/$'];
42
+ function listDatabasesSql(dialect) {
43
+ if (dialect === 'mysql') {
44
+ return `SHOW DATABASES`;
45
+ }
46
+ return `SELECT datname AS "Database" FROM pg_database WHERE datistemplate = false`;
47
+ }
48
+ listDatabasesSql.__type = [() => __ΩDialect, 'dialect', 'listDatabasesSql', 'Pn!2"&/#'];
49
+ function currentDatabaseSql(dialect) {
50
+ if (dialect === 'mysql') {
51
+ return `SELECT DATABASE()`;
52
+ }
53
+ return `SELECT current_database()`;
54
+ }
55
+ currentDatabaseSql.__type = [() => __ΩDialect, 'dialect', 'currentDatabaseSql', 'Pn!2"&/#'];
56
+ //# sourceMappingURL=dialect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.js","sourceRoot":"","sources":["../../../src/database/dialect.ts"],"names":[],"mappings":";;;AAIA,gCAKC;AAED,0BAGC;AAED,wCAKC;AAED,sCAKC;AAED,4CAKC;AAED,gDAKC;AA1CD,sCAAkD;;;AAIlD,SAAgB,UAAU,CAAC,OAA2B;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/B,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC;IACrC,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IAC3C,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC;;AAED,SAAgB,OAAO,CAAC,OAAgB,EAAE,IAAY;IAClD,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAClE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC3C,CAAC;;AAED,SAAgB,cAAc,CAAC,OAAgB,EAAE,SAAiB,EAAE,MAAM,GAAG,QAAQ;IACjF,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,qBAAqB,SAAS,GAAG,CAAC;IAC7C,CAAC;IACD,OAAO,uDAAuD,MAAM,sBAAsB,SAAS,GAAG,CAAC;AAC3G,CAAC;;AAED,SAAgB,aAAa,CAAC,OAAgB,EAAE,MAAM,GAAG,QAAQ;IAC7D,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,aAAa,CAAC;IACzB,CAAC;IACD,OAAO,uDAAuD,MAAM,GAAG,CAAC;AAC5E,CAAC;;AAED,SAAgB,gBAAgB,CAAC,OAAgB;IAC7C,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IACD,OAAO,2EAA2E,CAAC;AACvF,CAAC;;AAED,SAAgB,kBAAkB,CAAC,OAAgB;IAC/C,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IACD,OAAO,2BAA2B,CAAC;AACvC,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { ActiveRecord, ActiveRecordClassType, DatabaseAdapter, DatabaseSession, FilterQuery } from '@deepkit/orm';
2
+ import { EntityClassFields, EntityFields } from './common';
3
+ export declare function getDirtyDetails<T extends ActiveRecord, K extends keyof T>(entity: T): Record<K, {
4
+ original: T[K];
5
+ current: T[K];
6
+ }>;
7
+ export declare function revertDirtyEntity(entity: ActiveRecord): void;
8
+ export declare function getDirtyFields<T extends ActiveRecord>(entity: T): (keyof T)[];
9
+ export declare function isEntityDirty(entity: ActiveRecord): boolean;
10
+ export declare function isFieldDirty<T extends ActiveRecord>(entity: T, field: keyof T): boolean;
11
+ export declare function getFieldOriginal<T extends ActiveRecord, K extends keyof T>(entity: T, field: K): T[K] | undefined;
12
+ export declare function getEntityOriginal<T extends ActiveRecord>(entity: T): EntityFields<T>;
13
+ export declare class BaseEntity extends ActiveRecord {
14
+ }
15
+ export type EntityPick<T extends ActiveRecord, K extends keyof EntityFields<T>> = ActiveRecord & Pick<T, K>;
16
+ interface IGetEntityOptions<Schema extends ActiveRecordClassType, Field extends keyof EntityClassFields<Schema>> {
17
+ schema: Schema;
18
+ ids: any[];
19
+ keyField?: Field;
20
+ fields?: Field[];
21
+ filter?: FilterQuery<InstanceType<Schema>>;
22
+ txn?: DatabaseSession<DatabaseAdapter>;
23
+ }
24
+ export declare function getKeyedEntities<Schema extends ActiveRecordClassType, Fields extends keyof EntityClassFields<Schema>>(options: IGetEntityOptions<Schema, Fields>): Promise<import("lodash").Dictionary<EntityPick<InstanceType<Schema>, Fields>>>;
25
+ export declare function getKeyedGroupedEntities<Schema extends ActiveRecordClassType, Fields extends keyof EntityClassFields<Schema>>(options: IGetEntityOptions<Schema, Fields>): Promise<import("lodash").Dictionary<EntityPick<InstanceType<Schema>, Fields>[]>>;
26
+ export declare function getEntitiesById<Schema extends ActiveRecordClassType, Fields extends keyof EntityClassFields<Schema>>(options: IGetEntityOptions<Schema, Fields>): Promise<EntityPick<InstanceType<Schema>, Fields>[]>;
27
+ export declare function getEntitiesByIdWithKeyName<Schema extends ActiveRecordClassType, Fields extends keyof EntityClassFields<Schema>>({ schema, ids, keyField, fields, filter, txn }: IGetEntityOptions<Schema, Fields>): Promise<{
28
+ keyField: string | Fields;
29
+ entities: EntityPick<InstanceType<Schema>, Fields>[];
30
+ }>;
31
+ interface IResolveRelatedOptions<Schema extends ActiveRecord, IdKey extends keyof EntityFields<Schema>, RelatedSchema extends ActiveRecordClassType, RelatedKey extends string, RelatedFields extends keyof EntityClassFields<RelatedSchema>> {
32
+ src: Schema[];
33
+ srcIdField: IdKey;
34
+ targetField: RelatedKey;
35
+ targetSchema: RelatedSchema;
36
+ targetFields?: RelatedFields[];
37
+ txn?: DatabaseSession<DatabaseAdapter>;
38
+ }
39
+ export declare function resolveRelated<Schema extends ActiveRecord, IdKey extends keyof EntityFields<Schema>, RelatedSchema extends ActiveRecordClassType, RelatedKey extends string, RelatedFields extends keyof EntityClassFields<RelatedSchema>>(options: IResolveRelatedOptions<Schema, IdKey, RelatedSchema, RelatedKey, RelatedFields>): Promise<(Omit<Schema, IdKey> & (null extends Schema[IdKey] ? { [K in RelatedKey]?: EntityPick<InstanceType<RelatedSchema>, RelatedFields> | undefined; } : { [K_1 in RelatedKey]: EntityPick<InstanceType<RelatedSchema>, RelatedFields>; }))[]>;
40
+ interface IResolveRelatedByPivotOptions<Schema extends object, SrcIdField extends keyof EntityFields<Schema>, PivotSchema extends ActiveRecordClassType, PivotIdKey extends keyof EntityClassFields<PivotSchema>, PivotRelatedKey extends keyof EntityClassFields<PivotSchema>, RelatedSchema extends ActiveRecordClassType, RelatedKey extends string, RelatedFields extends keyof EntityClassFields<RelatedSchema>> {
41
+ src: Schema[];
42
+ srcIdField?: SrcIdField;
43
+ pivotSchema: PivotSchema;
44
+ pivotIdKey: PivotIdKey;
45
+ pivotRelatedKey: PivotRelatedKey;
46
+ pivotFilter?: FilterQuery<InstanceType<PivotSchema>>;
47
+ targetField: RelatedKey;
48
+ targetSchema: RelatedSchema;
49
+ targetFields?: RelatedFields[];
50
+ txn?: DatabaseSession<DatabaseAdapter>;
51
+ }
52
+ export declare function resolveRelatedByPivot<Schema extends object, SrcIdField extends keyof EntityFields<Schema>, PivotSchema extends ActiveRecordClassType, PivotIdKey extends keyof EntityClassFields<PivotSchema>, PivotRelatedKey extends keyof EntityClassFields<PivotSchema>, RelatedSchema extends ActiveRecordClassType, RelatedKey extends string, RelatedFields extends keyof EntityClassFields<RelatedSchema>>(options: IResolveRelatedByPivotOptions<Schema, SrcIdField, PivotSchema, PivotIdKey, PivotRelatedKey, RelatedSchema, RelatedKey, RelatedFields>): Promise<(Schema & { [K in RelatedKey]: (ActiveRecord & Pick<InstanceType<RelatedSchema>, RelatedFields> & {
53
+ pivot: InstanceType<PivotSchema>;
54
+ })[]; })[]>;
55
+ export declare function resolveRelatedByPivotForOne<Schema extends object, SrcIdField extends keyof EntityFields<Schema>, PivotSchema extends ActiveRecordClassType, PivotIdKey extends keyof EntityClassFields<PivotSchema>, PivotRelatedKey extends keyof EntityClassFields<PivotSchema>, RelatedSchema extends ActiveRecordClassType, RelatedKey extends string, RelatedFields extends keyof EntityClassFields<RelatedSchema>>(options: Omit<IResolveRelatedByPivotOptions<Schema, SrcIdField, PivotSchema, PivotIdKey, PivotRelatedKey, RelatedSchema, RelatedKey, RelatedFields>, 'src'> & {
56
+ src: Schema;
57
+ }): Promise<Schema & { [K in RelatedKey]: (ActiveRecord & Pick<InstanceType<RelatedSchema>, RelatedFields> & {
58
+ pivot: InstanceType<PivotSchema>;
59
+ })[]; }>;
60
+ export {};
61
+ export declare type __ΩEntityPick = any[];
62
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/database/entity.ts"],"names":[],"mappings":"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"}