Add permission-aware datasource search source

This commit is contained in:
2026-08-06 16:06:17 +02:00
parent 7216ac4842
commit 492306f6a7
6 changed files with 382 additions and 4 deletions
@@ -83,7 +83,9 @@ export default function DatasourcesPage({
const [stages, setStages] = useState<DatasourceStage[]>([]);
const [origins, setOrigins] = useState<DatasourceOrigin[]>([]);
const [originsAvailable, setOriginsAvailable] = useState(false);
const [selectedDatasourceRef, setSelectedDatasourceRef] = useState("");
const [selectedDatasourceRef, setSelectedDatasourceRef] = useState(
initialDatasourceRef
);
const [selectedStageRef, setSelectedStageRef] = useState("");
const [selectedOriginRef, setSelectedOriginRef] = useState("");
const [preview, setPreview] = useState<DatasourcePreview | null>(null);
@@ -1501,6 +1503,11 @@ function filterItems<T>(
: items;
}
function initialDatasourceRef(): string {
if (typeof window === "undefined") return "";
return new URLSearchParams(window.location.search).get("datasource") ?? "";
}
function parseRows(text: string): Record<string, unknown>[] {
const value: unknown = JSON.parse(text);
if (!Array.isArray(value) || value.some((row) => !isRecord(row))) {