orcaq 1.0.20

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 (1018) hide show
  1. package/.output/nitro.json +15 -0
  2. package/.output/public/_nuxt/8qASMGdV.js +1 -0
  3. package/.output/public/_nuxt/9lJACZIQ.js +19 -0
  4. package/.output/public/_nuxt/B2DnNiWd.js +1 -0
  5. package/.output/public/_nuxt/B6E6ObS_.js +8 -0
  6. package/.output/public/_nuxt/BH83_dXo.js +39 -0
  7. package/.output/public/_nuxt/BIKqrFbQ.js +1 -0
  8. package/.output/public/_nuxt/BNjPC06x.js +1 -0
  9. package/.output/public/_nuxt/BPQ-Pz1w.js +39 -0
  10. package/.output/public/_nuxt/BRpgKkVT.js +51 -0
  11. package/.output/public/_nuxt/BTCLPbPY.js +4 -0
  12. package/.output/public/_nuxt/BUV-RarV.js +1 -0
  13. package/.output/public/_nuxt/Bh6RgYlO.js +1 -0
  14. package/.output/public/_nuxt/Bq3cyzOD.js +1 -0
  15. package/.output/public/_nuxt/Bt9sU68B.js +9 -0
  16. package/.output/public/_nuxt/BwpH2ZxJ.js +1 -0
  17. package/.output/public/_nuxt/C25Tmn1m.js +1 -0
  18. package/.output/public/_nuxt/C2HlI1ss.js +1 -0
  19. package/.output/public/_nuxt/CU3ZV9iV.js +1 -0
  20. package/.output/public/_nuxt/CbcyysXi.js +1 -0
  21. package/.output/public/_nuxt/CepyvMhE.js +1 -0
  22. package/.output/public/_nuxt/CrgoNCm2.js +2 -0
  23. package/.output/public/_nuxt/CuBKbBH_.js +1 -0
  24. package/.output/public/_nuxt/CulD8qYQ.js +193 -0
  25. package/.output/public/_nuxt/CustomEdge.BNBpjEHb.css +1 -0
  26. package/.output/public/_nuxt/CylkLpwm.js +1 -0
  27. package/.output/public/_nuxt/D-bWLYHw.js +1 -0
  28. package/.output/public/_nuxt/D-zecHND.js +1 -0
  29. package/.output/public/_nuxt/D8vj6kFe.js +160 -0
  30. package/.output/public/_nuxt/DIETYtCL.js +1 -0
  31. package/.output/public/_nuxt/DJ4vUzxS.js +1 -0
  32. package/.output/public/_nuxt/DK-itzXx.js +8 -0
  33. package/.output/public/_nuxt/DL3T5jYo.js +3867 -0
  34. package/.output/public/_nuxt/DUsuhY9i.js +1 -0
  35. package/.output/public/_nuxt/DXV2HFBA.js +224 -0
  36. package/.output/public/_nuxt/Dh2zppOR.js +1 -0
  37. package/.output/public/_nuxt/DlAUqK2U.js +1 -0
  38. package/.output/public/_nuxt/DlmSeCnw.js +5 -0
  39. package/.output/public/_nuxt/DswTpYG4.js +1 -0
  40. package/.output/public/_nuxt/DynamicTable.DJeANwbG.css +1 -0
  41. package/.output/public/_nuxt/G830WtVn.js +1 -0
  42. package/.output/public/_nuxt/ICwM1E4-.js +15 -0
  43. package/.output/public/_nuxt/QZbJy9YW.js +31 -0
  44. package/.output/public/_nuxt/QuickQueryTable.DS_ON57S.css +1 -0
  45. package/.output/public/_nuxt/UXhX8z2W.js +1 -0
  46. package/.output/public/_nuxt/WrapperErdDiagram.DwhUd9Wr.css +1 -0
  47. package/.output/public/_nuxt/_fileId_.DmPfwyyD.css +1 -0
  48. package/.output/public/_nuxt/_tabViewId_.9Axt3zoi.css +1 -0
  49. package/.output/public/_nuxt/builds/latest.json +1 -0
  50. package/.output/public/_nuxt/builds/meta/6364d5cf-4642-479f-ba12-6440c56702af.json +1 -0
  51. package/.output/public/_nuxt/default.DixIpIal.css +1 -0
  52. package/.output/public/_nuxt/entry.GqPNPe1e.css +1 -0
  53. package/.output/public/_nuxt/index.CrXmf4gr.css +1 -0
  54. package/.output/public/_nuxt/ivUnXl9B.js +1 -0
  55. package/.output/public/_nuxt/pAheHeBV.js +36 -0
  56. package/.output/public/_nuxt/s5fCn4j5.js +1 -0
  57. package/.output/public/favicon.ico +0 -0
  58. package/.output/public/logo.png +0 -0
  59. package/.output/public/manifest.json +25 -0
  60. package/.output/public/robots.txt +1 -0
  61. package/.output/public/vite.svg +1 -0
  62. package/.output/server/chunks/_/error-500.mjs +8 -0
  63. package/.output/server/chunks/_/error-500.mjs.map +1 -0
  64. package/.output/server/chunks/build/client.manifest.mjs +773 -0
  65. package/.output/server/chunks/build/client.manifest.mjs.map +1 -0
  66. package/.output/server/chunks/nitro/nitro.mjs +6432 -0
  67. package/.output/server/chunks/nitro/nitro.mjs.map +1 -0
  68. package/.output/server/chunks/routes/api/ai/chat.mjs +77 -0
  69. package/.output/server/chunks/routes/api/ai/chat.mjs.map +1 -0
  70. package/.output/server/chunks/routes/api/execute-bulk-delete.mjs +100 -0
  71. package/.output/server/chunks/routes/api/execute-bulk-delete.mjs.map +1 -0
  72. package/.output/server/chunks/routes/api/execute-bulk-update.mjs +105 -0
  73. package/.output/server/chunks/routes/api/execute-bulk-update.mjs.map +1 -0
  74. package/.output/server/chunks/routes/api/execute.mjs +47 -0
  75. package/.output/server/chunks/routes/api/execute.mjs.map +1 -0
  76. package/.output/server/chunks/routes/api/get-one-function.mjs +28 -0
  77. package/.output/server/chunks/routes/api/get-one-function.mjs.map +1 -0
  78. package/.output/server/chunks/routes/api/get-one-table.mjs +180 -0
  79. package/.output/server/chunks/routes/api/get-one-table.mjs.map +1 -0
  80. package/.output/server/chunks/routes/api/get-over-view-function.mjs +41 -0
  81. package/.output/server/chunks/routes/api/get-over-view-function.mjs.map +1 -0
  82. package/.output/server/chunks/routes/api/get-over-view-tables.mjs +53 -0
  83. package/.output/server/chunks/routes/api/get-over-view-tables.mjs.map +1 -0
  84. package/.output/server/chunks/routes/api/get-reverse-table-schemas.mjs +112 -0
  85. package/.output/server/chunks/routes/api/get-reverse-table-schemas.mjs.map +1 -0
  86. package/.output/server/chunks/routes/api/get-schema-meta-data.mjs +152 -0
  87. package/.output/server/chunks/routes/api/get-schema-meta-data.mjs.map +1 -0
  88. package/.output/server/chunks/routes/api/get-table-size.mjs +49 -0
  89. package/.output/server/chunks/routes/api/get-table-size.mjs.map +1 -0
  90. package/.output/server/chunks/routes/api/get-table-structure.mjs +111 -0
  91. package/.output/server/chunks/routes/api/get-table-structure.mjs.map +1 -0
  92. package/.output/server/chunks/routes/api/get-tables.mjs +287 -0
  93. package/.output/server/chunks/routes/api/get-tables.mjs.map +1 -0
  94. package/.output/server/chunks/routes/api/getMetricMonitor.mjs +46 -0
  95. package/.output/server/chunks/routes/api/getMetricMonitor.mjs.map +1 -0
  96. package/.output/server/chunks/routes/api/managment-connection/health-check.mjs +28 -0
  97. package/.output/server/chunks/routes/api/managment-connection/health-check.mjs.map +1 -0
  98. package/.output/server/chunks/routes/api/raw-execute.mjs +48 -0
  99. package/.output/server/chunks/routes/api/raw-execute.mjs.map +1 -0
  100. package/.output/server/chunks/routes/renderer.mjs +316 -0
  101. package/.output/server/chunks/routes/renderer.mjs.map +1 -0
  102. package/.output/server/chunks/virtual/_virtual_spa-template.mjs +4 -0
  103. package/.output/server/chunks/virtual/_virtual_spa-template.mjs.map +1 -0
  104. package/.output/server/index.mjs +14 -0
  105. package/.output/server/index.mjs.map +1 -0
  106. package/.output/server/node_modules/@ai-sdk/anthropic/dist/index.mjs +4374 -0
  107. package/.output/server/node_modules/@ai-sdk/anthropic/package.json +74 -0
  108. package/.output/server/node_modules/@ai-sdk/gateway/dist/index.mjs +1082 -0
  109. package/.output/server/node_modules/@ai-sdk/gateway/package.json +69 -0
  110. package/.output/server/node_modules/@ai-sdk/google/dist/index.mjs +2007 -0
  111. package/.output/server/node_modules/@ai-sdk/google/package.json +74 -0
  112. package/.output/server/node_modules/@ai-sdk/openai/dist/index.mjs +5956 -0
  113. package/.output/server/node_modules/@ai-sdk/openai/package.json +74 -0
  114. package/.output/server/node_modules/@ai-sdk/openai-compatible/dist/index.mjs +1551 -0
  115. package/.output/server/node_modules/@ai-sdk/openai-compatible/package.json +74 -0
  116. package/.output/server/node_modules/@ai-sdk/provider/dist/index.mjs +377 -0
  117. package/.output/server/node_modules/@ai-sdk/provider/package.json +57 -0
  118. package/.output/server/node_modules/@ai-sdk/provider-utils/dist/index.mjs +2549 -0
  119. package/.output/server/node_modules/@ai-sdk/provider-utils/package.json +75 -0
  120. package/.output/server/node_modules/@ai-sdk/xai/dist/index.mjs +2214 -0
  121. package/.output/server/node_modules/@ai-sdk/xai/package.json +68 -0
  122. package/.output/server/node_modules/@babel/parser/lib/index.js +14246 -0
  123. package/.output/server/node_modules/@babel/parser/package.json +50 -0
  124. package/.output/server/node_modules/@iconify/utils/lib/colors/index.mjs +350 -0
  125. package/.output/server/node_modules/@iconify/utils/lib/colors/keywords.mjs +188 -0
  126. package/.output/server/node_modules/@iconify/utils/lib/css/common.mjs +90 -0
  127. package/.output/server/node_modules/@iconify/utils/lib/css/format.mjs +38 -0
  128. package/.output/server/node_modules/@iconify/utils/lib/css/icon.mjs +76 -0
  129. package/.output/server/node_modules/@iconify/utils/lib/css/icons.mjs +168 -0
  130. package/.output/server/node_modules/@iconify/utils/lib/customisations/bool.mjs +22 -0
  131. package/.output/server/node_modules/@iconify/utils/lib/customisations/defaults.mjs +14 -0
  132. package/.output/server/node_modules/@iconify/utils/lib/customisations/flip.mjs +16 -0
  133. package/.output/server/node_modules/@iconify/utils/lib/customisations/merge.mjs +22 -0
  134. package/.output/server/node_modules/@iconify/utils/lib/customisations/rotate.mjs +33 -0
  135. package/.output/server/node_modules/@iconify/utils/lib/emoji/cleanup.mjs +51 -0
  136. package/.output/server/node_modules/@iconify/utils/lib/emoji/convert.mjs +84 -0
  137. package/.output/server/node_modules/@iconify/utils/lib/emoji/data.mjs +16 -0
  138. package/.output/server/node_modules/@iconify/utils/lib/emoji/format.mjs +44 -0
  139. package/.output/server/node_modules/@iconify/utils/lib/emoji/parse.mjs +58 -0
  140. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/base.mjs +231 -0
  141. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/create.mjs +31 -0
  142. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/numbers.mjs +164 -0
  143. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/similar.mjs +216 -0
  144. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/tree.mjs +113 -0
  145. package/.output/server/node_modules/@iconify/utils/lib/emoji/replace/find.mjs +104 -0
  146. package/.output/server/node_modules/@iconify/utils/lib/emoji/replace/replace.mjs +34 -0
  147. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/components.mjs +75 -0
  148. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/missing.mjs +97 -0
  149. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/name.mjs +54 -0
  150. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/parse.mjs +97 -0
  151. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/similar.mjs +45 -0
  152. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/tree.mjs +105 -0
  153. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/variations.mjs +54 -0
  154. package/.output/server/node_modules/@iconify/utils/lib/icon/defaults.mjs +24 -0
  155. package/.output/server/node_modules/@iconify/utils/lib/icon/merge.mjs +20 -0
  156. package/.output/server/node_modules/@iconify/utils/lib/icon/name.mjs +53 -0
  157. package/.output/server/node_modules/@iconify/utils/lib/icon/square.mjs +23 -0
  158. package/.output/server/node_modules/@iconify/utils/lib/icon/transformations.mjs +16 -0
  159. package/.output/server/node_modules/@iconify/utils/lib/icon-set/convert-info.mjs +182 -0
  160. package/.output/server/node_modules/@iconify/utils/lib/icon-set/expand.mjs +22 -0
  161. package/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +28 -0
  162. package/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icons.mjs +46 -0
  163. package/.output/server/node_modules/@iconify/utils/lib/icon-set/minify.mjs +66 -0
  164. package/.output/server/node_modules/@iconify/utils/lib/icon-set/parse.mjs +51 -0
  165. package/.output/server/node_modules/@iconify/utils/lib/icon-set/tree.mjs +23 -0
  166. package/.output/server/node_modules/@iconify/utils/lib/icon-set/validate-basic.mjs +62 -0
  167. package/.output/server/node_modules/@iconify/utils/lib/icon-set/validate.mjs +161 -0
  168. package/.output/server/node_modules/@iconify/utils/lib/index.mjs +64 -0
  169. package/.output/server/node_modules/@iconify/utils/lib/loader/custom.mjs +50 -0
  170. package/.output/server/node_modules/@iconify/utils/lib/loader/loader.mjs +59 -0
  171. package/.output/server/node_modules/@iconify/utils/lib/loader/modern.mjs +80 -0
  172. package/.output/server/node_modules/@iconify/utils/lib/loader/utils.mjs +92 -0
  173. package/.output/server/node_modules/@iconify/utils/lib/misc/objects.mjs +30 -0
  174. package/.output/server/node_modules/@iconify/utils/lib/misc/strings.mjs +17 -0
  175. package/.output/server/node_modules/@iconify/utils/lib/misc/title.mjs +5 -0
  176. package/.output/server/node_modules/@iconify/utils/lib/svg/build.mjs +119 -0
  177. package/.output/server/node_modules/@iconify/utils/lib/svg/defs.mjs +30 -0
  178. package/.output/server/node_modules/@iconify/utils/lib/svg/encode-svg-for-css.mjs +20 -0
  179. package/.output/server/node_modules/@iconify/utils/lib/svg/html.mjs +9 -0
  180. package/.output/server/node_modules/@iconify/utils/lib/svg/id.mjs +28 -0
  181. package/.output/server/node_modules/@iconify/utils/lib/svg/inner-html.mjs +19 -0
  182. package/.output/server/node_modules/@iconify/utils/lib/svg/parse.mjs +83 -0
  183. package/.output/server/node_modules/@iconify/utils/lib/svg/pretty.mjs +70 -0
  184. package/.output/server/node_modules/@iconify/utils/lib/svg/size.mjs +40 -0
  185. package/.output/server/node_modules/@iconify/utils/lib/svg/trim.mjs +5 -0
  186. package/.output/server/node_modules/@iconify/utils/lib/svg/url.mjs +11 -0
  187. package/.output/server/node_modules/@iconify/utils/lib/svg/viewbox.mjs +8 -0
  188. package/.output/server/node_modules/@iconify/utils/package.json +447 -0
  189. package/.output/server/node_modules/@ioredis/commands/built/commands.json +2447 -0
  190. package/.output/server/node_modules/@ioredis/commands/built/index.js +208 -0
  191. package/.output/server/node_modules/@ioredis/commands/package.json +52 -0
  192. package/.output/server/node_modules/@opentelemetry/api/build/src/api/context.js +81 -0
  193. package/.output/server/node_modules/@opentelemetry/api/build/src/api/diag.js +93 -0
  194. package/.output/server/node_modules/@opentelemetry/api/build/src/api/metrics.js +61 -0
  195. package/.output/server/node_modules/@opentelemetry/api/build/src/api/propagation.js +89 -0
  196. package/.output/server/node_modules/@opentelemetry/api/build/src/api/trace.js +79 -0
  197. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +63 -0
  198. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +55 -0
  199. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +23 -0
  200. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/utils.js +51 -0
  201. package/.output/server/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +38 -0
  202. package/.output/server/node_modules/@opentelemetry/api/build/src/context/context.js +55 -0
  203. package/.output/server/node_modules/@opentelemetry/api/build/src/context-api.js +24 -0
  204. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +59 -0
  205. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +57 -0
  206. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +45 -0
  207. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/types.js +44 -0
  208. package/.output/server/node_modules/@opentelemetry/api/build/src/diag-api.js +29 -0
  209. package/.output/server/node_modules/@opentelemetry/api/build/src/index.js +81 -0
  210. package/.output/server/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +64 -0
  211. package/.output/server/node_modules/@opentelemetry/api/build/src/internal/semver.js +122 -0
  212. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +25 -0
  213. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +127 -0
  214. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +31 -0
  215. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics-api.js +24 -0
  216. package/.output/server/node_modules/@opentelemetry/api/build/src/platform/index.js +29 -0
  217. package/.output/server/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +22 -0
  218. package/.output/server/node_modules/@opentelemetry/api/build/src/platform/node/index.js +29 -0
  219. package/.output/server/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +34 -0
  220. package/.output/server/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +41 -0
  221. package/.output/server/node_modules/@opentelemetry/api/build/src/propagation-api.js +24 -0
  222. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +69 -0
  223. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +75 -0
  224. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +32 -0
  225. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +55 -0
  226. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +54 -0
  227. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +42 -0
  228. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +82 -0
  229. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +103 -0
  230. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +46 -0
  231. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +24 -0
  232. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +27 -0
  233. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +46 -0
  234. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +49 -0
  235. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/status.js +23 -0
  236. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +26 -0
  237. package/.output/server/node_modules/@opentelemetry/api/build/src/trace-api.js +24 -0
  238. package/.output/server/node_modules/@opentelemetry/api/build/src/version.js +21 -0
  239. package/.output/server/node_modules/@opentelemetry/api/package.json +113 -0
  240. package/.output/server/node_modules/@sqltools/formatter/lib/core/Formatter.js +234 -0
  241. package/.output/server/node_modules/@sqltools/formatter/lib/core/Indentation.js +42 -0
  242. package/.output/server/node_modules/@sqltools/formatter/lib/core/InlineBlock.js +60 -0
  243. package/.output/server/node_modules/@sqltools/formatter/lib/core/Params.js +21 -0
  244. package/.output/server/node_modules/@sqltools/formatter/lib/core/Tokenizer.js +272 -0
  245. package/.output/server/node_modules/@sqltools/formatter/lib/core/escapeRegExp.js +10 -0
  246. package/.output/server/node_modules/@sqltools/formatter/lib/core/last.js +7 -0
  247. package/.output/server/node_modules/@sqltools/formatter/lib/core/types.js +22 -0
  248. package/.output/server/node_modules/@sqltools/formatter/lib/languages/Db2Formatter.js +585 -0
  249. package/.output/server/node_modules/@sqltools/formatter/lib/languages/N1qlFormatter.js +257 -0
  250. package/.output/server/node_modules/@sqltools/formatter/lib/languages/PlSqlFormatter.js +459 -0
  251. package/.output/server/node_modules/@sqltools/formatter/lib/languages/StandardSqlFormatter.js +369 -0
  252. package/.output/server/node_modules/@sqltools/formatter/lib/languages/utils/abstract.js +23 -0
  253. package/.output/server/node_modules/@sqltools/formatter/lib/sqlFormatter.js +34 -0
  254. package/.output/server/node_modules/@sqltools/formatter/package.json +59 -0
  255. package/.output/server/node_modules/@standard-schema/spec/dist/index.js +0 -0
  256. package/.output/server/node_modules/@standard-schema/spec/package.json +52 -0
  257. package/.output/server/node_modules/@vercel/oidc/dist/auth-config.js +84 -0
  258. package/.output/server/node_modules/@vercel/oidc/dist/get-context.js +34 -0
  259. package/.output/server/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js +80 -0
  260. package/.output/server/node_modules/@vercel/oidc/dist/index.js +33 -0
  261. package/.output/server/node_modules/@vercel/oidc/dist/oauth.js +88 -0
  262. package/.output/server/node_modules/@vercel/oidc/dist/token-error.js +40 -0
  263. package/.output/server/node_modules/@vercel/oidc/dist/token-io.js +78 -0
  264. package/.output/server/node_modules/@vercel/oidc/dist/token-util.js +198 -0
  265. package/.output/server/node_modules/@vercel/oidc/dist/token.js +53 -0
  266. package/.output/server/node_modules/@vercel/oidc/package.json +52 -0
  267. package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6690 -0
  268. package/.output/server/node_modules/@vue/compiler-core/package.json +58 -0
  269. package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +686 -0
  270. package/.output/server/node_modules/@vue/compiler-dom/package.json +57 -0
  271. package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1404 -0
  272. package/.output/server/node_modules/@vue/compiler-ssr/package.json +34 -0
  273. package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1789 -0
  274. package/.output/server/node_modules/@vue/reactivity/package.json +55 -0
  275. package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6654 -0
  276. package/.output/server/node_modules/@vue/runtime-core/package.json +52 -0
  277. package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1669 -0
  278. package/.output/server/node_modules/@vue/runtime-dom/package.json +60 -0
  279. package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +857 -0
  280. package/.output/server/node_modules/@vue/server-renderer/package.json +55 -0
  281. package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +594 -0
  282. package/.output/server/node_modules/@vue/shared/package.json +47 -0
  283. package/.output/server/node_modules/ai/dist/index.mjs +12363 -0
  284. package/.output/server/node_modules/ai/package.json +106 -0
  285. package/.output/server/node_modules/ansis/index.js +1 -0
  286. package/.output/server/node_modules/ansis/package.json +28 -0
  287. package/.output/server/node_modules/app-root-path/index.js +4 -0
  288. package/.output/server/node_modules/app-root-path/lib/app-root-path.js +30 -0
  289. package/.output/server/node_modules/app-root-path/lib/resolve.js +128 -0
  290. package/.output/server/node_modules/app-root-path/package.json +66 -0
  291. package/.output/server/node_modules/balanced-match/index.js +62 -0
  292. package/.output/server/node_modules/balanced-match/package.json +48 -0
  293. package/.output/server/node_modules/bindings/bindings.js +221 -0
  294. package/.output/server/node_modules/bindings/package.json +28 -0
  295. package/.output/server/node_modules/brace-expansion/index.js +203 -0
  296. package/.output/server/node_modules/brace-expansion/package.json +46 -0
  297. package/.output/server/node_modules/cluster-key-slot/lib/index.js +166 -0
  298. package/.output/server/node_modules/cluster-key-slot/package.json +56 -0
  299. package/.output/server/node_modules/consola/dist/chunks/prompt.mjs +280 -0
  300. package/.output/server/node_modules/consola/dist/core.mjs +512 -0
  301. package/.output/server/node_modules/consola/dist/index.mjs +651 -0
  302. package/.output/server/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +72 -0
  303. package/.output/server/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +288 -0
  304. package/.output/server/node_modules/consola/package.json +136 -0
  305. package/.output/server/node_modules/dayjs/dayjs.min.js +1 -0
  306. package/.output/server/node_modules/dayjs/package.json +84 -0
  307. package/.output/server/node_modules/debug/package.json +65 -0
  308. package/.output/server/node_modules/debug/src/browser.js +272 -0
  309. package/.output/server/node_modules/debug/src/common.js +292 -0
  310. package/.output/server/node_modules/debug/src/index.js +10 -0
  311. package/.output/server/node_modules/debug/src/node.js +263 -0
  312. package/.output/server/node_modules/dedent/dist/dedent.js +73 -0
  313. package/.output/server/node_modules/dedent/package.json +119 -0
  314. package/.output/server/node_modules/denque/index.js +481 -0
  315. package/.output/server/node_modules/denque/package.json +58 -0
  316. package/.output/server/node_modules/devalue/index.js +3 -0
  317. package/.output/server/node_modules/devalue/package.json +34 -0
  318. package/.output/server/node_modules/devalue/src/base64.js +110 -0
  319. package/.output/server/node_modules/devalue/src/constants.js +6 -0
  320. package/.output/server/node_modules/devalue/src/parse.js +160 -0
  321. package/.output/server/node_modules/devalue/src/stringify.js +232 -0
  322. package/.output/server/node_modules/devalue/src/uneval.js +351 -0
  323. package/.output/server/node_modules/devalue/src/utils.js +113 -0
  324. package/.output/server/node_modules/dotenv/lib/main.js +361 -0
  325. package/.output/server/node_modules/dotenv/package.json +61 -0
  326. package/.output/server/node_modules/entities/lib/decode.js +536 -0
  327. package/.output/server/node_modules/entities/lib/decode_codepoint.js +76 -0
  328. package/.output/server/node_modules/entities/lib/generated/decode-data-html.js +9 -0
  329. package/.output/server/node_modules/entities/lib/generated/decode-data-xml.js +9 -0
  330. package/.output/server/node_modules/entities/package.json +90 -0
  331. package/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
  332. package/.output/server/node_modules/estree-walker/package.json +37 -0
  333. package/.output/server/node_modules/eventsource-parser/dist/index.js +106 -0
  334. package/.output/server/node_modules/eventsource-parser/dist/stream.js +29 -0
  335. package/.output/server/node_modules/eventsource-parser/package.json +115 -0
  336. package/.output/server/node_modules/file-uri-to-path/index.js +66 -0
  337. package/.output/server/node_modules/file-uri-to-path/package.json +32 -0
  338. package/.output/server/node_modules/glob/dist/commonjs/glob.js +247 -0
  339. package/.output/server/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  340. package/.output/server/node_modules/glob/dist/commonjs/ignore.js +119 -0
  341. package/.output/server/node_modules/glob/dist/commonjs/index.js +68 -0
  342. package/.output/server/node_modules/glob/dist/commonjs/package.json +3 -0
  343. package/.output/server/node_modules/glob/dist/commonjs/pattern.js +219 -0
  344. package/.output/server/node_modules/glob/dist/commonjs/processor.js +301 -0
  345. package/.output/server/node_modules/glob/dist/commonjs/walker.js +387 -0
  346. package/.output/server/node_modules/glob/package.json +99 -0
  347. package/.output/server/node_modules/has-flag/index.js +8 -0
  348. package/.output/server/node_modules/has-flag/package.json +46 -0
  349. package/.output/server/node_modules/hookable/dist/index.mjs +290 -0
  350. package/.output/server/node_modules/hookable/package.json +49 -0
  351. package/.output/server/node_modules/inherits/inherits.js +9 -0
  352. package/.output/server/node_modules/inherits/inherits_browser.js +27 -0
  353. package/.output/server/node_modules/inherits/package.json +29 -0
  354. package/.output/server/node_modules/ioredis/built/Command.js +349 -0
  355. package/.output/server/node_modules/ioredis/built/DataHandler.js +220 -0
  356. package/.output/server/node_modules/ioredis/built/Pipeline.js +334 -0
  357. package/.output/server/node_modules/ioredis/built/Redis.js +697 -0
  358. package/.output/server/node_modules/ioredis/built/ScanStream.js +51 -0
  359. package/.output/server/node_modules/ioredis/built/Script.js +62 -0
  360. package/.output/server/node_modules/ioredis/built/SubscriptionSet.js +41 -0
  361. package/.output/server/node_modules/ioredis/built/autoPipelining.js +159 -0
  362. package/.output/server/node_modules/ioredis/built/cluster/ClusterOptions.js +22 -0
  363. package/.output/server/node_modules/ioredis/built/cluster/ClusterSubscriber.js +202 -0
  364. package/.output/server/node_modules/ioredis/built/cluster/ClusterSubscriberGroup.js +224 -0
  365. package/.output/server/node_modules/ioredis/built/cluster/ConnectionPool.js +154 -0
  366. package/.output/server/node_modules/ioredis/built/cluster/DelayQueue.js +53 -0
  367. package/.output/server/node_modules/ioredis/built/cluster/index.js +862 -0
  368. package/.output/server/node_modules/ioredis/built/cluster/util.js +100 -0
  369. package/.output/server/node_modules/ioredis/built/connectors/AbstractConnector.js +26 -0
  370. package/.output/server/node_modules/ioredis/built/connectors/SentinelConnector/FailoverDetector.js +45 -0
  371. package/.output/server/node_modules/ioredis/built/connectors/SentinelConnector/SentinelIterator.js +37 -0
  372. package/.output/server/node_modules/ioredis/built/connectors/SentinelConnector/index.js +305 -0
  373. package/.output/server/node_modules/ioredis/built/connectors/StandaloneConnector.js +69 -0
  374. package/.output/server/node_modules/ioredis/built/connectors/index.js +7 -0
  375. package/.output/server/node_modules/ioredis/built/constants/TLSProfiles.js +149 -0
  376. package/.output/server/node_modules/ioredis/built/errors/ClusterAllFailedError.js +15 -0
  377. package/.output/server/node_modules/ioredis/built/errors/MaxRetriesPerRequestError.js +14 -0
  378. package/.output/server/node_modules/ioredis/built/errors/index.js +5 -0
  379. package/.output/server/node_modules/ioredis/built/index.js +62 -0
  380. package/.output/server/node_modules/ioredis/built/redis/RedisOptions.js +55 -0
  381. package/.output/server/node_modules/ioredis/built/redis/event_handler.js +292 -0
  382. package/.output/server/node_modules/ioredis/built/transaction.js +93 -0
  383. package/.output/server/node_modules/ioredis/built/utils/Commander.js +117 -0
  384. package/.output/server/node_modules/ioredis/built/utils/applyMixin.js +8 -0
  385. package/.output/server/node_modules/ioredis/built/utils/debug.js +95 -0
  386. package/.output/server/node_modules/ioredis/built/utils/index.js +297 -0
  387. package/.output/server/node_modules/ioredis/built/utils/lodash.js +9 -0
  388. package/.output/server/node_modules/ioredis/package.json +100 -0
  389. package/.output/server/node_modules/lodash.defaults/index.js +668 -0
  390. package/.output/server/node_modules/lodash.defaults/package.json +19 -0
  391. package/.output/server/node_modules/lodash.isarguments/index.js +229 -0
  392. package/.output/server/node_modules/lodash.isarguments/package.json +19 -0
  393. package/.output/server/node_modules/lru-cache/dist/commonjs/index.js +1546 -0
  394. package/.output/server/node_modules/lru-cache/dist/commonjs/package.json +3 -0
  395. package/.output/server/node_modules/lru-cache/package.json +116 -0
  396. package/.output/server/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  397. package/.output/server/node_modules/minimatch/dist/commonjs/ast.js +592 -0
  398. package/.output/server/node_modules/minimatch/dist/commonjs/brace-expressions.js +152 -0
  399. package/.output/server/node_modules/minimatch/dist/commonjs/escape.js +22 -0
  400. package/.output/server/node_modules/minimatch/dist/commonjs/index.js +1017 -0
  401. package/.output/server/node_modules/minimatch/dist/commonjs/package.json +3 -0
  402. package/.output/server/node_modules/minimatch/dist/commonjs/unescape.js +24 -0
  403. package/.output/server/node_modules/minimatch/package.json +82 -0
  404. package/.output/server/node_modules/minipass/dist/commonjs/index.js +1028 -0
  405. package/.output/server/node_modules/minipass/dist/commonjs/package.json +3 -0
  406. package/.output/server/node_modules/minipass/package.json +82 -0
  407. package/.output/server/node_modules/ms/index.js +162 -0
  408. package/.output/server/node_modules/ms/package.json +38 -0
  409. package/.output/server/node_modules/path-scurry/dist/commonjs/index.js +2014 -0
  410. package/.output/server/node_modules/path-scurry/dist/commonjs/package.json +3 -0
  411. package/.output/server/node_modules/path-scurry/package.json +89 -0
  412. package/.output/server/node_modules/pg/lib/client.js +650 -0
  413. package/.output/server/node_modules/pg/lib/connection-parameters.js +167 -0
  414. package/.output/server/node_modules/pg/lib/connection.js +222 -0
  415. package/.output/server/node_modules/pg/lib/crypto/cert-signatures.js +121 -0
  416. package/.output/server/node_modules/pg/lib/crypto/sasl.js +212 -0
  417. package/.output/server/node_modules/pg/lib/crypto/utils-legacy.js +43 -0
  418. package/.output/server/node_modules/pg/lib/crypto/utils-webcrypto.js +88 -0
  419. package/.output/server/node_modules/pg/lib/crypto/utils.js +9 -0
  420. package/.output/server/node_modules/pg/lib/defaults.js +84 -0
  421. package/.output/server/node_modules/pg/lib/index.js +58 -0
  422. package/.output/server/node_modules/pg/lib/native/client.js +307 -0
  423. package/.output/server/node_modules/pg/lib/native/index.js +2 -0
  424. package/.output/server/node_modules/pg/lib/native/query.js +168 -0
  425. package/.output/server/node_modules/pg/lib/query.js +253 -0
  426. package/.output/server/node_modules/pg/lib/result.js +108 -0
  427. package/.output/server/node_modules/pg/lib/stream.js +81 -0
  428. package/.output/server/node_modules/pg/lib/type-overrides.js +35 -0
  429. package/.output/server/node_modules/pg/lib/utils.js +206 -0
  430. package/.output/server/node_modules/pg/package.json +62 -0
  431. package/.output/server/node_modules/pg-cloudflare/dist/empty.js +4 -0
  432. package/.output/server/node_modules/pg-cloudflare/package.json +32 -0
  433. package/.output/server/node_modules/pg-connection-string/index.js +112 -0
  434. package/.output/server/node_modules/pg-connection-string/package.json +40 -0
  435. package/.output/server/node_modules/pg-cursor/index.js +265 -0
  436. package/.output/server/node_modules/pg-cursor/package.json +38 -0
  437. package/.output/server/node_modules/pg-int8/index.js +100 -0
  438. package/.output/server/node_modules/pg-int8/package.json +24 -0
  439. package/.output/server/node_modules/pg-pool/index.js +471 -0
  440. package/.output/server/node_modules/pg-pool/package.json +41 -0
  441. package/.output/server/node_modules/pg-protocol/dist/buffer-reader.js +55 -0
  442. package/.output/server/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
  443. package/.output/server/node_modules/pg-protocol/dist/index.js +15 -0
  444. package/.output/server/node_modules/pg-protocol/dist/messages.js +160 -0
  445. package/.output/server/node_modules/pg-protocol/dist/parser.js +304 -0
  446. package/.output/server/node_modules/pg-protocol/dist/serializer.js +189 -0
  447. package/.output/server/node_modules/pg-protocol/package.json +35 -0
  448. package/.output/server/node_modules/pg-query-stream/dist/index.js +48 -0
  449. package/.output/server/node_modules/pg-query-stream/package.json +60 -0
  450. package/.output/server/node_modules/pg-types/index.js +47 -0
  451. package/.output/server/node_modules/pg-types/lib/arrayParser.js +11 -0
  452. package/.output/server/node_modules/pg-types/lib/binaryParsers.js +257 -0
  453. package/.output/server/node_modules/pg-types/lib/builtins.js +73 -0
  454. package/.output/server/node_modules/pg-types/lib/textParsers.js +215 -0
  455. package/.output/server/node_modules/pg-types/package.json +42 -0
  456. package/.output/server/node_modules/pgpass/lib/helper.js +233 -0
  457. package/.output/server/node_modules/pgpass/lib/index.js +23 -0
  458. package/.output/server/node_modules/pgpass/package.json +41 -0
  459. package/.output/server/node_modules/postgres-array/index.js +97 -0
  460. package/.output/server/node_modules/postgres-array/package.json +35 -0
  461. package/.output/server/node_modules/postgres-bytea/index.js +31 -0
  462. package/.output/server/node_modules/postgres-bytea/package.json +34 -0
  463. package/.output/server/node_modules/postgres-date/index.js +116 -0
  464. package/.output/server/node_modules/postgres-date/package.json +33 -0
  465. package/.output/server/node_modules/postgres-interval/index.js +125 -0
  466. package/.output/server/node_modules/postgres-interval/package.json +36 -0
  467. package/.output/server/node_modules/redis-errors/index.js +7 -0
  468. package/.output/server/node_modules/redis-errors/lib/modern.js +59 -0
  469. package/.output/server/node_modules/redis-errors/lib/old.js +119 -0
  470. package/.output/server/node_modules/redis-errors/package.json +41 -0
  471. package/.output/server/node_modules/redis-parser/index.js +3 -0
  472. package/.output/server/node_modules/redis-parser/lib/parser.js +552 -0
  473. package/.output/server/node_modules/redis-parser/package.json +53 -0
  474. package/.output/server/node_modules/reflect-metadata/Reflect.js +1415 -0
  475. package/.output/server/node_modules/reflect-metadata/package.json +68 -0
  476. package/.output/server/node_modules/safe-buffer/index.js +65 -0
  477. package/.output/server/node_modules/safe-buffer/package.json +51 -0
  478. package/.output/server/node_modules/sha.js/hash.js +81 -0
  479. package/.output/server/node_modules/sha.js/index.js +15 -0
  480. package/.output/server/node_modules/sha.js/package.json +30 -0
  481. package/.output/server/node_modules/sha.js/sha.js +94 -0
  482. package/.output/server/node_modules/sha.js/sha1.js +99 -0
  483. package/.output/server/node_modules/sha.js/sha224.js +53 -0
  484. package/.output/server/node_modules/sha.js/sha256.js +135 -0
  485. package/.output/server/node_modules/sha.js/sha384.js +57 -0
  486. package/.output/server/node_modules/sha.js/sha512.js +260 -0
  487. package/.output/server/node_modules/source-map-js/lib/array-set.js +121 -0
  488. package/.output/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
  489. package/.output/server/node_modules/source-map-js/lib/base64.js +67 -0
  490. package/.output/server/node_modules/source-map-js/lib/binary-search.js +111 -0
  491. package/.output/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
  492. package/.output/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
  493. package/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
  494. package/.output/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
  495. package/.output/server/node_modules/source-map-js/lib/source-node.js +413 -0
  496. package/.output/server/node_modules/source-map-js/lib/util.js +594 -0
  497. package/.output/server/node_modules/source-map-js/package.json +71 -0
  498. package/.output/server/node_modules/source-map-js/source-map.js +8 -0
  499. package/.output/server/node_modules/split2/index.js +141 -0
  500. package/.output/server/node_modules/split2/package.json +39 -0
  501. package/.output/server/node_modules/sql-highlight/lib/escapeHtml.js +59 -0
  502. package/.output/server/node_modules/sql-highlight/lib/index.js +85 -0
  503. package/.output/server/node_modules/sql-highlight/lib/keywords.js +145 -0
  504. package/.output/server/node_modules/sql-highlight/package.json +49 -0
  505. package/.output/server/node_modules/sqlite3/build/Release/node_sqlite3.node +0 -0
  506. package/.output/server/node_modules/sqlite3/build/Release/node_sqlite3.node.bak +0 -0
  507. package/.output/server/node_modules/sqlite3/lib/sqlite3-binding.js +1 -0
  508. package/.output/server/node_modules/sqlite3/lib/sqlite3.js +207 -0
  509. package/.output/server/node_modules/sqlite3/lib/trace.js +38 -0
  510. package/.output/server/node_modules/sqlite3/package.json +89 -0
  511. package/.output/server/node_modules/standard-as-callback/built/index.js +41 -0
  512. package/.output/server/node_modules/standard-as-callback/built/utils.js +23 -0
  513. package/.output/server/node_modules/standard-as-callback/package.json +40 -0
  514. package/.output/server/node_modules/supports-color/index.js +152 -0
  515. package/.output/server/node_modules/supports-color/package.json +58 -0
  516. package/.output/server/node_modules/tslib/package.json +47 -0
  517. package/.output/server/node_modules/tslib/tslib.js +484 -0
  518. package/.output/server/node_modules/typeorm/cache/DbQueryResultCache.js +264 -0
  519. package/.output/server/node_modules/typeorm/cache/QueryResultCacheFactory.js +42 -0
  520. package/.output/server/node_modules/typeorm/cache/RedisQueryResultCache.js +197 -0
  521. package/.output/server/node_modules/typeorm/common/DeepPartial.js +4 -0
  522. package/.output/server/node_modules/typeorm/common/EntityTarget.js +4 -0
  523. package/.output/server/node_modules/typeorm/common/MixedList.js +4 -0
  524. package/.output/server/node_modules/typeorm/common/ObjectLiteral.js +4 -0
  525. package/.output/server/node_modules/typeorm/common/ObjectType.js +4 -0
  526. package/.output/server/node_modules/typeorm/common/RelationType.js +4 -0
  527. package/.output/server/node_modules/typeorm/connection/Connection.js +16 -0
  528. package/.output/server/node_modules/typeorm/connection/ConnectionManager.js +66 -0
  529. package/.output/server/node_modules/typeorm/connection/ConnectionMetadataBuilder.js +74 -0
  530. package/.output/server/node_modules/typeorm/connection/ConnectionOptionsReader.js +198 -0
  531. package/.output/server/node_modules/typeorm/connection/options-reader/ConnectionOptionsEnvReader.js +111 -0
  532. package/.output/server/node_modules/typeorm/container.js +60 -0
  533. package/.output/server/node_modules/typeorm/data-source/DataSource.js +517 -0
  534. package/.output/server/node_modules/typeorm/decorator/Check.js +27 -0
  535. package/.output/server/node_modules/typeorm/decorator/EntityRepository.js +21 -0
  536. package/.output/server/node_modules/typeorm/decorator/Exclusion.js +27 -0
  537. package/.output/server/node_modules/typeorm/decorator/ForeignKey.js +44 -0
  538. package/.output/server/node_modules/typeorm/decorator/Generated.js +24 -0
  539. package/.output/server/node_modules/typeorm/decorator/Index.js +56 -0
  540. package/.output/server/node_modules/typeorm/decorator/Unique.js +50 -0
  541. package/.output/server/node_modules/typeorm/decorator/columns/Column.js +78 -0
  542. package/.output/server/node_modules/typeorm/decorator/columns/CreateDateColumn.js +21 -0
  543. package/.output/server/node_modules/typeorm/decorator/columns/DeleteDateColumn.js +20 -0
  544. package/.output/server/node_modules/typeorm/decorator/columns/ObjectIdColumn.js +27 -0
  545. package/.output/server/node_modules/typeorm/decorator/columns/PrimaryColumn.js +63 -0
  546. package/.output/server/node_modules/typeorm/decorator/columns/PrimaryGeneratedColumn.js +59 -0
  547. package/.output/server/node_modules/typeorm/decorator/columns/UpdateDateColumn.js +20 -0
  548. package/.output/server/node_modules/typeorm/decorator/columns/VersionColumn.js +21 -0
  549. package/.output/server/node_modules/typeorm/decorator/columns/ViewColumn.js +19 -0
  550. package/.output/server/node_modules/typeorm/decorator/columns/VirtualColumn.js +49 -0
  551. package/.output/server/node_modules/typeorm/decorator/entity/ChildEntity.js +25 -0
  552. package/.output/server/node_modules/typeorm/decorator/entity/Entity.js +31 -0
  553. package/.output/server/node_modules/typeorm/decorator/entity/TableInheritance.js +22 -0
  554. package/.output/server/node_modules/typeorm/decorator/entity-view/ViewEntity.js +32 -0
  555. package/.output/server/node_modules/typeorm/decorator/listeners/AfterInsert.js +19 -0
  556. package/.output/server/node_modules/typeorm/decorator/listeners/AfterLoad.js +19 -0
  557. package/.output/server/node_modules/typeorm/decorator/listeners/AfterRecover.js +19 -0
  558. package/.output/server/node_modules/typeorm/decorator/listeners/AfterRemove.js +19 -0
  559. package/.output/server/node_modules/typeorm/decorator/listeners/AfterSoftRemove.js +19 -0
  560. package/.output/server/node_modules/typeorm/decorator/listeners/AfterUpdate.js +19 -0
  561. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeInsert.js +19 -0
  562. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeRecover.js +19 -0
  563. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeRemove.js +19 -0
  564. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeSoftRemove.js +19 -0
  565. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeUpdate.js +19 -0
  566. package/.output/server/node_modules/typeorm/decorator/listeners/EventSubscriber.js +17 -0
  567. package/.output/server/node_modules/typeorm/decorator/options/ColumnOptions.js +4 -0
  568. package/.output/server/node_modules/typeorm/decorator/options/EntityOptions.js +4 -0
  569. package/.output/server/node_modules/typeorm/decorator/options/IndexOptions.js +4 -0
  570. package/.output/server/node_modules/typeorm/decorator/options/JoinColumnOptions.js +4 -0
  571. package/.output/server/node_modules/typeorm/decorator/options/JoinTableOptions.js +4 -0
  572. package/.output/server/node_modules/typeorm/decorator/options/RelationOptions.js +4 -0
  573. package/.output/server/node_modules/typeorm/decorator/options/ValueTransformer.js +4 -0
  574. package/.output/server/node_modules/typeorm/decorator/relations/JoinColumn.js +27 -0
  575. package/.output/server/node_modules/typeorm/decorator/relations/JoinTable.js +34 -0
  576. package/.output/server/node_modules/typeorm/decorator/relations/ManyToMany.js +46 -0
  577. package/.output/server/node_modules/typeorm/decorator/relations/ManyToOne.js +46 -0
  578. package/.output/server/node_modules/typeorm/decorator/relations/OneToMany.js +37 -0
  579. package/.output/server/node_modules/typeorm/decorator/relations/OneToOne.js +45 -0
  580. package/.output/server/node_modules/typeorm/decorator/relations/RelationCount.js +23 -0
  581. package/.output/server/node_modules/typeorm/decorator/relations/RelationId.js +22 -0
  582. package/.output/server/node_modules/typeorm/decorator/tree/Tree.js +21 -0
  583. package/.output/server/node_modules/typeorm/decorator/tree/TreeChildren.js +34 -0
  584. package/.output/server/node_modules/typeorm/decorator/tree/TreeLevelColumn.js +19 -0
  585. package/.output/server/node_modules/typeorm/decorator/tree/TreeParent.js +33 -0
  586. package/.output/server/node_modules/typeorm/driver/DriverFactory.js +98 -0
  587. package/.output/server/node_modules/typeorm/driver/DriverUtils.js +228 -0
  588. package/.output/server/node_modules/typeorm/driver/Query.js +16 -0
  589. package/.output/server/node_modules/typeorm/driver/SqlInMemory.js +15 -0
  590. package/.output/server/node_modules/typeorm/driver/aurora-mysql/AuroraMysqlDriver.js +847 -0
  591. package/.output/server/node_modules/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.js +1709 -0
  592. package/.output/server/node_modules/typeorm/driver/aurora-postgres/AuroraPostgresDriver.js +103 -0
  593. package/.output/server/node_modules/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.js +146 -0
  594. package/.output/server/node_modules/typeorm/driver/better-sqlite3/BetterSqlite3Driver.js +153 -0
  595. package/.output/server/node_modules/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.js +126 -0
  596. package/.output/server/node_modules/typeorm/driver/capacitor/CapacitorDriver.js +78 -0
  597. package/.output/server/node_modules/typeorm/driver/capacitor/CapacitorQueryRunner.js +98 -0
  598. package/.output/server/node_modules/typeorm/driver/cockroachdb/CockroachDriver.js +885 -0
  599. package/.output/server/node_modules/typeorm/driver/cockroachdb/CockroachQueryRunner.js +2453 -0
  600. package/.output/server/node_modules/typeorm/driver/cordova/CordovaDriver.js +76 -0
  601. package/.output/server/node_modules/typeorm/driver/cordova/CordovaQueryRunner.js +170 -0
  602. package/.output/server/node_modules/typeorm/driver/expo/ExpoDriver.js +29 -0
  603. package/.output/server/node_modules/typeorm/driver/expo/ExpoDriverFactory.js +22 -0
  604. package/.output/server/node_modules/typeorm/driver/expo/ExpoQueryRunner.js +65 -0
  605. package/.output/server/node_modules/typeorm/driver/expo/legacy/ExpoLegacyDriver.js +75 -0
  606. package/.output/server/node_modules/typeorm/driver/expo/legacy/ExpoLegacyQueryRunner.js +169 -0
  607. package/.output/server/node_modules/typeorm/driver/mongodb/MongoDriver.js +404 -0
  608. package/.output/server/node_modules/typeorm/driver/mongodb/MongoQueryRunner.js +701 -0
  609. package/.output/server/node_modules/typeorm/driver/mongodb/bson.typings.js +5 -0
  610. package/.output/server/node_modules/typeorm/driver/mongodb/typings.js +23 -0
  611. package/.output/server/node_modules/typeorm/driver/mysql/MysqlDriver.js +1105 -0
  612. package/.output/server/node_modules/typeorm/driver/mysql/MysqlQueryRunner.js +2139 -0
  613. package/.output/server/node_modules/typeorm/driver/nativescript/NativescriptDriver.js +94 -0
  614. package/.output/server/node_modules/typeorm/driver/nativescript/NativescriptQueryRunner.js +92 -0
  615. package/.output/server/node_modules/typeorm/driver/oracle/OracleDriver.js +869 -0
  616. package/.output/server/node_modules/typeorm/driver/oracle/OracleQueryRunner.js +1884 -0
  617. package/.output/server/node_modules/typeorm/driver/postgres/PostgresDriver.js +1259 -0
  618. package/.output/server/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js +2729 -0
  619. package/.output/server/node_modules/typeorm/driver/react-native/ReactNativeDriver.js +728 -0
  620. package/.output/server/node_modules/typeorm/driver/react-native/ReactNativeQueryRunner.js +107 -0
  621. package/.output/server/node_modules/typeorm/driver/sap/SapDriver.js +681 -0
  622. package/.output/server/node_modules/typeorm/driver/sap/SapQueryRunner.js +2054 -0
  623. package/.output/server/node_modules/typeorm/driver/spanner/SpannerDriver.js +613 -0
  624. package/.output/server/node_modules/typeorm/driver/spanner/SpannerQueryRunner.js +1464 -0
  625. package/.output/server/node_modules/typeorm/driver/sqlite/SqliteDriver.js +174 -0
  626. package/.output/server/node_modules/typeorm/driver/sqlite/SqliteQueryRunner.js +124 -0
  627. package/.output/server/node_modules/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js +695 -0
  628. package/.output/server/node_modules/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1511 -0
  629. package/.output/server/node_modules/typeorm/driver/sqljs/SqljsDriver.js +250 -0
  630. package/.output/server/node_modules/typeorm/driver/sqljs/SqljsQueryRunner.js +123 -0
  631. package/.output/server/node_modules/typeorm/driver/sqlserver/MssqlParameter.js +23 -0
  632. package/.output/server/node_modules/typeorm/driver/sqlserver/SqlServerDriver.js +922 -0
  633. package/.output/server/node_modules/typeorm/driver/sqlserver/SqlServerQueryRunner.js +2484 -0
  634. package/.output/server/node_modules/typeorm/driver/types/DatabaseType.js +4 -0
  635. package/.output/server/node_modules/typeorm/driver/types/GeoJsonTypes.js +4 -0
  636. package/.output/server/node_modules/typeorm/driver/types/MetadataTableType.js +11 -0
  637. package/.output/server/node_modules/typeorm/driver/types/ReplicationMode.js +4 -0
  638. package/.output/server/node_modules/typeorm/entity-manager/EntityManager.js +853 -0
  639. package/.output/server/node_modules/typeorm/entity-manager/EntityManagerFactory.js +24 -0
  640. package/.output/server/node_modules/typeorm/entity-manager/MongoEntityManager.js +668 -0
  641. package/.output/server/node_modules/typeorm/entity-manager/SqljsEntityManager.js +44 -0
  642. package/.output/server/node_modules/typeorm/entity-schema/EntitySchema.js +15 -0
  643. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.js +8 -0
  644. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaEmbeddedError.js +18 -0
  645. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaOptions.js +11 -0
  646. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaTransformer.js +333 -0
  647. package/.output/server/node_modules/typeorm/error/AlreadyHasActiveConnectionError.js +16 -0
  648. package/.output/server/node_modules/typeorm/error/CannotAttachTreeChildrenEntityError.js +16 -0
  649. package/.output/server/node_modules/typeorm/error/CannotConnectAlreadyConnectedError.js +15 -0
  650. package/.output/server/node_modules/typeorm/error/CannotCreateEntityIdMapError.js +21 -0
  651. package/.output/server/node_modules/typeorm/error/CannotDetermineEntityError.js +16 -0
  652. package/.output/server/node_modules/typeorm/error/CannotExecuteNotConnectedError.js +15 -0
  653. package/.output/server/node_modules/typeorm/error/CannotGetEntityManagerNotConnectedError.js +15 -0
  654. package/.output/server/node_modules/typeorm/error/CannotReflectMethodParameterTypeError.js +18 -0
  655. package/.output/server/node_modules/typeorm/error/CircularRelationsError.js +16 -0
  656. package/.output/server/node_modules/typeorm/error/ColumnTypeUndefinedError.js +19 -0
  657. package/.output/server/node_modules/typeorm/error/ConnectionIsNotSetError.js +15 -0
  658. package/.output/server/node_modules/typeorm/error/ConnectionNotFoundError.js +15 -0
  659. package/.output/server/node_modules/typeorm/error/CustomRepositoryCannotInheritRepositoryError.js +18 -0
  660. package/.output/server/node_modules/typeorm/error/CustomRepositoryDoesNotHaveEntityError.js +18 -0
  661. package/.output/server/node_modules/typeorm/error/CustomRepositoryNotFoundError.js +18 -0
  662. package/.output/server/node_modules/typeorm/error/DataTypeNotSupportedError.js +14 -0
  663. package/.output/server/node_modules/typeorm/error/DriverOptionNotSetError.js +16 -0
  664. package/.output/server/node_modules/typeorm/error/DriverPackageNotInstalledError.js +16 -0
  665. package/.output/server/node_modules/typeorm/error/EntityMetadataNotFoundError.js +29 -0
  666. package/.output/server/node_modules/typeorm/error/EntityNotFoundError.js +42 -0
  667. package/.output/server/node_modules/typeorm/error/EntityPropertyNotFoundError.js +17 -0
  668. package/.output/server/node_modules/typeorm/error/FindRelationsNotFoundError.js +23 -0
  669. package/.output/server/node_modules/typeorm/error/ForbiddenTransactionModeOverrideError.js +16 -0
  670. package/.output/server/node_modules/typeorm/error/InitializedRelationError.js +20 -0
  671. package/.output/server/node_modules/typeorm/error/InsertValuesMissingError.js +16 -0
  672. package/.output/server/node_modules/typeorm/error/LimitOnUpdateNotSupportedError.js +15 -0
  673. package/.output/server/node_modules/typeorm/error/LockNotSupportedOnGivenDriverError.js +15 -0
  674. package/.output/server/node_modules/typeorm/error/MetadataAlreadyExistsError.js +18 -0
  675. package/.output/server/node_modules/typeorm/error/MetadataWithSuchNameAlreadyExistsError.js +16 -0
  676. package/.output/server/node_modules/typeorm/error/MissingDeleteDateColumnError.js +12 -0
  677. package/.output/server/node_modules/typeorm/error/MissingDriverError.js +16 -0
  678. package/.output/server/node_modules/typeorm/error/MissingJoinColumnError.js +23 -0
  679. package/.output/server/node_modules/typeorm/error/MissingJoinTableError.js +23 -0
  680. package/.output/server/node_modules/typeorm/error/MissingPrimaryColumnError.js +13 -0
  681. package/.output/server/node_modules/typeorm/error/MustBeEntityError.js +15 -0
  682. package/.output/server/node_modules/typeorm/error/NestedSetMultipleRootError.js +12 -0
  683. package/.output/server/node_modules/typeorm/error/NoConnectionForRepositoryError.js +16 -0
  684. package/.output/server/node_modules/typeorm/error/NoConnectionOptionError.js +16 -0
  685. package/.output/server/node_modules/typeorm/error/NoNeedToReleaseEntityManagerError.js +17 -0
  686. package/.output/server/node_modules/typeorm/error/NoVersionOrUpdateDateColumnError.js +15 -0
  687. package/.output/server/node_modules/typeorm/error/OffsetWithoutLimitNotSupportedError.js +17 -0
  688. package/.output/server/node_modules/typeorm/error/OptimisticLockCanNotBeUsedError.js +15 -0
  689. package/.output/server/node_modules/typeorm/error/OptimisticLockVersionMismatchError.js +15 -0
  690. package/.output/server/node_modules/typeorm/error/PersistedEntityNotFoundError.js +15 -0
  691. package/.output/server/node_modules/typeorm/error/PessimisticLockTransactionRequiredError.js +15 -0
  692. package/.output/server/node_modules/typeorm/error/PrimaryColumnCannotBeNullableError.js +13 -0
  693. package/.output/server/node_modules/typeorm/error/QueryFailedError.js +30 -0
  694. package/.output/server/node_modules/typeorm/error/QueryRunnerAlreadyReleasedError.js +12 -0
  695. package/.output/server/node_modules/typeorm/error/QueryRunnerProviderAlreadyReleasedError.js +16 -0
  696. package/.output/server/node_modules/typeorm/error/RepositoryNotTreeError.js +32 -0
  697. package/.output/server/node_modules/typeorm/error/ReturningStatementNotSupportedError.js +16 -0
  698. package/.output/server/node_modules/typeorm/error/SubjectRemovedAndUpdatedError.js +16 -0
  699. package/.output/server/node_modules/typeorm/error/SubjectWithoutIdentifierError.js +17 -0
  700. package/.output/server/node_modules/typeorm/error/TransactionAlreadyStartedError.js +15 -0
  701. package/.output/server/node_modules/typeorm/error/TransactionNotStartedError.js +15 -0
  702. package/.output/server/node_modules/typeorm/error/TreeRepositoryNotSupportedError.js +12 -0
  703. package/.output/server/node_modules/typeorm/error/TypeORMError.js +23 -0
  704. package/.output/server/node_modules/typeorm/error/UpdateValuesMissingError.js +12 -0
  705. package/.output/server/node_modules/typeorm/error/UsingJoinColumnIsNotAllowedError.js +13 -0
  706. package/.output/server/node_modules/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +14 -0
  707. package/.output/server/node_modules/typeorm/error/UsingJoinTableIsNotAllowedError.js +14 -0
  708. package/.output/server/node_modules/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.js +14 -0
  709. package/.output/server/node_modules/typeorm/error/index.js +66 -0
  710. package/.output/server/node_modules/typeorm/find-options/EqualOperator.js +13 -0
  711. package/.output/server/node_modules/typeorm/find-options/FindManyOptions.js +4 -0
  712. package/.output/server/node_modules/typeorm/find-options/FindOneOptions.js +4 -0
  713. package/.output/server/node_modules/typeorm/find-options/FindOperator.js +96 -0
  714. package/.output/server/node_modules/typeorm/find-options/FindOperatorType.js +4 -0
  715. package/.output/server/node_modules/typeorm/find-options/FindOptionsOrder.js +4 -0
  716. package/.output/server/node_modules/typeorm/find-options/FindOptionsRelations.js +4 -0
  717. package/.output/server/node_modules/typeorm/find-options/FindOptionsSelect.js +4 -0
  718. package/.output/server/node_modules/typeorm/find-options/FindOptionsUtils.js +350 -0
  719. package/.output/server/node_modules/typeorm/find-options/FindOptionsWhere.js +4 -0
  720. package/.output/server/node_modules/typeorm/find-options/FindTreeOptions.js +4 -0
  721. package/.output/server/node_modules/typeorm/find-options/JoinOptions.js +4 -0
  722. package/.output/server/node_modules/typeorm/find-options/OrderByCondition.js +4 -0
  723. package/.output/server/node_modules/typeorm/find-options/operator/And.js +9 -0
  724. package/.output/server/node_modules/typeorm/find-options/operator/Any.js +13 -0
  725. package/.output/server/node_modules/typeorm/find-options/operator/ArrayContainedBy.js +13 -0
  726. package/.output/server/node_modules/typeorm/find-options/operator/ArrayContains.js +13 -0
  727. package/.output/server/node_modules/typeorm/find-options/operator/ArrayOverlap.js +13 -0
  728. package/.output/server/node_modules/typeorm/find-options/operator/Between.js +13 -0
  729. package/.output/server/node_modules/typeorm/find-options/operator/Equal.js +17 -0
  730. package/.output/server/node_modules/typeorm/find-options/operator/ILike.js +13 -0
  731. package/.output/server/node_modules/typeorm/find-options/operator/In.js +13 -0
  732. package/.output/server/node_modules/typeorm/find-options/operator/IsNull.js +13 -0
  733. package/.output/server/node_modules/typeorm/find-options/operator/JsonContains.js +13 -0
  734. package/.output/server/node_modules/typeorm/find-options/operator/LessThan.js +13 -0
  735. package/.output/server/node_modules/typeorm/find-options/operator/LessThanOrEqual.js +13 -0
  736. package/.output/server/node_modules/typeorm/find-options/operator/Like.js +13 -0
  737. package/.output/server/node_modules/typeorm/find-options/operator/MoreThan.js +13 -0
  738. package/.output/server/node_modules/typeorm/find-options/operator/MoreThanOrEqual.js +13 -0
  739. package/.output/server/node_modules/typeorm/find-options/operator/Not.js +14 -0
  740. package/.output/server/node_modules/typeorm/find-options/operator/Or.js +9 -0
  741. package/.output/server/node_modules/typeorm/find-options/operator/Raw.js +12 -0
  742. package/.output/server/node_modules/typeorm/globals.js +182 -0
  743. package/.output/server/node_modules/typeorm/index.js +196 -0
  744. package/.output/server/node_modules/typeorm/index.mjs +422 -0
  745. package/.output/server/node_modules/typeorm/logger/AbstractLogger.js +238 -0
  746. package/.output/server/node_modules/typeorm/logger/AdvancedConsoleLogger.js +56 -0
  747. package/.output/server/node_modules/typeorm/logger/DebugLogger.js +78 -0
  748. package/.output/server/node_modules/typeorm/logger/FileLogger.js +88 -0
  749. package/.output/server/node_modules/typeorm/logger/FormattedConsoleLogger.js +59 -0
  750. package/.output/server/node_modules/typeorm/logger/Logger.js +4 -0
  751. package/.output/server/node_modules/typeorm/logger/LoggerFactory.js +39 -0
  752. package/.output/server/node_modules/typeorm/logger/LoggerOptions.js +4 -0
  753. package/.output/server/node_modules/typeorm/logger/SimpleConsoleLogger.js +57 -0
  754. package/.output/server/node_modules/typeorm/metadata/CheckMetadata.js +35 -0
  755. package/.output/server/node_modules/typeorm/metadata/ColumnMetadata.js +618 -0
  756. package/.output/server/node_modules/typeorm/metadata/EmbeddedMetadata.js +224 -0
  757. package/.output/server/node_modules/typeorm/metadata/EntityListenerMetadata.js +77 -0
  758. package/.output/server/node_modules/typeorm/metadata/EntityMetadata.js +692 -0
  759. package/.output/server/node_modules/typeorm/metadata/ExclusionMetadata.js +35 -0
  760. package/.output/server/node_modules/typeorm/metadata/ForeignKeyMetadata.js +57 -0
  761. package/.output/server/node_modules/typeorm/metadata/IndexMetadata.js +144 -0
  762. package/.output/server/node_modules/typeorm/metadata/RelationCountMetadata.js +39 -0
  763. package/.output/server/node_modules/typeorm/metadata/RelationIdMetadata.js +62 -0
  764. package/.output/server/node_modules/typeorm/metadata/RelationMetadata.js +440 -0
  765. package/.output/server/node_modules/typeorm/metadata/UniqueMetadata.js +101 -0
  766. package/.output/server/node_modules/typeorm/metadata/types/EventListenerTypes.js +22 -0
  767. package/.output/server/node_modules/typeorm/metadata-args/MetadataArgsStorage.js +236 -0
  768. package/.output/server/node_modules/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +145 -0
  769. package/.output/server/node_modules/typeorm/metadata-builder/EntityMetadataBuilder.js +838 -0
  770. package/.output/server/node_modules/typeorm/metadata-builder/EntityMetadataValidator.js +258 -0
  771. package/.output/server/node_modules/typeorm/metadata-builder/JunctionEntityMetadataBuilder.js +287 -0
  772. package/.output/server/node_modules/typeorm/metadata-builder/MetadataUtils.js +44 -0
  773. package/.output/server/node_modules/typeorm/metadata-builder/RelationJoinColumnBuilder.js +185 -0
  774. package/.output/server/node_modules/typeorm/migration/Migration.js +21 -0
  775. package/.output/server/node_modules/typeorm/migration/MigrationExecutor.js +534 -0
  776. package/.output/server/node_modules/typeorm/naming-strategy/DefaultNamingStrategy.js +145 -0
  777. package/.output/server/node_modules/typeorm/naming-strategy/LegacyOracleNamingStrategy.js +50 -0
  778. package/.output/server/node_modules/typeorm/package.json +268 -0
  779. package/.output/server/node_modules/typeorm/persistence/EntityPersistExecutor.js +170 -0
  780. package/.output/server/node_modules/typeorm/persistence/Subject.js +239 -0
  781. package/.output/server/node_modules/typeorm/persistence/SubjectChangedColumnsComputer.js +216 -0
  782. package/.output/server/node_modules/typeorm/persistence/SubjectDatabaseEntityLoader.js +135 -0
  783. package/.output/server/node_modules/typeorm/persistence/SubjectExecutor.js +760 -0
  784. package/.output/server/node_modules/typeorm/persistence/SubjectTopologicalSorter.js +174 -0
  785. package/.output/server/node_modules/typeorm/persistence/subject-builder/CascadesSubjectBuilder.js +107 -0
  786. package/.output/server/node_modules/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.js +218 -0
  787. package/.output/server/node_modules/typeorm/persistence/subject-builder/OneToManySubjectBuilder.js +181 -0
  788. package/.output/server/node_modules/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +155 -0
  789. package/.output/server/node_modules/typeorm/persistence/tree/ClosureSubjectExecutor.js +241 -0
  790. package/.output/server/node_modules/typeorm/persistence/tree/MaterializedPathSubjectExecutor.js +125 -0
  791. package/.output/server/node_modules/typeorm/persistence/tree/NestedSetSubjectExecutor.js +271 -0
  792. package/.output/server/node_modules/typeorm/platform/PlatformTools.js +243 -0
  793. package/.output/server/node_modules/typeorm/query-builder/Alias.js +29 -0
  794. package/.output/server/node_modules/typeorm/query-builder/Brackets.js +19 -0
  795. package/.output/server/node_modules/typeorm/query-builder/DeleteQueryBuilder.js +200 -0
  796. package/.output/server/node_modules/typeorm/query-builder/InsertQueryBuilder.js +745 -0
  797. package/.output/server/node_modules/typeorm/query-builder/JoinAttribute.js +175 -0
  798. package/.output/server/node_modules/typeorm/query-builder/NotBrackets.js +17 -0
  799. package/.output/server/node_modules/typeorm/query-builder/QueryBuilder.js +1139 -0
  800. package/.output/server/node_modules/typeorm/query-builder/QueryBuilderUtils.js +32 -0
  801. package/.output/server/node_modules/typeorm/query-builder/QueryExpressionMap.js +328 -0
  802. package/.output/server/node_modules/typeorm/query-builder/RelationIdLoader.js +503 -0
  803. package/.output/server/node_modules/typeorm/query-builder/RelationLoader.js +283 -0
  804. package/.output/server/node_modules/typeorm/query-builder/RelationQueryBuilder.js +155 -0
  805. package/.output/server/node_modules/typeorm/query-builder/RelationRemover.js +143 -0
  806. package/.output/server/node_modules/typeorm/query-builder/RelationUpdater.js +152 -0
  807. package/.output/server/node_modules/typeorm/query-builder/ReturningResultsEntityUpdator.js +176 -0
  808. package/.output/server/node_modules/typeorm/query-builder/SelectQueryBuilder.js +2656 -0
  809. package/.output/server/node_modules/typeorm/query-builder/SoftDeleteQueryBuilder.js +368 -0
  810. package/.output/server/node_modules/typeorm/query-builder/UpdateQueryBuilder.js +498 -0
  811. package/.output/server/node_modules/typeorm/query-builder/index.js +20 -0
  812. package/.output/server/node_modules/typeorm/query-builder/relation-count/RelationCountAttribute.js +80 -0
  813. package/.output/server/node_modules/typeorm/query-builder/relation-count/RelationCountLoader.js +168 -0
  814. package/.output/server/node_modules/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +55 -0
  815. package/.output/server/node_modules/typeorm/query-builder/relation-id/RelationIdAttribute.js +88 -0
  816. package/.output/server/node_modules/typeorm/query-builder/relation-id/RelationIdLoader.js +275 -0
  817. package/.output/server/node_modules/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +55 -0
  818. package/.output/server/node_modules/typeorm/query-builder/result/DeleteResult.js +17 -0
  819. package/.output/server/node_modules/typeorm/query-builder/result/InsertResult.js +28 -0
  820. package/.output/server/node_modules/typeorm/query-builder/result/UpdateResult.js +29 -0
  821. package/.output/server/node_modules/typeorm/query-builder/transformer/DocumentToEntityTransformer.js +196 -0
  822. package/.output/server/node_modules/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +112 -0
  823. package/.output/server/node_modules/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.js +92 -0
  824. package/.output/server/node_modules/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.js +447 -0
  825. package/.output/server/node_modules/typeorm/query-runner/BaseQueryRunner.js +454 -0
  826. package/.output/server/node_modules/typeorm/query-runner/QueryLock.js +28 -0
  827. package/.output/server/node_modules/typeorm/query-runner/QueryResult.js +17 -0
  828. package/.output/server/node_modules/typeorm/repository/AbstractRepository.js +92 -0
  829. package/.output/server/node_modules/typeorm/repository/BaseEntity.js +328 -0
  830. package/.output/server/node_modules/typeorm/repository/MongoRepository.js +305 -0
  831. package/.output/server/node_modules/typeorm/repository/RemoveOptions.js +4 -0
  832. package/.output/server/node_modules/typeorm/repository/Repository.js +379 -0
  833. package/.output/server/node_modules/typeorm/repository/SaveOptions.js +4 -0
  834. package/.output/server/node_modules/typeorm/repository/TreeRepository.js +255 -0
  835. package/.output/server/node_modules/typeorm/schema-builder/MongoSchemaBuilder.js +66 -0
  836. package/.output/server/node_modules/typeorm/schema-builder/RdbmsSchemaBuilder.js +929 -0
  837. package/.output/server/node_modules/typeorm/schema-builder/options/TableCheckOptions.js +4 -0
  838. package/.output/server/node_modules/typeorm/schema-builder/options/TableColumnOptions.js +4 -0
  839. package/.output/server/node_modules/typeorm/schema-builder/options/TableExclusionOptions.js +4 -0
  840. package/.output/server/node_modules/typeorm/schema-builder/options/TableForeignKeyOptions.js +4 -0
  841. package/.output/server/node_modules/typeorm/schema-builder/options/TableIndexOptions.js +4 -0
  842. package/.output/server/node_modules/typeorm/schema-builder/options/TableOptions.js +4 -0
  843. package/.output/server/node_modules/typeorm/schema-builder/options/TableUniqueOptions.js +4 -0
  844. package/.output/server/node_modules/typeorm/schema-builder/options/ViewOptions.js +4 -0
  845. package/.output/server/node_modules/typeorm/schema-builder/table/Table.js +296 -0
  846. package/.output/server/node_modules/typeorm/schema-builder/table/TableCheck.js +49 -0
  847. package/.output/server/node_modules/typeorm/schema-builder/table/TableColumn.js +117 -0
  848. package/.output/server/node_modules/typeorm/schema-builder/table/TableExclusion.js +43 -0
  849. package/.output/server/node_modules/typeorm/schema-builder/table/TableForeignKey.js +72 -0
  850. package/.output/server/node_modules/typeorm/schema-builder/table/TableIndex.js +68 -0
  851. package/.output/server/node_modules/typeorm/schema-builder/table/TableUnique.js +50 -0
  852. package/.output/server/node_modules/typeorm/schema-builder/util/TableUtils.js +41 -0
  853. package/.output/server/node_modules/typeorm/schema-builder/util/ViewUtils.js +27 -0
  854. package/.output/server/node_modules/typeorm/schema-builder/view/View.js +71 -0
  855. package/.output/server/node_modules/typeorm/subscriber/Broadcaster.js +660 -0
  856. package/.output/server/node_modules/typeorm/subscriber/BroadcasterResult.js +30 -0
  857. package/.output/server/node_modules/typeorm/subscriber/event/QueryEvent.js +4 -0
  858. package/.output/server/node_modules/typeorm/util/ApplyValueTransformers.js +25 -0
  859. package/.output/server/node_modules/typeorm/util/DateUtils.js +229 -0
  860. package/.output/server/node_modules/typeorm/util/DepGraph.js +230 -0
  861. package/.output/server/node_modules/typeorm/util/DirectoryExportedClassesLoader.js +65 -0
  862. package/.output/server/node_modules/typeorm/util/ImportUtils.js +66 -0
  863. package/.output/server/node_modules/typeorm/util/InstanceChecker.js +104 -0
  864. package/.output/server/node_modules/typeorm/util/ObjectUtils.js +49 -0
  865. package/.output/server/node_modules/typeorm/util/OrmUtils.js +443 -0
  866. package/.output/server/node_modules/typeorm/util/PathUtils.js +33 -0
  867. package/.output/server/node_modules/typeorm/util/RandomGenerator.js +154 -0
  868. package/.output/server/node_modules/typeorm/util/SqlTagUtils.js +43 -0
  869. package/.output/server/node_modules/typeorm/util/StringUtils.js +113 -0
  870. package/.output/server/node_modules/typeorm/util/TreeRepositoryUtils.js +67 -0
  871. package/.output/server/node_modules/typeorm/util/VersionUtils.js +27 -0
  872. package/.output/server/node_modules/typeorm/util/escapeRegExp.js +10 -0
  873. package/.output/server/node_modules/ufo/dist/index.mjs +630 -0
  874. package/.output/server/node_modules/ufo/package.json +47 -0
  875. package/.output/server/node_modules/unhead/dist/plugins.mjs +94 -0
  876. package/.output/server/node_modules/unhead/dist/server.mjs +220 -0
  877. package/.output/server/node_modules/unhead/dist/shared/unhead.C13swrCa.mjs +48 -0
  878. package/.output/server/node_modules/unhead/dist/shared/unhead.CApf5sj3.mjs +148 -0
  879. package/.output/server/node_modules/unhead/dist/shared/unhead.Cp0iF6eN.mjs +177 -0
  880. package/.output/server/node_modules/unhead/dist/shared/unhead.DGkFBTYv.mjs +172 -0
  881. package/.output/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +196 -0
  882. package/.output/server/node_modules/unhead/dist/shared/unhead.DZbvapt-.mjs +70 -0
  883. package/.output/server/node_modules/unhead/dist/shared/unhead.DeCxexjU.mjs +166 -0
  884. package/.output/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +38 -0
  885. package/.output/server/node_modules/unhead/dist/utils.mjs +5 -0
  886. package/.output/server/node_modules/unhead/package.json +101 -0
  887. package/.output/server/node_modules/uuid/dist/cjs/index.js +31 -0
  888. package/.output/server/node_modules/uuid/dist/cjs/max.js +3 -0
  889. package/.output/server/node_modules/uuid/dist/cjs/md5.js +13 -0
  890. package/.output/server/node_modules/uuid/dist/cjs/native.js +4 -0
  891. package/.output/server/node_modules/uuid/dist/cjs/nil.js +3 -0
  892. package/.output/server/node_modules/uuid/dist/cjs/package.json +1 -0
  893. package/.output/server/node_modules/uuid/dist/cjs/parse.js +11 -0
  894. package/.output/server/node_modules/uuid/dist/cjs/regex.js +3 -0
  895. package/.output/server/node_modules/uuid/dist/cjs/rng.js +13 -0
  896. package/.output/server/node_modules/uuid/dist/cjs/sha1.js +13 -0
  897. package/.output/server/node_modules/uuid/dist/cjs/stringify.js +39 -0
  898. package/.output/server/node_modules/uuid/dist/cjs/v1.js +87 -0
  899. package/.output/server/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
  900. package/.output/server/node_modules/uuid/dist/cjs/v3.js +14 -0
  901. package/.output/server/node_modules/uuid/dist/cjs/v35.js +41 -0
  902. package/.output/server/node_modules/uuid/dist/cjs/v4.js +29 -0
  903. package/.output/server/node_modules/uuid/dist/cjs/v5.js +14 -0
  904. package/.output/server/node_modules/uuid/dist/cjs/v6.js +19 -0
  905. package/.output/server/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
  906. package/.output/server/node_modules/uuid/dist/cjs/v7.js +69 -0
  907. package/.output/server/node_modules/uuid/dist/cjs/validate.js +7 -0
  908. package/.output/server/node_modules/uuid/dist/cjs/version.js +10 -0
  909. package/.output/server/node_modules/uuid/package.json +132 -0
  910. package/.output/server/node_modules/vue/dist/vue.cjs.js +80 -0
  911. package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
  912. package/.output/server/node_modules/vue/index.js +7 -0
  913. package/.output/server/node_modules/vue/index.mjs +1 -0
  914. package/.output/server/node_modules/vue/package.json +112 -0
  915. package/.output/server/node_modules/vue/server-renderer/index.mjs +1 -0
  916. package/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +196 -0
  917. package/.output/server/node_modules/vue-bundle-renderer/package.json +50 -0
  918. package/.output/server/node_modules/xtend/mutable.js +17 -0
  919. package/.output/server/node_modules/xtend/package.json +55 -0
  920. package/.output/server/node_modules/zod/index.js +4 -0
  921. package/.output/server/node_modules/zod/package.json +135 -0
  922. package/.output/server/node_modules/zod/v3/ZodError.js +133 -0
  923. package/.output/server/node_modules/zod/v3/errors.js +9 -0
  924. package/.output/server/node_modules/zod/v3/external.js +6 -0
  925. package/.output/server/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  926. package/.output/server/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  927. package/.output/server/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  928. package/.output/server/node_modules/zod/v3/helpers/util.js +133 -0
  929. package/.output/server/node_modules/zod/v3/index.js +4 -0
  930. package/.output/server/node_modules/zod/v3/locales/en.js +109 -0
  931. package/.output/server/node_modules/zod/v3/package.json +6 -0
  932. package/.output/server/node_modules/zod/v3/types.js +3695 -0
  933. package/.output/server/node_modules/zod/v4/classic/checks.js +1 -0
  934. package/.output/server/node_modules/zod/v4/classic/coerce.js +17 -0
  935. package/.output/server/node_modules/zod/v4/classic/compat.js +31 -0
  936. package/.output/server/node_modules/zod/v4/classic/errors.js +48 -0
  937. package/.output/server/node_modules/zod/v4/classic/external.js +20 -0
  938. package/.output/server/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  939. package/.output/server/node_modules/zod/v4/classic/index.js +4 -0
  940. package/.output/server/node_modules/zod/v4/classic/iso.js +30 -0
  941. package/.output/server/node_modules/zod/v4/classic/package.json +6 -0
  942. package/.output/server/node_modules/zod/v4/classic/parse.js +15 -0
  943. package/.output/server/node_modules/zod/v4/classic/schemas.js +1157 -0
  944. package/.output/server/node_modules/zod/v4/core/api.js +1082 -0
  945. package/.output/server/node_modules/zod/v4/core/checks.js +575 -0
  946. package/.output/server/node_modules/zod/v4/core/core.js +76 -0
  947. package/.output/server/node_modules/zod/v4/core/doc.js +35 -0
  948. package/.output/server/node_modules/zod/v4/core/errors.js +182 -0
  949. package/.output/server/node_modules/zod/v4/core/index.js +16 -0
  950. package/.output/server/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  951. package/.output/server/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  952. package/.output/server/node_modules/zod/v4/core/json-schema.js +1 -0
  953. package/.output/server/node_modules/zod/v4/core/package.json +6 -0
  954. package/.output/server/node_modules/zod/v4/core/parse.js +93 -0
  955. package/.output/server/node_modules/zod/v4/core/regexes.js +133 -0
  956. package/.output/server/node_modules/zod/v4/core/registries.js +51 -0
  957. package/.output/server/node_modules/zod/v4/core/schemas.js +2095 -0
  958. package/.output/server/node_modules/zod/v4/core/to-json-schema.js +437 -0
  959. package/.output/server/node_modules/zod/v4/core/util.js +651 -0
  960. package/.output/server/node_modules/zod/v4/core/versions.js +5 -0
  961. package/.output/server/node_modules/zod/v4/index.js +3 -0
  962. package/.output/server/node_modules/zod/v4/locales/ar.js +106 -0
  963. package/.output/server/node_modules/zod/v4/locales/az.js +105 -0
  964. package/.output/server/node_modules/zod/v4/locales/be.js +156 -0
  965. package/.output/server/node_modules/zod/v4/locales/bg.js +120 -0
  966. package/.output/server/node_modules/zod/v4/locales/ca.js +107 -0
  967. package/.output/server/node_modules/zod/v4/locales/cs.js +111 -0
  968. package/.output/server/node_modules/zod/v4/locales/da.js +115 -0
  969. package/.output/server/node_modules/zod/v4/locales/de.js +108 -0
  970. package/.output/server/node_modules/zod/v4/locales/en.js +109 -0
  971. package/.output/server/node_modules/zod/v4/locales/eo.js +109 -0
  972. package/.output/server/node_modules/zod/v4/locales/es.js +132 -0
  973. package/.output/server/node_modules/zod/v4/locales/fa.js +114 -0
  974. package/.output/server/node_modules/zod/v4/locales/fi.js +112 -0
  975. package/.output/server/node_modules/zod/v4/locales/fr-CA.js +107 -0
  976. package/.output/server/node_modules/zod/v4/locales/fr.js +108 -0
  977. package/.output/server/node_modules/zod/v4/locales/he.js +214 -0
  978. package/.output/server/node_modules/zod/v4/locales/hu.js +108 -0
  979. package/.output/server/node_modules/zod/v4/locales/hy.js +147 -0
  980. package/.output/server/node_modules/zod/v4/locales/id.js +106 -0
  981. package/.output/server/node_modules/zod/v4/locales/index.js +49 -0
  982. package/.output/server/node_modules/zod/v4/locales/is.js +109 -0
  983. package/.output/server/node_modules/zod/v4/locales/it.js +108 -0
  984. package/.output/server/node_modules/zod/v4/locales/ja.js +107 -0
  985. package/.output/server/node_modules/zod/v4/locales/ka.js +112 -0
  986. package/.output/server/node_modules/zod/v4/locales/kh.js +5 -0
  987. package/.output/server/node_modules/zod/v4/locales/km.js +110 -0
  988. package/.output/server/node_modules/zod/v4/locales/ko.js +111 -0
  989. package/.output/server/node_modules/zod/v4/locales/lt.js +203 -0
  990. package/.output/server/node_modules/zod/v4/locales/mk.js +109 -0
  991. package/.output/server/node_modules/zod/v4/locales/ms.js +107 -0
  992. package/.output/server/node_modules/zod/v4/locales/nl.js +110 -0
  993. package/.output/server/node_modules/zod/v4/locales/no.js +108 -0
  994. package/.output/server/node_modules/zod/v4/locales/ota.js +109 -0
  995. package/.output/server/node_modules/zod/v4/locales/package.json +6 -0
  996. package/.output/server/node_modules/zod/v4/locales/pl.js +109 -0
  997. package/.output/server/node_modules/zod/v4/locales/ps.js +114 -0
  998. package/.output/server/node_modules/zod/v4/locales/pt.js +108 -0
  999. package/.output/server/node_modules/zod/v4/locales/ru.js +156 -0
  1000. package/.output/server/node_modules/zod/v4/locales/sl.js +109 -0
  1001. package/.output/server/node_modules/zod/v4/locales/sv.js +110 -0
  1002. package/.output/server/node_modules/zod/v4/locales/ta.js +110 -0
  1003. package/.output/server/node_modules/zod/v4/locales/th.js +110 -0
  1004. package/.output/server/node_modules/zod/v4/locales/tr.js +105 -0
  1005. package/.output/server/node_modules/zod/v4/locales/ua.js +5 -0
  1006. package/.output/server/node_modules/zod/v4/locales/uk.js +108 -0
  1007. package/.output/server/node_modules/zod/v4/locales/ur.js +110 -0
  1008. package/.output/server/node_modules/zod/v4/locales/uz.js +109 -0
  1009. package/.output/server/node_modules/zod/v4/locales/vi.js +108 -0
  1010. package/.output/server/node_modules/zod/v4/locales/yo.js +107 -0
  1011. package/.output/server/node_modules/zod/v4/locales/zh-CN.js +109 -0
  1012. package/.output/server/node_modules/zod/v4/locales/zh-TW.js +107 -0
  1013. package/.output/server/node_modules/zod/v4/package.json +6 -0
  1014. package/.output/server/package.json +95 -0
  1015. package/README.md +46 -0
  1016. package/bin/cli.mjs +113 -0
  1017. package/bin/entry.cjs +84 -0
  1018. package/package.json +48 -0
