orcaq 1.1.1 → 1.1.2

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 (999) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/63YtjFEq.js +1 -0
  3. package/.output/public/_nuxt/{BxDrCsPf.js → 8tyEaimf.js} +1 -1
  4. package/.output/public/_nuxt/AymhMj9v.js +1 -0
  5. package/.output/public/_nuxt/B2IKcIj2.js +1 -0
  6. package/.output/public/_nuxt/{CvcedJeQ.js → B46blMXm.js} +1 -1
  7. package/.output/public/_nuxt/B5WGo5x7.js +1 -0
  8. package/.output/public/_nuxt/{DHnNoguE.js → B6MkNyZd.js} +1 -1
  9. package/.output/public/_nuxt/B73IHAoF.js +1 -0
  10. package/.output/public/_nuxt/{DWBoXz89.js → B8TrrBEb.js} +1 -1
  11. package/.output/public/_nuxt/{CE8aasoy.js → B9uki8o2.js} +1 -1
  12. package/.output/public/_nuxt/{TuKV3Ilv.js → BEyCol50.js} +1 -1
  13. package/.output/public/_nuxt/{BvUhrUEH.js → BJCrbji-.js} +1 -1
  14. package/.output/public/_nuxt/{BnFDcr74.js → BJVPtt2X.js} +1 -1
  15. package/.output/public/_nuxt/BL__uYa3.js +1 -0
  16. package/.output/public/_nuxt/BPACuoI0.js +1 -0
  17. package/.output/public/_nuxt/BRFPdiIh.js +1 -0
  18. package/.output/public/_nuxt/BS-LtKx4.js +1 -0
  19. package/.output/public/_nuxt/{BJYf67_H.js → BTYBVtfa.js} +1 -1
  20. package/.output/public/_nuxt/BTheloyh.js +1 -0
  21. package/.output/public/_nuxt/BVUHbgGW.js +27 -0
  22. package/.output/public/_nuxt/BWZ7atse.js +1 -0
  23. package/.output/public/_nuxt/{CS5ItJPR.js → BWebIWit.js} +1 -1
  24. package/.output/public/_nuxt/{4by6-f6q.js → BcsKoAPU.js} +315 -313
  25. package/.output/public/_nuxt/{B6hH0qos.js → Bf6Q3Zl5.js} +1 -1
  26. package/.output/public/_nuxt/Bj7ctTfH.js +1 -0
  27. package/.output/public/_nuxt/BjqbQLK3.js +1 -0
  28. package/.output/public/_nuxt/{C1jMZ4hc.js → Bmgr9uz4.js} +1 -1
  29. package/.output/public/_nuxt/{Bq7otXBA.js → Bmx1kTaZ.js} +1 -1
  30. package/.output/public/_nuxt/BoIj4dtd.js +1 -0
  31. package/.output/public/_nuxt/{Cx6s86aR.js → BoMjapT5.js} +1 -1
  32. package/.output/public/_nuxt/BogEzQi9.js +12 -0
  33. package/.output/public/_nuxt/BpLDGvqy.js +1 -0
  34. package/.output/public/_nuxt/BpUSbMUb.js +1 -0
  35. package/.output/public/_nuxt/BpvGVfME.js +1 -0
  36. package/.output/public/_nuxt/{DESYlybj.js → Bq47tjcm.js} +1 -1
  37. package/.output/public/_nuxt/{H5m89x1B.js → Bq7OeLM1.js} +1 -1
  38. package/.output/public/_nuxt/BqU89KuH.js +2 -0
  39. package/.output/public/_nuxt/{CrLqg4B0.js → BrNfge84.js} +1 -1
  40. package/.output/public/_nuxt/BtyzMl9p.js +1 -0
  41. package/.output/public/_nuxt/{BGVGiigU.js → ByiJDSw8.js} +1 -1
  42. package/.output/public/_nuxt/{DJqZzQsX.js → ByibjLZn.js} +1 -1
  43. package/.output/public/_nuxt/BzvSm28k.js +67 -0
  44. package/.output/public/_nuxt/C2XHqDOf.js +1 -0
  45. package/.output/public/_nuxt/C3ZBsVV_.js +2 -0
  46. package/.output/public/_nuxt/{F5lCgNdb.js → C6dIAdHr.js} +1 -1
  47. package/.output/public/_nuxt/C7BQpy74.js +1 -0
  48. package/.output/public/_nuxt/{B84SvUzr.js → CAnr3OhD.js} +1 -1
  49. package/.output/public/_nuxt/CDJKw_ak.js +1 -0
  50. package/.output/public/_nuxt/CHEpbbGc.js +1 -0
  51. package/.output/public/_nuxt/{DNdM2ZyK.js → CMkzSwnO.js} +1 -1
  52. package/.output/public/_nuxt/{BdDEVolW.js → COHOh4Oe.js} +1 -1
  53. package/.output/public/_nuxt/COq7mAG7.js +10 -0
  54. package/.output/public/_nuxt/CS5akSNT.js +1 -0
  55. package/.output/public/_nuxt/CS9hqyP3.js +1 -0
  56. package/.output/public/_nuxt/{CR6_eO9a.js → CSQ0xnqv.js} +1 -1
  57. package/.output/public/_nuxt/C_7gtl40.js +1 -0
  58. package/.output/public/_nuxt/Ca0KO9Xq.js +9 -0
  59. package/.output/public/_nuxt/CerLmMsC.js +22 -0
  60. package/.output/public/_nuxt/{DaKikgWm.js → Ci5B19-c.js} +1 -1
  61. package/.output/public/_nuxt/{TEF-nDfP.js → Cnfx1zWl.js} +1 -1
  62. package/.output/public/_nuxt/{Ci43mke5.js → Cq-MDPLE.js} +1 -1
  63. package/.output/public/_nuxt/{minLMBmY.js → CrNLwdoE.js} +1 -1
  64. package/.output/public/_nuxt/{PUe8M07P.js → CsRSZpa6.js} +1 -1
  65. package/.output/public/_nuxt/CtWq1MER.js +7 -0
  66. package/.output/public/_nuxt/Cww9dXBK.js +1 -0
  67. package/.output/public/_nuxt/{ZObQcd0X.js → CycELG5y.js} +1 -1
  68. package/.output/public/_nuxt/{b_MfGg1c.js → D-9vaM6z.js} +1 -1
  69. package/.output/public/_nuxt/{D9dEqMyH.js → D4pAW_0T.js} +1 -1
  70. package/.output/public/_nuxt/DAr5YiBT.js +1 -0
  71. package/.output/public/_nuxt/{DFM-aCBX.js → DDebxXP-.js} +1 -1
  72. package/.output/public/_nuxt/{CEvNlevo.js → DEZMnZ2r.js} +1 -1
  73. package/.output/public/_nuxt/{BeNILdbT.js → DGvAu532.js} +1 -1
  74. package/.output/public/_nuxt/{CREZ9f0O.js → DHAL8jJG.js} +4 -4
  75. package/.output/public/_nuxt/{BprXyYdv.js → DJH-4SVI.js} +1 -1
  76. package/.output/public/_nuxt/{Dpl6-lqE.js → DMmjWR_K.js} +1 -1
  77. package/.output/public/_nuxt/DNB4Xmyo.js +37 -0
  78. package/.output/public/_nuxt/{DkadXn5U.js → DNoTlUiY.js} +1 -1
  79. package/.output/public/_nuxt/DPIEiNwW.js +1 -0
  80. package/.output/public/_nuxt/{DQT4eICL.js → DSaBCmOg.js} +1 -1
  81. package/.output/public/_nuxt/DVnDb6ua.js +1 -0
  82. package/.output/public/_nuxt/DWqOZJe7.js +1 -0
  83. package/.output/public/_nuxt/DcCF9IZB.js +1 -0
  84. package/.output/public/_nuxt/DfNTLojg.js +1 -0
  85. package/.output/public/_nuxt/{Cvq07PgE.js → DkD29_YA.js} +1 -1
  86. package/.output/public/_nuxt/DpEV6S2O.js +1 -0
  87. package/.output/public/_nuxt/{DhKwXzSk.js → DpT8FO1Q.js} +1 -1
  88. package/.output/public/_nuxt/{D60Pzl_V.js → Dq1JM9WZ.js} +1 -1
  89. package/.output/public/_nuxt/{DXp9fCib.js → DsmBazLf.js} +1 -1
  90. package/.output/public/_nuxt/{ByOuUnNS.js → DuCDilAk.js} +1 -1
  91. package/.output/public/_nuxt/{CKqvNpN3.js → FDw04QOj.js} +1 -1
  92. package/.output/public/_nuxt/JOg_XIAv.js +1 -0
  93. package/.output/public/_nuxt/{BmU9CNkM.js → L2I3LmpB.js} +1 -1
  94. package/.output/public/_nuxt/M6bBaUHa.js +1 -0
  95. package/.output/public/_nuxt/MW5K_zef.js +1 -0
  96. package/.output/public/_nuxt/{YJvNy3iu.js → MeLWmO7R.js} +27 -27
  97. package/.output/public/_nuxt/{B4ebLeWY.js → Oe2GG0Lt.js} +3 -3
  98. package/.output/public/_nuxt/S1qa1a4x.js +1 -0
  99. package/.output/public/_nuxt/{CA99KAte.js → Sf02B6Pt.js} +2 -2
  100. package/.output/public/_nuxt/Y1gXUmjt.js +1 -0
  101. package/.output/public/_nuxt/_qKPTuua.js +1 -0
  102. package/.output/public/_nuxt/{CybtvDjH.js → atdCACH-.js} +1 -1
  103. package/.output/public/_nuxt/builds/latest.json +1 -1
  104. package/.output/public/_nuxt/builds/meta/7c171291-8bbd-4c4c-8904-0afae065b82e.json +1 -0
  105. package/.output/public/_nuxt/dNPwafbq.js +1 -0
  106. package/.output/public/_nuxt/dWu56FdP.js +3867 -0
  107. package/.output/public/_nuxt/default.B0xlD4Sl.css +1 -0
  108. package/.output/public/_nuxt/entry.DxCQuGXb.css +1 -0
  109. package/.output/public/_nuxt/iNy-Nl0_.js +1 -0
  110. package/.output/public/_nuxt/{C5bgdIOp.js → ioXB9E2w.js} +1 -1
  111. package/.output/public/_nuxt/{B7HEMfgt.js → kvtnkChG.js} +1 -1
  112. package/.output/public/_nuxt/{DNNdcUH4.js → qzrMNYut.js} +1 -1
  113. package/.output/public/_nuxt/{DaMyovpr.js → sk7V7xQl.js} +1 -1
  114. package/.output/public/_nuxt/vhkvHdfO.js +1 -0
  115. package/.output/public/_nuxt/wRAs0MDn.js +2 -0
  116. package/.output/public/_nuxt/xOD4Ev56.js +1 -0
  117. package/.output/public/_nuxt/xp7rFxcm.js +1 -0
  118. package/.output/server/chunks/_/create-adapter.mjs +2 -0
  119. package/.output/server/chunks/_/create-adapter.mjs.map +1 -1
  120. package/.output/server/chunks/_/db-connection.mjs +500 -19
  121. package/.output/server/chunks/_/db-connection.mjs.map +1 -1
  122. package/.output/server/chunks/_/instance-insights.factory.mjs +2037 -14
  123. package/.output/server/chunks/_/instance-insights.factory.mjs.map +1 -1
  124. package/.output/server/chunks/_/metadata.factory.mjs +302 -22
  125. package/.output/server/chunks/_/metadata.factory.mjs.map +1 -1
  126. package/.output/server/chunks/_/redis-browser.service.mjs +513 -0
  127. package/.output/server/chunks/_/redis-browser.service.mjs.map +1 -0
  128. package/.output/server/chunks/_/redis-instance-insights.service.mjs +442 -0
  129. package/.output/server/chunks/_/redis-instance-insights.service.mjs.map +1 -0
  130. package/.output/server/chunks/_/redis-pubsub.service.mjs +227 -0
  131. package/.output/server/chunks/_/redis-pubsub.service.mjs.map +1 -0
  132. package/.output/server/chunks/_/redis.client.mjs +129 -0
  133. package/.output/server/chunks/_/redis.client.mjs.map +1 -0
  134. package/.output/server/chunks/_/tables.factory.mjs +20 -8
  135. package/.output/server/chunks/_/tables.factory.mjs.map +1 -1
  136. package/.output/server/chunks/build/client.manifest.mjs +748 -632
  137. package/.output/server/chunks/build/client.manifest.mjs.map +1 -1
  138. package/.output/server/chunks/nitro/nitro.mjs +715 -606
  139. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  140. package/.output/server/chunks/routes/api/ai/agent.mjs +4 -1
  141. package/.output/server/chunks/routes/api/ai/agent.mjs.map +1 -1
  142. package/.output/server/chunks/routes/api/database-export/export-database.mjs +4 -1
  143. package/.output/server/chunks/routes/api/database-export/export-database.mjs.map +1 -1
  144. package/.output/server/chunks/routes/api/database-export/jobs/_jobId/download.get.mjs +4 -1
  145. package/.output/server/chunks/routes/api/database-export/jobs/_jobId/download.get.mjs.map +1 -1
  146. package/.output/server/chunks/routes/api/database-export/jobs/_jobId_.get.mjs +4 -1
  147. package/.output/server/chunks/routes/api/database-export/jobs/_jobId_.get.mjs.map +1 -1
  148. package/.output/server/chunks/routes/api/database-import/import-database.mjs +4 -1
  149. package/.output/server/chunks/routes/api/database-import/import-database.mjs.map +1 -1
  150. package/.output/server/chunks/routes/api/database-import/jobs/_jobId_.get.mjs +4 -1
  151. package/.output/server/chunks/routes/api/database-import/jobs/_jobId_.get.mjs.map +1 -1
  152. package/.output/server/chunks/routes/api/database-roles/create-role.mjs +4 -1
  153. package/.output/server/chunks/routes/api/database-roles/create-role.mjs.map +1 -1
  154. package/.output/server/chunks/routes/api/database-roles/delete-role.mjs +4 -1
  155. package/.output/server/chunks/routes/api/database-roles/delete-role.mjs.map +1 -1
  156. package/.output/server/chunks/routes/api/database-roles/get-databases-with-permissions.mjs +4 -1
  157. package/.output/server/chunks/routes/api/database-roles/get-databases-with-permissions.mjs.map +1 -1
  158. package/.output/server/chunks/routes/api/database-roles/get-databases.mjs +4 -1
  159. package/.output/server/chunks/routes/api/database-roles/get-databases.mjs.map +1 -1
  160. package/.output/server/chunks/routes/api/database-roles/get-permissions.mjs +4 -1
  161. package/.output/server/chunks/routes/api/database-roles/get-permissions.mjs.map +1 -1
  162. package/.output/server/chunks/routes/api/database-roles/get-role-inheritance.mjs +4 -1
  163. package/.output/server/chunks/routes/api/database-roles/get-role-inheritance.mjs.map +1 -1
  164. package/.output/server/chunks/routes/api/database-roles/get-role.mjs +4 -1
  165. package/.output/server/chunks/routes/api/database-roles/get-role.mjs.map +1 -1
  166. package/.output/server/chunks/routes/api/database-roles/get-roles.mjs +4 -1
  167. package/.output/server/chunks/routes/api/database-roles/get-roles.mjs.map +1 -1
  168. package/.output/server/chunks/routes/api/database-roles/get-schema-objects.mjs +4 -1
  169. package/.output/server/chunks/routes/api/database-roles/get-schema-objects.mjs.map +1 -1
  170. package/.output/server/chunks/routes/api/database-roles/get-schemas.mjs +4 -1
  171. package/.output/server/chunks/routes/api/database-roles/get-schemas.mjs.map +1 -1
  172. package/.output/server/chunks/routes/api/database-roles/grant-bulk-permissions.mjs +4 -1
  173. package/.output/server/chunks/routes/api/database-roles/grant-bulk-permissions.mjs.map +1 -1
  174. package/.output/server/chunks/routes/api/database-roles/grant-permission.mjs +4 -1
  175. package/.output/server/chunks/routes/api/database-roles/grant-permission.mjs.map +1 -1
  176. package/.output/server/chunks/routes/api/database-roles/revoke-permission.mjs +4 -1
  177. package/.output/server/chunks/routes/api/database-roles/revoke-permission.mjs.map +1 -1
  178. package/.output/server/chunks/routes/api/functions/definition.post.mjs +4 -1
  179. package/.output/server/chunks/routes/api/functions/definition.post.mjs.map +1 -1
  180. package/.output/server/chunks/routes/api/functions/delete.post.mjs +4 -1
  181. package/.output/server/chunks/routes/api/functions/delete.post.mjs.map +1 -1
  182. package/.output/server/chunks/routes/api/functions/overview.post.mjs +4 -1
  183. package/.output/server/chunks/routes/api/functions/overview.post.mjs.map +1 -1
  184. package/.output/server/chunks/routes/api/functions/rename.post.mjs +4 -1
  185. package/.output/server/chunks/routes/api/functions/rename.post.mjs.map +1 -1
  186. package/.output/server/chunks/routes/api/functions/signature.post.mjs +4 -1
  187. package/.output/server/chunks/routes/api/functions/signature.post.mjs.map +1 -1
  188. package/.output/server/chunks/routes/api/functions/update.post.mjs +4 -1
  189. package/.output/server/chunks/routes/api/functions/update.post.mjs.map +1 -1
  190. package/.output/server/chunks/routes/api/index.post.mjs +5 -2
  191. package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
  192. package/.output/server/chunks/routes/api/instance-insights/cancel-query.post.mjs +5 -2
  193. package/.output/server/chunks/routes/api/instance-insights/cancel-query.post.mjs.map +1 -1
  194. package/.output/server/chunks/routes/api/instance-insights/configuration.post.mjs +5 -2
  195. package/.output/server/chunks/routes/api/instance-insights/configuration.post.mjs.map +1 -1
  196. package/.output/server/chunks/routes/api/instance-insights/dashboard.post.mjs +5 -2
  197. package/.output/server/chunks/routes/api/instance-insights/dashboard.post.mjs.map +1 -1
  198. package/.output/server/chunks/routes/api/instance-insights/drop-slot.post.mjs +5 -2
  199. package/.output/server/chunks/routes/api/instance-insights/drop-slot.post.mjs.map +1 -1
  200. package/.output/server/chunks/routes/api/instance-insights/replication.post.mjs +5 -2
  201. package/.output/server/chunks/routes/api/instance-insights/replication.post.mjs.map +1 -1
  202. package/.output/server/chunks/routes/api/instance-insights/state.post.mjs +5 -2
  203. package/.output/server/chunks/routes/api/instance-insights/state.post.mjs.map +1 -1
  204. package/.output/server/chunks/routes/api/instance-insights/terminate-connection.post.mjs +5 -2
  205. package/.output/server/chunks/routes/api/instance-insights/terminate-connection.post.mjs.map +1 -1
  206. package/.output/server/chunks/routes/api/instance-insights/toggle-slot-status.post.mjs +5 -2
  207. package/.output/server/chunks/routes/api/instance-insights/toggle-slot-status.post.mjs.map +1 -1
  208. package/.output/server/chunks/routes/api/instance-insights/view.post.mjs +66 -0
  209. package/.output/server/chunks/routes/api/instance-insights/view.post.mjs.map +1 -0
  210. package/.output/server/chunks/routes/api/managment-connection/health-check.mjs +7 -1
  211. package/.output/server/chunks/routes/api/managment-connection/health-check.mjs.map +1 -1
  212. package/.output/server/chunks/routes/api/metadata/erd.post.mjs +7 -2
  213. package/.output/server/chunks/routes/api/metadata/erd.post.mjs.map +1 -1
  214. package/.output/server/chunks/routes/api/metadata/meta-data.post.mjs +6 -1
  215. package/.output/server/chunks/routes/api/metadata/meta-data.post.mjs.map +1 -1
  216. package/.output/server/chunks/routes/api/metadata/reverse-schemas.post.mjs +7 -2
  217. package/.output/server/chunks/routes/api/metadata/reverse-schemas.post.mjs.map +1 -1
  218. package/.output/server/chunks/routes/api/metrics/monitor.post.mjs +4 -1
  219. package/.output/server/chunks/routes/api/metrics/monitor.post.mjs.map +1 -1
  220. package/.output/server/chunks/routes/api/query/execute.post.mjs +6 -1
  221. package/.output/server/chunks/routes/api/query/execute.post.mjs.map +1 -1
  222. package/.output/server/chunks/routes/api/query/raw-execute-stream.post.mjs +15 -3
  223. package/.output/server/chunks/routes/api/query/raw-execute-stream.post.mjs.map +1 -1
  224. package/.output/server/chunks/routes/api/query/raw-execute.post.mjs +8 -1
  225. package/.output/server/chunks/routes/api/query/raw-execute.post.mjs.map +1 -1
  226. package/.output/server/chunks/routes/api/redis/browser/databases.post.mjs +25 -0
  227. package/.output/server/chunks/routes/api/redis/browser/databases.post.mjs.map +1 -0
  228. package/.output/server/chunks/routes/api/redis/browser/value.patch.mjs +39 -0
  229. package/.output/server/chunks/routes/api/redis/browser/value.patch.mjs.map +1 -0
  230. package/.output/server/chunks/routes/api/redis/browser/value.post.mjs +25 -0
  231. package/.output/server/chunks/routes/api/redis/browser/value.post.mjs.map +1 -0
  232. package/.output/server/chunks/routes/api/redis/index.post.mjs +37 -0
  233. package/.output/server/chunks/routes/api/redis/index.post.mjs.map +1 -0
  234. package/.output/server/chunks/routes/api/redis/instance-insights/kill-client.post.mjs +38 -0
  235. package/.output/server/chunks/routes/api/redis/instance-insights/kill-client.post.mjs.map +1 -0
  236. package/.output/server/chunks/routes/api/redis/instance-insights/overview.post.mjs +35 -0
  237. package/.output/server/chunks/routes/api/redis/instance-insights/overview.post.mjs.map +1 -0
  238. package/.output/server/chunks/routes/api/redis/pubsub/messages.post.mjs +24 -0
  239. package/.output/server/chunks/routes/api/redis/pubsub/messages.post.mjs.map +1 -0
  240. package/.output/server/chunks/routes/api/redis/pubsub/overview.post.mjs +38 -0
  241. package/.output/server/chunks/routes/api/redis/pubsub/overview.post.mjs.map +1 -0
  242. package/.output/server/chunks/routes/api/redis/pubsub/publish.post.mjs +39 -0
  243. package/.output/server/chunks/routes/api/redis/pubsub/publish.post.mjs.map +1 -0
  244. package/.output/server/chunks/routes/api/redis/pubsub/subscribe.post.mjs +39 -0
  245. package/.output/server/chunks/routes/api/redis/pubsub/subscribe.post.mjs.map +1 -0
  246. package/.output/server/chunks/routes/api/redis/pubsub/unsubscribe.post.mjs +24 -0
  247. package/.output/server/chunks/routes/api/redis/pubsub/unsubscribe.post.mjs.map +1 -0
  248. package/.output/server/chunks/routes/api/redis/workbench/execute.post.mjs +60 -0
  249. package/.output/server/chunks/routes/api/redis/workbench/execute.post.mjs.map +1 -0
  250. package/.output/server/chunks/routes/api/tables/bulk-delete.post.mjs +9 -5
  251. package/.output/server/chunks/routes/api/tables/bulk-delete.post.mjs.map +1 -1
  252. package/.output/server/chunks/routes/api/tables/bulk-update.post.mjs +9 -5
  253. package/.output/server/chunks/routes/api/tables/bulk-update.post.mjs.map +1 -1
  254. package/.output/server/chunks/routes/api/tables/ddl.post.mjs +4 -1
  255. package/.output/server/chunks/routes/api/tables/ddl.post.mjs.map +1 -1
  256. package/.output/server/chunks/routes/api/tables/export.post.mjs +5 -2
  257. package/.output/server/chunks/routes/api/tables/export.post.mjs.map +1 -1
  258. package/.output/server/chunks/routes/api/tables/indexes.post.mjs +4 -1
  259. package/.output/server/chunks/routes/api/tables/indexes.post.mjs.map +1 -1
  260. package/.output/server/chunks/routes/api/tables/meta.post.mjs +7 -2
  261. package/.output/server/chunks/routes/api/tables/meta.post.mjs.map +1 -1
  262. package/.output/server/chunks/routes/api/tables/overview.post.mjs +4 -1
  263. package/.output/server/chunks/routes/api/tables/overview.post.mjs.map +1 -1
  264. package/.output/server/chunks/routes/api/tables/rls.post.mjs +4 -1
  265. package/.output/server/chunks/routes/api/tables/rls.post.mjs.map +1 -1
  266. package/.output/server/chunks/routes/api/tables/rules.post.mjs +4 -1
  267. package/.output/server/chunks/routes/api/tables/rules.post.mjs.map +1 -1
  268. package/.output/server/chunks/routes/api/tables/size.post.mjs +4 -1
  269. package/.output/server/chunks/routes/api/tables/size.post.mjs.map +1 -1
  270. package/.output/server/chunks/routes/api/tables/structure.post.mjs +4 -1
  271. package/.output/server/chunks/routes/api/tables/structure.post.mjs.map +1 -1
  272. package/.output/server/chunks/routes/api/tables/triggers.post.mjs +4 -1
  273. package/.output/server/chunks/routes/api/tables/triggers.post.mjs.map +1 -1
  274. package/.output/server/chunks/routes/api/views/definition.post.mjs +4 -1
  275. package/.output/server/chunks/routes/api/views/definition.post.mjs.map +1 -1
  276. package/.output/server/chunks/routes/api/views/dependencies.post.mjs +4 -1
  277. package/.output/server/chunks/routes/api/views/dependencies.post.mjs.map +1 -1
  278. package/.output/server/chunks/routes/api/views/explain.post.mjs +4 -1
  279. package/.output/server/chunks/routes/api/views/explain.post.mjs.map +1 -1
  280. package/.output/server/chunks/routes/api/views/indexes.post.mjs +4 -1
  281. package/.output/server/chunks/routes/api/views/indexes.post.mjs.map +1 -1
  282. package/.output/server/chunks/routes/api/views/meta.post.mjs +4 -1
  283. package/.output/server/chunks/routes/api/views/meta.post.mjs.map +1 -1
  284. package/.output/server/chunks/routes/api/views/overview.post.mjs +4 -1
  285. package/.output/server/chunks/routes/api/views/overview.post.mjs.map +1 -1
  286. package/.output/server/chunks/routes/renderer.mjs +1 -1
  287. package/.output/server/index.mjs +1 -1
  288. package/.output/server/node_modules/@libsql/client/lib-esm/hrana.js +310 -0
  289. package/.output/server/node_modules/@libsql/client/lib-esm/http.js +230 -0
  290. package/.output/server/node_modules/@libsql/client/lib-esm/sql_cache.js +87 -0
  291. package/.output/server/node_modules/@libsql/client/package.json +123 -0
  292. package/.output/server/node_modules/@libsql/core/lib-esm/api.js +16 -0
  293. package/.output/server/node_modules/@libsql/core/lib-esm/config.js +136 -0
  294. package/.output/server/node_modules/@libsql/core/lib-esm/uri.js +120 -0
  295. package/.output/server/node_modules/@libsql/core/lib-esm/util.js +55 -0
  296. package/.output/server/node_modules/@libsql/core/package.json +91 -0
  297. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/batch.js +271 -0
  298. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/byte_queue.js +45 -0
  299. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/client.js +13 -0
  300. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/cursor.js +2 -0
  301. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/describe.js +8 -0
  302. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/encoding/index.js +4 -0
  303. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/encoding/json/decode.js +59 -0
  304. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/encoding/json/encode.js +72 -0
  305. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/encoding/protobuf/decode.js +150 -0
  306. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/encoding/protobuf/encode.js +95 -0
  307. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/encoding/protobuf/util.js +6 -0
  308. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/errors.js +102 -0
  309. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/client.js +124 -0
  310. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/cursor.js +135 -0
  311. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/json_decode.js +62 -0
  312. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/json_encode.js +55 -0
  313. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/protobuf_decode.js +44 -0
  314. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/protobuf_encode.js +78 -0
  315. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/http/stream.js +363 -0
  316. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/id_alloc.js +47 -0
  317. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/index.js +42 -0
  318. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/libsql_url.js +75 -0
  319. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/queue.js +26 -0
  320. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/queue_microtask.js +13 -0
  321. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/result.js +48 -0
  322. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/shared/json_decode.js +106 -0
  323. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/shared/json_encode.js +71 -0
  324. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/shared/protobuf_decode.js +115 -0
  325. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/shared/protobuf_encode.js +85 -0
  326. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/sql.js +46 -0
  327. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/stmt.js +76 -0
  328. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/stream.js +57 -0
  329. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/util.js +4 -0
  330. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/value.js +83 -0
  331. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/client.js +318 -0
  332. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/cursor.js +80 -0
  333. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/json_decode.js +74 -0
  334. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/json_encode.js +77 -0
  335. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/protobuf_decode.js +60 -0
  336. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/protobuf_encode.js +115 -0
  337. package/.output/server/node_modules/@libsql/hrana-client/lib-esm/ws/stream.js +211 -0
  338. package/.output/server/node_modules/@libsql/hrana-client/package.json +60 -0
  339. package/.output/server/node_modules/@libsql/isomorphic-fetch/node.js +6 -0
  340. package/.output/server/node_modules/@libsql/isomorphic-fetch/package.json +51 -0
  341. package/.output/server/node_modules/@libsql/isomorphic-ws/node.mjs +2 -0
  342. package/.output/server/node_modules/@libsql/isomorphic-ws/package.json +53 -0
  343. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/ADD.js +19 -0
  344. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/CARD.js +16 -0
  345. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/EXISTS.js +19 -0
  346. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/INFO.js +22 -0
  347. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/INSERT.js +41 -0
  348. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/LOADCHUNK.js +19 -0
  349. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/MADD.js +19 -0
  350. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/MEXISTS.js +19 -0
  351. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/RESERVE.js +28 -0
  352. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/SCANDUMP.js +23 -0
  353. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/helpers.js +28 -0
  354. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/bloom/index.js +53 -0
  355. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/INCRBY.js +28 -0
  356. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/INFO.js +22 -0
  357. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/INITBYDIM.js +19 -0
  358. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/INITBYPROB.js +19 -0
  359. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/MERGE.js +33 -0
  360. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/QUERY.js +18 -0
  361. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/count-min-sketch/index.js +26 -0
  362. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/ADD.js +19 -0
  363. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/ADDNX.js +19 -0
  364. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/COUNT.js +18 -0
  365. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/DEL.js +19 -0
  366. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/EXISTS.js +19 -0
  367. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/INFO.js +22 -0
  368. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/INSERT.js +34 -0
  369. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/INSERTNX.js +44 -0
  370. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/LOADCHUNK.js +19 -0
  371. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/RESERVE.js +31 -0
  372. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/SCANDUMP.js +23 -0
  373. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/cuckoo/index.js +41 -0
  374. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/index.js +18 -0
  375. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/ADD.js +20 -0
  376. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/BYRANK.js +26 -0
  377. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/BYREVRANK.js +41 -0
  378. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/CDF.js +21 -0
  379. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/CREATE.js +21 -0
  380. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/INFO.js +22 -0
  381. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/MAX.js +17 -0
  382. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/MERGE.js +27 -0
  383. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/MIN.js +17 -0
  384. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/QUANTILE.js +21 -0
  385. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/RANK.js +25 -0
  386. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/RESET.js +16 -0
  387. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/REVRANK.js +41 -0
  388. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/TRIMMED_MEAN.js +20 -0
  389. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/t-digest/index.js +50 -0
  390. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/ADD.js +18 -0
  391. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/COUNT.js +18 -0
  392. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/INCRBY.js +28 -0
  393. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/INFO.js +24 -0
  394. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/LIST.js +16 -0
  395. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/LIST_WITHCOUNT.js +26 -0
  396. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/QUERY.js +19 -0
  397. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/RESERVE.js +25 -0
  398. package/.output/server/node_modules/@redis/bloom/dist/lib/commands/top-k/index.js +32 -0
  399. package/.output/server/node_modules/@redis/bloom/dist/lib/index.js +9 -0
  400. package/.output/server/node_modules/@redis/bloom/package.json +36 -0
  401. package/.output/server/node_modules/@redis/client/dist/index.js +53 -0
  402. package/.output/server/node_modules/@redis/client/dist/lib/RESP/decoder.js +727 -0
  403. package/.output/server/node_modules/@redis/client/dist/lib/RESP/encoder.js +24 -0
  404. package/.output/server/node_modules/@redis/client/dist/lib/RESP/verbatim-string.js +12 -0
  405. package/.output/server/node_modules/@redis/client/dist/lib/authx/credentials-provider.js +26 -0
  406. package/.output/server/node_modules/@redis/client/dist/lib/authx/index.js +12 -0
  407. package/.output/server/node_modules/@redis/client/dist/lib/authx/token-manager.js +184 -0
  408. package/.output/server/node_modules/@redis/client/dist/lib/authx/token.js +32 -0
  409. package/.output/server/node_modules/@redis/client/dist/lib/client/cache.js +634 -0
  410. package/.output/server/node_modules/@redis/client/dist/lib/client/commands-queue.js +497 -0
  411. package/.output/server/node_modules/@redis/client/dist/lib/client/enterprise-maintenance-manager.js +387 -0
  412. package/.output/server/node_modules/@redis/client/dist/lib/client/identity.js +65 -0
  413. package/.output/server/node_modules/@redis/client/dist/lib/client/index.js +1118 -0
  414. package/.output/server/node_modules/@redis/client/dist/lib/client/legacy-mode.js +119 -0
  415. package/.output/server/node_modules/@redis/client/dist/lib/client/linked-list.js +212 -0
  416. package/.output/server/node_modules/@redis/client/dist/lib/client/multi-command.js +118 -0
  417. package/.output/server/node_modules/@redis/client/dist/lib/client/parser.js +83 -0
  418. package/.output/server/node_modules/@redis/client/dist/lib/client/pool.js +373 -0
  419. package/.output/server/node_modules/@redis/client/dist/lib/client/pub-sub.js +351 -0
  420. package/.output/server/node_modules/@redis/client/dist/lib/client/socket.js +336 -0
  421. package/.output/server/node_modules/@redis/client/dist/lib/client/tracing.js +122 -0
  422. package/.output/server/node_modules/@redis/client/dist/lib/cluster/cluster-slots.js +657 -0
  423. package/.output/server/node_modules/@redis/client/dist/lib/cluster/index.js +425 -0
  424. package/.output/server/node_modules/@redis/client/dist/lib/cluster/multi-command.js +124 -0
  425. package/.output/server/node_modules/@redis/client/dist/lib/commander.js +91 -0
  426. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_CAT.js +19 -0
  427. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_DELUSER.js +17 -0
  428. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_DRYRUN.js +17 -0
  429. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_GENPASS.js +19 -0
  430. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_GETUSER.js +33 -0
  431. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_LIST.js +15 -0
  432. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_LOAD.js +15 -0
  433. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_LOG.js +39 -0
  434. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_LOG_RESET.js +19 -0
  435. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_SAVE.js +15 -0
  436. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_SETUSER.js +18 -0
  437. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_USERS.js +15 -0
  438. package/.output/server/node_modules/@redis/client/dist/lib/commands/ACL_WHOAMI.js +15 -0
  439. package/.output/server/node_modules/@redis/client/dist/lib/commands/APPEND.js +16 -0
  440. package/.output/server/node_modules/@redis/client/dist/lib/commands/ASKING.js +17 -0
  441. package/.output/server/node_modules/@redis/client/dist/lib/commands/AUTH.js +22 -0
  442. package/.output/server/node_modules/@redis/client/dist/lib/commands/BGREWRITEAOF.js +15 -0
  443. package/.output/server/node_modules/@redis/client/dist/lib/commands/BGSAVE.js +20 -0
  444. package/.output/server/node_modules/@redis/client/dist/lib/commands/BITCOUNT.js +28 -0
  445. package/.output/server/node_modules/@redis/client/dist/lib/commands/BITFIELD.js +33 -0
  446. package/.output/server/node_modules/@redis/client/dist/lib/commands/BITFIELD_RO.js +23 -0
  447. package/.output/server/node_modules/@redis/client/dist/lib/commands/BITOP.js +19 -0
  448. package/.output/server/node_modules/@redis/client/dist/lib/commands/BITPOS.js +31 -0
  449. package/.output/server/node_modules/@redis/client/dist/lib/commands/BLMOVE.js +21 -0
  450. package/.output/server/node_modules/@redis/client/dist/lib/commands/BLMPOP.js +41 -0
  451. package/.output/server/node_modules/@redis/client/dist/lib/commands/BLPOP.js +25 -0
  452. package/.output/server/node_modules/@redis/client/dist/lib/commands/BRPOP.js +22 -0
  453. package/.output/server/node_modules/@redis/client/dist/lib/commands/BRPOPLPUSH.js +19 -0
  454. package/.output/server/node_modules/@redis/client/dist/lib/commands/BZMPOP.js +41 -0
  455. package/.output/server/node_modules/@redis/client/dist/lib/commands/BZPOPMAX.js +34 -0
  456. package/.output/server/node_modules/@redis/client/dist/lib/commands/BZPOPMIN.js +22 -0
  457. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_CACHING.js +16 -0
  458. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_GETNAME.js +15 -0
  459. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_GETREDIR.js +15 -0
  460. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_ID.js +15 -0
  461. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_INFO.js +62 -0
  462. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_KILL.js +66 -0
  463. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_LIST.js +35 -0
  464. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_NO-EVICT.js +16 -0
  465. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_NO-TOUCH.js +16 -0
  466. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_PAUSE.js +20 -0
  467. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_SETNAME.js +16 -0
  468. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_TRACKING.js +53 -0
  469. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_TRACKINGINFO.js +22 -0
  470. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLIENT_UNPAUSE.js +15 -0
  471. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_ADDSLOTS.js +17 -0
  472. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_ADDSLOTSRANGE.js +18 -0
  473. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_BUMPEPOCH.js +15 -0
  474. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_COUNT-FAILURE-REPORTS.js +16 -0
  475. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_COUNTKEYSINSLOT.js +16 -0
  476. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_DELSLOTS.js +17 -0
  477. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_DELSLOTSRANGE.js +18 -0
  478. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_FAILOVER.js +24 -0
  479. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_FLUSHSLOTS.js +15 -0
  480. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_FORGET.js +16 -0
  481. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_GETKEYSINSLOT.js +17 -0
  482. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_INFO.js +15 -0
  483. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_KEYSLOT.js +16 -0
  484. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_LINKS.js +28 -0
  485. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_MEET.js +17 -0
  486. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_MYID.js +15 -0
  487. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_MYSHARDID.js +15 -0
  488. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_NODES.js +15 -0
  489. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_REPLICAS.js +16 -0
  490. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_REPLICATE.js +16 -0
  491. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_RESET.js +19 -0
  492. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_SAVECONFIG.js +15 -0
  493. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_SET-CONFIG-EPOCH.js +16 -0
  494. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_SETSLOT.js +28 -0
  495. package/.output/server/node_modules/@redis/client/dist/lib/commands/CLUSTER_SLOTS.js +30 -0
  496. package/.output/server/node_modules/@redis/client/dist/lib/commands/COMMAND.js +19 -0
  497. package/.output/server/node_modules/@redis/client/dist/lib/commands/COMMAND_COUNT.js +15 -0
  498. package/.output/server/node_modules/@redis/client/dist/lib/commands/COMMAND_GETKEYS.js +17 -0
  499. package/.output/server/node_modules/@redis/client/dist/lib/commands/COMMAND_GETKEYSANDFLAGS.js +25 -0
  500. package/.output/server/node_modules/@redis/client/dist/lib/commands/COMMAND_INFO.js +20 -0
  501. package/.output/server/node_modules/@redis/client/dist/lib/commands/COMMAND_LIST.js +25 -0
  502. package/.output/server/node_modules/@redis/client/dist/lib/commands/CONFIG_GET.js +21 -0
  503. package/.output/server/node_modules/@redis/client/dist/lib/commands/CONFIG_RESETSTAT.js +15 -0
  504. package/.output/server/node_modules/@redis/client/dist/lib/commands/CONFIG_REWRITE.js +15 -0
  505. package/.output/server/node_modules/@redis/client/dist/lib/commands/CONFIG_SET.js +25 -0
  506. package/.output/server/node_modules/@redis/client/dist/lib/commands/COPY.js +24 -0
  507. package/.output/server/node_modules/@redis/client/dist/lib/commands/DBSIZE.js +15 -0
  508. package/.output/server/node_modules/@redis/client/dist/lib/commands/DECR.js +15 -0
  509. package/.output/server/node_modules/@redis/client/dist/lib/commands/DECRBY.js +17 -0
  510. package/.output/server/node_modules/@redis/client/dist/lib/commands/DEL.js +16 -0
  511. package/.output/server/node_modules/@redis/client/dist/lib/commands/DELEX.js +43 -0
  512. package/.output/server/node_modules/@redis/client/dist/lib/commands/DIGEST.js +20 -0
  513. package/.output/server/node_modules/@redis/client/dist/lib/commands/DUMP.js +16 -0
  514. package/.output/server/node_modules/@redis/client/dist/lib/commands/ECHO.js +16 -0
  515. package/.output/server/node_modules/@redis/client/dist/lib/commands/EVAL.js +31 -0
  516. package/.output/server/node_modules/@redis/client/dist/lib/commands/EVALSHA.js +41 -0
  517. package/.output/server/node_modules/@redis/client/dist/lib/commands/EVALSHA_RO.js +41 -0
  518. package/.output/server/node_modules/@redis/client/dist/lib/commands/EVAL_RO.js +41 -0
  519. package/.output/server/node_modules/@redis/client/dist/lib/commands/EXISTS.js +17 -0
  520. package/.output/server/node_modules/@redis/client/dist/lib/commands/EXPIRE.js +21 -0
  521. package/.output/server/node_modules/@redis/client/dist/lib/commands/EXPIREAT.js +22 -0
  522. package/.output/server/node_modules/@redis/client/dist/lib/commands/EXPIRETIME.js +16 -0
  523. package/.output/server/node_modules/@redis/client/dist/lib/commands/FCALL.js +41 -0
  524. package/.output/server/node_modules/@redis/client/dist/lib/commands/FCALL_RO.js +41 -0
  525. package/.output/server/node_modules/@redis/client/dist/lib/commands/FLUSHALL.js +24 -0
  526. package/.output/server/node_modules/@redis/client/dist/lib/commands/FLUSHDB.js +19 -0
  527. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_DELETE.js +16 -0
  528. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_DUMP.js +15 -0
  529. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_FLUSH.js +19 -0
  530. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_KILL.js +15 -0
  531. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_LIST.js +38 -0
  532. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_LIST_WITHCODE.js +41 -0
  533. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_LOAD.js +21 -0
  534. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_RESTORE.js +20 -0
  535. package/.output/server/node_modules/@redis/client/dist/lib/commands/FUNCTION_STATS.js +47 -0
  536. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEOADD.js +41 -0
  537. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEODIST.js +26 -0
  538. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEOHASH.js +19 -0
  539. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEOPOS.js +27 -0
  540. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUS.js +28 -0
  541. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUSBYMEMBER.js +28 -0
  542. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUSBYMEMBER_RO.js +46 -0
  543. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUSBYMEMBER_RO_WITH.js +46 -0
  544. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUSBYMEMBER_STORE.js +53 -0
  545. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUSBYMEMBER_WITH.js +36 -0
  546. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUS_RO.js +45 -0
  547. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUS_RO_WITH.js +27 -0
  548. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUS_STORE.js +53 -0
  549. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEORADIUS_WITH.js +56 -0
  550. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEOSEARCH.js +54 -0
  551. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEOSEARCHSTORE.js +27 -0
  552. package/.output/server/node_modules/@redis/client/dist/lib/commands/GEOSEARCH_WITH.js +55 -0
  553. package/.output/server/node_modules/@redis/client/dist/lib/commands/GET.js +17 -0
  554. package/.output/server/node_modules/@redis/client/dist/lib/commands/GETBIT.js +19 -0
  555. package/.output/server/node_modules/@redis/client/dist/lib/commands/GETDEL.js +16 -0
  556. package/.output/server/node_modules/@redis/client/dist/lib/commands/GETEX.js +50 -0
  557. package/.output/server/node_modules/@redis/client/dist/lib/commands/GETRANGE.js +20 -0
  558. package/.output/server/node_modules/@redis/client/dist/lib/commands/GETSET.js +18 -0
  559. package/.output/server/node_modules/@redis/client/dist/lib/commands/HDEL.js +17 -0
  560. package/.output/server/node_modules/@redis/client/dist/lib/commands/HELLO.js +35 -0
  561. package/.output/server/node_modules/@redis/client/dist/lib/commands/HEXISTS.js +19 -0
  562. package/.output/server/node_modules/@redis/client/dist/lib/commands/HEXPIRE.js +35 -0
  563. package/.output/server/node_modules/@redis/client/dist/lib/commands/HEXPIREAT.js +25 -0
  564. package/.output/server/node_modules/@redis/client/dist/lib/commands/HEXPIRETIME.js +26 -0
  565. package/.output/server/node_modules/@redis/client/dist/lib/commands/HGET.js +19 -0
  566. package/.output/server/node_modules/@redis/client/dist/lib/commands/HGETALL.js +22 -0
  567. package/.output/server/node_modules/@redis/client/dist/lib/commands/HGETDEL.js +18 -0
  568. package/.output/server/node_modules/@redis/client/dist/lib/commands/HGETEX.js +30 -0
  569. package/.output/server/node_modules/@redis/client/dist/lib/commands/HINCRBY.js +18 -0
  570. package/.output/server/node_modules/@redis/client/dist/lib/commands/HINCRBYFLOAT.js +18 -0
  571. package/.output/server/node_modules/@redis/client/dist/lib/commands/HKEYS.js +17 -0
  572. package/.output/server/node_modules/@redis/client/dist/lib/commands/HLEN.js +17 -0
  573. package/.output/server/node_modules/@redis/client/dist/lib/commands/HMGET.js +19 -0
  574. package/.output/server/node_modules/@redis/client/dist/lib/commands/HOTKEYS_GET.js +131 -0
  575. package/.output/server/node_modules/@redis/client/dist/lib/commands/HOTKEYS_RESET.js +25 -0
  576. package/.output/server/node_modules/@redis/client/dist/lib/commands/HOTKEYS_START.js +60 -0
  577. package/.output/server/node_modules/@redis/client/dist/lib/commands/HOTKEYS_STOP.js +27 -0
  578. package/.output/server/node_modules/@redis/client/dist/lib/commands/HPERSIST.js +18 -0
  579. package/.output/server/node_modules/@redis/client/dist/lib/commands/HPEXPIRE.js +25 -0
  580. package/.output/server/node_modules/@redis/client/dist/lib/commands/HPEXPIREAT.js +27 -0
  581. package/.output/server/node_modules/@redis/client/dist/lib/commands/HPEXPIRETIME.js +21 -0
  582. package/.output/server/node_modules/@redis/client/dist/lib/commands/HPTTL.js +21 -0
  583. package/.output/server/node_modules/@redis/client/dist/lib/commands/HRANDFIELD.js +18 -0
  584. package/.output/server/node_modules/@redis/client/dist/lib/commands/HRANDFIELD_COUNT.js +20 -0
  585. package/.output/server/node_modules/@redis/client/dist/lib/commands/HRANDFIELD_COUNT_WITHVALUES.js +41 -0
  586. package/.output/server/node_modules/@redis/client/dist/lib/commands/HSCAN.js +35 -0
  587. package/.output/server/node_modules/@redis/client/dist/lib/commands/HSCAN_NOVALUES.js +27 -0
  588. package/.output/server/node_modules/@redis/client/dist/lib/commands/HSET.js +55 -0
  589. package/.output/server/node_modules/@redis/client/dist/lib/commands/HSETEX.js +81 -0
  590. package/.output/server/node_modules/@redis/client/dist/lib/commands/HSETNX.js +21 -0
  591. package/.output/server/node_modules/@redis/client/dist/lib/commands/HSTRLEN.js +21 -0
  592. package/.output/server/node_modules/@redis/client/dist/lib/commands/HTTL.js +19 -0
  593. package/.output/server/node_modules/@redis/client/dist/lib/commands/HVALS.js +17 -0
  594. package/.output/server/node_modules/@redis/client/dist/lib/commands/INCR.js +17 -0
  595. package/.output/server/node_modules/@redis/client/dist/lib/commands/INCRBY.js +19 -0
  596. package/.output/server/node_modules/@redis/client/dist/lib/commands/INCRBYFLOAT.js +19 -0
  597. package/.output/server/node_modules/@redis/client/dist/lib/commands/INFO.js +21 -0
  598. package/.output/server/node_modules/@redis/client/dist/lib/commands/KEYS.js +18 -0
  599. package/.output/server/node_modules/@redis/client/dist/lib/commands/LASTSAVE.js +17 -0
  600. package/.output/server/node_modules/@redis/client/dist/lib/commands/LATENCY_DOCTOR.js +17 -0
  601. package/.output/server/node_modules/@redis/client/dist/lib/commands/LATENCY_GRAPH.js +37 -0
  602. package/.output/server/node_modules/@redis/client/dist/lib/commands/LATENCY_HISTOGRAM.js +39 -0
  603. package/.output/server/node_modules/@redis/client/dist/lib/commands/LATENCY_HISTORY.js +18 -0
  604. package/.output/server/node_modules/@redis/client/dist/lib/commands/LATENCY_LATEST.js +17 -0
  605. package/.output/server/node_modules/@redis/client/dist/lib/commands/LATENCY_RESET.js +24 -0
  606. package/.output/server/node_modules/@redis/client/dist/lib/commands/LCS.js +19 -0
  607. package/.output/server/node_modules/@redis/client/dist/lib/commands/LCS_IDX.js +33 -0
  608. package/.output/server/node_modules/@redis/client/dist/lib/commands/LCS_IDX_WITHMATCHLEN.js +28 -0
  609. package/.output/server/node_modules/@redis/client/dist/lib/commands/LCS_LEN.js +22 -0
  610. package/.output/server/node_modules/@redis/client/dist/lib/commands/LINDEX.js +21 -0
  611. package/.output/server/node_modules/@redis/client/dist/lib/commands/LINSERT.js +22 -0
  612. package/.output/server/node_modules/@redis/client/dist/lib/commands/LLEN.js +19 -0
  613. package/.output/server/node_modules/@redis/client/dist/lib/commands/LMOVE.js +22 -0
  614. package/.output/server/node_modules/@redis/client/dist/lib/commands/LMPOP.js +27 -0
  615. package/.output/server/node_modules/@redis/client/dist/lib/commands/LOLWUT.js +23 -0
  616. package/.output/server/node_modules/@redis/client/dist/lib/commands/LPOP.js +17 -0
  617. package/.output/server/node_modules/@redis/client/dist/lib/commands/LPOP_COUNT.js +23 -0
  618. package/.output/server/node_modules/@redis/client/dist/lib/commands/LPOS.js +28 -0
  619. package/.output/server/node_modules/@redis/client/dist/lib/commands/LPOS_COUNT.js +26 -0
  620. package/.output/server/node_modules/@redis/client/dist/lib/commands/LPUSH.js +19 -0
  621. package/.output/server/node_modules/@redis/client/dist/lib/commands/LPUSHX.js +19 -0
  622. package/.output/server/node_modules/@redis/client/dist/lib/commands/LRANGE.js +22 -0
  623. package/.output/server/node_modules/@redis/client/dist/lib/commands/LREM.js +22 -0
  624. package/.output/server/node_modules/@redis/client/dist/lib/commands/LSET.js +21 -0
  625. package/.output/server/node_modules/@redis/client/dist/lib/commands/LTRIM.js +20 -0
  626. package/.output/server/node_modules/@redis/client/dist/lib/commands/MEMORY_DOCTOR.js +17 -0
  627. package/.output/server/node_modules/@redis/client/dist/lib/commands/MEMORY_MALLOC-STATS.js +17 -0
  628. package/.output/server/node_modules/@redis/client/dist/lib/commands/MEMORY_PURGE.js +17 -0
  629. package/.output/server/node_modules/@redis/client/dist/lib/commands/MEMORY_STATS.js +39 -0
  630. package/.output/server/node_modules/@redis/client/dist/lib/commands/MEMORY_USAGE.js +22 -0
  631. package/.output/server/node_modules/@redis/client/dist/lib/commands/MGET.js +19 -0
  632. package/.output/server/node_modules/@redis/client/dist/lib/commands/MIGRATE.js +48 -0
  633. package/.output/server/node_modules/@redis/client/dist/lib/commands/MODULE_LIST.js +28 -0
  634. package/.output/server/node_modules/@redis/client/dist/lib/commands/MODULE_LOAD.js +22 -0
  635. package/.output/server/node_modules/@redis/client/dist/lib/commands/MODULE_UNLOAD.js +18 -0
  636. package/.output/server/node_modules/@redis/client/dist/lib/commands/MOVE.js +19 -0
  637. package/.output/server/node_modules/@redis/client/dist/lib/commands/MSET.js +46 -0
  638. package/.output/server/node_modules/@redis/client/dist/lib/commands/MSETEX.js +104 -0
  639. package/.output/server/node_modules/@redis/client/dist/lib/commands/MSETNX.js +19 -0
  640. package/.output/server/node_modules/@redis/client/dist/lib/commands/OBJECT_ENCODING.js +18 -0
  641. package/.output/server/node_modules/@redis/client/dist/lib/commands/OBJECT_FREQ.js +18 -0
  642. package/.output/server/node_modules/@redis/client/dist/lib/commands/OBJECT_IDLETIME.js +18 -0
  643. package/.output/server/node_modules/@redis/client/dist/lib/commands/OBJECT_REFCOUNT.js +18 -0
  644. package/.output/server/node_modules/@redis/client/dist/lib/commands/PERSIST.js +17 -0
  645. package/.output/server/node_modules/@redis/client/dist/lib/commands/PEXPIRE.js +24 -0
  646. package/.output/server/node_modules/@redis/client/dist/lib/commands/PEXPIREAT.js +25 -0
  647. package/.output/server/node_modules/@redis/client/dist/lib/commands/PEXPIRETIME.js +18 -0
  648. package/.output/server/node_modules/@redis/client/dist/lib/commands/PFADD.js +22 -0
  649. package/.output/server/node_modules/@redis/client/dist/lib/commands/PFCOUNT.js +18 -0
  650. package/.output/server/node_modules/@redis/client/dist/lib/commands/PFMERGE.js +21 -0
  651. package/.output/server/node_modules/@redis/client/dist/lib/commands/PING.js +21 -0
  652. package/.output/server/node_modules/@redis/client/dist/lib/commands/PSETEX.js +20 -0
  653. package/.output/server/node_modules/@redis/client/dist/lib/commands/PTTL.js +18 -0
  654. package/.output/server/node_modules/@redis/client/dist/lib/commands/PUBLISH.js +20 -0
  655. package/.output/server/node_modules/@redis/client/dist/lib/commands/PUBSUB_CHANNELS.js +21 -0
  656. package/.output/server/node_modules/@redis/client/dist/lib/commands/PUBSUB_NUMPAT.js +17 -0
  657. package/.output/server/node_modules/@redis/client/dist/lib/commands/PUBSUB_NUMSUB.js +34 -0
  658. package/.output/server/node_modules/@redis/client/dist/lib/commands/PUBSUB_SHARDCHANNELS.js +21 -0
  659. package/.output/server/node_modules/@redis/client/dist/lib/commands/PUBSUB_SHARDNUMSUB.js +32 -0
  660. package/.output/server/node_modules/@redis/client/dist/lib/commands/RANDOMKEY.js +17 -0
  661. package/.output/server/node_modules/@redis/client/dist/lib/commands/READONLY.js +17 -0
  662. package/.output/server/node_modules/@redis/client/dist/lib/commands/RENAME.js +19 -0
  663. package/.output/server/node_modules/@redis/client/dist/lib/commands/RENAMENX.js +19 -0
  664. package/.output/server/node_modules/@redis/client/dist/lib/commands/REPLICAOF.js +19 -0
  665. package/.output/server/node_modules/@redis/client/dist/lib/commands/RESTORE-ASKING.js +17 -0
  666. package/.output/server/node_modules/@redis/client/dist/lib/commands/RESTORE.js +34 -0
  667. package/.output/server/node_modules/@redis/client/dist/lib/commands/ROLE.js +60 -0
  668. package/.output/server/node_modules/@redis/client/dist/lib/commands/RPOP.js +17 -0
  669. package/.output/server/node_modules/@redis/client/dist/lib/commands/RPOPLPUSH.js +18 -0
  670. package/.output/server/node_modules/@redis/client/dist/lib/commands/RPOP_COUNT.js +19 -0
  671. package/.output/server/node_modules/@redis/client/dist/lib/commands/RPUSH.js +19 -0
  672. package/.output/server/node_modules/@redis/client/dist/lib/commands/RPUSHX.js +19 -0
  673. package/.output/server/node_modules/@redis/client/dist/lib/commands/SADD.js +19 -0
  674. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCAN.js +71 -0
  675. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCARD.js +19 -0
  676. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCRIPT_DEBUG.js +18 -0
  677. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCRIPT_EXISTS.js +19 -0
  678. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCRIPT_FLUSH.js +21 -0
  679. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCRIPT_KILL.js +17 -0
  680. package/.output/server/node_modules/@redis/client/dist/lib/commands/SCRIPT_LOAD.js +18 -0
  681. package/.output/server/node_modules/@redis/client/dist/lib/commands/SDIFF.js +19 -0
  682. package/.output/server/node_modules/@redis/client/dist/lib/commands/SDIFFSTORE.js +19 -0
  683. package/.output/server/node_modules/@redis/client/dist/lib/commands/SET.js +61 -0
  684. package/.output/server/node_modules/@redis/client/dist/lib/commands/SETBIT.js +21 -0
  685. package/.output/server/node_modules/@redis/client/dist/lib/commands/SETEX.js +20 -0
  686. package/.output/server/node_modules/@redis/client/dist/lib/commands/SETNX.js +19 -0
  687. package/.output/server/node_modules/@redis/client/dist/lib/commands/SETRANGE.js +20 -0
  688. package/.output/server/node_modules/@redis/client/dist/lib/commands/SINTER.js +19 -0
  689. package/.output/server/node_modules/@redis/client/dist/lib/commands/SINTERCARD.js +25 -0
  690. package/.output/server/node_modules/@redis/client/dist/lib/commands/SINTERSTORE.js +20 -0
  691. package/.output/server/node_modules/@redis/client/dist/lib/commands/SISMEMBER.js +21 -0
  692. package/.output/server/node_modules/@redis/client/dist/lib/commands/SMEMBERS.js +22 -0
  693. package/.output/server/node_modules/@redis/client/dist/lib/commands/SMISMEMBER.js +21 -0
  694. package/.output/server/node_modules/@redis/client/dist/lib/commands/SMOVE.js +21 -0
  695. package/.output/server/node_modules/@redis/client/dist/lib/commands/SORT.js +53 -0
  696. package/.output/server/node_modules/@redis/client/dist/lib/commands/SORT_RO.js +40 -0
  697. package/.output/server/node_modules/@redis/client/dist/lib/commands/SORT_STORE.js +22 -0
  698. package/.output/server/node_modules/@redis/client/dist/lib/commands/SPOP.js +18 -0
  699. package/.output/server/node_modules/@redis/client/dist/lib/commands/SPOP_COUNT.js +20 -0
  700. package/.output/server/node_modules/@redis/client/dist/lib/commands/SPUBLISH.js +20 -0
  701. package/.output/server/node_modules/@redis/client/dist/lib/commands/SRANDMEMBER.js +18 -0
  702. package/.output/server/node_modules/@redis/client/dist/lib/commands/SRANDMEMBER_COUNT.js +23 -0
  703. package/.output/server/node_modules/@redis/client/dist/lib/commands/SREM.js +21 -0
  704. package/.output/server/node_modules/@redis/client/dist/lib/commands/SSCAN.js +35 -0
  705. package/.output/server/node_modules/@redis/client/dist/lib/commands/STRLEN.js +20 -0
  706. package/.output/server/node_modules/@redis/client/dist/lib/commands/SUNION.js +20 -0
  707. package/.output/server/node_modules/@redis/client/dist/lib/commands/SUNIONSTORE.js +21 -0
  708. package/.output/server/node_modules/@redis/client/dist/lib/commands/SWAPDB.js +17 -0
  709. package/.output/server/node_modules/@redis/client/dist/lib/commands/TIME.js +18 -0
  710. package/.output/server/node_modules/@redis/client/dist/lib/commands/TOUCH.js +19 -0
  711. package/.output/server/node_modules/@redis/client/dist/lib/commands/TTL.js +19 -0
  712. package/.output/server/node_modules/@redis/client/dist/lib/commands/TYPE.js +20 -0
  713. package/.output/server/node_modules/@redis/client/dist/lib/commands/UNLINK.js +19 -0
  714. package/.output/server/node_modules/@redis/client/dist/lib/commands/VADD.js +42 -0
  715. package/.output/server/node_modules/@redis/client/dist/lib/commands/VCARD.js +18 -0
  716. package/.output/server/node_modules/@redis/client/dist/lib/commands/VDIM.js +18 -0
  717. package/.output/server/node_modules/@redis/client/dist/lib/commands/VEMB.js +21 -0
  718. package/.output/server/node_modules/@redis/client/dist/lib/commands/VEMB_RAW.js +42 -0
  719. package/.output/server/node_modules/@redis/client/dist/lib/commands/VGETATTR.js +21 -0
  720. package/.output/server/node_modules/@redis/client/dist/lib/commands/VINFO.js +27 -0
  721. package/.output/server/node_modules/@redis/client/dist/lib/commands/VLINKS.js +20 -0
  722. package/.output/server/node_modules/@redis/client/dist/lib/commands/VLINKS_WITHSCORES.js +39 -0
  723. package/.output/server/node_modules/@redis/client/dist/lib/commands/VRANDMEMBER.js +22 -0
  724. package/.output/server/node_modules/@redis/client/dist/lib/commands/VRANGE.js +31 -0
  725. package/.output/server/node_modules/@redis/client/dist/lib/commands/VREM.js +20 -0
  726. package/.output/server/node_modules/@redis/client/dist/lib/commands/VSETATTR.js +27 -0
  727. package/.output/server/node_modules/@redis/client/dist/lib/commands/VSIM.js +51 -0
  728. package/.output/server/node_modules/@redis/client/dist/lib/commands/VSIM_WITHSCORES.js +32 -0
  729. package/.output/server/node_modules/@redis/client/dist/lib/commands/WAIT.js +20 -0
  730. package/.output/server/node_modules/@redis/client/dist/lib/commands/XACK.js +23 -0
  731. package/.output/server/node_modules/@redis/client/dist/lib/commands/XACKDEL.js +31 -0
  732. package/.output/server/node_modules/@redis/client/dist/lib/commands/XADD.js +71 -0
  733. package/.output/server/node_modules/@redis/client/dist/lib/commands/XADD_NOMKSTREAM.js +21 -0
  734. package/.output/server/node_modules/@redis/client/dist/lib/commands/XAUTOCLAIM.js +43 -0
  735. package/.output/server/node_modules/@redis/client/dist/lib/commands/XAUTOCLAIM_JUSTID.js +35 -0
  736. package/.output/server/node_modules/@redis/client/dist/lib/commands/XCFGSET.js +28 -0
  737. package/.output/server/node_modules/@redis/client/dist/lib/commands/XCLAIM.js +52 -0
  738. package/.output/server/node_modules/@redis/client/dist/lib/commands/XCLAIM_JUSTID.js +31 -0
  739. package/.output/server/node_modules/@redis/client/dist/lib/commands/XDEL.js +24 -0
  740. package/.output/server/node_modules/@redis/client/dist/lib/commands/XDELEX.js +29 -0
  741. package/.output/server/node_modules/@redis/client/dist/lib/commands/XGROUP_CREATE.js +29 -0
  742. package/.output/server/node_modules/@redis/client/dist/lib/commands/XGROUP_CREATECONSUMER.js +25 -0
  743. package/.output/server/node_modules/@redis/client/dist/lib/commands/XGROUP_DELCONSUMER.js +25 -0
  744. package/.output/server/node_modules/@redis/client/dist/lib/commands/XGROUP_DESTROY.js +24 -0
  745. package/.output/server/node_modules/@redis/client/dist/lib/commands/XGROUP_SETID.js +26 -0
  746. package/.output/server/node_modules/@redis/client/dist/lib/commands/XINFO_CONSUMERS.js +40 -0
  747. package/.output/server/node_modules/@redis/client/dist/lib/commands/XINFO_GROUPS.js +46 -0
  748. package/.output/server/node_modules/@redis/client/dist/lib/commands/XINFO_STREAM.js +72 -0
  749. package/.output/server/node_modules/@redis/client/dist/lib/commands/XLEN.js +23 -0
  750. package/.output/server/node_modules/@redis/client/dist/lib/commands/XPENDING.js +42 -0
  751. package/.output/server/node_modules/@redis/client/dist/lib/commands/XPENDING_RANGE.js +49 -0
  752. package/.output/server/node_modules/@redis/client/dist/lib/commands/XRANGE.js +50 -0
  753. package/.output/server/node_modules/@redis/client/dist/lib/commands/XREAD.js +57 -0
  754. package/.output/server/node_modules/@redis/client/dist/lib/commands/XREADGROUP.js +42 -0
  755. package/.output/server/node_modules/@redis/client/dist/lib/commands/XREVRANGE.js +49 -0
  756. package/.output/server/node_modules/@redis/client/dist/lib/commands/XSETID.js +18 -0
  757. package/.output/server/node_modules/@redis/client/dist/lib/commands/XTRIM.js +36 -0
  758. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZADD.js +73 -0
  759. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZADD_INCR.js +36 -0
  760. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZCARD.js +23 -0
  761. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZCOUNT.js +21 -0
  762. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZDIFF.js +16 -0
  763. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZDIFFSTORE.js +18 -0
  764. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZDIFF_WITHSCORES.js +21 -0
  765. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZINCRBY.js +19 -0
  766. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZINTER.js +26 -0
  767. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZINTERCARD.js +24 -0
  768. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZINTERSTORE.js +20 -0
  769. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZINTER_WITHSCORES.js +20 -0
  770. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZLEXCOUNT.js +21 -0
  771. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZMPOP.js +47 -0
  772. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZMSCORE.js +25 -0
  773. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZPOPMAX.js +34 -0
  774. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZPOPMAX_COUNT.js +19 -0
  775. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZPOPMIN.js +20 -0
  776. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZPOPMIN_COUNT.js +19 -0
  777. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANDMEMBER.js +16 -0
  778. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANDMEMBER_COUNT.js +21 -0
  779. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANDMEMBER_COUNT_WITHSCORES.js +22 -0
  780. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANGE.js +45 -0
  781. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANGEBYLEX.js +25 -0
  782. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANGEBYSCORE.js +25 -0
  783. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANGEBYSCORE_WITHSCORES.js +22 -0
  784. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANGESTORE.js +37 -0
  785. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANGE_WITHSCORES.js +22 -0
  786. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANK.js +19 -0
  787. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZRANK_WITHSCORE.js +38 -0
  788. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZREM.js +18 -0
  789. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZREMRANGEBYLEX.js +20 -0
  790. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZREMRANGEBYRANK.js +19 -0
  791. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZREMRANGEBYSCORE.js +20 -0
  792. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZREVRANK.js +19 -0
  793. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZSCAN.js +26 -0
  794. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZSCORE.js +20 -0
  795. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZUNION.js +21 -0
  796. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZUNIONSTORE.js +23 -0
  797. package/.output/server/node_modules/@redis/client/dist/lib/commands/ZUNION_WITHSCORES.js +21 -0
  798. package/.output/server/node_modules/@redis/client/dist/lib/commands/generic-transformers.js +492 -0
  799. package/.output/server/node_modules/@redis/client/dist/lib/commands/index.js +1161 -0
  800. package/.output/server/node_modules/@redis/client/dist/lib/errors.js +110 -0
  801. package/.output/server/node_modules/@redis/client/dist/lib/lua-script.js +16 -0
  802. package/.output/server/node_modules/@redis/client/dist/lib/multi-command.js +48 -0
  803. package/.output/server/node_modules/@redis/client/dist/lib/opentelemetry/client-registry.js +84 -0
  804. package/.output/server/node_modules/@redis/client/dist/lib/opentelemetry/index.js +81 -0
  805. package/.output/server/node_modules/@redis/client/dist/lib/opentelemetry/metrics.js +647 -0
  806. package/.output/server/node_modules/@redis/client/dist/lib/opentelemetry/types.js +120 -0
  807. package/.output/server/node_modules/@redis/client/dist/lib/opentelemetry/utils/error.util.js +199 -0
  808. package/.output/server/node_modules/@redis/client/dist/lib/opentelemetry/utils/index.js +32 -0
  809. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/commands/SENTINEL_MASTER.js +18 -0
  810. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/commands/SENTINEL_MONITOR.js +17 -0
  811. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/commands/SENTINEL_REPLICAS.js +25 -0
  812. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/commands/SENTINEL_SENTINELS.js +25 -0
  813. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/commands/SENTINEL_SET.js +18 -0
  814. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/commands/index.js +23 -0
  815. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/index.js +1229 -0
  816. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/module.js +10 -0
  817. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/multi-commands.js +115 -0
  818. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/pub-sub-proxy.js +150 -0
  819. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/utils.js +98 -0
  820. package/.output/server/node_modules/@redis/client/dist/lib/sentinel/wait-queue.js +24 -0
  821. package/.output/server/node_modules/@redis/client/dist/lib/single-entry-cache.js +38 -0
  822. package/.output/server/node_modules/@redis/client/dist/lib/utils/digest.js +34 -0
  823. package/.output/server/node_modules/@redis/client/dist/package.json +52 -0
  824. package/.output/server/node_modules/@redis/client/package.json +52 -0
  825. package/.output/server/node_modules/@redis/json/dist/lib/commands/ARRAPPEND.js +26 -0
  826. package/.output/server/node_modules/@redis/json/dist/lib/commands/ARRINDEX.js +31 -0
  827. package/.output/server/node_modules/@redis/json/dist/lib/commands/ARRINSERT.js +27 -0
  828. package/.output/server/node_modules/@redis/json/dist/lib/commands/ARRLEN.js +23 -0
  829. package/.output/server/node_modules/@redis/json/dist/lib/commands/ARRPOP.js +32 -0
  830. package/.output/server/node_modules/@redis/json/dist/lib/commands/ARRTRIM.js +22 -0
  831. package/.output/server/node_modules/@redis/json/dist/lib/commands/CLEAR.js +23 -0
  832. package/.output/server/node_modules/@redis/json/dist/lib/commands/DEBUG_MEMORY.js +23 -0
  833. package/.output/server/node_modules/@redis/json/dist/lib/commands/DEL.js +23 -0
  834. package/.output/server/node_modules/@redis/json/dist/lib/commands/FORGET.js +23 -0
  835. package/.output/server/node_modules/@redis/json/dist/lib/commands/GET.js +24 -0
  836. package/.output/server/node_modules/@redis/json/dist/lib/commands/MERGE.js +22 -0
  837. package/.output/server/node_modules/@redis/json/dist/lib/commands/MGET.js +23 -0
  838. package/.output/server/node_modules/@redis/json/dist/lib/commands/MSET.js +25 -0
  839. package/.output/server/node_modules/@redis/json/dist/lib/commands/NUMINCRBY.js +26 -0
  840. package/.output/server/node_modules/@redis/json/dist/lib/commands/NUMMULTBY.js +25 -0
  841. package/.output/server/node_modules/@redis/json/dist/lib/commands/OBJKEYS.js +23 -0
  842. package/.output/server/node_modules/@redis/json/dist/lib/commands/OBJLEN.js +23 -0
  843. package/.output/server/node_modules/@redis/json/dist/lib/commands/SET.js +35 -0
  844. package/.output/server/node_modules/@redis/json/dist/lib/commands/STRAPPEND.js +26 -0
  845. package/.output/server/node_modules/@redis/json/dist/lib/commands/STRLEN.js +23 -0
  846. package/.output/server/node_modules/@redis/json/dist/lib/commands/TOGGLE.js +20 -0
  847. package/.output/server/node_modules/@redis/json/dist/lib/commands/TYPE.js +29 -0
  848. package/.output/server/node_modules/@redis/json/dist/lib/commands/index.js +91 -0
  849. package/.output/server/node_modules/@redis/json/dist/lib/index.js +9 -0
  850. package/.output/server/node_modules/@redis/json/package.json +36 -0
  851. package/.output/server/node_modules/@redis/search/dist/lib/commands/AGGREGATE.js +212 -0
  852. package/.output/server/node_modules/@redis/search/dist/lib/commands/AGGREGATE_WITHCURSOR.js +40 -0
  853. package/.output/server/node_modules/@redis/search/dist/lib/commands/ALIASADD.js +17 -0
  854. package/.output/server/node_modules/@redis/search/dist/lib/commands/ALIASDEL.js +16 -0
  855. package/.output/server/node_modules/@redis/search/dist/lib/commands/ALIASUPDATE.js +17 -0
  856. package/.output/server/node_modules/@redis/search/dist/lib/commands/ALTER.js +19 -0
  857. package/.output/server/node_modules/@redis/search/dist/lib/commands/CONFIG_GET.js +23 -0
  858. package/.output/server/node_modules/@redis/search/dist/lib/commands/CONFIG_SET.js +17 -0
  859. package/.output/server/node_modules/@redis/search/dist/lib/commands/CREATE.js +277 -0
  860. package/.output/server/node_modules/@redis/search/dist/lib/commands/CURSOR_DEL.js +17 -0
  861. package/.output/server/node_modules/@redis/search/dist/lib/commands/CURSOR_READ.js +27 -0
  862. package/.output/server/node_modules/@redis/search/dist/lib/commands/DICTADD.js +18 -0
  863. package/.output/server/node_modules/@redis/search/dist/lib/commands/DICTDEL.js +18 -0
  864. package/.output/server/node_modules/@redis/search/dist/lib/commands/DICTDUMP.js +19 -0
  865. package/.output/server/node_modules/@redis/search/dist/lib/commands/DROPINDEX.js +24 -0
  866. package/.output/server/node_modules/@redis/search/dist/lib/commands/EXPLAIN.js +29 -0
  867. package/.output/server/node_modules/@redis/search/dist/lib/commands/EXPLAINCLI.js +26 -0
  868. package/.output/server/node_modules/@redis/search/dist/lib/commands/HYBRID.js +273 -0
  869. package/.output/server/node_modules/@redis/search/dist/lib/commands/INFO.js +106 -0
  870. package/.output/server/node_modules/@redis/search/dist/lib/commands/PROFILE_AGGREGATE.js +58 -0
  871. package/.output/server/node_modules/@redis/search/dist/lib/commands/PROFILE_SEARCH.js +58 -0
  872. package/.output/server/node_modules/@redis/search/dist/lib/commands/SEARCH.js +160 -0
  873. package/.output/server/node_modules/@redis/search/dist/lib/commands/SEARCH_NOCONTENT.js +34 -0
  874. package/.output/server/node_modules/@redis/search/dist/lib/commands/SPELLCHECK.js +56 -0
  875. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGADD.js +28 -0
  876. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGDEL.js +18 -0
  877. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGGET.js +27 -0
  878. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGGET_WITHPAYLOADS.js +36 -0
  879. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGGET_WITHSCORES.js +51 -0
  880. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGGET_WITHSCORES_WITHPAYLOADS.js +53 -0
  881. package/.output/server/node_modules/@redis/search/dist/lib/commands/SUGLEN.js +15 -0
  882. package/.output/server/node_modules/@redis/search/dist/lib/commands/SYNDUMP.js +27 -0
  883. package/.output/server/node_modules/@redis/search/dist/lib/commands/SYNUPDATE.js +24 -0
  884. package/.output/server/node_modules/@redis/search/dist/lib/commands/TAGVALS.js +20 -0
  885. package/.output/server/node_modules/@redis/search/dist/lib/commands/_LIST.js +18 -0
  886. package/.output/server/node_modules/@redis/search/dist/lib/commands/index.js +125 -0
  887. package/.output/server/node_modules/@redis/search/dist/lib/dialect/default.js +5 -0
  888. package/.output/server/node_modules/@redis/search/dist/lib/index.js +17 -0
  889. package/.output/server/node_modules/@redis/search/package.json +37 -0
  890. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/ADD.js +29 -0
  891. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/ALTER.js +23 -0
  892. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/CREATE.js +24 -0
  893. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/CREATERULE.js +48 -0
  894. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/DECRBY.js +40 -0
  895. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/DEL.js +20 -0
  896. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/DELETERULE.js +17 -0
  897. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/GET.js +33 -0
  898. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/INCRBY.js +40 -0
  899. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/INFO.js +58 -0
  900. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/INFO_DEBUG.js +46 -0
  901. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MADD.js +20 -0
  902. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MGET.js +57 -0
  903. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MGET_SELECTED_LABELS.js +23 -0
  904. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MGET_WITHLABELS.js +43 -0
  905. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MRANGE.js +44 -0
  906. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MRANGE_GROUPBY.js +96 -0
  907. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MRANGE_SELECTED_LABELS.js +51 -0
  908. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MRANGE_SELECTED_LABELS_GROUPBY.js +52 -0
  909. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MRANGE_WITHLABELS.js +59 -0
  910. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MRANGE_WITHLABELS_GROUPBY.js +52 -0
  911. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MREVRANGE.js +41 -0
  912. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MREVRANGE_GROUPBY.js +41 -0
  913. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MREVRANGE_SELECTED_LABELS.js +41 -0
  914. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MREVRANGE_SELECTED_LABELS_GROUPBY.js +42 -0
  915. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MREVRANGE_WITHLABELS.js +41 -0
  916. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/MREVRANGE_WITHLABELS_GROUPBY.js +41 -0
  917. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/QUERYINDEX.js +20 -0
  918. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/RANGE.js +66 -0
  919. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/REVRANGE.js +40 -0
  920. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/helpers.js +237 -0
  921. package/.output/server/node_modules/@redis/time-series/dist/lib/commands/index.js +113 -0
  922. package/.output/server/node_modules/@redis/time-series/dist/lib/index.js +17 -0
  923. package/.output/server/node_modules/@redis/time-series/package.json +36 -0
  924. package/.output/server/node_modules/cluster-key-slot/lib/index.js +166 -0
  925. package/.output/server/node_modules/cluster-key-slot/package.json +56 -0
  926. package/.output/server/node_modules/js-base64/base64.mjs +301 -0
  927. package/.output/server/node_modules/js-base64/package.json +43 -0
  928. package/.output/server/node_modules/promise-limit/index.js +88 -0
  929. package/.output/server/node_modules/promise-limit/package.json +39 -0
  930. package/.output/server/node_modules/redis/dist/index.js +77 -0
  931. package/.output/server/node_modules/redis/package.json +36 -0
  932. package/.output/server/node_modules/ws/lib/buffer-util.js +131 -0
  933. package/.output/server/node_modules/ws/lib/constants.js +19 -0
  934. package/.output/server/node_modules/ws/lib/event-target.js +292 -0
  935. package/.output/server/node_modules/ws/lib/extension.js +203 -0
  936. package/.output/server/node_modules/ws/lib/limiter.js +55 -0
  937. package/.output/server/node_modules/ws/lib/permessage-deflate.js +528 -0
  938. package/.output/server/node_modules/ws/lib/receiver.js +706 -0
  939. package/.output/server/node_modules/ws/lib/sender.js +602 -0
  940. package/.output/server/node_modules/ws/lib/stream.js +161 -0
  941. package/.output/server/node_modules/ws/lib/subprotocol.js +62 -0
  942. package/.output/server/node_modules/ws/lib/validation.js +152 -0
  943. package/.output/server/node_modules/ws/lib/websocket-server.js +554 -0
  944. package/.output/server/node_modules/ws/lib/websocket.js +1393 -0
  945. package/.output/server/node_modules/ws/package.json +69 -0
  946. package/.output/server/node_modules/ws/wrapper.mjs +8 -0
  947. package/.output/server/package.json +16 -1
  948. package/package.json +8 -2
  949. package/.output/public/_nuxt/8Ppmjv9D.js +0 -1
  950. package/.output/public/_nuxt/B1qjkRVO.js +0 -1
  951. package/.output/public/_nuxt/B3KEisfc.js +0 -1
  952. package/.output/public/_nuxt/BDXvbRNW.js +0 -1
  953. package/.output/public/_nuxt/BGRcizqy.js +0 -1
  954. package/.output/public/_nuxt/BOK5ZFNK.js +0 -1
  955. package/.output/public/_nuxt/BPY2ud8g.js +0 -1
  956. package/.output/public/_nuxt/BSONoRG4.js +0 -2
  957. package/.output/public/_nuxt/BT53m-su.js +0 -1
  958. package/.output/public/_nuxt/BTJSh8in.js +0 -2
  959. package/.output/public/_nuxt/BVpt8J3a.js +0 -1
  960. package/.output/public/_nuxt/Bdtn2mn5.js +0 -1
  961. package/.output/public/_nuxt/BqyO8OjC.js +0 -3867
  962. package/.output/public/_nuxt/Bs1og3h1.js +0 -10
  963. package/.output/public/_nuxt/Bs2DgR_z.js +0 -1
  964. package/.output/public/_nuxt/BxrwrGYE.js +0 -1
  965. package/.output/public/_nuxt/By0aUn7N.js +0 -1
  966. package/.output/public/_nuxt/C177_GoB.js +0 -1
  967. package/.output/public/_nuxt/C69a9jD3.js +0 -67
  968. package/.output/public/_nuxt/C8AyZ3_X.js +0 -2
  969. package/.output/public/_nuxt/C8KplD68.js +0 -1
  970. package/.output/public/_nuxt/CNF1h1lI.js +0 -1
  971. package/.output/public/_nuxt/CcK14gfI.js +0 -1
  972. package/.output/public/_nuxt/CjouDEjz.js +0 -1
  973. package/.output/public/_nuxt/Cp5lMcfd.js +0 -1
  974. package/.output/public/_nuxt/CpYiq1Wv.js +0 -1
  975. package/.output/public/_nuxt/CwmbX4-U.js +0 -1
  976. package/.output/public/_nuxt/D-YUpbah.js +0 -9
  977. package/.output/public/_nuxt/D9BYd7AV.js +0 -1
  978. package/.output/public/_nuxt/DCJ49Fnq.js +0 -1
  979. package/.output/public/_nuxt/DeBdxlx0.js +0 -1
  980. package/.output/public/_nuxt/Dkikh2OC.js +0 -22
  981. package/.output/public/_nuxt/DlOyXrKK.js +0 -1
  982. package/.output/public/_nuxt/DqA_edEU.js +0 -1
  983. package/.output/public/_nuxt/DqxL2Lpl.js +0 -1
  984. package/.output/public/_nuxt/Dt3rfvTn.js +0 -1
  985. package/.output/public/_nuxt/Dt5h0Tys.js +0 -1
  986. package/.output/public/_nuxt/DwrSZ8Vj.js +0 -1
  987. package/.output/public/_nuxt/DwyFZZT6.js +0 -1
  988. package/.output/public/_nuxt/EM8J-XL1.js +0 -7
  989. package/.output/public/_nuxt/ESKvsKwc.js +0 -1
  990. package/.output/public/_nuxt/V5LvXMJl.js +0 -1
  991. package/.output/public/_nuxt/builds/meta/455d4da4-6357-4478-8703-78a79ccbbc0f.json +0 -1
  992. package/.output/public/_nuxt/default.DC7ec2JI.css +0 -1
  993. package/.output/public/_nuxt/entry.qdzR7QFr.css +0 -1
  994. package/.output/public/_nuxt/fpuEgQ7C.js +0 -12
  995. package/.output/public/_nuxt/jU7fkvuR.js +0 -1
  996. package/.output/public/_nuxt/lHkFwi3L.js +0 -1
  997. package/.output/public/_nuxt/pQ8l8BR2.js +0 -1
  998. package/.output/public/_nuxt/xYXqL1eV.js +0 -1
  999. package/.output/public/_nuxt/xxfb8w7n.js +0 -1
