@lunora/studio 1.0.0-alpha.23 → 1.0.0-alpha.230
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/LICENSE.md +6 -0
- package/README.md +1 -1
- package/dist/index.d.mts +1581 -0
- package/dist/index.d.ts +976 -803
- package/dist/index.mjs +1 -0
- package/dist/mount.d.mts +22 -0
- package/dist/mount.d.ts +11 -10
- package/dist/mount.mjs +1 -0
- package/dist/packem_chunks/AdvisorHealthPanel.mjs +1 -0
- package/dist/packem_chunks/ApiTab.mjs +1 -0
- package/dist/packem_chunks/AuditPanel.mjs +1 -0
- package/dist/packem_chunks/DeploymentHealthPanel.mjs +1 -0
- package/dist/packem_chunks/ExportImportPanel.mjs +3 -0
- package/dist/packem_chunks/FileBrowser.mjs +4 -0
- package/dist/packem_chunks/FunctionRunner.mjs +1 -0
- package/dist/packem_chunks/FunctionStatsPanel.mjs +1 -0
- package/dist/packem_chunks/HealthPanel.mjs +1 -0
- package/dist/packem_chunks/InsightsPanel.mjs +1 -0
- package/dist/packem_chunks/LogsPanel.mjs +1 -0
- package/dist/packem_chunks/MailPanel.mjs +2 -0
- package/dist/packem_chunks/MetricsPanel.mjs +1 -0
- package/dist/packem_chunks/NotificationsPanel.mjs +1 -0
- package/dist/packem_chunks/PitrPanel.mjs +1 -0
- package/dist/packem_chunks/SchemaViewer.mjs +1 -0
- package/dist/packem_chunks/SecurityAdvisorPanel.mjs +1 -0
- package/dist/packem_chunks/SettingsPanel.mjs +1 -0
- package/dist/packem_chunks/SqlEditorPanel.mjs +8 -0
- package/dist/packem_chunks/TableEditor.mjs +1 -0
- package/dist/packem_chunks/agents-panel.mjs +1 -0
- package/dist/packem_chunks/analytics-panel.mjs +1 -0
- package/dist/packem_chunks/auth-audit-panel.mjs +1 -0
- package/dist/packem_chunks/auth-config-panel.mjs +1 -0
- package/dist/packem_chunks/auth-sessions-panel.mjs +1 -0
- package/dist/packem_chunks/containers-panel.mjs +1 -0
- package/dist/packem_chunks/dashboards-panel.mjs +1 -0
- package/dist/packem_chunks/evals-panel.mjs +1 -0
- package/dist/packem_chunks/fanout-panel.mjs +1 -0
- package/dist/packem_chunks/flags-panel.mjs +1 -0
- package/dist/packem_chunks/issues-panel.mjs +1 -0
- package/dist/packem_chunks/kv-browser.mjs +1 -0
- package/dist/packem_chunks/log-drains-panel.mjs +4 -0
- package/dist/packem_chunks/migrations-route.mjs +1 -0
- package/dist/packem_chunks/organizations-panel.mjs +1 -0
- package/dist/packem_chunks/payments-panel.mjs +1 -0
- package/dist/packem_chunks/permissions-panel.mjs +1 -0
- package/dist/packem_chunks/queues-panel.mjs +1 -0
- package/dist/packem_chunks/reactors-panel.mjs +1 -0
- package/dist/packem_chunks/rls-panel.mjs +1 -0
- package/dist/packem_chunks/schedule-panel.mjs +1 -0
- package/dist/packem_chunks/sparkline.mjs +1 -0
- package/dist/packem_chunks/storage-rules-panel.mjs +1 -0
- package/dist/packem_chunks/subscriptions-panel.mjs +1 -0
- package/dist/packem_chunks/sync-client-panel.mjs +1 -0
- package/dist/packem_chunks/traces-panel.mjs +1 -0
- package/dist/packem_chunks/users-panel.mjs +1 -0
- package/dist/packem_chunks/vector-browser.mjs +1 -0
- package/dist/packem_chunks/workflows-panel.mjs +1 -0
- package/dist/packem_shared/ADMIN_FUNCTIONS-B8yyk5BX.mjs +1 -0
- package/dist/packem_shared/ApiDocsPanel-fhDlZGE4.mjs +2 -0
- package/dist/packem_shared/ApiReferencePanel-CHoHM5ME.mjs +1 -0
- package/dist/packem_shared/CommandPalette-D9ZY-qQd.mjs +1 -0
- package/dist/packem_shared/ConfirmButton-DU4p72Er.mjs +1 -0
- package/dist/packem_shared/ConnectionBadge-B8Hj5DaE.mjs +1 -0
- package/dist/packem_shared/DEFAULT_AUTO_REFRESH_MS-DuULO4XM.mjs +1 -0
- package/dist/packem_shared/DEFAULT_INSIGHT_THRESHOLDS-D5YMT0gM.mjs +1 -0
- package/dist/packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs +1 -0
- package/dist/packem_shared/DataBrowser-YscAF4OI.mjs +4 -0
- package/dist/packem_shared/DataFilters-CYZFt2EK.mjs +1 -0
- package/dist/packem_shared/ErrorBoundary-BWNF98VF.mjs +1 -0
- package/dist/packem_shared/GlobalDataBrowser-DhObcZDY.mjs +1 -0
- package/dist/packem_shared/HomePanel-fJZRA0b0.mjs +1 -0
- package/dist/packem_shared/MigrationsPanel-QjQ4Gp9s.mjs +1 -0
- package/dist/packem_shared/OpenRpcReferencePanel-C8ctFJVm.mjs +1 -0
- package/dist/packem_shared/STUDIO_ROOT_CLASS-C6MccdVk.mjs +1 -0
- package/dist/packem_shared/ScheduledJobs-nPx7NmOE.mjs +1 -0
- package/dist/packem_shared/ShardInput-C6mjgAh4.mjs +1 -0
- package/dist/packem_shared/Studio-DQq17PO6.mjs +1 -0
- package/dist/packem_shared/StudioApp-DikgPBVJ.mjs +1 -0
- package/dist/packem_shared/StudioI18nProvider-fVsCSs5L.mjs +1 -0
- package/dist/packem_shared/advisor-view-BzzJg9D_.mjs +1 -0
- package/dist/packem_shared/aggregateMetrics-5zEJC6Ju.mjs +1 -0
- package/dist/packem_shared/alert-PB5W11MM.mjs +1 -0
- package/dist/packem_shared/app.d-BbmO2HA2.d.mts +301 -0
- package/dist/packem_shared/app.d-BbmO2HA2.d.ts +301 -0
- package/dist/packem_shared/auth-pager-DiDnXsfe.mjs +1 -0
- package/dist/packem_shared/badge-r_5B4LHP.mjs +1 -0
- package/dist/packem_shared/bar-chart-BCsEIQoQ.mjs +6 -0
- package/dist/packem_shared/browser-storage-BH1MxLZs.mjs +1 -0
- package/dist/packem_shared/button-q0UYSmrn.mjs +1 -0
- package/dist/packem_shared/card--2hKx4L2.mjs +1 -0
- package/dist/packem_shared/cf-links-CBJ5SywP.mjs +1 -0
- package/dist/packem_shared/checkbox-CnS9cyCz.mjs +1 -0
- package/dist/packem_shared/control-button-BOZ5K-FC.mjs +1 -0
- package/dist/packem_shared/data-grid-DIiNmDR9.mjs +1 -0
- package/dist/packem_shared/data-view-params-DhYmAkcj.mjs +1 -0
- package/dist/packem_shared/dropdown-menu-jLZenfWH.mjs +2 -0
- package/dist/packem_shared/empty-state-D7jEML_T.mjs +1 -0
- package/dist/packem_shared/error-alert-DueSEkt-.mjs +1 -0
- package/dist/packem_shared/grid-features-OVIMIQan.mjs +6 -0
- package/dist/packem_shared/grid-pagination-DgzyzfBh.mjs +1 -0
- package/dist/packem_shared/home-panel-DBSHjxil.mjs +3 -0
- package/dist/packem_shared/input-CXhxesPC.mjs +1 -0
- package/dist/packem_shared/internal-Df43vQI0.mjs +2 -0
- package/dist/packem_shared/label-DKFzyHq6.mjs +1 -0
- package/dist/packem_shared/live-status-BuJdUZFU.mjs +1 -0
- package/dist/packem_shared/log-fields-SBxKyBug.mjs +1 -0
- package/dist/packem_shared/log-line-BHWXobrl.mjs +1 -0
- package/dist/packem_shared/modal-shell-CDztwLnv.mjs +1 -0
- package/dist/packem_shared/operation-console-provider-DoloEvon.mjs +1 -0
- package/dist/packem_shared/recording-client-CyFiAE2l.mjs +1 -0
- package/dist/packem_shared/reference-view-DSeKRrUU.mjs +13 -0
- package/dist/packem_shared/schema-diagram-CQ4vn0CN.mjs +2 -0
- package/dist/packem_shared/scroll-area-CXCQH7VT.mjs +2 -0
- package/dist/packem_shared/select-DPyS18Vy.mjs +2 -0
- package/dist/packem_shared/shard-history-CaO3C4KQ.mjs +1 -0
- package/dist/packem_shared/shortcuts-B9gDaXmw.mjs +1 -0
- package/dist/packem_shared/skeleton-DX1gfixl.mjs +1 -0
- package/dist/packem_shared/sparkline-B_sPPO_8.mjs +1 -0
- package/dist/packem_shared/sql-result-table-DyK762_A.mjs +1 -0
- package/dist/packem_shared/stat-card-D0Fe04cX.mjs +1 -0
- package/dist/packem_shared/storage-tier-C2mKwYRj.mjs +1 -0
- package/dist/packem_shared/studio-ajWxPNfI.mjs +2 -0
- package/dist/packem_shared/table-D0SBiDu-.mjs +2 -0
- package/dist/packem_shared/table-list-sidebar-DkPO_Qtz.mjs +1 -0
- package/dist/packem_shared/textarea--40GKAyz.mjs +1 -0
- package/dist/packem_shared/trace-handoff-BV3EWqy_.mjs +1 -0
- package/dist/packem_shared/use-admin-query-tlBof8Yg.mjs +1 -0
- package/dist/packem_shared/use-async-submit-CZqCMTJ_.mjs +1 -0
- package/dist/packem_shared/use-auth-config-B9hH2tQa.mjs +1 -0
- package/dist/packem_shared/use-mirrored-ref-CVDf2z1M.mjs +1 -0
- package/dist/packem_shared/use-open-trace-DMVhpnyG.mjs +1 -0
- package/dist/packem_shared/use-shard-key-BsP3o5wT.mjs +1 -0
- package/dist/packem_shared/use-sql-assistant-pjfGp-Ol.mjs +1 -0
- package/dist/packem_shared/useDebounced-DVeQ5-oW.mjs +1 -0
- package/dist/packem_shared/utils-bhneXptQ.mjs +1 -0
- package/dist/packem_shared/virtual-rect-D_j7aLxX.mjs +1 -0
- package/dist/packem_shared/wire-codec-Bk4XZGE4.mjs +1 -0
- package/dist/standalone/chunk-225VJ77I.js +1 -0
- package/dist/standalone/chunk-23SFT2CI.js +1 -0
- package/dist/standalone/chunk-2QSGCPIS.js +1 -0
- package/dist/standalone/chunk-2URQKGWU.js +1 -0
- package/dist/standalone/chunk-2V35H4JV.js +3 -0
- package/dist/standalone/chunk-35DM4JJG.js +1 -0
- package/dist/standalone/chunk-3EQVJ5SQ.js +1 -0
- package/dist/standalone/chunk-3EYROC6C.js +4 -0
- package/dist/standalone/chunk-3FBLWUXD.js +1 -0
- package/dist/standalone/chunk-3PWB52UO.js +1 -0
- package/dist/standalone/chunk-3Q2P62UR.js +1 -0
- package/dist/standalone/chunk-4GTO7FL5.js +1 -0
- package/dist/standalone/chunk-4JLGLPWV.js +1 -0
- package/dist/standalone/chunk-4L4WTGN5.js +1 -0
- package/dist/standalone/chunk-4PBNO4Q3.js +1 -0
- package/dist/standalone/chunk-4ZEL6BYL.js +1 -0
- package/dist/standalone/chunk-53KDWFYV.js +1 -0
- package/dist/standalone/chunk-55754F6H.js +1 -0
- package/dist/standalone/chunk-56GQRRBV.js +1 -0
- package/dist/standalone/chunk-57L2DM4H.js +1 -0
- package/dist/standalone/chunk-57XP5MZR.js +1 -0
- package/dist/standalone/chunk-5JDWLCSH.js +1 -0
- package/dist/standalone/chunk-5WJXVZMZ.js +1 -0
- package/dist/standalone/chunk-66UGPQVC.js +1 -0
- package/dist/standalone/chunk-6D6Z2KXU.js +1 -0
- package/dist/standalone/chunk-6DAD3RFX.js +1 -0
- package/dist/standalone/chunk-7BJGFDVG.js +1 -0
- package/dist/standalone/chunk-A3G6E5U2.js +1 -0
- package/dist/standalone/chunk-AANB526D.js +6 -0
- package/dist/standalone/chunk-AAVLPU5Q.js +1 -0
- package/dist/standalone/chunk-AWHXPIXU.js +1 -0
- package/dist/standalone/chunk-AZ4CIFUE.js +1 -0
- package/dist/standalone/chunk-B2HYHTIX.js +1 -0
- package/dist/standalone/chunk-BSNHEJP3.js +1 -0
- package/dist/standalone/chunk-C2WGWVPO.js +1 -0
- package/dist/standalone/chunk-C5CNJIVE.js +1 -0
- package/dist/standalone/chunk-CBTT4FMH.js +1 -0
- package/dist/standalone/chunk-CMA4PTV7.js +1 -0
- package/dist/standalone/chunk-CSUROWL2.js +1 -0
- package/dist/standalone/chunk-D3GIXGIJ.js +1 -0
- package/dist/standalone/chunk-DAFY42M2.js +1 -0
- package/dist/standalone/chunk-DCDNW7DR.js +3 -0
- package/dist/standalone/chunk-DTTTM3CW.js +4 -0
- package/dist/standalone/chunk-EA2JKR5D.js +1 -0
- package/dist/standalone/chunk-EIISOYGA.js +1 -0
- package/dist/standalone/chunk-EJSI4PMU.js +1 -0
- package/dist/standalone/chunk-ELWVLXCM.js +1 -0
- package/dist/standalone/chunk-ERHFRNCL.js +1 -0
- package/dist/standalone/chunk-EVTM6Q43.js +1 -0
- package/dist/standalone/chunk-EY6WHXDO.js +1 -0
- package/dist/standalone/chunk-F2RMCBTB.js +1 -0
- package/dist/standalone/chunk-F7UC63UN.js +1 -0
- package/dist/standalone/chunk-FEWMAPNI.js +1 -0
- package/dist/standalone/chunk-FKVZRPV5.js +1 -0
- package/dist/standalone/chunk-FSRSK4LY.js +1 -0
- package/dist/standalone/chunk-FZ5SSAZU.js +8 -0
- package/dist/standalone/chunk-GCHHYR6O.js +1 -0
- package/dist/standalone/chunk-GMS77BZD.js +1 -0
- package/dist/standalone/chunk-GOSWKLMM.js +1 -0
- package/dist/standalone/chunk-HEAQVSNS.js +1 -0
- package/dist/standalone/chunk-HGP7GH2M.js +1 -0
- package/dist/standalone/chunk-ICOTONE3.js +1 -0
- package/dist/standalone/chunk-IGPZHAPG.js +1 -0
- package/dist/standalone/chunk-IHMGCHAA.js +1 -0
- package/dist/standalone/chunk-IMOHEGMV.js +1 -0
- package/dist/standalone/chunk-IS6LVJ6L.js +1 -0
- package/dist/standalone/chunk-JTAVWGVE.js +1 -0
- package/dist/standalone/chunk-K7AJEMKE.js +1 -0
- package/dist/standalone/chunk-KCEEZ6OU.js +1 -0
- package/dist/standalone/chunk-KDR232YC.js +1 -0
- package/dist/standalone/chunk-KNCDRWAO.js +1 -0
- package/dist/standalone/chunk-L5XAH44R.js +1 -0
- package/dist/standalone/chunk-LCRAEP3B.js +1 -0
- package/dist/standalone/chunk-LCXKALTS.js +15 -0
- package/dist/standalone/chunk-MRAMNVDG.js +1 -0
- package/dist/standalone/chunk-MU3P2FI7.js +1 -0
- package/dist/standalone/chunk-MXLAOCAN.js +1 -0
- package/dist/standalone/chunk-MZ3WS2FG.js +1 -0
- package/dist/standalone/chunk-N2WM74AE.js +1 -0
- package/dist/standalone/chunk-N3CF7TGX.js +5 -0
- package/dist/standalone/chunk-NCFRIHLB.js +1 -0
- package/dist/standalone/chunk-NFS7FTAR.js +1 -0
- package/dist/standalone/chunk-NOCFO4AL.js +1 -0
- package/dist/standalone/chunk-O6AGWZVF.js +1 -0
- package/dist/standalone/chunk-OGUKYRFM.js +1 -0
- package/dist/standalone/chunk-OKG3HWSJ.js +1 -0
- package/dist/standalone/chunk-ONIGWNXT.js +1 -0
- package/dist/standalone/chunk-PLHA3OWK.js +3 -0
- package/dist/standalone/chunk-PPKKM57M.js +1 -0
- package/dist/standalone/chunk-PTZD7RUZ.js +19 -0
- package/dist/standalone/chunk-Q4CAKBWN.js +1 -0
- package/dist/standalone/chunk-QKEJLVC5.js +1 -0
- package/dist/standalone/chunk-QKZ2JCH3.js +1 -0
- package/dist/standalone/chunk-QNXB7FVQ.js +1 -0
- package/dist/standalone/chunk-R4WRHIAN.js +9 -0
- package/dist/standalone/chunk-RBWXVBJ2.js +1 -0
- package/dist/standalone/chunk-RFNGDE33.js +1 -0
- package/dist/standalone/chunk-RPQL45FL.js +1 -0
- package/dist/standalone/chunk-RRYVQMU5.js +1 -0
- package/dist/standalone/chunk-S2MXXVBU.js +8 -0
- package/dist/standalone/chunk-S3CRZLGS.js +1 -0
- package/dist/standalone/chunk-SI7I47IC.js +1 -0
- package/dist/standalone/chunk-SSPIY6CR.js +1 -0
- package/dist/standalone/chunk-SXDNBAX2.js +1 -0
- package/dist/standalone/chunk-T6GZ5GL5.js +1 -0
- package/dist/standalone/chunk-T7QKUVSO.js +1 -0
- package/dist/standalone/chunk-TKKZSWPP.js +1 -0
- package/dist/standalone/chunk-TVCRAKIF.js +1 -0
- package/dist/standalone/chunk-U7KL6DNA.js +1 -0
- package/dist/standalone/chunk-ULIQFBZU.js +1 -0
- package/dist/standalone/chunk-USB6LW3F.js +1 -0
- package/dist/standalone/chunk-UXXDN6Z3.js +1 -0
- package/dist/standalone/chunk-UYEZR3BI.js +1 -0
- package/dist/standalone/chunk-V3CZW3JB.js +1 -0
- package/dist/standalone/chunk-V3VJAA4D.js +1 -0
- package/dist/standalone/chunk-VEDBBYTH.js +1 -0
- package/dist/standalone/chunk-WUWBZPUK.js +1 -0
- package/dist/standalone/chunk-WYI7FXBH.js +14 -0
- package/dist/standalone/chunk-X32ZF36V.js +1 -0
- package/dist/standalone/chunk-XKMLLTFP.js +59 -0
- package/dist/standalone/chunk-XZMOZFE6.js +1 -0
- package/dist/standalone/chunk-Y6CXU7T4.js +1 -0
- package/dist/standalone/chunk-YKW7BL5H.js +2 -0
- package/dist/standalone/chunk-YKXDMIHQ.js +1 -0
- package/dist/standalone/chunk-YOB2X3FZ.js +1 -0
- package/dist/standalone/chunk-YPRQLCKF.js +1 -0
- package/dist/standalone/chunk-Z5O2NQAV.js +1 -0
- package/dist/standalone/studio.js +9 -378
- package/dist/styles.css +2 -2
- package/package.json +23 -20
- package/dist/index.js +0 -41
- package/dist/mount.js +0 -26
- package/dist/packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js +0 -48
- package/dist/packem_shared/ApiDocsPanel-BgrN4kml.js +0 -842
- package/dist/packem_shared/ApiReferencePanel-1vubqG5s.js +0 -229
- package/dist/packem_shared/ApiTab-CHkX49o_.js +0 -251
- package/dist/packem_shared/AuditPanel-CP9HM9nq.js +0 -200
- package/dist/packem_shared/CommandPalette-BtgkBzZI.js +0 -373
- package/dist/packem_shared/ConfirmButton-C2eVi2Qv.js +0 -59
- package/dist/packem_shared/ConnectionBadge-B2DDM2Tn.js +0 -111
- package/dist/packem_shared/DEFAULT_AUTO_REFRESH_MS-Vxwaxx51.js +0 -50
- package/dist/packem_shared/DEFAULT_INSIGHT_THRESHOLDS-DjF0h-gA.js +0 -89
- package/dist/packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js +0 -27
- package/dist/packem_shared/DataBrowser-Bb1gTQ6c.js +0 -4475
- package/dist/packem_shared/DataFilters-FNquMaiu.js +0 -249
- package/dist/packem_shared/ErrorBoundary-BzAApI7J.js +0 -66
- package/dist/packem_shared/ExportImportPanel-Dj87tRa5.js +0 -197
- package/dist/packem_shared/FileBrowser-CWvxp_is.js +0 -2932
- package/dist/packem_shared/FunctionRunner-DlWApMCH.js +0 -343
- package/dist/packem_shared/FunctionStatsPanel-CuO2Tmw-.js +0 -375
- package/dist/packem_shared/GlobalDataBrowser-3X9uRfdO.js +0 -289
- package/dist/packem_shared/HealthPanel-Dj0GRo5P.js +0 -648
- package/dist/packem_shared/HomePanel-BewOCuag.js +0 -1334
- package/dist/packem_shared/InsightsPanel-y_Q-xdPY.js +0 -461
- package/dist/packem_shared/LogsPanel-C7crgYoS.js +0 -827
- package/dist/packem_shared/MailPanel-PILidruz.js +0 -440
- package/dist/packem_shared/MetricsPanel-DioILzgf.js +0 -1611
- package/dist/packem_shared/MigrationsPanel-DkIcRoE5.js +0 -239
- package/dist/packem_shared/OpenRpcReferencePanel-vbcYbv3V.js +0 -191
- package/dist/packem_shared/PitrPanel-yKJ1JPPk.js +0 -252
- package/dist/packem_shared/STUDIO_ROOT_CLASS-D12gX2dV.js +0 -3
- package/dist/packem_shared/ScheduledJobs-BWNwIN3I.js +0 -262
- package/dist/packem_shared/SchemaViewer-CNr8Wame.js +0 -2512
- package/dist/packem_shared/SecurityAdvisorPanel-BBzv7L3c.js +0 -92
- package/dist/packem_shared/SettingsPanel-BKSKl8tl.js +0 -390
- package/dist/packem_shared/ShardInput-gx_DZXXn.js +0 -107
- package/dist/packem_shared/SqlEditorPanel-CkemCQvy.js +0 -13
- package/dist/packem_shared/Studio-QkOjc2NS.js +0 -33
- package/dist/packem_shared/StudioApp-TEElspKL.js +0 -657
- package/dist/packem_shared/StudioI18nProvider-B-tDCZIi.js +0 -48
- package/dist/packem_shared/TableEditor-JS3sXYgS.js +0 -11
- package/dist/packem_shared/advisor-view-CGcfMiPq.js +0 -159
- package/dist/packem_shared/aggregateMetrics-D4nUHEKU.js +0 -108
- package/dist/packem_shared/app.d-Cnij4Zp5.d.ts +0 -300
- package/dist/packem_shared/badge-B2PKA1-5.js +0 -49
- package/dist/packem_shared/bar-chart-CzJAgqkp.js +0 -3245
- package/dist/packem_shared/button-BhsN2uZH.js +0 -49
- package/dist/packem_shared/card-DURq3ElK.js +0 -175
- package/dist/packem_shared/cf-links-2cktDedA.js +0 -8
- package/dist/packem_shared/checkbox-UNkzAxl-.js +0 -63
- package/dist/packem_shared/data-grid-B5CaV3wS.js +0 -183
- package/dist/packem_shared/dropdown-menu-WY4B_eJO.js +0 -280
- package/dist/packem_shared/empty-state-DY_oe0k6.js +0 -98
- package/dist/packem_shared/grid-features-CzUfqgsM.js +0 -840
- package/dist/packem_shared/input-XH4r1Pt1.js +0 -53
- package/dist/packem_shared/internal-rXJEAhXS.js +0 -68
- package/dist/packem_shared/label-D8ykjn5J.js +0 -46
- package/dist/packem_shared/live-status-FZ0psC1z.js +0 -44
- package/dist/packem_shared/reference-view-B4E49Lip.js +0 -2180
- package/dist/packem_shared/shard-history-DyebH1R5.js +0 -38
- package/dist/packem_shared/sparkline-10dG-_f0.js +0 -93
- package/dist/packem_shared/sql-editor-panel-CUJoYF1Z.js +0 -2562
- package/dist/packem_shared/storage-tier-CL98eOvn.js +0 -85
- package/dist/packem_shared/studio-c5Vf7kSh.js +0 -11532
- package/dist/packem_shared/table-_RzNvy3R.js +0 -246
- package/dist/packem_shared/table-editor-9fhJ4hMJ.js +0 -407
- package/dist/packem_shared/table-list-sidebar-Bg7uzbvC.js +0 -832
- package/dist/packem_shared/textarea-D3gaCU_-.js +0 -46
- package/dist/packem_shared/use-admin-query-BkbdNFNz.js +0 -105
- package/dist/packem_shared/useDebounced-Dxncpg6z.js +0 -32
- package/dist/packem_shared/utils-B05Dmz_H.js +0 -8
- package/dist/packem_shared/virtual-rect-CVMUskSm.js +0 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{mergeProps as n}from"@base-ui/react/merge-props";import{useRender as a}from"@base-ui/react/use-render";import{cva as o}from"class-variance-authority";import{c as s}from"./utils-bhneXptQ.mjs";const d=o("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-none border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pe-1.5 has-data-[icon=inline-start]:ps-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive font-mono text-[11px] tracking-wide uppercase focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline",success:"bg-success/10 text-success font-mono text-[11px] tracking-wide uppercase [a]:hover:bg-success/15 dark:bg-success/15",warning:"bg-warning/10 text-warning font-mono text-[11px] tracking-wide uppercase [a]:hover:bg-warning/15 dark:bg-warning/15",info:"bg-info/10 text-info font-mono text-[11px] tracking-wide uppercase [a]:hover:bg-info/15 dark:bg-info/15"}},defaultVariants:{variant:"default"}});function f({className:r,variant:e="default",render:t,...i}){return a({defaultTagName:"span",props:n({className:s(d({variant:e}),r)},i),render:t,state:{slot:"badge",variant:e}})}export{f as B};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import{c as k}from"react/compiler-runtime";import{LunoraError as B}from"@lunora/errors";import{useReducedMotion as V,motion as K}from"motion/react";import*as w from"react";import{useId as j,useState as X,use as Y,createContext as H}from"react";import*as I from"recharts";import{BarChart as U,ReferenceLine as F,XAxis as q,Bar as z,Rectangle as R}from"recharts";import{c as A}from"./utils-bhneXptQ.mjs";import{jsx as l,jsxs as b,Fragment as E}from"react/jsx-runtime";const L={light:"",dark:".dark"},T=Object.keys(L);function W(r){for(const[t,e]of Object.entries(r))if(e.colors&&!T.some(o=>e.colors?.[o]!==void 0))throw new B("INTERNAL",`[EvilCharts] Invalid chart config for "${t}": colors object must have at least one theme key (${T.join(", ")}). Received empty object or invalid keys.`)}const D=w.createContext(null);function J(){const r=w.useContext(D);if(!r)throw new B("INTERNAL","useChart must be used within a <ChartContainer />");return r}const Q=({id:r,config:t,initialDimension:e={width:320,height:200},className:n,children:o,...s})=>{const a=w.useId(),i=`chart-${r??a.replaceAll(":","")}`;return W(t),l(D.Provider,{value:{config:t},children:b("div",{className:A("min-h-0 w-full flex-1","[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-axis-tick_text]:font-mono [&_.recharts-cartesian-axis-tick_text]:text-[11px] [&_.recharts-cartesian-axis-tick_text]:tracking-wide [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border relative flex flex-col justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden","aspect-video",n),"data-chart":i,"data-slot":"chart",...s,children:[l(tt,{config:t,id:i}),l(I.ResponsiveContainer,{className:"min-h-0 w-full flex-1",initialDimension:e,children:o})]})})};function Z(r,t){const e=r.length;if(e>=t)return r.slice(0,t);const n=[],o=Math.floor(t/e),s=t%e;for(let a=0;a<e;a++){const i=a>=e-s,d=o+(i?1:0);for(let u=0;u<d;u++)n.push(r[a])}return n}const tt=r=>{const t=k(6),{id:e,config:n}=r;let o,s;if(t[0]!==n||t[1]!==e){s=Symbol.for("react.early_return_sentinel");t:{const d=Object.entries(n).filter(et);if(d.length===0){s=null;break t}const u=g=>d.flatMap(f=>{const[m,v]=f,h=v.colors?.[g];if(!h||!Array.isArray(h)||h.length===0)return[];const y=N(v);return Z(h,y).map((c,p)=>` --color-${m}-${p}: ${c};`)}).filter(Boolean).join(`
|
|
3
|
+
`);o=Object.entries(L).map(g=>{const[f,m]=g;return`${m} [data-chart=${e}] {
|
|
4
|
+
${u(f)}
|
|
5
|
+
}`})}t[0]=n,t[1]=e,t[2]=o,t[3]=s}else o=t[2],s=t[3];if(s!==Symbol.for("react.early_return_sentinel"))return s;const a=o.join(`
|
|
6
|
+
`);let i;return t[4]!==a?(i=l("style",{dangerouslySetInnerHTML:{__html:a}}),t[4]=a,t[5]=i):i=t[5],i};function M(r,t,e){if(typeof t!="object"||t===null)return;const n="payload"in t&&typeof t.payload=="object"&&t.payload!==null?t.payload:void 0;let o=e;return e in t&&typeof t[e]=="string"?o=t[e]:n&&e in n&&typeof n[e]=="string"&&(o=n[e]),o in r?r[o]:r[e]}function N(r){if(!r.colors)return 1;const t=T.map(e=>r.colors?.[e]?.length??0);return Math.max(...t,1)}function et(r){const[,t]=r;return t.colors}const rt={sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl"},nt={default:"bg-background","frosted-glass":"bg-background"},ot=({active:r,payload:t,className:e,indicator:n="dot",hideLabel:o=!1,hideIndicator:s=!1,label:a,labelFormatter:i,labelClassName:d,formatter:u,nameKey:g,labelKey:f,roundness:m="lg",variant:v="default"})=>{const{config:h}=J(),y=w.useMemo(()=>{if(o||!t?.length)return null;const[c]=t,p=`${f??c?.dataKey??c?.name??"value"}`,$=M(h,c,p),C=!f&&typeof a=="string"?h[a]?.label??a:$?.label;return i?l("div",{className:A("font-medium",d),children:i(C,t)}):C?l("div",{className:A("font-medium",d),children:C}):null},[a,i,t,o,d,h,f]);if(!r||!t?.length)return l("span",{className:"p-4"});const x=t.length===1&&n!=="dot";return b("div",{className:A("border-border/50 grid min-w-32 items-start gap-1.5 border px-2.5 py-1.5 text-xs",rt[m],nt[v],e),children:[x?null:y,l("div",{className:"grid gap-1.5",children:t.filter(c=>c.type!=="none").map((c,p)=>{const C=`${(g&&c.payload?c.payload[g]:void 0)??c.name??c.dataKey??"value"}`,_=M(h,c,C),P=_?N(_):1;return l("div",{className:A("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",n==="dot"&&"items-center"),children:u&&c?.value!==void 0&&c.name?u(c.value,c.name,c,p,c.payload):b(E,{children:[_?.icon?l(_.icon,{}):!s&&l("div",{className:A("shrink-0 rounded-[2px]",{"h-2.5 w-2.5":n==="dot","w-1":n==="line","w-0 border-[1.5px] border-dashed bg-transparent!":n==="dashed","my-0.5":x&&n==="dashed"}),style:st(C,P)}),b("div",{className:A("flex flex-1 justify-between gap-4 leading-none",x?"items-end":"items-center"),children:[b("div",{className:"grid gap-1.5",children:[x?y:null,l("span",{className:"text-muted-foreground",children:_?.label??c.name})]}),c.value!=null&&l("span",{className:"text-foreground font-mono font-medium tabular-nums",children:typeof c.value=="number"?c.value.toLocaleString():String(c.value)})]})]})},p)})})]})};function st(r,t){return t<=1?{background:`var(--color-${r}-0)`}:{background:`linear-gradient(to right, ${Array.from({length:t},(n,o)=>{const s=o/(t-1)*100;return`var(--color-${r}-${o}) ${s}%`}).join(", ")})`}}const at=({animationDuration:r=200,...t})=>l(I.Tooltip,{animationDuration:r,...t}),G=2,it=.5,lt=.05,ct=[0,.7,.5,1],O=H(null);function dt(){const r=Y(O);if(!r)throw new B("INTERNAL","Bar chart parts (<Bar />, <XAxis />, …) must be used within <EvilBarChart />");return r}const Ct=({config:r,data:t,children:e,className:n,animationType:o="left-to-right",barCategoryGap:s})=>{const a=j().replaceAll(":",""),[i]=X(()=>Date.now()),d={animationType:o,config:r,dataLength:t.length,introStartedAt:i};return l(O,{value:d,children:l(Q,{className:n,config:r,children:b(U,{accessibilityLayer:!0,barCategoryGap:s,data:t,id:a,layout:"horizontal",children:[l(F,{stroke:"var(--border)"}),e]})})})},bt=r=>{const t=k(24),{dataKey:e}=r,{animationType:n,config:o,dataLength:s,introStartedAt:a}=dt(),i=j();let d;t[0]!==i?(d=i.replaceAll(":",""),t[0]=i,t[1]=d):d=t[1];const u=d,f=V()?"none":n;let m;t[2]!==e||t[3]!==s||t[4]!==u||t[5]!==a?(m={dataKey:e,dataLength:s,id:u,introStartedAt:a},t[2]=e,t[3]=s,t[4]=u,t[5]=a,t[6]=m):m=t[6];const v=m;let h;t[7]!==v?(h=C=>l(S,{...C,...v,animationType:"none"}),t[7]=v,t[8]=h):h=t[8];const y=`url(#${u}-colors-${e})`;let x;t[9]!==v||t[10]!==f?(x=C=>l(S,{...C,...v,animationType:f}),t[9]=v,t[10]=f,t[11]=x):x=t[11];let c;t[12]!==e||t[13]!==h||t[14]!==y||t[15]!==x?(c=l(z,{activeBar:h,dataKey:e,fill:y,isAnimationActive:!1,radius:G,shape:x}),t[12]=e,t[13]=h,t[14]=y,t[15]=x,t[16]=c):c=t[16];let p;t[17]!==o||t[18]!==e||t[19]!==u?(p=l("defs",{children:l(ft,{config:o,dataKey:e,id:u})}),t[17]=o,t[18]=e,t[19]=u,t[20]=p):p=t[20];let $;return t[21]!==c||t[22]!==p?($=b(E,{children:[c,p]}),t[21]=c,t[22]=p,t[23]=$):$=t[23],$},$t=({tickLine:r=!1,axisLine:t=!1,tickMargin:e=8,minTickGap:n=8,...o})=>l(q,{axisLine:t,minTickGap:n,tickLine:r,tickMargin:e,type:"category",...o}),At=r=>{const t=k(6),{variant:e,roundness:n,defaultIndex:o}=r;let s;t[0]!==n||t[1]!==e?(s=l(ot,{roundness:n,variant:e}),t[0]=n,t[1]=e,t[2]=s):s=t[2];let a;return t[3]!==o||t[4]!==s?(a=l(at,{content:s,cursor:!1,defaultIndex:o}),t[3]=o,t[4]=s,t[5]=a):a=t[5],a},S=r=>{const{x:t=0,y:e=0,width:n=0,height:o=0,id:s,dataKey:a,animationType:i="none",introStartedAt:d=0,dataLength:u=0}=r,g=typeof r.index=="number"?r.index:-1,f=ut(i,g,u,d),m=l(R,{fill:`url(#${s}-colors-${a})`,height:Math.max(0,o-3),radius:G,width:n,x:t,y:e});return b("g",{children:[l(R,{...r,fill:"transparent"}),f?l(K.g,{animate:f.animate,initial:f.initial,style:f.style,transition:f.transition,children:m}):m]})},ut=(r,t,e,n)=>{if(r==="none"||t<0||e<=0)return null;const o=t*lt*1e3,s=it*1e3,a=o+s,i=Date.now()-n;if(i>=a)return null;const d=i<=o?0:(i-o)/s,u={delay:Math.max(0,o-i)/1e3,duration:(a-Math.max(i,o))/1e3,ease:ct};return{animate:{scaleY:1},initial:{scaleY:d},style:{originY:1},transition:u}},ft=r=>{const t=k(16),{id:e,dataKey:n,config:o}=r;let s,a,i,d,u,g;if(t[0]!==o||t[1]!==n||t[2]!==e){const m=N(o[n]??{});s=`${e}-colors-${n}`,a="0",i="0",d="0",u="1",g=m===1?b(E,{children:[l("stop",{offset:"0%",stopColor:`var(--color-${n}-0)`}),l("stop",{offset:"100%",stopColor:`var(--color-${n}-0)`})]}):Array.from({length:m},(v,h)=>{const y=`${h/(m-1)*100}%`;return l("stop",{offset:y,stopColor:`var(--color-${n}-${h}, var(--color-${n}-0))`},y)}),t[0]=o,t[1]=n,t[2]=e,t[3]=s,t[4]=a,t[5]=i,t[6]=d,t[7]=u,t[8]=g}else s=t[3],a=t[4],i=t[5],d=t[6],u=t[7],g=t[8];let f;return t[9]!==s||t[10]!==a||t[11]!==i||t[12]!==d||t[13]!==u||t[14]!==g?(f=l("linearGradient",{id:s,x1:a,x2:i,y1:d,y2:u,children:g}),t[9]=s,t[10]=a,t[11]=i,t[12]=d,t[13]=u,t[14]=g,t[15]=f):f=t[15],f};export{bt as B,Q as C,Ct as E,At as T,$t as X,at as a,ot as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as m}from"react/compiler-runtime";import{useState as h,useRef as $,useEffect as S}from"react";const d=(o="local")=>{try{return o==="local"?globalThis.localStorage:globalThis.sessionStorage}catch{return}},g=function(o,e="local"){try{const s=d(e)?.getItem(o)??void 0,t=s===void 0?[]:JSON.parse(s);return Array.isArray(t)?t:[]}catch{return[]}},I=(o,e,s="local")=>{const t=d(s);if(t!==void 0)try{t.setItem(o,JSON.stringify(e))}catch{}},A=(o,e="local")=>{try{d(e)?.removeItem(o)}catch{}},J=function(o,e){const s=m(10),t=e===void 0?"local":e;let i;s[0]!==o||s[1]!==t?(i=()=>g(o,t),s[0]=o,s[1]=t,s[2]=i):i=s[2];const[r,u]=h(i),a=$(`${t}:${o}`);let c,l;s[3]!==o||s[4]!==t||s[5]!==r?(c=()=>{const f=`${t}:${o}`;if(a.current!==f){a.current=f,u(g(o,t));return}I(o,r,t)},l=[o,t,r],s[3]=o,s[4]=t,s[5]=r,s[6]=c,s[7]=l):(c=s[6],l=s[7]),S(c,l);let n;return s[8]!==r?(n=[r,u],s[8]=r,s[9]=n):n=s[9],n},O=function(o,e,s){const t=m(6),i="local",[r,u]=J(o,i);let a;t[0]!==e||t[1]!==u?(a=f=>{u(v=>{const p=v[0]??e;return[typeof f=="function"?f(p):f]})},t[0]=e,t[1]=u,t[2]=a):a=t[2];const c=a,l=r[0]??e;let n;return t[3]!==c||t[4]!==l?(n=[l,c],t[3]=c,t[4]=l,t[5]=n):n=t[5],n},V=o=>globalThis.crypto?.randomUUID?.()??`${o}-${globalThis.performance.now().toString(36)}`;export{d as a,O as b,g as l,V as n,A as r,I as s,J as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Button as a}from"@base-ui/react/button";import{cva as n}from"class-variance-authority";import{c as d}from"./utils-bhneXptQ.mjs";import{jsx as o}from"react/jsx-runtime";const s=n("group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding text-xs font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pe-2 has-data-[icon=inline-start]:ps-2",xs:"h-6 gap-1 rounded-md px-2 text-xs has-data-[icon=inline-end]:pe-1.5 has-data-[icon=inline-start]:ps-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-md px-2.5 has-data-[icon=inline-end]:pe-1.5 has-data-[icon=inline-start]:ps-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pe-2 has-data-[icon=inline-start]:ps-2",icon:"size-8","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-md","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function v({className:e,variant:r="default",size:i="default",...t}){return o(a,{"data-slot":"button",className:d(s({variant:r,size:i,className:e})),...t})}export{v as B};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as i}from"react/compiler-runtime";import{c as o}from"./utils-bhneXptQ.mjs";import{jsx as l}from"react/jsx-runtime";function p({className:d,size:e="default",...a}){return l("div",{"data-slot":"card","data-size":e,className:o("group/card flex flex-col gap-4 overflow-hidden rounded-xl border border-border bg-card py-4 text-xs/relaxed text-card-foreground shadow-xs has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-2 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-md *:[img:last-child]:rounded-md",d),...a})}function f(d){const e=i(8);let a,t;e[0]!==d?({className:a,...t}=d,e[0]=d,e[1]=a,e[2]=t):(a=e[1],t=e[2]);let s;e[3]!==a?(s=o("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-md px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",a),e[3]=a,e[4]=s):s=e[4];let r;return e[5]!==t||e[6]!==s?(r=l("div",{"data-slot":"card-header",className:s,...t}),e[5]=t,e[6]=s,e[7]=r):r=e[7],r}function u(d){const e=i(8);let a,t;e[0]!==d?({className:a,...t}=d,e[0]=d,e[1]=a,e[2]=t):(a=e[1],t=e[2]);let s;e[3]!==a?(s=o("font-heading text-sm font-medium group-data-[size=sm]/card:text-sm",a),e[3]=a,e[4]=s):s=e[4];let r;return e[5]!==t||e[6]!==s?(r=l("div",{"data-slot":"card-title",className:s,...t}),e[5]=t,e[6]=s,e[7]=r):r=e[7],r}function x(d){const e=i(8);let a,t;e[0]!==d?({className:a,...t}=d,e[0]=d,e[1]=a,e[2]=t):(a=e[1],t=e[2]);let s;e[3]!==a?(s=o("text-xs/relaxed text-muted-foreground",a),e[3]=a,e[4]=s):s=e[4];let r;return e[5]!==t||e[6]!==s?(r=l("div",{"data-slot":"card-description",className:s,...t}),e[5]=t,e[6]=s,e[7]=r):r=e[7],r}function g(d){const e=i(8);let a,t;e[0]!==d?({className:a,...t}=d,e[0]=d,e[1]=a,e[2]=t):(a=e[1],t=e[2]);let s;e[3]!==a?(s=o("px-4 group-data-[size=sm]/card:px-3",a),e[3]=a,e[4]=s):s=e[4];let r;return e[5]!==t||e[6]!==s?(r=l("div",{"data-slot":"card-content",className:s,...t}),e[5]=t,e[6]=s,e[7]=r):r=e[7],r}export{p as C,g as a,u as b,f as c,x as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const s="https://dash.cloudflare.com/?to=/:account",L=`${s}/workers-and-pages/observability`,o=`${s}/workers-and-pages`,R=`${s}/r2`,a=`${s}/workers/d1`,r=`${s}/workers/durable-objects`;export{o as C,L as a,a as b,r as c,R as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as s}from"react/compiler-runtime";import{Checkbox as d}from"@base-ui/react/checkbox";import{c as l}from"./utils-bhneXptQ.mjs";import{HugeiconsIcon as m}from"@hugeicons/react";import{Tick02Icon as b}from"@hugeicons/core-free-icons";import{jsx as n}from"react/jsx-runtime";function v(c){const e=s(9);let r,i;e[0]!==c?({className:r,...i}=c,e[0]=c,e[1]=r,e[2]=i):(r=e[1],i=e[2]);let a;e[3]!==r?(a=l("peer relative flex size-4 shrink-0 items-center justify-center rounded-md border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",r),e[3]=r,e[4]=a):a=e[4];let t;e[5]===Symbol.for("react.memo_cache_sentinel")?(t=n(d.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:n(m,{icon:b,strokeWidth:2})}),e[5]=t):t=e[5];let o;return e[6]!==i||e[7]!==a?(o=n(d.Root,{"data-slot":"checkbox",className:a,...i,children:t}),e[6]=i,e[7]=a,e[8]=o):o=e[8],o}export{v as C};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e="inline-flex items-center gap-1 rounded-md border border-border px-2.5 py-1 text-xs font-medium text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50",n=`${e} aria-pressed:bg-accent aria-pressed:text-accent-foreground`;export{e as C,n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as x}from"react/compiler-runtime";import{useT as w}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{k as y}from"./internal-Df43vQI0.mjs";import{jsx as i,jsxs as u}from"react/jsx-runtime";const N=(l,e)=>{if(e==="")return[{match:!1,offset:0,text:l}];const a=[],s=l.toLowerCase(),o=e.toLowerCase();let t=0;for(let r=s.indexOf(o);r!==-1;r=s.indexOf(o,t))r>t&&a.push({match:!1,offset:t,text:l.slice(t,r)}),a.push({match:!0,offset:r,text:l.slice(r,r+e.length)}),t=r+e.length;return t<l.length&&a.push({match:!1,offset:t,text:l.slice(t)}),a},v=l=>{const e=x(9),{highlight:a,value:s}=l;if(s==null){let n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=i("span",{className:"text-muted-foreground/50 italic",children:"NULL"}),e[0]=n):n=e[0],n}let o,t,r;if(e[1]!==a||e[2]!==s){r=Symbol.for("react.early_return_sentinel");e:{const n=y(s);if(a===void 0||a===""){r=i("span",{title:n,children:n});break e}o=n,t=N(n,a).map(_)}e[1]=a,e[2]=s,e[3]=o,e[4]=t,e[5]=r}else o=e[3],t=e[4],r=e[5];if(r!==Symbol.for("react.early_return_sentinel"))return r;let d;return e[6]!==o||e[7]!==t?(d=i("span",{title:o,children:t}),e[6]=o,e[7]=t,e[8]=d):d=e[8],d},T=l=>{const e=x(22),{columns:a,rows:s}=l,o=w();let t;e[0]!==o?(t=o("Field"),e[0]=o,e[1]=t):t=e[1];let r;e[2]!==t?(r=i("th",{className:"border-b border-e border-border px-3 py-1.5 text-start font-mono text-[11px] tracking-wide uppercase text-muted-foreground",children:t}),e[2]=t,e[3]=r):r=e[3];let d;if(e[4]!==s||e[5]!==o){let c;e[7]!==o?(c=(b,p)=>i("th",{className:"border-b border-border px-3 py-1.5 text-start font-mono text-[11px] tracking-wide uppercase tabular-nums text-muted-foreground",children:o("Row {n}",{n:p+1})},p),e[7]=o,e[8]=c):c=e[8],d=s.map(c),e[4]=s,e[5]=o,e[6]=d}else d=e[6];let n;e[9]!==r||e[10]!==d?(n=i("thead",{className:"sticky top-0 z-10 bg-muted",children:u("tr",{children:[r,d]})}),e[9]=r,e[10]=d,e[11]=n):n=e[11];let f;if(e[12]!==a||e[13]!==s){let c;e[15]!==s?(c=b=>u("tr",{className:"hover:bg-muted/40",children:[i("th",{className:"border-b border-e border-border px-3 py-1.5 text-start font-mono font-medium whitespace-nowrap",scope:"row",children:b}),s.map((p,g)=>i("td",{className:"max-w-md truncate border-b border-border px-3 py-1.5 font-mono",children:i(v,{value:p[b]})},g))]},b),e[15]=s,e[16]=c):c=e[16],f=a.map(c),e[12]=a,e[13]=s,e[14]=f}else f=e[14];let m;e[17]!==f?(m=i("tbody",{children:f}),e[17]=f,e[18]=m):m=e[18];let h;return e[19]!==n||e[20]!==m?(h=i("div",{className:"min-h-0 flex-1 overflow-auto","data-testid":"db-transposed",children:u("table",{className:"border-collapse text-xs",children:[n,m]})}),e[19]=n,e[20]=m,e[21]=h):h=e[21],h},j=({children:l,layout:e="card",testId:a})=>i("div",{className:e==="fill"?"flex min-h-0 flex-1 flex-col overflow-hidden border-t border-border":"overflow-x-auto border border-border bg-card","data-testid":a,children:l});function _(l){return i("mark",{className:l.match?"rounded-sm bg-warning/40 text-foreground":"bg-transparent text-inherit",children:l.text},l.offset)}export{v as C,j as G,T};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const g=new Set(["contains","eq","gt","gte","lt","lte","ne"]),i=t=>typeof t=="number"&&Number.isSafeInteger(t)?String(t):t,e=t=>{if(typeof t!="string")return;const r=t.trim();return r===""?void 0:r},p=t=>{if(t===null||typeof t!="object")return!1;const r=t;return typeof r.column=="string"&&typeof r.operator=="string"&&g.has(r.operator)},f=t=>{if(typeof t!="string"||t==="")return[];try{const r=JSON.parse(t);return Array.isArray(r)?r.filter(p):[]}catch{return[]}},u=t=>{if(typeof t!="string"||t==="")return;const r=t.lastIndexOf(":");if(r<=0)return;const o=t.slice(0,r),s=t.slice(r+1);if(!(s!=="asc"&&s!=="desc"))return{column:o,direction:s}},h=/^[\da-f]{16}$/u,b=t=>{const r={};if(typeof t.pins=="string"&&t.pins!==""){const d=t.pins.split(",").filter(c=>c!==""&&c.length<=64).slice(0,12);d.length>0&&(r.pins=d.join(","))}t.schema==="global"&&(r.schema="global");const o=e(t.table);o!==void 0&&(r.table=o);const s=e(i(t.shard));s!==void 0&&(r.shard=s);const l=e(i(t.search));l!==void 0&&(r.search=l);const n=e(t.order);n!==void 0&&u(n)!==void 0&&(r.order=n);const a=e(t.filters);return a!==void 0&&f(a).length>0&&(r.filters=a),r},v=t=>{const r=f(t.filters),o=u(t.order);return{filters:r.length>0?r:void 0,orderBy:o,search:e(i(t.search)),shard:e(i(t.shard)),table:e(t.table),tier:t.schema==="global"?"global":"shard"}},y=t=>{const r=t.filters??[];return{filters:r.length>0?JSON.stringify(r):void 0,order:t.orderBy===void 0?void 0:`${t.orderBy.column}:${t.orderBy.direction}`,schema:t.tier==="global"?"global":void 0,search:t.search!==void 0&&t.search!==""?t.search:void 0,shard:t.shard!==void 0&&t.shard!==""?t.shard:void 0,table:t.table!==void 0&&t.table!==""?t.table:void 0}},S=t=>{const{version:r}=t;return typeof r=="string"&&h.test(r)?{version:r}:{}};export{b as a,y as d,v as s,S as v};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import{c}from"react/compiler-runtime";import{Menu as i}from"@base-ui/react/menu";import{c as u}from"./utils-bhneXptQ.mjs";import{HugeiconsIcon as m}from"@hugeicons/react";import{Tick02Icon as g}from"@hugeicons/core-free-icons";import{jsx as s,jsxs as v}from"react/jsx-runtime";function N(n){const e=c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=s(i.Root,{"data-slot":"dropdown-menu",...t}),e[2]=t,e[3]=o):o=e[3],o}function z(n){const e=c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=s(i.Trigger,{"data-slot":"dropdown-menu-trigger",...t}),e[2]=t,e[3]=o):o=e[3],o}function D({align:n="start",alignOffset:e=0,side:t="bottom",sideOffset:o=4,className:a,...r}){return s(i.Portal,{children:s(i.Positioner,{className:"isolate z-50 outline-none",align:n,alignOffset:e,side:t,sideOffset:o,children:s(i.Popup,{"data-slot":"dropdown-menu-content",className:u("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-start-2 data-[side=inline-start]:slide-in-from-end-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!",a),...r})})})}function M(n){const e=c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=s(i.Group,{"data-slot":"dropdown-menu-group",...t}),e[2]=t,e[3]=o):o=e[3],o}function y(n){const e=c(10);let t,o,a;e[0]!==n?({className:t,inset:o,...a}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=a):(t=e[1],o=e[2],a=e[3]);let r;e[4]!==t?(r=u("px-2 py-2 text-xs text-muted-foreground data-inset:ps-7",t),e[4]=t,e[5]=r):r=e[5];let d;return e[6]!==o||e[7]!==a||e[8]!==r?(d=s(i.GroupLabel,{"data-slot":"dropdown-menu-label","data-inset":o,className:r,...a}),e[6]=o,e[7]=a,e[8]=r,e[9]=d):d=e[9],d}function I({className:n,inset:e,variant:t="default",...o}){return s(i.Item,{"data-slot":"dropdown-menu-item","data-inset":e,"data-variant":t,className:u("group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-md px-2 py-2 text-xs outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:ps-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",n),...o})}function _(n){const e=c(15);let t,o,a,r,d;e[0]!==n?({className:a,children:o,checked:t,inset:r,...d}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=a,e[4]=r,e[5]=d):(t=e[1],o=e[2],a=e[3],r=e[4],d=e[5]);let l;e[6]!==a?(l=u("relative flex cursor-default items-center gap-2 rounded-md py-2 pe-8 ps-2 text-xs outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:ps-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",a),e[6]=a,e[7]=l):l=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=s("span",{className:"pointer-events-none absolute end-2 flex items-center justify-center","data-slot":"dropdown-menu-checkbox-item-indicator",children:s(i.CheckboxItemIndicator,{children:s(m,{icon:g,strokeWidth:2})})}),e[8]=f):f=e[8];let p;return e[9]!==t||e[10]!==o||e[11]!==r||e[12]!==d||e[13]!==l?(p=v(i.CheckboxItem,{"data-slot":"dropdown-menu-checkbox-item","data-inset":r,className:l,checked:t,...d,children:[f,o]}),e[9]=t,e[10]=o,e[11]=r,e[12]=d,e[13]=l,e[14]=p):p=e[14],p}function C(n){const e=c(8);let t,o;e[0]!==n?({className:t,...o}=n,e[0]=n,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let a;e[3]!==t?(a=u("-mx-1 h-px bg-border",t),e[3]=t,e[4]=a):a=e[4];let r;return e[5]!==o||e[6]!==a?(r=s(i.Separator,{"data-slot":"dropdown-menu-separator",className:a,...o}),e[5]=o,e[6]=a,e[7]=r):r=e[7],r}export{z as D,y as a,I as b,D as c,N as d,M as e,_ as f,C as g};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as h}from"react/compiler-runtime";import{c as v}from"./utils-bhneXptQ.mjs";import{jsx as a,jsxs as u}from"react/jsx-runtime";const y=g=>{const e=h(19),{action:o,className:f,description:c,icon:m,testId:x,title:p}=g;let t;e[0]!==f?(t=v("flex flex-col items-center justify-center gap-3 rounded-lg border border-dashed border-border px-6 py-14 text-center",f),e[0]=f,e[1]=t):t=e[1];let s;e[2]!==m?(s=m!==void 0&&a("span",{className:"flex size-10 items-center justify-center rounded-lg bg-muted text-muted-foreground [&_svg]:size-5",children:m}),e[2]=m,e[3]=s):s=e[3];let l;e[4]!==p?(l=a("p",{className:"text-sm font-medium text-foreground",children:p}),e[4]=p,e[5]=l):l=e[5];let r;e[6]!==c?(r=c!==void 0&&a("p",{className:"max-w-sm text-sm text-muted-foreground",children:c}),e[6]=c,e[7]=r):r=e[7];let i;e[8]!==l||e[9]!==r?(i=u("div",{className:"flex flex-col gap-1",children:[l,r]}),e[8]=l,e[9]=r,e[10]=i):i=e[10];let d;e[11]!==o?(d=o!==void 0&&a("div",{className:"mt-1 flex items-center gap-2",children:o}),e[11]=o,e[12]=d):d=e[12];let n;return e[13]!==t||e[14]!==s||e[15]!==i||e[16]!==d||e[17]!==x?(n=u("div",{className:t,"data-testid":x,children:[s,i,d]}),e[13]=t,e[14]=s,e[15]=i,e[16]=d,e[17]=x,e[18]=n):n=e[18],n};export{y as E};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as A}from"react/compiler-runtime";import{flattenHint as I}from"@lunora/errors";import{useT as O}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{e as j,a as q,b as E}from"./internal-Df43vQI0.mjs";import{o as H}from"./recording-client-CyFiAE2l.mjs";import{u as S}from"./operation-console-provider-DoloEvon.mjs";import{A as T}from"./alert-PB5W11MM.mjs";import{jsx as v,jsxs as U}from"react/jsx-runtime";const G=y=>{const e=A(38),{className:w,error:t,testId:N}=y,g=O(),o=S();let s,l,i,n,a,c,r,m;if(e[0]!==w||e[1]!==t||e[2]!==o||e[3]!==N){const k=j(t);let h;e[12]!==t?(h=q(t),e[12]=t,e[13]=h):h=e[13],l=h;let b;e[14]!==t?(b=H(t),e[14]=t,e[15]=b):b=e[15];const C=b;let x;e[16]!==o||e[17]!==C?(x=()=>{o?.openConsole({errorsOnly:!0,seq:C})},e[16]=o,e[17]=C,e[18]=x):x=e[18],i=x,s=T,n=w,a=N,c="destructive";let u;e[19]!==t?(u=E(t),e[19]=t,e[20]=u):u=e[20],e[21]!==u?(r=v("p",{className:"font-medium",children:u}),e[21]=u,e[22]=r):r=e[22],m=k===void 0?null:v("p",{className:"mt-1 whitespace-pre-wrap text-xs opacity-90",children:I(k)}),e[0]=w,e[1]=t,e[2]=o,e[3]=N,e[4]=s,e[5]=l,e[6]=i,e[7]=n,e[8]=a,e[9]=c,e[10]=r,e[11]=m}else s=e[4],l=e[5],i=e[6],n=e[7],a=e[8],c=e[9],r=e[10],m=e[11];let f;e[23]!==l?(f=l===void 0?null:v("a",{"aria-label":"View documentation for this error",className:"mt-1 inline-block text-xs underline",href:l,rel:"noreferrer",target:"_blank",children:"View error docs"}),e[23]=l,e[24]=f):f=e[24];let p;e[25]!==o||e[26]!==i||e[27]!==g?(p=o===void 0?null:v("button",{className:"mt-1 block text-xs underline outline-none focus-visible:ring-1 focus-visible:ring-ring","data-testid":"error-show-in-console",onClick:i,type:"button",children:g("Show in console")}),e[25]=o,e[26]=i,e[27]=g,e[28]=p):p=e[28];let d;return e[29]!==s||e[30]!==n||e[31]!==a||e[32]!==c||e[33]!==r||e[34]!==m||e[35]!==f||e[36]!==p?(d=U(s,{className:n,testId:a,variant:c,children:[r,m,f,p]}),e[29]=s,e[30]=n,e[31]=a,e[32]=c,e[33]=r,e[34]=m,e[35]=f,e[36]=p,e[37]=d):d=e[37],d};export{G as E};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{c as E}from"react/compiler-runtime";import{useState as A,useEffect as Y}from"react";import{ConfirmButton as z}from"./ConfirmButton-DU4p72Er.mjs";import{D as Q,a as I,b as v,c as H,d as P,e as V,f as U,g as q}from"./dropdown-menu-jLZenfWH.mjs";import{M as X}from"./modal-shell-CDztwLnv.mjs";import{useT as R}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{k as B,g as Z,j as W,f as ee}from"./internal-Df43vQI0.mjs";import{C as L}from"./control-button-BOZ5K-FC.mjs";import{jsx as u,jsxs as $}from"react/jsx-runtime";const F=l=>`"${l.replaceAll('"','""')}"`,te=/["\n\r,]/u,le=/^[=+\-@\t\r]/u,J=l=>{if(l==null)return"";let e;return typeof l=="string"?e=le.test(l)?` ${l}`:l:typeof l=="number"||typeof l=="boolean"||typeof l=="bigint"?e=String(l):e=B(l),te.test(e)?`"${e.replaceAll('"','""')}"`:e},ne=(l,e)=>{const n=l.map(t=>J(t)).join(","),o=e.map(t=>l.map(r=>J(t[r])).join(","));return[n,...o].join(`
|
|
2
|
+
`)},oe=l=>JSON.stringify(l,W,2),G=500,K=l=>l==null?"NULL":typeof l=="number"?Number.isFinite(l)?String(l):"NULL":typeof l=="bigint"?String(l):typeof l=="boolean"?l?"1":"0":`'${(typeof l=="string"?l:B(l)).replaceAll("'","''")}'`,D="__doc__",se=(l,e,n,o)=>{if(e.length===0||n.length===0)return"";const t=o?.includes(D)===!0&&!e.includes(D)?e.filter(c=>!o.includes(c)):void 0,r=t===void 0?e:o,i=(c,m)=>K(t===void 0||m!==D?c[m]:JSON.stringify(Object.fromEntries(t.map(a=>[a,c[a]])),W)),s=r.map(c=>F(c)).join(", "),f=[];for(let c=0;c<n.length;c+=G){const m=n.slice(c,c+G).map(a=>` (${r.map(d=>i(a,d)).join(", ")})`).join(`,
|
|
3
|
+
`);f.push(`INSERT INTO ${F(l)} (${s}) VALUES
|
|
4
|
+
${m};`)}return f.join(`
|
|
5
|
+
|
|
6
|
+
`)},M=(l,e,n)=>{if(!("document"in globalThis))return;const o=globalThis.URL.createObjectURL(new globalThis.Blob([e],{type:n})),t=globalThis.document.createElement("a");t.href=o,t.download=l,globalThis.document.body.append(t),t.click(),t.remove(),globalThis.URL.revokeObjectURL(o)},ie=l=>{const e=E(37),{columns:n,name:o,rows:t,sqlColumns:r}=l,i=R();let s;e[0]!==n||e[1]!==o||e[2]!==t?(s=()=>{M(`${o}.csv`,ne(n,t),"text/csv;charset=utf-8")},e[0]=n,e[1]=o,e[2]=t,e[3]=s):s=e[3];const f=s;let c;e[4]!==o||e[5]!==t?(c=()=>{M(`${o}.json`,oe(t),"application/json")},e[4]=o,e[5]=t,e[6]=c):c=e[6];const m=c;let a;e[7]!==n||e[8]!==o||e[9]!==t||e[10]!==r?(a=()=>{M(`${o}.sql`,se(o,n,t,r),"application/sql;charset=utf-8")},e[7]=n,e[8]=o,e[9]=t,e[10]=r,e[11]=a):a=e[11];const d=a,k=t.length===0;let p;e[12]!==k?(p=u(Q,{className:L,"data-testid":"grid-export",disabled:k,title:"Exports only the rows loaded on the current page, not the whole table",children:"Export page"}),e[12]=k,e[13]=p):p=e[13];let C;e[14]===Symbol.for("react.memo_cache_sentinel")?(C=u(I,{children:"Export loaded rows"}),e[14]=C):C=e[14];let g;e[15]!==i?(g=i("CSV"),e[15]=i,e[16]=g):g=e[16];let y;e[17]!==f||e[18]!==g?(y=u(v,{"data-testid":"grid-export-csv",onClick:f,children:g}),e[17]=f,e[18]=g,e[19]=y):y=e[19];let N;e[20]!==i?(N=i("JSON"),e[20]=i,e[21]=N):N=e[21];let x;e[22]!==m||e[23]!==N?(x=u(v,{"data-testid":"grid-export-json",onClick:m,children:N}),e[22]=m,e[23]=N,e[24]=x):x=e[24];let S;e[25]!==i?(S=i("SQL"),e[25]=i,e[26]=S):S=e[26];let h;e[27]!==d||e[28]!==S?(h=u(v,{"data-testid":"grid-export-sql",onClick:d,children:S}),e[27]=d,e[28]=S,e[29]=h):h=e[29];let b;e[30]!==x||e[31]!==h||e[32]!==y?(b=$(H,{align:"end",children:[C,y,x,h]}),e[30]=x,e[31]=h,e[32]=y,e[33]=b):b=e[33];let w;return e[34]!==b||e[35]!==p?(w=$(P,{children:[p,b]}),e[34]=b,e[35]=p,e[36]=w):w=e[36],w},re=l=>{const e=E(9),{column:n}=l;let o;e[0]!==n?(o=()=>{n.toggleVisibility()},e[0]=n,e[1]=o):o=e[1];const t=o;let r;e[2]!==n?(r=n.getIsVisible(),e[2]=n,e[3]=r):r=e[3];const i=`grid-column-${n.id}`;let s;return e[4]!==n.id||e[5]!==t||e[6]!==r||e[7]!==i?(s=u(U,{checked:r,closeOnClick:!1,"data-testid":i,onCheckedChange:t,children:n.id}),e[4]=n.id,e[5]=t,e[6]=r,e[7]=i,e[8]=s):s=e[8],s},ce=[],ae=({backRelations:l=ce,enabledBackRelations:e,onToggleBackRelation:n,table:o})=>{const t=R(),r=o.getIsAllColumnsVisible(),i=()=>{o.toggleAllColumnsVisible(!r)};return $(P,{children:[u(Q,{className:L,"data-testid":"grid-columns",children:t("Columns")}),$(H,{align:"end",className:"max-h-80 overflow-y-auto",children:[$(V,{children:[u(I,{children:t("Columns")}),u(U,{checked:r,closeOnClick:!1,"data-testid":"grid-columns-all",onCheckedChange:i,children:t(r?"Hide all":"Show all")}),u(q,{}),o.getAllLeafColumns().filter(s=>!s.id.startsWith("__back__:")).map(s=>u(re,{column:s},s.id))]}),l.length>0&&n!==void 0&&$(V,{children:[u(q,{}),u(I,{children:t("Related")}),l.map(s=>{const f=`${s.table}.${s.column}`;return u(U,{checked:e?.has(f)===!0,closeOnClick:!1,"data-testid":`grid-back-relation-${f}`,onCheckedChange:()=>{n(f)},children:`← ${s.table}.${s.column}`},f)})]})]})]})},de=l=>{const e=E(19),{count:n,editable:o,onClear:t,onDelete:r}=l,i=R();let s;e[0]!==n||e[1]!==i?(s=i("{count} selected",{count:n}),e[0]=n,e[1]=i,e[2]=s):s=e[2];let f;e[3]!==s?(f=u("span",{className:"font-medium tabular-nums","data-testid":"grid-selection-count",children:s}),e[3]=s,e[4]=f):f=e[4];let c;e[5]!==i?(c=i("Clear"),e[5]=i,e[6]=c):c=e[6];let m;e[7]!==t||e[8]!==c?(m=u("button",{className:L,"data-testid":"grid-selection-clear",onClick:t,type:"button",children:c}),e[7]=t,e[8]=c,e[9]=m):m=e[9];let a;e[10]!==n||e[11]!==o||e[12]!==r||e[13]!==i?(a=o&&u(z,{confirmLabel:i("Delete {count} rows and everything that cascades?",{count:n}),onConfirm:r,testId:"grid-selection-delete",children:i("Delete {count}",{count:n})}),e[10]=n,e[11]=o,e[12]=r,e[13]=i,e[14]=a):a=e[14];let d;return e[15]!==f||e[16]!==m||e[17]!==a?(d=$("div",{className:"flex items-center gap-2 rounded-md border border-border bg-accent/40 px-3 py-1.5 text-xs","data-testid":"grid-selection-bar",children:[f,m,a]}),e[15]=f,e[16]=m,e[17]=a,e[18]=d):d=e[18],d},fe=/\.(?:avif|bmp|gif|ico|jpe?g|png|svg|webp)$/iu,me=l=>{const e=E(9),{bucket:n,objectKey:o,resolveUrl:t}=l,[r,i]=A(null),[s,f]=A(!1);let c,m;e[0]!==n||e[1]!==o||e[2]!==t?(c=()=>{const p={cancelled:!1};return ee((async()=>{try{const C=await t(o,n);p.cancelled||i(C)}catch{p.cancelled||f(!0)}})()),()=>{p.cancelled=!0}},m=[n,o,t],e[0]=n,e[1]=o,e[2]=t,e[3]=c,e[4]=m):(c=e[3],m=e[4]),Y(c,m);let a;e[5]===Symbol.for("react.memo_cache_sentinel")?(a=()=>{f(!0)},e[5]=a):a=e[5];const d=a;if(r===null||s)return null;let k;return e[6]!==o||e[7]!==r?(k=u("div",{className:"flex max-h-64 shrink-0 items-center justify-center overflow-hidden rounded-md border border-border bg-muted/30",children:u("img",{alt:o,className:"max-h-64 object-contain","data-testid":"grid-cell-image",onError:d,src:r})}),e[6]=o,e[7]=r,e[8]=k):k=e[8],k},Se=l=>{const e=E(37),{bucket:n,column:o,onClose:t,resolveUrl:r,value:i}=l,s=R(),[f,c]=A(!1);let m;e[0]!==i?(m=B(i),e[0]=i,e[1]=m):m=e[1];const a=m;let d;e[2]!==a?(d=()=>{Z(a)&&c(!0)},e[2]=a,e[3]=d):d=e[3];const k=d;let p;e[4]!==s?(p=s("Cell value"),e[4]=s,e[5]=p):p=e[5];let C;e[6]!==o?(C=u("h2",{className:"truncate font-mono text-sm font-semibold text-foreground",children:o}),e[6]=o,e[7]=C):C=e[7];let g;e[8]!==f||e[9]!==s?(g=s(f?"Copied":"Copy"),e[8]=f,e[9]=s,e[10]=g):g=e[10];let y;e[11]!==k||e[12]!==g?(y=u("button",{className:L,"data-testid":"grid-cell-copy",onClick:k,type:"button",children:g}),e[11]=k,e[12]=g,e[13]=y):y=e[13];let N;e[14]!==s?(N=s("Close"),e[14]=s,e[15]=N):N=e[15];let x;e[16]!==t||e[17]!==N?(x=u("button",{className:L,"data-testid":"grid-cell-close",onClick:t,type:"button",children:N}),e[16]=t,e[17]=N,e[18]=x):x=e[18];let S;e[19]!==y||e[20]!==x?(S=$("div",{className:"flex items-center gap-1.5",children:[y,x]}),e[19]=y,e[20]=x,e[21]=S):S=e[21];let h;e[22]!==C||e[23]!==S?(h=$("div",{className:"flex items-center justify-between",children:[C,S]}),e[22]=C,e[23]=S,e[24]=h):h=e[24];let b;e[25]!==n||e[26]!==r||e[27]!==i?(b=r!==void 0&&typeof i=="string"&&fe.test(i)&&u(me,{bucket:n,objectKey:i,resolveUrl:r}),e[25]=n,e[26]=r,e[27]=i,e[28]=b):b=e[28];let w;e[29]!==a?(w=u("pre",{className:"min-h-0 flex-1 overflow-auto rounded-md border border-border bg-muted/30 p-3 font-mono text-xs whitespace-pre-wrap","data-testid":"grid-cell-value",children:a}),e[29]=a,e[30]=w):w=e[30];let _;return e[31]!==t||e[32]!==h||e[33]!==b||e[34]!==w||e[35]!==p?(_=$(X,{className:"max-h-[70vh] w-[min(40rem,90vw)]",label:p,onClose:t,panelTestId:"grid-cell-dialog",testId:"grid-cell-dialog-overlay",variant:"dialog",children:[h,b,w]}),e[31]=t,e[32]=h,e[33]=b,e[34]=w,e[35]=p,e[36]=_):_=e[36],_},ke=l=>{const e=E(37),{backRelations:n,enabledBackRelations:o,onToggleBackRelation:t,columns:r,editable:i,name:s,onBulkDelete:f,onToggleTranspose:c,rows:m,sqlColumns:a,table:d,transposed:k}=l,p=R();let C;e[0]!==d?(C=d.getSelectedRowModel(),e[0]=d,e[1]=C):C=e[1];const g=C.rows;let y;e[2]!==d?(y=()=>{d.resetRowSelection()},e[2]=d,e[3]=y):y=e[3];const N=y;let x;e[4]!==f||e[5]!==g||e[6]!==d?(x=()=>{f(g.map(ue)),d.resetRowSelection()},e[4]=f,e[5]=g,e[6]=d,e[7]=x):x=e[7];const S=x;let h;e[8]!==r||e[9]!==s||e[10]!==m||e[11]!==a?(h=u(ie,{columns:r,name:s,rows:m,sqlColumns:a}),e[8]=r,e[9]=s,e[10]=m,e[11]=a,e[12]=h):h=e[12];let b;e[13]!==n||e[14]!==o||e[15]!==t||e[16]!==d?(b=u(ae,{backRelations:n,enabledBackRelations:o,onToggleBackRelation:t,table:d}),e[13]=n,e[14]=o,e[15]=t,e[16]=d,e[17]=b):b=e[17];let w;e[18]!==p?(w=p("Swap rows and columns"),e[18]=p,e[19]=w):w=e[19];let _;e[20]!==p?(_=p("Transpose"),e[20]=p,e[21]=_):_=e[21];let j;e[22]!==c||e[23]!==w||e[24]!==_||e[25]!==k?(j=u("button",{"aria-pressed":k,className:L,"data-testid":"grid-transpose",onClick:c,title:w,type:"button",children:_}),e[22]=c,e[23]=w,e[24]=_,e[25]=k,e[26]=j):j=e[26];let T;e[27]!==i||e[28]!==N||e[29]!==S||e[30]!==g.length?(T=g.length>0&&u(de,{count:g.length,editable:i,onClear:N,onDelete:S}),e[27]=i,e[28]=N,e[29]=S,e[30]=g.length,e[31]=T):T=e[31];let O;return e[32]!==h||e[33]!==b||e[34]!==j||e[35]!==T?(O=$("div",{className:"flex flex-wrap items-center gap-1.5","data-testid":"grid-actions",children:[h,b,j,T]}),e[32]=h,e[33]=b,e[34]=j,e[35]=T,e[36]=O):O=e[36],O};function ue(l){return l.id}export{Se as C,ie as E,ke as G,de as S};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as k}from"react/compiler-runtime";import{useT as M}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{jsxs as $,jsx as p}from"react/jsx-runtime";const w=[25,50,100,250],C=f=>{const e=k(18),{onChange:u,options:m,prefix:a,value:x}=f,t=M();let c;e[0]!==u?(c=h=>{u(Number.parseInt(h.target.value,10))},e[0]=u,e[1]=c):c=e[1];const n=c,b=`${a}-page-size`;let r;e[2]!==t?(r=t("Rows per page"),e[2]=t,e[3]=r):r=e[3];let o;e[4]!==r?(o=p("span",{children:r}),e[4]=r,e[5]=o):o=e[5];const d=`${a}-page-size`,l=`${a}-page-size`;let s;e[6]!==m?(s=m.map(E),e[6]=m,e[7]=s):s=e[7];let i;e[8]!==n||e[9]!==d||e[10]!==l||e[11]!==s||e[12]!==x?(i=p("select",{className:"h-6 rounded-md border border-border bg-background px-1 tabular-nums outline-none focus-visible:border-ring","data-testid":d,id:l,onChange:n,value:x,children:s}),e[8]=n,e[9]=d,e[10]=l,e[11]=s,e[12]=x,e[13]=i):i=e[13];let g;return e[14]!==b||e[15]!==o||e[16]!==i?(g=$("label",{className:"flex items-center gap-1.5",htmlFor:b,children:[o,i]}),e[14]=b,e[15]=o,e[16]=i,e[17]=g):g=e[17],g},j=f=>{const e=k(25),{onJump:u,page:m,pages:a,prefix:x}=f,t=M();let c;e[0]!==u||e[1]!==a?(c=N=>{const P=Number.parseInt(N,10);Number.isNaN(P)||u(Math.min(Math.max(1,P),Math.max(1,a)))},e[0]=u,e[1]=a,e[2]=c):c=e[2];const n=c;let b;e[3]!==n?(b=N=>{N.key==="Enter"&&n(N.currentTarget.value)},e[3]=n,e[4]=b):b=e[4];const r=b;let o;e[5]!==n?(o=N=>{n(N.currentTarget.value)},e[5]=n,e[6]=o):o=e[6];const d=o;let l;e[7]!==t?(l=t("Page"),e[7]=t,e[8]=l):l=e[8];let s;e[9]!==t?(s=t("Page"),e[9]=t,e[10]=s):s=e[10];const i=`${x}-page-jump`,g=Math.max(1,a);let h;e[11]!==d||e[12]!==r||e[13]!==m||e[14]!==s||e[15]!==i||e[16]!==g?(h=p("input",{"aria-label":s,className:"h-6 w-12 rounded-md border border-border bg-background px-1 text-center tabular-nums outline-none focus-visible:border-ring","data-testid":i,defaultValue:m,max:g,min:1,onBlur:d,onKeyDown:r,type:"number"},m),e[11]=d,e[12]=r,e[13]=m,e[14]=s,e[15]=i,e[16]=g,e[17]=h):h=e[17];let v;e[18]!==a||e[19]!==t?(v=t("of {pages}",{pages:a}),e[18]=a,e[19]=t,e[20]=v):v=e[20];let y;return e[21]!==l||e[22]!==h||e[23]!==v?(y=$("span",{className:"flex items-center gap-1.5 tabular-nums",children:[l,h,v]}),e[21]=l,e[22]=h,e[23]=v,e[24]=y):y=e[24],y},_=({hasNext:f,hasPrevious:e,onJumpToPage:u,onNext:m,onPageSizeChange:a,onPrevious:x,pageSize:t,pageSizeOptions:c=w,prefix:n,rangeEnd:b,rangeStart:r,total:o})=>{const d=M(),l="rounded-md border border-border px-2.5 py-1 text-xs font-medium text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50",s=t!==void 0&&t>0?Math.max(1,Math.ceil(o/t)):1,i=t!==void 0&&t>0?Math.floor(Math.max(0,r-1)/t)+1:1;return $("div",{className:"flex w-full items-center justify-between gap-3 text-xs text-muted-foreground",children:[$("div",{className:"flex items-center gap-3",children:[t!==void 0&&a!==void 0&&p(C,{onChange:a,options:c,prefix:n,value:t}),p("span",{className:"tabular-nums","data-testid":`${n}-page-info`,children:d("{rangeStart}-{rangeEnd} of {total}",{rangeEnd:b,rangeStart:r,total:o})})]}),$("div",{className:"flex items-center gap-3",children:[p("button",{className:l,"data-testid":`${n}-prev`,disabled:!e,onClick:x,type:"button",children:d("Previous")}),t!==void 0&&u!==void 0&&p(j,{onJump:u,page:i,pages:s,prefix:n}),p("button",{className:l,"data-testid":`${n}-next`,disabled:!f,onClick:m,type:"button",children:d("Next")})]})]})};function E(f){return p("option",{value:f,children:f},f)}export{_ as G};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{c as A}from"react/compiler-runtime";import{useNavigate as Je}from"@tanstack/react-router";import{useState as Fe,useEffect as Ue,Suspense as et,lazy as tt}from"react";import{B as Ye}from"./badge-r_5B4LHP.mjs";import{C as B,a as Ze}from"./card--2hKx4L2.mjs";import{E as st}from"./empty-state-D7jEML_T.mjs";import{u as ve}from"./use-admin-query-tlBof8Yg.mjs";import{useT as I}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{ADMIN_FUNCTIONS as ye}from"./ADMIN_FUNCTIONS-B8yyk5BX.mjs";import{c as nt,f as Ne,d as lt,w as at,g as rt,m as ot}from"./internal-Df43vQI0.mjs";import{c as Xe}from"./utils-bhneXptQ.mjs";import{deriveInsights as it}from"./DEFAULT_INSIGHT_THRESHOLDS-D5YMT0gM.mjs";import{useLunora as qe}from"@lunora/react";import{jsx as l,jsxs as h}from"react/jsx-runtime";import{B as Ve}from"./button-q0UYSmrn.mjs";const ct=nt(ye.studioFeatures),Ke={analytics:!0,auth:!0,containers:!0,flags:!0,kv:!0,mail:!0,notifications:!0,payments:!0,queues:!0,scheduler:!0,storage:!0,vectors:!0,workflows:!0},dt=t=>{if(t===null||typeof t!="object")return;const{id:e,name:n,unsupported:s}=t;if(!(typeof e!="string"||typeof n!="string"||!Array.isArray(s)))return{id:e,name:n,unsupported:s.filter(a=>typeof a=="string")}},ut=t=>{if(t===null||typeof t!="object")return Ke;const e=t,n=s=>typeof e[s]=="boolean"?e[s]:!0;return{analytics:n("analytics"),auth:n("auth"),containers:n("containers"),flags:n("flags"),kv:n("kv"),mail:n("mail"),notifications:n("notifications"),payments:n("payments"),platform:dt(e.platform),queues:n("queues"),scheduler:n("scheduler"),storage:n("storage"),vectors:n("vectors"),workflows:n("workflows")}},mt={...Ke,settled:!1},ft=()=>{const t=A(3),e=qe(),[n,s]=Fe(void 0);let a,r;return t[0]!==e?(a=()=>{const i=new AbortController;return Ne((async()=>{let o;try{o={...ut(await e.query(ct,{},lt(""))),settled:!0}}catch{o={...Ke,settled:!0}}i.signal.aborted||s({client:e,features:o})})()),()=>{i.abort()}},r=[e],t[0]=e,t[1]=a,t[2]=r):(a=t[1],r=t[2]),Ue(a,r),n?.client===e?n.features:mt},pt=()=>{const t=A(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=l("svg",{"aria-hidden":"true",className:"size-4 text-muted-foreground",fill:"none",stroke:"currentColor",strokeWidth:1.6,viewBox:"0 0 24 24",children:l("path",{d:"m9 6 6 6-6 6",strokeLinecap:"round",strokeLinejoin:"round"})}),t[0]=e):e=t[0],e},ht=t=>{const e=A(24),{group:n}=t,s=I(),a=Je();let r;e[0]!==n.tab||e[1]!==a?(r=()=>{Ne(a({to:`/${n.tab}`}))},e[0]=n.tab,e[1]=a,e[2]=r):r=e[2];const i=r,o=n.bindings.length;let c;e[3]!==n.label?(c=l("span",{className:"text-sm font-medium text-foreground",children:n.label}),e[3]=n.label,e[4]=c):c=e[4];let u;e[5]===Symbol.for("react.memo_cache_sentinel")?(u=l(pt,{}),e[5]=u):u=e[5];let m;e[6]!==c?(m=h("div",{className:"flex items-center justify-between",children:[c,u]}),e[6]=c,e[7]=m):m=e[7];let d;e[8]!==o||e[9]!==s?(d=o===1?s("1 binding"):s("{count} bindings",{count:o}),e[8]=o,e[9]=s,e[10]=d):d=e[10];let f;e[11]!==d?(f=l("span",{className:"text-xs text-muted-foreground",children:d}),e[11]=d,e[12]=f):f=e[12];let p;e[13]!==o||e[14]!==n.bindings?(p=o>0&&l("div",{className:"flex flex-wrap gap-1.5",children:n.bindings.map(bt)}),e[13]=o,e[14]=n.bindings,e[15]=p):p=e[15];let g;e[16]!==m||e[17]!==f||e[18]!==p?(g=h(Ze,{className:"flex flex-col gap-2 py-4",children:[m,f,p]}),e[16]=m,e[17]=f,e[18]=p,e[19]=g):g=e[19];let x;return e[20]!==n.testId||e[21]!==i||e[22]!==g?(x=l(B,{className:"cursor-pointer gap-0 py-0 transition-colors hover:bg-muted/40","data-testid":n.testId,onClick:i,children:g}),e[20]=n.testId,e[21]=i,e[22]=g,e[23]=x):x=e[23],x},We=["kv","files","vectors"],gt=(t,e)=>[...t.filter(n=>n.tab!==e.tab),e].toSorted((n,s)=>We.indexOf(n.tab)-We.indexOf(s.tab)),xt=()=>{const t=A(19),e=qe(),n=ft(),s=I();let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a=[],t[0]=a):a=t[0];const[r,i]=Fe(a);let o,c;if(t[1]!==e||t[2]!==n.kv||t[3]!==n.storage||t[4]!==n.vectors||t[5]!==s?(o=()=>{const g={cancelled:!1},x=[{enabled:n.kv,label:s("KV Namespaces"),load:async()=>(await e.listKvNamespaces()).map(yt),tab:"kv",testId:"home-binding-kv"},{enabled:n.storage,label:s("R2 Buckets"),load:()=>e.listStorageBuckets(),tab:"files",testId:"home-binding-r2"},{enabled:n.vectors,label:s("Vectorize Indexes"),load:async()=>(await e.listVectorIndexes()).map(vt),tab:"vectors",testId:"home-binding-vectors"}];for(const b of x)b.enabled&&Ne((async()=>{try{const v=await b.load();if(!g.cancelled){const _={bindings:v,label:b.label,tab:b.tab,testId:b.testId};i(S=>gt(S,_))}}catch{}})());return()=>{g.cancelled=!0}},c=[e,n.kv,n.storage,n.vectors,s],t[1]=e,t[2]=n.kv,t[3]=n.storage,t[4]=n.vectors,t[5]=s,t[6]=o,t[7]=c):(o=t[6],c=t[7]),Ue(o,c),r.length===0)return null;let u;t[8]!==s?(u=s("Bindings"),t[8]=s,t[9]=u):u=t[9];let m;t[10]!==u?(m=l("h2",{className:"text-sm font-semibold tracking-tight text-foreground",children:u}),t[10]=u,t[11]=m):m=t[11];let d;t[12]!==r?(d=r.map(Nt),t[12]=r,t[13]=d):d=t[13];let f;t[14]!==d?(f=l("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:d}),t[14]=d,t[15]=f):f=t[15];let p;return t[16]!==m||t[17]!==f?(p=h("section",{className:"flex flex-col gap-3","data-testid":"home-bindings",children:[m,f]}),t[16]=m,t[17]=f,t[18]=p):p=t[18],p};function bt(t){return l(Ye,{variant:"secondary",children:t},t)}function yt(t){return t.binding}function vt(t){return t.name}function Nt(t){return l(ht,{group:t},t.tab)}const _t=[{name:"lunora_list_functions",summary:"list every query, mutation, and action with its path"},{name:"lunora_list_tables",summary:"list the schema's tables"},{name:"lunora_get_function_schema",summary:"read a function's argument JSON Schema before calling it"},{name:"lunora_run_query",summary:"run a read-only query"},{name:"lunora_run_mutation",summary:"run a mutation — writes; only when LUNORA_MCP_ALLOW_WRITES is set"},{name:"lunora_run_action",summary:"run an action — writes/effects; only when LUNORA_MCP_ALLOW_WRITES is set"}],St=t=>JSON.stringify({mcpServers:{lunora:{args:["-y","@lunora/mcp"],command:"npx",env:{LUNORA_ADMIN_TOKEN:"<your-admin-token>",LUNORA_URL:t}}}},null,2),kt=t=>{const e=_t.map(n=>`- ${n.name} — ${n.summary}`).join(`
|
|
2
|
+
`);return[`You have a Lunora MCP server connected to the deployment at ${t}.`,"It exposes this backend's functions and schema so you can inspect and operate it:",e,"",`Start by calling lunora_list_functions and lunora_list_tables to learn what exists, then lunora_get_function_schema before any run call. The full HTTP API is also documented at ${t}/_lunora/admin/openapi (that endpoint needs the same admin token the MCP server is configured with).`].join(`
|
|
3
|
+
`)},wt=1500,Ct=()=>{const t=A(40),e=I(),{url:n}=qe();let s;t[0]!==n?(s=at(n),t[0]=n,t[1]=s):s=t[1];const a=s,[r,i]=Fe(null);let o,c;t[2]!==r?(o=()=>{if(r===null)return;const M=globalThis.setTimeout(()=>{i(null)},wt);return()=>{globalThis.clearTimeout(M)}},c=[r],t[2]=r,t[3]=o,t[4]=c):(o=t[3],c=t[4]),Ue(o,c);let u;t[5]===Symbol.for("react.memo_cache_sentinel")?(u=(M,T)=>{rt(T)&&i(M)},t[5]=u):u=t[5];const m=u;let d;t[6]!==a?(d=()=>{m("config",St(a))},t[6]=a,t[7]=d):d=t[7];const f=d;let p;t[8]!==a?(p=()=>{m("prompt",kt(a))},t[8]=a,t[9]=p):p=t[9];const g=p;let x;t[10]!==e?(x=e("Connect an AI agent"),t[10]=e,t[11]=x):x=t[11];let b;t[12]!==x?(b=l("span",{className:"text-sm font-medium text-foreground",children:x}),t[12]=x,t[13]=b):b=t[13];let v;t[14]!==e?(v=e("Drive this deployment from an AI agent over the Model Context Protocol — it can list functions and tables, read schemas, and run read-only queries. Writes stay off unless you opt in."),t[14]=e,t[15]=v):v=t[15];let _;t[16]!==v?(_=l("span",{className:"text-xs text-muted-foreground",children:v}),t[16]=v,t[17]=_):_=t[17];let S;t[18]!==b||t[19]!==_?(S=h("div",{className:"flex flex-col gap-1.5 p-4",children:[b,_]}),t[18]=b,t[19]=_,t[20]=S):S=t[20];let L;t[21]===Symbol.for("react.memo_cache_sentinel")?(L=l("code",{className:"font-mono text-xs text-muted-foreground","data-testid":"home-connect-agent-command",children:"npx -y @lunora/mcp"}),t[21]=L):L=t[21];let y;t[22]!==r||t[23]!==e?(y=e(r==="config"?"Copied":"Copy MCP config"),t[22]=r,t[23]=e,t[24]=y):y=t[24];let k;t[25]!==f||t[26]!==y?(k=l(Ve,{"data-testid":"home-connect-agent-copy-config",onClick:f,size:"xs",variant:"outline",children:y}),t[25]=f,t[26]=y,t[27]=k):k=t[27];let w;t[28]!==r||t[29]!==e?(w=e(r==="prompt"?"Copied":"Copy agent prompt"),t[28]=r,t[29]=e,t[30]=w):w=t[30];let C;t[31]!==g||t[32]!==w?(C=l(Ve,{"data-testid":"home-connect-agent-copy-prompt",onClick:g,size:"xs",variant:"outline",children:w}),t[31]=g,t[32]=w,t[33]=C):C=t[33];let N;t[34]!==k||t[35]!==C?(N=h("div",{className:"flex flex-col gap-3 border-t border-border bg-muted/50 px-4 py-3",children:[L,h("div",{className:"flex flex-wrap gap-2",children:[k,C]})]}),t[34]=k,t[35]=C,t[36]=N):N=t[36];let $;return t[37]!==S||t[38]!==N?($=h(B,{className:"gap-0 py-0","data-testid":"home-connect-agent",children:[S,N]}),t[37]=S,t[38]=N,t[39]=$):$=t[39],$},At=tt(()=>import("../packem_chunks/sparkline.mjs")),$t=(t,e)=>{if(e==null)return t("cache not enabled");const n=e.hits+e.misses;return n===0?t("no cache traffic yet"):`${Math.round(e.hits/n*100).toString()}% ${t("cache hit")}`},Pe=t=>{if(t<1e3)return`${String(Math.round(t))}ms`;const e=t>=1e4?0:1;return`${(t/1e3).toFixed(e)}s`},Lt=(t,e)=>{const n=Math.max(0,Math.round((e-t)/1e3));if(n<60)return`${String(n)}s ago`;const s=Math.round(n/60);if(s<60)return`${String(s)}m ago`;const a=Math.round(s/60);return a<24?`${String(a)}h ago`:`${String(Math.round(a/24))}d ago`},Qe=(t,e)=>{if(t===void 0||t.length===0)return[];const n=new Map;for(const s of t)n.set(s.bucketMs,(n.get(s.bucketMs)??0)+s[e]);return[...n.entries()].toSorted(([s],[a])=>s-a).map(([,s])=>s)},He=(t,e=!0)=>{if(t.length<4)return null;const n=Math.floor(t.length/2),s=t.slice(0,n).reduce((i,o)=>i+o,0),a=t.slice(n).reduce((i,o)=>i+o,0);if(s===0)return null;const r=(a-s)/s*100;return{positive:e?r>=0:r<=0,text:`${r>=0?"+":""}${r.toFixed(1)}%`}},Te=t=>{const e=A(24),{delta:n,footer:s,label:a,trend:r,unit:i,value:o}=t,c=I();let u;e[0]!==a?(u=l("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:a}),e[0]=a,e[1]=u):u=e[1];let m;e[2]!==o?(m=l("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:o}),e[2]=o,e[3]=m):m=e[3];let d;e[4]!==i?(d=i!==void 0&&l("span",{className:"text-xs text-muted-foreground",children:i}),e[4]=i,e[5]=d):d=e[5];let f;e[6]!==m||e[7]!==d?(f=h("span",{className:"flex items-baseline gap-1.5",children:[m,d]}),e[6]=m,e[7]=d,e[8]=f):f=e[8];let p;e[9]!==r?(p=r!==void 0&&l(et,{fallback:l("div",{"aria-hidden":"true",className:"h-8 w-28"}),children:l(At,{data:r})}),e[9]=r,e[10]=p):p=e[10];let g;e[11]!==f||e[12]!==p?(g=h("div",{className:"flex items-center justify-between gap-3",children:[f,p]}),e[11]=f,e[12]=p,e[13]=g):g=e[13];let x;e[14]!==u||e[15]!==g?(x=h("div",{className:"flex flex-col gap-2.5 p-4",children:[u,g]}),e[14]=u,e[15]=g,e[16]=x):x=e[16];let b;e[17]!==n||e[18]!==s||e[19]!==c?(b=n==null?s!=null&&l("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5 text-[11px] text-muted-foreground",children:s}):h("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5 text-[11px]",children:[l("span",{className:Xe("font-semibold",n.positive?"text-success":"text-destructive"),children:n.text})," ",l("span",{className:"text-muted-foreground",children:c("vs. prev.")})]}),e[17]=n,e[18]=s,e[19]=c,e[20]=b):b=e[20];let v;return e[21]!==x||e[22]!==b?(v=h(B,{className:"justify-between gap-0 py-0",children:[x,b]}),e[21]=x,e[22]=b,e[23]=v):v=e[23],v},Mt=()=>{const t=A(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=l("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.8,viewBox:"0 0 24 24",children:l("path",{d:"m9 6 6 6-6 6"})}),t[0]=e):e=t[0],e},De=t=>{const e=A(7),{command:n,label:s}=t;let a;e[0]!==s?(a=l("div",{className:"p-4",children:l("span",{className:"text-sm font-medium text-foreground",children:s})}),e[0]=s,e[1]=a):a=e[1];let r;e[2]!==n?(r=l("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5",children:l("code",{className:"font-mono text-xs text-muted-foreground",children:n})}),e[2]=n,e[3]=r):r=e[3];let i;return e[4]!==a||e[5]!==r?(i=h(B,{className:"justify-between gap-0 py-0",children:[a,r]}),e[4]=a,e[5]=r,e[6]=i):i=e[6],i},Ge=t=>{const e=A(18),{count:n,onView:s,testId:a,title:r}=t,i=I();let o;e[0]!==r?(o=l("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:r}),e[0]=r,e[1]=o):o=e[1];let c;e[2]!==n||e[3]!==i?(c=n===null?l("span",{className:"text-xs text-muted-foreground",children:i("No data yet")}):l(Ye,{variant:n>0?"destructive":"success",children:n>0?n:i("All clear")}),e[2]=n,e[3]=i,e[4]=c):c=e[4];let u;e[5]!==o||e[6]!==c?(u=h("div",{className:"flex items-start justify-between gap-2 p-4",children:[o,c]}),e[5]=o,e[6]=c,e[7]=u):u=e[7];let m;e[8]!==i?(m=i("View"),e[8]=i,e[9]=m):m=e[9];let d;e[10]===Symbol.for("react.memo_cache_sentinel")?(d=l(Mt,{}),e[10]=d):d=e[10];let f;e[11]!==s||e[12]!==m?(f=h("button",{className:"flex items-center gap-1 border-t border-border bg-muted/50 px-4 py-2.5 text-[12px] font-medium text-foreground outline-none transition-colors hover:bg-muted focus-visible:bg-muted",onClick:s,type:"button",children:[m,d]}),e[11]=s,e[12]=m,e[13]=f):f=e[13];let p;return e[14]!==u||e[15]!==f||e[16]!==a?(p=h(B,{className:"justify-between gap-0 py-0","data-testid":a,children:[u,f]}),e[14]=u,e[15]=f,e[16]=a,e[17]=p):p=e[17],p},It=t=>{const e=A(7),{functions:n}=t,s=I();let a;if(e[0]!==n||e[1]!==s){const r=[...n].toSorted(Et).slice(0,5);let i;e[3]!==s?(i=s("Top functions"),e[3]=s,e[4]=i):i=e[4];let o;e[5]!==i?(o=l("div",{className:"border-b border-border px-4 py-3",children:l("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:i})}),e[5]=i,e[6]=o):o=e[6],a=h(B,{className:"gap-0 py-0","data-testid":"home-top-functions",children:[o,r.length===0?l("p",{className:"px-4 py-8 text-center text-xs text-muted-foreground",children:s("No functions called yet.")}):h("div",{className:"divide-y divide-border",children:[h("div",{className:"grid grid-cols-[1fr_auto_auto_auto] gap-4 px-4 py-1.5 font-mono text-[10px] tracking-wide text-muted-foreground uppercase",children:[l("span",{children:s("Function")}),l("span",{className:"text-end",children:s("Calls")}),l("span",{className:"w-12 text-end",children:s("Avg")}),l("span",{className:"w-8 text-end",children:s("Err")})]}),r.map(jt)]})]}),e[0]=n,e[1]=s,e[2]=a}else a=e[2];return a},Tt=t=>{const e=A(26),{subs:n}=t,s=I();let a;e[0]!==s?(a=s("Live connections"),e[0]=s,e[1]=a):a=e[1];let r;e[2]!==a?(r=l("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:a}),e[2]=a,e[3]=r):r=e[3];const i=n?.totalConnections??0;let o;e[4]!==i?(o=i.toLocaleString(),e[4]=i,e[5]=o):o=e[5];let c;e[6]!==o?(c=l("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:o}),e[6]=o,e[7]=c):c=e[7];let u;e[8]!==s?(u=s("sockets"),e[8]=s,e[9]=u):u=e[9];let m;e[10]!==u?(m=l("span",{className:"text-xs text-muted-foreground",children:u}),e[10]=u,e[11]=m):m=e[11];let d;e[12]!==c||e[13]!==m?(d=h("span",{className:"flex items-baseline gap-1.5",children:[c,m]}),e[12]=c,e[13]=m,e[14]=d):d=e[14];const f=n?.totalSubscriptions??0;let p;e[15]!==f?(p=f.toLocaleString(),e[15]=f,e[16]=p):p=e[16];let g;e[17]!==s?(g=s("active subscriptions"),e[17]=s,e[18]=g):g=e[18];let x;e[19]!==p||e[20]!==g?(x=h("span",{className:"text-[11px] text-muted-foreground",children:[p," ",g]}),e[19]=p,e[20]=g,e[21]=x):x=e[21];let b;return e[22]!==x||e[23]!==r||e[24]!==d?(b=l(B,{"data-testid":"home-live-connections",children:h(Ze,{className:"flex flex-col gap-2.5 py-4",children:[r,d,x]})}),e[22]=x,e[23]=r,e[24]=d,e[25]=b):b=e[25],b},Ot=t=>{const e=A(7),{entries:n}=t,s=I();let a;if(e[0]!==n||e[1]!==s){const r=Date.now();let i;e[3]!==s?(i=s("Recent activity"),e[3]=s,e[4]=i):i=e[4];let o;e[5]!==i?(o=l("div",{className:"border-b border-border px-4 py-3",children:l("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:i})}),e[5]=i,e[6]=o):o=e[6],a=h(B,{className:"gap-0 py-0","data-testid":"home-recent-activity",children:[o,n.length===0?l("p",{className:"px-4 py-8 text-center text-xs text-muted-foreground",children:s("No recent activity.")}):l("ul",{className:"divide-y divide-border",children:n.slice(0,5).map(c=>h("li",{className:"flex items-center justify-between gap-3 px-4 py-2 text-[13px]",children:[h("span",{className:"flex min-w-0 items-center gap-2",children:[l("span",{"aria-hidden":"true",className:"size-1.5 shrink-0 rounded-full bg-muted-foreground/40"}),h("span",{className:"truncate text-foreground",children:[c.op,c.table!==void 0&&h("span",{className:"text-muted-foreground",children:[" · ",c.table,c.id===void 0?"":`#${c.id}`]})]})]}),l("span",{className:"shrink-0 text-xs tabular-nums text-muted-foreground",children:Lt(c.ts,r)})]},c.seq))})]}),e[0]=n,e[1]=s,e[2]=a}else a=e[2];return a},Rt=t=>{const e=t.reduce((n,s)=>n+s.calls,0);return e===0?null:t.reduce((n,s)=>n+s.totalDurationMs,0)/e},Xt=t=>{const e=A(149),{initialShardKey:n}=t,s=I(),a=Je(),r=n??"";let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={},e[0]=i):i=e[0];let o;e[1]!==r?(o={shardKey:r},e[1]=r,e[2]=o):o=e[2];const c=ve(ye.getMetrics,i,o);let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u={},e[3]=u):u=e[3];let m;e[4]!==r?(m={shardKey:r},e[4]=r,e[5]=m):m=e[5];const d=ve(ye.getFunctionStats,u,m);let f,p;e[6]===Symbol.for("react.memo_cache_sentinel")?(f={},p={shardKey:""},e[6]=f,e[7]=p):(f=e[6],p=e[7]);const g=ve(ye.getSecurityAudit,f,p);let x;e[8]===Symbol.for("react.memo_cache_sentinel")?(x={},e[8]=x):x=e[8];let b;e[9]!==r?(b={shardKey:r},e[9]=r,e[10]=b):b=e[10];const v=ve(ye.listSubscriptions,x,b);let _;e[11]===Symbol.for("react.memo_cache_sentinel")?(_={},e[11]=_):_=e[11];let S;e[12]!==r?(S={shardKey:r},e[12]=r,e[13]=S):S=e[13];const L=ve(ye.getAuditLog,_,S),y=c.data??null;let k,w,C,N,$,M,T,O,R,D,P,F,E,j,U,q,K,z;if(e[14]!==L.data||e[15]!==g.data||e[16]!==y||e[17]!==c.data||e[18]!==a||e[19]!==d.data||e[20]!==v.data||e[21]!==s){N=Array.isArray(d.data?.functions)?d.data.functions:[],T=v.data??null;let we;e[40]!==L.data?(we=Array.isArray(L.data?.entries)?L.data.entries:[],e[40]=L.data,e[41]=we):we=e[41],w=we,$=c.data===void 0||d.data===void 0?null:it(y,N).length,M=Array.isArray(g.data?.findings)?g.data.findings.length:null;let Ce;e[42]!==a?(Ce=()=>{Ne(a({to:"/security"}))},e[42]=a,e[43]=Ce):Ce=e[43],z=Ce;let Ae;e[44]!==a?(Ae=()=>{Ne(a({to:"/insights"}))},e[44]=a,e[45]=Ae):Ae=e[45],K=Ae;const $e=Qe(y?.history,"calls"),Le=Qe(y?.history,"errors"),ze=Rt(N),Me=Math.max(0,...N.map(Bt));let Ie;e[46]!==y||e[47]!==s?(Ie=y===null?void 0:$t(s,y.cache),e[46]=y,e[47]=s,e[48]=Ie):Ie=e[48],C=Ie,U="flex flex-col gap-6",q="lunora-home",P="grid gap-3 sm:grid-cols-2 xl:grid-cols-4",F="home-health";const Re=He($e);let he;e[49]!==s?(he=s("Requests"),e[49]=s,e[50]=he):he=e[50];const Ee=y?.requests??0;let ge;e[51]!==Ee?(ge=Ee.toLocaleString(),e[51]=Ee,e[52]=ge):ge=e[52],e[53]!==$e||e[54]!==Re||e[55]!==he||e[56]!==ge?(E=l(Te,{delta:Re,label:he,trend:$e,value:ge}),e[53]=$e,e[54]=Re,e[55]=he,e[56]=ge,e[57]=E):E=e[57];const je=He(Le,!1);let xe;e[58]!==s?(xe=s("Errors"),e[58]=s,e[59]=xe):xe=e[59];const Be=y?.errors??0;let be;e[60]!==Be?(be=Be.toLocaleString(),e[60]=Be,e[61]=be):be=e[61],e[62]!==Le||e[63]!==je||e[64]!==xe||e[65]!==be?(j=l(Te,{delta:je,label:xe,trend:Le,value:be}),e[62]=Le,e[63]=je,e[64]=xe,e[65]=be,e[66]=j):j=e[66],k=Te,e[67]!==Me||e[68]!==s?(O=Me>0?`${s("max")} ${Pe(Me)}`:void 0,e[67]=Me,e[68]=s,e[69]=O):O=e[69],e[70]!==s?(R=s("Avg latency"),e[70]=s,e[71]=R):R=e[71],D=ze===null?"—":Pe(ze),e[14]=L.data,e[15]=g.data,e[16]=y,e[17]=c.data,e[18]=a,e[19]=d.data,e[20]=v.data,e[21]=s,e[22]=k,e[23]=w,e[24]=C,e[25]=N,e[26]=$,e[27]=M,e[28]=T,e[29]=O,e[30]=R,e[31]=D,e[32]=P,e[33]=F,e[34]=E,e[35]=j,e[36]=U,e[37]=q,e[38]=K,e[39]=z}else k=e[22],w=e[23],C=e[24],N=e[25],$=e[26],M=e[27],T=e[28],O=e[29],R=e[30],D=e[31],P=e[32],F=e[33],E=e[34],j=e[35],U=e[36],q=e[37],K=e[38],z=e[39];let V;e[72]!==k||e[73]!==O||e[74]!==R||e[75]!==D?(V=l(k,{footer:O,label:R,value:D}),e[72]=k,e[73]=O,e[74]=R,e[75]=D,e[76]=V):V=e[76];let W;e[77]!==s?(W=s("Database size"),e[77]=s,e[78]=W):W=e[78];const Oe=y?.databaseSize??null;let Q;e[79]!==Oe?(Q=ot(Oe),e[79]=Oe,e[80]=Q):Q=e[80];let H;e[81]!==C||e[82]!==W||e[83]!==Q?(H=l(Te,{footer:C,label:W,value:Q}),e[81]=C,e[82]=W,e[83]=Q,e[84]=H):H=e[84];let G;e[85]!==P||e[86]!==F||e[87]!==E||e[88]!==j||e[89]!==V||e[90]!==H?(G=h("div",{className:P,"data-testid":F,children:[E,j,V,H]}),e[85]=P,e[86]=F,e[87]=E,e[88]=j,e[89]=V,e[90]=H,e[91]=G):G=e[91];let _e;e[92]===Symbol.for("react.memo_cache_sentinel")?(_e=l(xt,{}),e[92]=_e):_e=e[92];let J;e[93]!==N?(J=l("div",{className:"lg:col-span-2",children:l(It,{functions:N})}),e[93]=N,e[94]=J):J=e[94];let Y;e[95]!==T?(Y=l(Tt,{subs:T}),e[95]=T,e[96]=Y):Y=e[96];let Z;e[97]!==w?(Z=l(Ot,{entries:w}),e[97]=w,e[98]=Z):Z=e[98];let X;e[99]!==Y||e[100]!==Z?(X=h("div",{className:"flex flex-col gap-3",children:[Y,Z]}),e[99]=Y,e[100]=Z,e[101]=X):X=e[101];let ee;e[102]!==J||e[103]!==X?(ee=h("div",{className:"grid gap-3 lg:grid-cols-3",children:[J,X]}),e[102]=J,e[103]=X,e[104]=ee):ee=e[104];let te;e[105]!==s?(te=s("Advisors"),e[105]=s,e[106]=te):te=e[106];let se;e[107]!==te?(se=l("h2",{className:"text-sm font-semibold tracking-tight text-foreground",children:te}),e[107]=te,e[108]=se):se=e[108];let ne;e[109]!==$||e[110]!==M||e[111]!==s||e[112]!==K||e[113]!==z?(ne=M===0&&$===0?l(st,{description:s("No security or performance issues detected."),icon:h("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:[l("path",{d:"M12 3 4 6v5c0 5 3.4 8.5 8 10 4.6-1.5 8-5 8-10V6l-8-3Z"}),l("path",{d:"m9 12 2 2 4-4"})]}),testId:"home-advisors-clear",title:s("No issues found")}):h("div",{className:"grid gap-3 sm:grid-cols-2",children:[l(Ge,{count:M,onView:z,testId:"home-security",title:s("Security findings")}),l(Ge,{count:$,onView:K,testId:"home-performance",title:s("Performance issues")})]}),e[109]=$,e[110]=M,e[111]=s,e[112]=K,e[113]=z,e[114]=ne):ne=e[114];let le;e[115]!==se||e[116]!==ne?(le=h("section",{className:"flex flex-col gap-3","data-testid":"home-advisors",children:[se,ne]}),e[115]=se,e[116]=ne,e[117]=le):le=e[117];let ae;e[118]!==s?(ae=s("Get connected"),e[118]=s,e[119]=ae):ae=e[119];let re;e[120]!==ae?(re=l("h2",{className:"text-sm font-semibold tracking-tight text-foreground",children:ae}),e[120]=ae,e[121]=re):re=e[121];let oe;e[122]!==s?(oe=s("Client SDK"),e[122]=s,e[123]=oe):oe=e[123];let ie;e[124]!==oe?(ie=l(De,{command:"npm i @lunora/client",label:oe}),e[124]=oe,e[125]=ie):ie=e[125];let ce;e[126]!==s?(ce=s("React"),e[126]=s,e[127]=ce):ce=e[127];let de;e[128]!==ce?(de=l(De,{command:"npm i @lunora/react",label:ce}),e[128]=ce,e[129]=de):de=e[129];let ue;e[130]!==s?(ue=s("CLI"),e[130]=s,e[131]=ue):ue=e[131];let me;e[132]!==ue?(me=l(De,{command:"lunora dev",label:ue}),e[132]=ue,e[133]=me):me=e[133];let fe;e[134]!==ie||e[135]!==de||e[136]!==me?(fe=h("div",{className:"grid gap-3 sm:grid-cols-3",children:[ie,de,me]}),e[134]=ie,e[135]=de,e[136]=me,e[137]=fe):fe=e[137];let Se;e[138]===Symbol.for("react.memo_cache_sentinel")?(Se=l(Ct,{}),e[138]=Se):Se=e[138];let pe;e[139]!==re||e[140]!==fe?(pe=h("section",{className:"flex flex-col gap-3","data-testid":"home-get-connected",children:[re,fe,Se]}),e[139]=re,e[140]=fe,e[141]=pe):pe=e[141];let ke;return e[142]!==U||e[143]!==q||e[144]!==G||e[145]!==ee||e[146]!==le||e[147]!==pe?(ke=h("div",{className:U,"data-testid":q,children:[G,_e,ee,le,pe]}),e[142]=U,e[143]=q,e[144]=G,e[145]=ee,e[146]=le,e[147]=pe,e[148]=ke):ke=e[148],ke};function Et(t,e){return e.calls-t.calls}function jt(t){return h("div",{className:"grid grid-cols-[1fr_auto_auto_auto] items-center gap-4 px-4 py-2 text-[13px]",children:[l("span",{className:"truncate font-mono text-xs text-foreground",children:t.path}),l("span",{className:"text-end tabular-nums",children:t.calls.toLocaleString()}),l("span",{className:"w-12 text-end tabular-nums text-muted-foreground",children:Pe(t.calls>0?t.totalDurationMs/t.calls:0)}),l("span",{className:Xe("w-8 text-end tabular-nums",t.errors>0?"text-destructive":"text-muted-foreground"),children:t.errors})]},t.path)}function Bt(t){return t.maxDurationMs}export{Xt as H,$t as c,ft as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as d}from"react/compiler-runtime";import{Input as o}from"@base-ui/react/input";import{c as s}from"./utils-bhneXptQ.mjs";import{jsx as u}from"react/jsx-runtime";function m(l){const e=d(10);let i,r,t;e[0]!==l?({className:i,type:t,...r}=l,e[0]=l,e[1]=i,e[2]=r,e[3]=t):(i=e[1],r=e[2],t=e[3]);let n;e[4]!==i?(n=s("h-8 w-full min-w-0 rounded-md border border-input bg-transparent px-2.5 py-1 text-xs transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-xs file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 md:text-xs dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",i),e[4]=i,e[5]=n):n=e[5];let a;return e[6]!==r||e[7]!==n||e[8]!==t?(a=u(o,{type:t,"data-slot":"input",className:n,...r}),e[6]=r,e[7]=n,e[8]=t,e[9]=a):a=e[9],a}export{m as I};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const f=(t,n,r,i,o)=>{switch(n){case"action":return t.action(r,i,o);case"mutation":return t.mutation(r,i,o);default:return t.query(r,i,o)}},u=t=>({__lunoraRef:t}),d=t=>{const n=t.trim();return n===""?{}:{shardKey:n}},g=t=>t instanceof Error?t.message:String(t),l=t=>{if(t===null||typeof t!="object"||!("code"in t))return;const{code:n}=t;return typeof n=="string"?n:void 0},y=t=>{if(t===null||typeof t!="object"||!("hint"in t))return;const{hint:n}=t;return typeof n=="string"?n:Array.isArray(n)?n.filter(r=>typeof r=="string").join(`
|
|
2
|
+
`):void 0},h=t=>{if(t===null||typeof t!="object"||!("docsUrl"in t))return;const n=t.docsUrl;if(typeof n=="string")try{const{protocol:r}=new URL(n);return r==="http:"||r==="https:"?n:void 0}catch{return}},e=t=>{if(t==null)return"—";if(t<1024)return`${t.toString()} B`;const n=["KB","MB","GB","TB"];let r=t/1024,i=0;for(;r>=1024&&i<n.length-1;)r/=1024,i+=1;return`${r.toFixed(1)} ${n[i]??"TB"}`},s=(t,n)=>typeof n=="bigint"?n.toString():n instanceof ArrayBuffer||ArrayBuffer.isView(n)?`<bytes: ${e(n.byteLength)}>`:n,p=t=>typeof t=="bigint"?t.toString():t,b=t=>{if(t==null)return"";switch(typeof t){case"bigint":case"boolean":case"number":return t.toString();case"string":return t;case"symbol":return t.toString();default:return t instanceof ArrayBuffer||ArrayBuffer.isView(t)?`<bytes: ${e(t.byteLength)}>`:JSON.stringify(t,s)}},c=(t,n)=>{t.catch(r=>{n?.(r)})},a=t=>{if(t!==void 0&&t!=="")return t;const n=globalThis.location;return n?.origin!==void 0&&n.origin!==""?n.origin:"http://localhost:5173"},m=t=>{let n=a(t);for(;n.endsWith("/");)n=n.slice(0,-1);return n},B=t=>{const n="navigator"in globalThis?globalThis.navigator.clipboard:void 0;return n===void 0?!1:(c(n.writeText(t)),!0)},w=(t,n="")=>{if(t==null||t==="")return n;const r=new Date(t);return Number.isNaN(r.getTime())?String(t):r.toLocaleString()};export{h as a,g as b,u as c,d,y as e,c as f,B as g,w as h,l as i,s as j,b as k,f as l,e as m,p as n,a as r,m as w};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as r}from"react/compiler-runtime";import{c as i}from"./utils-bhneXptQ.mjs";import{jsx as n}from"react/jsx-runtime";function m(s){const e=r(8);let t,a;e[0]!==s?({className:t,...a}=s,e[0]=s,e[1]=t,e[2]=a):(t=e[1],a=e[2]);let l;e[3]!==t?(l=i("flex items-center gap-2 text-xs leading-none select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),e[3]=t,e[4]=l):l=e[4];let o;return e[5]!==a||e[6]!==l?(o=n("label",{"data-slot":"label",className:l,...a}),e[5]=a,e[6]=l,e[7]=o):o=e[7],o}export{m as L};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as m}from"react/compiler-runtime";import{useT as p}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{u as v}from"./operation-console-provider-DoloEvon.mjs";import{jsx as d,jsxs as x}from"react/jsx-runtime";const E=f=>{const e=m(14),{message:n,prefix:i}=f,o=p(),t=v();let l;e[0]!==t?(l=()=>{t?.openConsole({errorsOnly:!0})},e[0]=t,e[1]=l):l=e[1];const c=l;if(n===void 0)return null;const u=`${i}-live-error`;let r;e[2]!==n||e[3]!==o?(r=o("Live unavailable: {liveError}",{liveError:n}),e[2]=n,e[3]=o,e[4]=r):r=e[4];let s;e[5]!==t||e[6]!==i||e[7]!==c||e[8]!==o?(s=t===void 0?null:d("button",{className:"underline outline-none focus-visible:ring-1 focus-visible:ring-ring","data-testid":`${i}-live-error-console`,onClick:c,type:"button",children:o("Show in console")}),e[5]=t,e[6]=i,e[7]=c,e[8]=o,e[9]=s):s=e[9];let a;return e[10]!==u||e[11]!==r||e[12]!==s?(a=x("span",{className:"flex items-center gap-1.5 text-xs text-destructive","data-testid":u,role:"status",children:[r,s]}),e[10]=u,e[11]=r,e[12]=s,e[13]=a):a=e[13],a};export{E as L};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const i=r=>{if(typeof r=="string")return r;try{return JSON.stringify(r)??String(r)}catch{return String(r)}},o=r=>typeof r!="object"||r===null||Array.isArray(r)?"":Object.entries(r).map(([t,n])=>`${t}=${i(n)}`).join(" ");export{o as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as h}from"react/compiler-runtime";import{f as v}from"./log-fields-SBxKyBug.mjs";import{B as x}from"./badge-r_5B4LHP.mjs";import{h as L}from"./internal-Df43vQI0.mjs";import{jsx as o,jsxs as g,Fragment as N}from"react/jsx-runtime";const w={debug:"secondary",error:"destructive",fatal:"destructive",info:"outline",log:"outline",trace:"outline",warn:"secondary"},B=p=>{const e=h(21),{entry:t}=p;let m;e[0]!==t.fields?(m=v(t.fields),e[0]=t.fields,e[1]=m):m=e[1];const c=m;let l;e[2]!==t.timestamp?(l=L(t.timestamp),e[2]=t.timestamp,e[3]=l):l=e[3];let s;e[4]!==l?(s=o("span",{className:"w-44 shrink-0 tabular-nums text-muted-foreground",role:"gridcell",children:l}),e[4]=l,e[5]=s):s=e[5];const f=w[t.level];let r;e[6]!==t.level||e[7]!==f?(r=o("span",{className:"w-20 shrink-0",role:"gridcell",children:o(x,{variant:f,children:t.level})}),e[6]=t.level,e[7]=f,e[8]=r):r=e[8];const u=t.functionPath??"—";let a;e[9]!==u?(a=o("span",{className:"w-48 shrink-0 truncate text-muted-foreground",role:"gridcell",children:u}),e[9]=u,e[10]=a):a=e[10];let i;e[11]!==c?(i=c===""?null:o("span",{className:"ml-2 text-muted-foreground","data-testid":"lg-fields",children:c}),e[11]=c,e[12]=i):i=e[12];let n;e[13]!==t.message||e[14]!==i?(n=g("span",{className:"flex-1 truncate",role:"gridcell",children:[t.message,i]}),e[13]=t.message,e[14]=i,e[15]=n):n=e[15];let d;return e[16]!==s||e[17]!==r||e[18]!==a||e[19]!==n?(d=g(N,{children:[s,r,a,n]}),e[16]=s,e[17]=r,e[18]=a,e[19]=n,e[20]=d):d=e[20],d};export{B as L,w as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as v}from"react/compiler-runtime";import{c as k}from"./utils-bhneXptQ.mjs";import{jsx as u}from"react/jsx-runtime";const y={dialog:"fixed inset-0 z-[1000] flex justify-center bg-black/20 pt-[10vh]",drawer:"fixed inset-0 z-[1000] flex justify-end bg-black/20"},A={dialog:"flex h-fit w-[min(28rem,92vw)] flex-col gap-3 rounded-lg border border-border bg-background p-4 shadow-xl",drawer:"flex h-full w-[min(34rem,100vw)] flex-col gap-4 overflow-auto border-l border-border bg-background p-4 shadow-xl"},_=h=>{const e=v(18),{className:n,children:d,label:c,onClose:l,panelTestId:f,testId:b,variant:w}=h;let r;e[0]!==l?(r=i=>{i.target===i.currentTarget&&l()},e[0]=l,e[1]=r):r=e[1];const g=r;let a;e[2]!==l?(a=i=>{i.key==="Escape"&&l()},e[2]=l,e[3]=a):a=e[3];const m=a,p=y[w],x=A[w];let t;e[4]!==n||e[5]!==x?(t=k(x,n),e[4]=n,e[5]=x,e[6]=t):t=e[6];let o;e[7]!==d||e[8]!==c||e[9]!==f||e[10]!==t?(o=u("div",{"aria-label":c,className:t,"data-testid":f,role:"dialog",children:d}),e[7]=d,e[8]=c,e[9]=f,e[10]=t,e[11]=o):o=e[11];let s;return e[12]!==g||e[13]!==m||e[14]!==p||e[15]!==o||e[16]!==b?(s=u("div",{className:p,"data-testid":b,onClick:g,onKeyDown:m,role:"presentation",children:o}),e[12]=g,e[13]=m,e[14]=p,e[15]=o,e[16]=b,e[17]=s):s=e[17],s};export{_ as M};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as h}from"react/compiler-runtime";import{use as q,createContext as w,useState as p}from"react";import{jsx as C}from"react/jsx-runtime";const m=w(void 0),y=t=>{const e=h(10),{children:f}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={focusSeq:void 0,open:!1,shown:"all"},e[0]=n):n=e[0];const[o,s]=p(n);let r;e[1]===Symbol.for("react.memo_cache_sentinel")?(r=()=>({close:()=>{s(_)},openConsole:a=>{s({focusSeq:a?.seq,open:!0,shown:a?.errorsOnly===!0?"errors":"all"})},setShown:a=>{s(S=>({...S,shown:a}))},toggle:()=>{s(d)}}),e[1]=r):r=e[1];const[i]=p(r);let l;e[2]!==i||e[3]!==o.focusSeq||e[4]!==o.open||e[5]!==o.shown?(l={...i,focusSeq:o.focusSeq,open:o.open,shown:o.shown},e[2]=i,e[3]=o.focusSeq,e[4]=o.open,e[5]=o.shown,e[6]=l):l=e[6];const u=l;let c;return e[7]!==f||e[8]!==u?(c=C(m,{value:u,children:f}),e[7]=f,e[8]=u,e[9]=c):c=e[9],c},b=()=>q(m);function _(t){return{...t,open:!1}}function d(t){return{focusSeq:void 0,open:!t.open,shown:"all"}}export{y as O,b as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as u}from"./use-admin-query-tlBof8Yg.mjs";const b="__lunora_admin__:",d=new Set(["action","mutation","query"]),r=Symbol("lunora.operationSeq"),g=t=>{if(typeof t!="object"||t===null)return;const n=t[r];return typeof n=="number"?n:void 0},h=(t,n)=>{if(!(typeof t!="object"||t===null||!Object.isExtensible(t)))try{Object.defineProperty(t,r,{configurable:!0,enumerable:!1,value:n,writable:!0})}catch{}},p=t=>{if(typeof t!="object"||t===null)return;const n=t.__lunoraRef;return typeof n=="string"&&n.startsWith(b)?n:void 0},O=t=>{if(typeof t!="object"||t===null)return"";const{shardKey:n}=t;return typeof n=="string"?n:""},E=t=>new Proxy(t,{get(n,c,a){const i=Reflect.get(n,c,a);if(typeof i!="function"||typeof c!="string"||!d.has(c))return typeof i=="function"?i.bind(n):i;const f=i;return async(...e)=>{const l=p(e[0]);if(l===void 0)return f.apply(n,e);const y=typeof e[1]=="object"&&e[1]!==null?e[1]:{},s=u.start(l,y,O(e[2]));try{const o=await f.apply(n,e);return u.settle(s,{result:o}),o}catch(o){throw u.settle(s,{error:o instanceof Error?o.message:String(o)}),h(o,s),o}}}});export{g as o,E as w};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import{c as P}from"react/compiler-runtime";import{useState as L,useEffectEvent as U,useEffect as ae,createContext as le,use as de}from"react";import{b as z,g as Y,f as ce,l as ue,c as fe,d as me,j as pe}from"./internal-Df43vQI0.mjs";import{SentIcon as he,Copy01Icon as ge,Search01Icon as xe}from"@hugeicons/core-free-icons";import{HugeiconsIcon as W}from"@hugeicons/react";import{I as be}from"./input-CXhxesPC.mjs";import{useT as J}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{B as q}from"./button-q0UYSmrn.mjs";import{jsx as i,jsxs as N,Fragment as ye}from"react/jsx-runtime";import{B as ve}from"./badge-r_5B4LHP.mjs";import{ShardInput as Ne}from"./ShardInput-C6mjgAh4.mjs";import{L as V}from"./label-DKFzyHq6.mjs";import{T as Se}from"./textarea--40GKAyz.mjs";import{LunoraError as we}from"@lunora/errors";import{useLunora as ke}from"@lunora/react";import{c as Q}from"./utils-bhneXptQ.mjs";const Ot=function(t,e,s){const r=P(15);let n;r[0]===Symbol.for("react.memo_cache_sentinel")?(n={kind:"loading"},r[0]=n):n=r[0];const[o,l]=L(n);let a;r[1]!==e?(a=async()=>e(),r[1]=e,r[2]=a):a=r[2];const g=U(a);let d;r[3]!==s?(d=f=>s(f),r[3]=s,r[4]=d):d=r[4];const c=U(d);let u;r[5]!==c||r[6]!==g||r[7]!==t?(u=()=>{if(t!==void 0)return;let f=!1;return g().then(m=>(f||l(c(m)),m)).catch(m=>{f||l({kind:"error",message:z(m)})}),()=>{f=!0}},r[5]=c,r[6]=g,r[7]=t,r[8]=u):u=r[8];let h;r[9]!==t?(h=[t],r[9]=t,r[10]=h):h=r[10],ae(u,h);let p;return r[11]!==s||r[12]!==o||r[13]!==t?(p=t===void 0?o:s(t),r[11]=s,r[12]=o,r[13]=t,r[14]=p):p=r[14],p},Oe=t=>typeof t=="number"?"number":typeof t=="boolean"?"boolean":"string",Z=t=>{if(t.enum!==void 0&&t.enum.length>0)return t.enum;if(t.anyOf!==void 0&&t.anyOf.length>0&&t.anyOf.every(e=>e.const!==void 0))return t.anyOf.map(e=>e.const)},F=t=>t===void 0?"any":t.const!==void 0?JSON.stringify(t.const):t.enum!==void 0&&t.enum.length>0?t.enum.map(e=>JSON.stringify(e)).join(" | "):t.anyOf!==void 0&&t.anyOf.length>0?t.anyOf.map(e=>F(e)).join(" | "):t.type==="array"?`array<${F(t.items)}>`:t.type??"any",$e=t=>{const e=Z(t);return e!==void 0?t.type??Oe(e[0]):F(t)},Te=t=>{const e=Z(t);return e===void 0?void 0:e.map(s=>JSON.stringify(s)).join(" | ")},Ee=t=>{const e=[];t.minimum!==void 0?e.push(`${String(t.minimum)} ≤`):t.exclusiveMinimum!==void 0&&e.push(`${String(t.exclusiveMinimum)} <`);const s=e.length>0;e.push("value"),t.maximum!==void 0?e.push(`≤ ${String(t.maximum)}`):t.exclusiveMaximum!==void 0&&e.push(`< ${String(t.exclusiveMaximum)}`);const r=e.length>(s?2:1);return s||r?e.join(" "):void 0},Ce=t=>{if(t.type==="object"&&t.properties!==void 0)return t;if(t.type==="array"&&t.items?.type==="object"&&t.items.properties!==void 0)return t.items},D=t=>{if(t===void 0)return null;if(t.const!==void 0)return t.const;if(t.enum!==void 0&&t.enum.length>0)return t.enum[0];if(t.anyOf!==void 0&&t.anyOf.length>0)return D(t.anyOf[0]);switch(t.type){case"array":return[];case"boolean":return!1;case"number":return 0;case"object":{const e={};for(const[s,r]of Object.entries(t.properties??{}))e[s]=D(r);return e}case"string":return"";default:return null}},K=t=>{const e=P(7),{label:s,value:r}=t;let n;e[0]!==s?(n=i("span",{className:"text-muted-foreground",children:s}),e[0]=s,e[1]=n):n=e[1];let o;e[2]!==r?(o=i("span",{className:"text-foreground",children:r}),e[2]=r,e[3]=o):o=e[3];let l;return e[4]!==n||e[5]!==o?(l=N("span",{className:"inline-flex items-center gap-1 rounded border border-border px-1.5 py-0.5 font-mono text-[10px]",children:[n,o]}),e[4]=n,e[5]=o,e[6]=l):l=e[6],l},Ae=t=>{const e=P(40),{name:s,required:r,schema:n}=t,o=J();let l;e[0]!==n?(l=Ee(n),e[0]=n,e[1]=l):l=e[1];const a=l;let g;e[2]!==n?(g=Te(n),e[2]=n,e[3]=g):g=e[3];const d=g,c=n["x-lunora-table"],u=n.format!==void 0||a!==void 0||d!==void 0||c!==void 0;let h;e[4]!==n?(h=Ce(n),e[4]=n,e[5]=h):h=e[5];const p=h,f=r?"*":"?";let m;e[6]!==f?(m=i("span",{className:"text-muted-foreground",children:f}),e[6]=f,e[7]=m):m=e[7];let v;e[8]!==s||e[9]!==m?(v=N("span",{className:"font-mono text-foreground",children:[s,m]}),e[8]=s,e[9]=m,e[10]=v):v=e[10];let w;e[11]!==n?(w=$e(n),e[11]=n,e[12]=w):w=e[12];let x;e[13]!==w?(x=i("span",{className:"font-mono text-muted-foreground",children:w}),e[13]=w,e[14]=x):x=e[14];let b;e[15]!==v||e[16]!==x?(b=N("div",{className:"flex items-baseline gap-2",children:[v,x]}),e[15]=v,e[16]=x,e[17]=b):b=e[17];let y;e[18]!==n.description?(y=n.description!==void 0&&i("p",{className:"max-w-prose text-muted-foreground",children:n.description}),e[18]=n.description,e[19]=y):y=e[19];let S;e[20]!==u||e[21]!==a||e[22]!==c||e[23]!==n.format||e[24]!==o||e[25]!==d?(S=u&&N("div",{className:"flex flex-wrap gap-1",children:[n.format!==void 0&&i(K,{label:o("Format"),value:n.format}),a!==void 0&&i(K,{label:o("Range"),value:a}),d!==void 0&&i(K,{label:o("Value in"),value:d}),c!==void 0&&i(K,{label:o("relation"),value:c})]}),e[20]=u,e[21]=a,e[22]=c,e[23]=n.format,e[24]=o,e[25]=d,e[26]=S):S=e[26];let O;e[27]!==y||e[28]!==S||e[29]!==b?(O=N("div",{className:"flex flex-col gap-1 py-2",children:[b,y,S]}),e[27]=y,e[28]=S,e[29]=b,e[30]=O):O=e[30];const k=O;if(p===void 0){let $;return e[31]!==k?($=i("div",{className:"border-b border-border/50 last:border-b-0",children:k}),e[31]=k,e[32]=$):$=e[32],$}let T;e[33]!==k?(T=i("summary",{className:"cursor-pointer marker:text-muted-foreground",children:k}),e[33]=k,e[34]=T):T=e[34];let A;e[35]!==p?(A=i("div",{className:"mb-2 ml-2 border-l border-border pl-3",children:i(ee,{schema:p})}),e[35]=p,e[36]=A):A=e[36];let E;return e[37]!==T||e[38]!==A?(E=N("details",{className:"border-b border-border/50 last:border-b-0",children:[T,A]}),e[37]=T,e[38]=A,e[39]=E):E=e[39],E},ee=t=>{const e=P(7),{schema:s}=t;let r;e[0]!==s.required?(r=new Set(s.required),e[0]=s.required,e[1]=r):r=e[1];const n=r;let o;e[2]!==s.properties?(o=Object.entries(s.properties??{}),e[2]=s.properties,e[3]=o):o=e[3];const l=o;let a;return e[4]!==n||e[5]!==l?(a=i("div",{className:"flex flex-col",children:l.map(g=>{const[d,c]=g;return i(Ae,{name:d,required:n.has(d),schema:c},d)})}),e[4]=n,e[5]=l,e[6]=a):a=e[6],a},G=t=>{const e=P(10),{schema:s,testId:r}=t;if(s?.type!=="object"||Object.keys(s.properties??{}).length===0){let l;e[0]!==s?(l=F(s),e[0]=s,e[1]=l):l=e[1];let a;return e[2]!==l||e[3]!==r?(a=i("p",{className:"font-mono text-xs text-muted-foreground","data-testid":r,children:l}),e[2]=l,e[3]=r,e[4]=a):a=e[4],a}let n;e[5]!==s?(n=i(ee,{schema:s}),e[5]=s,e[6]=n):n=e[6];let o;return e[7]!==n||e[8]!==r?(o=i("div",{className:"text-xs","data-testid":r,children:n}),e[7]=n,e[8]=r,e[9]=o):o=e[9],o},Re=["curl","javascript","lunora"],je={lunora:"Lunora",curl:"cURL",javascript:"JavaScript"},Ie=t=>`api.${t.replaceAll(/[/:]/g,".")}`,Pe=t=>{const e=D(t.argsSchema)??{};return t.functionPath===void 0?e:{args:e,functionPath:t.functionPath}},Le=(t,e,s)=>{const r=`${s}${e.httpPath}`,n=JSON.stringify(Pe(e),void 0,2),o=JSON.stringify(D(e.argsSchema)??{},void 0,2);switch(t){case"curl":{const l=e.method!=="GET"&&e.method!=="HEAD",a=[`curl -X ${e.method} ${JSON.stringify(r)}`];return l&&a.push(' -H "Content-Type: application/json"',` -d '${n}'`),a.join(` \\
|
|
2
|
+
`)}case"lunora":return e.functionPath===void 0?`await fetch(${JSON.stringify(e.httpPath)}, { method: ${JSON.stringify(e.method)} });`:`import { useLunora } from "@lunora/react";
|
|
3
|
+
import { api } from "./_generated/api";
|
|
4
|
+
|
|
5
|
+
const client = useLunora();
|
|
6
|
+
await client.${e.kind??"query"}(${Ie(e.functionPath)}, ${o});`;default:{const a=e.method!=="GET"&&e.method!=="HEAD"?`{
|
|
7
|
+
method: ${JSON.stringify(e.method)},
|
|
8
|
+
headers: { "Content-Type": "application/json" },
|
|
9
|
+
body: JSON.stringify(${n}),
|
|
10
|
+
}`:`{ method: ${JSON.stringify(e.method)} }`;return`const response = await fetch(${JSON.stringify(r)}, ${a});
|
|
11
|
+
const data = await response.json();`}}},_e=t=>{const e=P(24),{operation:s,server:r}=t,n=J(),[o,l]=L("curl");let a;e[0]!==s||e[1]!==o||e[2]!==r?(a=Le(o,s,r),e[0]=s,e[1]=o,e[2]=r,e[3]=a):a=e[3];const g=a;let d;e[4]!==g?(d=()=>{Y(g)},e[4]=g,e[5]=d):d=e[5];const c=d;let u;e[6]===Symbol.for("react.memo_cache_sentinel")?(u=y=>{l(y.currentTarget.dataset.sample)},e[6]=u):u=e[6];const h=u;let p;e[7]!==o?(p=Re.map(y=>i("button",{"aria-selected":o===y,className:"rounded px-2 py-0.5 text-xs text-muted-foreground transition-colors hover:text-foreground aria-selected:bg-muted aria-selected:font-medium aria-selected:text-foreground","data-sample":y,"data-testid":`api-sample-${y}`,onClick:h,role:"tab",type:"button",children:je[y]},y)),e[7]=o,e[8]=p):p=e[8];let f;e[9]!==p?(f=i("div",{className:"flex gap-1",role:"tablist",children:p}),e[9]=p,e[10]=f):f=e[10];let m;e[11]!==n?(m=n("Copy"),e[11]=n,e[12]=m):m=e[12];let v;e[13]!==c||e[14]!==m?(v=i(q,{"data-testid":"api-sample-copy",onClick:c,size:"xs",type:"button",variant:"ghost",children:m}),e[13]=c,e[14]=m,e[15]=v):v=e[15];let w;e[16]!==f||e[17]!==v?(w=N("div",{className:"flex items-center justify-between gap-2 border-b border-border px-3 py-2",children:[f,v]}),e[16]=f,e[17]=v,e[18]=w):w=e[18];let x;e[19]!==g?(x=i("pre",{className:"overflow-auto px-3 pb-3 font-mono text-xs","data-testid":"api-sample-source",children:g}),e[19]=g,e[20]=x):x=e[20];let b;return e[21]!==w||e[22]!==x?(b=N("div",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card","data-testid":"api-code-samples",children:[w,x]}),e[21]=w,e[22]=x,e[23]=b):b=e[23],b},Be={blue:"text-info",emerald:"text-success",neutral:"text-muted-foreground",orange:"text-warning",red:"text-destructive",violet:"text-royal-amethyst"},Me=t=>{switch(t.toUpperCase()){case"DELETE":return"red";case"GET":return"emerald";case"PATCH":return"orange";case"POST":return"blue";case"PUT":return"orange";default:return"neutral"}},Je=t=>{switch(t){case"action":return"violet";case"mutation":return"orange";case"query":return"emerald";default:return"neutral"}},H=t=>{const e=P(7),{kind:s,method:r,testId:n}=t;let o;e[0]!==s||e[1]!==r?(o=s??r.toUpperCase(),e[0]=s,e[1]=r,e[2]=o):o=e[2];const l=o,a=s===void 0?Me(r):Je(s),g=`${Be[a]} font-mono text-[10px] tracking-wide uppercase`;let d;return e[3]!==l||e[4]!==g||e[5]!==n?(d=i(ve,{className:g,"data-testid":n,variant:"ghost",children:l}),e[3]=l,e[4]=g,e[5]=n,e[6]=d):d=e[6],d},te=t=>t.startsWith("2")?"text-emerald-600 dark:text-emerald-400":t==="default"||t.startsWith("4")||t.startsWith("5")?"text-red-600 dark:text-red-400":"text-muted-foreground",re=t=>t.startsWith("2")?"bg-emerald-500":t==="default"||t.startsWith("4")||t.startsWith("5")?"bg-red-500":"bg-muted-foreground",De=new Set([" ",`
|
|
12
|
+
`,"\r"]),X=" ",Ke=t=>{let e="";for(const n of t)De.has(n)||(e+=n);let s=0,r=e.length;for(;s<r&&(e[s]??"")<=X;)s+=1;for(;r>s&&(e[r-1]??"")<=X;)r-=1;return e.slice(s,r)},Fe=/^(?:[a-z][\d+.a-z-]*:)?\/\//i,ze=(t,e)=>{const s=globalThis.location?.origin??"",r=e===""?s:e,n=Ke(t);if(r===""){if(Fe.test(n))throw new Error(`restDispatch: refusing to send the admin token off-origin (${n} names its own host and there is no origin to check it against)`);return n}const o=new URL(n,r);if(o.origin!==new URL(r).origin)throw new Error(`restDispatch: refusing to send the admin token off-origin (${o.origin} is not ${r})`);return o.toString()},We=async(t,e,s,r)=>{const n=t.method!=="GET"&&t.method!=="HEAD",o=ze(t.httpPath,s),a=await(await fetch(o,{body:n?JSON.stringify(e):void 0,headers:{...n?{"content-type":"application/json"}:{},...r===null||r===""?{}:{authorization:`Bearer ${r}`}},method:t.method})).text();try{return JSON.parse(a)}catch{return a}},qe=t=>JSON.stringify(D(t.argsSchema)??{},void 0,2),se=le(null),ne=()=>{const t=de(se);if(t===null)throw new we("INTERNAL","useOperationRun must be used within an OperationRunProvider");return t},He=({children:t,operation:e})=>{const s=J(),r=ke(),[n,o]=L(()=>qe(e)),[l,a]=L(""),[g,d]=L("idle"),[c,u]=L(void 0),[h,p]=L(null),[f,m]=L(null),v=async()=>{let b;try{b=n.trim()===""?{}:JSON.parse(n)}catch(S){d("error"),u(void 0),m(null),p(s("Invalid JSON args: {message}",{message:z(S)}));return}d("running"),p(null);const y=performance.now();try{const S=await(e.functionPath===void 0?We(e,b,r.url,r.getAuthToken()):ue(r,e.kind,fe(e.functionPath),b,me(l)));u(S),m(Math.round(performance.now()-y)),d("success")}catch(S){u(void 0),m(Math.round(performance.now()-y)),p(z(S)),d("error")}};return i(se,{value:{argsText:n,durationMs:f,error:h,operation:e,response:c,send:()=>{ce(v())},setArgsText:o,setShardKey:a,shardKey:l,status:g},children:t})},Ue=()=>{const t=P(48),e=J(),{argsText:s,operation:r,send:n,setArgsText:o,setShardKey:l,shardKey:a,status:g}=ne();let d;t[0]!==o?(d=C=>{o(C.target.value)},t[0]=o,t[1]=d):d=t[1];const c=d;let u;t[2]!==n?(u=C=>{C.key==="Enter"&&(C.metaKey||C.ctrlKey)&&(C.preventDefault(),n())},t[2]=n,t[3]=u):u=t[3];const h=u,p=g==="running";let f;t[4]!==r.kind||t[5]!==r.method?(f=i(H,{kind:r.kind,method:r.method,testId:"api-try-method"}),t[4]=r.kind,t[5]=r.method,t[6]=f):f=t[6];const m=r.functionPath??r.httpPath;let v;t[7]!==m?(v=i("code",{className:"min-w-0 flex-1 truncate font-mono text-xs text-foreground",children:m}),t[7]=m,t[8]=v):v=t[8];const w=p?"animate-pulse":void 0;let x;t[9]!==w?(x=i(W,{className:w,icon:he,strokeWidth:2}),t[9]=w,t[10]=x):x=t[10];let b;t[11]!==p||t[12]!==e?(b=e(p?"Sending…":"Send"),t[11]=p,t[12]=e,t[13]=b):b=t[13];let y;t[14]!==p||t[15]!==n||t[16]!==x||t[17]!==b?(y=N(q,{"data-testid":"api-try-send",disabled:p,onClick:n,size:"sm",type:"button",children:[x,b]}),t[14]=p,t[15]=n,t[16]=x,t[17]=b,t[18]=y):y=t[18];let S;t[19]!==f||t[20]!==v||t[21]!==y?(S=N("div",{className:"flex items-center gap-2 border-b border-border bg-muted px-3 py-2",children:[f,v,y]}),t[19]=f,t[20]=v,t[21]=y,t[22]=S):S=t[22];let O;t[23]!==e?(O=e("Arguments (JSON)"),t[23]=e,t[24]=O):O=t[24];let k;t[25]!==O?(k=i(V,{htmlFor:"api-try-args",children:O}),t[25]=O,t[26]=k):k=t[26];let T;t[27]!==s?(T=s.split(`
|
|
13
|
+
`),t[27]=s,t[28]=T):T=t[28];const A=Math.min(12,Math.max(3,T.length));let E;t[29]!==s||t[30]!==c||t[31]!==h||t[32]!==A?(E=i(Se,{className:"font-mono text-xs","data-testid":"api-try-args",id:"api-try-args",onChange:c,onKeyDown:h,rows:A,spellCheck:!1,value:s}),t[29]=s,t[30]=c,t[31]=h,t[32]=A,t[33]=E):E=t[33];let $;t[34]!==k||t[35]!==E?($=N("div",{className:"flex flex-col gap-1.5",children:[k,E]}),t[34]=k,t[35]=E,t[36]=$):$=t[36];let R;t[37]!==r.functionPath||t[38]!==l||t[39]!==a||t[40]!==e?(R=r.functionPath!==void 0&&N("div",{className:"flex flex-col gap-1.5",children:[i(V,{htmlFor:"shard-input",children:e("Shard key (optional)")}),i(Ne,{id:"shard-input",onChange:l,testId:"shard-input",value:a})]}),t[37]=r.functionPath,t[38]=l,t[39]=a,t[40]=e,t[41]=R):R=t[41];let j;t[42]!==$||t[43]!==R?(j=N("div",{className:"flex flex-col gap-3 p-3",children:[$,R]}),t[42]=$,t[43]=R,t[44]=j):j=t[44];let I;return t[45]!==j||t[46]!==S?(I=N("div",{className:"overflow-hidden rounded-xl border border-border bg-card","data-testid":"api-try-it",children:[S,j]}),t[45]=j,t[46]=S,t[47]=I):I=t[47],I},Ve=t=>{const e=P(51),{operation:s}=t,r=J(),n=`api-operation-${s.operationId}`,o=s.key;let l;e[0]!==s.kind||e[1]!==s.method?(l=i(H,{kind:s.kind,method:s.method,testId:"api-operation-method"}),e[0]=s.kind,e[1]=s.method,e[2]=l):l=e[2];const a=s.functionPath??s.httpPath;let g;e[3]!==a?(g=i("code",{className:"truncate font-mono text-xs text-muted-foreground",children:a}),e[3]=a,e[4]=g):g=e[4];let d;e[5]!==l||e[6]!==g?(d=N("div",{className:"flex items-center gap-2",children:[l,g]}),e[5]=l,e[6]=g,e[7]=d):d=e[7];let c;e[8]!==s.title?(c=i("h1",{className:"text-lg font-semibold text-foreground","data-testid":"api-operation-title",children:s.title}),e[8]=s.title,e[9]=c):c=e[9];let u;e[10]!==s.description?(u=s.description!==void 0&&i("p",{className:"text-sm text-muted-foreground",children:s.description}),e[10]=s.description,e[11]=u):u=e[11];let h;e[12]!==d||e[13]!==c||e[14]!==u?(h=N("header",{className:"sticky top-0 z-10 -mx-6 -mt-6 flex flex-col gap-2 border-b border-border bg-background px-6 pt-6 pb-3",children:[d,c,u]}),e[12]=d,e[13]=c,e[14]=u,e[15]=h):h=e[15];let p;e[16]!==r?(p=r("Try it"),e[16]=r,e[17]=p):p=e[17];let f;e[18]!==p?(f=i("h2",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:p}),e[18]=p,e[19]=f):f=e[19];let m;e[20]===Symbol.for("react.memo_cache_sentinel")?(m=i(Ue,{}),e[20]=m):m=e[20];let v;e[21]!==f?(v=N("section",{className:"flex flex-col gap-2",children:[f,m]}),e[21]=f,e[22]=v):v=e[22];let w;e[23]!==r?(w=r("Request arguments"),e[23]=r,e[24]=w):w=e[24];let x;e[25]!==w?(x=i("h2",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:w}),e[25]=w,e[26]=x):x=e[26];let b;e[27]!==s.argsSchema?(b=i(G,{schema:s.argsSchema,testId:"api-operation-args"}),e[27]=s.argsSchema,e[28]=b):b=e[28];let y;e[29]!==x||e[30]!==b?(y=N("section",{className:"flex flex-col gap-2",children:[x,b]}),e[29]=x,e[30]=b,e[31]=y):y=e[31];let S;e[32]!==r?(S=r("Response body"),e[32]=r,e[33]=S):S=e[33];let O;e[34]!==S?(O=i("h2",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:S}),e[34]=S,e[35]=O):O=e[35];let k;if(e[36]!==s.responses||e[37]!==r){let E;e[39]!==r?(E=$=>N("div",{className:"flex flex-col gap-1.5 rounded-xl border border-border bg-card p-3",children:[N("div",{className:"flex items-center justify-between gap-2",children:[N("span",{className:`inline-flex items-center gap-1.5 font-mono text-xs font-semibold ${te($.status)}`,children:[i("span",{className:`size-1.5 rounded-full ${re($.status)}`}),$.status]}),$.schema!==void 0&&i("span",{className:"rounded border border-border px-1.5 py-0.5 font-mono text-[10px] text-muted-foreground",children:r("application/json")})]}),$.description!==void 0&&i("p",{className:"text-xs text-muted-foreground",children:$.description}),$.schema!==void 0&&i(G,{schema:$.schema,testId:`api-response-${$.status}`})]},$.status),e[39]=r,e[40]=E):E=e[40],k=s.responses.map(E),e[36]=s.responses,e[37]=r,e[38]=k}else k=e[38];let T;e[41]!==O||e[42]!==k?(T=N("section",{className:"flex flex-col gap-3",children:[O,k]}),e[41]=O,e[42]=k,e[43]=T):T=e[43];let A;return e[44]!==s.key||e[45]!==n||e[46]!==v||e[47]!==y||e[48]!==T||e[49]!==h?(A=N("div",{className:"flex flex-col gap-6 duration-200 animate-in fade-in-0 slide-in-from-bottom-1","data-testid":n,children:[h,v,y,T]},o),e[44]=s.key,e[45]=n,e[46]=v,e[47]=y,e[48]=T,e[49]=h,e[50]=A):A=e[50],A},Ge={boolean:"text-royal-amethyst",key:"text-sky-sapphire",number:"text-warning",plain:"",string:"text-success"},Xe=/"(?:[^"\\]|\\.)*"|\b(?:true|false|null)\b|-?\d+(?:\.\d+)?/g,Ye=/^\s*:/,Qe=(t,e,s)=>s.startsWith('"')?Ye.test(t.slice(e))?"key":"string":s==="true"||s==="false"||s==="null"?"boolean":"number",Ze=t=>{const e=[];let s=0;for(const r of t.matchAll(Xe)){const{index:n}=r,o=r[0],l=n+o.length;n>s&&e.push({kind:"plain",start:s,text:t.slice(s,n)}),e.push({kind:Qe(t,l,o),start:n,text:o}),s=l}return s<t.length&&e.push({kind:"plain",start:s,text:t.slice(s)}),e},et=t=>{const e=P(4),{code:s}=t;let r;e[0]!==s?(r=Ze(s).map(tt),e[0]=s,e[1]=r):r=e[1];let n;return e[2]!==r?(n=i(ye,{children:r}),e[2]=r,e[3]=n):n=e[3],n};function tt(t){return i("span",{className:Ge[t.kind],children:t.text},t.start)}const oe="__live__",rt=t=>t.schema===void 0?"":JSON.stringify(D(t.schema),void 0,2),st=(t,e,s)=>s?t??"":e===void 0?"":JSON.stringify(e,pe,2),nt=t=>{const e=P(18),{active:s,running:r,showError:n}=t,o=J();if(r){let u;e[0]!==o?(u=o("Sending…"),e[0]=o,e[1]=u):u=e[1];let h;return e[2]!==u?(h=i("p",{className:"px-3 py-3 text-xs text-muted-foreground","data-testid":"api-response-running",children:u}),e[2]=u,e[3]=h):h=e[3],h}if(s===void 0||s.body===""){let u;e[4]!==s?.live||e[5]!==o?(u=s?.live===!0?o("Send a request to see the response."):o("No example for this response."),e[4]=s?.live,e[5]=o,e[6]=u):u=e[6];let h;return e[7]!==u?(h=i("p",{className:"px-3 py-3 text-xs text-muted-foreground","data-testid":"api-response-idle",children:u}),e[7]=u,e[8]=h):h=e[8],h}const l=n&&"text-destructive";let a;e[9]!==l?(a=Q("max-h-[28rem] overflow-auto px-3 py-3 font-mono text-xs",l),e[9]=l,e[10]=a):a=e[10];const g=n?"api-response-error":"api-response-body";let d;e[11]!==s.body||e[12]!==n?(d=n?s.body:i(et,{code:s.body}),e[11]=s.body,e[12]=n,e[13]=d):d=e[13];let c;return e[14]!==a||e[15]!==g||e[16]!==d?(c=i("pre",{className:a,"data-testid":g,children:d}),e[14]=a,e[15]=g,e[16]=d,e[17]=c):c=e[17],c},ot=({durationMs:t,error:e,failed:s,operation:r,ran:n,response:o,t:l})=>{const a=r.responses.map(d=>({body:rt(d),durationMs:null,id:d.status,label:d.status,live:!1,status:d.status}));return n?[{body:st(e,o,s),durationMs:t,id:oe,label:l("Live"),live:!0,status:s?"error":"200"},...a]:a},it=()=>{const t=P(19),e=J(),{durationMs:s,error:r,operation:n,response:o,status:l}=ne(),a=l==="running",g=l==="error",d=l==="success"||g,c=ot({durationMs:s,error:r,failed:g,operation:n,ran:d,response:o,t:e}),u=d?oe:c.find(at)?.id??c[0]?.id??"",[h,p]=L(null),f=c.find(C=>C.id===(h??u))??c[0];let m;t[0]===Symbol.for("react.memo_cache_sentinel")?(m=C=>{const{id:_}=C.currentTarget.dataset;_!==void 0&&p(_)},t[0]=m):m=t[0];const v=m,w=()=>{f!==void 0&&Y(f.body)},x=f?.live===!0?f.durationMs:null,b=f?.live===!0&&f.status==="error",y="flex min-h-0 flex-col rounded-xl border border-border bg-card",S="api-response-panel";let O;t[1]!==e?(O=e("Response"),t[1]=e,t[2]=O):O=t[2];let k;t[3]!==O?(k=i("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:O}),t[3]=O,t[4]=k):k=t[4];const T=x!==null&&i("span",{className:"font-mono text-[10px] text-muted-foreground",children:e("{ms} ms",{ms:x})}),A=f!==void 0&&f.body!==""&&i(q,{"aria-label":e("Copy"),"data-testid":"api-response-copy",onClick:w,size:"icon-xs",type:"button",variant:"ghost",children:i(W,{icon:ge,strokeWidth:2})});let E;t[5]!==T||t[6]!==A?(E=N("div",{className:"flex items-center gap-2",children:[T,A]}),t[5]=T,t[6]=A,t[7]=E):E=t[7];let $;t[8]!==k||t[9]!==E?($=N("div",{className:"flex items-center justify-between gap-2 border-b border-border px-3 py-2",children:[k,E]}),t[8]=k,t[9]=E,t[10]=$):$=t[10];const R=c.length>0&&i("div",{className:"flex gap-1 overflow-x-auto border-b border-border px-2 py-1.5",role:"tablist",children:c.map(C=>{const _=C.id===f?.id;return N("button",{"aria-selected":_,className:Q("inline-flex items-center gap-1.5 rounded px-2 py-0.5 font-mono text-xs transition-colors hover:text-foreground aria-selected:bg-muted aria-selected:font-medium",_?te(C.status):"text-muted-foreground"),"data-id":C.id,"data-testid":C.live?"api-response-tab-live":`api-response-tab-${C.status}`,onClick:v,role:"tab",type:"button",children:[i("span",{className:`size-1.5 rounded-full ${re(C.status)}`}),C.label]},C.id)})});let j;t[11]!==f||t[12]!==a||t[13]!==b?(j=i(nt,{active:f,running:a,showError:b}),t[11]=f,t[12]=a,t[13]=b,t[14]=j):j=t[14];let I;return t[15]!==j||t[16]!==$||t[17]!==R?(I=N("div",{className:y,"data-testid":S,children:[$,R,j]}),t[15]=j,t[16]=$,t[17]=R,t[18]=I):I=t[18],I};function at(t){return t.status.startsWith("2")}const lt=(t,e)=>{const s=e.trim().toLowerCase();return s===""?t:t.map(r=>({...r,operations:r.operations.filter(n=>`${n.summary} ${n.operationId}`.toLowerCase().includes(s))})).filter(r=>r.operations.length>0)},$t=t=>{const e=P(53),{model:s}=t,r=J(),n=s.groups[0]?.operations[0]?.key??"",[o,l]=L(n),[a,g]=L("");let d;e[0]!==n||e[1]!==s.operationByKey||e[2]!==o?(d=s.operationByKey.get(o)??s.operationByKey.get(n),e[0]=n,e[1]=s.operationByKey,e[2]=o,e[3]=d):d=e[3];const c=d;let u,h,p,f,m,v,w,x,b,y;if(e[4]!==a||e[5]!==s.groups||e[6]!==s.server||e[7]!==c?.key||e[8]!==r){u=lt(s.groups,a);let E;e[19]===Symbol.for("react.memo_cache_sentinel")?(E=M=>{const{key:B}=M.currentTarget.dataset;B!==void 0&&l(B)},e[19]=E):E=e[19];const $=E;let R;e[20]===Symbol.for("react.memo_cache_sentinel")?(R=M=>{g(M.target.value)},e[20]=R):R=e[20];const j=R;h=s.server??"",b="grid min-h-0 flex-1 grid-cols-1 overflow-hidden lg:grid-cols-[16rem_minmax(0,1fr)_22rem]",y="api-reference",e[21]!==r?(m=r("API operations"),e[21]=r,e[22]=m):m=e[22],v="flex min-h-0 flex-col overflow-y-auto border-r border-border",w="api-reference-nav";let I;e[23]===Symbol.for("react.memo_cache_sentinel")?(I=i(W,{className:"pointer-events-none absolute top-1/2 left-2 size-3.5 -translate-y-1/2 text-muted-foreground",icon:xe,strokeWidth:2}),e[23]=I):I=e[23];let C;e[24]!==r?(C=r("Filter operations"),e[24]=r,e[25]=C):C=e[25],e[26]!==a||e[27]!==C?(x=i("div",{className:"sticky top-0 z-10 border-b border-border bg-sidebar p-2",children:N("div",{className:"relative",children:[I,i(be,{className:"h-7 pl-7","data-testid":"api-filter",onChange:j,placeholder:C,value:a})]})}),e[26]=a,e[27]=C,e[28]=x):x=e[28],p="flex flex-col gap-4 p-2";let _;e[29]!==c?.key||e[30]!==r?(_=M=>N("div",{className:"flex flex-col gap-1",children:[N("div",{className:"flex items-center justify-between px-2",children:[i("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:M.name||r("(root)")}),i("span",{className:"font-mono text-[10px] text-muted-foreground/70",children:M.operations.length})]}),M.operations.map(B=>{const ie=B.key===c?.key;return N("button",{"aria-current":ie?"page":void 0,className:"flex items-center justify-between gap-2 rounded-md border-l-2 border-transparent px-2 py-1 text-start text-xs text-muted-foreground transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground aria-[current=page]:border-primary aria-[current=page]:bg-sidebar-accent aria-[current=page]:font-medium aria-[current=page]:text-foreground","data-key":B.key,"data-testid":`api-nav-${B.operationId}`,onClick:$,type:"button",children:[i("span",{className:"truncate",children:B.summary}),i(H,{kind:B.kind,method:B.method})]},B.key)})]},M.name),e[29]=c?.key,e[30]=r,e[31]=_):_=e[31],f=u.map(_),e[4]=a,e[5]=s.groups,e[6]=s.server,e[7]=c?.key,e[8]=r,e[9]=u,e[10]=h,e[11]=p,e[12]=f,e[13]=m,e[14]=v,e[15]=w,e[16]=x,e[17]=b,e[18]=y}else u=e[9],h=e[10],p=e[11],f=e[12],m=e[13],v=e[14],w=e[15],x=e[16],b=e[17],y=e[18];let S;e[32]!==u.length||e[33]!==r?(S=u.length===0&&i("p",{className:"px-2 py-1 text-xs text-muted-foreground","data-testid":"api-nav-empty",children:r("No operations match your filter.")}),e[32]=u.length,e[33]=r,e[34]=S):S=e[34];let O;e[35]!==S||e[36]!==p||e[37]!==f?(O=N("div",{className:p,children:[f,S]}),e[35]=S,e[36]=p,e[37]=f,e[38]=O):O=e[38];let k;e[39]!==O||e[40]!==m||e[41]!==v||e[42]!==w||e[43]!==x?(k=N("nav",{"aria-label":m,className:v,"data-testid":w,children:[x,O]}),e[39]=O,e[40]=m,e[41]=v,e[42]=w,e[43]=x,e[44]=k):k=e[44];let T;e[45]!==c||e[46]!==h?(T=c===void 0?i("div",{className:"lg:col-span-2"}):N(He,{operation:c,children:[i("div",{className:"min-w-0 overflow-y-auto p-6","data-testid":"api-reference-main",children:i(Ve,{operation:c})}),N("aside",{className:"flex min-w-0 flex-col gap-4 overflow-y-auto border-border p-4 lg:border-l","data-testid":"api-reference-aside",children:[i(_e,{operation:c,server:h}),i(it,{})]})]},c.key),e[45]=c,e[46]=h,e[47]=T):T=e[47];let A;return e[48]!==k||e[49]!==T||e[50]!==b||e[51]!==y?(A=N("div",{className:b,"data-testid":y,children:[k,T]}),e[48]=k,e[49]=T,e[50]=b,e[51]=y,e[52]=A):A=e[52],A};export{$t as R,Ot as u};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import{c as v}from"react/compiler-runtime";import{Download01Icon as ne}from"@hugeicons/core-free-icons";import{HugeiconsIcon as se}from"@hugeicons/react";import{Handle as B,Position as G,getNodesBounds as re,getViewportForBounds as ae,useNodesState as le,useEdgesState as ie,ReactFlow as ce,Background as de,Panel as M,Controls as me,MiniMap as pe,useNodes as ue,useReactFlow as U,useNodesInitialized as fe}from"@xyflow/react";import{useState as k,useMemo as _,useRef as ge,useEffect as D}from"react";import{S as he,T as N}from"./storage-tier-C2mKwYRj.mjs";import{B as S}from"./badge-r_5B4LHP.mjs";import{B as j}from"./button-q0UYSmrn.mjs";import{d as be,D as xe,c as Ne,b as C}from"./dropdown-menu-jLZenfWH.mjs";import{I as ye}from"./input-CXhxesPC.mjs";import{useT as T}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{f as L}from"./internal-Df43vQI0.mjs";import{c as y}from"./utils-bhneXptQ.mjs";import{jsx as i,jsxs as f}from"react/jsx-runtime";import{LunoraError as ve}from"@lunora/errors";import{toBlob as we,toSvg as Se}from"html-to-image";function Ee(o){const e=v(10);let t,a,s;e[0]!==o?({className:t,selected:s,...a}=o,e[0]=o,e[1]=t,e[2]=a,e[3]=s):(t=e[1],a=e[2],s=e[3]);const r=s===!0?"":void 0;let n;e[4]!==t?(n=y("rounded-md border border-border bg-card text-card-foreground shadow-sm transition-colors","data-[selected]:border-ring data-[selected]:ring-[3px] data-[selected]:ring-ring/30",t),e[4]=t,e[5]=n):n=e[5];let l;return e[6]!==a||e[7]!==r||e[8]!==n?(l=i("div",{"data-slot":"base-node","data-selected":r,className:n,...a}),e[6]=a,e[7]=r,e[8]=n,e[9]=l):l=e[9],l}function Te(o){const e=v(8);let t,a;e[0]!==o?({className:t,...a}=o,e[0]=o,e[1]=t,e[2]=a):(t=e[1],a=e[2]);let s;e[3]!==t?(s=y("flex items-center gap-2 rounded-t-md bg-muted/50 px-3 py-1.5",t),e[3]=t,e[4]=s):s=e[4];let r;return e[5]!==a||e[6]!==s?(r=i("div",{"data-slot":"base-node-header",className:s,...a}),e[5]=a,e[6]=s,e[7]=r):r=e[7],r}function $e(o){const e=v(8);let t,a;e[0]!==o?({className:t,...a}=o,e[0]=o,e[1]=t,e[2]=a):(t=e[1],a=e[2]);let s;e[3]!==t?(s=y("flex flex-col",t),e[3]=t,e[4]=s):s=e[4];let r;return e[5]!==a||e[6]!==s?(r=i("div",{"data-slot":"base-node-content",className:s,...a}),e[5]=a,e[6]=s,e[7]=r):r=e[7],r}const F=o=>{const e=o.ref===void 0?o.type:`${o.type} → ${o.ref}`;return o.optional===!0?`${e}?`:e},_e=o=>{const e=v(22),{data:t,selected:a}=o,s=T();let r;e[0]!==t.label||e[1]!==t.loadError||e[2]!==s?(r=t.loadError===!0?i("span",{className:"px-3 py-1.5 text-xs text-destructive","data-testid":`sd-node-${t.label}-error`,children:s("Columns unavailable")}):i("span",{className:"px-3 py-1.5 text-xs text-muted-foreground",children:"—"}),e[0]=t.label,e[1]=t.loadError,e[2]=s,e[3]=r):r=e[3];const n=r,l=`sd-node-${t.label}`;let d;e[4]!==t.label?(d=i("span",{className:"truncate font-mono text-xs font-semibold",title:t.label,children:t.label}),e[4]=t.label,e[5]=d):d=e[5];let m;e[6]!==t.tier?(m=i("span",{className:"ms-auto",children:i(he,{tier:t.tier})}),e[6]=t.tier,e[7]=m):m=e[7];let c;e[8]!==d||e[9]!==m?(c=f(Te,{children:[d,m]}),e[8]=d,e[9]=m,e[10]=c):c=e[10];let p;e[11]!==t.columns||e[12]!==t.label||e[13]!==n?(p=t.columns.length===0?n:t.columns.map(g=>f("div",{className:y("relative flex items-center gap-2 border-t border-border px-3 py-1.5 text-xs first:border-t-0",g.pk===!0&&"bg-muted/30"),"data-testid":`sd-col-${t.label}-${g.name}`,children:[i(B,{className:"!h-2 !w-2 !-left-1 !border-border !bg-muted-foreground/70",id:g.name,isConnectable:!1,position:G.Left,type:"target"}),i("span",{className:"truncate font-mono",title:g.name,children:g.name}),g.pk===!0&&i(S,{className:"px-1 py-0 text-[10px] leading-tight",variant:"secondary",children:"PK"}),g.ref!==void 0&&i(S,{className:"px-1 py-0 text-[10px] leading-tight",variant:"outline",children:"FK"}),i("span",{className:"ms-auto truncate text-muted-foreground",title:F(g),children:F(g)}),i(B,{className:"!h-2 !w-2 !-right-1 !border-border !bg-muted-foreground/70",id:g.name,isConnectable:!1,position:G.Right,type:"source"})]},g.name)),e[11]=t.columns,e[12]=t.label,e[13]=n,e[14]=p):p=e[14];let u;e[15]!==p?(u=i($e,{children:p}),e[15]=p,e[16]=u):u=e[16];let b;return e[17]!==a||e[18]!==l||e[19]!==c||e[20]!==u?(b=f(Ee,{className:"w-64 overflow-hidden","data-testid":l,selected:a,children:[c,u]}),e[17]=a,e[18]=l,e[19]=c,e[20]=u,e[21]=b):b=e[21],b},x=1920,E=1080,K=32,R=(o,e)=>{const t=globalThis.document.createElement("a");t.href=o,t.download=e,globalThis.document.body.append(t),t.click(),t.remove()},Ce=(o,e,t="schema-diagram.json")=>{const a={edges:e,exportedAt:new Date().toISOString(),nodes:o},s=JSON.stringify(a,void 0,2),r=globalThis.URL.createObjectURL(new globalThis.Blob([s],{type:"application/json"}));R(r,t),globalThis.setTimeout(()=>{globalThis.URL.revokeObjectURL(r)},0)},P=(o,e,t,a)=>{const s=re(o),{x:r,y:n,zoom:l}=ae(s,e,t,.1,2,a);return{transform:[r,n,l],zoom:l}},Me=async(o,e,t="schema-diagram.png")=>{const{transform:a}=P(e,x,E,K),[s,r,n]=a,l=await we(o,{backgroundColor:"#ffffff",height:E,style:{transform:`translate(${s.toString()}px, ${r.toString()}px) scale(${n.toString()})`,transformOrigin:"top left",width:`${x.toString()}px`},width:x});if(l===null)throw new ve("INTERNAL","html-to-image produced no blob");const d=globalThis.URL.createObjectURL(l);R(d,t),globalThis.setTimeout(()=>{globalThis.URL.revokeObjectURL(d)},0)},ke=async(o,e,t="schema-diagram.svg")=>{const{transform:a}=P(e,x,E,K),[s,r,n]=a,l=await Se(o,{backgroundColor:"#ffffff",height:E,style:{transform:`translate(${s.toString()}px, ${r.toString()}px) scale(${n.toString()})`,transformOrigin:"top left",width:`${x.toString()}px`},width:x});R(l,t)},W=256,q=112,I=36,w=24,De=480,Le=1.4,Re=o=>{const e=Math.max(1,Math.round(Math.sqrt(Le*o/(W+q))));return Math.max(De,o/e)},Ae=38,Oe=28,z=o=>Ae+Math.max(1,o)*Oe,He=(o,e)=>{const t=new Map;for(const n of o)t.set(n,[]);for(const n of e)n.to!==n.from&&t.has(n.from)&&t.has(n.to)&&t.get(n.from)?.push(n.to);const a=new Map,s=new Set,r=n=>{const l=a.get(n);if(l!==void 0)return l;if(s.has(n))return 0;s.add(n);let d=0;for(const m of t.get(n)??[])d=Math.max(d,r(m)+1);return s.delete(n),a.set(n,d),d};for(const n of o)r(n);return a},Be=(o,e,t)=>{const a=He(o,e),s=new Map;for(const m of o){const c=a.get(m)??0,p=s.get(c);p===void 0?s.set(c,[m]):p.push(m)}const r=o.reduce((m,c)=>m+z(t.get(c)??0)+I,0),n=Re(r),l=[];let d=0;for(const m of[...s.keys()].toSorted((c,p)=>c-p)){let c=0,p=w;for(const u of s.get(m)??[]){const b=z(t.get(u)??0);p>w&&p+b>n&&(c+=1,p=w),l.push({name:u,x:w+(d+c)*(W+q),y:p}),p+=b+I}d+=c+1}return l},Ge={databaseSchema:_e},J={backgroundColor:N.shard.color},V={backgroundColor:N.global.color},je={global:!0,shard:!0},Fe={},Ie=o=>{const e=o.find(t=>t.pk===!0)?.name;return e!==void 0?e:o.some(t=>t.name==="_id")?"_id":o.some(t=>t.name==="id")?"id":o[0]?.name??"_id"},Y=o=>o.flatMap(e=>e.columns.filter(t=>t.ref!==void 0).map(t=>({column:t.name,from:e.name,to:t.ref}))),ze=(o,e,t)=>{const a=o.map(l=>l.name),s=new Map(o.map(l=>[l.name,l.columns.length])),r=Be(a,Y(o),s),n=new Map(o.map(l=>[l.name,l]));return r.flatMap(({name:l,x:d,y:m})=>{const c=n.get(l);return c===void 0?[]:[{className:t[l],data:{columns:c.columns,label:l,loadError:e,tier:c.tier},id:l,position:{x:d,y:m},type:"databaseSchema"}]})},Ue=o=>{const e=new Map(o.map(t=>[t.name,t.columns]));return Y(o).flatMap(t=>{const a=e.get(t.to)??[],s=e.get(t.from)??[],r=Ie(a);return!a.some(n=>n.name===r)||!s.some(n=>n.name===t.column)?[]:[{id:`${t.from}.${t.column}->${t.to}`,source:t.to,sourceHandle:r,target:t.from,targetHandle:t.column}]})},Ke=()=>{const o=v(15),e=T();let t;o[0]===Symbol.for("react.memo_cache_sentinel")?(t=f("span",{className:"flex items-center gap-1",children:[i("span",{"aria-hidden":"true",className:"size-1.5 rounded-full",style:J}),N.shard.label]}),o[0]=t):t=o[0];let a;o[1]===Symbol.for("react.memo_cache_sentinel")?(a=f("span",{className:"flex items-center gap-1",children:[i("span",{"aria-hidden":"true",className:"size-1.5 rounded-full",style:V}),N.global.label]}),o[1]=a):a=o[1];let s;o[2]===Symbol.for("react.memo_cache_sentinel")?(s=i(S,{className:"px-1 py-0 text-[10px] leading-tight",variant:"secondary",children:"PK"}),o[2]=s):s=o[2];let r;o[3]!==e?(r=e("Primary key"),o[3]=e,o[4]=r):r=o[4];let n;o[5]!==r?(n=f("span",{className:"flex items-center gap-1",children:[s,r]}),o[5]=r,o[6]=n):n=o[6];let l;o[7]===Symbol.for("react.memo_cache_sentinel")?(l=i(S,{className:"px-1 py-0 text-[10px] leading-tight",variant:"outline",children:"FK"}),o[7]=l):l=o[7];let d;o[8]!==e?(d=e("Foreign key"),o[8]=e,o[9]=d):d=o[9];let m;o[10]!==d?(m=f("span",{className:"flex items-center gap-1",children:[l,d]}),o[10]=d,o[11]=m):m=o[11];let c;return o[12]!==n||o[13]!==m?(c=f("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1 rounded-xl border border-border bg-card/95 px-2.5 py-1.5 text-[11px] text-muted-foreground shadow-xs",children:[t,a,n,m]}),o[12]=n,o[13]=m,o[14]=c):c=o[14],c},Pe=12,We=o=>{const e=v(9),{containerRef:t,seedKey:a}=o,s=fe(),{fitView:r}=U();let n;e[0]!==t||e[1]!==r||e[2]!==s?(n=()=>{if(!s)return;const d=()=>{L(r({duration:0,maxZoom:1.6,padding:.14}))};d();const m=t.current;if(m===null)return;const c=new ResizeObserver(()=>{d()});return c.observe(m),()=>{c.disconnect()}},e[0]=t,e[1]=r,e[2]=s,e[3]=n):n=e[3];let l;return e[4]!==t||e[5]!==r||e[6]!==s||e[7]!==a?(l=[t,r,s,a],e[4]=t,e[5]=r,e[6]=s,e[7]=a,e[8]=l):l=e[8],D(n,l),null},qe=({containerRef:o,testIdPrefix:e})=>{const t=T(),a=ue(),{getEdges:s}=U(),[r,n]=k(null),l=async()=>{const u=o.current?.querySelector(".react-flow__viewport");if(u){n("png");try{await Me(u,a,`${e}-schema-diagram.png`)}finally{n(null)}}},d=async()=>{const u=o.current?.querySelector(".react-flow__viewport");if(u){n("svg");try{await ke(u,a,`${e}-schema-diagram.svg`)}finally{n(null)}}},m=()=>{n("json");try{Ce(a,s(),`${e}-schema-diagram.json`)}finally{n(null)}},c=()=>{L(l())},p=()=>{L(d())};return i(M,{position:"top-right",children:f(be,{children:[f(xe,{className:"group/button inline-flex shrink-0 cursor-pointer items-center justify-center gap-1 rounded-md border border-border bg-background px-2 text-xs font-medium whitespace-nowrap hover:bg-muted disabled:pointer-events-none disabled:opacity-50","data-testid":`${e}-export-trigger`,disabled:r!==null,children:[i(se,{className:"size-3.5",icon:ne,strokeWidth:2}),t("Export")]}),f(Ne,{align:"end",children:[i(C,{"data-testid":`${e}-export-png`,disabled:r!==null,onClick:c,children:t("PNG")}),i(C,{"data-testid":`${e}-export-svg`,disabled:r!==null,onClick:p,children:t("SVG")}),i(C,{"data-testid":`${e}-export-json`,disabled:r!==null,onClick:m,children:t("JSON")})]})]})})},dt=({columnsError:o,fill:e=!1,nodeClasses:t,tables:a,testIdPrefix:s})=>{const r=T(),[n,l]=k(je),[d,m]=k(""),c=_(()=>{const h=d.trim().toLowerCase();return a.filter(H=>n[H.tier]&&H.name.toLowerCase().includes(h))},[a,n,d]),p=_(()=>ze(c,o??!1,t??Fe),[c,o,t]),u=_(()=>Ue(c),[c]),b=c.map(h=>h.name).join(","),[g,A,Q]=le(p),[Z,O,X]=ie(u),$=ge(null);D(()=>{A(p)},[p,A]),D(()=>{O(u)},[u,O]);const ee=h=>{m(h.target.value)},te=()=>{l(h=>({...h,shard:!h.shard}))},oe=()=>{l(h=>({...h,global:!h.global}))};return a.length===0?i("section",{className:"flex flex-col gap-2","data-testid":`${s}-section`,children:i("p",{className:"text-sm text-muted-foreground","data-testid":`${s}-empty`,children:r("No tables to graph.")})}):i("section",{className:y("flex flex-col",e&&"min-h-0 flex-1"),"data-testid":`${s}-section`,children:i("div",{className:y("w-full overflow-hidden border border-border bg-muted/20",e?"min-h-0 flex-1":"h-[560px]"),"data-testid":`${s}-canvas`,ref:$,children:f(ce,{edges:Z,elementsSelectable:!0,fitView:!0,minZoom:.2,nodes:g,nodesConnectable:!1,nodeTypes:Ge,onEdgesChange:X,onNodesChange:Q,children:[i(de,{}),i(M,{position:"top-left",children:f("div",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card/95 p-2 shadow-xs",children:[i(ye,{"aria-label":r("Find table…"),className:"h-7 w-44 text-xs","data-testid":`${s}-find`,onChange:ee,placeholder:r("Find table…"),value:d}),f("div",{"aria-label":r("Storage tiers"),className:"flex items-center gap-1.5",role:"group",children:[f(j,{"aria-pressed":n.shard,className:"gap-1.5","data-testid":`${s}-tier-shard`,onClick:te,size:"xs",type:"button",variant:n.shard?"default":"outline",children:[i("span",{"aria-hidden":"true",className:"size-1.5 rounded-full",style:J}),N.shard.label]}),f(j,{"aria-pressed":n.global,className:"gap-1.5","data-testid":`${s}-tier-global`,onClick:oe,size:"xs",type:"button",variant:n.global?"default":"outline",children:[i("span",{"aria-hidden":"true",className:"size-1.5 rounded-full",style:V}),N.global.label]})]})]})}),i(M,{position:"bottom-center",children:i(Ke,{})}),i(me,{showInteractive:!1}),c.length>Pe&&i(pe,{className:"!border !border-border !bg-card",maskColor:"var(--color-muted)",nodeColor:"var(--color-muted-foreground)",nodeStrokeWidth:0,pannable:!0,zoomable:!0}),i(qe,{containerRef:$,testIdPrefix:s}),i(We,{containerRef:$,seedKey:b})]})})})};export{dt as S};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import{c as u}from"react/compiler-runtime";import{ScrollArea as i}from"@base-ui/react/scroll-area";import{c as m}from"./utils-bhneXptQ.mjs";import{jsx as c,jsxs as b}from"react/jsx-runtime";function z(s){const r=u(14);let e,l,a;r[0]!==s?({className:l,children:e,...a}=s,r[0]=s,r[1]=e,r[2]=l,r[3]=a):(e=r[1],l=r[2],a=r[3]);let t;r[4]!==l?(t=m("relative",l),r[4]=l,r[5]=t):t=r[5];let o;r[6]!==e?(o=c(i.Viewport,{"data-slot":"scroll-area-viewport",className:"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",children:e}),r[6]=e,r[7]=o):o=r[7];let n,d;r[8]===Symbol.for("react.memo_cache_sentinel")?(n=c(h,{}),d=c(i.Corner,{}),r[8]=n,r[9]=d):(n=r[8],d=r[9]);let f;return r[10]!==a||r[11]!==t||r[12]!==o?(f=b(i.Root,{"data-slot":"scroll-area",className:t,...a,children:[o,n,d]}),r[10]=a,r[11]=t,r[12]=o,r[13]=f):f=r[13],f}function h({className:s,orientation:r="vertical",...e}){return c(i.Scrollbar,{"data-slot":"scroll-area-scrollbar","data-orientation":r,orientation:r,className:m("flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-s data-vertical:border-s-transparent",s),...e,children:c(i.Thumb,{"data-slot":"scroll-area-thumb",className:"relative flex-1 rounded-md bg-border"})})}export{z as S};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import{c as u}from"react/compiler-runtime";import{Select as l}from"@base-ui/react/select";import{c}from"./utils-bhneXptQ.mjs";import{HugeiconsIcon as m}from"@hugeicons/react";import{Tick02Icon as g,UnfoldMoreIcon as v,ArrowUp01Icon as b,ArrowDown01Icon as h}from"@hugeicons/core-free-icons";import{jsx as i,jsxs as p}from"react/jsx-runtime";const I=l.Root;function $(s){const e=u(8);let t,o;e[0]!==s?({className:t,...o}=s,e[0]=s,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let a;e[3]!==t?(a=c("flex flex-1 text-start",t),e[3]=t,e[4]=a):a=e[4];let r;return e[5]!==o||e[6]!==a?(r=i(l.Value,{"data-slot":"select-value",className:a,...o}),e[5]=o,e[6]=a,e[7]=r):r=e[7],r}function j({className:s,size:e="default",children:t,...o}){return p(l.Trigger,{"data-slot":"select-trigger","data-size":e,className:c("flex w-fit items-center justify-between gap-1.5 rounded-md border border-input bg-transparent py-2 pe-2 ps-2.5 text-xs whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-md *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),...o,children:[t,i(l.Icon,{render:i(m,{icon:v,strokeWidth:2,className:"pointer-events-none size-4 text-muted-foreground"})})]})}function A({className:s,children:e,side:t="bottom",sideOffset:o=4,align:a="center",alignOffset:r=0,alignItemWithTrigger:n=!0,...d}){return i(l.Portal,{children:i(l.Positioner,{side:t,sideOffset:o,align:a,alignOffset:r,alignItemWithTrigger:n,className:"isolate z-50",children:p(l.Popup,{"data-slot":"select-content","data-align-trigger":n,className:c("isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-start-2 data-[side=inline-start]:slide-in-from-end-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!",s),...d,children:[i(x,{}),i(l.List,{children:e}),i(w,{})]})})})}function U(s){const e=u(13);let t,o,a;e[0]!==s?({className:o,children:t,...a}=s,e[0]=s,e[1]=t,e[2]=o,e[3]=a):(t=e[1],o=e[2],a=e[3]);let r;e[4]!==o?(r=c("relative flex w-full cursor-default items-center gap-2 rounded-md py-2 pe-8 ps-2 text-xs outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",o),e[4]=o,e[5]=r):r=e[5];let n;e[6]!==t?(n=i(l.ItemText,{className:"flex flex-1 shrink-0 gap-2 whitespace-nowrap",children:t}),e[6]=t,e[7]=n):n=e[7];let d;e[8]===Symbol.for("react.memo_cache_sentinel")?(d=i(l.ItemIndicator,{render:i("span",{className:"pointer-events-none absolute end-2 flex size-4 items-center justify-center"}),children:i(m,{icon:g,strokeWidth:2,className:"pointer-events-none"})}),e[8]=d):d=e[8];let f;return e[9]!==a||e[10]!==r||e[11]!==n?(f=p(l.Item,{"data-slot":"select-item",className:r,...a,children:[n,d]}),e[9]=a,e[10]=r,e[11]=n,e[12]=f):f=e[12],f}function x(s){const e=u(9);let t,o;e[0]!==s?({className:t,...o}=s,e[0]=s,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let a;e[3]!==t?(a=c("top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",t),e[3]=t,e[4]=a):a=e[4];let r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=i(m,{icon:b,strokeWidth:2}),e[5]=r):r=e[5];let n;return e[6]!==o||e[7]!==a?(n=i(l.ScrollUpArrow,{"data-slot":"select-scroll-up-button",className:a,...o,children:r}),e[6]=o,e[7]=a,e[8]=n):n=e[8],n}function w(s){const e=u(9);let t,o;e[0]!==s?({className:t,...o}=s,e[0]=s,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let a;e[3]!==t?(a=c("bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",t),e[3]=t,e[4]=a):a=e[4];let r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=i(m,{icon:h,strokeWidth:2}),e[5]=r):r=e[5];let n;return e[6]!==o||e[7]!==a?(n=i(l.ScrollDownArrow,{"data-slot":"select-scroll-down-button",className:a,...o,children:r}),e[6]=o,e[7]=a,e[8]=n):n=e[8],n}export{$ as S,j as a,A as b,U as c,I as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{s as a,l as i}from"./browser-storage-BH1MxLZs.mjs";const e="lunora-studio-recent-shards",c=10,o=()=>i(e,"session").filter(s=>typeof s=="string"),l=s=>{const r=s.trim();if(r==="")return o();const t=[r,...o().filter(n=>n!==r)].slice(0,c);return a(e,t,"session"),t};export{o as l,l as r};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useSyncExternalStore as f}from"react";import{l as h,s as u}from"./browser-storage-BH1MxLZs.mjs";const r={console:"`",palette:"k"},c="lunora-studio-shortcuts",n=new Set,p=t=>{const e=typeof t?.console=="string"?t.console.toLowerCase():void 0,s=typeof t?.palette=="string"?t.palette.toLowerCase():void 0;return e?.length===1&&s?.length===1&&e!==s?{console:e,palette:s}:r};let o=r;const S=()=>{o=p(h(c)[0]);for(const t of n)t()};S();const g=t=>(n.add(t),()=>{n.delete(t)}),a=()=>o,w=()=>f(g,a,a),y=(t,e)=>{if(e.length!==1)return;const s=e.toLowerCase(),l=t==="console"?"palette":"console";o=o[l]===s?{...o,[t]:s,[l]:o[t]}:{...o,[t]:s},u(c,[o]);for(const i of n)i()},C=()=>{o=r,u(c,[o]);for(const t of n)t()};export{C as r,y as s,w as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as r}from"react/compiler-runtime";import{c as a}from"./utils-bhneXptQ.mjs";import{jsx as i}from"react/jsx-runtime";function p(m){const e=r(8);let t,s;e[0]!==m?({className:t,...s}=m,e[0]=m,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let o;e[3]!==t?(o=a("animate-pulse rounded-md bg-muted",t),e[3]=t,e[4]=o):o=e[4];let l;return e[5]!==s||e[6]!==o?(l=i("div",{"data-slot":"skeleton",className:o,...s}),e[5]=s,e[6]=o,e[7]=l):l=e[7],l}export{p as S};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as p}from"react/compiler-runtime";import{B as u,E as h}from"./bar-chart-BCsEIQoQ.mjs";import{c as g}from"./utils-bhneXptQ.mjs";import{jsx as d}from"react/jsx-runtime";const v={value:{colors:{dark:["var(--foreground)"],light:["var(--foreground)"]},label:""}},w=i=>{const e=p(12),{ariaLabel:n,className:c,series:r,testId:m}=i;if(r.length<2)return null;let l;e[0]!==r?(l=r.slice(-40).map(b),e[0]=r,e[1]=l):l=e[1];const f=l;let a;e[2]!==c?(a=g("h-6 w-[120px]",c),e[2]=c,e[3]=a):a=e[3];let o;e[4]===Symbol.for("react.memo_cache_sentinel")?(o=d(u,{dataKey:"value"}),e[4]=o):o=e[4];let t;e[5]!==f?(t=d(h,{animationType:"none",barCategoryGap:1,className:"h-full w-full",config:v,data:f,children:o}),e[5]=f,e[6]=t):t=e[6];let s;return e[7]!==n||e[8]!==a||e[9]!==t||e[10]!==m?(s=d("div",{"aria-label":n,className:a,"data-testid":m,role:"img",children:t}),e[7]=n,e[8]=a,e[9]=t,e[10]=m,e[11]=s):s=e[11],s};function b(i,e){return{index:e,value:i}}export{w as S};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as T}from"react/compiler-runtime";import{AreaChart as R,CartesianGrid as g,XAxis as N,Area as B,LineChart as X,Line as $}from"recharts";import{useT as S}from"./DEFAULT_LOCALE-A1Yg5ORA.mjs";import{k as E}from"./internal-Df43vQI0.mjs";import{E as H,X as _,B as j,T as G,C as O,a as A,b as K}from"./bar-chart-BCsEIQoQ.mjs";import{jsx as l,jsxs as k}from"react/jsx-runtime";import{c as V,a as z,b as L,e as F,d as I,T as M}from"./table-D0SBiDu-.mjs";import{C as U}from"./data-grid-DIiNmDR9.mjs";const W=50,q={value:{colors:{dark:["var(--chart-1)"],light:["var(--chart-1)"]},label:"value"}},D=o=>{const e=o.columns.find(n=>o.rows.length>0&&o.rows.every(a=>typeof a[n]=="number"))??null;return{label:o.columns.find(n=>n!==e)??null,value:e}},J=o=>{const e=T(3),{data:t,kind:n}=o;let a;return e[0]!==t||e[1]!==n?(a=l(O,{className:"h-full w-full",config:q,children:n==="area"?k(R,{data:t,children:[l(g,{vertical:!1}),l(N,{axisLine:!1,dataKey:"label",tickLine:!1}),l(A,{content:l(K,{})}),l(B,{dataKey:"value",fill:"var(--color-value-0)",fillOpacity:.2,stroke:"var(--color-value-0)",type:"monotone"})]}):k(X,{data:t,children:[l(g,{vertical:!1}),l(N,{axisLine:!1,dataKey:"label",tickLine:!1}),l(A,{content:l(K,{})}),l($,{dataKey:"value",dot:!1,stroke:"var(--color-value-0)",strokeWidth:2,type:"monotone"})]})}),e[0]=t,e[1]=n,e[2]=a):a=e[2],a},oe=o=>{const e=T(21),{axes:t,kind:n,result:a}=o,u=S();let r;e[0]!==a?(r=D(a),e[0]=a,e[1]=r):r=e[1];const d=r;let m;e[2]!==a.columns?(m=new Set(a.columns),e[2]=a.columns,e[3]=m):m=e[3];const s=m,i=t!==void 0&&s.has(t.x)?t.x:d.label;let h;e[4]!==t?.y||e[5]!==s?(h=t?.y.find(c=>s.has(c)),e[4]=t?.y,e[5]=s,e[6]=h):h=e[6];const b=h,C=b??d.value;let w;e[7]!==i||e[8]!==a.rows||e[9]!==C?(w=C===null?[]:a.rows.slice(0,W).map((c,v)=>({label:i===null?`#${(v+1).toString()}`:E(c[i]),value:Number(c[C])||0})),e[7]=i,e[8]=a.rows,e[9]=C,e[10]=w):w=e[10];const x=w;if(C===null){let c;e[11]!==u?(c=u("No numeric column to chart."),e[11]=u,e[12]=c):c=e[12];let v;return e[13]!==c?(v=l("p",{className:"p-4 text-sm text-muted-foreground","data-testid":"sql-chart-empty",children:c}),e[13]=c,e[14]=v):v=e[14],v}const f=n??(t!==void 0&&b!==void 0?t.kind:"bar");let p;e[15]!==x||e[16]!==f?(p=f==="bar"?k(H,{className:"h-full w-full",config:q,data:x,children:[l(_,{dataKey:"label"}),l(j,{dataKey:"value"}),l(G,{})]}):l(J,{data:x,kind:f}),e[15]=x,e[16]=f,e[17]=p):p=e[17];let y;return e[18]!==f||e[19]!==p?(y=l("div",{className:"h-80 w-full p-3","data-chart-kind":f,"data-testid":"sql-chart",children:p}),e[18]=f,e[19]=p,e[20]=y):y=e[20],y},ne=o=>{const e=T(19),{result:t}=o,n=S();if(t.columns.length===0){let s;e[0]!==t.rowCount||e[1]!==n?(s=n("{count} rows",{count:t.rowCount}),e[0]=t.rowCount,e[1]=n,e[2]=s):s=e[2];let i;return e[3]!==s?(i=l("p",{className:"p-4 text-sm text-muted-foreground",children:s}),e[3]=s,e[4]=i):i=e[4],i}let a;e[5]!==t.columns?(a=t.columns.map(P),e[5]=t.columns,e[6]=a):a=e[6];let u;e[7]!==a?(u=l(z,{className:"sticky top-0 z-10 bg-muted",children:l(L,{children:a})}),e[7]=a,e[8]=u):u=e[8];let r;if(e[9]!==t.columns||e[10]!==t.rows){let s;e[12]!==t.columns?(s=(i,h)=>l(L,{"data-testid":"sql-row",children:t.columns.map(b=>l(F,{className:"max-w-md truncate font-mono text-xs",children:l(U,{value:i[b]})},b))},h),e[12]=t.columns,e[13]=s):s=e[13],r=t.rows.map(s),e[9]=t.columns,e[10]=t.rows,e[11]=r}else r=e[11];let d;e[14]!==r?(d=l(I,{children:r}),e[14]=r,e[15]=d):d=e[15];let m;return e[16]!==u||e[17]!==d?(m=k(M,{"data-testid":"sql-rows",children:[u,d]}),e[16]=u,e[17]=d,e[18]=m):m=e[18],m};function P(o){return l(V,{children:o},o)}export{oe as S,ne as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as u}from"react/compiler-runtime";import{C as b}from"./card--2hKx4L2.mjs";import{jsx as m,jsxs as p}from"react/jsx-runtime";const j=x=>{const e=u(16),{chart:i,footer:o,label:n,testId:c,value:f}=x;let t;e[0]!==n?(t=m("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:n}),e[0]=n,e[1]=t):t=e[1];let l;e[2]!==c||e[3]!==f?(l=m("span",{className:"truncate text-2xl font-semibold tabular-nums text-foreground","data-testid":c,children:f}),e[2]=c,e[3]=f,e[4]=l):l=e[4];let r;e[5]!==i||e[6]!==l?(r=p("div",{className:"flex items-center justify-between gap-3",children:[l,i]}),e[5]=i,e[6]=l,e[7]=r):r=e[7];let s;e[8]!==t||e[9]!==r?(s=p("div",{className:"flex flex-col gap-2.5 p-4",children:[t,r]}),e[8]=t,e[9]=r,e[10]=s):s=e[10];let a;e[11]!==o?(a=o!=null&&m("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5 text-[11px] text-muted-foreground",children:o}),e[11]=o,e[12]=a):a=e[12];let d;return e[13]!==s||e[14]!==a?(d=p(b,{className:"justify-between gap-0 py-0",children:[s,a]}),e[13]=s,e[14]=a,e[15]=d):d=e[15],d};export{j as S};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as n}from"react/compiler-runtime";import{jsx as d,jsxs as h}from"react/jsx-runtime";const b={alignItems:"center",border:"1px solid",borderRadius:4,display:"inline-flex",fontFamily:"var(--font-mono, ui-monospace, monospace)",fontSize:11,fontWeight:400,gap:6,letterSpacing:"0.06em",lineHeight:1.4,padding:"1px 8px",textTransform:"uppercase"},c={borderRadius:"50%",display:"inline-block",height:7,width:7},i=(r,e,a,t)=>({badgeStyle:{...b,borderColor:r,color:r},color:r,dotStyle:{...c,backgroundColor:r},hint:t,label:e,title:a}),p={global:i("var(--royal-amethyst)","Global · D1","Global table — a single D1 table shared across all shards","Declared .global() and stored once in Cloudflare D1, shared across every shard and tenant. Auth tables (user, session, …) live here too."),shard:i("var(--sky-sapphire)","Shard-local","Shard-local table — per-shard SQLite inside a Durable Object","Stored per shard key in a Durable Object's SQLite (.shardBy(...)). You are viewing one shard at a time — change the shard key to inspect another.")},y=r=>{const e=n(9),{tier:a}=r,t=p[a],o=`storage-tier-${a}`;let l;e[0]!==t.dotStyle?(l=d("span",{"aria-hidden":"true",style:t.dotStyle}),e[0]=t.dotStyle,e[1]=l):l=e[1];let s;return e[2]!==t.badgeStyle||e[3]!==t.label||e[4]!==t.title||e[5]!==o||e[6]!==l||e[7]!==a?(s=h("span",{"data-testid":o,"data-tier":a,style:t.badgeStyle,title:t.title,children:[l,t.label]}),e[2]=t.badgeStyle,e[3]=t.label,e[4]=t.title,e[5]=o,e[6]=l,e[7]=a,e[8]=s):s=e[8],s};export{y as S,p as T};
|