@scalar/agent-chat 0.1.2 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/dist/App.vue.d.ts +2 -2
  2. package/dist/App.vue.d.ts.map +1 -1
  3. package/dist/App.vue.js +9 -3
  4. package/dist/App.vue.js.map +1 -1
  5. package/dist/Chat.vue.js +3 -3
  6. package/dist/Chat.vue.js.map +1 -1
  7. package/dist/components/ApprovalSection.vue.d.ts +9 -0
  8. package/dist/components/ApprovalSection.vue.d.ts.map +1 -0
  9. package/dist/components/ApprovalSection.vue.js +8 -0
  10. package/dist/components/ApprovalSection.vue.js.map +1 -0
  11. package/dist/components/ApprovalSection.vue2.js +47 -0
  12. package/dist/components/ApprovalSection.vue2.js.map +1 -0
  13. package/dist/components/AutosendPaused.vue.d.ts +3 -0
  14. package/dist/components/AutosendPaused.vue.d.ts.map +1 -0
  15. package/dist/components/AutosendPaused.vue.js +15 -0
  16. package/dist/components/AutosendPaused.vue.js.map +1 -0
  17. package/dist/components/ContextItem.vue.d.ts.map +1 -1
  18. package/dist/components/ContextItem.vue.js +1 -1
  19. package/dist/components/ContextItem.vue2.js +1 -1
  20. package/dist/components/ContextItem.vue2.js.map +1 -1
  21. package/dist/components/ErrorMessage.vue.d.ts +6 -0
  22. package/dist/components/ErrorMessage.vue.d.ts.map +1 -0
  23. package/dist/components/ErrorMessage.vue.js +8 -0
  24. package/dist/components/ErrorMessage.vue.js.map +1 -0
  25. package/dist/components/ErrorMessage.vue2.js +28 -0
  26. package/dist/components/ErrorMessage.vue2.js.map +1 -0
  27. package/dist/components/LoadingMiniOpenAPIDoc.vue.d.ts.map +1 -1
  28. package/dist/components/LoadingMiniOpenAPIDoc.vue.js +2 -18
  29. package/dist/components/LoadingMiniOpenAPIDoc.vue.js.map +1 -1
  30. package/dist/components/LoadingOpenAPISpecsSummary.vue.d.ts +3 -0
  31. package/dist/components/LoadingOpenAPISpecsSummary.vue.d.ts.map +1 -0
  32. package/dist/components/LoadingOpenAPISpecsSummary.vue.js +16 -0
  33. package/dist/components/LoadingOpenAPISpecsSummary.vue.js.map +1 -0
  34. package/dist/components/RequestApproved.vue.d.ts +3 -0
  35. package/dist/components/RequestApproved.vue.d.ts.map +1 -0
  36. package/dist/components/RequestApproved.vue.js +15 -0
  37. package/dist/components/RequestApproved.vue.js.map +1 -0
  38. package/dist/components/RequestFailed.vue.d.ts +3 -0
  39. package/dist/components/RequestFailed.vue.d.ts.map +1 -0
  40. package/dist/components/RequestFailed.vue.js +26 -0
  41. package/dist/components/RequestFailed.vue.js.map +1 -0
  42. package/dist/components/RequestPreview.vue.d.ts +10 -0
  43. package/dist/components/RequestPreview.vue.d.ts.map +1 -0
  44. package/dist/components/RequestPreview.vue.js +9 -0
  45. package/dist/components/RequestPreview.vue.js.map +1 -0
  46. package/dist/components/RequestPreview.vue2.js +150 -0
  47. package/dist/components/RequestPreview.vue2.js.map +1 -0
  48. package/dist/components/RequestRejected.vue.d.ts +3 -0
  49. package/dist/components/RequestRejected.vue.d.ts.map +1 -0
  50. package/dist/components/RequestRejected.vue.js +24 -0
  51. package/dist/components/RequestRejected.vue.js.map +1 -0
  52. package/dist/components/RequestSuccess.vue.d.ts +3 -0
  53. package/dist/components/RequestSuccess.vue.d.ts.map +1 -0
  54. package/dist/components/RequestSuccess.vue.js +15 -0
  55. package/dist/components/RequestSuccess.vue.js.map +1 -0
  56. package/dist/components/ResponseBody/ResponseBody.vue.d.ts +15 -0
  57. package/dist/components/ResponseBody/ResponseBody.vue.d.ts.map +1 -0
  58. package/dist/components/ResponseBody/ResponseBody.vue.js +45 -0
  59. package/dist/components/ResponseBody/ResponseBody.vue.js.map +1 -0
  60. package/dist/components/ResponseBody/ResponseBody.vue2.js +5 -0
  61. package/dist/components/ResponseBody/ResponseBody.vue2.js.map +1 -0
  62. package/dist/components/ResponseBody/ResponseBodyInfo.vue.d.ts +13 -0
  63. package/dist/components/ResponseBody/ResponseBodyInfo.vue.d.ts.map +1 -0
  64. package/dist/components/ResponseBody/ResponseBodyInfo.vue.js +17 -0
  65. package/dist/components/ResponseBody/ResponseBodyInfo.vue.js.map +1 -0
  66. package/dist/components/ResponseBody/ResponseBodyPreview.vue.d.ts +10 -0
  67. package/dist/components/ResponseBody/ResponseBodyPreview.vue.d.ts.map +1 -0
  68. package/dist/components/ResponseBody/ResponseBodyPreview.vue.js +8 -0
  69. package/dist/components/ResponseBody/ResponseBodyPreview.vue.js.map +1 -0
  70. package/dist/components/ResponseBody/ResponseBodyPreview.vue2.js +73 -0
  71. package/dist/components/ResponseBody/ResponseBodyPreview.vue2.js.map +1 -0
  72. package/dist/components/ResponseBody/ResponseBodyRaw.vue.d.ts +7 -0
  73. package/dist/components/ResponseBody/ResponseBodyRaw.vue.d.ts.map +1 -0
  74. package/dist/components/ResponseBody/ResponseBodyRaw.vue.js +23 -0
  75. package/dist/components/ResponseBody/ResponseBodyRaw.vue.js.map +1 -0
  76. package/dist/components/ResponseBody/ResponseBodyRaw.vue2.js +5 -0
  77. package/dist/components/ResponseBody/ResponseBodyRaw.vue2.js.map +1 -0
  78. package/dist/components/ResponseBody/ResponseBodyToggle.vue.d.ts +10 -0
  79. package/dist/components/ResponseBody/ResponseBodyToggle.vue.d.ts.map +1 -0
  80. package/dist/components/ResponseBody/ResponseBodyToggle.vue.js +30 -0
  81. package/dist/components/ResponseBody/ResponseBodyToggle.vue.js.map +1 -0
  82. package/dist/components/ResponseBody/ResponseBodyToggle.vue2.js +5 -0
  83. package/dist/components/ResponseBody/ResponseBodyToggle.vue2.js.map +1 -0
  84. package/dist/components/ResponseBody/helpers/media-types.d.ts +15 -0
  85. package/dist/components/ResponseBody/helpers/media-types.d.ts.map +1 -0
  86. package/dist/components/ResponseBody/helpers/media-types.js +134 -0
  87. package/dist/components/ResponseBody/helpers/media-types.js.map +1 -0
  88. package/dist/components/ResponseBody/helpers/process-response-body.d.ts +10 -0
  89. package/dist/components/ResponseBody/helpers/process-response-body.d.ts.map +1 -0
  90. package/dist/components/ResponseBody/helpers/process-response-body.js +63 -0
  91. package/dist/components/ResponseBody/helpers/process-response-body.js.map +1 -0
  92. package/dist/components/SearchPopover.vue.d.ts +13 -0
  93. package/dist/components/SearchPopover.vue.d.ts.map +1 -0
  94. package/dist/components/SearchPopover.vue.js +8 -0
  95. package/dist/components/SearchPopover.vue.js.map +1 -0
  96. package/dist/components/SearchPopover.vue2.js +78 -0
  97. package/dist/components/SearchPopover.vue2.js.map +1 -0
  98. package/dist/components/SendingRequest.vue.d.ts.map +1 -1
  99. package/dist/components/SendingRequest.vue.js +1 -1
  100. package/dist/components/SendingRequest.vue.js.map +1 -1
  101. package/dist/components/Suggestion.vue.d.ts.map +1 -1
  102. package/dist/components/Suggestion.vue.js +1 -1
  103. package/dist/components/Suggestion.vue2.js +1 -1
  104. package/dist/components/Suggestion.vue2.js.map +1 -1
  105. package/dist/components/TestRequestButton.vue2.js +1 -1
  106. package/dist/components/TestRequestButton.vue2.js.map +1 -1
  107. package/dist/helpers.d.ts +379 -0
  108. package/dist/helpers.d.ts.map +1 -1
  109. package/dist/helpers.js +135 -45
  110. package/dist/helpers.js.map +1 -1
  111. package/dist/hooks/useChatApprovals.d.ts +24 -0
  112. package/dist/hooks/useChatApprovals.d.ts.map +1 -0
  113. package/dist/hooks/useChatApprovals.js +25 -0
  114. package/dist/hooks/useChatApprovals.js.map +1 -0
  115. package/dist/hooks/useChatOperationBlocks.js +1 -1
  116. package/dist/hooks/useSearch.d.ts +26 -0
  117. package/dist/hooks/useSearch.d.ts.map +1 -0
  118. package/dist/hooks/useSearch.js +36 -0
  119. package/dist/hooks/useSearch.js.map +1 -0
  120. package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/api.js +1 -0
  121. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/api.js.map +1 -0
  122. package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/core.js +20 -11
  123. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/core.js.map +1 -0
  124. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/errors.js.map +1 -0
  125. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/parse.js.map +1 -0
  126. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/regexes.js.map +1 -0
  127. package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/schemas.js +3 -3
  128. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/schemas.js.map +1 -0
  129. package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/util.js +24 -0
  130. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/util.js.map +1 -0
  131. package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/versions.js +2 -2
  132. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/versions.js.map +1 -0
  133. package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/mini/schemas.js +12 -11
  134. package/dist/node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/mini/schemas.js.map +1 -0
  135. package/dist/package.json +9 -5
  136. package/dist/registry/add-documents-to-store.d.ts +21 -0
  137. package/dist/registry/add-documents-to-store.d.ts.map +1 -0
  138. package/dist/registry/add-documents-to-store.js +42 -0
  139. package/dist/registry/add-documents-to-store.js.map +1 -0
  140. package/dist/state/state.d.ts +29 -14
  141. package/dist/state/state.d.ts.map +1 -1
  142. package/dist/state/state.js +45 -40
  143. package/dist/state/state.js.map +1 -1
  144. package/dist/style.css +686 -234
  145. package/dist/views/Chat/Chat.vue.d.ts.map +1 -1
  146. package/dist/views/Chat/Chat.vue.js +1 -1
  147. package/dist/views/Chat/Chat.vue2.js +17 -5
  148. package/dist/views/Chat/Chat.vue2.js.map +1 -1
  149. package/dist/views/Chat/Messages/ExecuteRequestTool.vue.d.ts.map +1 -1
  150. package/dist/views/Chat/Messages/ExecuteRequestTool.vue.js +1 -1
  151. package/dist/views/Chat/Messages/ExecuteRequestTool.vue2.js +20 -43
  152. package/dist/views/Chat/Messages/ExecuteRequestTool.vue2.js.map +1 -1
  153. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue.d.ts.map +1 -1
  154. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue.js +1 -1
  155. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue2.js +2 -3
  156. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue2.js.map +1 -1
  157. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.d.ts +11 -0
  158. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.d.ts.map +1 -0
  159. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js +32 -0
  160. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js.map +1 -0
  161. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue2.js +5 -0
  162. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue2.js.map +1 -0
  163. package/dist/views/Chat/Messages/Text.vue.js +1 -1
  164. package/dist/views/Chat/Messages/Text.vue.js.map +1 -1
  165. package/dist/views/Layout.vue.d.ts.map +1 -1
  166. package/dist/views/Layout.vue.js +1 -1
  167. package/dist/views/Layout.vue2.js +0 -4
  168. package/dist/views/Layout.vue2.js.map +1 -1
  169. package/dist/views/PromptForm.vue.d.ts.map +1 -1
  170. package/dist/views/PromptForm.vue.js +1 -1
  171. package/dist/views/PromptForm.vue2.js +129 -72
  172. package/dist/views/PromptForm.vue2.js.map +1 -1
  173. package/dist/views/{Auth.vue.d.ts → Settings/Auth.vue.d.ts} +1 -0
  174. package/dist/views/Settings/Auth.vue.d.ts.map +1 -0
  175. package/dist/views/{Auth.vue.js → Settings/Auth.vue.js} +21 -26
  176. package/dist/views/Settings/Auth.vue.js.map +1 -0
  177. package/dist/views/Settings/DocSettings.vue.d.ts +8 -0
  178. package/dist/views/Settings/DocSettings.vue.d.ts.map +1 -0
  179. package/dist/views/Settings/DocSettings.vue.js +8 -0
  180. package/dist/views/Settings/DocSettings.vue.js.map +1 -0
  181. package/dist/views/Settings/DocSettings.vue2.js +50 -0
  182. package/dist/views/Settings/DocSettings.vue2.js.map +1 -0
  183. package/dist/views/Settings/Settings.vue.d.ts.map +1 -0
  184. package/dist/views/{Settings.vue.js → Settings/Settings.vue.js} +2 -2
  185. package/dist/views/Settings/Settings.vue2.js +78 -0
  186. package/dist/views/Settings/Settings.vue2.js.map +1 -0
  187. package/dist/views/Start.vue.d.ts.map +1 -1
  188. package/dist/views/Start.vue.js +1 -1
  189. package/dist/views/Start.vue2.js +0 -1
  190. package/dist/views/Start.vue2.js.map +1 -1
  191. package/package.json +3 -33
  192. package/dist/hooks/useActiveServer.d.ts +0 -2
  193. package/dist/hooks/useActiveServer.d.ts.map +0 -1
  194. package/dist/hooks/useActiveServer.js +0 -20
  195. package/dist/hooks/useActiveServer.js.map +0 -1
  196. package/dist/hooks/useSecuritySchemes.d.ts +0 -2
  197. package/dist/hooks/useSecuritySchemes.d.ts.map +0 -1
  198. package/dist/hooks/useSecuritySchemes.js +0 -29
  199. package/dist/hooks/useSecuritySchemes.js.map +0 -1
  200. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/api.js.map +0 -1
  201. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/core.js.map +0 -1
  202. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/errors.js.map +0 -1
  203. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/parse.js.map +0 -1
  204. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/regexes.js.map +0 -1
  205. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/schemas.js.map +0 -1
  206. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/util.js.map +0 -1
  207. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/versions.js.map +0 -1
  208. package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/mini/schemas.js.map +0 -1
  209. package/dist/registry/get-document.d.ts +0 -4
  210. package/dist/registry/get-document.d.ts.map +0 -1
  211. package/dist/registry/get-document.js +0 -23
  212. package/dist/registry/get-document.js.map +0 -1
  213. package/dist/views/Auth.vue.d.ts.map +0 -1
  214. package/dist/views/Auth.vue.js.map +0 -1
  215. package/dist/views/Settings.vue.d.ts.map +0 -1
  216. package/dist/views/Settings.vue2.js +0 -81
  217. package/dist/views/Settings.vue2.js.map +0 -1
  218. /package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/errors.js +0 -0
  219. /package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/parse.js +0 -0
  220. /package/dist/node_modules/.pnpm/{zod@4.1.11 → zod@4.3.5}/node_modules/zod/v4/core/regexes.js +0 -0
  221. /package/dist/views/{Auth.vue2.js → Settings/Auth.vue2.js} +0 -0
  222. /package/dist/views/{Auth.vue2.js.map → Settings/Auth.vue2.js.map} +0 -0
  223. /package/dist/views/{Settings.vue.d.ts → Settings/Settings.vue.d.ts} +0 -0
  224. /package/dist/views/{Settings.vue.js.map → Settings/Settings.vue.js.map} +0 -0