@@ -1,7 +1,7 @@
1
- import { D as DatabaseClientType } from './db-connection.mjs';
1
+ import { D as DatabaseClientType, d as getDatabaseSource } from './db-connection.mjs';
2
2
  import { c as createError } from '../nitro/nitro.mjs';
3
- import { B as BaseDomainAdapter, c as createDomainAdapter } from './create-adapter.mjs';
4
3
  import { c as createDatabaseHttpError } from './error.mjs';
4
+ import { B as BaseDomainAdapter, c as createDomainAdapter } from './create-adapter.mjs';
5
5
 
6
6
  function getDatabaseLabel(dbType) {
7
7
  switch (dbType) {
@@ -29,6 +29,9 @@ class BaseUnsupportedInstanceInsightsAdapter {
29
29
  }
30
30
  });
31
31
  }
32
+ async getView() {
33
+ return this.unsupported("loading instance insights");
34
+ }
32
35
  async getDashboard() {
33
36
  return this.unsupported("loading dashboards");
34
37
  }
@@ -55,30 +58,1350 @@ class BaseUnsupportedInstanceInsightsAdapter {
55
58
  }
56
59
  }
57
60
 
61
+ const DEFAULT_CAPABILITIES = {
62
+ supportsSessionInspection: false,
63
+ supportsLockInspection: false,
64
+ supportsConfiguration: false,
65
+ supportsReplication: false,
66
+ supportsDataGuard: false,
67
+ supportsStorageHealth: false,
68
+ supportsIntegrityChecks: false,
69
+ supportsMemoryLimits: false,
70
+ supportsCancelQuery: false,
71
+ supportsTerminateConnection: false,
72
+ supportsReplicationActions: false
73
+ };
74
+ function createInsightsCapabilities(overrides = {}) {
75
+ return {
76
+ ...DEFAULT_CAPABILITIES,
77
+ ...overrides
78
+ };
79
+ }
80
+ function createActionCapability(action) {
81
+ return action;
82
+ }
83
+ function createUnavailableSection(id, title, subtitle, statusMessage, capturedAt) {
84
+ return {
85
+ id,
86
+ title,
87
+ subtitle,
88
+ status: "unavailable",
89
+ statusMessage,
90
+ capturedAt,
91
+ tables: []
92
+ };
93
+ }
94
+ function toTitleLabel(key) {
95
+ return key.replace(/[._-]+/g, " ").replace(/([a-z\d])([A-Z])/g, "$1 $2").split(/\s+/).filter(Boolean).map((part) => part.charAt(0).toUpperCase() + part.slice(1)).join(" ");
96
+ }
97
+ function createColumns(keys) {
98
+ return keys.map((key) => ({
99
+ key,
100
+ label: toTitleLabel(key)
101
+ }));
102
+ }
103
+ function normalizeTableValue(value) {
104
+ if (value === void 0 || value === null) {
105
+ return null;
106
+ }
107
+ if (value instanceof Date) {
108
+ return value.toISOString();
109
+ }
110
+ if (typeof value === "string") {
111
+ return value;
112
+ }
113
+ if (typeof value === "number") {
114
+ return Number.isFinite(value) ? value : null;
115
+ }
116
+ if (typeof value === "boolean") {
117
+ return value;
118
+ }
119
+ if (typeof value === "bigint") {
120
+ return value.toString();
121
+ }
122
+ if (Array.isArray(value)) {
123
+ return value.map((item) => item === null || item === void 0 ? "" : String(item)).filter(Boolean).join(", ");
124
+ }
125
+ return JSON.stringify(value);
126
+ }
127
+ function createTable(args) {
128
+ const rows = args.rows.map((row) => {
129
+ const normalized = {};
130
+ for (const [key, value] of Object.entries(row)) {
131
+ normalized[key] = normalizeTableValue(value);
132
+ }
133
+ return normalized;
134
+ });
135
+ const keys = args.columnKeys && args.columnKeys.length > 0 ? [...args.columnKeys] : Array.from(new Set(rows.flatMap((row) => Object.keys(row))));
136
+ return {
137
+ id: args.id,
138
+ title: args.title,
139
+ description: args.description,
140
+ emptyMessage: args.emptyMessage,
141
+ columns: createColumns(keys),
142
+ rows
143
+ };
144
+ }
145
+ function formatNumber(value, digits = 0) {
146
+ const numeric = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
147
+ if (!Number.isFinite(numeric)) {
148
+ return "-";
149
+ }
150
+ return new Intl.NumberFormat("en-US", {
151
+ maximumFractionDigits: digits,
152
+ minimumFractionDigits: digits
153
+ }).format(numeric);
154
+ }
155
+ function formatPercent(value, digits = 1) {
156
+ const numeric = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
157
+ if (!Number.isFinite(numeric)) {
158
+ return "-";
159
+ }
160
+ return `${formatNumber(numeric, digits)}%`;
161
+ }
162
+ function formatBytes(value) {
163
+ const numeric = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
164
+ if (!Number.isFinite(numeric)) {
165
+ return "-";
166
+ }
167
+ const units = ["B", "KB", "MB", "GB", "TB"];
168
+ let size = Math.max(numeric, 0);
169
+ let unitIndex = 0;
170
+ while (size >= 1024 && unitIndex < units.length - 1) {
171
+ size /= 1024;
172
+ unitIndex += 1;
173
+ }
174
+ const digits = unitIndex === 0 ? 0 : 2;
175
+ return `${formatNumber(size, digits)} ${units[unitIndex]}`;
176
+ }
177
+ function formatDateTime(value) {
178
+ if (!value) {
179
+ return "-";
180
+ }
181
+ const date = value instanceof Date ? value : new Date(String(value));
182
+ if (Number.isNaN(date.getTime())) {
183
+ return String(value);
184
+ }
185
+ return date.toLocaleString();
186
+ }
187
+ function formatDurationSeconds(value) {
188
+ const numeric = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
189
+ if (!Number.isFinite(numeric) || numeric < 0) {
190
+ return "-";
191
+ }
192
+ const totalSeconds = Math.round(numeric);
193
+ const hours = Math.floor(totalSeconds / 3600);
194
+ const minutes = Math.floor(totalSeconds % 3600 / 60);
195
+ const seconds = totalSeconds % 60;
196
+ if (hours > 0) {
197
+ return `${hours}h ${minutes}m ${seconds}s`;
198
+ }
199
+ if (minutes > 0) {
200
+ return `${minutes}m ${seconds}s`;
201
+ }
202
+ return `${seconds}s`;
203
+ }
204
+ function formatBoolean(value) {
205
+ if (typeof value === "boolean") {
206
+ return value ? "Yes" : "No";
207
+ }
208
+ if (value === null || value === void 0) {
209
+ return "-";
210
+ }
211
+ const normalized = String(value).trim().toLowerCase();
212
+ if (["1", "on", "true", "yes"].includes(normalized)) {
213
+ return "Yes";
214
+ }
215
+ if (["0", "off", "false", "no"].includes(normalized)) {
216
+ return "No";
217
+ }
218
+ return String(value);
219
+ }
220
+ function formatValue(value) {
221
+ if (value === null || value === void 0 || value === "") {
222
+ return "-";
223
+ }
224
+ if (typeof value === "boolean") {
225
+ return value ? "Yes" : "No";
226
+ }
227
+ if (typeof value === "number") {
228
+ const digits = Number.isInteger(value) ? 0 : 2;
229
+ return formatNumber(value, digits);
230
+ }
231
+ if (Array.isArray(value)) {
232
+ return value.map((item) => formatValue(item)).join(", ");
233
+ }
234
+ return String(value);
235
+ }
236
+
58
237
  var __defProp$3 = Object.defineProperty;
