diff --git a/dashboard/src/components/AppInstallDialog.vue b/dashboard/src/components/AppInstallDialog.vue index cf062bc64..194df7c06 100644 --- a/dashboard/src/components/AppInstallDialog.vue +++ b/dashboard/src/components/AppInstallDialog.vue @@ -31,7 +31,17 @@ - + + + + + {{ port.description }} +
+ + +
+
+ @@ -86,6 +96,7 @@ const accessRestriction = ref(null); const domain = ref(''); const tcpPorts = ref({}); const udpPorts = ref({}); +const secondaryDomains = ref({}); async function submit() { const config = { @@ -107,6 +118,15 @@ async function submit() { } config.ports = finalPorts; + const finalSecondaryDomains = {}; + for (var p in secondaryDomains.value) { + finalSecondaryDomains[p] = { + subdomain: secondaryDomains.value[p].value, + domain: secondaryDomains.value[p].domain + }; + } + config.secondaryDomains = finalSecondaryDomains; + busy.value = true; const error = await appsModel.install(manifest.value, config); busy.value = false; @@ -135,6 +155,13 @@ defineExpose({ tcpPorts.value = a.manifest.tcpPorts; udpPorts.value = a.manifest.udpPorts; + secondaryDomains.value = a.manifest.httpPorts; + for (const p in secondaryDomains.value) { + const port = secondaryDomains.value[p]; + port.value = port.defaultValue; + port.domain = domains.value[0].domain; + } + dialog.value.open(); } });