@lunora/studio 1.0.0-alpha.53 → 1.0.0-alpha.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/dist/index.d.ts +680 -780
  2. package/dist/index.js +8 -8
  3. package/dist/mount.d.ts +10 -10
  4. package/dist/mount.js +1 -1
  5. package/dist/packem_chunks/ApiTab.js +1 -1
  6. package/dist/packem_chunks/AuditPanel.js +2 -2
  7. package/dist/packem_chunks/ExportImportPanel.js +2 -2
  8. package/dist/packem_chunks/FileBrowser.js +3 -3
  9. package/dist/packem_chunks/FunctionRunner.js +1 -1
  10. package/dist/packem_chunks/FunctionStatsPanel.js +2 -2
  11. package/dist/packem_chunks/HealthPanel.js +2 -2
  12. package/dist/packem_chunks/InsightsPanel.js +2 -2
  13. package/dist/packem_chunks/LogsPanel.js +81 -53
  14. package/dist/packem_chunks/MailPanel.js +1 -1
  15. package/dist/packem_chunks/MetricsPanel.js +392 -7
  16. package/dist/packem_chunks/MigrationsPanel.js +2 -2
  17. package/dist/packem_chunks/PitrPanel.js +1 -1
  18. package/dist/packem_chunks/SchemaViewer.js +2 -2
  19. package/dist/packem_chunks/SecurityAdvisorPanel.js +2 -2
  20. package/dist/packem_chunks/SettingsPanel.js +3 -3
  21. package/dist/packem_chunks/SqlEditorPanel.js +1 -1
  22. package/dist/packem_chunks/TableEditor.js +2 -2
  23. package/dist/packem_chunks/agents-panel.js +2 -2
  24. package/dist/packem_chunks/analytics-panel.js +1 -1
  25. package/dist/packem_chunks/auth-config-panel.js +1 -1
  26. package/dist/packem_chunks/auth-sessions-panel.js +1 -1
  27. package/dist/packem_chunks/containers-panel.js +2 -2
  28. package/dist/packem_chunks/dashboards-panel.js +2 -2
  29. package/dist/packem_chunks/fanout-panel.js +2 -2
  30. package/dist/packem_chunks/flags-panel.js +2 -2
  31. package/dist/packem_chunks/issues-panel.js +2 -2
  32. package/dist/packem_chunks/kv-browser.js +2 -2
  33. package/dist/packem_chunks/log-drains-panel.js +2 -2
  34. package/dist/packem_chunks/organizations-panel.js +1 -1
  35. package/dist/packem_chunks/payments-panel.js +2 -2
  36. package/dist/packem_chunks/permissions-panel.js +2 -2
  37. package/dist/packem_chunks/queues-panel.js +2 -2
  38. package/dist/packem_chunks/rls-panel.js +2 -2
  39. package/dist/packem_chunks/schedule-panel.js +2 -2
  40. package/dist/packem_chunks/storage-rules-panel.js +2 -2
  41. package/dist/packem_chunks/subscriptions-panel.js +2 -2
  42. package/dist/packem_chunks/traces-panel.js +734 -0
  43. package/dist/packem_chunks/users-panel.js +1 -1
  44. package/dist/packem_chunks/vector-browser.js +1 -1
  45. package/dist/packem_chunks/workflows-panel.js +2 -2
  46. package/dist/packem_shared/{ADMIN_FUNCTIONS-DNeyYtUN.js → ADMIN_FUNCTIONS-C6TEeUiJ.js} +2 -0
  47. package/dist/packem_shared/{ApiDocsPanel-_aEZxAMX.js → ApiDocsPanel-CcC6ucbp.js} +1 -1
  48. package/dist/packem_shared/{DataBrowser-C8hejnub.js → DataBrowser-BuFEPTiv.js} +1 -1
  49. package/dist/packem_shared/{GlobalDataBrowser-f5Ll2AQK.js → GlobalDataBrowser-D8h1fTL1.js} +1 -1
  50. package/dist/packem_shared/{HomePanel-Ye8PaqQL.js → HomePanel-2I1YZm0A.js} +3 -3
  51. package/dist/packem_shared/{ScheduledJobs-dHMgnJbx.js → ScheduledJobs-Cz5Tr-M6.js} +1 -1
  52. package/dist/packem_shared/{Studio-BNGjxLVo.js → Studio-CCJBI2wP.js} +2 -2
  53. package/dist/packem_shared/{StudioApp-K9dn1Q9d.js → StudioApp-Daeqxw2h.js} +1 -1
  54. package/dist/packem_shared/{advisor-view-Cx21PS_T.js → advisor-view-1RaDWED7.js} +1 -1
  55. package/dist/packem_shared/app.d-C-kxb-1T.d.ts +254 -0
  56. package/dist/packem_shared/{card-DURq3ElK.js → card-F2vH_aj2.js} +1 -1
  57. package/dist/packem_shared/{cf-links-BZfRdxSE.js → cf-links-SIbyi4Y1.js} +1 -1
  58. package/dist/packem_shared/{home-panel-D62G8108.js → home-panel-DHHUtnKU.js} +2 -2
  59. package/dist/packem_shared/log-fields-jEH83H2G.js +18 -0
  60. package/dist/packem_shared/{studio-Cd21fp4v.js → studio-0479nrrm.js} +551 -524
  61. package/dist/standalone/{chunk-SDQE2IUJ.js → chunk-3W4CSGDO.js} +1 -1
  62. package/dist/standalone/{chunk-FFVSSWU2.js → chunk-4AZYW2PI.js} +1 -1
  63. package/dist/standalone/{chunk-ZQQ3MFEQ.js → chunk-4F72YCTU.js} +1 -1
  64. package/dist/standalone/{chunk-IZN4TYMN.js → chunk-5IGHDPEP.js} +1 -1
  65. package/dist/standalone/{chunk-T7FHIJ2T.js → chunk-6LLFTVEI.js} +1 -1
  66. package/dist/standalone/{chunk-JPILGFXT.js → chunk-7YGTGBP7.js} +1 -1
  67. package/dist/standalone/{chunk-OETK333R.js → chunk-AE3AKGOW.js} +1 -1
  68. package/dist/standalone/{chunk-TO6D2PJC.js → chunk-CHNXZYAC.js} +1 -1
  69. package/dist/standalone/{chunk-R2MAZ2OH.js → chunk-CW7LZ4SR.js} +1 -1
  70. package/dist/standalone/{chunk-WUFVFVHJ.js → chunk-D73WYMRU.js} +1 -1
  71. package/dist/standalone/{chunk-YFZ27MEC.js → chunk-DVBY6YQK.js} +1 -1
  72. package/dist/standalone/chunk-EBTLTGG3.js +1 -0
  73. package/dist/standalone/chunk-EIZG4GOM.js +1 -0
  74. package/dist/standalone/{chunk-DMFVDMUJ.js → chunk-EPDC422O.js} +1 -1
  75. package/dist/standalone/{chunk-ISOUWAPB.js → chunk-FBGC3RSU.js} +1 -1
  76. package/dist/standalone/{chunk-LUP4YTBS.js → chunk-FDWXYXOM.js} +1 -1
  77. package/dist/standalone/{chunk-XXAW7V4T.js → chunk-FPKTXKPE.js} +1 -1
  78. package/dist/standalone/{chunk-AITOCPML.js → chunk-FQUNSQLG.js} +1 -1
  79. package/dist/standalone/{chunk-HRHG4HOZ.js → chunk-FXNS5NBY.js} +1 -1
  80. package/dist/standalone/{chunk-3GVA2ROQ.js → chunk-G4GGGHEV.js} +1 -1
  81. package/dist/standalone/{chunk-C4QK2DJN.js → chunk-G5CMK5GY.js} +1 -1
  82. package/dist/standalone/{chunk-GPQX3AEO.js → chunk-G5RC7USY.js} +1 -1
  83. package/dist/standalone/{chunk-PWKD5FTM.js → chunk-GVFODXW2.js} +1 -1
  84. package/dist/standalone/{chunk-MDTNVR3G.js → chunk-HNIDN3RX.js} +1 -1
  85. package/dist/standalone/{chunk-XXXNY3DK.js → chunk-IKVZUVHJ.js} +1 -1
  86. package/dist/standalone/{chunk-3C3CU2DS.js → chunk-JGCRBFFO.js} +1 -1
  87. package/dist/standalone/chunk-JHR3HKT5.js +3 -0
  88. package/dist/standalone/{chunk-WXUUGXDV.js → chunk-JQPHZL2A.js} +1 -1
  89. package/dist/standalone/{chunk-CRY26DNY.js → chunk-LJE6PGHD.js} +1 -1
  90. package/dist/standalone/{chunk-5JB7FDCA.js → chunk-LTCX3QOE.js} +1 -1
  91. package/dist/standalone/{chunk-ALL4U2C5.js → chunk-MWH5LBNF.js} +1 -1
  92. package/dist/standalone/{chunk-CZGILAZI.js → chunk-N5FMEYSL.js} +1 -1
  93. package/dist/standalone/chunk-N7SVJOHN.js +1 -0
  94. package/dist/standalone/{chunk-7KSXHCUD.js → chunk-NAFKYFBZ.js} +1 -1
  95. package/dist/standalone/{chunk-3XBP6RRG.js → chunk-OVSBLTAA.js} +1 -1
  96. package/dist/standalone/chunk-OXHHSUXO.js +1 -0
  97. package/dist/standalone/chunk-PIB7VUVM.js +1 -0
  98. package/dist/standalone/{chunk-IC7XYSER.js → chunk-Q3X7IMLF.js} +1 -1
  99. package/dist/standalone/{chunk-LAK5VSPI.js → chunk-QVIPA6UJ.js} +1 -1
  100. package/dist/standalone/{chunk-NXAKNU3L.js → chunk-RCSULEDU.js} +1 -1
  101. package/dist/standalone/{chunk-6TMEOFZC.js → chunk-RDA4VTHI.js} +1 -1
  102. package/dist/standalone/{chunk-VY6AI3RI.js → chunk-RG4HLPM2.js} +1 -1
  103. package/dist/standalone/{chunk-LOYE7OU2.js → chunk-S2G7OH5T.js} +1 -1
  104. package/dist/standalone/{chunk-7N5KFSSB.js → chunk-SP7GSPKX.js} +1 -1
  105. package/dist/standalone/{chunk-W6JKUZKD.js → chunk-SPACAIAR.js} +1 -1
  106. package/dist/standalone/{chunk-X4QFAAZ5.js → chunk-SWMBBYJU.js} +1 -1
  107. package/dist/standalone/{chunk-HZKFL2M7.js → chunk-TTEEPVCN.js} +1 -1
  108. package/dist/standalone/{chunk-SXAFEREK.js → chunk-VC2VDAUO.js} +1 -1
  109. package/dist/standalone/{chunk-USYCKPUK.js → chunk-VQ3YOUZB.js} +1 -1
  110. package/dist/standalone/chunk-VXM5H542.js +4 -0
  111. package/dist/standalone/{chunk-3MAQAOUA.js → chunk-W7ND56KZ.js} +1 -1
  112. package/dist/standalone/{chunk-43F677PE.js → chunk-WA3DGSC2.js} +1 -1
  113. package/dist/standalone/{chunk-75LPCQ77.js → chunk-WCLFE2ZB.js} +1 -1
  114. package/dist/standalone/{chunk-EEWKIQUE.js → chunk-WOYQG5AM.js} +1 -1
  115. package/dist/standalone/{chunk-JM7XBQVK.js → chunk-XCNYUUD6.js} +1 -1
  116. package/dist/standalone/{chunk-ZVT4GJEI.js → chunk-XG4TZSP4.js} +1 -1
  117. package/dist/standalone/{chunk-A3ZJACVT.js → chunk-XZWFP2GI.js} +1 -1
  118. package/dist/standalone/chunk-YNSFQKMM.js +1 -0
  119. package/dist/standalone/{chunk-CODD62OJ.js → chunk-YRE6TGXH.js} +1 -1
  120. package/dist/standalone/{chunk-S7RKDQPS.js → chunk-YS7NUMAN.js} +1 -1
  121. package/dist/standalone/{chunk-IEKK5GO6.js → chunk-ZUTFDG76.js} +1 -1
  122. package/dist/standalone/{chunk-22C6COGE.js → chunk-ZXLEXF4X.js} +2 -2
  123. package/dist/standalone/studio.js +1 -1
  124. package/dist/styles.css +2 -2
  125. package/package.json +8 -8
  126. package/dist/packem_shared/app.d-CGdOmLTm.d.ts +0 -300
  127. package/dist/standalone/chunk-G7ZBM54M.js +0 -1
  128. package/dist/standalone/chunk-I7Y7ST5Y.js +0 -1
  129. package/dist/standalone/chunk-KJJ3WM6H.js +0 -4
  130. package/dist/standalone/chunk-LT7IG26L.js +0 -1
  131. package/dist/standalone/chunk-TC4KPQJ7.js +0 -3
  132. package/dist/standalone/chunk-WI7GWFEG.js +0 -1
  133. /package/dist/standalone/{chunk-ITQKVEP7.js → chunk-5XO36X4C.js} +0 -0
  134. /package/dist/standalone/{chunk-TQ36RWOP.js → chunk-IYHPYY4A.js} +0 -0
  135. /package/dist/standalone/{chunk-SEU5V7I6.js → chunk-Y572GMZE.js} +0 -0
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { StudioApp } from './packem_shared/StudioApp-K9dn1Q9d.js';
1
+ export { StudioApp } from './packem_shared/StudioApp-Daeqxw2h.js';
2
2
  export { CommandPalette, openCommandPalette } from './packem_shared/CommandPalette-BXV4eKf5.js';