59
238
  var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
60
- var __publicField$3 = (obj, key, value) => __defNormalProp$3(obj, key + "" , value);
239
+ var __publicField$3 = (obj, key, value) => __defNormalProp$3(obj, typeof key !== "symbol" ? key + "" : key, value);
240
+ const IMPORTANT_VARIABLES = [
241
+ "max_connections",
242
+ "wait_timeout",
243
+ "interactive_timeout",
244
+ "innodb_buffer_pool_size",
245
+ "tmp_table_size",
246
+ "max_heap_table_size",
247
+ "sql_mode",
248
+ "read_only",
249
+ "super_read_only",
250
+ "performance_schema"
251
+ ];
61
252
  class MysqlInstanceInsightsAdapter extends BaseUnsupportedInstanceInsightsAdapter {
62
- constructor(dbType) {
253
+ constructor(params) {
63
254
  super();
64
255
  __publicField$3(this, "dbType");
65
- this.dbType = dbType;
256
+ __publicField$3(this, "adapter");
257
+ this.dbType = params.dbType;
258
+ this.adapter = params.adapter;
66
259
  }
67
260
  static async create(params, dbType = DatabaseClientType.MYSQL) {
68
- return new MysqlInstanceInsightsAdapter(dbType);
261
+ const adapter = await getDatabaseSource({
262
+ ...params,
263
+ type: dbType
264
+ });
265
+ return new MysqlInstanceInsightsAdapter({
266
+ dbType,
267
+ adapter
268
+ });
269
+ }
270
+ async getView() {
271
+ var _a;
272
+ const capturedAt = (/* @__PURE__ */ new Date()).toISOString();
273
+ const versionResult = await this.tryRawQuery(
274
+ "SELECT VERSION() AS version"
275
+ );
276
+ const version = versionResult.rows[0] ? String((_a = this.pick(versionResult.rows[0], "version")) != null ? _a : "") : null;
277
+ const [overview, sessions, configuration, replication] = await Promise.all([
278
+ this.buildOverviewSection(capturedAt, version),
279
+ this.buildSessionsSection(capturedAt),
280
+ this.buildConfigurationSection(capturedAt),
281
+ this.buildReplicationSection(capturedAt)
282
+ ]);
283
+ const sessionActions = [
284
+ createActionCapability({
285
+ id: "kill-query",
286
+ label: "Kill Query",
287
+ state: "supported",
288
+ description: `Cancel the active ${this.databaseLabel} query for a selected session.`
289
+ }),
290
+ createActionCapability({
291
+ id: "kill-connection",
292
+ label: "Kill Connection",
293
+ state: "supported",
294
+ description: `Terminate a selected ${this.databaseLabel} session.`
295
+ })
296
+ ];
297
+ const replicationActions = [
298
+ createActionCapability({
299
+ id: "replication-actions",
300
+ label: "Replication Actions",
301
+ state: "unsupported",
302
+ description: "Replication control actions are not exposed in phase 1."
303
+ })
304
+ ];
305
+ return {
306
+ dbType: this.dbType,
307
+ title: "Instance Insights",
308
+ databaseName: null,
309
+ version,
310
+ capturedAt,
311
+ capabilities: createInsightsCapabilities({
312
+ supportsSessionInspection: true,
313
+ supportsLockInspection: true,
314
+ supportsConfiguration: true,
315
+ supportsReplication: true,
316
+ supportsCancelQuery: true,
317
+ supportsTerminateConnection: true
318
+ }),
319
+ actions: [...sessionActions, ...replicationActions],
320
+ sections: [
321
+ overview,
322
+ {
323
+ ...sessions,
324
+ actions: sessionActions
325
+ },
326
+ configuration,
327
+ {
328
+ ...replication,
329
+ actions: replicationActions
330
+ }
331
+ ]
332
+ };
333
+ }
334
+ async cancelQuery(pid) {
335
+ this.ensurePositiveInteger(pid, "pid");
336
+ try {
337
+ await this.adapter.rawQuery(`KILL QUERY ${pid}`);
338
+ return {
339
+ success: true,
340
+ message: `Killed query for session ${pid}.`
341
+ };
342
+ } catch (error) {
343
+ throw createDatabaseHttpError(this.dbType, error);
344
+ }
345
+ }
346
+ async terminateConnection(pid) {
347
+ this.ensurePositiveInteger(pid, "pid");
348
+ try {
349
+ await this.adapter.rawQuery(`KILL CONNECTION ${pid}`);
350
+ return {
351
+ success: true,
352
+ message: `Terminated connection ${pid}.`
353
+ };
354
+ } catch (error) {
355
+ throw createDatabaseHttpError(this.dbType, error);
356
+ }
357
+ }
358
+ async buildOverviewSection(capturedAt, version) {
359
+ try {
360
+ const [statusRows, variableRows] = await Promise.all([
361
+ this.adapter.rawQuery("SHOW GLOBAL STATUS"),
362
+ this.adapter.rawQuery("SHOW GLOBAL VARIABLES")
363
+ ]);
364
+ const statusMap = this.toKeyValueMap(statusRows);
365
+ const variableMap = this.toKeyValueMap(variableRows);
366
+ const createdTmpTables = this.toNumber(statusMap.created_tmp_tables);
367
+ const createdTmpDiskTables = this.toNumber(
368
+ statusMap.created_tmp_disk_tables
369
+ );
370
+ const rollbackCount = this.toNumber(statusMap.com_rollback);
371
+ const commitCount = this.toNumber(statusMap.com_commit);
372
+ const bufferReadRequests = this.toNumber(
373
+ statusMap.innodb_buffer_pool_read_requests
374
+ );
375
+ const bufferReads = this.toNumber(statusMap.innodb_buffer_pool_reads);
376
+ const tempDiskRatio = createdTmpTables > 0 ? createdTmpDiskTables / createdTmpTables * 100 : 0;
377
+ const rollbackRatio = commitCount + rollbackCount > 0 ? rollbackCount / (commitCount + rollbackCount) * 100 : 0;
378
+ const bufferHitRatio = bufferReadRequests > 0 ? (bufferReadRequests - bufferReads) / bufferReadRequests * 100 : 100;
379
+ return {
380
+ id: "overview",
381
+ title: "Overview",
382
+ subtitle: `${this.databaseLabel} health and workload snapshot`,
383
+ status: "ready",
384
+ capturedAt,
385
+ cards: [
386
+ {
387
+ id: "version",
388
+ label: "Version",
389
+ value: version || "-"
390
+ },
391
+ {
392
+ id: "uptime",
393
+ label: "Uptime",
394
+ value: formatDurationSeconds(statusMap.uptime)
395
+ },
396
+ {
397
+ id: "threads-connected",
398
+ label: "Threads Connected",
399
+ value: formatNumber(statusMap.threads_connected),
400
+ helperText: `Running ${formatNumber(statusMap.threads_running)}`
401
+ },
402
+ {
403
+ id: "questions",
404
+ label: "Questions",
405
+ value: formatNumber(statusMap.questions),
406
+ helperText: `Connections ${formatNumber(statusMap.connections)}`
407
+ },
408
+ {
409
+ id: "slow-queries",
410
+ label: "Slow Queries",
411
+ value: formatNumber(statusMap.slow_queries),
412
+ helperText: `Aborted connects ${formatNumber(statusMap.aborted_connects)}`,
413
+ tone: this.toNumber(statusMap.slow_queries) > 0 ? "warning" : "default"
414
+ },
415
+ {
416
+ id: "temp-disk-ratio",
417
+ label: "Temp Disk Ratio",
418
+ value: formatPercent(tempDiskRatio, 2),
419
+ helperText: `Tmp tables ${formatNumber(createdTmpDiskTables)} on disk`,
420
+ tone: tempDiskRatio > 20 ? "warning" : "default"
421
+ },
422
+ {
423
+ id: "buffer-hit-ratio",
424
+ label: "InnoDB Buffer Hit Ratio",
425
+ value: formatPercent(bufferHitRatio, 2),
426
+ helperText: `Read requests ${formatNumber(bufferReadRequests)}`
427
+ },
428
+ {
429
+ id: "rollback-ratio",
430
+ label: "Rollback Ratio",
431
+ value: formatPercent(rollbackRatio, 2),
432
+ helperText: `Commits ${formatNumber(commitCount)} \xB7 Rollbacks ${formatNumber(rollbackCount)}`
433
+ }
434
+ ],
435
+ details: [
436
+ {
437
+ label: "Bytes Received",
438
+ value: formatBytes(statusMap.bytes_received)
439
+ },
440
+ {
441
+ label: "Bytes Sent",
442
+ value: formatBytes(statusMap.bytes_sent)
443
+ },
444
+ {
445
+ label: "Read Only",
446
+ value: formatBoolean(variableMap.read_only)
447
+ },
448
+ {
449
+ label: "Performance Schema",
450
+ value: formatBoolean(variableMap.performance_schema),
451
+ tone: formatBoolean(variableMap.performance_schema) === "No" ? "warning" : "default"
452
+ },
453
+ {
454
+ label: "Version Comment",
455
+ value: formatValue(variableMap.version_comment)
456
+ }
457
+ ]
458
+ };
459
+ } catch (error) {
460
+ return createUnavailableSection(
461
+ "overview",
462
+ "Overview",
463
+ `${this.databaseLabel} health and workload snapshot`,
464
+ this.getErrorMessage(error),
465
+ capturedAt
466
+ );
467
+ }
468
+ }
469
+ async buildSessionsSection(capturedAt) {
470
+ const processList = await this.tryRawQuery(
471
+ "SHOW FULL PROCESSLIST"
472
+ );
473
+ if (processList.error) {
474
+ return createUnavailableSection(
475
+ "sessions-locks",
476
+ "Sessions & Locks",
477
+ "Current sessions, waits, and lock pressure",
478
+ processList.error,
479
+ capturedAt
480
+ );
481
+ }
482
+ const notes = [];
483
+ const tables = [
484
+ createTable({
485
+ id: `${this.dbType}-sessions`,
486
+ title: "Sessions",
487
+ emptyMessage: "No sessions were returned.",
488
+ rows: processList.rows.map((row) => ({
489
+ session_id: this.pick(row, "Id", "id"),
490
+ user: this.pick(row, "User", "user"),
491
+ host: this.pick(row, "Host", "host"),
492
+ database: this.pick(row, "db", "DB"),
493
+ command: this.pick(row, "Command", "command"),
494
+ state: this.pick(row, "State", "state"),
495
+ duration_seconds: this.pick(row, "Time", "time"),
496
+ sql_text: this.pick(row, "Info", "info")
497
+ }))
498
+ })
499
+ ];
500
+ const lockWaits = await this.getLockWaitRows();
501
+ if (lockWaits.error) {
502
+ notes.push(lockWaits.error);
503
+ }
504
+ tables.push(
505
+ createTable({
506
+ id: `${this.dbType}-lock-waits`,
507
+ title: "Lock Waits",
508
+ emptyMessage: "No lock waits are currently visible.",
509
+ rows: lockWaits.rows
510
+ })
511
+ );
512
+ const metadataLocks = await this.getMetadataLockRows();
513
+ if (metadataLocks.error) {
514
+ notes.push(metadataLocks.error);
515
+ }
516
+ tables.push(
517
+ createTable({
518
+ id: `${this.dbType}-metadata-locks`,
519
+ title: "Metadata Locks",
520
+ emptyMessage: this.dbType === DatabaseClientType.MARIADB ? "Metadata lock info is unavailable unless the plugin is installed." : "Metadata lock details are unavailable unless instrumentation is enabled.",
521
+ rows: metadataLocks.rows
522
+ })
523
+ );
524
+ return {
525
+ id: "sessions-locks",
526
+ title: "Sessions & Locks",
527
+ subtitle: "Current sessions, waits, and lock pressure",
528
+ status: "ready",
529
+ capturedAt,
530
+ statusMessage: notes.length ? notes.join(" ") : null,
531
+ cards: [
532
+ {
533
+ id: "sessions-visible",
534
+ label: "Visible Sessions",
535
+ value: formatNumber(processList.rows.length)
536
+ },
537
+ {
538
+ id: "lock-waits",
539
+ label: "Lock Wait Rows",
540
+ value: formatNumber(lockWaits.rows.length)
541
+ },
542
+ {
543
+ id: "metadata-locks",
544
+ label: "Metadata Lock Rows",
545
+ value: formatNumber(metadataLocks.rows.length),
546
+ tone: metadataLocks.error ? "warning" : "default"
547
+ }
548
+ ],
549
+ tables
550
+ };
551
+ }
552
+ async buildConfigurationSection(capturedAt) {
553
+ const variablesResult = await this.tryRawQuery(
554
+ "SHOW GLOBAL VARIABLES"
555
+ );
556
+ if (variablesResult.error) {
557
+ return createUnavailableSection(
558
+ "configuration",
559
+ "Configuration",
560
+ `${this.databaseLabel} system variables`,
561
+ variablesResult.error,
562
+ capturedAt
563
+ );
564
+ }
565
+ const importantNames = new Set(IMPORTANT_VARIABLES);
566
+ const variableRows = variablesResult.rows.map((row) => {
567
+ const name = String(
568
+ this.pick(row, "Variable_name", "VARIABLE_NAME", "variable_name") || ""
569
+ );
570
+ const value = this.pick(row, "Value", "VALUE", "value");
571
+ return {
572
+ name,
573
+ category: importantNames.has(name) ? "Important" : "General",
574
+ value
575
+ };
576
+ }).sort((left, right) => {
577
+ if (left.category !== right.category) {
578
+ return left.category === "Important" ? -1 : 1;
579
+ }
580
+ return left.name.localeCompare(right.name);
581
+ });
582
+ const variableMap = this.toKeyValueMap(variablesResult.rows);
583
+ return {
584
+ id: "configuration",
585
+ title: "Configuration",
586
+ subtitle: `${this.databaseLabel} system variables`,
587
+ status: "ready",
588
+ capturedAt,
589
+ searchable: true,
590
+ searchPlaceholder: "Search variable name or value...",
591
+ cards: [
592
+ {
593
+ id: "variables-total",
594
+ label: "Variables",
595
+ value: formatNumber(variableRows.length)
596
+ },
597
+ {
598
+ id: "max-connections",
599
+ label: "Max Connections",
600
+ value: formatNumber(variableMap.max_connections)
601
+ },
602
+ {
603
+ id: "read-only",
604
+ label: "Read Only",
605
+ value: formatBoolean(variableMap.read_only)
606
+ },
607
+ {
608
+ id: "performance-schema",
609
+ label: "Performance Schema",
610
+ value: formatBoolean(variableMap.performance_schema),
611
+ tone: formatBoolean(variableMap.performance_schema) === "No" ? "warning" : "default"
612
+ }
613
+ ],
614
+ tables: [
615
+ createTable({
616
+ id: `${this.dbType}-configuration`,
617
+ title: "Variables",
618
+ emptyMessage: "No global variables were returned.",
619
+ rows: variableRows
620
+ })
621
+ ]
622
+ };
623
+ }
624
+ async buildReplicationSection(capturedAt) {
625
+ const replicaStatus = await this.getReplicaStatusRows();
626
+ const sourceReplicas = await this.getConnectedReplicasRows();
627
+ const notes = [];
628
+ if (replicaStatus.error) {
629
+ notes.push(replicaStatus.error);
630
+ }
631
+ if (sourceReplicas.error) {
632
+ notes.push(sourceReplicas.error);
633
+ }
634
+ const primaryReplicaRow = replicaStatus.rows[0] || {};
635
+ const lagValue = this.pick(
636
+ primaryReplicaRow,
637
+ "seconds_behind_source",
638
+ "seconds_behind_master",
639
+ "seconds_behind_primary"
640
+ );
641
+ const hasReplicationData = replicaStatus.rows.length > 0 || sourceReplicas.rows.length > 0;
642
+ if (!hasReplicationData && notes.length === 0) {
643
+ notes.push(
644
+ `${this.databaseLabel} replication is not configured or the current server is only acting as a primary/source.`
645
+ );
646
+ }
647
+ return {
648
+ id: "replication",
649
+ title: "Replication",
650
+ subtitle: `${this.databaseLabel} replica and source replication health`,
651
+ status: "ready",
652
+ capturedAt,
653
+ statusMessage: notes.length ? notes.join(" ") : null,
654
+ cards: [
655
+ {
656
+ id: "replica-status-rows",
657
+ label: "Replica Status Rows",
658
+ value: formatNumber(replicaStatus.rows.length)
659
+ },
660
+ {
661
+ id: "connected-replicas",
662
+ label: "Connected Replicas",
663
+ value: formatNumber(sourceReplicas.rows.length)
664
+ },
665
+ {
666
+ id: "replication-lag",
667
+ label: "Reported Lag",
668
+ value: formatValue(lagValue)
669
+ }
670
+ ],
671
+ tables: [
672
+ createTable({
673
+ id: `${this.dbType}-replica-status`,
674
+ title: "Replica Status",
675
+ emptyMessage: "No replica status rows were returned.",
676
+ rows: replicaStatus.rows
677
+ }),
678
+ createTable({
679
+ id: `${this.dbType}-connected-replicas`,
680
+ title: "Connected Replicas",
681
+ emptyMessage: "No connected replicas were returned.",
682
+ rows: sourceReplicas.rows
683
+ })
684
+ ]
685
+ };
686
+ }
687
+ async getLockWaitRows() {
688
+ if (this.dbType === DatabaseClientType.MARIADB) {
689
+ const result = await this.tryRawQuery(`
690
+ SELECT
691
+ trx_id AS transaction_id,
692
+ trx_state AS transaction_state,
693
+ trx_requested_lock_id AS waiting_lock_id,
694
+ trx_wait_started AS wait_started,
695
+ trx_mysql_thread_id AS thread_id,
696
+ trx_query AS query_text
697
+ FROM information_schema.innodb_trx
698
+ ORDER BY trx_wait_started DESC
699
+ LIMIT 200
700
+ `);
701
+ return {
702
+ rows: result.rows.map((row) => this.normalizeRowKeys(row)),
703
+ error: result.error
704
+ };
705
+ }
706
+ const sysResult = await this.tryRawQuery(`
707
+ SELECT
708
+ waiting_pid,
709
+ waiting_query,
710
+ blocking_pid,
711
+ blocking_query,
712
+ locked_table,
713
+ locked_index,
714
+ wait_age_secs
715
+ FROM sys.innodb_lock_waits
716
+ ORDER BY wait_age_secs DESC
717
+ LIMIT 200
718
+ `);
719
+ if (!sysResult.error) {
720
+ return {
721
+ rows: sysResult.rows.map((row) => this.normalizeRowKeys(row)),
722
+ error: null
723
+ };
724
+ }
725
+ const perfSchemaResult = await this.tryRawQuery(`
726
+ SELECT
727
+ requesting_engine_transaction_id AS waiting_transaction_id,
728
+ blocking_engine_transaction_id AS blocking_transaction_id,
729
+ requesting_thread_id AS waiting_thread_id,
730
+ blocking_thread_id AS blocking_thread_id
731
+ FROM performance_schema.data_lock_waits
732
+ LIMIT 200
733
+ `);
734
+ return {
735
+ rows: perfSchemaResult.rows.map((row) => this.normalizeRowKeys(row)),
736
+ error: perfSchemaResult.error
737
+ };
738
+ }
739
+ async getMetadataLockRows() {
740
+ if (this.dbType === DatabaseClientType.MARIADB) {
741
+ const result2 = await this.tryRawQuery(`
742
+ SELECT
743
+ thread_id,
744
+ lock_mode,
745
+ lock_type,
746
+ table_schema AS schema_name,
747
+ table_name
748
+ FROM information_schema.metadata_lock_info
749
+ LIMIT 200
750
+ `);
751
+ return {
752
+ rows: result2.rows.map((row) => this.normalizeRowKeys(row)),
753
+ error: result2.error ? "Metadata lock details are unavailable unless the MariaDB metadata lock plugin is installed." : null
754
+ };
755
+ }
756
+ const result = await this.tryRawQuery(`
757
+ SELECT
758
+ owner_thread_id AS thread_id,
759
+ lock_type,
760
+ lock_status,
761
+ object_schema AS schema_name,
762
+ object_name AS table_name
763
+ FROM performance_schema.metadata_locks
764
+ WHERE object_type = 'TABLE'
765
+ LIMIT 200
766
+ `);
767
+ return {
768
+ rows: result.rows.map((row) => this.normalizeRowKeys(row)),
769
+ error: result.error ? "Metadata lock details are unavailable unless performance_schema metadata instrumentation is enabled." : null
770
+ };
771
+ }
772
+ async getReplicaStatusRows() {
773
+ const queries = this.dbType === DatabaseClientType.MARIADB ? [
774
+ "SHOW ALL REPLICAS STATUS",
775
+ "SHOW REPLICA STATUS",
776
+ "SHOW SLAVE STATUS"
777
+ ] : ["SHOW REPLICA STATUS", "SHOW SLAVE STATUS"];
778
+ for (const query of queries) {
779
+ const result = await this.tryRawQuery(query);
780
+ if (!result.error) {
781
+ return {
782
+ rows: result.rows.map((row) => this.normalizeRowKeys(row)),
783
+ error: null
784
+ };
785
+ }
786
+ }
787
+ return {
788
+ rows: [],
789
+ error: `${this.databaseLabel} replication status is unavailable with the current privileges or server mode.`
790
+ };
791
+ }
792
+ async getConnectedReplicasRows() {
793
+ const queries = this.dbType === DatabaseClientType.MARIADB ? ["SHOW ALL REPLICAS STATUS"] : ["SHOW REPLICAS", "SHOW SLAVE HOSTS"];
794
+ for (const query of queries) {
795
+ const result = await this.tryRawQuery(query);
796
+ if (!result.error) {
797
+ return {
798
+ rows: result.rows.map((row) => this.normalizeRowKeys(row)),
799
+ error: null
800
+ };
801
+ }
802
+ }
803
+ return {
804
+ rows: [],
805
+ error: `${this.databaseLabel} source-side replica details are unavailable with the current privileges.`
806
+ };
807
+ }
808
+ async tryRawQuery(sql, bindings = []) {
809
+ try {
810
+ const rows = await this.adapter.rawQuery(sql, bindings);
811
+ return {
812
+ rows,
813
+ error: null
814
+ };
815
+ } catch (error) {
816
+ return {
817
+ rows: [],
818
+ error: this.getErrorMessage(error)
819
+ };
820
+ }
821
+ }
822
+ normalizeRowKeys(row) {
823
+ return Object.fromEntries(
824
+ Object.entries(row).map(([key, value]) => [this.toSnakeKey(key), value])
825
+ );
826
+ }
827
+ toKeyValueMap(rows) {
828
+ return rows.reduce((accumulator, row) => {
829
+ const key = this.pick(
830
+ row,
831
+ "Variable_name",
832
+ "VARIABLE_NAME",
833
+ "variable_name",
834
+ "name",
835
+ "NAME"
836
+ );
837
+ const value = this.pick(row, "Value", "VALUE", "value");
838
+ if (key !== null && key !== void 0) {
839
+ accumulator[String(key).toLowerCase()] = value;
840
+ }
841
+ return accumulator;
842
+ }, {});
843
+ }
844
+ pick(row, ...keys) {
845
+ for (const key of keys) {
846
+ if (key in row) {
847
+ return row[key];
848
+ }
849
+ }
850
+ return null;
851
+ }
852
+ toSnakeKey(value) {
853
+ return value.replace(/([a-z\d])([A-Z])/g, "$1_$2").replace(/[\s.-]+/g, "_").toLowerCase();
854
+ }
855
+ toNumber(value) {
856
+ const parsed = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
857
+ return Number.isFinite(parsed) ? parsed : 0;
858
+ }
859
+ ensurePositiveInteger(value, field) {
860
+ if (!Number.isInteger(value) || value <= 0) {
861
+ throw createError({
862
+ statusCode: 400,
863
+ statusMessage: `${field} must be a positive integer`
864
+ });
865
+ }
866
+ }
867
+ getErrorMessage(error) {
868
+ if (error instanceof Error && error.message) {
869
+ return error.message;
870
+ }
871
+ const candidate = error;
872
+ return String(
873
+ (candidate == null ? void 0 : candidate.message) || (candidate == null ? void 0 : candidate.statusMessage) || "Unknown database error"
874
+ );
875
+ }
876
+ get databaseLabel() {
877
+ return this.dbType === DatabaseClientType.MARIADB ? "MariaDB" : "MySQL";
69
878
  }
70
879
  }
71
880
 
72
881
  var __defProp$2 = Object.defineProperty;
73
882
  var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
74
- var __publicField$2 = (obj, key, value) => __defNormalProp$2(obj, key + "" , value);
883
+ var __publicField$2 = (obj, key, value) => __defNormalProp$2(obj, typeof key !== "symbol" ? key + "" : key, value);
75
884
  class OracleInstanceInsightsAdapter extends BaseUnsupportedInstanceInsightsAdapter {
76
- constructor() {
77
- super(...arguments);
885
+ constructor(adapter) {
886
+ super();
78
887
  __publicField$2(this, "dbType", DatabaseClientType.ORACLE);
888
+ __publicField$2(this, "adapter");
889
+ this.adapter = adapter;
79
890
  }
80
891
  static async create(params) {
81
- return new OracleInstanceInsightsAdapter();
892
+ const adapter = await getDatabaseSource({
893
+ ...params,
894
+ type: DatabaseClientType.ORACLE
895
+ });
896
+ return new OracleInstanceInsightsAdapter(adapter);
897
+ }
898
+ async getView() {
899
+ var _a, _b;
900
+ const capturedAt = (/* @__PURE__ */ new Date()).toISOString();
901
+ const [overview, sessions, memoryLimits, configuration, dataGuard] = await Promise.all([
902
+ this.buildOverviewSection(capturedAt),
903
+ this.buildSessionsSection(capturedAt),
904
+ this.buildMemoryLimitsSection(capturedAt),
905
+ this.buildConfigurationSection(capturedAt),
906
+ this.buildDataGuardSection(capturedAt)
907
+ ]);
908
+ const version = (_b = (_a = overview.cards) == null ? void 0 : _a.find((card) => card.id === "version")) == null ? void 0 : _b.value;
909
+ return {
910
+ dbType: this.dbType,
911
+ title: "Instance Insights",
912
+ databaseName: null,
913
+ version: version && version !== "-" ? version : null,
914
+ capturedAt,
915
+ capabilities: createInsightsCapabilities({
916
+ supportsSessionInspection: true,
917
+ supportsLockInspection: true,
918
+ supportsConfiguration: true,
919
+ supportsDataGuard: true,
920
+ supportsMemoryLimits: true
921
+ }),
922
+ actions: [
923
+ createActionCapability({
924
+ id: "kill-session",
925
+ label: "Kill Session",
926
+ state: "unsupported",
927
+ description: "Oracle session termination is reserved for a later phase."
928
+ })
929
+ ],
930
+ sections: [overview, sessions, memoryLimits, configuration, dataGuard]
931
+ };
932
+ }
933
+ async buildOverviewSection(capturedAt) {
934
+ const instanceResult = await this.tryRawQuery(`
935
+ SELECT
936
+ instance_name,
937
+ host_name,
938
+ version,
939
+ startup_time,
940
+ status AS instance_status,
941
+ active_state,
942
+ instance_role
943
+ FROM v$instance
944
+ `);
945
+ if (instanceResult.error || !instanceResult.rows[0]) {
946
+ return createUnavailableSection(
947
+ "overview",
948
+ "Overview",
949
+ "Oracle instance state and throughput metrics",
950
+ instanceResult.error || "No Oracle instance details were returned.",
951
+ capturedAt
952
+ );
953
+ }
954
+ const metricsResult = await this.tryRawQuery(`
955
+ SELECT metric_name, value, metric_unit
956
+ FROM v$sysmetric
957
+ WHERE metric_name IN (
958
+ 'Logical Reads Per Sec',
959
+ 'Physical Reads Per Sec',
960
+ 'Executions Per Sec',
961
+ 'Redo Generated Per Sec',
962
+ 'User Calls Per Sec'
963
+ )
964
+ `);
965
+ const instance = this.normalizeRowKeys(instanceResult.rows[0]);
966
+ const metrics = metricsResult.rows.map((row) => this.normalizeRowKeys(row));
967
+ const metricMap = metrics.reduce(
968
+ (accumulator, row) => {
969
+ const metricName = String(this.pick(row, "metric_name") || "");
970
+ accumulator[metricName] = this.pick(row, "value");
971
+ return accumulator;
972
+ },
973
+ {}
974
+ );
975
+ return {
976
+ id: "overview",
977
+ title: "Overview",
978
+ subtitle: "Oracle instance state and throughput metrics",
979
+ status: "ready",
980
+ capturedAt,
981
+ statusMessage: metricsResult.error,
982
+ cards: [
983
+ {
984
+ id: "instance-name",
985
+ label: "Instance",
986
+ value: formatValue(this.pick(instance, "instance_name"))
987
+ },
988
+ {
989
+ id: "status",
990
+ label: "Status",
991
+ value: formatValue(this.pick(instance, "instance_status"))
992
+ },
993
+ {
994
+ id: "active-state",
995
+ label: "Active State",
996
+ value: formatValue(this.pick(instance, "active_state"))
997
+ },
998
+ {
999
+ id: "role",
1000
+ label: "Instance Role",
1001
+ value: formatValue(this.pick(instance, "instance_role"))
1002
+ },
1003
+ {
1004
+ id: "version",
1005
+ label: "Version",
1006
+ value: formatValue(this.pick(instance, "version"))
1007
+ },
1008
+ {
1009
+ id: "logical-reads",
1010
+ label: "Logical Reads/Sec",
1011
+ value: formatNumber(metricMap["Logical Reads Per Sec"], 2)
1012
+ },
1013
+ {
1014
+ id: "physical-reads",
1015
+ label: "Physical Reads/Sec",
1016
+ value: formatNumber(metricMap["Physical Reads Per Sec"], 2)
1017
+ },
1018
+ {
1019
+ id: "executions",
1020
+ label: "Executions/Sec",
1021
+ value: formatNumber(metricMap["Executions Per Sec"], 2)
1022
+ }
1023
+ ],
1024
+ details: [
1025
+ {
1026
+ label: "Host Name",
1027
+ value: formatValue(this.pick(instance, "host_name"))
1028
+ },
1029
+ {
1030
+ label: "Startup Time",
1031
+ value: formatDateTime(this.pick(instance, "startup_time"))
1032
+ },
1033
+ {
1034
+ label: "Redo Generated/Sec",
1035
+ value: formatNumber(metricMap["Redo Generated Per Sec"], 2)
1036
+ },
1037
+ {
1038
+ label: "User Calls/Sec",
1039
+ value: formatNumber(metricMap["User Calls Per Sec"], 2)
1040
+ }
1041
+ ],
1042
+ tables: [
1043
+ createTable({
1044
+ id: "oracle-throughput-metrics",
1045
+ title: "Throughput Metrics",
1046
+ emptyMessage: "No throughput metrics were returned.",
1047
+ rows: metrics
1048
+ })
1049
+ ]
1050
+ };
1051
+ }
1052
+ async buildSessionsSection(capturedAt) {
1053
+ const sessionsResult = await this.tryRawQuery(`
1054
+ SELECT
1055
+ sid,
1056
+ serial# AS serial_number,
1057
+ username,
1058
+ machine,
1059
+ program,
1060
+ module,
1061
+ event,
1062
+ wait_class,
1063
+ status
1064
+ FROM v$session
1065
+ WHERE type = 'USER'
1066
+ AND ROWNUM <= 200
1067
+ `);
1068
+ if (sessionsResult.error) {
1069
+ return createUnavailableSection(
1070
+ "sessions-locks",
1071
+ "Sessions & Locks",
1072
+ "Oracle sessions, waits, and lock visibility",
1073
+ sessionsResult.error,
1074
+ capturedAt
1075
+ );
1076
+ }
1077
+ const locksResult = await this.tryRawQuery(`
1078
+ SELECT
1079
+ sid,
1080
+ type AS lock_type,
1081
+ lmode AS held_mode,
1082
+ request AS requested_mode,
1083
+ block AS blocking_flag,
1084
+ ctime AS lock_age_seconds
1085
+ FROM v$lock
1086
+ WHERE ROWNUM <= 200
1087
+ `);
1088
+ return {
1089
+ id: "sessions-locks",
1090
+ title: "Sessions & Locks",
1091
+ subtitle: "Oracle sessions, waits, and lock visibility",
1092
+ status: "ready",
1093
+ capturedAt,
1094
+ statusMessage: locksResult.error,
1095
+ cards: [
1096
+ {
1097
+ id: "session-count",
1098
+ label: "Visible Sessions",
1099
+ value: formatNumber(sessionsResult.rows.length)
1100
+ },
1101
+ {
1102
+ id: "lock-count",
1103
+ label: "Visible Locks",
1104
+ value: formatNumber(locksResult.rows.length)
1105
+ }
1106
+ ],
1107
+ tables: [
1108
+ createTable({
1109
+ id: "oracle-sessions",
1110
+ title: "Sessions",
1111
+ emptyMessage: "No Oracle sessions were returned.",
1112
+ rows: sessionsResult.rows.map((row) => this.normalizeRowKeys(row))
1113
+ }),
1114
+ createTable({
1115
+ id: "oracle-locks",
1116
+ title: "Locks",
1117
+ emptyMessage: "No Oracle locks were returned.",
1118
+ rows: locksResult.rows.map((row) => this.normalizeRowKeys(row))
1119
+ })
1120
+ ]
1121
+ };
1122
+ }
1123
+ async buildMemoryLimitsSection(capturedAt) {
1124
+ const [sgaResult, pgaResult, limitResult] = await Promise.all([
1125
+ this.tryRawQuery(`
1126
+ SELECT name, value AS bytes
1127
+ FROM v$sga
1128
+ `),
1129
+ this.tryRawQuery(`
1130
+ SELECT name, value, unit
1131
+ FROM v$pgastat
1132
+ WHERE name IN (
1133
+ 'aggregate PGA target parameter',
1134
+ 'total PGA allocated',
1135
+ 'maximum PGA allocated'
1136
+ )
1137
+ `),
1138
+ this.tryRawQuery(`
1139
+ SELECT
1140
+ resource_name,
1141
+ current_utilization,
1142
+ max_utilization,
1143
+ limit_value
1144
+ FROM v$resource_limit
1145
+ WHERE resource_name IN ('sessions', 'processes', 'transactions')
1146
+ `)
1147
+ ]);
1148
+ if (sgaResult.error && pgaResult.error && limitResult.error) {
1149
+ return createUnavailableSection(
1150
+ "memory-limits",
1151
+ "Memory & Limits",
1152
+ "SGA, PGA, and resource ceiling visibility",
1153
+ sgaResult.error || pgaResult.error || limitResult.error || "Oracle memory views are unavailable.",
1154
+ capturedAt
1155
+ );
1156
+ }
1157
+ const sgaRows = sgaResult.rows.map((row) => this.normalizeRowKeys(row));
1158
+ const pgaRows = pgaResult.rows.map((row) => this.normalizeRowKeys(row));
1159
+ const limitRows = limitResult.rows.map((row) => this.normalizeRowKeys(row));
1160
+ const totalSgaBytes = sgaRows.reduce(
1161
+ (sum, row) => sum + this.toNumber(this.pick(row, "bytes")),
1162
+ 0
1163
+ );
1164
+ const totalPgaAllocated = pgaRows.find(
1165
+ (row) => this.pick(row, "name") === "total PGA allocated"
1166
+ );
1167
+ const sessionsLimit = limitRows.find(
1168
+ (row) => this.pick(row, "resource_name") === "sessions"
1169
+ );
1170
+ const sessionsLimitValue = this.pick(sessionsLimit || {}, "limit_value");
1171
+ const sessionsUsage = this.toNumber(
1172
+ this.pick(sessionsLimit || {}, "current_utilization")
1173
+ );
1174
+ const sessionsUsagePercent = this.toNumber(sessionsLimitValue) > 0 ? sessionsUsage / this.toNumber(sessionsLimitValue) * 100 : 0;
1175
+ return {
1176
+ id: "memory-limits",
1177
+ title: "Memory & Limits",
1178
+ subtitle: "SGA, PGA, and resource ceiling visibility",
1179
+ status: "ready",
1180
+ capturedAt,
1181
+ statusMessage: [sgaResult.error, pgaResult.error, limitResult.error].filter(Boolean).join(" "),
1182
+ cards: [
1183
+ {
1184
+ id: "total-sga",
1185
+ label: "Total SGA",
1186
+ value: formatBytes(totalSgaBytes)
1187
+ },
1188
+ {
1189
+ id: "total-pga-allocated",
1190
+ label: "Total PGA Allocated",
1191
+ value: formatBytes(this.pick(totalPgaAllocated || {}, "value"))
1192
+ },
1193
+ {
1194
+ id: "sessions-usage",
1195
+ label: "Sessions Usage",
1196
+ value: formatPercent(sessionsUsagePercent, 2),
1197
+ helperText: `${formatNumber(sessionsUsage)} of ${formatValue(sessionsLimitValue)}`
1198
+ }
1199
+ ],
1200
+ tables: [
1201
+ createTable({
1202
+ id: "oracle-sga",
1203
+ title: "SGA Components",
1204
+ emptyMessage: "No SGA component data was returned.",
1205
+ rows: sgaRows.map((row) => ({
1206
+ name: this.pick(row, "name"),
1207
+ bytes: formatBytes(this.pick(row, "bytes"))
1208
+ }))
1209
+ }),
1210
+ createTable({
1211
+ id: "oracle-pga",
1212
+ title: "PGA Statistics",
1213
+ emptyMessage: "No PGA statistics were returned.",
1214
+ rows: pgaRows.map((row) => ({
1215
+ name: this.pick(row, "name"),
1216
+ value: formatValue(this.pick(row, "value")),
1217
+ unit: this.pick(row, "unit")
1218
+ }))
1219
+ }),
1220
+ createTable({
1221
+ id: "oracle-resource-limits",
1222
+ title: "Resource Limits",
1223
+ emptyMessage: "No resource limit rows were returned.",
1224
+ rows: limitRows
1225
+ })
1226
+ ]
1227
+ };
1228
+ }
1229
+ async buildConfigurationSection(capturedAt) {
1230
+ const configurationResult = await this.tryRawQuery(`
1231
+ SELECT
1232
+ name,
1233
+ display_value,
1234
+ isdefault,
1235
+ ismodified,
1236
+ issys_modifiable,
1237
+ isdeprecated,
1238
+ description
1239
+ FROM v$system_parameter
1240
+ WHERE ROWNUM <= 1000
1241
+ ORDER BY name
1242
+ `);
1243
+ if (configurationResult.error) {
1244
+ return createUnavailableSection(
1245
+ "configuration",
1246
+ "Configuration",
1247
+ "Oracle system parameter visibility",
1248
+ configurationResult.error,
1249
+ capturedAt
1250
+ );
1251
+ }
1252
+ const rows = configurationResult.rows.map(
1253
+ (row) => this.normalizeRowKeys(row)
1254
+ );
1255
+ return {
1256
+ id: "configuration",
1257
+ title: "Configuration",
1258
+ subtitle: "Oracle system parameter visibility",
1259
+ status: "ready",
1260
+ capturedAt,
1261
+ searchable: true,
1262
+ searchPlaceholder: "Search parameter name or description...",
1263
+ cards: [
1264
+ {
1265
+ id: "parameter-count",
1266
+ label: "Parameters",
1267
+ value: formatNumber(rows.length)
1268
+ }
1269
+ ],
1270
+ tables: [
1271
+ createTable({
1272
+ id: "oracle-configuration",
1273
+ title: "System Parameters",
1274
+ emptyMessage: "No system parameters were returned.",
1275
+ rows
1276
+ })
1277
+ ]
1278
+ };
1279
+ }
1280
+ async buildDataGuardSection(capturedAt) {
1281
+ const [statsResult, archiveResult] = await Promise.all([
1282
+ this.tryRawQuery(`
1283
+ SELECT name, value, unit
1284
+ FROM v$dataguard_stats
1285
+ `),
1286
+ this.tryRawQuery(`
1287
+ SELECT
1288
+ dest_id,
1289
+ status,
1290
+ destination,
1291
+ target,
1292
+ db_unique_name,
1293
+ archiver,
1294
+ process,
1295
+ error,
1296
+ recovery_mode,
1297
+ protection_mode
1298
+ FROM v$archive_dest_status
1299
+ WHERE status <> 'INACTIVE'
1300
+ AND ROWNUM <= 200
1301
+ `)
1302
+ ]);
1303
+ const statsRows = statsResult.rows.map((row) => this.normalizeRowKeys(row));
1304
+ const archiveRows = archiveResult.rows.map(
1305
+ (row) => this.normalizeRowKeys(row)
1306
+ );
1307
+ if (statsRows.length === 0 && archiveRows.length === 0 && !statsResult.error && !archiveResult.error) {
1308
+ return createUnavailableSection(
1309
+ "data-guard",
1310
+ "Data Guard",
1311
+ "Standby and archive destination health",
1312
+ "Data Guard metrics are empty. This database may not be running in a Data Guard topology.",
1313
+ capturedAt
1314
+ );
1315
+ }
1316
+ if (statsResult.error && archiveResult.error) {
1317
+ return createUnavailableSection(
1318
+ "data-guard",
1319
+ "Data Guard",
1320
+ "Standby and archive destination health",
1321
+ `${statsResult.error} ${archiveResult.error}`.trim(),
1322
+ capturedAt
1323
+ );
1324
+ }
1325
+ const applyLagRow = statsRows.find(
1326
+ (row) => this.pick(row, "name") === "apply lag"
1327
+ );
1328
+ return {
1329
+ id: "data-guard",
1330
+ title: "Data Guard",
1331
+ subtitle: "Standby and archive destination health",
1332
+ status: "ready",
1333
+ capturedAt,
1334
+ statusMessage: [statsResult.error, archiveResult.error].filter(Boolean).join(" "),
1335
+ cards: [
1336
+ {
1337
+ id: "apply-lag",
1338
+ label: "Apply Lag",
1339
+ value: formatValue(this.pick(applyLagRow || {}, "value"))
1340
+ },
1341
+ {
1342
+ id: "destinations",
1343
+ label: "Archive Destinations",
1344
+ value: formatNumber(archiveRows.length)
1345
+ }
1346
+ ],
1347
+ tables: [
1348
+ createTable({
1349
+ id: "oracle-dataguard-stats",
1350
+ title: "Data Guard Stats",
1351
+ emptyMessage: "No Data Guard stats were returned.",
1352
+ rows: statsRows
1353
+ }),
1354
+ createTable({
1355
+ id: "oracle-archive-destinations",
1356
+ title: "Archive Destination Status",
1357
+ emptyMessage: "No archive destination rows were returned.",
1358
+ rows: archiveRows
1359
+ })
1360
+ ]
1361
+ };
1362
+ }
1363
+ async tryRawQuery(sql, bindings = []) {
1364
+ try {
1365
+ const rows = await this.adapter.rawQuery(sql, bindings);
1366
+ return {
1367
+ rows,
1368
+ error: null
1369
+ };
1370
+ } catch (error) {
1371
+ return {
1372
+ rows: [],
1373
+ error: this.getErrorMessage(error)
1374
+ };
1375
+ }
1376
+ }
1377
+ normalizeRowKeys(row) {
1378
+ return Object.fromEntries(
1379
+ Object.entries(row).map(([key, value]) => [this.toSnakeKey(key), value])
1380
+ );
1381
+ }
1382
+ pick(row, ...keys) {
1383
+ for (const key of keys) {
1384
+ if (key in row) {
1385
+ return row[key];
1386
+ }
1387
+ }
1388
+ return null;
1389
+ }
1390
+ toSnakeKey(value) {
1391
+ return value.replace(/([a-z\d])([A-Z])/g, "$1_$2").replace(/[\s.-]+/g, "_").toLowerCase();
1392
+ }
1393
+ toNumber(value) {
1394
+ const parsed = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
1395
+ return Number.isFinite(parsed) ? parsed : 0;
1396
+ }
1397
+ getErrorMessage(error) {
1398
+ if (error instanceof Error && error.message) {
1399
+ return error.message;
1400
+ }
1401
+ const candidate = error;
1402
+ return String(
1403
+ (candidate == null ? void 0 : candidate.message) || (candidate == null ? void 0 : candidate.statusMessage) || "Unknown database error"
1404
+ );
82
1405
  }
83
1406
  }
84
1407
 
@@ -106,6 +1429,266 @@ class PostgresInstanceInsightsAdapter extends BaseDomainAdapter {
106
1429
  cacheKey
107
1430
  });
108
1431
  }
