@lunora/studio 1.0.0-alpha.11 → 1.0.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +4 -3
- package/dist/index.js +24 -24
- package/dist/mount.d.ts +1 -1
- package/dist/mount.js +1 -1
- package/dist/packem_shared/{ADMIN_FUNCTIONS-DjXgvJb6.js → ADMIN_FUNCTIONS-CZJCZ4c7.js} +1 -0
- package/dist/packem_shared/{ApiDocsPanel-yVSGHK3H.js → ApiDocsPanel-yEz0fiof.js} +1 -1
- package/dist/packem_shared/{ApiTab-rwttyQ1-.js → ApiTab-DdubReQI.js} +1 -1
- package/dist/packem_shared/{AuditPanel-SRilxyg0.js → AuditPanel-CE5ofjCc.js} +1 -1
- package/dist/packem_shared/{DataBrowser-B4v_9GiU.js → DataBrowser-DpL8U-Nf.js} +1 -1
- package/dist/packem_shared/{ExportImportPanel-NtZVqbOj.js → ExportImportPanel-ChsSUCYZ.js} +1 -1
- package/dist/packem_shared/{FileBrowser-0pCpdKPE.js → FileBrowser-DsRBnVhZ.js} +1 -1
- package/dist/packem_shared/{FunctionRunner-7NH3KcTg.js → FunctionRunner-D4cZ6fuA.js} +1 -1
- package/dist/packem_shared/{FunctionStatsPanel-n-6FrbOH.js → FunctionStatsPanel-BVelWgNv.js} +1 -1
- package/dist/packem_shared/{HealthPanel-Dpr6KTmV.js → HealthPanel-CxUVKfvo.js} +1 -1
- package/dist/packem_shared/{HomePanel-CpFLsa64.js → HomePanel-tfqpZxuu.js} +1 -1
- package/dist/packem_shared/{InsightsPanel-BchgeeRx.js → InsightsPanel-DNg3K9XN.js} +1 -1
- package/dist/packem_shared/{LogsPanel-DsPnKZ95.js → LogsPanel-B4LoSRj0.js} +1 -1
- package/dist/packem_shared/{MailPanel-Bmg781UW.js → MailPanel-CcpdyWYs.js} +1 -1
- package/dist/packem_shared/{MetricsPanel-DaE8ZXrf.js → MetricsPanel-CxoyWbNb.js} +1 -1
- package/dist/packem_shared/{MigrationsPanel-CaUpce-G.js → MigrationsPanel-DGwJGWDA.js} +1 -1
- package/dist/packem_shared/{PitrPanel-LJGNP_IX.js → PitrPanel-CKUzyyHi.js} +1 -1
- package/dist/packem_shared/{SchemaViewer-Bam6ylvw.js → SchemaViewer-RclXFo9Q.js} +1 -1
- package/dist/packem_shared/{SecurityAdvisorPanel-PAx712Bd.js → SecurityAdvisorPanel-Dqql1Z5O.js} +1 -1
- package/dist/packem_shared/{SettingsPanel-C4tufQD5.js → SettingsPanel-D5iTY0YE.js} +1 -1
- package/dist/packem_shared/{SqlEditorPanel-D5wMIxcg.js → SqlEditorPanel-Dj-In-B3.js} +2 -2
- package/dist/packem_shared/Studio-VWvKNOw4.js +33 -0
- package/dist/packem_shared/{StudioApp-g8j3V6vA.js → StudioApp-BhQ6T2pn.js} +1 -1
- package/dist/packem_shared/{TableEditor-0TYRqi6t.js → TableEditor-BY8bTpCl.js} +2 -2
- package/dist/packem_shared/{app.d-Nbhpihxv.d.ts → app.d-BVJFkXyj.d.ts} +1 -1
- package/dist/packem_shared/{sql-editor-panel-Smfl_FDF.js → sql-editor-panel-CMdxstu5.js} +1 -1
- package/dist/packem_shared/{studio-DRWW__L9.js → studio-D8ry3tJR.js} +727 -535
- package/dist/packem_shared/{table-editor-CiyJi0Nm.js → table-editor-CWx68ZCg.js} +1 -1
- package/dist/standalone/studio.js +194 -194
- package/package.json +2 -2
- package/dist/packem_shared/Studio-BFg10lBc.js +0 -33
|
@@ -20,43 +20,43 @@ import { B as Button } from './button-BhsN2uZH.js';
|
|
|
20
20
|
import { Dialog } from '@base-ui/react/dialog';
|
|
21
21
|
import { Tooltip as Tooltip$1 } from '@base-ui/react/tooltip';
|
|
22
22
|
import { S as Skeleton } from './reference-view-B4E49Lip.js';
|
|
23
|
-
import { InsightsPanel } from './InsightsPanel-
|
|
23
|
+
import { InsightsPanel } from './InsightsPanel-DNg3K9XN.js';
|
|
24
24
|
import { a as CardContent, C as Card, b as CardHeader, c as CardTitle, d as CardDescription } from './card-DURq3ElK.js';
|
|
25
25
|
import { E as EmptyState } from './empty-state-DY_oe0k6.js';
|
|
26
26
|
import { T as Table, a as TableHeader, b as TableRow, c as TableHead, d as TableBody, e as TableCell } from './table-_RzNvy3R.js';
|
|
27
27
|
import { u as useAdminQuery, b as useClientQuery } from './use-admin-query-BkbdNFNz.js';
|
|
28
|
-
import { ADMIN_FUNCTIONS } from './ADMIN_FUNCTIONS-
|
|
29
|
-
import SecurityAdvisorPanel from './SecurityAdvisorPanel-
|
|
28
|
+
import { ADMIN_FUNCTIONS } from './ADMIN_FUNCTIONS-CZJCZ4c7.js';
|
|
29
|
+
import SecurityAdvisorPanel from './SecurityAdvisorPanel-Dqql1Z5O.js';
|
|
30
30
|
import { createAnalyticsSqlClient } from '@lunora/bindings/analytics';
|
|
31
31
|
import { e as errorMessage, f as fireAndForget, h as formatCell, b as formatTimestamp, g as copyToClipboard, c as callOptions, a as adminRef } from './internal-rXJEAhXS.js';
|
|
32
|
-
import ApiTab from './ApiTab-
|
|
32
|
+
import ApiTab from './ApiTab-DdubReQI.js';
|
|
33
33
|
import { useLunora } from '@lunora/react';
|
|
34
34
|
import { useAutoRefresh } from './DEFAULT_AUTO_REFRESH_MS-Vxwaxx51.js';
|
|
35
35
|
import useDebounced from './useDebounced-Dxncpg6z.js';
|
|
36
36
|
import { L as Label } from './label-D8ykjn5J.js';
|
|
37
37
|
import { M as ModalShell } from './grid-features-CzUfqgsM.js';
|
|
38
|
-
import { v as validateDataViewSearch, T as TableEditor } from './table-editor-
|
|
39
|
-
import { ExportImportPanel } from './ExportImportPanel-
|
|
40
|
-
import { MigrationsPanel } from './MigrationsPanel-
|
|
41
|
-
import { PitrPanel } from './PitrPanel-
|
|
42
|
-
import {
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import {
|
|
38
|
+
import { v as validateDataViewSearch, T as TableEditor } from './table-editor-CWx68ZCg.js';
|
|
39
|
+
import { ExportImportPanel } from './ExportImportPanel-ChsSUCYZ.js';
|
|
40
|
+
import { MigrationsPanel } from './MigrationsPanel-DGwJGWDA.js';
|
|
41
|
+
import { PitrPanel } from './PitrPanel-CKUzyyHi.js';
|
|
42
|
+
import { T as Textarea } from './textarea-D3gaCU_-.js';
|
|
43
|
+
import { FunctionRunner } from './FunctionRunner-D4cZ6fuA.js';
|
|
44
|
+
import { FunctionStatsPanel } from './FunctionStatsPanel-BVelWgNv.js';
|
|
45
|
+
import { HomePanel } from './HomePanel-tfqpZxuu.js';
|
|
46
|
+
import { AuditPanel } from './AuditPanel-CE5ofjCc.js';
|
|
46
47
|
import { C as CLOUDFLARE_OBSERVABILITY_URL } from './cf-links-2cktDedA.js';
|
|
47
|
-
import { LogsPanel } from './LogsPanel-
|
|
48
|
-
import { MailPanel } from './MailPanel-
|
|
48
|
+
import { LogsPanel } from './LogsPanel-B4LoSRj0.js';
|
|
49
|
+
import { MailPanel } from './MailPanel-CcpdyWYs.js';
|
|
49
50
|
import { ConfirmButton } from './ConfirmButton-C2eVi2Qv.js';
|
|
50
51
|
import { ScheduledJobs } from './ScheduledJobs-BWNwIN3I.js';
|
|
51
52
|
import { ShardInput } from './ShardInput-gx_DZXXn.js';
|
|
52
53
|
import { L as LiveError } from './live-status-FZ0psC1z.js';
|
|
53
|
-
import {
|
|
54
|
-
import {
|
|
55
|
-
import {
|
|
56
|
-
import {
|
|
57
|
-
import {
|
|
58
|
-
import {
|
|
59
|
-
import { FileBrowser } from './FileBrowser-0pCpdKPE.js';
|
|
54
|
+
import { u as usePersistedList, A as Alert, a as SqlResultChart, n as newId, S as SqlEditorPanel } from './sql-editor-panel-CMdxstu5.js';
|
|
55
|
+
import { HealthPanel } from './HealthPanel-CxUVKfvo.js';
|
|
56
|
+
import { MetricsPanel } from './MetricsPanel-CxoyWbNb.js';
|
|
57
|
+
import { SchemaViewer } from './SchemaViewer-RclXFo9Q.js';
|
|
58
|
+
import { SettingsPanel } from './SettingsPanel-D5iTY0YE.js';
|
|
59
|
+
import { FileBrowser } from './FileBrowser-DsRBnVhZ.js';
|
|
60
60
|
import { StudioI18nProvider } from './StudioI18nProvider-B-tDCZIi.js';
|
|
61
61
|
import { CommandPalette, openCommandPalette } from './CommandPalette-BtgkBzZI.js';
|
|
62
62
|
|
|
@@ -4459,6 +4459,169 @@ const UsersPanel = ({
|
|
|
4459
4459
|
}, void 0, true);
|
|
4460
4460
|
};
|
|
4461
4461
|
|
|
4462
|
+
const parseContext = (raw) => {
|
|
4463
|
+
const trimmed = raw.trim();
|
|
4464
|
+
if (trimmed.length === 0) {
|
|
4465
|
+
return {
|
|
4466
|
+
context: void 0,
|
|
4467
|
+
error: null
|
|
4468
|
+
};
|
|
4469
|
+
}
|
|
4470
|
+
try {
|
|
4471
|
+
const parsed = JSON.parse(trimmed);
|
|
4472
|
+
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
4473
|
+
return {
|
|
4474
|
+
context: void 0,
|
|
4475
|
+
error: "Targeting context must be a JSON object."
|
|
4476
|
+
};
|
|
4477
|
+
}
|
|
4478
|
+
return {
|
|
4479
|
+
context: parsed,
|
|
4480
|
+
error: null
|
|
4481
|
+
};
|
|
4482
|
+
} catch {
|
|
4483
|
+
return {
|
|
4484
|
+
context: void 0,
|
|
4485
|
+
error: "Targeting context is not valid JSON."
|
|
4486
|
+
};
|
|
4487
|
+
}
|
|
4488
|
+
};
|
|
4489
|
+
const CONTEXT_PLACEHOLDER = '{ "targetingKey": "user-123", "plan": "premium" }';
|
|
4490
|
+
const formatValue$1 = (evaluation) => {
|
|
4491
|
+
if (evaluation.type === "object") {
|
|
4492
|
+
return JSON.stringify(evaluation.value);
|
|
4493
|
+
}
|
|
4494
|
+
return String(evaluation.value);
|
|
4495
|
+
};
|
|
4496
|
+
const FlagsPanel = ({
|
|
4497
|
+
initialShardKey = ""
|
|
4498
|
+
}) => {
|
|
4499
|
+
const t = useT();
|
|
4500
|
+
const [contextText, setContextText] = useState("");
|
|
4501
|
+
const {
|
|
4502
|
+
context,
|
|
4503
|
+
error: contextError
|
|
4504
|
+
} = parseContext(contextText);
|
|
4505
|
+
const args = useMemo(() => context === void 0 ? {} : {
|
|
4506
|
+
context
|
|
4507
|
+
}, [context]);
|
|
4508
|
+
const {
|
|
4509
|
+
data,
|
|
4510
|
+
error,
|
|
4511
|
+
liveError
|
|
4512
|
+
} = useAdminQuery(ADMIN_FUNCTIONS.listFlags, args, {
|
|
4513
|
+
live: true,
|
|
4514
|
+
shardKey: initialShardKey
|
|
4515
|
+
});
|
|
4516
|
+
const loaded = data !== void 0;
|
|
4517
|
+
const configured = data?.configured ?? false;
|
|
4518
|
+
const flags = useMemo(() => Array.isArray(data?.flags) ? [...data.flags].toSorted((a, b) => a.key.localeCompare(b.key)) : [], [data]);
|
|
4519
|
+
let body;
|
|
4520
|
+
if (loaded && !configured) {
|
|
4521
|
+
body = /* @__PURE__ */ jsxDEV(EmptyState, {
|
|
4522
|
+
description: t("No @lunora/flags provider is wired in this deployment. Add lunora/flags.ts with defineFlags({ provider }) to gate code paths on feature flags."),
|
|
4523
|
+
testId: "flags-unconfigured",
|
|
4524
|
+
title: t("No flags provider configured")
|
|
4525
|
+
}, void 0, false);
|
|
4526
|
+
} else if (loaded && flags.length === 0) {
|
|
4527
|
+
body = /* @__PURE__ */ jsxDEV(EmptyState, {
|
|
4528
|
+
description: t('A flags provider is configured, but no handler reads a flag yet. Call ctx.flags.boolean("key", false) in a query, mutation, or action.'),
|
|
4529
|
+
testId: "flags-empty",
|
|
4530
|
+
title: t("No flags read")
|
|
4531
|
+
}, void 0, false);
|
|
4532
|
+
} else {
|
|
4533
|
+
body = /* @__PURE__ */ jsxDEV(Card, {
|
|
4534
|
+
className: "overflow-hidden py-0",
|
|
4535
|
+
children: /* @__PURE__ */ jsxDEV(CardContent, {
|
|
4536
|
+
className: "px-0",
|
|
4537
|
+
children: /* @__PURE__ */ jsxDEV(Table, {
|
|
4538
|
+
"data-testid": "flags-table",
|
|
4539
|
+
children: [/* @__PURE__ */ jsxDEV(TableHeader, {
|
|
4540
|
+
children: /* @__PURE__ */ jsxDEV(TableRow, {
|
|
4541
|
+
children: [/* @__PURE__ */ jsxDEV(TableHead, {
|
|
4542
|
+
children: t("Key")
|
|
4543
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableHead, {
|
|
4544
|
+
children: t("Type")
|
|
4545
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableHead, {
|
|
4546
|
+
children: t("Value")
|
|
4547
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableHead, {
|
|
4548
|
+
children: t("Reason")
|
|
4549
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableHead, {
|
|
4550
|
+
children: t("Variant")
|
|
4551
|
+
}, void 0, false)]
|
|
4552
|
+
}, void 0, true)
|
|
4553
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableBody, {
|
|
4554
|
+
children: flags.map((flag) => /* @__PURE__ */ jsxDEV(TableRow, {
|
|
4555
|
+
"data-testid": `flags-row-${flag.key}`,
|
|
4556
|
+
children: [/* @__PURE__ */ jsxDEV(TableCell, {
|
|
4557
|
+
className: "font-mono text-xs",
|
|
4558
|
+
children: flag.key
|
|
4559
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableCell, {
|
|
4560
|
+
className: "font-mono text-xs text-muted-foreground",
|
|
4561
|
+
children: flag.type
|
|
4562
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableCell, {
|
|
4563
|
+
className: "font-mono text-xs",
|
|
4564
|
+
children: formatValue$1(flag)
|
|
4565
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableCell, {
|
|
4566
|
+
children: flag.errorCode === void 0 ? /* @__PURE__ */ jsxDEV("span", {
|
|
4567
|
+
className: "font-mono text-xs text-muted-foreground",
|
|
4568
|
+
children: flag.reason ?? "—"
|
|
4569
|
+
}, void 0, false) : /* @__PURE__ */ jsxDEV(Badge, {
|
|
4570
|
+
"data-testid": `flags-error-${flag.key}`,
|
|
4571
|
+
variant: "destructive",
|
|
4572
|
+
children: flag.errorCode
|
|
4573
|
+
}, void 0, false)
|
|
4574
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(TableCell, {
|
|
4575
|
+
className: "font-mono text-xs text-muted-foreground",
|
|
4576
|
+
children: flag.variant ?? "—"
|
|
4577
|
+
}, void 0, false)]
|
|
4578
|
+
}, flag.key, true))
|
|
4579
|
+
}, void 0, false)]
|
|
4580
|
+
}, void 0, true)
|
|
4581
|
+
}, void 0, false)
|
|
4582
|
+
}, void 0, false);
|
|
4583
|
+
}
|
|
4584
|
+
return /* @__PURE__ */ jsxDEV("div", {
|
|
4585
|
+
className: "flex flex-col gap-6",
|
|
4586
|
+
"data-testid": "lunora-flags-panel",
|
|
4587
|
+
children: [error !== null && /* @__PURE__ */ jsxDEV("p", {
|
|
4588
|
+
className: "text-sm text-destructive",
|
|
4589
|
+
"data-testid": "flags-error",
|
|
4590
|
+
role: "alert",
|
|
4591
|
+
children: error
|
|
4592
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV("p", {
|
|
4593
|
+
className: "text-sm text-muted-foreground",
|
|
4594
|
+
children: t('Feature flags are read in code with ctx.flags.<type>("key", default). They evaluate through the OpenFeature provider configured in lunora/flags.ts; edit the targeting context below to see how each flag resolves for a given audience.')
|
|
4595
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV("div", {
|
|
4596
|
+
className: "flex flex-col gap-2",
|
|
4597
|
+
children: [/* @__PURE__ */ jsxDEV(Label, {
|
|
4598
|
+
htmlFor: "flags-targeting-context",
|
|
4599
|
+
children: t("Targeting context (JSON)")
|
|
4600
|
+
}, void 0, false), /* @__PURE__ */ jsxDEV(Textarea, {
|
|
4601
|
+
className: "font-mono text-xs",
|
|
4602
|
+
"data-testid": "flags-context-input",
|
|
4603
|
+
id: "flags-targeting-context",
|
|
4604
|
+
onChange: (event) => {
|
|
4605
|
+
setContextText(event.target.value);
|
|
4606
|
+
},
|
|
4607
|
+
placeholder: CONTEXT_PLACEHOLDER,
|
|
4608
|
+
rows: 3,
|
|
4609
|
+
value: contextText
|
|
4610
|
+
}, void 0, false), contextError !== null && /* @__PURE__ */ jsxDEV("p", {
|
|
4611
|
+
className: "text-xs text-destructive",
|
|
4612
|
+
"data-testid": "flags-context-error",
|
|
4613
|
+
role: "alert",
|
|
4614
|
+
children: t(contextError)
|
|
4615
|
+
}, void 0, false), liveError !== void 0 && /* @__PURE__ */ jsxDEV("p", {
|
|
4616
|
+
className: "text-xs text-amber-600 dark:text-amber-500",
|
|
4617
|
+
"data-testid": "flags-live-error",
|
|
4618
|
+
role: "alert",
|
|
4619
|
+
children: t("Live updates unavailable; showing the last evaluation.")
|
|
4620
|
+
}, void 0, false)]
|
|
4621
|
+
}, void 0, true), body]
|
|
4622
|
+
}, void 0, true);
|
|
4623
|
+
};
|
|
4624
|
+
|
|
4462
4625
|
const DestinationRow = (t0) => {
|
|
4463
4626
|
const $ = c(23);
|
|
4464
4627
|
const {
|
|
@@ -8559,6 +8722,7 @@ const WorkflowsPanel = () => {
|
|
|
8559
8722
|
|
|
8560
8723
|
const STUDIO_FEATURES = adminRef(ADMIN_FUNCTIONS.studioFeatures);
|
|
8561
8724
|
const DEFAULT_STUDIO_FEATURES = {
|
|
8725
|
+
flags: true,
|
|
8562
8726
|
mail: true,
|
|
8563
8727
|
payments: true,
|
|
8564
8728
|
queues: true,
|
|
@@ -8574,6 +8738,7 @@ const coerceFeatures = (raw) => {
|
|
|
8574
8738
|
const record = raw;
|
|
8575
8739
|
const flag = (key) => typeof record[key] === "boolean" ? record[key] : true;
|
|
8576
8740
|
return {
|
|
8741
|
+
flags: flag("flags"),
|
|
8577
8742
|
mail: flag("mail"),
|
|
8578
8743
|
payments: flag("payments"),
|
|
8579
8744
|
queues: flag("queues"),
|
|
@@ -8642,6 +8807,9 @@ const TAB_ICONS = {
|
|
|
8642
8807
|
files: /* @__PURE__ */ jsxDEV("path", {
|
|
8643
8808
|
d: "M4 7a2 2 0 0 1 2-2h3l2 2.5h7a2 2 0 0 1 2 2V18a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V7Z"
|
|
8644
8809
|
}, void 0, false),
|
|
8810
|
+
flags: /* @__PURE__ */ jsxDEV("path", {
|
|
8811
|
+
d: "M6 21V4m0 0h11l-2 3 2 3H6"
|
|
8812
|
+
}, void 0, false),
|
|
8645
8813
|
functions: /* @__PURE__ */ jsxDEV("path", {
|
|
8646
8814
|
d: "m9 8-4 4 4 4m6-8 4 4-4 4"
|
|
8647
8815
|
}, void 0, false),
|
|
@@ -8738,13 +8906,14 @@ const NAV_GROUPS = [{
|
|
|
8738
8906
|
tabs: ["security", "rls", "permissions", "insights"]
|
|
8739
8907
|
}, {
|
|
8740
8908
|
key: "operations",
|
|
8741
|
-
tabs: ["schedule", "mail", "drains", "payments"]
|
|
8909
|
+
tabs: ["schedule", "mail", "drains", "payments", "flags"]
|
|
8742
8910
|
}, {
|
|
8743
8911
|
key: "settings",
|
|
8744
8912
|
tabs: ["settings"]
|
|
8745
8913
|
}];
|
|
8746
8914
|
const TAB_FEATURE = {
|
|
8747
8915
|
files: "storage",
|
|
8916
|
+
flags: "flags",
|
|
8748
8917
|
mail: "mail",
|
|
8749
8918
|
payments: "payments",
|
|
8750
8919
|
queues: "queues",
|
|
@@ -8783,7 +8952,7 @@ const TabIcon = (t0) => {
|
|
|
8783
8952
|
}
|
|
8784
8953
|
return t2;
|
|
8785
8954
|
};
|
|
8786
|
-
const TABS = ["home", "data", "sql", "functions", "api", "workflows", "queues", "schema", "migrations", "vectors", "export", "pitr", "users", "organizations", "authSessions", "authConfig", "files", "storageRules", "dashboards", "metrics", "analytics", "health", "security", "rls", "permissions", "insights", "logs", "realtime", "mail", "payments", "audit", "schedule", "drains", "settings"];
|
|
8955
|
+
const TABS = ["home", "data", "sql", "functions", "api", "workflows", "queues", "schema", "migrations", "vectors", "export", "pitr", "users", "organizations", "authSessions", "authConfig", "files", "storageRules", "dashboards", "metrics", "analytics", "health", "security", "rls", "permissions", "insights", "logs", "realtime", "mail", "payments", "audit", "schedule", "drains", "flags", "settings"];
|
|
8787
8956
|
const FULL_HEIGHT_TABS = /* @__PURE__ */ new Set(["api", "data", "sql"]);
|
|
8788
8957
|
const tabFromPathname = (pathname) => {
|
|
8789
8958
|
const slug = pathname.split("/").findLast(Boolean) ?? "";
|
|
@@ -9390,7 +9559,7 @@ const StudioSidebar = (t0) => {
|
|
|
9390
9559
|
return t9;
|
|
9391
9560
|
};
|
|
9392
9561
|
const StudioLayout = () => {
|
|
9393
|
-
const $ = c(
|
|
9562
|
+
const $ = c(276);
|
|
9394
9563
|
const t = useT();
|
|
9395
9564
|
const navigate = useNavigate();
|
|
9396
9565
|
let t0;
|
|
@@ -9533,7 +9702,7 @@ const StudioLayout = () => {
|
|
|
9533
9702
|
}
|
|
9534
9703
|
let t15;
|
|
9535
9704
|
if ($[31] !== t) {
|
|
9536
|
-
t15 = t("
|
|
9705
|
+
t15 = t("Flags");
|
|
9537
9706
|
$[31] = t;
|
|
9538
9707
|
$[32] = t15;
|
|
9539
9708
|
} else {
|
|
@@ -9541,7 +9710,7 @@ const StudioLayout = () => {
|
|
|
9541
9710
|
}
|
|
9542
9711
|
let t16;
|
|
9543
9712
|
if ($[33] !== t) {
|
|
9544
|
-
t16 = t("
|
|
9713
|
+
t16 = t("Functions");
|
|
9545
9714
|
$[33] = t;
|
|
9546
9715
|
$[34] = t16;
|
|
9547
9716
|
} else {
|
|
@@ -9549,7 +9718,7 @@ const StudioLayout = () => {
|
|
|
9549
9718
|
}
|
|
9550
9719
|
let t17;
|
|
9551
9720
|
if ($[35] !== t) {
|
|
9552
|
-
t17 = t("
|
|
9721
|
+
t17 = t("Health");
|
|
9553
9722
|
$[35] = t;
|
|
9554
9723
|
$[36] = t17;
|
|
9555
9724
|
} else {
|
|
@@ -9557,7 +9726,7 @@ const StudioLayout = () => {
|
|
|
9557
9726
|
}
|
|
9558
9727
|
let t18;
|
|
9559
9728
|
if ($[37] !== t) {
|
|
9560
|
-
t18 = t("
|
|
9729
|
+
t18 = t("Home");
|
|
9561
9730
|
$[37] = t;
|
|
9562
9731
|
$[38] = t18;
|
|
9563
9732
|
} else {
|
|
@@ -9565,7 +9734,7 @@ const StudioLayout = () => {
|
|
|
9565
9734
|
}
|
|
9566
9735
|
let t19;
|
|
9567
9736
|
if ($[39] !== t) {
|
|
9568
|
-
t19 = t("
|
|
9737
|
+
t19 = t("Performance");
|
|
9569
9738
|
$[39] = t;
|
|
9570
9739
|
$[40] = t19;
|
|
9571
9740
|
} else {
|
|
@@ -9573,7 +9742,7 @@ const StudioLayout = () => {
|
|
|
9573
9742
|
}
|
|
9574
9743
|
let t20;
|
|
9575
9744
|
if ($[41] !== t) {
|
|
9576
|
-
t20 = t("
|
|
9745
|
+
t20 = t("Logs");
|
|
9577
9746
|
$[41] = t;
|
|
9578
9747
|
$[42] = t20;
|
|
9579
9748
|
} else {
|
|
@@ -9581,7 +9750,7 @@ const StudioLayout = () => {
|
|
|
9581
9750
|
}
|
|
9582
9751
|
let t21;
|
|
9583
9752
|
if ($[43] !== t) {
|
|
9584
|
-
t21 = t("
|
|
9753
|
+
t21 = t("Metrics");
|
|
9585
9754
|
$[43] = t;
|
|
9586
9755
|
$[44] = t21;
|
|
9587
9756
|
} else {
|
|
@@ -9589,7 +9758,7 @@ const StudioLayout = () => {
|
|
|
9589
9758
|
}
|
|
9590
9759
|
let t22;
|
|
9591
9760
|
if ($[45] !== t) {
|
|
9592
|
-
t22 = t("
|
|
9761
|
+
t22 = t("Migrations");
|
|
9593
9762
|
$[45] = t;
|
|
9594
9763
|
$[46] = t22;
|
|
9595
9764
|
} else {
|
|
@@ -9597,7 +9766,7 @@ const StudioLayout = () => {
|
|
|
9597
9766
|
}
|
|
9598
9767
|
let t23;
|
|
9599
9768
|
if ($[47] !== t) {
|
|
9600
|
-
t23 = t("
|
|
9769
|
+
t23 = t("Organizations");
|
|
9601
9770
|
$[47] = t;
|
|
9602
9771
|
$[48] = t23;
|
|
9603
9772
|
} else {
|
|
@@ -9605,7 +9774,7 @@ const StudioLayout = () => {
|
|
|
9605
9774
|
}
|
|
9606
9775
|
let t24;
|
|
9607
9776
|
if ($[49] !== t) {
|
|
9608
|
-
t24 = t("
|
|
9777
|
+
t24 = t("Time Travel");
|
|
9609
9778
|
$[49] = t;
|
|
9610
9779
|
$[50] = t24;
|
|
9611
9780
|
} else {
|
|
@@ -9613,7 +9782,7 @@ const StudioLayout = () => {
|
|
|
9613
9782
|
}
|
|
9614
9783
|
let t25;
|
|
9615
9784
|
if ($[51] !== t) {
|
|
9616
|
-
t25 = t("
|
|
9785
|
+
t25 = t("Mail");
|
|
9617
9786
|
$[51] = t;
|
|
9618
9787
|
$[52] = t25;
|
|
9619
9788
|
} else {
|
|
@@ -9621,7 +9790,7 @@ const StudioLayout = () => {
|
|
|
9621
9790
|
}
|
|
9622
9791
|
let t26;
|
|
9623
9792
|
if ($[53] !== t) {
|
|
9624
|
-
t26 = t("
|
|
9793
|
+
t26 = t("Payments");
|
|
9625
9794
|
$[53] = t;
|
|
9626
9795
|
$[54] = t26;
|
|
9627
9796
|
} else {
|
|
@@ -9629,7 +9798,7 @@ const StudioLayout = () => {
|
|
|
9629
9798
|
}
|
|
9630
9799
|
let t27;
|
|
9631
9800
|
if ($[55] !== t) {
|
|
9632
|
-
t27 = t("
|
|
9801
|
+
t27 = t("Permissions");
|
|
9633
9802
|
$[55] = t;
|
|
9634
9803
|
$[56] = t27;
|
|
9635
9804
|
} else {
|
|
@@ -9637,7 +9806,7 @@ const StudioLayout = () => {
|
|
|
9637
9806
|
}
|
|
9638
9807
|
let t28;
|
|
9639
9808
|
if ($[57] !== t) {
|
|
9640
|
-
t28 = t("
|
|
9809
|
+
t28 = t("Queues");
|
|
9641
9810
|
$[57] = t;
|
|
9642
9811
|
$[58] = t28;
|
|
9643
9812
|
} else {
|
|
@@ -9645,7 +9814,7 @@ const StudioLayout = () => {
|
|
|
9645
9814
|
}
|
|
9646
9815
|
let t29;
|
|
9647
9816
|
if ($[59] !== t) {
|
|
9648
|
-
t29 = t("
|
|
9817
|
+
t29 = t("Realtime");
|
|
9649
9818
|
$[59] = t;
|
|
9650
9819
|
$[60] = t29;
|
|
9651
9820
|
} else {
|
|
@@ -9653,7 +9822,7 @@ const StudioLayout = () => {
|
|
|
9653
9822
|
}
|
|
9654
9823
|
let t30;
|
|
9655
9824
|
if ($[61] !== t) {
|
|
9656
|
-
t30 = t("
|
|
9825
|
+
t30 = t("RLS Policies");
|
|
9657
9826
|
$[61] = t;
|
|
9658
9827
|
$[62] = t30;
|
|
9659
9828
|
} else {
|
|
@@ -9661,7 +9830,7 @@ const StudioLayout = () => {
|
|
|
9661
9830
|
}
|
|
9662
9831
|
let t31;
|
|
9663
9832
|
if ($[63] !== t) {
|
|
9664
|
-
t31 = t("
|
|
9833
|
+
t31 = t("Scheduled");
|
|
9665
9834
|
$[63] = t;
|
|
9666
9835
|
$[64] = t31;
|
|
9667
9836
|
} else {
|
|
@@ -9669,7 +9838,7 @@ const StudioLayout = () => {
|
|
|
9669
9838
|
}
|
|
9670
9839
|
let t32;
|
|
9671
9840
|
if ($[65] !== t) {
|
|
9672
|
-
t32 = t("
|
|
9841
|
+
t32 = t("Schema");
|
|
9673
9842
|
$[65] = t;
|
|
9674
9843
|
$[66] = t32;
|
|
9675
9844
|
} else {
|
|
@@ -9677,7 +9846,7 @@ const StudioLayout = () => {
|
|
|
9677
9846
|
}
|
|
9678
9847
|
let t33;
|
|
9679
9848
|
if ($[67] !== t) {
|
|
9680
|
-
t33 = t("
|
|
9849
|
+
t33 = t("Security");
|
|
9681
9850
|
$[67] = t;
|
|
9682
9851
|
$[68] = t33;
|
|
9683
9852
|
} else {
|
|
@@ -9685,7 +9854,7 @@ const StudioLayout = () => {
|
|
|
9685
9854
|
}
|
|
9686
9855
|
let t34;
|
|
9687
9856
|
if ($[69] !== t) {
|
|
9688
|
-
t34 = t("
|
|
9857
|
+
t34 = t("Settings");
|
|
9689
9858
|
$[69] = t;
|
|
9690
9859
|
$[70] = t34;
|
|
9691
9860
|
} else {
|
|
@@ -9693,7 +9862,7 @@ const StudioLayout = () => {
|
|
|
9693
9862
|
}
|
|
9694
9863
|
let t35;
|
|
9695
9864
|
if ($[71] !== t) {
|
|
9696
|
-
t35 = t("
|
|
9865
|
+
t35 = t("SQL editor");
|
|
9697
9866
|
$[71] = t;
|
|
9698
9867
|
$[72] = t35;
|
|
9699
9868
|
} else {
|
|
@@ -9701,7 +9870,7 @@ const StudioLayout = () => {
|
|
|
9701
9870
|
}
|
|
9702
9871
|
let t36;
|
|
9703
9872
|
if ($[73] !== t) {
|
|
9704
|
-
t36 = t("
|
|
9873
|
+
t36 = t("Access Rules");
|
|
9705
9874
|
$[73] = t;
|
|
9706
9875
|
$[74] = t36;
|
|
9707
9876
|
} else {
|
|
@@ -9709,7 +9878,7 @@ const StudioLayout = () => {
|
|
|
9709
9878
|
}
|
|
9710
9879
|
let t37;
|
|
9711
9880
|
if ($[75] !== t) {
|
|
9712
|
-
t37 = t("
|
|
9881
|
+
t37 = t("Users");
|
|
9713
9882
|
$[75] = t;
|
|
9714
9883
|
$[76] = t37;
|
|
9715
9884
|
} else {
|
|
@@ -9717,15 +9886,23 @@ const StudioLayout = () => {
|
|
|
9717
9886
|
}
|
|
9718
9887
|
let t38;
|
|
9719
9888
|
if ($[77] !== t) {
|
|
9720
|
-
t38 = t("
|
|
9889
|
+
t38 = t("Vectors");
|
|
9721
9890
|
$[77] = t;
|
|
9722
9891
|
$[78] = t38;
|
|
9723
9892
|
} else {
|
|
9724
9893
|
t38 = $[78];
|
|
9725
9894
|
}
|
|
9726
9895
|
let t39;
|
|
9727
|
-
if ($[79] !==
|
|
9728
|
-
t39 =
|
|
9896
|
+
if ($[79] !== t) {
|
|
9897
|
+
t39 = t("Workflows");
|
|
9898
|
+
$[79] = t;
|
|
9899
|
+
$[80] = t39;
|
|
9900
|
+
} else {
|
|
9901
|
+
t39 = $[80];
|
|
9902
|
+
}
|
|
9903
|
+
let t40;
|
|
9904
|
+
if ($[81] !== t10 || $[82] !== t11 || $[83] !== t12 || $[84] !== t13 || $[85] !== t14 || $[86] !== t15 || $[87] !== t16 || $[88] !== t17 || $[89] !== t18 || $[90] !== t19 || $[91] !== t20 || $[92] !== t21 || $[93] !== t22 || $[94] !== t23 || $[95] !== t24 || $[96] !== t25 || $[97] !== t26 || $[98] !== t27 || $[99] !== t28 || $[100] !== t29 || $[101] !== t30 || $[102] !== t31 || $[103] !== t32 || $[104] !== t33 || $[105] !== t34 || $[106] !== t35 || $[107] !== t36 || $[108] !== t37 || $[109] !== t38 || $[110] !== t39 || $[111] !== t5 || $[112] !== t6 || $[113] !== t7 || $[114] !== t8 || $[115] !== t9) {
|
|
9905
|
+
t40 = {
|
|
9729
9906
|
analytics: t5,
|
|
9730
9907
|
api: t6,
|
|
9731
9908
|
audit: t7,
|
|
@@ -9736,70 +9913,72 @@ const StudioLayout = () => {
|
|
|
9736
9913
|
drains: t12,
|
|
9737
9914
|
export: t13,
|
|
9738
9915
|
files: t14,
|
|
9739
|
-
|
|
9740
|
-
|
|
9741
|
-
|
|
9742
|
-
|
|
9743
|
-
|
|
9744
|
-
|
|
9745
|
-
|
|
9746
|
-
|
|
9747
|
-
|
|
9748
|
-
|
|
9749
|
-
|
|
9750
|
-
|
|
9751
|
-
|
|
9752
|
-
|
|
9753
|
-
|
|
9754
|
-
|
|
9755
|
-
|
|
9756
|
-
|
|
9757
|
-
|
|
9758
|
-
|
|
9759
|
-
|
|
9760
|
-
|
|
9761
|
-
|
|
9762
|
-
|
|
9916
|
+
flags: t15,
|
|
9917
|
+
functions: t16,
|
|
9918
|
+
health: t17,
|
|
9919
|
+
home: t18,
|
|
9920
|
+
insights: t19,
|
|
9921
|
+
logs: t20,
|
|
9922
|
+
metrics: t21,
|
|
9923
|
+
migrations: t22,
|
|
9924
|
+
organizations: t23,
|
|
9925
|
+
pitr: t24,
|
|
9926
|
+
mail: t25,
|
|
9927
|
+
payments: t26,
|
|
9928
|
+
permissions: t27,
|
|
9929
|
+
queues: t28,
|
|
9930
|
+
realtime: t29,
|
|
9931
|
+
rls: t30,
|
|
9932
|
+
schedule: t31,
|
|
9933
|
+
schema: t32,
|
|
9934
|
+
security: t33,
|
|
9935
|
+
settings: t34,
|
|
9936
|
+
sql: t35,
|
|
9937
|
+
storageRules: t36,
|
|
9938
|
+
users: t37,
|
|
9939
|
+
vectors: t38,
|
|
9940
|
+
workflows: t39
|
|
9763
9941
|
};
|
|
9764
|
-
$[
|
|
9765
|
-
$[
|
|
9766
|
-
$[
|
|
9767
|
-
$[
|
|
9768
|
-
$[
|
|
9769
|
-
$[
|
|
9770
|
-
$[
|
|
9771
|
-
$[
|
|
9772
|
-
$[
|
|
9773
|
-
$[
|
|
9774
|
-
$[
|
|
9775
|
-
$[
|
|
9776
|
-
$[
|
|
9777
|
-
$[
|
|
9778
|
-
$[
|
|
9779
|
-
$[
|
|
9780
|
-
$[
|
|
9781
|
-
$[
|
|
9782
|
-
$[
|
|
9783
|
-
$[
|
|
9784
|
-
$[
|
|
9785
|
-
$[
|
|
9786
|
-
$[
|
|
9787
|
-
$[
|
|
9788
|
-
$[
|
|
9789
|
-
$[
|
|
9790
|
-
$[
|
|
9791
|
-
$[
|
|
9792
|
-
$[
|
|
9793
|
-
$[
|
|
9794
|
-
$[
|
|
9795
|
-
$[
|
|
9796
|
-
$[
|
|
9797
|
-
$[
|
|
9798
|
-
$[
|
|
9799
|
-
|
|
9800
|
-
|
|
9801
|
-
|
|
9802
|
-
|
|
9942
|
+
$[81] = t10;
|
|
9943
|
+
$[82] = t11;
|
|
9944
|
+
$[83] = t12;
|
|
9945
|
+
$[84] = t13;
|
|
9946
|
+
$[85] = t14;
|
|
9947
|
+
$[86] = t15;
|
|
9948
|
+
$[87] = t16;
|
|
9949
|
+
$[88] = t17;
|
|
9950
|
+
$[89] = t18;
|
|
9951
|
+
$[90] = t19;
|
|
9952
|
+
$[91] = t20;
|
|
9953
|
+
$[92] = t21;
|
|
9954
|
+
$[93] = t22;
|
|
9955
|
+
$[94] = t23;
|
|
9956
|
+
$[95] = t24;
|
|
9957
|
+
$[96] = t25;
|
|
9958
|
+
$[97] = t26;
|
|
9959
|
+
$[98] = t27;
|
|
9960
|
+
$[99] = t28;
|
|
9961
|
+
$[100] = t29;
|
|
9962
|
+
$[101] = t30;
|
|
9963
|
+
$[102] = t31;
|
|
9964
|
+
$[103] = t32;
|
|
9965
|
+
$[104] = t33;
|
|
9966
|
+
$[105] = t34;
|
|
9967
|
+
$[106] = t35;
|
|
9968
|
+
$[107] = t36;
|
|
9969
|
+
$[108] = t37;
|
|
9970
|
+
$[109] = t38;
|
|
9971
|
+
$[110] = t39;
|
|
9972
|
+
$[111] = t5;
|
|
9973
|
+
$[112] = t6;
|
|
9974
|
+
$[113] = t7;
|
|
9975
|
+
$[114] = t8;
|
|
9976
|
+
$[115] = t9;
|
|
9977
|
+
$[116] = t40;
|
|
9978
|
+
} else {
|
|
9979
|
+
t40 = $[116];
|
|
9980
|
+
}
|
|
9981
|
+
const tabLabel = t40;
|
|
9803
9982
|
const groupLabel = {
|
|
9804
9983
|
advisors: t("Advisors"),
|
|
9805
9984
|
auth: t("Auth"),
|
|
@@ -9811,386 +9990,396 @@ const StudioLayout = () => {
|
|
|
9811
9990
|
settings: t("Settings"),
|
|
9812
9991
|
storage: t("Storage")
|
|
9813
9992
|
};
|
|
9814
|
-
let t40;
|
|
9815
|
-
if ($[114] !== t) {
|
|
9816
|
-
t40 = t("Usage and latency from Analytics Engine — request volume, p50/p95, and hot shards.");
|
|
9817
|
-
$[114] = t;
|
|
9818
|
-
$[115] = t40;
|
|
9819
|
-
} else {
|
|
9820
|
-
t40 = $[115];
|
|
9821
|
-
}
|
|
9822
9993
|
let t41;
|
|
9823
|
-
if ($[
|
|
9824
|
-
t41 = t("
|
|
9825
|
-
$[
|
|
9826
|
-
$[
|
|
9994
|
+
if ($[117] !== t) {
|
|
9995
|
+
t41 = t("Usage and latency from Analytics Engine — request volume, p50/p95, and hot shards.");
|
|
9996
|
+
$[117] = t;
|
|
9997
|
+
$[118] = t41;
|
|
9827
9998
|
} else {
|
|
9828
|
-
t41 = $[
|
|
9999
|
+
t41 = $[118];
|
|
9829
10000
|
}
|
|
9830
10001
|
let t42;
|
|
9831
|
-
if ($[
|
|
9832
|
-
t42 = t("
|
|
9833
|
-
$[
|
|
9834
|
-
$[
|
|
10002
|
+
if ($[119] !== t) {
|
|
10003
|
+
t42 = t("Interactive OpenAPI reference and copy-paste snippets for your functions.");
|
|
10004
|
+
$[119] = t;
|
|
10005
|
+
$[120] = t42;
|
|
9835
10006
|
} else {
|
|
9836
|
-
t42 = $[
|
|
10007
|
+
t42 = $[120];
|
|
9837
10008
|
}
|
|
9838
10009
|
let t43;
|
|
9839
|
-
if ($[
|
|
9840
|
-
t43 = t("
|
|
9841
|
-
$[
|
|
9842
|
-
$[
|
|
10010
|
+
if ($[121] !== t) {
|
|
10011
|
+
t43 = t("A durable log of admin state-changing operations.");
|
|
10012
|
+
$[121] = t;
|
|
10013
|
+
$[122] = t43;
|
|
9843
10014
|
} else {
|
|
9844
|
-
t43 = $[
|
|
10015
|
+
t43 = $[122];
|
|
9845
10016
|
}
|
|
9846
10017
|
let t44;
|
|
9847
|
-
if ($[
|
|
9848
|
-
t44 = t("
|
|
9849
|
-
$[
|
|
9850
|
-
$[
|
|
10018
|
+
if ($[123] !== t) {
|
|
10019
|
+
t44 = t("Enabled plugins and session config (read-only).");
|
|
10020
|
+
$[123] = t;
|
|
10021
|
+
$[124] = t44;
|
|
9851
10022
|
} else {
|
|
9852
|
-
t44 = $[
|
|
10023
|
+
t44 = $[124];
|
|
9853
10024
|
}
|
|
9854
10025
|
let t45;
|
|
9855
|
-
if ($[
|
|
9856
|
-
t45 = t("
|
|
9857
|
-
$[
|
|
9858
|
-
$[
|
|
10026
|
+
if ($[125] !== t) {
|
|
10027
|
+
t45 = t("Browse and revoke active sessions across all users.");
|
|
10028
|
+
$[125] = t;
|
|
10029
|
+
$[126] = t45;
|
|
9859
10030
|
} else {
|
|
9860
|
-
t45 = $[
|
|
10031
|
+
t45 = $[126];
|
|
9861
10032
|
}
|
|
9862
10033
|
let t46;
|
|
9863
|
-
if ($[
|
|
9864
|
-
t46 = t("
|
|
9865
|
-
$[
|
|
9866
|
-
$[
|
|
10034
|
+
if ($[127] !== t) {
|
|
10035
|
+
t46 = t("Chart widgets backed by saved read-only SQL queries.");
|
|
10036
|
+
$[127] = t;
|
|
10037
|
+
$[128] = t46;
|
|
9867
10038
|
} else {
|
|
9868
|
-
t46 = $[
|
|
10039
|
+
t46 = $[128];
|
|
9869
10040
|
}
|
|
9870
10041
|
let t47;
|
|
9871
|
-
if ($[
|
|
9872
|
-
t47 = t("
|
|
9873
|
-
$[
|
|
9874
|
-
$[
|
|
10042
|
+
if ($[129] !== t) {
|
|
10043
|
+
t47 = t("Browse and edit rows across your shard and global tables.");
|
|
10044
|
+
$[129] = t;
|
|
10045
|
+
$[130] = t47;
|
|
9875
10046
|
} else {
|
|
9876
|
-
t47 = $[
|
|
10047
|
+
t47 = $[130];
|
|
9877
10048
|
}
|
|
9878
10049
|
let t48;
|
|
9879
|
-
if ($[
|
|
9880
|
-
t48 = t("
|
|
9881
|
-
$[
|
|
9882
|
-
$[
|
|
10050
|
+
if ($[131] !== t) {
|
|
10051
|
+
t48 = t("Forward logs to Logpush, Tail Workers, or a webhook collector.");
|
|
10052
|
+
$[131] = t;
|
|
10053
|
+
$[132] = t48;
|
|
9883
10054
|
} else {
|
|
9884
|
-
t48 = $[
|
|
10055
|
+
t48 = $[132];
|
|
9885
10056
|
}
|
|
9886
10057
|
let t49;
|
|
9887
|
-
if ($[
|
|
9888
|
-
t49 = t("
|
|
9889
|
-
$[
|
|
9890
|
-
$[
|
|
10058
|
+
if ($[133] !== t) {
|
|
10059
|
+
t49 = t("Export a shard to NDJSON, or import rows from it.");
|
|
10060
|
+
$[133] = t;
|
|
10061
|
+
$[134] = t49;
|
|
9891
10062
|
} else {
|
|
9892
|
-
t49 = $[
|
|
10063
|
+
t49 = $[134];
|
|
9893
10064
|
}
|
|
9894
10065
|
let t50;
|
|
9895
|
-
if ($[
|
|
9896
|
-
t50 = t("
|
|
9897
|
-
$[
|
|
9898
|
-
$[
|
|
10066
|
+
if ($[135] !== t) {
|
|
10067
|
+
t50 = t("Browse objects in your R2 storage buckets.");
|
|
10068
|
+
$[135] = t;
|
|
10069
|
+
$[136] = t50;
|
|
9899
10070
|
} else {
|
|
9900
|
-
t50 = $[
|
|
10071
|
+
t50 = $[136];
|
|
9901
10072
|
}
|
|
9902
10073
|
let t51;
|
|
9903
|
-
if ($[
|
|
9904
|
-
t51 = t("
|
|
9905
|
-
$[
|
|
9906
|
-
$[
|
|
10074
|
+
if ($[137] !== t) {
|
|
10075
|
+
t51 = t("Inspect feature flags and their live evaluation under a targeting context.");
|
|
10076
|
+
$[137] = t;
|
|
10077
|
+
$[138] = t51;
|
|
9907
10078
|
} else {
|
|
9908
|
-
t51 = $[
|
|
10079
|
+
t51 = $[138];
|
|
9909
10080
|
}
|
|
9910
10081
|
let t52;
|
|
9911
|
-
if ($[
|
|
9912
|
-
t52 = t("
|
|
9913
|
-
$[
|
|
9914
|
-
$[
|
|
10082
|
+
if ($[139] !== t) {
|
|
10083
|
+
t52 = t("Run registered queries, mutations, and actions.");
|
|
10084
|
+
$[139] = t;
|
|
10085
|
+
$[140] = t52;
|
|
9915
10086
|
} else {
|
|
9916
|
-
t52 = $[
|
|
10087
|
+
t52 = $[140];
|
|
9917
10088
|
}
|
|
9918
10089
|
let t53;
|
|
9919
|
-
if ($[
|
|
9920
|
-
t53 = t("
|
|
9921
|
-
$[
|
|
9922
|
-
$[
|
|
10090
|
+
if ($[141] !== t) {
|
|
10091
|
+
t53 = t("At-a-glance connection, error, and shard signals.");
|
|
10092
|
+
$[141] = t;
|
|
10093
|
+
$[142] = t53;
|
|
9923
10094
|
} else {
|
|
9924
|
-
t53 = $[
|
|
10095
|
+
t53 = $[142];
|
|
9925
10096
|
}
|
|
9926
10097
|
let t54;
|
|
9927
|
-
if ($[
|
|
9928
|
-
t54 = t("
|
|
9929
|
-
$[
|
|
9930
|
-
$[
|
|
10098
|
+
if ($[143] !== t) {
|
|
10099
|
+
t54 = t("Connection, health, and advisor summary for your deployment.");
|
|
10100
|
+
$[143] = t;
|
|
10101
|
+
$[144] = t54;
|
|
9931
10102
|
} else {
|
|
9932
|
-
t54 = $[
|
|
10103
|
+
t54 = $[144];
|
|
9933
10104
|
}
|
|
9934
10105
|
let t55;
|
|
9935
|
-
if ($[
|
|
9936
|
-
t55 = t("
|
|
9937
|
-
$[
|
|
9938
|
-
$[
|
|
10106
|
+
if ($[145] !== t) {
|
|
10107
|
+
t55 = t("Surface slow functions, error spikes, and cache problems.");
|
|
10108
|
+
$[145] = t;
|
|
10109
|
+
$[146] = t55;
|
|
9939
10110
|
} else {
|
|
9940
|
-
t55 = $[
|
|
10111
|
+
t55 = $[146];
|
|
9941
10112
|
}
|
|
9942
10113
|
let t56;
|
|
9943
|
-
if ($[
|
|
9944
|
-
t56 = t("
|
|
9945
|
-
$[
|
|
9946
|
-
$[
|
|
10114
|
+
if ($[147] !== t) {
|
|
10115
|
+
t56 = t("A live stream of recent function logs.");
|
|
10116
|
+
$[147] = t;
|
|
10117
|
+
$[148] = t56;
|
|
9947
10118
|
} else {
|
|
9948
|
-
t56 = $[
|
|
10119
|
+
t56 = $[148];
|
|
9949
10120
|
}
|
|
9950
10121
|
let t57;
|
|
9951
|
-
if ($[
|
|
9952
|
-
t57 = t("
|
|
9953
|
-
$[
|
|
9954
|
-
$[
|
|
10122
|
+
if ($[149] !== t) {
|
|
10123
|
+
t57 = t("Per-shard health and aggregate metrics.");
|
|
10124
|
+
$[149] = t;
|
|
10125
|
+
$[150] = t57;
|
|
9955
10126
|
} else {
|
|
9956
|
-
t57 = $[
|
|
10127
|
+
t57 = $[150];
|
|
9957
10128
|
}
|
|
9958
10129
|
let t58;
|
|
9959
|
-
if ($[
|
|
9960
|
-
t58 = t("
|
|
9961
|
-
$[
|
|
9962
|
-
$[
|
|
10130
|
+
if ($[151] !== t) {
|
|
10131
|
+
t58 = t("Review migration status and run them.");
|
|
10132
|
+
$[151] = t;
|
|
10133
|
+
$[152] = t58;
|
|
9963
10134
|
} else {
|
|
9964
|
-
t58 = $[
|
|
10135
|
+
t58 = $[152];
|
|
9965
10136
|
}
|
|
9966
10137
|
let t59;
|
|
9967
|
-
if ($[
|
|
9968
|
-
t59 = t("
|
|
9969
|
-
$[
|
|
9970
|
-
$[
|
|
10138
|
+
if ($[153] !== t) {
|
|
10139
|
+
t59 = t("Browse and manage organizations, members, and invitations.");
|
|
10140
|
+
$[153] = t;
|
|
10141
|
+
$[154] = t59;
|
|
9971
10142
|
} else {
|
|
9972
|
-
t59 = $[
|
|
10143
|
+
t59 = $[154];
|
|
9973
10144
|
}
|
|
9974
10145
|
let t60;
|
|
9975
|
-
if ($[
|
|
9976
|
-
t60 = t("
|
|
9977
|
-
$[
|
|
9978
|
-
$[
|
|
10146
|
+
if ($[155] !== t) {
|
|
10147
|
+
t60 = t("Restore a shard to a point in the last 30 days.");
|
|
10148
|
+
$[155] = t;
|
|
10149
|
+
$[156] = t60;
|
|
9979
10150
|
} else {
|
|
9980
|
-
t60 = $[
|
|
10151
|
+
t60 = $[156];
|
|
9981
10152
|
}
|
|
9982
10153
|
let t61;
|
|
9983
|
-
if ($[
|
|
9984
|
-
t61 = t("
|
|
9985
|
-
$[
|
|
9986
|
-
$[
|
|
10154
|
+
if ($[157] !== t) {
|
|
10155
|
+
t61 = t("Email your app sent, captured in dev.");
|
|
10156
|
+
$[157] = t;
|
|
10157
|
+
$[158] = t61;
|
|
9987
10158
|
} else {
|
|
9988
|
-
t61 = $[
|
|
10159
|
+
t61 = $[158];
|
|
9989
10160
|
}
|
|
9990
10161
|
let t62;
|
|
9991
|
-
if ($[
|
|
9992
|
-
t62 = t("
|
|
9993
|
-
$[
|
|
9994
|
-
$[
|
|
10162
|
+
if ($[159] !== t) {
|
|
10163
|
+
t62 = t("Synced customers, subscriptions, and webhook events.");
|
|
10164
|
+
$[159] = t;
|
|
10165
|
+
$[160] = t62;
|
|
9995
10166
|
} else {
|
|
9996
|
-
t62 = $[
|
|
10167
|
+
t62 = $[160];
|
|
9997
10168
|
}
|
|
9998
10169
|
let t63;
|
|
9999
|
-
if ($[
|
|
10000
|
-
t63 = t("
|
|
10001
|
-
$[
|
|
10002
|
-
$[
|
|
10170
|
+
if ($[161] !== t) {
|
|
10171
|
+
t63 = t("Inspect access policies per table, and probe a function as any identity.");
|
|
10172
|
+
$[161] = t;
|
|
10173
|
+
$[162] = t63;
|
|
10003
10174
|
} else {
|
|
10004
|
-
t63 = $[
|
|
10175
|
+
t63 = $[162];
|
|
10005
10176
|
}
|
|
10006
10177
|
let t64;
|
|
10007
|
-
if ($[
|
|
10008
|
-
t64 = t("Inspect
|
|
10009
|
-
$[
|
|
10010
|
-
$[
|
|
10178
|
+
if ($[163] !== t) {
|
|
10179
|
+
t64 = t("Inspect declared Cloudflare Queues — their producer bindings, consumer mode, and dead-letter queue.");
|
|
10180
|
+
$[163] = t;
|
|
10181
|
+
$[164] = t64;
|
|
10011
10182
|
} else {
|
|
10012
|
-
t64 = $[
|
|
10183
|
+
t64 = $[164];
|
|
10013
10184
|
}
|
|
10014
10185
|
let t65;
|
|
10015
|
-
if ($[
|
|
10016
|
-
t65 = t("
|
|
10017
|
-
$[
|
|
10018
|
-
$[
|
|
10186
|
+
if ($[165] !== t) {
|
|
10187
|
+
t65 = t("Active WebSocket subscriptions on this shard.");
|
|
10188
|
+
$[165] = t;
|
|
10189
|
+
$[166] = t65;
|
|
10019
10190
|
} else {
|
|
10020
|
-
t65 = $[
|
|
10191
|
+
t65 = $[166];
|
|
10021
10192
|
}
|
|
10022
10193
|
let t66;
|
|
10023
|
-
if ($[
|
|
10024
|
-
t66 = t("Inspect
|
|
10025
|
-
$[
|
|
10026
|
-
$[
|
|
10194
|
+
if ($[167] !== t) {
|
|
10195
|
+
t66 = t("Inspect row-level-security policies and roles, per table.");
|
|
10196
|
+
$[167] = t;
|
|
10197
|
+
$[168] = t66;
|
|
10027
10198
|
} else {
|
|
10028
|
-
t66 = $[
|
|
10199
|
+
t66 = $[168];
|
|
10029
10200
|
}
|
|
10030
10201
|
let t67;
|
|
10031
|
-
if ($[
|
|
10032
|
-
t67 = t("
|
|
10033
|
-
$[
|
|
10034
|
-
$[
|
|
10202
|
+
if ($[169] !== t) {
|
|
10203
|
+
t67 = t("Inspect and cancel scheduled jobs.");
|
|
10204
|
+
$[169] = t;
|
|
10205
|
+
$[170] = t67;
|
|
10035
10206
|
} else {
|
|
10036
|
-
t67 = $[
|
|
10207
|
+
t67 = $[170];
|
|
10037
10208
|
}
|
|
10038
10209
|
let t68;
|
|
10039
|
-
if ($[
|
|
10040
|
-
t68 = t("
|
|
10041
|
-
$[
|
|
10042
|
-
$[
|
|
10210
|
+
if ($[171] !== t) {
|
|
10211
|
+
t68 = t("Inspect each table and its columns.");
|
|
10212
|
+
$[171] = t;
|
|
10213
|
+
$[172] = t68;
|
|
10043
10214
|
} else {
|
|
10044
|
-
t68 = $[
|
|
10215
|
+
t68 = $[172];
|
|
10045
10216
|
}
|
|
10046
10217
|
let t69;
|
|
10047
|
-
if ($[
|
|
10048
|
-
t69 = t("
|
|
10049
|
-
$[
|
|
10050
|
-
$[
|
|
10218
|
+
if ($[173] !== t) {
|
|
10219
|
+
t69 = t("Review admin gates, credentials, and log redaction.");
|
|
10220
|
+
$[173] = t;
|
|
10221
|
+
$[174] = t69;
|
|
10051
10222
|
} else {
|
|
10052
|
-
t69 = $[
|
|
10223
|
+
t69 = $[174];
|
|
10053
10224
|
}
|
|
10054
10225
|
let t70;
|
|
10055
|
-
if ($[
|
|
10056
|
-
t70 = t("
|
|
10057
|
-
$[
|
|
10058
|
-
$[
|
|
10226
|
+
if ($[175] !== t) {
|
|
10227
|
+
t70 = t("Read-only deployment config — vars, secrets, and bindings.");
|
|
10228
|
+
$[175] = t;
|
|
10229
|
+
$[176] = t70;
|
|
10059
10230
|
} else {
|
|
10060
|
-
t70 = $[
|
|
10231
|
+
t70 = $[176];
|
|
10061
10232
|
}
|
|
10062
10233
|
let t71;
|
|
10063
|
-
if ($[
|
|
10064
|
-
t71 = t("
|
|
10065
|
-
$[
|
|
10066
|
-
$[
|
|
10234
|
+
if ($[177] !== t) {
|
|
10235
|
+
t71 = t("Run read-only SQL against a shard.");
|
|
10236
|
+
$[177] = t;
|
|
10237
|
+
$[178] = t71;
|
|
10067
10238
|
} else {
|
|
10068
|
-
t71 = $[
|
|
10239
|
+
t71 = $[178];
|
|
10069
10240
|
}
|
|
10070
10241
|
let t72;
|
|
10071
|
-
if ($[
|
|
10072
|
-
t72 = t("
|
|
10073
|
-
$[
|
|
10074
|
-
$[
|
|
10242
|
+
if ($[179] !== t) {
|
|
10243
|
+
t72 = t("Inspect storage access rules — per bucket, operation, and key prefix.");
|
|
10244
|
+
$[179] = t;
|
|
10245
|
+
$[180] = t72;
|
|
10075
10246
|
} else {
|
|
10076
|
-
t72 = $[
|
|
10247
|
+
t72 = $[180];
|
|
10077
10248
|
}
|
|
10078
10249
|
let t73;
|
|
10079
|
-
if ($[
|
|
10080
|
-
t73 = t("
|
|
10081
|
-
$[
|
|
10082
|
-
$[
|
|
10250
|
+
if ($[181] !== t) {
|
|
10251
|
+
t73 = t("Manage auth users — roles, bans, sessions, and identity.");
|
|
10252
|
+
$[181] = t;
|
|
10253
|
+
$[182] = t73;
|
|
10083
10254
|
} else {
|
|
10084
|
-
t73 = $[
|
|
10255
|
+
t73 = $[182];
|
|
10085
10256
|
}
|
|
10086
10257
|
let t74;
|
|
10087
|
-
if ($[
|
|
10088
|
-
t74 =
|
|
10089
|
-
|
|
10090
|
-
|
|
10091
|
-
|
|
10092
|
-
|
|
10093
|
-
|
|
10094
|
-
dashboards: t45,
|
|
10095
|
-
data: t46,
|
|
10096
|
-
drains: t47,
|
|
10097
|
-
export: t48,
|
|
10098
|
-
files: t49,
|
|
10099
|
-
functions: t50,
|
|
10100
|
-
health: t51,
|
|
10101
|
-
home: t52,
|
|
10102
|
-
insights: t53,
|
|
10103
|
-
logs: t54,
|
|
10104
|
-
metrics: t55,
|
|
10105
|
-
migrations: t56,
|
|
10106
|
-
organizations: t57,
|
|
10107
|
-
pitr: t58,
|
|
10108
|
-
mail: t59,
|
|
10109
|
-
payments: t60,
|
|
10110
|
-
permissions: t61,
|
|
10111
|
-
queues: t62,
|
|
10112
|
-
realtime: t63,
|
|
10113
|
-
rls: t64,
|
|
10114
|
-
schedule: t65,
|
|
10115
|
-
schema: t66,
|
|
10116
|
-
security: t67,
|
|
10117
|
-
settings: t68,
|
|
10118
|
-
sql: t69,
|
|
10119
|
-
storageRules: t70,
|
|
10120
|
-
users: t71,
|
|
10121
|
-
vectors: t72,
|
|
10122
|
-
workflows: t73
|
|
10123
|
-
};
|
|
10124
|
-
$[182] = t40;
|
|
10125
|
-
$[183] = t41;
|
|
10126
|
-
$[184] = t42;
|
|
10127
|
-
$[185] = t43;
|
|
10128
|
-
$[186] = t44;
|
|
10129
|
-
$[187] = t45;
|
|
10130
|
-
$[188] = t46;
|
|
10131
|
-
$[189] = t47;
|
|
10132
|
-
$[190] = t48;
|
|
10133
|
-
$[191] = t49;
|
|
10134
|
-
$[192] = t50;
|
|
10135
|
-
$[193] = t51;
|
|
10136
|
-
$[194] = t52;
|
|
10137
|
-
$[195] = t53;
|
|
10138
|
-
$[196] = t54;
|
|
10139
|
-
$[197] = t55;
|
|
10140
|
-
$[198] = t56;
|
|
10141
|
-
$[199] = t57;
|
|
10142
|
-
$[200] = t58;
|
|
10143
|
-
$[201] = t59;
|
|
10144
|
-
$[202] = t60;
|
|
10145
|
-
$[203] = t61;
|
|
10146
|
-
$[204] = t62;
|
|
10147
|
-
$[205] = t63;
|
|
10148
|
-
$[206] = t64;
|
|
10149
|
-
$[207] = t65;
|
|
10150
|
-
$[208] = t66;
|
|
10151
|
-
$[209] = t67;
|
|
10152
|
-
$[210] = t68;
|
|
10153
|
-
$[211] = t69;
|
|
10154
|
-
$[212] = t70;
|
|
10155
|
-
$[213] = t71;
|
|
10156
|
-
$[214] = t72;
|
|
10157
|
-
$[215] = t73;
|
|
10158
|
-
$[216] = t74;
|
|
10159
|
-
} else {
|
|
10160
|
-
t74 = $[216];
|
|
10161
|
-
}
|
|
10162
|
-
const tabDescription = t74;
|
|
10258
|
+
if ($[183] !== t) {
|
|
10259
|
+
t74 = t("Browse Vectorize indexes and run similarity searches.");
|
|
10260
|
+
$[183] = t;
|
|
10261
|
+
$[184] = t74;
|
|
10262
|
+
} else {
|
|
10263
|
+
t74 = $[184];
|
|
10264
|
+
}
|
|
10163
10265
|
let t75;
|
|
10164
|
-
if ($[
|
|
10165
|
-
t75 = (
|
|
10266
|
+
if ($[185] !== t) {
|
|
10267
|
+
t75 = t("Inspect declared Cloudflare Workflows and their bindings.");
|
|
10268
|
+
$[185] = t;
|
|
10269
|
+
$[186] = t75;
|
|
10270
|
+
} else {
|
|
10271
|
+
t75 = $[186];
|
|
10272
|
+
}
|
|
10273
|
+
let t76;
|
|
10274
|
+
if ($[187] !== t41 || $[188] !== t42 || $[189] !== t43 || $[190] !== t44 || $[191] !== t45 || $[192] !== t46 || $[193] !== t47 || $[194] !== t48 || $[195] !== t49 || $[196] !== t50 || $[197] !== t51 || $[198] !== t52 || $[199] !== t53 || $[200] !== t54 || $[201] !== t55 || $[202] !== t56 || $[203] !== t57 || $[204] !== t58 || $[205] !== t59 || $[206] !== t60 || $[207] !== t61 || $[208] !== t62 || $[209] !== t63 || $[210] !== t64 || $[211] !== t65 || $[212] !== t66 || $[213] !== t67 || $[214] !== t68 || $[215] !== t69 || $[216] !== t70 || $[217] !== t71 || $[218] !== t72 || $[219] !== t73 || $[220] !== t74 || $[221] !== t75) {
|
|
10275
|
+
t76 = {
|
|
10276
|
+
analytics: t41,
|
|
10277
|
+
api: t42,
|
|
10278
|
+
audit: t43,
|
|
10279
|
+
authConfig: t44,
|
|
10280
|
+
authSessions: t45,
|
|
10281
|
+
dashboards: t46,
|
|
10282
|
+
data: t47,
|
|
10283
|
+
drains: t48,
|
|
10284
|
+
export: t49,
|
|
10285
|
+
files: t50,
|
|
10286
|
+
flags: t51,
|
|
10287
|
+
functions: t52,
|
|
10288
|
+
health: t53,
|
|
10289
|
+
home: t54,
|
|
10290
|
+
insights: t55,
|
|
10291
|
+
logs: t56,
|
|
10292
|
+
metrics: t57,
|
|
10293
|
+
migrations: t58,
|
|
10294
|
+
organizations: t59,
|
|
10295
|
+
pitr: t60,
|
|
10296
|
+
mail: t61,
|
|
10297
|
+
payments: t62,
|
|
10298
|
+
permissions: t63,
|
|
10299
|
+
queues: t64,
|
|
10300
|
+
realtime: t65,
|
|
10301
|
+
rls: t66,
|
|
10302
|
+
schedule: t67,
|
|
10303
|
+
schema: t68,
|
|
10304
|
+
security: t69,
|
|
10305
|
+
settings: t70,
|
|
10306
|
+
sql: t71,
|
|
10307
|
+
storageRules: t72,
|
|
10308
|
+
users: t73,
|
|
10309
|
+
vectors: t74,
|
|
10310
|
+
workflows: t75
|
|
10311
|
+
};
|
|
10312
|
+
$[187] = t41;
|
|
10313
|
+
$[188] = t42;
|
|
10314
|
+
$[189] = t43;
|
|
10315
|
+
$[190] = t44;
|
|
10316
|
+
$[191] = t45;
|
|
10317
|
+
$[192] = t46;
|
|
10318
|
+
$[193] = t47;
|
|
10319
|
+
$[194] = t48;
|
|
10320
|
+
$[195] = t49;
|
|
10321
|
+
$[196] = t50;
|
|
10322
|
+
$[197] = t51;
|
|
10323
|
+
$[198] = t52;
|
|
10324
|
+
$[199] = t53;
|
|
10325
|
+
$[200] = t54;
|
|
10326
|
+
$[201] = t55;
|
|
10327
|
+
$[202] = t56;
|
|
10328
|
+
$[203] = t57;
|
|
10329
|
+
$[204] = t58;
|
|
10330
|
+
$[205] = t59;
|
|
10331
|
+
$[206] = t60;
|
|
10332
|
+
$[207] = t61;
|
|
10333
|
+
$[208] = t62;
|
|
10334
|
+
$[209] = t63;
|
|
10335
|
+
$[210] = t64;
|
|
10336
|
+
$[211] = t65;
|
|
10337
|
+
$[212] = t66;
|
|
10338
|
+
$[213] = t67;
|
|
10339
|
+
$[214] = t68;
|
|
10340
|
+
$[215] = t69;
|
|
10341
|
+
$[216] = t70;
|
|
10342
|
+
$[217] = t71;
|
|
10343
|
+
$[218] = t72;
|
|
10344
|
+
$[219] = t73;
|
|
10345
|
+
$[220] = t74;
|
|
10346
|
+
$[221] = t75;
|
|
10347
|
+
$[222] = t76;
|
|
10348
|
+
} else {
|
|
10349
|
+
t76 = $[222];
|
|
10350
|
+
}
|
|
10351
|
+
const tabDescription = t76;
|
|
10352
|
+
let t77;
|
|
10353
|
+
if ($[223] !== navigate) {
|
|
10354
|
+
t77 = (event) => {
|
|
10166
10355
|
fireAndForget(navigate({
|
|
10167
10356
|
to: `/${event.currentTarget.dataset.tab ?? ""}`
|
|
10168
10357
|
}));
|
|
10169
10358
|
};
|
|
10170
|
-
$[
|
|
10171
|
-
$[
|
|
10359
|
+
$[223] = navigate;
|
|
10360
|
+
$[224] = t77;
|
|
10172
10361
|
} else {
|
|
10173
|
-
|
|
10362
|
+
t77 = $[224];
|
|
10174
10363
|
}
|
|
10175
|
-
const selectTab =
|
|
10176
|
-
let
|
|
10177
|
-
let
|
|
10178
|
-
if ($[
|
|
10179
|
-
|
|
10364
|
+
const selectTab = t77;
|
|
10365
|
+
let t78;
|
|
10366
|
+
let t79;
|
|
10367
|
+
if ($[225] !== current || $[226] !== tabLabel) {
|
|
10368
|
+
t78 = () => {
|
|
10180
10369
|
if (typeof document !== "undefined") {
|
|
10181
10370
|
document.title = `${tabLabel[current]} · lunora`;
|
|
10182
10371
|
}
|
|
10183
10372
|
};
|
|
10184
|
-
|
|
10185
|
-
$[
|
|
10186
|
-
$[
|
|
10187
|
-
$[
|
|
10188
|
-
$[
|
|
10373
|
+
t79 = [current, tabLabel];
|
|
10374
|
+
$[225] = current;
|
|
10375
|
+
$[226] = tabLabel;
|
|
10376
|
+
$[227] = t78;
|
|
10377
|
+
$[228] = t79;
|
|
10189
10378
|
} else {
|
|
10190
|
-
|
|
10191
|
-
|
|
10379
|
+
t78 = $[227];
|
|
10380
|
+
t79 = $[228];
|
|
10192
10381
|
}
|
|
10193
|
-
useEffect(
|
|
10382
|
+
useEffect(t78, t79);
|
|
10194
10383
|
const activeGroup = visibleGroups.find((group_1) => group_1.tabs.includes(current)) ?? NAV_GROUPS[0];
|
|
10195
10384
|
const commandItems = visibleGroups.flatMap((group_2) => group_2.tabs.map((tab_0) => ({
|
|
10196
10385
|
group: groupLabel[group_2.key],
|
|
@@ -10199,48 +10388,48 @@ const StudioLayout = () => {
|
|
|
10199
10388
|
})));
|
|
10200
10389
|
const chrome = use(StudioChromeContext);
|
|
10201
10390
|
const connected = chrome !== null && chrome.token !== "";
|
|
10202
|
-
let
|
|
10203
|
-
if ($[
|
|
10204
|
-
|
|
10391
|
+
let t80;
|
|
10392
|
+
if ($[229] !== commandItems) {
|
|
10393
|
+
t80 = /* @__PURE__ */ jsxDEV(CommandPalette, {
|
|
10205
10394
|
items: commandItems
|
|
10206
10395
|
}, void 0, false);
|
|
10207
|
-
$[
|
|
10208
|
-
$[
|
|
10396
|
+
$[229] = commandItems;
|
|
10397
|
+
$[230] = t80;
|
|
10209
10398
|
} else {
|
|
10210
|
-
|
|
10399
|
+
t80 = $[230];
|
|
10211
10400
|
}
|
|
10212
|
-
let
|
|
10213
|
-
if ($[
|
|
10214
|
-
|
|
10401
|
+
let t81;
|
|
10402
|
+
if ($[231] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10403
|
+
t81 = /* @__PURE__ */ jsxDEV(SidebarTrigger, {
|
|
10215
10404
|
className: "-ms-1"
|
|
10216
10405
|
}, void 0, false);
|
|
10217
|
-
$[
|
|
10406
|
+
$[231] = t81;
|
|
10218
10407
|
} else {
|
|
10219
|
-
|
|
10408
|
+
t81 = $[231];
|
|
10220
10409
|
}
|
|
10221
|
-
let
|
|
10222
|
-
if ($[
|
|
10223
|
-
|
|
10224
|
-
$[
|
|
10225
|
-
$[
|
|
10410
|
+
let t82;
|
|
10411
|
+
if ($[232] !== t) {
|
|
10412
|
+
t82 = t("Breadcrumb");
|
|
10413
|
+
$[232] = t;
|
|
10414
|
+
$[233] = t82;
|
|
10226
10415
|
} else {
|
|
10227
|
-
|
|
10416
|
+
t82 = $[233];
|
|
10228
10417
|
}
|
|
10229
|
-
const
|
|
10230
|
-
let
|
|
10231
|
-
if ($[
|
|
10232
|
-
|
|
10418
|
+
const t83 = groupLabel[activeGroup.key];
|
|
10419
|
+
let t84;
|
|
10420
|
+
if ($[234] !== t83) {
|
|
10421
|
+
t84 = /* @__PURE__ */ jsxDEV("span", {
|
|
10233
10422
|
className: "text-muted-foreground",
|
|
10234
|
-
children:
|
|
10423
|
+
children: t83
|
|
10235
10424
|
}, void 0, false);
|
|
10236
|
-
$[
|
|
10237
|
-
$[
|
|
10425
|
+
$[234] = t83;
|
|
10426
|
+
$[235] = t84;
|
|
10238
10427
|
} else {
|
|
10239
|
-
|
|
10428
|
+
t84 = $[235];
|
|
10240
10429
|
}
|
|
10241
|
-
let
|
|
10242
|
-
if ($[
|
|
10243
|
-
|
|
10430
|
+
let t85;
|
|
10431
|
+
if ($[236] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10432
|
+
t85 = /* @__PURE__ */ jsxDEV("svg", {
|
|
10244
10433
|
"aria-hidden": "true",
|
|
10245
10434
|
className: "size-3.5 text-muted-foreground/60",
|
|
10246
10435
|
fill: "none",
|
|
@@ -10253,39 +10442,39 @@ const StudioLayout = () => {
|
|
|
10253
10442
|
strokeLinejoin: "round"
|
|
10254
10443
|
}, void 0, false)
|
|
10255
10444
|
}, void 0, false);
|
|
10256
|
-
$[
|
|
10445
|
+
$[236] = t85;
|
|
10257
10446
|
} else {
|
|
10258
|
-
|
|
10447
|
+
t85 = $[236];
|
|
10259
10448
|
}
|
|
10260
|
-
const
|
|
10261
|
-
let
|
|
10262
|
-
if ($[
|
|
10263
|
-
|
|
10449
|
+
const t86 = tabLabel[current];
|
|
10450
|
+
let t87;
|
|
10451
|
+
if ($[237] !== t86) {
|
|
10452
|
+
t87 = /* @__PURE__ */ jsxDEV("span", {
|
|
10264
10453
|
className: "font-medium text-foreground",
|
|
10265
|
-
children:
|
|
10454
|
+
children: t86
|
|
10266
10455
|
}, void 0, false);
|
|
10267
|
-
$[
|
|
10268
|
-
$[
|
|
10456
|
+
$[237] = t86;
|
|
10457
|
+
$[238] = t87;
|
|
10269
10458
|
} else {
|
|
10270
|
-
|
|
10459
|
+
t87 = $[238];
|
|
10271
10460
|
}
|
|
10272
|
-
let
|
|
10273
|
-
if ($[
|
|
10274
|
-
|
|
10275
|
-
"aria-label":
|
|
10461
|
+
let t88;
|
|
10462
|
+
if ($[239] !== t82 || $[240] !== t84 || $[241] !== t87) {
|
|
10463
|
+
t88 = /* @__PURE__ */ jsxDEV("nav", {
|
|
10464
|
+
"aria-label": t82,
|
|
10276
10465
|
className: "flex items-center gap-1.5 text-[13px]",
|
|
10277
|
-
children: [
|
|
10466
|
+
children: [t84, t85, t87]
|
|
10278
10467
|
}, void 0, true);
|
|
10279
|
-
$[
|
|
10280
|
-
$[
|
|
10281
|
-
$[
|
|
10282
|
-
$[
|
|
10468
|
+
$[239] = t82;
|
|
10469
|
+
$[240] = t84;
|
|
10470
|
+
$[241] = t87;
|
|
10471
|
+
$[242] = t88;
|
|
10283
10472
|
} else {
|
|
10284
|
-
|
|
10473
|
+
t88 = $[242];
|
|
10285
10474
|
}
|
|
10286
|
-
let
|
|
10287
|
-
if ($[
|
|
10288
|
-
|
|
10475
|
+
let t89;
|
|
10476
|
+
if ($[243] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10477
|
+
t89 = /* @__PURE__ */ jsxDEV("svg", {
|
|
10289
10478
|
"aria-hidden": "true",
|
|
10290
10479
|
className: "size-3.5",
|
|
10291
10480
|
fill: "none",
|
|
@@ -10301,164 +10490,164 @@ const StudioLayout = () => {
|
|
|
10301
10490
|
strokeLinecap: "round"
|
|
10302
10491
|
}, void 0, false)]
|
|
10303
10492
|
}, void 0, true);
|
|
10304
|
-
$[
|
|
10493
|
+
$[243] = t89;
|
|
10305
10494
|
} else {
|
|
10306
|
-
|
|
10495
|
+
t89 = $[243];
|
|
10307
10496
|
}
|
|
10308
|
-
let
|
|
10309
|
-
if ($[
|
|
10310
|
-
|
|
10311
|
-
$[
|
|
10312
|
-
$[
|
|
10497
|
+
let t90;
|
|
10498
|
+
if ($[244] !== t) {
|
|
10499
|
+
t90 = t("Search…");
|
|
10500
|
+
$[244] = t;
|
|
10501
|
+
$[245] = t90;
|
|
10313
10502
|
} else {
|
|
10314
|
-
|
|
10503
|
+
t90 = $[245];
|
|
10315
10504
|
}
|
|
10316
|
-
let
|
|
10317
|
-
if ($[
|
|
10318
|
-
|
|
10505
|
+
let t91;
|
|
10506
|
+
if ($[246] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10507
|
+
t91 = /* @__PURE__ */ jsxDEV("kbd", {
|
|
10319
10508
|
className: "ms-auto rounded border border-border bg-background px-1 font-sans text-[10px] text-muted-foreground",
|
|
10320
10509
|
children: "⌘K"
|
|
10321
10510
|
}, void 0, false);
|
|
10322
|
-
$[
|
|
10511
|
+
$[246] = t91;
|
|
10323
10512
|
} else {
|
|
10324
|
-
|
|
10513
|
+
t91 = $[246];
|
|
10325
10514
|
}
|
|
10326
|
-
let
|
|
10327
|
-
if ($[
|
|
10328
|
-
|
|
10515
|
+
let t92;
|
|
10516
|
+
if ($[247] !== t90) {
|
|
10517
|
+
t92 = /* @__PURE__ */ jsxDEV("button", {
|
|
10329
10518
|
className: "mx-auto hidden h-8 w-72 items-center gap-2 rounded-lg border border-border bg-muted/40 px-3 text-xs text-muted-foreground transition-colors hover:bg-muted md:flex",
|
|
10330
10519
|
"data-testid": "dash-app-search",
|
|
10331
10520
|
onClick: openCommandPalette,
|
|
10332
10521
|
type: "button",
|
|
10333
|
-
children: [
|
|
10522
|
+
children: [t89, t90, t91]
|
|
10334
10523
|
}, void 0, true);
|
|
10335
|
-
$[
|
|
10336
|
-
$[
|
|
10524
|
+
$[247] = t90;
|
|
10525
|
+
$[248] = t92;
|
|
10337
10526
|
} else {
|
|
10338
|
-
|
|
10527
|
+
t92 = $[248];
|
|
10339
10528
|
}
|
|
10340
|
-
let
|
|
10341
|
-
if ($[
|
|
10342
|
-
|
|
10529
|
+
let t93;
|
|
10530
|
+
if ($[249] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10531
|
+
t93 = /* @__PURE__ */ jsxDEV("div", {
|
|
10343
10532
|
className: "ms-auto flex items-center gap-1.5 md:ms-0",
|
|
10344
10533
|
children: /* @__PURE__ */ jsxDEV(ThemeToggle, {}, void 0, false)
|
|
10345
10534
|
}, void 0, false);
|
|
10346
|
-
$[
|
|
10535
|
+
$[249] = t93;
|
|
10347
10536
|
} else {
|
|
10348
|
-
|
|
10537
|
+
t93 = $[249];
|
|
10349
10538
|
}
|
|
10350
|
-
let
|
|
10351
|
-
if ($[
|
|
10352
|
-
|
|
10539
|
+
let t94;
|
|
10540
|
+
if ($[250] !== t88 || $[251] !== t92) {
|
|
10541
|
+
t94 = /* @__PURE__ */ jsxDEV("header", {
|
|
10353
10542
|
className: "flex h-11 shrink-0 items-center gap-2 border-b border-border px-4",
|
|
10354
10543
|
"data-testid": "dash-app-header",
|
|
10355
|
-
children: [
|
|
10544
|
+
children: [t81, t88, t92, t93]
|
|
10356
10545
|
}, void 0, true);
|
|
10357
|
-
$[
|
|
10358
|
-
$[
|
|
10359
|
-
$[
|
|
10546
|
+
$[250] = t88;
|
|
10547
|
+
$[251] = t92;
|
|
10548
|
+
$[252] = t94;
|
|
10360
10549
|
} else {
|
|
10361
|
-
|
|
10550
|
+
t94 = $[252];
|
|
10362
10551
|
}
|
|
10363
|
-
let
|
|
10364
|
-
if ($[
|
|
10365
|
-
|
|
10366
|
-
$[
|
|
10367
|
-
$[
|
|
10368
|
-
} else {
|
|
10369
|
-
t93 = $[248];
|
|
10370
|
-
}
|
|
10371
|
-
const t94 = `dash-tab-${current}`;
|
|
10372
|
-
const t95 = fullHeight ? "flex min-w-0 flex-1 flex-col overflow-hidden" : "min-w-0 flex-1 overflow-auto p-6";
|
|
10373
|
-
const t96 = tabLabel[current];
|
|
10374
|
-
let t97;
|
|
10375
|
-
if ($[249] !== t || $[250] !== t96) {
|
|
10376
|
-
t97 = t("{title} failed", {
|
|
10377
|
-
title: t96
|
|
10378
|
-
});
|
|
10379
|
-
$[249] = t;
|
|
10380
|
-
$[250] = t96;
|
|
10381
|
-
$[251] = t97;
|
|
10552
|
+
let t95;
|
|
10553
|
+
if ($[253] !== chrome?.rulesInstalled) {
|
|
10554
|
+
t95 = chrome?.rulesInstalled === false && /* @__PURE__ */ jsxDEV(RulesBanner, {}, void 0, false);
|
|
10555
|
+
$[253] = chrome?.rulesInstalled;
|
|
10556
|
+
$[254] = t95;
|
|
10382
10557
|
} else {
|
|
10383
|
-
|
|
10558
|
+
t95 = $[254];
|
|
10384
10559
|
}
|
|
10560
|
+
const t96 = `dash-tab-${current}`;
|
|
10561
|
+
const t97 = fullHeight ? "flex min-w-0 flex-1 flex-col overflow-hidden" : "min-w-0 flex-1 overflow-auto p-6";
|
|
10385
10562
|
const t98 = tabLabel[current];
|
|
10386
10563
|
let t99;
|
|
10387
|
-
if ($[
|
|
10388
|
-
t99 = t("
|
|
10389
|
-
|
|
10390
|
-
|
|
10391
|
-
|
|
10392
|
-
|
|
10393
|
-
|
|
10394
|
-
let t100;
|
|
10395
|
-
if ($[254] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10396
|
-
t100 = /* @__PURE__ */ jsxDEV(Outlet, {}, void 0, false);
|
|
10397
|
-
$[254] = t100;
|
|
10564
|
+
if ($[255] !== t || $[256] !== t98) {
|
|
10565
|
+
t99 = t("{title} failed", {
|
|
10566
|
+
title: t98
|
|
10567
|
+
});
|
|
10568
|
+
$[255] = t;
|
|
10569
|
+
$[256] = t98;
|
|
10570
|
+
$[257] = t99;
|
|
10398
10571
|
} else {
|
|
10399
|
-
|
|
10572
|
+
t99 = $[257];
|
|
10400
10573
|
}
|
|
10574
|
+
const t100 = tabLabel[current];
|
|
10401
10575
|
let t101;
|
|
10402
|
-
if ($[
|
|
10403
|
-
t101 =
|
|
10404
|
-
|
|
10405
|
-
label: t98,
|
|
10406
|
-
retryLabel: t99,
|
|
10407
|
-
children: t100
|
|
10408
|
-
}, current, false);
|
|
10409
|
-
$[255] = current;
|
|
10410
|
-
$[256] = t97;
|
|
10411
|
-
$[257] = t98;
|
|
10412
|
-
$[258] = t99;
|
|
10576
|
+
if ($[258] !== t) {
|
|
10577
|
+
t101 = t("Try again");
|
|
10578
|
+
$[258] = t;
|
|
10413
10579
|
$[259] = t101;
|
|
10414
10580
|
} else {
|
|
10415
10581
|
t101 = $[259];
|
|
10416
10582
|
}
|
|
10417
10583
|
let t102;
|
|
10418
|
-
if ($[260]
|
|
10419
|
-
t102 = /* @__PURE__ */ jsxDEV(
|
|
10420
|
-
|
|
10421
|
-
children: t101
|
|
10422
|
-
}, void 0, false);
|
|
10423
|
-
$[260] = t101;
|
|
10424
|
-
$[261] = t95;
|
|
10425
|
-
$[262] = t102;
|
|
10584
|
+
if ($[260] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
|
|
10585
|
+
t102 = /* @__PURE__ */ jsxDEV(Outlet, {}, void 0, false);
|
|
10586
|
+
$[260] = t102;
|
|
10426
10587
|
} else {
|
|
10427
|
-
t102 = $[
|
|
10588
|
+
t102 = $[260];
|
|
10428
10589
|
}
|
|
10429
10590
|
let t103;
|
|
10430
|
-
if ($[263] !==
|
|
10431
|
-
t103 = /* @__PURE__ */ jsxDEV(
|
|
10432
|
-
|
|
10591
|
+
if ($[261] !== current || $[262] !== t100 || $[263] !== t101 || $[264] !== t99) {
|
|
10592
|
+
t103 = /* @__PURE__ */ jsxDEV(ErrorBoundary, {
|
|
10593
|
+
fallbackTitle: t99,
|
|
10594
|
+
label: t100,
|
|
10595
|
+
retryLabel: t101,
|
|
10596
|
+
children: t102
|
|
10597
|
+
}, current, false);
|
|
10598
|
+
$[261] = current;
|
|
10599
|
+
$[262] = t100;
|
|
10600
|
+
$[263] = t101;
|
|
10601
|
+
$[264] = t99;
|
|
10602
|
+
$[265] = t103;
|
|
10603
|
+
} else {
|
|
10604
|
+
t103 = $[265];
|
|
10605
|
+
}
|
|
10606
|
+
let t104;
|
|
10607
|
+
if ($[266] !== t103 || $[267] !== t97) {
|
|
10608
|
+
t104 = /* @__PURE__ */ jsxDEV("div", {
|
|
10609
|
+
className: t97,
|
|
10610
|
+
children: t103
|
|
10611
|
+
}, void 0, false);
|
|
10612
|
+
$[266] = t103;
|
|
10613
|
+
$[267] = t97;
|
|
10614
|
+
$[268] = t104;
|
|
10615
|
+
} else {
|
|
10616
|
+
t104 = $[268];
|
|
10617
|
+
}
|
|
10618
|
+
let t105;
|
|
10619
|
+
if ($[269] !== t104 || $[270] !== t96) {
|
|
10620
|
+
t105 = /* @__PURE__ */ jsxDEV("div", {
|
|
10621
|
+
"aria-labelledby": t96,
|
|
10433
10622
|
className: "flex min-w-0 flex-1 flex-col overflow-hidden",
|
|
10434
10623
|
"data-testid": "dash-panel",
|
|
10435
10624
|
id: "dash-panel",
|
|
10436
10625
|
role: "tabpanel",
|
|
10437
|
-
children:
|
|
10626
|
+
children: t104
|
|
10438
10627
|
}, void 0, false);
|
|
10439
|
-
$[
|
|
10440
|
-
$[
|
|
10441
|
-
$[
|
|
10628
|
+
$[269] = t104;
|
|
10629
|
+
$[270] = t96;
|
|
10630
|
+
$[271] = t105;
|
|
10442
10631
|
} else {
|
|
10443
|
-
|
|
10632
|
+
t105 = $[271];
|
|
10444
10633
|
}
|
|
10445
|
-
let
|
|
10446
|
-
if ($[
|
|
10447
|
-
|
|
10634
|
+
let t106;
|
|
10635
|
+
if ($[272] !== t105 || $[273] !== t94 || $[274] !== t95) {
|
|
10636
|
+
t106 = /* @__PURE__ */ jsxDEV(SidebarInset, {
|
|
10448
10637
|
className: "overflow-hidden md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm",
|
|
10449
|
-
children: [
|
|
10638
|
+
children: [t94, t95, t105]
|
|
10450
10639
|
}, void 0, true);
|
|
10451
|
-
$[
|
|
10452
|
-
$[
|
|
10453
|
-
$[
|
|
10454
|
-
$[
|
|
10640
|
+
$[272] = t105;
|
|
10641
|
+
$[273] = t94;
|
|
10642
|
+
$[274] = t95;
|
|
10643
|
+
$[275] = t106;
|
|
10455
10644
|
} else {
|
|
10456
|
-
|
|
10645
|
+
t106 = $[275];
|
|
10457
10646
|
}
|
|
10458
10647
|
return /* @__PURE__ */ jsxDEV(SidebarProvider, {
|
|
10459
10648
|
className: "min-h-0 flex-1",
|
|
10460
10649
|
"data-testid": "lunora-studio",
|
|
10461
|
-
children: [
|
|
10650
|
+
children: [t80, /* @__PURE__ */ jsxDEV(StudioSidebar, {
|
|
10462
10651
|
chrome,
|
|
10463
10652
|
connected,
|
|
10464
10653
|
current,
|
|
@@ -10467,7 +10656,7 @@ const StudioLayout = () => {
|
|
|
10467
10656
|
selectTab,
|
|
10468
10657
|
tabDescription,
|
|
10469
10658
|
tabLabel
|
|
10470
|
-
}, void 0, false),
|
|
10659
|
+
}, void 0, false), t106]
|
|
10471
10660
|
}, void 0, true);
|
|
10472
10661
|
};
|
|
10473
10662
|
const RoutePending = () => {
|
|
@@ -10594,6 +10783,9 @@ const buildRouter = ({
|
|
|
10594
10783
|
initialShardKey
|
|
10595
10784
|
}, void 0, false),
|
|
10596
10785
|
files: /* @__PURE__ */ jsxDEV(FileBrowser, {}, void 0, false),
|
|
10786
|
+
flags: /* @__PURE__ */ jsxDEV(FlagsPanel, {
|
|
10787
|
+
initialShardKey
|
|
10788
|
+
}, void 0, false),
|
|
10597
10789
|
functions: /* @__PURE__ */ jsxDEV("div", {
|
|
10598
10790
|
className: "flex flex-col gap-8",
|
|
10599
10791
|
children: [/* @__PURE__ */ jsxDEV(FunctionStatsPanel, {
|