3
- export { S as Studio } from './packem_shared/studio-Cd21fp4v.js';
3
+ export { S as Studio } from './packem_shared/studio-0479nrrm.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-CZnpHILL.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-_aEZxAMX.js';
11
+ export { default as ApiDocsPanel } from './packem_shared/ApiDocsPanel-CcC6ucbp.js';
12
12
  export { default as ApiReferencePanel } from './packem_shared/ApiReferencePanel-Dd8pcswz.js';
13
13
  export { default as ApiTab } from './packem_chunks/ApiTab.js';
14
14
  export { default as OpenRpcReferencePanel } from './packem_shared/OpenRpcReferencePanel-CWaf0ZtX.js';
15
- export { DataBrowser } from './packem_shared/DataBrowser-C8hejnub.js';
15
+ export { DataBrowser } from './packem_shared/DataBrowser-BuFEPTiv.js';
16
16
  export { DataFilters, toFilterClauses } from './packem_shared/DataFilters-B1Q7mrt7.js';
17
- export { GlobalDataBrowser } from './packem_shared/GlobalDataBrowser-f5Ll2AQK.js';
17
+ export { GlobalDataBrowser } from './packem_shared/GlobalDataBrowser-D8h1fTL1.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-D62G8108.js';
24
+ export { H as HomePanel } from './packem_shared/home-panel-DHHUtnKU.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-dHMgnJbx.js';
28
+ export { ScheduledJobs } from './packem_shared/ScheduledJobs-Cz5Tr-M6.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';
@@ -37,5 +37,5 @@ export { DEFAULT_AUTO_REFRESH_MS, useAutoRefresh } from './packem_shared/DEFAULT
37
37
  export { default as useDebounced } from './packem_shared/useDebounced-Dxncpg6z.js';
