fix type and fix redirect to resource niceId on create

This commit is contained in:
miloschwartz
2025-09-17 16:27:22 -04:00
parent e4509c5714
commit 7f989f77ac
17 changed files with 22 additions and 41 deletions

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC provider",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Custom Headers",
"customHeadersDescription": "Headers new line separated: Header-Name: value.",
"headersValidationError": "Headers must be in the format: Header-Name: value.",
"domainPickerProvidedDomain": "Provided Domain",
"domainPickerFreeProvidedDomain": "Free Provided Domain",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" was corrected to \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Edit file: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Edit file: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC provider",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Custom Headers",
"customHeadersDescription": "Headers new line separated: Header-Name: value.",
"headersValidationError": "Headers must be in the format: Header-Name: value.",
"domainPickerProvidedDomain": "Provided Domain",
"domainPickerFreeProvidedDomain": "Free Provided Domain",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" was corrected to \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Edit file: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Edit file: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC Provider",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Eigene Kopfzeilen",
"customHeadersDescription": "Header neue Zeile getrennt: Kopfname: Wert.",
"headersValidationError": "Header müssen im Format Header-Name: Wert sein.",
"domainPickerProvidedDomain": "Angegebene Domain",
"domainPickerFreeProvidedDomain": "Kostenlose Domain",

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC provider",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Custom Headers",
"customHeadersDescription": "Headers new line separated: Header-Name: value.",
"headersValidationError": "Headers must be in the format: Header-Name: value.",
"domainPickerProvidedDomain": "Provided Domain",
"domainPickerFreeProvidedDomain": "Free Provided Domain",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" was corrected to \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Edit file: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Edit file: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Proveedor OAuth2/OIDC de Google",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Cabeceras personalizadas",
"customHeadersDescription": "Nueva línea de cabeceras separada: Nombre de cabecera: valor.",
"headersValidationError": "Los encabezados deben estar en el formato: Nombre de cabecera: valor.",
"domainPickerProvidedDomain": "Dominio proporcionado",
"domainPickerFreeProvidedDomain": "Dominio proporcionado gratis",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" fue corregido a \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Editar archivo: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Editar archivo: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Fournisseur Google OAuth2/OIDC",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "En-têtes personnalisés",
"customHeadersDescription": "Nouvelles lignes séparées des en-têtes : Nom de l'en-tête : valeur.",
"headersValidationError": "Les entêtes doivent être au format : Header-Name: valeur.",
"domainPickerProvidedDomain": "Domaine fourni",
"domainPickerFreeProvidedDomain": "Domaine fourni gratuitement",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" a été corrigé à \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Modifier le fichier : config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Modifier le fichier : docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC provider",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Intestazioni Personalizzate",
"customHeadersDescription": "Intestazioni nuova riga separate: Intestazione-Nome: valore.",
"headersValidationError": "Le intestazioni devono essere nel formato: Intestazione-Nome: valore.",
"domainPickerProvidedDomain": "Dominio Fornito",
"domainPickerFreeProvidedDomain": "Dominio Fornito Gratuito",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" è stato corretto in \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Modifica file: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Modifica file: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC 공급자",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC 공급자",
"customHeaders": "사용자 정의 헤더",
"customHeadersDescription": "헤더는 새 줄로 구분합니다: 헤더명: 값",
"headersValidationError": "헤더는 형식이어야 합니다: 헤더명: 값.",
"domainPickerProvidedDomain": "제공된 도메인",
"domainPickerFreeProvidedDomain": "무료 제공된 도메인",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\"이(가) \"{sanitized}\"로 수정되었습니다",
"resourceAddEntrypointsEditFile": "파일 편집: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "파일 편집: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC leverandør",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Egendefinerte topptekster",
"customHeadersDescription": "Overskrifter separert som linje: Header-Name: verdi.",
"headersValidationError": "Topptekst må være i formatet: header-navn: verdi.",
"domainPickerProvidedDomain": "Gitt domene",
"domainPickerFreeProvidedDomain": "Gratis oppgitt domene",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" var korrigert til \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Rediger fil: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Rediger fil: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC provider",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Aangepaste headers",
"customHeadersDescription": "Headers nieuwe lijn gescheiden: Header-Naam: waarde.",
"headersValidationError": "Headers moeten in het formaat zijn: Header-Naam: waarde.",
"domainPickerProvidedDomain": "Opgegeven domein",
"domainPickerFreeProvidedDomain": "Gratis verstrekt domein",

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Dostawca Google OAuth2/OIDC",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Niestandardowe nagłówki",
"customHeadersDescription": "Nagłówki oddzielone: Nazwa nagłówka: wartość.",
"headersValidationError": "Nagłówki muszą być w formacie: Nazwa nagłówka: wartość.",
"domainPickerProvidedDomain": "Dostarczona domena",
"domainPickerFreeProvidedDomain": "Darmowa oferowana domena",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" został skorygowany do \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Edytuj plik: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Edytuj plik: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Provedor Google OAuth2/OIDC",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Cabeçalhos Personalizados",
"customHeadersDescription": "Separados por cabeçalhos da nova linha: Nome do Cabeçalho: valor.",
"headersValidationError": "Cabeçalhos devem estar no formato: Nome do Cabeçalho: valor.",
"domainPickerProvidedDomain": "Domínio fornecido",
"domainPickerFreeProvidedDomain": "Domínio fornecido grátis",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" foi corrigido para \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Editar arquivo: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Editar arquivo: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC провайдер",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "Пользовательские заголовки",
"customHeadersDescription": "Заголовки новой строки, разделённые: название заголовка: значение.",
"headersValidationError": "Заголовки должны быть в формате: Название заголовка: значение.",
"domainPickerProvidedDomain": "Домен предоставлен",
"domainPickerFreeProvidedDomain": "Бесплатный домен",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" был исправлен на \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "Редактировать файл: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Редактировать файл: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC sağlayıcısı",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC sağlayıcısı",
"customHeaders": "Özel Başlıklar",
"customHeadersDescription": "Başlıklar yeni satıra geçirilmiş: Başlık-Adı: değer.",
"headersValidationError": "Başlıklar şu formatta olmalıdır: Başlık-Adı: değer.",
"domainPickerProvidedDomain": "Sağlanan Alan Adı",
"domainPickerFreeProvidedDomain": "Ücretsiz Sağlanan Alan Adı",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" \"{sanitized}\" olarak düzeltildi",
"resourceAddEntrypointsEditFile": "Dosyayı düzenle: config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "Dosyayı düzenle: docker-compose.yml"
}
}

