diff --git a/app/client/api-client/types.gen.ts b/app/client/api-client/types.gen.ts index 9146e070..44b2b3c5 100644 --- a/app/client/api-client/types.gen.ts +++ b/app/client/api-client/types.gen.ts @@ -838,7 +838,9 @@ export type ListRepositoriesResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -917,7 +919,9 @@ export type CreateRepositoryData = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -1058,7 +1062,9 @@ export type GetRepositoryResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -1164,7 +1170,9 @@ export type UpdateRepositoryResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -1487,7 +1495,9 @@ export type ListBackupSchedulesResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -1749,7 +1759,9 @@ export type GetBackupScheduleResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -1992,7 +2004,9 @@ export type GetBackupScheduleForVolumeResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -2211,6 +2225,7 @@ export type GetScheduleNotificationsResponses = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -2310,6 +2325,7 @@ export type UpdateScheduleNotificationsResponses = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -2420,7 +2436,9 @@ export type GetScheduleMirrorsResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -2526,7 +2544,9 @@ export type UpdateScheduleMirrorsResponses = { } | { backend: 'rest'; url: string; + cacert?: string; customPassword?: string; + insecureTls?: boolean; isExistingRepository?: boolean; password?: string; path?: string; @@ -2646,6 +2666,7 @@ export type ListNotificationDestinationsResponses = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -2716,6 +2737,7 @@ export type CreateNotificationDestinationData = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -2785,6 +2807,7 @@ export type CreateNotificationDestinationResponses = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -2901,6 +2924,7 @@ export type GetNotificationDestinationResponses = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -2971,6 +2995,7 @@ export type UpdateNotificationDestinationData = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; @@ -3050,6 +3075,7 @@ export type UpdateNotificationDestinationResponses = { priority: 'default' | 'high' | 'low' | 'max' | 'min'; topic: string; type: 'ntfy'; + accessToken?: string; password?: string; serverUrl?: string; username?: string; diff --git a/app/client/modules/repositories/components/repository-forms/rest-repository-form.tsx b/app/client/modules/repositories/components/repository-forms/rest-repository-form.tsx index 401b099c..287519fb 100644 --- a/app/client/modules/repositories/components/repository-forms/rest-repository-form.tsx +++ b/app/client/modules/repositories/components/repository-forms/rest-repository-form.tsx @@ -9,13 +9,20 @@ import { } from "../../../../components/ui/form"; import { Input } from "../../../../components/ui/input"; import { SecretInput } from "../../../../components/ui/secret-input"; +import { Textarea } from "../../../../components/ui/textarea"; +import { Checkbox } from "../../../../components/ui/checkbox"; +import { Tooltip, TooltipContent, TooltipTrigger } from "../../../../components/ui/tooltip"; import type { RepositoryFormValues } from "../create-repository-form"; +import { cn } from "~/client/lib/utils"; type Props = { form: UseFormReturn; }; export const RestRepositoryForm = ({ form }: Props) => { + const insecureTls = form.watch("insecureTls"); + const cacert = form.watch("cacert"); + return ( <> { )} /> + ( + + + + +
+ { + field.onChange(checked); + }} + /> +
+
+ +

+ This option is disabled because a CA certificate is provided. Remove the CA certificate to skip TLS + validation instead. +

+
+
+
+
+ Skip TLS certificate verification + + Disable TLS certificate verification if rest server is https and uses a self-signed certificate. This is + insecure and should only be used for testing. + +
+
+ )} + /> + ( + + CA Certificate (Optional) + + + +
+