@hot-updater/console 1.0.0-rc.0 → 1.0.0-rc.2
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/HashValueDisplay-CB0Eskit.js +1 -0
- package/.output/public/assets/InsightsPageHeader-Car5LNiZ.js +1 -0
- package/.output/public/assets/api-keys-BzKocqRy.js +1 -0
- package/.output/public/assets/api-keys-api-BHcODB7q.js +1 -0
- package/.output/public/assets/card-Dhr_eFYj.js +1 -0
- package/.output/public/assets/{chart-no-axes-combined-FaYMGmQS.js → chart-no-axes-combined-Dy4WJv2U.js} +1 -1
- package/.output/public/assets/composite-Bp98A0Ld.js +1 -0
- package/.output/public/assets/createServerFn-CA8fs7QD.js +3 -0
- package/.output/public/assets/dialog-CUTrcPlB.js +1 -0
- package/.output/public/assets/{dist-DspNKfMj.js → dist-C_NydL0e.js} +1 -1
- package/.output/public/assets/index-DdAz-CXv.js +10 -0
- package/.output/public/assets/input-group-cSOG4wh_.js +1 -0
- package/.output/public/assets/insights-C0PBSZ-n.js +1 -0
- package/.output/public/assets/installations-CE33wgbY.js +2 -0
- package/.output/public/assets/installations-CStZja8x.js +1 -0
- package/.output/public/assets/lazyRouteComponent-Ccp3bwBY.js +1 -0
- package/.output/public/assets/link-CI8idAUi.js +1 -0
- package/.output/public/assets/loader-circle-BoxLrsOu.js +1 -0
- package/.output/public/assets/refresh-cw-Bqc72UZG.js +1 -0
- package/.output/public/assets/{routes-DcQnVajO.js → routes-DGVXdzpw.js} +2 -2
- package/.output/public/assets/routes-DTlwOr8I.js +1 -0
- package/.output/public/assets/{shield-check-DE_hVuHu.js → shield-check-uK3MHWJZ.js} +1 -1
- package/.output/public/assets/signing-CMf4aqDO.js +1 -0
- package/.output/public/assets/styles-BCvbtKsm.css +2 -0
- package/.output/public/assets/table-2vcV89QB.js +1 -0
- package/.output/public/assets/useCompositeListItem-CHLITE_4.js +1 -0
- package/.output/public/assets/x-DCd0j8c6.js +1 -0
- package/.output/server/{__23tanstack-start-server-fn-resolver-DBP9TQ7K.mjs → __23tanstack-start-server-fn-resolver-B7ioJhtE.mjs} +44 -52
- package/.output/server/_libs/@base-ui/react+[...].mjs +1906 -4040
- package/.output/server/_libs/@tanstack/react-router+[...].mjs +52 -4
- package/.output/server/_libs/@tanstack/react-router-ssr-query+[...].mjs +2 -2
- package/.output/server/_libs/lucide-react.mjs +36 -3
- package/.output/server/_libs/next-themes.mjs +2 -2
- package/.output/server/_libs/sonner.mjs +2 -2
- package/.output/server/_libs/tanstack__react-query.mjs +2 -2
- package/.output/server/_libs/verkit.mjs +20 -15
- package/.output/server/_runtime.mjs +1 -10
- package/.output/server/_ssr/HashValueDisplay-DwpGLfrl.mjs +55 -0
- package/.output/server/_ssr/InsightsPageHeader-Df4Brj8u.mjs +484 -0
- package/.output/server/_ssr/{api-keys-BnM_o2nS.mjs → api-keys-CZeTPQys.mjs} +11 -13
- package/.output/server/_ssr/{api-keys-api-CIywsSF5.mjs → api-keys-api-BUPQVSpk.mjs} +2 -2
- package/.output/server/_ssr/{api-keys-rpc-BSp1wkIV.mjs → api-keys-rpc-Cs7tS5_j.mjs} +5 -5
- package/.output/server/_ssr/{api-rpc-cG5wd_tO.mjs → api-rpc-tAupfGQm.mjs} +73 -142
- package/.output/server/_ssr/{auth-rpc-BrJ6obHJ.mjs → auth-rpc-DUaeOWKK.mjs} +4 -4
- package/.output/server/_ssr/{auth.server-DwKoZoQM.mjs → auth.server-DW71WzsD.mjs} +2 -5
- package/.output/server/_ssr/{bundle-signing-rpc-COoQhW8E.mjs → bundle-signing-rpc-BhnBw0-d.mjs} +2 -2
- package/.output/server/_ssr/bundle-signing.server-C4NW5mWx.mjs +12 -0
- package/.output/server/_ssr/{alert-Dim3MGY5.mjs → card-BRiPmi0C.mjs} +61 -39
- package/.output/server/_ssr/{config.server-DEiLhKmy.mjs → config.server-afDuAwaG.mjs} +15 -8
- package/.output/server/_ssr/{createSsrRpc-9P0S0lJ3.mjs → createSsrRpc-DjWNJ0uc.mjs} +6 -6
- package/.output/server/_ssr/databaseJsonValue-d6I3nAS4.mjs +45 -0
- package/.output/server/_ssr/{databaseRows-CwbNwYSl.mjs → databaseRows-5bCRTxm-.mjs} +4 -44
- package/.output/server/_ssr/{deleteBundle-Cu_XOMt0.mjs → deleteBundle-BTGwBgzx.mjs} +2 -2
- package/.output/server/_ssr/{dialog-CQuRMNZ4.mjs → dialog-DS-nw-pA.mjs} +2 -2
- package/.output/server/_ssr/{dist-BVSLTpoP.mjs → dist-CyzPaI5v.mjs} +2 -2
- package/.output/server/_ssr/{getBundleChildren-BcRMFoDF.mjs → getBundleChildren-C0vh4ZvE.mjs} +2 -2
- package/.output/server/_ssr/input-group-BpsnmvZw.mjs +70 -0
- package/.output/server/_ssr/insights-BdS364Xu.mjs +460 -0
- package/.output/server/_ssr/insights-rpc-38DujK0G.mjs +57 -0
- package/.output/server/_ssr/insightsContract-fjJDBeEE.mjs +303 -0
- package/.output/server/_ssr/installations-CtA59MQG.mjs +29 -0
- package/.output/server/_ssr/installations-DiVKEF5T.mjs +627 -0
- package/.output/server/_ssr/{router-C-KUBfOi.mjs → router-B9wG_9f8.mjs} +37 -46
- package/.output/server/_ssr/{routes-Z7TwC6nC.mjs → routes-CKrrS2q2.mjs} +3 -3
- package/.output/server/_ssr/{routes-BM4ht9jb.mjs → routes-D7Yh_jfj.mjs} +402 -390
- package/.output/server/_ssr/runtime.server-DacU1TBV.mjs +438 -0
- package/.output/server/_ssr/{server-BjzmvXnO.mjs → server-D_C2rMzf.mjs} +5 -5
- package/.output/server/_ssr/{signing-k8GxyBDF.mjs → signing-Dz1WkZOf.mjs} +16 -85
- package/.output/server/_ssr/ssr.mjs +1 -1
- package/.output/server/_ssr/{field-DRIXKjZG.mjs → table-CnZmon_Z.mjs} +51 -5
- package/.output/server/_ssr/{uuidv7-BbJ-9D_I.mjs → uuidv7-D0QFkPL_.mjs} +3 -3
- package/.output/server/_tanstack-start-manifest_v-2MjTyxil.mjs +97 -0
- package/.output/server/index.mjs +168 -203
- package/lib/index.d.mts +4 -4
- package/lib/vite-internal.mjs +1 -1
- package/lib/vite.d.mts +0 -1
- package/package.json +8 -8
- package/src/components/AppSidebar.tsx +12 -16
- package/src/components/ConsoleAccessPage.tsx +1 -1
- package/src/components/HashValueDisplay.tsx +11 -2
- package/src/components/features/api-keys/ApiKeysPage.tsx +1 -1
- package/src/components/features/bundles/BundleChildrenPanel.tsx +7 -6
- package/src/components/features/bundles/BundleMetadata.tsx +1 -20
- package/src/components/features/channels/ChannelManagementDialog.tsx +1 -1
- package/src/components/features/insights/EventDetails.tsx +151 -0
- package/src/components/features/insights/EventHistoryCard.tsx +245 -0
- package/src/components/features/insights/EventHistoryList.tsx +63 -0
- package/src/components/features/insights/InsightsBundleReports.tsx +51 -0
- package/src/components/features/insights/InsightsControls.tsx +121 -0
- package/src/components/features/{analytics/AnalyticsErrorAlert.tsx → insights/InsightsErrorAlert.tsx} +6 -6
- package/src/components/features/insights/InsightsOverview.tsx +203 -0
- package/src/components/features/insights/InsightsPageHeader.tsx +48 -0
- package/src/components/features/insights/InsightsPagination.tsx +52 -0
- package/src/components/features/insights/InstallationHistoryCard.tsx +250 -0
- package/src/components/features/insights/InstallationMatchesCard.tsx +178 -0
- package/src/components/features/insights/InstallationPageHeader.tsx +90 -0
- package/src/components/features/releases/ReleaseEditorSheet.tsx +24 -24
- package/src/components/features/signing/BundleSigningPage.tsx +18 -126
- package/src/components/ui/badge.tsx +2 -0
- package/src/components/ui/combobox.tsx +1 -0
- package/src/components/ui/skeleton.tsx +4 -1
- package/src/components/ui/tooltip.tsx +1 -1
- package/src/index.ts +7 -3
- package/src/lib/api-rpc.ts +19 -90
- package/src/lib/api.ts +0 -99
- package/src/lib/insights-api.ts +100 -0
- package/src/lib/insights-rpc.ts +88 -0
- package/src/lib/insights-view.ts +15 -0
- package/src/lib/public-bundle-error.ts +19 -0
- package/src/lib/server/bundle-signing.server.ts +5 -82
- package/src/lib/server/console-runtime.server.ts +0 -9
- package/src/lib/server/releaseReachability.ts +1 -4
- package/src/lib/server/runtime.server.ts +6 -142
- package/src/routeTree.gen.ts +21 -21
- package/src/router.tsx +3 -0
- package/src/routes/-installations-search.ts +25 -12
- package/src/routes/__root.tsx +6 -16
- package/src/routes/api-keys.tsx +1 -1
- package/src/routes/index.tsx +21 -81
- package/src/routes/insights.tsx +84 -0
- package/src/routes/installations.tsx +294 -142
- package/src/styles.css +6 -0
- package/.output/public/assets/AnalyticsCapabilityContext-BCke57-7.js +0 -1
- package/.output/public/assets/BundleActivityChart-CnsBe_1J.js +0 -42
- package/.output/public/assets/BundleIdDisplay-Dky75zLU.js +0 -1
- package/.output/public/assets/alert-C-1KvDW8.js +0 -1
- package/.output/public/assets/analytics-Bqz0c-BT.js +0 -1
- package/.output/public/assets/analytics-api-CJdrTLLO.js +0 -1
- package/.output/public/assets/api-B_Rh-uzC.js +0 -1
- package/.output/public/assets/api-keys-BurCFhzH.js +0 -1
- package/.output/public/assets/api-keys-api-BEDJdQg3.js +0 -1
- package/.output/public/assets/badge-Bf0fZ-Gx.js +0 -1
- package/.output/public/assets/createServerFn-gM2-LFBy.js +0 -3
- package/.output/public/assets/dialog-BS60BRr2.js +0 -1
- package/.output/public/assets/download-O-yNBc9H.js +0 -1
- package/.output/public/assets/field-Buq148-A.js +0 -1
- package/.output/public/assets/index-kFhd2S78.js +0 -10
- package/.output/public/assets/installations-BrQ-od41.js +0 -2
- package/.output/public/assets/installations-CGlZ3ROz.js +0 -1
- package/.output/public/assets/lazyRouteComponent-rPzgA7S-.js +0 -1
- package/.output/public/assets/loader-circle-DCYF-wJl.js +0 -1
- package/.output/public/assets/refresh-cw-n8XYbPPj.js +0 -1
- package/.output/public/assets/routes-CrdokJ80.js +0 -1
- package/.output/public/assets/search-DLhbWw3W.js +0 -1
- package/.output/public/assets/signing-HRexfjsH.js +0 -1
- package/.output/public/assets/styles-eB4EtvFS.css +0 -2
- package/.output/public/assets/table-D8CLieHX.js +0 -1
- package/.output/public/assets/textarea-YJLTVAoq.js +0 -1
- package/.output/public/assets/useMutation-JsGVjQMY.js +0 -1
- package/.output/public/assets/useOpenInteractionType-4cRD5xO0.js +0 -1
- package/.output/server/_libs/@reduxjs/toolkit+[...].mjs +0 -1554
- package/.output/server/_libs/d3-array.mjs +0 -231
- package/.output/server/_libs/d3-color.mjs +0 -330
- package/.output/server/_libs/d3-format.mjs +0 -252
- package/.output/server/_libs/d3-interpolate.mjs +0 -207
- package/.output/server/_libs/d3-path.mjs +0 -77
- package/.output/server/_libs/d3-scale+[...].mjs +0 -1907
- package/.output/server/_libs/d3-shape.mjs +0 -818
- package/.output/server/_libs/decimal.js-light.mjs +0 -884
- package/.output/server/_libs/es-toolkit.mjs +0 -1134
- package/.output/server/_libs/eventemitter3.mjs +0 -236
- package/.output/server/_libs/immer.mjs +0 -532
- package/.output/server/_libs/react-redux+[...].mjs +0 -205
- package/.output/server/_libs/recharts+[...].mjs +0 -14117
- package/.output/server/_ssr/AnalyticsCapabilityContext-ui4DX8GO.mjs +0 -15
- package/.output/server/_ssr/BundleActivityChart-BiB9ZORH.mjs +0 -288
- package/.output/server/_ssr/BundleIdDisplay-Czk6iR6p.mjs +0 -13
- package/.output/server/_ssr/analytics-DtMTn8fn.mjs +0 -858
- package/.output/server/_ssr/analytics-api-Cg1M5v_H.mjs +0 -71
- package/.output/server/_ssr/analytics-input-fRRRn0uA.mjs +0 -96
- package/.output/server/_ssr/analytics-rpc-DY5uXvHT.mjs +0 -155
- package/.output/server/_ssr/api-BTSv1tZb.mjs +0 -282
- package/.output/server/_ssr/badge-DCxbEeof.mjs +0 -26
- package/.output/server/_ssr/bundle-signing.server-D5u8KkMp.mjs +0 -51
- package/.output/server/_ssr/installations-B-azgAvX.mjs +0 -19
- package/.output/server/_ssr/installations-Ctvzp2JH.mjs +0 -535
- package/.output/server/_ssr/runtime.server-awTLiiXW.mjs +0 -527
- package/.output/server/_ssr/table-v1yCvYo7.mjs +0 -53
- package/.output/server/_ssr/textarea-DYHnskhb.mjs +0 -14
- package/.output/server/_tanstack-start-manifest_v-CH4StzJu.mjs +0 -108
- package/src/components/features/analytics/ActivityChart.tsx +0 -150
- package/src/components/features/analytics/AnalyticsCapabilityContext.tsx +0 -24
- package/src/components/features/analytics/AnalyticsControls.tsx +0 -115
- package/src/components/features/analytics/AnalyticsOverview.tsx +0 -208
- package/src/components/features/analytics/BundleDistribution.tsx +0 -133
- package/src/components/features/analytics/BundleSelector.tsx +0 -114
- package/src/components/features/analytics/InstallationHistoryCard.tsx +0 -248
- package/src/components/features/analytics/InstallationMatchesCard.tsx +0 -132
- package/src/components/features/analytics/InstallationPageHeader.tsx +0 -138
- package/src/components/features/analytics/InstallationPagination.tsx +0 -48
- package/src/components/features/analytics/InstallationSearch.tsx +0 -230
- package/src/components/features/analytics/UpdateOutcomes.tsx +0 -147
- package/src/components/features/bundles/BundleActivityChart.tsx +0 -193
- package/src/components/features/bundles/BundleAnalyticsSummary.tsx +0 -123
- package/src/lib/analytics-api.ts +0 -145
- package/src/lib/analytics-error.ts +0 -19
- package/src/lib/analytics-input.ts +0 -187
- package/src/lib/analytics-overview.ts +0 -170
- package/src/lib/analytics-rpc.ts +0 -218
- package/src/lib/server/releaseActivity.ts +0 -27
- package/src/routes/analytics.tsx +0 -139
- /package/.output/public/assets/{preload-helper-TKOBYGYD.js → preload-helper-CQ36nxok.js} +0 -0
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { r as
|
|
4
|
-
import {
|
|
5
|
-
|
|
1
|
+
import { t as DatabasePluginInputError } from "./databaseJsonValue-d6I3nAS4.mjs";
|
|
2
|
+
import { l as getBundlePatches } from "./dist-CyzPaI5v.mjs";
|
|
3
|
+
import { a as rowsToBundles, n as bundleToPatchRows, r as bundleToRow, t as bundleMetadataToRow } from "./databaseRows-5bCRTxm-.mjs";
|
|
4
|
+
import { r as getRequest } from "./server-D_C2rMzf.mjs";
|
|
5
|
+
import { requireConsoleAccess, t as resolveConsoleConfig } from "./auth.server-DW71WzsD.mjs";
|
|
6
|
+
import { r as isRecord } from "./insightsContract-fjJDBeEE.mjs";
|
|
7
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/config.server-afDuAwaG.js
|
|
6
8
|
/**
|
|
7
9
|
* Calculate pagination information based on total count, limit, and offset
|
|
8
10
|
*/
|
|
@@ -25,7 +27,6 @@ function calculatePagination(total, options) {
|
|
|
25
27
|
totalPages
|
|
26
28
|
};
|
|
27
29
|
}
|
|
28
|
-
var isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
29
30
|
var validateBundlePagination = (options) => {
|
|
30
31
|
if (!Number.isSafeInteger(options.limit) || options.limit <= 0 || options.page !== void 0 && (!Number.isSafeInteger(options.page) || options.page <= 0) || options.page !== void 0 && options.cursor !== void 0) throw new DatabasePluginInputError("invalid-pagination");
|
|
31
32
|
const cursor = options.cursor;
|
|
@@ -37,6 +38,7 @@ var validateBundlePagination = (options) => {
|
|
|
37
38
|
if (typeof value !== "string" || value.length === 0) throw new DatabasePluginInputError("invalid-pagination");
|
|
38
39
|
};
|
|
39
40
|
var DatabaseAtomicCommitUnsupportedError = class extends Error {
|
|
41
|
+
pluginName;
|
|
40
42
|
name = "DatabaseAtomicCommitUnsupportedError";
|
|
41
43
|
constructor(pluginName) {
|
|
42
44
|
super(`Database plugin "${pluginName}" cannot atomically commit changes across models.`);
|
|
@@ -60,6 +62,8 @@ function assertStorageOperations(plugin, operations) {
|
|
|
60
62
|
for (const operation of operations) if (typeof plugin[operation] !== "function") throw new Error(`Storage plugin "${plugin.name}" does not implement ${operation}.`);
|
|
61
63
|
}
|
|
62
64
|
var DatabasePatchUpdateUnsupportedError = class extends Error {
|
|
65
|
+
bundleId;
|
|
66
|
+
pluginName;
|
|
63
67
|
name = "DatabasePatchUpdateUnsupportedError";
|
|
64
68
|
constructor(bundleId, pluginName) {
|
|
65
69
|
super(`Database plugin "${pluginName}" cannot atomically replace patches for bundle "${bundleId}".`);
|
|
@@ -196,6 +200,7 @@ var responsePage = async (database, options) => {
|
|
|
196
200
|
};
|
|
197
201
|
};
|
|
198
202
|
var DatabaseBundleNotFoundError = class extends Error {
|
|
203
|
+
bundleId;
|
|
199
204
|
name = "DatabaseBundleNotFoundError";
|
|
200
205
|
constructor(bundleId) {
|
|
201
206
|
super(`Bundle "${bundleId}" was not found.`);
|
|
@@ -203,6 +208,8 @@ var DatabaseBundleNotFoundError = class extends Error {
|
|
|
203
208
|
}
|
|
204
209
|
};
|
|
205
210
|
var DatabasePatchInsertUnsupportedError = class extends Error {
|
|
211
|
+
bundleId;
|
|
212
|
+
pluginName;
|
|
206
213
|
name = "DatabasePatchInsertUnsupportedError";
|
|
207
214
|
constructor(bundleId, pluginName) {
|
|
208
215
|
super(`Database plugin "${pluginName}" cannot atomically insert patches for bundle "${bundleId}".`);
|
|
@@ -335,11 +342,11 @@ var prepareConfig = async (request = getRequest()) => {
|
|
|
335
342
|
const config = await loadCachedConfig(request);
|
|
336
343
|
if (!databaseClient) databaseClient = createDatabaseClient(config.database);
|
|
337
344
|
if (!hotUpdater) {
|
|
338
|
-
const { createRuntimeHotUpdater } = await import("./runtime.server-
|
|
345
|
+
const { createRuntimeHotUpdater } = await import("./runtime.server-DacU1TBV.mjs");
|
|
339
346
|
hotUpdater = createRuntimeHotUpdater(config);
|
|
340
347
|
}
|
|
341
348
|
if (!apiKeyStoreResolved) {
|
|
342
|
-
const { createApiKeyStore } = await import("./runtime.server-
|
|
349
|
+
const { createApiKeyStore } = await import("./runtime.server-DacU1TBV.mjs");
|
|
343
350
|
apiKeyStore = createApiKeyStore(config);
|
|
344
351
|
apiKeyStoreResolved = true;
|
|
345
352
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { G as TooltipProvider$1, J as TooltipPositioner, K as TooltipArrow, X as TooltipTrigger$1, Y as TooltipPortal, Z as TooltipRoot, at as require_react, et as Separator, it as require_jsx_runtime, nt as useRender, q as TooltipPopup, rt as mergeProps, tt as Button } from "../_libs/@base-ui/react+[...].mjs";
|
|
1
|
+
import { r as __toESM } from "../_runtime.mjs";
|
|
3
2
|
import { i as TSS_SERVER_FUNCTION } from "./createServerFn-B2hcXoPM.mjs";
|
|
4
|
-
import { t as getServerFnById } from "../__23tanstack-start-server-fn-resolver-
|
|
3
|
+
import { t as getServerFnById } from "../__23tanstack-start-server-fn-resolver-B7ioJhtE.mjs";
|
|
4
|
+
import { B as TooltipRoot, F as TooltipArrow, G as useRender, I as TooltipPopup, J as require_react, K as mergeProps, L as TooltipPositioner, P as TooltipProvider$1, R as TooltipPortal, U as Separator, W as Button, q as require_jsx_runtime, z as TooltipTrigger$1 } from "../_libs/@base-ui/react+[...].mjs";
|
|
5
5
|
import { p as PanelLeft } from "../_libs/lucide-react.mjs";
|
|
6
6
|
import { n as clsx, t as cva } from "../_libs/class-variance-authority+clsx.mjs";
|
|
7
7
|
import { t as twMerge } from "../_libs/tailwind-merge.mjs";
|
|
8
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/createSsrRpc-
|
|
8
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/createSsrRpc-DjWNJ0uc.js
|
|
9
9
|
var import_react = /* @__PURE__ */ __toESM(require_react());
|
|
10
10
|
var import_jsx_runtime = require_jsx_runtime();
|
|
11
11
|
function cn(...inputs) {
|
|
@@ -69,7 +69,7 @@ function Separator$1({ className, orientation = "horizontal", ...props }) {
|
|
|
69
69
|
function Skeleton({ className, ...props }) {
|
|
70
70
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
71
71
|
"data-slot": "skeleton",
|
|
72
|
-
className: cn("bg-muted rounded-md animate-pulse", className),
|
|
72
|
+
className: cn("bg-muted rounded-md animate-pulse motion-reduce:animate-none", className),
|
|
73
73
|
...props
|
|
74
74
|
});
|
|
75
75
|
}
|
|
@@ -101,7 +101,7 @@ function TooltipContent({ className, side = "top", sideOffset = 4, align = "cent
|
|
|
101
101
|
className: "isolate z-50",
|
|
102
102
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(TooltipPopup, {
|
|
103
103
|
"data-slot": "tooltip-content",
|
|
104
|
-
className: cn("z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
104
|
+
className: cn("z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 motion-reduce:animate-none! data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
105
105
|
...props,
|
|
106
106
|
children: [children, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TooltipArrow, { className: "z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-left-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-right-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5" })]
|
|
107
107
|
})
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/databaseJsonValue-d6I3nAS4.js
|
|
2
|
+
var DatabasePluginInputError = class extends Error {
|
|
3
|
+
code;
|
|
4
|
+
name = "DatabasePluginInputError";
|
|
5
|
+
constructor(code) {
|
|
6
|
+
super(`Invalid database plugin input: ${code}`);
|
|
7
|
+
this.code = code;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
var isDatabaseJsonValue = (value) => {
|
|
11
|
+
const ancestors = /* @__PURE__ */ new WeakSet();
|
|
12
|
+
const validate = (input) => {
|
|
13
|
+
if (input === null || typeof input === "string" || typeof input === "boolean") return true;
|
|
14
|
+
if (typeof input === "number") return Number.isFinite(input);
|
|
15
|
+
if (typeof input !== "object") return false;
|
|
16
|
+
if (ancestors.has(input)) return false;
|
|
17
|
+
ancestors.add(input);
|
|
18
|
+
try {
|
|
19
|
+
if (Array.isArray(input)) {
|
|
20
|
+
if (Object.getPrototypeOf(input) !== Array.prototype) return false;
|
|
21
|
+
if (Reflect.ownKeys(input).length !== input.length + 1) return false;
|
|
22
|
+
for (let index = 0; index < input.length; index += 1) {
|
|
23
|
+
const descriptor = Object.getOwnPropertyDescriptor(input, String(index));
|
|
24
|
+
if (descriptor === void 0 || !descriptor.enumerable || !("value" in descriptor) || !validate(descriptor.value)) return false;
|
|
25
|
+
}
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
const prototype = Object.getPrototypeOf(input);
|
|
29
|
+
if (prototype !== Object.prototype && prototype !== null) return false;
|
|
30
|
+
for (const key of Reflect.ownKeys(input)) {
|
|
31
|
+
if (typeof key !== "string" || key === "__proto__") return false;
|
|
32
|
+
const descriptor = Object.getOwnPropertyDescriptor(input, key);
|
|
33
|
+
if (descriptor === void 0 || !descriptor.enumerable || !("value" in descriptor) || !validate(descriptor.value)) return false;
|
|
34
|
+
}
|
|
35
|
+
return true;
|
|
36
|
+
} finally {
|
|
37
|
+
ancestors.delete(input);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
return validate(value);
|
|
41
|
+
};
|
|
42
|
+
var isDatabaseJsonObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value) && isDatabaseJsonValue(value);
|
|
43
|
+
var isDatabaseMetadataObject = (value) => isDatabaseJsonObject(value) && (!Object.hasOwn(value, "app_version") || typeof value["app_version"] === "string");
|
|
44
|
+
//#endregion
|
|
45
|
+
export { isDatabaseMetadataObject as n, DatabasePluginInputError as t };
|
|
@@ -1,46 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
name = "DatabasePluginInputError";
|
|
5
|
-
constructor(code) {
|
|
6
|
-
super(`Invalid database plugin input: ${code}`);
|
|
7
|
-
this.code = code;
|
|
8
|
-
}
|
|
9
|
-
};
|
|
10
|
-
var isDatabaseJsonValue = (value) => {
|
|
11
|
-
const ancestors = /* @__PURE__ */ new WeakSet();
|
|
12
|
-
const validate = (input) => {
|
|
13
|
-
if (input === null || typeof input === "string" || typeof input === "boolean") return true;
|
|
14
|
-
if (typeof input === "number") return Number.isFinite(input);
|
|
15
|
-
if (typeof input !== "object") return false;
|
|
16
|
-
if (ancestors.has(input)) return false;
|
|
17
|
-
ancestors.add(input);
|
|
18
|
-
try {
|
|
19
|
-
if (Array.isArray(input)) {
|
|
20
|
-
if (Object.getPrototypeOf(input) !== Array.prototype) return false;
|
|
21
|
-
if (Reflect.ownKeys(input).length !== input.length + 1) return false;
|
|
22
|
-
for (let index = 0; index < input.length; index += 1) {
|
|
23
|
-
const descriptor = Object.getOwnPropertyDescriptor(input, String(index));
|
|
24
|
-
if (descriptor === void 0 || !descriptor.enumerable || !("value" in descriptor) || !validate(descriptor.value)) return false;
|
|
25
|
-
}
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
const prototype = Object.getPrototypeOf(input);
|
|
29
|
-
if (prototype !== Object.prototype && prototype !== null) return false;
|
|
30
|
-
for (const key of Reflect.ownKeys(input)) {
|
|
31
|
-
if (typeof key !== "string" || key === "__proto__") return false;
|
|
32
|
-
const descriptor = Object.getOwnPropertyDescriptor(input, key);
|
|
33
|
-
if (descriptor === void 0 || !descriptor.enumerable || !("value" in descriptor) || !validate(descriptor.value)) return false;
|
|
34
|
-
}
|
|
35
|
-
return true;
|
|
36
|
-
} finally {
|
|
37
|
-
ancestors.delete(input);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
return validate(value);
|
|
41
|
-
};
|
|
42
|
-
var isDatabaseJsonObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value) && isDatabaseJsonValue(value);
|
|
43
|
-
var isDatabaseMetadataObject = (value) => isDatabaseJsonObject(value) && (!Object.hasOwn(value, "app_version") || typeof value["app_version"] === "string");
|
|
1
|
+
import { n as isDatabaseMetadataObject, t as DatabasePluginInputError } from "./databaseJsonValue-d6I3nAS4.mjs";
|
|
2
|
+
import { T as stripBundleArtifactMetadata, c as getAssetBaseStorageUri, d as getManifestStorageUri, l as getBundlePatches, u as getManifestFileHash } from "./dist-CyzPaI5v.mjs";
|
|
3
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/databaseRows-5bCRTxm-.js
|
|
44
4
|
var bundleMetadataToRow = (metadata) => {
|
|
45
5
|
const value = stripBundleArtifactMetadata(metadata);
|
|
46
6
|
if (value === void 0) return {};
|
|
@@ -163,4 +123,4 @@ var rowsToBundles = (bundleRows, patchRows, referencedBundleRows) => {
|
|
|
163
123
|
return bundleRows.map((row) => rowToBundle(row, patchesByOwner.get(row.id) ?? []));
|
|
164
124
|
};
|
|
165
125
|
//#endregion
|
|
166
|
-
export {
|
|
126
|
+
export { rowsToBundles as a, releaseRowToRelease as i, bundleToPatchRows as n, bundleToRow as r, bundleMetadataToRow as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { _ as getPatchStorageUri, d as getManifestStorageUri, l as getBundlePatches } from "./dist-
|
|
2
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/deleteBundle-
|
|
1
|
+
import { _ as getPatchStorageUri, d as getManifestStorageUri, l as getBundlePatches } from "./dist-CyzPaI5v.mjs";
|
|
2
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/deleteBundle-BTGwBgzx.js
|
|
3
3
|
function resolveStorageUriForDeletion(storageUri, storagePlugin) {
|
|
4
4
|
const protocol = new URL(storageUri).protocol.replace(":", "");
|
|
5
5
|
if (storagePlugin.protocol === protocol) return storageUri;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "../_runtime.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { A as DialogDescription$1, D as DialogTitle$1, E as DialogTrigger$1, J as require_react, M as DialogBackdrop, N as AlertDialogRoot, O as DialogPortal$1, T as AlertDialogTrigger$1, j as DialogClose, k as DialogPopup, q as require_jsx_runtime, w as DialogRoot } from "../_libs/@base-ui/react+[...].mjs";
|
|
3
3
|
import { t as X } from "../_libs/lucide-react.mjs";
|
|
4
|
-
import { C as cn, t as Button$1 } from "./createSsrRpc-
|
|
4
|
+
import { C as cn, t as Button$1 } from "./createSsrRpc-DjWNJ0uc.mjs";
|
|
5
5
|
require_react();
|
|
6
6
|
var import_jsx_runtime = require_jsx_runtime();
|
|
7
7
|
function AlertDialog$1({ ...props }) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/dist-
|
|
1
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/dist-CyzPaI5v.js
|
|
2
2
|
var stripBundleArtifactMetadata = (metadata) => metadata;
|
|
3
3
|
var getManifestStorageUri = (bundle) => bundle.manifestStorageUri ?? null;
|
|
4
4
|
var getManifestFileHash = (bundle) => bundle.manifestFileHash ?? null;
|
|
@@ -138,7 +138,7 @@ function isCohortEligibleForUpdate(bundleId, cohort, rolloutCohortCount, targetC
|
|
|
138
138
|
return getNumericCohortRolloutPosition(bundleId, numericCohort) < normalizedRolloutCount;
|
|
139
139
|
}
|
|
140
140
|
var RELEASE_CATALOG_FALLBACK_POLICY = "BUILTIN_IF_ACTIVE_INELIGIBLE";
|
|
141
|
-
var MAX_COMPILED_CATALOG_BYTES =
|
|
141
|
+
var MAX_COMPILED_CATALOG_BYTES = 262144;
|
|
142
142
|
function isReleaseEligibleForCohort(release, cohort) {
|
|
143
143
|
if (isCohortEligibleForUpdate(release.releaseId, cohort, release.rolloutCohortCount, release.targetCohorts)) return true;
|
|
144
144
|
return cohort !== null && cohort !== void 0 && isCustomCohort(normalizeCohortValue(cohort)) && normalizeRolloutCohortCount(release.rolloutCohortCount) === 1e3;
|
package/.output/server/_ssr/{getBundleChildren-BcRMFoDF.mjs → getBundleChildren-C0vh4ZvE.mjs}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { l as getBundlePatches } from "./dist-
|
|
2
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/getBundleChildren-
|
|
1
|
+
import { l as getBundlePatches } from "./dist-CyzPaI5v.mjs";
|
|
2
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/getBundleChildren-C0vh4ZvE.js
|
|
3
3
|
var CHILDREN_QUERY_LIMIT = 100;
|
|
4
4
|
async function collectBundleChildrenByBaseIds(baseBundleIds, deps) {
|
|
5
5
|
const uniqueBaseBundleIds = [...new Set(baseBundleIds.filter(Boolean))];
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import "../_runtime.mjs";
|
|
2
|
+
import { J as require_react, q as require_jsx_runtime } from "../_libs/@base-ui/react+[...].mjs";
|
|
3
|
+
import { t as cva } from "../_libs/class-variance-authority+clsx.mjs";
|
|
4
|
+
import { C as cn, n as Input, t as Button$1 } from "./createSsrRpc-DjWNJ0uc.mjs";
|
|
5
|
+
require_react();
|
|
6
|
+
var import_jsx_runtime = require_jsx_runtime();
|
|
7
|
+
function Textarea({ className, ...props }) {
|
|
8
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("textarea", {
|
|
9
|
+
"data-slot": "textarea",
|
|
10
|
+
className: cn("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50", className),
|
|
11
|
+
...props
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
function InputGroup({ className, ...props }) {
|
|
15
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
16
|
+
"data-slot": "input-group",
|
|
17
|
+
className: cn("border-input bg-input/20 dark:bg-input/30 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/30 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 h-7 rounded-md border transition-colors has-data-[align=block-end]:rounded-md has-data-[align=block-start]:rounded-md has-[[data-slot=input-group-control]:focus-visible]:ring-[2px] has-[[data-slot][aria-invalid=true]]:ring-[2px] has-[textarea]:rounded-md has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5 [[data-slot=combobox-content]_&]:focus-within:border-inherit [[data-slot=combobox-content]_&]:focus-within:ring-0 group/input-group relative flex w-full min-w-0 items-center outline-none has-[>textarea]:h-auto", className),
|
|
18
|
+
...props
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
var inputGroupAddonVariants = cva("text-muted-foreground **:data-[slot=kbd]:bg-muted-foreground/10 h-auto gap-1 py-2 text-xs/relaxed font-medium group-data-[disabled=true]/input-group:opacity-50 **:data-[slot=kbd]:rounded-[calc(var(--radius-sm)-2px)] **:data-[slot=kbd]:px-1 **:data-[slot=kbd]:text-[0.625rem] [&>svg:not([class*='size-'])]:size-3.5 flex cursor-text items-center justify-center select-none", {
|
|
22
|
+
variants: { align: {
|
|
23
|
+
"inline-start": "pl-2 has-[>button]:ml-[-0.275rem] has-[>kbd]:ml-[-0.275rem] order-first",
|
|
24
|
+
"inline-end": "pr-2 has-[>button]:mr-[-0.275rem] has-[>kbd]:mr-[-0.275rem] order-last",
|
|
25
|
+
"block-start": "px-2 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2 order-first w-full justify-start",
|
|
26
|
+
"block-end": "px-2 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2 order-last w-full justify-start"
|
|
27
|
+
} },
|
|
28
|
+
defaultVariants: { align: "inline-start" }
|
|
29
|
+
});
|
|
30
|
+
function InputGroupAddon({ className, align = "inline-start", ...props }) {
|
|
31
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
32
|
+
"data-slot": "input-group-addon",
|
|
33
|
+
"data-align": align,
|
|
34
|
+
className: cn(inputGroupAddonVariants({ align }), className),
|
|
35
|
+
...props
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
var inputGroupButtonVariants = cva("gap-2 rounded-md text-xs/relaxed shadow-none flex items-center", {
|
|
39
|
+
variants: { size: {
|
|
40
|
+
xs: "h-5 gap-1 rounded-[calc(var(--radius-sm)-2px)] px-1 [&>svg:not([class*='size-'])]:size-3",
|
|
41
|
+
sm: "",
|
|
42
|
+
"icon-xs": "size-6 p-0 has-[>svg]:p-0",
|
|
43
|
+
"icon-sm": "size-8 p-0 has-[>svg]:p-0"
|
|
44
|
+
} },
|
|
45
|
+
defaultVariants: { size: "xs" }
|
|
46
|
+
});
|
|
47
|
+
function InputGroupButton({ className, type = "button", variant = "ghost", size = "xs", ...props }) {
|
|
48
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button$1, {
|
|
49
|
+
type,
|
|
50
|
+
"data-size": size,
|
|
51
|
+
variant,
|
|
52
|
+
className: cn(inputGroupButtonVariants({ size }), className),
|
|
53
|
+
...props
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function InputGroupText({ className, ...props }) {
|
|
57
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
58
|
+
className: cn("text-muted-foreground gap-2 text-xs/relaxed [&_svg:not([class*='size-'])]:size-4 flex items-center [&_svg]:pointer-events-none", className),
|
|
59
|
+
...props
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
function InputGroupInput({ className, ...props }) {
|
|
63
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Input, {
|
|
64
|
+
"data-slot": "input-group-control",
|
|
65
|
+
className: cn("rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent flex-1", className),
|
|
66
|
+
...props
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
//#endregion
|
|
70
|
+
export { InputGroupText as a, InputGroupInput as i, InputGroupAddon as n, Textarea as o, InputGroupButton as r, InputGroup as t };
|