38
38
  export { DEFAULT_LOCALE, createStudioI18n, studioI18n, useT } from './packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
39
39
  export { StudioI18nProvider } from './packem_shared/StudioI18nProvider-B-tDCZIi.js';
40
- export { ADMIN_FUNCTIONS, ADMIN_FUNCTION_PREFIX } from './packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
40
+ export { ADMIN_FUNCTIONS, ADMIN_FUNCTION_PREFIX } from './packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
41
41
  export { default as STUDIO_ROOT_CLASS } from './packem_shared/STUDIO_ROOT_CLASS-D12gX2dV.js';
package/dist/mount.d.ts CHANGED
@@ -1,21 +1,21 @@
1
1
  import { Root } from 'react-dom/client';
2
- import { S as StudioAppProps } from "./packem_shared/app.d-CGdOmLTm.js";
2
+ import { S as StudioAppProps } from "./packem_shared/app.d-C-kxb-1T.js";
3
3
  import '@lunora/client';
4
4
  import 'react';
5
5
  import '@lingui/core';
6
6
  interface MountStudioOptions extends StudioAppProps {
7
7
  /**
8
- * The container to mount into. Accepts an element or a selector; defaults to
9
- * `#root`. Throws if the selector matches nothing so misconfiguration fails
10
- * loudly rather than silently rendering nowhere.
11
- */
8
+ * The container to mount into. Accepts an element or a selector; defaults to
9
+ * `#root`. Throws if the selector matches nothing so misconfiguration fails
10
+ * loudly rather than silently rendering nowhere.
11
+ */
12
12
  readonly container?: Element | string;
13
13
  }
