2022-03-24 11:47:13 +00:00
|
|
|
<template>
|
|
|
|
<div>
|
|
|
|
<v-list-item
|
|
|
|
v-for="(renderer, index) in render.contents"
|
|
|
|
:key="index"
|
|
|
|
class="pa-0"
|
|
|
|
>
|
|
|
|
<component
|
|
|
|
v-if="getComponents()[Object.keys(renderer)[0]]"
|
|
|
|
:is="Object.keys(renderer)[0]"
|
|
|
|
:key="index"
|
|
|
|
:render="renderer[Object.keys(renderer)[0]]"
|
|
|
|
></component>
|
|
|
|
</v-list-item>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
2022-03-24 20:46:17 +00:00
|
|
|
import itemSectionRenderer from "~/components/SectionRenderers/itemSectionRenderer.vue";
|
|
|
|
import shelfRenderer from "~/components/SectionRenderers/shelfRenderer.vue";
|
2022-03-24 11:47:13 +00:00
|
|
|
|
|
|
|
export default {
|
|
|
|
components: {
|
|
|
|
itemSectionRenderer,
|
|
|
|
shelfRenderer,
|
|
|
|
},
|
|
|
|
props: ["render"],
|
|
|
|
|
|
|
|
methods: {
|
|
|
|
getComponents() {
|
|
|
|
return this.$options.components;
|
|
|
|
},
|
|
|
|
},
|
|
|
|
};
|
|
|
|
</script>
|