orcaq 1.1.6 → 1.1.7

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 (154) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{Lh0RfwhV.js → 1VXrIDkr.js} +1 -1
  3. package/.output/public/_nuxt/{ZVYA9HBl.js → 1fIGBJPQ.js} +1 -1
  4. package/.output/public/_nuxt/{BbawOYVr.js → 1kY3DHv7.js} +1 -1
  5. package/.output/public/_nuxt/{DDsaDrGo.js → 2TwRWQjG.js} +1 -1
  6. package/.output/public/_nuxt/{wrneOCBW.js → 39ZZCZCn.js} +1 -1
  7. package/.output/public/_nuxt/{BmEIj9l9.js → 3vYvhEat.js} +1 -1
  8. package/.output/public/_nuxt/{CEoM97rJ.js → 9bnMBg54.js} +1 -1
  9. package/.output/public/_nuxt/{ZNDxw-7x.js → B-u0WX5Q.js} +1 -1
  10. package/.output/public/_nuxt/{uDsvlLN0.js → B41tp0B8.js} +1 -1
  11. package/.output/public/_nuxt/{4LC09zKL.js → BCm7jnPt.js} +1 -1
  12. package/.output/public/_nuxt/{D29mzs5t.js → BFMjnjgH.js} +1 -1
  13. package/.output/public/_nuxt/{BEvswgw7.js → BGAd-CMD.js} +1 -1
  14. package/.output/public/_nuxt/{CP-7VdtS.js → BG_B-fo0.js} +1 -1
  15. package/.output/public/_nuxt/{Dd89Vyx8.js → BLEKzUmC.js} +1 -1
  16. package/.output/public/_nuxt/{DoNLWeqB.js → BN2mQ8OV.js} +1 -1
  17. package/.output/public/_nuxt/{DP6Az3fC.js → BNnChlxR.js} +1 -1
  18. package/.output/public/_nuxt/{BKAEFZqP.js → BNyWhB4W.js} +1 -1
  19. package/.output/public/_nuxt/{Bibtvqd8.js → BO-QgaRL.js} +1 -1
  20. package/.output/public/_nuxt/{DViCRsmA.js → BOVFFCPB.js} +1 -1
  21. package/.output/public/_nuxt/{BWg3wiuc.js → BRVpLa1E.js} +1 -1
  22. package/.output/public/_nuxt/{BJ8qQpib.js → BV4g1sVY.js} +1 -1
  23. package/.output/public/_nuxt/{_TExiQQQ.js → BXziI6Bt.js} +1 -1
  24. package/.output/public/_nuxt/{Df4wU3r0.js → BZQUF1W4.js} +1 -1
  25. package/.output/public/_nuxt/BZmEvFAZ.js +28 -0
  26. package/.output/public/_nuxt/B_G752SV.js +20 -0
  27. package/.output/public/_nuxt/{BusLuQ4Q.js → Ba_fqsW2.js} +1 -1
  28. package/.output/public/_nuxt/{DZFq5yqu.js → BbzZxPNQ.js} +1 -1
  29. package/.output/public/_nuxt/{BxZgIpkD.js → BhT0iBlH.js} +1 -1
  30. package/.output/public/_nuxt/{CoX1_N4R.js → Bhm1GL_M.js} +1 -1
  31. package/.output/public/_nuxt/{27ZsWTm2.js → BiSZmDoN.js} +1 -1
  32. package/.output/public/_nuxt/{DZVfXu09.js → BjK8Fug8.js} +1 -1
  33. package/.output/public/_nuxt/{G40WRC_L.js → BjpSpz5C.js} +1 -1
  34. package/.output/public/_nuxt/{Bok35x_B.js → BkqB6n0T.js} +1 -1
  35. package/.output/public/_nuxt/{6NXhlm49.js → BoPjUGS6.js} +1 -1
  36. package/.output/public/_nuxt/{B10QBDL6.js → BtwwqY0e.js} +1 -1
  37. package/.output/public/_nuxt/{FHx3Ejt6.js → BvD9dW-2.js} +1 -1
  38. package/.output/public/_nuxt/{Cvkyd5iW.js → Bw-4PosZ.js} +1 -1
  39. package/.output/public/_nuxt/C0l_59dE.js +1 -0
  40. package/.output/public/_nuxt/{__PEYcIB.js → C1TOiVRQ.js} +1 -1
  41. package/.output/public/_nuxt/{BoUZO_NV.js → C7A87LE3.js} +1 -1
  42. package/.output/public/_nuxt/{o60RgyTd.js → C80Zs8U0.js} +1 -1
  43. package/.output/public/_nuxt/{BnZ5qYkP.js → CB56S0b2.js} +9 -9
  44. package/.output/public/_nuxt/{CNPNWuzz.js → CBgbjsPd.js} +1 -1
  45. package/.output/public/_nuxt/{BCazdlgN.js → CCk2r9DD.js} +1 -1
  46. package/.output/public/_nuxt/{CCOlJAKS.js → CFZerEKx.js} +2 -2
  47. package/.output/public/_nuxt/{Bgj8Q52i.js → CG4v011f.js} +1 -1
  48. package/.output/public/_nuxt/{C4-wpUAK.js → CJnTtXrv.js} +1 -1
  49. package/.output/public/_nuxt/{DHyymmeR.js → CRDIOG8r.js} +1 -1
  50. package/.output/public/_nuxt/{XETGYn3c.js → CSPqdI4x.js} +1 -1
  51. package/.output/public/_nuxt/{DyDU0wFf.js → CTYqoFvv.js} +1 -1
  52. package/.output/public/_nuxt/{BbLqUOHs.js → CWGzL6OE.js} +1 -1
  53. package/.output/public/_nuxt/{CZLVBTJx.js → CYJEOEaU.js} +1 -1
  54. package/.output/public/_nuxt/{BTvOPFKG.js → CYu-xp_f.js} +1 -1
  55. package/.output/public/_nuxt/CZvnl0uO.js +52 -0
  56. package/.output/public/_nuxt/{DsPClaxV.js → CadjlDLt.js} +1 -1
  57. package/.output/public/_nuxt/{BJoSd_uV.js → CczQKYUP.js} +1 -1
  58. package/.output/public/_nuxt/{CHAVZu6b.js → CeXr_3vU.js} +2 -2
  59. package/.output/public/_nuxt/{BAasx5OS.js → Ch-A9iSC.js} +1 -1
  60. package/.output/public/_nuxt/{Bap1X7GD.js → Cj9tYr3P.js} +1 -1
  61. package/.output/public/_nuxt/Clm3Z8VL.js +1 -0
  62. package/.output/public/_nuxt/{F8eHh68O.js → CpkrwN3Q.js} +8 -8
  63. package/.output/public/_nuxt/{CO0Pa76w.js → CrwM3gOU.js} +1 -1
  64. package/.output/public/_nuxt/{DeVs4gEL.js → Culm7V2R.js} +1 -1
  65. package/.output/public/_nuxt/{Cl3VX8Um.js → CxZK-Vs6.js} +1 -1
  66. package/.output/public/_nuxt/{DLA-ioQ4.js → Cym7bWgs.js} +1 -1
  67. package/.output/public/_nuxt/CzBFxx8v.js +1 -0
  68. package/.output/public/_nuxt/{BCa-NKh0.js → D0oaRUYx.js} +1 -1
  69. package/.output/public/_nuxt/{DgGwe7jd.js → D7uoAo-G.js} +133 -133
  70. package/.output/public/_nuxt/{CvDZBOay.js → D8KJQqug.js} +1 -1
  71. package/.output/public/_nuxt/{DlymFQ5D.js → D8Z5BXgG.js} +3 -3
  72. package/.output/public/_nuxt/{DdbhVPqD.js → DDK9-_jm.js} +1 -1
  73. package/.output/public/_nuxt/{CnQob-tn.js → DDQU7vSH.js} +1 -1
  74. package/.output/public/_nuxt/{BuSZbOQO.js → DEjwIQuc.js} +1 -1
  75. package/.output/public/_nuxt/{yLATXAxG.js → DLIUYAz9.js} +1 -1
  76. package/.output/public/_nuxt/{DYPm3mWQ.js → DQdL5Jcl.js} +1 -1
  77. package/.output/public/_nuxt/{EZ0owjER.js → DRuCf0Sx.js} +1 -1
  78. package/.output/public/_nuxt/DSEkO8kW.js +1 -0
  79. package/.output/public/_nuxt/{DYqShb5v.js → DSOwr8Hs.js} +4 -4
  80. package/.output/public/_nuxt/{Cf6n9dsT.js → DStg2VwN.js} +1 -1
  81. package/.output/public/_nuxt/{Ci7hrFNN.js → DTlu-CJn.js} +1 -1
  82. package/.output/public/_nuxt/{CCK1so3F.js → DUvUg_V7.js} +1 -1
  83. package/.output/public/_nuxt/{CBjcd4cE.js → D_fdC3mJ.js} +1 -1
  84. package/.output/public/_nuxt/{BhzzQZRC.js → Da1F0IxL.js} +1 -1
  85. package/.output/public/_nuxt/{C6bwwZAc.js → DcXAnOS1.js} +1 -1
  86. package/.output/public/_nuxt/DdtQIDaq.js +1 -0
  87. package/.output/public/_nuxt/Dfz8k_Rn.js +1 -0
  88. package/.output/public/_nuxt/{Dpm6rnHk.js → DitYzGT4.js} +1 -1
  89. package/.output/public/_nuxt/{NMm6Vanu.js → Djh3G2Nf.js} +1 -1
  90. package/.output/public/_nuxt/DmWFeTaU.js +1 -0
  91. package/.output/public/_nuxt/{x85BV7y_.js → DtgJAz2h.js} +1 -1
  92. package/.output/public/_nuxt/{3jfBYqJb.js → DuKway_J.js} +1 -1
  93. package/.output/public/_nuxt/{7nPLTDFM.js → DxF9DsEl.js} +1 -1
  94. package/.output/public/_nuxt/{C9ZBCJdc.js → DyFXtlg0.js} +1 -1
  95. package/.output/public/_nuxt/DzN4YRfa.js +7 -0
  96. package/.output/public/_nuxt/{B_hWP06g.js → DzaPC1WB.js} +1 -1
  97. package/.output/public/_nuxt/{wH-P-_6A.js → DzjHXopz.js} +1 -1
  98. package/.output/public/_nuxt/{CE0zlNDo.js → LUfaevBS.js} +1 -1
  99. package/.output/public/_nuxt/{DRX1aIGD.js → RFRrMFyH.js} +1 -1
  100. package/.output/public/_nuxt/{CROH8wgk.js → RTN5rY4m.js} +1 -1
  101. package/.output/public/_nuxt/{Un5zjlKE.js → XVZ0obUR.js} +1 -1
  102. package/.output/public/_nuxt/{B5HZeat4.js → Z5g5B4NJ.js} +1 -1
  103. package/.output/public/_nuxt/_ltJfz1p.js +1 -0
  104. package/.output/public/_nuxt/builds/latest.json +1 -1
  105. package/.output/public/_nuxt/builds/meta/1cbed594-12e2-48e6-bea9-7a9159c3c1d3.json +1 -0
  106. package/.output/public/_nuxt/{DtOg0Asw.js → dkyHOJLf.js} +1 -1
  107. package/.output/public/_nuxt/entry.D1DMaixs.css +1 -0
  108. package/.output/public/_nuxt/{habs8oz6.js → gWmEw6BT.js} +1 -1
  109. package/.output/public/_nuxt/ixgiI20S.js +1 -0
  110. package/.output/public/_nuxt/{C6CFIGob.js → jJeqAxmP.js} +1 -1
  111. package/.output/public/_nuxt/{P_2SRa71.js → lisFd8W1.js} +2 -2
  112. package/.output/public/_nuxt/{CoQ_oOia.js → nrlEwpIH.js} +1 -1
  113. package/.output/public/_nuxt/{6wO6CbCo.js → uHyBIwWw.js} +1 -1
  114. package/.output/public/_nuxt/{dDqgUqt5.js → vGkKA7iH.js} +1 -1
  115. package/.output/public/_nuxt/{C445d10Z.js → z1xPtaLw.js} +1 -1
  116. package/.output/server/chunks/_/registry.mjs +116 -0
  117. package/.output/server/chunks/_/registry.mjs.map +1 -0
  118. package/.output/server/chunks/_/{native-backup.mjs → runtime.mjs} +325 -164
  119. package/.output/server/chunks/_/runtime.mjs.map +1 -0
  120. package/.output/server/chunks/_/{native-backup-jobs.mjs → service.mjs} +185 -248
  121. package/.output/server/chunks/_/service.mjs.map +1 -0
  122. package/.output/server/chunks/build/client.manifest.mjs +734 -723
  123. package/.output/server/chunks/build/client.manifest.mjs.map +1 -1
  124. package/.output/server/chunks/nitro/nitro.mjs +659 -652
  125. package/.output/server/chunks/routes/api/database-backup/capability.get.mjs +7 -2
  126. package/.output/server/chunks/routes/api/database-backup/capability.get.mjs.map +1 -1
  127. package/.output/server/chunks/routes/api/database-export/export-database.mjs +4 -3
  128. package/.output/server/chunks/routes/api/database-export/export-database.mjs.map +1 -1
  129. package/.output/server/chunks/routes/api/database-export/jobs/_jobId/download.get.mjs +1 -20
  130. package/.output/server/chunks/routes/api/database-export/jobs/_jobId/download.get.mjs.map +1 -1
  131. package/.output/server/chunks/routes/api/database-export/jobs/_jobId_.get.mjs +1 -20
  132. package/.output/server/chunks/routes/api/database-export/jobs/_jobId_.get.mjs.map +1 -1
  133. package/.output/server/chunks/routes/api/database-import/import-database.mjs +14 -3
  134. package/.output/server/chunks/routes/api/database-import/import-database.mjs.map +1 -1
  135. package/.output/server/chunks/routes/api/database-import/jobs/_jobId_.get.mjs +1 -20
  136. package/.output/server/chunks/routes/api/database-import/jobs/_jobId_.get.mjs.map +1 -1
  137. package/.output/server/package.json +1 -1
  138. package/package.json +1 -1
  139. package/.output/public/_nuxt/4OV_5qQE.js +0 -1
  140. package/.output/public/_nuxt/B3iNzG14.js +0 -1
  141. package/.output/public/_nuxt/Bf2bW_MY.js +0 -7
  142. package/.output/public/_nuxt/C7C1kq_N.js +0 -1
  143. package/.output/public/_nuxt/CN8b9qPP.js +0 -1
  144. package/.output/public/_nuxt/CUws2Uv7.js +0 -1
  145. package/.output/public/_nuxt/Cl5p4EQY.js +0 -1
  146. package/.output/public/_nuxt/D9MMtvTu.js +0 -52
  147. package/.output/public/_nuxt/DM8LJTsg.js +0 -1
  148. package/.output/public/_nuxt/ORit_vRp.js +0 -1
  149. package/.output/public/_nuxt/ZhP2FY6Y.js +0 -1
  150. package/.output/public/_nuxt/builds/meta/47c294b1-d6b3-4974-bd50-5046ae0a393e.json +0 -1
  151. package/.output/public/_nuxt/dSX5D8ur.js +0 -28
  152. package/.output/public/_nuxt/entry.CGwcggc4.css +0 -1
  153. package/.output/server/chunks/_/native-backup-jobs.mjs.map +0 -1
  154. package/.output/server/chunks/_/native-backup.mjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { d as defineEventHandler, g as getQuery, c as createError } from '../../../nitro/nitro.mjs';
