@burdenoff/microfe-cosmicintersection 2026.704.2 → 2026.704.3
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/cosmicintersection/CosmicIntersectionRoutes.js +39 -27
- package/dist/cosmicintersection/CosmicIntersectionRoutes.js.map +1 -1
- package/dist/cosmicintersection/api/cosmicApi.js +6 -0
- package/dist/cosmicintersection/api/cosmicApi.js.map +1 -1
- package/dist/cosmicintersection/components/FacetPanel.js +66 -0
- package/dist/cosmicintersection/components/FacetPanel.js.map +1 -0
- package/dist/cosmicintersection/components/LineageGraph.js +388 -0
- package/dist/cosmicintersection/components/LineageGraph.js.map +1 -0
- package/dist/cosmicintersection/components/ResultsChart.js +329 -0
- package/dist/cosmicintersection/components/ResultsChart.js.map +1 -0
- package/dist/cosmicintersection/components/StepDAG.js +104 -0
- package/dist/cosmicintersection/components/StepDAG.js.map +1 -0
- package/dist/cosmicintersection/pages/access/AccessPage.js +207 -155
- package/dist/cosmicintersection/pages/access/AccessPage.js.map +1 -1
- package/dist/cosmicintersection/pages/analyses/AnalysesPage.js +325 -165
- package/dist/cosmicintersection/pages/analyses/AnalysesPage.js.map +1 -1
- package/dist/cosmicintersection/pages/collections/CollectionDetailPage.js +138 -93
- package/dist/cosmicintersection/pages/collections/CollectionDetailPage.js.map +1 -1
- package/dist/cosmicintersection/pages/collections/CollectionFormPage.js.map +1 -1
- package/dist/cosmicintersection/pages/dashboard/DashboardPage.js +26 -15
- package/dist/cosmicintersection/pages/dashboard/DashboardPage.js.map +1 -1
- package/dist/cosmicintersection/pages/datasets/DatasetDetailPage.js +345 -219
- package/dist/cosmicintersection/pages/datasets/DatasetDetailPage.js.map +1 -1
- package/dist/cosmicintersection/pages/datasets/DatasetsPage.js +321 -163
- package/dist/cosmicintersection/pages/datasets/DatasetsPage.js.map +1 -1
- package/dist/cosmicintersection/pages/discovery/DiscoveryPage.js +358 -0
- package/dist/cosmicintersection/pages/discovery/DiscoveryPage.js.map +1 -0
- package/dist/cosmicintersection/pages/lineage/LineagePage.js +171 -0
- package/dist/cosmicintersection/pages/lineage/LineagePage.js.map +1 -0
- package/dist/cosmicintersection/pages/notebooks/NotebookDetailPage.js +232 -162
- package/dist/cosmicintersection/pages/notebooks/NotebookDetailPage.js.map +1 -1
- package/dist/cosmicintersection/pages/notebooks/NotebooksPage.js +143 -82
- package/dist/cosmicintersection/pages/notebooks/NotebooksPage.js.map +1 -1
- package/dist/cosmicintersection/pages/pipelines/PipelineDetailPage.js +286 -142
- package/dist/cosmicintersection/pages/pipelines/PipelineDetailPage.js.map +1 -1
- package/dist/cosmicintersection/pages/pipelines/PipelineFormPage.js +305 -103
- package/dist/cosmicintersection/pages/pipelines/PipelineFormPage.js.map +1 -1
- package/dist/cosmicintersection/pages/pipelines/PipelinesPage.js +183 -79
- package/dist/cosmicintersection/pages/pipelines/PipelinesPage.js.map +1 -1
- package/dist/cosmicintersection/pages/releases/ReleasesPage.js +262 -170
- package/dist/cosmicintersection/pages/releases/ReleasesPage.js.map +1 -1
- package/dist/cosmicintersection/pages/runs/RunDetailPage.js +179 -136
- package/dist/cosmicintersection/pages/runs/RunDetailPage.js.map +1 -1
- package/dist/cosmicintersection/pages/runs/RunsPage.js +124 -47
- package/dist/cosmicintersection/pages/runs/RunsPage.js.map +1 -1
- package/dist/cosmicintersection/pages/sources/SourceDetailPage.js +114 -85
- package/dist/cosmicintersection/pages/sources/SourceDetailPage.js.map +1 -1
- package/dist/cosmicintersection/pages/sources/SourcesPage.js +263 -152
- package/dist/cosmicintersection/pages/sources/SourcesPage.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import { useCosmicIntersection as e } from "../../context/CosmicIntersectionContext.js";
|
|
2
2
|
import { notify as t } from "../../lib/toast.js";
|
|
3
|
-
import { useCosAddSchemaFieldMutation as n,
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import { useFileDownloadUrl as
|
|
12
|
-
import
|
|
13
|
-
import
|
|
3
|
+
import { useCosAddSchemaFieldMutation as n, useCosAnalysesQuery as r, useCosArchiveDatasetMutation as i, useCosDatasetQuery as ee, useCosNotebooksQuery as te, useCosPublishDatasetMutation as ne, useCosReleasesQuery as re, useCosRunsQuery as ie, useCosUpdateDatasetMutation as ae } from "../../api/cosmicApi.js";
|
|
4
|
+
import oe from "../../components/ActionMenu.js";
|
|
5
|
+
import a from "../../components/EmptyState.js";
|
|
6
|
+
import se from "../../components/ErrorState.js";
|
|
7
|
+
import o from "../../components/LoadingState.js";
|
|
8
|
+
import ce from "../../components/ActivityFeedPanel.js";
|
|
9
|
+
import le from "../../components/DiscussionPanel.js";
|
|
10
|
+
import ue from "../../components/EntityTagsField.js";
|
|
11
|
+
import { useFileDownloadUrl as de } from "../../components/FileUploadField.js";
|
|
12
|
+
import s from "../../components/PageLayout.js";
|
|
13
|
+
import c, { formatEnumLabel as l } from "../../components/StatusBadge.js";
|
|
14
14
|
import "../../components/index.js";
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
15
|
+
import fe, { buildDatasetLineage as pe } from "../../components/LineageGraph.js";
|
|
16
|
+
import { useMemo as me, useState as u } from "react";
|
|
17
|
+
import { Fragment as he, jsx as d, jsxs as f } from "react/jsx-runtime";
|
|
18
|
+
import { useParams as ge } from "react-router-dom";
|
|
19
|
+
import { ArrowRight as _e, Boxes as ve, Columns3 as p, Database as ye, Download as be, GitBranch as xe, History as Se, MessagesSquare as Ce, Pencil as we, Plus as Te, Radar as Ee, Share2 as De } from "lucide-react";
|
|
20
|
+
import { Badge as m, Button as h, Checkbox as Oe, Dialog as ke, DialogContent as Ae, DialogDescription as je, DialogFooter as Me, DialogHeader as Ne, DialogTitle as Pe, Input as g, Label as _, Select as Fe, SelectContent as Ie, SelectItem as Le, SelectTrigger as Re, SelectValue as ze, Table as Be, TableBody as Ve, TableCell as v, TableHead as y, TableHeader as He, TableRow as b, Textarea as Ue } from "@burdenoff/fe-libs/ui";
|
|
20
21
|
//#region src/cosmicintersection/pages/datasets/DatasetDetailPage.tsx
|
|
21
|
-
var
|
|
22
|
+
var We = [
|
|
22
23
|
"STRING",
|
|
23
24
|
"INTEGER",
|
|
24
25
|
"FLOAT",
|
|
@@ -30,7 +31,7 @@ var T = [
|
|
|
30
31
|
"IMAGE_REF",
|
|
31
32
|
"JSON"
|
|
32
33
|
];
|
|
33
|
-
function
|
|
34
|
+
function Ge(e) {
|
|
34
35
|
if (!e) return "—";
|
|
35
36
|
let t = Number(e);
|
|
36
37
|
if (!Number.isFinite(t) || t <= 0) return "—";
|
|
@@ -45,436 +46,561 @@ function ke(e) {
|
|
|
45
46
|
for (; r >= 1024 && i < n.length - 1;) r /= 1024, i += 1;
|
|
46
47
|
return `${r >= 10 || i === 0 ? Math.round(r) : r.toFixed(1)} ${n[i]}`;
|
|
47
48
|
}
|
|
48
|
-
function
|
|
49
|
+
function x(e) {
|
|
49
50
|
if (!e) return "—";
|
|
50
51
|
let t = new Date(e);
|
|
51
52
|
return Number.isNaN(t.getTime()) ? "—" : t.toLocaleString();
|
|
52
53
|
}
|
|
53
|
-
function
|
|
54
|
-
return /* @__PURE__ */
|
|
54
|
+
function S({ label: e, value: t }) {
|
|
55
|
+
return /* @__PURE__ */ f("div", {
|
|
55
56
|
className: "rounded-card border border-border-default bg-bg-elevated p-4",
|
|
56
|
-
children: [/* @__PURE__ */
|
|
57
|
+
children: [/* @__PURE__ */ d("p", {
|
|
57
58
|
className: "text-xs font-medium uppercase tracking-wide text-text-secondary",
|
|
58
59
|
children: e
|
|
59
|
-
}), /* @__PURE__ */
|
|
60
|
+
}), /* @__PURE__ */ d("div", {
|
|
60
61
|
className: "mt-1 text-sm text-text-primary",
|
|
61
62
|
children: t
|
|
62
63
|
})]
|
|
63
64
|
});
|
|
64
65
|
}
|
|
65
|
-
function
|
|
66
|
-
let { id:
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
66
|
+
function C() {
|
|
67
|
+
let { id: C = "" } = ge(), { navigate: w } = e(), { data: T, loading: Ke, error: qe, refetch: E } = ee(C), D = T?.cosDataset ?? null, O = de(D?.file?.id).data?.getFileDownloadUrl ?? null, [Je, { loading: Ye }] = ne(), [Xe] = i(), [Ze, { loading: k }] = ae(), [Qe, { loading: A }] = n(), j = r({ datasetId: C }), M = ie({ pagination: {
|
|
68
|
+
limit: 100,
|
|
69
|
+
offset: 0
|
|
70
|
+
} }), N = te({ pagination: {
|
|
71
|
+
limit: 100,
|
|
72
|
+
offset: 0
|
|
73
|
+
} }), P = re({ pagination: {
|
|
74
|
+
limit: 100,
|
|
75
|
+
offset: 0
|
|
76
|
+
} }), F = T?.cosDataset ?? null, I = me(() => {
|
|
77
|
+
if (!F) return {
|
|
78
|
+
nodes: [],
|
|
79
|
+
edges: []
|
|
80
|
+
};
|
|
81
|
+
let e = /* @__PURE__ */ new Map();
|
|
82
|
+
F.source && e.set(F.source.id, F.source);
|
|
83
|
+
let t = /* @__PURE__ */ new Map();
|
|
84
|
+
F.collection && t.set(F.collection.id, F.collection);
|
|
85
|
+
let n = {
|
|
86
|
+
datasetsById: new Map([[F.id, F]]),
|
|
87
|
+
sourcesById: e,
|
|
88
|
+
collectionsById: t,
|
|
89
|
+
runs: (M.data?.cosListRuns?.items ?? []).filter((e) => e.datasetId === F.id),
|
|
90
|
+
notebooks: (N.data?.cosListNotebooks?.items ?? []).filter((e) => e.datasetIds.includes(F.id)),
|
|
91
|
+
analyses: j.data?.cosListAnalyses ?? [],
|
|
92
|
+
releases: (P.data?.cosListReleases?.items ?? []).filter((e) => e.datasetIds.includes(F.id))
|
|
93
|
+
};
|
|
94
|
+
return pe(F.id, n);
|
|
95
|
+
}, [
|
|
96
|
+
F,
|
|
97
|
+
M.data,
|
|
98
|
+
N.data,
|
|
99
|
+
j.data,
|
|
100
|
+
P.data
|
|
101
|
+
]), $e = M.loading || N.loading || j.loading || P.loading, [L, R] = u([]), [et, tt] = u(null), z = D ? `${D.id}:${D.updatedAt}` : null;
|
|
102
|
+
z && z !== et && (tt(z), R(D?.tags ?? []));
|
|
103
|
+
let nt = D != null && (L.length !== D.tags.length || L.some((e, t) => e !== D.tags[t])), [rt, it] = u(!1), [B, V] = u(""), [H, U] = u("STRING"), [W, G] = u(""), [K, q] = u(""), [J, Y] = u(""), [X, Z] = u(!0), at = () => {
|
|
104
|
+
V(""), U("STRING"), G(""), q(""), Y(""), Z(!0);
|
|
105
|
+
}, Q = (e) => {
|
|
106
|
+
it(e), e || at();
|
|
72
107
|
};
|
|
73
|
-
if (
|
|
108
|
+
if (Ke) return /* @__PURE__ */ d(s, {
|
|
74
109
|
title: "Dataset",
|
|
75
110
|
backPath: "datasets",
|
|
76
|
-
children: /* @__PURE__ */
|
|
111
|
+
children: /* @__PURE__ */ d(o, { label: "Loading dataset…" })
|
|
77
112
|
});
|
|
78
|
-
if (
|
|
113
|
+
if (qe) return /* @__PURE__ */ d(s, {
|
|
79
114
|
title: "Dataset",
|
|
80
115
|
backPath: "datasets",
|
|
81
|
-
children: /* @__PURE__ */
|
|
116
|
+
children: /* @__PURE__ */ d(se, {
|
|
82
117
|
message: "We could not load this dataset.",
|
|
83
|
-
onRetry: () => void
|
|
118
|
+
onRetry: () => void E()
|
|
84
119
|
})
|
|
85
120
|
});
|
|
86
|
-
if (!
|
|
121
|
+
if (!D) return /* @__PURE__ */ d(s, {
|
|
87
122
|
title: "Dataset",
|
|
88
123
|
backPath: "datasets",
|
|
89
|
-
children: /* @__PURE__ */
|
|
90
|
-
icon:
|
|
124
|
+
children: /* @__PURE__ */ d(a, {
|
|
125
|
+
icon: ye,
|
|
91
126
|
title: "Dataset not found.",
|
|
92
127
|
description: "This dataset may have been removed or is outside your current scope.",
|
|
93
|
-
action: /* @__PURE__ */
|
|
128
|
+
action: /* @__PURE__ */ d(h, {
|
|
94
129
|
type: "button",
|
|
95
|
-
onClick: () =>
|
|
130
|
+
onClick: () => w("datasets"),
|
|
96
131
|
children: "Back to datasets"
|
|
97
132
|
})
|
|
98
133
|
})
|
|
99
134
|
});
|
|
100
|
-
let
|
|
101
|
-
(await
|
|
102
|
-
},
|
|
103
|
-
let e = await
|
|
135
|
+
let $ = [...D.schemaFields ?? []].sort((e, t) => e.position - t.position), ot = D.status !== "AVAILABLE" && D.status !== "ARCHIVED", st = async () => {
|
|
136
|
+
(await Je({ variables: { id: D.id } })).data?.cosPublishDataset && (t.success("Dataset published", `“${D.name}” is now available.`), await E());
|
|
137
|
+
}, ct = async () => {
|
|
138
|
+
let e = await Xe({ variables: { id: D.id } });
|
|
104
139
|
if (e.error) throw Error(e.error.message);
|
|
105
140
|
if (!e.data?.cosArchiveDataset) throw t.error("Could not archive dataset", "The server did not confirm the change."), Error("Archive not confirmed");
|
|
106
|
-
t.success("Dataset archived"),
|
|
107
|
-
},
|
|
108
|
-
(await
|
|
109
|
-
id:
|
|
110
|
-
input: { tags:
|
|
111
|
-
} })).data?.cosUpdateDataset && (t.success("Tags updated"), await
|
|
112
|
-
},
|
|
113
|
-
if (!
|
|
141
|
+
t.success("Dataset archived"), w("datasets");
|
|
142
|
+
}, lt = async () => {
|
|
143
|
+
(await Ze({ variables: {
|
|
144
|
+
id: D.id,
|
|
145
|
+
input: { tags: L }
|
|
146
|
+
} })).data?.cosUpdateDataset && (t.success("Tags updated"), await E());
|
|
147
|
+
}, ut = async () => {
|
|
148
|
+
if (!B.trim()) {
|
|
114
149
|
t.error("Field name is required");
|
|
115
150
|
return;
|
|
116
151
|
}
|
|
117
|
-
(await
|
|
118
|
-
datasetId:
|
|
119
|
-
name:
|
|
120
|
-
fieldType:
|
|
121
|
-
unit:
|
|
122
|
-
description:
|
|
123
|
-
provenance:
|
|
124
|
-
nullable:
|
|
125
|
-
} } })).data?.cosAddSchemaField && (t.success("Schema field added"),
|
|
152
|
+
(await Qe({ variables: { input: {
|
|
153
|
+
datasetId: D.id,
|
|
154
|
+
name: B.trim(),
|
|
155
|
+
fieldType: H,
|
|
156
|
+
unit: W.trim() || void 0,
|
|
157
|
+
description: K.trim() || void 0,
|
|
158
|
+
provenance: J.trim() || void 0,
|
|
159
|
+
nullable: X
|
|
160
|
+
} } })).data?.cosAddSchemaField && (t.success("Schema field added"), Q(!1), await E());
|
|
126
161
|
};
|
|
127
|
-
return /* @__PURE__ */
|
|
128
|
-
title:
|
|
129
|
-
description:
|
|
162
|
+
return /* @__PURE__ */ f(s, {
|
|
163
|
+
title: D.name,
|
|
164
|
+
description: D.description ?? void 0,
|
|
130
165
|
backPath: "datasets",
|
|
131
|
-
actions: /* @__PURE__ */
|
|
132
|
-
className: "flex items-center gap-2",
|
|
166
|
+
actions: /* @__PURE__ */ f("div", {
|
|
167
|
+
className: "flex flex-wrap items-center justify-end gap-2",
|
|
133
168
|
children: [
|
|
134
|
-
/* @__PURE__ */
|
|
169
|
+
/* @__PURE__ */ f(h, {
|
|
135
170
|
type: "button",
|
|
136
171
|
variant: "outline",
|
|
137
|
-
onClick: () =>
|
|
138
|
-
children: [/* @__PURE__ */
|
|
172
|
+
onClick: () => w(`datasets/${D.id}/edit`),
|
|
173
|
+
children: [/* @__PURE__ */ d(we, { className: "size-4" }), "Edit"]
|
|
139
174
|
}),
|
|
140
|
-
|
|
175
|
+
ot ? /* @__PURE__ */ d(h, {
|
|
141
176
|
type: "button",
|
|
142
|
-
onClick: () => void
|
|
143
|
-
disabled:
|
|
144
|
-
children:
|
|
177
|
+
onClick: () => void st(),
|
|
178
|
+
disabled: Ye,
|
|
179
|
+
children: Ye ? "Publishing…" : "Publish"
|
|
145
180
|
}) : null,
|
|
146
|
-
/* @__PURE__ */
|
|
147
|
-
ariaLabel: `Actions for ${
|
|
148
|
-
entityName:
|
|
149
|
-
onDelete: () =>
|
|
181
|
+
/* @__PURE__ */ d(oe, {
|
|
182
|
+
ariaLabel: `Actions for ${D.name}`,
|
|
183
|
+
entityName: D.name,
|
|
184
|
+
onDelete: () => ct(),
|
|
150
185
|
deleteLabel: "Archive dataset"
|
|
151
186
|
})
|
|
152
187
|
]
|
|
153
188
|
}),
|
|
154
|
-
children: [/* @__PURE__ */
|
|
189
|
+
children: [/* @__PURE__ */ f("div", {
|
|
155
190
|
className: "space-y-6",
|
|
156
191
|
children: [
|
|
157
|
-
/* @__PURE__ */
|
|
192
|
+
/* @__PURE__ */ f("div", {
|
|
158
193
|
className: "flex flex-wrap items-center gap-2",
|
|
159
194
|
children: [
|
|
160
|
-
/* @__PURE__ */
|
|
161
|
-
/* @__PURE__ */
|
|
162
|
-
status:
|
|
163
|
-
label:
|
|
195
|
+
/* @__PURE__ */ d(c, { status: D.status }),
|
|
196
|
+
/* @__PURE__ */ d(c, {
|
|
197
|
+
status: D.accessLevel,
|
|
198
|
+
label: l(D.accessLevel)
|
|
164
199
|
}),
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
200
|
+
/* @__PURE__ */ f("span", {
|
|
201
|
+
className: "inline-flex items-center gap-1.5 rounded-full border border-border-default bg-bg-elevated px-2.5 py-0.5 text-xs font-medium",
|
|
202
|
+
title: "Current dataset version",
|
|
203
|
+
children: [
|
|
204
|
+
/* @__PURE__ */ d(xe, {
|
|
205
|
+
className: "size-3.5 text-text-tertiary",
|
|
206
|
+
"aria-hidden": "true"
|
|
207
|
+
}),
|
|
208
|
+
/* @__PURE__ */ f("span", {
|
|
209
|
+
className: "text-text-primary",
|
|
210
|
+
children: ["v", D.version]
|
|
211
|
+
}),
|
|
212
|
+
/* @__PURE__ */ d("span", {
|
|
213
|
+
className: "text-text-tertiary",
|
|
214
|
+
children: "· current"
|
|
215
|
+
})
|
|
216
|
+
]
|
|
172
217
|
})
|
|
173
218
|
]
|
|
174
219
|
}),
|
|
175
|
-
/* @__PURE__ */
|
|
220
|
+
/* @__PURE__ */ f("div", {
|
|
176
221
|
className: "grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",
|
|
177
222
|
children: [
|
|
178
|
-
/* @__PURE__ */
|
|
223
|
+
/* @__PURE__ */ d(S, {
|
|
179
224
|
label: "Source",
|
|
180
|
-
value:
|
|
225
|
+
value: D.source ? /* @__PURE__ */ f("button", {
|
|
181
226
|
type: "button",
|
|
182
|
-
onClick: () =>
|
|
227
|
+
onClick: () => w(`sources/${D.source?.id}`),
|
|
183
228
|
className: "inline-flex items-center gap-1.5 text-text-primary underline-offset-2 hover:underline",
|
|
184
|
-
children: [/* @__PURE__ */
|
|
229
|
+
children: [/* @__PURE__ */ d(Ee, {
|
|
185
230
|
className: "size-4 text-text-secondary",
|
|
186
231
|
"aria-hidden": "true"
|
|
187
|
-
}),
|
|
188
|
-
}) : /* @__PURE__ */
|
|
232
|
+
}), D.source.name]
|
|
233
|
+
}) : /* @__PURE__ */ d("span", {
|
|
189
234
|
className: "text-text-secondary",
|
|
190
235
|
children: "Not linked"
|
|
191
236
|
})
|
|
192
237
|
}),
|
|
193
|
-
/* @__PURE__ */
|
|
238
|
+
/* @__PURE__ */ d(S, {
|
|
194
239
|
label: "Collection",
|
|
195
|
-
value:
|
|
240
|
+
value: D.collection ? /* @__PURE__ */ f("button", {
|
|
196
241
|
type: "button",
|
|
197
|
-
onClick: () =>
|
|
242
|
+
onClick: () => w(`collections/${D.collection?.id}`),
|
|
198
243
|
className: "inline-flex items-center gap-1.5 text-text-primary underline-offset-2 hover:underline",
|
|
199
|
-
children: [/* @__PURE__ */
|
|
244
|
+
children: [/* @__PURE__ */ d(ve, {
|
|
200
245
|
className: "size-4 text-text-secondary",
|
|
201
246
|
"aria-hidden": "true"
|
|
202
|
-
}),
|
|
203
|
-
}) : /* @__PURE__ */
|
|
247
|
+
}), D.collection.name]
|
|
248
|
+
}) : /* @__PURE__ */ d("span", {
|
|
204
249
|
className: "text-text-secondary",
|
|
205
250
|
children: "Not in a collection"
|
|
206
251
|
})
|
|
207
252
|
}),
|
|
208
|
-
/* @__PURE__ */
|
|
253
|
+
/* @__PURE__ */ d(S, {
|
|
209
254
|
label: "Format",
|
|
210
|
-
value: /* @__PURE__ */
|
|
255
|
+
value: /* @__PURE__ */ d("span", { children: D.format || "Not specified" })
|
|
211
256
|
}),
|
|
212
|
-
/* @__PURE__ */
|
|
257
|
+
/* @__PURE__ */ d(S, {
|
|
213
258
|
label: "Size",
|
|
214
|
-
value: /* @__PURE__ */
|
|
259
|
+
value: /* @__PURE__ */ f("span", {
|
|
215
260
|
className: "tabular-nums",
|
|
216
|
-
children: [
|
|
261
|
+
children: [Ge(D.sizeBytes), Number(D.rowCount) > 0 ? /* @__PURE__ */ f("span", {
|
|
217
262
|
className: "text-text-secondary",
|
|
218
263
|
children: [
|
|
219
264
|
" ",
|
|
220
265
|
"· ",
|
|
221
|
-
Number(
|
|
266
|
+
Number(D.rowCount).toLocaleString(),
|
|
222
267
|
" rows"
|
|
223
268
|
]
|
|
224
269
|
}) : null]
|
|
225
270
|
})
|
|
226
271
|
}),
|
|
227
|
-
/* @__PURE__ */
|
|
272
|
+
/* @__PURE__ */ d(S, {
|
|
228
273
|
label: "Ingested",
|
|
229
|
-
value: /* @__PURE__ */
|
|
274
|
+
value: /* @__PURE__ */ d("span", { children: x(D.ingestedAt) })
|
|
230
275
|
}),
|
|
231
|
-
/* @__PURE__ */
|
|
276
|
+
/* @__PURE__ */ d(S, {
|
|
232
277
|
label: "Created",
|
|
233
|
-
value: /* @__PURE__ */
|
|
278
|
+
value: /* @__PURE__ */ d("span", { children: x(D.createdAt) })
|
|
234
279
|
}),
|
|
235
|
-
/* @__PURE__ */
|
|
280
|
+
/* @__PURE__ */ d(S, {
|
|
236
281
|
label: "Updated",
|
|
237
|
-
value: /* @__PURE__ */
|
|
282
|
+
value: /* @__PURE__ */ d("span", { children: x(D.updatedAt) })
|
|
238
283
|
}),
|
|
239
|
-
/* @__PURE__ */
|
|
284
|
+
/* @__PURE__ */ d(S, {
|
|
240
285
|
label: "Artifact",
|
|
241
|
-
value:
|
|
242
|
-
href:
|
|
286
|
+
value: D.file ? O ? /* @__PURE__ */ f("a", {
|
|
287
|
+
href: O,
|
|
243
288
|
target: "_blank",
|
|
244
289
|
rel: "noopener noreferrer",
|
|
245
290
|
className: "inline-flex items-center gap-1.5 text-text-primary underline-offset-2 hover:underline",
|
|
246
|
-
children: [/* @__PURE__ */
|
|
291
|
+
children: [/* @__PURE__ */ d(be, {
|
|
247
292
|
className: "size-4",
|
|
248
293
|
"aria-hidden": "true"
|
|
249
294
|
}), "Download file"]
|
|
250
|
-
}) : /* @__PURE__ */
|
|
295
|
+
}) : /* @__PURE__ */ d("span", {
|
|
251
296
|
className: "text-text-secondary",
|
|
252
297
|
children: "Resolving link…"
|
|
253
|
-
}) : /* @__PURE__ */
|
|
298
|
+
}) : /* @__PURE__ */ d("span", {
|
|
254
299
|
className: "text-text-secondary",
|
|
255
300
|
children: "No file attached"
|
|
256
301
|
})
|
|
257
302
|
})
|
|
258
303
|
]
|
|
259
304
|
}),
|
|
260
|
-
/* @__PURE__ */
|
|
305
|
+
/* @__PURE__ */ f("section", {
|
|
261
306
|
className: "space-y-3",
|
|
262
|
-
children: [/* @__PURE__ */
|
|
307
|
+
children: [/* @__PURE__ */ f("div", {
|
|
263
308
|
className: "flex items-center justify-between gap-3",
|
|
264
|
-
children: [/* @__PURE__ */
|
|
309
|
+
children: [/* @__PURE__ */ f("div", {
|
|
265
310
|
className: "flex items-center gap-2",
|
|
266
|
-
children: [/* @__PURE__ */
|
|
311
|
+
children: [/* @__PURE__ */ d(De, {
|
|
267
312
|
className: "size-5 text-text-secondary",
|
|
268
313
|
"aria-hidden": "true"
|
|
269
|
-
}), /* @__PURE__ */
|
|
314
|
+
}), /* @__PURE__ */ d("h2", {
|
|
315
|
+
className: "text-lg font-semibold text-text-primary",
|
|
316
|
+
children: "Lineage"
|
|
317
|
+
})]
|
|
318
|
+
}), /* @__PURE__ */ f("button", {
|
|
319
|
+
type: "button",
|
|
320
|
+
onClick: () => w(`lineage/${D.id}`),
|
|
321
|
+
className: "inline-flex items-center gap-1 rounded-button text-sm font-medium text-text-link underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-border-focus",
|
|
322
|
+
children: ["View full lineage", /* @__PURE__ */ d(_e, {
|
|
323
|
+
className: "size-4",
|
|
324
|
+
"aria-hidden": "true"
|
|
325
|
+
})]
|
|
326
|
+
})]
|
|
327
|
+
}), $e && I.nodes.length <= 1 ? /* @__PURE__ */ d(o, { label: "Building lineage…" }) : I.nodes.length <= 1 ? /* @__PURE__ */ d("div", {
|
|
328
|
+
className: "rounded-card border border-dashed border-border-default bg-bg-sunken p-6 text-sm text-text-secondary",
|
|
329
|
+
children: "No upstream or downstream provenance is linked to this dataset yet. Connect a source, run a pipeline, attach a notebook, or publish a release to build its lineage."
|
|
330
|
+
}) : /* @__PURE__ */ d(fe, {
|
|
331
|
+
model: I,
|
|
332
|
+
mode: "compact",
|
|
333
|
+
onNavigate: w
|
|
334
|
+
})]
|
|
335
|
+
}),
|
|
336
|
+
/* @__PURE__ */ f("section", {
|
|
337
|
+
className: "space-y-3",
|
|
338
|
+
children: [/* @__PURE__ */ f("div", {
|
|
339
|
+
className: "flex items-center justify-between gap-3",
|
|
340
|
+
children: [/* @__PURE__ */ f("div", {
|
|
341
|
+
className: "flex items-center gap-2",
|
|
342
|
+
children: [/* @__PURE__ */ d(p, {
|
|
343
|
+
className: "size-5 text-text-secondary",
|
|
344
|
+
"aria-hidden": "true"
|
|
345
|
+
}), /* @__PURE__ */ d("h2", {
|
|
270
346
|
className: "text-lg font-semibold text-text-primary",
|
|
271
347
|
children: "Schema fields"
|
|
272
348
|
})]
|
|
273
|
-
}), /* @__PURE__ */
|
|
349
|
+
}), /* @__PURE__ */ f(h, {
|
|
274
350
|
type: "button",
|
|
275
351
|
variant: "outline",
|
|
276
352
|
size: "sm",
|
|
277
|
-
onClick: () =>
|
|
278
|
-
children: [/* @__PURE__ */
|
|
353
|
+
onClick: () => Q(!0),
|
|
354
|
+
children: [/* @__PURE__ */ d(Te, { className: "size-4" }), "Add field"]
|
|
279
355
|
})]
|
|
280
|
-
}),
|
|
281
|
-
icon:
|
|
356
|
+
}), $.length === 0 ? /* @__PURE__ */ d(a, {
|
|
357
|
+
icon: p,
|
|
282
358
|
title: "No schema fields yet.",
|
|
283
359
|
description: "Describe the columns in this dataset so consumers know what each field means."
|
|
284
|
-
}) : /* @__PURE__ */ f("div", {
|
|
285
|
-
className: "rounded-card border border-border-default bg-bg-elevated",
|
|
286
|
-
children: /* @__PURE__ */
|
|
287
|
-
/* @__PURE__ */
|
|
288
|
-
/* @__PURE__ */
|
|
289
|
-
/* @__PURE__ */
|
|
290
|
-
/* @__PURE__ */
|
|
291
|
-
/* @__PURE__ */
|
|
292
|
-
] }) }), /* @__PURE__ */
|
|
293
|
-
/* @__PURE__ */
|
|
360
|
+
}) : /* @__PURE__ */ f(he, { children: [/* @__PURE__ */ d("div", {
|
|
361
|
+
className: "hidden rounded-card border border-border-default bg-bg-elevated md:block",
|
|
362
|
+
children: /* @__PURE__ */ f(Be, { children: [/* @__PURE__ */ d(He, { children: /* @__PURE__ */ f(b, { children: [
|
|
363
|
+
/* @__PURE__ */ d(y, { children: "Name" }),
|
|
364
|
+
/* @__PURE__ */ d(y, { children: "Type" }),
|
|
365
|
+
/* @__PURE__ */ d(y, { children: "Unit" }),
|
|
366
|
+
/* @__PURE__ */ d(y, { children: "Nullable" }),
|
|
367
|
+
/* @__PURE__ */ d(y, { children: "Provenance" })
|
|
368
|
+
] }) }), /* @__PURE__ */ d(Ve, { children: $.map((e) => /* @__PURE__ */ f(b, { children: [
|
|
369
|
+
/* @__PURE__ */ f(v, { children: [/* @__PURE__ */ d("span", {
|
|
294
370
|
className: "font-medium text-text-primary",
|
|
295
371
|
children: e.name
|
|
296
|
-
}), e.description ? /* @__PURE__ */
|
|
372
|
+
}), e.description ? /* @__PURE__ */ d("p", {
|
|
297
373
|
className: "mt-0.5 line-clamp-1 max-w-xs text-xs text-text-secondary",
|
|
298
374
|
children: e.description
|
|
299
375
|
}) : null] }),
|
|
300
|
-
/* @__PURE__ */
|
|
376
|
+
/* @__PURE__ */ d(v, { children: /* @__PURE__ */ d(m, {
|
|
301
377
|
variant: "secondary",
|
|
302
|
-
children:
|
|
378
|
+
children: l(e.fieldType)
|
|
303
379
|
}) }),
|
|
304
|
-
/* @__PURE__ */
|
|
380
|
+
/* @__PURE__ */ d(v, {
|
|
305
381
|
className: "text-sm text-text-secondary",
|
|
306
382
|
children: e.unit || "—"
|
|
307
383
|
}),
|
|
308
|
-
/* @__PURE__ */
|
|
384
|
+
/* @__PURE__ */ d(v, {
|
|
309
385
|
className: "text-sm text-text-secondary",
|
|
310
386
|
children: e.nullable ? "Yes" : "No"
|
|
311
387
|
}),
|
|
312
|
-
/* @__PURE__ */
|
|
388
|
+
/* @__PURE__ */ d(v, {
|
|
313
389
|
className: "text-sm text-text-secondary",
|
|
314
390
|
children: e.provenance || "—"
|
|
315
391
|
})
|
|
316
392
|
] }, e.id)) })] })
|
|
317
|
-
})
|
|
393
|
+
}), /* @__PURE__ */ d("div", {
|
|
394
|
+
className: "space-y-2 md:hidden",
|
|
395
|
+
children: $.map((e) => /* @__PURE__ */ f("div", {
|
|
396
|
+
className: "rounded-card border border-border-default bg-bg-elevated p-3",
|
|
397
|
+
children: [
|
|
398
|
+
/* @__PURE__ */ f("div", {
|
|
399
|
+
className: "flex items-start justify-between gap-2",
|
|
400
|
+
children: [/* @__PURE__ */ d("span", {
|
|
401
|
+
className: "font-medium text-text-primary",
|
|
402
|
+
children: e.name
|
|
403
|
+
}), /* @__PURE__ */ d(m, {
|
|
404
|
+
variant: "secondary",
|
|
405
|
+
children: l(e.fieldType)
|
|
406
|
+
})]
|
|
407
|
+
}),
|
|
408
|
+
e.description ? /* @__PURE__ */ d("p", {
|
|
409
|
+
className: "mt-1 text-xs text-text-secondary",
|
|
410
|
+
children: e.description
|
|
411
|
+
}) : null,
|
|
412
|
+
/* @__PURE__ */ f("dl", {
|
|
413
|
+
className: "mt-2 grid grid-cols-2 gap-2 text-xs",
|
|
414
|
+
children: [
|
|
415
|
+
/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("dt", {
|
|
416
|
+
className: "text-text-tertiary",
|
|
417
|
+
children: "Unit"
|
|
418
|
+
}), /* @__PURE__ */ d("dd", {
|
|
419
|
+
className: "text-text-secondary",
|
|
420
|
+
children: e.unit || "—"
|
|
421
|
+
})] }),
|
|
422
|
+
/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("dt", {
|
|
423
|
+
className: "text-text-tertiary",
|
|
424
|
+
children: "Nullable"
|
|
425
|
+
}), /* @__PURE__ */ d("dd", {
|
|
426
|
+
className: "text-text-secondary",
|
|
427
|
+
children: e.nullable ? "Yes" : "No"
|
|
428
|
+
})] }),
|
|
429
|
+
/* @__PURE__ */ f("div", {
|
|
430
|
+
className: "col-span-2",
|
|
431
|
+
children: [/* @__PURE__ */ d("dt", {
|
|
432
|
+
className: "text-text-tertiary",
|
|
433
|
+
children: "Provenance"
|
|
434
|
+
}), /* @__PURE__ */ d("dd", {
|
|
435
|
+
className: "text-text-secondary",
|
|
436
|
+
children: e.provenance || "—"
|
|
437
|
+
})]
|
|
438
|
+
})
|
|
439
|
+
]
|
|
440
|
+
})
|
|
441
|
+
]
|
|
442
|
+
}, e.id))
|
|
443
|
+
})] })]
|
|
318
444
|
}),
|
|
319
|
-
/* @__PURE__ */
|
|
445
|
+
/* @__PURE__ */ f("section", {
|
|
320
446
|
className: "space-y-3 rounded-card border border-border-default bg-bg-elevated p-5",
|
|
321
|
-
children: [/* @__PURE__ */
|
|
322
|
-
value:
|
|
323
|
-
onChange:
|
|
447
|
+
children: [/* @__PURE__ */ d(ue, {
|
|
448
|
+
value: L,
|
|
449
|
+
onChange: R,
|
|
324
450
|
label: "Dataset tags"
|
|
325
|
-
}),
|
|
451
|
+
}), nt ? /* @__PURE__ */ d("div", {
|
|
326
452
|
className: "flex justify-end",
|
|
327
|
-
children: /* @__PURE__ */
|
|
453
|
+
children: /* @__PURE__ */ d(h, {
|
|
328
454
|
type: "button",
|
|
329
455
|
size: "sm",
|
|
330
|
-
onClick: () => void
|
|
331
|
-
disabled:
|
|
332
|
-
children:
|
|
456
|
+
onClick: () => void lt(),
|
|
457
|
+
disabled: k,
|
|
458
|
+
children: k ? "Saving…" : "Save tags"
|
|
333
459
|
})
|
|
334
460
|
}) : null]
|
|
335
461
|
}),
|
|
336
|
-
/* @__PURE__ */
|
|
462
|
+
/* @__PURE__ */ f("section", {
|
|
337
463
|
className: "space-y-3",
|
|
338
|
-
children: [/* @__PURE__ */
|
|
464
|
+
children: [/* @__PURE__ */ f("div", {
|
|
339
465
|
className: "flex items-center gap-2",
|
|
340
|
-
children: [/* @__PURE__ */
|
|
466
|
+
children: [/* @__PURE__ */ d(Se, {
|
|
341
467
|
className: "size-5 text-text-secondary",
|
|
342
468
|
"aria-hidden": "true"
|
|
343
|
-
}), /* @__PURE__ */
|
|
469
|
+
}), /* @__PURE__ */ d("h2", {
|
|
344
470
|
className: "text-lg font-semibold text-text-primary",
|
|
345
471
|
children: "Activity"
|
|
346
472
|
})]
|
|
347
|
-
}), /* @__PURE__ */
|
|
348
|
-
resourceId:
|
|
473
|
+
}), /* @__PURE__ */ d(ce, {
|
|
474
|
+
resourceId: D.id,
|
|
349
475
|
resourceType: "cosmicintersection-dataset"
|
|
350
476
|
})]
|
|
351
477
|
}),
|
|
352
|
-
/* @__PURE__ */
|
|
478
|
+
/* @__PURE__ */ f("section", {
|
|
353
479
|
className: "space-y-3",
|
|
354
|
-
children: [/* @__PURE__ */
|
|
480
|
+
children: [/* @__PURE__ */ f("div", {
|
|
355
481
|
className: "flex items-center gap-2",
|
|
356
|
-
children: [/* @__PURE__ */
|
|
482
|
+
children: [/* @__PURE__ */ d(Ce, {
|
|
357
483
|
className: "size-5 text-text-secondary",
|
|
358
484
|
"aria-hidden": "true"
|
|
359
|
-
}), /* @__PURE__ */
|
|
485
|
+
}), /* @__PURE__ */ d("h2", {
|
|
360
486
|
className: "text-lg font-semibold text-text-primary",
|
|
361
487
|
children: "Discussion"
|
|
362
488
|
})]
|
|
363
|
-
}), /* @__PURE__ */
|
|
489
|
+
}), /* @__PURE__ */ d(le, {
|
|
364
490
|
entityType: "cosmicintersection-dataset",
|
|
365
|
-
entityId:
|
|
366
|
-
title:
|
|
491
|
+
entityId: D.id,
|
|
492
|
+
title: D.name,
|
|
367
493
|
widgetKey: "dataset-discussion"
|
|
368
494
|
})]
|
|
369
495
|
})
|
|
370
496
|
]
|
|
371
|
-
}), /* @__PURE__ */
|
|
372
|
-
open:
|
|
373
|
-
onOpenChange:
|
|
374
|
-
children: /* @__PURE__ */
|
|
375
|
-
/* @__PURE__ */
|
|
497
|
+
}), /* @__PURE__ */ d(ke, {
|
|
498
|
+
open: rt,
|
|
499
|
+
onOpenChange: Q,
|
|
500
|
+
children: /* @__PURE__ */ f(Ae, { children: [
|
|
501
|
+
/* @__PURE__ */ f(Ne, { children: [/* @__PURE__ */ d(Pe, { children: "Add schema field" }), /* @__PURE__ */ f(je, { children: [
|
|
376
502
|
"Document a column in “",
|
|
377
|
-
|
|
503
|
+
D.name,
|
|
378
504
|
"” — its type, unit and provenance."
|
|
379
505
|
] })] }),
|
|
380
|
-
/* @__PURE__ */
|
|
506
|
+
/* @__PURE__ */ f("div", {
|
|
381
507
|
className: "space-y-4",
|
|
382
508
|
children: [
|
|
383
|
-
/* @__PURE__ */
|
|
509
|
+
/* @__PURE__ */ f("div", {
|
|
384
510
|
className: "space-y-1.5",
|
|
385
|
-
children: [/* @__PURE__ */
|
|
511
|
+
children: [/* @__PURE__ */ d(_, {
|
|
386
512
|
htmlFor: "cos-field-name",
|
|
387
513
|
children: "Name"
|
|
388
|
-
}), /* @__PURE__ */
|
|
514
|
+
}), /* @__PURE__ */ d(g, {
|
|
389
515
|
id: "cos-field-name",
|
|
390
|
-
value:
|
|
391
|
-
onChange: (e) =>
|
|
516
|
+
value: B,
|
|
517
|
+
onChange: (e) => V(e.target.value),
|
|
392
518
|
placeholder: "e.g. right_ascension",
|
|
393
519
|
required: !0
|
|
394
520
|
})]
|
|
395
521
|
}),
|
|
396
|
-
/* @__PURE__ */
|
|
522
|
+
/* @__PURE__ */ f("div", {
|
|
397
523
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
398
|
-
children: [/* @__PURE__ */
|
|
524
|
+
children: [/* @__PURE__ */ f("div", {
|
|
399
525
|
className: "space-y-1.5",
|
|
400
|
-
children: [/* @__PURE__ */
|
|
526
|
+
children: [/* @__PURE__ */ d(_, {
|
|
401
527
|
htmlFor: "cos-field-type",
|
|
402
528
|
children: "Type"
|
|
403
|
-
}), /* @__PURE__ */
|
|
404
|
-
value:
|
|
405
|
-
onValueChange: (e) =>
|
|
406
|
-
children: [/* @__PURE__ */
|
|
529
|
+
}), /* @__PURE__ */ f(Fe, {
|
|
530
|
+
value: H,
|
|
531
|
+
onValueChange: (e) => U(e),
|
|
532
|
+
children: [/* @__PURE__ */ d(Re, {
|
|
407
533
|
id: "cos-field-type",
|
|
408
534
|
"aria-label": "Field type",
|
|
409
|
-
children: /* @__PURE__ */
|
|
410
|
-
}), /* @__PURE__ */
|
|
535
|
+
children: /* @__PURE__ */ d(ze, {})
|
|
536
|
+
}), /* @__PURE__ */ d(Ie, { children: We.map((e) => /* @__PURE__ */ d(Le, {
|
|
411
537
|
value: e,
|
|
412
|
-
children:
|
|
538
|
+
children: l(e)
|
|
413
539
|
}, e)) })]
|
|
414
540
|
})]
|
|
415
|
-
}), /* @__PURE__ */
|
|
541
|
+
}), /* @__PURE__ */ f("div", {
|
|
416
542
|
className: "space-y-1.5",
|
|
417
|
-
children: [/* @__PURE__ */
|
|
543
|
+
children: [/* @__PURE__ */ d(_, {
|
|
418
544
|
htmlFor: "cos-field-unit",
|
|
419
545
|
children: "Unit"
|
|
420
|
-
}), /* @__PURE__ */
|
|
546
|
+
}), /* @__PURE__ */ d(g, {
|
|
421
547
|
id: "cos-field-unit",
|
|
422
|
-
value:
|
|
423
|
-
onChange: (e) =>
|
|
548
|
+
value: W,
|
|
549
|
+
onChange: (e) => G(e.target.value),
|
|
424
550
|
placeholder: "e.g. deg, mag, Jy"
|
|
425
551
|
})]
|
|
426
552
|
})]
|
|
427
553
|
}),
|
|
428
|
-
/* @__PURE__ */
|
|
554
|
+
/* @__PURE__ */ f("div", {
|
|
429
555
|
className: "space-y-1.5",
|
|
430
|
-
children: [/* @__PURE__ */
|
|
556
|
+
children: [/* @__PURE__ */ d(_, {
|
|
431
557
|
htmlFor: "cos-field-desc",
|
|
432
558
|
children: "Description"
|
|
433
|
-
}), /* @__PURE__ */
|
|
559
|
+
}), /* @__PURE__ */ d(Ue, {
|
|
434
560
|
id: "cos-field-desc",
|
|
435
|
-
value:
|
|
436
|
-
onChange: (e) =>
|
|
561
|
+
value: K,
|
|
562
|
+
onChange: (e) => q(e.target.value),
|
|
437
563
|
rows: 2
|
|
438
564
|
})]
|
|
439
565
|
}),
|
|
440
|
-
/* @__PURE__ */
|
|
566
|
+
/* @__PURE__ */ f("div", {
|
|
441
567
|
className: "space-y-1.5",
|
|
442
|
-
children: [/* @__PURE__ */
|
|
568
|
+
children: [/* @__PURE__ */ d(_, {
|
|
443
569
|
htmlFor: "cos-field-prov",
|
|
444
570
|
children: "Provenance"
|
|
445
|
-
}), /* @__PURE__ */
|
|
571
|
+
}), /* @__PURE__ */ d(g, {
|
|
446
572
|
id: "cos-field-prov",
|
|
447
|
-
value:
|
|
448
|
-
onChange: (e) =>
|
|
573
|
+
value: J,
|
|
574
|
+
onChange: (e) => Y(e.target.value),
|
|
449
575
|
placeholder: "Where this field comes from"
|
|
450
576
|
})]
|
|
451
577
|
}),
|
|
452
|
-
/* @__PURE__ */
|
|
578
|
+
/* @__PURE__ */ f("label", {
|
|
453
579
|
className: "flex items-center gap-2 text-sm text-text-primary",
|
|
454
|
-
children: [/* @__PURE__ */
|
|
455
|
-
checked:
|
|
456
|
-
onCheckedChange: (e) =>
|
|
580
|
+
children: [/* @__PURE__ */ d(Oe, {
|
|
581
|
+
checked: X,
|
|
582
|
+
onCheckedChange: (e) => Z(e === !0)
|
|
457
583
|
}), "Nullable (may contain empty values)"]
|
|
458
584
|
})
|
|
459
585
|
]
|
|
460
586
|
}),
|
|
461
|
-
/* @__PURE__ */
|
|
587
|
+
/* @__PURE__ */ f(Me, { children: [/* @__PURE__ */ d(h, {
|
|
462
588
|
type: "button",
|
|
463
589
|
variant: "outline",
|
|
464
|
-
onClick: () =>
|
|
465
|
-
disabled:
|
|
590
|
+
onClick: () => Q(!1),
|
|
591
|
+
disabled: A,
|
|
466
592
|
children: "Cancel"
|
|
467
|
-
}), /* @__PURE__ */
|
|
593
|
+
}), /* @__PURE__ */ d(h, {
|
|
468
594
|
type: "button",
|
|
469
|
-
onClick: () => void
|
|
470
|
-
disabled:
|
|
471
|
-
children:
|
|
595
|
+
onClick: () => void ut(),
|
|
596
|
+
disabled: A,
|
|
597
|
+
children: A ? "Adding…" : "Add field"
|
|
472
598
|
})] })
|
|
473
599
|
] })
|
|
474
600
|
})]
|
|
475
601
|
});
|
|
476
602
|
}
|
|
477
603
|
//#endregion
|
|
478
|
-
export {
|
|
604
|
+
export { C as default };
|
|
479
605
|
|
|
480
606
|
//# sourceMappingURL=DatasetDetailPage.js.map
|