diff --git a/dashboard/src/components/AppInstallDialog.vue b/dashboard/src/components/AppInstallDialog.vue index f3ec8115d..ead118e2f 100644 --- a/dashboard/src/components/AppInstallDialog.vue +++ b/dashboard/src/components/AppInstallDialog.vue @@ -138,6 +138,16 @@ defineExpose({ tcpPorts.value = a.manifest.tcpPorts; udpPorts.value = a.manifest.udpPorts; + // ensure we have value property + for (const p in tcpPorts.value) { + tcpPorts.value[p].value = tcpPorts.value[p].value || tcpPorts.value[p].defaultValue; + tcpPorts.value[p].enabled = false; + } + for (const p in udpPorts.value) { + udpPorts.value[p].value = udpPorts.value[p].value || udpPorts.value[p].defaultValue; + udpPorts.value[p].enabled = false; + } + secondaryDomains.value = a.manifest.httpPorts; for (const p in secondaryDomains.value) { const port = secondaryDomains.value[p]; @@ -200,7 +210,7 @@ defineExpose({ - + diff --git a/dashboard/src/components/PortBindings.vue b/dashboard/src/components/PortBindings.vue index 638f7d6da..eb5ef2299 100644 --- a/dashboard/src/components/PortBindings.vue +++ b/dashboard/src/components/PortBindings.vue @@ -2,21 +2,11 @@ import { FormGroup, Checkbox, NumberInput } from 'pankow'; -const props = defineProps([ 'tcpPorts', 'udpPorts', 'error' ]); -defineEmits([ 'update:tcpPorts', 'update:udpPorts' ]); +defineProps([ 'error' ]); -// copy value so we can use value as model value -for (const p in props.tcpPorts) { - const port = props.tcpPorts[p]; - port.value = port.defaultValue; - port.enabled = true; -} - -for (const p in props.udpPorts) { - const port = props.udpPorts[p]; - port.value = port.defaultValue; - port.enabled = true; -} +// all ports require a property called 'value' for the model to work +const tcpPorts = defineModel('tcp'); +const udpPorts = defineModel('udp'); @@ -26,7 +16,7 @@ for (const p in props.udpPorts) { {{ port.description + '.' + (port.portCount >=1 ? (port.portCount + ' ports. ') : '') }} {{ $t('appstore.installDialog.portReadOnly') }} - Port already taken + Port already taken {{ port }} diff --git a/dashboard/src/components/app/Location.vue b/dashboard/src/components/app/Location.vue index 0eff61a9c..594977fb8 100644 --- a/dashboard/src/components/app/Location.vue +++ b/dashboard/src/components/app/Location.vue @@ -1,7 +1,8 @@ @@ -108,40 +161,66 @@ onMounted(async () => { -
{{ errorMessage }}
+

- - - {{ secondaryDomain.description }} + + + {{ item.description }} - - + + +

+ +
-
- - - - -
+

-
{{ $t('app.location.addAliasAction') }}
+
{{ $t('app.location.addAliasAction') }}
+ +
+ + +
{{ $t('app.location.noRedirections') }}
+
+
+ + + + +
+

+
+ +
{{ $t('app.location.addRedirectionAction') }}
+
+ -

+
{{ errorMessage }}

diff --git a/dashboard/src/views/AppConfigureView.vue b/dashboard/src/views/AppConfigureView.vue index 7b91c21bd..1ccc52072 100644 --- a/dashboard/src/views/AppConfigureView.vue +++ b/dashboard/src/views/AppConfigureView.vue @@ -166,7 +166,7 @@ onBeforeUnmount(() => {
-