2
2
  import { D as DatabaseClientType } from '../../../_/database-client-type.mjs';
3
- import { g as getNativeBackupRuntimeCapability } from '../../../_/native-backup.mjs';
3
+ import { g as getNativeBackupRuntimeCapability } from '../../../_/runtime.mjs';
4
4
  import 'node:net';
5
5
  import 'ssh2';
6
6
  import 'node:http';
@@ -18,6 +18,8 @@ import 'node:fs/promises';
18
18
  const capability_get = defineEventHandler(async (event) => {
19
19
  const rawType = getQuery(event).type;
20
20
  const typeValue = Array.isArray(rawType) ? rawType[0] : rawType;
21
+ const rawDiscoverAll = getQuery(event).discoverAll;
22
+ const discoverAllValue = Array.isArray(rawDiscoverAll) ? rawDiscoverAll[0] : rawDiscoverAll;
21
23
  if (typeof typeValue === "string" && !Object.values(DatabaseClientType).includes(typeValue)) {
22
24
  throw createError({
23
25
  statusCode: 400,
@@ -25,7 +27,10 @@ const capability_get = defineEventHandler(async (event) => {
25
27
  });
26
28
  }
27
29
  return getNativeBackupRuntimeCapability(
28
- typeValue || void 0
30
+ typeValue || void 0,
31
+ {
32
+ discoverAll: discoverAllValue === "true"
33
+ }
29
34
  );
30
35
  });
31
36
 
@@ -1 +1 @@
1
- {"version":3,"file":"capability.get.mjs","sources":["../../../../../../server/api/database-backup/capability.get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,uBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AACA,EAAA,MAAA,OAAA,GAAA,QAAA,CAAA,KAAA,CAAA,CAAA,IAAA;AACA,EAAA,MAAA,YAAA,KAAA,CAAA,OAAA,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA,CAAA,CAAA,GAAA,OAAA;AAEA,EACA,IAAA,OAAA,SAAA,KAAA,QAAA,IACA,CAAA,MAAA,CAAA,OAAA,kBAAA,CAAA,CAAA,QAAA,CAAA,SAAA,CACA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA,0BAAA,SAAA,CAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,OAAA,gCAAA;AAAA,IACA,SAAA,IAAA;AAAA,GACA;AACA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"capability.get.mjs","sources":["../../../../../../server/api/database-backup/capability.get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,uBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AACA,EAAA,MAAA,OAAA,GAAA,QAAA,CAAA,KAAA,CAAA,CAAA,IAAA;AACA,EAAA,MAAA,YAAA,KAAA,CAAA,OAAA,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA,CAAA,CAAA,GAAA,OAAA;AACA,EAAA,MAAA,cAAA,GAAA,QAAA,CAAA,KAAA,CAAA,CAAA,WAAA;AACA,EAAA,MAAA,mBAAA,KAAA,CAAA,OAAA,CAAA,cAAA,CACA,GAAA,cAAA,CAAA,CAAA,CACA,GAAA,cAAA;AAEA,EACA,IAAA,OAAA,SAAA,KAAA,QAAA,IACA,CAAA,MAAA,CAAA,OAAA,kBAAA,CAAA,CAAA,QAAA,CAAA,SAAA,CACA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA,0BAAA,SAAA,CAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,OAAA,gCAAA;AAAA,IACA,SAAA,IAAA,MAAA;AAAA,IACA;AAAA,MACA,aAAA,gBAAA,KAAA;AAAA;AACA,GACA;AACA,CAAA,CAAA;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { d as defineEventHandler, r as readBody, c as createError } from '../../../nitro/nitro.mjs';
2
2
  import { c as createDatabaseHttpError } from '../../../_/error.mjs';
3
- import { s as startNativeExportJob } from '../../../_/native-backup-jobs.mjs';
3
+ import { s as startNativeExportJob } from '../../../_/service.mjs';
4
4
  import 'node:net';
5
5
  import 'ssh2';
6
6
  import 'node:http';
@@ -15,10 +15,8 @@ import '@iconify/utils';
15
15
  import 'consola';
16
16
  import '../../../_/database-error.mjs';
17
17
  import '../../../_/database-client-type.mjs';
18
- import 'node:child_process';
19
18
  import 'node:fs/promises';
20
19
  import 'node:os';
21
- import '../../../_/native-backup.mjs';
22
20
  import '../../../_/tables.factory.mjs';
23
21
  import '../../../_/create-adapter.mjs';
24
22
  import '../../../_/db-connection.mjs';
@@ -32,6 +30,9 @@ import 'pg';
32
30
  import 'pg-copy-streams';
33
31
  import 'pg-query-stream';
34
32
  import '../../../_/type-alias.constants.mjs';
33
+ import 'node:child_process';
34
+ import '../../../_/runtime.mjs';
35
+ import '../../../_/registry.mjs';
35
36
 
36
37
  const exportDatabase = defineEventHandler(async (event) => {
37
38
  const body = await readBody(event);
@@ -1 +1 @@
1
- {"version":3,"file":"export-database.mjs","sources":["../../../../../../server/api/database-export/export-database.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,uBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AACA,EAAA,MAAA,IAAA,GAWA,MAAA,QAAA,CAAA,KAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,IAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,IAAA;AACA,IAAA,OAAA,MAAA,oBAAA;AAAA,MACA;AAAA,KACA;AAAA,WACA,KAAA,EAAA;AACA,IAAA,IAAA,KAAA,IAAA,OAAA,KAAA,KAAA,QAAA,IAAA,gBAAA,KAAA,EAAA;AACA,MAAA,MAAA,KAAA;AAAA;AAGA,IAAA,MAAA,uBAAA,CAAA,IAAA,CAAA,IAAA,EAAA,KAAA,CAAA;AAAA;AAEA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"export-database.mjs","sources":["../../../../../../server/api/database-export/export-database.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,uBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AACA,EAAA,MAAA,IAAA,GAWA,MAAA,QAAA,CAAA,KAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,IAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,IAAA;AACA,IAAA,OAAA,MAAA,oBAAA;AAAA,MACA;AAAA,KACA;AAAA,WACA,KAAA,EAAA;AACA,IAAA,IAAA,KAAA,IAAA,OAAA,KAAA,KAAA,QAAA,IAAA,gBAAA,KAAA,EAAA;AACA,MAAA,MAAA,KAAA;AAAA;AAGA,IAAA,MAAA,uBAAA,CAAA,IAAA,CAAA,IAAA,EAAA,KAAA,CAAA;AAAA;AAEA,CAAA,CAAA;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { d as defineEventHandler, a as getRouterParam, c as createError, s as setHeader, b as sendStream } from '../../../../../nitro/nitro.mjs';
2
2
  import { createReadStream } from 'node:fs';
3
3
  import { stat } from 'node:fs/promises';
4
- import { a as getNativeExportDownload } from '../../../../../_/native-backup-jobs.mjs';
4
+ import { a as getNativeExportDownload } from '../../../../../_/registry.mjs';
5
5
  import 'node:net';
6
6
  import 'ssh2';
7
7
  import 'node:http';
@@ -13,25 +13,6 @@ import 'node:crypto';
13
13
  import 'node:url';
14
14
  import '@iconify/utils';
15
15
  import 'consola';
16
- import 'node:child_process';
17
- import 'node:os';
18
- import '../../../../../_/database-client-type.mjs';
19
- import '../../../../../_/native-backup.mjs';
20
- import '../../../../../_/tables.factory.mjs';
21
- import '../../../../../_/create-adapter.mjs';
22
- import '../../../../../_/db-connection.mjs';
23
- import '../../../../../_/redis.client.mjs';
24
- import 'redis';
25
- import 'knex';
26
- import 'node:stream';
27
- import '@libsql/client/http';
28
- import 'oracledb';
29
- import 'pg';
30
- import 'pg-copy-streams';
31
- import 'pg-query-stream';
32
- import '../../../../../_/error.mjs';
33
- import '../../../../../_/database-error.mjs';
34
- import '../../../../../_/type-alias.constants.mjs';
35
16
 
36
17
  const download_get = defineEventHandler(async (event) => {
37
18
  const jobId = getRouterParam(event, "jobId");
@@ -1 +1 @@
1
- {"version":3,"file":"download.get.mjs","sources":["../../../../../../../../server/api/database-export/jobs/[jobId]/download.get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,qBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AACA,EAAA,MAAA,KAAA,GAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,MAAA,QAAA,GAAA,wBAAA,KAAA,CAAA;AACA,EAAA,MAAA,QAAA,GAAA,MAAA,IAAA,CAAA,QAAA,CAAA,QAAA,CAAA;AAEA,EAAA,SAAA,CAAA,KAAA,EAAA,cAAA,EAAA,QAAA,CAAA,WAAA,CAAA;AACA,EAAA,SAAA;AAAA,IACA,KAAA;AAAA,IACA,qBAAA;AAAA,IACA,CAAA,sBAAA,EAAA,SAAA,QAAA,CAAA,CAAA;AAAA,GACA;AACA,EAAA,SAAA,CAAA,KAAA,EAAA,gBAAA,EAAA,QAAA,CAAA,IAAA,CAAA;AAEA,EAAA,OAAA,UAAA,CAAA,KAAA,EAAA,gBAAA,CAAA,QAAA,CAAA,QAAA,CAAA,CAAA;AACA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"download.get.mjs","sources":["../../../../../../../../server/api/database-export/jobs/[jobId]/download.get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;AAIA,qBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AACA,EAAA,MAAA,KAAA,GAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,MAAA,QAAA,GAAA,wBAAA,KAAA,CAAA;AACA,EAAA,MAAA,QAAA,GAAA,MAAA,IAAA,CAAA,QAAA,CAAA,QAAA,CAAA;AAEA,EAAA,SAAA,CAAA,KAAA,EAAA,cAAA,EAAA,QAAA,CAAA,WAAA,CAAA;AACA,EAAA,SAAA;AAAA,IACA,KAAA;AAAA,IACA,qBAAA;AAAA,IACA,CAAA,sBAAA,EAAA,SAAA,QAAA,CAAA,CAAA;AAAA,GACA;AACA,EAAA,SAAA,CAAA,KAAA,EAAA,gBAAA,EAAA,QAAA,CAAA,IAAA,CAAA;AAEA,EAAA,OAAA,UAAA,CAAA,KAAA,EAAA,gBAAA,CAAA,QAAA,CAAA,QAAA,CAAA,CAAA;AACA,CAAA,CAAA;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { d as defineEventHandler, a as getRouterParam, c as createError } from '../../../../nitro/nitro.mjs';
2
- import { g as getNativeBackupJobSnapshot } from '../../../../_/native-backup-jobs.mjs';
2
+ import { g as getNativeBackupJobSnapshot } from '../../../../_/registry.mjs';
3
3
  import 'node:net';
4
4
  import 'ssh2';
5
5
  import 'node:http';
@@ -12,26 +12,7 @@ import 'node:crypto';
12
12
  import 'node:url';
13
13
  import '@iconify/utils';
14
14
  import 'consola';
15
- import 'node:child_process';
16
15
  import 'node:fs/promises';
17
- import 'node:os';
18
- import '../../../../_/database-client-type.mjs';
19
- import '../../../../_/native-backup.mjs';
20
- import '../../../../_/tables.factory.mjs';
21
- import '../../../../_/create-adapter.mjs';
22
- import '../../../../_/db-connection.mjs';
23
- import '../../../../_/redis.client.mjs';
24
- import 'redis';
25
- import 'knex';
26
- import 'node:stream';
27
- import '@libsql/client/http';
28
- import 'oracledb';
29
- import 'pg';
30
- import 'pg-copy-streams';
31
- import 'pg-query-stream';
32
- import '../../../../_/error.mjs';
33
- import '../../../../_/database-error.mjs';
34
- import '../../../../_/type-alias.constants.mjs';
35
16
 
36
17
  const _jobId__get = defineEventHandler((event) => {
37
18
  const jobId = getRouterParam(event, "jobId");
@@ -1 +1 @@
1
- {"version":3,"file":"_jobId_.get.mjs","sources":["../../../../../../../server/api/database-export/jobs/[jobId].get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,oBAAA,mBAAA,CAAA,KAAA,KAAA;AACA,EAAA,MAAA,KAAA,GAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,OAAA,2BAAA,KAAA,CAAA;AACA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"_jobId_.get.mjs","sources":["../../../../../../../server/api/database-export/jobs/[jobId].get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,oBAAA,mBAAA,CAAA,KAAA,KAAA;AACA,EAAA,MAAA,KAAA,GAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,OAAA,2BAAA,KAAA,CAAA;AACA,CAAA,CAAA;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { d as defineEventHandler, e as readMultipartFormData, c as createError } from '../../../nitro/nitro.mjs';
2
2
  import { c as createDatabaseHttpError } from '../../../_/error.mjs';
3
- import { b as startNativeImportJob } from '../../../_/native-backup-jobs.mjs';
3
+ import { a as startNativeImportJob } from '../../../_/service.mjs';
4
4
  import 'node:net';
5
5
  import 'ssh2';
6
6
  import 'node:http';
@@ -15,10 +15,8 @@ import '@iconify/utils';
15
15
  import 'consola';
16
16
  import '../../../_/database-error.mjs';
17
17
  import '../../../_/database-client-type.mjs';
18
- import 'node:child_process';
19
18
  import 'node:fs/promises';
20
19
  import 'node:os';
21
- import '../../../_/native-backup.mjs';
22
20
  import '../../../_/tables.factory.mjs';
23
21
  import '../../../_/create-adapter.mjs';
24
22
  import '../../../_/db-connection.mjs';
@@ -32,6 +30,9 @@ import 'pg';
32
30
  import 'pg-copy-streams';
33
31
  import 'pg-query-stream';
34
32
  import '../../../_/type-alias.constants.mjs';
33
+ import 'node:child_process';
34
+ import '../../../_/runtime.mjs';
35
+ import '../../../_/registry.mjs';
35
36
 
36
37
  const importDatabase = defineEventHandler(async (event) => {
37
38
  var _a;
@@ -52,6 +53,7 @@ const importDatabase = defineEventHandler(async (event) => {
52
53
  let filePath = "";
53
54
  let type;
54
55
  let options = {};
56
+ let runtime;
55
57
  let fileData = null;
56
58
  let ssl;
57
59
  let ssh;
@@ -80,6 +82,14 @@ const importDatabase = defineEventHandler(async (event) => {
80
82
  } catch {
81
83
  options = {};
82
84
  }
85
+ } else if (field.name === "runtime") {
86
+ try {
87
+ runtime = JSON.parse(
88
+ field.data.toString()
89
+ );
90
+ } catch {
91
+ runtime = void 0;
92
+ }
83
93
  } else if (field.name === "ssl") {
84
94
  try {
85
95
  ssl = JSON.parse(field.data.toString());
@@ -127,6 +137,7 @@ const importDatabase = defineEventHandler(async (event) => {
127
137
  filePath,
128
138
  type,
129
139
  options,
140
+ runtime,
130
141
  ssl,
131
142
  ssh,
132
143
  fileData,
@@ -1 +1 @@
1
- {"version":3,"file":"import-database.mjs","sources":["../../../../../../server/api/database-import/import-database.ts"],"sourcesContent":null,"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import-database.mjs","sources":["../../../../../../server/api/database-import/import-database.ts"],"sourcesContent":null,"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { d as defineEventHandler, a as getRouterParam, c as createError } from '../../../../nitro/nitro.mjs';
2
- import { g as getNativeBackupJobSnapshot } from '../../../../_/native-backup-jobs.mjs';
2
+ import { g as getNativeBackupJobSnapshot } from '../../../../_/registry.mjs';
3
3
  import 'node:net';
4
4
  import 'ssh2';
5
5
  import 'node:http';
@@ -12,26 +12,7 @@ import 'node:crypto';
12
12
  import 'node:url';
13
13
  import '@iconify/utils';
14
14
  import 'consola';
15
- import 'node:child_process';
16
15
  import 'node:fs/promises';
17
- import 'node:os';
18
- import '../../../../_/database-client-type.mjs';
19
- import '../../../../_/native-backup.mjs';
20
- import '../../../../_/tables.factory.mjs';
21
- import '../../../../_/create-adapter.mjs';
22
- import '../../../../_/db-connection.mjs';
23
- import '../../../../_/redis.client.mjs';
24
- import 'redis';
25
- import 'knex';
26
- import 'node:stream';
27
- import '@libsql/client/http';
28
- import 'oracledb';
29
- import 'pg';
30
- import 'pg-copy-streams';
31
- import 'pg-query-stream';
32
- import '../../../../_/error.mjs';
33
- import '../../../../_/database-error.mjs';
34
- import '../../../../_/type-alias.constants.mjs';
35
16
 
36
17
  const _jobId__get = defineEventHandler((event) => {
37
18
  const jobId = getRouterParam(event, "jobId");
@@ -1 +1 @@
1
- {"version":3,"file":"_jobId_.get.mjs","sources":["../../../../../../../server/api/database-import/jobs/[jobId].get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,oBAAA,mBAAA,CAAA,KAAA,KAAA;AACA,EAAA,MAAA,KAAA,GAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,OAAA,2BAAA,KAAA,CAAA;AACA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"_jobId_.get.mjs","sources":["../../../../../../../server/api/database-import/jobs/[jobId].get.ts"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,oBAAA,mBAAA,CAAA,KAAA,KAAA;AACA,EAAA,MAAA,KAAA,GAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAEA,EAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,WAAA,CAAA;AAAA,MACA,UAAA,EAAA,GAAA;AAAA,MACA,aAAA,EAAA;AAAA,KACA,CAAA;AAAA;AAGA,EAAA,OAAA,2BAAA,KAAA,CAAA;AACA,CAAA,CAAA;;;;"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orcaq-prod",
3
- "version": "1.1.6",
3
+ "version": "1.1.7",
4
4
  "type": "module",
5
5
  "private": true,
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orcaq",
3
- "version": "1.1.6",
3
+ "version": "1.1.7",
4
4
  "description": "The open source | Next Generation database editor - run locally via npx",
5
5
  "author": "Cinny",
6
6
  "license": "MIT",
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./DRX1aIGD.js";import{_ as i}from"./DYqShb5v.js";import"./CBjcd4cE.js";import"./BbLqUOHs.js";import"./CROH8wgk.js";import"./3jfBYqJb.js";import"./DgGwe7jd.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
@@ -1 +0,0 @@
1
- import{r as u,K as s,G as h}from"./DgGwe7jd.js";function B(){const i=u(!1),d=u(0),c=u(null);return{isDownloading:i,downloadedBytes:d,error:c,downloadStream:async f=>{const{url:w,method:y="POST",body:m,filename:a,contentType:v}=f;i.value=!0,d.value=0,c.value=null;const l=s.loading(`Exporting ${a}...`,{description:"Starting download..."});try{const e=await fetch(w,{method:y,headers:{"Content-Type":"application/json"},body:m?JSON.stringify(m):void 0});if(!e.ok){let n="Export failed";try{n=(await e.json()).message||n}catch{}throw new Error(n)}if(!e.body)throw new Error("Response body is not available for streaming");const o=e.body.getReader(),b=[];let t=0;for(;;){const{done:n,value:p}=await o.read();if(n)break;b.push(p),t+=p.length,d.value=t;const R=h(t);s.loading(`Exporting ${a}...`,{id:l,description:`Downloaded ${R}`,position:"bottom-right"})}const E=new Blob(b,{type:v||e.headers.get("Content-Type")||"application/octet-stream"}),g=URL.createObjectURL(E),r=document.createElement("a");r.href=g,r.download=a,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(g);const x=h(t);return s.success(`Exported ${a}`,{id:l,description:`${x} downloaded`,position:"bottom-right"}),{success:!0,size:t}}catch(e){const o=e;return c.value=o,s.error("Export failed",{id:l,description:o.message,position:"bottom-right"}),{success:!1,error:o}}finally{i.value=!1}}}}export{B as u};
@@ -1,7 +0,0 @@
1
- import{_ as Xe}from"./DViCRsmA.js";import{d as j,e as O,m as o,t as d,F as P,s as G,o as _,k as B,w as l,z as g,bf as de,f as t,A as Y,l as M,r as F,an as X,g as e,bg as Q,_ as Ye,i as te,a4 as se,n as me,h as Ze,bP as et,x as tt,B as st,bc as ot,co as at,bj as nt,c as y,bL as lt,bM as rt,bN as it,bO as ut,bh as ct,bE as dt,bQ as mt,bR as pt,a8 as ft,cp as vt,bp as gt,E as Be,O as _t,aY as bt,af as xt,I as ke,aF as we,bx as yt,by as ht,bz as kt}from"./DgGwe7jd.js";import{_ as Ee,a as Te}from"./Cl3VX8Um.js";import{_ as De,g as wt,a as Oe}from"./BKAEFZqP.js";import{_ as $t}from"./CnQob-tn.js";import{u as Ct}from"./B3iNzG14.js";const St={class:"rounded-lg border bg-muted/20 p-4"},Ft={class:"space-y-4"},Bt={class:"text-sm font-medium"},Et={class:"mt-1 text-xs text-muted-foreground"},Tt={class:"text-xs text-muted-foreground"},Dt={class:"mt-2 flex flex-wrap gap-2"},Ot={class:"mt-1 text-sm text-muted-foreground"},Rt={class:"mt-1 text-sm font-medium"},$e=j({__name:"BackupProfileCard",props:{title:{},description:{},formats:{},toolHint:{},targetName:{},formatsLabel:{default:"Supported Files"}},setup(m){return(a,s)=>{const p=de;return _(),O("div",St,[o("div",Ft,[o("div",null,[o("p",Bt,d(a.title),1),o("p",Et,d(a.description),1)]),o("div",null,[o("p",Tt,d(a.formatsLabel),1),o("div",Dt,[(_(!0),O(P,null,G(a.formats,r=>(_(),B(p,{key:r.format,variant:"outline",class:"font-normal"},{default:l(()=>[g(d(r.extension),1)]),_:2},1024))),128))])]),o("div",null,[s[0]||(s[0]=o("p",{class:"text-xs text-muted-foreground"},"Runtime Tools",-1)),o("p",Ot,d(a.toolHint),1)]),o("div",null,[s[1]||(s[1]=o("p",{class:"text-xs text-muted-foreground"},"Target",-1)),o("p",Rt,d(a.targetName),1)])])])}}}),It={class:"text-muted-foreground"},zt={class:"space-y-2 text-xs"},Mt=`brew install postgresql # macOS
2
- apt-get install postgresql-client # Linux
3
- # Windows: Download from https://www.postgresql.org/download/windows/`,qt=`brew install mysql # macOS
4
- apt-get install mysql-client # Linux
5
- # Windows: Download from https://dev.mysql.com/downloads/`,At=`brew install sqlite # macOS
6
- apt-get install sqlite3 # Linux
7
- # Windows: Download from https://www.sqlite.org/download.html`,Lt=j({__name:"BackupRestoreUnsupportedAlert",props:{supportMessage:{},connectionType:{}},setup(m){return(a,s)=>{const p=Y,r=De,u=$t,f=Te,b=Ee;return _(),B(b,null,{default:l(()=>[t(r,{class:"flex items-center font-medium gap-1"},{default:l(()=>[t(p,{name:"hugeicons:alert-circle",class:"size-4"}),s[0]||(s[0]=g(" Native Tools Required"))]),_:1}),t(f,{class:"space-y-3"},{default:l(()=>[o("p",It,d(a.supportMessage),1),o("div",zt,[s[1]||(s[1]=o("p",{class:"font-medium"},"Installation instructions:",-1)),a.connectionType==="postgres"?(_(),B(u,{key:0,code:Mt,language:"bash"})):a.connectionType==="mysql"||a.connectionType==="mariadb"?(_(),B(u,{key:1,code:qt,language:"bash"})):a.connectionType==="sqlite3"?(_(),B(u,{key:2,code:At,language:"bash"})):M("",!0)])]),_:1})]),_:1})}}}),Vt={class:"space-y-4"},jt={class:"space-y-2"},Nt={class:"grid gap-2 sm:grid-cols-2"},Pt=["onClick"],Ut={class:"flex items-center justify-between gap-2"},Jt={class:"text-sm font-medium"},Ht={class:"mt-1 text-xs text-muted-foreground"},Wt={class:"space-y-2"},Kt={key:0,class:"space-y-2"},Gt={class:"flex flex-wrap gap-2 max-h-32 overflow-y-auto p-2 border rounded-md"},Qt={class:"text-xs text-muted-foreground"},Ce="plain",Xt=j({__name:"ExportOptionsForm",props:{schemas:{},loading:{type:Boolean},formatOptions:{},defaultFormat:{},toolHint:{}},emits:["submit"],setup(m,{emit:a}){var $;const s=m,p=a,r=F("full"),u=F(s.defaultFormat||(($=s.formatOptions[0])==null?void 0:$.format)||Ce),f=F([]);X([()=>s.formatOptions,()=>s.defaultFormat],([w,C])=>{var T;w.some(D=>D.format===u.value)||(u.value=((T=w[0])==null?void 0:T.format)||C||Ce)},{immediate:!0});const b=[{value:"full",label:"Full (schema + data)"},{value:"schema-only",label:"Schema only (no data)"},{value:"data-only",label:"Data only (no schema)"}],n=()=>{const w={format:u.value,scope:r.value};w.schemas=f.value.length>0?f.value:s.schemas,p("submit",w)};return(w,C)=>{const T=et,D=Ze,c=st,h=tt,S=Ye,z=Y,q=se;return _(),O("div",Vt,[o("div",jt,[t(e(Q),null,{default:l(()=>C[1]||(C[1]=[g("Backup Format")])),_:1}),o("div",Nt,[(_(!0),O(P,null,G(w.formatOptions,x=>(_(),O("button",{key:x.format,type:"button",class:me(["rounded-lg border p-3 text-left transition-colors",e(u)===x.format?"border-primary bg-primary/5":"hover:border-primary/40 hover:bg-muted/20"]),onClick:R=>u.value=x.format},[o("div",Ut,[o("p",Jt,d(x.label),1),t(e(de),{variant:"secondary",class:"font-normal"},{default:l(()=>[g(d(x.extension),1)]),_:2},1024)]),o("p",Ht," Runtime uses "+d(s.toolHint||"Native database tools")+". ",1)],10,Pt))),128))])]),o("div",Wt,[t(e(Q),null,{default:l(()=>C[2]||(C[2]=[g("Export Scope")])),_:1}),t(S,{modelValue:e(r),"onUpdate:modelValue":C[0]||(C[0]=x=>te(r)?r.value=x:null),size:"xs"},{default:l(()=>[t(D,null,{default:l(()=>[t(T,{placeholder:"Select scope"})]),_:1}),t(h,null,{default:l(()=>[(_(),O(P,null,G(b,x=>t(c,{key:x.value,value:x.value},{default:l(()=>[g(d(x.label),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),w.schemas.length>0?(_(),O("div",Kt,[t(e(Q),null,{default:l(()=>C[3]||(C[3]=[g("Schemas (optional)")])),_:1}),o("div",Gt,[(_(!0),O(P,null,G(w.schemas,x=>(_(),B(e(de),{key:x,variant:e(f).includes(x)?"default":"outline",class:"cursor-pointer",onClick:()=>e(f).includes(x)?f.value=e(f).filter(R=>R!==x):e(f).push(x)},{default:l(()=>[g(d(x),1)]),_:2},1032,["variant","onClick"]))),128))]),o("p",Qt,d(e(f).length?`${e(f).length} selected`:"All visible schemas"),1)])):M("",!0),t(q,{class:"w-full",disabled:w.loading,onClick:n},{default:l(()=>[w.loading?(_(),B(z,{key:0,name:"hugeicons:loading-03",class:"size-4 mr-2 animate-spin"})):(_(),B(z,{key:1,name:"lucide:download",class:"size-4 mr-2"})),g(" "+d(w.loading?"Creating Backup...":"Create Backup"),1)]),_:1},8,["disabled"])])}}}),Yt={class:"relative mt-2 cursor-pointer rounded-lg border-2 border-dashed p-6 text-center transition-colors hover:border-primary/50"},Zt=["accept"],es={key:0,class:"text-muted-foreground pointer-events-none"},ts={class:"text-xs mt-1"},ss={key:1,class:"flex items-center justify-center gap-3"},os={class:"text-left"},as={class:"text-sm font-medium"},ns={class:"text-xs text-muted-foreground"},ls=j({__name:"ImportFileDropzone",props:{selectedFile:{},accept:{},extensionSummary:{}},emits:["change","clear"],setup(m){const a=s=>s<1024?`${s} B`:s<1048576?`${(s/1024).toFixed(1)} KB`:`${(s/1048576).toFixed(1)} MB`;return(s,p)=>{const r=Q,u=Y,f=se;return _(),O("div",null,[t(r,{class:"text-sm font-medium"},{default:l(()=>p[2]||(p[2]=[g("Backup File")])),_:1}),o("div",Yt,[o("input",{type:"file",accept:s.accept,class:"absolute inset-0 w-full h-full opacity-0 cursor-pointer",onChange:p[0]||(p[0]=b=>s.$emit("change",b))},null,40,Zt),s.selectedFile?(_(),O("div",ss,[t(u,{name:"hugeicons:file-01",class:"size-8 text-primary"}),o("div",os,[o("p",as,d(s.selectedFile.name),1),o("p",ns,d(a(s.selectedFile.size)),1)]),t(f,{variant:"ghost",size:"icon",class:"ml-2 relative z-10",type:"button",onClick:p[1]||(p[1]=ot(b=>s.$emit("clear"),["stop"]))},{default:l(()=>[t(u,{name:"hugeicons:x-close",class:"size-4"})]),_:1})])):(_(),O("div",es,[t(u,{name:"hugeicons:upload-cloud-01",class:"size-10 mx-auto mb-2 opacity-50"}),p[3]||(p[3]=o("p",{class:"text-sm font-medium"},"Click to select a file",-1)),o("p",ts,"Supports "+d(s.extensionSummary)+" backups",1)]))])])}}}),rs={class:"space-y-3"},is={class:"grid grid-cols-2 gap-4"},us=j({__name:"ImportOptionsForm",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(m){const a=at(m,"modelValue"),s=(r,u)=>{a.value[r]=u},p=[{key:"clean",label:"Drop Objects First",id:"import-clean"},{key:"dataOnly",label:"Data Only",id:"import-data-only"},{key:"schemaOnly",label:"Schema Only",id:"import-schema-only"},{key:"exitOnError",label:"Exit on Error",id:"import-exit-on-error"}];return(r,u)=>{const f=Q,b=nt;return _(),O("div",rs,[t(f,{class:"text-sm font-medium"},{default:l(()=>u[0]||(u[0]=[g("Options")])),_:1}),o("div",is,[(_(),O(P,null,G(p,n=>o("div",{key:n.key,class:"flex items-center space-x-2"},[t(b,{id:n.id,"model-value":a.value[n.key],"onUpdate:modelValue":$=>s(n.key,$)},null,8,["id","model-value","onUpdate:modelValue"]),t(f,{for:n.id,class:"text-sm"},{default:l(()=>[g(d(n.label),1)]),_:2},1032,["for"])])),64))])])}}}),cs={class:"space-y-3 py-1"},ce="restore backup",ds=j({__name:"RestoreConfirmDialog",props:{open:{type:Boolean}},emits:["confirm","cancel"],setup(m,{emit:a}){const s=m,p=a,r=F("");X(()=>s.open,b=>{b&&(r.value="")});const u=y(()=>r.value===ce),f=()=>{u.value&&p("confirm")};return(b,n)=>{const $=Y,w=it,C=ut,T=rt,D=Q,c=ct,h=se,S=mt,z=pt,q=lt;return _(),B(q,{open:b.open,"onUpdate:open":n[2]||(n[2]=x=>!x&&b.$emit("cancel"))},{default:l(()=>[t(z,{class:"max-w-sm"},{default:l(()=>[t(T,null,{default:l(()=>[t(w,{class:"flex items-center gap-2 text-destructive"},{default:l(()=>[t($,{name:"hugeicons:alert-02",class:"size-5"}),n[3]||(n[3]=g(" Confirm Restore "))]),_:1}),t(C,null,{default:l(()=>n[4]||(n[4]=[g(" This will overwrite existing data in the target database. This action cannot be undone. ")])),_:1})]),_:1}),o("div",cs,[t(D,{for:"restore-confirm-input"},{default:l(()=>[n[5]||(n[5]=g(" Type ")),o("code",{class:"rounded bg-muted px-1 py-0.5 text-xs font-mono"},d(ce)),n[6]||(n[6]=g(" to continue: "))]),_:1}),t(c,{id:"restore-confirm-input",modelValue:e(r),"onUpdate:modelValue":n[0]||(n[0]=x=>te(r)?r.value=x:null),placeholder:ce,autocomplete:"off",onKeydown:dt(f,["enter"])},null,8,["modelValue"])]),t(S,null,{default:l(()=>[t(h,{variant:"outline",onClick:n[1]||(n[1]=x=>b.$emit("cancel"))},{default:l(()=>n[7]||(n[7]=[g("Cancel")])),_:1}),t(h,{variant:"destructive",disabled:!e(u),onClick:f},{default:l(()=>n[8]||(n[8]=[g(" Restore ")])),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["open"])}}}),ms={class:"rounded-lg border bg-muted/30 p-4"},ps={class:"flex items-center justify-between gap-4"},fs={class:"text-sm font-medium"},vs={class:"text-xs text-muted-foreground"},gs={class:"text-sm font-medium"},_s={class:"mt-3 h-2 overflow-hidden rounded-full bg-border/60"},Se=j({__name:"TransferProgressCard",props:{tool:{},stage:{},statusMessage:{},progress:{},isRunning:{type:Boolean},progressClass:{default:"bg-primary"}},setup(m){return(a,s)=>(_(),O("div",ms,[o("div",ps,[o("div",null,[o("p",fs,d(a.tool)+" · "+d(a.stage),1),o("p",vs,d(a.statusMessage||"Preparing job..."),1)]),o("span",gs,d(a.progress)+"%",1)]),o("div",_s,[o("div",{class:me(["h-full rounded-full transition-all duration-300",a.progressClass]),style:ft({width:`${Math.max(a.progress,a.isRunning?8:0)}%`})},null,6)])]))}});function Fe(m){return!!(m&&(m.status==="completed"||m.status==="error"))}const Re=()=>{const m=F(null),a=F(null),s=F(null),p=F(!1);let r=null,u=null;const f=c=>{r==null||r(c),r=null,u=null},b=c=>{u==null||u(c),r=null,u=null},n=async()=>{if(!s.value)throw new Error("Backup job status URL is missing.");if(p.value){if(m.value)return m.value;throw new Error("Backup job refresh is already in progress.")}p.value=!0;try{const c=await $fetch(s.value);return m.value=c,c.status==="error"&&(a.value=c.error||c.message),Fe(c)&&($(),f(c)),c}catch(c){const h=c instanceof Error?c:new Error("Failed to refresh backup job status.");throw a.value=h.message,$(),b(h),h}finally{p.value=!1}},{pause:$,resume:w,isActive:C}=vt(()=>{n()},1e3,{immediate:!1,immediateCallback:!1}),T=async c=>{s.value=c,a.value=null;const h=await n();return Fe(h)?h:(w(),await new Promise((S,z)=>{r=S,u=z}))},D=()=>{$(),s.value=null,m.value=null,a.value=null,p.value=!1,r=null,u=null};return gt(()=>{$()}),{job:m,error:a,isRefreshing:p,isPolling:C,progress:y(()=>{var c;return((c=m.value)==null?void 0:c.progress)??0}),message:y(()=>{var c;return((c=m.value)==null?void 0:c.message)??null}),stage:y(()=>{var c;return((c=m.value)==null?void 0:c.stage)??"queued"}),status:y(()=>{var c;return((c=m.value)==null?void 0:c.status)??"queued"}),isRunning:y(()=>{var c,h;return((c=m.value)==null?void 0:c.status)==="queued"||((h=m.value)==null?void 0:h.status)==="running"}),monitorJob:T,refresh:n,reset:D}},bs=(m,a)=>{const s=F(null),p=F(null),r=Re(),{downloadStream:u,isDownloading:f,downloadedBytes:b}=Ct(),n=y(()=>r.isRunning.value||f.value),$=y(()=>f.value?100:r.progress.value),w=y(()=>f.value?`Downloading backup artifact (${b.value} bytes)...`:r.message.value),C=y(()=>r.job.value),T=async(h,S)=>{var z,q;if(!m.value)return s.value="No database connection provided",!1;if(a!=null&&a.value&&!a.value.exportAvailable)return s.value=a.value.exportMessage,!1;s.value=null,p.value=null;try{const x=await $fetch("/api/database-export/export-database",{method:"POST",body:{...Be(m.value),databaseName:h,options:S}}),R=await r.monitorJob(x.statusUrl);if(R.status==="error")return s.value=R.error||R.message,!1;if(!R.downloadUrl||!R.downloadFileName)return s.value="Export finished but no download artifact was returned.",!1;const k=await u({url:R.downloadUrl,method:"GET",filename:R.downloadFileName||`${h}_backup${D((z=m.value)==null?void 0:z.type,S.format)}`});return k.success?(p.value={fileName:R.downloadFileName,duration:R.duration||0},!0):(s.value=((q=k.error)==null?void 0:q.message)||"Download failed.",!1)}catch(x){return s.value=x instanceof Error?x.message:"Export failed. Check the connection and backup configuration.",console.error("Export error:",x),!1}},D=(h,S)=>wt(h,S);return{isExporting:n,progress:$,error:s,lastExport:p,currentJob:C,statusMessage:w,exportDatabase:T,reset:()=>{r.reset(),s.value=null,p.value=null}}},xs=(m,a)=>{const s=Re(),p=y(()=>s.isRunning.value),r=y(()=>s.progress.value),u=y(()=>s.message.value),f=y(()=>s.job.value),b=F(null),n=F(null),$=F(null),w=F(null),C=F({clean:!1,dataOnly:!1,schemaOnly:!1,exitOnError:!0}),T=y(()=>{var k;return(k=m.value)==null?void 0:k.type}),D=y(()=>{var k;return((k=a.value)==null?void 0:k.formatOptions)||[]}),c=y(()=>Oe(T.value)),h=y(()=>{var k;return((k=a.value)==null?void 0:k.acceptExtensions)||D.value.map(E=>E.extension).join(" / ")||".sql"}),S=()=>{$.value=null,w.value&&(w.value.value="")};return{isImporting:p,progress:r,statusMessage:u,currentJob:f,error:b,success:n,selectedFile:$,fileInputRef:w,options:C,extensionSummary:h,clearSelectedFile:S,openFilePicker:()=>{var k;(k=w.value)==null||k.click()},onFileSelect:k=>{var A;const E=k.target;if(!((A=E.files)!=null&&A.length))return;const U=E.files[0];if(!D.value.some(V=>U.name.toLowerCase().endsWith(V.extension.toLowerCase()))){S(),b.value=`Unsupported file type. Use ${h.value} for ${c.value}.`,n.value=null;return}$.value=U,b.value=null,n.value=null},importDatabase:async()=>{if(!(!$.value||!m.value)){if(a.value&&!a.value.importAvailable){b.value=a.value.importMessage,n.value=null;return}b.value=null,n.value=null;try{const k=new FormData;k.append("file",$.value);const E=Be(m.value);Object.entries(E).forEach(([A,V])=>{V!==void 0&&k.append(A,typeof V=="object"?JSON.stringify(V):String(V))}),k.append("options",JSON.stringify(C.value));const U=await $fetch("/api/database-import/import-database",{method:"POST",body:k}),N=await s.monitorJob(U.statusUrl);if(N.status==="completed"){n.value=N.message||"Database imported successfully",S();return}b.value=N.error||N.message||"Import failed"}catch(k){b.value=k instanceof Error?k.message:"Import failed. Check the backup file and connection compatibility.",console.error("Import error:",k)}}},reset:()=>{s.reset(),b.value=null,n.value=null,S()}}},ys=m=>{const a=F(null),s=F(!1),p=F(null);let r=0;const u=async()=>{const f=m.value,b=++r;if(!f){a.value=null,p.value=null,s.value=!1;return}s.value=!0,p.value=null;try{const n=await $fetch("/api/database-backup/capability",{query:{type:f}});if(b!==r)return;a.value=n}catch(n){if(b!==r)return;a.value=null,p.value=n instanceof Error?n.message:"Unable to detect native backup tools."}finally{b===r&&(s.value=!1)}};return X(m,()=>{u()},{immediate:!0}),{capability:a,isLoading:s,error:p,refresh:u}},hs={class:"flex flex-col h-full gap-3 overflow-hidden p-3"},ks={class:"font-medium text-foreground"},ws={class:"text-muted-foreground/60"},$s={class:"flex items-center justify-between gap-2"},Cs={class:"text-xs text-muted-foreground"},Ss={class:"relative flex-1 overflow-y-auto rounded-lg border bg-background p-4"},Fs={class:"space-y-4"},Bs={class:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between"},Es={class:"mt-1 text-sm text-muted-foreground"},Ts={class:"grid gap-4 xl:grid-cols-[minmax(0,1fr)_280px]"},Ds={class:"rounded-lg border p-4"},Os={class:"space-y-4"},Rs={class:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between"},Is={class:"mt-1 text-sm text-muted-foreground"},zs={class:"grid gap-4 xl:grid-cols-[minmax(0,1fr)_280px]"},Ms={class:"rounded-lg border p-4 space-y-4"},qs={class:"text-muted-foreground text-xs inline-flex items-center gap-0.5"},As={class:"text-destructive gap-0.5 items-center inline-flex"},Js=j({__name:"BackupRestoreContainer",props:{connectionId:{},initialTab:{}},setup(m){const a=m,s=_t(),p=bt(),r=y(()=>{if(a.connectionId)return s.connections.find(i=>i.id===a.connectionId)}),u=y(()=>{var i;return(i=r.value)==null?void 0:i.type}),f=y(()=>{var i,v;return((i=r.value)==null?void 0:i.database)||((v=r.value)==null?void 0:v.name)||"database"}),b=y(()=>Oe(u.value)),{capability:n,isLoading:$,error:w}=ys(u),C=y(()=>{var i;return((i=n.value)==null?void 0:i.available)??!1}),T=y(()=>{var i;return((i=n.value)==null?void 0:i.exportAvailable)??!1}),D=y(()=>{var i;return((i=n.value)==null?void 0:i.importAvailable)??!1}),c=y(()=>w.value?w.value:n.value?n.value.supportMessage:u.value?`Checking ${b.value} native tools...`:"Select a connection to open database tools."),h=y(()=>{var i;return((i=n.value)==null?void 0:i.toolHint)||"Native database tools"}),S=y(()=>{var i;return((i=n.value)==null?void 0:i.formatOptions)||[]}),z=y(()=>{var i;return((i=n.value)==null?void 0:i.acceptExtensions)||".sql"}),q=y(()=>S.value.map(i=>i.extension).join(" / ")||".sql"),x=y(()=>{var i,v;return $.value||!C.value||T.value&&D.value?null:[T.value?null:(i=n.value)==null?void 0:i.exportMessage,D.value?null:(v=n.value)==null?void 0:v.importMessage].filter(Boolean).join(" ")}),R=y(()=>a.connectionId?(p.schemas[a.connectionId]||[]).filter(i=>i.connectionId===a.connectionId).map(i=>i.name):[]),k=[{id:"export",tabLabel:"Create Backup",subtitle:"Generate native backup artifacts for the current connection.",icon:"hugeicons:download-01"},{id:"import",tabLabel:"Restore Backup",subtitle:"Apply a native backup artifact back into this connection.",icon:"hugeicons:upload-01"}],E=F(a.initialTab),U=y(()=>k.find(i=>i.id===E.value));X(()=>a.initialTab,i=>{E.value=i}),X([E,T,D],([i,v,ee])=>{if(i==="export"&&!v&&ee){E.value="import";return}i==="import"&&!ee&&v&&(E.value="export")},{immediate:!0});const N=i=>{E.value=i},{isExporting:A,progress:V,error:oe,lastExport:ae,currentJob:ne,statusMessage:Ie,exportDatabase:ze,reset:Me}=bs(r,n),qe=async i=>{await ze(f.value,i)},{isImporting:J,progress:Ae,statusMessage:Le,currentJob:le,error:pe,success:fe,selectedFile:ve,options:re,extensionSummary:Ve,onFileSelect:je,clearSelectedFile:Ne,importDatabase:Pe,reset:Ue}=xs(r,n),Z=F(!1),Je=()=>{Z.value=!0},He=async()=>{Z.value=!1,await Pe()},We=()=>{Z.value=!1};return(i,v)=>{var ge,_e,be,xe,ye,he;const ee=Xe,L=Y,Ke=kt,Ge=ht,Qe=yt,H=De,W=Te,K=Ee,ie=se;return _(),O("div",hs,[t(ds,{open:e(Z),onConfirm:He,onCancel:We},null,8,["open"]),t(ee,{icon:"hugeicons:database-import",title:"Backup & Restore"},{context:l(()=>[o("span",ks,d(e(f)),1),o("span",ws,"· "+d(e(b)),1)]),_:1}),o("div",$s,[t(Qe,{modelValue:e(E),"onUpdate:modelValue":v[0]||(v[0]=I=>te(E)?E.value=I:null),class:"min-w-0 flex-1 gap-0"},{default:l(()=>[t(Ge,{size:"sm",class:"max-w-full justify-start! overflow-x-auto"},{default:l(()=>[(_(),O(P,null,G(k,I=>t(Ke,{size:"xs",key:I.id,value:I.id,class:"min-w-fit shrink-0 cursor-pointer rounded-sm",disabled:e($)||(I.id==="export"?!e(T):!e(D)),onClick:ue=>N(I.id)},{default:l(()=>[t(L,{name:I.icon,class:"shrink-0 size-3.5"},null,8,["name"]),g(" "+d(I.tabLabel),1)]),_:2},1032,["value","disabled","onClick"])),64))]),_:1})]),_:1},8,["modelValue"]),o("div",Cs,d((ge=e(U))==null?void 0:ge.subtitle),1)]),o("div",Ss,[e($)?(_(),B(xt,{key:0,visible:""})):M("",!0),!e($)&&e(w)?(_(),B(K,{key:1,variant:"destructive"},{default:l(()=>[t(L,{name:"hugeicons:alert-circle",class:"size-4"}),t(H,null,{default:l(()=>v[2]||(v[2]=[g("Capability Check Failed")])),_:1}),t(W,null,{default:l(()=>[g(d(e(c)),1)]),_:1})]),_:1})):!e($)&&!e(C)?(_(),B(Lt,{key:2,"support-message":e(c),"connection-type":e(u)},null,8,["support-message","connection-type"])):e($)?M("",!0):(_(),O(P,{key:3},[e(x)?(_(),B(K,{key:0},{default:l(()=>[t(L,{name:"hugeicons:alert-circle",class:"size-4"}),t(H,null,{default:l(()=>v[3]||(v[3]=[g("Partial Native Tool Support")])),_:1}),t(W,null,{default:l(()=>[g(d(e(x)),1)]),_:1})]),_:1})):M("",!0),ke(o("div",Fs,[o("div",Bs,[o("div",null,[v[4]||(v[4]=o("h3",{class:"text-base font-medium"},"Create Backup",-1)),o("p",Es," Export "+d(e(f))+" using "+d(e(h))+". ",1)])]),e(oe)?(_(),B(K,{key:0,variant:"destructive"},{default:l(()=>[t(L,{name:"hugeicons:alert-circle",class:"size-4"}),t(H,null,{default:l(()=>v[5]||(v[5]=[g("Backup Failed")])),_:1}),t(W,null,{default:l(()=>[g(d(e(oe)),1)]),_:1}),t(ie,{size:"sm",variant:"outline",class:"mt-2",onClick:e(Me)},{default:l(()=>v[6]||(v[6]=[g(" Try Again ")])),_:1},8,["onClick"])]),_:1})):M("",!0),e(ae)&&!e(A)&&!e(oe)?(_(),B(K,{key:1},{default:l(()=>[t(L,{name:"hugeicons:checkmark-circle-02",class:"size-4 text-green-500"}),t(H,null,{default:l(()=>v[7]||(v[7]=[g("Backup Complete")])),_:1}),t(W,null,{default:l(()=>{var I,ue;return[g(d((I=e(ae))==null?void 0:I.fileName)+" downloaded in "+d(((((ue=e(ae))==null?void 0:ue.duration)||0)/1e3).toFixed(1))+"s ",1)]}),_:1})]),_:1})):M("",!0),e(A)||e(ne)?(_(),B(Se,{key:2,tool:((_e=e(ne))==null?void 0:_e.tool)||e(h),stage:((be=e(ne))==null?void 0:be.stage)||"queued","status-message":e(Ie)||"",progress:e(V),"is-running":e(A)},null,8,["tool","stage","status-message","progress","is-running"])):M("",!0),o("div",Ts,[o("div",Ds,[t(Xt,{schemas:e(R),loading:e(A),"format-options":e(S),"default-format":(xe=e(n))==null?void 0:xe.defaultExportFormat,"tool-hint":e(h),onSubmit:qe},null,8,["schemas","loading","format-options","default-format","tool-hint"])]),t($e,{title:"Backup Profile",description:"Exports run on the local runtime host and stream the artifact directly into a downloadable file.",formats:e(S),"tool-hint":e(h),"target-name":e(f),"formats-label":"Supported Files"},null,8,["formats","tool-hint","target-name"])])],512),[[we,e(E)==="export"]]),ke(o("div",Os,[o("div",Rs,[o("div",null,[v[8]||(v[8]=o("h3",{class:"text-base font-medium"},"Restore Backup",-1)),o("p",Is," Restore a "+d(e(q))+" backup into "+d(e(f))+". ",1)])]),e(pe)?(_(),B(K,{key:0,variant:"destructive"},{default:l(()=>[t(L,{name:"hugeicons:alert-circle",class:"size-4"}),t(H,null,{default:l(()=>v[9]||(v[9]=[g("Import Failed")])),_:1}),t(W,null,{default:l(()=>[g(d(e(pe)),1)]),_:1}),t(ie,{size:"sm",variant:"outline",class:"mt-2",onClick:e(Ue)},{default:l(()=>v[10]||(v[10]=[g(" Try Again ")])),_:1},8,["onClick"])]),_:1})):M("",!0),e(fe)?(_(),B(K,{key:1},{default:l(()=>[t(L,{name:"hugeicons:checkmark-circle-02",class:"size-4 text-green-500"}),t(H,null,{default:l(()=>v[11]||(v[11]=[g("Import Complete")])),_:1}),t(W,null,{default:l(()=>[g(d(e(fe)),1)]),_:1})]),_:1})):M("",!0),e(J)||e(le)?(_(),B(Se,{key:2,tool:((ye=e(le))==null?void 0:ye.tool)||e(h),stage:((he=e(le))==null?void 0:he.stage)||"queued","status-message":e(Le)||"",progress:e(Ae),"is-running":e(J),"progress-class":"bg-emerald-500"},null,8,["tool","stage","status-message","progress","is-running"])):M("",!0),o("div",zs,[o("div",Ms,[t(ls,{"selected-file":e(ve),accept:e(z),"extension-summary":e(Ve),onChange:e(je),onClear:e(Ne)},null,8,["selected-file","accept","extension-summary","onChange","onClear"]),t(us,{modelValue:e(re),"onUpdate:modelValue":v[1]||(v[1]=I=>te(re)?re.value=I:null)},null,8,["modelValue"]),t(ie,{class:"w-full",size:"lg",disabled:!e(ve)||e(J),onClick:Je},{default:l(()=>[t(L,{name:e(J)?"hugeicons:loading-03":"hugeicons:upload-01",class:me(["size-4 mr-2",e(J)&&"animate-spin"])},null,8,["name","class"]),g(" "+d(e(J)?"Restoring...":"Restore Backup"),1)]),_:1},8,["disabled"]),o("p",qs,[o("polyline",As,[t(L,{name:"hugeicons:alert-circle",class:"size-4 text-destructive"}),v[12]||(v[12]=g(" Warning: "))]),v[13]||(v[13]=g(" Importing a database can overwrite existing data. Make sure you have a backup before proceeding. "))])]),t($e,{title:"Restore Profile",description:"Use a backup file produced for the same database family and runtime toolchain.",formats:e(S),"tool-hint":e(h),"target-name":e(f),"formats-label":"Accepted Files"},null,8,["formats","tool-hint","target-name"])])],512),[[we,e(E)==="import"]])],64))])])}}});export{Js as _};
@@ -1 +0,0 @@
1
- import{U as a,D as n}from"./DYqShb5v.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
@@ -1 +0,0 @@
1
- import{_ as o}from"./C6CFIGob.js";import{d as r,T as s,c as n,k as c,g as m,o as p}from"./DgGwe7jd.js";import"./BnZ5qYkP.js";import"./dDqgUqt5.js";import"./CE0zlNDo.js";const I=r({__name:"[tableId]",setup(u){const e=s(),t=n(()=>e.params.tableId);return(a,l)=>(p(),c(o,{tableId:m(t)},null,8,["tableId"]))}});export{I as default};
@@ -1 +0,0 @@
1
- import{_ as e}from"./Bf2bW_MY.js";import{d as r,T as c,c as n,k as m,g as o,o as p}from"./DgGwe7jd.js";import"./CP-7VdtS.js";import"./DViCRsmA.js";import"./Cl3VX8Um.js";import"./BKAEFZqP.js";import"./CnQob-tn.js";import"./__PEYcIB.js";import"./DDsaDrGo.js";import"./B3iNzG14.js";const h=r({__name:"[name]",setup(s){const t=c(),i=n(()=>t.params.connectionId),a=n(()=>t.params.name);return(_,u)=>(p(),m(o(e),{"connection-id":o(i),"initial-tab":o(a)},null,8,["connection-id","initial-tab"]))}});export{h as default};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./DRX1aIGD.js";import{_ as i}from"./DYqShb5v.js";import"./CBjcd4cE.js";import"./BbLqUOHs.js";import"./CROH8wgk.js";import"./3jfBYqJb.js";import"./DgGwe7jd.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};