@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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.vue2.js","sources":["../../../src/views/Chat/Chat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { setCustomComponents } from 'markstream-vue'\nimport { reactive, toRef } from 'vue'\n\nimport {\n EXECUTE_REQUEST_TOOL_NAME,\n GET_MINI_OPENAPI_SPEC_TOOL_NAME,\n} from '@scalar-org/entities/agent/tools'\n\nimport Endpoint from '@/components/Endpoint.vue'\nimport { useState } from '@/state/state'\nimport ExecuteRequestTool from '@/views/Chat/Messages/ExecuteRequestTool.vue'\nimport GetMiniOpenAPIDocTool from '@/views/Chat/Messages/GetMiniOpenAPIDocTool.vue'\nimport Text from '@/views/Chat/Messages/Text.vue'\nimport PromptForm from '@/views/PromptForm.vue'\n\nconst emit = defineEmits<{\n (e: 'submit'): void\n}>()\n\nconst state = useState()\n\nsetCustomComponents({\n operation: Endpoint,\n})\n</script>\n\n<template>\n <div class=\"chat\">\n <template\n v-for=\"message in state.chat.messages\"\n :key=\"message.id\">\n <template v-if=\"message.role === 'user'\">\n <div\n v-for=\"(part, index) in message.parts\"\n :key=\"`${message.id}-${index}`\"\n class=\"userMessage\">\n <p v-if=\"part.type === 'text'\">{{ part.text }}</p>\n </div>\n </template>\n <template v-if=\"message.role === 'assistant'\">\n <div\n v-for=\"(part, index) in message.parts\"\n :key=\"`${message.id}-${index}`\">\n <Text\n v-if=\"part.type === 'text'\"\n :messagePart=\"toRef(part)\" />\n <ExecuteRequestTool\n v-if=\"part.type === (`tool-${EXECUTE_REQUEST_TOOL_NAME}` as const)\"\n :messagePart=\"toRef(part)\" />\n <GetMiniOpenAPIDocTool\n v-if=\"\n part.type === (`tool-${GET_MINI_OPENAPI_SPEC_TOOL_NAME}` as const)\n \"\n :message=\"reactive(message)\"\n :messagePart=\"toRef(part)\" />\n </div>\n </template>\n </template>\n <div class=\"spacer\"></div>\n </div>\n <div class=\"formContainer\">\n <PromptForm @submit=\"emit('submit')\" />\n </div>\n</template>\n\n<style scoped>\n.chat {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 10px;\n width: 100%;\n max-width: 800px;\n margin: 0 30px;\n}\n\n.userMessage {\n background: var(--scalar-background-3);\n padding: 10px 18px;\n border-radius: 25px;\n margin-left: auto;\n}\n\n.spacer {\n min-height: 180px;\n width: 100%;\n}\n\n.formContainer {\n position: fixed;\n bottom: 20px;\n width: 100%;\n max-width: 800px;\n z-index: 1;\n padding: 0 15px;\n}\n</style>\n"],"names":["_createElementVNode","_openBlock","_createElementBlock","_Fragment","_unref","_toDisplayString","_createBlock","Text","_createVNode"],"mappings":";;;;;;;;;;;;;;;;AAgBA,UAAM,OAAO;AAIb,UAAM,QAAQ,SAAA;AAEd,wBAAoB;AAAA,MAClB,WAAW;AAAA,IAAA,CACZ;;;QAICA,mBAgCM,OAhCN,YAgCM;AAAA,WA/BJC,UAAA,IAAA,GAAAC,mBA6BWC,2BA5BSC,MAAA,KAAA,EAAM,KAAK,WAAtB,YAAO;;cACR,KAAA,QAAQ;AAAA,YAAA;cACE,QAAQ,SAAI,UAC1BH,UAAA,IAAA,GAAAC,mBAKMC,iCAJoB,QAAQ,OAAK,CAA7B,MAAM,UAAK;oCADrBD,mBAKM,OAAA;AAAA,kBAHH,KAAG,GAAK,QAAQ,EAAE,IAAI,KAAK;AAAA,kBAC5B,OAAM;AAAA,gBAAA;kBACG,KAAK,SAAI,uBAAlBA,mBAAkD,KAAA,YAAAG,gBAAhB,KAAK,IAAI,GAAA,CAAA;;;cAG/B,QAAQ,SAAI,eAC1BJ,UAAA,IAAA,GAAAC,mBAeMC,iCAdoB,QAAQ,OAAK,CAA7B,MAAM,UAAK;oCADrBD,mBAeM,OAAA;AAAA,kBAbH,KAAG,GAAK,QAAQ,EAAE,IAAI,KAAK;AAAA,gBAAA;kBAEpB,KAAK,SAAI,uBADjBI,YAE+BC,aAAA;AAAA;oBAA5B,aAAa,MAAM,IAAI;AAAA,kBAAA;kBAElB,KAAK,SAAI,QAAcH,MAAA,yBAAA,CAAyB,mBADxDE,YAE+B,oBAAA;AAAA;oBAA5B,aAAa,MAAM,IAAI;AAAA,kBAAA;kBAEH,KAAK,SAAI,QAAcF,MAAA,+BAAA,CAA+B,mBAD7EE,YAK+B,uBAAA;AAAA;oBAD5B,SAAS,SAAS,OAAO;AAAA,oBACzB,aAAa,MAAM,IAAI;AAAA,kBAAA;;;;;oCAIhCN,mBAA0B,OAAA,EAArB,OAAM,YAAQ,MAAA,EAAA;AAAA,QAAA;QAErBA,mBAEM,OAFN,YAEM;AAAA,UADJQ,YAAuC,YAAA;AAAA,YAA1B,gDAAQ,KAAI,QAAA;AAAA,UAAA;;;;;;"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { defineComponent, createElementBlock, openBlock, createCommentVNode, unref, createVNode, withCtx, createTextVNode } from "vue";
|
|
2
|
-
import { ScalarButton, ScalarCodeBlock } from "@scalar/components";
|
|
3
|
-
import SendingRequest from "../../../components/SendingRequest.vue.js";
|
|
4
|
-
import { useState } from "../../../state/state.js";
|
|
5
|
-
const _hoisted_1 = { class: "executeRequestTool" };
|
|
6
|
-
const _hoisted_2 = { key: 0 };
|
|
7
|
-
const _hoisted_3 = { key: 1 };
|
|
8
|
-
const _hoisted_4 = {
|
|
9
|
-
key: 2,
|
|
10
|
-
class: "tool"
|
|
11
|
-
};
|
|
12
|
-
const _hoisted_5 = {
|
|
13
|
-
key: 3,
|
|
14
|
-
class: "tool"
|
|
15
|
-
};
|
|
16
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
17
|
-
__name: "ExecuteRequestTool",
|
|
18
|
-
props: {
|
|
19
|
-
messagePart: {}
|
|
20
|
-
},
|
|
21
|
-
setup(__props) {
|
|
22
|
-
const state = useState();
|
|
23
|
-
return (_ctx, _cache) => {
|
|
24
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
25
|
-
_ctx.messagePart.value.state === "input-available" && unref(state).chat.status === "streaming" || _ctx.messagePart.value.state === "approval-responded" && unref(state).chat.status === "submitted" ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
26
|
-
createVNode(SendingRequest)
|
|
27
|
-
])) : createCommentVNode("", true),
|
|
28
|
-
_ctx.messagePart.value.state === "approval-requested" ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
29
|
-
createVNode(unref(ScalarButton), {
|
|
30
|
-
onClick: _cache[0] || (_cache[0] = ($event) => unref(state).chat.addToolApprovalResponse({
|
|
31
|
-
id: _ctx.messagePart.value.approval.id,
|
|
32
|
-
approved: true
|
|
33
|
-
}))
|
|
34
|
-
}, {
|
|
35
|
-
default: withCtx(() => [..._cache[1] || (_cache[1] = [
|
|
36
|
-
createTextVNode(" Click To Approve ", -1)
|
|
37
|
-
])]),
|
|
38
|
-
_: 1
|
|
39
|
-
})
|
|
40
|
-
])) : createCommentVNode("", true),
|
|
41
|
-
_ctx.messagePart.value.input ? (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
42
|
-
createVNode(unref(ScalarCodeBlock), {
|
|
43
|
-
content: _ctx.messagePart.value.input,
|
|
44
|
-
lang: "json",
|
|
45
|
-
lineNumbers: ""
|
|
46
|
-
}, null, 8, ["content"])
|
|
47
|
-
])) : createCommentVNode("", true),
|
|
48
|
-
_ctx.messagePart.value.output ? (openBlock(), createElementBlock("div", _hoisted_5, [
|
|
49
|
-
createVNode(unref(ScalarCodeBlock), {
|
|
50
|
-
content: _ctx.messagePart.value.output,
|
|
51
|
-
lang: "json",
|
|
52
|
-
lineNumbers: ""
|
|
53
|
-
}, null, 8, ["content"])
|
|
54
|
-
])) : createCommentVNode("", true)
|
|
55
|
-
]);
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
export {
|
|
60
|
-
_sfc_main as default
|
|
61
|
-
};
|
|
62
|
-
//# sourceMappingURL=ExecuteRequestTool.vue2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExecuteRequestTool.vue2.js","sources":["../../../../src/views/Chat/Messages/ExecuteRequestTool.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { type ToolUIPart } from 'ai'\nimport { type Ref } from 'vue'\n\nimport { ScalarButton, ScalarCodeBlock } from '@scalar/components'\nimport { type EXECUTE_REQUEST_TOOL_NAME } from '@scalar-org/entities/agent/tools'\n\nimport SendingRequest from '@/components/SendingRequest.vue'\nimport { type Tools, useState } from '@/state/state'\n\nconst { messagePart } = defineProps<{\n messagePart: Ref<ToolUIPart<Pick<Tools, typeof EXECUTE_REQUEST_TOOL_NAME>>>\n}>()\n\nconst state = useState()\n</script>\n\n<template>\n <div class=\"executeRequestTool\">\n <div\n v-if=\"\n (messagePart.value.state === 'input-available' &&\n state.chat.status === 'streaming') ||\n (messagePart.value.state === 'approval-responded' &&\n state.chat.status === 'submitted')\n \">\n <SendingRequest />\n </div>\n <div v-if=\"messagePart.value.state === 'approval-requested'\">\n <ScalarButton\n @click=\"\n state.chat.addToolApprovalResponse({\n id: messagePart.value.approval.id,\n approved: true,\n })\n \">\n Click To Approve\n </ScalarButton>\n </div>\n <div\n v-if=\"messagePart.value.input\"\n class=\"tool\">\n <ScalarCodeBlock\n :content=\"messagePart.value.input\"\n lang=\"json\"\n lineNumbers />\n </div>\n <div\n v-if=\"messagePart.value.output\"\n class=\"tool\">\n <ScalarCodeBlock\n :content=\"messagePart.value.output\"\n lang=\"json\"\n lineNumbers />\n </div>\n </div>\n</template>\n\n<style scoped>\n.executeRequestTool {\n display: flex;\n flex-direction: column;\n gap: 10px;\n margin-top: 20px;\n}\n\n.tool {\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n padding: 15px;\n border-radius: 15px;\n margin-bottom: 20px;\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","messagePart","_unref","_createVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAcA,UAAM,QAAQ,SAAA;;AAIZ,aAAAA,UAAA,GAAAC,mBAqCM,OArCN,YAqCM;AAAA,QAnCcC,KAAAA,YAAY,MAAM,UAAK,qBAAoCC,MAAA,KAAA,EAAM,KAAK,WAAM,eAA8BD,KAAAA,YAAY,MAAM,UAAK,wBAAuCC,MAAA,KAAA,EAAM,KAAK,WAAM,4BAD3MF,mBAQM,OAAA,YAAA;AAAA,UADJG,YAAkB,cAAA;AAAA,QAAA;QAETF,KAAAA,YAAY,MAAM,UAAK,qCAAlCD,mBAUM,OAAA,YAAA;AAAA,UATJG,YAQeD,MAAA,YAAA,GAAA;AAAA,YAPZ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAaA,MAAA,KAAA,EAAM,KAAK,wBAAuB;AAAA,cAAmBD,IAAAA,KAAAA,YAAY,MAAM,SAAS;AAAA;;;6BAKjG,MAEJ,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA,8BAFI,sBAEJ,EAAA;AAAA,YAAA;;;;QAGMA,KAAAA,YAAY,MAAM,SAD1BF,aAAAC,mBAOM,OAPN,YAOM;AAAA,UAJJG,YAGgBD,MAAA,eAAA,GAAA;AAAA,YAFb,SAASD,KAAAA,YAAY,MAAM;AAAA,YAC5B,MAAK;AAAA,YACL,aAAA;AAAA,UAAA;;QAGIA,KAAAA,YAAY,MAAM,UAD1BF,aAAAC,mBAOM,OAPN,YAOM;AAAA,UAJJG,YAGgBD,MAAA,eAAA,GAAA;AAAA,YAFb,SAASD,KAAAA,YAAY,MAAM;AAAA,YAC5B,MAAK;AAAA,YACL,aAAA;AAAA,UAAA;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GetMiniOpenAPIDocTool.vue2.js","sources":["../../../../src/views/Chat/Messages/GetMiniOpenAPIDocTool.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { type ToolUIPart, type UIMessage } from 'ai'\nimport { computed, type Reactive, type Ref, ref, watch } from 'vue'\n\nimport { type GET_MINI_OPENAPI_SPEC_TOOL_NAME } from '@scalar-org/entities/agent/tools'\n\nimport ContextItem from '@/components/ContextItem.vue'\nimport LoadingMiniOpenAPIDoc from '@/components/LoadingMiniOpenAPIDoc.vue'\nimport { getOperations } from '@/helpers'\nimport { type Tools, useState } from '@/state/state'\n\nconst { messagePart, message } = defineProps<{\n messagePart: Ref<\n ToolUIPart<Pick<Tools, typeof GET_MINI_OPENAPI_SPEC_TOOL_NAME>>\n >\n message: Reactive<UIMessage>\n}>()\n\nconst messageFinished = ref(false)\n\nwatch(\n () => message,\n () => {\n const parts = message.parts\n\n const index = parts.findIndex(\n (part) =>\n 'toolCallId' in part &&\n part.toolCallId === messagePart.value.toolCallId,\n )\n\n const nextPart = parts[index + 1]\n messageFinished.value = nextPart?.type === 'step-start'\n },\n)\n\nconst operations = computed(() => {\n if (!messagePart.value.output?.structuredContent) return\n\n const title = messagePart.value.output?.structuredContent?.info?.title\n\n const documentOperations = getOperations(\n messagePart.value.output?.structuredContent,\n )\n\n return documentOperations\n .map(\n (operation) => `${title ? `${title} - ` : ''}${operation.summary ?? ''}`,\n )\n .filter(Boolean)\n})\n\nconst state = useState()\n</script>\n\n<template>\n <div\n v-if=\"\n messagePart.value.state === 'input-available' &&\n state.chat.status === 'streaming'\n \">\n <LoadingMiniOpenAPIDoc />\n </div>\n <div\n v-if=\"operations\"\n class=\"operations\">\n <ContextItem\n v-for=\"operation of operations\"\n :key=\"operation\"\n :loading=\"!messageFinished\"\n >{{ operation }}</ContextItem\n >\n </div>\n</template>\n\n<style scoped>\n.operations {\n display: flex;\n gap: 5px;\n align-items: center;\n}\n</style>\n"],"names":["messagePart","_unref","_createElementBlock","_createVNode","_openBlock","_Fragment","_renderList","_createBlock"],"mappings":";;;;;;;;;;;;;;;;;AAkBA,UAAM,kBAAkB,IAAI,KAAK;AAEjC;AAAA,MACE,MAAM,QAAA;AAAA,MACN,MAAM;AACJ,cAAM,QAAQ,gBAAQ;AAEtB,cAAM,QAAQ,MAAM;AAAA,UAClB,CAAC,SACC,gBAAgB,QAChB,KAAK,eAAe,QAAA,YAAY,MAAM;AAAA,QAAA;AAG1C,cAAM,WAAW,MAAM,QAAQ,CAAC;AAChC,wBAAgB,QAAQ,UAAU,SAAS;AAAA,MAC7C;AAAA,IAAA;AAGF,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,QAAA,YAAY,MAAM,QAAQ,kBAAmB;AAElD,YAAM,QAAQ,QAAA,YAAY,MAAM,QAAQ,mBAAmB,MAAM;AAEjE,YAAM,qBAAqB;AAAA,QACzB,QAAA,YAAY,MAAM,QAAQ;AAAA,MAAA;AAG5B,aAAO,mBACJ;AAAA,QACC,CAAC,cAAc,GAAG,QAAQ,GAAG,KAAK,QAAQ,EAAE,GAAG,UAAU,WAAW,EAAE;AAAA,MAAA,EAEvE,OAAO,OAAO;AAAA,IACnB,CAAC;AAED,UAAM,QAAQ,SAAA;;;QAKGA,KAAAA,YAAY,MAAM,UAAK,qBAAgCC,MAAA,KAAA,EAAM,KAAK,WAAM,4BADvFC,mBAMM,OAAA,YAAA;AAAA,UADJC,YAAyB,qBAAA;AAAA,QAAA;QAGnB,WAAA,SADRC,UAAA,GAAAF,mBASM,OATN,YASM;AAAA,4BANJA,mBAKCG,UAAA,MAAAC,WAJqB,WAAA,OAAU,CAAvB,cAAS;gCADlBC,YAKC,aAAA;AAAA,cAHE,KAAK;AAAA,cACL,UAAU,gBAAA;AAAA,YAAA;+BACV,MAAe;AAAA,gDAAZ,SAAS,GAAA,CAAA;AAAA,cAAA;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Layout.vue.d.ts","sourceRoot":"","sources":["../../src/views/Layout.vue"],"names":[],"mappings":";;;;;AAoJA,wBAEG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Layout.vue2.js","sources":["../../src/views/Layout.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { useActiveServer } from '@/hooks/useActiveServer'\nimport { useSecuritySchemes } from '@/hooks/useSecuritySchemes'\nimport { useState } from '@/state/state'\nimport Chat from '@/views/Chat/Chat.vue'\nimport Start from '@/views/Start.vue'\n\nconst emit = defineEmits<{\n (e: 'submit'): void\n}>()\n\nconst { chat } = useState()\n\nuseSecuritySchemes()\nuseActiveServer()\n</script>\n\n<template>\n <div class=\"wrapper\">\n <Chat\n v-if=\"\n chat.messages.length &&\n (chat.messages.length > 1 || chat.status !== 'submitted')\n \"\n @submit=\"emit('submit')\" />\n <Start\n v-else\n @submit=\"emit('submit')\" />\n </div>\n</template>\n\n<style scoped>\n.wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n height: 100%;\n width: 100%;\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","_unref","_createBlock"],"mappings":";;;;;;;;;;;AAOA,UAAM,OAAO;AAIb,UAAM,EAAE,KAAA,IAAS,SAAA;AAEjB,uBAAA;AACA,oBAAA;;AAIE,aAAAA,UAAA,GAAAC,mBAUM,OAVN,YAUM;AAAA,QARaC,MAAA,IAAA,EAAK,SAAS,WAAmBA,MAAA,IAAA,EAAK,SAAS,SAAM,KAAQA,MAAA,IAAA,EAAK,WAAM,6BADzFC,YAK6B,MAAA;AAAA;UAA1B,gDAAQ,KAAI,QAAA;AAAA,QAAA,oBACfA,YAE6B,OAAA;AAAA;UAA1B,gDAAQ,KAAI,QAAA;AAAA,QAAA;;;;;"}
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { defineComponent, useTemplateRef, computed, watch, createElementBlock, openBlock, createElementVNode, withModifiers, withDirectives, unref, vModelText, createBlock, normalizeClass, createVNode, createTextVNode } from "vue";
|
|
2
|
-
import { ScalarIconButton, ScalarLoading } from "@scalar/components";
|
|
3
|
-
import { ScalarIconPlay, ScalarIconArrowUp } from "@scalar/icons";
|
|
4
|
-
import { useState } from "../state/state.js";
|
|
5
|
-
const _hoisted_1 = { class: "actionContainer" };
|
|
6
|
-
const _hoisted_2 = ["disabled"];
|
|
7
|
-
const _hoisted_3 = { class: "inputActionsContainer" };
|
|
8
|
-
const _hoisted_4 = { class: "contextContainer" };
|
|
9
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
|
-
__name: "PromptForm",
|
|
11
|
-
emits: ["submit"],
|
|
12
|
-
setup(__props, { expose: __expose, emit: __emit }) {
|
|
13
|
-
const emit = __emit;
|
|
14
|
-
__expose({ focusPrompt });
|
|
15
|
-
const promptRef = useTemplateRef("prompt");
|
|
16
|
-
const state = useState();
|
|
17
|
-
const inputHasContent = computed(() => state.prompt.value.trim().length > 0);
|
|
18
|
-
watch(state.prompt, () => {
|
|
19
|
-
if (!promptRef?.value) return;
|
|
20
|
-
if (!state.prompt.value.length) {
|
|
21
|
-
promptRef.value.style.height = "0px";
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
promptRef.value.style.height = "auto";
|
|
25
|
-
promptRef.value.style.height = promptRef.value.scrollHeight + "px";
|
|
26
|
-
});
|
|
27
|
-
function onAutoSendClick() {
|
|
28
|
-
state.mode.value = state.mode.value === "agent" ? "search" : "agent";
|
|
29
|
-
}
|
|
30
|
-
function handleSubmit() {
|
|
31
|
-
if (!inputHasContent.value) return;
|
|
32
|
-
emit("submit");
|
|
33
|
-
}
|
|
34
|
-
function handlePromptKeydown(e) {
|
|
35
|
-
if (state.loading.value) return;
|
|
36
|
-
if (e.key === "Enter" && !e.shiftKey) {
|
|
37
|
-
e.preventDefault();
|
|
38
|
-
handleSubmit();
|
|
39
|
-
window.scrollTo(0, document.body.scrollHeight);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
function focusPrompt() {
|
|
43
|
-
promptRef.value?.focus();
|
|
44
|
-
}
|
|
45
|
-
watch(
|
|
46
|
-
() => state.chat.status,
|
|
47
|
-
(status) => {
|
|
48
|
-
if (status === "ready" || status === "error") promptRef.value?.focus();
|
|
49
|
-
}
|
|
50
|
-
);
|
|
51
|
-
return (_ctx, _cache) => {
|
|
52
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
53
|
-
createElementVNode("form", {
|
|
54
|
-
class: "promptForm",
|
|
55
|
-
onSubmit: withModifiers(handleSubmit, ["prevent"])
|
|
56
|
-
}, [
|
|
57
|
-
withDirectives(createElementVNode("textarea", {
|
|
58
|
-
ref: "prompt",
|
|
59
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => unref(state).prompt.value = $event),
|
|
60
|
-
class: "prompt",
|
|
61
|
-
disabled: unref(state).loading.value,
|
|
62
|
-
name: "prompt",
|
|
63
|
-
placeholder: "Ask me anything...",
|
|
64
|
-
onKeydown: handlePromptKeydown
|
|
65
|
-
}, null, 40, _hoisted_2), [
|
|
66
|
-
[vModelText, unref(state).prompt.value]
|
|
67
|
-
]),
|
|
68
|
-
createElementVNode("div", _hoisted_3, [
|
|
69
|
-
createElementVNode("button", {
|
|
70
|
-
class: normalizeClass(["autoSendButton", {
|
|
71
|
-
"autoSendButton-enabled": unref(state).mode.value === "agent"
|
|
72
|
-
}]),
|
|
73
|
-
type: "button",
|
|
74
|
-
onClick: onAutoSendClick
|
|
75
|
-
}, [
|
|
76
|
-
createVNode(unref(ScalarIconPlay), { weight: "bold" }),
|
|
77
|
-
_cache[2] || (_cache[2] = createTextVNode(" Agent Mode ", -1))
|
|
78
|
-
], 2),
|
|
79
|
-
!unref(state).loading.value ? (openBlock(), createBlock(unref(ScalarIconButton), {
|
|
80
|
-
key: 0,
|
|
81
|
-
class: "sendButton",
|
|
82
|
-
disabled: !inputHasContent.value,
|
|
83
|
-
icon: unref(ScalarIconArrowUp),
|
|
84
|
-
label: "Scalar",
|
|
85
|
-
size: "md",
|
|
86
|
-
type: "submit",
|
|
87
|
-
weight: "bold"
|
|
88
|
-
}, null, 8, ["disabled", "icon"])) : (openBlock(), createBlock(unref(ScalarLoading), {
|
|
89
|
-
key: 1,
|
|
90
|
-
class: "loader",
|
|
91
|
-
loader: {
|
|
92
|
-
isLoading: unref(state).loading.value,
|
|
93
|
-
isValid: false,
|
|
94
|
-
clear: async () => {
|
|
95
|
-
},
|
|
96
|
-
invalidate: async () => {
|
|
97
|
-
},
|
|
98
|
-
isInvalid: false,
|
|
99
|
-
isActive: false,
|
|
100
|
-
validate: async () => {
|
|
101
|
-
},
|
|
102
|
-
start: () => {
|
|
103
|
-
}
|
|
104
|
-
},
|
|
105
|
-
size: "2xl"
|
|
106
|
-
}, null, 8, ["loader"]))
|
|
107
|
-
])
|
|
108
|
-
], 32),
|
|
109
|
-
createElementVNode("div", _hoisted_4, [
|
|
110
|
-
_cache[3] || (_cache[3] = createElementVNode("span", null, "Type @ to add context from other API's", -1)),
|
|
111
|
-
createElementVNode("button", {
|
|
112
|
-
class: "settingsButton",
|
|
113
|
-
label: "Settings",
|
|
114
|
-
type: "button",
|
|
115
|
-
onClick: _cache[1] || (_cache[1] = ($event) => unref(state).settingsModal.show())
|
|
116
|
-
}, " Settings ")
|
|
117
|
-
])
|
|
118
|
-
]);
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
});
|
|
122
|
-
export {
|
|
123
|
-
_sfc_main as default
|
|
124
|
-
};
|
|
125
|
-
//# sourceMappingURL=PromptForm.vue2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PromptForm.vue2.js","sources":["../../src/views/PromptForm.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useTemplateRef, watch } from 'vue'\n\nimport { ScalarIconButton, ScalarLoading } from '@scalar/components'\nimport { ScalarIconArrowUp, ScalarIconPlay } from '@scalar/icons'\n\nimport { useState } from '@/state/state'\n\nconst emit = defineEmits<{\n (e: 'submit'): void\n}>()\n\ndefineExpose({ focusPrompt })\n\nconst promptRef = useTemplateRef<HTMLTextAreaElement>('prompt')\n\nconst state = useState()\nconst inputHasContent = computed(() => state.prompt.value.trim().length > 0)\n\nwatch(state.prompt, () => {\n if (!promptRef?.value) return\n\n if (!state.prompt.value.length) {\n promptRef.value.style.height = '0px'\n return\n }\n\n promptRef.value.style.height = 'auto'\n promptRef.value.style.height = promptRef.value.scrollHeight + 'px'\n})\n\nfunction onAutoSendClick() {\n state.mode.value = state.mode.value === 'agent' ? 'search' : 'agent'\n}\n\nfunction handleSubmit() {\n if (!inputHasContent.value) return\n\n emit('submit')\n}\n\nfunction handlePromptKeydown(e: KeyboardEvent) {\n if (state.loading.value) return\n\n if (e.key === 'Enter' && !e.shiftKey) {\n e.preventDefault()\n handleSubmit()\n window.scrollTo(0, document.body.scrollHeight)\n }\n}\n\nfunction focusPrompt() {\n promptRef.value?.focus()\n}\n\nwatch(\n () => state.chat.status,\n (status) => {\n if (status === 'ready' || status === 'error') promptRef.value?.focus()\n },\n)\n</script>\n\n<template>\n <div class=\"actionContainer\">\n <form\n class=\"promptForm\"\n @submit.prevent=\"handleSubmit\">\n <textarea\n ref=\"prompt\"\n v-model=\"state.prompt.value\"\n class=\"prompt\"\n :disabled=\"state.loading.value\"\n name=\"prompt\"\n placeholder=\"Ask me anything...\"\n @keydown=\"handlePromptKeydown\" />\n <div class=\"inputActionsContainer\">\n <button\n class=\"autoSendButton\"\n :class=\"{\n 'autoSendButton-enabled': state.mode.value === 'agent',\n }\"\n type=\"button\"\n @click=\"onAutoSendClick\">\n <ScalarIconPlay weight=\"bold\" />\n Agent Mode\n </button>\n <ScalarIconButton\n v-if=\"!state.loading.value\"\n class=\"sendButton\"\n :disabled=\"!inputHasContent\"\n :icon=\"ScalarIconArrowUp\"\n label=\"Scalar\"\n size=\"md\"\n type=\"submit\"\n weight=\"bold\" />\n <ScalarLoading\n v-else\n class=\"loader\"\n :loader=\"{\n isLoading: state.loading.value,\n isValid: false,\n clear: async () => {},\n invalidate: async () => {},\n isInvalid: false,\n isActive: false,\n validate: async () => {},\n start: () => {},\n }\"\n size=\"2xl\" />\n </div>\n </form>\n <div class=\"contextContainer\">\n <span>Type @ to add context from other API's</span>\n <button\n class=\"settingsButton\"\n label=\"Settings\"\n type=\"button\"\n @click=\"state.settingsModal.show()\">\n Settings\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.actionContainer {\n background: color-mix(\n in srgb,\n var(--scalar-background-2),\n var(--scalar-background-1)\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: 22px 22px 12px 12px;\n width: 100%;\n /* visually hides overflowing text below */\n box-shadow: 0 50px 0 2px var(--scalar-background-1);\n}\n.promptForm {\n width: 100%;\n position: relative;\n display: flex;\n}\n\n.inputActionsContainer {\n display: flex;\n justify-content: space-between;\n position: absolute;\n bottom: 0;\n width: 100%;\n padding: 0 8px 8px 8px;\n pointer-events: none;\n}\n\n.prompt {\n width: 100%;\n resize: none;\n background: var(--scalar-background-1);\n border-radius: 22px;\n box-shadow: var(--scalar-shadow-1);\n outline: none;\n border: none;\n font-family: var(--scalar-font);\n font-size: 16px;\n padding: 12px;\n min-height: 92px;\n field-sizing: content;\n padding-bottom: 48px;\n word-wrap: break-word;\n}\n.dark-mode .prompt {\n background: var(--scalar-background-2);\n box-shadow: 0 0 0 var(--scalar-border-width) var(--scalar-border-color);\n}\n.prompt:focus-within {\n box-shadow: 0 0 0 1.5px var(--scalar-color-blue);\n}\n.prompt:disabled {\n color: var(--scalar-color-3);\n}\n\n.autoSendButton {\n color: var(--scalar-color-3);\n font-size: var(--scalar-font-size-3);\n padding: 0 8px;\n height: 28px;\n font-weight: var(--scalar-bold);\n border-radius: 20px;\n display: flex;\n align-items: center;\n gap: 4px;\n pointer-events: all;\n}\n.autoSendButton:hover {\n background: color-mix(\n in srgb,\n var(--scalar-background-2),\n var(--scalar-background-1)\n );\n box-shadow: 0 0 0 var(--scalar-border-width) var(--scalar-border-color);\n}\n.dark-mode .autoSendButton:hover {\n background: var(--scalar-background-3);\n}\n.autoSendButton:active {\n background: var(--scalar-background-2);\n}\n.autoSendButton-enabled,\n.autoSendButton-enabled:hover,\n.dark-mode .autoSendButton-enabled:hover {\n background: color-mix(in srgb, var(--scalar-color-blue), transparent 90%);\n color: var(--scalar-color-blue);\n}\n\n.sendButton {\n background: var(--scalar-agent-blue) !important;\n color: white;\n border-radius: 50% !important;\n margin: 0 !important;\n pointer-events: all;\n width: 28px;\n height: 28px;\n padding: 6px;\n}\n\n.sendButton[aria-disabled='true'] {\n background: var(--scalar-background-2) !important;\n color: var(--scalar-color-3);\n}\n\n.contextContainer {\n display: flex;\n width: 100%;\n padding: 10px 12px 12px 12px;\n color: var(--scalar-color-2);\n font-size: var(--scalar-font-size-3);\n user-select: none;\n justify-content: space-between;\n}\n\n.settingsButton {\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-lg);\n padding: 4px 6px;\n margin: -4px -6px;\n}\n.settingsButton:hover {\n background: var(--scalar-background-2);\n box-shadow: 0 0 var(--scalar-border-width) 0 var(--scalar-border-color);\n cursor: pointer;\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createVNode","_createBlock"],"mappings":";;;;;;;;;;;;AAQA,UAAM,OAAO;AAIb,aAAa,EAAE,aAAa;AAE5B,UAAM,YAAY,eAAoC,QAAQ;AAE9D,UAAM,QAAQ,SAAA;AACd,UAAM,kBAAkB,SAAS,MAAM,MAAM,OAAO,MAAM,KAAA,EAAO,SAAS,CAAC;AAE3E,UAAM,MAAM,QAAQ,MAAM;AACxB,UAAI,CAAC,WAAW,MAAO;AAEvB,UAAI,CAAC,MAAM,OAAO,MAAM,QAAQ;AAC9B,kBAAU,MAAM,MAAM,SAAS;AAC/B;AAAA,MACF;AAEA,gBAAU,MAAM,MAAM,SAAS;AAC/B,gBAAU,MAAM,MAAM,SAAS,UAAU,MAAM,eAAe;AAAA,IAChE,CAAC;AAED,aAAS,kBAAkB;AACzB,YAAM,KAAK,QAAQ,MAAM,KAAK,UAAU,UAAU,WAAW;AAAA,IAC/D;AAEA,aAAS,eAAe;AACtB,UAAI,CAAC,gBAAgB,MAAO;AAE5B,WAAK,QAAQ;AAAA,IACf;AAEA,aAAS,oBAAoB,GAAkB;AAC7C,UAAI,MAAM,QAAQ,MAAO;AAEzB,UAAI,EAAE,QAAQ,WAAW,CAAC,EAAE,UAAU;AACpC,UAAE,eAAA;AACF,qBAAA;AACA,eAAO,SAAS,GAAG,SAAS,KAAK,YAAY;AAAA,MAC/C;AAAA,IACF;AAEA,aAAS,cAAc;AACrB,gBAAU,OAAO,MAAA;AAAA,IACnB;AAEA;AAAA,MACE,MAAM,MAAM,KAAK;AAAA,MACjB,CAAC,WAAW;AACV,YAAI,WAAW,WAAW,WAAW,QAAS,WAAU,OAAO,MAAA;AAAA,MACjE;AAAA,IAAA;;AAKA,aAAAA,UAAA,GAAAC,mBA0DM,OA1DN,YA0DM;AAAA,QAzDJC,mBA8CO,QAAA;AAAA,UA7CL,OAAM;AAAA,UACL,wBAAgB,cAAY,CAAA,SAAA,CAAA;AAAA,QAAA;yBAC7BA,mBAOmC,YAAA;AAAA,YANjC,KAAI;AAAA,yEACKC,MAAA,KAAA,EAAM,OAAO,QAAK;AAAA,YAC3B,OAAM;AAAA,YACL,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,MAAK;AAAA,YACL,aAAY;AAAA,YACX,WAAS;AAAA,UAAA;yBALDA,MAAA,KAAA,EAAM,OAAO,KAAK;AAAA,UAAA;UAM7BD,mBAkCM,OAlCN,YAkCM;AAAA,YAjCJA,mBASS,UAAA;AAAA,cARP,uBAAM,kBAAgB;AAAA,0CAC0BC,MAAA,KAAA,EAAM,KAAK,UAAK;AAAA,cAAA;cAGhE,MAAK;AAAA,cACJ,SAAO;AAAA,YAAA;cACRC,YAAgCD,MAAA,cAAA,GAAA,EAAhB,QAAO,QAAM;AAAA,wDAAG,gBAElC,EAAA;AAAA,YAAA;aAESA,MAAA,KAAA,EAAM,QAAQ,sBADvBE,YAQkBF,MAAA,gBAAA,GAAA;AAAA;cANhB,OAAM;AAAA,cACL,WAAW,gBAAA;AAAA,cACX,MAAMA,MAAA,iBAAA;AAAA,cACP,OAAM;AAAA,cACN,MAAK;AAAA,cACL,MAAK;AAAA,cACL,QAAO;AAAA,YAAA,mDACTE,YAaeF,MAAA,aAAA,GAAA;AAAA;cAXb,OAAM;AAAA,cACL,QAAM;AAAA,2BAA2BA,MAAA,KAAA,EAAM,QAAQ;AAAA;;;;;;;;;;;;cAUhD,MAAK;AAAA,YAAA;;;QAGXD,mBASM,OATN,YASM;AAAA,UARJ,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAA,mBAAmD,cAA7C,0CAAsC,EAAA;AAAA,UAC5CA,mBAMS,UAAA;AAAA,YALP,OAAM;AAAA,YACN,OAAM;AAAA,YACN,MAAK;AAAA,YACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAEC,MAAA,KAAA,EAAM,cAAc,KAAA;AAAA,UAAI,GAAI,YAEtC;AAAA,QAAA;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.vue.d.ts","sourceRoot":"","sources":["../../src/views/Settings.vue"],"names":[],"mappings":"AAkHA,OAAO,EACL,KAAK,UAAU,EAGhB,MAAM,oBAAoB,CAAA;AAM3B,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAC;;AA2KF,wBAEG"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { defineComponent, computed, createBlock, openBlock, unref, withCtx, createElementVNode, createElementBlock, createCommentVNode, createVNode, isRef } from "vue";
|
|
2
|
-
import { mergeAuthConfig } from "@scalar/api-client/v2/blocks/scalar-auth-selector-block";
|
|
3
|
-
import { getSelectedServer } from "@scalar/api-client/v2/features/operation";
|
|
4
|
-
import { getActiveEnvironment } from "@scalar/api-client/v2/helpers";
|
|
5
|
-
import { ServerSelector } from "@scalar/api-reference/blocks";
|
|
6
|
-
import { ScalarModal, ScalarTextInput } from "@scalar/components";
|
|
7
|
-
import { ScalarIconGear } from "@scalar/icons";
|
|
8
|
-
import { useState } from "../state/state.js";
|
|
9
|
-
import _sfc_main$1 from "./Auth.vue.js";
|
|
10
|
-
const _hoisted_1 = { class: "settingsHeading" };
|
|
11
|
-
const _hoisted_2 = {
|
|
12
|
-
key: 0,
|
|
13
|
-
class: "serverSettings"
|
|
14
|
-
};
|
|
15
|
-
const _hoisted_3 = { class: "proxyUrlContainer" };
|
|
16
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
17
|
-
__name: "Settings",
|
|
18
|
-
props: {
|
|
19
|
-
modalState: {}
|
|
20
|
-
},
|
|
21
|
-
setup(__props) {
|
|
22
|
-
const { proxyUrl, workspaceStore, config, eventBus } = useState();
|
|
23
|
-
const doc = computed(() => workspaceStore.workspace.activeDocument);
|
|
24
|
-
const environment = computed(
|
|
25
|
-
() => getActiveEnvironment(
|
|
26
|
-
workspaceStore,
|
|
27
|
-
workspaceStore.workspace.activeDocument ?? null
|
|
28
|
-
)
|
|
29
|
-
);
|
|
30
|
-
const selectedServer = computed(() => getSelectedServer(doc.value ?? null));
|
|
31
|
-
const securitySchemes = computed(
|
|
32
|
-
() => mergeAuthConfig(
|
|
33
|
-
doc.value?.components?.securitySchemes,
|
|
34
|
-
config.value.authentication?.securitySchemes
|
|
35
|
-
)
|
|
36
|
-
);
|
|
37
|
-
return (_ctx, _cache) => {
|
|
38
|
-
return openBlock(), createBlock(unref(ScalarModal), { state: _ctx.modalState }, {
|
|
39
|
-
default: withCtx(() => [
|
|
40
|
-
createElementVNode("div", _hoisted_1, [
|
|
41
|
-
createVNode(unref(ScalarIconGear)),
|
|
42
|
-
_cache[1] || (_cache[1] = createElementVNode("h1", null, "Settings", -1))
|
|
43
|
-
]),
|
|
44
|
-
doc.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
45
|
-
createElementVNode("div", null, [
|
|
46
|
-
createVNode(unref(ServerSelector), {
|
|
47
|
-
eventBus: unref(eventBus),
|
|
48
|
-
selectedServer: selectedServer.value,
|
|
49
|
-
servers: doc.value?.servers ?? []
|
|
50
|
-
}, null, 8, ["eventBus", "selectedServer", "servers"])
|
|
51
|
-
]),
|
|
52
|
-
createElementVNode("div", null, [
|
|
53
|
-
createVNode(_sfc_main$1, {
|
|
54
|
-
document: doc.value,
|
|
55
|
-
environment: environment.value,
|
|
56
|
-
eventBus: unref(eventBus),
|
|
57
|
-
options: unref(config),
|
|
58
|
-
securitySchemes: securitySchemes.value,
|
|
59
|
-
selectedServer: selectedServer.value
|
|
60
|
-
}, null, 8, ["document", "environment", "eventBus", "options", "securitySchemes", "selectedServer"])
|
|
61
|
-
]),
|
|
62
|
-
createElementVNode("div", _hoisted_3, [
|
|
63
|
-
_cache[2] || (_cache[2] = createElementVNode("label", { for: "proxyUrl" }, "Proxy URL", -1)),
|
|
64
|
-
createVNode(unref(ScalarTextInput), {
|
|
65
|
-
id: "proxyUrl",
|
|
66
|
-
modelValue: unref(proxyUrl),
|
|
67
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(proxyUrl) ? proxyUrl.value = $event : null),
|
|
68
|
-
placeholder: "https://proxy.scalar.com"
|
|
69
|
-
}, null, 8, ["modelValue"])
|
|
70
|
-
])
|
|
71
|
-
])) : createCommentVNode("", true)
|
|
72
|
-
]),
|
|
73
|
-
_: 1
|
|
74
|
-
}, 8, ["state"]);
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
export {
|
|
79
|
-
_sfc_main as default
|
|
80
|
-
};
|
|
81
|
-
//# sourceMappingURL=Settings.vue2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.vue2.js","sources":["../../src/views/Settings.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\n\nimport { mergeAuthConfig } from '@scalar/api-client/v2/blocks/scalar-auth-selector-block'\nimport { getSelectedServer } from '@scalar/api-client/v2/features/operation'\nimport { getActiveEnvironment } from '@scalar/api-client/v2/helpers'\nimport { ServerSelector } from '@scalar/api-reference/blocks'\nimport {\n type ModalState,\n ScalarModal,\n ScalarTextInput,\n} from '@scalar/components'\nimport { ScalarIconGear } from '@scalar/icons'\n\nimport { useState } from '@/state/state'\nimport Auth from '@/views/Auth.vue'\n\ndefineProps<{\n modalState: ModalState\n}>()\n\nconst { proxyUrl, workspaceStore, config, eventBus } = useState()\n\nconst doc = computed(() => workspaceStore.workspace.activeDocument)\n\nconst environment = computed(() =>\n getActiveEnvironment(\n workspaceStore,\n workspaceStore.workspace.activeDocument ?? null,\n ),\n)\n\nconst selectedServer = computed(() => getSelectedServer(doc.value ?? null))\n\n/** Merge authentication config with the document security schemes */\nconst securitySchemes = computed(() =>\n mergeAuthConfig(\n doc.value?.components?.securitySchemes,\n config.value.authentication?.securitySchemes,\n ),\n)\n</script>\n\n<template>\n <ScalarModal :state=\"modalState\">\n <div class=\"settingsHeading\">\n <ScalarIconGear />\n <h1>Settings</h1>\n </div>\n <div\n v-if=\"doc\"\n class=\"serverSettings\">\n <div>\n <ServerSelector\n :eventBus\n :selectedServer\n :servers=\"doc?.servers ?? []\" />\n </div>\n <div>\n <Auth\n :document=\"doc\"\n :environment\n :eventBus\n :options=\"config\"\n :securitySchemes\n :selectedServer />\n </div>\n <div class=\"proxyUrlContainer\">\n <label for=\"proxyUrl\">Proxy URL</label>\n <ScalarTextInput\n id=\"proxyUrl\"\n v-model=\"proxyUrl\"\n placeholder=\"https://proxy.scalar.com\" />\n </div>\n </div>\n </ScalarModal>\n</template>\n\n<style>\n.scalar-modal-layout {\n z-index: 1000 !important;\n}\n</style>\n\n<style scoped>\n.settingsHeading {\n font-size: var(--scalar-font-size-1);\n margin-bottom: 15px;\n display: flex;\n gap: 5px;\n align-items: center;\n}\n\n.serverSettings {\n display: flex;\n flex-direction: column;\n gap: 15px;\n}\n\n.proxyUrlContainer {\n font-size: var(--scalar-font-size-3);\n display: flex;\n gap: 5px;\n flex-direction: column;\n}\n</style>\n"],"names":["_createBlock","_unref","modalState","_createElementVNode","_createVNode","_openBlock","_createElementBlock","Auth"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAqBA,UAAM,EAAE,UAAU,gBAAgB,QAAQ,SAAA,IAAa,SAAA;AAEvD,UAAM,MAAM,SAAS,MAAM,eAAe,UAAU,cAAc;AAElE,UAAM,cAAc;AAAA,MAAS,MAC3B;AAAA,QACE;AAAA,QACA,eAAe,UAAU,kBAAkB;AAAA,MAAA;AAAA,IAC7C;AAGF,UAAM,iBAAiB,SAAS,MAAM,kBAAkB,IAAI,SAAS,IAAI,CAAC;AAG1E,UAAM,kBAAkB;AAAA,MAAS,MAC/B;AAAA,QACE,IAAI,OAAO,YAAY;AAAA,QACvB,OAAO,MAAM,gBAAgB;AAAA,MAAA;AAAA,IAC/B;;0BAKAA,YA+BcC,MAAA,WAAA,GAAA,EA/BA,OAAOC,KAAAA,cAAU;AAAA,yBAC7B,MAGM;AAAA,UAHNC,mBAGM,OAHN,YAGM;AAAA,YAFJC,YAAkBH,MAAA,cAAA,CAAA;AAAA,YAClB,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAE,mBAAiB,YAAb,YAAQ,EAAA;AAAA,UAAA;UAGN,IAAA,SADRE,UAAA,GAAAC,mBAyBM,OAzBN,YAyBM;AAAA,YAtBJH,mBAKM,OAAA,MAAA;AAAA,cAJJC,YAGkCH,MAAA,cAAA,GAAA;AAAA,gBAF/B,UAAAA,MAAA,QAAA;AAAA,gBACA,gBAAA,eAAA;AAAA,gBACA,SAAS,IAAA,OAAK,WAAO,CAAA;AAAA,cAAA;;YAE1BE,mBAQM,OAAA,MAAA;AAAA,cAPJC,YAMoBG,aAAA;AAAA,gBALjB,UAAU,IAAA;AAAA,gBACV,aAAA,YAAA;AAAA,gBACA,UAAAN,MAAA,QAAA;AAAA,gBACA,SAASA,MAAA,MAAA;AAAA,gBACT,iBAAA,gBAAA;AAAA,gBACA,gBAAA,eAAA;AAAA,cAAA;;YAELE,mBAMM,OANN,YAMM;AAAA,cALJ,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAA,mBAAuC,SAAA,EAAhC,KAAI,WAAA,GAAW,aAAS,EAAA;AAAA,cAC/BC,YAG2CH,MAAA,eAAA,GAAA;AAAA,gBAFzC,IAAG;AAAA,4BACMA,MAAA,QAAA;AAAA,+FAAA,SAAQ,QAAA,SAAA;AAAA,gBACjB,aAAY;AAAA,cAAA;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Start.vue.d.ts","sourceRoot":"","sources":["../../src/views/Start.vue"],"names":[],"mappings":";;;;;AAiRA,wBAEG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Start.vue2.js","sources":["../../src/views/Start.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { useTemplateRef } from 'vue'\n\nimport Logo from '@/components/Logo.vue'\nimport Suggestion from '@/components/Suggestion.vue'\nimport PromptForm from '@/views/PromptForm.vue'\n\nconst emit = defineEmits<{\n (e: 'submit'): void\n}>()\n\nconst textFieldRef =\n useTemplateRef<InstanceType<typeof PromptForm>>('promptRef')\n</script>\n\n<template>\n <div class=\"startContainer\">\n <Logo class=\"agentLogo\" />\n <h1 class=\"heading\">How can I help you today?</h1>\n <PromptForm\n ref=\"promptRef\"\n :loading=\"false\"\n @submit=\"emit('submit')\" />\n <div class=\"suggestionsContainer\">\n <Suggestion\n text=\"Can you generate an example OpenAPI spec for me?\"\n @click=\"textFieldRef?.focusPrompt()\" />\n <Suggestion\n text=\"What are the most popular APIs this week?\"\n @click=\"textFieldRef?.focusPrompt()\" />\n <Suggestion\n text=\"Explain to me how Agent Scalar works\"\n @click=\"textFieldRef?.focusPrompt()\" />\n </div>\n <p class=\"disclaimerText\">\n By messaging Agent Scalar, you agree to our\n <a\n class=\"disclaimerLink\"\n href=\"https://scalar.com/legal/terms-and-conditions\"\n target=\"_blank\"\n >Terms</a\n >\n and\n <a\n class=\"disclaimerLink\"\n href=\"https://scalar.com/legal/privacy-policy\"\n target=\"_blank\"\n >Privacy Policy</a\n >\n </p>\n </div>\n</template>\n\n<style scoped>\n.agentLogo {\n margin-bottom: 15px;\n}\n\n.startContainer {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n max-width: 720px;\n}\n\n.heading {\n font-size: 1.5rem;\n font-weight: var(--scalar-font-bold);\n margin-bottom: 30px;\n}\n\n.suggestionsContainer {\n display: flex;\n justify-content: center;\n gap: 10px;\n flex-wrap: wrap;\n margin: 25px 0;\n}\n\n.disclaimerText {\n text-align: center;\n color: var(--scalar-color-3);\n font-size: var(--scalar-font-size-3);\n}\n\n.disclaimerLink {\n text-decoration: underline;\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;AAOA,UAAM,OAAO;AAIb,UAAM,eACJ,eAAgD,WAAW;;AAI3D,aAAAA,UAAA,GAAAC,mBAkCM,OAlCN,YAkCM;AAAA,QAjCJC,YAA0B,MAAA,EAApB,OAAM,aAAW;AAAA,QACvB,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAC,mBAAkD,MAAA,EAA9C,OAAM,UAAA,GAAU,6BAAyB,EAAA;AAAA,QAC7CD,YAG6B,YAAA;AAAA,UAF3B,KAAI;AAAA,UACH,SAAS;AAAA,UACT,gDAAQ,KAAI,QAAA;AAAA,QAAA;QACfC,mBAUM,OAVN,YAUM;AAAA,UATJD,YAEyC,YAAA;AAAA,YADvC,MAAK;AAAA,YACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAE,aAAA,OAAc,YAAA;AAAA,UAAW;UACnCA,YAEyC,YAAA;AAAA,YADvC,MAAK;AAAA,YACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAE,aAAA,OAAc,YAAA;AAAA,UAAW;UACnCA,YAEyC,YAAA;AAAA,YADvC,MAAK;AAAA,YACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAE,aAAA,OAAc,YAAA;AAAA,UAAW;;kCAErCC,mBAeI,KAAA,EAfD,OAAM,oBAAgB;AAAA,0BAAC,+CAExB;AAAA,UAAAA,mBAKC,KAAA;AAAA,YAJC,OAAM;AAAA,YACN,MAAK;AAAA,YACL,QAAO;AAAA,UAAA,GACN,OAAK;AAAA,0BACP,OAED;AAAA,UAAAA,mBAKC,KAAA;AAAA,YAJC,OAAM;AAAA,YACN,MAAK;AAAA,YACL,QAAO;AAAA,UAAA,GACN,gBAAc;AAAA,QAAA;;;;;"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|