14
14
  /**
15
- * Mount the batteries-included {@link StudioApp} into the DOM and return the
16
- * React root (call `.unmount()` to tear it down). This is the entry the
17
- * standalone app's `main.tsx` and the `@lunora/vite` dev route both call — it
18
- * keeps the host HTML to a single `<div id="root">` plus one script.
19
- */
15
+ * Mount the batteries-included {@link StudioApp} into the DOM and return the
16
+ * React root (call `.unmount()` to tear it down). This is the entry the
17
+ * standalone app's `main.tsx` and the `@lunora/vite` dev route both call — it
18
+ * keeps the host HTML to a single `<div id="root">` plus one script.
19
+ */
20
20
  declare const mountStudio: (options?: MountStudioOptions) => Root;
21
21
  export { MountStudioOptions, mountStudio };
package/dist/mount.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { LunoraError } from '@lunora/errors';
2
2
  import { createRoot } from 'react-dom/client';
3
- import { StudioApp } from './packem_shared/StudioApp-K9dn1Q9d.js';
3
+ import { StudioApp } from './packem_shared/StudioApp-Daeqxw2h.js';
4
4
  import { jsxDEV } from 'react/jsx-dev-runtime';
5
5
 
6
6
  const mountStudio = (options = {}) => {
@@ -2,7 +2,7 @@ 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-_aEZxAMX.js';
5
+ import ApiDocsPanel from '../packem_shared/ApiDocsPanel-CcC6ucbp.js';
6
6
  import ApiReferencePanel from '../packem_shared/ApiReferencePanel-Dd8pcswz.js';
7
7
  import OpenRpcReferencePanel from '../packem_shared/OpenRpcReferencePanel-CWaf0ZtX.js';
8
8
  import { jsxDEV } from 'react/jsx-dev-runtime';
@@ -4,14 +4,14 @@ import { E as ErrorAlert } from '../packem_shared/error-alert-vIPQoN3Y.js';
4
4
  import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
5
5
  import { ShardInput } from '../packem_shared/ShardInput-CZnpHILL.js';
6
6
  import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
7
- import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
7
+ import { C as Card, a as CardContent } from '../packem_shared/card-F2vH_aj2.js';
8
8
  import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
9
9
  import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
10
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';
11
11
  import { u as useAdminQuery } from '../packem_shared/use-admin-query-BGJ010yZ.js';
12
12
  import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
13
13
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
14
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
14
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
15
15
  import { i as formatTimestamp } from '../packem_shared/internal-zwBoOv24.js';
16
16
  import { jsxDEV } from 'react/jsx-dev-runtime';
17
17
 
@@ -4,11 +4,11 @@ import { useState } from 'react';
4
4
  import { ConfirmButton } from '../packem_shared/ConfirmButton-C2eVi2Qv.js';
5
5
  import { ShardInput } from '../packem_shared/ShardInput-CZnpHILL.js';
6
6
  import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
7
- import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
7
+ import { C as Card, a as CardContent } from '../packem_shared/card-F2vH_aj2.js';
8
8
  import { T as Textarea } from '../packem_shared/textarea-D3gaCU_-.js';
9
9
  import { b as useInvalidateAdmin } from '../packem_shared/use-admin-query-BGJ010yZ.js';
10
10
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
11
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
11
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
12
12
  import { f as fireAndForget, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-zwBoOv24.js';
13
13
  import { r as recordShard } from '../packem_shared/shard-history-AxiJ1WPP.js';
14
14
  import { jsxDEV } from 'react/jsx-dev-runtime';
@@ -5,7 +5,7 @@ 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
7
  import { S as SelectionBar } from '../packem_shared/grid-features-B_fZH4iQ.js';
8
- import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
8
+ import { C as Card, a as CardContent } from '../packem_shared/card-F2vH_aj2.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
11
  import { k as formatBytes, f as fireAndForget, e as errorMessage, c as callOptions, a as adminRef, g as copyToClipboard } from '../packem_shared/internal-zwBoOv24.js';
@@ -13,10 +13,10 @@ 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';
15
15
  import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
16
- import { d as CLOUDFLARE_R2_URL } from '../packem_shared/cf-links-BZfRdxSE.js';
16
+ import { d as CLOUDFLARE_R2_URL } from '../packem_shared/cf-links-SIbyi4Y1.js';
17
17
  import { useLunora } from '@lunora/react';
18
18
  import { useAutoRefresh } from '../packem_shared/DEFAULT_AUTO_REFRESH_MS-Vxwaxx51.js';
19
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
19
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
20
20
 
21
21
  const useFileItem = (object, prefix, handlers) => {
22
22
  const $ = c(21);
@@ -7,7 +7,7 @@ import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
7
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
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
10
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
11
11
  import { e as errorMessage, i as formatTimestamp, f as fireAndForget, j as dispatchByKind, a as adminRef } from '../packem_shared/internal-zwBoOv24.js';
12
12
  import { r as recordShard } from '../packem_shared/shard-history-AxiJ1WPP.js';
13
13
  import { jsxDEV } from 'react/jsx-dev-runtime';
@@ -5,13 +5,13 @@ import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
5
5
  import { ShardInput } from '../packem_shared/ShardInput-CZnpHILL.js';
6
6
  import { B as Badge } from '../packem_shared/badge-B2PKA1-5.js';
7
7
  import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
8
- import { C as Card, a as CardContent } from '../packem_shared/card-DURq3ElK.js';
8
+ import { C as Card, a as CardContent } from '../packem_shared/card-F2vH_aj2.js';
9
9
  import { E as EmptyState } from '../packem_shared/empty-state-DY_oe0k6.js';
10
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';
11
11
  import { u as useAdminQuery } from '../packem_shared/use-admin-query-BGJ010yZ.js';
12
12
  import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
13
13
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
14
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
14
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
15
15
  import { i as formatTimestamp } from '../packem_shared/internal-zwBoOv24.js';
16
16
  import { c as cn } from '../packem_shared/utils-B05Dmz_H.js';
17
17
  import { jsxDEV } from 'react/jsx-dev-runtime';
@@ -4,10 +4,10 @@ import { useState, useRef, useEffect, useCallback, useMemo } from 'react';
4
4
  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
- import { C as Card } from '../packem_shared/card-DURq3ElK.js';
7
+ import { C as Card } from '../packem_shared/card-F2vH_aj2.js';
8
8
  import { u as useAdminQuery } from '../packem_shared/use-admin-query-BGJ010yZ.js';
9
9
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
10
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
10
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
11
11
  import { f as fireAndForget, i as formatTimestamp, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-zwBoOv24.js';
12
12
  import { l as loadRecentShards } from '../packem_shared/shard-history-AxiJ1WPP.js';
13
13
  import { c as cn } from '../packem_shared/utils-B05Dmz_H.js';
@@ -7,10 +7,10 @@ import { B as Button } from '../packem_shared/button-BhsN2uZH.js';
7
7
  import { u as useAdminQuery } from '../packem_shared/use-admin-query-BGJ010yZ.js';
8
8
  import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
9
9
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
10
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
10
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
11
11
  import { f as fireAndForget, c as callOptions, a as adminRef } from '../packem_shared/internal-zwBoOv24.js';
12
12
  import { r as recordShard } from '../packem_shared/shard-history-AxiJ1WPP.js';
13
- import { a as advisoryRow, A as AdvisorView } from '../packem_shared/advisor-view-Cx21PS_T.js';
13
+ import { a as advisoryRow, A as AdvisorView } from '../packem_shared/advisor-view-1RaDWED7.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';
@@ -1,6 +1,7 @@
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 { f as formatLogFields } from '../packem_shared/log-fields-jEH83H2G.js';
4
5
  import { E as ErrorAlert } from '../packem_shared/error-alert-vIPQoN3Y.js';
5
6
  import { L as LiveError } from '../packem_shared/live-status-FZ0psC1z.js';
6
7
  import { ShardInput } from '../packem_shared/ShardInput-CZnpHILL.js';
@@ -10,13 +11,15 @@ import { I as Input } from '../packem_shared/input-XH4r1Pt1.js';
10
11
  import { u as useAdminQuery } from '../packem_shared/use-admin-query-BGJ010yZ.js';
11
12
  import useDebounced from '../packem_shared/useDebounced-Dxncpg6z.js';
12
13
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
13
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
14
- import { a as CLOUDFLARE_OBSERVABILITY_URL } from '../packem_shared/cf-links-BZfRdxSE.js';
14
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
15
+ import { b as CLOUDFLARE_OBSERVABILITY_URL } from '../packem_shared/cf-links-SIbyi4Y1.js';
15
16
  import { r as recordShard } from '../packem_shared/shard-history-AxiJ1WPP.js';
16
17
  import { c as cn } from '../packem_shared/utils-B05Dmz_H.js';
17
18
  import { f as flooredRectObserver } from '../packem_shared/virtual-rect-CVMUskSm.js';
18
19
  import { jsxDEV } from 'react/jsx-dev-runtime';
19
20
 
21
+ const LOG_LEVEL_ORDER = ["trace", "debug", "log", "info", "warn", "error", "fatal"];
22
+
20
23
  const SCROLL_HEIGHT = 400;
21
24
  const ROW_HEIGHT = 36;
22
25
  const SCROLL_STYLE = {
@@ -32,7 +35,10 @@ const ROW_BASE_STYLE = {
32
35
  const LEVEL_VARIANT = {
33
36
  debug: "secondary",
34
37
  error: "destructive",
38
+ fatal: "destructive",
35
39
  info: "outline",
40
+ log: "outline",
41
+ trace: "outline",
36
42
  warn: "secondary"
37
43
  };
38
44
  const OUTCOME_VARIANT = {
@@ -40,7 +46,7 @@ const OUTCOME_VARIANT = {
40
46
  ok: "secondary"
41
47
  };
42
48
  const LogRow = (t0) => {
43
- const $ = c(21);
49
+ const $ = c(26);
44
50
  const {
45
51
  entry,
46
52
  index,
@@ -61,90 +67,112 @@ const LogRow = (t0) => {
61
67
  }
62
68
  const style = t2;
63
69
  let t3;
64
- if ($[2] !== entry.timestamp) {
65
- t3 = new Date(entry.timestamp).toLocaleString();
66
- $[2] = entry.timestamp;
70
+ if ($[2] !== entry.fields) {
71
+ t3 = formatLogFields(entry.fields);
72
+ $[2] = entry.fields;
67
73
  $[3] = t3;
68
74
  } else {
69
75
  t3 = $[3];
70
76
  }
77
+ const fields = t3;
71
78
  let t4;
72
- if ($[4] !== t3) {
73
- t4 = /* @__PURE__ */ jsxDEV("span", {
74
- className: "w-44 shrink-0 tabular-nums text-muted-foreground",
75
- role: "gridcell",
76
- children: t3
77
- }, void 0, false);
78
- $[4] = t3;
79
+ if ($[4] !== entry.timestamp) {
80
+ t4 = new Date(entry.timestamp).toLocaleString();
81
+ $[4] = entry.timestamp;
79
82
  $[5] = t4;
80
83
  } else {
81
84
  t4 = $[5];
82
85
  }
83
- const t5 = LEVEL_VARIANT[entry.level];
84
- let t6;
85
- if ($[6] !== entry.level || $[7] !== t5) {
86
- t6 = /* @__PURE__ */ jsxDEV("span", {
87
- className: "w-20 shrink-0",
86
+ let t5;
87
+ if ($[6] !== t4) {
88
+ t5 = /* @__PURE__ */ jsxDEV("span", {
89
+ className: "w-44 shrink-0 tabular-nums text-muted-foreground",
88
90
  role: "gridcell",
89
- children: /* @__PURE__ */ jsxDEV(Badge, {
90
- variant: t5,
91
- children: entry.level
92
- }, void 0, false)
91
+ children: t4
93
92
  }, void 0, false);
94
- $[6] = entry.level;
93
+ $[6] = t4;
95
94
  $[7] = t5;
96
- $[8] = t6;
97
95
  } else {
98
- t6 = $[8];
96
+ t5 = $[7];
99
97
  }
100
- const t7 = entry.functionPath ?? "—";
101
- let t8;
102
- if ($[9] !== t7) {
103
- t8 = /* @__PURE__ */ jsxDEV("span", {
104
- className: "w-48 shrink-0 truncate text-muted-foreground",
98
+ const t6 = LEVEL_VARIANT[entry.level];
99
+ let t7;
100
+ if ($[8] !== entry.level || $[9] !== t6) {
101
+ t7 = /* @__PURE__ */ jsxDEV("span", {
102
+ className: "w-20 shrink-0",
105
103
  role: "gridcell",
106
- children: t7
104
+ children: /* @__PURE__ */ jsxDEV(Badge, {
105
+ variant: t6,
106
+ children: entry.level
107
+ }, void 0, false)
107
108
  }, void 0, false);
108
- $[9] = t7;
109
- $[10] = t8;
109
+ $[8] = entry.level;
110
+ $[9] = t6;
111
+ $[10] = t7;
110
112
  } else {
111
- t8 = $[10];
113
+ t7 = $[10];
112
114
  }
115
+ const t8 = entry.functionPath ?? "—";
113
116
  let t9;
114
- if ($[11] !== entry.message) {
117
+ if ($[11] !== t8) {
115
118
  t9 = /* @__PURE__ */ jsxDEV("span", {
116
- className: "flex-1 truncate",
119
+ className: "w-48 shrink-0 truncate text-muted-foreground",
117
120
  role: "gridcell",
118
- children: entry.message
121
+ children: t8
119
122
  }, void 0, false);
120
- $[11] = entry.message;
123
+ $[11] = t8;
121
124
  $[12] = t9;
122
125
  } else {
123
126
  t9 = $[12];
124
127
  }
125
128
  let t10;
126
- if ($[13] !== index || $[14] !== measureRef || $[15] !== style || $[16] !== t4 || $[17] !== t6 || $[18] !== t8 || $[19] !== t9) {
127
- t10 = /* @__PURE__ */ jsxDEV("div", {
129
+ if ($[13] !== fields) {
130
+ t10 = fields === "" ? null : /* @__PURE__ */ jsxDEV("span", {
131
+ className: "ml-2 text-muted-foreground",
132
+ "data-testid": "lg-fields",
133
+ children: fields
134
+ }, void 0, false);
135
+ $[13] = fields;
136
+ $[14] = t10;
137
+ } else {
138
+ t10 = $[14];
139
+ }
140
+ let t11;
141
+ if ($[15] !== entry.message || $[16] !== t10) {
142
+ t11 = /* @__PURE__ */ jsxDEV("span", {
143
+ className: "flex-1 truncate",
144
+ role: "gridcell",
145
+ children: [entry.message, t10]
146
+ }, void 0, true);
147
+ $[15] = entry.message;
148
+ $[16] = t10;
149
+ $[17] = t11;
150
+ } else {
151
+ t11 = $[17];
152
+ }
153
+ let t12;
154
+ if ($[18] !== index || $[19] !== measureRef || $[20] !== style || $[21] !== t11 || $[22] !== t5 || $[23] !== t7 || $[24] !== t9) {
155
+ t12 = /* @__PURE__ */ jsxDEV("div", {
128
156
  className: "flex items-center border-b border-border px-3 py-1.5 font-mono text-xs hover:bg-muted/50",
129
157
  "data-index": index,
130
158
  "data-testid": "lg-row",
131
159
  ref: measureRef,
132
160
  role: "row",
133
161
  style,
134
- children: [t4, t6, t8, t9]
162
+ children: [t5, t7, t9, t11]
135
163
  }, void 0, true);
136
- $[13] = index;
137
- $[14] = measureRef;
138
- $[15] = style;
139
- $[16] = t4;
140
- $[17] = t6;
141
- $[18] = t8;
142
- $[19] = t9;
143
- $[20] = t10;
164
+ $[18] = index;
165
+ $[19] = measureRef;
166
+ $[20] = style;
167
+ $[21] = t11;
168
+ $[22] = t5;
169
+ $[23] = t7;
170
+ $[24] = t9;
171
+ $[25] = t12;
144
172
  } else {
145
- t10 = $[20];
173
+ t12 = $[25];
146
174
  }
147
- return t10;
175
+ return t12;
148
176
  };
149
177
  const tablesLabel = (tables) => tables.length === 0 ? "—" : tables.join(", ");
150
178
  const RequestRow = (t0) => {
@@ -337,7 +365,7 @@ const buildRequestQuery = (filters) => {
337
365
  }
338
366
  return query;
339
367
  };
340
- const LOG_LEVELS = ["debug", "info", "warn", "error"];
368
+ const LOG_LEVELS = LOG_LEVEL_ORDER;
341
369
  const TIME_RANGE_MS = {
342
370
  "5m": 5 * 60 * 1e3,
343
371
  "15m": 15 * 60 * 1e3,
@@ -357,7 +385,7 @@ const filterLogs = (entries, criteria) => {
357
385
  if (pathNeedle !== "" && !(entry.functionPath ?? "").toLowerCase().includes(pathNeedle)) {
358
386
  return false;
359
387
  }
360
- return needle === "" || entry.message.toLowerCase().includes(needle);
388
+ return needle === "" || entry.message.toLowerCase().includes(needle) || formatLogFields(entry.fields).toLowerCase().includes(needle);
361
389
  });
362
390
  };
363
391
  const NO_PATH_KEY = "—";
@@ -12,7 +12,7 @@ import { jsxDEV, Fragment } from 'react/jsx-dev-runtime';
12
12
  import { u as useAdminQuery } from '../packem_shared/use-admin-query-BGJ010yZ.js';
13
13
  import { useAutoRefresh } from '../packem_shared/DEFAULT_AUTO_REFRESH_MS-Vxwaxx51.js';
14
14
  import { useT } from '../packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js';
15
- import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-DNeyYtUN.js';
15
+ import { ADMIN_FUNCTIONS } from '../packem_shared/ADMIN_FUNCTIONS-C6TEeUiJ.js';
16
16
  import { i as formatTimestamp, f as fireAndForget, g as copyToClipboard, c as callOptions, e as errorMessage, a as adminRef } from '../packem_shared/internal-zwBoOv24.js';
17
17
 
18
18
  function Separator({