Enable extension-defined choice of view panel

This commit is contained in:
Joel Collins 2020-03-17 15:08:59 +00:00
parent a8730d0a15
commit a9506c4abc
2 changed files with 16 additions and 2 deletions

View file

@ -130,6 +130,7 @@
:submit-label="form.submitLabel" :submit-label="form.submitLabel"
:schema="form.schema" :schema="form.schema"
:emit-on-response="form.emitOnResponse" :emit-on-response="form.emitOnResponse"
:view-panel="form.viewPanel"
@reloadForms="updatePlugins()" @reloadForms="updatePlugins()"
/> />
<hr /> <hr />

View file

@ -4,20 +4,28 @@
<div class="control-component"> <div class="control-component">
<JsonForm v-bind="$props" v-on="$listeners" /> <JsonForm v-bind="$props" v-on="$listeners" />
</div> </div>
<div class="view-component uk-width-expand"><streamDisplay /></div> <div class="view-component uk-width-expand">
<galleryDisplay v-if="viewPanel == 'gallery'" />
<settingsDisplay v-else-if="viewPanel == 'settings'" />
<streamDisplay v-else />
</div>
</div> </div>
</template> </template>
<script> <script>
import JsonForm from "../pluginComponents/JsonForm"; import JsonForm from "../pluginComponents/JsonForm";
import streamDisplay from "../viewComponents/streamDisplay.vue"; import streamDisplay from "../viewComponents/streamDisplay.vue";
import galleryDisplay from "../viewComponents/galleryDisplay.vue";
import settingsDisplay from "../viewComponents/settingsDisplay.vue";
export default { export default {
name: "ExtensionContent", name: "ExtensionContent",
components: { components: {
JsonForm, JsonForm,
streamDisplay streamDisplay,
galleryDisplay,
settingsDisplay
}, },
props: { props: {
@ -48,6 +56,11 @@ export default {
type: String, type: String,
required: false, required: false,
default: null default: null
},
viewPanel: {
type: String,
required: false,
default: "stream"
} }
} }
}; };