1432
+ async getView() {
1433
+ const [dashboard, state, configuration, replication] = await Promise.all([
1434
+ this.getDashboard(),
1435
+ this.getState(),
1436
+ this.getConfiguration(),
1437
+ this.getReplication()
1438
+ ]);
1439
+ const sessionActions = [
1440
+ createActionCapability({
1441
+ id: "cancel-query",
1442
+ label: "Cancel Query",
1443
+ state: "supported",
1444
+ description: "Cancel the selected backend query."
1445
+ }),
1446
+ createActionCapability({
1447
+ id: "terminate-connection",
1448
+ label: "Terminate Connection",
1449
+ state: "supported",
1450
+ description: "Terminate the selected backend connection."
1451
+ })
1452
+ ];
1453
+ const replicationActions = [
1454
+ createActionCapability({
1455
+ id: "drop-replication-slot",
1456
+ label: "Drop Replication Slot",
1457
+ state: "supported",
1458
+ description: "Drop stale replication slots from SQL context."
1459
+ }),
1460
+ createActionCapability({
1461
+ id: "toggle-slot-status",
1462
+ label: "Toggle Slot Status",
1463
+ state: "conditional",
1464
+ description: "Turning logical slots on is supported, while physical slot activation depends on replica clients."
1465
+ })
1466
+ ];
1467
+ return {
1468
+ dbType: this.dbType,
1469
+ title: "Instance Insights",
1470
+ databaseName: null,
1471
+ version: dashboard.version || null,
1472
+ capturedAt: dashboard.capturedAt,
1473
+ capabilities: createInsightsCapabilities({
1474
+ supportsSessionInspection: true,
1475
+ supportsLockInspection: true,
1476
+ supportsConfiguration: true,
1477
+ supportsReplication: true,
1478
+ supportsCancelQuery: true,
1479
+ supportsTerminateConnection: true,
1480
+ supportsReplicationActions: true
1481
+ }),
1482
+ actions: [...sessionActions, ...replicationActions],
1483
+ sections: [
1484
+ {
1485
+ id: "overview",
1486
+ title: "Overview",
1487
+ subtitle: "PostgreSQL activity and workload summary",
1488
+ status: "ready",
1489
+ capturedAt: dashboard.capturedAt,
1490
+ cards: [
1491
+ {
1492
+ id: "version",
1493
+ label: "Version",
1494
+ value: dashboard.version || "-"
1495
+ },
1496
+ {
1497
+ id: "sessions-total",
1498
+ label: "Total Sessions",
1499
+ value: formatNumber(dashboard.sessions.total),
1500
+ helperText: `Active ${formatNumber(dashboard.sessions.active)} \xB7 Idle ${formatNumber(dashboard.sessions.idle)}`,
1501
+ tone: dashboard.sessions.exceedsThreshold ? "warning" : "default"
1502
+ },
1503
+ {
1504
+ id: "tps",
1505
+ label: "TPS",
1506
+ value: formatNumber(dashboard.transactions.tps, 2),
1507
+ helperText: `Commits ${formatNumber(dashboard.transactions.commitsPerSec, 2)}/s \xB7 Rollbacks ${formatNumber(dashboard.transactions.rollbacksPerSec, 2)}/s`
1508
+ },
1509
+ {
1510
+ id: "buffer-hit-ratio",
1511
+ label: "Buffer Hit Ratio",
1512
+ value: formatPercent(dashboard.blockIO.bufferHitRatio, 2),
1513
+ helperText: `Reads ${formatNumber(dashboard.blockIO.readsPerSec, 2)}/s \xB7 Hits ${formatNumber(dashboard.blockIO.hitsPerSec, 2)}/s`
1514
+ }
1515
+ ],
1516
+ details: [
1517
+ {
1518
+ label: "Sampling Interval",
1519
+ value: `${formatNumber(dashboard.intervalSeconds)}s`
1520
+ },
1521
+ {
1522
+ label: "Connection Usage",
1523
+ value: `${formatPercent(dashboard.sessions.usagePercent, 2)} of max_connections`,
1524
+ tone: dashboard.sessions.exceedsThreshold ? "warning" : "default"
1525
+ },
1526
+ {
1527
+ label: "Total Tuples Returned",
1528
+ value: formatNumber(dashboard.tuples.totalReturned)
1529
+ },
1530
+ {
1531
+ label: "Total Tuples Fetched",
1532
+ value: formatNumber(dashboard.tuples.totalFetched)
1533
+ }
1534
+ ]
1535
+ },
1536
+ {
1537
+ id: "sessions-locks",
1538
+ title: "Sessions & Locks",
1539
+ subtitle: "Active sessions, locks, and prepared transactions",
1540
+ status: "ready",
1541
+ capturedAt: state.capturedAt,
1542
+ actions: sessionActions,
1543
+ tables: [
1544
+ createTable({
1545
+ id: "postgres-sessions",
1546
+ title: "Sessions",
1547
+ emptyMessage: "No active sessions were returned.",
1548
+ rows: state.sessions.map((row) => ({
1549
+ pid: row.pid,
1550
+ user: row.user,
1551
+ application: row.application,
1552
+ client: row.client,
1553
+ state: row.state,
1554
+ wait_event: row.waitEvent,
1555
+ blocking_pids: row.blockingPids.join(", "),
1556
+ backend_start: formatDateTime(row.backendStart),
1557
+ transaction_start: formatDateTime(row.transactionStart),
1558
+ query_start: formatDateTime(row.queryStart),
1559
+ duration: formatDurationSeconds(row.durationSeconds),
1560
+ sql: row.sql
1561
+ }))
1562
+ }),
1563
+ createTable({
1564
+ id: "postgres-locks",
1565
+ title: "Locks",
1566
+ emptyMessage: "No locks are currently visible.",
1567
+ rows: state.locks.map((row) => ({
1568
+ pid: row.pid,
1569
+ lock_type: row.lockType,
1570
+ target_relation: row.targetRelation,
1571
+ mode: row.mode,
1572
+ granted: row.granted,
1573
+ state: row.state,
1574
+ user: row.user,
1575
+ sql: row.sql
1576
+ }))
1577
+ }),
1578
+ createTable({
1579
+ id: "postgres-prepared-transactions",
1580
+ title: "Prepared Transactions",
1581
+ emptyMessage: "No prepared transactions were returned.",
1582
+ rows: state.preparedTransactions.map((row) => ({
1583
+ transaction: row.transaction,
1584
+ gid: row.gid,
1585
+ prepared: formatDateTime(row.prepared),
1586
+ owner: row.owner,
1587
+ database: row.database
1588
+ }))
1589
+ })
1590
+ ]
1591
+ },
1592
+ {
1593
+ id: "configuration",
1594
+ title: "Configuration",
1595
+ subtitle: "Searchable PostgreSQL settings visibility",
1596
+ status: "ready",
1597
+ capturedAt: configuration.capturedAt,
1598
+ searchable: true,
1599
+ searchPlaceholder: "Search setting name, category, or description...",
1600
+ cards: [
1601
+ {
1602
+ id: "configuration-total",
1603
+ label: "Settings Returned",
1604
+ value: formatNumber(configuration.rows.length),
1605
+ helperText: `Total catalog rows ${formatNumber(configuration.total)}`
1606
+ }
1607
+ ],
1608
+ tables: [
1609
+ createTable({
1610
+ id: "postgres-configuration",
1611
+ title: "Settings",
1612
+ emptyMessage: "No configuration settings were returned.",
1613
+ rows: configuration.rows.map((row) => ({
1614
+ name: row.name,
1615
+ category: row.category,
1616
+ value: row.value,
1617
+ unit: row.unit,
1618
+ pending_restart: row.pendingRestart,
1619
+ description: row.description
1620
+ }))
1621
+ })
1622
+ ]
1623
+ },
1624
+ {
1625
+ id: "replication",
1626
+ title: "Replication",
1627
+ subtitle: "Replication clients and slot pressure",
1628
+ status: "ready",
1629
+ capturedAt: replication.capturedAt,
1630
+ statusMessage: replication.staleSlotWarning,
1631
+ actions: replicationActions,
1632
+ cards: [
1633
+ {
1634
+ id: "replication-clients",
1635
+ label: "Replication Clients",
1636
+ value: formatNumber(replication.replicationStats.length)
1637
+ },
1638
+ {
1639
+ id: "replication-slots",
1640
+ label: "Replication Slots",
1641
+ value: formatNumber(replication.replicationSlots.length)
1642
+ },
1643
+ {
1644
+ id: "inactive-slots",
1645
+ label: "Inactive Slots",
1646
+ value: formatNumber(
1647
+ replication.replicationSlots.filter((slot) => !slot.active).length
1648
+ )
1649
+ }
1650
+ ],
1651
+ tables: [
1652
+ createTable({
1653
+ id: "postgres-replication-stats",
1654
+ title: "Replication Stats",
1655
+ emptyMessage: "No replication clients are currently visible.",
1656
+ rows: replication.replicationStats.map((row) => ({
1657
+ pid: row.pid,
1658
+ client_addr: row.clientAddr,
1659
+ application_name: row.applicationName,
1660
+ state: row.state,
1661
+ sync_state: row.syncState,
1662
+ reply_time: formatDateTime(row.replyTime),
1663
+ write_lag: row.writeLag,
1664
+ flush_lag: row.flushLag,
1665
+ replay_lag: row.replayLag,
1666
+ sent_lsn: row.sentLsn,
1667
+ write_lsn: row.writeLsn,
1668
+ flush_lsn: row.flushLsn,
1669
+ replay_lsn: row.replayLsn
1670
+ }))
1671
+ }),
1672
+ createTable({
1673
+ id: "postgres-replication-slots",
1674
+ title: "Replication Slots",
1675
+ emptyMessage: "No replication slots are currently visible.",
1676
+ rows: replication.replicationSlots.map((row) => ({
1677
+ slot_name: row.slotName,
1678
+ slot_type: row.slotType,
1679
+ active: row.active,
1680
+ active_pid: row.activePid,
1681
+ restart_lsn: row.restartLsn,
1682
+ confirmed_flush_lsn: row.confirmedFlushLsn,
1683
+ retained_wal: formatBytes(row.retainedBytes),
1684
+ temporary: row.temporary
1685
+ }))
1686
+ })
1687
+ ]
1688
+ }
1689
+ ]
1690
+ };
1691
+ }
109
1692
  async getDashboard() {
110
1693
  var _a, _b;
111
1694
  const [
@@ -714,14 +2297,454 @@ class PostgresInstanceInsightsAdapter extends BaseDomainAdapter {
714
2297
 
715
2298
  var __defProp = Object.defineProperty;
716
2299
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
717
- var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value);
2300
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
718
2301
  class SqliteInstanceInsightsAdapter extends BaseUnsupportedInstanceInsightsAdapter {
719
- constructor() {
720
- super(...arguments);
2302
+ constructor(adapter) {
2303
+ super();
721
2304
  __publicField(this, "dbType", DatabaseClientType.SQLITE3);
2305
+ __publicField(this, "adapter");
2306
+ this.adapter = adapter;
722
2307
  }
723
2308
  static async create(params) {
724
- return new SqliteInstanceInsightsAdapter();
2309
+ const adapter = await getDatabaseSource({
2310
+ ...params,
2311
+ type: DatabaseClientType.SQLITE3
2312
+ });
2313
+ return new SqliteInstanceInsightsAdapter(adapter);
2314
+ }
2315
+ async getView() {
2316
+ var _a;
2317
+ const capturedAt = (/* @__PURE__ */ new Date()).toISOString();
2318
+ const versionResult = await this.tryRawQuery(
2319
+ "SELECT sqlite_version() AS version"
2320
+ );
2321
+ const version = versionResult.rows[0] ? String((_a = this.pick(versionResult.rows[0], "version")) != null ? _a : "") : null;
2322
+ const [overview, storageHealth, configuration, integrity] = await Promise.all([
2323
+ this.buildOverviewSection(capturedAt),
2324
+ this.buildStorageHealthSection(capturedAt),
2325
+ this.buildConfigurationSection(capturedAt),
2326
+ this.buildIntegritySection(capturedAt)
2327
+ ]);
2328
+ return {
2329
+ dbType: this.dbType,
2330
+ title: "Instance Insights",
2331
+ databaseName: null,
2332
+ version,
2333
+ capturedAt,
2334
+ capabilities: createInsightsCapabilities({
2335
+ supportsConfiguration: true,
2336
+ supportsStorageHealth: true,
2337
+ supportsIntegrityChecks: true
2338
+ }),
2339
+ actions: [
2340
+ createActionCapability({
2341
+ id: "checkpoint",
2342
+ label: "Checkpoint",
2343
+ state: "unsupported",
2344
+ description: "Checkpoint controls are reserved for a later SQLite phase."
2345
+ }),
2346
+ createActionCapability({
2347
+ id: "vacuum-recommendation",
2348
+ label: "Vacuum Recommendation",
2349
+ state: "conditional",
2350
+ description: "Storage-health warnings highlight reclaimable space without running VACUUM automatically."
2351
+ })
2352
+ ],
2353
+ sections: [overview, storageHealth, configuration, integrity]
2354
+ };
2355
+ }
2356
+ async buildOverviewSection(capturedAt) {
2357
+ const [
2358
+ databaseList,
2359
+ pageCount,
2360
+ pageSize,
2361
+ journalMode,
2362
+ lockingMode,
2363
+ autoVacuum
2364
+ ] = await Promise.all([
2365
+ this.tryRawQuery("PRAGMA database_list"),
2366
+ this.tryRawQuery("PRAGMA page_count"),
2367
+ this.tryRawQuery("PRAGMA page_size"),
2368
+ this.tryRawQuery("PRAGMA journal_mode"),
2369
+ this.tryRawQuery("PRAGMA locking_mode"),
2370
+ this.tryRawQuery("PRAGMA auto_vacuum")
2371
+ ]);
2372
+ if (databaseList.error && pageCount.error && pageSize.error) {
2373
+ return createUnavailableSection(
2374
+ "overview",
2375
+ "Overview",
2376
+ "SQLite database/file shape and mode",
2377
+ databaseList.error || pageCount.error || pageSize.error || "SQLite overview data is unavailable.",
2378
+ capturedAt
2379
+ );
2380
+ }
2381
+ const pageCountValue = this.toNumber(this.firstRowValue(pageCount.rows[0]));
2382
+ const pageSizeValue = this.toNumber(this.firstRowValue(pageSize.rows[0]));
2383
+ const approximateFileSize = pageCountValue * pageSizeValue;
2384
+ const journalModeValue = this.firstRowValue(journalMode.rows[0]);
2385
+ const lockingModeValue = this.firstRowValue(lockingMode.rows[0]);
2386
+ const autoVacuumValue = this.firstRowValue(autoVacuum.rows[0]);
2387
+ const dbRows = databaseList.rows.map((row) => this.normalizeRowKeys(row));
2388
+ const mainDatabase = dbRows.find((row) => this.pick(row, "name") === "main");
2389
+ return {
2390
+ id: "overview",
2391
+ title: "Overview",
2392
+ subtitle: "SQLite database/file shape and mode",
2393
+ status: "ready",
2394
+ capturedAt,
2395
+ statusMessage: [
2396
+ databaseList.error,
2397
+ pageCount.error,
2398
+ pageSize.error,
2399
+ journalMode.error,
2400
+ lockingMode.error,
2401
+ autoVacuum.error
2402
+ ].filter(Boolean).join(" "),
2403
+ cards: [
2404
+ {
2405
+ id: "page-count",
2406
+ label: "Page Count",
2407
+ value: formatNumber(pageCountValue)
2408
+ },
2409
+ {
2410
+ id: "page-size",
2411
+ label: "Page Size",
2412
+ value: formatBytes(pageSizeValue)
2413
+ },
2414
+ {
2415
+ id: "approx-size",
2416
+ label: "Approx File Size",
2417
+ value: formatBytes(approximateFileSize)
2418
+ },
2419
+ {
2420
+ id: "journal-mode",
2421
+ label: "Journal Mode",
2422
+ value: formatValue(journalModeValue)
2423
+ },
2424
+ {
2425
+ id: "locking-mode",
2426
+ label: "Locking Mode",
2427
+ value: formatValue(lockingModeValue)
2428
+ },
2429
+ {
2430
+ id: "attached-databases",
2431
+ label: "Attached Databases",
2432
+ value: formatNumber(dbRows.length)
2433
+ }
2434
+ ],
2435
+ details: [
2436
+ {
2437
+ label: "Main File Path",
2438
+ value: formatValue(this.pick(mainDatabase || {}, "file"))
2439
+ },
2440
+ {
2441
+ label: "Auto Vacuum",
2442
+ value: this.describeAutoVacuum(autoVacuumValue)
2443
+ }
2444
+ ],
2445
+ tables: [
2446
+ createTable({
2447
+ id: "sqlite-database-list",
2448
+ title: "Attached Databases",
2449
+ emptyMessage: "No attached databases were returned.",
2450
+ rows: dbRows
2451
+ })
2452
+ ]
2453
+ };
2454
+ }
2455
+ async buildStorageHealthSection(capturedAt) {
2456
+ const [freelistCount, pageSize, tableList, walAutocheckpoint, journalMode] = await Promise.all([
2457
+ this.tryRawQuery("PRAGMA freelist_count"),
2458
+ this.tryRawQuery("PRAGMA page_size"),
2459
+ this.tryRawQuery("PRAGMA table_list"),
2460
+ this.tryRawQuery("PRAGMA wal_autocheckpoint"),
2461
+ this.tryRawQuery("PRAGMA journal_mode")
2462
+ ]);
2463
+ if (freelistCount.error && tableList.error) {
2464
+ return createUnavailableSection(
2465
+ "storage-health",
2466
+ "Storage Health",
2467
+ "Freelist, WAL, and table inventory visibility",
2468
+ freelistCount.error || tableList.error || "SQLite storage health data is unavailable.",
2469
+ capturedAt
2470
+ );
2471
+ }
2472
+ const freelistValue = this.toNumber(
2473
+ this.firstRowValue(freelistCount.rows[0])
2474
+ );
2475
+ const pageSizeValue = this.toNumber(this.firstRowValue(pageSize.rows[0]));
2476
+ const reclaimableBytes = freelistValue * pageSizeValue;
2477
+ const journalModeValue = String(
2478
+ this.firstRowValue(journalMode.rows[0]) || ""
2479
+ );
2480
+ const walEnabled = journalModeValue.toLowerCase() === "wal";
2481
+ const walAutocheckpointValue = this.firstRowValue(
2482
+ walAutocheckpoint.rows[0]
2483
+ );
2484
+ const tableRows = tableList.rows.map((row) => this.normalizeRowKeys(row));
2485
+ return {
2486
+ id: "storage-health",
2487
+ title: "Storage Health",
2488
+ subtitle: "Freelist, WAL, and table inventory visibility",
2489
+ status: "ready",
2490
+ capturedAt,
2491
+ statusMessage: [
2492
+ freelistCount.error,
2493
+ pageSize.error,
2494
+ tableList.error,
2495
+ walAutocheckpoint.error,
2496
+ journalMode.error
2497
+ ].filter(Boolean).join(" "),
2498
+ cards: [
2499
+ {
2500
+ id: "freelist-count",
2501
+ label: "Freelist Pages",
2502
+ value: formatNumber(freelistValue)
2503
+ },
2504
+ {
2505
+ id: "reclaimable-bytes",
2506
+ label: "Reclaimable Bytes",
2507
+ value: formatBytes(reclaimableBytes),
2508
+ tone: reclaimableBytes > 0 ? "warning" : "default"
2509
+ },
2510
+ {
2511
+ id: "wal-enabled",
2512
+ label: "WAL Enabled",
2513
+ value: walEnabled ? "Yes" : "No"
2514
+ },
2515
+ {
2516
+ id: "table-count",
2517
+ label: "Table Inventory",
2518
+ value: formatNumber(tableRows.length)
2519
+ }
2520
+ ],
2521
+ details: [
2522
+ {
2523
+ label: "WAL Auto-checkpoint",
2524
+ value: formatValue(walAutocheckpointValue)
2525
+ }
2526
+ ],
2527
+ tables: [
2528
+ createTable({
2529
+ id: "sqlite-table-list",
2530
+ title: "Table Inventory",
2531
+ emptyMessage: "No table inventory rows were returned.",
2532
+ rows: tableRows
2533
+ })
2534
+ ],
2535
+ checks: reclaimableBytes > 0 ? [
2536
+ {
2537
+ id: "reclaimable-space",
2538
+ label: "Reclaimable Space Detected",
2539
+ detail: `${formatBytes(reclaimableBytes)} can be reclaimed based on the current freelist count.`,
2540
+ status: "warn",
2541
+ tone: "warning"
2542
+ }
2543
+ ] : void 0
2544
+ };
2545
+ }
2546
+ async buildConfigurationSection(capturedAt) {
2547
+ var _a, _b;
2548
+ const pragmaEntries = await Promise.all([
2549
+ this.readPragmaEntry("foreign_keys", "PRAGMA foreign_keys"),
2550
+ this.readPragmaEntry("synchronous", "PRAGMA synchronous"),
2551
+ this.readPragmaEntry("mmap_size", "PRAGMA mmap_size"),
2552
+ this.readPragmaEntry("cache_size", "PRAGMA cache_size"),
2553
+ this.readPragmaEntry("query_only", "PRAGMA query_only"),
2554
+ this.readPragmaEntry("read_uncommitted", "PRAGMA read_uncommitted"),
2555
+ this.readPragmaEntry("trusted_schema", "PRAGMA trusted_schema")
2556
+ ]);
2557
+ const errors = pragmaEntries.map((entry) => entry.error).filter(Boolean);
2558
+ const rows = pragmaEntries.filter((entry) => entry.value !== null).map((entry) => ({
2559
+ name: entry.name,
2560
+ value: entry.value
2561
+ }));
2562
+ if (!rows.length && errors.length) {
2563
+ return createUnavailableSection(
2564
+ "configuration",
2565
+ "Configuration",
2566
+ "SQLite PRAGMA settings",
2567
+ errors.join(" "),
2568
+ capturedAt
2569
+ );
2570
+ }
2571
+ return {
2572
+ id: "configuration",
2573
+ title: "Configuration",
2574
+ subtitle: "SQLite PRAGMA settings",
2575
+ status: "ready",
2576
+ capturedAt,
2577
+ searchable: true,
2578
+ searchPlaceholder: "Search PRAGMA name or value...",
2579
+ statusMessage: errors.join(" "),
2580
+ cards: [
2581
+ {
2582
+ id: "foreign-keys",
2583
+ label: "Foreign Keys",
2584
+ value: formatBoolean(
2585
+ (_a = rows.find((row) => row.name === "foreign_keys")) == null ? void 0 : _a.value
2586
+ )
2587
+ },
2588
+ {
2589
+ id: "query-only",
2590
+ label: "Query Only",
2591
+ value: formatBoolean(
2592
+ (_b = rows.find((row) => row.name === "query_only")) == null ? void 0 : _b.value
2593
+ )
2594
+ }
2595
+ ],
2596
+ tables: [
2597
+ createTable({
2598
+ id: "sqlite-configuration",
2599
+ title: "PRAGMA Settings",
2600
+ emptyMessage: "No PRAGMA settings were returned.",
2601
+ rows
2602
+ })
2603
+ ]
2604
+ };
2605
+ }
2606
+ async buildIntegritySection(capturedAt) {
2607
+ const [quickCheck, integrityCheck] = await Promise.all([
2608
+ this.tryRawQuery("PRAGMA quick_check"),
2609
+ this.tryRawQuery("PRAGMA integrity_check")
2610
+ ]);
2611
+ if (quickCheck.error && integrityCheck.error) {
2612
+ return createUnavailableSection(
2613
+ "integrity",
2614
+ "Integrity",
2615
+ "Quick and full integrity checks",
2616
+ `${quickCheck.error} ${integrityCheck.error}`.trim(),
2617
+ capturedAt
2618
+ );
2619
+ }
2620
+ const quickCheckValue = this.firstRowValue(quickCheck.rows[0]);
2621
+ const integrityCheckValue = this.firstRowValue(integrityCheck.rows[0]);
2622
+ const quickOk = String(quickCheckValue || "").toLowerCase() === "ok";
2623
+ const integrityOk = String(integrityCheckValue || "").toLowerCase() === "ok";
2624
+ return {
2625
+ id: "integrity",
2626
+ title: "Integrity",
2627
+ subtitle: "Quick and full integrity checks",
2628
+ status: "ready",
2629
+ capturedAt,
2630
+ statusMessage: [quickCheck.error, integrityCheck.error].filter(Boolean).join(" "),
2631
+ cards: [
2632
+ {
2633
+ id: "quick-check",
2634
+ label: "Quick Check",
2635
+ value: formatValue(quickCheckValue),
2636
+ tone: quickOk ? "success" : "warning"
2637
+ },
2638
+ {
2639
+ id: "integrity-check",
2640
+ label: "Integrity Check",
2641
+ value: formatValue(integrityCheckValue),
2642
+ tone: integrityOk ? "success" : "warning"
2643
+ }
2644
+ ],
2645
+ checks: [
2646
+ {
2647
+ id: "quick-check-result",
2648
+ label: "Quick Check Result",
2649
+ detail: formatValue(quickCheckValue),
2650
+ status: quickOk ? "pass" : "warn",
2651
+ tone: quickOk ? "success" : "warning"
2652
+ },
2653
+ {
2654
+ id: "integrity-check-result",
2655
+ label: "Integrity Check Result",
2656
+ detail: formatValue(integrityCheckValue),
2657
+ status: integrityOk ? "pass" : "warn",
2658
+ tone: integrityOk ? "success" : "warning"
2659
+ }
2660
+ ],
2661
+ tables: [
2662
+ createTable({
2663
+ id: "sqlite-integrity-results",
2664
+ title: "Integrity Results",
2665
+ rows: [
2666
+ {
2667
+ check: "quick_check",
2668
+ result: quickCheckValue
2669
+ },
2670
+ {
2671
+ check: "integrity_check",
2672
+ result: integrityCheckValue
2673
+ }
2674
+ ]
2675
+ })
2676
+ ]
2677
+ };
2678
+ }
2679
+ async readPragmaEntry(name, sql) {
2680
+ const result = await this.tryRawQuery(sql);
2681
+ return {
2682
+ name,
2683
+ value: result.rows[0] ? this.firstRowValue(result.rows[0]) : null,
2684
+ error: result.error
2685
+ };
2686
+ }
2687
+ async tryRawQuery(sql, bindings = []) {
2688
+ try {
2689
+ const rows = await this.adapter.rawQuery(sql, bindings);
2690
+ return {
2691
+ rows,
2692
+ error: null
2693
+ };
2694
+ } catch (error) {
2695
+ return {
2696
+ rows: [],
2697
+ error: this.getErrorMessage(error)
2698
+ };
2699
+ }
2700
+ }
2701
+ normalizeRowKeys(row) {
2702
+ return Object.fromEntries(
2703
+ Object.entries(row).map(([key, value]) => [this.toSnakeKey(key), value])
2704
+ );
2705
+ }
2706
+ firstRowValue(row) {
2707
+ if (!row) {
2708
+ return null;
2709
+ }
2710
+ const firstKey = Object.keys(row)[0];
2711
+ return firstKey ? row[firstKey] : null;
2712
+ }
2713
+ pick(row, ...keys) {
2714
+ for (const key of keys) {
2715
+ if (key in row) {
2716
+ return row[key];
2717
+ }
2718
+ }
2719
+ return null;
2720
+ }
2721
+ toSnakeKey(value) {
2722
+ return value.replace(/([a-z\d])([A-Z])/g, "$1_$2").replace(/[\s.-]+/g, "_").toLowerCase();
2723
+ }
2724
+ toNumber(value) {
2725
+ const parsed = typeof value === "number" ? value : Number.parseFloat(String(value != null ? value : ""));
2726
+ return Number.isFinite(parsed) ? parsed : 0;
2727
+ }
2728
+ describeAutoVacuum(value) {
2729
+ switch (String(value != null ? value : "")) {
2730
+ case "0":
2731
+ return "None";
2732
+ case "1":
2733
+ return "Full";
2734
+ case "2":
2735
+ return "Incremental";
2736
+ default:
2737
+ return formatValue(value);
2738
+ }
2739
+ }
2740
+ getErrorMessage(error) {
2741
+ if (error instanceof Error && error.message) {
2742
+ return error.message;
2743
+ }
2744
+ const candidate = error;
2745
+ return String(
2746
+ (candidate == null ? void 0 : candidate.message) || (candidate == null ? void 0 : candidate.statusMessage) || "Unknown database error"
2747
+ );
725
2748
  }
726
2749
  }
727
2750