@hot-updater/console 1.0.0-rc.2 → 1.0.0-rc.4
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/.output/nitro.json +1 -1
- package/.output/public/assets/InsightsPageHeader-C-Xc2MB9.js +1 -0
- package/.output/public/assets/api-keys-C1sgC6ko.js +1 -0
- package/.output/public/assets/{api-keys-api-BHcODB7q.js → api-keys-api-LchP65vQ.js} +1 -1
- package/.output/public/assets/badge-BuMDU0Rf.js +1 -0
- package/.output/public/assets/card-BEvx_QKh.js +1 -0
- package/.output/public/assets/{chart-no-axes-combined-Dy4WJv2U.js → chart-no-axes-combined-C0G0fQ3J.js} +1 -1
- package/.output/public/assets/{composite-Bp98A0Ld.js → composite-CHTH1Xhh.js} +1 -1
- package/.output/public/assets/createServerFn-DHc2erub.js +3 -0
- package/.output/public/assets/dialog-dyZ1SphZ.js +1 -0
- package/.output/public/assets/{dist-C_NydL0e.js → dist-Bh1gaDfB.js} +1 -1
- package/.output/public/assets/field-79SVH26s.js +1 -0
- package/.output/public/assets/index-BNkxg4jz.js +10 -0
- package/.output/public/assets/input-group-BbHfaBzQ.js +1 -0
- package/.output/public/assets/insights-D_7uSKfc.js +1 -0
- package/.output/public/assets/installations-BzoHWuXw.js +1 -0
- package/.output/public/assets/{installations-CE33wgbY.js → installations-DvjbUqd1.js} +2 -2
- package/.output/public/assets/{lazyRouteComponent-Ccp3bwBY.js → lazyRouteComponent-BN0MS05o.js} +1 -1
- package/.output/public/assets/{link-CI8idAUi.js → link-BG06whwB.js} +1 -1
- package/.output/public/assets/{loader-circle-BoxLrsOu.js → loader-circle-Bbp8LGVC.js} +1 -1
- package/.output/public/assets/{refresh-cw-Bqc72UZG.js → refresh-cw-DZgiAOMk.js} +1 -1
- package/.output/public/assets/routes-BFE-oRIT.js +1 -0
- package/.output/public/assets/{routes-DGVXdzpw.js → routes-DaPMY31P.js} +2 -2
- package/.output/public/assets/{shield-check-uK3MHWJZ.js → shield-check-DoIiaaXU.js} +1 -1
- package/.output/public/assets/signing-BTRhaF5D.js +1 -0
- package/.output/public/assets/styles-C7U0oVke.css +2 -0
- package/.output/public/assets/table-BBEzJ7Xl.js +1 -0
- package/.output/public/assets/useCompositeListItem-BkPDaqyj.js +42 -0
- package/.output/server/{__23tanstack-start-server-fn-resolver-B7ioJhtE.mjs → __23tanstack-start-server-fn-resolver-Dr2ixDgQ.mjs} +40 -32
- package/.output/server/_libs/@base-ui/react+[...].mjs +1 -1
- package/.output/server/_libs/@reduxjs/toolkit+[...].mjs +1554 -0
- package/.output/server/_libs/@tanstack/react-router+[...].mjs +1 -1
- package/.output/server/_libs/@tanstack/react-router-ssr-query+[...].mjs +1 -1
- package/.output/server/_libs/d3-array.mjs +231 -0
- package/.output/server/_libs/d3-color.mjs +330 -0
- package/.output/server/_libs/d3-format.mjs +252 -0
- package/.output/server/_libs/d3-interpolate.mjs +207 -0
- package/.output/server/_libs/d3-path.mjs +77 -0
- package/.output/server/_libs/d3-scale+[...].mjs +1907 -0
- package/.output/server/_libs/d3-shape.mjs +818 -0
- package/.output/server/_libs/decimal.js-light.mjs +884 -0
- package/.output/server/_libs/es-toolkit.mjs +1159 -0
- package/.output/server/_libs/eventemitter3.mjs +236 -0
- package/.output/server/_libs/immer.mjs +532 -0
- package/.output/server/_libs/lucide-react.mjs +9 -2
- package/.output/server/_libs/next-themes.mjs +1 -1
- package/.output/server/_libs/react-redux+[...].mjs +205 -0
- package/.output/server/_libs/recharts+[...].mjs +15054 -0
- package/.output/server/_libs/sonner.mjs +1 -1
- package/.output/server/_libs/tanstack__react-query.mjs +1 -1
- package/.output/server/_runtime.mjs +10 -1
- package/.output/server/_ssr/InsightsPageHeader-C5Has8Ry.mjs +60 -0
- package/.output/server/_ssr/{api-keys-CZeTPQys.mjs → api-keys-DJml_XoK.mjs} +10 -8
- package/.output/server/_ssr/{api-keys-api-BUPQVSpk.mjs → api-keys-api-CrCZyvnl.mjs} +2 -2
- package/.output/server/_ssr/{api-keys-rpc-Cs7tS5_j.mjs → api-keys-rpc-CFaNf-q0.mjs} +3 -3
- package/.output/server/_ssr/{api-rpc-tAupfGQm.mjs → api-rpc-B61KL3Eo.mjs} +25 -25
- package/.output/server/_ssr/{auth-rpc-DUaeOWKK.mjs → auth-rpc-D_hv52-J.mjs} +4 -4
- package/.output/server/_ssr/{auth.server-DW71WzsD.mjs → auth.server-DF_shCeq.mjs} +1 -1
- package/.output/server/_ssr/badge-BgsCP9Dp.mjs +28 -0
- package/.output/server/_ssr/{bundle-signing-rpc-BhnBw0-d.mjs → bundle-signing-rpc-BBipZnFs.mjs} +2 -2
- package/.output/server/_ssr/{bundle-signing.server-C4NW5mWx.mjs → bundle-signing.server-Co_zHdJx.mjs} +1 -1
- package/.output/server/_ssr/bundleActivity-D3_fIda2.mjs +27 -0
- package/.output/server/_ssr/{card-BRiPmi0C.mjs → card-DrbxCPtG.mjs} +3 -25
- package/.output/server/_ssr/chart-qxa-_30a.mjs +162 -0
- package/.output/server/_ssr/{config.server-afDuAwaG.mjs → config.server-CBr6PDj5.mjs} +5 -5
- package/.output/server/_ssr/{createSsrRpc-DjWNJ0uc.mjs → createSsrRpc-NHF2PxuK.mjs} +4 -4
- package/.output/server/_ssr/{deleteBundle-BTGwBgzx.mjs → deleteBundle-BAq3JuGr.mjs} +1 -1
- package/.output/server/_ssr/{dialog-DS-nw-pA.mjs → dialog-DUaIgpgd.mjs} +1 -1
- package/.output/server/_ssr/{downloadBundle-CNnYxYO2.mjs → downloadBundle-B3ert-pY.mjs} +1 -1
- package/.output/server/_ssr/{table-CnZmon_Z.mjs → field-CqNUlqUq.mjs} +4 -50
- package/.output/server/_ssr/{getBundleChildren-C0vh4ZvE.mjs → getBundleChildren-COMt16m_.mjs} +1 -1
- package/.output/server/_ssr/{input-group-BpsnmvZw.mjs → input-group-Bb8ueylQ.mjs} +51 -2
- package/.output/server/_ssr/insights-B-DUbksX.mjs +502 -0
- package/.output/server/_ssr/insights-recovery-DSFM-YTL.mjs +21 -0
- package/.output/server/_ssr/insights-recovery-rpc-P71FH66n.mjs +37 -0
- package/.output/server/_ssr/{insights-rpc-38DujK0G.mjs → insights-rpc-DrIQCjpD.mjs} +2 -2
- package/.output/server/_ssr/insightsRecovery-CqcosG7B.mjs +149 -0
- package/.output/server/_ssr/{installations-CtA59MQG.mjs → installations-BQrppti7.mjs} +2 -2
- package/.output/server/_ssr/{installations-DiVKEF5T.mjs → installations-YumqpNpa.mjs} +426 -11
- package/.output/server/_ssr/{router-B9wG_9f8.mjs → router-iP95Vqi2.mjs} +14 -14
- package/.output/server/_ssr/{routes-CKrrS2q2.mjs → routes-BDabsmc7.mjs} +2 -2
- package/.output/server/_ssr/{routes-D7Yh_jfj.mjs → routes-ivsV2TDu.mjs} +224 -13
- package/.output/server/_ssr/{runtime.server-DacU1TBV.mjs → runtime.server-jmZOKIQM.mjs} +1 -1
- package/.output/server/_ssr/{server-D_C2rMzf.mjs → server-p7yrVBfD.mjs} +3 -3
- package/.output/server/_ssr/{signing-Dz1WkZOf.mjs → signing-CxCbnFCt.mjs} +5 -4
- package/.output/server/_ssr/ssr.mjs +1 -1
- package/.output/server/_ssr/table-D1mL8fJu.mjs +53 -0
- package/.output/server/_tanstack-start-manifest_v-Cwpu0C9Q.mjs +100 -0
- package/.output/server/index.mjs +154 -154
- package/package.json +3 -3
- package/src/components/features/bundles/BundleActivityChart.tsx +95 -0
- package/src/components/features/bundles/BundleInsightsSummary.tsx +121 -0
- package/src/components/features/insights/InsightsControls.tsx +1 -15
- package/src/components/features/insights/InsightsOverview.tsx +368 -179
- package/src/components/features/releases/ReleaseEditorSheet.tsx +10 -0
- package/src/components/ui/empty.tsx +101 -0
- package/src/lib/bundle-activity.ts +21 -0
- package/src/lib/insights-recovery-rpc.ts +38 -0
- package/src/lib/insights-recovery.ts +59 -0
- package/src/lib/server/bundleActivity.ts +37 -0
- package/src/lib/server/insightsHistory.ts +52 -0
- package/src/lib/server/insightsRecovery.ts +186 -0
- package/src/routes/index.tsx +33 -3
- package/src/routes/insights.tsx +1 -42
- package/.output/public/assets/HashValueDisplay-CB0Eskit.js +0 -1
- package/.output/public/assets/InsightsPageHeader-Car5LNiZ.js +0 -1
- package/.output/public/assets/api-keys-BzKocqRy.js +0 -1
- package/.output/public/assets/card-Dhr_eFYj.js +0 -1
- package/.output/public/assets/createServerFn-CA8fs7QD.js +0 -3
- package/.output/public/assets/dialog-CUTrcPlB.js +0 -1
- package/.output/public/assets/index-DdAz-CXv.js +0 -10
- package/.output/public/assets/input-group-cSOG4wh_.js +0 -1
- package/.output/public/assets/insights-C0PBSZ-n.js +0 -1
- package/.output/public/assets/installations-CStZja8x.js +0 -1
- package/.output/public/assets/routes-DTlwOr8I.js +0 -1
- package/.output/public/assets/signing-CMf4aqDO.js +0 -1
- package/.output/public/assets/styles-BCvbtKsm.css +0 -2
- package/.output/public/assets/table-2vcV89QB.js +0 -1
- package/.output/public/assets/useCompositeListItem-CHLITE_4.js +0 -1
- package/.output/public/assets/x-DCd0j8c6.js +0 -1
- package/.output/server/_ssr/HashValueDisplay-DwpGLfrl.mjs +0 -55
- package/.output/server/_ssr/InsightsPageHeader-Df4Brj8u.mjs +0 -484
- package/.output/server/_ssr/insights-BdS364Xu.mjs +0 -460
- package/.output/server/_tanstack-start-manifest_v-2MjTyxil.mjs +0 -97
- package/src/components/features/insights/InsightsBundleReports.tsx +0 -51
- /package/.output/public/assets/{preload-helper-CQ36nxok.js → preload-helper-uTix4PVD.js} +0 -0
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as __toESM } from "../_runtime.mjs";
|
|
2
2
|
import { c as createServerFn } from "./createServerFn-B2hcXoPM.mjs";
|
|
3
3
|
import { J as require_react, q as require_jsx_runtime } from "../_libs/@base-ui/react+[...].mjs";
|
|
4
|
-
import {
|
|
5
|
-
import { S as buttonVariants, a as SidebarContent, b as TooltipProvider, c as SidebarGroupContent, d as SidebarInset, f as SidebarMenu, h as SidebarProvider, i as Sidebar, l as SidebarGroupLabel, m as SidebarMenuItem, o as SidebarFooter, p as SidebarMenuButton, s as SidebarGroup, t as Button$1, u as SidebarHeader, w as createSsrRpc } from "./createSsrRpc-
|
|
4
|
+
import { A as CircleCheck, C as Info, I as ChartNoAxesCombined, S as KeyRound, _ as OctagonX, b as LoaderCircle, c as ShieldCheck, h as Package, n as TriangleAlert, o as Sun, v as Moon } from "../_libs/lucide-react.mjs";
|
|
5
|
+
import { S as buttonVariants, a as SidebarContent, b as TooltipProvider, c as SidebarGroupContent, d as SidebarInset, f as SidebarMenu, h as SidebarProvider, i as Sidebar, l as SidebarGroupLabel, m as SidebarMenuItem, o as SidebarFooter, p as SidebarMenuButton, s as SidebarGroup, t as Button$1, u as SidebarHeader, w as createSsrRpc } from "./createSsrRpc-NHF2PxuK.mjs";
|
|
6
6
|
import { a as HeadContent, d as lazyRouteComponent, f as createFileRoute, i as Scripts, l as createRouter, m as Link, o as useRouterState, p as createRootRouteWithContext, u as Outlet } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
7
7
|
import { t as QueryClient } from "../_libs/tanstack__query-core.mjs";
|
|
8
|
-
import { n as useApiKeyCapabilityQuery, t as ensureApiKeyRouteAccess } from "./api-keys-api-
|
|
8
|
+
import { n as useApiKeyCapabilityQuery, t as ensureApiKeyRouteAccess } from "./api-keys-api-CrCZyvnl.mjs";
|
|
9
9
|
import { t as Toaster } from "../_libs/sonner.mjs";
|
|
10
|
-
import { n as getInsightsScrollRestorationKey, t as Route$6 } from "./installations-
|
|
11
|
-
import { t as Route$7 } from "./routes-
|
|
10
|
+
import { n as getInsightsScrollRestorationKey, t as Route$6 } from "./installations-BQrppti7.mjs";
|
|
11
|
+
import { t as Route$7 } from "./routes-BDabsmc7.mjs";
|
|
12
12
|
import { t as setupRouterSsrQueryIntegration } from "../_libs/@tanstack/react-router-ssr-query+[...].mjs";
|
|
13
13
|
import { t as z } from "../_libs/next-themes.mjs";
|
|
14
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/router-
|
|
14
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/router-iP95Vqi2.js
|
|
15
15
|
var import_react = /* @__PURE__ */ __toESM(require_react());
|
|
16
16
|
var import_jsx_runtime = require_jsx_runtime();
|
|
17
17
|
function HotUpdaterLogo({ className }) {
|
|
@@ -345,7 +345,7 @@ var Toaster$1 = ({ ...props }) => {
|
|
|
345
345
|
};
|
|
346
346
|
var getConsoleAccessRpc = createServerFn({ method: "GET" }).handler(createSsrRpc("c504696e68ba764b48c48aa8a40275938640941e473cf9cfdd7b2322d99f9d13"));
|
|
347
347
|
var getConsoleAuthProvidersRpc = createServerFn({ method: "GET" }).handler(createSsrRpc("fa8c48f0489d97c62b9b68fd0caf0a61b15bad25a42b3866ec36264b4b30bb74"));
|
|
348
|
-
var styles_default = "/assets/styles-
|
|
348
|
+
var styles_default = "/assets/styles-C7U0oVke.css";
|
|
349
349
|
var Route$5 = createRootRouteWithContext()({
|
|
350
350
|
head: () => ({
|
|
351
351
|
meta: [
|
|
@@ -417,17 +417,17 @@ function AuthorizedConsole() {
|
|
|
417
417
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Outlet, {})
|
|
418
418
|
})] });
|
|
419
419
|
}
|
|
420
|
-
var $$splitComponentImporter$2 = () => import("./signing-
|
|
420
|
+
var $$splitComponentImporter$2 = () => import("./signing-CxCbnFCt.mjs");
|
|
421
421
|
var Route$4 = createFileRoute("/signing")({ component: lazyRouteComponent($$splitComponentImporter$2, "component") });
|
|
422
|
-
var $$splitComponentImporter$1 = () => import("./insights-
|
|
422
|
+
var $$splitComponentImporter$1 = () => import("./insights-B-DUbksX.mjs");
|
|
423
423
|
var Route$3 = createFileRoute("/insights")({ component: lazyRouteComponent($$splitComponentImporter$1, "component") });
|
|
424
|
-
var $$splitComponentImporter = () => import("./api-keys-
|
|
424
|
+
var $$splitComponentImporter = () => import("./api-keys-DJml_XoK.mjs");
|
|
425
425
|
var Route$2 = createFileRoute("/api-keys")({
|
|
426
426
|
beforeLoad: ({ context }) => ensureApiKeyRouteAccess(context.queryClient),
|
|
427
427
|
component: lazyRouteComponent($$splitComponentImporter, "component")
|
|
428
428
|
});
|
|
429
429
|
var handleAuthRequest = async ({ request }) => {
|
|
430
|
-
const { handleConsoleAuth } = await import("./auth.server-
|
|
430
|
+
const { handleConsoleAuth } = await import("./auth.server-DF_shCeq.mjs");
|
|
431
431
|
return handleConsoleAuth(request);
|
|
432
432
|
};
|
|
433
433
|
var Route$1 = createFileRoute("/api/auth/$")({ server: { handlers: {
|
|
@@ -435,8 +435,8 @@ var Route$1 = createFileRoute("/api/auth/$")({ server: { handlers: {
|
|
|
435
435
|
POST: handleAuthRequest
|
|
436
436
|
} } });
|
|
437
437
|
var Route = createFileRoute("/api/bundles/$bundleId/download")({ server: { handlers: { GET: async ({ params, request }) => {
|
|
438
|
-
const { prepareConfig } = await import("./config.server-
|
|
439
|
-
const { downloadBundle } = await import("./downloadBundle-
|
|
438
|
+
const { prepareConfig } = await import("./config.server-CBr6PDj5.mjs");
|
|
439
|
+
const { downloadBundle } = await import("./downloadBundle-B3ert-pY.mjs");
|
|
440
440
|
const { databaseClient, storagePlugin } = await prepareConfig(request);
|
|
441
441
|
return downloadBundle(params.bundleId, {
|
|
442
442
|
databaseClient,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { d as lazyRouteComponent, f as createFileRoute } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
2
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/routes-
|
|
2
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/routes-BDabsmc7.js
|
|
3
3
|
var optionalString = (value) => typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
|
|
4
4
|
function validateReleaseSearch(search) {
|
|
5
5
|
const parsedPage = typeof search.page === "number" ? search.page : typeof search.page === "string" ? Number(search.page) : void 0;
|
|
@@ -28,7 +28,7 @@ function updateReleaseFilters(current, filters) {
|
|
|
28
28
|
releaseId: void 0
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
|
-
var $$splitComponentImporter = () => import("./routes-
|
|
31
|
+
var $$splitComponentImporter = () => import("./routes-ivsV2TDu.mjs");
|
|
32
32
|
var Route = createFileRoute("/")({
|
|
33
33
|
component: lazyRouteComponent($$splitComponentImporter, "component"),
|
|
34
34
|
validateSearch: validateReleaseSearch
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as __toESM } from "../_runtime.mjs";
|
|
2
2
|
import { c as createServerFn } from "./createServerFn-B2hcXoPM.mjs";
|
|
3
3
|
import { A as DialogDescription, D as DialogTitle, J as require_react, M as DialogBackdrop, O as DialogPortal, _ as SelectPortal, a as SliderTrack, b as SelectTrigger$1, c as SelectGroup$1, d as SelectItemText, f as SelectItemIndicator, g as SelectPositioner, h as SelectPopup, i as SliderThumb, j as DialogClose, k as DialogPopup, l as SelectScrollUpArrow, m as SelectList, n as SwitchRoot, o as SliderControl, p as SelectItem$1, q as require_jsx_runtime, r as SliderIndicator, s as SliderRoot, t as SwitchThumb, u as SelectScrollDownArrow, v as SelectIcon, w as DialogRoot, x as SelectRoot, y as SelectValue$1 } from "../_libs/@base-ui/react+[...].mjs";
|
|
4
|
-
import {
|
|
5
|
-
import { C as cn, S as buttonVariants, T as useIsMobile, _ as Skeleton, g as SidebarTrigger, n as Input, r as Separator$1, t as Button$1, w as createSsrRpc } from "./createSsrRpc-
|
|
4
|
+
import { D as Download, E as ExternalLink, F as Check, M as ChevronRight, N as ChevronLeft, P as ChevronDown, R as ArrowRight, T as FingerprintPattern, a as Tag, b as LoaderCircle, d as RotateCcw, h as Package, i as Tags, j as ChevronUp, k as CircleOff, n as TriangleAlert, p as Plus, r as Trash2, t as X, w as Funnel, x as List, y as Minus } from "../_libs/lucide-react.mjs";
|
|
5
|
+
import { C as cn, S as buttonVariants, T as useIsMobile, _ as Skeleton, g as SidebarTrigger, n as Input, r as Separator$1, t as Button$1, w as createSsrRpc } from "./createSsrRpc-NHF2PxuK.mjs";
|
|
6
6
|
import { m as Link } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
7
7
|
import { i as useQueryClient, n as useQuery, t as useMutation } from "../_libs/tanstack__react-query.mjs";
|
|
8
|
-
import { a as
|
|
9
|
-
import { _ as DialogTrigger, a as AlertDialogDescription, d as Dialog$1, f as DialogContent, g as DialogTitle$1, h as DialogHeader, i as AlertDialogContent, l as AlertDialogTitle, m as DialogFooter, n as AlertDialogAction, o as AlertDialogFooter, p as DialogDescription$1, r as AlertDialogCancel, s as AlertDialogHeader, t as AlertDialog$1 } from "./dialog-
|
|
10
|
-
import {
|
|
8
|
+
import { a as Card, i as AlertTitle, l as CardHeader, o as CardContent, r as AlertDescription, s as CardDescription, t as Alert, u as CardTitle } from "./card-DrbxCPtG.mjs";
|
|
9
|
+
import { _ as DialogTrigger, a as AlertDialogDescription, d as Dialog$1, f as DialogContent, g as DialogTitle$1, h as DialogHeader, i as AlertDialogContent, l as AlertDialogTitle, m as DialogFooter, n as AlertDialogAction, o as AlertDialogFooter, p as DialogDescription$1, r as AlertDialogCancel, s as AlertDialogHeader, t as AlertDialog$1 } from "./dialog-DUaIgpgd.mjs";
|
|
10
|
+
import { t as Badge } from "./badge-BgsCP9Dp.mjs";
|
|
11
|
+
import { a as FieldLabel, i as FieldGroup, n as FieldDescription, o as Label, r as FieldError, t as Field } from "./field-CqNUlqUq.mjs";
|
|
12
|
+
import { a as TableHeader, i as TableHead, n as TableBody, o as TableRow, r as TableCell, t as Table } from "./table-D1mL8fJu.mjs";
|
|
11
13
|
import { n as toast } from "../_libs/sonner.mjs";
|
|
12
14
|
import { C as normalizeCohortValue, S as isValidCohort, f as getNumericCohortRolloutPosition, g as getPatchFileHash, h as getPatchBaseFileHash, m as getPatchBaseBundleId, r as NUMERIC_COHORT_SIZE, t as INVALID_COHORT_ERROR_MESSAGE, w as normalizeRolloutCohortCount } from "./dist-CyzPaI5v.mjs";
|
|
13
15
|
import { r as extractTimestampFromUUIDv7, t as createUUIDv7 } from "./uuidv7-D0QFkPL_.mjs";
|
|
14
|
-
import { t as
|
|
15
|
-
import { a as
|
|
16
|
-
import { n as
|
|
16
|
+
import { a as Area, i as XAxis, r as YAxis, s as CartesianGrid, t as AreaChart } from "../_libs/recharts+[...].mjs";
|
|
17
|
+
import { a as ChartTooltipContent, i as ChartTooltip, n as ChartLegend, o as getBundleActivityRpc, r as ChartLegendContent, t as ChartContainer } from "./chart-qxa-_30a.mjs";
|
|
18
|
+
import { a as InputGroupInput, n as InputGroup, o as InputGroupText, r as InputGroupAddon, s as Textarea, t as HashValueDisplay } from "./input-group-Bb8ueylQ.mjs";
|
|
19
|
+
import { n as updateReleaseFilters, t as Route } from "./routes-BDabsmc7.mjs";
|
|
17
20
|
import { n as require_dayjs_min, t as require_relativeTime } from "../_libs/dayjs.mjs";
|
|
18
21
|
import { t as normalizeRange } from "../_libs/verkit.mjs";
|
|
19
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/routes-
|
|
22
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/routes-ivsV2TDu.js
|
|
20
23
|
var import_react = /* @__PURE__ */ __toESM(require_react());
|
|
21
24
|
var import_jsx_runtime = require_jsx_runtime();
|
|
22
25
|
var import_dayjs_min = /* @__PURE__ */ __toESM(require_dayjs_min());
|
|
@@ -256,6 +259,186 @@ function BundleChildrenPanel({ panelId, bundle, bundles, loading, onDetailClick
|
|
|
256
259
|
})
|
|
257
260
|
});
|
|
258
261
|
}
|
|
262
|
+
function useBundleActivityQuery(inputs) {
|
|
263
|
+
const sorted = [...inputs].sort((a, b) => a.releaseId.localeCompare(b.releaseId));
|
|
264
|
+
return useQuery({
|
|
265
|
+
queryKey: ["bundle-activity", sorted],
|
|
266
|
+
queryFn: () => getBundleActivityRpc({ data: sorted }),
|
|
267
|
+
enabled: sorted.length > 0,
|
|
268
|
+
staleTime: 3e4
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
var config = {
|
|
272
|
+
active: {
|
|
273
|
+
label: "Active",
|
|
274
|
+
color: "var(--chart-2)"
|
|
275
|
+
},
|
|
276
|
+
recoveredInstallations: {
|
|
277
|
+
label: "Rollback",
|
|
278
|
+
color: "var(--muted-foreground)"
|
|
279
|
+
}
|
|
280
|
+
};
|
|
281
|
+
var formatDate = (ms) => new Intl.DateTimeFormat("en", {
|
|
282
|
+
month: "short",
|
|
283
|
+
day: "numeric",
|
|
284
|
+
timeZone: "UTC"
|
|
285
|
+
}).format(ms);
|
|
286
|
+
function BundleActivityChart({ series }) {
|
|
287
|
+
if (!series) return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", {
|
|
288
|
+
className: "flex h-16 items-center justify-center border-t text-xs text-muted-foreground sm:h-20",
|
|
289
|
+
children: "No reports in 30 days. Check again after the app reports activity."
|
|
290
|
+
});
|
|
291
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
292
|
+
className: "border-t pt-3",
|
|
293
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChartContainer, {
|
|
294
|
+
"aria-label": "Bundle activity over 30 days, UTC",
|
|
295
|
+
className: "h-32 w-full aspect-auto sm:h-40",
|
|
296
|
+
config,
|
|
297
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(AreaChart, {
|
|
298
|
+
accessibilityLayer: true,
|
|
299
|
+
data: series.points,
|
|
300
|
+
margin: {
|
|
301
|
+
left: -16,
|
|
302
|
+
right: 4,
|
|
303
|
+
top: 4
|
|
304
|
+
},
|
|
305
|
+
children: [
|
|
306
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CartesianGrid, { vertical: false }),
|
|
307
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(XAxis, {
|
|
308
|
+
axisLine: false,
|
|
309
|
+
dataKey: "startMs",
|
|
310
|
+
minTickGap: 28,
|
|
311
|
+
tickFormatter: formatDate,
|
|
312
|
+
tickLine: false
|
|
313
|
+
}),
|
|
314
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(YAxis, {
|
|
315
|
+
allowDecimals: false,
|
|
316
|
+
axisLine: false,
|
|
317
|
+
tickLine: false,
|
|
318
|
+
width: 40
|
|
319
|
+
}),
|
|
320
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChartLegend, { content: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChartLegendContent, {}) }),
|
|
321
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChartTooltip, { content: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChartTooltipContent, { labelFormatter: (_, payload) => `${formatDate(payload[0]?.payload.startMs)} · UTC` }) }),
|
|
322
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Area, {
|
|
323
|
+
dataKey: "active",
|
|
324
|
+
fill: "var(--color-active)",
|
|
325
|
+
fillOpacity: .12,
|
|
326
|
+
isAnimationActive: false,
|
|
327
|
+
stroke: "var(--color-active)",
|
|
328
|
+
strokeWidth: 2,
|
|
329
|
+
type: "linear"
|
|
330
|
+
}),
|
|
331
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Area, {
|
|
332
|
+
dataKey: "recoveredInstallations",
|
|
333
|
+
fill: "var(--color-recoveredInstallations)",
|
|
334
|
+
fillOpacity: .04,
|
|
335
|
+
isAnimationActive: false,
|
|
336
|
+
stroke: "var(--color-recoveredInstallations)",
|
|
337
|
+
strokeWidth: 1.5,
|
|
338
|
+
type: "linear"
|
|
339
|
+
})
|
|
340
|
+
]
|
|
341
|
+
})
|
|
342
|
+
})
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
function BundleMovementSummary({ report, loading = false }) {
|
|
346
|
+
if (!report) return loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Skeleton, {
|
|
347
|
+
"aria-label": "Loading bundle activity",
|
|
348
|
+
className: "h-4 w-32"
|
|
349
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
350
|
+
"aria-label": "30-day bundle activity unavailable",
|
|
351
|
+
className: "text-sm text-muted-foreground",
|
|
352
|
+
children: "—"
|
|
353
|
+
});
|
|
354
|
+
const series = report.series[0];
|
|
355
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
356
|
+
role: "group",
|
|
357
|
+
"aria-label": "Bundle activity over 30 days",
|
|
358
|
+
title: report.truncated ? "Partial history. Counts include only the available reports." : "Active: last observed ID per installation. Rollbacks: distinct installations recovered from this ID in 30 days.",
|
|
359
|
+
className: "flex min-w-[140px] items-baseline gap-3 whitespace-nowrap",
|
|
360
|
+
children: [
|
|
361
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
362
|
+
className: "flex items-baseline gap-1.5",
|
|
363
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
364
|
+
className: "text-xs text-muted-foreground",
|
|
365
|
+
children: "Active"
|
|
366
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
367
|
+
className: "text-sm font-medium tabular-nums",
|
|
368
|
+
children: series?.activeInstallations ?? 0
|
|
369
|
+
})]
|
|
370
|
+
}),
|
|
371
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
372
|
+
className: "flex items-baseline gap-1.5",
|
|
373
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
374
|
+
className: "text-xs text-muted-foreground",
|
|
375
|
+
children: "Rollback"
|
|
376
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
377
|
+
className: "text-sm font-medium tabular-nums",
|
|
378
|
+
children: series?.recoveredInstallations ?? 0
|
|
379
|
+
})]
|
|
380
|
+
}),
|
|
381
|
+
report.truncated ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
382
|
+
className: "text-xs text-muted-foreground",
|
|
383
|
+
children: "Partial"
|
|
384
|
+
}) : null
|
|
385
|
+
]
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
function BundleInsightsSummary({ input }) {
|
|
389
|
+
const query = useBundleActivityQuery([input]);
|
|
390
|
+
const report = query.data?.[input.releaseId];
|
|
391
|
+
const series = report?.series[0];
|
|
392
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Card, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CardHeader, {
|
|
393
|
+
className: "px-4 pt-4 pb-3",
|
|
394
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CardTitle, {
|
|
395
|
+
className: "text-sm font-medium",
|
|
396
|
+
children: "Activity · 30 days"
|
|
397
|
+
})
|
|
398
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CardContent, {
|
|
399
|
+
className: "flex flex-col gap-3 px-4 pb-4",
|
|
400
|
+
children: query.isPending ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Skeleton, {
|
|
401
|
+
"aria-label": "Loading bundle activity",
|
|
402
|
+
className: "h-32 w-full"
|
|
403
|
+
}) : query.error ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
404
|
+
className: "flex items-center justify-between gap-3 text-sm text-muted-foreground",
|
|
405
|
+
children: ["Insights unavailable", /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button$1, {
|
|
406
|
+
variant: "outline",
|
|
407
|
+
size: "sm",
|
|
408
|
+
onClick: () => void query.refetch(),
|
|
409
|
+
children: "Retry"
|
|
410
|
+
})]
|
|
411
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
412
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("dl", {
|
|
413
|
+
className: "grid grid-cols-2 divide-x divide-border/70",
|
|
414
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
415
|
+
className: "pr-4",
|
|
416
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("dt", {
|
|
417
|
+
className: "text-xs text-muted-foreground",
|
|
418
|
+
children: "Active"
|
|
419
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dd", {
|
|
420
|
+
className: "mt-1 text-xl font-semibold tabular-nums",
|
|
421
|
+
children: series?.activeInstallations ?? 0
|
|
422
|
+
})]
|
|
423
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
424
|
+
className: "pl-4",
|
|
425
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("dt", {
|
|
426
|
+
className: "text-xs text-muted-foreground",
|
|
427
|
+
children: "Rollback · 30d"
|
|
428
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dd", {
|
|
429
|
+
className: "mt-1 text-xl font-semibold tabular-nums",
|
|
430
|
+
children: series?.recoveredInstallations ?? 0
|
|
431
|
+
})]
|
|
432
|
+
})]
|
|
433
|
+
}),
|
|
434
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(BundleActivityChart, { series }),
|
|
435
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("p", {
|
|
436
|
+
className: "text-xs text-muted-foreground",
|
|
437
|
+
children: ["Last observed active installations · daily rollbacks", report?.truncated ? " · Partial history" : ""]
|
|
438
|
+
})
|
|
439
|
+
] })
|
|
440
|
+
})] });
|
|
441
|
+
}
|
|
259
442
|
var getReleases = createServerFn({ method: "GET" }).inputValidator((input) => input).handler(createSsrRpc("206547cb1526f961070a989818ca7b9e34f6b2b0e4ab851698c3807fe9fb5e0c"));
|
|
260
443
|
var getRelease = createServerFn({ method: "GET" }).inputValidator((input) => input).handler(createSsrRpc("a6f23116eeaf76166d405e28a95213123025613c6603030894e519015bf48032"));
|
|
261
444
|
var updateRelease = createServerFn({ method: "POST" }).inputValidator((input) => input).handler(createSsrRpc("7ea0186f19f9f2bc2ca4b26e3c59636891cf046957f84287b6783f8d88bd8cb7"));
|
|
@@ -1258,6 +1441,11 @@ function ReleaseEditorSheet({ channels, onOpenChange, open, releaseId }) {
|
|
|
1258
1441
|
}) : null, release && draft ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
1259
1442
|
className: "flex flex-col gap-6 px-4 pb-4 sm:px-6 sm:pb-6",
|
|
1260
1443
|
children: [
|
|
1444
|
+
channelName ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BundleInsightsSummary, { input: {
|
|
1445
|
+
platform: release.platform,
|
|
1446
|
+
channel: channelName,
|
|
1447
|
+
releaseId: release.id
|
|
1448
|
+
} }) : null,
|
|
1261
1449
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("section", {
|
|
1262
1450
|
"aria-labelledby": "delivery-settings-heading",
|
|
1263
1451
|
className: "flex flex-col gap-4",
|
|
@@ -1895,6 +2083,14 @@ function BundlesPage() {
|
|
|
1895
2083
|
const releases = releasesQuery.data?.data ?? [];
|
|
1896
2084
|
const patchCountsByBundleId = useBundleChildCountsQuery(Array.from(new Set(releases.flatMap((release) => release.bundle_id ? [release.bundle_id] : [])))).data ?? {};
|
|
1897
2085
|
const pagination = releasesQuery.data?.pagination;
|
|
2086
|
+
const activityQuery = useBundleActivityQuery(releases.flatMap((release) => {
|
|
2087
|
+
const channel = channels.find((item) => item.id === release.channel_id)?.name;
|
|
2088
|
+
return channel ? [{
|
|
2089
|
+
releaseId: release.id,
|
|
2090
|
+
platform: release.platform,
|
|
2091
|
+
channel
|
|
2092
|
+
}] : [];
|
|
2093
|
+
}));
|
|
1898
2094
|
const channelNames = new Map(channels.map((channel) => [channel.id, channel.name]));
|
|
1899
2095
|
(0, import_react.useEffect)(() => {
|
|
1900
2096
|
if (expandedReleaseId && !releases.some((release) => release.id === expandedReleaseId)) setExpandedReleaseId(void 0);
|
|
@@ -2030,6 +2226,16 @@ function BundlesPage() {
|
|
|
2030
2226
|
children: patchCount === void 0 ? "Checking" : patchCount > 0 ? `${patchCount} ${patchCount === 1 ? "patch" : "patches"}` : "—"
|
|
2031
2227
|
})]
|
|
2032
2228
|
}),
|
|
2229
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
2230
|
+
className: "col-span-2 rounded-md bg-muted/40 p-3",
|
|
2231
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("dt", {
|
|
2232
|
+
className: "mb-2 text-muted-foreground",
|
|
2233
|
+
children: "Activity · 30d"
|
|
2234
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dd", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BundleMovementSummary, {
|
|
2235
|
+
report: activityQuery.data?.[release.id],
|
|
2236
|
+
loading: activityQuery.isFetching
|
|
2237
|
+
}) })]
|
|
2238
|
+
}),
|
|
2033
2239
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
2034
2240
|
className: "col-span-2 flex flex-wrap items-center gap-2 rounded-md bg-muted/40 p-3",
|
|
2035
2241
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(ReleaseStateBadge, { release }), release.should_force_update ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Badge, {
|
|
@@ -2085,12 +2291,13 @@ function BundlesPage() {
|
|
|
2085
2291
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableHead, { children: "Enabled" }),
|
|
2086
2292
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableHead, { children: "Force update" }),
|
|
2087
2293
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableHead, { children: "Rollout" }),
|
|
2294
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableHead, { children: "Activity · 30d" }),
|
|
2088
2295
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableHead, { children: "Message" }),
|
|
2089
2296
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableHead, { children: "Created" })
|
|
2090
2297
|
]
|
|
2091
2298
|
})
|
|
2092
2299
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(TableBody, { children: [releasesQuery.isPending ? Array.from({ length: 7 }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableCell, {
|
|
2093
|
-
colSpan:
|
|
2300
|
+
colSpan: 11,
|
|
2094
2301
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Skeleton, { className: "h-8 w-full" })
|
|
2095
2302
|
}) }, index)) : releases.map((release) => {
|
|
2096
2303
|
const isExpanded = expandedReleaseId === release.id;
|
|
@@ -2184,6 +2391,10 @@ function BundlesPage() {
|
|
|
2184
2391
|
})]
|
|
2185
2392
|
}) }),
|
|
2186
2393
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableCell, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RolloutPercentageBadge, { percentage: release.rollout_cohort_count / 10 }) }),
|
|
2394
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableCell, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BundleMovementSummary, {
|
|
2395
|
+
report: activityQuery.data?.[release.id],
|
|
2396
|
+
loading: activityQuery.isFetching
|
|
2397
|
+
}) }),
|
|
2187
2398
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableCell, {
|
|
2188
2399
|
className: "text-sm text-muted-foreground",
|
|
2189
2400
|
title: release.message ?? void 0,
|
|
@@ -2199,7 +2410,7 @@ function BundlesPage() {
|
|
|
2199
2410
|
className: "hover:bg-transparent",
|
|
2200
2411
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableCell, {
|
|
2201
2412
|
className: "border-t-0 p-0",
|
|
2202
|
-
colSpan:
|
|
2413
|
+
colSpan: 11,
|
|
2203
2414
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ReleaseBundleChildrenPanel, {
|
|
2204
2415
|
onDetailClick: openChildBundle,
|
|
2205
2416
|
panelId,
|
|
@@ -2209,7 +2420,7 @@ function BundlesPage() {
|
|
|
2209
2420
|
}) : null] }, release.id);
|
|
2210
2421
|
}), !releasesQuery.isPending && releases.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TableCell, {
|
|
2211
2422
|
className: "h-40 text-center text-muted-foreground",
|
|
2212
|
-
colSpan:
|
|
2423
|
+
colSpan: 11,
|
|
2213
2424
|
children: search.bundleId || search.channelId || search.enabled !== void 0 || search.platform || search.targetAppVersion ? "No bundles match these filters." : "No bundles yet. Deploy an update to see it here."
|
|
2214
2425
|
}) }) : null] })]
|
|
2215
2426
|
})
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { x as isUUIDv7 } from "./dist-CyzPaI5v.mjs";
|
|
2
2
|
import { t as createUUIDv7 } from "./uuidv7-D0QFkPL_.mjs";
|
|
3
3
|
import { i as toInsightsInstallationRow, n as isInsightsMovementEvent, t as compareInsightsText } from "./insightsContract-fjJDBeEE.mjs";
|
|
4
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/runtime.server-
|
|
4
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/runtime.server-jmZOKIQM.js
|
|
5
5
|
var InsightsBadRequestError = class extends Error {
|
|
6
6
|
name = "InsightsBadRequestError";
|
|
7
7
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../_runtime.mjs";
|
|
2
2
|
import { a as X_TSS_RAW_RESPONSE, d as getStartOptions, f as isRedirect, g as safeObjectMerge, h as runWithStartContext, i as TSS_SERVER_FUNCTION, l as flattenMiddlewares, m as mergeHeaders, n as TSS_CONTENT_TYPE_FRAMED_VERSIONED, o as X_TSS_SERIALIZED, p as isResolvedRedirect, r as TSS_FORMDATA_CONTEXT, s as createNullProtoObject, t as FrameType, u as getStartContext } from "./createServerFn-B2hcXoPM.mjs";
|
|
3
|
-
import { t as getServerFnById } from "../__23tanstack-start-server-fn-resolver-
|
|
3
|
+
import { t as getServerFnById } from "../__23tanstack-start-server-fn-resolver-Dr2ixDgQ.mjs";
|
|
4
4
|
import { J as require_react, q as require_jsx_runtime } from "../_libs/@base-ui/react+[...].mjs";
|
|
5
5
|
import { c as RouterProvider, n as defineHandlerCallback, r as renderRouterToString, t as renderRouterToStream } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
6
6
|
import { PassThrough, Readable } from "node:stream";
|
|
@@ -4901,7 +4901,7 @@ var defaultSerovalPlugins = [
|
|
|
4901
4901
|
* the dev styles URL for route-scoped CSS collection.
|
|
4902
4902
|
*/
|
|
4903
4903
|
async function getStartManifest(matchedRoutes) {
|
|
4904
|
-
const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-
|
|
4904
|
+
const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-Cwpu0C9Q.mjs");
|
|
4905
4905
|
const startManifest = tsrStartManifest();
|
|
4906
4906
|
let routes = startManifest.routes;
|
|
4907
4907
|
routes[rootRouteId];
|
|
@@ -7041,7 +7041,7 @@ var getBaseManifest = getProdBaseManifest;
|
|
|
7041
7041
|
var createEarlyHintsForRequest = createEarlyHintsCollector;
|
|
7042
7042
|
async function loadEntries() {
|
|
7043
7043
|
const [routerEntry, startEntry, pluginAdapters] = await Promise.all([
|
|
7044
|
-
import("./router-
|
|
7044
|
+
import("./router-iP95Vqi2.mjs"),
|
|
7045
7045
|
import("./start-DpViQGnt.mjs"),
|
|
7046
7046
|
import("./empty-plugin-adapters-B5QvGpEl.mjs")
|
|
7047
7047
|
]);
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { c as createServerFn } from "./createServerFn-B2hcXoPM.mjs";
|
|
2
2
|
import { q as require_jsx_runtime } from "../_libs/@base-ui/react+[...].mjs";
|
|
3
|
-
import {
|
|
4
|
-
import { _ as Skeleton, g as SidebarTrigger, t as Button$1, w as createSsrRpc } from "./createSsrRpc-
|
|
3
|
+
import { A as CircleCheck, C as Info, c as ShieldCheck, f as RefreshCw, n as TriangleAlert } from "../_libs/lucide-react.mjs";
|
|
4
|
+
import { _ as Skeleton, g as SidebarTrigger, t as Button$1, w as createSsrRpc } from "./createSsrRpc-NHF2PxuK.mjs";
|
|
5
5
|
import { n as useQuery } from "../_libs/tanstack__react-query.mjs";
|
|
6
|
-
import { a as
|
|
7
|
-
|
|
6
|
+
import { a as Card, i as AlertTitle, l as CardHeader, n as AlertAction, o as CardContent, r as AlertDescription, s as CardDescription, t as Alert, u as CardTitle } from "./card-DrbxCPtG.mjs";
|
|
7
|
+
import { t as Badge } from "./badge-BgsCP9Dp.mjs";
|
|
8
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/signing-CxCbnFCt.js
|
|
8
9
|
var import_jsx_runtime = require_jsx_runtime();
|
|
9
10
|
var getBundleSigningInspectionRpc = createServerFn({ method: "GET" }).handler(createSsrRpc("662034966679a6d29db2b55e7ba665e26e6c9a58a5529f33aa857a2049616233"));
|
|
10
11
|
var bundleSigningQueryKey = ["bundle-signing"];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as defaultStreamHandler, n as createStartHandler } from "./server-
|
|
1
|
+
import { i as defaultStreamHandler, n as createStartHandler } from "./server-p7yrVBfD.mjs";
|
|
2
2
|
//#region node_modules/.nitro/vite/services/ssr/index.js
|
|
3
3
|
var fetch = createStartHandler(defaultStreamHandler);
|
|
4
4
|
function createServerEntry(entry) {
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import "../_runtime.mjs";
|
|
2
|
+
import { J as require_react, q as require_jsx_runtime } from "../_libs/@base-ui/react+[...].mjs";
|
|
3
|
+
import { C as cn } from "./createSsrRpc-NHF2PxuK.mjs";
|
|
4
|
+
require_react();
|
|
5
|
+
var import_jsx_runtime = require_jsx_runtime();
|
|
6
|
+
function Table({ className, ...props }) {
|
|
7
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
8
|
+
"data-slot": "table-container",
|
|
9
|
+
className: "relative w-full overflow-x-auto",
|
|
10
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("table", {
|
|
11
|
+
"data-slot": "table",
|
|
12
|
+
className: cn("w-full caption-bottom text-xs", className),
|
|
13
|
+
...props
|
|
14
|
+
})
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function TableHeader({ className, ...props }) {
|
|
18
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("thead", {
|
|
19
|
+
"data-slot": "table-header",
|
|
20
|
+
className: cn("[&_tr]:border-b", className),
|
|
21
|
+
...props
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function TableBody({ className, ...props }) {
|
|
25
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("tbody", {
|
|
26
|
+
"data-slot": "table-body",
|
|
27
|
+
className: cn("[&_tr:last-child]:border-0", className),
|
|
28
|
+
...props
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function TableRow({ className, ...props }) {
|
|
32
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("tr", {
|
|
33
|
+
"data-slot": "table-row",
|
|
34
|
+
className: cn("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors", className),
|
|
35
|
+
...props
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function TableHead({ className, ...props }) {
|
|
39
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("th", {
|
|
40
|
+
"data-slot": "table-head",
|
|
41
|
+
className: cn("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0", className),
|
|
42
|
+
...props
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
function TableCell({ className, ...props }) {
|
|
46
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("td", {
|
|
47
|
+
"data-slot": "table-cell",
|
|
48
|
+
className: cn("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0", className),
|
|
49
|
+
...props
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//#endregion
|
|
53
|
+
export { TableHeader as a, TableHead as i, TableBody as n, TableRow as o, TableCell as r, Table as t };
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/_tanstack-start-manifest_v-Cwpu0C9Q.js
|
|
2
|
+
var tsrStartManifest = () => ({ routes: {
|
|
3
|
+
__root__: {
|
|
4
|
+
filePath: "/home/runner/work/hot-updater/hot-updater/packages/console/src/routes/__root.tsx",
|
|
5
|
+
children: [
|
|
6
|
+
"/",
|
|
7
|
+
"/api-keys",
|
|
8
|
+
"/insights",
|
|
9
|
+
"/installations",
|
|
10
|
+
"/signing",
|
|
11
|
+
"/api/auth/$",
|
|
12
|
+
"/api/bundles/$bundleId/download"
|
|
13
|
+
],
|
|
14
|
+
preloads: [
|
|
15
|
+
"/assets/index-BNkxg4jz.js",
|
|
16
|
+
"/assets/createServerFn-DHc2erub.js",
|
|
17
|
+
"/assets/preload-helper-uTix4PVD.js",
|
|
18
|
+
"/assets/installations-DvjbUqd1.js",
|
|
19
|
+
"/assets/loader-circle-Bbp8LGVC.js",
|
|
20
|
+
"/assets/link-BG06whwB.js",
|
|
21
|
+
"/assets/lazyRouteComponent-BN0MS05o.js",
|
|
22
|
+
"/assets/chart-no-axes-combined-C0G0fQ3J.js",
|
|
23
|
+
"/assets/shield-check-DoIiaaXU.js",
|
|
24
|
+
"/assets/api-keys-api-LchP65vQ.js",
|
|
25
|
+
"/assets/routes-DaPMY31P.js",
|
|
26
|
+
"/assets/dist-Bh1gaDfB.js"
|
|
27
|
+
],
|
|
28
|
+
scripts: [{ attrs: {
|
|
29
|
+
type: "module",
|
|
30
|
+
async: !0,
|
|
31
|
+
src: "/assets/index-BNkxg4jz.js"
|
|
32
|
+
} }]
|
|
33
|
+
},
|
|
34
|
+
"/": {
|
|
35
|
+
filePath: "/home/runner/work/hot-updater/hot-updater/packages/console/src/routes/index.tsx",
|
|
36
|
+
children: void 0,
|
|
37
|
+
preloads: [
|
|
38
|
+
"/assets/routes-BFE-oRIT.js",
|
|
39
|
+
"/assets/dialog-dyZ1SphZ.js",
|
|
40
|
+
"/assets/composite-CHTH1Xhh.js",
|
|
41
|
+
"/assets/useCompositeListItem-BkPDaqyj.js",
|
|
42
|
+
"/assets/table-BBEzJ7Xl.js",
|
|
43
|
+
"/assets/input-group-BbHfaBzQ.js",
|
|
44
|
+
"/assets/card-BEvx_QKh.js",
|
|
45
|
+
"/assets/badge-BuMDU0Rf.js",
|
|
46
|
+
"/assets/field-79SVH26s.js"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
"/api-keys": {
|
|
50
|
+
filePath: "/home/runner/work/hot-updater/hot-updater/packages/console/src/routes/api-keys.tsx",
|
|
51
|
+
children: void 0,
|
|
52
|
+
preloads: [
|
|
53
|
+
"/assets/api-keys-C1sgC6ko.js",
|
|
54
|
+
"/assets/dialog-dyZ1SphZ.js",
|
|
55
|
+
"/assets/table-BBEzJ7Xl.js",
|
|
56
|
+
"/assets/refresh-cw-DZgiAOMk.js",
|
|
57
|
+
"/assets/card-BEvx_QKh.js",
|
|
58
|
+
"/assets/badge-BuMDU0Rf.js",
|
|
59
|
+
"/assets/field-79SVH26s.js"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
"/insights": {
|
|
63
|
+
filePath: "/home/runner/work/hot-updater/hot-updater/packages/console/src/routes/insights.tsx",
|
|
64
|
+
children: void 0,
|
|
65
|
+
preloads: [
|
|
66
|
+
"/assets/insights-D_7uSKfc.js",
|
|
67
|
+
"/assets/composite-CHTH1Xhh.js",
|
|
68
|
+
"/assets/useCompositeListItem-BkPDaqyj.js",
|
|
69
|
+
"/assets/InsightsPageHeader-C-Xc2MB9.js",
|
|
70
|
+
"/assets/card-BEvx_QKh.js",
|
|
71
|
+
"/assets/field-79SVH26s.js"
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
"/installations": {
|
|
75
|
+
filePath: "/home/runner/work/hot-updater/hot-updater/packages/console/src/routes/installations.tsx",
|
|
76
|
+
children: void 0,
|
|
77
|
+
preloads: [
|
|
78
|
+
"/assets/installations-BzoHWuXw.js",
|
|
79
|
+
"/assets/InsightsPageHeader-C-Xc2MB9.js",
|
|
80
|
+
"/assets/table-BBEzJ7Xl.js",
|
|
81
|
+
"/assets/input-group-BbHfaBzQ.js",
|
|
82
|
+
"/assets/refresh-cw-DZgiAOMk.js",
|
|
83
|
+
"/assets/card-BEvx_QKh.js",
|
|
84
|
+
"/assets/badge-BuMDU0Rf.js",
|
|
85
|
+
"/assets/field-79SVH26s.js"
|
|
86
|
+
]
|
|
87
|
+
},
|
|
88
|
+
"/signing": {
|
|
89
|
+
filePath: "/home/runner/work/hot-updater/hot-updater/packages/console/src/routes/signing.tsx",
|
|
90
|
+
children: void 0,
|
|
91
|
+
preloads: [
|
|
92
|
+
"/assets/signing-BTRhaF5D.js",
|
|
93
|
+
"/assets/refresh-cw-DZgiAOMk.js",
|
|
94
|
+
"/assets/card-BEvx_QKh.js",
|
|
95
|
+
"/assets/badge-BuMDU0Rf.js"
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
} });
|
|
99
|
+
//#endregion
|
|
100
|
+
export { tsrStartManifest };
|