|
@@ -1,6 +1,15 @@
|
|
|
<template>
|
|
|
<div class="relative flex flex-1 flex-col">
|
|
|
- <HttpResponseMeta :response="doc.response" :is-embed="false" />
|
|
|
+ <div
|
|
|
+ class="sticky top-0 z-50 flex-none flex-shrink-0 items-center justify-center whitespace-nowrap bg-primary p-4"
|
|
|
+ v-if="doc.response?.type === 'network_fail'"
|
|
|
+ >
|
|
|
+ <span class="text-secondary">
|
|
|
+ {{ t("response.status") }}:
|
|
|
+ <span class="text-red-500">{{ doc.error }}</span>
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ <HttpResponseMeta v-else :response="doc.response" :is-embed="false" />
|
|
|
<LensesResponseBodyRenderer
|
|
|
v-if="hasResponse"
|
|
|
:document="{
|
|
@@ -16,7 +25,6 @@
|
|
|
:is-test-runner="true"
|
|
|
:show-response="showResponse"
|
|
|
/>
|
|
|
-
|
|
|
<HoppSmartPlaceholder
|
|
|
v-else
|
|
|
:src="`/images/states/${colorMode.value}/add_files.svg`"
|
|
@@ -51,8 +59,8 @@ const doc = useVModel(props, "document", emit)
|
|
|
|
|
|
const hasResponse = computed(
|
|
|
() =>
|
|
|
- (doc.value.response?.type === "success" ||
|
|
|
- doc.value.response?.type === "fail") &&
|
|
|
- doc.value.response?.body instanceof ArrayBuffer
|
|
|
+ doc.value.response?.type === "success" ||
|
|
|
+ doc.value.response?.type === "fail" ||
|
|
|
+ doc.value.response?.type === "network_fail"
|
|
|
)
|
|
|
</script>
|