mirror of
https://github.com/fosrl/pangolin.git
synced 2026-08-09 05:58:17 +02:00
allow no provider on a resource
This commit is contained in:
@@ -58,11 +58,9 @@ export default function PrivateResourceProvidersPage() {
|
||||
const formSchema = useMemo(
|
||||
() =>
|
||||
z.object({
|
||||
providerIds: z
|
||||
.array(z.number().int().positive())
|
||||
.min(1, t("aiResourceProvidersRequired"))
|
||||
providerIds: z.array(z.number().int().positive())
|
||||
}),
|
||||
[t]
|
||||
[]
|
||||
);
|
||||
type FormValues = z.infer<typeof formSchema>;
|
||||
|
||||
|
||||
@@ -58,11 +58,9 @@ export default function PublicResourceProvidersPage() {
|
||||
const formSchema = useMemo(
|
||||
() =>
|
||||
z.object({
|
||||
providerIds: z
|
||||
.array(z.number().int().positive())
|
||||
.min(1, t("aiResourceProvidersRequired"))
|
||||
providerIds: z.array(z.number().int().positive())
|
||||
}),
|
||||
[t]
|
||||
[]
|
||||
);
|
||||
type FormValues = z.infer<typeof formSchema>;
|
||||
|
||||
|
||||
@@ -252,7 +252,6 @@ export default function Page() {
|
||||
const [selectedProviders, setSelectedProviders] = useState<
|
||||
SelectedAiProvider[]
|
||||
>([]);
|
||||
const [showProvidersError, setShowProvidersError] = useState(false);
|
||||
|
||||
// SSH-specific state
|
||||
const [sshServerMode, setSshServerMode] = useState<"standard" | "native">(
|
||||
@@ -355,9 +354,6 @@ export default function Page() {
|
||||
if (!availableTypes.includes(resourceType)) {
|
||||
setResourceType("http");
|
||||
}
|
||||
if (resourceType !== "inference") {
|
||||
setShowProvidersError(false);
|
||||
}
|
||||
}, [availableTypes, resourceType]);
|
||||
|
||||
const baseResourceFormSchema = useMemo(
|
||||
@@ -1440,14 +1436,6 @@ export default function Page() {
|
||||
setSelectedProviders(
|
||||
providers
|
||||
);
|
||||
if (
|
||||
providers.length >
|
||||
0
|
||||
) {
|
||||
setShowProvidersError(
|
||||
false
|
||||
);
|
||||
}
|
||||
}}
|
||||
/>
|
||||
<p className="text-sm text-muted-foreground">
|
||||
@@ -1455,13 +1443,6 @@ export default function Page() {
|
||||
"aiResourceProvidersHelp"
|
||||
)}
|
||||
</p>
|
||||
{showProvidersError && (
|
||||
<p className="text-sm text-destructive">
|
||||
{t(
|
||||
"aiResourceProvidersRequired"
|
||||
)}
|
||||
</p>
|
||||
)}
|
||||
</div>
|
||||
</SettingsFormCell>
|
||||
</SettingsFormGrid>
|
||||
@@ -1493,16 +1474,6 @@ export default function Page() {
|
||||
const tcpValid = !isHttpResource
|
||||
? await tcpUdpForm.trigger()
|
||||
: true;
|
||||
const providersValid =
|
||||
resourceType !== "inference" ||
|
||||
selectedProviders.length > 0;
|
||||
|
||||
if (
|
||||
resourceType === "inference" &&
|
||||
!providersValid
|
||||
) {
|
||||
setShowProvidersError(true);
|
||||
}
|
||||
|
||||
if (
|
||||
resourceType === "ssh" &&
|
||||
@@ -1527,8 +1498,7 @@ export default function Page() {
|
||||
baseValid &&
|
||||
domainValid &&
|
||||
tcpValid &&
|
||||
bgValid &&
|
||||
providersValid
|
||||
bgValid
|
||||
) {
|
||||
onSubmit();
|
||||
}
|
||||
|
||||
@@ -467,13 +467,6 @@ export function createCreateFormSchema(t: TranslateFn) {
|
||||
path: ["alias"]
|
||||
});
|
||||
}
|
||||
if (!data.providerIds || data.providerIds.length < 1) {
|
||||
ctx.addIssue({
|
||||
code: z.ZodIssueCode.custom,
|
||||
message: t("aiResourceProvidersRequired"),
|
||||
path: ["providerIds"]
|
||||
});
|
||||
}
|
||||
}
|
||||
if (
|
||||
data.mode !== "ssh" &&
|
||||
@@ -639,13 +632,6 @@ export function createInferenceFormSchema(t: TranslateFn) {
|
||||
path: ["alias"]
|
||||
});
|
||||
}
|
||||
if (!data.providerIds || data.providerIds.length < 1) {
|
||||
ctx.addIssue({
|
||||
code: z.ZodIssueCode.custom,
|
||||
message: t("aiResourceProvidersRequired"),
|
||||
path: ["providerIds"]
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user