@@ -0,0 +1,150 @@
1
+ import { defineComponent, computed, ref, createElementBlock, openBlock, normalizeClass, createBlock, createCommentVNode, createElementVNode, createVNode, unref } from "vue";
2
+ import { ScalarCodeBlock } from "@scalar/components";
3
+ import { ScalarIconCaretDown, ScalarIconCaretRight } from "@scalar/icons";
4
+ import AutosendPaused from "./AutosendPaused.vue.js";
5
+ import RequestApproved from "./RequestApproved.vue.js";
6
+ import RequestFailed from "./RequestFailed.vue.js";
7
+ import RequestRejected from "./RequestRejected.vue.js";
8
+ import RequestSuccess from "./RequestSuccess.vue.js";
9
+ import { getMediaTypeConfig } from "./ResponseBody/helpers/media-types.js";
10
+ import { processResponseBody } from "./ResponseBody/helpers/process-response-body.js";
11
+ import _sfc_main$2 from "./ResponseBody/ResponseBody.vue.js";
12
+ import _sfc_main$1 from "./ResponseBody/ResponseBodyToggle.vue.js";
13
+ import SendingRequest from "./SendingRequest.vue.js";
14
+ const _hoisted_1 = {
15
+ key: 1,
16
+ class: "autosendContainer"
17
+ };
18
+ const _hoisted_2 = { class: "requestContent" };
19
+ const _hoisted_3 = { class: "requestContentInner" };
20
+ const _hoisted_4 = {
21
+ key: 0,
22
+ class: "code"
23
+ };
24
+ const _hoisted_5 = {
25
+ key: 1,
26
+ class: "code"
27
+ };
28
+ const _hoisted_6 = { class: "requestHeaderContainer" };
29
+ const _sfc_main = /* @__PURE__ */ defineComponent({
30
+ __name: "RequestPreview",
31
+ props: {
32
+ request: {},
33
+ response: {},
34
+ state: {}
35
+ },
36
+ setup(__props) {
37
+ const responseData = computed(() => {
38
+ if (__props.response?.structuredContent.success) {
39
+ return {
40
+ data: __props.response.structuredContent.data.responseBody,
41
+ headers: __props.response.structuredContent.data.headers
42
+ };
43
+ }
44
+ if (__props.response?.structuredContent.error?.code === "REQUEST_NOT_OK") {
45
+ return {
46
+ data: __props.response.structuredContent.error.detail.responseBody,
47
+ headers: __props.response.structuredContent.error.detail.headers
48
+ };
49
+ }
50
+ return void 0;
51
+ });
52
+ const showRequestToggle = ref(false);
53
+ const shouldShowRequest = computed(() => {
54
+ if (__props.state === "requestFailed" || __props.state === "requiresApproval") {
55
+ return true;
56
+ }
57
+ return showRequestToggle.value;
58
+ });
59
+ const responseBody = computed(
60
+ () => processResponseBody({
61
+ data: responseData.value?.data,
62
+ headers: responseData.value?.headers
63
+ })
64
+ );
65
+ const mediaConfig = computed(
66
+ () => getMediaTypeConfig(responseBody.value.mimeType?.essence ?? "")
67
+ );
68
+ const displayToggle = ref();
69
+ function toggleDisplay(mode) {
70
+ displayToggle.value = mode;
71
+ }
72
+ const displayMode = computed(() => {
73
+ if (displayToggle.value) return displayToggle.value;
74
+ if (mediaConfig.value?.raw && !mediaConfig.value.preview) return "raw";
75
+ if (mediaConfig.value?.preview) return "preview";
76
+ return "raw";
77
+ });
78
+ return (_ctx, _cache) => {
79
+ return openBlock(), createElementBlock("div", {
80
+ class: normalizeClass(["requestPreview", {
81
+ open: shouldShowRequest.value,
82
+ succeeded: __props.state === "requestSucceeded"
83
+ }])
84
+ }, [
85
+ __props.state === "approved" ? (openBlock(), createBlock(RequestApproved, { key: 0 })) : __props.state === "requiresApproval" ? (openBlock(), createElementBlock("div", _hoisted_1, [
86
+ createVNode(AutosendPaused)
87
+ ])) : __props.state === "sendingRequest" ? (openBlock(), createElementBlock("button", {
88
+ key: 2,
89
+ class: "toggleButton",
90
+ type: "button",
91
+ onClick: _cache[0] || (_cache[0] = ($event) => showRequestToggle.value = !showRequestToggle.value)
92
+ }, [
93
+ createVNode(SendingRequest),
94
+ shouldShowRequest.value ? (openBlock(), createBlock(unref(ScalarIconCaretDown), { key: 0 })) : (openBlock(), createBlock(unref(ScalarIconCaretRight), { key: 1 }))
95
+ ])) : __props.state === "requestSucceeded" ? (openBlock(), createElementBlock("button", {
96
+ key: 3,
97
+ class: "toggleButton",
98
+ type: "button",
99
+ onClick: _cache[1] || (_cache[1] = ($event) => showRequestToggle.value = !showRequestToggle.value)
100
+ }, [
101
+ createVNode(RequestSuccess),
102
+ shouldShowRequest.value ? (openBlock(), createBlock(unref(ScalarIconCaretDown), { key: 0 })) : (openBlock(), createBlock(unref(ScalarIconCaretRight), { key: 1 }))
103
+ ])) : __props.state === "rejected" ? (openBlock(), createElementBlock("button", {
104
+ key: 4,
105
+ class: "toggleButton",
106
+ type: "button",
107
+ onClick: _cache[2] || (_cache[2] = ($event) => showRequestToggle.value = !showRequestToggle.value)
108
+ }, [
109
+ createVNode(RequestRejected),
110
+ shouldShowRequest.value ? (openBlock(), createBlock(unref(ScalarIconCaretDown), { key: 0 })) : (openBlock(), createBlock(unref(ScalarIconCaretRight), { key: 1 }))
111
+ ])) : __props.state === "requestFailed" ? (openBlock(), createBlock(RequestFailed, { key: 5 })) : createCommentVNode("", true),
112
+ createElementVNode("div", _hoisted_2, [
113
+ createElementVNode("div", _hoisted_3, [
114
+ __props.request ? (openBlock(), createElementBlock("div", _hoisted_4, [
115
+ _cache[4] || (_cache[4] = createElementVNode("div", { class: "requestHeaderContainer" }, [
116
+ createElementVNode("h1", null, "Request")
117
+ ], -1)),
118
+ createVNode(unref(ScalarCodeBlock), {
119
+ class: "codeBlock",
120
+ content: JSON.stringify(__props.request, null, 2),
121
+ lang: "json"
122
+ }, null, 8, ["content"])
123
+ ])) : createCommentVNode("", true),
124
+ responseData.value ? (openBlock(), createElementBlock("div", _hoisted_5, [
125
+ createElementVNode("div", _hoisted_6, [
126
+ _cache[5] || (_cache[5] = createElementVNode("h1", null, "Response", -1)),
127
+ mediaConfig.value?.raw && mediaConfig.value.preview ? (openBlock(), createBlock(_sfc_main$1, {
128
+ key: 0,
129
+ modelValue: displayMode.value,
130
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => displayMode.value = $event),
131
+ onToggle: toggleDisplay
132
+ }, null, 8, ["modelValue"])) : createCommentVNode("", true)
133
+ ]),
134
+ createVNode(_sfc_main$2, {
135
+ data: responseData.value.data,
136
+ display: displayMode.value,
137
+ mediaConfig: mediaConfig.value,
138
+ responseBody: responseBody.value
139
+ }, null, 8, ["data", "display", "mediaConfig", "responseBody"])
140
+ ])) : createCommentVNode("", true)
141
+ ])
142
+ ])
143
+ ], 2);
144
+ };
145
+ }
146
+ });
147
+ export {
148
+ _sfc_main as default
149
+ };
150
+ //# sourceMappingURL=RequestPreview.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestPreview.vue2.js","sources":["../../src/components/RequestPreview.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { type DeepPartial } from 'ai'\nimport { computed, ref } from 'vue'\n\nimport { ScalarCodeBlock } from '@scalar/components'\nimport { ScalarIconCaretDown, ScalarIconCaretRight } from '@scalar/icons'\nimport {\n type ExecuteRequestToolInput,\n type ExecuteRequestToolOutput,\n} from '@scalar-org/entities/agent'\n\nimport AutosendPaused from '@/components/AutosendPaused.vue'\nimport RequestApproved from '@/components/RequestApproved.vue'\nimport RequestFailed from '@/components/RequestFailed.vue'\nimport RequestRejected from '@/components/RequestRejected.vue'\nimport RequestSuccess from '@/components/RequestSuccess.vue'\nimport { getMediaTypeConfig } from '@/components/ResponseBody/helpers/media-types'\nimport { processResponseBody } from '@/components/ResponseBody/helpers/process-response-body'\nimport ResponseBody from '@/components/ResponseBody/ResponseBody.vue'\nimport ResponseBodyToggle from '@/components/ResponseBody/ResponseBodyToggle.vue'\nimport SendingRequest from '@/components/SendingRequest.vue'\n\nconst { request, response, state } = defineProps<{\n request?: ExecuteRequestToolInput | DeepPartial<ExecuteRequestToolInput>\n response?: ExecuteRequestToolOutput\n state:\n | 'requiresApproval'\n | 'sendingRequest'\n | 'requestSucceeded'\n | 'requestFailed'\n | 'approved'\n | 'rejected'\n}>()\n\nconst responseData = computed(() => {\n if (response?.structuredContent.success) {\n return {\n data: response.structuredContent.data.responseBody,\n headers: response.structuredContent.data.headers,\n }\n }\n\n if (response?.structuredContent.error?.code === 'REQUEST_NOT_OK') {\n return {\n data: response.structuredContent.error.detail.responseBody,\n headers: response.structuredContent.error.detail.headers,\n }\n }\n\n return undefined\n})\n\nconst showRequestToggle = ref(false)\n\n/** Show request preview automatically for failed requests or when approval is required. */\nconst shouldShowRequest = computed(() => {\n if (state === 'requestFailed' || state === 'requiresApproval') {\n return true\n }\n return showRequestToggle.value\n})\n\nconst responseBody = computed(() =>\n processResponseBody({\n data: responseData.value?.data,\n headers: responseData.value?.headers,\n }),\n)\n\nconst mediaConfig = computed(() =>\n getMediaTypeConfig(responseBody.value.mimeType?.essence ?? ''),\n)\n\nconst displayToggle = ref<'preview' | 'raw'>()\nfunction toggleDisplay(mode: 'preview' | 'raw') {\n displayToggle.value = mode\n}\n\nconst displayMode = computed(() => {\n if (displayToggle.value) return displayToggle.value\n\n if (mediaConfig.value?.raw && !mediaConfig.value.preview) return 'raw'\n if (mediaConfig.value?.preview) return 'preview'\n\n return 'raw'\n})\n</script>\n\n<template>\n <div\n class=\"requestPreview\"\n :class=\"{\n open: shouldShowRequest,\n succeeded: state === 'requestSucceeded',\n }\">\n <RequestApproved v-if=\"state === 'approved'\" />\n <div\n v-else-if=\"state === 'requiresApproval'\"\n class=\"autosendContainer\">\n <AutosendPaused />\n </div>\n <button\n v-else-if=\"state === 'sendingRequest'\"\n class=\"toggleButton\"\n type=\"button\"\n @click=\"showRequestToggle = !showRequestToggle\">\n <SendingRequest />\n\n <ScalarIconCaretDown v-if=\"shouldShowRequest\" />\n <ScalarIconCaretRight v-else />\n </button>\n <button\n v-else-if=\"state === 'requestSucceeded'\"\n class=\"toggleButton\"\n type=\"button\"\n @click=\"showRequestToggle = !showRequestToggle\">\n <RequestSuccess />\n\n <ScalarIconCaretDown v-if=\"shouldShowRequest\" />\n <ScalarIconCaretRight v-else />\n </button>\n <button\n v-else-if=\"state === 'rejected'\"\n class=\"toggleButton\"\n type=\"button\"\n @click=\"showRequestToggle = !showRequestToggle\">\n <RequestRejected />\n\n <ScalarIconCaretDown v-if=\"shouldShowRequest\" />\n <ScalarIconCaretRight v-else />\n </button>\n <RequestFailed v-else-if=\"state === 'requestFailed'\" />\n <div class=\"requestContent\">\n <div class=\"requestContentInner\">\n <div\n v-if=\"request\"\n class=\"code\">\n <div class=\"requestHeaderContainer\">\n <h1>Request</h1>\n </div>\n <ScalarCodeBlock\n class=\"codeBlock\"\n :content=\"JSON.stringify(request, null, 2)\"\n lang=\"json\" />\n </div>\n <div\n v-if=\"responseData\"\n class=\"code\">\n <div class=\"requestHeaderContainer\">\n <h1>Response</h1>\n <ResponseBodyToggle\n v-if=\"mediaConfig?.raw && mediaConfig.preview\"\n v-model=\"displayMode\"\n @toggle=\"toggleDisplay\" />\n </div>\n <ResponseBody\n :data=\"responseData.data\"\n :display=\"displayMode\"\n :mediaConfig=\"mediaConfig\"\n :responseBody=\"responseBody\" />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<style>\n.codeBlock {\n max-height: 400px;\n box-shadow: inset 0 0 0 var(--scalar-border-width) var(--scalar-border-color);\n border-radius: 16px;\n background: var(--scalar-background-1);\n}\n.dark-mode .codeBlock {\n background: var(--scalar-background-2);\n}\n</style>\n\n<style scoped>\n.requestHeaderContainer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 5px;\n}\n\n.requestPreview {\n border-radius: 16px;\n display: flex;\n flex-direction: column;\n width: 100%;\n position: relative;\n}\n\n.requestContent {\n display: grid;\n grid-template-rows: 0fr;\n min-height: 0;\n overflow: hidden;\n transition: grid-template-rows 0.2s ease-out;\n}\n\n.requestPreview.open .requestContent {\n grid-template-rows: 1fr;\n}\n.requestPreview.open {\n padding: 6px 0;\n}\n.requestPreview.succeeded {\n padding: 0;\n}\n\n.requestContentInner {\n min-height: 0;\n overflow: hidden;\n}\n.code {\n display: flex;\n flex-direction: column;\n font-size: var(--scalar-font-size-4);\n border-radius: 16px;\n background: color-mix(\n in srgb,\n var(--scalar-background-2),\n var(--scalar-background-1)\n );\n overflow: hidden;\n margin-bottom: 12px;\n}\n.code h1 {\n font-size: var(--scalar-font-size-3);\n color: var(--scalar-color-2);\n padding: 8px;\n}\n\n.autosendContainer {\n display: flex;\n justify-content: space-between;\n}\n\n.sendButton {\n background: var(--scalar-color-blue);\n color: white;\n font-weight: var(--scalar-semibold);\n padding: 5px 10px;\n}\n.sendButton:hover,\n.sendButton:active {\n background: color-mix(in srgb, var(--scalar-color-blue), black 10%);\n color: white !important;\n}\n\n.toggleButton {\n background: none;\n border: none;\n cursor: pointer;\n text-align: left;\n position: relative;\n display: flex;\n align-items: center;\n color: var(--scalar-color-3);\n justify-content: space-between;\n border-radius: var(--scalar-radius-lg);\n padding: 5px 0;\n}\n\n.toggleButton:hover {\n text-decoration: underline;\n}\n</style>\n"],"names":["_createElementBlock","_createBlock","_openBlock","_createVNode","_unref","_createElementVNode","ResponseBodyToggle","ResponseBody"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
3
+ //# sourceMappingURL=RequestRejected.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestRejected.vue.d.ts","sourceRoot":"","sources":["../../src/components/RequestRejected.vue"],"names":[],"mappings":";AAuEA,wBACG"}
@@ -0,0 +1,24 @@
1
+ import { createElementBlock, openBlock, createElementVNode, createTextVNode } from "vue";
2
+ /* empty css */
3
+ import _export_sfc from "../_virtual/_plugin-vue_export-helper.js";
4
+ const _sfc_main = {};
5
+ const _hoisted_1 = { class: "requestRejected" };
6
+ function _sfc_render(_ctx, _cache) {
7
+ return openBlock(), createElementBlock("div", _hoisted_1, [..._cache[0] || (_cache[0] = [
8
+ createElementVNode("svg", {
9
+ fill: "currentColor",
10
+ height: "16",
11
+ viewBox: "0 0 256 256",
12
+ width: "16",
13
+ xmlns: "http://www.w3.org/2000/svg"
14
+ }, [
15
+ createElementVNode("path", { d: "M56.88,31.93A12,12,0,1,0,39.12,48.07l7.81,8.59A108,108,0,0,0,31.85,177.23L21,209.66A20,20,0,0,0,46.34,235l32.43-10.81a108.08,108.08,0,0,0,112.55-8.66l7.8,8.58a12,12,0,0,0,17.76-16.14ZM128,212a83.91,83.91,0,0,1-42-11.27,12,12,0,0,0-9.82-1l-29.79,9.93,9.93-29.79a12,12,0,0,0-1-9.82,84,84,0,0,1,7.94-95.49l111.84,123A83.83,83.83,0,0,1,128,212Zm108-84a107.22,107.22,0,0,1-8.65,42.4A12,12,0,0,1,205.28,161a84.07,84.07,0,0,0-102.77-113,12,12,0,0,1-7.27-22.87A108.08,108.08,0,0,1,236,128Z" })
16
+ ], -1),
17
+ createTextVNode(" Request Rejected ", -1)
18
+ ])]);
19
+ }
20
+ const RequestRejected = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-6504d95d"]]);
21
+ export {
22
+ RequestRejected as default
23
+ };
24
+ //# sourceMappingURL=RequestRejected.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestRejected.vue.js","sources":["../../src/components/RequestRejected.vue"],"sourcesContent":["<template>\n <div class=\"requestRejected\">\n <svg\n fill=\"currentColor\"\n height=\"16\"\n viewBox=\"0 0 256 256\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M56.88,31.93A12,12,0,1,0,39.12,48.07l7.81,8.59A108,108,0,0,0,31.85,177.23L21,209.66A20,20,0,0,0,46.34,235l32.43-10.81a108.08,108.08,0,0,0,112.55-8.66l7.8,8.58a12,12,0,0,0,17.76-16.14ZM128,212a83.91,83.91,0,0,1-42-11.27,12,12,0,0,0-9.82-1l-29.79,9.93,9.93-29.79a12,12,0,0,0-1-9.82,84,84,0,0,1,7.94-95.49l111.84,123A83.83,83.83,0,0,1,128,212Zm108-84a107.22,107.22,0,0,1-8.65,42.4A12,12,0,0,1,205.28,161a84.07,84.07,0,0,0-102.77-113,12,12,0,0,1-7.27-22.87A108.08,108.08,0,0,1,236,128Z\"></path>\n </svg>\n Request Rejected\n </div>\n</template>\n\n<style scoped>\n.requestRejected {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-red);\n font-weight: var(--scalar-semibold);\n min-height: 28px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode"],"mappings":";;;;AACO,MAAA,aAAA,EAAA,OAAM,kBAAiB;;AAA5B,SAAAA,UAAA,GAAAC,mBAWM,OAXN,YAWM,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA,IAVJC,mBAQM,OAAA;AAAA,MAPJ,MAAK;AAAA,MACL,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,OAAM;AAAA,MACN,OAAM;AAAA;MACNA,mBAC+e,QAAA,EAA7e,GAAE,oeAAme,CAAA;AAAA;oBACne,sBAER,EAAA;AAAA;;;"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
3
+ //# sourceMappingURL=RequestSuccess.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestSuccess.vue.d.ts","sourceRoot":"","sources":["../../src/components/RequestSuccess.vue"],"names":[],"mappings":";AAkIA,wBACG"}
@@ -0,0 +1,15 @@
1
+ import { createElementBlock, openBlock, createStaticVNode } from "vue";
2
+ /* empty css */
3
+ import _export_sfc from "../_virtual/_plugin-vue_export-helper.js";
4
+ const _sfc_main = {};
5
+ const _hoisted_1 = { class: "requestSuccess" };
6
+ function _sfc_render(_ctx, _cache) {
7
+ return openBlock(), createElementBlock("div", _hoisted_1, [..._cache[0] || (_cache[0] = [
8
+ createStaticVNode('<svg fill="none" height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg" data-v-1010a3fb><rect height="14.25" rx="7.125" width="14.25" x="0.875" y="0.875" data-v-1010a3fb></rect><rect height="14.25" rx="7.125" stroke="currentColor" stroke-width="1.75" width="14.25" x="0.875" y="0.875" data-v-1010a3fb></rect><g clip-path="url(#clip0_74_840)" data-v-1010a3fb><path d="M11.6037 6.841L7.59117 10.8535C7.49742 10.9472 7.37029 10.9998 7.23774 10.9998C7.10519 10.9998 6.97806 10.9472 6.8843 10.8535L4.64617 8.6035C4.55257 8.50975 4.5 8.38269 4.5 8.25022C4.5 8.11774 4.55257 7.99068 4.64617 7.89694L5.27117 7.27194C5.36488 7.17862 5.49174 7.12623 5.62399 7.12623C5.75623 7.12623 5.88309 7.17862 5.9768 7.27194L7.25024 8.50694L10.274 5.52037C10.3677 5.42696 10.4946 5.37451 10.627 5.37451C10.7593 5.37451 10.8862 5.42696 10.9799 5.52037L11.6034 6.131C11.6502 6.17746 11.6875 6.23274 11.7129 6.29366C11.7383 6.35458 11.7514 6.41993 11.7514 6.48593C11.7514 6.55194 11.7384 6.6173 11.713 6.67824C11.6877 6.73918 11.6505 6.7945 11.6037 6.841Z" fill="currentColor" data-v-1010a3fb></path></g><defs data-v-1010a3fb><clipPath id="clip0_74_840" data-v-1010a3fb><rect height="8" rx="4" width="8" x="4" y="4" data-v-1010a3fb></rect></clipPath></defs></svg> Request Succeeded ', 2)
9
+ ])]);
10
+ }
11
+ const RequestSuccess = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-1010a3fb"]]);
12
+ export {
13
+ RequestSuccess as default
14
+ };
15
+ //# sourceMappingURL=RequestSuccess.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestSuccess.vue.js","sources":["../../src/components/RequestSuccess.vue"],"sourcesContent":["<template>\n <div class=\"requestSuccess\">\n <svg\n fill=\"none\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <rect\n height=\"14.25\"\n rx=\"7.125\"\n width=\"14.25\"\n x=\"0.875\"\n y=\"0.875\" />\n <rect\n height=\"14.25\"\n rx=\"7.125\"\n stroke=\"currentColor\"\n stroke-width=\"1.75\"\n width=\"14.25\"\n x=\"0.875\"\n y=\"0.875\" />\n <g clip-path=\"url(#clip0_74_840)\">\n <path\n d=\"M11.6037 6.841L7.59117 10.8535C7.49742 10.9472 7.37029 10.9998 7.23774 10.9998C7.10519 10.9998 6.97806 10.9472 6.8843 10.8535L4.64617 8.6035C4.55257 8.50975 4.5 8.38269 4.5 8.25022C4.5 8.11774 4.55257 7.99068 4.64617 7.89694L5.27117 7.27194C5.36488 7.17862 5.49174 7.12623 5.62399 7.12623C5.75623 7.12623 5.88309 7.17862 5.9768 7.27194L7.25024 8.50694L10.274 5.52037C10.3677 5.42696 10.4946 5.37451 10.627 5.37451C10.7593 5.37451 10.8862 5.42696 10.9799 5.52037L11.6034 6.131C11.6502 6.17746 11.6875 6.23274 11.7129 6.29366C11.7383 6.35458 11.7514 6.41993 11.7514 6.48593C11.7514 6.55194 11.7384 6.6173 11.713 6.67824C11.6877 6.73918 11.6505 6.7945 11.6037 6.841Z\"\n fill=\"currentColor\" />\n </g>\n <defs>\n <clipPath id=\"clip0_74_840\">\n <rect\n height=\"8\"\n rx=\"4\"\n width=\"8\"\n x=\"4\"\n y=\"4\" />\n </clipPath>\n </defs>\n </svg>\n Request Succeeded\n </div>\n</template>\n\n<style scoped>\n.requestSuccess {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-1);\n font-weight: var(--scalar-semibold);\n min-height: 28px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"names":["_openBlock","_createElementBlock"],"mappings":";;;;AACO,MAAA,aAAA,EAAA,OAAM,iBAAgB;;AAA3B,SAAAA,UAAA,GAAAC,mBAsCM,OAtCN,YAsCM,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA;;;;"}
@@ -0,0 +1,15 @@
1
+ import type MIMEType from 'whatwg-mimetype';
2
+ import { type MediaConfig } from '../../components/ResponseBody/helpers/media-types.js';
3
+ type __VLS_Props = {
4
+ data: unknown;
5
+ responseBody: {
6
+ mimeType?: MIMEType;
7
+ attachmentFilename: string;
8
+ dataUrl: string;
9
+ };
10
+ mediaConfig?: MediaConfig;
11
+ display?: 'preview' | 'raw';
12
+ };
13
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ export default _default;
15
+ //# sourceMappingURL=ResponseBody.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBody.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ResponseBody/ResponseBody.vue"],"names":[],"mappings":"AA8CA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAKhF,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,OAAO,CAAA;IACb,YAAY,EAAE;QACZ,QAAQ,CAAC,EAAE,QAAQ,CAAA;QACnB,kBAAkB,EAAE,MAAM,CAAA;QAC1B,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,OAAO,CAAC,EAAE,SAAS,GAAG,KAAK,CAAA;CAC5B,CAAC;;AA6EF,wBAEG"}
@@ -0,0 +1,45 @@
1
+ import { defineComponent, watch, createElementBlock, openBlock, Fragment, createBlock, createCommentVNode, withCtx, createTextVNode } from "vue";
2
+ import ResponseBodyInfo from "./ResponseBodyInfo.vue.js";
3
+ import ResponseBodyPreview from "./ResponseBodyPreview.vue.js";
4
+ import _sfc_main$1 from "./ResponseBodyRaw.vue.js";
5
+ const _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "ResponseBody",
7
+ props: {
8
+ data: {},
9
+ responseBody: {},
10
+ mediaConfig: {},
11
+ display: {}
12
+ },
13
+ setup(__props) {
14
+ watch(
15
+ () => __props.display,
16
+ (v) => console.log(v)
17
+ );
18
+ return (_ctx, _cache) => {
19
+ return openBlock(), createElementBlock(Fragment, null, [
20
+ __props.mediaConfig?.raw && __props.display === "raw" && __props.mediaConfig.language ? (openBlock(), createBlock(_sfc_main$1, {
21
+ key: __props.responseBody.dataUrl,
22
+ content: __props.data,
23
+ language: __props.mediaConfig.language
24
+ }, null, 8, ["content", "language"])) : createCommentVNode("", true),
25
+ __props.mediaConfig?.preview && __props.display === "preview" ? (openBlock(), createBlock(ResponseBodyPreview, {
26
+ key: __props.responseBody.dataUrl,
27
+ alpha: __props.mediaConfig.alpha,
28
+ mode: __props.mediaConfig.preview,
29
+ src: __props.responseBody.dataUrl,
30
+ type: __props.responseBody.mimeType?.essence ?? ""
31
+ }, null, 8, ["alpha", "mode", "src", "type"])) : createCommentVNode("", true),
32
+ !__props.mediaConfig?.raw && !__props.mediaConfig?.preview ? (openBlock(), createBlock(ResponseBodyInfo, { key: 2 }, {
33
+ default: withCtx(() => [..._cache[0] || (_cache[0] = [
34
+ createTextVNode(" Binary file ", -1)
35
+ ])]),
36
+ _: 1
37
+ })) : createCommentVNode("", true)
38
+ ], 64);
39
+ };
40
+ }
41
+ });
42
+ export {
43
+ _sfc_main as default
44
+ };
45
+ //# sourceMappingURL=ResponseBody.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBody.vue.js","sources":["../../../src/components/ResponseBody/ResponseBody.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { watch } from 'vue'\nimport type MIMEType from 'whatwg-mimetype'\n\nimport { type MediaConfig } from '@/components/ResponseBody/helpers/media-types'\nimport ResponseBodyInfo from '@/components/ResponseBody/ResponseBodyInfo.vue'\nimport ResponseBodyPreview from '@/components/ResponseBody/ResponseBodyPreview.vue'\nimport ResponseBodyRaw from '@/components/ResponseBody/ResponseBodyRaw.vue'\n\nconst { data, responseBody, mediaConfig, display } = defineProps<{\n data: unknown\n responseBody: {\n mimeType?: MIMEType\n attachmentFilename: string\n dataUrl: string\n }\n mediaConfig?: MediaConfig\n display?: 'preview' | 'raw'\n}>()\n\nwatch(\n () => display,\n (v) => console.log(v),\n)\n</script>\n\n<template>\n <ResponseBodyRaw\n v-if=\"mediaConfig?.raw && display === 'raw' && mediaConfig.language\"\n :key=\"responseBody.dataUrl\"\n :content=\"data\"\n :language=\"mediaConfig.language\" />\n <ResponseBodyPreview\n v-if=\"mediaConfig?.preview && display === 'preview'\"\n :key=\"responseBody.dataUrl\"\n :alpha=\"mediaConfig.alpha\"\n :mode=\"mediaConfig.preview\"\n :src=\"responseBody.dataUrl\"\n :type=\"responseBody.mimeType?.essence ?? ''\" />\n <ResponseBodyInfo v-if=\"!mediaConfig?.raw && !mediaConfig?.preview\">\n Binary file\n </ResponseBodyInfo>\n</template>\n"],"names":["_createBlock","ResponseBodyRaw"],"mappings":";;;;;;;;;;;;;AAoBA;AAAA,MACE,MAAM,QAAA;AAAA,MACN,CAAC,MAAM,QAAQ,IAAI,CAAC;AAAA,IAAA;;;QAMZ,QAAA,aAAa,OAAO,oBAAO,SAAc,QAAA,YAAY,yBAD7DA,YAIqCC,aAAA;AAAA,UAFlC,KAAK,QAAA,aAAa;AAAA,UAClB,SAAS,QAAA;AAAA,UACT,UAAU,QAAA,YAAY;AAAA,QAAA;QAEjB,QAAA,aAAa,WAAW,QAAA,YAAO,0BADvCD,YAMiD,qBAAA;AAAA,UAJ9C,KAAK,QAAA,aAAa;AAAA,UAClB,OAAO,QAAA,YAAY;AAAA,UACnB,MAAM,QAAA,YAAY;AAAA,UAClB,KAAK,QAAA,aAAa;AAAA,UAClB,MAAM,QAAA,aAAa,UAAU,WAAO;AAAA,QAAA;QACd,CAAA,QAAA,aAAa,OAAG,CAAK,QAAA,aAAa,wBAA3DA,YAEmB,kBAAA,EAAA,KAAA,KAAA;AAAA,2BAFiD,MAEpE,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA,4BAFoE,iBAEpE,EAAA;AAAA,UAAA;;;;;;;"}
@@ -0,0 +1,5 @@
1
+ import _sfc_main from "./ResponseBody.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
5
+ //# sourceMappingURL=ResponseBody.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBody.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,13 @@
1
+ declare var __VLS_1: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ };
5
+ declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
7
+ export default _default;
8
+ type __VLS_WithSlots<T, S> = T & {
9
+ new (): {
10
+ $slots: S;
11
+ };
12
+ };
13
+ //# sourceMappingURL=ResponseBodyInfo.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyInfo.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ResponseBody/ResponseBodyInfo.vue"],"names":[],"mappings":"AAgCA,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAe/C,QAAA,MAAM,eAAe,+QACnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAE1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { createElementBlock, openBlock, createElementVNode, renderSlot } from "vue";
2
+ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
3
+ const _sfc_main = {};
4
+ const _hoisted_1 = { class: "flex justify-center px-2 py-3" };
5
+ const _hoisted_2 = { class: "text-c-3 p-2 text-sm" };
6
+ function _sfc_render(_ctx, _cache) {
7
+ return openBlock(), createElementBlock("div", _hoisted_1, [
8
+ createElementVNode("div", _hoisted_2, [
9
+ renderSlot(_ctx.$slots, "default")
10
+ ])
11
+ ]);
12
+ }
13
+ const ResponseBodyInfo = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
14
+ export {
15
+ ResponseBodyInfo as default
16
+ };
17
+ //# sourceMappingURL=ResponseBodyInfo.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyInfo.vue.js","sources":["../../../src/components/ResponseBody/ResponseBodyInfo.vue"],"sourcesContent":["<template>\n <div class=\"flex justify-center px-2 py-3\">\n <div class=\"text-c-3 p-2 text-sm\"><slot /></div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_renderSlot"],"mappings":";;;AACO,MAAA,aAAA,EAAA,OAAM,gCAA+B;AACnC,MAAA,aAAA,EAAA,OAAM,uBAAsB;;AADnC,SAAAA,UAAA,GAAAC,mBAEM,OAFN,YAEM;AAAA,IADJC,mBAAgD,OAAhD,YAAgD;AAAA,MAAdC,WAAQ,KAAA,QAAA,SAAA;AAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ import { type MediaPreview } from '../../components/ResponseBody/helpers/media-types.js';
2
+ type __VLS_Props = {
3
+ src: string;
4
+ type: string;
5
+ mode: MediaPreview;
6
+ alpha?: boolean | undefined;
7
+ };
8
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ export default _default;
10
+ //# sourceMappingURL=ResponseBodyPreview.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyPreview.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ResponseBody/ResponseBodyPreview.vue"],"names":[],"mappings":"AA8EA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,+CAA+C,CAAA;AAGjF,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,YAAY,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC5B,CAAC;;AAuJF,wBAEG"}
@@ -0,0 +1,8 @@
1
+ import _sfc_main from "./ResponseBodyPreview.vue2.js";
2
+ /* empty css */
3
+ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const ResponseBodyPreview = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-92f84612"]]);
5
+ export {
6
+ ResponseBodyPreview as default
7
+ };
8
+ //# sourceMappingURL=ResponseBodyPreview.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyPreview.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,73 @@
1
+ import { defineComponent, ref, watch, createElementBlock, createBlock, openBlock, normalizeClass, createElementVNode, withCtx, createTextVNode } from "vue";
2
+ import ResponseBodyInfo from "./ResponseBodyInfo.vue.js";
3
+ const _hoisted_1 = ["src"];
4
+ const _hoisted_2 = ["src", "type"];
5
+ const _hoisted_3 = ["src", "type"];
6
+ const _hoisted_4 = ["data", "type"];
7
+ const _sfc_main = /* @__PURE__ */ defineComponent({
8
+ __name: "ResponseBodyPreview",
9
+ props: {
10
+ src: {},
11
+ type: {},
12
+ mode: {},
13
+ alpha: { type: Boolean, default: false }
14
+ },
15
+ setup(__props) {
16
+ const error = ref(false);
17
+ watch(
18
+ () => __props.src,
19
+ () => {
20
+ error.value = false;
21
+ }
22
+ );
23
+ return (_ctx, _cache) => {
24
+ return !error.value && __props.src ? (openBlock(), createElementBlock("div", {
25
+ key: 0,
26
+ class: normalizeClass(["flex justify-center overflow-auto rounded-b", { "bg-preview p-2": __props.alpha }])
27
+ }, [
28
+ __props.mode === "image" ? (openBlock(), createElementBlock("img", {
29
+ key: 0,
30
+ class: normalizeClass(["h-full max-w-full", { rounded: __props.alpha }]),
31
+ src: __props.src,
32
+ onError: _cache[0] || (_cache[0] = ($event) => error.value = true)
33
+ }, null, 42, _hoisted_1)) : __props.mode === "video" ? (openBlock(), createElementBlock("video", {
34
+ key: 1,
35
+ autoplay: "",
36
+ controls: "",
37
+ width: "100%",
38
+ onError: _cache[1] || (_cache[1] = ($event) => error.value = true)
39
+ }, [
40
+ createElementVNode("source", {
41
+ src: __props.src,
42
+ type: __props.type
43
+ }, null, 8, _hoisted_2)
44
+ ], 32)) : __props.mode === "audio" ? (openBlock(), createElementBlock("audio", {
45
+ key: 2,
46
+ class: "my-12",
47
+ controls: "",
48
+ onError: _cache[2] || (_cache[2] = ($event) => error.value = true)
49
+ }, [
50
+ createElementVNode("source", {
51
+ src: __props.src,
52
+ type: __props.type
53
+ }, null, 8, _hoisted_3)
54
+ ], 32)) : (openBlock(), createElementBlock("object", {
55
+ key: 3,
56
+ class: "aspect-[4/3] w-full",
57
+ data: __props.src,
58
+ type: __props.type,
59
+ onError: _cache[3] || (_cache[3] = ($event) => error.value = true)
60
+ }, null, 40, _hoisted_4))
61
+ ], 2)) : (openBlock(), createBlock(ResponseBodyInfo, { key: 1 }, {
62
+ default: withCtx(() => [..._cache[4] || (_cache[4] = [
63
+ createTextVNode("Preview unavailable", -1)
64
+ ])]),
65
+ _: 1
66
+ }));
67
+ };
68
+ }
69
+ });
70
+ export {
71
+ _sfc_main as default
72
+ };
73
+ //# sourceMappingURL=ResponseBodyPreview.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyPreview.vue2.js","sources":["../../../src/components/ResponseBody/ResponseBodyPreview.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\n\nimport { type MediaPreview } from '@/components/ResponseBody/helpers/media-types'\nimport ResponseBodyInfo from '@/components/ResponseBody/ResponseBodyInfo.vue'\n\nconst {\n src,\n type,\n mode,\n alpha = false,\n} = defineProps<{\n src: string\n type: string\n mode: MediaPreview\n alpha?: boolean | undefined\n}>()\n\nconst error = ref(false)\n\nwatch(\n () => src,\n () => {\n error.value = false\n },\n)\n</script>\n<template>\n <div\n v-if=\"!error && src\"\n class=\"flex justify-center overflow-auto rounded-b\"\n :class=\"{ 'bg-preview p-2': alpha }\">\n <img\n v-if=\"mode === 'image'\"\n class=\"h-full max-w-full\"\n :class=\"{ rounded: alpha }\"\n :src=\"src\"\n @error=\"error = true\" />\n <video\n v-else-if=\"mode === 'video'\"\n autoplay\n controls\n width=\"100%\"\n @error=\"error = true\">\n <source\n :src=\"src\"\n :type=\"type\" />\n </video>\n <audio\n v-else-if=\"mode === 'audio'\"\n class=\"my-12\"\n controls\n @error=\"error = true\">\n <source\n :src=\"src\"\n :type=\"type\" />\n </audio>\n <object\n v-else\n class=\"aspect-[4/3] w-full\"\n :data=\"src\"\n :type=\"type\"\n @error=\"error = true\" />\n </div>\n <ResponseBodyInfo v-else>Preview unavailable</ResponseBodyInfo>\n</template>\n<style scoped>\n.light-mode .bg-preview {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23000' fill-opacity='10%25'%3E%3Crect width='8' height='8' /%3E%3Crect x='8' y='8' width='8' height='8' /%3E%3C/svg%3E\");\n}\n.dark-mode .bg-preview {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFF' fill-opacity='10%25'%3E%3Crect width='8' height='8' /%3E%3Crect x='8' y='8' width='8' height='8' /%3E%3C/svg%3E\");\n}\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_createBlock"],"mappings":";;;;;;;;;;;;;;;AAkBA,UAAM,QAAQ,IAAI,KAAK;AAEvB;AAAA,MACE,MAAM,QAAA;AAAA,MACN,MAAM;AACJ,cAAM,QAAQ;AAAA,MAChB;AAAA,IAAA;;AAKS,aAAA,CAAA,MAAA,SAAS,QAAA,oBADlBA,mBAmCM,OAAA;AAAA;QAjCJ,OAAKC,eAAA,CAAC,+CAA6C,EAAA,kBACvB,QAAA,OAAK,CAAA;AAAA,MAAA;QAEzB,QAAA,SAAI,wBADZD,mBAK0B,OAAA;AAAA;UAHxB,OAAKC,eAAA,CAAC,qBAAmB,EAAA,SACN,QAAA,MAAA,CAAK,CAAA;AAAA,UACvB,KAAK,QAAA;AAAA,UACL,+CAAO,MAAA,QAAK;AAAA,QAAA,4BAEF,QAAA,SAAI,wBADjBD,mBASQ,SAAA;AAAA;UAPN,UAAA;AAAA,UACA,UAAA;AAAA,UACA,OAAM;AAAA,UACL,+CAAO,MAAA,QAAK;AAAA,QAAA;UACbE,mBAEiB,UAAA;AAAA,YADd,KAAK,QAAA;AAAA,YACL,MAAM,QAAA;AAAA,UAAA;kBAGE,QAAA,SAAI,wBADjBF,mBAQQ,SAAA;AAAA;UANN,OAAM;AAAA,UACN,UAAA;AAAA,UACC,+CAAO,MAAA,QAAK;AAAA,QAAA;UACbE,mBAEiB,UAAA;AAAA,YADd,KAAK,QAAA;AAAA,YACL,MAAM,QAAA;AAAA,UAAA;gCAEXF,mBAK0B,UAAA;AAAA;UAHxB,OAAM;AAAA,UACL,MAAM,QAAA;AAAA,UACN,MAAM,QAAA;AAAA,UACN,+CAAO,MAAA,QAAK;AAAA,QAAA;6BAEjBG,YAA+D,kBAAA,EAAA,KAAA,KAAA;AAAA,yBAAtC,MAAmB,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA,0BAAnB,uBAAmB,EAAA;AAAA,QAAA;;;;;;"}
@@ -0,0 +1,7 @@
1
+ type __VLS_Props = {
2
+ content: any;
3
+ language: string;
4
+ };
5
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ export default _default;
7
+ //# sourceMappingURL=ResponseBodyRaw.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyRaw.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ResponseBody/ResponseBodyRaw.vue"],"names":[],"mappings":"AAmBA,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,GAAG,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAC;;AAiDF,wBAEG"}
@@ -0,0 +1,23 @@
1
+ import { defineComponent, createBlock, openBlock, unref } from "vue";
2
+ import { ScalarCodeBlock } from "@scalar/components";
3
+ const _sfc_main = /* @__PURE__ */ defineComponent({
4
+ __name: "ResponseBodyRaw",
5
+ props: {
6
+ content: {},
7
+ language: {}
8
+ },
9
+ setup(__props) {
10
+ const props = __props;
11
+ return (_ctx, _cache) => {
12
+ return openBlock(), createBlock(unref(ScalarCodeBlock), {
13
+ class: "codeBlock",
14
+ content: props.content,
15
+ lang: __props.language
16
+ }, null, 8, ["content", "lang"]);
17
+ };
18
+ }
19
+ });
20
+ export {
21
+ _sfc_main as default
22
+ };
23
+ //# sourceMappingURL=ResponseBodyRaw.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyRaw.vue.js","sources":["../../../src/components/ResponseBody/ResponseBodyRaw.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ScalarCodeBlock } from '@scalar/components'\n\nconst props = defineProps<{\n content: any\n language: string\n}>()\n</script>\n\n<template>\n <ScalarCodeBlock\n class=\"codeBlock\"\n :content=\"props.content\"\n :lang=\"language\" />\n</template>\n"],"names":["_createBlock","_unref"],"mappings":";;;;;;;;;AAGA,UAAM,QAAQ;;0BAOZA,YAGqBC,MAAA,eAAA,GAAA;AAAA,QAFnB,OAAM;AAAA,QACL,SAAS,MAAM;AAAA,QACf,MAAM,QAAA;AAAA,MAAA;;;;"}
@@ -0,0 +1,5 @@
1
+ import _sfc_main from "./ResponseBodyRaw.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
5
+ //# sourceMappingURL=ResponseBodyRaw.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyRaw.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,10 @@
1
+ type __VLS_Props = {
2
+ modelValue?: 'preview' | 'raw';
3
+ };
4
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
5
+ toggle: (v: "raw" | "preview") => any;
6
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
7
+ onToggle?: ((v: "raw" | "preview") => any) | undefined;
8
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ export default _default;
10
+ //# sourceMappingURL=ResponseBodyToggle.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyToggle.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ResponseBody/ResponseBodyToggle.vue"],"names":[],"mappings":"AA8BA,KAAK,WAAW,GAAG;IACjB,UAAU,CAAC,EAAE,SAAS,GAAG,KAAK,CAAA;CAC/B,CAAC;;;;;;AAkFF,wBAGG"}
@@ -0,0 +1,30 @@
1
+ import { defineComponent, createElementBlock, openBlock, createElementVNode, withModifiers, normalizeClass } from "vue";
2
+ const _hoisted_1 = { class: "text-c-3 text-xxs -my-1 flex justify-center gap-0.5 rounded p-0.5" };
3
+ const _sfc_main = /* @__PURE__ */ defineComponent({
4
+ __name: "ResponseBodyToggle",
5
+ props: {
6
+ modelValue: {}
7
+ },
8
+ emits: ["toggle"],
9
+ setup(__props, { emit: __emit }) {
10
+ const emit = __emit;
11
+ return (_ctx, _cache) => {
12
+ return openBlock(), createElementBlock("div", _hoisted_1, [
13
+ createElementVNode("button", {
14
+ class: normalizeClass(["hover:bg-b-3 rounded px-1", { "bg-b-3 text-c-1 cursor-default": __props.modelValue === "preview" }]),
15
+ type: "button",
16
+ onClick: _cache[0] || (_cache[0] = withModifiers(($event) => emit("toggle", "preview"), ["stop"]))
17
+ }, " Preview ", 2),
18
+ createElementVNode("button", {
19
+ class: normalizeClass(["hover:bg-b-3 rounded px-1", { "bg-b-3 text-c-1 cursor-default": __props.modelValue === "raw" }]),
20
+ type: "button",
21
+ onClick: _cache[1] || (_cache[1] = withModifiers(($event) => emit("toggle", "raw"), ["stop"]))
22
+ }, " Raw ", 2)
23
+ ]);
24
+ };
25
+ }
26
+ });
27
+ export {
28
+ _sfc_main as default
29
+ };
30
+ //# sourceMappingURL=ResponseBodyToggle.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyToggle.vue.js","sources":["../../../src/components/ResponseBody/ResponseBodyToggle.vue"],"sourcesContent":["<script lang=\"ts\" setup>\ndefineProps<{\n modelValue?: 'preview' | 'raw'\n}>()\n\nconst emit = defineEmits<{\n (e: 'toggle', v: 'preview' | 'raw'): void\n}>()\n</script>\n<template>\n <div\n class=\"text-c-3 text-xxs -my-1 flex justify-center gap-0.5 rounded p-0.5\">\n <button\n class=\"hover:bg-b-3 rounded px-1\"\n :class=\"{ 'bg-b-3 text-c-1 cursor-default': modelValue === 'preview' }\"\n type=\"button\"\n @click.stop=\"emit('toggle', 'preview')\">\n Preview\n </button>\n <button\n class=\"hover:bg-b-3 rounded px-1\"\n :class=\"{ 'bg-b-3 text-c-1 cursor-default': modelValue === 'raw' }\"\n type=\"button\"\n @click.stop=\"emit('toggle', 'raw')\">\n Raw\n </button>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_normalizeClass"],"mappings":";;;;;;;;;AAKA,UAAM,OAAO;;AAKX,aAAAA,UAAA,GAAAC,mBAgBM,OAhBN,YAgBM;AAAA,QAdJC,mBAMS,UAAA;AAAA,UALP,OAAKC,eAAA,CAAC,6BAA2B,EAAA,kCACW,QAAA,eAAU,UAAA,CAAA,CAAA;AAAA,UACtD,MAAK;AAAA,UACJ,6DAAY,KAAI,UAAA,SAAA,GAAA,CAAA,MAAA,CAAA;AAAA,QAAA,GAAuB,aAE1C,CAAA;AAAA,QACAD,mBAMS,UAAA;AAAA,UALP,OAAKC,eAAA,CAAC,6BAA2B,EAAA,kCACW,QAAA,eAAU,MAAA,CAAA,CAAA;AAAA,UACtD,MAAK;AAAA,UACJ,6DAAY,KAAI,UAAA,KAAA,GAAA,CAAA,MAAA,CAAA;AAAA,QAAA,GAAmB,SAEtC,CAAA;AAAA,MAAA;;;;"}
@@ -0,0 +1,5 @@
1
+ import _sfc_main from "./ResponseBodyToggle.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
5
+ //# sourceMappingURL=ResponseBodyToggle.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseBodyToggle.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}