View File

@@ -1504,7 +1504,6 @@
"idpGoogleDescription": "Google OAuth2/OIDC 提供商",
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
"customHeaders": "自定义标题",
"customHeadersDescription": "头部新行分隔:头部名称:值。",
"headersValidationError": "头部必须是格式:头部名称:值。",
"domainPickerProvidedDomain": "提供的域",
"domainPickerFreeProvidedDomain": "免费提供的域",
@@ -1521,4 +1520,4 @@
"domainPickerSubdomainCorrected": "\"{sub}\" 已被更正为 \"{sanitized}\"",
"resourceAddEntrypointsEditFile": "编辑文件config/traefik/traefik_config.yml",
"resourceExposePortsEditFile": "编辑文件docker-compose.yml"
}
}

View File

@@ -574,7 +574,7 @@ export default function ReverseProxyTargets(props: {
const [showPathInput, setShowPathInput] = useState(
!!(row.original.path || row.original.pathMatchType)
);
if (!showPathInput) {
return (
<Button
@@ -590,7 +590,7 @@ export default function ReverseProxyTargets(props: {
}
}}
>
+ {t("matchPath")}
+ {t("matchPath")}
</Button>
);
}
@@ -617,8 +617,8 @@ export default function ReverseProxyTargets(props: {
</Select>
<Input
placeholder={
row.original.pathMatchType === "regex"
? "^/api/.*"
row.original.pathMatchType === "regex"
? "^/api/.*"
: "/path"
}
defaultValue={row.original.path || ""}
@@ -1489,11 +1489,6 @@ export default function ReverseProxyTargets(props: {
rows={4}
/>
</FormControl>
<FormDescription>
{t(
"customHeadersDescription"
)}
</FormDescription>
<FormMessage />
</FormItem>
)}

View File

@@ -408,6 +408,7 @@ export default function Page() {
if (res && res.status === 201) {
const id = res.data.data.resourceId;
const niceId = res.data.data.niceId;
setResourceId(id);
// Create targets if any exist
@@ -440,7 +441,7 @@ export default function Page() {
}
if (isHttp) {
router.push(`/${orgId}/settings/resources/${id}`);
router.push(`/${orgId}/settings/resources/${niceId}`);
} else {
const tcpUdpData = tcpUdpForm.getValues();
// Only show config snippets if enableProxy is explicitly true
@@ -551,7 +552,7 @@ export default function Page() {
const [showPathInput, setShowPathInput] = useState(
!!(row.original.path || row.original.pathMatchType)
);
if (!showPathInput) {
return (
<Button
@@ -594,8 +595,8 @@ export default function Page() {
</Select>
<Input
placeholder={
row.original.pathMatchType === "regex"
? "^/api/.*"
row.original.pathMatchType === "regex"
? "^/api/.*"
: "/path"
}
defaultValue={row.original.path || ""}