@lunora/studio 1.0.0-alpha.361 → 1.0.0-alpha.363
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.
- package/dist/index.d.mts +4 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.mjs +1 -1
- package/dist/mount.mjs +1 -1
- package/dist/packem_chunks/AdvisorHealthPanel.mjs +1 -1
- package/dist/packem_chunks/ApiTab.mjs +1 -1
- package/dist/packem_chunks/AuditPanel.mjs +1 -1
- package/dist/packem_chunks/ExportImportPanel.mjs +1 -1
- package/dist/packem_chunks/FileBrowser.mjs +1 -1
- package/dist/packem_chunks/FunctionRunner.mjs +1 -1
- package/dist/packem_chunks/FunctionStatsPanel.mjs +1 -1
- package/dist/packem_chunks/HealthPanel.mjs +1 -1
- package/dist/packem_chunks/InsightsPanel.mjs +1 -1
- package/dist/packem_chunks/LogsPanel.mjs +1 -1
- package/dist/packem_chunks/MailPanel.mjs +1 -1
- package/dist/packem_chunks/MetricsPanel.mjs +1 -1
- package/dist/packem_chunks/NotificationsPanel.mjs +1 -1
- package/dist/packem_chunks/PitrPanel.mjs +1 -1
- package/dist/packem_chunks/SchemaViewer.mjs +1 -1
- package/dist/packem_chunks/SecurityAdvisorPanel.mjs +1 -1
- package/dist/packem_chunks/SettingsPanel.mjs +1 -1
- package/dist/packem_chunks/SqlEditorPanel.mjs +24 -9
- package/dist/packem_chunks/TableEditor.mjs +1 -1
- package/dist/packem_chunks/agents-panel.mjs +1 -1
- package/dist/packem_chunks/ai-knowledge.mjs +1 -0
- package/dist/packem_chunks/ai-usage-panel.mjs +1 -1
- package/dist/packem_chunks/assistant-panel.mjs +3 -0
- package/dist/packem_chunks/auth-audit-panel.mjs +1 -1
- package/dist/packem_chunks/containers-panel.mjs +1 -1
- package/dist/packem_chunks/dashboards-panel.mjs +1 -1
- package/dist/packem_chunks/evals-panel.mjs +1 -1
- package/dist/packem_chunks/fanout-panel.mjs +1 -1
- package/dist/packem_chunks/flags-panel.mjs +1 -1
- package/dist/packem_chunks/issues-panel.mjs +1 -1
- package/dist/packem_chunks/kv-browser.mjs +1 -1
- package/dist/packem_chunks/log-drains-panel.mjs +1 -1
- package/dist/packem_chunks/migrations-route.mjs +1 -1
- package/dist/packem_chunks/payments-panel.mjs +1 -1
- package/dist/packem_chunks/permissions-panel.mjs +1 -1
- package/dist/packem_chunks/privacy-requests-panel.mjs +1 -1
- package/dist/packem_chunks/queues-panel.mjs +1 -1
- package/dist/packem_chunks/reactors-panel.mjs +1 -1
- package/dist/packem_chunks/rls-panel.mjs +1 -1
- package/dist/packem_chunks/schedule-panel.mjs +1 -1
- package/dist/packem_chunks/storage-rules-panel.mjs +1 -1
- package/dist/packem_chunks/subscriptions-panel.mjs +1 -1
- package/dist/packem_chunks/traces-panel.mjs +1 -1
- package/dist/packem_chunks/workflows-panel.mjs +1 -1
- package/dist/packem_shared/ADMIN_FUNCTIONS-DUXsXId1.mjs +1 -0
- package/dist/packem_shared/{ApiDocsPanel-DD2Uns6b.mjs → ApiDocsPanel-B9S9l1Ce.mjs} +1 -1
- package/dist/packem_shared/{DataBrowser-CVRWnNWu.mjs → DataBrowser-Dm-jhIUP.mjs} +2 -2
- package/dist/packem_shared/{GlobalDataBrowser-DC47T6Zl.mjs → GlobalDataBrowser-C1Y8GUhe.mjs} +1 -1
- package/dist/packem_shared/{HomePanel-D12HxHQo.mjs → HomePanel-B5ytwPIo.mjs} +1 -1
- package/dist/packem_shared/{MigrationsPanel-DMkxSXNl.mjs → MigrationsPanel-CwLikxDT.mjs} +1 -1
- package/dist/packem_shared/Studio-B89ZNMOD.mjs +1 -0
- package/dist/packem_shared/{StudioApp-isdWpF9P.mjs → StudioApp-C9l1a3A8.mjs} +1 -1
- package/dist/packem_shared/advisor-view-CzieqKMe.mjs +5 -0
- package/dist/packem_shared/assistant-provider-Bp72uWsq.mjs +1 -0
- package/dist/packem_shared/assistant-reason-D6EwMCxT.mjs +1 -0
- package/dist/packem_shared/{cf-links-CBJ5SywP.mjs → cf-links-C4DVTr8A.mjs} +1 -1
- package/dist/packem_shared/error-alert-DKXm5h19.mjs +6 -0
- package/dist/packem_shared/{home-panel-CDVTuTF8.mjs → home-panel-5fGktYeD.mjs} +1 -1
- package/dist/packem_shared/recording-client-z4CBi0y8.mjs +1 -0
- package/dist/packem_shared/studio-gZfpz1wC.mjs +2 -0
- package/dist/packem_shared/{table-list-sidebar-CNadcIgG.mjs → table-list-sidebar-kpHaDWjy.mjs} +1 -1
- package/dist/packem_shared/use-assistant-rpc-GCUK2zPa.mjs +1 -0
- package/dist/standalone/chunk-2DT3QG6Q.js +1 -0
- package/dist/standalone/chunk-2EB7FN5S.js +1 -0
- package/dist/standalone/chunk-2H6VLY2M.js +1 -0
- package/dist/standalone/chunk-2NGKUO32.js +1 -0
- package/dist/standalone/chunk-2SNHKJXK.js +1 -0
- package/dist/standalone/chunk-2W4UO5BC.js +1 -0
- package/dist/standalone/chunk-32V7XGNC.js +1 -0
- package/dist/standalone/{chunk-SLIDAWNX.js → chunk-3D67ZJRW.js} +1 -1
- package/dist/standalone/chunk-3X3NXJBR.js +1 -0
- package/dist/standalone/chunk-4EPW63HS.js +1 -0
- package/dist/standalone/chunk-4L55URI5.js +2 -0
- package/dist/standalone/chunk-4N76XUNG.js +1 -0
- package/dist/standalone/{chunk-WS36BO4R.js → chunk-4NKJV7YX.js} +1 -1
- package/dist/standalone/chunk-4PI2OSSP.js +1 -0
- package/dist/standalone/chunk-53XKGQEE.js +1 -0
- package/dist/standalone/chunk-5GYHGDIF.js +8 -0
- package/dist/standalone/chunk-5PEAXTYQ.js +1 -0
- package/dist/standalone/chunk-5QUTVSHM.js +1 -0
- package/dist/standalone/{chunk-BYOGQ2IV.js → chunk-5RX5CQSU.js} +2 -2
- package/dist/standalone/{chunk-O2NMPIV2.js → chunk-5WNGRT7N.js} +1 -1
- package/dist/standalone/chunk-5Z2U4KBN.js +1 -0
- package/dist/standalone/chunk-66BMMNUR.js +1 -0
- package/dist/standalone/chunk-6FPV3EK2.js +1 -0
- package/dist/standalone/chunk-6G3E4PJ2.js +1 -0
- package/dist/standalone/chunk-75TRPM7O.js +1 -0
- package/dist/standalone/chunk-7MLX5CGD.js +1 -0
- package/dist/standalone/chunk-7QEZ2SFW.js +1 -0
- package/dist/standalone/chunk-7TQ7BZ67.js +1 -0
- package/dist/standalone/chunk-A2Q3TGIQ.js +1 -0
- package/dist/standalone/chunk-AD5J2ANS.js +1 -0
- package/dist/standalone/chunk-ALR4VAUE.js +1 -0
- package/dist/standalone/chunk-AXE2SDRU.js +1 -0
- package/dist/standalone/chunk-AZIKM5BA.js +1 -0
- package/dist/standalone/chunk-BAEIW3YS.js +1 -0
- package/dist/standalone/chunk-BBDTJG2K.js +1 -0
- package/dist/standalone/chunk-BCUOQNI2.js +1 -0
- package/dist/standalone/chunk-BG2CJOVS.js +1 -0
- package/dist/standalone/chunk-BI6MZHZJ.js +1 -0
- package/dist/standalone/chunk-BKI3JMXQ.js +1 -0
- package/dist/standalone/chunk-CKEQX655.js +1 -0
- package/dist/standalone/{chunk-DX55P3KZ.js → chunk-CL3JOU6F.js} +1 -1
- package/dist/standalone/chunk-CP7QNLR4.js +1 -0
- package/dist/standalone/chunk-CVSIFPI5.js +1 -0
- package/dist/standalone/chunk-D57B4MFK.js +1 -0
- package/dist/standalone/chunk-D65UVZIA.js +1 -0
- package/dist/standalone/{chunk-DBVJ5VLI.js → chunk-DA2CAFXI.js} +1 -1
- package/dist/standalone/chunk-DB6QX4X6.js +1 -0
- package/dist/standalone/chunk-DZFXH55R.js +1 -0
- package/dist/standalone/chunk-ELSQ4FVH.js +1 -0
- package/dist/standalone/chunk-EPWCW2DF.js +1 -0
- package/dist/standalone/chunk-FHLODLBC.js +1 -0
- package/dist/standalone/chunk-FJLRSFTE.js +1 -0
- package/dist/standalone/{chunk-3FS22LNI.js → chunk-FVCBNFQW.js} +3 -3
- package/dist/standalone/{chunk-VEWQWS3J.js → chunk-FWM5Z6CH.js} +1 -1
- package/dist/standalone/chunk-GJXCPZDN.js +1 -0
- package/dist/standalone/chunk-GNI37YCV.js +33 -0
- package/dist/standalone/chunk-GVQPNM3T.js +3 -0
- package/dist/standalone/chunk-GWNGVKLG.js +1 -0
- package/dist/standalone/chunk-GXTSE66Z.js +1 -0
- package/dist/standalone/chunk-H3EIPYRZ.js +1 -0
- package/dist/standalone/chunk-H5TMLWIS.js +1 -0
- package/dist/standalone/{chunk-XIRKBJPD.js → chunk-HBG6SSE2.js} +5 -5
- package/dist/standalone/chunk-HC2B7SXW.js +1 -0
- package/dist/standalone/chunk-HCOF7HOM.js +1 -0
- package/dist/standalone/chunk-HGCOTYPV.js +1 -0
- package/dist/standalone/chunk-HLHMHCXS.js +1 -0
- package/dist/standalone/chunk-HSF2DCJ2.js +30 -0
- package/dist/standalone/chunk-HZDLUAWS.js +1 -0
- package/dist/standalone/{chunk-3PAYDWHN.js → chunk-I3SSF2T6.js} +2 -2
- package/dist/standalone/chunk-I5QX75DE.js +1 -0
- package/dist/standalone/chunk-ICHZ2IBL.js +1 -0
- package/dist/standalone/{chunk-7ZIYHKLX.js → chunk-IG5VD7R7.js} +3 -3
- package/dist/standalone/{chunk-SU5DTRGK.js → chunk-IHGRWY3Y.js} +1 -1
- package/dist/standalone/chunk-J45HAKBU.js +1 -0
- package/dist/standalone/chunk-J4PQAVOF.js +1 -0
- package/dist/standalone/chunk-JD6PRRFO.js +1 -0
- package/dist/standalone/chunk-JOPNP4EO.js +1 -0
- package/dist/standalone/chunk-JVP3TR3A.js +1 -0
- package/dist/standalone/chunk-KGLIQIZU.js +1 -0
- package/dist/standalone/{chunk-ONWGX5Y4.js → chunk-KH6OXCG3.js} +1 -1
- package/dist/standalone/chunk-KKMQUBYH.js +1 -0
- package/dist/standalone/chunk-L2FYX4FN.js +1 -0
- package/dist/standalone/chunk-LDHJRHPZ.js +1 -0
- package/dist/standalone/chunk-LSEUUZN4.js +1 -0
- package/dist/standalone/chunk-MNYDT3RH.js +1 -0
- package/dist/standalone/chunk-MT4ICMXJ.js +1 -0
- package/dist/standalone/chunk-MXJTD2OX.js +1 -0
- package/dist/standalone/chunk-NGZNXNRD.js +1 -0
- package/dist/standalone/chunk-O3AZ7JKE.js +1 -0
- package/dist/standalone/chunk-OK2QU2EV.js +1 -0
- package/dist/standalone/{chunk-IH2CJZF2.js → chunk-ONTGYVAN.js} +1 -1
- package/dist/standalone/chunk-OWRKSQPE.js +1 -0
- package/dist/standalone/chunk-OZAOWE7T.js +1 -0
- package/dist/standalone/chunk-P5EVJEGC.js +1 -0
- package/dist/standalone/chunk-PDBW6GTJ.js +1 -0
- package/dist/standalone/chunk-PJUVJTDR.js +1 -0
- package/dist/standalone/chunk-Q3IA6HPX.js +1 -0
- package/dist/standalone/chunk-QAOZXPLU.js +1 -0
- package/dist/standalone/chunk-QKUVJIRX.js +1 -0
- package/dist/standalone/chunk-QNM2J7MG.js +1 -0
- package/dist/standalone/chunk-QRA7AKYO.js +1 -0
- package/dist/standalone/chunk-RBIVXSXT.js +1 -0
- package/dist/standalone/chunk-RCXNYW7P.js +1 -0
- package/dist/standalone/{chunk-TDVDZ7XQ.js → chunk-RIAOZECW.js} +1 -1
- package/dist/standalone/{chunk-LUHXNZI4.js → chunk-RTS5G3ET.js} +1 -1
- package/dist/standalone/chunk-S36FVTKK.js +1 -0
- package/dist/standalone/chunk-SDDEOSQB.js +1 -0
- package/dist/standalone/chunk-SHHGIT7M.js +7 -0
- package/dist/standalone/chunk-SR6CPTRT.js +1 -0
- package/dist/standalone/chunk-SVQWZPO4.js +1 -0
- package/dist/standalone/chunk-T3ZCW3RG.js +1 -0
- package/dist/standalone/chunk-TEMI7MVE.js +1 -0
- package/dist/standalone/chunk-TKBTZX4K.js +1 -0
- package/dist/standalone/chunk-TW4O2BA5.js +159 -0
- package/dist/standalone/chunk-U5MPNEM2.js +1 -0
- package/dist/standalone/chunk-UD5REVU2.js +1 -0
- package/dist/standalone/chunk-ULQNADMJ.js +1 -0
- package/dist/standalone/chunk-UPPNZ6MI.js +1 -0
- package/dist/standalone/{chunk-PQH2LSJX.js → chunk-UQA2AJGI.js} +1 -1
- package/dist/standalone/chunk-UTQLJKHH.js +1 -0
- package/dist/standalone/chunk-UVG3ZISC.js +1 -0
- package/dist/standalone/chunk-UXBNXITB.js +1 -0
- package/dist/standalone/chunk-UZ2ZXB74.js +1 -0
- package/dist/standalone/chunk-V3BE427M.js +1 -0
- package/dist/standalone/chunk-VQDTA4P6.js +1 -0
- package/dist/standalone/chunk-W4LJQYCI.js +1 -0
- package/dist/standalone/chunk-WLHQ4FKC.js +1 -0
- package/dist/standalone/chunk-XPFVUAPX.js +1 -0
- package/dist/standalone/{chunk-SYGCASPT.js → chunk-Y2YLTUMD.js} +1 -1
- package/dist/standalone/chunk-Y3IGTWUE.js +1 -0
- package/dist/standalone/chunk-Y64STA6O.js +1 -0
- package/dist/standalone/chunk-YEVTA35E.js +1 -0
- package/dist/standalone/chunk-YEXTJUKQ.js +6 -0
- package/dist/standalone/chunk-YFTPHGS2.js +1 -0
- package/dist/standalone/{chunk-R36QXQZX.js → chunk-YORPLSI5.js} +1 -1
- package/dist/standalone/chunk-Z64BZNPS.js +1 -0
- package/dist/standalone/chunk-Z6VILGGP.js +5 -0
- package/dist/standalone/chunk-ZBOB33BA.js +1 -0
- package/dist/standalone/{chunk-5R2YO7HF.js → chunk-ZOKSVUID.js} +4 -4
- package/dist/standalone/{chunk-H7HZ42JY.js → chunk-ZPQBVYNN.js} +1 -1
- package/dist/standalone/chunk-ZSWW2UGP.js +1 -0
- package/dist/standalone/studio.js +2 -2
- package/dist/styles.css +1 -1
- package/package.json +7 -6
- package/dist/packem_shared/ADMIN_FUNCTIONS-4aGsMs95.mjs +0 -1
- package/dist/packem_shared/Studio-MA8kKZLu.mjs +0 -1
- package/dist/packem_shared/advisor-view-tBumWci_.mjs +0 -1
- package/dist/packem_shared/error-alert-C0R39DO1.mjs +0 -1
- package/dist/packem_shared/recording-client-DAipTA_n.mjs +0 -1
- package/dist/packem_shared/studio-UhUrPz5J.mjs +0 -2
- package/dist/packem_shared/use-sql-assistant-rZPs3LC3.mjs +0 -1
- package/dist/standalone/chunk-2AH4ABE5.js +0 -1
- package/dist/standalone/chunk-2G57ENH5.js +0 -1
- package/dist/standalone/chunk-3GXPALXG.js +0 -1
- package/dist/standalone/chunk-3GYLOE4V.js +0 -1
- package/dist/standalone/chunk-473JK2PQ.js +0 -1
- package/dist/standalone/chunk-4C4THJUD.js +0 -1
- package/dist/standalone/chunk-4DAKKAK7.js +0 -1
- package/dist/standalone/chunk-4M57OYFX.js +0 -1
- package/dist/standalone/chunk-4SQBAPY6.js +0 -1
- package/dist/standalone/chunk-5DNGK3NT.js +0 -1
- package/dist/standalone/chunk-5GIQ6C5N.js +0 -1
- package/dist/standalone/chunk-5WJG7FMH.js +0 -1
- package/dist/standalone/chunk-63KDHS3H.js +0 -1
- package/dist/standalone/chunk-6B6ARRMI.js +0 -1
- package/dist/standalone/chunk-6LMO2D54.js +0 -1
- package/dist/standalone/chunk-6M7FLLMT.js +0 -1
- package/dist/standalone/chunk-6QEXGYWH.js +0 -1
- package/dist/standalone/chunk-6UTZXEW3.js +0 -1
- package/dist/standalone/chunk-6VAY6L4J.js +0 -1
- package/dist/standalone/chunk-7PADVGQX.js +0 -1
- package/dist/standalone/chunk-7RGYCU6F.js +0 -1
- package/dist/standalone/chunk-7UM5ROG6.js +0 -1
- package/dist/standalone/chunk-A566HCBX.js +0 -1
- package/dist/standalone/chunk-A5JISKHE.js +0 -1
- package/dist/standalone/chunk-ADNRFCMZ.js +0 -1
- package/dist/standalone/chunk-AP4PC2M4.js +0 -1
- package/dist/standalone/chunk-BFE2DRP6.js +0 -33
- package/dist/standalone/chunk-BPEB4KFE.js +0 -1
- package/dist/standalone/chunk-BVX45MU5.js +0 -7
- package/dist/standalone/chunk-C6GN7ZXJ.js +0 -1
- package/dist/standalone/chunk-CL2VZNDI.js +0 -1
- package/dist/standalone/chunk-CNA3TVUK.js +0 -1
- package/dist/standalone/chunk-CZ6HBDIL.js +0 -1
- package/dist/standalone/chunk-D6S7MXW4.js +0 -1
- package/dist/standalone/chunk-E26OT26O.js +0 -1
- package/dist/standalone/chunk-FCAXVYAX.js +0 -1
- package/dist/standalone/chunk-FXPAJDES.js +0 -1
- package/dist/standalone/chunk-HHRYM6UW.js +0 -1
- package/dist/standalone/chunk-HPRF5LMA.js +0 -1
- package/dist/standalone/chunk-IB22LETR.js +0 -1
- package/dist/standalone/chunk-IBJVVHV5.js +0 -1
- package/dist/standalone/chunk-IENQRRQT.js +0 -1
- package/dist/standalone/chunk-IQ4TTHQT.js +0 -1
- package/dist/standalone/chunk-ITH5LRWM.js +0 -1
- package/dist/standalone/chunk-J6VFG6M5.js +0 -1
- package/dist/standalone/chunk-JSDKOE4U.js +0 -1
- package/dist/standalone/chunk-JTGGWF7R.js +0 -1
- package/dist/standalone/chunk-JZD7ZN3F.js +0 -1
- package/dist/standalone/chunk-K3CWB3AM.js +0 -1
- package/dist/standalone/chunk-KNFB3FGW.js +0 -1
- package/dist/standalone/chunk-KNXWDE4N.js +0 -1
- package/dist/standalone/chunk-KRPXOSBL.js +0 -1
- package/dist/standalone/chunk-KRY7BYHT.js +0 -1
- package/dist/standalone/chunk-KYAG2YMF.js +0 -1
- package/dist/standalone/chunk-KZCEJFZF.js +0 -1
- package/dist/standalone/chunk-KZILJQX3.js +0 -8
- package/dist/standalone/chunk-LEYUH5TS.js +0 -1
- package/dist/standalone/chunk-LFM672WN.js +0 -1
- package/dist/standalone/chunk-LIGOLZND.js +0 -1
- package/dist/standalone/chunk-LPU6YTSU.js +0 -1
- package/dist/standalone/chunk-MWJC3S62.js +0 -1
- package/dist/standalone/chunk-NP2AQOLE.js +0 -1
- package/dist/standalone/chunk-NVKLYDOH.js +0 -1
- package/dist/standalone/chunk-O2X2XYCM.js +0 -1
- package/dist/standalone/chunk-O3MDWYXF.js +0 -1
- package/dist/standalone/chunk-ONG4JEZD.js +0 -1
- package/dist/standalone/chunk-OS26JXYA.js +0 -1
- package/dist/standalone/chunk-OXFKZ4BM.js +0 -1
- package/dist/standalone/chunk-PGTEGUAB.js +0 -1
- package/dist/standalone/chunk-PTBUWRBY.js +0 -1
- package/dist/standalone/chunk-Q6HA3L2H.js +0 -1
- package/dist/standalone/chunk-QGV5ARD2.js +0 -1
- package/dist/standalone/chunk-QWRK4ESB.js +0 -1
- package/dist/standalone/chunk-RL2ITK2N.js +0 -1
- package/dist/standalone/chunk-RTJO3AR4.js +0 -1
- package/dist/standalone/chunk-SFY646MC.js +0 -1
- package/dist/standalone/chunk-T5UMHPAB.js +0 -1
- package/dist/standalone/chunk-T6HV2FQP.js +0 -2
- package/dist/standalone/chunk-T7ZKNNGX.js +0 -1
- package/dist/standalone/chunk-TCYPNSTV.js +0 -1
- package/dist/standalone/chunk-TQM6XHBA.js +0 -1
- package/dist/standalone/chunk-TRMWBRRU.js +0 -1
- package/dist/standalone/chunk-TW7KJSMR.js +0 -15
- package/dist/standalone/chunk-TYD3V4NB.js +0 -1
- package/dist/standalone/chunk-TZKLK52W.js +0 -1
- package/dist/standalone/chunk-U4RXQSQ7.js +0 -1
- package/dist/standalone/chunk-UNZ2UBVL.js +0 -1
- package/dist/standalone/chunk-VJRNOSRY.js +0 -1
- package/dist/standalone/chunk-W2BCSK5S.js +0 -1
- package/dist/standalone/chunk-W7MRISE3.js +0 -1
- package/dist/standalone/chunk-WM72PRE3.js +0 -1
- package/dist/standalone/chunk-X4WHMCOZ.js +0 -1
- package/dist/standalone/chunk-X74GEPSG.js +0 -1
- package/dist/standalone/chunk-XKPD4SFN.js +0 -1
- package/dist/standalone/chunk-XMSNLMWU.js +0 -1
- package/dist/standalone/chunk-XOPFDWXX.js +0 -1
- package/dist/standalone/chunk-XQLOVFPP.js +0 -1
- package/dist/standalone/chunk-XSHYZPGF.js +0 -1
- package/dist/standalone/chunk-XST3UEHU.js +0 -1
- package/dist/standalone/chunk-XYR5NST4.js +0 -1
- package/dist/standalone/chunk-Y74LIFSL.js +0 -1
- package/dist/standalone/chunk-YHTHRYP5.js +0 -1
- package/dist/standalone/chunk-YMEKCV27.js +0 -1
- package/dist/standalone/chunk-Z5EV64KS.js +0 -1
- package/dist/standalone/chunk-ZBON5T5A.js +0 -1
- package/dist/standalone/chunk-ZGSL4DPP.js +0 -1
- package/dist/standalone/chunk-ZOQTXWPK.js +0 -1
- package/dist/standalone/chunk-ZTOREMGH.js +0 -1
- package/dist/standalone/chunk-ZZ5GICTF.js +0 -1
- /package/dist/standalone/{chunk-UYEZR3BI.js → chunk-P6VNMPWR.js} +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import{a as et,b as tt}from"./chunk-UZ2ZXB74.js";import"./chunk-5WNGRT7N.js";import"./chunk-JVP3TR3A.js";import{d as Ze}from"./chunk-KH6OXCG3.js";import"./chunk-66BMMNUR.js";import{a as Ae}from"./chunk-CVSIFPI5.js";import{a as Ye}from"./chunk-YFTPHGS2.js";import"./chunk-Y2YLTUMD.js";import"./chunk-JD6PRRFO.js";import"./chunk-NGZNXNRD.js";import"./chunk-2SNHKJXK.js";import{a as Je}from"./chunk-2DT3QG6Q.js";import"./chunk-BCUOQNI2.js";import"./chunk-P5EVJEGC.js";import"./chunk-D65UVZIA.js";import"./chunk-NGVP66OH.js";import"./chunk-QAOZXPLU.js";import"./chunk-BG2CJOVS.js";import"./chunk-YEVTA35E.js";import{a as Ve}from"./chunk-FHLODLBC.js";import{b as Ge}from"./chunk-3D67ZJRW.js";import{c as Ue,d as we,e as Ne,f as Ee,g as Me}from"./chunk-ZSWW2UGP.js";import"./chunk-QRA7AKYO.js";import{i as ye}from"./chunk-IHGRWY3Y.js";import"./chunk-OWRKSQPE.js";import"./chunk-4EPW63HS.js";import"./chunk-V3BE427M.js";import"./chunk-CKEQX655.js";import"./chunk-UD5REVU2.js";import"./chunk-T3ZCW3RG.js";import{a as Xe}from"./chunk-LSEUUZN4.js";import"./chunk-7QEZ2SFW.js";import{b as Ke}from"./chunk-BBDTJG2K.js";import{a as ve}from"./chunk-2W4UO5BC.js";import"./chunk-4N76XUNG.js";import{m as Ce}from"./chunk-SHHGIT7M.js";import"./chunk-ZPQBVYNN.js";import{B as J,h as ge,i as xe,j as Fe,r as Qe,s as se,x as ie}from"./chunk-GNI37YCV.js";import"./chunk-PDBW6GTJ.js";import{a as wt}from"./chunk-GWNGVKLG.js";import{a as yt,b as St}from"./chunk-6G3E4PJ2.js";import{a as d,d as De}from"./chunk-5PEAXTYQ.js";var X=De(wt(),1),H=De(yt(),1);var u=De(St(),1);var Se=class{static{d(this,"Diff")}diff(e,n,t={}){let o;typeof t=="function"?(o=t,t={}):"callback"in t&&(o=t.callback);let r=this.castInput(e,t),l=this.castInput(n,t),i=this.removeEmpty(this.tokenize(r,t)),a=this.removeEmpty(this.tokenize(l,t));return this.diffWithOptionsObj(i,a,t,o)}diffWithOptionsObj(e,n,t,o){var r;let l=d(h=>{if(h=this.postProcess(h,t),o){setTimeout(function(){o(h)},0);return}else return h},"done"),i=n.length,a=e.length,c=1,m=i+a;t.maxEditLength!=null&&(m=Math.min(m,t.maxEditLength));let p=(r=t.timeout)!==null&&r!==void 0?r:1/0,f=Date.now()+p,b=[{oldPos:-1,lastComponent:void 0}],g=this.extractCommon(b[0],n,e,0,t);if(b[0].oldPos+1>=a&&g+1>=i)return l(this.buildValues(b[0].lastComponent,n,e));let k=-1/0,q=1/0,N=d(()=>{for(let h=Math.max(k,-c);h<=Math.min(q,c);h+=2){let S,x=b[h-1],v=b[h+1];x&&(b[h-1]=void 0);let y=!1;if(v){let E=v.oldPos-h;y=v&&0<=E&&E<i}let w=x&&x.oldPos+1<a;if(!y&&!w){b[h]=void 0;continue}if(!w||y&&x.oldPos<v.oldPos?S=this.addToPath(v,!0,!1,0,t):S=this.addToPath(x,!1,!0,1,t),g=this.extractCommon(S,n,e,h,t),S.oldPos+1>=a&&g+1>=i)return l(this.buildValues(S.lastComponent,n,e))||!0;b[h]=S,S.oldPos+1>=a&&(q=Math.min(q,h-1)),g+1>=i&&(k=Math.max(k,h+1))}c++},"execEditLength");if(o)d(function h(){setTimeout(function(){if(c>m||Date.now()>f)return o(void 0);N()||h()},0)},"exec")();else for(;c<=m&&Date.now()<=f;){let h=N();if(h)return h}}addToPath(e,n,t,o,r){let l=e.lastComponent;return l&&!r.oneChangePerToken&&l.added===n&&l.removed===t?{oldPos:e.oldPos+o,lastComponent:{count:l.count+1,added:n,removed:t,previousComponent:l.previousComponent}}:{oldPos:e.oldPos+o,lastComponent:{count:1,added:n,removed:t,previousComponent:l}}}extractCommon(e,n,t,o,r){let l=n.length,i=t.length,a=e.oldPos,c=a-o,m=0;for(;c+1<l&&a+1<i&&this.equals(t[a+1],n[c+1],r);)c++,a++,m++,r.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return m&&!r.oneChangePerToken&&(e.lastComponent={count:m,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=a,c}equals(e,n,t){return t.comparator?t.comparator(e,n):e===n||!!t.ignoreCase&&e.toLowerCase()===n.toLowerCase()}removeEmpty(e){let n=[];for(let t=0;t<e.length;t++)e[t]&&n.push(e[t]);return n}castInput(e,n){return e}tokenize(e,n){return Array.from(e)}join(e){return e.join("")}postProcess(e,n){return e}get useLongestToken(){return!1}buildValues(e,n,t){let o=[],r;for(;e;)o.push(e),r=e.previousComponent,delete e.previousComponent,e=r;o.reverse();let l=o.length,i=0,a=0,c=0;for(;i<l;i++){let m=o[i];if(m.removed)m.value=this.join(t.slice(c,c+m.count)),c+=m.count;else{if(!m.added&&this.useLongestToken){let p=n.slice(a,a+m.count);p=p.map(function(f,b){let g=t[c+b];return g.length>f.length?g:f}),m.value=this.join(p)}else m.value=this.join(n.slice(a,a+m.count));a+=m.count,m.added||(c+=m.count)}}return o}};var Pe=class extends Se{static{d(this,"LineDiff")}constructor(){super(...arguments),this.tokenize=qt}equals(e,n,t){return t.ignoreWhitespace?((!t.newlineIsToken||!e.includes(`
|
|
2
|
+
`))&&(e=e.trim()),(!t.newlineIsToken||!n.includes(`
|
|
3
|
+
`))&&(n=n.trim())):t.ignoreNewlineAtEof&&!t.newlineIsToken&&(e.endsWith(`
|
|
4
|
+
`)&&(e=e.slice(0,-1)),n.endsWith(`
|
|
5
|
+
`)&&(n=n.slice(0,-1))),super.equals(e,n,t)}},nt=new Pe;function $e(s,e,n){return nt.diff(s,e,n)}d($e,"diffLines");function qt(s,e){e.stripTrailingCr&&(s=s.replace(/\r\n/g,`
|
|
6
|
+
`));let n=[],t=s.split(/(\n|\r\n)/);t[t.length-1]||t.pop();for(let o=0;o<t.length;o++){let r=t[o];o%2&&!e.newlineIsToken?n[n.length-1]+=r:n.push(r)}return n}d(qt,"tokenize");var kt="x",ot=" ",Ct={'"':'"',"'":"'","[":"]","`":"`"},at=d((s,e)=>{let n=e+2;for(;n<s.length&&s[n]!==`
|
|
7
|
+
`;)n+=1;return n},"Je"),ct=d((s,e)=>{let n=s.indexOf("*/",e+2);return n===-1?-1:n+2},"Xe"),dt=d(s=>{let e=s.split(""),n=0;for(;n<s.length;){let t=s[n]??"",o=Ct[t];if(t==="-"&&s[n+1]==="-"){let r=at(s,n);e.fill(ot,n,r),n=r}else if(t==="/"&&s[n+1]==="*"){let r=ct(s,n);if(r===-1)return;e.fill(ot,n,r),n=r}else if(o!==void 0){let r=n+1;for(;r<s.length;)if(s[r]!==o)r+=1;else if(o!=="]"&&s[r+1]===o)r+=2;else break;if(r>=s.length)return;e.fill(kt,n,r+1),n=r+1}else n+=1}for(let t=0;t<s.length;t+=1)s[t]===`
|
|
8
|
+
`&&(e[t]=`
|
|
9
|
+
`);return e.join("")},"Ze"),Nt=/^(?:explain\s+(?:query\s+plan\s+)?)?(?:select|with)\b/iu,Et=/\b(?:alter|attach|create|delete|detach|drop|insert|pragma|reindex|truncate|update|vacuum)\b|\breplace\b(?!\s*\()/iu,Tt=/^\w+/u,Lt=/;\s*$/u,It=/\s/u,ut=d(s=>{let e=0;for(;e<s.length;){let n=s[e];if(n!==void 0&&It.test(n))e+=1;else if(n==="-"&&s[e+1]==="-")e=at(s,e);else if(n==="/"&&s[e+1]==="*"){let t=ct(s,e);if(t===-1)break;e=t}else break}return e},"et"),Rt=d(s=>{let e=ut(s),n=s.slice(e).trimEnd();if(n==="")return{code:"SQL_EMPTY",message:"the query is empty"};let t=(dt(n)??n).replace(Lt,""),o=n.slice(0,t.length),r=t.indexOf(";");if(r!==-1)return{code:"SQL_MULTIPLE_STATEMENTS",length:1,message:"only a single statement may be run",offset:e+r};let l="the SQL editor is read-only \u2014 only SELECT / WITH / EXPLAIN queries are allowed";if(!Nt.test(o))return{code:"SQL_NOT_READONLY",length:Tt.exec(o)?.[0].length??1,message:l,offset:e};let i=Et.exec(o);if(i!==null)return{code:"SQL_NOT_READONLY",length:i[0].length,message:`${l} (\`${i[0].toUpperCase()}\` is not allowed)`,offset:e+i.index}},"It"),_t=/^explain\b/iu,Dt=d(s=>_t.test(s.slice(ut(s)))?s:`EXPLAIN QUERY PLAN ${s}`,"At"),ze=d((s,e)=>{let n=s.trim();if(n==="")return[];let t=e+s.indexOf(n),o=Rt(n);return o?.code==="SQL_EMPTY"?[]:[o===void 0?{offset:t,sql:n}:{offset:t,rejection:o,sql:n}]},"Oe"),mt=d(s=>{let e=dt(s);if(e===void 0)return ze(s,0);let n=[],t=0;for(let o=0;o<=e.length;o+=1)o!==e.length&&e[o]!==";"||(n.push(...ze(s.slice(t,o),t)),t=o+1);return n},"tt"),Mt=["ORDER BY","GROUP BY","LEFT JOIN","RIGHT JOIN","INNER JOIN","OUTER JOIN","CROSS JOIN","EXPLAIN QUERY PLAN","SELECT","DISTINCT","FROM","WHERE","HAVING","LIMIT","OFFSET","JOIN","ON","AND","OR","AS","ASC","DESC","WITH","UNION","EXPLAIN"],At=["FROM","WHERE","ORDER BY","GROUP BY","HAVING","LIMIT","OFFSET","UNION","JOIN","LEFT JOIN","RIGHT JOIN","INNER JOIN","OUTER JOIN","CROSS JOIN"],_e=String.fromCodePoint(0),Pt=new RegExp(`${_e}${String.raw`(\d+)`}${_e}`,"gu"),$t=Mt.map(s=>({pattern:new RegExp(String.raw`\b${s.replaceAll(" ",String.raw`\s+`)}\b`,"giu"),replacement:s})),Ot=At.map(s=>({pattern:new RegExp(String.raw`\s+${s.replaceAll(" ",String.raw`\s+`)}\b`,"gu"),replacement:`
|
|
10
|
+
${s}`})),zt=d(s=>{let e=[],n=s.replaceAll(/'(?:[^']|'')*'/gu,t=>(e.push(t),`${_e}${(e.length-1).toString()}${_e}`)).replaceAll(/\s+/gu," ").trim();for(let{pattern:t,replacement:o}of $t)n=n.replaceAll(t,o);for(let{pattern:t,replacement:o}of Ot)n=n.replaceAll(t,o);return n=n.replaceAll(Pt,(t,o)=>e[Number(o)]??""),n},"Bt"),jt=/\b(?:from|join)\s+([a-z_][\w$]*)(?:\s+(?:as\s+)?([a-z_][\w$]*))?/giu,Ht=/(?:\bwith\s+(?:recursive\s+)?|,\s*)([a-z_][\w$]*)\s+as\s*\(/giu,Bt=new Set(["cross","full","group","having","inner","join","left","limit","offset","on","order","right","union","using","where","window"]),Wt=/[^\n]/gu,Ft=d((s,e)=>{let n=s[e];if(n==="'"){let t=e+1;for(;t<s.length&&s[t]!=="'";)t+=1;return Math.min(t+1,s.length)}if(n==="-"&&s[e+1]==="-"){let t=s.indexOf(`
|
|
11
|
+
`,e);return t===-1?s.length:t}if(n==="/"&&s[e+1]==="*"){let t=s.indexOf("*/",e+2);return t===-1?s.length:t+2}return-1},"Qt"),Qt=d(s=>{let e="",n=0;for(;n<s.length;){let t=Ft(s,n);t===-1?(e+=s.slice(n,n+1),n+=1):(e+=s.slice(n,t).replaceAll(Wt," "),n=t)}return e},"jt"),Kt=d(s=>{let e=new Set;for(let n of s.matchAll(Ht))e.add((n[1]??"").toLowerCase());return e},"zt"),Ut=d((s,e)=>{let n=new Map;for(let t of s.matchAll(jt)){let o=(t[1]??"").toLowerCase(),r=(t[2]??"").toLowerCase();e.has(o)&&(n.set(o,o),r!==""&&!Bt.has(r)&&n.set(r,o))}return n},"Kt"),ft=d((s,e)=>{let n=Qt(s),t=new Set(e.map(o=>o.toLowerCase()));return{ctes:Kt(n),masked:n,targets:Ut(n,t)}},"nt"),Gt=/^(?:__lunora|sqlite_)/iu,Vt=/\b(?:from|join)\s+([a-z_][\w$]*)/giu,Xt=/\b([a-z_][\w$]*)\.([a-z_][\w$]*)/giu,Yt=new Set(["cross","full","group","having","inner","join","lateral","left","limit","offset","order","right","select","union","where","window"]),Jt=d((s,e,n)=>{let t=[];for(let o of s.matchAll(Vt)){let r=o[1]??"",l=r.toLowerCase();!e.has(l)&&!n.has(l)&&!Yt.has(l)&&!Gt.test(r)&&t.push({length:r.length,message:`unknown table \`${r}\``,offset:o.index+o[0].length-r.length,severity:"error",source:"schema"})}return t},"Jt"),Zt=d((s,e,n)=>{let t=[],o=new Map;for(let[r,l]of Object.entries(e.columns))o.set(r.toLowerCase(),new Set(l.map(i=>i.toLowerCase())));for(let r of s.matchAll(Xt)){let l=(r[1]??"").toLowerCase(),i=r[2]??"",a=n.get(l),c=a===void 0?void 0:o.get(a);c!==void 0&&!c.has(i.toLowerCase())&&t.push({length:i.length,message:`\`${a??""}\` has no column \`${i}\``,offset:r.index+r[0].length-i.length,severity:"error",source:"schema"})}return t},"Xt"),en=/(?<![\w$."])(?:"([a-z_][\w$]*)"|([a-z_][\w$]*))(?![.(])/giu,tn=/\bas\s+"?([a-z_][\w$]*)"?/giu,nn=d((s,e,n,t)=>{let o=[...new Set(n.values())],r=new Map,l=new Set;for(let c of o){for(let m of e.columns[c]??[])l.add(m.toLowerCase());for(let m of e.docFields?.[c]??[])r.set(m.toLowerCase(),m)}if(r.size===0)return[];let i=new Set([...s.matchAll(tn)].map(c=>(c[1]??"").toLowerCase())),a=[];for(let c of s.matchAll(en)){let m=c[1],p=m??c[2]??"",f=p.toLowerCase(),b=r.get(f);b===void 0||l.has(f)||i.has(f)||t.has(f)||n.has(f)||a.push({length:p.length,message:`\`${b}\` is a \`__doc__\` field, not a column \u2014 use \`json_extract(__doc__, '$.${b}')\``,offset:c.index+(m===void 0?0:1),severity:"error",source:"schema"})}return a},"tn"),on=d((s,e)=>{if(s.trim()==="")return[];let n=mt(s),t=new Set(e.tables.map(r=>r.toLowerCase())),o=[];for(let r of n){let{offset:l,rejection:i}=r;if(i!==void 0){o.push({length:i.length,message:i.message,offset:i.offset===void 0?l:l+i.offset,severity:"error",source:"gate"});continue}let{ctes:a,masked:c,targets:m}=ft(r.sql,e.tables);o.push(...[...Jt(c,t,a),...Zt(c,e,m),...nn(c,e,m,a)].map(p=>({...p,offset:p.offset===void 0?l:l+p.offset})))}return o},"nn"),rn=ge(ve.lintSql),ln=600,sn=d((s,e,n)=>{let t=Ce(),[o,r]=(0,H.useState)([]),l=(0,H.useMemo)(()=>on(s,e),[s,e]),i=Je(s,ln),a=l.some(p=>p.source==="gate")||i.trim()==="",c=(0,H.useCallback)(async p=>{try{let f=await t.query(rn,{sql:i},xe(n));p.cancelled||r(f.diagnostics??[])}catch{p.cancelled||r([])}},[t,i,n]);(0,H.useEffect)(()=>{if(a){r([]);return}let p={cancelled:!1};return se(c(p)),()=>{p.cancelled=!0}},[c,a]);let m=i===s;return(0,H.useMemo)(()=>m?[...l,...o]:l,[l,o,m])},"ln"),Te=8,an=["AND","ASC","AS","BY","COUNT","DESC","DISTINCT","EXPLAIN","FROM","GROUP","HAVING","INNER","JOIN","LEFT","LIKE","LIMIT","NOT","NULL","OFFSET","ON","ORDER","OR","QUERY","SELECT","WHERE","WITH"],cn=new Set(["AND","BY","HAVING","ON","OR","SELECT","WHERE"]),dn=/[\w$]/,ht=d(s=>s!==void 0&&dn.test(s),"st"),pt=d(s=>{let e=s.length;for(;e>0&&ht(s[e-1]);)e-=1;return s.slice(e)},"ot"),bt=d((s,e)=>{let n=e;for(;n>0&&ht(s[n-1]);)n-=1;return{end:e,start:n,text:s.slice(n,e)}},"lt"),rt=d((s,e)=>{let n=s.slice(0,e).trimEnd();return n.endsWith(".")||cn.has(pt(n).toUpperCase())},"je"),un=d((s,e,n)=>{let t=s.slice(0,e);if(!t.endsWith("."))return;let o=pt(t.slice(0,-1));if(o!=="")return ft(s,n).targets.get(o.toLowerCase())??o},"dn"),je=d((s,e)=>s.toLowerCase().startsWith(e.toLowerCase()),"Be"),lt=d((s,e,n,t)=>{let o=[];for(let r of s)if(je(r,e)&&(o.push(t(r)),o.length>=n))break;return o},"ze"),mn=d((s,e,n)=>{let t=new Map;for(let[o,r]of Object.entries(s.columns))for(let l of r)if(je(l,e)&&!t.has(l)&&(t.set(l,o),t.size>=n))return[...t].map(([i,a])=>({detail:a,kind:"column",label:i}));return[...t].map(([o,r])=>({detail:r,kind:"column",label:o}))},"un"),fn=d((s,e,n)=>{let t=bt(s,e),o=un(s,t.start,n.tables);if(o!==void 0){let a=n.columns[o]??n.columns[o.toLowerCase()]??[];return lt(a,t.text,Te,c=>({detail:o,kind:"column",label:c}))}if(t.text===""&&!rt(s,t.start))return[];let r=lt(n.tables,t.text,Te,a=>({kind:"table",label:a})),l=mn(n,t.text,Te),i=an.flatMap(a=>t.text!==""&&je(a,t.text)&&a.toLowerCase()!==t.text.toLowerCase()?[{kind:"keyword",label:a}]:[]);return(rt(s,t.start)?[...l,...r,...i]:[...r,...l,...i]).slice(0,Te)},"fn"),hn=d((s,e,n)=>{let t=bt(s,e),o=s.slice(0,t.start)+n.label+s.slice(t.end);return{caret:t.start+n.label.length,value:o}},"mn"),pn=["boxSizing","borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","paddingBottom","paddingLeft","paddingRight","paddingTop","tabSize","textIndent","textTransform","width","wordSpacing"],bn=d((s,e)=>{let n=globalThis.getComputedStyle(s),t=globalThis.document.createElement("div"),{style:o}=t;o.position="absolute",o.visibility="hidden",o.whiteSpace="pre-wrap",o.overflowWrap="break-word";for(let a of pn)o[a]=n[a];t.textContent=s.value.slice(0,Math.max(0,e));let r=globalThis.document.createElement("span");r.textContent=s.value.slice(Math.max(0,e))||".",t.append(r),globalThis.document.body.append(t);let l=r.offsetLeft-s.scrollLeft,i=r.offsetTop-s.scrollTop;return t.remove(),{left:l,top:i}},"hn"),gn=d((s,e,n)=>{let t=(0,X.c)(16),[o,r]=(0,H.useState)(null),l;t[0]!==s||t[1]!==e?(l=d((N,h)=>{let S=fn(N,h,s);if(S.length===0){r(null);return}let x=e.current,{left:v,top:y}=x===null?{left:0,top:0}:bn(x,h);r(w=>w!==null&&w.active===0&&w.left===v&&w.top===y&&w.suggestions.length===S.length&&w.suggestions.every((E,I)=>{let T=S.at(I);return E.kind===T?.kind&&E.label===T.label&&E.detail===T.detail})?w:{active:0,left:v,suggestions:S,top:y})},"l"),t[0]=s,t[1]=e,t[2]=l):l=t[2];let i=l,a;t[3]===Symbol.for("react.memo_cache_sentinel")?(a=d(()=>{r(null)},"c"),t[3]=a):a=t[3];let c=a,m;t[4]===Symbol.for("react.memo_cache_sentinel")?(m=d(N=>{r(h=>{if(h===null)return h;let S=h.suggestions.length,x=(h.active+N+S)%S;return{...h,active:x}})},"d"),t[4]=m):m=t[4];let p=m,f;t[5]!==n||t[6]!==o||t[7]!==e?(f=d(N=>{let h=e.current;if(o===null||h===null)return!1;let S=o.suggestions[N??o.active];if(S===void 0)return!1;let x=hn(h.value,h.selectionStart,S);return n(x.value),r(null),requestAnimationFrame(()=>{let v=e.current;v!==null&&(v.focus(),v.setSelectionRange(x.caret,x.caret))}),!0},"f"),t[5]=n,t[6]=o,t[7]=e,t[8]=f):f=t[8];let b=f,g;t[9]!==b?(g=d(()=>b(),"g"),t[9]=b,t[10]=g):g=t[10];let k=g,q;return t[11]!==k||t[12]!==b||t[13]!==i||t[14]!==o?(q={close:c,commit:k,commitAt:b,move:p,refresh:i,state:o},t[11]=k,t[12]=b,t[13]=i,t[14]=o,t[15]=q):q=t[15],q},"bn"),xn={column:"column",keyword:"keyword",table:"table"},vn=20,yn=d(s=>{let e=(0,X.c)(17),{listboxId:n,onPick:t,state:o}=s,r=J(),l;e[0]!==o?(l=o===null?void 0:{left:o.left,top:o.top+vn},e[0]=o,e[1]=l):l=e[1];let i=l;if(o===null)return null;let a;if(e[2]!==n||e[3]!==t||e[4]!==o.active||e[5]!==o.suggestions||e[6]!==r){let m;e[8]!==n||e[9]!==t||e[10]!==o.active||e[11]!==r?(m=d((p,f)=>(0,u.jsxs)("li",{"aria-selected":f===o.active,className:ie("flex cursor-pointer items-center gap-2 px-2 py-1 text-[13px]",f===o.active?"bg-accent text-accent-foreground":"text-foreground"),"data-testid":"sql-autocomplete-item",id:`${n}-opt-${f.toString()}`,onMouseDown:d(b=>{b.preventDefault(),t(f)},"onMouseDown"),role:"option",children:[(0,u.jsx)("span",{className:"truncate font-mono",children:p.label}),p.detail!==void 0&&(0,u.jsx)("span",{className:"ms-auto truncate text-xs text-muted-foreground",children:p.detail}),(0,u.jsx)("span",{className:"shrink-0 font-mono text-[10px] tracking-wide text-muted-foreground/70 uppercase",children:r(xn[p.kind])})]},`${p.kind}:${p.label}`),"d"),e[8]=n,e[9]=t,e[10]=o.active,e[11]=r,e[12]=m):m=e[12],a=o.suggestions.map(m),e[2]=n,e[3]=t,e[4]=o.active,e[5]=o.suggestions,e[6]=r,e[7]=a}else a=e[7];let c;return e[13]!==n||e[14]!==i||e[15]!==a?(c=(0,u.jsx)("ul",{className:"absolute z-30 max-h-56 w-72 overflow-auto rounded-md border border-border bg-popover py-1 text-popover-foreground shadow-md","data-testid":"sql-autocomplete",id:n,role:"listbox",style:i,children:a}),e[13]=n,e[14]=i,e[15]=a,e[16]=c):c=e[16],c},"vn"),wn=ge(ve.listTables),Sn=ge(ve.readTablePage),qn=d(s=>{let e=(0,X.c)(18),n=Ce(),t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=[],e[0]=t):t=e[0];let[o,r]=(0,H.useState)(t),l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l={},e[1]=l):l=e[1];let[i,a]=(0,H.useState)(l),c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c={},e[2]=c):c=e[2];let[m,p]=(0,H.useState)(c),f;e[3]===Symbol.for("react.memo_cache_sentinel")?(f=new Set,e[3]=f):f=e[3];let b=(0,H.useRef)(f),g,k;e[4]!==n||e[5]!==s?(g=d(()=>{let v={cancelled:!1};return se((async()=>{try{let y=await n.query(wn,{},xe(s));v.cancelled||(r(y.map(Cn)),a({}),p({}),b.current=new Set)}catch{v.cancelled||(r([]),a({}),p({}),b.current=new Set)}})()),()=>{v.cancelled=!0}},"g"),k=[n,s],e[4]=n,e[5]=s,e[6]=g,e[7]=k):(g=e[6],k=e[7]),(0,H.useEffect)(g,k);let q;e[8]!==n||e[9]!==s?(q=d(v=>{b.current.has(v)||(b.current.add(v),se((async()=>{try{let y=await n.query(Sn,{limit:1,offset:0,table:v},xe(s)),{sqlColumns:w}=y;if(w===void 0){b.current.delete(v);return}let E=new Set(w),I=y.columns.filter(T=>!E.has(T));a(T=>({...T,[v]:w})),p(T=>({...T,[v]:I}))}catch{b.current.delete(v)}})()))},"v"),e[8]=n,e[9]=s,e[10]=q):q=e[10];let N=q,h;e[11]!==i||e[12]!==m||e[13]!==o?(h={columns:i,docFields:m,tables:o},e[11]=i,e[12]=m,e[13]=o,e[14]=h):h=e[14];let S=h,x;return e[15]!==N||e[16]!==S?(x={probe:N,schema:S},e[15]=N,e[16]=S,e[17]=x):x=e[17],x},"wn"),Oe=/\b(?:from|join|update|into)\s+([a-z_][\w$]*)|\b([a-z_][\w$]*)\s*\./gi,kn=d(s=>{let e=new Set;Oe.lastIndex=0;let n=Oe.exec(s);for(;n!==null;)e.add(n[1]??n[2]),n=Oe.exec(s);return[...e]},"Cn");function Cn(s){return s.name}d(Cn,"kn");var Nn=d(s=>(s.metaKey||s.ctrlKey)&&!s.shiftKey&&!s.altKey&&s.key.toLowerCase()==="i","Nn"),En=d(s=>{let e=(0,X.c)(44),{inlineEditEnabled:n,onSubmit:t,probe:o,schema:r,setDraft:l}=s,i=(0,H.useId)(),[a,c]=(0,H.useState)(null),m=(0,H.useRef)(null),p=(0,H.useRef)(null),f=(0,H.useRef)(null),b=gn(r,f,l),{close:g,commit:k,commitAt:q,move:N,refresh:h,state:S}=b,x;e[0]!==q?(x=d(P=>{q(P)},"x"),e[0]=q,e[1]=x):x=e[1];let v=x,y;e[2]!==h?(y=d(()=>{let P=f.current;P!==null&&P===document.activeElement&&h(P.value,P.selectionStart)},"y"),e[2]=h,e[3]=y):y=e[3];let w;e[4]!==h||e[5]!==r?(w=[h,r],e[4]=h,e[5]=r,e[6]=w):w=e[6],(0,H.useEffect)(y,w);let E;e[7]!==o||e[8]!==h||e[9]!==l?(E=d(P=>{let{selectionStart:G,value:Z}=P.target;l(Z),c(null);for(let V of kn(Z))o(V);h(Z,G)},"w"),e[7]=o,e[8]=h,e[9]=l,e[10]=E):E=e[10];let I=E,T;e[11]!==h?(T=d(P=>{let G=P.currentTarget;h(G.value,G.selectionStart)},"q"),e[11]=h,e[12]=T):T=e[12];let L=T,C;e[13]!==g||e[14]!==k||e[15]!==N?(C=d(P=>P.key==="ArrowDown"?(P.preventDefault(),N(1),!0):P.key==="ArrowUp"?(P.preventDefault(),N(-1),!0):P.key==="Escape"?(P.preventDefault(),g(),!0):(P.key==="Enter"||P.key==="Tab")&&!P.metaKey&&!P.ctrlKey&&k()?(P.preventDefault(),!0):!1,"E"),e[13]=g,e[14]=k,e[15]=N,e[16]=C):C=e[16];let R=C,_;e[17]!==S||e[18]!==g||e[19]!==n||e[20]!==R||e[21]!==t?(_=d(P=>{if(!(S!==null&&R(P))){if((P.metaKey||P.ctrlKey)&&P.key==="Enter"){P.preventDefault(),t();return}if(n&&Nn(P)){P.preventDefault(),g();let{selectionEnd:G,selectionStart:Z,value:V}=P.currentTarget,[le,ae]=Z===G?[0,V.length]:[Z,G];c({end:ae,start:le,text:V.slice(le,ae)})}}},"L"),e[17]=S,e[18]=g,e[19]=n,e[20]=R,e[21]=t,e[22]=_):_=e[22];let M=_,z;e[23]!==g?(z=d(()=>{requestAnimationFrame(()=>{g()})},"$"),e[23]=g,e[24]=z):z=e[24];let j=z,B;e[25]===Symbol.for("react.memo_cache_sentinel")?(B=d(P=>{let{scrollLeft:G,scrollTop:Z}=P.currentTarget;m.current!==null&&(m.current.scrollTop=Z),p.current!==null&&(p.current.scrollTop=Z,p.current.scrollLeft=G)},"B"),e[25]=B):B=e[25];let W=B,$;e[26]===Symbol.for("react.memo_cache_sentinel")?($=d(P=>{let G=f.current;G===null||P.offset===void 0||(G.focus(),G.setSelectionRange(P.offset,P.offset+(P.length??0)))},"P"),e[26]=$):$=e[26];let K=$,O;e[27]===Symbol.for("react.memo_cache_sentinel")?(O=d(()=>{c(null),f.current?.focus()},"M"),e[27]=O):O=e[27];let D=O,A;e[28]!==a||e[29]!==l?(A=d(P=>{let G=f.current;if(a===null||G===null)return;let{end:Z,start:V,text:le}=a;if(G.value.slice(V,Z)!==le){c(null);return}l(G.value.slice(0,V)+P+G.value.slice(Z)),c(null),G.focus(),requestAnimationFrame(()=>{G.setSelectionRange(V,V+P.length)})},"D"),e[28]=a,e[29]=l,e[30]=A):A=e[30];let Q=A,F;e[31]!==I||e[32]!==j||e[33]!==M||e[34]!==L?(F={onBlur:j,onChange:I,onKeyDown:M,onScroll:W,onSelect:L},e[31]=I,e[32]=j,e[33]=M,e[34]=L,e[35]=F):F=e[35];let ee;return e[36]!==Q||e[37]!==S||e[38]!==g||e[39]!==a||e[40]!==i||e[41]!==v||e[42]!==F?(ee={acceptInlineEdit:Q,autocompleteState:S,closeAutocomplete:g,closeInlineEdit:D,inlineEdit:a,handlers:F,listboxId:i,onPickSuggestion:v,editorRef:f,gutterRef:m,overlayRef:p,revealDiagnostic:K},e[36]=Q,e[37]=S,e[38]=g,e[39]=a,e[40]=i,e[41]=v,e[42]=F,e[43]=ee):ee=e[43],ee},"En"),Tn="lunora-studio-sql-tabs",Ln="lunora-studio-sql-active-tab",He=12,qe=d((s="",e="")=>({activeId:null,id:Me("tab"),name:e,sql:s}),"Se"),In=d(()=>Ee(Ln,""),"Rn"),Rn=d(s=>{let e=(0,X.c)(16),[n,t]=Ne(Tn),[o,r]=In(),[l]=(0,H.useState)(s),i,a;e[0]!==l||e[1]!==t||e[2]!==n.length?(i=d(()=>{n.length===0&&t([l])},"i"),a=[l,t,n.length],e[0]=l,e[1]=t,e[2]=n.length,e[3]=i,e[4]=a):(i=e[3],a=e[4]),(0,H.useEffect)(i,a);let c;e[5]!==l||e[6]!==n?(c=n.length===0?[l]:n,e[5]=l,e[6]=n,e[7]=c):c=e[7];let m=c,p;e[8]!==o||e[9]!==m?(p=m.some(g=>g.id===o)?o:m[0]?.id??"",e[8]=o,e[9]=m,e[10]=p):p=e[10];let f=p,b;return e[11]!==f||e[12]!==r||e[13]!==t||e[14]!==m?(b={activeId:f,setActiveId:r,setTabs:t,tabs:m},e[11]=f,e[12]=r,e[13]=t,e[14]=m,e[15]=b):b=e[15],b},"In"),gt=d(s=>s.activeId===null&&s.sql.trim()!=="","rt"),_n=d((s,e)=>[...s,e].slice(-He),"Ln"),Dn=d((s,e,n)=>{let t=s.findIndex(r=>r.id===e);if(t===-1)return{activeId:s[0]?.id??"",tabs:[...s]};let o=s.filter(r=>r.id!==e);if(o.length===0){let r=n();return{activeId:r.id,tabs:[r]}}return{activeId:o[Math.min(t,o.length-1)].id,tabs:o}},"An"),Mn=d((s,e)=>{let n=s.filter(t=>t.id===e);return n.length===0?{activeId:s[0]?.id??"",tabs:[...s]}:{activeId:e,tabs:n}},"_n"),An=d((s,e,n)=>{let t=s.findIndex(r=>r.id===e);if(t===-1)return{activeId:n,tabs:[...s]};let o=s.slice(0,t+1);return{activeId:o.some(r=>r.id===n)?n:e,tabs:o}},"Dn"),Pn=d(s=>{let e=s();return{activeId:e.id,tabs:[e]}},"On"),$n=d((s,e,n)=>{if(s==="others")return e.filter(t=>t.id!==n);if(s==="right"){let t=e.findIndex(o=>o.id===n);return t===-1?[]:e.slice(t+1)}return[...e]},"Mn"),st={error:null,pane:"results",result:null,running:!1},On=d(s=>{let e=(0,X.c)(69),{activeId:n,setActiveId:t,setTabs:o,tabs:r}=Rn(s),l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l={},e[0]=l):l=e[0];let[i,a]=(0,H.useState)(l),[c,m]=(0,H.useState)(null),[p,f]=(0,H.useState)(null),b;e[1]!==n||e[2]!==r?(b=r.find(Y=>Y.id===n)??r[0]??qe(),e[1]=n,e[2]=r,e[3]=b):b=e[3];let g=b,k=i[g.id]??st,q;e[4]!==g.id||e[5]!==o?(q=d(Y=>{o(te=>te.map(ne=>ne.id===g.id?{...ne,...Y}:ne))},"v"),e[4]=g.id,e[5]=o,e[6]=q):q=e[6];let N=q,h;e[7]!==g.id?(h=d(Y=>{a(te=>{let ne=te[g.id]??st;return{...te,[g.id]:{...ne,...Y}}})},"p"),e[7]=g.id,e[8]=h):h=e[8];let S=h,x;e[9]!==t||e[10]!==o||e[11]!==r.length?(x=d(Y=>{if(r.length>=He)return!1;let te=qe(Y);return o(ne=>_n(ne,te)),t(te.id),!0},"x"),e[9]=t,e[10]=o,e[11]=r.length,e[12]=x):x=e[12];let v=x,y;e[13]!==v?(y=d(()=>{v("")},"y"),e[13]=v,e[14]=y):y=e[14];let w=y,E;e[15]!==t||e[16]!==o?(E=d(Y=>{m(null),f(null),o(Y.tabs),t(Y.activeId);let te=new Set(Y.tabs.map(zn));a(ne=>Object.fromEntries(Object.entries(ne).filter(U=>{let[oe]=U;return te.has(oe)})))},"w"),e[15]=t,e[16]=o,e[17]=E):E=e[17];let I=E,T;e[18]!==I||e[19]!==r?(T=d(Y=>{I(Dn(r,Y,qe))},"q"),e[18]=I,e[19]=r,e[20]=T):T=e[20];let L=T,C;e[21]!==n||e[22]!==I||e[23]!==r?(C=d((Y,te)=>{I(Y==="others"?Mn(r,te):Y==="right"?An(r,te,n):Pn(qe))},"E"),e[21]=n,e[22]=I,e[23]=r,e[24]=C):C=e[24];let R=C,_;e[25]!==R||e[26]!==c||e[27]!==r?(_=d(Y=>{c!==null&&($n(Y,r,c.id).some(jn)?f(Y):R(Y,c.id))},"L"),e[25]=R,e[26]=c,e[27]=r,e[28]=_):_=e[28];let M=_,z;e[29]===Symbol.for("react.memo_cache_sentinel")?(z=d((Y,te)=>{te.preventDefault(),f(null),m({id:Y,x:te.clientX,y:te.clientY})},"$"),e[29]=z):z=e[29];let j=z,B;e[30]===Symbol.for("react.memo_cache_sentinel")?(B=d(()=>{m(null),f(null)},"B"),e[30]=B):B=e[30];let W=B,$;e[31]===Symbol.for("react.memo_cache_sentinel")?($=d(Y=>{Y.preventDefault(),m(null),f(null)},"P"),e[31]=$):$=e[31];let K=$,O;e[32]!==M?(O=d(()=>{M("others")},"M"),e[32]=M,e[33]=O):O=e[33];let D=O,A;e[34]!==M?(A=d(()=>{M("right")},"D"),e[34]=M,e[35]=A):A=e[35];let Q=A,F;e[36]!==M?(F=d(()=>{M("all")},"j"),e[36]=M,e[37]=F):F=e[37];let ee=F,P;e[38]!==R||e[39]!==p||e[40]!==c?(P=d(()=>{c!==null&&p!==null&&R(p,c.id),f(null)},"O"),e[38]=R,e[39]=p,e[40]=c,e[41]=P):P=e[41];let G=P,Z;e[42]===Symbol.for("react.memo_cache_sentinel")?(Z=d(()=>{f(null)},"X"),e[42]=Z):Z=e[42];let V=Z,le;e[43]!==c?(le=c===null?void 0:{left:c.x,top:c.y},e[43]=c,e[44]=le):le=e[44];let ae=le,ue;e[45]!==o?(ue=d(Y=>{o(te=>te.map(ne=>ne.activeId===Y?{...ne,activeId:null}:ne))},"pe"),e[45]=o,e[46]=ue):ue=e[46];let pe=ue,me;e[47]!==o?(me=d((Y,te)=>{o(ne=>ne.map(U=>U.id===Y?{...U,name:te}:U))},"he"),e[47]=o,e[48]=me):me=e[48];let be=me,fe;return e[49]!==g||e[50]!==n||e[51]!==w||e[52]!==L||e[53]!==G||e[54]!==ee||e[55]!==D||e[56]!==Q||e[57]!==v||e[58]!==k||e[59]!==S||e[60]!==N||e[61]!==p||e[62]!==be||e[63]!==t||e[64]!==c||e[65]!==ae||e[66]!==r||e[67]!==pe?(fe={activeTab:g,activeTabId:n,addEditorTab:w,cancelBulk:V,closeEditorTab:L,closeTabMenu:W,confirmBulk:G,menuStyle:ae,onBackdropContextMenu:K,onCloseAll:ee,onCloseOthers:D,onCloseToRight:Q,openEditorTab:v,openTabMenu:j,output:k,patchActiveOutput:S,patchActiveTab:N,pendingBulk:p,renameTab:be,setActiveTabId:t,tabMenu:c,tabs:r,unlinkQuery:pe},e[49]=g,e[50]=n,e[51]=w,e[52]=L,e[53]=G,e[54]=ee,e[55]=D,e[56]=Q,e[57]=v,e[58]=k,e[59]=S,e[60]=N,e[61]=p,e[62]=be,e[63]=t,e[64]=c,e[65]=ae,e[66]=r,e[67]=pe,e[68]=fe):fe=e[68],fe},"$n");function zn(s){return s.id}d(zn,"Bn");function jn(s){return gt(s)}d(jn,"Pn");var Hn="lunora-studio-sql-queries",he="lunora-studio-sql-history",Bn="lunora-studio-sql-remember-history",Wn=25,Fn=d(s=>{let e=(0,X.c)(44),{loadIntoActiveTab:n,unlinkQuery:t}=s,o=J(),[r,l]=Ne(Hn),[i,a]=Ee(Bn,!1),[c,m]=Ne(he,i?"local":"session"),p,f;e[0]!==i?(p=d(()=>{i||we(he,"local")},"m"),f=[i],e[0]=i,e[1]=p,e[2]=f):(p=e[1],f=e[2]),(0,H.useEffect)(p,f);let[b,g]=(0,H.useState)(""),k=(0,H.useRef)(null),q;e[3]!==m?(q=d(D=>{m(A=>A[0]?.sql===D?A:[{at:Date.now(),sql:D},...A.filter(Q=>Q.sql!==D)].slice(0,Wn))},"v"),e[3]=m,e[4]=q):q=e[4];let N=q,h;e[5]!==n||e[6]!==l||e[7]!==o?(h=d(()=>{let D={id:Me("q"),name:o("Untitled query"),sql:""};l(A=>[D,...A]),n("",D.id)},"p"),e[5]=n,e[6]=l,e[7]=o,e[8]=h):h=e[8];let S=h,x;e[9]!==n||e[10]!==r?(x=d(D=>{let A=r.find(Q=>Q.id===D);A!==void 0&&(n(A.sql,D),k.current?.querySelector(`[data-testid="sql-query-${D}"]`)?.scrollIntoView({block:"nearest"}))},"x"),e[9]=n,e[10]=r,e[11]=x):x=e[11];let v=x,y;e[12]!==l||e[13]!==t?(y=d(D=>{l(A=>A.filter(Q=>Q.id!==D)),t(D)},"y"),e[12]=l,e[13]=t,e[14]=y):y=e[14];let w=y,E;e[15]!==n?(E=d(D=>{n(D.currentTarget.dataset.sql??"",null)},"w"),e[15]=n,e[16]=E):E=e[16];let I=E,T;e[17]!==n?(T=d(D=>{n(D.currentTarget.dataset.sql??"",null)},"q"),e[17]=n,e[18]=T):T=e[18];let L=T,C;e[19]!==m?(C=d(()=>{m([]),we(he,"local"),we(he,"session")},"E"),e[19]=m,e[20]=C):C=e[20];let R=C,_;e[21]!==c||e[22]!==a?(_=d(D=>{Ue(he,c,D?"local":"session"),D||we(he,"local"),a(D)},"L"),e[21]=c,e[22]=a,e[23]=_):_=e[23];let M=_,z;e[24]===Symbol.for("react.memo_cache_sentinel")?(z=d(D=>{g(D.target.value)},"$"),e[24]=z):z=e[24];let j=z,B;e[25]!==l?(B=d((D,A,Q)=>{l(F=>F.map(ee=>ee.id===D?{id:ee.id,name:A,sql:ee.sql,...Q===""?{}:{description:Q}}:ee))},"B"),e[25]=l,e[26]=B):B=e[26];let W=B,$;e[27]!==l?($=d((D,A)=>{l(Q=>Q.map(F=>F.id===D?{...F,sql:A}:F))},"P"),e[27]=l,e[28]=$):$=e[28];let K=$,O;return e[29]!==R||e[30]!==w||e[31]!==c||e[32]!==L||e[33]!==I||e[34]!==S||e[35]!==r||e[36]!==N||e[37]!==i||e[38]!==W||e[39]!==b||e[40]!==v||e[41]!==M||e[42]!==K?(O={clearHistory:R,deleteQuery:w,history:c,listRef:k,loadFromHistory:L,loadTemplate:I,newQuery:S,onSearchChange:j,queries:r,recordHistory:N,rememberHistory:i,renameQuery:W,search:b,selectQuery:v,setRememberHistory:M,updateQuerySql:K},e[29]=R,e[30]=w,e[31]=c,e[32]=L,e[33]=I,e[34]=S,e[35]=r,e[36]=N,e[37]=i,e[38]=W,e[39]=b,e[40]=v,e[41]=M,e[42]=K,e[43]=O):O=e[43],O},"Qn"),Be="p-3 font-mono text-xs leading-5 whitespace-pre-wrap break-words",Qn=d((s,e)=>{let n=[];for(let o of s){if(o.offset===void 0||o.length===void 0||o.length<=0)continue;let r=Math.max(0,Math.min(o.offset,e)),l=Math.max(r,Math.min(o.offset+o.length,e));r!==l&&n.push({end:l,severity:o.severity,start:r})}n.sort((o,r)=>o.start-r.start);let t=[];for(let o of n)o.start>=(t.at(-1)?.end??0)&&t.push(o);return t},"jn"),Kn=d(s=>{let e=(0,X.c)(51),{rpc:n,failed:t,onGenerated:o}=s,r=J(),[l,i]=(0,H.useState)("");if(n.unavailable)return null;let a;e[0]!==n?(a=n.pending("sql"),e[0]=n,e[1]=a):a=e[1];let c=a,m;if(e[2]!==t||e[3]!==o||e[4]!==c||e[5]!==l||e[6]!==n||e[7]!==r){let p=n.reason("sql"),f;e[9]!==t||e[10]!==o||e[11]!==l||e[12]!==n?(f=d(L=>{let C=l.trim();C===""&&!L||se((async()=>{let R=await n.generate(C===""?"fix the failing statement":C,L?t:void 0);R!==void 0&&o(R)})())},"f"),e[9]=t,e[10]=o,e[11]=l,e[12]=n,e[13]=f):f=e[13];let b=f,g;e[14]!==r?(g=r("Describe the query you want"),e[14]=r,e[15]=g):g=e[15];let k;e[16]===Symbol.for("react.memo_cache_sentinel")?(k=d(L=>{i(L.target.value)},"R"),e[16]=k):k=e[16];let q;e[17]!==b?(q=d(L=>{L.key==="Enter"&&(L.preventDefault(),b(!1))},"v"),e[17]=b,e[18]=q):q=e[18];let N;e[19]!==r?(N=r("Describe the query you want"),e[19]=r,e[20]=N):N=e[20];let h;e[21]!==c||e[22]!==l||e[23]!==g||e[24]!==q||e[25]!==N?(h=(0,u.jsx)(ye,{"aria-label":g,className:"h-7 flex-1 text-xs","data-testid":"sql-assistant-prompt",disabled:c,onChange:k,onKeyDown:q,placeholder:N,value:l}),e[21]=c,e[22]=l,e[23]=g,e[24]=q,e[25]=N,e[26]=h):h=e[26];let S=c&&"opacity-60",x;e[27]!==S?(x=ie("rounded-md border border-border px-2 py-1 text-xs outline-none transition-colors hover:bg-accent focus-visible:bg-accent",S),e[27]=S,e[28]=x):x=e[28];let v;e[29]!==c||e[30]!==l?(v=c||l.trim()==="",e[29]=c,e[30]=l,e[31]=v):v=e[31];let y;e[32]!==b?(y=d(()=>{b(!1)},"y"),e[32]=b,e[33]=y):y=e[33];let w;e[34]!==c||e[35]!==r?(w=r(c?"Thinking\u2026":"Draft SQL"),e[34]=c,e[35]=r,e[36]=w):w=e[36];let E;e[37]!==x||e[38]!==v||e[39]!==y||e[40]!==w?(E=(0,u.jsx)("button",{className:x,"data-testid":"sql-assistant-generate",disabled:v,onClick:y,type:"button",children:w}),e[37]=x,e[38]=v,e[39]=y,e[40]=w,e[41]=E):E=e[41];let I;e[42]!==t||e[43]!==c||e[44]!==b||e[45]!==r?(I=t!==void 0&&(0,u.jsx)("button",{className:"rounded-md border border-border px-2 py-1 text-xs outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"sql-assistant-fix",disabled:c,onClick:d(()=>{b(!0)},"onClick"),type:"button",children:r("Fix this")}),e[42]=t,e[43]=c,e[44]=b,e[45]=r,e[46]=I):I=e[46];let T;e[47]!==E||e[48]!==I||e[49]!==h?(T=(0,u.jsxs)("div",{className:"flex items-center gap-2",children:[h,E,I]}),e[47]=E,e[48]=I,e[49]=h,e[50]=T):T=e[50],m=(0,u.jsxs)("div",{className:"flex flex-col gap-1 border-b border-border px-3 py-2","data-testid":"sql-assistant",children:[T,p!==void 0&&(0,u.jsx)("p",{className:"text-[11px] text-muted-foreground","data-testid":"sql-assistant-reason",role:"status",children:Ae(p,r)})]}),e[2]=t,e[3]=o,e[4]=c,e[5]=l,e[6]=n,e[7]=r,e[8]=m}else m=e[8];return m},"zn"),Un=d(s=>{let e=(0,X.c)(8),{diagnostics:n,draft:t,scrollRef:o}=s,r,l;if(e[0]!==n||e[1]!==t){l=Symbol.for("react.early_return_sentinel");e:{let c=Qn(n,t.length);if(c.length===0){l=null;break e}r=[];let m=0;for(let[p,f]of c.entries())f.start>m&&r.push(t.slice(m,f.start)),r.push((0,u.jsx)("span",{className:ie("decoration-wavy underline underline-offset-4",f.severity==="error"?"decoration-destructive":"decoration-amber-500"),children:t.slice(f.start,f.end)},`${f.start.toString()}-${p.toString()}`)),m=f.end;r.push(t.slice(m))}e[0]=n,e[1]=t,e[2]=r,e[3]=l}else r=e[2],l=e[3];if(l!==Symbol.for("react.early_return_sentinel"))return l;let i;e[4]===Symbol.for("react.memo_cache_sentinel")?(i=ie("pointer-events-none absolute inset-0 overflow-hidden text-transparent",Be),e[4]=i):i=e[4];let a;return e[5]!==r||e[6]!==o?(a=(0,u.jsx)("div",{"aria-hidden":"true",className:i,"data-testid":"sql-diagnostics-overlay",ref:o,children:r}),e[5]=r,e[6]=o,e[7]=a):a=e[7],a},"Kn"),Gn={gate:"read-only",plan:"plan",schema:"schema",syntax:"syntax"},Vn=d(s=>{let e=(0,X.c)(10),{diagnostics:n,onSelect:t}=s,o=J();if(n.length===0)return null;let r;e[0]!==o?(r=o("SQL problems"),e[0]=o,e[1]=r):r=e[1];let l;if(e[2]!==n||e[3]!==t){let a;e[5]!==t?(a=d((c,m)=>(0,u.jsx)("li",{children:(0,u.jsxs)("button",{className:"flex w-full items-start gap-2 px-3 py-1 text-start text-xs outline-none hover:bg-accent focus-visible:bg-accent","data-testid":"sql-problem",onClick:d(()=>{t(c)},"onClick"),type:"button",children:[(0,u.jsx)("span",{className:ie("mt-px shrink-0 rounded px-1 font-mono text-[10px] uppercase",c.severity==="error"?"bg-destructive/15 text-destructive":"bg-amber-500/15 text-amber-600"),children:Gn[c.source]}),(0,u.jsx)("span",{className:"min-w-0 text-muted-foreground",children:c.message})]})},`${c.source}-${(c.offset??m).toString()}-${m.toString()}`),"c"),e[5]=t,e[6]=a):a=e[6],l=n.map(a),e[2]=n,e[3]=t,e[4]=l}else l=e[4];let i;return e[7]!==r||e[8]!==l?(i=(0,u.jsx)("ul",{"aria-label":r,className:"max-h-24 shrink-0 overflow-y-auto border-t border-border bg-muted/30","data-testid":"sql-problems",children:l}),e[7]=r,e[8]=l,e[9]=i):i=e[9],i},"Yn"),Xn=d(s=>(s.endsWith(`
|
|
12
|
+
`)?s.slice(0,-1):s).split(`
|
|
13
|
+
`),"Gn"),Yn=d((s,e)=>{let n=[],t=1,o=1;for(let r of $e(s,e,{ignoreNewlineAtEof:!0}))for(let l of Xn(r.value))r.added?(n.push({after:o,kind:"added",text:l}),o+=1):r.removed?(n.push({before:t,kind:"removed",text:l}),t+=1):(n.push({after:o,before:t,kind:"context",text:l}),t+=1,o+=1);return n},"Vn"),Jn={added:"bg-emerald-500/10 text-emerald-700 dark:text-emerald-400",context:"text-muted-foreground",removed:"bg-destructive/10 text-destructive"},Zn={added:"+",context:" ",removed:"-"},eo=d(s=>{let e=(0,X.c)(11),{lines:n}=s,t=J(),o;e[0]!==t?(o=t("Proposed edit"),e[0]=t,e[1]=o):o=e[1];let r;e[2]===Symbol.for("react.memo_cache_sentinel")?(r=ie("max-h-48 overflow-auto rounded-md border border-border bg-background",Be),e[2]=r):r=e[2];let l;if(e[3]!==n||e[4]!==t){let a;e[6]!==t?(a=d(c=>(0,u.jsxs)("li",{className:ie("flex gap-2",Jn[c.kind]),"data-kind":c.kind,children:[(0,u.jsx)("span",{"aria-hidden":"true",className:"shrink-0 select-none opacity-60",children:Zn[c.kind]}),c.kind!=="context"&&(0,u.jsx)("span",{className:"sr-only",children:c.kind==="added"?t("Added"):t("Removed")}),(0,u.jsx)("span",{className:"min-w-0",children:c.text===""?"\xA0":c.text})]},`${String(c.before)}:${String(c.after)}`),"c"),e[6]=t,e[7]=a):a=e[7],l=n.map(a),e[3]=n,e[4]=t,e[5]=l}else l=e[5];let i;return e[8]!==o||e[9]!==l?(i=(0,u.jsx)("ul",{"aria-label":o,className:r,"data-testid":"sql-inline-diff",children:l}),e[8]=o,e[9]=l,e[10]=i):i=e[10],i},"Zn"),Le="rounded-md border border-border px-2 py-1 text-xs outline-none transition-colors hover:bg-accent focus-visible:bg-accent",to=d(s=>{let e=(0,X.c)(41),{onAccept:n,onCancel:t,rpc:o,source:r,whole:l}=s,i=J(),a=(0,H.useRef)(null),c=(0,H.useRef)(null),[m,p]=(0,H.useState)(""),[f,b]=(0,H.useState)(null),g,k;if(e[0]!==f?(g=d(()=>{f===null?a.current?.focus():c.current?.focus()},"g"),k=[f],e[0]=f,e[1]=g,e[2]=k):(g=e[1],k=e[2]),(0,H.useEffect)(g,k),o.unavailable)return null;let q;e[3]!==o?(q=o.pending("sql"),e[3]=o,e[4]=q):q=e[4];let N=q,h;if(e[5]!==m||e[6]!==n||e[7]!==t||e[8]!==N||e[9]!==f||e[10]!==o||e[11]!==r||e[12]!==i||e[13]!==l){let S=o.reason("sql"),x;e[15]!==m||e[16]!==o||e[17]!==r?(x=d(()=>{let R=m.trim();R===""||r.trim()===""||se((async()=>{let _=await o.rewrite(R,r);_!==void 0&&b(_)})())},"x"),e[15]=m,e[16]=o,e[17]=r,e[18]=x):x=e[18];let v=x,y;e[19]!==t?(y=d(R=>{R.key==="Escape"&&(R.preventDefault(),t())},"y"),e[19]=t,e[20]=y):y=e[20];let w=y,E;e[21]!==i||e[22]!==l?(E=i(l?"Whole query":"Selection"),e[21]=i,e[22]=l,e[23]=E):E=e[23];let I;e[24]!==E?(I=(0,u.jsx)("span",{className:"shrink-0 rounded bg-muted px-1 font-mono text-[10px] uppercase text-muted-foreground","data-testid":"sql-inline-edit-scope",children:E}),e[24]=E,e[25]=I):I=e[25];let T;e[26]!==m||e[27]!==n||e[28]!==t||e[29]!==w||e[30]!==N||e[31]!==f||e[32]!==v||e[33]!==i?(T=f===null?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(ye,{"aria-label":i("Tell the model what to change"),className:"h-7 flex-1 text-xs","data-testid":"sql-inline-edit-prompt",disabled:N,onChange:d(R=>{p(R.target.value)},"onChange"),onKeyDown:d(R=>{if(R.key==="Enter"){R.preventDefault(),v();return}w(R)},"onKeyDown"),placeholder:i("Tell the model what to change"),ref:a,value:m}),(0,u.jsx)("button",{className:ie(Le,N&&"opacity-60"),"data-testid":"sql-inline-edit-submit",disabled:N||m.trim()==="",onClick:v,onKeyDown:w,type:"button",children:i(N?"Thinking\u2026":"Rewrite")}),(0,u.jsx)("button",{className:Le,"data-testid":"sql-inline-edit-cancel",onClick:t,onKeyDown:w,type:"button",children:i("Cancel")})]}):(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)("span",{className:"flex-1 text-xs text-muted-foreground",children:i("Proposed edit")}),(0,u.jsx)("button",{className:Le,"data-testid":"sql-inline-edit-accept",onClick:d(()=>{n(f)},"onClick"),onKeyDown:w,ref:c,type:"button",children:i("Accept")}),(0,u.jsx)("button",{className:Le,"data-testid":"sql-inline-edit-reject",onClick:d(()=>{b(null)},"onClick"),onKeyDown:w,type:"button",children:i("Reject")})]}),e[26]=m,e[27]=n,e[28]=t,e[29]=w,e[30]=N,e[31]=f,e[32]=v,e[33]=i,e[34]=T):T=e[34];let L;e[35]!==I||e[36]!==T?(L=(0,u.jsxs)("div",{className:"flex items-center gap-2",children:[I,T]}),e[35]=I,e[36]=T,e[37]=L):L=e[37];let C;e[38]!==f||e[39]!==r?(C=f!==null&&(0,u.jsx)(eo,{lines:Yn(r,f)}),e[38]=f,e[39]=r,e[40]=C):C=e[40],h=(0,u.jsxs)("div",{className:"flex flex-col gap-1 border-b border-border bg-muted/20 px-3 py-2","data-testid":"sql-inline-edit",children:[L,C,S!==void 0&&(0,u.jsx)("p",{className:"text-[11px] text-muted-foreground","data-testid":"sql-inline-edit-reason",role:"status",children:Ae(S,i)})]}),e[5]=m,e[6]=n,e[7]=t,e[8]=N,e[9]=f,e[10]=o,e[11]=r,e[12]=i,e[13]=l,e[14]=h}else h=e[14];return h},"es"),no={minWidth:"2.75rem",paddingInline:"0.5rem"},oo=d(s=>{let e=(0,X.c)(75),{rpc:n,autocomplete:t,diagnostics:o,draft:r,failed:l,handlers:i,editorRef:a,gutterRef:c,inlineEdit:m,listboxId:p,onAcceptInlineEdit:f,onCancelInlineEdit:b,onGenerated:g,onPickSuggestion:k,onRevealDiagnostic:q,overlayRef:N}=s,h=J(),S,x,v,y,w,E,I,T,L;if(e[0]!==r||e[1]!==l||e[2]!==c||e[3]!==m||e[4]!==f||e[5]!==b||e[6]!==g||e[7]!==n){let A=r.split(`
|
|
14
|
+
`).length;I="flex min-h-0 min-w-0 flex-1 flex-col",e[17]!==l||e[18]!==g||e[19]!==n?(T=(0,u.jsx)(Kn,{failed:l,onGenerated:g,rpc:n}),e[17]=l,e[18]=g,e[19]=n,e[20]=T):T=e[20],e[21]!==r.length||e[22]!==m||e[23]!==f||e[24]!==b||e[25]!==n?(L=m!==null&&(0,u.jsx)(to,{onAccept:f,onCancel:b,rpc:n,source:m.text,whole:m.start===0&&m.end===r.length},`${m.start.toString()}-${m.end.toString()}`),e[21]=r.length,e[22]=m,e[23]=f,e[24]=b,e[25]=n,e[26]=L):L=e[26],E="flex min-h-0 min-w-0 flex-1",S="true",x="shrink-0 select-none overflow-hidden border-e border-border bg-muted/30 py-3 text-end font-mono text-xs leading-5 text-muted-foreground/60",v=c,y=no,w=Array.from({length:A},ro),e[0]=r,e[1]=l,e[2]=c,e[3]=m,e[4]=f,e[5]=b,e[6]=g,e[7]=n,e[8]=S,e[9]=x,e[10]=v,e[11]=y,e[12]=w,e[13]=E,e[14]=I,e[15]=T,e[16]=L}else S=e[8],x=e[9],v=e[10],y=e[11],w=e[12],E=e[13],I=e[14],T=e[15],L=e[16];let C;e[27]!==S||e[28]!==x||e[29]!==v||e[30]!==y||e[31]!==w?(C=(0,u.jsx)("div",{"aria-hidden":S,className:x,ref:v,style:y,children:w}),e[27]=S,e[28]=x,e[29]=v,e[30]=y,e[31]=w,e[32]=C):C=e[32];let R;e[33]!==o||e[34]!==r||e[35]!==N?(R=(0,u.jsx)(Un,{diagnostics:o,draft:r,scrollRef:N}),e[33]=o,e[34]=r,e[35]=N,e[36]=R):R=e[36];let _;e[37]!==t||e[38]!==p?(_=t===null?void 0:`${p}-opt-${t.active.toString()}`,e[37]=t,e[38]=p,e[39]=_):_=e[39];let M=t===null?void 0:p,z=t!==null,j;e[40]!==h?(j=h("SQL query"),e[40]=h,e[41]=j):j=e[41];let B;e[42]!==r||e[43]!==a||e[44]!==i.onBlur||e[45]!==i.onChange||e[46]!==i.onKeyDown||e[47]!==i.onScroll||e[48]!==i.onSelect||e[49]!==_||e[50]!==M||e[51]!==z||e[52]!==j?(B=(0,u.jsx)("textarea",{"aria-activedescendant":_,"aria-autocomplete":"list","aria-controls":M,"aria-expanded":z,"aria-label":j,className:`relative size-full resize-none bg-transparent outline-none ${Be}`,"data-testid":"sql-input",onBlur:i.onBlur,onChange:i.onChange,onKeyDown:i.onKeyDown,onScroll:i.onScroll,onSelect:i.onSelect,placeholder:"SELECT * FROM \u2026",ref:a,role:"combobox",spellCheck:!1,value:r}),e[42]=r,e[43]=a,e[44]=i.onBlur,e[45]=i.onChange,e[46]=i.onKeyDown,e[47]=i.onScroll,e[48]=i.onSelect,e[49]=_,e[50]=M,e[51]=z,e[52]=j,e[53]=B):B=e[53];let W;e[54]!==t||e[55]!==p||e[56]!==k?(W=(0,u.jsx)(yn,{listboxId:p,onPick:k,state:t}),e[54]=t,e[55]=p,e[56]=k,e[57]=W):W=e[57];let $;e[58]!==R||e[59]!==B||e[60]!==W?($=(0,u.jsxs)("div",{className:"relative min-w-0 flex-1 bg-background",children:[R,B,W]}),e[58]=R,e[59]=B,e[60]=W,e[61]=$):$=e[61];let K;e[62]!==C||e[63]!==$||e[64]!==E?(K=(0,u.jsxs)("div",{className:E,children:[C,$]}),e[62]=C,e[63]=$,e[64]=E,e[65]=K):K=e[65];let O;e[66]!==o||e[67]!==q?(O=(0,u.jsx)(Vn,{diagnostics:o,onSelect:q}),e[66]=o,e[67]=q,e[68]=O):O=e[68];let D;return e[69]!==K||e[70]!==O||e[71]!==I||e[72]!==T||e[73]!==L?(D=(0,u.jsxs)("div",{className:I,children:[T,L,K,O]}),e[69]=K,e[70]=O,e[71]=I,e[72]=T,e[73]=L,e[74]=D):D=e[74],D},"ns");function ro(s,e){return(0,u.jsx)("div",{children:e+1},e)}d(ro,"ss");var lo=d(s=>{let e=(0,X.c)(62),{onCancel:n,onSave:t,query:o,rpc:r}=s,l=J(),[i,a]=(0,H.useState)(o.name),[c,m]=(0,H.useState)(o.description??""),p;e[0]!==o.sql||e[1]!==r?(p=r!==void 0&&!r.unavailable&&o.sql.trim()!=="",e[0]=o.sql,e[1]=r,e[2]=p):p=e[2];let f=p,b;e[3]!==r?(b=r?.pending("name"),e[3]=r,e[4]=b):b=e[4];let g=b===!0,k;e[5]!==r?(k=r?.reason("name"),e[5]=r,e[6]=k):k=e[6];let q=k,N;e[7]!==c||e[8]!==i||e[9]!==o.sql||e[10]!==r?(N=d(()=>{if(r===void 0)return;let O=i,D=c;se((async()=>{let A=await r.nameQuery(o.sql);A!==void 0&&(a(Q=>Q===O?A.title:Q),m(Q=>Q===D?A.description:Q))})())},"S"),e[7]=c,e[8]=i,e[9]=o.sql,e[10]=r,e[11]=N):N=e[11];let h=N,S;e[12]!==c||e[13]!==i||e[14]!==t?(S=d(O=>{O.preventDefault();let D=i.trim();D!==""&&t(D,c.trim())},"N"),e[12]=c,e[13]=i,e[14]=t,e[15]=S):S=e[15];let x=S,v=`sql-query-rename-${o.id}`,y;e[16]!==l?(y=l("Query name"),e[16]=l,e[17]=y):y=e[17];let w;e[18]===Symbol.for("react.memo_cache_sentinel")?(w=d(O=>{a(O.target.value)},"C"),e[18]=w):w=e[18];let E;e[19]!==l?(E=l("Query name"),e[19]=l,e[20]=E):E=e[20];let I;e[21]!==i||e[22]!==y||e[23]!==E?(I=(0,u.jsx)(ye,{"aria-label":y,autoFocus:!0,className:"h-7 text-xs","data-testid":"sql-query-name",onChange:w,placeholder:E,value:i}),e[21]=i,e[22]=y,e[23]=E,e[24]=I):I=e[24];let T;e[25]!==l?(T=l("Query description"),e[25]=l,e[26]=T):T=e[26];let L;e[27]===Symbol.for("react.memo_cache_sentinel")?(L=d(O=>{m(O.target.value)},"T"),e[27]=L):L=e[27];let C;e[28]!==l?(C=l("Query description"),e[28]=l,e[29]=C):C=e[29];let R;e[30]!==c||e[31]!==T||e[32]!==C?(R=(0,u.jsx)(ye,{"aria-label":T,className:"h-7 text-xs","data-testid":"sql-query-description",onChange:L,placeholder:C,value:c}),e[30]=c,e[31]=T,e[32]=C,e[33]=R):R=e[33];let _;e[34]!==l?(_=l("Save"),e[34]=l,e[35]=_):_=e[35];let M;e[36]!==_?(M=(0,u.jsx)("button",{className:"rounded-md border border-border px-2 py-0.5 text-[11px] outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"sql-query-rename-save",type:"submit",children:_}),e[36]=_,e[37]=M):M=e[37];let z;e[38]!==l?(z=l("Cancel"),e[38]=l,e[39]=z):z=e[39];let j;e[40]!==n||e[41]!==z?(j=(0,u.jsx)("button",{className:"rounded-md px-2 py-0.5 text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:text-foreground","data-testid":"sql-query-rename-cancel",onClick:n,type:"button",children:z}),e[40]=n,e[41]=z,e[42]=j):j=e[42];let B;e[43]!==f||e[44]!==g||e[45]!==h||e[46]!==l?(B=f&&(0,u.jsx)("button",{className:"ms-auto rounded-md border border-border px-2 py-0.5 text-[11px] outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"sql-query-suggest-name",disabled:g,onClick:h,type:"button",children:l(g?"Thinking\u2026":"Suggest")}),e[43]=f,e[44]=g,e[45]=h,e[46]=l,e[47]=B):B=e[47];let W;e[48]!==M||e[49]!==j||e[50]!==B?(W=(0,u.jsxs)("div",{className:"flex items-center gap-1",children:[M,j,B]}),e[48]=M,e[49]=j,e[50]=B,e[51]=W):W=e[51];let $;e[52]!==q||e[53]!==l?($=q!==void 0&&(0,u.jsx)("p",{className:"text-[11px] text-muted-foreground","data-testid":"sql-query-name-reason",role:"status",children:l(q==="ai-error"?"The model could not be reached.":"The model returned nothing usable.")}),e[52]=q,e[53]=l,e[54]=$):$=e[54];let K;return e[55]!==x||e[56]!==I||e[57]!==R||e[58]!==W||e[59]!==$||e[60]!==v?(K=(0,u.jsxs)("form",{className:"flex flex-col gap-1 rounded-md bg-sidebar-accent p-1.5","data-testid":v,onSubmit:x,children:[I,R,W,$]}),e[55]=x,e[56]=I,e[57]=R,e[58]=W,e[59]=$,e[60]=v,e[61]=K):K=e[61],K},"os"),xt=[{label:"List tables",sql:"SELECT name FROM sqlite_master WHERE type = 'table' ORDER BY name;"},{label:"Table row count",sql:"SELECT COUNT(*) AS rows FROM messages;"},{label:"Recent rows",sql:"SELECT id, _creationTime, __doc__ FROM messages ORDER BY _creationTime DESC LIMIT 50;"},{label:"Index list",sql:"SELECT name, tbl_name FROM sqlite_master WHERE type = 'index' ORDER BY tbl_name;"}],so=d(s=>{let e=(0,X.c)(44),{active:n,onDelete:t,onRename:o,onSelect:r,query:l}=s,i=J(),a;e[0]!==r||e[1]!==l.id?(a=d(()=>{r(l.id)},"c"),e[0]=r,e[1]=l.id,e[2]=a):a=e[2];let c=a,m;e[3]!==t||e[4]!==l.id?(m=d(_=>{_.stopPropagation(),t(l.id)},"d"),e[3]=t,e[4]=l.id,e[5]=m):m=e[5];let p=m,f;e[6]!==o||e[7]!==l.id?(f=d(_=>{_.stopPropagation(),o(l.id)},"f"),e[6]=o,e[7]=l.id,e[8]=f):f=e[8];let b=f,g=n?"bg-sidebar-accent font-medium text-foreground":"text-muted-foreground",k;e[9]!==g?(k=ie("flex min-w-0 flex-1 items-center gap-2 rounded-md px-2 py-1.5 text-start text-[13px] outline-none transition-colors hover:bg-sidebar-accent focus-visible:bg-sidebar-accent",g),e[9]=g,e[10]=k):k=e[10];let q=`sql-query-${l.id}`,N;e[11]===Symbol.for("react.memo_cache_sentinel")?(N=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3.5 shrink-0 opacity-70",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M4 6h16M4 12h10M4 18h7"})}),e[11]=N):N=e[11];let h;e[12]!==l.name?(h=(0,u.jsx)("span",{className:"truncate",children:l.name}),e[12]=l.name,e[13]=h):h=e[13];let S;e[14]!==n||e[15]!==c||e[16]!==l.description||e[17]!==k||e[18]!==q||e[19]!==h?(S=(0,u.jsxs)("button",{"aria-pressed":n,className:k,"data-testid":q,onClick:c,title:l.description,type:"button",children:[N,h]}),e[14]=n,e[15]=c,e[16]=l.description,e[17]=k,e[18]=q,e[19]=h,e[20]=S):S=e[20];let x;e[21]!==i?(x=i("Rename query"),e[21]=i,e[22]=x):x=e[22];let v=`sql-query-rename-open-${l.id}`,y;e[23]!==i?(y=i("Rename query"),e[23]=i,e[24]=y):y=e[24];let w;e[25]===Symbol.for("react.memo_cache_sentinel")?(w=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M4 20h4L19 9l-4-4L4 16zM14 6l4 4"})}),e[25]=w):w=e[25];let E;e[26]!==b||e[27]!==x||e[28]!==v||e[29]!==y?(E=(0,u.jsx)("button",{"aria-label":x,className:"hidden size-6 shrink-0 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-foreground group-hover/q:flex","data-testid":v,onClick:b,title:y,type:"button",children:w}),e[26]=b,e[27]=x,e[28]=v,e[29]=y,e[30]=E):E=e[30];let I;e[31]!==i?(I=i("Delete query"),e[31]=i,e[32]=I):I=e[32];let T;e[33]!==i?(T=i("Delete query"),e[33]=i,e[34]=T):T=e[34];let L;e[35]===Symbol.for("react.memo_cache_sentinel")?(L=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M5 7h14M9 7V5h6v2m-1 0v12H10V7M7 7v13h10V7"})}),e[35]=L):L=e[35];let C;e[36]!==p||e[37]!==I||e[38]!==T?(C=(0,u.jsx)("button",{"aria-label":I,className:"me-1 hidden size-6 shrink-0 items-center justify-center rounded text-muted-foreground hover:bg-destructive/10 hover:text-destructive group-hover/q:flex",onClick:p,title:T,type:"button",children:L}),e[36]=p,e[37]=I,e[38]=T,e[39]=C):C=e[39];let R;return e[40]!==E||e[41]!==C||e[42]!==S?(R=(0,u.jsxs)("li",{className:"group/q flex items-center",children:[S,E,C]}),e[40]=E,e[41]=C,e[42]=S,e[43]=R):R=e[43],R},"ls"),it="sql-history-remember",io=d((s,e)=>{let n=e.trim().toLowerCase();return n===""?[...s]:s.filter(t=>t.name.toLowerCase().includes(n))},"rs"),ao=d(s=>{let e=(0,X.c)(53),{activeId:n,history:t,listRef:o,onClearHistory:r,onDelete:l,onLoadHistory:i,onLoadTemplate:a,onNew:c,onRename:m,onSearchChange:p,onSelect:f,onToggleRememberHistory:b,queries:g,rememberHistory:k,rpc:q,search:N}=s,h=J(),S=io(g,N),[x,v]=(0,H.useState)(null),y;e[0]===Symbol.for("react.memo_cache_sentinel")?(y=d(()=>{v(null)},"y"),e[0]=y):y=e[0];let w=y,E;e[1]!==b?(E=d(V=>{b(V.target.checked)},"w"),e[1]=b,e[2]=E):E=e[2];let I=E,T="flex h-full w-64 shrink-0 flex-col border-e border-border bg-sidebar",L;e[3]!==h?(L=h("Search queries\u2026"),e[3]=h,e[4]=L):L=e[4];let C;e[5]!==p||e[6]!==N||e[7]!==L?(C=(0,u.jsx)("input",{className:"h-8 min-w-0 flex-1 rounded-md border border-border bg-background px-2 text-xs outline-none focus-visible:border-ring","data-testid":"sql-search",onChange:p,placeholder:L,type:"text",value:N}),e[5]=p,e[6]=N,e[7]=L,e[8]=C):C=e[8];let R;e[9]!==h?(R=h("New query"),e[9]=h,e[10]=R):R=e[10];let _;e[11]!==h?(_=h("New query"),e[11]=h,e[12]=_):_=e[12];let M;e[13]===Symbol.for("react.memo_cache_sentinel")?(M=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-4",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.7,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M12 5v14M5 12h14"})}),e[13]=M):M=e[13];let z;e[14]!==c||e[15]!==R||e[16]!==_?(z=(0,u.jsx)("button",{"aria-label":R,className:"flex size-8 shrink-0 items-center justify-center rounded-md border border-border text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"sql-new",onClick:c,title:_,type:"button",children:M}),e[14]=c,e[15]=R,e[16]=_,e[17]=z):z=e[17];let j;e[18]!==C||e[19]!==z?(j=(0,u.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-border p-2",children:[C,z]}),e[18]=C,e[19]=z,e[20]=j):j=e[20];let B="flex flex-1 flex-col gap-4 overflow-y-auto p-2",W;e[21]!==h?(W=h("Private"),e[21]=h,e[22]=W):W=e[22];let $;e[23]!==W?($=(0,u.jsx)("p",{className:"px-1 pb-1 font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:W}),e[23]=W,e[24]=$):$=e[24];let K=S.length===0?(0,u.jsx)("p",{className:"px-1 py-2 text-xs text-muted-foreground","data-testid":"sql-private-empty",children:h("No saved queries yet \u2014 they save to this browser as you type.")}):(0,u.jsx)("ul",{className:"flex flex-col gap-px","data-testid":"sql-private",ref:o,children:S.map(V=>x===V.id?(0,u.jsx)("li",{children:(0,u.jsx)(lo,{onCancel:w,onSave:d((le,ae)=>{m(V.id,le,ae),w()},"onSave"),query:V,rpc:q})},V.id):(0,u.jsx)(so,{active:n===V.id,onDelete:l,onRename:v,onSelect:f,query:V},V.id))}),O;e[25]!==$||e[26]!==K?(O=(0,u.jsxs)("div",{children:[$,K]}),e[25]=$,e[26]=K,e[27]=O):O=e[27];let D;e[28]!==h?(D=h("Reference"),e[28]=h,e[29]=D):D=e[29];let A;e[30]!==D?(A=(0,u.jsx)("p",{className:"px-1 pb-1 font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:D}),e[30]=D,e[31]=A):A=e[31];let Q;e[32]!==a?(Q=xt.map(V=>(0,u.jsx)("li",{children:(0,u.jsxs)("button",{className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start text-[13px] text-muted-foreground outline-none transition-colors hover:bg-sidebar-accent hover:text-foreground focus-visible:bg-sidebar-accent","data-sql":V.sql,onClick:a,type:"button",children:[(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3.5 shrink-0 opacity-70",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M7 4h7l4 4v12H7zM14 4v4h4"})}),V.label]})},V.label)),e[32]=a,e[33]=Q):Q=e[33];let F;e[34]!==Q?(F=(0,u.jsx)("ul",{className:"flex flex-col gap-px",children:Q}),e[34]=Q,e[35]=F):F=e[35];let ee;e[36]!==A||e[37]!==F?(ee=(0,u.jsxs)("div",{children:[A,F]}),e[36]=A,e[37]=F,e[38]=ee):ee=e[38];let P;e[39]!==t||e[40]!==r||e[41]!==i||e[42]!==I||e[43]!==k||e[44]!==h?(P=t.length>0&&(0,u.jsxs)("div",{children:[(0,u.jsxs)("div",{className:"flex items-center justify-between px-1 pb-1",children:[(0,u.jsx)("p",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:h("History")}),(0,u.jsx)("button",{className:"rounded px-1 text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:text-foreground","data-testid":"sql-history-clear",onClick:r,type:"button",children:h("Clear history")})]}),(0,u.jsxs)("label",{className:"flex cursor-pointer items-center gap-1.5 px-1 pb-1.5 text-[11px] text-muted-foreground",htmlFor:it,children:[(0,u.jsx)("input",{checked:k,"data-testid":"sql-history-remember",id:it,onChange:I,type:"checkbox"}),h("Keep history on this browser")]}),(0,u.jsx)("ul",{className:"flex flex-col gap-px","data-testid":"sql-history",children:t.map(V=>(0,u.jsx)("li",{children:(0,u.jsxs)("button",{className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start text-[13px] text-muted-foreground outline-none transition-colors hover:bg-sidebar-accent hover:text-foreground focus-visible:bg-sidebar-accent","data-sql":V.sql,"data-testid":"sql-history-item",onClick:i,title:V.sql,type:"button",children:[(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3.5 shrink-0 opacity-70",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M12 8v4l3 2M12 21a9 9 0 1 1 0-18 9 9 0 0 1 0 18Z"})}),(0,u.jsx)("span",{className:"truncate font-mono",children:V.sql})]})},`${V.at.toString()}:${V.sql}`))})]}),e[39]=t,e[40]=r,e[41]=i,e[42]=I,e[43]=k,e[44]=h,e[45]=P):P=e[45];let G;e[46]!==O||e[47]!==ee||e[48]!==P?(G=(0,u.jsxs)("div",{className:B,children:[O,ee,P]}),e[46]=O,e[47]=ee,e[48]=P,e[49]=G):G=e[49];let Z;return e[50]!==j||e[51]!==G?(Z=(0,u.jsxs)("aside",{className:T,children:[j,G]}),e[50]=j,e[51]=G,e[52]=Z):Z=e[52],Z},"is"),Ie=d(s=>`border-b-2 px-3 py-2 text-sm outline-none transition-colors ${s?"border-foreground font-medium text-foreground":"border-transparent text-muted-foreground hover:text-foreground"}`,"Ee"),co=d(s=>{let e=(0,X.c)(16),{chatOpen:n,onToggle:t}=s,o=J(),r;e[0]!==o?(r=o("Ask about your data"),e[0]=o,e[1]=r):r=e[1];let l=`inline-flex items-center gap-1.5 rounded-md border border-border px-2 py-1.5 outline-none transition-colors hover:bg-accent focus-visible:bg-accent ${n?"bg-accent text-foreground":"text-muted-foreground"}`,i;e[2]!==o?(i=o("Ask about your data"),e[2]=o,e[3]=i):i=e[3];let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-4",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M21 12a8 8 0 0 1-8 8H7l-4 3 1.2-4.2A8 8 0 1 1 21 12Z"})}),e[4]=a):a=e[4];let c;e[5]!==o?(c=o("Assistant"),e[5]=o,e[6]=c):c=e[6];let m;e[7]!==c?(m=(0,u.jsx)("span",{className:"text-xs",children:c}),e[7]=c,e[8]=m):m=e[8];let p;return e[9]!==n||e[10]!==t||e[11]!==r||e[12]!==l||e[13]!==i||e[14]!==m?(p=(0,u.jsxs)("button",{"aria-label":r,"aria-pressed":n,className:l,"data-testid":"sql-chat-toggle",onClick:t,title:i,type:"button",children:[a,m]}),e[9]=n,e[10]=t,e[11]=r,e[12]=l,e[13]=i,e[14]=m,e[15]=p):p=e[15],p},"as"),uo=d(s=>{let e=(0,X.c)(11),{onToggle:n,splitView:t}=s,o=J(),r;e[0]!==o?(r=o("Split editor and results"),e[0]=o,e[1]=r):r=e[1];let l=`inline-flex items-center rounded-md border border-border px-2 py-1.5 outline-none transition-colors hover:bg-accent focus-visible:bg-accent ${t?"bg-accent text-foreground":"text-muted-foreground"}`,i;e[2]!==o?(i=o("Split editor and results"),e[2]=o,e[3]=i):i=e[3];let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=(0,u.jsxs)("svg",{"aria-hidden":"true",className:"size-4",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.7,viewBox:"0 0 24 24",children:[(0,u.jsx)("rect",{height:"16",rx:"2",width:"18",x:"3",y:"4"}),(0,u.jsx)("path",{d:"M12 4v16"})]}),e[4]=a):a=e[4];let c;return e[5]!==n||e[6]!==t||e[7]!==r||e[8]!==l||e[9]!==i?(c=(0,u.jsx)("button",{"aria-label":r,"aria-pressed":t,className:l,"data-testid":"sql-split-toggle",onClick:n,title:i,type:"button",children:a}),e[5]=n,e[6]=t,e[7]=r,e[8]=l,e[9]=i,e[10]=c):c=e[10],c},"cs"),mo=d(s=>{let e=(0,X.c)(8),{disabled:n,onExplainPlan:t,onExplainSql:o,pane:r}=s,l=J();if(r==="explain"){let a;return e[0]!==n||e[1]!==t||e[2]!==l?(a=t===void 0?null:(0,u.jsx)("button",{className:"inline-flex items-center rounded-md border border-border px-3 py-1.5 text-xs font-medium text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50","data-testid":"sql-explain-plan",disabled:n,onClick:t,type:"button",children:l("Read this plan")}),e[0]=n,e[1]=t,e[2]=l,e[3]=a):a=e[3],a}let i;return e[4]!==n||e[5]!==o||e[6]!==l?(i=o===void 0?null:(0,u.jsx)("button",{className:"inline-flex items-center rounded-md border border-border px-3 py-1.5 text-xs font-medium text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50","data-testid":"sql-explain-query",disabled:n,onClick:o,type:"button",children:l("Explain this query")}),e[4]=n,e[5]=o,e[6]=l,e[7]=i):i=e[7],i},"ds"),fo=d(s=>{let e=(0,X.c)(8),{onRun:n,running:t}=s,o=J(),r;e[0]!==t||e[1]!==o?(r=o(t?"Running\u2026":"Run"),e[0]=t,e[1]=o,e[2]=r):r=e[2];let l;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=(0,u.jsx)("kbd",{className:"rounded border border-primary-foreground/30 px-1 font-sans text-[10px]",children:"\u2318\u21B5"}),e[3]=l):l=e[3];let i;return e[4]!==n||e[5]!==t||e[6]!==r?(i=(0,u.jsxs)("button",{className:"inline-flex items-center gap-1.5 rounded-md bg-primary px-3 py-1.5 text-xs font-medium text-primary-foreground outline-none transition-colors hover:bg-primary/90 focus-visible:bg-primary/90 disabled:pointer-events-none disabled:opacity-50","data-testid":"sql-run",disabled:t,onClick:n,type:"button",children:[r,l]}),e[4]=n,e[5]=t,e[6]=r,e[7]=i):i=e[7],i},"us"),ho=d(s=>{let e=(0,X.c)(35),{onInferChart:n,onShowChart:t,onShowExplain:o,onShowResults:r,pane:l,result:i,rpc:a}=s,c=J(),m=l==="results",p;e[0]!==m?(p=Ie(m),e[0]=m,e[1]=p):p=e[1];let f;e[2]!==c?(f=c("Results"),e[2]=c,e[3]=f):f=e[3];let b;e[4]!==r||e[5]!==p||e[6]!==f?(b=(0,u.jsx)("button",{className:p,"data-testid":"sql-tab-results",onClick:r,type:"button",children:f}),e[4]=r,e[5]=p,e[6]=f,e[7]=b):b=e[7];let g=l==="chart",k;e[8]!==g?(k=Ie(g),e[8]=g,e[9]=k):k=e[9];let q;e[10]!==c?(q=c("Chart"),e[10]=c,e[11]=q):q=e[11];let N;e[12]!==t||e[13]!==k||e[14]!==q?(N=(0,u.jsx)("button",{className:k,"data-testid":"sql-tab-chart",onClick:t,type:"button",children:q}),e[12]=t,e[13]=k,e[14]=q,e[15]=N):N=e[15];let h;e[16]!==n||e[17]!==l||e[18]!==i||e[19]!==a||e[20]!==c?(h=!a.unavailable&&l==="chart"&&i!==null&&(0,u.jsx)("button",{className:Ie(!1),"data-testid":"sql-infer-chart",disabled:a.pending("chart"),onClick:n,type:"button",children:a.pending("chart")?c("Thinking\u2026"):c("Suggest chart")}),e[16]=n,e[17]=l,e[18]=i,e[19]=a,e[20]=c,e[21]=h):h=e[21];let S=l==="explain",x;e[22]!==S?(x=Ie(S),e[22]=S,e[23]=x):x=e[23];let v;e[24]!==c?(v=c("Explain"),e[24]=c,e[25]=v):v=e[25];let y;e[26]!==o||e[27]!==x||e[28]!==v?(y=(0,u.jsx)("button",{className:x,"data-testid":"sql-tab-explain",onClick:o,type:"button",children:v}),e[26]=o,e[27]=x,e[28]=v,e[29]=y):y=e[29];let w;return e[30]!==y||e[31]!==b||e[32]!==N||e[33]!==h?(w=(0,u.jsxs)(u.Fragment,{children:[b,N,h,y]}),e[30]=y,e[31]=b,e[32]=N,e[33]=h,e[34]=w):w=e[34],w},"fs"),po=d(s=>{let e=(0,X.c)(9),{onSelectStatement:n,script:t}=s,o;if(e[0]!==n||e[1]!==t.runs||e[2]!==t.selected){let l;e[4]!==n||e[5]!==t.selected?(l=d((i,a)=>(0,u.jsx)("button",{"aria-pressed":a===t.selected,className:`rounded-md border px-2 py-0.5 font-mono text-[11px] outline-none transition-colors ${a===t.selected?"border-foreground text-foreground":"border-border text-muted-foreground hover:text-foreground"} ${i.error===null?"":"border-destructive/50 text-destructive"}`,"data-testid":`sql-statement-${a.toString()}`,onClick:d(()=>{n(a)},"onClick"),title:i.sql,type:"button",children:a+1},`${a.toString()}:${i.sql}`),"l"),e[4]=n,e[5]=t.selected,e[6]=l):l=e[6],o=t.runs.map(l),e[0]=n,e[1]=t.runs,e[2]=t.selected,e[3]=o}else o=e[3];let r;return e[7]!==o?(r=(0,u.jsx)("div",{className:"flex shrink-0 flex-wrap items-center gap-1 border-b border-border px-3 py-1.5","data-testid":"sql-statements",children:o}),e[7]=o,e[8]=r):r=e[8],r},"ms"),bo=d(s=>{let e=(0,X.c)(9),{error:n,onDebugError:t,rpc:o}=s,r=J(),l;e[0]!==n?(l=(0,u.jsx)(Xe,{className:"w-full font-mono text-xs",testId:"sql-error",variant:"destructive",children:n}),e[0]=n,e[1]=l):l=e[1];let i;e[2]!==t||e[3]!==o||e[4]!==r?(i=!o.unavailable&&t!==void 0&&(0,u.jsxs)("button",{className:"inline-flex items-center gap-1.5 rounded-md border border-border px-2 py-1 text-xs outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"sql-debug-error",disabled:o.pending("chat"),onClick:t,type:"button",children:[(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M21 12a8 8 0 0 1-8 8H7l-4 3 1.2-4.2A8 8 0 1 1 21 12Z"})}),o.pending("chat")?r("Thinking\u2026"):r("Debug with AI")]}),e[2]=t,e[3]=o,e[4]=r,e[5]=i):i=e[5];let a;return e[6]!==l||e[7]!==i?(a=(0,u.jsxs)("div",{className:"m-3 flex flex-col items-start gap-2",children:[l,i]}),e[6]=l,e[7]=i,e[8]=a):a=e[8],a},"ps"),go=d(s=>{let e=(0,X.c)(18),{chart:n,durationMs:t,pane:o,result:r}=s,l=J(),i;e[0]!==n||e[1]!==o||e[2]!==r?(i=o==="chart"?(0,u.jsx)(et,{axes:n,result:r}):(0,u.jsx)(tt,{result:r}),e[0]=n,e[1]=o,e[2]=r,e[3]=i):i=e[3];let a;e[4]!==r.rowCount||e[5]!==r.rows||e[6]!==r.truncated||e[7]!==l?(a=r.truncated?l("Showing the first {max} rows.",{max:r.rows.length}):l("{count} rows",{count:r.rowCount}),e[4]=r.rowCount,e[5]=r.rows,e[6]=r.truncated,e[7]=l,e[8]=a):a=e[8];let c;e[9]!==t||e[10]!==l?(c=t!==void 0&&` \xB7 ${l("{ms} ms",{ms:Math.round(t)})}`,e[9]=t,e[10]=l,e[11]=c):c=e[11];let m;e[12]!==a||e[13]!==c?(m=(0,u.jsxs)("p",{className:"border-t border-border px-3 py-1.5 text-xs text-muted-foreground","data-testid":"sql-count",children:[a,c]}),e[12]=a,e[13]=c,e[14]=m):m=e[14];let p;return e[15]!==i||e[16]!==m?(p=(0,u.jsxs)("div",{"data-testid":"sql-result",children:[i,m]}),e[15]=i,e[16]=m,e[17]=p):p=e[17],p},"hs"),xo=d(s=>{let e=(0,X.c)(13),{chart:n,durationMs:t,error:o,onDebugError:r,pane:l,result:i,rpc:a}=s,c=J();if(o!==null){let p;return e[0]!==o||e[1]!==r||e[2]!==a?(p=(0,u.jsx)(bo,{error:o,onDebugError:r,rpc:a}),e[0]=o,e[1]=r,e[2]=a,e[3]=p):p=e[3],p}if(i===null){let p;e[4]!==c?(p=c("Click Run to execute your query."),e[4]=c,e[5]=p):p=e[5];let f;return e[6]!==p?(f=(0,u.jsx)("p",{className:"p-4 text-sm text-muted-foreground","data-testid":"sql-empty",children:p}),e[6]=p,e[7]=f):f=e[7],f}let m;return e[8]!==n||e[9]!==t||e[10]!==l||e[11]!==i?(m=(0,u.jsx)(go,{chart:n,durationMs:t,pane:l,result:i}),e[8]=n,e[9]=t,e[10]=l,e[11]=i,e[12]=m):m=e[12],m},"bs"),vo=d(s=>{let e=(0,X.c)(63),{rpc:n,chart:t,className:o,durationMs:r,error:l,onFormat:i,onInferChart:a,onRun:c,onSelectStatement:m,onShardKeyChange:p,onShowChart:f,onShowExplain:b,onShowResults:g,chatOpen:k,onDebugError:q,onExplainPlan:N,onExplainSql:h,onToggleChat:S,onToggleSplit:x,pane:v,result:y,running:w,script:E,shardKey:I,splitView:T}=s,L=J(),C;e[0]!==a||e[1]!==f||e[2]!==b||e[3]!==g||e[4]!==v||e[5]!==y||e[6]!==n?(C=(0,u.jsx)(ho,{onInferChart:a,onShowChart:f,onShowExplain:b,onShowResults:g,pane:v,result:y,rpc:n}),e[0]=a,e[1]=f,e[2]=b,e[3]=g,e[4]=v,e[5]=y,e[6]=n,e[7]=C):C=e[7];let R;e[8]!==k||e[9]!==S?(R=S!==void 0&&(0,u.jsx)(co,{chatOpen:k,onToggle:S}),e[8]=k,e[9]=S,e[10]=R):R=e[10];let _;e[11]!==x||e[12]!==T?(_=(0,u.jsx)(uo,{onToggle:x,splitView:T}),e[11]=x,e[12]=T,e[13]=_):_=e[13];let M;e[14]!==y?(M=y!==null&&y.columns.length>0&&(0,u.jsx)(Ze,{columns:y.columns,name:"query-result",rows:y.rows}),e[14]=y,e[15]=M):M=e[15];let z;e[16]!==L?(z=L("Format"),e[16]=L,e[17]=z):z=e[17];let j;e[18]!==i||e[19]!==w||e[20]!==z?(j=(0,u.jsx)("button",{className:"inline-flex items-center rounded-md border border-border px-3 py-1.5 text-xs font-medium text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50","data-testid":"sql-format",disabled:w,onClick:i,type:"button",children:z}),e[18]=i,e[19]=w,e[20]=z,e[21]=j):j=e[21];let B;e[22]!==n||e[23]!==w?(B=w||n.pending("chat"),e[22]=n,e[23]=w,e[24]=B):B=e[24];let W;e[25]!==N||e[26]!==h||e[27]!==v||e[28]!==B?(W=(0,u.jsx)(mo,{disabled:B,onExplainPlan:N,onExplainSql:h,pane:v}),e[25]=N,e[26]=h,e[27]=v,e[28]=B,e[29]=W):W=e[29];let $;e[30]!==p||e[31]!==I?($=(0,u.jsx)(Ve,{onChange:p,testId:"sql-shard-input",value:I}),e[30]=p,e[31]=I,e[32]=$):$=e[32];let K;e[33]!==c||e[34]!==w?(K=(0,u.jsx)(fo,{onRun:c,running:w}),e[33]=c,e[34]=w,e[35]=K):K=e[35];let O;e[36]!==K||e[37]!==R||e[38]!==_||e[39]!==M||e[40]!==j||e[41]!==W||e[42]!==$?(O=(0,u.jsxs)("div",{className:"ms-auto flex items-center gap-2",children:[R,_,M,j,W,$,K]}),e[36]=K,e[37]=R,e[38]=_,e[39]=M,e[40]=j,e[41]=W,e[42]=$,e[43]=O):O=e[43];let D;e[44]!==C||e[45]!==O?(D=(0,u.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-border pe-2",children:[C,O]}),e[44]=C,e[45]=O,e[46]=D):D=e[46];let A;e[47]!==m||e[48]!==E?(A=E!==void 0&&(0,u.jsx)(po,{onSelectStatement:m,script:E}),e[47]=m,e[48]=E,e[49]=A):A=e[49];let Q;e[50]!==t||e[51]!==r||e[52]!==l||e[53]!==q||e[54]!==v||e[55]!==y||e[56]!==n?(Q=(0,u.jsx)("div",{className:"min-h-0 flex-1 overflow-auto",children:(0,u.jsx)(xo,{chart:t,durationMs:r,error:l,onDebugError:q,pane:v,result:y,rpc:n})}),e[50]=t,e[51]=r,e[52]=l,e[53]=q,e[54]=v,e[55]=y,e[56]=n,e[57]=Q):Q=e[57];let F;return e[58]!==o||e[59]!==D||e[60]!==A||e[61]!==Q?(F=(0,u.jsxs)("div",{className:o,children:[D,A,Q]}),e[58]=o,e[59]=D,e[60]=A,e[61]=Q,e[62]=F):F=e[62],F},"gs"),yo=d((s,e)=>s.trim()===""?e:(s.split(`
|
|
15
|
+
`)[0]??s).slice(0,24),"xs"),wo=d(s=>{s?.focus(),s?.select()},"vs"),So=d(s=>{let e=(0,X.c)(14),{initial:n,onCancel:t,onCommit:o,placeholder:r,testId:l}=s,i=J(),a;e[0]!==o?(a=d(g=>{o(g.currentTarget.value.trim())},"c"),e[0]=o,e[1]=a):a=e[1];let c=a,m;e[2]!==t||e[3]!==o?(m=d(g=>{g.key==="Enter"?o(g.currentTarget.value.trim()):g.key==="Escape"&&t()},"d"),e[2]=t,e[3]=o,e[4]=m):m=e[4];let p=m,f;e[5]!==i?(f=i("Tab title"),e[5]=i,e[6]=f):f=e[6];let b;return e[7]!==n||e[8]!==c||e[9]!==p||e[10]!==r||e[11]!==f||e[12]!==l?(b=(0,u.jsx)("input",{"aria-label":f,className:"w-40 rounded border border-ring bg-background px-1 py-0.5 text-xs outline-none","data-testid":l,defaultValue:n,onBlur:c,onKeyDown:p,placeholder:r,ref:wo,type:"text"}),e[7]=n,e[8]=c,e[9]=p,e[10]=r,e[11]=f,e[12]=l,e[13]=b):b=e[13],b},"ys"),qo=d(s=>{let e=(0,X.c)(29),{idBase:n,onDiscard:t,onKeep:o}=s,r=J(),l=`sql-tab-close-prompt-${n}`,i;e[0]!==r?(i=r("Discard?"),e[0]=r,e[1]=i):i=e[1];let a;e[2]!==i?(a=(0,u.jsx)("span",{className:"text-[11px] text-muted-foreground",children:i}),e[2]=i,e[3]=a):a=e[3];let c;e[4]!==r?(c=r("Discard changes"),e[4]=r,e[5]=c):c=e[5];let m=`sql-tab-close-confirm-${n}`,p;e[6]!==r?(p=r("Discard changes"),e[6]=r,e[7]=p):p=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2.4,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M5 13l4 4L19 7"})}),e[8]=f):f=e[8];let b;e[9]!==t||e[10]!==c||e[11]!==m||e[12]!==p?(b=(0,u.jsx)("button",{"aria-label":c,className:"flex size-5 items-center justify-center rounded text-destructive hover:bg-destructive/10","data-testid":m,onClick:t,title:p,type:"button",children:f}),e[9]=t,e[10]=c,e[11]=m,e[12]=p,e[13]=b):b=e[13];let g;e[14]!==r?(g=r("Keep editing"),e[14]=r,e[15]=g):g=e[15];let k=`sql-tab-close-cancel-${n}`,q;e[16]!==r?(q=r("Keep editing"),e[16]=r,e[17]=q):q=e[17];let N;e[18]===Symbol.for("react.memo_cache_sentinel")?(N=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2.4,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M6 6l12 12M18 6 6 18"})}),e[18]=N):N=e[18];let h;e[19]!==o||e[20]!==k||e[21]!==q||e[22]!==g?(h=(0,u.jsx)("button",{"aria-label":g,className:"flex size-5 items-center justify-center rounded text-muted-foreground hover:bg-accent","data-testid":k,onClick:o,title:q,type:"button",children:N}),e[19]=o,e[20]=k,e[21]=q,e[22]=g,e[23]=h):h=e[23];let S;return e[24]!==l||e[25]!==h||e[26]!==a||e[27]!==b?(S=(0,u.jsxs)("span",{className:"flex shrink-0 items-center gap-1","data-testid":l,role:"group",children:[a,b,h]}),e[24]=l,e[25]=h,e[26]=a,e[27]=b,e[28]=S):S=e[28],S},"Ss"),ko=d(s=>{let e=(0,X.c)(47),{active:n,canClose:t,onClose:o,onMenu:r,onRename:l,onSelect:i,tab:a}=s,c=J(),[m,p]=(0,H.useState)(!1),[f,b]=(0,H.useState)(!1),g;e[0]!==r||e[1]!==a.id?(g=d(A=>{r(a.id,A)},"g"),e[0]=r,e[1]=a.id,e[2]=g):g=e[2];let k=g,q;e[3]!==i||e[4]!==a.id?(q=d(()=>{i(a.id)},"v"),e[3]=i,e[4]=a.id,e[5]=q):q=e[5];let N=q,h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=d(()=>{p(!0)},"p"),e[6]=h):h=e[6];let S=h,x;e[7]!==o||e[8]!==a?(x=d(A=>{A.stopPropagation(),gt(a)?b(!0):o(a.id)},"x"),e[7]=o,e[8]=a,e[9]=x):x=e[9];let v=x,y;e[10]!==o||e[11]!==a.id?(y=d(A=>{A.stopPropagation(),b(!1),o(a.id)},"y"),e[10]=o,e[11]=a.id,e[12]=y):y=e[12];let w=y,E;e[13]===Symbol.for("react.memo_cache_sentinel")?(E=d(A=>{A.stopPropagation(),b(!1)},"w"),e[13]=E):E=e[13];let I=E,T;e[14]!==l||e[15]!==a.id?(T=d(A=>{l(a.id,A),p(!1)},"q"),e[14]=l,e[15]=a.id,e[16]=T):T=e[16];let L=T,C;e[17]===Symbol.for("react.memo_cache_sentinel")?(C=d(()=>{p(!1)},"E"),e[17]=C):C=e[17];let R=C,_;e[18]!==a.name?(_=a.name.trim(),e[18]=a.name,e[19]=_):_=e[19];let M=_,z;e[20]!==c||e[21]!==a.sql?(z=yo(a.sql,c("Untitled")),e[20]=c,e[21]=a.sql,e[22]=z):z=e[22];let j=z,B=n?"bg-background text-foreground":"bg-muted/40 text-muted-foreground hover:text-foreground",W;e[23]!==B?(W=ie("group/tab flex shrink-0 items-center gap-1 border-e border-border ps-3 pe-1.5 text-xs",B),e[23]=B,e[24]=W):W=e[24];let $=`sql-tab-${a.id}`,K;e[25]!==n||e[26]!==L||e[27]!==M||e[28]!==j||e[29]!==m||e[30]!==N||e[31]!==c||e[32]!==a.id?(K=m?(0,u.jsx)(So,{initial:M,onCancel:R,onCommit:L,placeholder:j,testId:`sql-tab-rename-${a.id}`}):(0,u.jsx)("button",{"aria-pressed":n,className:"max-w-40 truncate py-1.5 outline-none","data-testid":`sql-tab-select-${a.id}`,onClick:N,onDoubleClick:S,title:c("Double-click to rename"),type:"button",children:M===""?j:M}),e[25]=n,e[26]=L,e[27]=M,e[28]=j,e[29]=m,e[30]=N,e[31]=c,e[32]=a.id,e[33]=K):K=e[33];let O;e[34]!==t||e[35]!==w||e[36]!==f||e[37]!==v||e[38]!==c||e[39]!==a.id?(O=t&&(f?(0,u.jsx)(qo,{idBase:a.id,onDiscard:w,onKeep:I}):(0,u.jsx)("button",{"aria-label":c("Close tab"),className:"flex size-5 shrink-0 items-center justify-center rounded text-muted-foreground hover:bg-destructive/10 hover:text-destructive","data-testid":`sql-tab-close-${a.id}`,onClick:v,title:c("Close tab"),type:"button",children:(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-3",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M6 6l12 12M18 6 6 18"})})})),e[34]=t,e[35]=w,e[36]=f,e[37]=v,e[38]=c,e[39]=a.id,e[40]=O):O=e[40];let D;return e[41]!==k||e[42]!==W||e[43]!==$||e[44]!==K||e[45]!==O?(D=(0,u.jsxs)("div",{className:W,"data-testid":$,onContextMenu:k,children:[K,O]}),e[41]=k,e[42]=W,e[43]=$,e[44]=K,e[45]=O,e[46]=D):D=e[46],D},"ws"),Co=d(s=>{let e=(0,X.c)(43),{model:n,onSelect:t}=s,o=J(),{activeTab:r,addEditorTab:l,cancelBulk:i,closeEditorTab:a,closeTabMenu:c,confirmBulk:m,menuStyle:p,onBackdropContextMenu:f,onCloseAll:b,onCloseOthers:g,onCloseToRight:k,openTabMenu:q,pendingBulk:N,renameTab:h,tabMenu:S,tabs:x}=n,v;if(e[0]!==r||e[1]!==a||e[2]!==t||e[3]!==q||e[4]!==h||e[5]!==x){let _;e[7]!==r||e[8]!==a||e[9]!==t||e[10]!==q||e[11]!==h||e[12]!==x.length?(_=d(M=>(0,u.jsx)(ko,{active:M.id===r.id,canClose:x.length>1,onClose:a,onMenu:q,onRename:h,onSelect:t,tab:M},M.id),"L"),e[7]=r,e[8]=a,e[9]=t,e[10]=q,e[11]=h,e[12]=x.length,e[13]=_):_=e[13],v=x.map(_),e[0]=r,e[1]=a,e[2]=t,e[3]=q,e[4]=h,e[5]=x,e[6]=v}else v=e[6];let y;e[14]!==o?(y=o("New tab"),e[14]=o,e[15]=y):y=e[15];let w=x.length>=He,E;e[16]!==o?(E=o("New tab"),e[16]=o,e[17]=E):E=e[17];let I;e[18]===Symbol.for("react.memo_cache_sentinel")?(I=(0,u.jsx)("svg",{"aria-hidden":"true",className:"size-4",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.7,viewBox:"0 0 24 24",children:(0,u.jsx)("path",{d:"M12 5v14M5 12h14"})}),e[18]=I):I=e[18];let T;e[19]!==l||e[20]!==y||e[21]!==w||e[22]!==E?(T=(0,u.jsx)("button",{"aria-label":y,className:"flex size-8 shrink-0 items-center justify-center text-muted-foreground outline-none transition-colors hover:bg-accent hover:text-foreground focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-40","data-testid":"sql-tab-add",disabled:w,onClick:l,title:E,type:"button",children:I}),e[19]=l,e[20]=y,e[21]=w,e[22]=E,e[23]=T):T=e[23];let L;e[24]!==v||e[25]!==T?(L=(0,u.jsxs)("div",{className:"flex shrink-0 items-stretch overflow-x-auto border-b border-border bg-muted/30","data-testid":"sql-tab-strip",role:"tablist",children:[v,T]}),e[24]=v,e[25]=T,e[26]=L):L=e[26];let C;e[27]!==i||e[28]!==c||e[29]!==m||e[30]!==p||e[31]!==f||e[32]!==b||e[33]!==g||e[34]!==k||e[35]!==N||e[36]!==o||e[37]!==S||e[38]!==x?(C=S!==null&&(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)("div",{className:"fixed inset-0 z-40","data-testid":"sql-tab-menu-backdrop",onClick:c,onContextMenu:f,role:"presentation"}),(0,u.jsx)("div",{className:"fixed z-50 min-w-44 rounded-md border border-border bg-popover py-1 text-popover-foreground shadow-md","data-testid":"sql-tab-menu",role:"menu",style:p,children:N===null?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)("button",{className:"flex w-full items-center px-3 py-1.5 text-start text-xs outline-none hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-40","data-testid":"sql-tab-menu-close-others",disabled:x.length<=1,onClick:g,role:"menuitem",type:"button",children:o("Close other tabs")}),(0,u.jsx)("button",{className:"flex w-full items-center px-3 py-1.5 text-start text-xs outline-none hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-40","data-testid":"sql-tab-menu-close-right",disabled:x.findIndex(_=>_.id===S.id)>=x.length-1,onClick:k,role:"menuitem",type:"button",children:o("Close tabs to the right")}),(0,u.jsx)("button",{className:"flex w-full items-center px-3 py-1.5 text-start text-xs outline-none hover:bg-accent focus-visible:bg-accent","data-testid":"sql-tab-menu-close-all",onClick:b,role:"menuitem",type:"button",children:o("Close all tabs")})]}):(0,u.jsxs)("div",{className:"px-3 py-1.5","data-testid":"sql-tab-menu-confirm",children:[(0,u.jsx)("p",{className:"pb-1.5 text-xs text-muted-foreground",children:o("Discard unsaved tabs?")}),(0,u.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,u.jsx)("button",{className:"rounded px-2 py-1 text-xs font-medium text-destructive outline-none hover:bg-destructive/10 focus-visible:bg-destructive/10","data-testid":"sql-tab-menu-confirm-discard",onClick:m,type:"button",children:o("Discard")}),(0,u.jsx)("button",{className:"rounded px-2 py-1 text-xs text-muted-foreground outline-none hover:bg-accent focus-visible:bg-accent","data-testid":"sql-tab-menu-confirm-cancel",onClick:i,type:"button",children:o("Cancel")})]})]})})]}),e[27]=i,e[28]=c,e[29]=m,e[30]=p,e[31]=f,e[32]=b,e[33]=g,e[34]=k,e[35]=N,e[36]=o,e[37]=S,e[38]=x,e[39]=C):C=e[39];let R;return e[40]!==L||e[41]!==C?(R=(0,u.jsxs)(u.Fragment,{children:[L,C]}),e[40]=L,e[41]=C,e[42]=R):R=e[42],R},"Cs"),No=ge(ve.runSql),Eo="lunora-studio-sql-split-view",To=d(()=>qe(xt[0]?.sql??""),"Es"),Lo=d(()=>performance.now(),"Ts"),Io=d(()=>{let s=(0,X.c)(2),e;s[0]===Symbol.for("react.memo_cache_sentinel")?(e=new Map,s[0]=e):e=s[0];let n=(0,H.useRef)(e),t;return s[1]===Symbol.for("react.memo_cache_sentinel")?(t={advance:d(o=>{n.current.set(o,(n.current.get(o)??0)+1)},"advance"),begin:d(o=>{let r=n.current.get(o)??0;return()=>(n.current.get(o)??0)===r},"begin")},s[1]=t):t=s[1],t},"qs"),Ro=d((s,e)=>{let n=s.tables[0];return n===void 0?[e("What tables does this app have?")]:[e("What tables does this app have?"),e("Show me the most recent rows in {table}",{table:n}),e("Is anything wrong with my schema?")]},"Rs"),Re=d(s=>s.tables.map(e=>({columns:[...s.columns[e]??[]],table:e})),"Te"),or=d(({initialShardKey:s,now:e=Lo})=>{let n=Ce(),t=On(To),{activeTab:o,openEditorTab:r,output:l,patchActiveOutput:i,patchActiveTab:a,setActiveTabId:c,unlinkQuery:m}=t,p=Io(),f=Fn({loadIntoActiveTab:d((U,oe)=>{p.advance(o.id),a({activeId:oe,sql:U}),i({chart:void 0,durationMs:void 0,error:null,failed:void 0,result:null,running:!1,script:void 0})},"loadIntoActiveTab"),unlinkQuery:m}),{recordHistory:b,updateQuerySql:g}=f,k=o.sql,{activeId:q}=o,{chart:N,error:h,failed:S,result:x,running:v}=l,y=l.pane,[w,E]=(0,H.useState)(s??""),[I,T]=Ee(Eo,!1),L=J(),C=Ke(),{probe:R,schema:_}=qn(w),M=(0,H.useCallback)(U=>{a({sql:U}),q!==null&&g(q,U)},[q,a,g]),z=C?.setHasEditor;(0,H.useEffect)(()=>{if(z!==void 0)return z(!0),()=>{z(!1)}},[z]);let j=C?.insertRequest,B=C?.takeInsert;(0,H.useEffect)(()=>{j===void 0||B===void 0||(B(j.id),k.trim()===""&&q===null?M(j.sql):r(j.sql)||a({activeId:null,sql:k.trim()===""?j.sql:`${k.trimEnd()}
|
|
16
|
+
|
|
17
|
+
${j.sql}`}))},[q,k,j,r,a,B,M]);let W=sn(k,_,w),$=Ye(w),K=d(()=>{x!==null&&se((async()=>{let U=await $.inferChart({columns:x.columns,rowCount:x.rowCount,types:Object.fromEntries(x.columns.map(oe=>[oe,typeof(x.rows[0]?.[oe]??"")]))});i({chart:U})})())},"M"),O=d(async U=>{let oe=e();try{let re=await n.query(No,{sql:U},xe(w)),ce=e()-oe;return b(U),{durationMs:ce,error:null,result:re,sql:U}}catch(re){return{error:Fe(re),result:null,sql:U}}},"A"),D=d(async U=>{if(k.trim()==="")return;let oe=p.begin(o.id);i({running:!0,...U==="explain"?{explained:k.trim()}:{}});let re=U==="explain"?ze(Dt(k),0):mt(k),ce=[];for(let ke of re){let vt={error:ke.rejection?.message??"",result:null,sql:ke.sql};ce.push(ke.rejection===void 0?await O(ke.sql):vt)}if(Ge(w),!oe())return;let We=Math.max(ce.length-1,0),de=ce[We];i({chart:void 0,durationMs:de?.durationMs,error:de?.error??null,failed:de?.error===null||de===void 0?void 0:{error:de.error,sql:de.sql},pane:U,result:de?.result??null,running:!1,script:ce.length>1?{runs:ce,selected:We}:void 0})},"D"),A=d(U=>{let oe=l.script?.runs,re=oe?.[U];oe===void 0||re===void 0||i({chart:void 0,durationMs:re.durationMs,error:re.error,failed:re.error===null?void 0:{error:re.error,sql:re.sql},result:re.result,script:{runs:oe,selected:U}})},"z"),Q=d(()=>{se(D("results"))},"j"),F=En({inlineEditEnabled:!$.unavailable,onSubmit:d(()=>{se(D(l.pane))},"onSubmit"),probe:R,schema:_,setDraft:M}),{closeAutocomplete:ee,closeInlineEdit:P}=F,G=d(()=>{M(zt(k))},"X"),Z=d(U=>{ee(),P(),c(U)},"Y"),V=d(()=>{i({pane:"results"})},"oe"),le=d(()=>{se(D("explain"))},"re"),ae=d(()=>{i({pane:"chart"})},"pe"),ue=d(()=>{T(!I)},"ve"),pe=d(()=>{if(C!==void 0){if(C.open){C.close();return}C.openAssistant({schema:Re(_),shardKey:w,suggestions:Ro(_,L),title:L("SQL console")})}},"he"),me=d(U=>{C?.rebindShard(w,U),E(U)},"ye"),be=d(()=>{S!==void 0&&C?.openAssistant({ask:L(`This statement failed:
|
|
18
|
+
{sql}
|
|
19
|
+
|
|
20
|
+
The database said: {error}
|
|
21
|
+
|
|
22
|
+
Why, and what should it be?`,{error:S.error,sql:S.sql}),schema:Re(_),shardKey:w,title:L("Debug query")})},"be"),fe=d(()=>{let U=k.trim();U!==""&&C?.openAssistant({ask:L(`Explain what this query does, step by step:
|
|
23
|
+
{statement}`,{statement:U}),schema:Re(_),shardKey:w,title:L("Explain query")})},"V"),Y=d(()=>{let U=l.explained;if(x===null||x.rows.length===0||U===void 0)return;let oe=x.rows.map(re=>x.columns.map(ce=>Qe(re[ce])).join(" | ")).join(`
|
|
24
|
+
`);C?.openAssistant({ask:L(`SQLite planned this query:
|
|
25
|
+
{statement}
|
|
26
|
+
|
|
27
|
+
as:
|
|
28
|
+
{plan}
|
|
29
|
+
|
|
30
|
+
What is it doing, and is anything here slow?`,{plan:oe,statement:U}),schema:Re(_),shardKey:w,title:L("Read plan")})},"ee"),te=I?"flex min-h-0 flex-1 flex-row":"flex min-h-0 flex-1 flex-col",ne=I?"flex w-2/5 min-h-0 min-w-0 shrink-0 flex-col border-s border-border":"flex h-2/5 min-h-0 shrink-0 flex-col border-t border-border";return(0,u.jsxs)("div",{className:"flex h-full min-w-0","data-testid":"lunora-sql-editor",children:[(0,u.jsx)(ao,{activeId:q,history:f.history,listRef:f.listRef,onClearHistory:f.clearHistory,onDelete:f.deleteQuery,onLoadHistory:f.loadFromHistory,onLoadTemplate:f.loadTemplate,onNew:f.newQuery,onRename:f.renameQuery,onSearchChange:f.onSearchChange,onSelect:f.selectQuery,onToggleRememberHistory:f.setRememberHistory,queries:f.queries,rememberHistory:f.rememberHistory,rpc:$,search:f.search}),(0,u.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,u.jsx)(Co,{model:t,onSelect:Z}),(0,u.jsxs)("div",{className:te,children:[(0,u.jsx)(oo,{autocomplete:F.autocompleteState,diagnostics:W,draft:k,editorRef:F.editorRef,failed:S,gutterRef:F.gutterRef,handlers:F.handlers,inlineEdit:F.inlineEdit,listboxId:F.listboxId,onAcceptInlineEdit:F.acceptInlineEdit,onCancelInlineEdit:F.closeInlineEdit,onGenerated:M,onPickSuggestion:F.onPickSuggestion,onRevealDiagnostic:F.revealDiagnostic,overlayRef:F.overlayRef,rpc:$}),(0,u.jsx)(vo,{chart:N,chatOpen:C?.open===!0,className:ne,durationMs:l.durationMs,error:h,onDebugError:S===void 0?void 0:be,onExplainPlan:C===void 0||C.unavailable||y!=="explain"?void 0:Y,onExplainSql:C===void 0||C.unavailable?void 0:fe,onFormat:G,onInferChart:K,onRun:Q,onSelectStatement:A,onShardKeyChange:me,onShowChart:ae,onShowExplain:le,onShowResults:V,onToggleChat:C===void 0||C.unavailable?void 0:pe,onToggleSplit:ue,pane:y,result:x,rpc:$,running:v,script:l.script,shardKey:w,splitView:I})]})]})]})},"Vs");export{or as SqlEditorPanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as g}from"./chunk-GNI37YCV.js";import{a as y}from"./chunk-GWNGVKLG.js";import{a as x}from"./chunk-6G3E4PJ2.js";import{a,d as b}from"./chunk-5PEAXTYQ.js";var k=b(y(),1),n=b(x(),1);var _=a(function(o,d,s){let t=(0,k.c)(15),c;t[0]===Symbol.for("react.memo_cache_sentinel")?(c={kind:"loading"},t[0]=c):c=t[0];let[h,E]=(0,n.useState)(c),r;t[1]!==d?(r=a(async()=>d(),"f"),t[1]=d,t[2]=r):r=t[2];let p=(0,n.useEffectEvent)(r),f;t[3]!==s?(f=a(e=>s(e),"m"),t[3]=s,t[4]=f):f=t[4];let v=(0,n.useEffectEvent)(f),i;t[5]!==v||t[6]!==p||t[7]!==o?(i=a(()=>{if(o!==void 0)return;let e=!1;return p().then(l=>(e||E(v(l)),l)).catch(l=>{e||E({kind:"error",message:g(l)})}),()=>{e=!0}},"u"),t[5]=v,t[6]=p,t[7]=o,t[8]=i):i=t[8];let m;t[9]!==o?(m=[o],t[9]=o,t[10]=m):m=t[10],(0,n.useEffect)(i,m);let u;return t[11]!==s||t[12]!==h||t[13]!==o?(u=o===void 0?h:s(o),t[11]=s,t[12]=h,t[13]=o,t[14]=u):u=t[14],u},"$");export{_ as a};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{a as de,b as ue,c as me,d as fe,e as pe}from"./chunk-
|
|
1
|
+
import{a as de,b as ue,c as me,d as fe,e as pe}from"./chunk-2H6VLY2M.js";import"./chunk-O3AZ7JKE.js";import{c as ce}from"./chunk-KH6OXCG3.js";import"./chunk-66BMMNUR.js";import{a as ae}from"./chunk-TKBTZX4K.js";import"./chunk-JD6PRRFO.js";import"./chunk-NGZNXNRD.js";import"./chunk-2SNHKJXK.js";import"./chunk-BCUOQNI2.js";import"./chunk-P5EVJEGC.js";import"./chunk-D65UVZIA.js";import"./chunk-NGVP66OH.js";import"./chunk-QAOZXPLU.js";import{a as se}from"./chunk-YEVTA35E.js";import{a as ie}from"./chunk-FHLODLBC.js";import{b as Y}from"./chunk-3D67ZJRW.js";import"./chunk-ZSWW2UGP.js";import"./chunk-QRA7AKYO.js";import"./chunk-IHGRWY3Y.js";import"./chunk-OWRKSQPE.js";import"./chunk-4EPW63HS.js";import{a as P}from"./chunk-V3BE427M.js";import"./chunk-CKEQX655.js";import"./chunk-UD5REVU2.js";import"./chunk-T3ZCW3RG.js";import{a as $}from"./chunk-2W4UO5BC.js";import{c as oe,d as le}from"./chunk-4N76XUNG.js";import{a as W,e as H}from"./chunk-OK2QU2EV.js";import{c as R,d as re,m as ne}from"./chunk-SHHGIT7M.js";import"./chunk-ZPQBVYNN.js";import{B as U,b as D,h as K,i as F,j as q,s as z}from"./chunk-GNI37YCV.js";import"./chunk-PDBW6GTJ.js";import{a as Ae}from"./chunk-GWNGVKLG.js";import{a as Ke,b as Be}from"./chunk-6G3E4PJ2.js";import{a as i,d as Z}from"./chunk-5PEAXTYQ.js";var X=Z(Ae(),1);var j=Z(Ke(),1);var d=Z(Be(),1);var E=class extends Error{static{i(this,"_")}problem;constructor(e){super(e.kind),this.name="CsvFormatError",this.problem=e}},De="\uFEFF",Re=i(()=>{let t=[],e=1,r=!1,n=!1,o="start",l="",s=i(()=>{t.push(o==="closing"||l!==""?l:void 0),o="start",l=""},"i"),a=i(c=>{s(),t.some(m=>m!==void 0)&&c.push({cells:t,number:e}),t=[],e+=1},"l"),u=i((c,m)=>{let f=r;if(r=!1,!(f&&c===`
|
|
2
2
|
`)){if(o==="quoted"){c==='"'?o="closing":l+=c;return}if(o==="closing"&&c==='"'){l+=c,o="quoted";return}if(c===","){s();return}if(c==="\r"){a(m),r=!0;return}if(c===`
|
|
3
3
|
`){a(m);return}if(o==="closing")throw new E({kind:"text-after-quote",record:e});if(o==="start"&&c==='"'){o="quoted";return}o="unquoted",l+=c}},"c");return{finish:i(()=>{if(o==="quoted")throw new E({kind:"unterminated-quote",record:e});let c=[];return a(c),c},"finish"),push:i(c=>{let m=[],f=0;for(!n&&c!==""&&(n=!0,f=c.startsWith(De)?1:0);f<c.length;f+=1)u(c.charAt(f),m);return m},"push")}},"De"),ye=i(async function*(t){let e=Re();for await(let r of t)yield*e.push(r);yield*e.finish()},"ie"),M=i((t,e,r)=>{Object.defineProperty(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0})},"$"),ve=i(t=>{let e=[],r=new Set;return t.forEach((n,o)=>{let l=(n??"").trim();if(l==="")throw new E({column:o+1,kind:"empty-header"});if(r.has(l))throw new E({kind:"duplicate-header",name:l});r.add(l),e.push(l)}),e},"le"),Ne=i(({cells:t,number:e},r,n)=>{if(t.length!==r.length)throw new E({expected:r.length,found:t.length,kind:"ragged",record:e});let o={};return r.forEach((l,s)=>{let a=t[s];a!==void 0?M(o,l,a):n.has(l)&&M(o,l,null)}),{doc:o,record:e}},"ae"),Ue=/^-?\d+$/u,Me=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/iu,Je=/^-?\d{11,}$/u,Ve=/^(\d{4})-(\d{2})-(\d{2})$/u,Ze=/^(\d{2}):(\d{2})(?::(\d{2})(?:\.\d+)?)?(Z|[+-]\d{2}:\d{2})?$/u,ze=/\.(\d+)/u,Pe=/[1-9]/u,We=/^[+-]?(\d*)(?:\.(\d*))?(?:e([+-]?\d+))?$/iu,he=i(t=>{let[,e="",r="",n="0"]=We.exec(t)??[],o=`${e}${r}`,l=0,s=o.length;for(;l<s&&o.charAt(l)==="0";)l+=1;for(;s>l&&o.charAt(s-1)==="0";)s-=1;return l===s?{digits:"",exponent:0}:{digits:o.slice(l,s),exponent:Number(n)-r.length+(o.length-s)}},"ee"),He=i((t,e)=>{let r=he(t),n=he(e.toExponential());return r.digits===n.digits&&r.exponent===n.exponent?!0:r.digits!==""&&r.exponent>=0&&Number.isInteger(e)&&BigInt(r.digits)*10n**BigInt(r.exponent)===BigInt(Math.abs(e))},"Xe"),Ye=i(t=>{let e=t.trim();if(!Me.test(e))return;let r=Number(e);if(Number.isFinite(r))return He(e,r)?{number:r}:{inexact:!0}},"Ve"),Ge=i((t,e,r)=>{let n=new Date(0);return n.setUTCFullYear(t,e-1,r),n.getUTCMonth()===e-1&&n.getUTCDate()===r},"He"),Qe=i((t,e,r,n)=>Number(t)<=23&&Number(e)<=59&&Number(r)<=59&&(n==="Z"||Number(n.slice(1,3))<=23&&Number(n.slice(4,6))<=59),"We"),Xe=i(t=>{let[e="",r,...n]=t.split("T"),o=Ve.exec(e),l=r===void 0?void 0:Ze.exec(r);if(o===null||n.length>0||r!==void 0&&l===null)return;let[,s="",a="",u=""]=o;if(!Ge(Number(s),Number(a),Number(u)))return;let[,c="0",m="0",f="0",b]=l??[];if(!Qe(c,m,f,b??"Z"))return;let w=ze.exec(r??"")?.[1]??"";if(Pe.test(w.slice(3)))return;let x=Date.parse(l!==void 0&&b===void 0?`${t}Z`:t);return Number.isFinite(x)?x:void 0},"Je"),_e=i(t=>{let e=Ye(t);return e===void 0?{expected:"number",kind:"rejected"}:"number"in e?{kind:"ok",value:e.number}:{expected:"number",inexact:!0,kind:"rejected"}},"Ye"),et=i(t=>{let e=t.trim(),r=Xe(e);return r===void 0&&Je.test(e)&&(r=Number(e)),r===void 0||!Number.isFinite(new Date(r).getTime())?{expected:"date",kind:"rejected"}:{kind:"ok",value:r}},"Ze"),tt=i(t=>{try{return R(t),!0}catch{return!1}},"ze"),rt=i((t,e)=>{if(e==="bigint"){let r=t.trim();if(!Ue.test(r))return{expected:"bigint",kind:"rejected"};let n=BigInt(r);return tt(n)?{kind:"ok",value:n}:{expected:"bigint",kind:"rejected",tooLong:!0}}if(e==="boolean"){let r=t.trim().toLowerCase();return r==="true"||r==="false"?{kind:"ok",value:r==="true"}:{expected:"boolean",kind:"rejected"}}return e==="number"?_e(t):e==="date"||e==="timestamp"?et(t):{kind:"ok",value:t}},"Ge"),ke=i(({doc:t,record:e},r)=>{let n={};for(let[o,l]of Object.entries(t)){if(l===null){M(n,o,null);continue}let s=rt(l,r.get(o));if(s.kind==="rejected")throw new E({column:o,expected:s.expected,...s.inexact===!0&&{inexact:!0},kind:"cell-type",record:e,...s.tooLong===!0&&{tooLong:!0},value:l});M(n,o,s.value)}return{doc:n,record:e}},"ce"),nt=i(async function*(t,e,r){let n;for await(let o of ye(t))n===void 0?n=ve(o.cells):yield ke(Ne(o,n,r),e)},"Qe"),ot=i(t=>new Set(t.filter(e=>e.nullable===!0&&!e.optional).map(e=>e.name)),"et"),we=i(t=>{if(t instanceof E)return t;throw t},"te"),lt=i(async(t,e,r,n)=>{let o,l,s;for await(let u of ye(t)){if(o===void 0){try{o=ve(u.cells)}catch(m){l=we(m),o=[]}continue}let c;try{c=ke(Ne(u,o,r),e)}catch(m){s??=we(m);continue}n(c)}let a=l??s;if(a!==void 0)throw a},"tt"),it=K($.exportShard),G=K($.importShard),st=K($.listTables),at=K($.describeTable),ct={},dt=i(t=>t.map(e=>JSON.stringify(R(e))).join(`
|
|
4
4
|
`),"it"),ut=i((t,e)=>{let r=t.trim();if(r==="")return;let n=re(JSON.parse(r));if(typeof n!="object"||n===null)throw new D("INTERNAL",`line ${e.toString()}: expected a { table, doc } object`);let o=n;if(typeof o.table!="string"||typeof o.doc!="object"||o.doc===null||Array.isArray(o.doc))throw new D("INTERNAL",`line ${e.toString()}: expected a { table, doc } object`);return o},"lt"),ge=1024*1024,_=i(async function*(t){let e=new TextDecoder("utf-8",{fatal:!0});for(let n=0;n<t.size;n+=ge){let o=await t.slice(n,n+ge).arrayBuffer();yield e.decode(o,{stream:!0})}let r=e.decode();r!==""&&(yield r)},"H"),mt=i(async function*(t){let e="",r=0;for await(let n of _(t)){let o=`${e}${n}`.split(`
|
|
5
5
|
`);e=o.pop()??"";for(let l of o)r+=1,yield{line:l,lineNumber:r}}e!==""&&(yield{line:e,lineNumber:r+1})},"at"),ft=i(async function*(t){for await(let{line:e,lineNumber:r}of mt(t)){let n=ut(e,r);n!==void 0&&(yield{line:r,row:n})}},"ct"),pt=i(async function*(t,e,r,n){for await(let{doc:o,record:l}of nt(_(t),r,n))yield{line:l,row:{doc:o,table:e}}},"dt"),ht=i(async(t,e,r,n)=>{try{let{columns:o}=await t.query(at,{table:n},F(r));return{kinds:new Map(o.map(l=>[l.name,l.type])),nullOnEmpty:ot(o)}}catch(o){return{failure:e("Couldn't read the columns of {table}: {message}",{message:q(o),table:n})}}},"ut"),be=50,wt=500,J=9e5,ee=i(t=>new TextEncoder().encode(JSON.stringify(R(t))).byteLength,"W"),Q="application/x-ndjson",Te=i(t=>new D("INTERNAL",`line ${t.toString()}: a single row is over the ${J.toString()}-byte import limit`),"de"),gt=i(async t=>{let e=0;for await(let{line:r,row:n}of t){if(ee(n)>J)throw Te(r);e+=1}return e},"mt"),bt=i(async(t,e,r,n)=>{let o={rows:0};if(await lt(_(t),r,n,({doc:l,record:s})=>{o.rows+=1,o.wide===void 0&&ee({doc:l,table:e})>J&&(o.wide=s)}),o.wide!==void 0)throw Te(o.wide);return o.rows},"ht"),xe=i(async(t,e)=>{let r=[],n=0,o=0,l=0;for await(let{line:s,row:a}of t){let u=ee(a),c=s!==l+1;r.length>0&&(c||r.length===wt||n+u>J)&&(await e(r,o),r=[],n=0),r.length===0&&(o=s),r.push(a),n+=u,l=s}r.length>0&&await e(r,o)},"oe"),xt=/\.csv$/iu,yt=i(t=>xt.test(t.name)||t.type==="text/csv","wt"),vt=i((t,e)=>t.expected==="boolean"?e("line {line}: column \u201C{column}\u201D must be true or false, got \u201C{value}\u201D.",{column:t.column,line:t.record,value:t.value}):t.tooLong===!0?e("line {line}: column \u201C{column}\u201D holds an integer longer than the import can send.",{column:t.column,line:t.record}):t.expected==="bigint"?e("line {line}: column \u201C{column}\u201D must be an integer, got \u201C{value}\u201D.",{column:t.column,line:t.record,value:t.value}):t.expected==="date"?e("line {line}: column \u201C{column}\u201D must be an ISO-8601 date or epoch milliseconds of at least 11 digits, got \u201C{value}\u201D.",{column:t.column,line:t.record,value:t.value}):t.inexact===!0?e("line {line}: column \u201C{column}\u201D holds \u201C{value}\u201D, which a number column cannot store exactly. Store a whole number past 9007199254740991 in a bigint column.",{column:t.column,line:t.record,value:t.value}):e("line {line}: column \u201C{column}\u201D must be a number, got \u201C{value}\u201D.",{column:t.column,line:t.record,value:t.value}),"gt"),Nt=i((t,e)=>t.kind==="duplicate-header"?e("The header \u201C{name}\u201D appears more than once.",{name:t.name}):t.kind==="empty-header"?e("Header column {column} is empty.",{column:t.column}):t.kind==="ragged"?e("line {line}: expected {expected} cells, found {found}.",{expected:t.expected,found:t.found,line:t.record}):t.kind==="cell-type"?vt(t,e):t.kind==="text-after-quote"?e("line {line}: text follows a closing quote.",{line:t.record}):e("line {line}: a quoted field is never closed.",{line:t.record}),"xt"),kt=i((t,e,r)=>{let n=e instanceof E?Nt(e.problem,r):q(e);return t===null?r("Invalid NDJSON: {message}",{message:n}):r("Invalid CSV: {message}",{message:n})},"yt"),Tt=i(t=>{let e=(0,X.c)(31),{onChange:r,shardKey:n,value:o}=t,l=U(),s;e[0]!==n?(s={shardKey:n},e[0]=n,e[1]=s):s=e[1];let{data:a}=oe($.listTables,ct,s),u;e[2]!==r?(u=i(p=>{r(p??"")},"c"),e[2]=r,e[3]=u):u=e[3];let c;e[4]!==l?(c=l("Target table"),e[4]=l,e[5]=c):c=e[5];let m;e[6]!==l?(m=l("Choose a table"),e[6]=l,e[7]=m):m=e[7];let f;e[8]!==m?(f=(0,d.jsx)(ue,{placeholder:m}),e[8]=m,e[9]=f):f=e[9];let b;e[10]!==c||e[11]!==f?(b=(0,d.jsx)(me,{"aria-label":c,className:"w-56","data-testid":"ei-csv-table",children:f}),e[10]=c,e[11]=f,e[12]=b):b=e[12];let w;e[13]!==a?(w=a??[],e[13]=a,e[14]=w):w=e[14];let x;e[15]!==w?(x=w.map(jt),e[15]=w,e[16]=x):x=e[16];let g;e[17]!==x?(g=(0,d.jsx)(fe,{children:x}),e[17]=x,e[18]=g):g=e[18];let N;e[19]!==u||e[20]!==b||e[21]!==g||e[22]!==o?(N=(0,d.jsxs)(de,{onValueChange:u,value:o,children:[b,g]}),e[19]=u,e[20]=b,e[21]=g,e[22]=o,e[23]=N):N=e[23];let k;e[24]!==l?(k=l("CSV rows have no table column, so choose the table they go into."),e[24]=l,e[25]=k):k=e[25];let h;e[26]!==k?(h=(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:k}),e[26]=k,e[27]=h):h=e[27];let I;return e[28]!==N||e[29]!==h?(I=(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[N,h]}),e[28]=N,e[29]=h,e[30]=I):I=e[30],I},"vt"),Ce=i(t=>Object.values(t).reduce((e,r)=>e+r,0),"ue"),Ct=i(async(t,e,r,n,o,l,s)=>{let a={conflicts:0,errors:[],inserted:{},replaced:0},u,c=l===null?{kinds:new Map,nullOnEmpty:new Set}:await ht(t,e,r,l);if("failure"in c)return{failure:{message:c.failure,rows:0},total:a};let{kinds:m,nullOnEmpty:f}=c;try{if(l===null){let p=i(()=>ft(o),"m");u={rows:await gt(p()),source:p}}else u={rows:await bt(o,l,m,f),source:i(()=>pt(o,l,m,f),"source")}}catch(p){return{failure:{message:kt(l,p,e),rows:0},total:a}}let{rows:b,source:w}=u;if(l!==null&&b===0)return{failure:{message:e("The CSV has no data rows after the header."),rows:0},total:a};let x={conflicts:0,errors:[],inserted:{}};n(e("Checking {total} rows before writing\u2026",{total:b}));try{let p=await t.query(G,{dryRun:!0,onConflict:s,rows:[],startLine:1},F(r));if(p.dryRun!==!0)return{failure:{message:e("This shard predates import checks, so it would write the file while checking it. Nothing was sent. Update the app and import again."),rows:0},total:a};if(s==="replace"&&typeof p.replaced!="number")return{failure:{message:e("This shard cannot overwrite existing rows. Nothing was sent. Update the app and import again."),rows:0},total:a};await xe(w(),async(S,v)=>{let C=await t.query(G,{dryRun:!0,onConflict:s,rows:S,startLine:v},F(r));x.errors.push(...C.errors)})}catch(p){return{failure:{message:q(p),rows:0},total:a}}if(x.errors.length>0)return{failure:{message:e("Nothing was written, because some rows would be refused. Fix the rows listed below and import again."),rows:0},total:x};let g=0,N=1,k={},h={},I=i(async(p,S)=>{n(e("Importing rows {from}\u2013{to} of {total}\u2026",{from:g+1,to:g+p.length,total:b})),h.startLine=S;let v=await t.query(G,{dryRun:!1,onConflict:s,rows:p,startLine:S},F(r));h.startLine=void 0,a.conflicts+=v.conflicts,a.replaced=(a.replaced??0)+(v.replaced??0),a.errors.push(...v.errors);for(let[C,A]of Object.entries(v.inserted))a.inserted[C]=(a.inserted[C]??0)+A;if(g+=p.length,N=S+p.length,v.errors.length>0){let C=Ce(a.inserted)+(a.replaced??0);throw k.refused=!0,new Error(C===0?e("The shard refused {count} rows, so the rest of the file was not sent. Nothing was written. Fix the rows listed below and import again.",{count:v.errors.length}):e("The shard refused {count} rows, so the rest of the file was not sent. {written} rows were already written, so do not import the whole file again. Import the refused rows and any rows from line {line} onward, or delete the written rows first and then import the whole file.",{count:v.errors.length,line:S+p.length,written:C}))}},"T");try{return await xe(w(),I),{failure:void 0,total:a}}catch(p){return{failure:{message:q(p),nextLine:N,rows:g,unknownFrom:h.startLine,...k},total:a}}},"bt"),It=i(t=>{let e=(0,X.c)(14),{result:r}=t,n=U(),o;e[0]!==r.conflicts||e[1]!==r.errors.length||e[2]!==r.inserted||e[3]!==r.replaced||e[4]!==n?(o=n("Inserted {inserted}, replaced {replaced}, {conflicts} conflicts, {errors} errors.",{conflicts:r.conflicts,errors:r.errors.length,inserted:Ce(r.inserted),replaced:r.replaced??0}),e[0]=r.conflicts,e[1]=r.errors.length,e[2]=r.inserted,e[3]=r.replaced,e[4]=n,e[5]=o):o=e[5];let l;e[6]!==o?(l=(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:o}),e[6]=o,e[7]=l):l=e[7];let s;e[8]!==r.errors||e[9]!==n?(s=r.errors.length>0&&(0,d.jsx)("ul",{className:"flex flex-col gap-1","data-testid":"ei-import-errors",children:r.errors.map(u=>(0,d.jsx)("li",{className:"text-xs text-destructive",children:n("line {line} ({table}): {message}",{line:u.line,message:u.message,table:u.table})},`${u.table}-${u.line.toString()}`))}),e[8]=r.errors,e[9]=n,e[10]=s):s=e[10];let a;return e[11]!==l||e[12]!==s?(a=(0,d.jsxs)("div",{className:"flex flex-col gap-2","data-testid":"ei-import-result",children:[l,s]}),e[11]=l,e[12]=s,e[13]=a):a=e[13],a},"Nt"),Vt=i(({initialShardKey:t})=>{let e=ne(),r=le(),n=U(),[o,l]=(0,j.useState)(t??""),[s,a]=(0,j.useState)(null),[u,c]=(0,j.useState)(null),[m,f]=(0,j.useState)(!1),[b,w]=(0,j.useState)(null),[x,g]=(0,j.useState)(null),[N,k]=(0,j.useState)(null),[h,I]=(0,j.useState)(null),[p,S]=(0,j.useState)(!1),v=s!==null&&yt(s),C=u!==null&&u.shardKey===o?u.table:"",A=s!==null&&(!v||C!==""),Ie=i(async()=>{let T=o;f(!0),w(null),g(null),I(null);try{let O=await e.query(st,{},F(T)),y=new Blob([],{type:Q}),L=0,B=[];for(let{name:Oe}of O){let{rows:V}=await e.query(it,{tables:[Oe]},F(T));if(V.length===0)continue;let te=dt(V);y=new Blob([y,`${te}
|
|
6
6
|
`],{type:Q}),L+=V.length,B.length<be&&B.push(...te.split(`
|
|
7
7
|
`).slice(0,be-B.length))}Y(T),I({blob:y,count:L,preview:B.join(`
|
|
8
|
-
`),shardKey:T})}catch(O){w(q(O))}},"fe"),je=i(async(T,O)=>{f(!0),w(null),g(null),I(null);let{failure:y,total:L}=await Ct(e,n,o,k,T,O,p?"replace":"skip");y===void 0?(Y(o),g(L)):y.unknownFrom===void 0&&(y.refused===!0||y.rows===0)?(L.errors.length>0&&g(L),w(y.message)):y.unknownFrom===void 0?(g(L),w(n("Import stopped after {rows} rows: {message}. The counts below cover those rows. Rows from line {line} onward were not sent: do not import the whole file again, import from that line onward, or delete the written rows first and then import the whole file.",{line:y.nextLine,message:y.message,rows:y.rows}))):(g(L),w(n("Import stopped after {rows} rows: {message}. The counts below cover completed chunks only. The chunk from line {line} may have written rows: check the table for rows from line {line} onward before importing again, or delete the written rows first and then import the whole file.",{line:y.unknownFrom,message:y.message,rows:y.rows}))),r($.readTablePage),r($.listTables)},"me"),Ee=i(()=>{
|
|
8
|
+
`),shardKey:T})}catch(O){w(q(O))}},"fe"),je=i(async(T,O)=>{f(!0),w(null),g(null),I(null);let{failure:y,total:L}=await Ct(e,n,o,k,T,O,p?"replace":"skip");y===void 0?(Y(o),g(L)):y.unknownFrom===void 0&&(y.refused===!0||y.rows===0)?(L.errors.length>0&&g(L),w(y.message)):y.unknownFrom===void 0?(g(L),w(n("Import stopped after {rows} rows: {message}. The counts below cover those rows. Rows from line {line} onward were not sent: do not import the whole file again, import from that line onward, or delete the written rows first and then import the whole file.",{line:y.nextLine,message:y.message,rows:y.rows}))):(g(L),w(n("Import stopped after {rows} rows: {message}. The counts below cover completed chunks only. The chunk from line {line} may have written rows: check the table for rows from line {line} onward before importing again, or delete the written rows first and then import the whole file.",{line:y.unknownFrom,message:y.message,rows:y.rows}))),r($.readTablePage),r($.listTables)},"me"),Ee=i(()=>{z(Ie().finally(()=>{f(!1)}))},"he"),Se=i(()=>{s!==null&&A&&z(je(s,v?C:null).finally(()=>{k(null),f(!1)}))},"pe"),Le=i(()=>{h!==null&&ce(`${h.shardKey.trim()===""?"shard":h.shardKey.trim()}.ndjson`,h.blob,Q)},"we"),$e=i(T=>{a(T.target.files?.[0]??null),c(null)},"ge"),Fe=i(T=>{c({shardKey:o,table:T})},"xe"),qe=i(T=>{S(T.target.checked)},"ye");return(0,d.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-export-import",children:[(0,d.jsxs)(W,{className:"gap-0 py-0 rounded-xl border border-border bg-card shadow-xs",children:[(0,d.jsx)("header",{className:"border-b border-border px-4 py-3",children:(0,d.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:n("Export")})}),(0,d.jsxs)(H,{className:"flex flex-col gap-3 p-4",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)(ie,{onChange:l,testId:"ei-shard-input",value:o}),(0,d.jsx)(P,{"data-testid":"ei-export",disabled:m,onClick:Ee,type:"button",children:n("Export")})]}),h!==null&&(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)("p",{className:"text-sm text-muted-foreground","data-testid":"ei-export-result",children:n("Exported {count} rows.",{count:h.count})}),(0,d.jsx)(P,{"data-testid":"ei-download",onClick:Le,size:"sm",type:"button",variant:"outline",children:n("Download")})]}),h.preview!==""&&(0,d.jsx)("pre",{className:"max-h-60 overflow-auto rounded-md border border-border bg-muted/50 p-3 font-mono text-xs","data-testid":"ei-preview",children:h.preview})]})]})]}),(0,d.jsxs)(W,{className:"gap-0 py-0 rounded-xl border border-border bg-card shadow-xs",children:[(0,d.jsx)("header",{className:"border-b border-border px-4 py-3",children:(0,d.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:n("Import")})}),(0,d.jsxs)(H,{className:"flex flex-col gap-3 p-4",children:[(0,d.jsx)("input",{accept:".ndjson,.jsonl,.csv,application/x-ndjson,text/csv","aria-label":n("Import file"),className:"text-sm","data-testid":"ei-file",onChange:$e,type:"file"}),v&&(0,d.jsx)(Tt,{onChange:Fe,shardKey:o,value:C}),(0,d.jsxs)(ae,{className:"flex items-center gap-2 text-xs font-normal text-muted-foreground",htmlFor:"ei-replace",children:[(0,d.jsx)("input",{checked:p,className:"size-4 accent-primary","data-testid":"ei-replace",id:"ei-replace",onChange:qe,type:"checkbox"}),n("Overwrite rows whose _id already exists (otherwise they are left unchanged and counted as conflicts)")]}),(0,d.jsx)("div",{className:"flex flex-wrap items-center gap-2",children:(0,d.jsx)(se,{confirmLabel:n("Import (writes rows)?"),disabled:m||!A,onConfirm:Se,testId:"ei-import",children:n("Import")})}),N!==null&&(0,d.jsx)("p",{className:"text-sm text-muted-foreground","data-testid":"ei-progress",role:"status",children:N}),x!==null&&(0,d.jsx)(It,{result:x})]})]}),b!==null&&(0,d.jsx)("p",{className:"text-sm text-destructive","data-testid":"ei-error",role:"alert",children:b})]})},"Kt");function jt(t){return(0,d.jsx)(pe,{value:t.name,children:t.name},t.name)}i(jt,"Ct");export{Vt as ExportImportPanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as $}from"./chunk-4NKJV7YX.js";import{a as b}from"./chunk-YEXTJUKQ.js";import"./chunk-LSEUUZN4.js";import{a as y,b as w,c as j,d as h,e as c,f as i}from"./chunk-7QEZ2SFW.js";import"./chunk-OZAOWE7T.js";import"./chunk-BBDTJG2K.js";import"./chunk-4PI2OSSP.js";import{a as u}from"./chunk-2W4UO5BC.js";import{c as p}from"./chunk-4N76XUNG.js";import{a as d,e as l}from"./chunk-OK2QU2EV.js";import"./chunk-SHHGIT7M.js";import"./chunk-ZPQBVYNN.js";import{B as k,x}from"./chunk-GNI37YCV.js";import"./chunk-PDBW6GTJ.js";import"./chunk-GWNGVKLG.js";import{b as T}from"./chunk-6G3E4PJ2.js";import{a as o,d as I}from"./chunk-5PEAXTYQ.js";var e=I(T(),1);var m={clean:"text-emerald-600 dark:text-emerald-400",exempt:"text-muted-foreground",failing:"text-red-600 dark:text-red-400",warned:"text-amber-600 dark:text-amber-400"},A={"at-risk":"text-red-600 dark:text-red-400",excellent:"text-emerald-600 dark:text-emerald-400",good:"text-emerald-600 dark:text-emerald-400","needs-work":"text-amber-600 dark:text-amber-400"},C=o((r,a)=>`exempt: ${r.exemptReason===void 0||r.exemptReason===""?a:r.exemptReason}`,"E"),E=o(r=>r.toSorted((a,n)=>a.coverage==="clean"&&n.coverage!=="clean"?1:n.coverage==="clean"&&a.coverage!=="clean"?-1:a.score-n.score),"S"),Y=o(({testId:r="advisor-health"})=>{let a=k(),n=p(u.getAdvisories,{},{live:!0}),g=p(u.getAdvisorProcedures,{},{live:!0}),f=n.data?.advisories??null,N=g.data?.procedures??null,t=f===null||N===null?null:$(N,f),v=g.error??n.error;if(v!==null)return(0,e.jsx)(b,{error:v,testId:`${r}-error`});if(t===null)return(0,e.jsx)(d,{children:(0,e.jsx)(l,{className:"py-8 text-center text-muted-foreground","data-testid":`${r}-loading`,children:a("Loading\u2026")})});let R=E(t.procedures);return(0,e.jsxs)("div",{className:"space-y-4","data-testid":r,children:[(0,e.jsx)(d,{children:(0,e.jsxs)(l,{className:"flex flex-wrap items-baseline gap-x-6 gap-y-2 py-6",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("span",{className:x("text-4xl font-semibold tabular-nums",A[t.grade]),"data-testid":`${r}-score`,children:t.score}),(0,e.jsx)("span",{className:"text-muted-foreground text-lg",children:"/100"})]}),(0,e.jsx)("span",{className:x("text-sm font-medium uppercase tracking-wide",A[t.grade]),"data-testid":`${r}-grade`,children:t.grade}),(0,e.jsxs)("div",{className:"text-muted-foreground flex gap-4 text-sm tabular-nums","data-testid":`${r}-summary`,children:[(0,e.jsxs)("span",{className:m.clean,children:[t.summary.clean," ",a("clean")]}),(0,e.jsxs)("span",{className:m.warned,children:[t.summary.warned," ",a("warned")]}),(0,e.jsxs)("span",{className:m.failing,children:[t.summary.failing," ",a("failing")]}),(0,e.jsxs)("span",{className:m.exempt,children:[t.summary.exempt," ",a("exempt")]})]})]})}),t.project.checks.length>0&&(0,e.jsx)(d,{children:(0,e.jsxs)(l,{className:"py-4 text-sm","data-testid":`${r}-project`,children:[(0,e.jsxs)("span",{className:"font-medium",children:[a("Schema & config")," ",t.project.score,"/100"]}),(0,e.jsxs)("span",{className:"text-muted-foreground",children:[" \u2014 ",t.project.checks.map(s=>s.name).join(", ")]})]})}),(0,e.jsx)(d,{children:(0,e.jsx)(l,{className:"p-0",children:(0,e.jsxs)(y,{children:[(0,e.jsx)(w,{children:(0,e.jsxs)(h,{children:[(0,e.jsx)(c,{className:"w-20",children:a("Score")}),(0,e.jsx)(c,{children:a("Procedure")}),(0,e.jsx)(c,{className:"w-32",children:a("Kind")}),(0,e.jsx)(c,{children:a("Rules fired")})]})}),(0,e.jsx)(j,{children:R.map(s=>(0,e.jsxs)(h,{"data-testid":`${r}-row`,children:[(0,e.jsx)(i,{className:x("tabular-nums font-medium",m[s.coverage]),children:s.coverage==="exempt"?"\u2014":s.score}),(0,e.jsx)(i,{className:"font-mono text-xs",children:s.id}),(0,e.jsxs)(i,{className:"text-muted-foreground text-xs",children:[s.visibility," ",s.kind,s.sensitivity.level==="high"&&(0,e.jsx)("span",{className:"ml-1 text-amber-600 dark:text-amber-400",children:a("sensitive")})]}),(0,e.jsx)(i,{className:"text-muted-foreground text-xs",children:s.coverage==="exempt"?C(s,a("no reason given")):s.checks.map(S=>S.name).join(", ")})]},s.id))})]})})})]})},"Y");export{Y as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as Pt,b as jt,c as ot}from"./chunk-FWM5Z6CH.js";import{a as de}from"./chunk-SR6CPTRT.js";import{a as Et,b as Ot,c as Dt,d as Ft}from"./chunk-RIAOZECW.js";import{a as it}from"./chunk-DB6QX4X6.js";import{a as rt,b as at,c as st,d as At,e as zt,f as lt,g as nt,h as Kt,i as Lt}from"./chunk-5WNGRT7N.js";import{a as Rt}from"./chunk-YORPLSI5.js";import{a as $t}from"./chunk-QNM2J7MG.js";import"./chunk-ONTGYVAN.js";import{e as _t}from"./chunk-P6VNMPWR.js";import{a as kt,b as Ct,c as Mt,d as It,e as je}from"./chunk-2H6VLY2M.js";import"./chunk-O3AZ7JKE.js";import{a as qt}from"./chunk-ELSQ4FVH.js";import"./chunk-Y2YLTUMD.js";import"./chunk-2SNHKJXK.js";import"./chunk-P5EVJEGC.js";import"./chunk-D65UVZIA.js";import"./chunk-NGVP66OH.js";import"./chunk-QAOZXPLU.js";import"./chunk-BG2CJOVS.js";import{a as wt}from"./chunk-J45HAKBU.js";import{a as St}from"./chunk-FHLODLBC.js";import{a as yt,b as Nt}from"./chunk-3D67ZJRW.js";import"./chunk-ZSWW2UGP.js";import"./chunk-RTS5G3ET.js";import"./chunk-QRA7AKYO.js";import"./chunk-IHGRWY3Y.js";import"./chunk-OWRKSQPE.js";import"./chunk-4EPW63HS.js";import{a as Ye}from"./chunk-V3BE427M.js";import"./chunk-CKEQX655.js";import"./chunk-UD5REVU2.js";import{a as vt}from"./chunk-RCXNYW7P.js";import{b as Je}from"./chunk-UQA2AJGI.js";import"./chunk-T3ZCW3RG.js";import{a as Ze,b as et,c as tt,d as Pe,e as oe,f as B}from"./chunk-7QEZ2SFW.js";import"./chunk-4PI2OSSP.js";import{a as Ee}from"./chunk-2W4UO5BC.js";import{c as Oe}from"./chunk-4N76XUNG.js";import{a as fe,b as De,c as Fe,d as bt,e as xe}from"./chunk-OK2QU2EV.js";import{a as ct,m as ft}from"./chunk-SHHGIT7M.js";import"./chunk-ZPQBVYNN.js";import{B as he,h as mt,i as ut,j as ht,k as gt,o as Ge,s as pt,x as xt}from"./chunk-GNI37YCV.js";import"./chunk-PDBW6GTJ.js";import{a as Ht}from"./chunk-GWNGVKLG.js";import{a as Ut,b as Gt}from"./chunk-6G3E4PJ2.js";import{a as b,d as Xe}from"./chunk-5PEAXTYQ.js";var me=Xe(Ht(),1),j=Xe(Ut(),1);var t=Xe(Gt(),1);var Bt=b((l,e,s)=>`${l}:${e}:${ct(s??{})}`,"ut"),Tt=b((l,e)=>l==="gauge"?e.last:l==="histogram"?e.sum/Math.max(1,e.count):e.sum,"ht"),Jt=b((l,e)=>Tt(l,e),"Vt"),Vt=b(l=>Tt(l.kind,l),"Gt"),dt=b(l=>Number.isInteger(l)?l.toLocaleString():l.toLocaleString(void 0,{maximumFractionDigits:2}),"Ye"),Wt=b(l=>Array.isArray(l?.series)?l.series:[],"Yt"),Xt="FUNCTION_NOT_FOUND",Yt=b(l=>{let e=new Map;if(!Array.isArray(l?.series))return e;for(let s of l.series)e.set(Bt(s.kind,s.name,s.attributes),s.points);return e},"Wt"),Zt={counter:"secondary",gauge:"default",histogram:"outline"},er=b(l=>{let e=(0,me.c)(18),{name:s,onOpenTrace:a,traceId:r}=l,o=he();if(r===void 0){let c;return e[0]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("span",{className:"text-muted-foreground",children:"\u2014"}),e[0]=c):c=e[0],c}let i;e[1]!==r?(i=r.slice(0,8),e[1]=r,e[2]=i):i=e[2];let n=i;if(a===void 0){let c=`mt-instrument-trace-${s}`,d;return e[3]!==n||e[4]!==c||e[5]!==r?(d=(0,t.jsx)("span",{className:"text-muted-foreground","data-testid":c,title:r,children:n}),e[3]=n,e[4]=c,e[5]=r,e[6]=d):d=e[6],d}let m=`mt-instrument-trace-${s}`,p;e[7]!==a||e[8]!==r?(p=b(()=>{a(r)},"p"),e[7]=a,e[8]=r,e[9]=p):p=e[9];let h;e[10]!==o||e[11]!==r?(h=o("Open the exemplar trace {trace}",{trace:r}),e[10]=o,e[11]=r,e[12]=h):h=e[12];let u;return e[13]!==n||e[14]!==m||e[15]!==p||e[16]!==h?(u=(0,t.jsx)("button",{className:"text-primary underline-offset-4 hover:underline","data-testid":m,onClick:p,title:h,type:"button",children:n}),e[13]=n,e[14]=m,e[15]=p,e[16]=h,e[17]=u):u=e[17],u},"Zt"),tr=b(l=>{let e=(0,me.c)(105),{onOpenTrace:s,shardKey:a}=l,r=he(),o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o={},e[0]=o):o=e[0];let i;e[1]!==a?(i={live:!0,shardKey:a},e[1]=a,e[2]=i):i=e[2];let{data:n,error:m,errorSource:p}=Oe(Ee.getMetricSeries,o,i),h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h={},e[3]=h):h=e[3];let u;e[4]!==a?(u={live:!0,shardKey:a},e[4]=a,e[5]=u):u=e[5];let{data:c}=Oe(Ee.getMetricHistory,h,u),d,f,g,v,x,S,y,w,I,k,N,z,_;if(e[6]!==n||e[7]!==m||e[8]!==p||e[9]!==c||e[10]!==s||e[11]!==r){w=Symbol.for("react.early_return_sentinel");e:{let L=Wt(n),E=gt(p)===Xt;if(m!==null&&!E){let q;e[25]!==r?(q=r("Instruments"),e[25]=r,e[26]=q):q=e[26];let D;e[27]!==q?(D=(0,t.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:q}),e[27]=q,e[28]=D):D=e[28];let F;e[29]!==m||e[30]!==r?(F=r("Instruments unavailable: {error}",{error:m}),e[29]=m,e[30]=r,e[31]=F):F=e[31];let P;e[32]!==F?(P=(0,t.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"mt-instruments-error",role:"status",children:F}),e[32]=F,e[33]=P):P=e[33];let ie;e[34]!==D||e[35]!==P?(ie=(0,t.jsxs)("section",{className:"flex flex-col gap-2","data-testid":"mt-instruments",children:[D,P]}),e[34]=D,e[35]=P,e[36]=ie):ie=e[36],w=ie;break e}if(L.length===0){w=null;break e}let O=Yt(c),ue;e[37]!==r?(ue=b(q=>r(q==="counter"?"Counter":q==="gauge"?"Gauge":"Histogram"),"de"),e[37]=r,e[38]=ue):ue=e[38];let ge=ue;x="flex flex-col gap-2",S="mt-instruments";let T;e[39]!==r?(T=r("Instruments"),e[39]=r,e[40]=T):T=e[40],e[41]!==T?(y=(0,t.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:T}),e[41]=T,e[42]=y):y=e[42],v=fe,_="overflow-hidden py-0",g=xe,z="px-0",f=Ze,k="mt-instruments-table";let U;e[43]!==r?(U=r("name"),e[43]=r,e[44]=U):U=e[44];let H;e[45]!==U?(H=(0,t.jsx)(oe,{children:U}),e[45]=U,e[46]=H):H=e[46];let G;e[47]!==r?(G=r("kind"),e[47]=r,e[48]=G):G=e[48];let J;e[49]!==G?(J=(0,t.jsx)(oe,{children:G}),e[49]=G,e[50]=J):J=e[50];let V;e[51]!==r?(V=r("value"),e[51]=r,e[52]=V):V=e[52];let W;e[53]!==V?(W=(0,t.jsx)(oe,{className:"text-right",children:V}),e[53]=V,e[54]=W):W=e[54];let X;e[55]!==r?(X=r("count"),e[55]=r,e[56]=X):X=e[56];let Y;e[57]!==X?(Y=(0,t.jsx)(oe,{className:"text-right",children:X}),e[57]=X,e[58]=Y):Y=e[58];let Z;e[59]!==r?(Z=r("range"),e[59]=r,e[60]=Z):Z=e[60];let ee;e[61]!==Z?(ee=(0,t.jsx)(oe,{className:"text-right",children:Z}),e[61]=Z,e[62]=ee):ee=e[62];let te;e[63]!==r?(te=r("trend"),e[63]=r,e[64]=te):te=e[64];let re;e[65]!==te?(re=(0,t.jsx)(oe,{children:te}),e[65]=te,e[66]=re):re=e[66];let ae;e[67]!==r?(ae=r("trace"),e[67]=r,e[68]=ae):ae=e[68];let se;e[69]!==ae?(se=(0,t.jsx)(oe,{children:ae}),e[69]=ae,e[70]=se):se=e[70];let le;e[71]!==r?(le=r("dimensions"),e[71]=r,e[72]=le):le=e[72];let ne;e[73]!==le?(ne=(0,t.jsx)(oe,{children:le}),e[73]=le,e[74]=ne):ne=e[74],e[75]!==H||e[76]!==J||e[77]!==W||e[78]!==Y||e[79]!==ee||e[80]!==re||e[81]!==se||e[82]!==ne?(N=(0,t.jsx)(et,{children:(0,t.jsxs)(Pe,{children:[H,J,W,Y,ee,re,se,ne]})}),e[75]=H,e[76]=J,e[77]=W,e[78]=Y,e[79]=ee,e[80]=re,e[81]=se,e[82]=ne,e[83]=N):N=e[83],d=tt,I=L.map(q=>{let D=Rt(q.attributes),F=Bt(q.kind,q.name,q.attributes),P=(O.get(F)??[]).map(ie=>Jt(q.kind,ie));return(0,t.jsxs)(Pe,{"data-testid":`mt-instrument-${q.name}`,children:[(0,t.jsx)(B,{className:"font-mono text-xs",title:q.functionPath,children:q.name}),(0,t.jsx)(B,{children:(0,t.jsx)(Je,{variant:Zt[q.kind],children:ge(q.kind)})}),(0,t.jsx)(B,{className:"text-right font-mono tabular-nums","data-testid":`mt-instrument-value-${q.name}`,children:dt(Vt(q))}),(0,t.jsx)(B,{className:"text-right tabular-nums text-muted-foreground",children:q.count.toLocaleString()}),(0,t.jsx)(B,{className:"text-right font-mono text-xs tabular-nums text-muted-foreground",children:q.min===q.max?"\u2014":`${dt(q.min)}\u2013${dt(q.max)}`}),(0,t.jsx)(B,{children:P.length>=2?(0,t.jsx)(it,{ariaLabel:r("{name} trend",{name:q.name}),className:"h-6 w-24 text-foreground",series:P,testId:`mt-instrument-trend-${q.name}`}):(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:"\u2014"})}),(0,t.jsx)(B,{className:"font-mono text-xs",children:(0,t.jsx)(er,{name:q.name,onOpenTrace:s,traceId:q.exemplarTraceId})}),(0,t.jsx)(B,{className:"max-w-64 truncate font-mono text-xs text-muted-foreground",title:D,children:D===""?"\u2014":D})]},F)})}e[6]=n,e[7]=m,e[8]=p,e[9]=c,e[10]=s,e[11]=r,e[12]=d,e[13]=f,e[14]=g,e[15]=v,e[16]=x,e[17]=S,e[18]=y,e[19]=w,e[20]=I,e[21]=k,e[22]=N,e[23]=z,e[24]=_}else d=e[12],f=e[13],g=e[14],v=e[15],x=e[16],S=e[17],y=e[18],w=e[19],I=e[20],k=e[21],N=e[22],z=e[23],_=e[24];if(w!==Symbol.for("react.early_return_sentinel"))return w;let C;e[84]!==d||e[85]!==I?(C=(0,t.jsx)(d,{children:I}),e[84]=d,e[85]=I,e[86]=C):C=e[86];let R;e[87]!==f||e[88]!==C||e[89]!==k||e[90]!==N?(R=(0,t.jsxs)(f,{"data-testid":k,children:[N,C]}),e[87]=f,e[88]=C,e[89]=k,e[90]=N,e[91]=R):R=e[91];let M;e[92]!==g||e[93]!==R||e[94]!==z?(M=(0,t.jsx)(g,{className:z,children:R}),e[92]=g,e[93]=R,e[94]=z,e[95]=M):M=e[95];let $;e[96]!==v||e[97]!==M||e[98]!==_?($=(0,t.jsx)(v,{className:_,children:M}),e[96]=v,e[97]=M,e[98]=_,e[99]=$):$=e[99];let A;return e[100]!==x||e[101]!==S||e[102]!==y||e[103]!==$?(A=(0,t.jsxs)("section",{className:x,"data-testid":S,children:[y,$]}),e[100]=x,e[101]=S,e[102]=y,e[103]=$,e[104]=A):A=e[104],A},"es"),rr=b(l=>{let e=(0,me.c)(74),{aggregate:s,shardResults:a}=l,r=he(),o;e[0]!==r?(o=r("Shards"),e[0]=r,e[1]=o):o=e[1];let i;e[2]!==s.failed||e[3]!==s.reachable||e[4]!==r?(i=s.failed>0?r("{reachable} reachable, {failed} unreachable",{failed:s.failed,reachable:s.reachable}):r("{reachable} reachable",{reachable:s.reachable}),e[2]=s.failed,e[3]=s.reachable,e[4]=r,e[5]=i):i=e[5];let n;e[6]!==o||e[7]!==i?(n=(0,t.jsx)(de,{label:o,testId:"mt-agg-shards",value:i}),e[6]=o,e[7]=i,e[8]=n):n=e[8];let m;e[9]!==r?(m=r("Total requests"),e[9]=r,e[10]=m):m=e[10];let p;e[11]!==s.totalRequests||e[12]!==m?(p=(0,t.jsx)(de,{label:m,testId:"mt-agg-requests",value:s.totalRequests}),e[11]=s.totalRequests,e[12]=m,e[13]=p):p=e[13];let h;e[14]!==r?(h=r("Total errors"),e[14]=r,e[15]=h):h=e[15];let u;e[16]!==s.totalErrors||e[17]!==h?(u=(0,t.jsx)(de,{label:h,testId:"mt-agg-errors",value:s.totalErrors}),e[16]=s.totalErrors,e[17]=h,e[18]=u):u=e[18];let c;e[19]!==r?(c=r("Total database size"),e[19]=r,e[20]=c):c=e[20];let d;e[21]!==s.totalDatabaseSize?(d=Ge(s.totalDatabaseSize),e[21]=s.totalDatabaseSize,e[22]=d):d=e[22];let f;e[23]!==c||e[24]!==d?(f=(0,t.jsx)(de,{label:c,testId:"mt-agg-db-size",value:d}),e[23]=c,e[24]=d,e[25]=f):f=e[25];let g;e[26]!==r?(g=r("Combined cache hit rate"),e[26]=r,e[27]=g):g=e[27];let v;e[28]!==s.hitRate||e[29]!==r?(v=s.hitRate===null?r("no cache configured"):`${(s.hitRate*100).toFixed(1)}%`,e[28]=s.hitRate,e[29]=r,e[30]=v):v=e[30];let x;e[31]!==g||e[32]!==v?(x=(0,t.jsx)(de,{label:g,testId:"mt-agg-cache",value:v}),e[31]=g,e[32]=v,e[33]=x):x=e[33];let S;e[34]!==f||e[35]!==x||e[36]!==n||e[37]!==p||e[38]!==u?(S=(0,t.jsxs)("dl",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3","data-testid":"mt-aggregate-stats",children:[n,p,u,f,x]}),e[34]=f,e[35]=x,e[36]=n,e[37]=p,e[38]=u,e[39]=S):S=e[39];let y;e[40]!==r?(y=r("shard"),e[40]=r,e[41]=y):y=e[41];let w;e[42]!==y?(w=(0,t.jsx)(oe,{children:y}),e[42]=y,e[43]=w):w=e[43];let I;e[44]!==r?(I=r("requests"),e[44]=r,e[45]=I):I=e[45];let k;e[46]!==I?(k=(0,t.jsx)(oe,{children:I}),e[46]=I,e[47]=k):k=e[47];let N;e[48]!==r?(N=r("errors"),e[48]=r,e[49]=N):N=e[49];let z;e[50]!==N?(z=(0,t.jsx)(oe,{children:N}),e[50]=N,e[51]=z):z=e[51];let _;e[52]!==r?(_=r("db size"),e[52]=r,e[53]=_):_=e[53];let C;e[54]!==_?(C=(0,t.jsx)(oe,{children:_}),e[54]=_,e[55]=C):C=e[55];let R;e[56]!==w||e[57]!==k||e[58]!==z||e[59]!==C?(R=(0,t.jsx)(et,{children:(0,t.jsxs)(Pe,{children:[w,k,z,C]})}),e[56]=w,e[57]=k,e[58]=z,e[59]=C,e[60]=R):R=e[60];let M;if(e[61]!==a||e[62]!==r){let E;e[64]!==r?(E=b(O=>(0,t.jsxs)(Pe,{"data-testid":`mt-agg-row-${O.shard}`,children:[(0,t.jsx)(B,{children:O.shard}),O.metrics===null?(0,t.jsx)(B,{className:"text-destructive",colSpan:3,children:O.error??r("unreachable")}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(B,{className:"tabular-nums",children:O.metrics.requests}),(0,t.jsx)(B,{className:"tabular-nums",children:O.metrics.errors}),(0,t.jsx)(B,{className:"tabular-nums",children:Ge(O.metrics.databaseSize)})]})]},O.shard),"L"),e[64]=r,e[65]=E):E=e[65],M=a.map(E),e[61]=a,e[62]=r,e[63]=M}else M=e[63];let $;e[66]!==M?($=(0,t.jsx)(tt,{children:M}),e[66]=M,e[67]=$):$=e[67];let A;e[68]!==R||e[69]!==$?(A=(0,t.jsx)(fe,{className:"overflow-hidden py-0",children:(0,t.jsx)(xe,{className:"px-0",children:(0,t.jsxs)(Ze,{"data-testid":"mt-agg-table",children:[R,$]})})}),e[68]=R,e[69]=$,e[70]=A):A=e[70];let L;return e[71]!==S||e[72]!==A?(L=(0,t.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"mt-aggregate-view",children:[S,A]}),e[71]=S,e[72]=A,e[73]=L):L=e[73],L},"ts"),ar=b(l=>{let e=(0,me.c)(75),{currentDelta:s,errorRate:a,history:r,latencyPercentiles:o,metrics:i}=l,n=he(),{cache:m}=i,p;e[0]!==r||e[1]!==n?(p=r.length>=2?(0,t.jsx)(it,{ariaLabel:n("Requests per interval over time"),className:"h-7 w-24 text-foreground",series:r,testId:"mt-sparkline"}):void 0,e[0]=r,e[1]=n,e[2]=p):p=e[2];let h;e[3]!==s||e[4]!==r.length||e[5]!==n?(h=r.length>=2?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-semibold text-foreground",children:`+${s.toLocaleString()}`})," ",n("last interval")]}):(0,t.jsx)("span",{"data-testid":"mt-sparkline-empty",children:n("collecting samples\u2026")}),e[3]=s,e[4]=r.length,e[5]=n,e[6]=h):h=e[6];let u;e[7]!==n?(u=n("Requests"),e[7]=n,e[8]=u):u=e[8];let c;e[9]!==i.requests||e[10]!==p||e[11]!==h||e[12]!==u?(c=(0,t.jsx)(de,{chart:p,footer:h,label:u,testId:"mt-requests",value:i.requests}),e[9]=i.requests,e[10]=p,e[11]=h,e[12]=u,e[13]=c):c=e[13];let d;e[14]!==a||e[15]!==n?(d=n("{rate} error rate",{rate:a}),e[14]=a,e[15]=n,e[16]=d):d=e[16];let f;e[17]!==n?(f=n("Errors"),e[17]=n,e[18]=f):f=e[18];let g;e[19]!==a||e[20]!==i.errors?(g=(0,t.jsxs)(t.Fragment,{children:[i.errors," (",a,")"]}),e[19]=a,e[20]=i.errors,e[21]=g):g=e[21];let v;e[22]!==d||e[23]!==f||e[24]!==g?(v=(0,t.jsx)(de,{footer:d,label:f,testId:"mt-errors",value:g}),e[22]=d,e[23]=f,e[24]=g,e[25]=v):v=e[25];let x;e[26]!==o.p90?(x=o.p90>0?`P90 ${ot(o.p90)}`:void 0,e[26]=o.p90,e[27]=x):x=e[27];let S;e[28]!==n?(S=n("P95 latency"),e[28]=n,e[29]=S):S=e[29];let y;e[30]!==o.p95?(y=o.p95>0?ot(o.p95):"\u2014",e[30]=o.p95,e[31]=y):y=e[31];let w;e[32]!==S||e[33]!==y||e[34]!==x?(w=(0,t.jsx)(de,{footer:x,label:S,testId:"mt-p95",value:y}),e[32]=S,e[33]=y,e[34]=x,e[35]=w):w=e[35];let I;e[36]!==m||e[37]!==n?(I=m?`${m.entries.toLocaleString()} ${n("cache entries")}`:void 0,e[36]=m,e[37]=n,e[38]=I):I=e[38];let k;e[39]!==n?(k=n("Database size"),e[39]=n,e[40]=k):k=e[40];let N;e[41]!==i.databaseSize?(N=Ge(i.databaseSize),e[41]=i.databaseSize,e[42]=N):N=e[42];let z;e[43]!==I||e[44]!==k||e[45]!==N?(z=(0,t.jsx)(de,{footer:I,label:k,testId:"mt-db-size",value:N}),e[43]=I,e[44]=k,e[45]=N,e[46]=z):z=e[46];let _;e[47]!==n?(_=n("Shard"),e[47]=n,e[48]=_):_=e[48];let C;e[49]!==i.shard||e[50]!==_?(C=(0,t.jsx)(de,{label:_,testId:"mt-shard",value:i.shard}),e[49]=i.shard,e[50]=_,e[51]=C):C=e[51];let R;e[52]!==n?(R=n("Uptime"),e[52]=n,e[53]=R):R=e[53];let M;e[54]!==i.uptimeMs?(M=Pt(i.uptimeMs),e[54]=i.uptimeMs,e[55]=M):M=e[55];let $;e[56]!==R||e[57]!==M?($=(0,t.jsx)(de,{label:R,testId:"mt-uptime",value:M}),e[56]=R,e[57]=M,e[58]=$):$=e[58];let A;e[59]!==n?(A=n("Cache hit rate"),e[59]=n,e[60]=A):A=e[60];let L;e[61]!==m||e[62]!==n?(L=m?n("{rate} ({count} entries)",{count:m.entries,rate:jt(m.hits,m.misses)}):n("no cache configured"),e[61]=m,e[62]=n,e[63]=L):L=e[63];let E;e[64]!==A||e[65]!==L?(E=(0,t.jsx)(de,{label:A,testId:"mt-cache",value:L}),e[64]=A,e[65]=L,e[66]=E):E=e[66];let O;return e[67]!==w||e[68]!==z||e[69]!==C||e[70]!==$||e[71]!==E||e[72]!==c||e[73]!==v?(O=(0,t.jsxs)("dl",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4","data-testid":"mt-stats",children:[c,v,w,z,C,$,E]}),e[67]=w,e[68]=z,e[69]=C,e[70]=$,e[71]=E,e[72]=c,e[73]=v,e[74]=O):O=e[74],O},"ss"),We=b(l=>l>=100?"critical":l>=50?"warning":"good","Ge"),Qe=b(l=>l<1?`${(l*1e3).toFixed(0)}\u03BCs`:l<1e3?`${l.toFixed(1)}ms`:`${(l/1e3).toFixed(2)}s`,"Le"),Ve=b(l=>l>=1e9?`${(l/1e9).toFixed(1)}B`:l>=1e6?`${(l/1e6).toFixed(1)}M`:l>=1e3?`${(l/1e3).toFixed(1)}K`:l.toLocaleString(),"Ue"),sr=b(l=>{let e=(0,me.c)(3),{level:s}=l;if(s==="critical"){let r;return e[0]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsx)(Je,{variant:"destructive",children:"Slow"}),e[0]=r):r=e[0],r}if(s==="warning"){let r;return e[1]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-md border border-transparent bg-warning/10 px-2 py-0.5 text-xs font-medium text-warning",children:"Moderate"}),e[1]=r):r=e[1],r}let a;return e[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-md border border-transparent bg-success/10 px-2 py-0.5 text-xs font-medium text-success",children:"Fast"}),e[2]=a):a=e[2],a},"rs"),lr=b((l,e)=>{let s=[...l];return s.sort((a,r)=>{switch(e){case"avgTime":return r.avgDurationMs-a.avgDurationMs;case"execCount":return r.execCount-a.execCount;case"rowsRead":return r.rowsRead-a.rowsRead;default:return r.totalDurationMs-a.totalDurationMs}}),s},"ls"),nr=b(l=>{let e=(0,me.c)(161),{queryStats:s}=l,a=he(),[r,o]=(0,j.useState)("totalTime"),i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=new Set,e[0]=i):i=e[0];let[n,m]=(0,j.useState)(i),p;e[1]===Symbol.for("react.memo_cache_sentinel")?(p=b(_=>{_!==null&&o(_)},"p"),e[1]=p):p=e[1];let h=p,u,c,d,f,g,v,x,S,y,w;if(e[2]!==n||e[3]!==s||e[4]!==r||e[5]!==a){d=Symbol.for("react.early_return_sentinel");e:{let _=lr(s,r),C;e[16]!==s?(C=s.filter(ir),e[16]=s,e[17]=C):C=e[17];let R=C.length,M;e[18]!==s?(M=s.filter(or),e[18]=s,e[19]=M):M=e[19];let $=M.length,A;e[20]!==s?(A=s.filter(dr),e[20]=s,e[21]=A):A=e[21];let L=A.length,E;e[22]===Symbol.for("react.memo_cache_sentinel")?(E=b(K=>{m(ce=>{let Q=new Set(ce);return Q.has(K)?Q.delete(K):Q.add(K),Q})},"L"),e[22]=E):E=e[22];let O=E;if(s.length===0){let K;e[23]!==a?(K=a("No query insights yet"),e[23]=a,e[24]=K):K=e[24];let ce;e[25]!==K?(ce=(0,t.jsx)("p",{className:"text-lg font-medium","data-testid":"qi-empty",children:K}),e[25]=K,e[26]=ce):ce=e[26];let Q;e[27]!==a?(Q=a("Query insights appear once statements are executed against this shard."),e[27]=a,e[28]=Q):Q=e[28];let pe;e[29]!==Q?(pe=(0,t.jsx)("p",{className:"mt-1 text-sm",children:Q}),e[29]=Q,e[30]=pe):pe=e[30];let He;e[31]!==ce||e[32]!==pe?(He=(0,t.jsx)(fe,{children:(0,t.jsx)(xe,{className:"py-12",children:(0,t.jsxs)("div",{className:"text-center text-muted-foreground",children:[ce,pe]})})}),e[31]=ce,e[32]=pe,e[33]=He):He=e[33],d=He;break e}x="space-y-4",S="qi-root";let ue;e[34]!==a?(ue=a("Critical queries"),e[34]=a,e[35]=ue):ue=e[35];let ge;e[36]!==ue?(ge=(0,t.jsx)(De,{className:"pb-2",children:(0,t.jsx)(Fe,{className:"text-sm font-medium",children:ue})}),e[36]=ue,e[37]=ge):ge=e[37];let T;e[38]!==R?(T=(0,t.jsx)("div",{className:"text-2xl font-bold text-destructive","data-testid":"qi-critical",children:R}),e[38]=R,e[39]=T):T=e[39];let U;e[40]!==a?(U=a(">100ms avg execution"),e[40]=a,e[41]=U):U=e[41];let H;e[42]!==U?(H=(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:U}),e[42]=U,e[43]=H):H=e[43];let G;e[44]!==T||e[45]!==H?(G=(0,t.jsxs)(xe,{children:[T,H]}),e[44]=T,e[45]=H,e[46]=G):G=e[46];let J;e[47]!==ge||e[48]!==G?(J=(0,t.jsxs)(fe,{children:[ge,G]}),e[47]=ge,e[48]=G,e[49]=J):J=e[49];let V;e[50]!==a?(V=a("Moderate queries"),e[50]=a,e[51]=V):V=e[51];let W;e[52]!==V?(W=(0,t.jsx)(De,{className:"pb-2",children:(0,t.jsx)(Fe,{className:"text-sm font-medium",children:V})}),e[52]=V,e[53]=W):W=e[53];let X;e[54]!==$?(X=(0,t.jsx)("div",{className:"text-2xl font-bold text-warning","data-testid":"qi-moderate",children:$}),e[54]=$,e[55]=X):X=e[55];let Y;e[56]!==a?(Y=a("50\u2013100ms avg execution"),e[56]=a,e[57]=Y):Y=e[57];let Z;e[58]!==Y?(Z=(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:Y}),e[58]=Y,e[59]=Z):Z=e[59];let ee;e[60]!==X||e[61]!==Z?(ee=(0,t.jsxs)(xe,{children:[X,Z]}),e[60]=X,e[61]=Z,e[62]=ee):ee=e[62];let te;e[63]!==W||e[64]!==ee?(te=(0,t.jsxs)(fe,{children:[W,ee]}),e[63]=W,e[64]=ee,e[65]=te):te=e[65];let re;e[66]!==a?(re=a("Fast queries"),e[66]=a,e[67]=re):re=e[67];let ae;e[68]!==re?(ae=(0,t.jsx)(De,{className:"pb-2",children:(0,t.jsx)(Fe,{className:"text-sm font-medium",children:re})}),e[68]=re,e[69]=ae):ae=e[69];let se;e[70]!==L?(se=(0,t.jsx)("div",{className:"text-2xl font-bold text-success","data-testid":"qi-fast",children:L}),e[70]=L,e[71]=se):se=e[71];let le;e[72]!==a?(le=a("<50ms avg execution"),e[72]=a,e[73]=le):le=e[73];let ne;e[74]!==le?(ne=(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:le}),e[74]=le,e[75]=ne):ne=e[75];let q;e[76]!==se||e[77]!==ne?(q=(0,t.jsxs)(xe,{children:[se,ne]}),e[76]=se,e[77]=ne,e[78]=q):q=e[78];let D;e[79]!==ae||e[80]!==q?(D=(0,t.jsxs)(fe,{children:[ae,q]}),e[79]=ae,e[80]=q,e[81]=D):D=e[81],e[82]!==J||e[83]!==te||e[84]!==D?(y=(0,t.jsxs)("div",{className:"grid gap-4 md:grid-cols-3",children:[J,te,D]}),e[82]=J,e[83]=te,e[84]=D,e[85]=y):y=e[85];let F;e[86]!==a?(F=a("Query leaderboard"),e[86]=a,e[87]=F):F=e[87];let P;e[88]!==F?(P=(0,t.jsx)("h3",{className:"text-lg font-semibold",children:F}),e[88]=F,e[89]=P):P=e[89];let ie;e[90]!==r||e[91]!==a?(ie=a("Slow queries sorted by {sortField}",{sortField:a(r)}),e[90]=r,e[91]=a,e[92]=ie):ie=e[92];let be;e[93]!==ie?(be=(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:ie}),e[93]=ie,e[94]=be):be=e[94];let ve;e[95]!==P||e[96]!==be?(ve=(0,t.jsxs)("div",{children:[P,be]}),e[95]=P,e[96]=be,e[97]=ve):ve=e[97];let ye;e[98]!==a?(ye=a("Sort by"),e[98]=a,e[99]=ye):ye=e[99];let Ne;e[100]!==ye?(Ne=(0,t.jsx)("span",{className:"text-sm text-muted-foreground",children:ye}),e[100]=ye,e[101]=Ne):Ne=e[101];let Se;e[102]!==a?(Se=a("Sort queries by"),e[102]=a,e[103]=Se):Se=e[103];let Be;e[104]===Symbol.for("react.memo_cache_sentinel")?(Be=(0,t.jsx)(Ct,{}),e[104]=Be):Be=e[104];let we;e[105]!==Se?(we=(0,t.jsx)(Mt,{"aria-label":Se,className:"w-[140px]","data-testid":"qi-sort",children:Be}),e[105]=Se,e[106]=we):we=e[106];let qe;e[107]!==a?(qe=a("Total time"),e[107]=a,e[108]=qe):qe=e[108];let _e;e[109]!==qe?(_e=(0,t.jsx)(je,{value:"totalTime",children:qe}),e[109]=qe,e[110]=_e):_e=e[110];let ke;e[111]!==a?(ke=a("Avg time"),e[111]=a,e[112]=ke):ke=e[112];let Ce;e[113]!==ke?(Ce=(0,t.jsx)(je,{value:"avgTime",children:ke}),e[113]=ke,e[114]=Ce):Ce=e[114];let Me;e[115]!==a?(Me=a("Execution count"),e[115]=a,e[116]=Me):Me=e[116];let Ie;e[117]!==Me?(Ie=(0,t.jsx)(je,{value:"execCount",children:Me}),e[117]=Me,e[118]=Ie):Ie=e[118];let Re;e[119]!==a?(Re=a("Rows read"),e[119]=a,e[120]=Re):Re=e[120];let $e;e[121]!==Re?($e=(0,t.jsx)(je,{value:"rowsRead",children:Re}),e[121]=Re,e[122]=$e):$e=e[122];let Ae;e[123]!==_e||e[124]!==Ce||e[125]!==Ie||e[126]!==$e?(Ae=(0,t.jsxs)(It,{children:[_e,Ce,Ie,$e]}),e[123]=_e,e[124]=Ce,e[125]=Ie,e[126]=$e,e[127]=Ae):Ae=e[127];let ze;e[128]!==r||e[129]!==we||e[130]!==Ae?(ze=(0,t.jsxs)(kt,{onValueChange:h,value:r,children:[we,Ae]}),e[128]=r,e[129]=we,e[130]=Ae,e[131]=ze):ze=e[131];let Ke;e[132]!==Ne||e[133]!==ze?(Ke=(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[Ne,ze]}),e[132]=Ne,e[133]=ze,e[134]=Ke):Ke=e[134],e[135]!==ve||e[136]!==Ke?(w=(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[ve,Ke]}),e[135]=ve,e[136]=Ke,e[137]=w):w=e[137],c=fe;let Le;e[138]!==a?(Le=a("Statements"),e[138]=a,e[139]=Le):Le=e[139];let Te;e[140]!==Le?(Te=(0,t.jsx)(Fe,{children:Le}),e[140]=Le,e[141]=Te):Te=e[141],v=(0,t.jsxs)(De,{children:[Te,(0,t.jsx)(bt,{children:a("{count} tracked statements",{count:_.length})})]}),u=xe,f="space-y-2";let Ue;e[142]!==n||e[143]!==a?(Ue=b(K=>{let ce=K.normalizedSql,Q=n.has(ce),pe=We(K.avgDurationMs);return(0,t.jsxs)("div",{className:"overflow-hidden rounded-lg border","data-testid":"qi-row",children:[(0,t.jsxs)("button",{"aria-expanded":Q,className:"flex w-full items-center justify-between p-3 text-left transition-colors hover:bg-muted/50",onClick:b(()=>{O(ce)},"onClick"),type:"button",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-3",children:[(0,t.jsx)(sr,{level:pe}),(0,t.jsx)("span",{className:"max-w-[300px] truncate font-mono text-sm lg:max-w-[500px]",children:K.normalizedSql})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-4",children:[(0,t.jsxs)("div",{className:"text-right",children:[(0,t.jsx)("div",{className:"text-sm font-medium",children:Qe(K.totalDurationMs)}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground",children:a("total")})]}),(0,t.jsxs)("div",{className:"text-right",children:[(0,t.jsx)("div",{className:"text-sm font-medium",children:Qe(K.avgDurationMs)}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground",children:a("avg")})]}),K.p95DurationMs!==void 0&&(0,t.jsxs)("div",{className:"text-right",children:[(0,t.jsx)("div",{className:"text-sm font-medium",children:Qe(K.p95DurationMs)}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground",children:a("p95")})]}),(0,t.jsxs)("div",{className:"text-right",children:[(0,t.jsx)("div",{className:"text-sm font-medium",children:Ve(K.execCount)}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground",children:a("calls")})]})]})]}),Q&&(0,t.jsxs)("div",{className:"space-y-3 border-t bg-muted/30 p-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-2 text-sm font-medium",children:a("Full statement")}),(0,t.jsx)("pre",{className:"overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm whitespace-pre-wrap break-all",children:K.normalizedSql})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4 text-sm md:grid-cols-4",children:[K.p50DurationMs!==void 0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:a("p50")}),(0,t.jsx)("span",{className:"block font-medium tabular-nums",children:Qe(K.p50DurationMs)})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:a("Exec count")}),(0,t.jsx)("span",{className:"block font-medium tabular-nums",children:Ve(K.execCount)})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:a("Total time")}),(0,t.jsx)("span",{className:"block font-medium tabular-nums",children:Qe(K.totalDurationMs)})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:a("Rows read")}),(0,t.jsx)("span",{className:"block font-medium tabular-nums",children:Ve(K.rowsRead)})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:a("Rows written")}),(0,t.jsx)("span",{className:"block font-medium tabular-nums",children:Ve(K.rowsWritten)})]})]})]})]},ce)},"Ke"),e[142]=n,e[143]=a,e[144]=Ue):Ue=e[144],g=_.map(Ue)}e[2]=n,e[3]=s,e[4]=r,e[5]=a,e[6]=u,e[7]=c,e[8]=d,e[9]=f,e[10]=g,e[11]=v,e[12]=x,e[13]=S,e[14]=y,e[15]=w}else u=e[6],c=e[7],d=e[8],f=e[9],g=e[10],v=e[11],x=e[12],S=e[13],y=e[14],w=e[15];if(d!==Symbol.for("react.early_return_sentinel"))return d;let I;e[145]!==f||e[146]!==g?(I=(0,t.jsx)("div",{className:f,children:g}),e[145]=f,e[146]=g,e[147]=I):I=e[147];let k;e[148]!==u||e[149]!==I?(k=(0,t.jsx)(u,{children:I}),e[148]=u,e[149]=I,e[150]=k):k=e[150];let N;e[151]!==c||e[152]!==k||e[153]!==v?(N=(0,t.jsxs)(c,{children:[v,k]}),e[151]=c,e[152]=k,e[153]=v,e[154]=N):N=e[154];let z;return e[155]!==N||e[156]!==x||e[157]!==S||e[158]!==y||e[159]!==w?(z=(0,t.jsxs)("div",{className:x,"data-testid":S,children:[y,w,N]}),e[155]=N,e[156]=x,e[157]=S,e[158]=y,e[159]=w,e[160]=z):z=e[160],z},"as");function ir(l){return We(l.avgDurationMs)==="critical"}b(ir,"is");function or(l){return We(l.avgDurationMs)==="warning"}b(or,"ns");function dr(l){return We(l.avgDurationMs)==="good"}b(dr,"os");var cr=["1m","5m","15m","1h"],mr=b(l=>new Date(l).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"}),"ds"),ur=b(l=>l.map(e=>({avg:Math.round(e.avgDurationMs*100)/100,execs:e.execCount,label:mr(e.bucketMs)})),"ms"),hr=b(({shardKey:l=""})=>{let e=he(),[s,a]=(0,j.useState)("15m"),r=Oe(Ee.getQueryInsights,{range:s},{live:!0,shardKey:l}).data,o=ur(r?.buckets??[]);return(0,t.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"qi-range",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)("div",{className:"flex gap-1 rounded-lg border border-border p-0.5","data-testid":"qi-ranges",role:"group",children:cr.map(i=>(0,t.jsx)("button",{"aria-pressed":i===s,className:xt("rounded px-2 py-1 text-xs outline-none transition-colors hover:bg-accent focus-visible:bg-accent",i===s&&"bg-accent font-medium text-foreground"),"data-testid":`qi-range-${i}`,onClick:b(()=>{a(i)},"onClick"),type:"button",children:i},i))}),r?.capped===!0&&(0,t.jsx)(Je,{"data-testid":"qi-capped",variant:"secondary",children:e("showing a capped set")})]}),o.length===0?(0,t.jsx)(vt,{description:e("Statements executed in the selected window appear here, with throughput and latency over time."),testId:"qi-empty",title:e("No queries in this window.")}):(0,t.jsxs)("div",{className:"grid gap-4 lg:grid-cols-2",children:[(0,t.jsxs)("figure",{className:"rounded-xl border border-border p-3","data-testid":"qi-throughput",children:[(0,t.jsx)("figcaption",{className:"mb-2 text-xs font-medium text-muted-foreground",children:e("Throughput")}),(0,t.jsx)(rt,{height:140,width:"100%",children:(0,t.jsxs)(Lt,{data:o,children:[(0,t.jsx)(st,{strokeDasharray:"3 3",vertical:!1}),(0,t.jsx)(lt,{dataKey:"label",fontSize:10,tickLine:!1}),(0,t.jsx)(nt,{allowDecimals:!1,fontSize:10,tickLine:!1,width:32}),(0,t.jsx)(at,{}),(0,t.jsx)(zt,{dataKey:"execs",fill:"var(--color-primary)",fillOpacity:.15,stroke:"var(--color-primary)",type:"monotone"})]})})]}),(0,t.jsxs)("figure",{className:"rounded-xl border border-border p-3","data-testid":"qi-latency",children:[(0,t.jsx)("figcaption",{className:"mb-2 text-xs font-medium text-muted-foreground",children:e("Mean latency (ms)")}),(0,t.jsx)(rt,{height:140,width:"100%",children:(0,t.jsxs)(Kt,{data:o,children:[(0,t.jsx)(st,{strokeDasharray:"3 3",vertical:!1}),(0,t.jsx)(lt,{dataKey:"label",fontSize:10,tickLine:!1}),(0,t.jsx)(nt,{fontSize:10,tickLine:!1,width:32}),(0,t.jsx)(at,{}),(0,t.jsx)(At,{dataKey:"avg",dot:!1,stroke:"var(--color-destructive)",type:"monotone"})]})})]})]}),(0,t.jsx)(nr,{queryStats:r?.entries??[]})]})},"fs"),gr=mt(Ee.getMetrics),pr=[],fr=b((l,e)=>l?e:"overview","gs"),xr=b(l=>{let e=(0,me.c)(14),s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s={},e[0]=s):s=e[0];let a;e[1]!==l?(a={live:!0,shardKey:l},e[1]=l,e[2]=a):a=e[2];let r=Oe(Ee.getMetrics,s,a),{data:o}=r,i;e[3]===Symbol.for("react.memo_cache_sentinel")?(i={points:[],shard:null},e[3]=i):i=e[3];let[n,m]=(0,j.useState)(i),p=(0,j.useRef)(null),h=(0,j.useRef)(null),u,c;e[4]!==o||e[5]!==l?(u=b(()=>{o!==void 0&&Nt(l)},"u"),c=[o,l],e[4]=o,e[5]=l,e[6]=u,e[7]=c):(u=e[6],c=e[7]),(0,j.useEffect)(u,c);let d,f;e[8]!==o?(d=b(()=>{if(o===void 0)return;let x=o,S=h.current!==null&&h.current!==x.shard,y=h.current===x.shard?p.current:null;if(h.current=x.shard,p.current=x.requests,S){m({points:[],shard:x.shard});return}y!==null&&x.requests>=y&&m(w=>({points:[...w.shard===x.shard?w.points:[],x.requests-y].slice(-30),shard:x.shard}))},"c"),f=[o],e[8]=o,e[9]=d,e[10]=f):(d=e[9],f=e[10]),(0,j.useEffect)(d,f);let g=n.shard!==null&&n.shard===o?.shard?n.points:pr,v;return e[11]!==r||e[12]!==g?(v={...r,history:g},e[11]=r,e[12]=g,e[13]=v):v=e[13],v},"ps"),br=b(l=>{let e=ft(),s=(0,j.useRef)(!0);(0,j.useEffect)(()=>(s.current=!0,()=>{s.current=!1}),[]);let[a,r]=(0,j.useState)(null),[o,i]=(0,j.useState)(!1),n=b(async()=>{i(!0);let p=l,h=Ot(p,yt());try{let u=await Promise.all(h.map(async c=>{try{let d=await e.query(gr,{},ut(c));return{error:null,metrics:d,shard:c===""?d.shard:c}}catch(d){return{error:ht(d),metrics:null,shard:c===""?"__root__":c}}}));s.current&&r({results:u,shard:p})}finally{s.current&&i(!1)}},"a"),m=a?.shard===l?a.results:null;return{aggregate:m===null?null:Et(m),aggregating:o,clearAggregate:b(()=>{r(null)},"clearAggregate"),runAggregate:b(()=>{pt(n())},"runAggregate"),shardResults:m}},"xs"),vr=b(l=>{if(!l||!("queryStats"in l))return;let e=l.queryStats;if(!(!e||!Array.isArray(e)))return Ft(e)},"bs"),Qt=b(l=>`pb-2 text-sm font-medium transition-colors ${l?"border-b-2 border-primary text-foreground":"text-muted-foreground hover:text-foreground"}`,"ot"),yr=b(l=>{let e=(0,me.c)(26),{activeTab:s,onSelect:a,queryCount:r}=l,o=he(),i;e[0]!==a?(i=b(()=>{a("overview")},"n"),e[0]=a,e[1]=i):i=e[1];let n=i,m;e[2]!==a?(m=b(()=>{a("query-insights")},"m"),e[2]=a,e[3]=m):m=e[3];let p=m,h=s==="overview",u;e[4]!==h?(u=Qt(h),e[4]=h,e[5]=u):u=e[5];let c;e[6]!==o?(c=o("Overview"),e[6]=o,e[7]=c):c=e[7];let d;e[8]!==n||e[9]!==u||e[10]!==c?(d=(0,t.jsx)("button",{className:u,"data-testid":"mt-tab-overview",onClick:n,type:"button",children:c}),e[8]=n,e[9]=u,e[10]=c,e[11]=d):d=e[11];let f=s==="query-insights",g;e[12]!==f?(g=Qt(f),e[12]=f,e[13]=g):g=e[13];let v;e[14]!==o?(v=o("Query insights"),e[14]=o,e[15]=v):v=e[15];let x;e[16]!==r?(x=r>0&&(0,t.jsx)("span",{className:"ml-1.5 rounded-full bg-primary/10 px-1.5 py-0.5 text-xs text-primary",children:r}),e[16]=r,e[17]=x):x=e[17];let S;e[18]!==p||e[19]!==x||e[20]!==g||e[21]!==v?(S=(0,t.jsxs)("button",{className:g,"data-testid":"mt-tab-query-insights",onClick:p,type:"button",children:[v,x]}),e[18]=p,e[19]=x,e[20]=g,e[21]=v,e[22]=S):S=e[22];let y;return e[23]!==S||e[24]!==d?(y=(0,t.jsxs)("div",{className:"flex gap-2 border-b","data-testid":"mt-tabs",children:[d,S]}),e[23]=S,e[24]=d,e[25]=y):y=e[25],y},"vs"),Nr=b(l=>{let e=(0,me.c)(13),{history:s,metrics:a}=l,r;e[0]!==s?(r=s.at(-1)??0,e[0]=s,e[1]=r):r=e[1];let o;e[2]!==a.errors||e[3]!==a.requests?(o=a.requests===0?"\u2014":`${(a.errors/a.requests*100).toFixed(1)}%`,e[2]=a.errors,e[3]=a.requests,e[4]=o):o=e[4];let i;e[5]!==a?(i=Dt(a),e[5]=a,e[6]=i):i=e[6];let n;return e[7]!==s||e[8]!==a||e[9]!==r||e[10]!==o||e[11]!==i?(n=(0,t.jsx)(ar,{currentDelta:r,errorRate:o,history:s,latencyPercentiles:i,metrics:a}),e[7]=s,e[8]=a,e[9]=r,e[10]=o,e[11]=i,e[12]=n):n=e[12],n},"ys"),Sr=b(l=>{let e=(0,me.c)(25),{aggregating:s,liveError:a,onAggregate:r,onClearAggregate:o,onShardKeyChange:i,shardKey:n}=l,m=he(),p;e[0]!==i||e[1]!==n?(p=(0,t.jsx)(St,{onChange:i,testId:"mt-shard-input",value:n}),e[0]=i,e[1]=n,e[2]=p):p=e[2];let h;e[3]!==a?(h=(0,t.jsx)(qt,{message:a,prefix:"mt"}),e[3]=a,e[4]=h):h=e[4];let u;e[5]!==s||e[6]!==m?(u=m(s?"Aggregating\u2026":"All shards"),e[5]=s,e[6]=m,e[7]=u):u=e[7];let c;e[8]!==s||e[9]!==r||e[10]!==u?(c=(0,t.jsx)(Ye,{"data-testid":"mt-aggregate",disabled:s,onClick:r,size:"sm",type:"button",variant:"secondary",children:u}),e[8]=s,e[9]=r,e[10]=u,e[11]=c):c=e[11];let d;e[12]!==o||e[13]!==m?(d=o!==void 0&&(0,t.jsx)(Ye,{"data-testid":"mt-aggregate-clear",onClick:o,size:"sm",type:"button",variant:"ghost",children:m("Hide")}),e[12]=o,e[13]=m,e[14]=d):d=e[14];let f;e[15]!==m?(f=m("Open in Cloudflare"),e[15]=m,e[16]=f):f=e[16];let g;e[17]!==f?(g=(0,t.jsx)("a",{className:"text-sm text-primary underline-offset-4 hover:underline","data-testid":"mt-cf-link",href:_t,rel:"noreferrer",target:"_blank",children:f}),e[17]=f,e[18]=g):g=e[18];let v;return e[19]!==p||e[20]!==h||e[21]!==c||e[22]!==d||e[23]!==g?(v=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[p,h,c,d,g]}),e[19]=p,e[20]=h,e[21]=c,e[22]=d,e[23]=g,e[24]=v):v=e[24],v},"Ns"),Jr=b(l=>{let e=(0,me.c)(41),{initialShardKey:s}=l,{queryShardKey:a,setShardKey:r,shardKey:o}=wt(s),[i,n]=(0,j.useState)("overview"),m=$t(a),{data:p,error:h,history:u,liveError:c}=xr(a),d=p??null,{aggregate:f,aggregating:g,clearAggregate:v,runAggregate:x,shardResults:S}=br(o),y;e[0]!==d?(y=vr(d),e[0]=d,e[1]=y):y=e[1];let w=y,I=w!==void 0,k;e[2]!==i||e[3]!==I?(k=fr(I,i),e[2]=i,e[3]=I,e[4]=k):k=e[4];let N=k,z=S===null?void 0:v,_;e[5]!==g||e[6]!==c||e[7]!==x||e[8]!==r||e[9]!==o||e[10]!==z?(_=(0,t.jsx)(Sr,{aggregating:g,liveError:c,onAggregate:x,onClearAggregate:z,onShardKeyChange:r,shardKey:o}),e[5]=g,e[6]=c,e[7]=x,e[8]=r,e[9]=o,e[10]=z,e[11]=_):_=e[11];let C;e[12]!==h?(C=h!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"mt-error",role:"alert",children:h}),e[12]=h,e[13]=C):C=e[13];let R;e[14]!==N||e[15]!==w?(R=w!==void 0&&(0,t.jsx)(yr,{activeTab:N,onSelect:n,queryCount:w.length}),e[14]=N,e[15]=w,e[16]=R):R=e[16];let M;e[17]!==N||e[18]!==a||e[19]!==w?(M=N==="query-insights"&&w!==void 0&&(0,t.jsx)(hr,{shardKey:a}),e[17]=N,e[18]=a,e[19]=w,e[20]=M):M=e[20];let $;e[21]!==N||e[22]!==u||e[23]!==d?($=N==="overview"&&d!==null&&(0,t.jsx)(Nr,{history:u,metrics:d}),e[21]=N,e[22]=u,e[23]=d,e[24]=$):$=e[24];let A;e[25]!==N||e[26]!==m||e[27]!==a?(A=N==="overview"&&(0,t.jsx)(tr,{onOpenTrace:m,shardKey:a}),e[25]=N,e[26]=m,e[27]=a,e[28]=A):A=e[28];let L;e[29]!==f||e[30]!==N||e[31]!==S?(L=N==="overview"&&f!==null&&S!==null&&(0,t.jsx)(rr,{aggregate:f,shardResults:S}),e[29]=f,e[30]=N,e[31]=S,e[32]=L):L=e[32];let E;return e[33]!==A||e[34]!==L||e[35]!==_||e[36]!==C||e[37]!==R||e[38]!==M||e[39]!==$?(E=(0,t.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-metrics",children:[_,C,R,M,$,A,L]}),e[33]=A,e[34]=L,e[35]=_,e[36]=C,e[37]=R,e[38]=M,e[39]=$,e[40]=E):E=e[40],E},"Js");export{Jr as MetricsPanel};
|