@@ -0,0 +1,1511 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractSqliteQueryRunner = void 0;
4
+ const TransactionNotStartedError_1 = require("../../error/TransactionNotStartedError");
5
+ const TableColumn_1 = require("../../schema-builder/table/TableColumn");
6
+ const Table_1 = require("../../schema-builder/table/Table");
7
+ const TableIndex_1 = require("../../schema-builder/table/TableIndex");
8
+ const TableForeignKey_1 = require("../../schema-builder/table/TableForeignKey");
9
+ const View_1 = require("../../schema-builder/view/View");
10
+ const Query_1 = require("../Query");
11
+ const TableUnique_1 = require("../../schema-builder/table/TableUnique");
12
+ const BaseQueryRunner_1 = require("../../query-runner/BaseQueryRunner");
13
+ const OrmUtils_1 = require("../../util/OrmUtils");
14
+ const TableCheck_1 = require("../../schema-builder/table/TableCheck");
15
+ const error_1 = require("../../error");
16
+ const MetadataTableType_1 = require("../types/MetadataTableType");
17
+ const InstanceChecker_1 = require("../../util/InstanceChecker");
18
+ /**
19
+ * Runs queries on a single sqlite database connection.
20
+ */
21
+ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
22
+ // -------------------------------------------------------------------------
23
+ // Constructor
24
+ // -------------------------------------------------------------------------
25
+ constructor() {
26
+ super();
27
+ this.transactionPromise = null;
28
+ }
29
+ // -------------------------------------------------------------------------
30
+ // Public Methods
31
+ // -------------------------------------------------------------------------
32
+ /**
33
+ * Creates/uses database connection from the connection pool to perform further operations.
34
+ * Returns obtained database connection.
35
+ */
36
+ connect() {
37
+ return Promise.resolve(this.driver.databaseConnection);
38
+ }
39
+ /**
40
+ * Releases used database connection.
41
+ * We just clear loaded tables and sql in memory, because sqlite do not support multiple connections thus query runners.
42
+ */
43
+ release() {
44
+ this.loadedTables = [];
45
+ this.clearSqlMemory();
46
+ return Promise.resolve();
47
+ }
48
+ /**
49
+ * Starts transaction.
50
+ */
51
+ async startTransaction(isolationLevel) {
52
+ if (this.driver.transactionSupport === "none")
53
+ throw new error_1.TypeORMError(`Transactions aren't supported by ${this.connection.driver.options.type}.`);
54
+ if (this.isTransactionActive &&
55
+ this.driver.transactionSupport === "simple")
56
+ throw new error_1.TransactionAlreadyStartedError();
57
+ if (isolationLevel &&
58
+ isolationLevel !== "READ UNCOMMITTED" &&
59
+ isolationLevel !== "SERIALIZABLE")
60
+ throw new error_1.TypeORMError(`SQLite only supports SERIALIZABLE and READ UNCOMMITTED isolation`);
61
+ this.isTransactionActive = true;
62
+ try {
63
+ await this.broadcaster.broadcast("BeforeTransactionStart");
64
+ }
65
+ catch (err) {
66
+ this.isTransactionActive = false;
67
+ throw err;
68
+ }
69
+ if (this.transactionDepth === 0) {
70
+ if (isolationLevel) {
71
+ if (isolationLevel === "READ UNCOMMITTED") {
72
+ await this.query("PRAGMA read_uncommitted = true");
73
+ }
74
+ else {
75
+ await this.query("PRAGMA read_uncommitted = false");
76
+ }
77
+ }
78
+ await this.query("BEGIN TRANSACTION");
79
+ }
80
+ else {
81
+ await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`);
82
+ }
83
+ this.transactionDepth += 1;
84
+ await this.broadcaster.broadcast("AfterTransactionStart");
85
+ }
86
+ /**
87
+ * Commits transaction.
88
+ * Error will be thrown if transaction was not started.
89
+ */
90
+ async commitTransaction() {
91
+ if (!this.isTransactionActive)
92
+ throw new TransactionNotStartedError_1.TransactionNotStartedError();
93
+ await this.broadcaster.broadcast("BeforeTransactionCommit");
94
+ if (this.transactionDepth > 1) {
95
+ await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);
96
+ }
97
+ else {
98
+ await this.query("COMMIT");
99
+ this.isTransactionActive = false;
100
+ }
101
+ this.transactionDepth -= 1;
102
+ await this.broadcaster.broadcast("AfterTransactionCommit");
103
+ }
104
+ /**
105
+ * Rollbacks transaction.
106
+ * Error will be thrown if transaction was not started.
107
+ */
108
+ async rollbackTransaction() {
109
+ if (!this.isTransactionActive)
110
+ throw new TransactionNotStartedError_1.TransactionNotStartedError();
111
+ await this.broadcaster.broadcast("BeforeTransactionRollback");
112
+ if (this.transactionDepth > 1) {
113
+ await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);
114
+ }
115
+ else {
116
+ await this.query("ROLLBACK");
117
+ this.isTransactionActive = false;
118
+ }
119
+ this.transactionDepth -= 1;
120
+ await this.broadcaster.broadcast("AfterTransactionRollback");
121
+ }
122
+ /**
123
+ * Returns raw data stream.
124
+ */
125
+ stream(query, parameters, onEnd, onError) {
126
+ throw new error_1.TypeORMError(`Stream is not supported by sqlite driver.`);
127
+ }
128
+ /**
129
+ * Returns all available database names including system databases.
130
+ */
131
+ async getDatabases() {
132
+ return Promise.resolve([]);
133
+ }
134
+ /**
135
+ * Returns all available schema names including system schemas.
136
+ * If database parameter specified, returns schemas of that database.
137
+ */
138
+ async getSchemas(database) {
139
+ return Promise.resolve([]);
140
+ }
141
+ /**
142
+ * Checks if database with the given name exist.
143
+ */
144
+ async hasDatabase(database) {
145
+ return Promise.resolve(false);
146
+ }
147
+ /**
148
+ * Loads currently using database
149
+ */
150
+ async getCurrentDatabase() {
151
+ return Promise.resolve(undefined);
152
+ }
153
+ /**
154
+ * Checks if schema with the given name exist.
155
+ */
156
+ async hasSchema(schema) {
157
+ throw new error_1.TypeORMError(`This driver does not support table schemas`);
158
+ }
159
+ /**
160
+ * Loads currently using database schema
161
+ */
162
+ async getCurrentSchema() {
163
+ return Promise.resolve(undefined);
164
+ }
165
+ /**
166
+ * Checks if table with the given name exist in the database.
167
+ */
168
+ async hasTable(tableOrName) {
169
+ const tableName = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
170
+ ? tableOrName.name
171
+ : tableOrName;
172
+ const sql = `SELECT * FROM "sqlite_master" WHERE "type" = 'table' AND "name" = '${tableName}'`;
173
+ const result = await this.query(sql);
174
+ return result.length ? true : false;
175
+ }
176
+ /**
177
+ * Checks if column with the given name exist in the given table.
178
+ */
179
+ async hasColumn(tableOrName, columnName) {
180
+ const tableName = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
181
+ ? tableOrName.name
182
+ : tableOrName;
183
+ const sql = `PRAGMA table_xinfo(${this.escapePath(tableName)})`;
184
+ const columns = await this.query(sql);
185
+ return !!columns.find((column) => column["name"] === columnName);
186
+ }
187
+ /**
188
+ * Creates a new database.
189
+ */
190
+ async createDatabase(database, ifNotExist) {
191
+ return Promise.resolve();
192
+ }
193
+ /**
194
+ * Drops database.
195
+ */
196
+ async dropDatabase(database, ifExist) {
197
+ return Promise.resolve();
198
+ }
199
+ /**
200
+ * Creates a new table schema.
201
+ */
202
+ async createSchema(schemaPath, ifNotExist) {
203
+ return Promise.resolve();
204
+ }
205
+ /**
206
+ * Drops table schema.
207
+ */
208
+ async dropSchema(schemaPath, ifExist) {
209
+ return Promise.resolve();
210
+ }
211
+ /**
212
+ * Creates a new table.
213
+ */
214
+ async createTable(table, ifNotExist = false, createForeignKeys = true, createIndices = true) {
215
+ const upQueries = [];
216
+ const downQueries = [];
217
+ if (ifNotExist) {
218
+ const isTableExist = await this.hasTable(table);
219
+ if (isTableExist)
220
+ return Promise.resolve();
221
+ }
222
+ upQueries.push(this.createTableSql(table, createForeignKeys));
223
+ downQueries.push(this.dropTableSql(table));
224
+ if (createIndices) {
225
+ table.indices.forEach((index) => {
226
+ // new index may be passed without name. In this case we generate index name manually.
227
+ if (!index.name)
228
+ index.name = this.connection.namingStrategy.indexName(table, index.columnNames, index.where);
229
+ upQueries.push(this.createIndexSql(table, index));
230
+ downQueries.push(this.dropIndexSql(index));
231
+ });
232
+ }
233
+ // if table have column with generated type, we must add the expression to the metadata table
234
+ const generatedColumns = table.columns.filter((column) => column.generatedType && column.asExpression);
235
+ for (const column of generatedColumns) {
236
+ const insertQuery = this.insertTypeormMetadataSql({
237
+ table: table.name,
238
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
239
+ name: column.name,
240
+ value: column.asExpression,
241
+ });
242
+ const deleteQuery = this.deleteTypeormMetadataSql({
243
+ table: table.name,
244
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
245
+ name: column.name,
246
+ });
247
+ upQueries.push(insertQuery);
248
+ downQueries.push(deleteQuery);
249
+ }
250
+ await this.executeQueries(upQueries, downQueries);
251
+ }
252
+ /**
253
+ * Drops the table.
254
+ */
255
+ async dropTable(tableOrName, ifExist, dropForeignKeys = true, dropIndices = true) {
256
+ if (ifExist) {
257
+ const isTableExist = await this.hasTable(tableOrName);
258
+ if (!isTableExist)
259
+ return Promise.resolve();
260
+ }
261
+ // if dropTable called with dropForeignKeys = true, we must create foreign keys in down query.
262
+ const createForeignKeys = dropForeignKeys;
263
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
264
+ ? tableOrName
265
+ : await this.getCachedTable(tableOrName);
266
+ const upQueries = [];
267
+ const downQueries = [];
268
+ if (dropIndices) {
269
+ table.indices.forEach((index) => {
270
+ upQueries.push(this.dropIndexSql(index));
271
+ downQueries.push(this.createIndexSql(table, index));
272
+ });
273
+ }
274
+ upQueries.push(this.dropTableSql(table, ifExist));
275
+ downQueries.push(this.createTableSql(table, createForeignKeys));
276
+ // if table had columns with generated type, we must remove the expression from the metadata table
277
+ const generatedColumns = table.columns.filter((column) => column.generatedType && column.asExpression);
278
+ for (const column of generatedColumns) {
279
+ const deleteQuery = this.deleteTypeormMetadataSql({
280
+ table: table.name,
281
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
282
+ name: column.name,
283
+ });
284
+ const insertQuery = this.insertTypeormMetadataSql({
285
+ table: table.name,
286
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
287
+ name: column.name,
288
+ value: column.asExpression,
289
+ });
290
+ upQueries.push(deleteQuery);
291
+ downQueries.push(insertQuery);
292
+ }
293
+ await this.executeQueries(upQueries, downQueries);
294
+ }
295
+ /**
296
+ * Creates a new view.
297
+ */
298
+ async createView(view, syncWithMetadata = false) {
299
+ const upQueries = [];
300
+ const downQueries = [];
301
+ upQueries.push(this.createViewSql(view));
302
+ if (syncWithMetadata)
303
+ upQueries.push(this.insertViewDefinitionSql(view));
304
+ downQueries.push(this.dropViewSql(view));
305
+ if (syncWithMetadata)
306
+ downQueries.push(this.deleteViewDefinitionSql(view));
307
+ await this.executeQueries(upQueries, downQueries);
308
+ }
309
+ /**
310
+ * Drops the view.
311
+ */
312
+ async dropView(target) {
313
+ const viewName = InstanceChecker_1.InstanceChecker.isView(target) ? target.name : target;
314
+ const view = await this.getCachedView(viewName);
315
+ const upQueries = [];
316
+ const downQueries = [];
317
+ upQueries.push(this.deleteViewDefinitionSql(view));
318
+ upQueries.push(this.dropViewSql(view));
319
+ downQueries.push(this.insertViewDefinitionSql(view));
320
+ downQueries.push(this.createViewSql(view));
321
+ await this.executeQueries(upQueries, downQueries);
322
+ }
323
+ /**
324
+ * Renames the given table.
325
+ */
326
+ async renameTable(oldTableOrName, newTableName) {
327
+ const oldTable = InstanceChecker_1.InstanceChecker.isTable(oldTableOrName)
328
+ ? oldTableOrName
329
+ : await this.getCachedTable(oldTableOrName);
330
+ const newTable = oldTable.clone();
331
+ newTable.name = newTableName;
332
+ // rename table
333
+ const up = new Query_1.Query(`ALTER TABLE ${this.escapePath(oldTable.name)} RENAME TO ${this.escapePath(newTableName)}`);
334
+ const down = new Query_1.Query(`ALTER TABLE ${this.escapePath(newTableName)} RENAME TO ${this.escapePath(oldTable.name)}`);
335
+ await this.executeQueries(up, down);
336
+ // rename unique constraints
337
+ newTable.uniques.forEach((unique) => {
338
+ const oldUniqueName = this.connection.namingStrategy.uniqueConstraintName(oldTable, unique.columnNames);
339
+ // Skip renaming if Unique has user defined constraint name
340
+ if (unique.name !== oldUniqueName)
341
+ return;
342
+ unique.name = this.connection.namingStrategy.uniqueConstraintName(newTable, unique.columnNames);
343
+ });
344
+ // rename foreign key constraints
345
+ newTable.foreignKeys.forEach((foreignKey) => {
346
+ const oldForeignKeyName = this.connection.namingStrategy.foreignKeyName(oldTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
347
+ // Skip renaming if foreign key has user defined constraint name
348
+ if (foreignKey.name !== oldForeignKeyName)
349
+ return;
350
+ foreignKey.name = this.connection.namingStrategy.foreignKeyName(newTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
351
+ });
352
+ // rename indices
353
+ newTable.indices.forEach((index) => {
354
+ const oldIndexName = this.connection.namingStrategy.indexName(oldTable, index.columnNames, index.where);
355
+ // Skip renaming if Index has user defined constraint name
356
+ if (index.name !== oldIndexName)
357
+ return;
358
+ index.name = this.connection.namingStrategy.indexName(newTable, index.columnNames, index.where);
359
+ });
360
+ // rename old table;
361
+ oldTable.name = newTable.name;
362
+ // recreate table with new constraint names
363
+ await this.recreateTable(newTable, oldTable);
364
+ }
365
+ /**
366
+ * Creates a new column from the column in the table.
367
+ */
368
+ async addColumn(tableOrName, column) {
369
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
370
+ ? tableOrName
371
+ : await this.getCachedTable(tableOrName);
372
+ return this.addColumns(table, [column]);
373
+ }
374
+ /**
375
+ * Creates a new columns from the column in the table.
376
+ */
377
+ async addColumns(tableOrName, columns) {
378
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
379
+ ? tableOrName
380
+ : await this.getCachedTable(tableOrName);
381
+ const changedTable = table.clone();
382
+ columns.forEach((column) => changedTable.addColumn(column));
383
+ await this.recreateTable(changedTable, table);
384
+ }
385
+ /**
386
+ * Renames column in the given table.
387
+ */
388
+ async renameColumn(tableOrName, oldTableColumnOrName, newTableColumnOrName) {
389
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
390
+ ? tableOrName
391
+ : await this.getCachedTable(tableOrName);
392
+ const oldColumn = InstanceChecker_1.InstanceChecker.isTableColumn(oldTableColumnOrName)
393
+ ? oldTableColumnOrName
394
+ : table.columns.find((c) => c.name === oldTableColumnOrName);
395
+ if (!oldColumn)
396
+ throw new error_1.TypeORMError(`Column "${oldTableColumnOrName}" was not found in the "${table.name}" table.`);
397
+ let newColumn = undefined;
398
+ if (InstanceChecker_1.InstanceChecker.isTableColumn(newTableColumnOrName)) {
399
+ newColumn = newTableColumnOrName;
400
+ }
401
+ else {
402
+ newColumn = oldColumn.clone();
403
+ newColumn.name = newTableColumnOrName;
404
+ }
405
+ return this.changeColumn(table, oldColumn, newColumn);
406
+ }
407
+ /**
408
+ * Changes a column in the table.
409
+ */
410
+ async changeColumn(tableOrName, oldTableColumnOrName, newColumn) {
411
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
412
+ ? tableOrName
413
+ : await this.getCachedTable(tableOrName);
414
+ const oldColumn = InstanceChecker_1.InstanceChecker.isTableColumn(oldTableColumnOrName)
415
+ ? oldTableColumnOrName
416
+ : table.columns.find((c) => c.name === oldTableColumnOrName);
417
+ if (!oldColumn)
418
+ throw new error_1.TypeORMError(`Column "${oldTableColumnOrName}" was not found in the "${table.name}" table.`);
419
+ await this.changeColumns(table, [{ oldColumn, newColumn }]);
420
+ }
421
+ /**
422
+ * Changes a column in the table.
423
+ * Changed column looses all its keys in the db.
424
+ */
425
+ async changeColumns(tableOrName, changedColumns) {
426
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
427
+ ? tableOrName
428
+ : await this.getCachedTable(tableOrName);
429
+ const changedTable = table.clone();
430
+ changedColumns.forEach((changedColumnSet) => {
431
+ if (changedColumnSet.newColumn.name !==
432
+ changedColumnSet.oldColumn.name) {
433
+ changedTable
434
+ .findColumnUniques(changedColumnSet.oldColumn)
435
+ .forEach((unique) => {
436
+ const uniqueName = this.connection.namingStrategy.uniqueConstraintName(table, unique.columnNames);
437
+ unique.columnNames.splice(unique.columnNames.indexOf(changedColumnSet.oldColumn.name), 1);
438
+ unique.columnNames.push(changedColumnSet.newColumn.name);
439
+ // rename Unique only if it has default constraint name
440
+ if (unique.name === uniqueName) {
441
+ unique.name =
442
+ this.connection.namingStrategy.uniqueConstraintName(changedTable, unique.columnNames);
443
+ }
444
+ });
445
+ changedTable
446
+ .findColumnForeignKeys(changedColumnSet.oldColumn)
447
+ .forEach((foreignKey) => {
448
+ const foreignKeyName = this.connection.namingStrategy.foreignKeyName(table, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
449
+ foreignKey.columnNames.splice(foreignKey.columnNames.indexOf(changedColumnSet.oldColumn.name), 1);
450
+ foreignKey.columnNames.push(changedColumnSet.newColumn.name);
451
+ // rename FK only if it has default constraint name
452
+ if (foreignKey.name === foreignKeyName) {
453
+ foreignKey.name =
454
+ this.connection.namingStrategy.foreignKeyName(changedTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
455
+ }
456
+ });
457
+ changedTable
458
+ .findColumnIndices(changedColumnSet.oldColumn)
459
+ .forEach((index) => {
460
+ const indexName = this.connection.namingStrategy.indexName(table, index.columnNames, index.where);
461
+ index.columnNames.splice(index.columnNames.indexOf(changedColumnSet.oldColumn.name), 1);
462
+ index.columnNames.push(changedColumnSet.newColumn.name);
463
+ // rename Index only if it has default constraint name
464
+ if (index.name === indexName) {
465
+ index.name =
466
+ this.connection.namingStrategy.indexName(changedTable, index.columnNames, index.where);
467
+ }
468
+ });
469
+ }
470
+ const originalColumn = changedTable.columns.find((column) => column.name === changedColumnSet.oldColumn.name);
471
+ if (originalColumn)
472
+ changedTable.columns[changedTable.columns.indexOf(originalColumn)] = changedColumnSet.newColumn;
473
+ });
474
+ await this.recreateTable(changedTable, table);
475
+ }
476
+ /**
477
+ * Drops column in the table.
478
+ */
479
+ async dropColumn(tableOrName, columnOrName) {
480
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
481
+ ? tableOrName
482
+ : await this.getCachedTable(tableOrName);
483
+ const column = InstanceChecker_1.InstanceChecker.isTableColumn(columnOrName)
484
+ ? columnOrName
485
+ : table.findColumnByName(columnOrName);
486
+ if (!column)
487
+ throw new error_1.TypeORMError(`Column "${columnOrName}" was not found in table "${table.name}"`);
488
+ await this.dropColumns(table, [column]);
489
+ }
490
+ /**
491
+ * Drops the columns in the table.
492
+ */
493
+ async dropColumns(tableOrName, columns) {
494
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
495
+ ? tableOrName
496
+ : await this.getCachedTable(tableOrName);
497
+ // clone original table and remove column and its constraints from cloned table
498
+ const changedTable = table.clone();
499
+ columns.forEach((column) => {
500
+ const columnInstance = InstanceChecker_1.InstanceChecker.isTableColumn(column)
501
+ ? column
502
+ : table.findColumnByName(column);
503
+ if (!columnInstance)
504
+ throw new Error(`Column "${column}" was not found in table "${table.name}"`);
505
+ changedTable.removeColumn(columnInstance);
506
+ changedTable
507
+ .findColumnUniques(columnInstance)
508
+ .forEach((unique) => changedTable.removeUniqueConstraint(unique));
509
+ changedTable
510
+ .findColumnIndices(columnInstance)
511
+ .forEach((index) => changedTable.removeIndex(index));
512
+ changedTable
513
+ .findColumnForeignKeys(columnInstance)
514
+ .forEach((fk) => changedTable.removeForeignKey(fk));
515
+ });
516
+ await this.recreateTable(changedTable, table);
517
+ }
518
+ /**
519
+ * Creates a new primary key.
520
+ */
521
+ async createPrimaryKey(tableOrName, columnNames) {
522
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
523
+ ? tableOrName
524
+ : await this.getCachedTable(tableOrName);
525
+ // clone original table and mark columns as primary
526
+ const changedTable = table.clone();
527
+ changedTable.columns.forEach((column) => {
528
+ if (columnNames.find((columnName) => columnName === column.name))
529
+ column.isPrimary = true;
530
+ });
531
+ await this.recreateTable(changedTable, table);
532
+ // mark columns as primary in original table
533
+ table.columns.forEach((column) => {
534
+ if (columnNames.find((columnName) => columnName === column.name))
535
+ column.isPrimary = true;
536
+ });
537
+ }
538
+ /**
539
+ * Updates composite primary keys.
540
+ */
541
+ async updatePrimaryKeys(tableOrName, columns) {
542
+ await Promise.resolve();
543
+ }
544
+ /**
545
+ * Drops a primary key.
546
+ */
547
+ async dropPrimaryKey(tableOrName) {
548
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
549
+ ? tableOrName
550
+ : await this.getCachedTable(tableOrName);
551
+ // clone original table and mark primary columns as non-primary
552
+ const changedTable = table.clone();
553
+ changedTable.primaryColumns.forEach((column) => {
554
+ column.isPrimary = false;
555
+ });
556
+ await this.recreateTable(changedTable, table);
557
+ // mark primary columns as non-primary in original table
558
+ table.primaryColumns.forEach((column) => {
559
+ column.isPrimary = false;
560
+ });
561
+ }
562
+ /**
563
+ * Creates a new unique constraint.
564
+ */
565
+ async createUniqueConstraint(tableOrName, uniqueConstraint) {
566
+ await this.createUniqueConstraints(tableOrName, [uniqueConstraint]);
567
+ }
568
+ /**
569
+ * Creates a new unique constraints.
570
+ */
571
+ async createUniqueConstraints(tableOrName, uniqueConstraints) {
572
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
573
+ ? tableOrName
574
+ : await this.getCachedTable(tableOrName);
575
+ // clone original table and add unique constraints in to cloned table
576
+ const changedTable = table.clone();
577
+ uniqueConstraints.forEach((uniqueConstraint) => changedTable.addUniqueConstraint(uniqueConstraint));
578
+ await this.recreateTable(changedTable, table);
579
+ }
580
+ /**
581
+ * Drops an unique constraint.
582
+ */
583
+ async dropUniqueConstraint(tableOrName, uniqueOrName) {
584
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
585
+ ? tableOrName
586
+ : await this.getCachedTable(tableOrName);
587
+ const uniqueConstraint = InstanceChecker_1.InstanceChecker.isTableUnique(uniqueOrName)
588
+ ? uniqueOrName
589
+ : table.uniques.find((u) => u.name === uniqueOrName);
590
+ if (!uniqueConstraint)
591
+ throw new error_1.TypeORMError(`Supplied unique constraint was not found in table ${table.name}`);
592
+ await this.dropUniqueConstraints(table, [uniqueConstraint]);
593
+ }
594
+ /**
595
+ * Creates an unique constraints.
596
+ */
597
+ async dropUniqueConstraints(tableOrName, uniqueConstraints) {
598
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
599
+ ? tableOrName
600
+ : await this.getCachedTable(tableOrName);
601
+ // clone original table and remove unique constraints from cloned table
602
+ const changedTable = table.clone();
603
+ uniqueConstraints.forEach((uniqueConstraint) => changedTable.removeUniqueConstraint(uniqueConstraint));
604
+ await this.recreateTable(changedTable, table);
605
+ }
606
+ /**
607
+ * Creates new check constraint.
608
+ */
609
+ async createCheckConstraint(tableOrName, checkConstraint) {
610
+ await this.createCheckConstraints(tableOrName, [checkConstraint]);
611
+ }
612
+ /**
613
+ * Creates new check constraints.
614
+ */
615
+ async createCheckConstraints(tableOrName, checkConstraints) {
616
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
617
+ ? tableOrName
618
+ : await this.getCachedTable(tableOrName);
619
+ // clone original table and add check constraints in to cloned table
620
+ const changedTable = table.clone();
621
+ checkConstraints.forEach((checkConstraint) => changedTable.addCheckConstraint(checkConstraint));
622
+ await this.recreateTable(changedTable, table);
623
+ }
624
+ /**
625
+ * Drops check constraint.
626
+ */
627
+ async dropCheckConstraint(tableOrName, checkOrName) {
628
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
629
+ ? tableOrName
630
+ : await this.getCachedTable(tableOrName);
631
+ const checkConstraint = InstanceChecker_1.InstanceChecker.isTableCheck(checkOrName)
632
+ ? checkOrName
633
+ : table.checks.find((c) => c.name === checkOrName);
634
+ if (!checkConstraint)
635
+ throw new error_1.TypeORMError(`Supplied check constraint was not found in table ${table.name}`);
636
+ await this.dropCheckConstraints(table, [checkConstraint]);
637
+ }
638
+ /**
639
+ * Drops check constraints.
640
+ */
641
+ async dropCheckConstraints(tableOrName, checkConstraints) {
642
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
643
+ ? tableOrName
644
+ : await this.getCachedTable(tableOrName);
645
+ // clone original table and remove check constraints from cloned table
646
+ const changedTable = table.clone();
647
+ checkConstraints.forEach((checkConstraint) => changedTable.removeCheckConstraint(checkConstraint));
648
+ await this.recreateTable(changedTable, table);
649
+ }
650
+ /**
651
+ * Creates a new exclusion constraint.
652
+ */
653
+ async createExclusionConstraint(tableOrName, exclusionConstraint) {
654
+ throw new error_1.TypeORMError(`Sqlite does not support exclusion constraints.`);
655
+ }
656
+ /**
657
+ * Creates a new exclusion constraints.
658
+ */
659
+ async createExclusionConstraints(tableOrName, exclusionConstraints) {
660
+ throw new error_1.TypeORMError(`Sqlite does not support exclusion constraints.`);
661
+ }
662
+ /**
663
+ * Drops exclusion constraint.
664
+ */
665
+ async dropExclusionConstraint(tableOrName, exclusionOrName) {
666
+ throw new error_1.TypeORMError(`Sqlite does not support exclusion constraints.`);
667
+ }
668
+ /**
669
+ * Drops exclusion constraints.
670
+ */
671
+ async dropExclusionConstraints(tableOrName, exclusionConstraints) {
672
+ throw new error_1.TypeORMError(`Sqlite does not support exclusion constraints.`);
673
+ }
674
+ /**
675
+ * Creates a new foreign key.
676
+ */
677
+ async createForeignKey(tableOrName, foreignKey) {
678
+ await this.createForeignKeys(tableOrName, [foreignKey]);
679
+ }
680
+ /**
681
+ * Creates a new foreign keys.
682
+ */
683
+ async createForeignKeys(tableOrName, foreignKeys) {
684
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
685
+ ? tableOrName
686
+ : await this.getCachedTable(tableOrName);
687
+ // clone original table and add foreign keys in to cloned table
688
+ const changedTable = table.clone();
689
+ foreignKeys.forEach((foreignKey) => changedTable.addForeignKey(foreignKey));
690
+ await this.recreateTable(changedTable, table);
691
+ }
692
+ /**
693
+ * Drops a foreign key from the table.
694
+ */
695
+ async dropForeignKey(tableOrName, foreignKeyOrName) {
696
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
697
+ ? tableOrName
698
+ : await this.getCachedTable(tableOrName);
699
+ const foreignKey = InstanceChecker_1.InstanceChecker.isTableForeignKey(foreignKeyOrName)
700
+ ? foreignKeyOrName
701
+ : table.foreignKeys.find((fk) => fk.name === foreignKeyOrName);
702
+ if (!foreignKey)
703
+ throw new error_1.TypeORMError(`Supplied foreign key was not found in table ${table.name}`);
704
+ await this.dropForeignKeys(tableOrName, [foreignKey]);
705
+ }
706
+ /**
707
+ * Drops a foreign keys from the table.
708
+ */
709
+ async dropForeignKeys(tableOrName, foreignKeys) {
710
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
711
+ ? tableOrName
712
+ : await this.getCachedTable(tableOrName);
713
+ // clone original table and remove foreign keys from cloned table
714
+ const changedTable = table.clone();
715
+ foreignKeys.forEach((foreignKey) => changedTable.removeForeignKey(foreignKey));
716
+ await this.recreateTable(changedTable, table);
717
+ }
718
+ /**
719
+ * Creates a new index.
720
+ */
721
+ async createIndex(tableOrName, index) {
722
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
723
+ ? tableOrName
724
+ : await this.getCachedTable(tableOrName);
725
+ // new index may be passed without name. In this case we generate index name manually.
726
+ if (!index.name)
727
+ index.name = this.generateIndexName(table, index);
728
+ const up = this.createIndexSql(table, index);
729
+ const down = this.dropIndexSql(index);
730
+ await this.executeQueries(up, down);
731
+ table.addIndex(index);
732
+ }
733
+ /**
734
+ * Creates a new indices
735
+ */
736
+ async createIndices(tableOrName, indices) {
737
+ const promises = indices.map((index) => this.createIndex(tableOrName, index));
738
+ await Promise.all(promises);
739
+ }
740
+ /**
741
+ * Drops an index from the table.
742
+ */
743
+ async dropIndex(tableOrName, indexOrName) {
744
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
745
+ ? tableOrName
746
+ : await this.getCachedTable(tableOrName);
747
+ const index = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
748
+ ? indexOrName
749
+ : table.indices.find((i) => i.name === indexOrName);
750
+ if (!index)
751
+ throw new error_1.TypeORMError(`Supplied index ${indexOrName} was not found in table ${table.name}`);
752
+ // old index may be passed without name. In this case we generate index name manually.
753
+ if (!index.name)
754
+ index.name = this.generateIndexName(table, index);
755
+ const up = this.dropIndexSql(index);
756
+ const down = this.createIndexSql(table, index);
757
+ await this.executeQueries(up, down);
758
+ table.removeIndex(index);
759
+ }
760
+ /**
761
+ * Drops an indices from the table.
762
+ */
763
+ async dropIndices(tableOrName, indices) {
764
+ const promises = indices.map((index) => this.dropIndex(tableOrName, index));
765
+ await Promise.all(promises);
766
+ }
767
+ /**
768
+ * Clears all table contents.
769
+ * Note: this operation uses SQL's TRUNCATE query which cannot be reverted in transactions.
770
+ */
771
+ async clearTable(tableName) {
772
+ await this.query(`DELETE FROM ${this.escapePath(tableName)}`);
773
+ }
774
+ /**
775
+ * Removes all tables from the currently connected database.
776
+ */
777
+ async clearDatabase(database) {
778
+ let dbPath = undefined;
779
+ if (database &&
780
+ this.driver.getAttachedDatabaseHandleByRelativePath(database)) {
781
+ dbPath =
782
+ this.driver.getAttachedDatabaseHandleByRelativePath(database);
783
+ }
784
+ await this.query(`PRAGMA foreign_keys = OFF`);
785
+ const isAnotherTransactionActive = this.isTransactionActive;
786
+ if (!isAnotherTransactionActive)
787
+ await this.startTransaction();
788
+ try {
789
+ const selectViewDropsQuery = dbPath
790
+ ? `SELECT 'DROP VIEW "${dbPath}"."' || name || '";' as query FROM "${dbPath}"."sqlite_master" WHERE "type" = 'view'`
791
+ : `SELECT 'DROP VIEW "' || name || '";' as query FROM "sqlite_master" WHERE "type" = 'view'`;
792
+ const dropViewQueries = await this.query(selectViewDropsQuery);
793
+ await Promise.all(dropViewQueries.map((q) => this.query(q["query"])));
794
+ const selectTableDropsQuery = dbPath
795
+ ? `SELECT 'DROP TABLE "${dbPath}"."' || name || '";' as query FROM "${dbPath}"."sqlite_master" WHERE "type" = 'table' AND "name" != 'sqlite_sequence'`
796
+ : `SELECT 'DROP TABLE "' || name || '";' as query FROM "sqlite_master" WHERE "type" = 'table' AND "name" != 'sqlite_sequence'`;
797
+ const dropTableQueries = await this.query(selectTableDropsQuery);
798
+ await Promise.all(dropTableQueries.map((q) => this.query(q["query"])));
799
+ if (!isAnotherTransactionActive)
800
+ await this.commitTransaction();
801
+ }
802
+ catch (error) {
803
+ try {
804
+ // we throw original error even if rollback thrown an error
805
+ if (!isAnotherTransactionActive)
806
+ await this.rollbackTransaction();
807
+ }
808
+ catch (rollbackError) { }
809
+ throw error;
810
+ }
811
+ finally {
812
+ await this.query(`PRAGMA foreign_keys = ON`);
813
+ }
814
+ }
815
+ // -------------------------------------------------------------------------
816
+ // Protected Methods
817
+ // -------------------------------------------------------------------------
818
+ async loadViews(viewNames) {
819
+ const hasTable = await this.hasTable(this.getTypeormMetadataTableName());
820
+ if (!hasTable) {
821
+ return [];
822
+ }
823
+ if (!viewNames) {
824
+ viewNames = [];
825
+ }
826
+ const viewNamesString = viewNames
827
+ .map((name) => "'" + name + "'")
828
+ .join(", ");
829
+ let query = `SELECT "t".* FROM "${this.getTypeormMetadataTableName()}" "t" INNER JOIN "sqlite_master" s ON "s"."name" = "t"."name" AND "s"."type" = 'view' WHERE "t"."type" = '${MetadataTableType_1.MetadataTableType.VIEW}'`;
830
+ if (viewNamesString.length > 0)
831
+ query += ` AND "t"."name" IN (${viewNamesString})`;
832
+ const dbViews = await this.query(query);
833
+ return dbViews.map((dbView) => {
834
+ const view = new View_1.View();
835
+ view.name = dbView["name"];
836
+ view.expression = dbView["value"];
837
+ return view;
838
+ });
839
+ }
840
+ async loadTableRecords(tablePath, tableOrIndex) {
841
+ let database = undefined;
842
+ const [schema, tableName] = this.splitTablePath(tablePath);
843
+ if (schema &&
844
+ this.driver.getAttachedDatabasePathRelativeByHandle(schema)) {
845
+ database =
846
+ this.driver.getAttachedDatabasePathRelativeByHandle(schema);
847
+ }
848
+ return this.query(`SELECT ${database ? `'${database}'` : null} as database, ${schema ? `'${schema}'` : null} as schema, * FROM ${schema ? `"${schema}".` : ""}${this.escapePath(`sqlite_master`)} WHERE "type" = '${tableOrIndex}' AND "${tableOrIndex === "table" ? "name" : "tbl_name"}" IN ('${tableName}')`);
849
+ }
850
+ async loadPragmaRecords(tablePath, pragma) {
851
+ const [, tableName] = this.splitTablePath(tablePath);
852
+ return this.query(`PRAGMA ${pragma}("${tableName}")`);
853
+ }
854
+ /**
855
+ * Loads all tables (with given names) from the database and creates a Table from them.
856
+ */
857
+ async loadTables(tableNames) {
858
+ // if no tables given then no need to proceed
859
+ if (tableNames && tableNames.length === 0) {
860
+ return [];
861
+ }
862
+ let dbTables = [];
863
+ let dbIndicesDef;
864
+ if (!tableNames) {
865
+ const tablesSql = `SELECT * FROM "sqlite_master" WHERE "type" = 'table'`;
866
+ dbTables.push(...(await this.query(tablesSql)));
867
+ const tableNamesString = dbTables
868
+ .map(({ name }) => `'${name}'`)
869
+ .join(", ");
870
+ dbIndicesDef = await this.query(`SELECT * FROM "sqlite_master" WHERE "type" = 'index' AND "tbl_name" IN (${tableNamesString})`);
871
+ }
872
+ else {
873
+ const tableNamesWithoutDot = tableNames
874
+ .filter((tableName) => {
875
+ return tableName.split(".").length === 1;
876
+ })
877
+ .map((tableName) => `'${tableName}'`);
878
+ const tableNamesWithDot = tableNames.filter((tableName) => {
879
+ return tableName.split(".").length > 1;
880
+ });
881
+ const queryPromises = (type) => {
882
+ const promises = [
883
+ ...tableNamesWithDot.map((tableName) => this.loadTableRecords(tableName, type)),
884
+ ];
885
+ if (tableNamesWithoutDot.length) {
886
+ promises.push(this.query(`SELECT * FROM "sqlite_master" WHERE "type" = '${type}' AND "${type === "table" ? "name" : "tbl_name"}" IN (${tableNamesWithoutDot})`));
887
+ }
888
+ return promises;
889
+ };
890
+ dbTables = (await Promise.all(queryPromises("table")))
891
+ .reduce((acc, res) => [...acc, ...res], [])
892
+ .filter(Boolean);
893
+ dbIndicesDef = (await Promise.all(queryPromises("index")))
894
+ .reduce((acc, res) => [...acc, ...res], [])
895
+ .filter(Boolean);
896
+ }
897
+ // if tables were not found in the db, no need to proceed
898
+ if (dbTables.length === 0) {
899
+ return [];
900
+ }
901
+ // create table schemas for loaded tables
902
+ return Promise.all(dbTables.map(async (dbTable) => {
903
+ const tablePath = dbTable["database"] &&
904
+ this.driver.getAttachedDatabaseHandleByRelativePath(dbTable["database"])
905
+ ? `${this.driver.getAttachedDatabaseHandleByRelativePath(dbTable["database"])}.${dbTable["name"]}`
906
+ : dbTable["name"];
907
+ const sql = dbTable["sql"];
908
+ const withoutRowid = sql.includes("WITHOUT ROWID");
909
+ const table = new Table_1.Table({ name: tablePath, withoutRowid });
910
+ // load columns and indices
911
+ const [dbColumns, dbIndices, dbForeignKeys] = await Promise.all([
912
+ this.loadPragmaRecords(tablePath, `table_xinfo`),
913
+ this.loadPragmaRecords(tablePath, `index_list`),
914
+ this.loadPragmaRecords(tablePath, `foreign_key_list`),
915
+ ]);
916
+ // find column name with auto increment
917
+ let autoIncrementColumnName = undefined;
918
+ const tableSql = dbTable["sql"];
919
+ const autoIncrementIndex = tableSql
920
+ .toUpperCase()
921
+ .indexOf("AUTOINCREMENT");
922
+ if (autoIncrementIndex !== -1) {
923
+ autoIncrementColumnName = tableSql.substr(0, autoIncrementIndex);
924
+ const comma = autoIncrementColumnName.lastIndexOf(",");
925
+ const bracket = autoIncrementColumnName.lastIndexOf("(");
926
+ if (comma !== -1) {
927
+ autoIncrementColumnName =
928
+ autoIncrementColumnName.substr(comma);
929
+ autoIncrementColumnName =
930
+ autoIncrementColumnName.substr(0, autoIncrementColumnName.lastIndexOf('"'));
931
+ autoIncrementColumnName =
932
+ autoIncrementColumnName.substr(autoIncrementColumnName.indexOf('"') + 1);
933
+ }
934
+ else if (bracket !== -1) {
935
+ autoIncrementColumnName =
936
+ autoIncrementColumnName.substr(bracket);
937
+ autoIncrementColumnName =
938
+ autoIncrementColumnName.substr(0, autoIncrementColumnName.lastIndexOf('"'));
939
+ autoIncrementColumnName =
940
+ autoIncrementColumnName.substr(autoIncrementColumnName.indexOf('"') + 1);
941
+ }
942
+ }
943
+ // create columns from the loaded columns
944
+ table.columns = await Promise.all(dbColumns.map(async (dbColumn) => {
945
+ const tableColumn = new TableColumn_1.TableColumn();
946
+ tableColumn.name = dbColumn["name"];
947
+ tableColumn.type = dbColumn["type"].toLowerCase();
948
+ tableColumn.default =
949
+ dbColumn["dflt_value"] !== null &&
950
+ dbColumn["dflt_value"] !== undefined
951
+ ? dbColumn["dflt_value"]
952
+ : undefined;
953
+ tableColumn.isNullable = dbColumn["notnull"] === 0;
954
+ // primary keys are numbered starting with 1, columns that aren't primary keys are marked with 0
955
+ tableColumn.isPrimary = dbColumn["pk"] > 0;
956
+ tableColumn.comment = ""; // SQLite does not support column comments
957
+ tableColumn.isGenerated =
958
+ autoIncrementColumnName === dbColumn["name"];
959
+ if (tableColumn.isGenerated) {
960
+ tableColumn.generationStrategy = "increment";
961
+ }
962
+ if (dbColumn["hidden"] === 2 ||
963
+ dbColumn["hidden"] === 3) {
964
+ tableColumn.generatedType =
965
+ dbColumn["hidden"] === 2 ? "VIRTUAL" : "STORED";
966
+ const asExpressionQuery = this.selectTypeormMetadataSql({
967
+ table: table.name,
968
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
969
+ name: tableColumn.name,
970
+ });
971
+ const results = await this.query(asExpressionQuery.query, asExpressionQuery.parameters);
972
+ if (results[0] && results[0].value) {
973
+ tableColumn.asExpression = results[0].value;
974
+ }
975
+ else {
976
+ tableColumn.asExpression = "";
977
+ }
978
+ }
979
+ if (tableColumn.type === "varchar") {
980
+ tableColumn.enum = OrmUtils_1.OrmUtils.parseSqlCheckExpression(sql, tableColumn.name);
981
+ }
982
+ // parse datatype and attempt to retrieve length, precision and scale
983
+ const pos = tableColumn.type.indexOf("(");
984
+ if (pos !== -1) {
985
+ const fullType = tableColumn.type;
986
+ const dataType = fullType.substr(0, pos);
987
+ if (this.driver.withLengthColumnTypes.find((col) => col === dataType)) {
988
+ const len = parseInt(fullType.substring(pos + 1, fullType.length - 1));
989
+ if (len) {
990
+ tableColumn.length = len.toString();
991
+ tableColumn.type = dataType; // remove the length part from the datatype
992
+ }
993
+ }
994
+ if (this.driver.withPrecisionColumnTypes.find((col) => col === dataType)) {
995
+ const re = new RegExp(`^${dataType}\\((\\d+),?\\s?(\\d+)?\\)`);
996
+ const matches = fullType.match(re);
997
+ if (matches && matches[1]) {
998
+ tableColumn.precision = +matches[1];
999
+ }
1000
+ if (this.driver.withScaleColumnTypes.find((col) => col === dataType)) {
1001
+ if (matches && matches[2]) {
1002
+ tableColumn.scale = +matches[2];
1003
+ }
1004
+ }
1005
+ tableColumn.type = dataType; // remove the precision/scale part from the datatype
1006
+ }
1007
+ }
1008
+ return tableColumn;
1009
+ }));
1010
+ // find foreign key constraints from CREATE TABLE sql
1011
+ let fkResult;
1012
+ const fkMappings = [];
1013
+ const fkRegex = /CONSTRAINT "([^"]*)" FOREIGN KEY ?\((.*?)\) REFERENCES "([^"]*)"/g;
1014
+ while ((fkResult = fkRegex.exec(sql)) !== null) {
1015
+ fkMappings.push({
1016
+ name: fkResult[1],
1017
+ columns: fkResult[2]
1018
+ .substr(1, fkResult[2].length - 2)
1019
+ .split(`", "`),
1020
+ referencedTableName: fkResult[3],
1021
+ });
1022
+ }
1023
+ // build foreign keys
1024
+ const tableForeignKeyConstraints = OrmUtils_1.OrmUtils.uniq(dbForeignKeys, (dbForeignKey) => dbForeignKey["id"]);
1025
+ table.foreignKeys = tableForeignKeyConstraints.map((foreignKey) => {
1026
+ const ownForeignKeys = dbForeignKeys.filter((dbForeignKey) => dbForeignKey["id"] === foreignKey["id"] &&
1027
+ dbForeignKey["table"] === foreignKey["table"]);
1028
+ const columnNames = ownForeignKeys.map((dbForeignKey) => dbForeignKey["from"]);
1029
+ const referencedColumnNames = ownForeignKeys.map((dbForeignKey) => dbForeignKey["to"]);
1030
+ // find related foreign key mapping
1031
+ const fkMapping = fkMappings.find((it) => it.referencedTableName ===
1032
+ foreignKey["table"] &&
1033
+ it.columns.every((column) => columnNames.indexOf(column) !== -1));
1034
+ return new TableForeignKey_1.TableForeignKey({
1035
+ name: fkMapping?.name,
1036
+ columnNames: columnNames,
1037
+ referencedTableName: foreignKey["table"],
1038
+ referencedColumnNames: referencedColumnNames,
1039
+ onDelete: foreignKey["on_delete"],
1040
+ onUpdate: foreignKey["on_update"],
1041
+ });
1042
+ });
1043
+ // find unique constraints from CREATE TABLE sql
1044
+ let uniqueRegexResult;
1045
+ const uniqueMappings = [];
1046
+ const uniqueRegex = /CONSTRAINT "([^"]*)" UNIQUE ?\((.*?)\)/g;
1047
+ while ((uniqueRegexResult = uniqueRegex.exec(sql)) !== null) {
1048
+ uniqueMappings.push({
1049
+ name: uniqueRegexResult[1],
1050
+ columns: uniqueRegexResult[2]
1051
+ .substr(1, uniqueRegexResult[2].length - 2)
1052
+ .split(`", "`),
1053
+ });
1054
+ }
1055
+ // build unique constraints
1056
+ const tableUniquePromises = dbIndices
1057
+ .filter((dbIndex) => dbIndex["origin"] === "u")
1058
+ .map((dbIndex) => dbIndex["name"])
1059
+ .filter((value, index, self) => self.indexOf(value) === index)
1060
+ .map(async (dbIndexName) => {
1061
+ const dbIndex = dbIndices.find((dbIndex) => dbIndex["name"] === dbIndexName);
1062
+ const indexInfos = await this.query(`PRAGMA index_info("${dbIndex["name"]}")`);
1063
+ const indexColumns = indexInfos
1064
+ .sort((indexInfo1, indexInfo2) => parseInt(indexInfo1["seqno"]) -
1065
+ parseInt(indexInfo2["seqno"]))
1066
+ .map((indexInfo) => indexInfo["name"]);
1067
+ if (indexColumns.length === 1) {
1068
+ const column = table.columns.find((column) => {
1069
+ return !!indexColumns.find((indexColumn) => indexColumn === column.name);
1070
+ });
1071
+ if (column)
1072
+ column.isUnique = true;
1073
+ }
1074
+ // find existent mapping by a column names
1075
+ const foundMapping = uniqueMappings.find((mapping) => {
1076
+ return mapping.columns.every((column) => indexColumns.indexOf(column) !== -1);
1077
+ });
1078
+ return new TableUnique_1.TableUnique({
1079
+ name: foundMapping
1080
+ ? foundMapping.name
1081
+ : this.connection.namingStrategy.uniqueConstraintName(table, indexColumns),
1082
+ columnNames: indexColumns,
1083
+ });
1084
+ });
1085
+ table.uniques = (await Promise.all(tableUniquePromises));
1086
+ // build checks
1087
+ let result;
1088
+ const regexp = /CONSTRAINT "([^"]*)" CHECK ?(\(.*?\))([,]|[)]$)/g;
1089
+ while ((result = regexp.exec(sql)) !== null) {
1090
+ table.checks.push(new TableCheck_1.TableCheck({
1091
+ name: result[1],
1092
+ expression: result[2],
1093
+ }));
1094
+ }
1095
+ // build indices
1096
+ const indicesPromises = dbIndices
1097
+ .filter((dbIndex) => dbIndex["origin"] === "c")
1098
+ .map((dbIndex) => dbIndex["name"])
1099
+ .filter((value, index, self) => self.indexOf(value) === index) // unqiue
1100
+ .map(async (dbIndexName) => {
1101
+ const indexDef = dbIndicesDef.find((dbIndexDef) => dbIndexDef["name"] === dbIndexName);
1102
+ const condition = /WHERE (.*)/.exec(indexDef["sql"]);
1103
+ const dbIndex = dbIndices.find((dbIndex) => dbIndex["name"] === dbIndexName);
1104
+ const indexInfos = await this.query(`PRAGMA index_info("${dbIndex["name"]}")`);
1105
+ const indexColumns = indexInfos
1106
+ .sort((indexInfo1, indexInfo2) => parseInt(indexInfo1["seqno"]) -
1107
+ parseInt(indexInfo2["seqno"]))
1108
+ .map((indexInfo) => indexInfo["name"]);
1109
+ const dbIndexPath = `${dbTable["database"] ? `${dbTable["database"]}.` : ""}${dbIndex["name"]}`;
1110
+ const isUnique = dbIndex["unique"] === "1" ||
1111
+ dbIndex["unique"] === 1;
1112
+ return new TableIndex_1.TableIndex({
1113
+ table: table,
1114
+ name: dbIndexPath,
1115
+ columnNames: indexColumns,
1116
+ isUnique: isUnique,
1117
+ where: condition ? condition[1] : undefined,
1118
+ });
1119
+ });
1120
+ const indices = await Promise.all(indicesPromises);
1121
+ table.indices = indices.filter((index) => !!index);
1122
+ return table;
1123
+ }));
1124
+ }
1125
+ /**
1126
+ * Builds create table sql.
1127
+ */
1128
+ createTableSql(table, createForeignKeys, temporaryTable) {
1129
+ const primaryColumns = table.columns.filter((column) => column.isPrimary);
1130
+ const hasAutoIncrement = primaryColumns.find((column) => column.isGenerated && column.generationStrategy === "increment");
1131
+ const skipPrimary = primaryColumns.length > 1;
1132
+ if (skipPrimary && hasAutoIncrement)
1133
+ throw new error_1.TypeORMError(`Sqlite does not support AUTOINCREMENT on composite primary key`);
1134
+ const columnDefinitions = table.columns
1135
+ .map((column) => this.buildCreateColumnSql(column, skipPrimary))
1136
+ .join(", ");
1137
+ const [database] = this.splitTablePath(table.name);
1138
+ let sql = `CREATE TABLE ${this.escapePath(table.name)} (${columnDefinitions}`;
1139
+ const [databaseNew, tableName] = this.splitTablePath(table.name);
1140
+ const newTableName = temporaryTable
1141
+ ? `${databaseNew ? `${databaseNew}.` : ""}${tableName.replace(/^temporary_/, "")}`
1142
+ : table.name;
1143
+ // need for `addColumn()` method, because it recreates table.
1144
+ table.columns
1145
+ .filter((column) => column.isUnique)
1146
+ .forEach((column) => {
1147
+ const isUniqueExist = table.uniques.some((unique) => unique.columnNames.length === 1 &&
1148
+ unique.columnNames[0] === column.name);
1149
+ if (!isUniqueExist)
1150
+ table.uniques.push(new TableUnique_1.TableUnique({
1151
+ name: this.connection.namingStrategy.uniqueConstraintName(table, [column.name]),
1152
+ columnNames: [column.name],
1153
+ }));
1154
+ });
1155
+ if (table.uniques.length > 0) {
1156
+ const uniquesSql = table.uniques
1157
+ .map((unique) => {
1158
+ const uniqueName = unique.name
1159
+ ? unique.name
1160
+ : this.connection.namingStrategy.uniqueConstraintName(newTableName, unique.columnNames);
1161
+ const columnNames = unique.columnNames
1162
+ .map((columnName) => `"${columnName}"`)
1163
+ .join(", ");
1164
+ return `CONSTRAINT "${uniqueName}" UNIQUE (${columnNames})`;
1165
+ })
1166
+ .join(", ");
1167
+ sql += `, ${uniquesSql}`;
1168
+ }
1169
+ if (table.checks.length > 0) {
1170
+ const checksSql = table.checks
1171
+ .map((check) => {
1172
+ const checkName = check.name
1173
+ ? check.name
1174
+ : this.connection.namingStrategy.checkConstraintName(newTableName, check.expression);
1175
+ return `CONSTRAINT "${checkName}" CHECK (${check.expression})`;
1176
+ })
1177
+ .join(", ");
1178
+ sql += `, ${checksSql}`;
1179
+ }
1180
+ if (table.foreignKeys.length > 0 && createForeignKeys) {
1181
+ const foreignKeysSql = table.foreignKeys
1182
+ .filter((fk) => {
1183
+ const [referencedDatabase] = this.splitTablePath(fk.referencedTableName);
1184
+ if (referencedDatabase !== database) {
1185
+ return false;
1186
+ }
1187
+ return true;
1188
+ })
1189
+ .map((fk) => {
1190
+ const [, referencedTable] = this.splitTablePath(fk.referencedTableName);
1191
+ const columnNames = fk.columnNames
1192
+ .map((columnName) => `"${columnName}"`)
1193
+ .join(", ");
1194
+ if (!fk.name)
1195
+ fk.name = this.connection.namingStrategy.foreignKeyName(newTableName, fk.columnNames, this.getTablePath(fk), fk.referencedColumnNames);
1196
+ const referencedColumnNames = fk.referencedColumnNames
1197
+ .map((columnName) => `"${columnName}"`)
1198
+ .join(", ");
1199
+ let constraint = `CONSTRAINT "${fk.name}" FOREIGN KEY (${columnNames}) REFERENCES "${referencedTable}" (${referencedColumnNames})`;
1200
+ if (fk.onDelete)
1201
+ constraint += ` ON DELETE ${fk.onDelete}`;
1202
+ if (fk.onUpdate)
1203
+ constraint += ` ON UPDATE ${fk.onUpdate}`;
1204
+ if (fk.deferrable)
1205
+ constraint += ` DEFERRABLE ${fk.deferrable}`;
1206
+ return constraint;
1207
+ })
1208
+ .join(", ");
1209
+ sql += `, ${foreignKeysSql}`;
1210
+ }
1211
+ if (primaryColumns.length > 1) {
1212
+ const columnNames = primaryColumns
1213
+ .map((column) => `"${column.name}"`)
1214
+ .join(", ");
1215
+ sql += `, PRIMARY KEY (${columnNames})`;
1216
+ }
1217
+ sql += `)`;
1218
+ if (table.withoutRowid) {
1219
+ sql += " WITHOUT ROWID";
1220
+ }
1221
+ return new Query_1.Query(sql);
1222
+ }
1223
+ /**
1224
+ * Builds drop table sql.
1225
+ */
1226
+ dropTableSql(tableOrName, ifExist) {
1227
+ const tableName = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1228
+ ? tableOrName.name
1229
+ : tableOrName;
1230
+ const query = ifExist
1231
+ ? `DROP TABLE IF EXISTS ${this.escapePath(tableName)}`
1232
+ : `DROP TABLE ${this.escapePath(tableName)}`;
1233
+ return new Query_1.Query(query);
1234
+ }
1235
+ createViewSql(view) {
1236
+ if (typeof view.expression === "string") {
1237
+ return new Query_1.Query(`CREATE VIEW "${view.name}" AS ${view.expression}`);
1238
+ }
1239
+ else {
1240
+ return new Query_1.Query(`CREATE VIEW "${view.name}" AS ${view
1241
+ .expression(this.connection)
1242
+ .getQuery()}`);
1243
+ }
1244
+ }
1245
+ insertViewDefinitionSql(view) {
1246
+ const expression = typeof view.expression === "string"
1247
+ ? view.expression.trim()
1248
+ : view.expression(this.connection).getQuery();
1249
+ return this.insertTypeormMetadataSql({
1250
+ type: MetadataTableType_1.MetadataTableType.VIEW,
1251
+ name: view.name,
1252
+ value: expression,
1253
+ });
1254
+ }
1255
+ /**
1256
+ * Builds drop view sql.
1257
+ */
1258
+ dropViewSql(viewOrPath) {
1259
+ const viewName = InstanceChecker_1.InstanceChecker.isView(viewOrPath)
1260
+ ? viewOrPath.name
1261
+ : viewOrPath;
1262
+ return new Query_1.Query(`DROP VIEW "${viewName}"`);
1263
+ }
1264
+ /**
1265
+ * Builds remove view sql.
1266
+ */
1267
+ deleteViewDefinitionSql(viewOrPath) {
1268
+ const viewName = InstanceChecker_1.InstanceChecker.isView(viewOrPath)
1269
+ ? viewOrPath.name
1270
+ : viewOrPath;
1271
+ return this.deleteTypeormMetadataSql({
1272
+ type: MetadataTableType_1.MetadataTableType.VIEW,
1273
+ name: viewName,
1274
+ });
1275
+ }
1276
+ /**
1277
+ * Builds create index sql.
1278
+ */
1279
+ createIndexSql(table, index) {
1280
+ const columns = index.columnNames
1281
+ .map((columnName) => `"${columnName}"`)
1282
+ .join(", ");
1283
+ const [database, tableName] = this.splitTablePath(table.name);
1284
+ return new Query_1.Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}INDEX ${database ? `"${database}".` : ""}${this.escapePath(index.name)} ON "${tableName}" (${columns}) ${index.where ? "WHERE " + index.where : ""}`);
1285
+ }
1286
+ /**
1287
+ * Builds drop index sql.
1288
+ */
1289
+ dropIndexSql(indexOrName) {
1290
+ const indexName = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
1291
+ ? indexOrName.name
1292
+ : indexOrName;
1293
+ return new Query_1.Query(`DROP INDEX ${this.escapePath(indexName)}`);
1294
+ }
1295
+ /**
1296
+ * Builds a query for create column.
1297
+ */
1298
+ buildCreateColumnSql(column, skipPrimary) {
1299
+ let c = '"' + column.name + '"';
1300
+ if (InstanceChecker_1.InstanceChecker.isColumnMetadata(column)) {
1301
+ c += " " + this.driver.normalizeType(column);
1302
+ }
1303
+ else {
1304
+ c += " " + this.connection.driver.createFullType(column);
1305
+ }
1306
+ if (column.enum)
1307
+ c +=
1308
+ ' CHECK( "' +
1309
+ column.name +
1310
+ '" IN (' +
1311
+ column.enum.map((val) => "'" + val + "'").join(",") +
1312
+ ") )";
1313
+ if (column.isPrimary && !skipPrimary)
1314
+ c += " PRIMARY KEY";
1315
+ if (column.isGenerated === true &&
1316
+ column.generationStrategy === "increment")
1317
+ // don't use skipPrimary here since updates can update already exist primary without auto inc.
1318
+ c += " AUTOINCREMENT";
1319
+ if (column.collation)
1320
+ c += " COLLATE " + column.collation;
1321
+ if (column.isNullable !== true)
1322
+ c += " NOT NULL";
1323
+ if (column.asExpression) {
1324
+ c += ` AS (${column.asExpression}) ${column.generatedType ? column.generatedType : "VIRTUAL"}`;
1325
+ }
1326
+ else {
1327
+ if (column.default !== undefined && column.default !== null)
1328
+ c += " DEFAULT (" + column.default + ")";
1329
+ }
1330
+ return c;
1331
+ }
1332
+ async recreateTable(newTable, oldTable, migrateData = true) {
1333
+ const upQueries = [];
1334
+ const downQueries = [];
1335
+ // drop old table indices
1336
+ oldTable.indices.forEach((index) => {
1337
+ upQueries.push(this.dropIndexSql(index));
1338
+ downQueries.push(this.createIndexSql(oldTable, index));
1339
+ });
1340
+ // change table name into 'temporary_table'
1341
+ let [databaseNew, tableNameNew] = this.splitTablePath(newTable.name);
1342
+ const [, tableNameOld] = this.splitTablePath(oldTable.name);
1343
+ newTable.name = tableNameNew = `${databaseNew ? `${databaseNew}.` : ""}temporary_${tableNameNew}`;
1344
+ // create new table
1345
+ upQueries.push(this.createTableSql(newTable, true, true));
1346
+ downQueries.push(this.dropTableSql(newTable));
1347
+ // migrate all data from the old table into new table
1348
+ if (migrateData) {
1349
+ let newColumnNames = newTable.columns
1350
+ .filter((column) => !column.generatedType)
1351
+ .map((column) => `"${column.name}"`);
1352
+ let oldColumnNames = oldTable.columns
1353
+ .filter((column) => !column.generatedType)
1354
+ .map((column) => `"${column.name}"`);
1355
+ if (oldColumnNames.length < newColumnNames.length) {
1356
+ newColumnNames = newTable.columns
1357
+ .filter((column) => {
1358
+ const oldColumn = oldTable.columns.find((c) => c.name === column.name);
1359
+ if (oldColumn && oldColumn.generatedType)
1360
+ return false;
1361
+ return !column.generatedType && oldColumn;
1362
+ })
1363
+ .map((column) => `"${column.name}"`);
1364
+ }
1365
+ else if (oldColumnNames.length > newColumnNames.length) {
1366
+ oldColumnNames = oldTable.columns
1367
+ .filter((column) => {
1368
+ return (!column.generatedType &&
1369
+ newTable.columns.find((c) => c.name === column.name));
1370
+ })
1371
+ .map((column) => `"${column.name}"`);
1372
+ }
1373
+ upQueries.push(new Query_1.Query(`INSERT INTO ${this.escapePath(newTable.name)}(${newColumnNames.join(", ")}) SELECT ${oldColumnNames.join(", ")} FROM ${this.escapePath(oldTable.name)}`));
1374
+ downQueries.push(new Query_1.Query(`INSERT INTO ${this.escapePath(oldTable.name)}(${oldColumnNames.join(", ")}) SELECT ${newColumnNames.join(", ")} FROM ${this.escapePath(newTable.name)}`));
1375
+ }
1376
+ // drop old table
1377
+ upQueries.push(this.dropTableSql(oldTable));
1378
+ downQueries.push(this.createTableSql(oldTable, true));
1379
+ // rename old table
1380
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable.name)} RENAME TO ${this.escapePath(tableNameOld)}`));
1381
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(oldTable.name)} RENAME TO ${this.escapePath(tableNameNew)}`));
1382
+ newTable.name = oldTable.name;
1383
+ // recreate table indices
1384
+ newTable.indices.forEach((index) => {
1385
+ // new index may be passed without name. In this case we generate index name manually.
1386
+ if (!index.name)
1387
+ index.name = this.connection.namingStrategy.indexName(newTable, index.columnNames, index.where);
1388
+ upQueries.push(this.createIndexSql(newTable, index));
1389
+ downQueries.push(this.dropIndexSql(index));
1390
+ });
1391
+ // update generated columns in "typeorm_metadata" table
1392
+ // Step 1: clear data for removed generated columns
1393
+ oldTable.columns
1394
+ .filter((column) => {
1395
+ const newTableColumn = newTable.columns.find((c) => c.name === column.name);
1396
+ // we should delete record from "typeorm_metadata" if generated column was removed
1397
+ // or it was changed to non-generated
1398
+ return (column.generatedType &&
1399
+ column.asExpression &&
1400
+ (!newTableColumn ||
1401
+ (!newTableColumn.generatedType &&
1402
+ !newTableColumn.asExpression)));
1403
+ })
1404
+ .forEach((column) => {
1405
+ const deleteQuery = this.deleteTypeormMetadataSql({
1406
+ table: oldTable.name,
1407
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1408
+ name: column.name,
1409
+ });
1410
+ const insertQuery = this.insertTypeormMetadataSql({
1411
+ table: oldTable.name,
1412
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1413
+ name: column.name,
1414
+ value: column.asExpression,
1415
+ });
1416
+ upQueries.push(deleteQuery);
1417
+ downQueries.push(insertQuery);
1418
+ });
1419
+ // Step 2: add data for new generated columns
1420
+ newTable.columns
1421
+ .filter((column) => column.generatedType &&
1422
+ column.asExpression &&
1423
+ !oldTable.columns.some((c) => c.name === column.name))
1424
+ .forEach((column) => {
1425
+ const insertQuery = this.insertTypeormMetadataSql({
1426
+ table: newTable.name,
1427
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1428
+ name: column.name,
1429
+ value: column.asExpression,
1430
+ });
1431
+ const deleteQuery = this.deleteTypeormMetadataSql({
1432
+ table: newTable.name,
1433
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1434
+ name: column.name,
1435
+ });
1436
+ upQueries.push(insertQuery);
1437
+ downQueries.push(deleteQuery);
1438
+ });
1439
+ // Step 3: update changed expressions
1440
+ newTable.columns
1441
+ .filter((column) => column.generatedType && column.asExpression)
1442
+ .forEach((column) => {
1443
+ const oldColumn = oldTable.columns.find((c) => c.name === column.name &&
1444
+ c.generatedType &&
1445
+ column.generatedType &&
1446
+ c.asExpression !== column.asExpression);
1447
+ if (!oldColumn)
1448
+ return;
1449
+ // update expression
1450
+ const deleteQuery = this.deleteTypeormMetadataSql({
1451
+ table: oldTable.name,
1452
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1453
+ name: oldColumn.name,
1454
+ });
1455
+ const insertQuery = this.insertTypeormMetadataSql({
1456
+ table: newTable.name,
1457
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1458
+ name: column.name,
1459
+ value: column.asExpression,
1460
+ });
1461
+ upQueries.push(deleteQuery);
1462
+ upQueries.push(insertQuery);
1463
+ // revert update
1464
+ const revertInsertQuery = this.insertTypeormMetadataSql({
1465
+ table: newTable.name,
1466
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1467
+ name: oldColumn.name,
1468
+ value: oldColumn.asExpression,
1469
+ });
1470
+ const revertDeleteQuery = this.deleteTypeormMetadataSql({
1471
+ table: oldTable.name,
1472
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1473
+ name: column.name,
1474
+ });
1475
+ downQueries.push(revertInsertQuery);
1476
+ downQueries.push(revertDeleteQuery);
1477
+ });
1478
+ await this.executeQueries(upQueries, downQueries);
1479
+ this.replaceCachedTable(oldTable, newTable);
1480
+ }
1481
+ /**
1482
+ * tablePath e.g. "myDB.myTable", "myTable"
1483
+ */
1484
+ splitTablePath(tablePath) {
1485
+ return (tablePath.indexOf(".") !== -1
1486
+ ? tablePath.split(".")
1487
+ : [undefined, tablePath]);
1488
+ }
1489
+ /**
1490
+ * Escapes given table or view path. Tolerates leading/trailing dots
1491
+ */
1492
+ escapePath(target, disableEscape) {
1493
+ const tableName = InstanceChecker_1.InstanceChecker.isTable(target) || InstanceChecker_1.InstanceChecker.isView(target)
1494
+ ? target.name
1495
+ : target;
1496
+ return tableName
1497
+ .replace(/^\.+|\.+$/g, "")
1498
+ .split(".")
1499
+ .map((i) => (disableEscape ? i : `"${i}"`))
1500
+ .join(".");
1501
+ }
1502
+ /**
1503
+ * Change table comment.
1504
+ */
1505
+ changeTableComment(tableOrName, comment) {
1506
+ throw new error_1.TypeORMError(`sqlit driver does not support change comment.`);
1507
+ }
1508
+ }
1509
+ exports.AbstractSqliteQueryRunner = AbstractSqliteQueryRunner;
1510
+
1511
+ //# sourceMappingURL=AbstractSqliteQueryRunner.js.map