{$i18n.t("Models")} • {$REXPRO_NAME} {#if loaded} { deleteModelHandler(selectedModel); }} />
{ console.log(importFiles); let reader = new FileReader(); reader.onload = async (event) => { let savedModels = []; try { savedModels = JSON.parse(event.target.result); console.log(savedModels); } catch (e) { toast.error($i18n.t("Invalid JSON file")); return; } for (const model of savedModels) { if (model?.info ?? false) { if ($_models.find((m) => m.id === model.id)) { await updateModelById( localStorage.token, model.id, model.info, ).catch((error) => { toast.error(`${error}`); return null; }); } else { await createNewModel( localStorage.token, model.info, ).catch((error) => { toast.error(`${error}`); return null; }); } } else { if (model?.id && model?.name) { await createNewModel( localStorage.token, model, ).catch((error) => { toast.error(`${error}`); return null; }); } } } await _models.set( await getModels( localStorage.token, $config?.features?.enable_direct_connections && ($settings?.directConnections ?? null), ), ); page = 1; getModelList(); }; reader.readAsText(importFiles[0]); }} />
{$i18n.t("Models")}
{total}
{#if $user?.role === "admin" || $user?.permissions?.workspace?.models_import} {/if} {#if total && ($user?.role === "admin" || $user?.permissions?.workspace?.models_export)} {/if}
{ clearTimeout(searchDebounceTimer); searchDebounceTimer = setTimeout(() => { getModelList(); }, 300); }} /> {#if query}
{/if}
{ if (e.deltaY !== 0) { e.preventDefault(); e.currentTarget.scrollLeft += e.deltaY; } }} >
{ localStorage.workspaceViewOption = value; await tick(); }} /> {#if (tags ?? []).length > 0} { return { value: tag, label: tag }; })} /> {/if}

{#if models !== null} {#if (models ?? []).length !== 0}
{#each models as model (model.id)}
{ if (model.write_access) { goto( `/workspace/models/edit?id=${encodeURIComponent(model.id)}`, ); } }} >
modelfile profile { e.target.src = "/favicon.png"; }} />
{model.name}
{#if !model.write_access}
{/if}
{#if shiftKey && model.write_access} {:else} { goto( `/workspace/models/edit?id=${encodeURIComponent(model.id)}`, ); }} shareHandler={() => { shareModelHandler( model, ); }} cloneHandler={() => { cloneModelHandler( model, ); }} exportHandler={() => { exportModelHandler( model, ); }} hideHandler={() => { hideModelHandler( model, ); }} pinModelHandler={() => { pinModelHandler( model.id, ); }} copyLinkHandler={() => { copyLinkHandler( model, ); }} deleteHandler={() => { selectedModel = model; showModelDeleteConfirm = true; }} onClose={() => {}} >
{/if}
{#if model.write_access} {/if}
{$i18n.t( "By {{name}}", { name: capitalizeFirstLetter( model?.user ?.name ?? model ?.user ?.email ?? $i18n.t( "Deleted User", ), ), }, )}
·
{#if (model?.meta?.description ?? "").trim()} {model?.meta ?.description} {:else} {model.id} {/if}
{/each}
{#if total > 30} {/if} {:else}
{$i18n.t("No models found")}
{$i18n.t( "Try adjusting your search or filter to find what you are looking for.", )}
{/if} {:else}
{/if}
{#if $config?.features.enable_community_sharing}
{$i18n.t("Made by rexpro-ai Community")}
{$i18n.t("Discover a model")}
{$i18n.t( "Discover, download, and explore model presets", )}
{/if} {:else}
{/if}