@lunora/studio 1.0.0-alpha.31 → 1.0.0-alpha.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +10 -10
- package/dist/mount.js +3 -2
- package/dist/packem_chunks/ApiTab.js +3 -3
- package/dist/packem_chunks/AuditPanel.js +7 -7
- package/dist/packem_chunks/ExportImportPanel.js +5 -4
- package/dist/packem_chunks/FileBrowser.js +2 -2
- package/dist/packem_chunks/FunctionRunner.js +1 -1
- package/dist/packem_chunks/FunctionStatsPanel.js +72 -70
- package/dist/packem_chunks/HealthPanel.js +3 -3
- package/dist/packem_chunks/InsightsPanel.js +4 -3
- package/dist/packem_chunks/LogsPanel.js +6 -6
- package/dist/packem_chunks/MailPanel.js +8 -7
- package/dist/packem_chunks/MetricsPanel.js +3 -3
- package/dist/packem_chunks/MigrationsPanel.js +7 -7
- package/dist/packem_chunks/PitrPanel.js +1 -1
- package/dist/packem_chunks/SchemaViewer.js +3 -2
- package/dist/packem_chunks/SecurityAdvisorPanel.js +11 -8
- package/dist/packem_chunks/SettingsPanel.js +50 -49
- package/dist/packem_chunks/SqlEditorPanel.js +5 -4
- package/dist/packem_chunks/TableEditor.js +3 -3
- package/dist/packem_chunks/analytics-panel.js +1 -1
- package/dist/packem_chunks/auth-config-panel.js +1 -1
- package/dist/packem_chunks/auth-sessions-panel.js +2 -2
- package/dist/packem_chunks/containers-panel.js +1 -1
- package/dist/packem_chunks/dashboards-panel.js +3 -2
- package/dist/packem_chunks/fanout-panel.js +31 -30
- package/dist/packem_chunks/flags-panel.js +6 -6
- package/dist/packem_chunks/kv-browser.js +2 -2
- package/dist/packem_chunks/log-drains-panel.js +1 -1
- package/dist/packem_chunks/organizations-panel.js +3 -3
- package/dist/packem_chunks/payments-panel.js +6 -5
- package/dist/packem_chunks/permissions-panel.js +12 -11
- package/dist/packem_chunks/queues-panel.js +32 -31
- package/dist/packem_chunks/rls-panel.js +86 -84
- package/dist/packem_chunks/schedule-panel.js +3 -3
- package/dist/packem_chunks/sparkline.js +1 -1
- package/dist/packem_chunks/storage-rules-panel.js +27 -25
- package/dist/packem_chunks/subscriptions-panel.js +33 -31
- package/dist/packem_chunks/users-panel.js +3 -3
- package/dist/packem_chunks/vector-browser.js +1 -1
- package/dist/packem_chunks/workflows-panel.js +2 -2
- package/dist/packem_shared/{ApiDocsPanel-B6u_wnz-.js → ApiDocsPanel-Cu6mD4u7.js} +1 -1
- package/dist/packem_shared/{ApiReferencePanel-Drz4UO0a.js → ApiReferencePanel-Co_wpRF2.js} +1 -1
- package/dist/packem_shared/{CommandPalette-B5BertvU.js → CommandPalette-BUPpbpMc.js} +1 -1
- package/dist/packem_shared/{DataBrowser-ANTHLWWh.js → DataBrowser-DSNK1tPg.js} +5 -5
- package/dist/packem_shared/{GlobalDataBrowser-CjgTG_wa.js → GlobalDataBrowser-ErfvIs1S.js} +3 -3
- package/dist/packem_shared/{HomePanel-BRcQVDby.js → HomePanel-DQk3P8xX.js} +3 -3
- package/dist/packem_shared/{OpenRpcReferencePanel-CspFdbUT.js → OpenRpcReferencePanel-DLWzrIx9.js} +1 -1
- package/dist/packem_shared/{ScheduledJobs-BEJXtsBn.js → ScheduledJobs-ClaNpZsg.js} +2 -2
- package/dist/packem_shared/{Studio-B1V0GxTz.js → Studio-CFTYGEUt.js} +4 -4
- package/dist/packem_shared/{StudioApp-CR0Tvy81.js → StudioApp-Cy9vUwVl.js} +1 -1
- package/dist/packem_shared/{advisor-view-DzqyvUU3.js → advisor-view-D3-U4kRR.js} +5 -5
- package/dist/packem_shared/alert-CdAET2K_.js +68 -0
- package/dist/packem_shared/{bar-chart-Bb__F5-u.js → bar-chart-DSwcWIRy.js} +4 -3
- package/dist/packem_shared/{browser-storage-d03UsV7v.js → browser-storage-tLOxkIHd.js} +3 -67
- package/dist/packem_shared/{data-grid-Dsg6nRjo.js → data-grid-Jz8FqQ2C.js} +1 -1
- package/dist/packem_shared/error-alert-BBT6D22d.js +114 -0
- package/dist/packem_shared/{grid-features-D7nNzBYm.js → grid-features-CUr8Z1_O.js} +1 -1
- package/dist/packem_shared/{home-panel-CRIs6x2j.js → home-panel-Bo-Mgrkn.js} +2 -2
- package/dist/packem_shared/{internal-FcNZ3beb.js → internal-DTsYVn-g.js} +30 -1
- package/dist/packem_shared/{reference-view-Doy1XlQq.js → reference-view-CSKyUyPl.js} +3 -2
- package/dist/packem_shared/{sparkline-KgMPHS4u.js → sparkline-BnA1kC9X.js} +1 -1
- package/dist/packem_shared/{studio-CQ-rtNhn.js → studio-Dg2e-dsR.js} +6 -5
- package/dist/packem_shared/{table-list-sidebar-VMo0ftxD.js → table-list-sidebar-B5psdSV1.js} +1 -1
- package/dist/packem_shared/{use-admin-query-BViPA3US.js → use-admin-query-BHPKmPuj.js} +2 -1
- package/dist/packem_shared/{use-auth-capabilities-BHkoBnbZ.js → use-auth-capabilities-C-VH0oJJ.js} +1 -1
- package/dist/standalone/{chunk-N4JI6VQD.js → chunk-25VHPD2I.js} +1 -1
- package/dist/standalone/chunk-2GGMGPEP.js +1 -0
- package/dist/standalone/{chunk-BHTPZS7L.js → chunk-3CJW6NWG.js} +1 -1
- package/dist/standalone/chunk-4H2OJBXO.js +1 -0
- package/dist/standalone/chunk-4MLAVZP4.js +1 -0
- package/dist/standalone/chunk-55YA7ZZI.js +76 -0
- package/dist/standalone/chunk-5OH3VPZF.js +1 -0
- package/dist/standalone/chunk-6GFEVKJP.js +1 -0
- package/dist/standalone/{chunk-ITLLHEVG.js → chunk-764T6X6X.js} +1 -1
- package/dist/standalone/chunk-7M3F6U4L.js +1 -0
- package/dist/standalone/{chunk-KGS7KM4A.js → chunk-7VF3IAAW.js} +1 -1
- package/dist/standalone/chunk-AJIUI7DD.js +1 -0
- package/dist/standalone/{chunk-5NSZVXCS.js → chunk-BACPICH6.js} +1 -1
- package/dist/standalone/chunk-BET2625I.js +1 -0
- package/dist/standalone/chunk-BQUQS7QN.js +1 -0
- package/dist/standalone/chunk-CKSHCYGC.js +2 -0
- package/dist/standalone/chunk-DCECRP45.js +1 -0
- package/dist/standalone/chunk-DFP2DADO.js +1 -0
- package/dist/standalone/chunk-DORBUITF.js +1 -0
- package/dist/standalone/chunk-DVKPRFIJ.js +1 -0
- package/dist/standalone/chunk-E6WUCLSI.js +1 -0
- package/dist/standalone/chunk-E7WLF6IU.js +1 -0
- package/dist/standalone/chunk-EVPLBWUT.js +8 -0
- package/dist/standalone/chunk-FCSPAJW4.js +1 -0
- package/dist/standalone/chunk-G2ICR3DL.js +1 -0
- package/dist/standalone/{chunk-2DS7JLWL.js → chunk-GJ6PGSES.js} +5 -5
- package/dist/standalone/chunk-GMSGZDDH.js +13 -0
- package/dist/standalone/chunk-GVRM4U6W.js +2 -0
- package/dist/standalone/chunk-GZDWDDXN.js +1 -0
- package/dist/standalone/chunk-ISJAJWYI.js +1 -0
- package/dist/standalone/{chunk-G2TFEWEQ.js → chunk-JIDZFLTB.js} +1 -1
- package/dist/standalone/{chunk-RMYA7NAH.js → chunk-K3GNLVYK.js} +1 -1
- package/dist/standalone/chunk-K4ZDRTQM.js +1 -0
- package/dist/standalone/{chunk-ASLGNHAX.js → chunk-LI43EKM6.js} +1 -1
- package/dist/standalone/chunk-MFPTVCJ6.js +1 -0
- package/dist/standalone/chunk-MPYFGAOW.js +1 -0
- package/dist/standalone/{chunk-TICVNLPM.js → chunk-O3NAGRTR.js} +1 -1
- package/dist/standalone/chunk-OV2WFAJX.js +1 -0
- package/dist/standalone/chunk-PA3LN4XJ.js +1 -0
- package/dist/standalone/chunk-PD6WPVYU.js +1 -0
- package/dist/standalone/{chunk-7PBZKXYA.js → chunk-PN5NCZDX.js} +1 -1
- package/dist/standalone/{chunk-YJGANMU7.js → chunk-PVZI3CXP.js} +10 -9
- package/dist/standalone/chunk-PZ7HD5T2.js +1 -0
- package/dist/standalone/{chunk-UGMRUEBU.js → chunk-QAFAJBAW.js} +1 -1
- package/dist/standalone/{chunk-6VTGE3WJ.js → chunk-QBAT52GB.js} +1 -1
- package/dist/standalone/chunk-QHIIRFG7.js +1 -0
- package/dist/standalone/chunk-RSEEHNFI.js +1 -0
- package/dist/standalone/chunk-SFJ5F4DX.js +1 -0
- package/dist/standalone/{chunk-3BP4BTLR.js → chunk-SGDQIWAR.js} +3 -3
- package/dist/standalone/chunk-SYEIXTEU.js +1 -0
- package/dist/standalone/chunk-T5HRXUSY.js +1 -0
- package/dist/standalone/{chunk-OD2POGPJ.js → chunk-TDL7NEWA.js} +1 -1
- package/dist/standalone/chunk-TM7CMA7X.js +1 -0
- package/dist/standalone/chunk-U4OAQPBT.js +1 -0
- package/dist/standalone/chunk-UDSVXA42.js +1 -0
- package/dist/standalone/chunk-UK64ZSUW.js +1 -0
- package/dist/standalone/chunk-VEZO7G5Q.js +3 -0
- package/dist/standalone/chunk-VSHUSN6T.js +1 -0
- package/dist/standalone/chunk-VYMCCC6O.js +1 -0
- package/dist/standalone/{chunk-7RYIQKZA.js → chunk-WXPWVBIY.js} +1 -1
- package/dist/standalone/chunk-X72PYOEW.js +1 -0
- package/dist/standalone/chunk-X7MMBSNW.js +1 -0
- package/dist/standalone/{chunk-6RC6L33K.js → chunk-XIGIWZLO.js} +3 -3
- package/dist/standalone/chunk-XNJNSCLM.js +1 -0
- package/dist/standalone/{chunk-NNISYDNI.js → chunk-XUGSA2NG.js} +1 -1
- package/dist/standalone/{chunk-VXBZQIGY.js → chunk-Y2ZPNDL7.js} +1 -1
- package/dist/standalone/chunk-YM6BBZDN.js +1 -0
- package/dist/standalone/chunk-ZHVTQ37P.js +1 -0
- package/dist/standalone/chunk-ZPP2KOR4.js +1 -0
- package/dist/standalone/studio.js +30 -30
- package/dist/styles.css +1 -1
- package/package.json +6 -5
- package/dist/standalone/chunk-2PDQ4KZ6.js +0 -1
- package/dist/standalone/chunk-45QK5ZPN.js +0 -1
- package/dist/standalone/chunk-57LYXHXH.js +0 -1
- package/dist/standalone/chunk-63XKJQTQ.js +0 -1
- package/dist/standalone/chunk-7POIIWC5.js +0 -3
- package/dist/standalone/chunk-AB6QGMBF.js +0 -1
- package/dist/standalone/chunk-D6ORSB24.js +0 -1
- package/dist/standalone/chunk-DGWTR4G7.js +0 -1
- package/dist/standalone/chunk-DSX53PBM.js +0 -1
- package/dist/standalone/chunk-DV2MNASX.js +0 -1
- package/dist/standalone/chunk-EGJX34WM.js +0 -1
- package/dist/standalone/chunk-FCR3HKFV.js +0 -1
- package/dist/standalone/chunk-FQKNJSRA.js +0 -76
- package/dist/standalone/chunk-GZXPPJVK.js +0 -1
- package/dist/standalone/chunk-HFBRE65A.js +0 -1
- package/dist/standalone/chunk-HG7Q5B3H.js +0 -1
- package/dist/standalone/chunk-HTQL7AXU.js +0 -1
- package/dist/standalone/chunk-KG3QTFWE.js +0 -1
- package/dist/standalone/chunk-KNRVPCFX.js +0 -1
- package/dist/standalone/chunk-KODWGUAB.js +0 -1
- package/dist/standalone/chunk-LZWPCZLE.js +0 -1
- package/dist/standalone/chunk-N2QDG3MW.js +0 -1
- package/dist/standalone/chunk-O4PXDNR3.js +0 -1
- package/dist/standalone/chunk-OXCK3ZUG.js +0 -1
- package/dist/standalone/chunk-P7DSVO4U.js +0 -1
- package/dist/standalone/chunk-PKAM3N5C.js +0 -1
- package/dist/standalone/chunk-QGXGBHQO.js +0 -1
- package/dist/standalone/chunk-QHA3TAEJ.js +0 -1
- package/dist/standalone/chunk-QQWC62X7.js +0 -1
- package/dist/standalone/chunk-S53RUBW5.js +0 -1
- package/dist/standalone/chunk-SB4GT6PK.js +0 -1
- package/dist/standalone/chunk-SHIOUDOT.js +0 -1
- package/dist/standalone/chunk-SIDRSX7Y.js +0 -1
- package/dist/standalone/chunk-VJPQUBN6.js +0 -8
- package/dist/standalone/chunk-VMJKJWG6.js +0 -1
- package/dist/standalone/chunk-VPDPN5RR.js +0 -2
- package/dist/standalone/chunk-VSEGZA3J.js +0 -1
- package/dist/standalone/chunk-W5LWN6IP.js +0 -1
- package/dist/standalone/chunk-W7PCVQTE.js +0 -1
- package/dist/standalone/chunk-W7SQVLBH.js +0 -1
- package/dist/standalone/chunk-XLILSHPE.js +0 -1
- package/dist/standalone/chunk-XURNGQSS.js +0 -1
- package/dist/standalone/chunk-YQQJ4N6U.js +0 -1
- package/dist/standalone/chunk-ZH7UES4T.js +0 -2
- package/dist/standalone/chunk-ZQCVDXDL.js +0 -1
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { StudioApp } from './packem_shared/StudioApp-
|
|
2
|
-
export { CommandPalette, openCommandPalette } from './packem_shared/CommandPalette-
|
|
3
|
-
export { S as Studio } from './packem_shared/studio-
|
|
1
|
+
export { StudioApp } from './packem_shared/StudioApp-Cy9vUwVl.js';
|
|
2
|
+
export { CommandPalette, openCommandPalette } from './packem_shared/CommandPalette-BUPpbpMc.js';
|
|
3
|
+
export { S as Studio } from './packem_shared/studio-Dg2e-dsR.js';
|
|
4
4
|
export { ConfirmButton } from './packem_shared/ConfirmButton-C2eVi2Qv.js';
|
|
5
5
|
export { default as ConnectionBadge } from './packem_shared/ConnectionBadge-B2DDM2Tn.js';
|
|
6
6
|
export { ErrorBoundary } from './packem_shared/ErrorBoundary-BzAApI7J.js';
|
|
@@ -8,24 +8,24 @@ export { ShardInput } from './packem_shared/ShardInput-gx_DZXXn.js';
|
|
|
8
8
|
export { DEFAULT_INSIGHT_THRESHOLDS, deriveInsights } from './packem_shared/DEFAULT_INSIGHT_THRESHOLDS-DjF0h-gA.js';
|
|
9
9
|
export { InsightsPanel } from './packem_chunks/InsightsPanel.js';
|
|
10
10
|
export { default as SecurityAdvisorPanel } from './packem_chunks/SecurityAdvisorPanel.js';
|
|
11
|
-
export { default as ApiDocsPanel } from './packem_shared/ApiDocsPanel-
|
|
12
|
-
export { default as ApiReferencePanel } from './packem_shared/ApiReferencePanel-
|
|
11
|
+
export { default as ApiDocsPanel } from './packem_shared/ApiDocsPanel-Cu6mD4u7.js';
|
|
12
|
+
export { default as ApiReferencePanel } from './packem_shared/ApiReferencePanel-Co_wpRF2.js';
|
|
13
13
|
export { default as ApiTab } from './packem_chunks/ApiTab.js';
|
|
14
|
-
export { default as OpenRpcReferencePanel } from './packem_shared/OpenRpcReferencePanel-
|
|
15
|
-
export { DataBrowser } from './packem_shared/DataBrowser-
|
|
14
|
+
export { default as OpenRpcReferencePanel } from './packem_shared/OpenRpcReferencePanel-DLWzrIx9.js';
|
|
15
|
+
export { DataBrowser } from './packem_shared/DataBrowser-DSNK1tPg.js';
|
|
16
16
|
export { DataFilters, toFilterClauses } from './packem_shared/DataFilters-FNquMaiu.js';
|
|
17
|
-
export { GlobalDataBrowser } from './packem_shared/GlobalDataBrowser-
|
|
17
|
+
export { GlobalDataBrowser } from './packem_shared/GlobalDataBrowser-ErfvIs1S.js';
|
|
18
18
|
export { TableEditor } from './packem_chunks/TableEditor.js';
|
|
19
19
|
export { ExportImportPanel } from './packem_chunks/ExportImportPanel.js';
|
|
20
20
|
export { MigrationsPanel } from './packem_chunks/MigrationsPanel.js';
|
|
21
21
|
export { PitrPanel } from './packem_chunks/PitrPanel.js';
|
|
22
22
|
export { FunctionRunner } from './packem_chunks/FunctionRunner.js';
|
|
23
23
|
export { FunctionStatsPanel } from './packem_chunks/FunctionStatsPanel.js';
|
|
24
|
-
export { H as HomePanel } from './packem_shared/home-panel-
|
|
24
|
+
export { H as HomePanel } from './packem_shared/home-panel-Bo-Mgrkn.js';
|
|
25
25
|
export { AuditPanel } from './packem_chunks/AuditPanel.js';
|
|
26
26
|
export { LogsPanel } from './packem_chunks/LogsPanel.js';
|
|
27
27
|
export { MailPanel } from './packem_chunks/MailPanel.js';
|
|
28
|
-
export { ScheduledJobs } from './packem_shared/ScheduledJobs-
|
|
28
|
+
export { ScheduledJobs } from './packem_shared/ScheduledJobs-ClaNpZsg.js';
|
|
29
29
|
export { HealthPanel } from './packem_chunks/HealthPanel.js';
|
|
30
30
|
export { aggregateMetrics, shardsToAggregate } from './packem_shared/aggregateMetrics-D4nUHEKU.js';
|
|
31
31
|
export { MetricsPanel } from './packem_chunks/MetricsPanel.js';
|
package/dist/mount.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { LunoraError } from '@lunora/errors';
|
|
1
2
|
import { createRoot } from 'react-dom/client';
|
|
2
|
-
import { StudioApp } from './packem_shared/StudioApp-
|
|
3
|
+
import { StudioApp } from './packem_shared/StudioApp-Cy9vUwVl.js';
|
|
3
4
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
4
5
|
|
|
5
6
|
const mountStudio = (options = {}) => {
|
|
@@ -9,7 +10,7 @@ const mountStudio = (options = {}) => {
|
|
|
9
10
|
} = options;
|
|
10
11
|
const element = typeof container === "string" ? document.querySelector(container) : container;
|
|
11
12
|
if (element === null) {
|
|
12
|
-
throw new
|
|
13
|
+
throw new LunoraError("INTERNAL", `mountStudio: container ${typeof container === "string" ? container : "element"} not found`);
|
|
13
14
|
}
|
|
14
15
|
const root = createRoot(element);
|
|
15
16
|
root.render(/* @__PURE__ */ jsxDEV(StudioApp, {
|
|
@@ -2,9 +2,9 @@ import { c } from 'react/compiler-runtime';
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
4
4
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
5
|
-
import ApiDocsPanel from '../packem_shared/ApiDocsPanel-
|
|
6
|
-
import ApiReferencePanel from '../packem_shared/ApiReferencePanel-
|
|
7
|
-
import OpenRpcReferencePanel from '../packem_shared/OpenRpcReferencePanel-
|
|
5
|
+
import ApiDocsPanel from '../packem_shared/ApiDocsPanel-Cu6mD4u7.js';
|
|
6
|
+
import ApiReferencePanel from '../packem_shared/ApiReferencePanel-Co_wpRF2.js';
|
|
7
|
+
import OpenRpcReferencePanel from '../packem_shared/OpenRpcReferencePanel-DLWzrIx9.js';
|
|
8
8
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
9
9
|
|
|
10
10
|
const VIEW_KEYS = ["reference", "snippets"];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { useVirtualizer, observeElementRect } from '@tanstack/react-virtual';
|
|
2
2
|
import { useState, useMemo, useRef } from 'react';
|
|
3
|
+
import { E as ErrorAlert } from '../packem_shared/error-alert-BBT6D22d.js';
|
|
3
4
|
import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
|
|
4
5
|
import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
5
6
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
@@ -7,11 +8,11 @@ import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
|
|
|
7
8
|
import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
|
|
8
9
|
import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
|
|
9
10
|
import { T as Table, a as TableHeader, b as TableRow, c as TableHead, d as TableBody, e as TableCell } from '../packem_shared/table-DsCa9Qp9.js';
|
|
10
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
11
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
11
12
|
import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
|
|
12
13
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
13
14
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
14
|
-
import {
|
|
15
|
+
import { i as formatTimestamp } from '../packem_shared/internal-DTsYVn-g.js';
|
|
15
16
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
16
17
|
|
|
17
18
|
const DETAIL_MAX = 80;
|
|
@@ -41,6 +42,7 @@ const AuditPanel = ({
|
|
|
41
42
|
const {
|
|
42
43
|
data,
|
|
43
44
|
error,
|
|
45
|
+
errorSource,
|
|
44
46
|
isLoading,
|
|
45
47
|
liveError
|
|
46
48
|
} = useAdminQuery(ADMIN_FUNCTIONS.getAuditLog, {}, {
|
|
@@ -100,11 +102,9 @@ const AuditPanel = ({
|
|
|
100
102
|
placeholder: t("filter op, table, id"),
|
|
101
103
|
value: search
|
|
102
104
|
}, void 0, false)]
|
|
103
|
-
}, void 0, true), error !== null && /* @__PURE__ */ jsxDEV(
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
role: "alert",
|
|
107
|
-
children: error
|
|
105
|
+
}, void 0, true), error !== null && /* @__PURE__ */ jsxDEV(ErrorAlert, {
|
|
106
|
+
error: errorSource,
|
|
107
|
+
testId: "au-error"
|
|
108
108
|
}, void 0, false), error === null && !isLoading && filtered.length === 0 && /* @__PURE__ */ jsxDEV(EmptyState, {
|
|
109
109
|
description: t("State-changing admin operations are recorded here."),
|
|
110
110
|
icon: /* @__PURE__ */ jsxDEV("svg", {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { LunoraError } from '@lunora/errors';
|
|
1
2
|
import { useLunora } from '@lunora/react';
|
|
2
3
|
import { useState } from 'react';
|
|
3
4
|
import { ConfirmButton } from '../packem_shared/ConfirmButton-C2eVi2Qv.js';
|
|
@@ -5,10 +6,10 @@ import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
|
5
6
|
import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
6
7
|
import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
|
|
7
8
|
import { T as Textarea } from '../packem_shared/textarea-D3gaCU_-.js';
|
|
8
|
-
import { b as useInvalidateAdmin } from '../packem_shared/use-admin-query-
|
|
9
|
+
import { b as useInvalidateAdmin } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
9
10
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
10
11
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
11
|
-
import { f as fireAndForget, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-
|
|
12
|
+
import { f as fireAndForget, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
12
13
|
import { r as recordShard } from '../packem_shared/shard-history-DyebH1R5.js';
|
|
13
14
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
14
15
|
|
|
@@ -25,11 +26,11 @@ const parseNdjson = (text) => {
|
|
|
25
26
|
}
|
|
26
27
|
const parsed = JSON.parse(line);
|
|
27
28
|
if (typeof parsed !== "object" || parsed === null) {
|
|
28
|
-
throw new
|
|
29
|
+
throw new LunoraError("INTERNAL", `line ${(index + 1).toString()}: expected a { table, doc } object`);
|
|
29
30
|
}
|
|
30
31
|
const row = parsed;
|
|
31
32
|
if (typeof row.table !== "string" || typeof row.doc !== "object" || row.doc === null || Array.isArray(row.doc)) {
|
|
32
|
-
throw new
|
|
33
|
+
throw new LunoraError("INTERNAL", `line ${(index + 1).toString()}: expected a { table, doc } object`);
|
|
33
34
|
}
|
|
34
35
|
rows.push(row);
|
|
35
36
|
}
|
|
@@ -4,11 +4,11 @@ import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
|
4
4
|
import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
5
5
|
import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
|
|
6
6
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
7
|
-
import { S as SelectionBar } from '../packem_shared/grid-features-
|
|
7
|
+
import { S as SelectionBar } from '../packem_shared/grid-features-CUr8Z1_O.js';
|
|
8
8
|
import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
|
|
9
9
|
import { C as Checkbox } from '../packem_shared/checkbox-UNkzAxl-.js';
|
|
10
10
|
import { c as TableHead, a as TableHeader, b as TableRow, d as TableBody, T as Table, e as TableCell } from '../packem_shared/table-DsCa9Qp9.js';
|
|
11
|
-
import {
|
|
11
|
+
import { j as formatBytes, f as fireAndForget, e as errorMessage, c as callOptions, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
12
12
|
import { ConfirmButton } from '../packem_shared/ConfirmButton-C2eVi2Qv.js';
|
|
13
13
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
14
14
|
import { jsxDEV, Fragment } from 'react/jsx-dev-runtime';
|
|
@@ -8,7 +8,7 @@ import { L as Label } from '../packem_shared/label-D8ykjn5J.js';
|
|
|
8
8
|
import { T as Textarea } from '../packem_shared/textarea-D3gaCU_-.js';
|
|
9
9
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
10
10
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
11
|
-
import { e as errorMessage,
|
|
11
|
+
import { e as errorMessage, i as formatTimestamp, f as fireAndForget, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
12
12
|
import { r as recordShard } from '../packem_shared/shard-history-DyebH1R5.js';
|
|
13
13
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
14
14
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { c } from 'react/compiler-runtime';
|
|
2
2
|
import { useState } from 'react';
|
|
3
|
+
import { E as ErrorAlert } from '../packem_shared/error-alert-BBT6D22d.js';
|
|
3
4
|
import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
|
|
4
5
|
import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
5
6
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
@@ -7,11 +8,11 @@ import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
|
7
8
|
import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
|
|
8
9
|
import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
|
|
9
10
|
import { T as Table, a as TableHeader, b as TableRow, c as TableHead, d as TableBody, e as TableCell } from '../packem_shared/table-DsCa9Qp9.js';
|
|
10
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
11
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
11
12
|
import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
|
|
12
13
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
13
14
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
14
|
-
import {
|
|
15
|
+
import { i as formatTimestamp } from '../packem_shared/internal-DTsYVn-g.js';
|
|
15
16
|
import { c as cn } from '../packem_shared/utils-B05Dmz_H.js';
|
|
16
17
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
17
18
|
|
|
@@ -51,7 +52,7 @@ const SORTERS = {
|
|
|
51
52
|
slowest: (a, b) => b.maxDurationMs - a.maxDurationMs
|
|
52
53
|
};
|
|
53
54
|
const FunctionStatsPanel = (t0) => {
|
|
54
|
-
const $ = c(
|
|
55
|
+
const $ = c(47);
|
|
55
56
|
const {
|
|
56
57
|
functions,
|
|
57
58
|
initialShardKey
|
|
@@ -89,6 +90,7 @@ const FunctionStatsPanel = (t0) => {
|
|
|
89
90
|
const {
|
|
90
91
|
data,
|
|
91
92
|
error,
|
|
93
|
+
errorSource,
|
|
92
94
|
liveError
|
|
93
95
|
} = useAdminQuery(ADMIN_FUNCTIONS.getFunctionStats, t2, t3);
|
|
94
96
|
const stats = data?.functions ?? null;
|
|
@@ -112,101 +114,101 @@ const FunctionStatsPanel = (t0) => {
|
|
|
112
114
|
}
|
|
113
115
|
const selectSort = t5;
|
|
114
116
|
let t6;
|
|
115
|
-
if ($[8] !== error || $[9] !==
|
|
117
|
+
if ($[8] !== error || $[9] !== errorSource || $[10] !== kindByPath || $[11] !== liveError || $[12] !== shardKey || $[13] !== sortKey || $[14] !== stats || $[15] !== t) {
|
|
116
118
|
const sorted = stats === null ? [] : stats.toSorted(SORTERS[sortKey]);
|
|
117
119
|
let t7;
|
|
118
|
-
if ($[
|
|
120
|
+
if ($[17] !== t) {
|
|
119
121
|
t7 = t("Recent");
|
|
120
|
-
$[
|
|
121
|
-
$[
|
|
122
|
+
$[17] = t;
|
|
123
|
+
$[18] = t7;
|
|
122
124
|
} else {
|
|
123
|
-
t7 = $[
|
|
125
|
+
t7 = $[18];
|
|
124
126
|
}
|
|
125
127
|
let t8;
|
|
126
|
-
if ($[
|
|
128
|
+
if ($[19] !== t7) {
|
|
127
129
|
t8 = {
|
|
128
130
|
key: "recent",
|
|
129
131
|
label: t7
|
|
130
132
|
};
|
|
131
|
-
$[
|
|
132
|
-
$[
|
|
133
|
+
$[19] = t7;
|
|
134
|
+
$[20] = t8;
|
|
133
135
|
} else {
|
|
134
|
-
t8 = $[
|
|
136
|
+
t8 = $[20];
|
|
135
137
|
}
|
|
136
138
|
let t9;
|
|
137
|
-
if ($[
|
|
139
|
+
if ($[21] !== t) {
|
|
138
140
|
t9 = t("Most called");
|
|
139
|
-
$[
|
|
140
|
-
$[
|
|
141
|
+
$[21] = t;
|
|
142
|
+
$[22] = t9;
|
|
141
143
|
} else {
|
|
142
|
-
t9 = $[
|
|
144
|
+
t9 = $[22];
|
|
143
145
|
}
|
|
144
146
|
let t10;
|
|
145
|
-
if ($[
|
|
147
|
+
if ($[23] !== t9) {
|
|
146
148
|
t10 = {
|
|
147
149
|
key: "calls",
|
|
148
150
|
label: t9
|
|
149
151
|
};
|
|
150
|
-
$[
|
|
151
|
-
$[
|
|
152
|
+
$[23] = t9;
|
|
153
|
+
$[24] = t10;
|
|
152
154
|
} else {
|
|
153
|
-
t10 = $[
|
|
155
|
+
t10 = $[24];
|
|
154
156
|
}
|
|
155
157
|
let t11;
|
|
156
|
-
if ($[
|
|
158
|
+
if ($[25] !== t) {
|
|
157
159
|
t11 = t("Slowest");
|
|
158
|
-
$[
|
|
159
|
-
$[
|
|
160
|
+
$[25] = t;
|
|
161
|
+
$[26] = t11;
|
|
160
162
|
} else {
|
|
161
|
-
t11 = $[
|
|
163
|
+
t11 = $[26];
|
|
162
164
|
}
|
|
163
165
|
let t12;
|
|
164
|
-
if ($[
|
|
166
|
+
if ($[27] !== t11) {
|
|
165
167
|
t12 = {
|
|
166
168
|
key: "slowest",
|
|
167
169
|
label: t11
|
|
168
170
|
};
|
|
169
|
-
$[
|
|
170
|
-
$[
|
|
171
|
+
$[27] = t11;
|
|
172
|
+
$[28] = t12;
|
|
171
173
|
} else {
|
|
172
|
-
t12 = $[
|
|
174
|
+
t12 = $[28];
|
|
173
175
|
}
|
|
174
176
|
let t13;
|
|
175
|
-
if ($[
|
|
177
|
+
if ($[29] !== t10 || $[30] !== t12 || $[31] !== t8) {
|
|
176
178
|
t13 = [t8, t10, t12];
|
|
177
|
-
$[
|
|
178
|
-
$[
|
|
179
|
-
$[
|
|
180
|
-
$[
|
|
179
|
+
$[29] = t10;
|
|
180
|
+
$[30] = t12;
|
|
181
|
+
$[31] = t8;
|
|
182
|
+
$[32] = t13;
|
|
181
183
|
} else {
|
|
182
|
-
t13 = $[
|
|
184
|
+
t13 = $[32];
|
|
183
185
|
}
|
|
184
186
|
const sortButtons = t13;
|
|
185
187
|
let t14;
|
|
186
|
-
if ($[
|
|
188
|
+
if ($[33] !== shardKey) {
|
|
187
189
|
t14 = /* @__PURE__ */ jsxDEV(ShardInput, {
|
|
188
190
|
onChange: setShardKey,
|
|
189
191
|
testId: "fs-shard-input",
|
|
190
192
|
value: shardKey
|
|
191
193
|
}, void 0, false);
|
|
192
|
-
$[
|
|
193
|
-
$[
|
|
194
|
+
$[33] = shardKey;
|
|
195
|
+
$[34] = t14;
|
|
194
196
|
} else {
|
|
195
|
-
t14 = $[
|
|
197
|
+
t14 = $[34];
|
|
196
198
|
}
|
|
197
199
|
let t15;
|
|
198
|
-
if ($[
|
|
200
|
+
if ($[35] !== liveError) {
|
|
199
201
|
t15 = /* @__PURE__ */ jsxDEV(LiveError, {
|
|
200
202
|
message: liveError,
|
|
201
203
|
prefix: "fs"
|
|
202
204
|
}, void 0, false);
|
|
203
|
-
$[
|
|
204
|
-
$[
|
|
205
|
+
$[35] = liveError;
|
|
206
|
+
$[36] = t15;
|
|
205
207
|
} else {
|
|
206
|
-
t15 = $[
|
|
208
|
+
t15 = $[36];
|
|
207
209
|
}
|
|
208
210
|
let t16;
|
|
209
|
-
if ($[
|
|
211
|
+
if ($[37] !== sortButtons || $[38] !== sortKey) {
|
|
210
212
|
t16 = /* @__PURE__ */ jsxDEV("div", {
|
|
211
213
|
className: "ml-auto flex items-center gap-1",
|
|
212
214
|
role: "group",
|
|
@@ -220,37 +222,36 @@ const FunctionStatsPanel = (t0) => {
|
|
|
220
222
|
children: option.label
|
|
221
223
|
}, option.key, false))
|
|
222
224
|
}, void 0, false);
|
|
223
|
-
$[
|
|
224
|
-
$[
|
|
225
|
-
$[
|
|
225
|
+
$[37] = sortButtons;
|
|
226
|
+
$[38] = sortKey;
|
|
227
|
+
$[39] = t16;
|
|
226
228
|
} else {
|
|
227
|
-
t16 = $[
|
|
229
|
+
t16 = $[39];
|
|
228
230
|
}
|
|
229
231
|
let t17;
|
|
230
|
-
if ($[
|
|
232
|
+
if ($[40] !== t14 || $[41] !== t15 || $[42] !== t16) {
|
|
231
233
|
t17 = /* @__PURE__ */ jsxDEV("div", {
|
|
232
234
|
className: "flex flex-wrap items-center gap-2",
|
|
233
235
|
children: [t14, t15, t16]
|
|
234
236
|
}, void 0, true);
|
|
235
|
-
$[
|
|
236
|
-
$[
|
|
237
|
-
$[
|
|
238
|
-
$[
|
|
237
|
+
$[40] = t14;
|
|
238
|
+
$[41] = t15;
|
|
239
|
+
$[42] = t16;
|
|
240
|
+
$[43] = t17;
|
|
239
241
|
} else {
|
|
240
|
-
t17 = $[
|
|
242
|
+
t17 = $[43];
|
|
241
243
|
}
|
|
242
244
|
let t18;
|
|
243
|
-
if ($[
|
|
244
|
-
t18 = error !== null && /* @__PURE__ */ jsxDEV(
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
role: "alert",
|
|
248
|
-
children: error
|
|
245
|
+
if ($[44] !== error || $[45] !== errorSource) {
|
|
246
|
+
t18 = error !== null && /* @__PURE__ */ jsxDEV(ErrorAlert, {
|
|
247
|
+
error: errorSource,
|
|
248
|
+
testId: "fs-error"
|
|
249
249
|
}, void 0, false);
|
|
250
|
-
$[
|
|
251
|
-
$[
|
|
250
|
+
$[44] = error;
|
|
251
|
+
$[45] = errorSource;
|
|
252
|
+
$[46] = t18;
|
|
252
253
|
} else {
|
|
253
|
-
t18 = $[
|
|
254
|
+
t18 = $[46];
|
|
254
255
|
}
|
|
255
256
|
t6 = /* @__PURE__ */ jsxDEV("div", {
|
|
256
257
|
className: "flex flex-col gap-4",
|
|
@@ -356,15 +357,16 @@ const FunctionStatsPanel = (t0) => {
|
|
|
356
357
|
}, void 0, false)]
|
|
357
358
|
}, void 0, true);
|
|
358
359
|
$[8] = error;
|
|
359
|
-
$[9] =
|
|
360
|
-
$[10] =
|
|
361
|
-
$[11] =
|
|
362
|
-
$[12] =
|
|
363
|
-
$[13] =
|
|
364
|
-
$[14] =
|
|
365
|
-
$[15] =
|
|
360
|
+
$[9] = errorSource;
|
|
361
|
+
$[10] = kindByPath;
|
|
362
|
+
$[11] = liveError;
|
|
363
|
+
$[12] = shardKey;
|
|
364
|
+
$[13] = sortKey;
|
|
365
|
+
$[14] = stats;
|
|
366
|
+
$[15] = t;
|
|
367
|
+
$[16] = t6;
|
|
366
368
|
} else {
|
|
367
|
-
t6 = $[
|
|
369
|
+
t6 = $[16];
|
|
368
370
|
}
|
|
369
371
|
return t6;
|
|
370
372
|
};
|
|
@@ -5,14 +5,14 @@ import ConnectionBadge from '../packem_shared/ConnectionBadge-B2DDM2Tn.js';
|
|
|
5
5
|
import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
|
|
6
6
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
7
7
|
import { C as Card } from '../packem_shared/card-DURq3ElK.js';
|
|
8
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
8
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
9
9
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
10
10
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
11
|
-
import { f as fireAndForget,
|
|
11
|
+
import { f as fireAndForget, i as formatTimestamp, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
12
12
|
import { l as loadRecentShards } from '../packem_shared/shard-history-DyebH1R5.js';
|
|
13
13
|
import { c as cn } from '../packem_shared/utils-B05Dmz_H.js';
|
|
14
14
|
import { shardsToAggregate } from '../packem_shared/aggregateMetrics-D4nUHEKU.js';
|
|
15
|
-
import { S as Sparkline } from '../packem_shared/sparkline-
|
|
15
|
+
import { S as Sparkline } from '../packem_shared/sparkline-BnA1kC9X.js';
|
|
16
16
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
17
17
|
|
|
18
18
|
const STATUS_RANK = {
|
|
@@ -4,13 +4,13 @@ import { useNavigate } from '@tanstack/react-router';
|
|
|
4
4
|
import { useState, useRef, useCallback, useEffect, useMemo } from 'react';
|
|
5
5
|
import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
6
6
|
import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
7
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
7
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
8
8
|
import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
|
|
9
9
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
10
10
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
11
|
-
import { f as fireAndForget, c as callOptions, a as adminRef } from '../packem_shared/internal-
|
|
11
|
+
import { f as fireAndForget, c as callOptions, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
12
12
|
import { r as recordShard } from '../packem_shared/shard-history-DyebH1R5.js';
|
|
13
|
-
import { a as advisoryRow, A as AdvisorView } from '../packem_shared/advisor-view-
|
|
13
|
+
import { a as advisoryRow, A as AdvisorView } from '../packem_shared/advisor-view-D3-U4kRR.js';
|
|
14
14
|
import { ConfirmButton } from '../packem_shared/ConfirmButton-C2eVi2Qv.js';
|
|
15
15
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
16
16
|
import { deriveInsights } from '../packem_shared/DEFAULT_INSIGHT_THRESHOLDS-DjF0h-gA.js';
|
|
@@ -452,6 +452,7 @@ const InsightsPanel = ({
|
|
|
452
452
|
}, void 0, false);
|
|
453
453
|
return /* @__PURE__ */ jsxDEV(AdvisorView, {
|
|
454
454
|
error,
|
|
455
|
+
errorSource: error === null ? void 0 : metricsQuery.errorSource,
|
|
455
456
|
rows,
|
|
456
457
|
testId: "lunora-insights",
|
|
457
458
|
toolbar
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { c } from 'react/compiler-runtime';
|
|
2
2
|
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
3
3
|
import { useState, useEffect, useMemo, useRef } from 'react';
|
|
4
|
+
import { E as ErrorAlert } from '../packem_shared/error-alert-BBT6D22d.js';
|
|
4
5
|
import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
|
|
5
6
|
import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
6
7
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
7
8
|
import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
|
|
8
9
|
import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
|
|
9
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
10
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
10
11
|
import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
|
|
11
12
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
12
13
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
@@ -516,6 +517,7 @@ const LogsPanel = ({
|
|
|
516
517
|
const activeQuery = view === "requests" ? requestsQuery : errorsQuery;
|
|
517
518
|
const {
|
|
518
519
|
error,
|
|
520
|
+
errorSource,
|
|
519
521
|
isLoading: activeLoading,
|
|
520
522
|
liveError
|
|
521
523
|
} = activeQuery;
|
|
@@ -743,11 +745,9 @@ const LogsPanel = ({
|
|
|
743
745
|
children: t("error")
|
|
744
746
|
}, void 0, false)]
|
|
745
747
|
}, void 0, true)]
|
|
746
|
-
}, void 0, true), readout === "error" && /* @__PURE__ */ jsxDEV(
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
role: "alert",
|
|
750
|
-
children: error
|
|
748
|
+
}, void 0, true), readout === "error" && /* @__PURE__ */ jsxDEV(ErrorAlert, {
|
|
749
|
+
error: errorSource,
|
|
750
|
+
testId: "lg-error"
|
|
751
751
|
}, void 0, false), readout === "empty" && /* @__PURE__ */ jsxDEV(EmptyState, {
|
|
752
752
|
description: t("Function and request logs for this shard show up here as your app handles traffic."),
|
|
753
753
|
icon: /* @__PURE__ */ jsxDEV("svg", {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useLunora } from '@lunora/react';
|
|
3
3
|
import { useState, useMemo } from 'react';
|
|
4
|
+
import { E as ErrorAlert } from '../packem_shared/error-alert-BBT6D22d.js';
|
|
4
5
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
5
6
|
import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
6
7
|
import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
|
|
@@ -10,11 +11,11 @@ import { ScrollArea as ScrollArea$1 } from '@base-ui/react/scroll-area';
|
|
|
10
11
|
import { c as cn } from '../packem_shared/utils-B05Dmz_H.js';
|
|
11
12
|
import { jsxDEV, Fragment } from 'react/jsx-dev-runtime';
|
|
12
13
|
import { Separator as Separator$1 } from '@base-ui/react/separator';
|
|
13
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
14
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
14
15
|
import { useAutoRefresh } from '../packem_shared/DEFAULT_AUTO_REFRESH_MS-Vxwaxx51.js';
|
|
15
16
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
16
17
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
17
|
-
import {
|
|
18
|
+
import { i as formatTimestamp, f as fireAndForget, g as copyToClipboard, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
18
19
|
|
|
19
20
|
function Separator({
|
|
20
21
|
className,
|
|
@@ -147,6 +148,7 @@ const MailPanel = ({
|
|
|
147
148
|
const {
|
|
148
149
|
data,
|
|
149
150
|
error: readError,
|
|
151
|
+
errorSource: readErrorSource,
|
|
150
152
|
isLoading,
|
|
151
153
|
refetch
|
|
152
154
|
} = useAdminQuery(ADMIN_FUNCTIONS.getCapturedMail, {
|
|
@@ -158,6 +160,7 @@ const MailPanel = ({
|
|
|
158
160
|
const [filter, setFilter] = useState("");
|
|
159
161
|
const entries = useMemo(() => data?.entries ?? [], [data]);
|
|
160
162
|
const error = readError ?? actionError;
|
|
163
|
+
const errorSource = readError === null ? actionError : readErrorSource;
|
|
161
164
|
const clearInbox = async () => {
|
|
162
165
|
setActionError(null);
|
|
163
166
|
try {
|
|
@@ -264,11 +267,9 @@ const MailPanel = ({
|
|
|
264
267
|
count: entries.length
|
|
265
268
|
})
|
|
266
269
|
}, void 0, false)]
|
|
267
|
-
}, void 0, true), error !== null && /* @__PURE__ */ jsxDEV(
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
role: "alert",
|
|
271
|
-
children: error
|
|
270
|
+
}, void 0, true), error !== null && /* @__PURE__ */ jsxDEV(ErrorAlert, {
|
|
271
|
+
error: errorSource,
|
|
272
|
+
testId: "mail-error"
|
|
272
273
|
}, void 0, false), error === null && !isLoading && entries.length === 0 && /* @__PURE__ */ jsxDEV(EmptyState, {
|
|
273
274
|
description: t("Email your app sends in dev is captured here — nothing is delivered."),
|
|
274
275
|
icon: /* @__PURE__ */ jsxDEV("svg", {
|
|
@@ -6,18 +6,18 @@ import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
|
6
6
|
import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
|
|
7
7
|
import { a as CardContent, C as Card, b as CardHeader, c as CardTitle, d as CardDescription } from '../packem_shared/card-DURq3ElK.js';
|
|
8
8
|
import { T as Table, a as TableHeader, b as TableRow, c as TableHead, d as TableBody, e as TableCell } from '../packem_shared/table-DsCa9Qp9.js';
|
|
9
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
9
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
10
10
|
import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
|
|
11
11
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
12
12
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
13
13
|
import { c as CLOUDFLARE_DURABLE_OBJECTS_URL } from '../packem_shared/cf-links-BZfRdxSE.js';
|
|
14
|
-
import {
|
|
14
|
+
import { j as formatBytes, f as fireAndForget, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
15
15
|
import { r as recordShard, l as loadRecentShards } from '../packem_shared/shard-history-DyebH1R5.js';
|
|
16
16
|
import { aggregateMetrics, computeLatencyPercentiles, enrichQueryStats, shardsToAggregate } from '../packem_shared/aggregateMetrics-D4nUHEKU.js';
|
|
17
17
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
18
18
|
import { S as SelectValue, a as SelectTrigger, b as SelectItem, c as SelectContent, d as Select } from '../packem_shared/select-UkNYCT3s.js';
|
|
19
19
|
import { jsxDEV, Fragment } from 'react/jsx-dev-runtime';
|
|
20
|
-
import { S as Sparkline } from '../packem_shared/sparkline-
|
|
20
|
+
import { S as Sparkline } from '../packem_shared/sparkline-BnA1kC9X.js';
|
|
21
21
|
|
|
22
22
|
const performanceLevel = (avgMs) => {
|
|
23
23
|
if (avgMs >= 100) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { useLunora } from '@lunora/react';
|
|
2
2
|
import { useState, useEffect } from 'react';
|
|
3
3
|
import { ConfirmButton } from '../packem_shared/ConfirmButton-C2eVi2Qv.js';
|
|
4
|
+
import { E as ErrorAlert } from '../packem_shared/error-alert-BBT6D22d.js';
|
|
4
5
|
import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
|
|
5
6
|
import { ShardInput } from '../packem_shared/ShardInput-gx_DZXXn.js';
|
|
6
7
|
import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
|
|
@@ -10,11 +11,11 @@ import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
|
|
|
10
11
|
import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
|
|
11
12
|
import { L as Label } from '../packem_shared/label-D8ykjn5J.js';
|
|
12
13
|
import { T as Table, a as TableHeader, b as TableRow, c as TableHead, d as TableBody, e as TableCell } from '../packem_shared/table-DsCa9Qp9.js';
|
|
13
|
-
import { u as useAdminQuery } from '../packem_shared/use-admin-query-
|
|
14
|
+
import { u as useAdminQuery } from '../packem_shared/use-admin-query-BHPKmPuj.js';
|
|
14
15
|
import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
|
|
15
16
|
import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
|
|
16
17
|
import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-CdaxLGkE.js';
|
|
17
|
-
import {
|
|
18
|
+
import { i as formatTimestamp, f as fireAndForget, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-DTsYVn-g.js';
|
|
18
19
|
import { r as recordShard } from '../packem_shared/shard-history-DyebH1R5.js';
|
|
19
20
|
import { jsxDEV } from 'react/jsx-dev-runtime';
|
|
20
21
|
|
|
@@ -40,6 +41,7 @@ const MigrationsPanel = ({
|
|
|
40
41
|
const rows = statusQuery.data?.migrations ?? null;
|
|
41
42
|
const statusError = statusQuery.error;
|
|
42
43
|
const {
|
|
44
|
+
errorSource: statusErrorSource,
|
|
43
45
|
liveError
|
|
44
46
|
} = statusQuery;
|
|
45
47
|
useEffect(() => {
|
|
@@ -96,11 +98,9 @@ const MigrationsPanel = ({
|
|
|
96
98
|
message: liveError,
|
|
97
99
|
prefix: "mg"
|
|
98
100
|
}, void 0, false)]
|
|
99
|
-
}, void 0, true), statusError !== null && /* @__PURE__ */ jsxDEV(
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
role: "alert",
|
|
103
|
-
children: statusError
|
|
101
|
+
}, void 0, true), statusError !== null && /* @__PURE__ */ jsxDEV(ErrorAlert, {
|
|
102
|
+
error: statusErrorSource,
|
|
103
|
+
testId: "mg-status-error"
|
|
104
104
|
}, void 0, false), rows !== null && rows.length === 0 && /* @__PURE__ */ jsxDEV(EmptyState, {
|
|
105
105
|
description: t("Data migrations you run against this shard will be tracked here."),
|
|
106
106
|
icon: /* @__PURE__ */ jsxDEV("svg", {
|