Add support for custom component options in interfaces/displays

This commit is contained in:
rijkvanzanten
2020-08-12 13:34:03 -04:00
parent 0b7f5d5ba9
commit 1794f6b4fb
5 changed files with 31 additions and 22 deletions

View File

@@ -10,21 +10,19 @@
<button @click="fieldData.meta.display = null">{{ $t('reset_display') }}</button>
</v-notice>
<template v-if="fieldData.meta.display && !selectedDisplay">
<v-form
v-if="
selectedDisplay.options &&
Array.isArray(selectedDisplay.options) &&
selectedDisplay.options.length > 0
"
:fields="selectedDisplay.options"
primary-key="+"
v-model="fieldData.meta.options"
/>
<v-notice v-else>
<template v-if="fieldData.meta.display && selectedDisplay">
<v-notice v-if="!selectedDisplay.options">
{{ $t('no_options_available') }}
</v-notice>
<v-form
v-else-if="Array.isArray(selectedDisplay.options)"
:fields="selectedDisplay.options"
primary-key="+"
v-model="fieldData.meta.display_options"
/>
<component v-model="fieldData" :is="`display-options-${selectedDisplay.id}`" v-else />
</template>
</div>
</template>

View File

@@ -11,20 +11,18 @@
</v-notice>
<template v-if="fieldData.meta.interface && selectedInterface">
<v-notice v-if="!selectedInterface.options">
{{ $t('no_options_available') }}
</v-notice>
<v-form
v-if="
selectedInterface.options &&
Array.isArray(selectedInterface.options) &&
selectedInterface.options.length > 0
"
v-else-if="Array.isArray(selectedInterface.options)"
:fields="selectedInterface.options"
primary-key="+"
v-model="fieldData.meta.options"
/>
<v-notice v-else>
{{ $t('no_options_available') }}
</v-notice>
<component v-model="fieldData" :is="`interface-options-${selectedInterface.id}`" />
</template>
</div>
</template>