mongoku 2.4.6 → 2.4.7-compat

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 (300) hide show
  1. package/README.md +15 -0
  2. package/build/client/_app/immutable/assets/0.C_geP4pp.css +1 -0
  3. package/build/client/_app/immutable/assets/0.C_geP4pp.css.br +0 -0
  4. package/build/client/_app/immutable/assets/0.C_geP4pp.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/10.Wc4MTSzM.css +1 -0
  6. package/build/client/_app/immutable/assets/10.Wc4MTSzM.css.br +0 -0
  7. package/build/client/_app/immutable/assets/10.Wc4MTSzM.css.gz +0 -0
  8. package/build/client/_app/immutable/assets/{Modal.zD4dMMyk.css → Modal.CZgFKXkP.css} +1 -1
  9. package/build/client/_app/immutable/assets/Modal.CZgFKXkP.css.br +0 -0
  10. package/build/client/_app/immutable/assets/Modal.CZgFKXkP.css.gz +0 -0
  11. package/build/client/_app/immutable/chunks/B27BoO92.js +1 -0
  12. package/build/client/_app/immutable/chunks/B27BoO92.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/B27BoO92.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/{reNJcONQ.js → BLB7WU0x.js} +1 -1
  15. package/build/client/_app/immutable/chunks/BLB7WU0x.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/{reNJcONQ.js.gz → BLB7WU0x.js.gz} +0 -0
  17. package/build/client/_app/immutable/chunks/{Dkr5ZtQR.js → BTDPx7wo.js} +1 -1
  18. package/build/client/_app/immutable/chunks/BTDPx7wo.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/BTDPx7wo.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/{BziC6PX1.js → BV1jCwWf.js} +1 -1
  21. package/build/client/_app/immutable/chunks/BV1jCwWf.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/BV1jCwWf.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/Bp2iD_PL.js +1 -0
  24. package/build/client/_app/immutable/chunks/Bp2iD_PL.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/Bp2iD_PL.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/CItzKczS.js +1 -0
  27. package/build/client/_app/immutable/chunks/CItzKczS.js.br +0 -0
  28. package/build/client/_app/immutable/chunks/CItzKczS.js.gz +0 -0
  29. package/build/client/_app/immutable/chunks/{BO6_ugNx.js → Ce084HhL.js} +1 -1
  30. package/build/client/_app/immutable/chunks/Ce084HhL.js.br +0 -0
  31. package/build/client/_app/immutable/chunks/Ce084HhL.js.gz +0 -0
  32. package/build/client/_app/immutable/chunks/{DIw4Wyr4.js → CqFYS5AV.js} +1 -1
  33. package/build/client/_app/immutable/chunks/CqFYS5AV.js.br +0 -0
  34. package/build/client/_app/immutable/chunks/CqFYS5AV.js.gz +0 -0
  35. package/build/client/_app/immutable/chunks/{CpnIKQd1.js → DC13l09X.js} +6 -6
  36. package/build/client/_app/immutable/chunks/DC13l09X.js.br +0 -0
  37. package/build/client/_app/immutable/chunks/DC13l09X.js.gz +0 -0
  38. package/build/client/_app/immutable/chunks/{DkI4PMxL.js → DXWJTsg6.js} +1 -1
  39. package/build/client/_app/immutable/chunks/DXWJTsg6.js.br +0 -0
  40. package/build/client/_app/immutable/chunks/DXWJTsg6.js.gz +0 -0
  41. package/build/client/_app/immutable/chunks/Dip-8jE5.js +1 -0
  42. package/build/client/_app/immutable/chunks/Dip-8jE5.js.br +0 -0
  43. package/build/client/_app/immutable/chunks/Dip-8jE5.js.gz +0 -0
  44. package/build/client/_app/immutable/chunks/Dr_XE7iR.js +2 -0
  45. package/build/client/_app/immutable/chunks/Dr_XE7iR.js.br +0 -0
  46. package/build/client/_app/immutable/chunks/Dr_XE7iR.js.gz +0 -0
  47. package/build/client/_app/immutable/chunks/DuLpG1zT.js +1 -0
  48. package/build/client/_app/immutable/chunks/DuLpG1zT.js.br +0 -0
  49. package/build/client/_app/immutable/chunks/DuLpG1zT.js.gz +0 -0
  50. package/build/client/_app/immutable/chunks/{Dn0_-jEe.js → DyfVYlRP.js} +1 -1
  51. package/build/client/_app/immutable/chunks/DyfVYlRP.js.br +0 -0
  52. package/build/client/_app/immutable/chunks/DyfVYlRP.js.gz +0 -0
  53. package/build/client/_app/immutable/chunks/{BXUq66wC.js → OTbFjzBQ.js} +1 -1
  54. package/build/client/_app/immutable/chunks/OTbFjzBQ.js.br +0 -0
  55. package/build/client/_app/immutable/chunks/OTbFjzBQ.js.gz +0 -0
  56. package/build/client/_app/immutable/chunks/{UJuWD2W4.js → TQ9V_LBO.js} +1 -1
  57. package/build/client/_app/immutable/chunks/TQ9V_LBO.js.br +0 -0
  58. package/build/client/_app/immutable/chunks/TQ9V_LBO.js.gz +0 -0
  59. package/build/client/_app/immutable/chunks/{Z2a-si5C.js → p4lxgeXU.js} +3 -3
  60. package/build/client/_app/immutable/chunks/p4lxgeXU.js.br +0 -0
  61. package/build/client/_app/immutable/chunks/p4lxgeXU.js.gz +0 -0
  62. package/build/client/_app/immutable/chunks/pXcSrKpr.js +1 -0
  63. package/build/client/_app/immutable/chunks/pXcSrKpr.js.br +0 -0
  64. package/build/client/_app/immutable/chunks/pXcSrKpr.js.gz +0 -0
  65. package/build/client/_app/immutable/chunks/xuMwtvm-.js +16 -0
  66. package/build/client/_app/immutable/chunks/xuMwtvm-.js.br +0 -0
  67. package/build/client/_app/immutable/chunks/xuMwtvm-.js.gz +0 -0
  68. package/build/client/_app/immutable/entry/app.B7JBkmJ2.js +2 -0
  69. package/build/client/_app/immutable/entry/app.B7JBkmJ2.js.br +0 -0
  70. package/build/client/_app/immutable/entry/app.B7JBkmJ2.js.gz +0 -0
  71. package/build/client/_app/immutable/entry/start.C35Eiz23.js +1 -0
  72. package/build/client/_app/immutable/entry/start.C35Eiz23.js.br +2 -0
  73. package/build/client/_app/immutable/entry/start.C35Eiz23.js.gz +0 -0
  74. package/build/client/_app/immutable/nodes/0.U3Wc2t11.js +1 -0
  75. package/build/client/_app/immutable/nodes/0.U3Wc2t11.js.br +0 -0
  76. package/build/client/_app/immutable/nodes/0.U3Wc2t11.js.gz +0 -0
  77. package/build/client/_app/immutable/nodes/1.YN6Ljj2X.js +1 -0
  78. package/build/client/_app/immutable/nodes/1.YN6Ljj2X.js.br +2 -0
  79. package/build/client/_app/immutable/nodes/1.YN6Ljj2X.js.gz +0 -0
  80. package/build/client/_app/immutable/nodes/10.E5c2rVVT.js +3 -0
  81. package/build/client/_app/immutable/nodes/10.E5c2rVVT.js.br +0 -0
  82. package/build/client/_app/immutable/nodes/10.E5c2rVVT.js.gz +0 -0
  83. package/build/client/_app/immutable/nodes/{11.IKyzjYy6.js → 11.CwiIDBVl.js} +1 -1
  84. package/build/client/_app/immutable/nodes/11.CwiIDBVl.js.br +0 -0
  85. package/build/client/_app/immutable/nodes/11.CwiIDBVl.js.gz +0 -0
  86. package/build/client/_app/immutable/nodes/12.BF4KBraU.js +1 -0
  87. package/build/client/_app/immutable/nodes/12.BF4KBraU.js.br +0 -0
  88. package/build/client/_app/immutable/nodes/12.BF4KBraU.js.gz +0 -0
  89. package/build/client/_app/immutable/nodes/13.BNgciqug.js +65 -0
  90. package/build/client/_app/immutable/nodes/13.BNgciqug.js.br +0 -0
  91. package/build/client/_app/immutable/nodes/13.BNgciqug.js.gz +0 -0
  92. package/build/client/_app/immutable/nodes/{2.DqvBb3C7.js → 2.Byf6opOr.js} +1 -1
  93. package/build/client/_app/immutable/nodes/2.Byf6opOr.js.br +0 -0
  94. package/build/client/_app/immutable/nodes/2.Byf6opOr.js.gz +0 -0
  95. package/build/client/_app/immutable/nodes/{3.27swwcG4.js → 3.B3j0bAgy.js} +1 -1
  96. package/build/client/_app/immutable/nodes/3.B3j0bAgy.js.br +0 -0
  97. package/build/client/_app/immutable/nodes/3.B3j0bAgy.js.gz +0 -0
  98. package/build/client/_app/immutable/nodes/{4.CcholrFe.js → 4.6dtz57ii.js} +1 -1
  99. package/build/client/_app/immutable/nodes/4.6dtz57ii.js.br +0 -0
  100. package/build/client/_app/immutable/nodes/4.6dtz57ii.js.gz +0 -0
  101. package/build/client/_app/immutable/nodes/{5.CzudN9q-.js → 5.COHVaEDo.js} +1 -1
  102. package/build/client/_app/immutable/nodes/5.COHVaEDo.js.br +0 -0
  103. package/build/client/_app/immutable/nodes/5.COHVaEDo.js.gz +0 -0
  104. package/build/client/_app/immutable/nodes/{7.C560Uxhw.js → 7.Cecp1nCH.js} +1 -1
  105. package/build/client/_app/immutable/nodes/7.Cecp1nCH.js.br +0 -0
  106. package/build/client/_app/immutable/nodes/7.Cecp1nCH.js.gz +0 -0
  107. package/build/client/_app/immutable/nodes/{8.BEOgol-D.js → 8.DFk2Y9sL.js} +1 -1
  108. package/build/client/_app/immutable/nodes/8.DFk2Y9sL.js.br +0 -0
  109. package/build/client/_app/immutable/nodes/8.DFk2Y9sL.js.gz +0 -0
  110. package/build/client/_app/immutable/nodes/{9.BmG9LqpS.js → 9.W4l2xsEF.js} +1 -1
  111. package/build/client/_app/immutable/nodes/9.W4l2xsEF.js.br +0 -0
  112. package/build/client/_app/immutable/nodes/9.W4l2xsEF.js.gz +0 -0
  113. package/build/client/_app/version.json +1 -1
  114. package/build/client/_app/version.json.br +0 -0
  115. package/build/client/_app/version.json.gz +0 -0
  116. package/build/server/chunks/0-CuiS31Ys.js +22 -0
  117. package/build/server/chunks/{0-DgHP79Ti.js.map → 0-CuiS31Ys.js.map} +1 -1
  118. package/build/server/chunks/1-C9TxPuQ0.js +9 -0
  119. package/build/server/chunks/{1--T1OTbjT.js.map → 1-C9TxPuQ0.js.map} +1 -1
  120. package/build/server/chunks/{10-D1OhJt-m.js → 10-PX9d-jhv.js} +5 -5
  121. package/build/server/chunks/10-PX9d-jhv.js.map +1 -0
  122. package/build/server/chunks/{11-pr9S-VkT.js → 11-Bhv-UeEo.js} +4 -4
  123. package/build/server/chunks/{11-pr9S-VkT.js.map → 11-Bhv-UeEo.js.map} +1 -1
  124. package/build/server/chunks/{12-B_w9udgo.js → 12-BuNmW-Vp.js} +5 -5
  125. package/build/server/chunks/{12-B_w9udgo.js.map → 12-BuNmW-Vp.js.map} +1 -1
  126. package/build/server/chunks/{13-CfrLQ4p0.js → 13-CAI7Pyhf.js} +4 -4
  127. package/build/server/chunks/{13-CfrLQ4p0.js.map → 13-CAI7Pyhf.js.map} +1 -1
  128. package/build/server/chunks/{2-BheEgghx.js → 2-Bx656tbc.js} +2 -2
  129. package/build/server/chunks/{2-BheEgghx.js.map → 2-Bx656tbc.js.map} +1 -1
  130. package/build/server/chunks/{3-BwrTscBH.js → 3-B-zRiOJV.js} +2 -2
  131. package/build/server/chunks/{3-BwrTscBH.js.map → 3-B-zRiOJV.js.map} +1 -1
  132. package/build/server/chunks/{4-D28kbpdN.js → 4-BBCE4OIo.js} +2 -2
  133. package/build/server/chunks/{4-D28kbpdN.js.map → 4-BBCE4OIo.js.map} +1 -1
  134. package/build/server/chunks/{5--wY8V1OC.js → 5-D68X5smv.js} +2 -2
  135. package/build/server/chunks/{5--wY8V1OC.js.map → 5-D68X5smv.js.map} +1 -1
  136. package/build/server/chunks/{7-9IXFVUUl.js → 7-C8AZjmDc.js} +4 -4
  137. package/build/server/chunks/{7-9IXFVUUl.js.map → 7-C8AZjmDc.js.map} +1 -1
  138. package/build/server/chunks/{8-DQQl8f10.js → 8-CGRiuqYX.js} +5 -5
  139. package/build/server/chunks/{8-DQQl8f10.js.map → 8-CGRiuqYX.js.map} +1 -1
  140. package/build/server/chunks/{9-B4xWo186.js → 9-CBzIf4Vj.js} +5 -5
  141. package/build/server/chunks/{9-B4xWo186.js.map → 9-CBzIf4Vj.js.map} +1 -1
  142. package/build/server/chunks/{JsonValue-Cexm3jGT.js → JsonValue-EppVzWzE.js} +88 -36
  143. package/build/server/chunks/JsonValue-EppVzWzE.js.map +1 -0
  144. package/build/server/chunks/{Modal-BzZ9u6V6.js → Modal-eRpc5lqR.js} +4 -3
  145. package/build/server/chunks/Modal-eRpc5lqR.js.map +1 -0
  146. package/build/server/chunks/{Panel-BHGtM9Vw.js → Panel-HO9t9Spv.js} +2 -2
  147. package/build/server/chunks/{Panel-BHGtM9Vw.js.map → Panel-HO9t9Spv.js.map} +1 -1
  148. package/build/server/chunks/{PrettyJson-tOt0PqjF.js → PrettyJson-F3fqxkqU.js} +7 -6
  149. package/build/server/chunks/PrettyJson-F3fqxkqU.js.map +1 -0
  150. package/build/server/chunks/{Tooltip-DAE2mkm6.js → Tooltip-Dd-Bzogp.js} +2 -2
  151. package/build/server/chunks/{Tooltip-DAE2mkm6.js.map → Tooltip-Dd-Bzogp.js.map} +1 -1
  152. package/build/server/chunks/{TooltipTable-xo_OEG9c.js → TooltipTable-jHWezlEs.js} +3 -3
  153. package/build/server/chunks/{TooltipTable-xo_OEG9c.js.map → TooltipTable-jHWezlEs.js.map} +1 -1
  154. package/build/server/chunks/{_layout.svelte-Dji2JJ9X.js → _layout.svelte-CKGgUBvr.js} +9 -3
  155. package/build/server/chunks/_layout.svelte-CKGgUBvr.js.map +1 -0
  156. package/build/server/chunks/_page.svelte-BlmdSnTh.js +245 -0
  157. package/build/server/chunks/_page.svelte-BlmdSnTh.js.map +1 -0
  158. package/build/server/chunks/{_page.svelte-x1L5xjgQ.js → _page.svelte-ClZj6yzK.js} +7 -7
  159. package/build/server/chunks/{_page.svelte-x1L5xjgQ.js.map → _page.svelte-ClZj6yzK.js.map} +1 -1
  160. package/build/server/chunks/{_page.svelte-be8sxgGt.js → _page.svelte-D50SWEhd.js} +8 -8
  161. package/build/server/chunks/{_page.svelte-be8sxgGt.js.map → _page.svelte-D50SWEhd.js.map} +1 -1
  162. package/build/server/chunks/{_page.svelte-D-23v2Aa.js → _page.svelte-D8GSKYqN.js} +223 -12
  163. package/build/server/chunks/_page.svelte-D8GSKYqN.js.map +1 -0
  164. package/build/server/chunks/{_page.svelte-D9IvgJO5.js → _page.svelte-DBcsXxML.js} +8 -8
  165. package/build/server/chunks/{_page.svelte-D9IvgJO5.js.map → _page.svelte-DBcsXxML.js.map} +1 -1
  166. package/build/server/chunks/{_page.svelte-aT9hOnbL.js → _page.svelte-DFzKfImt.js} +8 -8
  167. package/build/server/chunks/{_page.svelte-aT9hOnbL.js.map → _page.svelte-DFzKfImt.js.map} +1 -1
  168. package/build/server/chunks/{_page.svelte-D5-pMskg.js → _page.svelte-ZYW4iSHn.js} +8 -8
  169. package/build/server/chunks/{_page.svelte-D5-pMskg.js.map → _page.svelte-ZYW4iSHn.js.map} +1 -1
  170. package/build/server/chunks/{index2-eSFyMQpS.js → index2-DBFlGzWV.js} +2 -2
  171. package/build/server/chunks/{index2-eSFyMQpS.js.map → index2-DBFlGzWV.js.map} +1 -1
  172. package/build/server/chunks/{mongo-BHk5yAj9.js → mongo-Ndoh6fs5.js} +21 -7
  173. package/build/server/chunks/mongo-Ndoh6fs5.js.map +1 -0
  174. package/build/server/chunks/{remote-xxtqbu-ETLGkdRu.js → remote-xxtqbu-fbBqzvFu.js} +3 -3
  175. package/build/server/chunks/remote-xxtqbu-fbBqzvFu.js.map +1 -0
  176. package/build/server/chunks/{servers.remote-CGies_Na.js → servers.remote-B1eorl4A.js} +163 -12
  177. package/build/server/chunks/servers.remote-B1eorl4A.js.map +1 -0
  178. package/build/server/index.js +2 -2
  179. package/build/server/index.js.map +1 -1
  180. package/build/server/manifest.js +15 -15
  181. package/build/server/manifest.js.map +1 -1
  182. package/package.json +1 -1
  183. package/src/api/servers.remote.ts +196 -10
  184. package/src/app.css +3 -6
  185. package/src/lib/components/ExplainPanel.svelte +273 -0
  186. package/src/lib/components/JsonValue.svelte +51 -6
  187. package/src/lib/components/Modal.svelte +7 -2
  188. package/src/lib/components/Notifications.svelte +3 -15
  189. package/src/lib/components/PrettyJson.svelte +1 -1
  190. package/src/lib/components/SearchBox.svelte +160 -5
  191. package/src/lib/components/TimeRangeStats.svelte +269 -0
  192. package/src/lib/icons/IconClose.svelte +21 -0
  193. package/src/lib/icons/IconExternalLink.svelte +22 -0
  194. package/src/lib/server/mongo.ts +31 -6
  195. package/src/lib/types.ts +16 -5
  196. package/src/routes/servers/[server]/databases/[database]/collections/[collection]/documents/+page.svelte +49 -1
  197. package/src/routes/servers/[server]/databases/[database]/collections/[collection]/mappings/+page.svelte +219 -79
  198. package/build/client/_app/immutable/assets/0.CEIWAdGZ.css +0 -1
  199. package/build/client/_app/immutable/assets/0.CEIWAdGZ.css.br +0 -0
  200. package/build/client/_app/immutable/assets/0.CEIWAdGZ.css.gz +0 -0
  201. package/build/client/_app/immutable/assets/10.BrydhPds.css +0 -1
  202. package/build/client/_app/immutable/assets/10.BrydhPds.css.br +0 -0
  203. package/build/client/_app/immutable/assets/10.BrydhPds.css.gz +0 -0
  204. package/build/client/_app/immutable/assets/Modal.zD4dMMyk.css.br +0 -0
  205. package/build/client/_app/immutable/assets/Modal.zD4dMMyk.css.gz +0 -0
  206. package/build/client/_app/immutable/chunks/0oUK0vJa.js +0 -1
  207. package/build/client/_app/immutable/chunks/0oUK0vJa.js.br +0 -0
  208. package/build/client/_app/immutable/chunks/0oUK0vJa.js.gz +0 -0
  209. package/build/client/_app/immutable/chunks/BGXqurs_.js +0 -1
  210. package/build/client/_app/immutable/chunks/BGXqurs_.js.br +0 -0
  211. package/build/client/_app/immutable/chunks/BGXqurs_.js.gz +0 -0
  212. package/build/client/_app/immutable/chunks/BO6_ugNx.js.br +0 -0
  213. package/build/client/_app/immutable/chunks/BO6_ugNx.js.gz +0 -0
  214. package/build/client/_app/immutable/chunks/BPbCnJEo.js +0 -1
  215. package/build/client/_app/immutable/chunks/BPbCnJEo.js.br +0 -0
  216. package/build/client/_app/immutable/chunks/BPbCnJEo.js.gz +0 -0
  217. package/build/client/_app/immutable/chunks/BXUq66wC.js.br +0 -0
  218. package/build/client/_app/immutable/chunks/BXUq66wC.js.gz +0 -0
  219. package/build/client/_app/immutable/chunks/BxoAxRg6.js +0 -1
  220. package/build/client/_app/immutable/chunks/BxoAxRg6.js.br +0 -0
  221. package/build/client/_app/immutable/chunks/BxoAxRg6.js.gz +0 -0
  222. package/build/client/_app/immutable/chunks/ByCRZ7zS.js +0 -2
  223. package/build/client/_app/immutable/chunks/ByCRZ7zS.js.br +0 -0
  224. package/build/client/_app/immutable/chunks/ByCRZ7zS.js.gz +0 -0
  225. package/build/client/_app/immutable/chunks/BziC6PX1.js.br +0 -0
  226. package/build/client/_app/immutable/chunks/BziC6PX1.js.gz +0 -0
  227. package/build/client/_app/immutable/chunks/CpnIKQd1.js.br +0 -0
  228. package/build/client/_app/immutable/chunks/CpnIKQd1.js.gz +0 -0
  229. package/build/client/_app/immutable/chunks/DIw4Wyr4.js.br +0 -0
  230. package/build/client/_app/immutable/chunks/DIw4Wyr4.js.gz +0 -0
  231. package/build/client/_app/immutable/chunks/DkI4PMxL.js.br +0 -0
  232. package/build/client/_app/immutable/chunks/DkI4PMxL.js.gz +0 -0
  233. package/build/client/_app/immutable/chunks/Dkr5ZtQR.js.br +0 -0
  234. package/build/client/_app/immutable/chunks/Dkr5ZtQR.js.gz +0 -0
  235. package/build/client/_app/immutable/chunks/DmXOK2q9.js +0 -16
  236. package/build/client/_app/immutable/chunks/DmXOK2q9.js.br +0 -0
  237. package/build/client/_app/immutable/chunks/DmXOK2q9.js.gz +0 -0
  238. package/build/client/_app/immutable/chunks/Dn0_-jEe.js.br +0 -0
  239. package/build/client/_app/immutable/chunks/Dn0_-jEe.js.gz +0 -0
  240. package/build/client/_app/immutable/chunks/UJuWD2W4.js.br +0 -0
  241. package/build/client/_app/immutable/chunks/UJuWD2W4.js.gz +0 -0
  242. package/build/client/_app/immutable/chunks/Z2a-si5C.js.br +0 -0
  243. package/build/client/_app/immutable/chunks/Z2a-si5C.js.gz +0 -0
  244. package/build/client/_app/immutable/chunks/_kKBJjiB.js +0 -1
  245. package/build/client/_app/immutable/chunks/_kKBJjiB.js.br +0 -0
  246. package/build/client/_app/immutable/chunks/_kKBJjiB.js.gz +0 -0
  247. package/build/client/_app/immutable/chunks/reNJcONQ.js.br +0 -0
  248. package/build/client/_app/immutable/chunks/s-K2chw6.js +0 -1
  249. package/build/client/_app/immutable/chunks/s-K2chw6.js.br +0 -0
  250. package/build/client/_app/immutable/chunks/s-K2chw6.js.gz +0 -0
  251. package/build/client/_app/immutable/entry/app.BBGxwcK8.js +0 -2
  252. package/build/client/_app/immutable/entry/app.BBGxwcK8.js.br +0 -0
  253. package/build/client/_app/immutable/entry/app.BBGxwcK8.js.gz +0 -0
  254. package/build/client/_app/immutable/entry/start.Cu5iaSNG.js +0 -1
  255. package/build/client/_app/immutable/entry/start.Cu5iaSNG.js.br +0 -0
  256. package/build/client/_app/immutable/entry/start.Cu5iaSNG.js.gz +0 -0
  257. package/build/client/_app/immutable/nodes/0.OznVrT12.js +0 -1
  258. package/build/client/_app/immutable/nodes/0.OznVrT12.js.br +0 -0
  259. package/build/client/_app/immutable/nodes/0.OznVrT12.js.gz +0 -0
  260. package/build/client/_app/immutable/nodes/1.BnbJyDlh.js +0 -1
  261. package/build/client/_app/immutable/nodes/1.BnbJyDlh.js.br +0 -2
  262. package/build/client/_app/immutable/nodes/1.BnbJyDlh.js.gz +0 -0
  263. package/build/client/_app/immutable/nodes/10.4wMOwZtW.js +0 -3
  264. package/build/client/_app/immutable/nodes/10.4wMOwZtW.js.br +0 -0
  265. package/build/client/_app/immutable/nodes/10.4wMOwZtW.js.gz +0 -0
  266. package/build/client/_app/immutable/nodes/11.IKyzjYy6.js.br +0 -0
  267. package/build/client/_app/immutable/nodes/11.IKyzjYy6.js.gz +0 -0
  268. package/build/client/_app/immutable/nodes/12.BYM9mUpP.js +0 -1
  269. package/build/client/_app/immutable/nodes/12.BYM9mUpP.js.br +0 -0
  270. package/build/client/_app/immutable/nodes/12.BYM9mUpP.js.gz +0 -0
  271. package/build/client/_app/immutable/nodes/13.ndMcrfHr.js +0 -66
  272. package/build/client/_app/immutable/nodes/13.ndMcrfHr.js.br +0 -0
  273. package/build/client/_app/immutable/nodes/13.ndMcrfHr.js.gz +0 -0
  274. package/build/client/_app/immutable/nodes/2.DqvBb3C7.js.br +0 -0
  275. package/build/client/_app/immutable/nodes/2.DqvBb3C7.js.gz +0 -0
  276. package/build/client/_app/immutable/nodes/3.27swwcG4.js.br +0 -0
  277. package/build/client/_app/immutable/nodes/3.27swwcG4.js.gz +0 -0
  278. package/build/client/_app/immutable/nodes/4.CcholrFe.js.br +0 -0
  279. package/build/client/_app/immutable/nodes/4.CcholrFe.js.gz +0 -0
  280. package/build/client/_app/immutable/nodes/5.CzudN9q-.js.br +0 -0
  281. package/build/client/_app/immutable/nodes/5.CzudN9q-.js.gz +0 -0
  282. package/build/client/_app/immutable/nodes/7.C560Uxhw.js.br +0 -0
  283. package/build/client/_app/immutable/nodes/7.C560Uxhw.js.gz +0 -0
  284. package/build/client/_app/immutable/nodes/8.BEOgol-D.js.br +0 -0
  285. package/build/client/_app/immutable/nodes/8.BEOgol-D.js.gz +0 -0
  286. package/build/client/_app/immutable/nodes/9.BmG9LqpS.js.br +0 -0
  287. package/build/client/_app/immutable/nodes/9.BmG9LqpS.js.gz +0 -0
  288. package/build/server/chunks/0-DgHP79Ti.js +0 -22
  289. package/build/server/chunks/1--T1OTbjT.js +0 -9
  290. package/build/server/chunks/10-D1OhJt-m.js.map +0 -1
  291. package/build/server/chunks/JsonValue-Cexm3jGT.js.map +0 -1
  292. package/build/server/chunks/Modal-BzZ9u6V6.js.map +0 -1
  293. package/build/server/chunks/PrettyJson-tOt0PqjF.js.map +0 -1
  294. package/build/server/chunks/_layout.svelte-Dji2JJ9X.js.map +0 -1
  295. package/build/server/chunks/_page.svelte-CJ5HzoD0.js +0 -203
  296. package/build/server/chunks/_page.svelte-CJ5HzoD0.js.map +0 -1
  297. package/build/server/chunks/_page.svelte-D-23v2Aa.js.map +0 -1
  298. package/build/server/chunks/mongo-BHk5yAj9.js.map +0 -1
  299. package/build/server/chunks/remote-xxtqbu-ETLGkdRu.js.map +0 -1
  300. package/build/server/chunks/servers.remote-CGies_Na.js.map +0 -1
