From 87df9245eb62f7007fe34a10da733bcc3e5ad1f3 Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 27 Nov 2023 00:53:41 +0100 Subject: [PATCH] [PUI] Helper to render an instance for an url (#5977) * added helper to render an instance for an url * cleanup unsued imports --- .../src/components/render/InstanceFromUrl.tsx | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/frontend/src/components/render/InstanceFromUrl.tsx diff --git a/src/frontend/src/components/render/InstanceFromUrl.tsx b/src/frontend/src/components/render/InstanceFromUrl.tsx new file mode 100644 index 0000000000..2e0d7877f0 --- /dev/null +++ b/src/frontend/src/components/render/InstanceFromUrl.tsx @@ -0,0 +1,33 @@ +import { Loader } from '@mantine/core'; +import { useMemo, useState } from 'react'; + +import { api } from '../../App'; +import { ModelType } from '../../enums/ModelType'; +import { RenderInstance } from './Instance'; + +/** + * Render a model instance from a URL + * @param model Model type + * @param url URL to fetch instance from + * @returns JSX Element + */ +export function InstanceFromUrl({ + model, + url +}: { + model: ModelType; + url: string; +}) { + const [data, setData] = useState(null); + useMemo( + () => + api.get(url).then((res) => { + setData(res.data); + }), + [model, url] + ); + + if (!data) return ; + + return ; +}