@scalar/agent-chat 0.1.2 → 0.2.0
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.
- package/{dist/App.vue.d.ts → App.vue.d.ts} +2 -2
- package/App.vue.d.ts.map +1 -0
- package/{dist/App.vue.js → App.vue.js} +9 -3
- package/App.vue.js.map +1 -0
- package/{dist/Chat.vue.js → Chat.vue.js} +3 -3
- package/Chat.vue.js.map +1 -0
- package/components/ApprovalSection.vue.d.ts +9 -0
- package/components/ApprovalSection.vue.d.ts.map +1 -0
- package/components/ApprovalSection.vue.js +8 -0
- package/components/ApprovalSection.vue.js.map +1 -0
- package/components/ApprovalSection.vue2.js +47 -0
- package/components/ApprovalSection.vue2.js.map +1 -0
- package/components/AutosendPaused.vue.d.ts +3 -0
- package/components/AutosendPaused.vue.d.ts.map +1 -0
- package/components/AutosendPaused.vue.js +15 -0
- package/components/AutosendPaused.vue.js.map +1 -0
- package/{dist/components → components}/ContextItem.vue.d.ts.map +1 -1
- package/{dist/components → components}/ContextItem.vue.js +1 -1
- package/{dist/components → components}/ContextItem.vue2.js +1 -1
- package/components/ContextItem.vue2.js.map +1 -0
- package/components/ErrorMessage.vue.d.ts +6 -0
- package/components/ErrorMessage.vue.d.ts.map +1 -0
- package/components/ErrorMessage.vue.js +8 -0
- package/components/ErrorMessage.vue.js.map +1 -0
- package/components/ErrorMessage.vue2.js +28 -0
- package/components/ErrorMessage.vue2.js.map +1 -0
- package/{dist/components → components}/LoadingMiniOpenAPIDoc.vue.d.ts.map +1 -1
- package/components/LoadingMiniOpenAPIDoc.vue.js +16 -0
- package/components/LoadingMiniOpenAPIDoc.vue.js.map +1 -0
- package/components/LoadingOpenAPISpecsSummary.vue.d.ts +3 -0
- package/components/LoadingOpenAPISpecsSummary.vue.d.ts.map +1 -0
- package/components/LoadingOpenAPISpecsSummary.vue.js +16 -0
- package/components/LoadingOpenAPISpecsSummary.vue.js.map +1 -0
- package/components/RequestApproved.vue.d.ts +3 -0
- package/components/RequestApproved.vue.d.ts.map +1 -0
- package/components/RequestApproved.vue.js +15 -0
- package/components/RequestApproved.vue.js.map +1 -0
- package/components/RequestFailed.vue.d.ts +3 -0
- package/components/RequestFailed.vue.d.ts.map +1 -0
- package/components/RequestFailed.vue.js +26 -0
- package/components/RequestFailed.vue.js.map +1 -0
- package/components/RequestPreview.vue.d.ts +10 -0
- package/components/RequestPreview.vue.d.ts.map +1 -0
- package/components/RequestPreview.vue.js +9 -0
- package/components/RequestPreview.vue.js.map +1 -0
- package/components/RequestPreview.vue2.js +150 -0
- package/components/RequestPreview.vue2.js.map +1 -0
- package/components/RequestRejected.vue.d.ts +3 -0
- package/components/RequestRejected.vue.d.ts.map +1 -0
- package/components/RequestRejected.vue.js +24 -0
- package/components/RequestRejected.vue.js.map +1 -0
- package/components/RequestSuccess.vue.d.ts +3 -0
- package/components/RequestSuccess.vue.d.ts.map +1 -0
- package/components/RequestSuccess.vue.js +15 -0
- package/components/RequestSuccess.vue.js.map +1 -0
- package/components/ResponseBody/ResponseBody.vue.d.ts +15 -0
- package/components/ResponseBody/ResponseBody.vue.d.ts.map +1 -0
- package/components/ResponseBody/ResponseBody.vue.js +45 -0
- package/components/ResponseBody/ResponseBody.vue.js.map +1 -0
- package/components/ResponseBody/ResponseBody.vue2.js +5 -0
- package/components/ResponseBody/ResponseBody.vue2.js.map +1 -0
- package/components/ResponseBody/ResponseBodyInfo.vue.d.ts +13 -0
- package/components/ResponseBody/ResponseBodyInfo.vue.d.ts.map +1 -0
- package/components/ResponseBody/ResponseBodyInfo.vue.js +17 -0
- package/components/ResponseBody/ResponseBodyInfo.vue.js.map +1 -0
- package/components/ResponseBody/ResponseBodyPreview.vue.d.ts +10 -0
- package/components/ResponseBody/ResponseBodyPreview.vue.d.ts.map +1 -0
- package/components/ResponseBody/ResponseBodyPreview.vue.js +8 -0
- package/components/ResponseBody/ResponseBodyPreview.vue.js.map +1 -0
- package/components/ResponseBody/ResponseBodyPreview.vue2.js +73 -0
- package/components/ResponseBody/ResponseBodyPreview.vue2.js.map +1 -0
- package/components/ResponseBody/ResponseBodyRaw.vue.d.ts +7 -0
- package/components/ResponseBody/ResponseBodyRaw.vue.d.ts.map +1 -0
- package/components/ResponseBody/ResponseBodyRaw.vue.js +23 -0
- package/components/ResponseBody/ResponseBodyRaw.vue.js.map +1 -0
- package/components/ResponseBody/ResponseBodyRaw.vue2.js +5 -0
- package/components/ResponseBody/ResponseBodyRaw.vue2.js.map +1 -0
- package/components/ResponseBody/ResponseBodyToggle.vue.d.ts +10 -0
- package/components/ResponseBody/ResponseBodyToggle.vue.d.ts.map +1 -0
- package/components/ResponseBody/ResponseBodyToggle.vue.js +30 -0
- package/components/ResponseBody/ResponseBodyToggle.vue.js.map +1 -0
- package/components/ResponseBody/ResponseBodyToggle.vue2.js +5 -0
- package/components/ResponseBody/ResponseBodyToggle.vue2.js.map +1 -0
- package/components/ResponseBody/helpers/media-types.d.ts +15 -0
- package/components/ResponseBody/helpers/media-types.d.ts.map +1 -0
- package/components/ResponseBody/helpers/media-types.js +134 -0
- package/components/ResponseBody/helpers/media-types.js.map +1 -0
- package/components/ResponseBody/helpers/process-response-body.d.ts +10 -0
- package/components/ResponseBody/helpers/process-response-body.d.ts.map +1 -0
- package/components/ResponseBody/helpers/process-response-body.js +63 -0
- package/components/ResponseBody/helpers/process-response-body.js.map +1 -0
- package/components/SearchPopover.vue.d.ts +13 -0
- package/components/SearchPopover.vue.d.ts.map +1 -0
- package/components/SearchPopover.vue.js +8 -0
- package/components/SearchPopover.vue.js.map +1 -0
- package/components/SearchPopover.vue2.js +78 -0
- package/components/SearchPopover.vue2.js.map +1 -0
- package/{dist/components → components}/SendingRequest.vue.d.ts.map +1 -1
- package/{dist/components → components}/SendingRequest.vue.js +1 -1
- package/{dist/components → components}/SendingRequest.vue.js.map +1 -1
- package/{dist/components → components}/Suggestion.vue.d.ts.map +1 -1
- package/{dist/components → components}/Suggestion.vue.js +1 -1
- package/{dist/components → components}/Suggestion.vue2.js +1 -1
- package/{dist/components → components}/Suggestion.vue2.js.map +1 -1
- package/{dist/components → components}/TestRequestButton.vue2.js +1 -1
- package/{dist/components → components}/TestRequestButton.vue2.js.map +1 -1
- package/helpers.d.ts +418 -0
- package/helpers.d.ts.map +1 -0
- package/helpers.js +201 -0
- package/helpers.js.map +1 -0
- package/hooks/useChatApprovals.d.ts +24 -0
- package/hooks/useChatApprovals.d.ts.map +1 -0
- package/hooks/useChatApprovals.js +25 -0
- package/hooks/useChatApprovals.js.map +1 -0
- package/{dist/hooks → hooks}/useChatOperationBlocks.js +1 -1
- package/hooks/useSearch.d.ts +26 -0
- package/hooks/useSearch.d.ts.map +1 -0
- package/hooks/useSearch.js +36 -0
- package/hooks/useSearch.js.map +1 -0
- package/package.json +3 -36
- package/registry/add-documents-to-store.d.ts +21 -0
- package/registry/add-documents-to-store.d.ts.map +1 -0
- package/registry/add-documents-to-store.js +42 -0
- package/registry/add-documents-to-store.js.map +1 -0
- package/{dist/state → state}/state.d.ts +29 -14
- package/state/state.d.ts.map +1 -0
- package/{dist/state → state}/state.js +45 -40
- package/state/state.js.map +1 -0
- package/{dist/style.css → style.css} +686 -234
- package/{dist/views → views}/Chat/Chat.vue.d.ts.map +1 -1
- package/{dist/views → views}/Chat/Chat.vue.js +1 -1
- package/{dist/views → views}/Chat/Chat.vue2.js +17 -5
- package/views/Chat/Chat.vue2.js.map +1 -0
- package/{dist/views → views}/Chat/Messages/ExecuteRequestTool.vue.d.ts.map +1 -1
- package/{dist/views → views}/Chat/Messages/ExecuteRequestTool.vue.js +1 -1
- package/views/Chat/Messages/ExecuteRequestTool.vue2.js +39 -0
- package/views/Chat/Messages/ExecuteRequestTool.vue2.js.map +1 -0
- package/{dist/views → views}/Chat/Messages/GetMiniOpenAPIDocTool.vue.d.ts.map +1 -1
- package/{dist/views → views}/Chat/Messages/GetMiniOpenAPIDocTool.vue.js +1 -1
- package/{dist/views → views}/Chat/Messages/GetMiniOpenAPIDocTool.vue2.js +2 -3
- package/views/Chat/Messages/GetMiniOpenAPIDocTool.vue2.js.map +1 -0
- package/views/Chat/Messages/GetOpenAPISpecsSummary.vue.d.ts +11 -0
- package/views/Chat/Messages/GetOpenAPISpecsSummary.vue.d.ts.map +1 -0
- package/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js +32 -0
- package/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js.map +1 -0
- package/views/Chat/Messages/GetOpenAPISpecsSummary.vue2.js +5 -0
- package/views/Chat/Messages/GetOpenAPISpecsSummary.vue2.js.map +1 -0
- package/{dist/views → views}/Chat/Messages/Text.vue.js +1 -1
- package/{dist/views → views}/Chat/Messages/Text.vue.js.map +1 -1
- package/views/Layout.vue.d.ts.map +1 -0
- package/{dist/views → views}/Layout.vue.js +1 -1
- package/{dist/views → views}/Layout.vue2.js +0 -4
- package/views/Layout.vue2.js.map +1 -0
- package/{dist/views → views}/PromptForm.vue.d.ts.map +1 -1
- package/{dist/views → views}/PromptForm.vue.js +1 -1
- package/views/PromptForm.vue2.js +182 -0
- package/views/PromptForm.vue2.js.map +1 -0
- package/{dist/views → views/Settings}/Auth.vue.d.ts +1 -0
- package/views/Settings/Auth.vue.d.ts.map +1 -0
- package/{dist/views → views/Settings}/Auth.vue.js +21 -26
- package/views/Settings/Auth.vue.js.map +1 -0
- package/views/Settings/DocSettings.vue.d.ts +8 -0
- package/views/Settings/DocSettings.vue.d.ts.map +1 -0
- package/views/Settings/DocSettings.vue.js +8 -0
- package/views/Settings/DocSettings.vue.js.map +1 -0
- package/views/Settings/DocSettings.vue2.js +50 -0
- package/views/Settings/DocSettings.vue2.js.map +1 -0
- package/views/Settings/Settings.vue.d.ts.map +1 -0
- package/{dist/views → views/Settings}/Settings.vue.js +2 -2
- package/views/Settings/Settings.vue2.js +78 -0
- package/views/Settings/Settings.vue2.js.map +1 -0
- package/views/Start.vue.d.ts.map +1 -0
- package/{dist/views → views}/Start.vue.js +1 -1
- package/{dist/views → views}/Start.vue2.js +0 -1
- package/views/Start.vue2.js.map +1 -0
- package/dist/App.vue.d.ts.map +0 -1
- package/dist/App.vue.js.map +0 -1
- package/dist/Chat.vue.js.map +0 -1
- package/dist/components/ContextItem.vue2.js.map +0 -1
- package/dist/components/LoadingMiniOpenAPIDoc.vue.js +0 -32
- package/dist/components/LoadingMiniOpenAPIDoc.vue.js.map +0 -1
- package/dist/helpers.d.ts +0 -39
- package/dist/helpers.d.ts.map +0 -1
- package/dist/helpers.js +0 -111
- package/dist/helpers.js.map +0 -1
- package/dist/hooks/useActiveServer.d.ts +0 -2
- package/dist/hooks/useActiveServer.d.ts.map +0 -1
- package/dist/hooks/useActiveServer.js +0 -20
- package/dist/hooks/useActiveServer.js.map +0 -1
- package/dist/hooks/useSecuritySchemes.d.ts +0 -2
- package/dist/hooks/useSecuritySchemes.d.ts.map +0 -1
- package/dist/hooks/useSecuritySchemes.js +0 -29
- package/dist/hooks/useSecuritySchemes.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/api.js +0 -11
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/api.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/core.js +0 -58
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/core.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/errors.js +0 -25
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/errors.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/parse.js +0 -64
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/parse.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/regexes.js +0 -8
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/regexes.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/schemas.js +0 -181
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/schemas.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/util.js +0 -61
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/util.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/versions.js +0 -9
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/core/versions.js.map +0 -1
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/mini/schemas.js +0 -60
- package/dist/node_modules/.pnpm/zod@4.1.11/node_modules/zod/v4/mini/schemas.js.map +0 -1
- package/dist/package.json +0 -63
- package/dist/registry/get-document.d.ts +0 -4
- package/dist/registry/get-document.d.ts.map +0 -1
- package/dist/registry/get-document.js +0 -23
- package/dist/registry/get-document.js.map +0 -1
- package/dist/state/state.d.ts.map +0 -1
- package/dist/state/state.js.map +0 -1
- package/dist/views/Auth.vue.d.ts.map +0 -1
- package/dist/views/Auth.vue.js.map +0 -1
- package/dist/views/Chat/Chat.vue2.js.map +0 -1
- package/dist/views/Chat/Messages/ExecuteRequestTool.vue2.js +0 -62
- package/dist/views/Chat/Messages/ExecuteRequestTool.vue2.js.map +0 -1
- package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue2.js.map +0 -1
- package/dist/views/Layout.vue.d.ts.map +0 -1
- package/dist/views/Layout.vue2.js.map +0 -1
- package/dist/views/PromptForm.vue2.js +0 -125
- package/dist/views/PromptForm.vue2.js.map +0 -1
- package/dist/views/Settings.vue.d.ts.map +0 -1
- package/dist/views/Settings.vue2.js +0 -81
- package/dist/views/Settings.vue2.js.map +0 -1
- package/dist/views/Start.vue.d.ts.map +0 -1
- package/dist/views/Start.vue2.js.map +0 -1
- /package/{dist/App.vue2.js → App.vue2.js} +0 -0
- /package/{dist/App.vue2.js.map → App.vue2.js.map} +0 -0
- /package/{dist/Chat.vue.d.ts → Chat.vue.d.ts} +0 -0
- /package/{dist/Chat.vue.d.ts.map → Chat.vue.d.ts.map} +0 -0
- /package/{dist/Chat.vue2.js → Chat.vue2.js} +0 -0
- /package/{dist/Chat.vue2.js.map → Chat.vue2.js.map} +0 -0
- /package/{dist/_virtual → _virtual}/_plugin-vue_export-helper.js +0 -0
- /package/{dist/_virtual → _virtual}/_plugin-vue_export-helper.js.map +0 -0
- /package/{dist/components → components}/ContextItem.vue.d.ts +0 -0
- /package/{dist/components → components}/ContextItem.vue.js.map +0 -0
- /package/{dist/components → components}/Endpoint.vue.d.ts +0 -0
- /package/{dist/components → components}/Endpoint.vue.d.ts.map +0 -0
- /package/{dist/components → components}/Endpoint.vue.js +0 -0
- /package/{dist/components → components}/Endpoint.vue.js.map +0 -0
- /package/{dist/components → components}/Endpoint.vue2.js +0 -0
- /package/{dist/components → components}/Endpoint.vue2.js.map +0 -0
- /package/{dist/components → components}/LoadingMiniOpenAPIDoc.vue.d.ts +0 -0
- /package/{dist/components → components}/Logo.vue.d.ts +0 -0
- /package/{dist/components → components}/Logo.vue.d.ts.map +0 -0
- /package/{dist/components → components}/Logo.vue.js +0 -0
- /package/{dist/components → components}/Logo.vue.js.map +0 -0
- /package/{dist/components → components}/SendingRequest.vue.d.ts +0 -0
- /package/{dist/components → components}/Suggestion.vue.d.ts +0 -0
- /package/{dist/components → components}/Suggestion.vue.js.map +0 -0
- /package/{dist/components → components}/TestRequestButton.vue.d.ts +0 -0
- /package/{dist/components → components}/TestRequestButton.vue.d.ts.map +0 -0
- /package/{dist/components → components}/TestRequestButton.vue.js +0 -0
- /package/{dist/components → components}/TestRequestButton.vue.js.map +0 -0
- /package/{dist/hooks → hooks}/useChatOperationBlocks.d.ts +0 -0
- /package/{dist/hooks → hooks}/useChatOperationBlocks.d.ts.map +0 -0
- /package/{dist/hooks → hooks}/useChatOperationBlocks.js.map +0 -0
- /package/{dist/hooks → hooks}/useChatScroll.d.ts +0 -0
- /package/{dist/hooks → hooks}/useChatScroll.d.ts.map +0 -0
- /package/{dist/hooks → hooks}/useChatScroll.js +0 -0
- /package/{dist/hooks → hooks}/useChatScroll.js.map +0 -0
- /package/{dist/index.d.ts → index.d.ts} +0 -0
- /package/{dist/index.d.ts.map → index.d.ts.map} +0 -0
- /package/{dist/index.js → index.js} +0 -0
- /package/{dist/index.js.map → index.js.map} +0 -0
- /package/{dist/views → views}/Chat/Chat.vue.d.ts +0 -0
- /package/{dist/views → views}/Chat/Chat.vue.js.map +0 -0
- /package/{dist/views → views}/Chat/Messages/ExecuteRequestTool.vue.d.ts +0 -0
- /package/{dist/views → views}/Chat/Messages/ExecuteRequestTool.vue.js.map +0 -0
- /package/{dist/views → views}/Chat/Messages/GetMiniOpenAPIDocTool.vue.d.ts +0 -0
- /package/{dist/views → views}/Chat/Messages/GetMiniOpenAPIDocTool.vue.js.map +0 -0
- /package/{dist/views → views}/Chat/Messages/Text.vue.d.ts +0 -0
- /package/{dist/views → views}/Chat/Messages/Text.vue.d.ts.map +0 -0
- /package/{dist/views → views}/Chat/Messages/Text.vue2.js +0 -0
- /package/{dist/views → views}/Chat/Messages/Text.vue2.js.map +0 -0
- /package/{dist/views → views}/Layout.vue.d.ts +0 -0
- /package/{dist/views → views}/Layout.vue.js.map +0 -0
- /package/{dist/views → views}/PromptForm.vue.d.ts +0 -0
- /package/{dist/views → views}/PromptForm.vue.js.map +0 -0
- /package/{dist/views → views/Settings}/Auth.vue2.js +0 -0
- /package/{dist/views → views/Settings}/Auth.vue2.js.map +0 -0
- /package/{dist/views → views/Settings}/Settings.vue.d.ts +0 -0
- /package/{dist/views → views/Settings}/Settings.vue.js.map +0 -0
- /package/{dist/views → views}/Start.vue.d.ts +0 -0
- /package/{dist/views → views}/Start.vue.js.map +0 -0
|
@@ -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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"ResponseBodyToggle.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type MediaPreview = 'object' | 'image' | 'video' | 'audio';
|
|
2
|
+
export type MediaConfig = {
|
|
3
|
+
preview?: MediaPreview;
|
|
4
|
+
alpha?: boolean;
|
|
5
|
+
raw?: boolean;
|
|
6
|
+
language?: string;
|
|
7
|
+
extension: string;
|
|
8
|
+
};
|
|
9
|
+
/** Media Types (MIME Types) that can be displayed as raw text */
|
|
10
|
+
export declare const textMediaTypes: string[];
|
|
11
|
+
/** Get the config for a media type */
|
|
12
|
+
export declare function getMediaTypeConfig(type: string): MediaConfig | undefined;
|
|
13
|
+
/** Check if a media type that can be displayed as raw text */
|
|
14
|
+
export declare function isTextMediaType(type: string): boolean;
|
|
15
|
+
//# sourceMappingURL=media-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-types.d.ts","sourceRoot":"","sources":["../../../../src/components/ResponseBody/helpers/media-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;AAEjE,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAuHD,iEAAiE;AACjE,eAAO,MAAM,cAAc,EAAE,MAAM,EAEX,CAAA;AAExB,sCAAsC;AACtC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAgBxE;AAED,8DAA8D;AAC9D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
const mediaTypes = {
|
|
2
|
+
"application/epub+zip": { extension: ".epub" },
|
|
3
|
+
"application/gzip": { extension: ".gz" },
|
|
4
|
+
"application/java-archive": { extension: ".jar" },
|
|
5
|
+
"application/javascript": { extension: ".js", raw: true },
|
|
6
|
+
"application/json": { extension: ".json", raw: true, language: "json" },
|
|
7
|
+
"application/ld+json": { extension: ".jsonld", raw: true, language: "json" },
|
|
8
|
+
"application/problem+json": {
|
|
9
|
+
extension: ".json",
|
|
10
|
+
raw: true,
|
|
11
|
+
language: "json"
|
|
12
|
+
},
|
|
13
|
+
"application/vnd.api+json": {
|
|
14
|
+
extension: ".json",
|
|
15
|
+
raw: true,
|
|
16
|
+
language: "json"
|
|
17
|
+
},
|
|
18
|
+
"application/dns-json": { extension: ".json", raw: true, language: "json" },
|
|
19
|
+
"application/msword": { extension: ".doc" },
|
|
20
|
+
"application/octet-stream": { extension: ".bin" },
|
|
21
|
+
"application/ogg": { extension: ".ogx" },
|
|
22
|
+
"application/pdf": { extension: ".pdf", preview: "object" },
|
|
23
|
+
"application/rtf": { extension: ".rtf", raw: true },
|
|
24
|
+
"application/vnd.amazon.ebook": { extension: ".azw" },
|
|
25
|
+
"application/vnd.apple.installer+xml": {
|
|
26
|
+
extension: ".mpkg",
|
|
27
|
+
raw: true,
|
|
28
|
+
language: "xml"
|
|
29
|
+
},
|
|
30
|
+
"application/vnd.mozilla.xul+xml": {
|
|
31
|
+
extension: ".xul",
|
|
32
|
+
raw: true,
|
|
33
|
+
language: "xml"
|
|
34
|
+
},
|
|
35
|
+
"application/vnd.ms-excel": { extension: ".xls" },
|
|
36
|
+
"application/vnd.ms-fontobject": { extension: ".eot" },
|
|
37
|
+
"application/vnd.ms-powerpoint": { extension: ".ppt" },
|
|
38
|
+
"application/vnd.oasis.opendocument.presentation": { extension: ".odp" },
|
|
39
|
+
"application/vnd.oasis.opendocument.spreadsheet": { extension: ".ods" },
|
|
40
|
+
"application/vnd.oasis.opendocument.text": { extension: ".odt" },
|
|
41
|
+
"application/vnd.openxmlformats-officedocument.presentationml.presentation": {
|
|
42
|
+
extension: ".pptx"
|
|
43
|
+
},
|
|
44
|
+
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
|
|
45
|
+
extension: ".xlsx"
|
|
46
|
+
},
|
|
47
|
+
"application/vnd.openxmlformats-officedocument.wordprocessingml.document": {
|
|
48
|
+
extension: ".docx"
|
|
49
|
+
},
|
|
50
|
+
"application/vnd.rar": { extension: ".rar" },
|
|
51
|
+
"application/vnd.visio": { extension: ".vsd" },
|
|
52
|
+
"application/x-7z-compressed": { extension: ".7z" },
|
|
53
|
+
"application/x-abiword": { extension: ".abw" },
|
|
54
|
+
"application/x-bzip": { extension: ".bz" },
|
|
55
|
+
"application/x-bzip2": { extension: ".bz2" },
|
|
56
|
+
"application/x-cdf": { extension: ".cda" },
|
|
57
|
+
"application/x-csh": { extension: ".csh" },
|
|
58
|
+
"application/x-freearc": { extension: ".arc" },
|
|
59
|
+
"application/x-httpd-php": { extension: ".php", raw: true },
|
|
60
|
+
"application/x-sh": { extension: ".sh", raw: true },
|
|
61
|
+
"application/x-tar": { extension: ".tar" },
|
|
62
|
+
"application/xhtml+xml": { extension: ".xhtml", raw: true, language: "html" },
|
|
63
|
+
"application/xml": { extension: ".xml", raw: true, language: "xml" },
|
|
64
|
+
"application/yaml": { extension: ".yaml", raw: true, language: "yaml" },
|
|
65
|
+
"application/zip": { extension: ".zip" },
|
|
66
|
+
"audio/aac": { extension: ".aac" },
|
|
67
|
+
"audio/midi": { extension: ".midi" },
|
|
68
|
+
"audio/mpeg": { extension: ".mp3", preview: "audio" },
|
|
69
|
+
"audio/ogg": { extension: ".oga" },
|
|
70
|
+
"audio/wav": { extension: ".wav" },
|
|
71
|
+
"audio/webm": { extension: ".weba" },
|
|
72
|
+
"font/otf": { extension: ".otf" },
|
|
73
|
+
"font/ttf": { extension: ".ttf" },
|
|
74
|
+
"font/woff": { extension: ".woff" },
|
|
75
|
+
"font/woff2": { extension: ".woff2" },
|
|
76
|
+
"image/apng": { extension: ".apng", preview: "image", alpha: true },
|
|
77
|
+
"image/avif": { extension: ".avif", preview: "image" },
|
|
78
|
+
"image/bmp": { extension: ".bmp", preview: "image" },
|
|
79
|
+
"image/gif": { extension: ".gif", preview: "image", alpha: true },
|
|
80
|
+
"image/jpeg": { extension: ".jpg", preview: "image" },
|
|
81
|
+
"image/png": { extension: ".png", preview: "image", alpha: true },
|
|
82
|
+
"image/svg+xml": {
|
|
83
|
+
extension: ".svg",
|
|
84
|
+
raw: true,
|
|
85
|
+
language: "xml",
|
|
86
|
+
preview: "image",
|
|
87
|
+
alpha: true
|
|
88
|
+
},
|
|
89
|
+
"image/tiff": { extension: ".tiff" },
|
|
90
|
+
"image/vnd.microsoft.icon": { extension: ".ico", preview: "image" },
|
|
91
|
+
"image/webp": { extension: ".webp", preview: "image", alpha: true },
|
|
92
|
+
"text/calendar": { extension: ".ics", raw: true },
|
|
93
|
+
"text/css": { extension: ".css", raw: true, language: "css" },
|
|
94
|
+
"text/csv": { extension: ".csv", raw: true },
|
|
95
|
+
"text/html": {
|
|
96
|
+
extension: ".html",
|
|
97
|
+
raw: true,
|
|
98
|
+
language: "html",
|
|
99
|
+
preview: "object"
|
|
100
|
+
},
|
|
101
|
+
"text/javascript": { extension: ".js", raw: true },
|
|
102
|
+
"text/plain": { extension: ".txt", raw: true },
|
|
103
|
+
"text/xml": { extension: ".xml", raw: true, language: "xml" },
|
|
104
|
+
"text/yaml": { extension: ".yaml", raw: true, language: "yaml" },
|
|
105
|
+
"video/3gpp": { extension: ".3gp" },
|
|
106
|
+
"audio/3gpp": { extension: ".3gp" },
|
|
107
|
+
"video/3gpp2": { extension: ".3g2" },
|
|
108
|
+
"audio/3gpp2": { extension: ".3g2" },
|
|
109
|
+
"video/mp2t": { extension: ".ts" },
|
|
110
|
+
"video/mp4": { extension: ".mp4", preview: "video" },
|
|
111
|
+
"video/mpeg": { extension: ".mpeg" },
|
|
112
|
+
"video/ogg": { extension: ".ogv" },
|
|
113
|
+
"video/webm": { extension: ".webm", preview: "video" },
|
|
114
|
+
"video/x-msvideo": { extension: ".avi" }
|
|
115
|
+
};
|
|
116
|
+
Object.entries(mediaTypes).filter(([, config]) => config?.raw).map(([type]) => type);
|
|
117
|
+
function getMediaTypeConfig(type) {
|
|
118
|
+
const config = mediaTypes[type];
|
|
119
|
+
if (config) {
|
|
120
|
+
return config;
|
|
121
|
+
}
|
|
122
|
+
if (type.endsWith("+json")) {
|
|
123
|
+
return {
|
|
124
|
+
extension: ".json",
|
|
125
|
+
raw: true,
|
|
126
|
+
language: "json"
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
return void 0;
|
|
130
|
+
}
|
|
131
|
+
export {
|
|
132
|
+
getMediaTypeConfig
|
|
133
|
+
};
|
|
134
|
+
//# sourceMappingURL=media-types.js.map
|