@@ -1 +0,0 @@
1
- import"../chunks/BPbCnJEo.js";import{p as Ht,Z as le,f as v,s as d,d as o,r,b as c,c as Jt,e as nt,a as Z,u as C,h as e,t as F,i as h,B as Re,j as i,_ as Lt,n as Me,am as $t,b9 as Sa,k as Tt}from"../chunks/reNJcONQ.js";import{d as Kt,s as P}from"../chunks/ByCRZ7zS.js";import{a as Na,f as ja}from"../chunks/Dn0_-jEe.js";import{i as x}from"../chunks/0oUK0vJa.js";import{e as it,b as be,s as me,n as B,a as Bt,i as At}from"../chunks/Dkr5ZtQR.js";import{a as Rt}from"../chunks/BXUq66wC.js";import{a as We,b as rt}from"../chunks/UJuWD2W4.js";import{g as Pa,h as Oa,j as Ma,k as Ea,l as Fa,P as qe,m as Ca,n as Da}from"../chunks/s-K2chw6.js";import{h as Ia,j as Ua,k as La}from"../chunks/Z2a-si5C.js";import{p as Ee}from"../chunks/DkI4PMxL.js";import{j as qt,J as $a}from"../chunks/DmXOK2q9.js";import{M as Wt}from"../chunks/BxoAxRg6.js";import{p as lt}from"../chunks/BGXqurs_.js";const Ta=async l=>({...l.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"}]}),rr=Object.freeze(Object.defineProperty({__proto__:null,load:Ta},Symbol.toStringTag,{value:"Module"}));function Ba(l,t){if(l.length<t.length&&t.endsWith(l))return l;if(t.length<l.length&&l.endsWith(t))return t;let a="",s=l.length-1,f=t.length-1;for(;s>=0&&f>=0&&l[s]===t[f];)a=l.slice(s),s--,f--;return a}function Aa(l,t){if(!l||t.length===0)return null;let a=null,s=0;for(const f of t){const S=Ba(l,f);S.length>s?(s=S.length,a=f):S.length===s&&(a=null)}return a}function Ra(l,t,a){t(Object.keys(e(a)).filter(s=>e(a)[s]))}var qa=v('<div class="loading-message svelte-14baj27">Loading nodes...</div>'),Wa=v('<div class="no-nodes-message svelte-14baj27">No nodes found. Click "Fetch Usage" to load nodes.</div>'),za=v('<span class="primary-badge svelte-14baj27">PRIMARY</span>'),Ha=v('<label class="checkbox-label svelte-14baj27"><input type="checkbox" class="svelte-14baj27"/> <span class="node-name svelte-14baj27"> <!></span></label>'),Ja=v('<div class="selector-options svelte-14baj27"></div>'),Ka=v('<div class="replica-set-selector svelte-14baj27"><div class="selector-header svelte-14baj27"><span class="selector-title svelte-14baj27">Replica Set Nodes</span> <span class="selector-subtitle svelte-14baj27">Select specific nodes to fetch index stats from</span></div> <!></div>');function Va(l,t){Ht(t,!0);let a=lt(t,"availableNodes",27,()=>le([])),s=lt(t,"selectedNodes",31,()=>le([])),f=lt(t,"loading",3,!1),S=lt(t,"primaryNode",3,null),U=C(()=>Object.fromEntries(a().map(L=>[L,s().includes(L)])));const W=C(()=>!S()||a().length===0?null:Aa(S(),a()));var O=Ka(),D=d(o(O),2);{var I=L=>{var $=qa();c(L,$)},G=L=>{var $=nt(),Fe=Z($);{var ze=H=>{var z=Wa();c(H,z)},ge=H=>{var z=Ja();it(z,20,a,ve=>ve,(ve,Q)=>{var he=Ha(),we=o(he);be(we),we.__change=[Ra,s,U];var xe=d(we,2),X=o(xe),ct=d(X);{var ye=Y=>{var ke=za();c(Y,ke)};x(ct,Y=>{Q===e(W)&&Y(ye)})}r(xe),r(he),F(()=>{me(xe,"title",Q),P(X,`${Q??""} `)}),We(we,()=>e(U)[Q],Y=>e(U)[Q]=Y),c(ve,he)}),r(z),c(H,z)};x(Fe,H=>{a().length===0?H(ze):H(ge,!1)},!0)}c(L,$)};x(D,L=>{f()?L(I):L(G,!1)})}r(O),c(l,O),Jt()}Kt(["change"]);function ot(l,t=3){if(l===0)return"0";const a=Math.abs(l),s=l<0?"-":"";if(a>=1e9){const f=a/1e9;return`${s}${f.toPrecision(t)}B`}else if(a>=1e6){const f=a/1e6;return`${s}${f.toPrecision(t)}M`}else if(a>=1e3){const f=a/1e3;return`${s}${f.toPrecision(t)}k`}else return`${s}${a.toPrecision(Math.min(t,Math.ceil(Math.log10(a+1))))}`}function Ya(l){if(!l)return"";const a=new Date().getTime()-l.getTime(),s=Math.floor(a/1e3),f=Math.floor(s/60),S=Math.floor(f/60);return S>0?`${S}h ${f%60}m ago`:f>0?`${f}m ${s%60}s ago`:`${s}s ago`}function Vt(l){if(l.length===0||l.length===1)return"";let t=l[0];for(let a=1;a<l.length;a++)for(;l[a].indexOf(t)!==0;)if(t=t.substring(0,t.length-1),t==="")return"";return t}function Za(l){if(l.length===0||l.length===1)return"";const t=l.map(s=>s.split("").reverse().join(""));return Vt(t).split("").reverse().join("")}function Ga(l,t,a){if(!t&&!a)return l;let s=l;if(t&&s.startsWith(t)&&(s=s.slice(t.length)),a&&s.endsWith(a)&&(s=s.slice(0,-a.length)),s.length===0)return l;const f=t.length>0,S=a.length>0;return f&&S?`…${s}…`:f?`…${s}`:S?`${s}…`:s}function Qa(l){if(l.length<=1)return Object.fromEntries(l.map(s=>[s,s]));const t=Vt(l),a=Za(l);return Object.fromEntries(l.map(s=>[s,Ga(s,t,a)]))}function Xa(l,t){return Object.fromEntries(Object.entries(l).filter(([a])=>!t.includes(a)))}function zt(l){let t=0;for(const a of l)t+=a;return t}function es(l,t,a,s,f,S,U,W,O){i(t,'{ "fieldName": 1 }'),i(a,""),i(s,!1),i(f,!1),i(S,""),i(U,void 0),i(W,!1),i(O,!0)}async function ts(l,t,a,s,f,S,U,W,O,D){const{server:I,database:G,collection:L}=Ee.params;if(!(!I||!G||!L)){i(t,!0);try{await Fa({server:I,database:G,collection:L,keys:e(a),name:e(s)||void 0,unique:e(f)||void 0,sparse:e(S)||void 0,partialFilterExpression:e(U)||void 0,expireAfterSeconds:e(W),background:e(O)||void 0}),B.notifySuccess("Index created successfully"),D(),await La("app:indexes")}catch($){B.notifyError($,"Failed to create index")}finally{i(t,!1)}}}async function as(l,t,a,s,f){if(!e(t))return;const{server:S,database:U,collection:W}=Ee.params;if(!S||!U||!W)return;e(a).add(e(t)),i(a,e(a),!0);const O=e(t);try{if(await Ea({server:S,database:U,collection:W,index:O}),e(s)&&e(s).data){const D=e(s).data.filter(I=>I.name!==O);i(s,{...e(s),data:D},!0)}B.notifySuccess(`Index "${O}" dropped successfully`),f()}catch(D){B.notifyError(D,"Failed to drop index")}finally{e(a).delete(O),i(a,e(a),!0)}}var ss=v('<div class="p-4 svelte-l3ef1w"><p class="error svelte-l3ef1w"> </p></div>'),rs=v('<button class="btn btn-success btn-sm flex items-center svelte-l3ef1w" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-4 h-4 inline mr-1 svelte-l3ef1w"><path d="M12 5v14M5 12h14" class="svelte-l3ef1w"></path></svg> Create Index</button>'),ls=(l,t)=>i(t,!e(t)),os=v('<div class="text-center p-4 svelte-l3ef1w" style="color: var(--text-darker)">No indexes found</div>'),ns=(l,t)=>t(),is=v('<label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Aggregate usage</span></label>'),cs=v('<div class="mb-4 svelte-l3ef1w"><!> <div class="mt-3 flex gap-3 items-center flex-wrap svelte-l3ef1w"><button><!></button> <!></div></div>'),ds=v('<th style="width: 150px" class="svelte-l3ef1w">Actions</th>'),vs=v('<span class="index-key svelte-l3ef1w"> </span>'),fs=v('<div class="flex flex-wrap gap-2 svelte-l3ef1w"></div>'),us=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),ps=v('<span class="badge badge-building svelte-l3ef1w">building</span>'),_s=v('<span class="badge badge-hidden svelte-l3ef1w">hidden</span>'),bs=v('<span class="badge badge-unique svelte-l3ef1w">unique</span>'),ms=v('<span class="badge badge-sparse svelte-l3ef1w">sparse</span>'),gs=v('<span class="badge badge-partial svelte-l3ef1w">partial</span>'),hs=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),ws=v('<span class="text-sm whitespace-nowrap svelte-l3ef1w"> </span>'),xs=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),ys=v('<span class="increment-badge svelte-l3ef1w"> </span>'),ks=v('<div class="svelte-l3ef1w"> <!> <span class="text-xs svelte-l3ef1w" style="color: var(--text-darker)"> </span></div>'),Ss=v('<span class="increment-badge svelte-l3ef1w"> </span>'),Ns=v('<div class="separate-stat svelte-l3ef1w"><span class="stat-host svelte-l3ef1w"> </span> <span class="stat-value svelte-l3ef1w"> <!></span></div>'),js=v('<div class="svelte-l3ef1w"> </div>'),Ps=v('<div class="text-sm mt-1 svelte-l3ef1w"><!></div>'),Os=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),Ms=(l,t,a)=>t(e(a).name,e(a).hidden),Es=(l,t,a)=>t(e(a).name),Fs=v('<div class="flex gap-2 hidden group-hover:flex -my-2 svelte-l3ef1w"><button class="btn btn-outline-light btn-sm svelte-l3ef1w"> </button> <button class="btn btn-outline-danger btn-sm svelte-l3ef1w">Drop</button></div>'),Cs=v('<td class="svelte-l3ef1w"><!></td>'),Ds=v('<tr><td class="name-cell svelte-l3ef1w"><span class="font-mono text-sm index-name svelte-l3ef1w"> </span></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><div class="flex flex-wrap gap-2 svelte-l3ef1w"><!> <!> <!> <!> <!> <!></div></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><details class="cursor-pointer svelte-l3ef1w"><summary class="details-link svelte-l3ef1w">View full</summary> <div class="details-content svelte-l3ef1w"><!></div></details></td><!></tr>'),Is=v('<div class="table-wrapper svelte-l3ef1w"><table class="table svelte-l3ef1w"><thead class="svelte-l3ef1w"><tr class="svelte-l3ef1w"><th class="name-column svelte-l3ef1w">Name</th><th class="svelte-l3ef1w">Keys</th><th class="svelte-l3ef1w">Properties</th><th class="shrink-column svelte-l3ef1w">Size</th><th class="shrink-column svelte-l3ef1w">Usage</th><th style="min-width: 300px" class="svelte-l3ef1w">Details</th><!></tr></thead><tbody class="svelte-l3ef1w"></tbody></table></div>'),Us=v("<!> <!>",1),Ls=v('<div class="mb-4 flex gap-3 svelte-l3ef1w"><!> <button class="btn btn-primary btn-sm svelte-l3ef1w"> </button></div> <!>',1),$s=v('<div class="p-4 svelte-l3ef1w"><p class="error svelte-l3ef1w"> </p></div>'),Ts=v('<div class="loading svelte-l3ef1w">Loading indexes...</div>'),Bs=v('<button class="btn btn-default btn-sm svelte-l3ef1w">Cancel</button> <button class="btn btn-danger btn-sm svelte-l3ef1w">Drop Index</button>',1),As=v('<p class="svelte-l3ef1w">Are you sure you want to drop the index <strong class="svelte-l3ef1w"> </strong>?</p> <p class="text-sm mt-2 svelte-l3ef1w" style="color: var(--text-darker)">This action cannot be undone. The index will need to be recreated if needed again.</p>',1),Rs=v('<button class="btn btn-default btn-sm svelte-l3ef1w">Cancel</button> <button class="btn btn-success btn-sm svelte-l3ef1w"> </button>',1),qs=v('<div class="space-y-4 svelte-l3ef1w"><div class="svelte-l3ef1w"><label for="index-keys" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Index Keys (JSON) <span style="color: var(--error);" class="svelte-l3ef1w">*</span></label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Define the fields to index. Use 1 for ascending, -1 for descending. Example: <code class="svelte-l3ef1w"></code></p> <textarea id="index-keys" rows="3" class="w-full p-3 rounded border border-[var(--border-color)] bg-[var(--color-1)] font-mono text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"></textarea></div> <div class="svelte-l3ef1w"><label for="index-name" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Index Name (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Leave empty to auto-generate based on fields</p> <input id="index-name" type="text" placeholder="e.g., user_email_idx" class="w-full p-2 rounded border border-[var(--border-color)] bg-[var(--color-1)] text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"/></div> <div class="grid grid-cols-2 gap-3 svelte-l3ef1w"><label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Unique</span></label> <label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Sparse</span></label> <label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Background</span></label></div> <div class="svelte-l3ef1w"><label for="index-partial" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Partial Filter Expression (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Only index documents that match this filter. Example: <code class="svelte-l3ef1w"></code></p> <textarea id="index-partial" rows="2" class="w-full p-3 rounded border border-[var(--border-color)] bg-[var(--color-1)] font-mono text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"></textarea></div> <div class="svelte-l3ef1w"><label for="index-ttl" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">TTL - Expire After Seconds (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Automatically delete documents after specified seconds (for TTL indexes)</p> <input id="index-ttl" type="number" placeholder="e.g., 3600" min="0" class="w-full p-2 rounded border border-[var(--border-color)] bg-[var(--color-1)] text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"/></div></div>'),Ws=v("<!> <!> <!>",1);function lr(l,t){Ht(t,!0);const a=C(()=>t.data.readOnly);let s=h(null),f=h(le(new Set)),S=h(!1),U=h(null),W=h(!1),O=h(!1),D=h(le([])),I=h(le([])),G=h(!1),L=h(null),$=h(le({})),Fe=h(le({})),ze=h(null),ge=h(!1),H=h(!1),z=h(!1),ve=h(!1),Q=h(le([])),he=h(le(new Date));const we=C(()=>{const p=[...new Set(Object.values(e($)).map(b=>b.host))];return Qa(p)}),xe=C(()=>e(I).length!==e(Q).length||!e(I).every(p=>e(Q).includes(p))),X=C(()=>Object.keys(e(Fe)).length>0&&!e(xe)),ct=C(()=>(e(he),Ya(e(ze))));Re(()=>{const p=setInterval(()=>{i(he,new Date,!0)},1e3);return()=>clearInterval(p)});let ye=h('{ "fieldName": 1 }'),Y=h(""),ke=h(!1),He=h(!1),Je=h(""),Ke=h(void 0),Ve=h(!1);Re(()=>{t.data.indexes.then(p=>{e(s)||i(s,p,!0)})});const Yt=C(()=>e(s)||t.data.indexes);async function Zt(p,b){const{server:w,database:_,collection:m}=Ee.params;if(!(!w||!_||!m)){e(f).add(p),i(f,e(f),!0);try{const y={server:w,database:_,collection:m,index:p};if(b?await Ca(y):await Da(y),e(s)&&e(s).data){const M=e(s).data.map(j=>j.name===p?{...j,hidden:!b}:j);i(s,{...e(s),data:M},!0)}B.notifySuccess(`Index ${b?"unhidden":"hidden"} successfully`)}catch(y){B.notifyError(y,`Failed to ${b?"unhide":"hide"} index`)}finally{e(f).delete(p),i(f,e(f),!0)}}}function dt(){i(W,!1)}function Gt(p){i(U,p,!0),i(S,!0)}function vt(){i(S,!1),i(U,null)}async function kt(){const{server:p,database:b,collection:w}=Ee.params;if(!(!p||!b||!w)){i(G,!0);try{const _=await Pa({server:p});if(_.error)B.notifyError(_.error,"Failed to load nodes"),i(D,[],!0);else if(i(D,_.data,!0),e(D).length>0){B.notifySuccess(`Found ${e(D).length} node(s)`);const m=await Oa({server:p,database:b,collection:w});!m.error&&m.data&&i(L,m.data,!0)}}catch(_){B.notifyError(_,"Failed to load nodes"),i(D,[],!0)}finally{i(G,!1)}}}async function St(p=!0){const{server:b,database:w,collection:_}=Ee.params;if(!b||!w||!_)return;if(e(I).length===0){B.notifyError("No nodes selected","Please select at least one node");return}i(ge,!0);const m=e(xe)||!e(X);try{const y=await Ma({server:b,database:w,collection:_,nodes:e(I)});y.error&&B.notifyError(y.error,"Failed to fetch stats from some nodes"),i($,y.data,!0),i(Q,[...e(I)],!0),m&&(i(Fe,{...e($)},!0),i(ze,new Date,!0));const M=Object.keys(e($)).length;if(M===0)B.notifyError("No stats found","No index stats found for selected nodes");else{const j=m?`Fetched stats from ${M} index/host combination(s)`:`Updated stats from ${M} index/host combination(s)`;B.notifySuccess(j)}if(p){const j=new URL(window.location.href);j.searchParams.set("nodes",e(I).join(",")),e(z)&&j.searchParams.set("aggregate","true"),Ua(j.toString(),{})}}catch(y){B.notifyError(y,"Failed to fetch multi-node usage")}finally{i(ge,!1)}}Re(()=>{e(O)&&e(D).length===0&&!e(G)&&kt()}),Re(()=>{if(!e(ve)){const p=new URL(Ee.url),b=p.searchParams.get("nodes"),w=p.searchParams.get("aggregate");if(b){const _=b.split(",").filter(m=>m.length>0);_.length>0&&(i(O,!0),i(I,_,!0),e(D).length===0&&kt().then(()=>{_.length>0&&St(!1)}))}w!==null&&i(z,w==="true"),i(ve,!0)}}),Re(()=>{if(e(ve)&&Object.keys(e($)).length>0){const p=new URL(window.location.href);e(z)?p.searchParams.set("aggregate","true"):p.searchParams.delete("aggregate"),Ia(p.toString(),{})}});var Nt=Ws(),jt=Z(Nt);Na(jt,()=>e(Yt),p=>{qe(p,{title:"Indexes",children:(b,w)=>{var _=Ts();c(b,_)},$$slots:{default:!0}})},(p,b)=>{var w=nt(),_=Z(w);{var m=M=>{qe(M,{title:"Indexes",children:(j,oe)=>{var ee=ss(),ne=o(ee),te=o(ne,!0);r(ne),r(ee),F(()=>P(te,e(b).error)),c(j,ee)},$$slots:{default:!0}})},y=M=>{var j=Ls(),oe=Z(j),ee=o(oe);{var ne=A=>{var J=rs();J.__click=[es,ye,Y,ke,He,Je,Ke,Ve,W],c(A,J)};x(ee,A=>{e(a)||A(ne)})}var te=d(ee,2);te.__click=[ls,O];var Ye=o(te);r(te),r(oe);var Ce=d(oe,2);{var Ze=A=>{qe(A,{title:"Indexes",children:(J,fe)=>{var De=os();c(J,De)},$$slots:{default:!0}})},Ge=A=>{var J=Us(),fe=Z(J);{var De=ie=>{var ue=cs(),k=o(ue);Va(k,{get loading(){return e(G)},get primaryNode(){return e(L)},get availableNodes(){return e(D)},set availableNodes(N){i(D,N,!0)},get selectedNodes(){return e(I)},set selectedNodes(N){i(I,N,!0)}});var Ie=d(k,2),K=o(Ie);let Ue;K.__click=[ns,St];var ft=o(K);{var ut=N=>{var T=Tt();F(()=>P(T,e(X)?"Checking Δ...":"Fetching...")),c(N,T)},Qe=N=>{var T=Tt();F(()=>P(T,e(X)?"Δ Usage":"Fetch Usage")),c(N,T)};x(ft,N=>{e(ge)?N(ut):N(Qe,!1)})}r(K);var ae=d(K,2);{var g=N=>{var T=is(),Le=o(T);be(Le),Me(2),r(T),We(Le,()=>e(z),$e=>i(z,$e)),c(N,T)};x(ae,N=>{Object.keys(e($)).length>0&&N(g)})}r(Ie),r(ue),F(N=>{Ue=Bt(K,1,"btn btn-sm svelte-l3ef1w",null,Ue,N),K.disabled=e(ge)||e(I).length===0,me(K,"title",e(X)?`Baseline from ${e(ct)}`:"Fetch index usage statistics")},[()=>({"btn-primary":!e(X),"btn-outline-primary":e(X)})]),c(ie,ue)};x(fe,ie=>{e(O)&&ie(De)})}var Se=d(fe,2);qe(Se,{title:"Indexes",children:(ie,ue)=>{var k=Is(),Ie=o(k),K=o(Ie),Ue=o(K),ft=d(o(Ue),6);{var ut=ae=>{var g=ds();c(ae,g)};x(ft,ae=>{e(a)||ae(ut)})}r(Ue),r(K);var Qe=d(K);it(Qe,21,()=>e(b).data,ae=>ae.name,(ae,g)=>{const N=C(()=>e(f).has(e(g).name));var T=Ds();let Le;var $e=o(T),pt=o($e),Xt=o(pt,!0);r(pt),r($e);var _t=d($e),ea=o(_t);{var ta=n=>{var u=fs();it(u,21,()=>Object.entries(e(g).key),At,(ce,se)=>{var de=C(()=>Sa(e(se),2));let pe=()=>e(de)[0],V=()=>e(de)[1];var E=vs(),R=o(E);r(E),F(()=>P(R,`${pe()??""}: ${(V()===1?"↑":V()===-1?"↓":V())??""}`)),c(ce,E)}),r(u),c(n,u)},aa=n=>{var u=us();c(n,u)};x(ea,n=>{e(g).key?n(ta):n(aa,!1)})}r(_t);var bt=d(_t),Ot=o(bt),Mt=o(Ot);{var sa=n=>{var u=ps();c(n,u)};x(Mt,n=>{e(g).stats?.building&&n(sa)})}var Et=d(Mt,2);{var ra=n=>{var u=_s();c(n,u)};x(Et,n=>{e(g).hidden&&n(ra)})}var Ft=d(Et,2);{var la=n=>{var u=bs();c(n,u)};x(Ft,n=>{e(g).unique&&n(la)})}var Ct=d(Ft,2);{var oa=n=>{var u=ms();c(n,u)};x(Ct,n=>{e(g).sparse&&n(oa)})}var Dt=d(Ct,2);{var na=n=>{var u=gs();c(n,u)};x(Dt,n=>{e(g).partialFilterExpression&&n(na)})}var ia=d(Dt,2);{var ca=n=>{var u=hs();c(n,u)};x(ia,n=>{!e(g).stats?.building&&!e(g).hidden&&!e(g).unique&&!e(g).sparse&&!e(g).partialFilterExpression&&n(ca)})}r(Ot),r(bt);var mt=d(bt),da=o(mt);{var va=n=>{var u=ws(),ce=o(u,!0);r(u),F(se=>P(ce,se),[()=>ja(e(g).size)]),c(n,u)},fa=n=>{var u=xs();c(n,u)};x(da,n=>{e(g).size?n(va):n(fa,!1)})}r(mt);var gt=d(mt),ua=o(gt);{var pa=n=>{const u=C(()=>Object.entries(e($)).filter(([E])=>E.startsWith(`${e(g).name}::`)).map(([E,R])=>({key:E,stats:R}))),ce=C(()=>Object.fromEntries(Object.entries(e(Fe)).filter(([E])=>E.startsWith(`${e(g).name}::`))));var se=Ps(),de=o(se);{var pe=E=>{var R=nt(),wt=Z(R);{var xt=Ne=>{const je=C(()=>zt(e(u).map(q=>q.stats.ops))),Xe=C(()=>zt(Object.values(e(ce)).map(q=>q.ops))),Te=C(()=>e(Xe)>0?e(je)-e(Xe):0);var _e=ks(),et=o(_e),re=d(et);{var tt=q=>{var Be=ys(),at=o(Be);r(Be),F(st=>P(at,`+${st??""}`),[()=>ot(e(Te))]),c(q,Be)};x(re,q=>{e(Te)>0&&q(tt)})}var Pe=d(re,2),Oe=o(Pe);r(Pe),r(_e),F(q=>{me(_e,"title",`Aggregated across ${e(u).length??""} node(s)`),P(et,`${q??""} `),P(Oe,`(${e(u).length??""} node${e(u).length>1?"s":""})`)},[()=>e(Te)>0?ot(e(je)):e(je).toLocaleString()]),c(Ne,_e)},ha=Ne=>{var je=nt(),Xe=Z(je);it(Xe,17,()=>e(u),At,(Te,_e)=>{let et=()=>e(_e).key,re=()=>e(_e).stats;const tt=C(()=>e(ce)[et()]?.ops||0),Pe=C(()=>e(tt)>0?re().ops-e(tt):0);var Oe=Ns(),q=o(Oe),Be=o(q);r(q);var at=d(q,2),st=o(at),wa=d(st);{var xa=Ae=>{var yt=Ss(),ya=o(yt);r(yt),F(ka=>P(ya,`+${ka??""}`),[()=>ot(e(Pe))]),c(Ae,yt)};x(wa,Ae=>{e(Pe)>0&&Ae(xa)})}r(at),r(Oe),F(Ae=>{me(Oe,"title",re().host),P(Be,`${(e(we)[re().host]||re().host)??""}:`),P(st,`${Ae??""} `)},[()=>e(Pe)>0?ot(re().ops):re().ops.toLocaleString()]),c(Te,Oe)}),c(Ne,je)};x(wt,Ne=>{e(z)?Ne(xt):Ne(ha,!1)})}c(E,R)},V=E=>{var R=js(),wt=o(R,!0);r(R),F(xt=>P(wt,xt),[()=>e(g).stats.ops.toLocaleString()]),c(E,R)};x(de,E=>{e(u).length>0?E(pe):E(V,!1)})}r(se),c(n,se)},_a=n=>{var u=Os();c(n,u)};x(ua,n=>{e(g).stats?n(pa):n(_a,!1)})}r(gt);var ht=d(gt),It=o(ht),Ut=d(o(It),2),ba=o(Ut);{let n=C(()=>Xa(e(g),["stats"]));$a(ba,{get value(){return e(n)},collapsed:!1})}r(Ut),r(It),r(ht);var ma=d(ht);{var ga=n=>{var u=Cs(),ce=o(u);{var se=de=>{var pe=Fs(),V=o(pe);V.__click=[Ms,Zt,g];var E=o(V,!0);r(V);var R=d(V,2);R.__click=[Es,Gt,g],r(pe),F(()=>{V.disabled=e(N),P(E,e(g).hidden?"Unhide":"Hide"),R.disabled=e(N)}),c(de,pe)};x(ce,de=>{e(g).name!=="_id_"&&de(se)})}r(u),c(n,u)};x(ma,n=>{e(a)||n(ga)})}r(T),F(n=>{Le=Bt(T,1,"group svelte-l3ef1w",null,Le,n),me(pt,"title",e(g).name),P(Xt,e(g).name)},[()=>({"opacity-50":e(N)})]),c(ae,T)}),r(Qe),r(Ie),r(k),c(ie,k)},$$slots:{default:!0}}),c(A,J)};x(Ce,A=>{e(b).data.length===0?A(Ze):A(Ge,!1)})}F(()=>P(Ye,`${e(O)?"Hide":"Show"} Multi-Node Usage`)),c(M,j)};x(_,M=>{e(b).error?M(m):M(y,!1)})}c(p,w)},(p,b)=>{qe(p,{title:"Indexes",children:(w,_)=>{var m=$s(),y=o(m),M=o(y);r(y),r(m),F(()=>P(M,`Error loading indexes: ${e(b)??""}`)),c(w,m)},$$slots:{default:!0}})});var Pt=d(jt,2);Wt(Pt,{get show(){return e(S)},onclose:vt,footer:b=>{var w=Bs(),_=Z(w);_.__click=vt;var m=d(_,2);m.__click=[as,U,f,s,vt],c(b,w)},children:(b,w)=>{var _=As(),m=Z(_),y=d(o(m)),M=o(y,!0);r(y),Me(),r(m),Me(2),F(()=>P(M,e(U))),c(b,_)},$$slots:{footer:!0,default:!0}});var Qt=d(Pt,2);Wt(Qt,{get show(){return e(W)},onclose:dt,title:"Create Index",footer:b=>{var w=Rs(),_=Z(w);_.__click=dt;var m=d(_,2);m.__click=[ts,H,ye,Y,ke,He,Je,Ke,Ve,dt];var y=o(m,!0);r(m),F(()=>{_.disabled=e(H),m.disabled=e(H),P(y,e(H)?"Creating...":"Create Index")}),c(b,w)},children:(b,w)=>{var _=qs(),m=o(_),y=d(o(m),2),M=d(o(y));M.textContent='{ "fieldName": 1 }',r(y);var j=d(y,2);$t(j),me(j,"placeholder",'{"fieldName": 1}'),Lt(()=>rt(j,()=>e(ye),k=>i(ye,k))),Rt(j,k=>qt?.(k)),r(m);var oe=d(m,2),ee=d(o(oe),4);be(ee),r(oe);var ne=d(oe,2),te=o(ne),Ye=o(te);be(Ye),Me(2),r(te);var Ce=d(te,2),Ze=o(Ce);be(Ze),Me(2),r(Ce);var Ge=d(Ce,2),A=o(Ge);be(A),Me(2),r(Ge),r(ne);var J=d(ne,2),fe=d(o(J),2),De=d(o(fe));De.textContent='{ "status": "active" }',r(fe);var Se=d(fe,2);$t(Se),me(Se,"placeholder",'{"status": "active"}'),Lt(()=>rt(Se,()=>e(Je),k=>i(Je,k))),Rt(Se,k=>qt?.(k)),r(J);var ie=d(J,2),ue=d(o(ie),4);be(ue),r(ie),r(_),rt(ee,()=>e(Y),k=>i(Y,k)),We(Ye,()=>e(ke),k=>i(ke,k)),We(Ze,()=>e(He),k=>i(He,k)),We(A,()=>e(Ve),k=>i(Ve,k)),rt(ue,()=>e(Ke),k=>i(Ke,k)),c(b,_)},$$slots:{footer:!0,default:!0}}),c(l,Nt),Jt()}Kt(["click"]);export{lr as component,rr as universal};
@@ -1,66 +0,0 @@
1
- import"../chunks/BPbCnJEo.js";import{m as Te,o as ve,_ as Fe,y as Se,a3 as Ee,a4 as qe,a5 as De,a6 as Ne,p as ze,Z as Ge,f as u,a as pe,b as c,c as He,s as r,d as o,t as q,j as v,i as V,r as a,n as fe,h as n,u as Be}from"../chunks/reNJcONQ.js";import{d as Le,s as te}from"../chunks/ByCRZ7zS.js";import{i as T}from"../chunks/0oUK0vJa.js";import{r as Qe,s as Re,e as ae,i as ge,b as oe,n as B}from"../chunks/Dkr5ZtQR.js";import{b as re}from"../chunks/UJuWD2W4.js";import{P as Ue,u as We}from"../chunks/s-K2chw6.js";function ye(t,e,l=!1){if(t.multiple){if(e==null)return;if(!Ee(e))return qe();for(var i of t.options)i.selected=e.includes(X(i));return}for(i of t.options){var s=X(i);if(De(s,e)){i.selected=!0;return}}(!l||e!==void 0)&&(t.selectedIndex=-1)}function Ze(t){var e=new MutationObserver(()=>{ye(t,t.__value)});e.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),Ne(()=>{e.disconnect()})}function he(t,e,l=e){var i=new WeakSet,s=!0;Te(t,"change",d=>{var g=d?"[selected]":":checked",m;if(t.multiple)m=[].map.call(t.querySelectorAll(g),X);else{var L=t.querySelector(g)??t.querySelector("option:not([disabled])");m=L&&X(L)}l(m),ve!==null&&i.add(ve)}),Fe(()=>{var d=e();if(t===document.activeElement){var g=Se??ve;if(i.has(g))return}if(ye(t,d,s),s&&d===void 0){var m=t.querySelector(":checked");m!==null&&(d=X(m),l(d))}t.__value=d,s=!1}),Ze(t)}function X(t){return"__value"in t?t.__value:t.value}const Je=async t=>({...t.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"}]}),Ft=Object.freeze(Object.defineProperty({__proto__:null,load:Je},Symbol.toStringTag,{value:"Module"}));async function Ke(t,e){try{await navigator.clipboard.writeText(n(e)),B.notifySuccess("AI prompt copied to clipboard")}catch(l){B.notifyError(l,"Failed to copy to clipboard")}}function Ve(t,e,l,i,s,d){if(!n(e).trim()){B.notifyError("Field path is required");return}if(!n(l).trim()){B.notifyError("Target collection is required");return}i.push({fieldPath:n(e).trim(),targets:[{collection:n(l).trim(),on:n(s).trim()||"_id"}]}),v(e,""),v(l,""),v(s,"_id"),v(d,!1)}function Xe(t,e,l,i,s){v(e,""),v(l,""),v(i,"_id"),v(s,!1)}async function Ye(t,e,l){try{const i={};for(const s of e)if(s.fieldPath.trim()){const d=s.targets.filter(g=>g.collection.trim()&&g.on.trim());d.length>0&&(i[s.fieldPath]=d.length===1?d[0]:d)}await We({server:l.data.server,database:l.data.database,collection:"mongoku.mappings",document:l.data.collection,value:{mappings:i,_id:l.data.collection},partial:!1,upsert:!0}),B.notifySuccess("Mappings saved successfully")}catch(i){console.error("Error saving mappings:",i),B.notifyError(i,"Failed to save mappings")}}var $e=(t,e)=>v(e,!0),et=u('<button class="btn btn-success btn-sm -my-2 hover:bg-[var(--button-success-l)]">Save</button>'),tt=u('<button class="btn btn-outline-light btn-sm -my-2 hover:bg-[var(--color-3)]">🤖 AI Helper</button> <!>',1),at=u('<button class="btn btn-outline-danger btn-sm mt-6 hover:bg-[rgba(255,59,48,0.1)]">Remove Mapping</button>'),ot=u("<option> </option>"),rt=u('<button class="btn btn-outline-danger btn-sm mt-5 hover:bg-[rgba(255,59,48,0.1)]">×</button>'),lt=u('<div class="flex items-start gap-2 pl-4 border-l-2 border-[var(--color-3)]"><div class="flex-1"><label class="block text-xs mb-1">Target Collection <select class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"><option>Select collection...</option><!></select></label></div> <div class="flex-1"><label class="block text-xs mb-1">Target Field <input type="text" placeholder="_id" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"/></label></div> <!></div>'),it=(t,e,l)=>e(n(l)),nt=u('<button class="btn btn-outline-light btn-sm mt-2 ml-4 hover:bg-[var(--color-3)]">+ Add Alternative Target</button>'),st=u('<div class="border border-[var(--border-color)] rounded p-4"><div class="flex items-start gap-4 mb-3"><div class="flex-1"><label class="block text-sm font-medium mb-1">Field Path <input type="text" placeholder="e.g., authorId or comments.authorId" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"/></label></div> <!></div> <div class="space-y-2"></div> <!></div>'),dt=u('<div class="space-y-4"></div>'),ct=u('<div class="text-center py-8" style="color: var(--text-secondary);">No mappings defined yet.</div>'),vt=(t,e)=>v(e,!0),ut=u('<button class="btn btn-success hover:bg-[var(--button-success-l)]">+ Add New Mapping</button>'),bt=u("<option> </option>"),_t=u('<div class="border border-[var(--border-color)] rounded p-4 bg-[var(--light-background)]"><h3 class="text-lg font-medium mb-3">New Mapping</h3> <div class="space-y-3"><label class="block text-sm font-medium mb-1">Field Path <input type="text" placeholder="e.g., authorId or comments.authorId" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"/></label> <label class="block text-sm font-medium mb-1">Target Collection <select class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"><option>Select collection...</option><!></select></label> <label class="block text-sm font-medium mb-1">Target Field <input type="text" placeholder="_id" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"/></label> <div class="flex gap-2"><button class="btn btn-success hover:bg-[var(--button-success-l)]">Add</button> <button class="btn btn-default hover:bg-[var(--color-3)]">Cancel</button></div></div></div>'),mt=u('<div class="mt-4"><!></div>'),pt=u(`<div class="p-4"><div class="mb-4"><p class="mb-3">Define relationships between collections to enable hover tooltips and navigation on foreign key fields. This
2
- will be stored in the <code class="px-1 bg-[var(--light-background)] rounded">mongoku.mappings</code> collection
3
- as a document with <a class="text-blue-500"> </a>.</p> <details class="mb-2" style="color: var(--text-secondary);"><summary class="cursor-pointer font-medium mb-2">Example</summary> <div class="mt-2"><div class="mb-1">Document in collection <code class="px-1 bg-[var(--light-background)] rounded">posts</code>:</div> <code class="block px-2 py-1 bg-[var(--light-background)] rounded text-xs mb-2">&#123; _id: "post1", title: "Hello", authorId: "user123", comments: [&#123;authorId: "user456", text:
4
- "Nice!"&#125;] &#125;</code> <div class="text space-y-1"><div>→ Mapping 1: Field path <code class="px-1 bg-[var(--light-background)] rounded">authorId</code>, target
5
- collection <code class="px-1 bg-[var(--light-background)] rounded">users</code>, target field <code class="px-1 bg-[var(--light-background)] rounded">_id</code></div> <div>→ Mapping 2: Field path <code class="px-1 bg-[var(--light-background)] rounded">comments.authorId</code>,
6
- target collection <code class="px-1 bg-[var(--light-background)] rounded">users</code>, target field <code class="px-1 bg-[var(--light-background)] rounded">_id</code></div></div></div></details></div> <!> <!></div>`),ft=(t,e)=>v(e,!1),gt=(t,e)=>{t.key==="Escape"&&v(e,!1)},ht=t=>t.stopPropagation(),yt=t=>t.stopPropagation(),xt=(t,e)=>v(e,!1),kt=(t,e)=>v(e,!1),wt=u(`<div class="fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 p-4" role="button" tabindex="0"><div class="bg-[var(--color-1)] border border-[var(--border-color)] rounded-lg max-w-4xl w-full max-h-[80vh] overflow-hidden flex flex-col" role="dialog" tabindex="-1"><div class="p-4 border-b border-[var(--border-color)] flex justify-between items-center"><h2 class="text-xl font-semibold">AI Mapping Generator Prompt</h2> <button class="btn btn-outline-light btn-sm hover:bg-[var(--color-3)]">Close</button></div> <div class="p-4 overflow-auto flex-1"><p class="mb-3 text-sm" style="color: var(--text-secondary);">Copy this prompt and paste it into your IDE's AI assistant (Cursor, GitHub Copilot, etc.) to automatically
7
- generate mappings for this collection.</p> <pre class="bg-[var(--color-2)] border border-[var(--border-color)] rounded p-4 text-sm whitespace-pre-wrap overflow-auto"> </pre></div> <div class="p-4 border-t border-[var(--border-color)] flex justify-end gap-2"><button class="btn btn-default hover:bg-[var(--color-3)]">Close</button> <button class="btn btn-primary hover:brightness-110">Copy to Clipboard</button></div></div></div>`),It=u("<!> <!>",1);function St(t,e){ze(e,!0);let l=Ge(Object.entries(e.data.mappings).map(([h,b])=>({fieldPath:h,targets:Array.isArray(b)?b:[b]}))),i=V(""),s=V(""),d=V("_id"),g=V(!1),m=V(!1);const L=Be(()=>`I need help generating MongoDB collection mappings for my database.
8
-
9
- **Context:**
10
- - Database: ${e.data.database}
11
- - Collection: ${e.data.collection}
12
- - Available collections: ${e.data.availableCollections.join(", ")}
13
-
14
- **Task:**
15
- Please analyze my codebase to identify relationships between the "${e.data.collection}" collection and other collections. Look for:
16
- 1. Fields that reference documents in other collections (foreign keys)
17
- 2. Nested fields within arrays or objects that reference other documents
18
- 3. Common patterns like userId, authorId, etc.
19
-
20
- If you have access to the MongoDB MCP server, use it to:
21
- 1. Query sample documents from the "${e.data.collection}" collection
22
- 2. Analyze the schema and field types
23
- 3. Identify potential foreign key relationships
24
-
25
- **Output Format:**
26
- Create a file named \`${e.data.collection}.mappings.json\` with the following structure:
27
-
28
- \`\`\`json
29
- {
30
- "_id": "${e.data.collection}",
31
- "mappings": {
32
- "fieldPath": { "collection": "targetCollection", "on": "targetField" },
33
- "nested.fieldPath": { "collection": "targetCollection", "on": "targetField" }
34
- }
35
- }
36
- \`\`\`
37
-
38
- **Example:**
39
- If the collection has documents like:
40
- \`\`\`json
41
- {
42
- "_id": "post1",
43
- "authorId": "user123",
44
- "comments": [
45
- { "authorId": "user456", "text": "Great post!" }
46
- ]
47
- }
48
- \`\`\`
49
-
50
- The mappings would be:
51
- \`\`\`json
52
- {
53
- "_id": "${e.data.collection}",
54
- "mappings": {
55
- "authorId": { "collection": "users", "on": "_id" },
56
- "comments.authorId": { "collection": "users", "on": "_id" }
57
- }
58
- }
59
- \`\`\`
60
-
61
- **Notes:**
62
- - Use dot notation for nested fields (e.g., "comments.authorId")
63
- - Multiple mappings for the same field can be expressed as an array
64
- - Target field is usually "_id" but can be any unique field
65
-
66
- Please analyze the codebase and database, then generate the appropriate mappings file.`);function xe(h){h.targets.push({collection:"",on:"_id"})}function ke(h,b){h.targets.splice(b,1)}function we(h){l.splice(h,1)}var ue=It(),be=pe(ue);Ue(be,{get title(){return`Mappings for ${e.data.collection??""}`},titleClass:"py-2",actions:b=>{var M=tt(),k=pe(M);k.__click=[$e,m];var F=r(k,2);{var j=w=>{var D=et();D.__click=[Ye,l,e],c(w,D)};T(F,w=>{e.data.readOnly||w(j)})}c(b,M)},children:(b,M)=>{var k=pt(),F=o(k),j=o(F),w=r(o(j),3),D=o(w);a(w),fe(),a(j),fe(2),a(F);var Q=r(F,2);{var Y=y=>{var A=dt();ae(A,21,()=>l,ge,(ie,O,ne)=>{var I=st(),P=o(I),N=o(P),z=o(N),G=r(o(z));oe(G),a(z),a(N);var R=r(N,2);{var U=_=>{var p=at();p.__click=()=>we(ne),c(_,p)};T(R,_=>{e.data.readOnly||_(U)})}a(P);var S=r(P,2);ae(S,21,()=>n(O).targets,ge,(_,p,$)=>{var Z=lt(),f=o(Z),H=o(f),C=r(o(H)),J=o(C);J.value=J.__value="";var ee=r(J);ae(ee,16,()=>e.data.availableCollections,x=>x,(x,E)=>{var K=ot(),Oe=o(K,!0);a(K);var me={};q(()=>{te(Oe,E),me!==(me=E)&&(K.value=(K.__value=E)??"")}),c(x,K)}),a(C),a(H),a(f);var de=r(f,2),_e=o(de),ce=r(o(_e));oe(ce),a(_e),a(de);var Me=r(de,2);{var je=x=>{var E=rt();E.__click=()=>ke(n(O),$),q(()=>E.disabled=n(O).targets.length===1),c(x,E)};T(Me,x=>{e.data.readOnly||x(je)})}a(Z),q(()=>{C.disabled=e.data.readOnly,ce.disabled=e.data.readOnly}),he(C,()=>n(p).collection,x=>n(p).collection=x),re(ce,()=>n(p).on,x=>n(p).on=x),c(_,Z)}),a(S);var se=r(S,2);{var W=_=>{var p=nt();p.__click=[it,xe,O],c(_,p)};T(se,_=>{e.data.readOnly||_(W)})}a(I),q(()=>G.disabled=e.data.readOnly),re(G,()=>n(O).fieldPath,_=>n(O).fieldPath=_),c(ie,I)}),a(A),c(y,A)},le=y=>{var A=ct();c(y,A)};T(Q,y=>{l.length>0?y(Y):y(le,!1)})}var Ce=r(Q,2);{var Ae=y=>{var A=mt(),ie=o(A);{var O=I=>{var P=ut();P.__click=[vt,g],c(I,P)},ne=I=>{var P=_t(),N=r(o(P),2),z=o(N),G=r(o(z));oe(G),a(z);var R=r(z,2),U=r(o(R)),S=o(U);S.value=S.__value="";var se=r(S);ae(se,16,()=>e.data.availableCollections,f=>f,(f,H)=>{var C=bt(),J=o(C,!0);a(C);var ee={};q(()=>{te(J,H),ee!==(ee=H)&&(C.value=(C.__value=H)??"")}),c(f,C)}),a(U),a(R);var W=r(R,2),_=r(o(W));oe(_),a(W);var p=r(W,2),$=o(p);$.__click=[Ve,i,s,l,d,g];var Z=r($,2);Z.__click=[Xe,i,s,d,g],a(p),a(N),a(P),re(G,()=>n(i),f=>v(i,f)),he(U,()=>n(s),f=>v(s,f)),re(_,()=>n(d),f=>v(d,f)),c(I,P)};T(ie,I=>{n(g)?I(ne,!1):I(O)})}a(A),c(y,A)};T(Ce,y=>{e.data.readOnly||y(Ae)})}a(k),q(y=>{Re(w,"href",y),te(D,`_id: "${e.data.collection??""}"`)},[()=>Qe(`/servers/${e.data.server}/databases/${e.data.database}/collections/mongoku.mappings/documents/${e.data.collection}`)]),c(b,k)},$$slots:{actions:!0,default:!0}});var Ie=r(be,2);{var Pe=h=>{var b=wt();b.__click=[ft,m],b.__keydown=[gt,m];var M=o(b);M.__click=[ht],M.__keydown=[yt];var k=o(M),F=r(o(k),2);F.__click=[xt,m],a(k);var j=r(k,2),w=r(o(j),2),D=o(w,!0);a(w),a(j);var Q=r(j,2),Y=o(Q);Y.__click=[kt,m];var le=r(Y,2);le.__click=[Ke,L],a(Q),a(M),a(b),q(()=>te(D,n(L))),c(h,b)};T(Ie,h=>{n(m)&&h(Pe)})}c(t,ue),He()}Le(["click","keydown"]);export{St as component,Ft as universal};
@@ -1,22 +0,0 @@
1
- const load = async (event) => {
2
- return {
3
- readOnly: process.env.MONGOKU_READ_ONLY_MODE === "true",
4
- serverOrigin: event.url.origin
5
- };
6
- };
7
-
8
- var _layout_server_ts = /*#__PURE__*/Object.freeze({
9
- __proto__: null,
10
- load: load
11
- });
12
-
13
- const index = 0;
14
- let component_cache;
15
- const component = async () => component_cache ??= (await import('./_layout.svelte-Dji2JJ9X.js')).default;
16
- const server_id = "src/routes/+layout.server.ts";
17
- const imports = ["_app/immutable/nodes/0.OznVrT12.js","_app/immutable/chunks/BPbCnJEo.js","_app/immutable/chunks/reNJcONQ.js","_app/immutable/chunks/ByCRZ7zS.js","_app/immutable/chunks/BXUq66wC.js","_app/immutable/chunks/Dkr5ZtQR.js","_app/immutable/chunks/Z2a-si5C.js","_app/immutable/chunks/DIw4Wyr4.js","_app/immutable/chunks/0oUK0vJa.js","_app/immutable/chunks/DkI4PMxL.js"];
18
- const stylesheets = ["_app/immutable/assets/0.CEIWAdGZ.css"];
19
- const fonts = [];
20
-
21
- export { component, fonts, imports, index, _layout_server_ts as server, server_id, stylesheets };
22
- //# sourceMappingURL=0-DgHP79Ti.js.map
@@ -1,9 +0,0 @@
1
- const index = 1;
2
- let component_cache;
3
- const component = async () => component_cache ??= (await import('./error.svelte-BBEhCLUJ.js')).default;
4
- const imports = ["_app/immutable/nodes/1.BnbJyDlh.js","_app/immutable/chunks/BPbCnJEo.js","_app/immutable/chunks/reNJcONQ.js","_app/immutable/chunks/DIw4Wyr4.js","_app/immutable/chunks/ByCRZ7zS.js","_app/immutable/chunks/DkI4PMxL.js","_app/immutable/chunks/Z2a-si5C.js"];
5
- const stylesheets = [];
6
- const fonts = [];
7
-
8
- export { component, fonts, imports, index, stylesheets };
9
- //# sourceMappingURL=1--T1OTbjT.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"10-D1OhJt-m.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/servers/_server_/databases/_database_/collections/_collection_/documents/_page.ts.js","../../../.svelte-kit/adapter-node/entries/pages/servers/_server_/databases/_database_/collections/_collection_/documents/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/10.js"],"sourcesContent":["const load = async (data) => {\n return {\n ...data.data,\n categories: [\n { key: \"documents\", label: \"Documents\" },\n { key: \"indexes\", label: \"Indexes\" },\n { key: \"mappings\", label: \"Mappings\" }\n ]\n };\n};\nexport {\n load\n};\n","import { p as parseJSON, v as validateAggregationPipeline, i as isEmptyObject } from \"../../../../../../../../../chunks/jsonParser.js\";\nimport { J as JsonEncoder } from \"../../../../../../../../../chunks/JsonEncoder.js\";\nimport { l as logger } from \"../../../../../../../../../chunks/logger.js\";\nimport { g as getMongo } from \"../../../../../../../../../chunks/mongo.js\";\nconst load = async ({ params, url }) => {\n const query = url.searchParams.get(\"query\") || \"{}\";\n const sort = url.searchParams.get(\"sort\") || \"{}\";\n const project = url.searchParams.get(\"project\") || \"{}\";\n const skip = parseInt(url.searchParams.get(\"skip\") || \"0\", 10);\n const limit = parseInt(url.searchParams.get(\"limit\") || \"20\", 10);\n const mode = url.searchParams.get(\"mode\") || \"query\";\n const field = url.searchParams.get(\"field\") || \"\";\n const computedParams = {\n query,\n sort,\n project,\n skip,\n limit,\n mode,\n field\n };\n let queryDoc;\n let parseError = null;\n try {\n queryDoc = parseJSON(query, { allowArray: true });\n } catch (err) {\n parseError = `Invalid query: ${err}`;\n }\n if (!parseError) {\n try {\n parseJSON(sort);\n } catch (err) {\n parseError = `Invalid sort: ${err}`;\n }\n }\n if (!parseError) {\n try {\n parseJSON(project);\n } catch (err) {\n parseError = `Invalid project: ${err}`;\n }\n }\n if (parseError) {\n return {\n results: Promise.resolve({\n data: [],\n error: parseError\n }),\n count: Promise.resolve({\n data: 0,\n error: null\n }),\n params: computedParams\n };\n }\n const sortDoc = parseJSON(sort);\n const projectDoc = parseJSON(project);\n const mongo = await getMongo();\n const client = mongo.getClient(params.server);\n const collection = client.db(params.database).collection(params.collection);\n if (mode === \"distinct\") {\n if (!field) {\n return {\n results: Promise.resolve({\n data: [],\n error: \"Invalid distinct query: field name is required\"\n }),\n count: Promise.resolve({\n data: 0,\n error: null\n }),\n mappings: await client.getMappings(params.database, params.collection),\n params: computedParams\n };\n }\n const resultsPromise2 = collection.distinct(field, JsonEncoder.decode(queryDoc), {\n maxTimeMS: mongo.getQueryTimeout()\n }).then((results) => ({\n data: results.map((value) => JsonEncoder.encode({ value })),\n error: null\n })).catch((err) => {\n logger.error(\"Error executing distinct:\", err);\n return {\n data: [],\n error: `Failed to execute distinct: ${err instanceof Error ? err.message : String(err)}`\n };\n });\n const countPromise2 = resultsPromise2.then((result) => ({\n data: result.error ? 0 : result.data.length,\n error: null\n }));\n return {\n results: resultsPromise2,\n count: countPromise2,\n mappings: await client.getMappings(params.database, params.collection),\n params: computedParams\n };\n }\n if (mode === \"aggregation\" && Array.isArray(queryDoc)) {\n try {\n validateAggregationPipeline(queryDoc);\n } catch (err) {\n const validationError = `Invalid aggregation pipeline: ${err instanceof Error ? err.message : String(err)}`;\n return {\n results: Promise.resolve({\n data: [],\n error: validationError\n }),\n count: Promise.resolve({\n data: 0,\n error: null\n }),\n params: computedParams\n };\n }\n const pipeline = JsonEncoder.decode(queryDoc);\n const resultsPromise2 = collection.aggregate(\n [\n ...pipeline,\n ...isEmptyObject(projectDoc) ? [] : [{ $project: projectDoc }],\n ...isEmptyObject(sortDoc) ? [] : [{ $sort: sortDoc }],\n { $limit: limit },\n { $skip: skip }\n ],\n {\n maxTimeMS: mongo.getQueryTimeout()\n }\n ).map((obj) => JsonEncoder.encode(obj)).toArray().then((results) => ({\n data: results,\n error: null\n })).catch((err) => {\n logger.error(\"Error executing aggregation:\", err);\n return {\n data: [],\n error: `Failed to execute aggregation: ${err instanceof Error ? err.message : String(err)}`\n };\n });\n const countPromise2 = collection.aggregate([...pipeline, { $count: \"count\" }], { maxTimeMS: mongo.getCountTimeout() }).next().then((result) => ({\n data: result?.count ?? 0,\n error: null\n })).catch((err) => {\n logger.error(\"Error counting documents:\", err);\n return {\n data: 0,\n error: `Failed to count documents: ${err instanceof Error ? err.message : String(err)}`\n };\n });\n return {\n results: resultsPromise2,\n count: countPromise2,\n mappings: await client.getMappings(params.database, params.collection),\n params: computedParams\n };\n }\n const resultsPromise = collection.find(JsonEncoder.decode(queryDoc), { maxTimeMS: mongo.getQueryTimeout() }).project(projectDoc).sort(JsonEncoder.decode(sortDoc)).limit(limit).skip(skip).map((obj) => JsonEncoder.encode(obj)).toArray().then((results) => ({\n data: results,\n error: null\n })).catch((err) => {\n logger.error(\"Error fetching query results:\", err);\n return {\n data: [],\n error: `Failed to fetch query results: ${err instanceof Error ? err.message : String(err)}`\n };\n });\n const countPromise = (async () => {\n try {\n if (queryDoc && Object.keys(queryDoc).length > 0) {\n return {\n data: await collection.countDocuments(JsonEncoder.decode(queryDoc), {\n maxTimeMS: mongo.getCountTimeout()\n }),\n error: null\n };\n } else {\n return {\n data: await collection.estimatedDocumentCount(),\n error: null\n };\n }\n } catch (err) {\n logger.error(\"Error counting documents:\", err);\n return {\n data: 0,\n error: `Failed to count documents: ${err instanceof Error ? err.message : String(err)}`\n };\n }\n })();\n return {\n // Stream these promises to the client\n results: resultsPromise,\n count: countPromise,\n mappings: await client.getMappings(params.database, params.collection),\n params: computedParams\n };\n};\nexport {\n load\n};\n","import * as universal from '../entries/pages/servers/_server_/databases/_database_/collections/_collection_/documents/_page.ts.js';\nimport * as server from '../entries/pages/servers/_server_/databases/_database_/collections/_collection_/documents/_page.server.ts.js';\n\nexport const index = 10;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/servers/_server_/databases/_database_/collections/_collection_/documents/_page.svelte.js')).default;\nexport { universal };\nexport const universal_id = \"src/routes/servers/[server]/databases/[database]/collections/[collection]/documents/+page.ts\";\nexport { server };\nexport const server_id = \"src/routes/servers/[server]/databases/[database]/collections/[collection]/documents/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/10.4wMOwZtW.js\",\"_app/immutable/chunks/BPbCnJEo.js\",\"_app/immutable/chunks/reNJcONQ.js\",\"_app/immutable/chunks/ByCRZ7zS.js\",\"_app/immutable/chunks/Dn0_-jEe.js\",\"_app/immutable/chunks/0oUK0vJa.js\",\"_app/immutable/chunks/Dkr5ZtQR.js\",\"_app/immutable/chunks/Z2a-si5C.js\",\"_app/immutable/chunks/BXUq66wC.js\",\"_app/immutable/chunks/UJuWD2W4.js\",\"_app/immutable/chunks/BGXqurs_.js\",\"_app/immutable/chunks/s-K2chw6.js\",\"_app/immutable/chunks/DmXOK2q9.js\",\"_app/immutable/chunks/BO6_ugNx.js\",\"_app/immutable/chunks/CpnIKQd1.js\",\"_app/immutable/chunks/DkI4PMxL.js\"];\nexport const stylesheets = [\"_app/immutable/assets/JsonValue.D87iuwcT.css\",\"_app/immutable/assets/10.BrydhPds.css\"];\nexport const fonts = [];\n"],"names":["load"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"JsonValue-Cexm3jGT.js","sources":["../../../.svelte-kit/adapter-node/chunks/JsonValue.js"],"sourcesContent":["import \"./async.js\";\nimport { y as attr_class, x as attr, w as ensure_array_like } from \"./index2.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport { T as Tooltip } from \"./Tooltip.js\";\nimport { e as escape_html } from \"./context.js\";\nfunction JsonValue_1($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const INDENT = \" \";\n let {\n value,\n key,\n autoCollapse = false,\n collapsed = false,\n depth = 0,\n isKeyMapped,\n fetchMappedDocument,\n keyPath = \"\"\n } = $$props;\n function getIndent(level) {\n return INDENT.repeat(level);\n }\n function isUrl(str) {\n return /^https?:\\/\\/[^\\s]+$/.test(str);\n }\n let showTooltip = false;\n const currentKeyPath = [keyPath, key].filter(Boolean).join(\".\");\n function handleTooltipMouseEnter() {\n }\n function handleTooltipMouseLeave() {\n showTooltip = false;\n }\n function getValueType(val) {\n if (val === null) return \"null\";\n if (Array.isArray(val)) return \"array\";\n switch (typeof val) {\n case \"boolean\":\n return \"boolean\";\n case \"number\":\n return \"number\";\n case \"string\":\n return \"string\";\n case \"object\":\n switch (val.$type) {\n case \"ObjectId\":\n return \"objectid\";\n case \"Date\":\n return \"date\";\n case \"RegExp\":\n return \"regexp\";\n case \"Binary\":\n return \"binary\";\n default:\n return \"object\";\n }\n default:\n return \"unknown\";\n }\n }\n const valueType = getValueType(value);\n const hasMappings = !!isKeyMapped && !!fetchMappedDocument && key === void 0 && isKeyMapped(currentKeyPath) && value !== null && value !== void 0 && valueType !== \"array\" && valueType !== \"object\";\n let isCollapsible = valueType === \"array\" || valueType === \"object\";\n let isEmpty = valueType === \"array\" && value.length === 0 || valueType === \"object\" && Object.keys(value).length === 0;\n let innerCollapsed = autoCollapse;\n if (key !== void 0) {\n $$renderer2.push(\"<!--[-->\");\n if (isCollapsible && !isEmpty) {\n $$renderer2.push(\"<!--[-->\");\n if (innerCollapsed) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<span class=\"prop collapsible collapsed svelte-1c374kz\" role=\"button\" tabindex=\"0\">${escape_html(getIndent(depth + 1))}<span class=\"collapse-arrow svelte-1c374kz\">▶</span><var class=\"svelte-1c374kz\">${escape_html(key)}</var>: `);\n JsonValue_1($$renderer2, {\n value,\n autoCollapse,\n collapsed: innerCollapsed,\n depth: depth + 1,\n isKeyMapped,\n fetchMappedDocument,\n keyPath: currentKeyPath\n });\n $$renderer2.push(`<!----></span>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<span class=\"prop collapsible svelte-1c374kz\">${escape_html(getIndent(depth + 1))}<span class=\"collapse-arrow arrow-only svelte-1c374kz\" role=\"button\" tabindex=\"0\">▼</span><var class=\"svelte-1c374kz\">${escape_html(key)}</var>: `);\n JsonValue_1($$renderer2, {\n value,\n autoCollapse,\n collapsed: innerCollapsed,\n depth: depth + 1,\n isKeyMapped,\n fetchMappedDocument,\n keyPath: currentKeyPath\n });\n $$renderer2.push(`<!----></span>`);\n }\n $$renderer2.push(`<!--]-->`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<span class=\"prop svelte-1c374kz\">${escape_html(getIndent(depth + 1))}<var class=\"svelte-1c374kz\">${escape_html(key)}</var>: `);\n JsonValue_1($$renderer2, {\n value,\n autoCollapse,\n collapsed: innerCollapsed,\n depth: depth + 1,\n isKeyMapped,\n fetchMappedDocument,\n keyPath: currentKeyPath\n });\n $$renderer2.push(`<!----></span>`);\n }\n $$renderer2.push(`<!--]-->`);\n } else {\n let valueSnippet = function($$renderer3) {\n if (valueType === \"string\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value quoted svelte-1c374kz\">\"<span${attr_class(\"string svelte-1c374kz\", void 0, { \"url\": isUrl(value) })}>`);\n if (isUrl(value)) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<a${attr(\"href\", value)} target=\"_blank\" class=\"svelte-1c374kz\">${escape_html(value)}</a>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`${escape_html(value)}`);\n }\n $$renderer3.push(`<!--]--></span>\"</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"number\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value number svelte-1c374kz\">${escape_html(value)}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"boolean\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value boolean svelte-1c374kz\">${escape_html(value)}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"null\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value null svelte-1c374kz\">null</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"objectid\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"call function svelte-1c374kz\">ObjectId(\"<span class=\"string\">${escape_html(value.$value)}</span>\")</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"date\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"call function svelte-1c374kz\">Date(\"<span class=\"string\">${escape_html(value.$value)}</span>\")</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"regexp\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value regexp svelte-1c374kz\">/${escape_html(value.$value.$pattern)}/${escape_html(value.$value.$flags)}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"binary\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"call function svelte-1c374kz\">BinData(<span class=\"number\">${escape_html(value.$subType)}</span>, \"<span class=\"string\">${escape_html(value.$value.length > 40 ? value.$value.substring(0, 40) + \"...\" : value.$value)}</span>\")</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"array\") {\n $$renderer3.push(\"<!--[-->\");\n if (isEmpty) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value array svelte-1c374kz\">[]</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`<span class=\"value array svelte-1c374kz\">[`);\n if (!collapsed) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"collapsible-content svelte-1c374kz\"><!--[-->`);\n const each_array = ensure_array_like(value);\n for (let i = 0, $$length = each_array.length; i < $$length; i++) {\n let item = each_array[i];\n $$renderer3.push(`<br/>${escape_html(getIndent(depth + 1))}`);\n JsonValue_1($$renderer3, {\n value: item,\n autoCollapse,\n collapsed: false,\n depth: depth + 1,\n keyPath: currentKeyPath,\n isKeyMapped,\n fetchMappedDocument\n });\n $$renderer3.push(`<!---->`);\n }\n $$renderer3.push(`<!--]--> <br/>${escape_html(getIndent(depth))}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`<span class=\"collapsed-summary svelte-1c374kz\">... ${escape_html(value.length)} item${escape_html(value.length !== 1 ? \"s\" : \"\")}</span>`);\n }\n $$renderer3.push(`<!--]-->]</span>`);\n }\n $$renderer3.push(`<!--]-->`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (valueType === \"object\") {\n $$renderer3.push(\"<!--[-->\");\n if (isEmpty) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"value object svelte-1c374kz\">{}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`<span class=\"value object svelte-1c374kz\">{`);\n if (!collapsed) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"collapsible-content svelte-1c374kz\"><!--[-->`);\n const each_array_1 = ensure_array_like(Object.keys(value));\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let objKey = each_array_1[$$index_1];\n JsonValue_1($$renderer3, {\n value: value[objKey],\n key: objKey,\n autoCollapse,\n collapsed: autoCollapse,\n depth,\n isKeyMapped,\n fetchMappedDocument,\n keyPath: currentKeyPath\n });\n }\n $$renderer3.push(`<!--]--></span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n if (collapsed) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"collapsed-summary svelte-1c374kz\">... ${escape_html(Object.keys(value).length)} key${escape_html(Object.keys(value).length !== 1 ? \"s\" : \"\")}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`${escape_html(getIndent(depth))}`);\n }\n $$renderer3.push(`<!--]-->}</span>`);\n }\n $$renderer3.push(`<!--]-->`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`<span>${escape_html(String(value))}</span>`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n };\n $$renderer2.push(\"<!--[!-->\");\n if (hasMappings) {\n $$renderer2.push(\"<!--[-->\");\n {\n let trigger = function($$renderer3) {\n $$renderer3.push(`<span${attr_class(\"string mapped svelte-1c374kz\", void 0, { \"url\": isUrl(value) })} role=\"button\" tabindex=\"0\">`);\n {\n $$renderer3.push(\"<!--[!-->\");\n valueSnippet?.($$renderer3);\n }\n $$renderer3.push(`<!--]--></span>`);\n }, content = function($$renderer3) {\n {\n $$renderer3.push(\"<!--[!-->\");\n {\n $$renderer3.push(\"<!--[!-->\");\n {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]-->`);\n };\n Tooltip($$renderer2, {\n show: showTooltip,\n tooltipClass: \"max-w-[600px] max-h-[400px] overflow-auto whitespace-pre-wrap\",\n onTooltipMouseEnter: handleTooltipMouseEnter,\n onTooltipMouseLeave: handleTooltipMouseLeave,\n trigger,\n content\n });\n }\n } else {\n $$renderer2.push(\"<!--[!-->\");\n valueSnippet?.($$renderer2);\n }\n $$renderer2.push(`<!--]-->`);\n if (depth !== 0) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`,`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nexport {\n JsonValue_1 as J\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Modal-BzZ9u6V6.js","sources":["../../../.svelte-kit/adapter-node/chunks/Modal.js"],"sourcesContent":["import \"./async.js\";\nimport { e as escape_html } from \"./context.js\";\nfunction Modal($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { show = false, onclose, title, children, footer } = $$props;\n if (show) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"modal-overlay\"><div class=\"modal\">`);\n if (title) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"modal-header svelte-ta60gp\"><h3 style=\"color: var(--text);\" class=\"svelte-ta60gp\">${escape_html(title)}</h3></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]--> <div class=\"modal-body\" style=\"color: var(--text);\">`);\n children?.($$renderer2);\n $$renderer2.push(`<!----></div> `);\n if (footer) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"modal-footer\">`);\n footer($$renderer2);\n $$renderer2.push(`<!----></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]--></div></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nexport {\n Modal as M\n};\n"],"names":[],"mappings":";;;AAEA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK;AACxC,IAAI,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO;AACpE,IAAI,IAAI,IAAI,EAAE;AACd,MAAM,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;AAClC,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,8CAA8C,CAAC,CAAC;AACxE,MAAM,IAAI,KAAK,EAAE;AACjB,QAAQ,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;AACpC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,8FAA8F,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;AAC1J,MAAM,CAAC,MAAM;AACb,QAAQ,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACrC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,6DAA6D,CAAC,CAAC;AACvF,MAAM,QAAQ,GAAG,WAAW,CAAC;AAC7B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACxC,MAAM,IAAI,MAAM,EAAE;AAClB,QAAQ,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;AACpC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,0BAA0B,CAAC,CAAC;AACtD,QAAQ,MAAM,CAAC,WAAW,CAAC;AAC3B,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM;AACb,QAAQ,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACrC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC;AAC9C,IAAI,CAAC,MAAM;AACX,MAAM,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACnC,IAAI;AACJ,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAChC,EAAE,CAAC,CAAC;AACJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrettyJson-tOt0PqjF.js","sources":["../../../.svelte-kit/adapter-node/chunks/PrettyJson.js"],"sourcesContent":["import \"./async.js\";\nimport { x as attr } from \"./index2.js\";\nimport { e as escape_html } from \"./context.js\";\nimport { f as fetchMappedDocument } from \"./servers.remote.js\";\nimport { r as resolve } from \"./server2.js\";\nimport \"esprima\";\nimport { J as JsonValue_1 } from \"./JsonValue.js\";\nimport { P as Panel } from \"./Panel.js\";\nfunction PrettyJson($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n json,\n autoCollapse = false,\n onedit,\n onremove,\n server,\n database,\n collection,\n mappings,\n startInEditMode = false\n } = $$props;\n function getIdValue(val) {\n if (val === null || val === void 0) return null;\n if (typeof val === \"string\" || typeof val === \"number\") return String(val);\n if (val.$type === \"ObjectId\" && val.$value) return val.$value;\n return null;\n }\n function isKeyMapped(path) {\n return !!mappings?.[path] && (Array.isArray(mappings[path]) ? mappings[path].length > 0 : true);\n }\n async function fetchMappedDocument$1(path, value) {\n if (!mappings || !mappings[path] || Array.isArray(mappings[path]) && mappings[path].length === 0) {\n return { document: null, url: null, collection: null };\n }\n const idValue = getIdValue(value);\n if (!idValue) {\n return { document: null, url: null, collection: null };\n }\n try {\n const result = await fetchMappedDocument({\n server,\n database,\n mappings: Array.isArray(mappings[path]) ? mappings[path] : [mappings[path]],\n value\n });\n if (result.error || !result.data || !result.collection) {\n return { document: null, url: null, collection: null };\n }\n const url = resolve(`/servers/${encodeURIComponent(server)}/databases/${encodeURIComponent(database)}/collections/${encodeURIComponent(result.collection)}/documents/${encodeURIComponent(idValue)}`);\n return { document: result.data, url, collection: result.collection };\n } catch {\n return { document: null, url: null, collection: null };\n }\n }\n let panelRef = void 0;\n function getTimestampFromObjectId(objectId) {\n try {\n const timestamp = parseInt(objectId.substring(0, 8), 16);\n return new Date(timestamp * 1e3);\n } catch {\n return null;\n }\n }\n function title($$renderer3) {\n if (json._id) {\n $$renderer3.push(\"<!--[-->\");\n const idValue = json._id.$value ?? json._id;\n $$renderer3.push(`<div class=\"flex flex-col sm:flex-row sm:items-center gap-2 sm:gap-4 min-w-0 flex-1\"><h2 class=\"truncate\"><a class=\"text-[15px] sm:text-base font-semibold hover:underline no-underline\" style=\"color: var(--text); text-decoration-color: var(--link);\"${attr(\"href\", resolve(`/servers/${encodeURIComponent(server)}/databases/${encodeURIComponent(database)}/collections/${encodeURIComponent(collection)}/documents/${idValue}`))}>${escape_html(idValue)}</a></h2> `);\n if (json._id.$value) {\n $$renderer3.push(\"<!--[-->\");\n const timestamp = getTimestampFromObjectId(json._id.$value);\n if (timestamp) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<p class=\"text-xs\" style=\"color: var(--text-secondary);\">Created on ${escape_html(timestamp.toLocaleDateString())} · ${escape_html(timestamp.toLocaleTimeString())}</p>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n function actions($$renderer3) {\n $$renderer3.push(`<div class=\"hidden group-hover:flex items-center gap-2 -my-2\"><button class=\"px-3 py-1 rounded-lg border border-[var(--border-color)] bg-[var(--light-background)] hover:bg-[var(--color-3)] text-[13px] transition cursor-pointer\" style=\"color: var(--text);\">Copy</button> `);\n if (onedit) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button class=\"px-3 py-1 rounded-lg border border-[var(--border-color)] bg-[var(--light-background)] hover:bg-[var(--color-3)] text-[13px] transition cursor-pointer\" style=\"color: var(--text);\">Edit</button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (onremove) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button class=\"px-3 py-1 rounded-lg border border-red-200 hover:bg-red-50 text-[13px] transition cursor-pointer\" style=\"color: var(--button-danger);\">Delete</button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n Panel($$renderer3, {\n class: \"group relative\",\n title: json._id ? title : void 0,\n actions,\n get ref() {\n return panelRef;\n },\n set ref($$value) {\n panelRef = $$value;\n $$settled = false;\n },\n children: ($$renderer4) => {\n $$renderer4.push(`<div class=\"relative p-4 sm:p-6\"><div class=\"font-mono text-[13px] sm:text-[14px] leading-relaxed whitespace-pre-wrap break-words overflow-x-auto\">`);\n JsonValue_1($$renderer4, {\n value: json,\n autoCollapse,\n collapsed: false,\n isKeyMapped,\n fetchMappedDocument: fetchMappedDocument$1\n });\n $$renderer4.push(`<!----></div> `);\n {\n $$renderer4.push(\"<!--[!-->\");\n }\n $$renderer4.push(`<!--]--></div> `);\n {\n $$renderer4.push(\"<!--[!-->\");\n }\n $$renderer4.push(`<!--]-->`);\n },\n $$slots: { default: true }\n });\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n PrettyJson as P\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_layout.svelte-Dji2JJ9X.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import \"../../chunks/async.js\";\nimport { w as ensure_array_like, x as attr, y as attr_class, z as stringify, F as head } from \"../../chunks/index2.js\";\nimport { r as resolve } from \"../../chunks/server2.js\";\nimport { p as page } from \"../../chunks/index3.js\";\nimport { e as escape_html } from \"../../chunks/context.js\";\nimport { n as notificationStore } from \"../../chunks/notifications.svelte.js\";\nimport \"../../chunks/client.js\";\nconst breadcrumbs = {\n get items() {\n const list = page.data.breadcrumbs ?? [];\n return list.reduce(\n (prev, curr) => [\n ...prev,\n {\n label: curr.label,\n href: `${prev.at(-1)?.href ?? \"\"}${curr.path}`\n }\n ],\n []\n );\n }\n};\nfunction Breadcrumbs($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n if (breadcrumbs.items.length > 0) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<nav aria-label=\"Breadcrumb\" class=\"hidden md:flex items-center gap-1 text-sm\"><!--[-->`);\n const each_array = ensure_array_like(breadcrumbs.items);\n for (let index = 0, $$length = each_array.length; index < $$length; index++) {\n let crumb = each_array[index];\n if (crumb.href && index < breadcrumbs.items.length - 1) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<a${attr(\"href\", resolve(crumb.href))} class=\"px-2 py-1 rounded-md hover:bg-[var(--color-3)] transition no-underline\" style=\"color: var(--text);\">${escape_html(crumb.label)}</a>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<span aria-current=\"page\" class=\"px-2 py-1 rounded-md font-medium\" style=\"color: var(--text);\">${escape_html(crumb.label)}</span>`);\n }\n $$renderer2.push(`<!--]--> `);\n if (index < breadcrumbs.items.length - 1) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<span style=\"color: var(--text-secondary);\">/</span>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]--></nav>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nfunction Notifications($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n $$renderer2.push(`<div class=\"notifications svelte-2qov3s\"><!--[-->`);\n const each_array = ensure_array_like(notificationStore.items);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let notification = each_array[$$index];\n $$renderer2.push(`<div${attr_class(`notification notification-${stringify(notification.type)}`, \"svelte-2qov3s\")}><span>${escape_html(notification.message)}</span> <button aria-label=\"Dismiss notification\" class=\"svelte-2qov3s\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"></line><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"></line></svg></button></div>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n });\n}\nfunction OriginWarning($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nfunction PageSwitcher($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const { class: className } = $$props;\n const categories = (page.data.categories ?? []).map((x) => ({\n ...x,\n href: page.url.pathname.split(\"/\").slice(0, -1).join(\"/\") + \"/\" + x.key\n }));\n const currentPath = page.url.pathname.split(\"/\").pop();\n if (categories.length) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div${attr_class(`hidden sm:flex rounded-lg border border-[var(--border-color)] overflow-hidden bg-[var(--light-background)] shadow-sm ${stringify(className)}`)}><!--[-->`);\n const each_array = ensure_array_like(categories);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let category = each_array[$$index];\n const isActive = currentPath === category.key;\n if (isActive) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<span class=\"px-3 py-1.5 text-[13px] font-medium bg-[var(--color-1)] shadow-[inset_0_-1px_0_rgba(0,0,0,0.06)] cursor-default\" style=\"color: var(--text);\">${escape_html(category.label)}</span>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<a data-sveltekit-reload=\"\"${attr(\"href\", resolve(category.href))} class=\"px-3 py-1.5 text-[13px] hover:bg-[var(--color-3)] transition no-underline\" style=\"color: var(--text-secondary);\">${escape_html(category.label)}</a>`);\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nfunction sunIcon($$renderer) {\n $$renderer.push(`<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"h-4 w-4\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><circle cx=\"12\" cy=\"12\" r=\"4\"></circle><path d=\"M12 2v2m0 16v2m10-10h-2M4 12H2m15.364-7.364-1.414 1.414M8.05 16.95l-1.414 1.414m0-12.728L8.05 6.364m10.607 10.607 1.414 1.414\"></path></svg>`);\n}\nfunction moonIcon($$renderer) {\n $$renderer.push(`<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"h-4 w-4\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><path d=\"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z\"></path></svg>`);\n}\nfunction systemIcon($$renderer) {\n $$renderer.push(`<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"h-4 w-4\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\" ry=\"2\"></rect><line x1=\"8\" y1=\"21\" x2=\"16\" y2=\"21\"></line><line x1=\"12\" y1=\"17\" x2=\"12\" y2=\"21\"></line></svg>`);\n}\nfunction ThemeSwitcher($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n $$renderer2.push(`<div class=\"theme-switcher inline-flex rounded-lg border border-[var(--border-color)] bg-[var(--light-background)] overflow-hidden text-sm font-medium svelte-u8uo5a\" style=\"color: var(--text);\"><button class=\"inline-flex items-center gap-2 px-2.5 py-1.5 hover:bg-[var(--color-3)] transition cursor-pointer svelte-u8uo5a\" aria-label=\"Toggle theme\"><span class=\"theme-content theme-light inline-flex items-center gap-2 svelte-u8uo5a\">`);\n sunIcon($$renderer2);\n $$renderer2.push(`<!----> <span class=\"hidden sm:inline text-[13px]\" style=\"color: var(--text-secondary);\">Light</span></span> <span class=\"theme-content theme-dark inline-flex items-center gap-2 svelte-u8uo5a\">`);\n moonIcon($$renderer2);\n $$renderer2.push(`<!----> <span class=\"hidden sm:inline text-[13px]\" style=\"color: var(--text-secondary);\">Dark</span></span> <span class=\"theme-content theme-system-light inline-flex items-center gap-2 svelte-u8uo5a\">`);\n sunIcon($$renderer2);\n $$renderer2.push(`<!----></span> <span class=\"theme-content theme-system-dark inline-flex items-center gap-2 svelte-u8uo5a\">`);\n moonIcon($$renderer2);\n $$renderer2.push(`<!----></span></button> <div class=\"w-px bg-[var(--border-color)]\"></div> <button class=\"inline-flex items-center gap-2 px-2.5 py-1.5 hover:bg-[var(--color-3)] transition cursor-pointer svelte-u8uo5a\" aria-label=\"Switch to system theme\">`);\n systemIcon($$renderer2);\n $$renderer2.push(`<!----> <span class=\"theme-text-system hidden sm:inline text-[13px] svelte-u8uo5a\" style=\"color: var(--text-secondary);\">System</span></button></div>`);\n });\n}\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { children, data } = $$props;\n const pageTitle = (() => {\n const items = breadcrumbs.items.slice(-2).reverse();\n if (items.length === 0) {\n return \"Mongoku\";\n }\n return items.map((b) => b.label).join(\" - \");\n })();\n head($$renderer2, ($$renderer3) => {\n $$renderer3.title(($$renderer4) => {\n $$renderer4.push(`<title>${escape_html(pageTitle)}</title>`);\n });\n });\n $$renderer2.push(`<div style=\"min-height: 100vh\"><header class=\"sticky top-0 z-50 border-b border-[var(--border-color)] bg-[var(--background-color)]/80\"><div class=\"max-w-[96rem] mx-auto px-4 sm:px-6 lg:px-8\"><div class=\"h-14 flex items-center gap-3\"><a${attr(\"href\", resolve(\"/\"))} class=\"inline-flex items-center gap-2 group no-underline hover:no-underline\"><span class=\"inline-flex items-center justify-center w-7 h-7 rounded-md bg-black dark:bg-white text-white dark:text-black text-sm font-semibold select-none\">M</span> <span class=\"text-lg font-semibold tracking-tight\" style=\"color: var(--text);\">Mongoku</span></a> <div class=\"hidden md:block w-px h-5 bg-[var(--border-color)]\"></div> `);\n Breadcrumbs($$renderer2);\n $$renderer2.push(`<!----> <div class=\"ml-auto flex items-center gap-2\">`);\n PageSwitcher($$renderer2, { class: \"\" });\n $$renderer2.push(`<!----> `);\n ThemeSwitcher($$renderer2);\n $$renderer2.push(`<!----></div></div></div></header> `);\n OriginWarning($$renderer2, { serverOrigin: data.serverOrigin, readOnly: data.readOnly });\n $$renderer2.push(`<!----> <main class=\"max-w-[96rem] mx-auto px-4 sm:px-6 lg:px-8 py-6 md:py-10\">`);\n Notifications($$renderer2);\n $$renderer2.push(`<!----> <div class=\"flex flex-col gap-6\">`);\n children($$renderer2);\n $$renderer2.push(`<!----></div></main> <div></div></div>`);\n });\n}\nexport {\n _layout as default\n};\n"],"names":[],"mappings":"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"}