diff --git a/packages/hoppscotch-common/src/components/lenses/ResponseBodyRenderer.vue b/packages/hoppscotch-common/src/components/lenses/ResponseBodyRenderer.vue index 94829cdd..aa88dc61 100644 --- a/packages/hoppscotch-common/src/components/lenses/ResponseBodyRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/ResponseBodyRenderer.vue @@ -17,6 +17,7 @@ :is-savable="isSavable" :is-editable="isEditable" :tab-id="props.tabId" + :is-test-runner="props.isTestRunner" @save-as-example="$emit('save-as-example')" /> diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/AudioLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/AudioLensRenderer.vue index d959aef8..4227f963 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/AudioLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/AudioLensRenderer.vue @@ -35,6 +35,7 @@ @keyup.escape="hide()" > () const emit = defineEmits<{ @@ -115,8 +117,13 @@ const { downloadIcon, downloadResponse } = useDownloadResponse( }) ) +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } defineActionHandler("response.file.download", () => downloadResponse()) diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/HTMLLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/HTMLLensRenderer.vue index 6e486bc0..6d5d8ec9 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/HTMLLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/HTMLLensRenderer.vue @@ -76,6 +76,7 @@ @keyup.escape="hide()" > () const { containerRef } = useScrollerRef( @@ -206,8 +208,13 @@ const doTogglePreview = async () => { const { copyIcon, copyResponse } = useCopyResponse(responseBodyText) +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } const saveAsExample = () => { diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/ImageLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/ImageLensRenderer.vue index 5f3b0d8c..97904f70 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/ImageLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/ImageLensRenderer.vue @@ -35,6 +35,7 @@ @keyup.escape="hide()" > () const emit = defineEmits<{ @@ -137,8 +139,13 @@ onMounted(() => { reader.readAsDataURL(blob) }) +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } defineActionHandler("response.file.download", () => downloadResponse()) diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/JSONLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/JSONLensRenderer.vue index 704140fa..08d3c92f 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/JSONLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/JSONLensRenderer.vue @@ -88,6 +88,7 @@ " /> () const { containerRef } = useScrollerRef( @@ -466,8 +468,13 @@ const saveAsExample = () => { const { copyIcon, copyResponse } = useCopyResponse(jsonBodyText) +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } const { downloadIcon, downloadResponse } = useDownloadResponse( diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/PDFLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/PDFLensRenderer.vue index ee6db97b..96be1ac9 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/PDFLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/PDFLensRenderer.vue @@ -35,6 +35,7 @@ @keyup.escape="hide()" > () const emit = defineEmits<{ @@ -97,8 +99,13 @@ const { downloadIcon, downloadResponse } = useDownloadResponse( `${filename}.pdf` ) +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } defineActionHandler("response.file.download", () => downloadResponse()) diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/RawLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/RawLensRenderer.vue index 4decc253..8ce7530f 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/RawLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/RawLensRenderer.vue @@ -67,6 +67,7 @@ @keyup.escape="hide()" > () const emit = defineEmits<{ @@ -166,8 +168,13 @@ const saveAsExample = () => { emit("save-as-example") } +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } const responseType = computed(() => diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/VideoLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/VideoLensRenderer.vue index 09f627b2..ed4f0854 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/VideoLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/VideoLensRenderer.vue @@ -35,6 +35,7 @@ @keyup.escape="hide()" > () const emit = defineEmits<{ @@ -115,8 +117,13 @@ const { downloadIcon, downloadResponse } = useDownloadResponse( }) ) +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } defineActionHandler("response.file.download", () => downloadResponse()) diff --git a/packages/hoppscotch-common/src/components/lenses/renderers/XMLLensRenderer.vue b/packages/hoppscotch-common/src/components/lenses/renderers/XMLLensRenderer.vue index db95a7dd..bbcebbdf 100644 --- a/packages/hoppscotch-common/src/components/lenses/renderers/XMLLensRenderer.vue +++ b/packages/hoppscotch-common/src/components/lenses/renderers/XMLLensRenderer.vue @@ -66,6 +66,7 @@ @keyup.escape="hide()" > () const { containerRef } = useScrollerRef( @@ -139,8 +141,13 @@ const emit = defineEmits<{ ): void }>() +/** + * Erases the response body. + * Do not erase if the tab is a saved example or test runner. + * + */ const eraseResponse = () => { - emit("update:response", null) + if (!props.isEditable && !props.isTestRunner) emit("update:response", null) } const { responseBodyText } = useResponseBody(props.response)