Files
hoppscotch/components/lenses/ResponseBodyRenderer.vue
Andrew Bastin 4da44131eb Added XML lens
2020-06-23 03:20:51 -04:00

41 lines
989 B
Vue

<template>
<div>
<tabs>
<tab
v-for="(lens, index) in validLenses"
:key="lens.lensName"
:id="lens.lensName"
:label="lens.lensName"
:selected="index === 0"
>
<component :is="lens.renderer" :response="response" />
</tab>
</tabs>
</div>
</template>
<script>
import getSuitableLenses from "~/helpers/lenses/lenses"
export default {
components: {
tabs: () => import("../ui/tabs"),
tab: () => import("../ui/tab"),
// Lens Renderers
raw: () => import("../lenses/renderers/RawLensRenderer"),
json: () => import("../lenses/renderers/JSONLensRenderer"),
imageres: () => import("../lenses/renderers/ImageLensRenderer"),
htmlres: () => import("../lenses/renderers/HTMLLensRenderer"),
xmlres: () => import("../lenses/renderers/XMLLensRenderer"),
},
props: {
response: {},
},
computed: {
validLenses() {
return getSuitableLenses(this.response)
},
},
}
</script>