@scalar/agent-chat 0.12.45 → 0.12.46
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 +1 -1
- package/dist/App.vue.d.ts.map +1 -1
- package/dist/App.vue.js +1 -1
- package/dist/App.vue.js.map +1 -1
- package/dist/{App.vue.script.js → App.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/App.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/Chat.vue.js +1 -1
- package/dist/Chat.vue.js.map +1 -1
- package/dist/{Chat.vue.script.js → Chat.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/Chat.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/client-tools/execute-request.js +3 -2
- package/dist/client-tools/execute-request.js.map +1 -1
- package/dist/components/ActionsDropdown.vue.js +2 -2
- package/dist/components/ActionsDropdown.vue.js.map +1 -1
- package/dist/components/{ActionsDropdown.vue.script.js → ActionsDropdown.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ActionsDropdown.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/ApprovalSection.vue.js +2 -2
- package/dist/components/ApprovalSection.vue.js.map +1 -1
- package/dist/components/{ApprovalSection.vue.script.js → ApprovalSection.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ApprovalSection.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/AuthenticationProvided.vue.js +1 -1
- package/dist/components/AuthenticationProvided.vue.js.map +1 -1
- package/dist/components/AuthenticationRequired.vue.js +1 -1
- package/dist/components/AuthenticationRequired.vue.js.map +1 -1
- package/dist/components/AutosendPaused.vue.js +1 -1
- package/dist/components/AutosendPaused.vue.js.map +1 -1
- package/dist/components/BuildingRequest.vue.js +1 -1
- package/dist/components/BuildingRequest.vue.js.map +1 -1
- package/dist/components/ContextItem.vue.js +2 -2
- package/dist/components/ContextItem.vue.js.map +1 -1
- package/dist/components/{ContextItem.vue.script.js → ContextItem.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ContextItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/ErrorMessage.vue.js +2 -2
- package/dist/components/ErrorMessage.vue.js.map +1 -1
- package/dist/components/{ErrorMessage.vue.script.js → ErrorMessage.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ErrorMessage.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/FreeMessagesInfoSection.vue.js +2 -2
- package/dist/components/FreeMessagesInfoSection.vue.js.map +1 -1
- package/dist/components/{FreeMessagesInfoSection.vue.script.js → FreeMessagesInfoSection.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/FreeMessagesInfoSection.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/LoadingOpenAPISpecsSummary.vue.js +1 -1
- package/dist/components/LoadingOpenAPISpecsSummary.vue.js.map +1 -1
- package/dist/components/LoadingSearchOpenAPIOperations.vue.js +1 -1
- package/dist/components/LoadingSearchOpenAPIOperations.vue.js.map +1 -1
- package/dist/components/Logo.vue.js.map +1 -1
- package/dist/components/PaymentSection.vue.js +2 -2
- package/dist/components/PaymentSection.vue.js.map +1 -1
- package/dist/components/{PaymentSection.vue.script.js → PaymentSection.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/PaymentSection.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/RequestApproved.vue.js +1 -1
- package/dist/components/RequestApproved.vue.js.map +1 -1
- package/dist/components/RequestFailed.vue.js +1 -1
- package/dist/components/RequestFailed.vue.js.map +1 -1
- package/dist/components/RequestPreview.vue.js +2 -2
- package/dist/components/RequestPreview.vue.js.map +1 -1
- package/dist/components/{RequestPreview.vue.script.js → RequestPreview.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/RequestPreview.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/RequestRejected.vue.js +1 -1
- package/dist/components/RequestRejected.vue.js.map +1 -1
- package/dist/components/RequestSuccess.vue.js +1 -1
- package/dist/components/RequestSuccess.vue.js.map +1 -1
- package/dist/components/ResponseBody/ResponseBody.vue.d.ts +2 -2
- package/dist/components/ResponseBody/ResponseBody.vue.js +1 -1
- package/dist/components/ResponseBody/ResponseBody.vue.js.map +1 -1
- package/dist/components/ResponseBody/{ResponseBody.vue.script.js → ResponseBody.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ResponseBody/ResponseBody.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/ResponseBody/ResponseBodyInfo.vue.js.map +1 -1
- package/dist/components/ResponseBody/ResponseBodyPreview.vue.d.ts +1 -1
- package/dist/components/ResponseBody/ResponseBodyPreview.vue.js +2 -2
- package/dist/components/ResponseBody/ResponseBodyPreview.vue.js.map +1 -1
- package/dist/components/ResponseBody/{ResponseBodyPreview.vue.script.js → ResponseBodyPreview.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ResponseBody/ResponseBodyPreview.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/ResponseBody/ResponseBodyRaw.vue.js +1 -1
- package/dist/components/ResponseBody/ResponseBodyRaw.vue.js.map +1 -1
- package/dist/components/ResponseBody/{ResponseBodyRaw.vue.script.js → ResponseBodyRaw.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ResponseBody/ResponseBodyRaw.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/ResponseBody/ResponseBodyToggle.vue.js +1 -1
- package/dist/components/ResponseBody/ResponseBodyToggle.vue.js.map +1 -1
- package/dist/components/ResponseBody/{ResponseBodyToggle.vue.script.js → ResponseBodyToggle.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ResponseBody/ResponseBodyToggle.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/SearchPopover.vue.js +2 -2
- package/dist/components/SearchPopover.vue.js.map +1 -1
- package/dist/components/{SearchPopover.vue.script.js → SearchPopover.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/SearchPopover.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/Selector.vue.js +1 -1
- package/dist/components/Selector.vue.js.map +1 -1
- package/dist/components/{Selector.vue.script.js → Selector.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/Selector.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/SendingRequest.vue.js +1 -1
- package/dist/components/SendingRequest.vue.js.map +1 -1
- package/dist/components/ServerSelector.vue.js +1 -1
- package/dist/components/ServerSelector.vue.js.map +1 -1
- package/dist/components/{ServerSelector.vue.script.js → ServerSelector.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/ServerSelector.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/UploadSection.vue.js +2 -2
- package/dist/components/UploadSection.vue.js.map +1 -1
- package/dist/components/{UploadSection.vue.script.js → UploadSection.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/components/UploadSection.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/entities/tools/execute-request.d.ts +1 -1
- package/dist/helpers.js +4 -2
- package/dist/helpers.js.map +1 -1
- package/dist/index.js +1 -2
- package/dist/package.json +1 -1
- package/dist/state/state.d.ts +1 -1
- package/dist/style.css +58 -38
- package/dist/views/Catalog/Catalog.vue.js +3 -3
- package/dist/views/Catalog/Catalog.vue.js.map +1 -1
- package/dist/views/Catalog/{Catalog.vue.script.js → Catalog.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Catalog/Catalog.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Chat/Chat.vue.js +2 -2
- package/dist/views/Chat/Chat.vue.js.map +1 -1
- package/dist/views/Chat/{Chat.vue.script.js → Chat.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Chat/Chat.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Chat/Messages/AskForAuthentication.vue.js +2 -2
- package/dist/views/Chat/Messages/AskForAuthentication.vue.js.map +1 -1
- package/dist/views/Chat/Messages/{AskForAuthentication.vue.script.js → AskForAuthentication.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Chat/Messages/AskForAuthentication.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Chat/Messages/ExecuteRequestTool.vue.js +2 -2
- package/dist/views/Chat/Messages/ExecuteRequestTool.vue.js.map +1 -1
- package/dist/views/Chat/Messages/{ExecuteRequestTool.vue.script.js → ExecuteRequestTool.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Chat/Messages/ExecuteRequestTool.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js +1 -1
- package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js.map +1 -1
- package/dist/views/Chat/Messages/{GetOpenAPISpecsSummary.vue.script.js → GetOpenAPISpecsSummary.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Chat/Messages/SearchOpenAPIOperationsTool.vue.js +2 -2
- package/dist/views/Chat/Messages/SearchOpenAPIOperationsTool.vue.js.map +1 -1
- package/dist/views/Chat/Messages/{SearchOpenAPIOperationsTool.vue.script.js → SearchOpenAPIOperationsTool.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Chat/Messages/SearchOpenAPIOperationsTool.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Chat/Messages/Text.vue.js +1 -1
- package/dist/views/Chat/Messages/Text.vue.js.map +1 -1
- package/dist/views/Chat/Messages/{Text.vue.script.js → Text.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Chat/Messages/Text.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Layout.vue.js +2 -2
- package/dist/views/Layout.vue.js.map +1 -1
- package/dist/views/{Layout.vue.script.js → Layout.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Layout.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/PromptForm.vue.js +2 -2
- package/dist/views/PromptForm.vue.js.map +1 -1
- package/dist/views/{PromptForm.vue.script.js → PromptForm.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/PromptForm.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Settings/Auth.vue.js +1 -1
- package/dist/views/Settings/Auth.vue.js.map +1 -1
- package/dist/views/Settings/{Auth.vue.script.js → Auth.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Settings/Auth.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Settings/DocSettings.vue.js +2 -2
- package/dist/views/Settings/DocSettings.vue.js.map +1 -1
- package/dist/views/Settings/{DocSettings.vue.script.js → DocSettings.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Settings/DocSettings.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Settings/Settings.vue.js +3 -3
- package/dist/views/Settings/Settings.vue.js.map +1 -1
- package/dist/views/Settings/{Settings.vue.script.js → Settings.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Settings/Settings.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/views/Start.vue.js +2 -2
- package/dist/views/Start.vue.js.map +1 -1
- package/dist/views/{Start.vue.script.js → Start.vue_vue_type_script_setup_true_lang.js} +1 -1
- package/dist/views/Start.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/package.json +23 -23
- package/dist/App.vue.script.js.map +0 -1
- package/dist/Chat.vue.script.js.map +0 -1
- package/dist/components/ActionsDropdown.vue.script.js.map +0 -1
- package/dist/components/ApprovalSection.vue.script.js.map +0 -1
- package/dist/components/ContextItem.vue.script.js.map +0 -1
- package/dist/components/ErrorMessage.vue.script.js.map +0 -1
- package/dist/components/FreeMessagesInfoSection.vue.script.js.map +0 -1
- package/dist/components/PaymentSection.vue.script.js.map +0 -1
- package/dist/components/RequestPreview.vue.script.js.map +0 -1
- package/dist/components/ResponseBody/ResponseBody.vue.script.js.map +0 -1
- package/dist/components/ResponseBody/ResponseBodyPreview.vue.script.js.map +0 -1
- package/dist/components/ResponseBody/ResponseBodyRaw.vue.script.js.map +0 -1
- package/dist/components/ResponseBody/ResponseBodyToggle.vue.script.js.map +0 -1
- package/dist/components/SearchPopover.vue.script.js.map +0 -1
- package/dist/components/Selector.vue.script.js.map +0 -1
- package/dist/components/ServerSelector.vue.script.js.map +0 -1
- package/dist/components/UploadSection.vue.script.js.map +0 -1
- package/dist/views/Catalog/Catalog.vue.script.js.map +0 -1
- package/dist/views/Chat/Chat.vue.script.js.map +0 -1
- package/dist/views/Chat/Messages/AskForAuthentication.vue.script.js.map +0 -1
- package/dist/views/Chat/Messages/ExecuteRequestTool.vue.script.js.map +0 -1
- package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.script.js.map +0 -1
- package/dist/views/Chat/Messages/SearchOpenAPIOperationsTool.vue.script.js.map +0 -1
- package/dist/views/Chat/Messages/Text.vue.script.js.map +0 -1
- package/dist/views/Layout.vue.script.js.map +0 -1
- package/dist/views/PromptForm.vue.script.js.map +0 -1
- package/dist/views/Settings/Auth.vue.script.js.map +0 -1
- package/dist/views/Settings/DocSettings.vue.script.js.map +0 -1
- package/dist/views/Settings/Settings.vue.script.js.map +0 -1
- package/dist/views/Start.vue.script.js.map +0 -1
package/dist/App.vue.d.ts
CHANGED
package/dist/App.vue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.vue.d.ts","sourceRoot":"","sources":["../src/App.vue"],"names":[],"mappings":"AA6EA,OAAO,EAAW,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAGvC,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEvC,KAAK,WAAW,GAAG;IACjB,iBAAiB,EAAE,gBAAgB,EAAE,CAAA;IACrC,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,MAAM,CAAA;IAC7B,WAAW,CAAC,EAAE,MAAM,MAAM,CAAA;IAC1B,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAA;IACpC,sEAAsE;IACtE,wBAAwB,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IACnD,UAAU,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACzB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAC;AAuBF,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"App.vue.d.ts","sourceRoot":"","sources":["../src/App.vue"],"names":[],"mappings":"AA6EA,OAAO,EAAW,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAGvC,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEvC,KAAK,WAAW,GAAG;IACjB,iBAAiB,EAAE,gBAAgB,EAAE,CAAA;IACrC,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,MAAM,CAAA;IAC7B,WAAW,CAAC,EAAE,MAAM,MAAM,CAAA;IAC1B,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAA;IACpC,sEAAsE;IACtE,wBAAwB,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IACnD,UAAU,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACzB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAC;AAuBF,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BG,CAAC;WAAc,CAAC;;;;;iBAEC,CAAC;;;;;;;;;;;;;;;CAjB9B,CAAA;AAIF,MAAM,MAAM,WAAW,GAAG;IACxB,gBAAgB,EAAE,OAAO,KAAK,CAAC,gBAAgB,CAAA;CAChD,CAAA;AA+CD,QAAA,MAAM,YAAY;;;;kFAIhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
package/dist/App.vue.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import App_vue_vue_type_script_setup_true_lang_default from "./App.
|
|
1
|
+
import App_vue_vue_type_script_setup_true_lang_default from "./App.vue_vue_type_script_setup_true_lang.js";
|
|
2
2
|
//#region src/App.vue
|
|
3
3
|
var App_default = App_vue_vue_type_script_setup_true_lang_default;
|
|
4
4
|
//#endregion
|
package/dist/App.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.vue.js","names":[],"sources":["../src/App.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { provide, type Ref } from 'vue'\n\nimport Chat from '@/Chat.vue'\nimport { createState, STATE_SYMBOL, type RegistryDocument } from '@/state/state'\nimport { type ChatMode } from '@/types'\n\nconst {\n dashboardUrl,\n platformProxyUrl,\n registryDocuments,\n registryUrl,\n baseUrl,\n mode = 'full',\n getAccessToken,\n getAgentKey,\n getActiveDocumentJson,\n getActiveDocumentContext,\n isLoggedIn,\n prefilledMessage,\n hideAddApi,\n} = defineProps<{\n registryDocuments: RegistryDocument[]\n registryUrl: string\n dashboardUrl: string\n platformProxyUrl: string\n baseUrl: string\n mode?: ChatMode\n getAccessToken?: () => string\n getAgentKey?: () => string\n getActiveDocumentJson?: () => string\n /** Identifies the selected reference source in outgoing questions. */\n getActiveDocumentContext?: () => string | undefined\n isLoggedIn?: Ref<boolean>\n prefilledMessage?: Ref<string>\n hideAddApi?: boolean\n}>()\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst state = createState({\n getActiveDocumentJson,\n getActiveDocumentContext,\n initialRegistryDocuments: registryDocuments,\n prefilledMessageRef: prefilledMessage,\n platformProxyUrl,\n registryUrl,\n baseUrl,\n mode,\n getAccessToken,\n getAgentKey,\n isLoggedIn,\n dashboardUrl,\n hideAddApi,\n})\n\nprovide(STATE_SYMBOL, state)\n\nexport type ChatExposed = {\n addDocumentAsync: typeof state.addDocumentAsync\n}\n\ndefineExpose<ChatExposed>({\n addDocumentAsync: state.addDocumentAsync,\n})\n</script>\n\n<template>\n <Chat @uploadApi=\"$emit('uploadApi')\" />\n</template>\n\n<style scoped></style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"App.vue.js","names":["_sfc_main"],"sources":["../src/App.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { provide, type Ref } from 'vue'\n\nimport Chat from '@/Chat.vue'\nimport { createState, STATE_SYMBOL, type RegistryDocument } from '@/state/state'\nimport { type ChatMode } from '@/types'\n\nconst {\n dashboardUrl,\n platformProxyUrl,\n registryDocuments,\n registryUrl,\n baseUrl,\n mode = 'full',\n getAccessToken,\n getAgentKey,\n getActiveDocumentJson,\n getActiveDocumentContext,\n isLoggedIn,\n prefilledMessage,\n hideAddApi,\n} = defineProps<{\n registryDocuments: RegistryDocument[]\n registryUrl: string\n dashboardUrl: string\n platformProxyUrl: string\n baseUrl: string\n mode?: ChatMode\n getAccessToken?: () => string\n getAgentKey?: () => string\n getActiveDocumentJson?: () => string\n /** Identifies the selected reference source in outgoing questions. */\n getActiveDocumentContext?: () => string | undefined\n isLoggedIn?: Ref<boolean>\n prefilledMessage?: Ref<string>\n hideAddApi?: boolean\n}>()\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst state = createState({\n getActiveDocumentJson,\n getActiveDocumentContext,\n initialRegistryDocuments: registryDocuments,\n prefilledMessageRef: prefilledMessage,\n platformProxyUrl,\n registryUrl,\n baseUrl,\n mode,\n getAccessToken,\n getAgentKey,\n isLoggedIn,\n dashboardUrl,\n hideAddApi,\n})\n\nprovide(STATE_SYMBOL, state)\n\nexport type ChatExposed = {\n addDocumentAsync: typeof state.addDocumentAsync\n}\n\ndefineExpose<ChatExposed>({\n addDocumentAsync: state.addDocumentAsync,\n})\n</script>\n\n<template>\n <Chat @uploadApi=\"$emit('uploadApi')\" />\n</template>\n\n<style scoped></style>\n"],"mappings":""}
|
|
@@ -46,4 +46,4 @@ var App_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompon
|
|
|
46
46
|
//#endregion
|
|
47
47
|
export { App_vue_vue_type_script_setup_true_lang_default as default };
|
|
48
48
|
|
|
49
|
-
//# sourceMappingURL=App.
|
|
49
|
+
//# sourceMappingURL=App.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App.vue_vue_type_script_setup_true_lang.js","names":["$emit","_openBlock","_createBlock","Chat"],"sources":["../src/App.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { provide, type Ref } from 'vue'\n\nimport Chat from '@/Chat.vue'\nimport { createState, STATE_SYMBOL, type RegistryDocument } from '@/state/state'\nimport { type ChatMode } from '@/types'\n\nconst {\n dashboardUrl,\n platformProxyUrl,\n registryDocuments,\n registryUrl,\n baseUrl,\n mode = 'full',\n getAccessToken,\n getAgentKey,\n getActiveDocumentJson,\n getActiveDocumentContext,\n isLoggedIn,\n prefilledMessage,\n hideAddApi,\n} = defineProps<{\n registryDocuments: RegistryDocument[]\n registryUrl: string\n dashboardUrl: string\n platformProxyUrl: string\n baseUrl: string\n mode?: ChatMode\n getAccessToken?: () => string\n getAgentKey?: () => string\n getActiveDocumentJson?: () => string\n /** Identifies the selected reference source in outgoing questions. */\n getActiveDocumentContext?: () => string | undefined\n isLoggedIn?: Ref<boolean>\n prefilledMessage?: Ref<string>\n hideAddApi?: boolean\n}>()\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst state = createState({\n getActiveDocumentJson,\n getActiveDocumentContext,\n initialRegistryDocuments: registryDocuments,\n prefilledMessageRef: prefilledMessage,\n platformProxyUrl,\n registryUrl,\n baseUrl,\n mode,\n getAccessToken,\n getAgentKey,\n isLoggedIn,\n dashboardUrl,\n hideAddApi,\n})\n\nprovide(STATE_SYMBOL, state)\n\nexport type ChatExposed = {\n addDocumentAsync: typeof state.addDocumentAsync\n}\n\ndefineExpose<ChatExposed>({\n addDocumentAsync: state.addDocumentAsync,\n})\n</script>\n\n<template>\n <Chat @uploadApi=\"$emit('uploadApi')\" />\n</template>\n\n<style scoped></style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;EA0CA,MAAM,QAAQ,YAAY;GACxB,uBAAoB,QAAA;GACpB,0BAAuB,QAAA;GACvB,0BAA0B,QAAA;GAC1B,qBAAqB,QAAA;GACrB,kBAAe,QAAA;GACf,aAAU,QAAA;GACV,SAAM,QAAA;GACN,MAAG,QAAA;GACH,gBAAa,QAAA;GACb,aAAU,QAAA;GACV,YAAS,QAAA;GACT,cAAW,QAAA;GACX,YAAS,QAAA;EACX,CAAC;EAED,QAAQ,cAAc,KAAK;EAM3B,SAA0B,EACxB,kBAAkB,MAAM,iBAC1B,CAAC;;GAIC,OAAAC,UAAA,GAAAC,YAAwCC,cAAA,EAAjC,aAAS,OAAA,OAAA,OAAA,MAAA,WAAEH,KAAAA,MAAK,WAAA,G"}
|
package/dist/Chat.vue.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import Chat_vue_vue_type_script_setup_true_lang_default from "./Chat.
|
|
1
|
+
import Chat_vue_vue_type_script_setup_true_lang_default from "./Chat.vue_vue_type_script_setup_true_lang.js";
|
|
2
2
|
//#region src/Chat.vue
|
|
3
3
|
var Chat_default = Chat_vue_vue_type_script_setup_true_lang_default;
|
|
4
4
|
//#endregion
|
package/dist/Chat.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.vue.js","names":[],"sources":["../src/Chat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { useLazyApiClient } from '@scalar/api-client/modal/use-lazy-api-client'\nimport { initializeWorkspaceEventHandlers } from '@scalar/api-client/v2/workspace-events'\nimport { onBeforeUnmount, onMounted, ref, useTemplateRef, watch } from 'vue'\n\nimport { useAgentKeyDocuments } from '@/hooks/use-agent-key-documents'\nimport { useChatScroll } from '@/hooks/use-chat-scroll'\nimport { useCuratedDocuments } from '@/hooks/use-curated-documents'\nimport {\n getTmpDocFromLocalStorage,\n useUploadTmpDocument,\n} from '@/hooks/use-upload-tmp-document'\nimport { useState } from '@/state/state'\nimport Layout from '@/views/Layout.vue'\nimport Settings from '@/views/Settings/Settings.vue'\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst {\n chat,\n prompt,\n settingsModal,\n eventBus,\n workspaceStore,\n config,\n mode,\n addDocument,\n getActiveDocumentJson,\n getActiveDocumentContext,\n terms,\n} = useState()\n\nconst clientModalRef = useTemplateRef<HTMLElement>('clientModal')\n// Authentication and server controls also work before the request editor opens.\nconst stopClientEvents = initializeWorkspaceEventHandlers({\n eventBus,\n store: ref(workspaceStore),\n hooks: {},\n})\nconst clientLoadingStatus = ref<'idle' | 'loading' | 'error'>('idle')\nuseLazyApiClient({\n eventBus,\n status: clientLoadingStatus,\n load: async () => {\n const { createApiClientModal } = await import('@scalar/api-client/modal')\n return () => {\n if (!clientModalRef.value) {\n return null\n }\n stopClientEvents()\n return createApiClientModal({\n el: clientModalRef.value,\n options: config,\n eventBus,\n workspaceStore,\n })\n }\n },\n})\nonBeforeUnmount(stopClientEvents)\n\nonMounted(async () => {\n const tmpDoc = getTmpDocFromLocalStorage()\n\n if (mode === 'preview' && tmpDoc && !getActiveDocumentJson) {\n await addDocument({\n namespace: tmpDoc.namespace,\n slug: tmpDoc.slug,\n removable: false,\n tmp: true,\n })\n }\n})\n\nconst { uploadTempDocument } = useUploadTmpDocument()\nwatch(\n terms.accepted,\n (accepted) => {\n if (accepted && mode === 'preview' && getActiveDocumentJson) {\n void uploadTempDocument(getActiveDocumentJson(), true)\n }\n },\n { immediate: true },\n)\nonBeforeUnmount(() => {\n void chat.stop()\n})\n\nuseChatScroll()\nuseAgentKeyDocuments()\nuseCuratedDocuments()\n\nasync function handleSubmit() {\n const context = getActiveDocumentContext?.()\n await chat.sendMessage({\n text: context\n ? `${prompt.value}\\n\\nSelected API description: ${context}`\n : prompt.value,\n })\n}\n</script>\n\n<template>\n <div ref=\"clientModal\" />\n <div\n v-if=\"clientLoadingStatus !== 'idle'\"\n class=\"bg-b-1 text-c-1 fixed right-4 bottom-4 z-[10001] rounded-lg border px-4 py-3 text-sm shadow-lg\"\n :role=\"clientLoadingStatus === 'error' ? 'alert' : 'status'\">\n {{\n clientLoadingStatus === 'loading'\n ? 'Loading request editor…'\n : 'Could not load the request editor. Refresh the page and try again.'\n }}\n </div>\n <Layout\n @submit=\"handleSubmit\"\n @uploadApi=\"$emit('uploadApi')\" />\n <Settings :modalState=\"settingsModal\" />\n</template>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"Chat.vue.js","names":["_sfc_main"],"sources":["../src/Chat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { useLazyApiClient } from '@scalar/api-client/modal/use-lazy-api-client'\nimport { initializeWorkspaceEventHandlers } from '@scalar/api-client/v2/workspace-events'\nimport { onBeforeUnmount, onMounted, ref, useTemplateRef, watch } from 'vue'\n\nimport { useAgentKeyDocuments } from '@/hooks/use-agent-key-documents'\nimport { useChatScroll } from '@/hooks/use-chat-scroll'\nimport { useCuratedDocuments } from '@/hooks/use-curated-documents'\nimport {\n getTmpDocFromLocalStorage,\n useUploadTmpDocument,\n} from '@/hooks/use-upload-tmp-document'\nimport { useState } from '@/state/state'\nimport Layout from '@/views/Layout.vue'\nimport Settings from '@/views/Settings/Settings.vue'\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst {\n chat,\n prompt,\n settingsModal,\n eventBus,\n workspaceStore,\n config,\n mode,\n addDocument,\n getActiveDocumentJson,\n getActiveDocumentContext,\n terms,\n} = useState()\n\nconst clientModalRef = useTemplateRef<HTMLElement>('clientModal')\n// Authentication and server controls also work before the request editor opens.\nconst stopClientEvents = initializeWorkspaceEventHandlers({\n eventBus,\n store: ref(workspaceStore),\n hooks: {},\n})\nconst clientLoadingStatus = ref<'idle' | 'loading' | 'error'>('idle')\nuseLazyApiClient({\n eventBus,\n status: clientLoadingStatus,\n load: async () => {\n const { createApiClientModal } = await import('@scalar/api-client/modal')\n return () => {\n if (!clientModalRef.value) {\n return null\n }\n stopClientEvents()\n return createApiClientModal({\n el: clientModalRef.value,\n options: config,\n eventBus,\n workspaceStore,\n })\n }\n },\n})\nonBeforeUnmount(stopClientEvents)\n\nonMounted(async () => {\n const tmpDoc = getTmpDocFromLocalStorage()\n\n if (mode === 'preview' && tmpDoc && !getActiveDocumentJson) {\n await addDocument({\n namespace: tmpDoc.namespace,\n slug: tmpDoc.slug,\n removable: false,\n tmp: true,\n })\n }\n})\n\nconst { uploadTempDocument } = useUploadTmpDocument()\nwatch(\n terms.accepted,\n (accepted) => {\n if (accepted && mode === 'preview' && getActiveDocumentJson) {\n void uploadTempDocument(getActiveDocumentJson(), true)\n }\n },\n { immediate: true },\n)\nonBeforeUnmount(() => {\n void chat.stop()\n})\n\nuseChatScroll()\nuseAgentKeyDocuments()\nuseCuratedDocuments()\n\nasync function handleSubmit() {\n const context = getActiveDocumentContext?.()\n await chat.sendMessage({\n text: context\n ? `${prompt.value}\\n\\nSelected API description: ${context}`\n : prompt.value,\n })\n}\n</script>\n\n<template>\n <div ref=\"clientModal\" />\n <div\n v-if=\"clientLoadingStatus !== 'idle'\"\n class=\"bg-b-1 text-c-1 fixed right-4 bottom-4 z-[10001] rounded-lg border px-4 py-3 text-sm shadow-lg\"\n :role=\"clientLoadingStatus === 'error' ? 'alert' : 'status'\">\n {{\n clientLoadingStatus === 'loading'\n ? 'Loading request editor…'\n : 'Could not load the request editor. Refresh the page and try again.'\n }}\n </div>\n <Layout\n @submit=\"handleSubmit\"\n @uploadApi=\"$emit('uploadApi')\" />\n <Settings :modalState=\"settingsModal\" />\n</template>\n"],"mappings":""}
|
|
@@ -84,4 +84,4 @@ var Chat_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
84
84
|
//#endregion
|
|
85
85
|
export { Chat_vue_vue_type_script_setup_true_lang_default as default };
|
|
86
86
|
|
|
87
|
-
//# sourceMappingURL=Chat.
|
|
87
|
+
//# sourceMappingURL=Chat.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chat.vue_vue_type_script_setup_true_lang.js","names":["$emit","_openBlock","_createElementBlock","_Fragment","_createElementVNode","_toDisplayString","_createCommentVNode","_createVNode","Layout","Settings","_unref"],"sources":["../src/Chat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { useLazyApiClient } from '@scalar/api-client/modal/use-lazy-api-client'\nimport { initializeWorkspaceEventHandlers } from '@scalar/api-client/v2/workspace-events'\nimport { onBeforeUnmount, onMounted, ref, useTemplateRef, watch } from 'vue'\n\nimport { useAgentKeyDocuments } from '@/hooks/use-agent-key-documents'\nimport { useChatScroll } from '@/hooks/use-chat-scroll'\nimport { useCuratedDocuments } from '@/hooks/use-curated-documents'\nimport {\n getTmpDocFromLocalStorage,\n useUploadTmpDocument,\n} from '@/hooks/use-upload-tmp-document'\nimport { useState } from '@/state/state'\nimport Layout from '@/views/Layout.vue'\nimport Settings from '@/views/Settings/Settings.vue'\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst {\n chat,\n prompt,\n settingsModal,\n eventBus,\n workspaceStore,\n config,\n mode,\n addDocument,\n getActiveDocumentJson,\n getActiveDocumentContext,\n terms,\n} = useState()\n\nconst clientModalRef = useTemplateRef<HTMLElement>('clientModal')\n// Authentication and server controls also work before the request editor opens.\nconst stopClientEvents = initializeWorkspaceEventHandlers({\n eventBus,\n store: ref(workspaceStore),\n hooks: {},\n})\nconst clientLoadingStatus = ref<'idle' | 'loading' | 'error'>('idle')\nuseLazyApiClient({\n eventBus,\n status: clientLoadingStatus,\n load: async () => {\n const { createApiClientModal } = await import('@scalar/api-client/modal')\n return () => {\n if (!clientModalRef.value) {\n return null\n }\n stopClientEvents()\n return createApiClientModal({\n el: clientModalRef.value,\n options: config,\n eventBus,\n workspaceStore,\n })\n }\n },\n})\nonBeforeUnmount(stopClientEvents)\n\nonMounted(async () => {\n const tmpDoc = getTmpDocFromLocalStorage()\n\n if (mode === 'preview' && tmpDoc && !getActiveDocumentJson) {\n await addDocument({\n namespace: tmpDoc.namespace,\n slug: tmpDoc.slug,\n removable: false,\n tmp: true,\n })\n }\n})\n\nconst { uploadTempDocument } = useUploadTmpDocument()\nwatch(\n terms.accepted,\n (accepted) => {\n if (accepted && mode === 'preview' && getActiveDocumentJson) {\n void uploadTempDocument(getActiveDocumentJson(), true)\n }\n },\n { immediate: true },\n)\nonBeforeUnmount(() => {\n void chat.stop()\n})\n\nuseChatScroll()\nuseAgentKeyDocuments()\nuseCuratedDocuments()\n\nasync function handleSubmit() {\n const context = getActiveDocumentContext?.()\n await chat.sendMessage({\n text: context\n ? `${prompt.value}\\n\\nSelected API description: ${context}`\n : prompt.value,\n })\n}\n</script>\n\n<template>\n <div ref=\"clientModal\" />\n <div\n v-if=\"clientLoadingStatus !== 'idle'\"\n class=\"bg-b-1 text-c-1 fixed right-4 bottom-4 z-[10001] rounded-lg border px-4 py-3 text-sm shadow-lg\"\n :role=\"clientLoadingStatus === 'error' ? 'alert' : 'status'\">\n {{\n clientLoadingStatus === 'loading'\n ? 'Loading request editor…'\n : 'Could not load the request editor. Refresh the page and try again.'\n }}\n </div>\n <Layout\n @submit=\"handleSubmit\"\n @uploadApi=\"$emit('uploadApi')\" />\n <Settings :modalState=\"settingsModal\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;EAoBA,MAAM,EACJ,MACA,QACA,eACA,UACA,gBACA,QACA,MACA,aACA,uBACA,0BACA,UACE,SAAS;EAEb,MAAM,iBAAiB,eAA4B,aAAa;EAEhE,MAAM,mBAAmB,iCAAiC;GACxD;GACA,OAAO,IAAI,cAAc;GACzB,OAAO,CAAC;EACV,CAAC;EACD,MAAM,sBAAsB,IAAkC,MAAM;EACpE,iBAAiB;GACf;GACA,QAAQ;GACR,MAAM,YAAY;IAChB,MAAM,EAAE,yBAAyB,MAAM,OAAO;IAC9C,aAAa;KACX,IAAI,CAAC,eAAe,OAClB,OAAO;KAET,iBAAiB;KACjB,OAAO,qBAAqB;MAC1B,IAAI,eAAe;MACnB,SAAS;MACT;MACA;KACF,CAAC;IACH;GACF;EACF,CAAC;EACD,gBAAgB,gBAAgB;EAEhC,UAAU,YAAY;GACpB,MAAM,SAAS,0BAA0B;GAEzC,IAAI,SAAS,aAAa,UAAU,CAAC,uBACnC,MAAM,YAAY;IAChB,WAAW,OAAO;IAClB,MAAM,OAAO;IACb,WAAW;IACX,KAAK;GACP,CAAC;EAEL,CAAC;EAED,MAAM,EAAE,uBAAuB,qBAAqB;EACpD,MACE,MAAM,WACL,aAAa;GACZ,IAAI,YAAY,SAAS,aAAa,uBACpC,mBAAwB,sBAAsB,GAAG,IAAI;EAEzD,GACA,EAAE,WAAW,KAAK,CACpB;EACA,sBAAsB;GACpB,KAAU,KAAK;EACjB,CAAC;EAED,cAAc;EACd,qBAAqB;EACrB,oBAAoB;EAEpB,eAAe,eAAe;GAC5B,MAAM,UAAU,2BAA2B;GAC3C,MAAM,KAAK,YAAY,EACrB,MAAM,UACF,GAAG,OAAO,MAAM,gCAAgC,YAChD,OAAO,MACb,CAAC;EACH;;;IAIEI,mBAAyB,OAAzB,YAAyB,MAAA,GAAA;IAEjB,oBAAA,UAAmB,UAD3BH,UAAA,GAAAC,mBASM,OAAA;;KAPJ,OAAM;KACL,MAAM,oBAAA,UAAmB,UAAA,UAAA;IAExB,GAAAG,gBAAA,oBAAA,UAAmB,Y;IAKvBE,YAEoCC,gBAAA;KADjC,UAAQ;KACR,aAAS,OAAA,OAAA,OAAA,MAAA,WAAER,KAAAA,MAAK,WAAA;;IACnBO,YAAwCE,kBAAA,EAA7B,YAAYC,MAAA,aAAA,EAAa,GAAA,MAAA,GAAA,CAAA,YAAA,CAAA"}
|
|
@@ -41,11 +41,12 @@ var safeFetch = n.safeFn(async (url, init) => {
|
|
|
41
41
|
};
|
|
42
42
|
}, (originalError) => createError("FAILED_TO_FETCH", { originalError }));
|
|
43
43
|
function createUrl({ path, activeServer, proxyUrl, queryParams }) {
|
|
44
|
-
|
|
44
|
+
const resolvedUrl = getResolvedUrl({
|
|
45
45
|
path,
|
|
46
46
|
server: activeServer,
|
|
47
47
|
urlParams: queryParams
|
|
48
|
-
})
|
|
48
|
+
});
|
|
49
|
+
return redirectToProxy(proxyUrl, resolvedUrl);
|
|
49
50
|
}
|
|
50
51
|
/**
|
|
51
52
|
* Executes an HTTP request with the specified options, including method, path, headers, and security schemes, and returns the processed response.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute-request.js","names":[],"sources":["../../src/client-tools/execute-request.ts"],"sourcesContent":["import type { Chat } from '@ai-sdk/vue'\nimport { redirectToProxy } from '@scalar/helpers/url/redirect-to-proxy'\nimport type { SecuritySchemeObjectSecret } from '@scalar/workspace-store/request-example'\nimport { buildRequestSecurity, getResolvedUrl } from '@scalar/workspace-store/request-example'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.2/strict/openapi-document'\nimport type { UIDataTypes, UIMessage } from 'ai'\nimport { encode as encodeBase64 } from 'js-base64'\nimport { n } from 'neverpanic'\nimport truncateJson from 'truncate-json'\n\nimport { EXECUTE_CLIENT_SIDE_REQUEST_TOOL_NAME } from '@/entities'\nimport { createError } from '@/entities/error/helpers'\nimport type { Tools } from '@/state/state'\n\n// The maximum number of bytes the requests response can be.\nconst MAX_RESPONSE_SIZE = 50_000\n\nconst getBody = n.safeFn(\n async (response: Response) => {\n const contentType = response.headers.get('content-type')\n\n if (contentType === 'application/json') {\n return { success: true, data: await response.json() }\n }\n\n return { success: true, data: await response.text() }\n },\n (originalError) => createError('FAILED_TO_PARSE_RESPONSE_BODY', { originalError }),\n)\n\nconst truncateResponse = (response: unknown) =>\n JSON.parse(truncateJson(JSON.stringify(response), MAX_RESPONSE_SIZE).jsonString)\n\n/* Result type wrapper for fetch */\nconst safeFetch = n.safeFn(\n async (url: string, init: RequestInit) => {\n const response = await fetch(url, init)\n\n const responseBodyResult = await getBody(response)\n\n if (!response.ok) {\n return {\n success: false,\n error: createError('REQUEST_NOT_OK', {\n status: response.status,\n url: response.url,\n responseBody: truncateResponse(responseBodyResult.success ? responseBodyResult.data : undefined),\n headers: Object.fromEntries(response.headers.entries()),\n }),\n }\n }\n\n if (!responseBodyResult.success) {\n return responseBodyResult\n }\n\n return {\n success: true,\n data: {\n status: response.status,\n responseBody: truncateResponse(responseBodyResult.data),\n headers: Object.fromEntries(response.headers.entries()),\n },\n }\n },\n (originalError) => createError('FAILED_TO_FETCH', { originalError }),\n)\n\nfunction createUrl({\n path,\n activeServer,\n proxyUrl,\n queryParams,\n}: {\n path: string\n activeServer: ServerObject | null\n proxyUrl: string\n queryParams: URLSearchParams\n}) {\n const resolvedUrl = getResolvedUrl({\n path,\n server: activeServer,\n urlParams: queryParams,\n })\n\n return redirectToProxy(proxyUrl, resolvedUrl)\n}\n\n/**\n * Executes an HTTP request with the specified options, including method, path, headers, and security schemes, and returns the processed response.\n */\nexport const executeRequestTool = n.safeFn(\n async ({\n documentSettings,\n toolCallId,\n chat,\n proxyUrl,\n input: { method, path, body, headers, documentName },\n }: {\n documentSettings: Record<\n string,\n { activeServer: ServerObject | null; securitySchemes: SecuritySchemeObjectSecret[] }\n >\n toolCallId: string\n chat: Chat<UIMessage<unknown, UIDataTypes, Tools>>\n proxyUrl: string\n input: {\n method: string\n path: string\n headers?: Record<string, string>\n body?: string\n documentName: string\n }\n }) => {\n const settings = documentSettings[documentName]\n\n if (!settings) {\n return {\n success: false,\n error: createError('DOCUMENT_SETTINGS_COULD_NOT_BE_DETERMINED', {\n documentName,\n }),\n }\n }\n\n const requestSecurityOptions = buildRequestSecurity(settings.securitySchemes)\n\n const requestSecurity = requestSecurityOptions.reduce<{\n headers: Record<string, string>\n queryParams: URLSearchParams\n cookies: Record<string, string>\n }>(\n (acc, securityOption) => {\n /** Format the security value based on its authentication scheme. */\n const securityValue = (() => {\n if (securityOption.format === 'basic') {\n return `Basic ${encodeBase64(securityOption.value)}`\n }\n if (securityOption.format === 'bearer') {\n return `Bearer ${securityOption.value}`\n }\n return securityOption.value\n })()\n\n if (securityOption.in === 'header') {\n acc.headers[securityOption.name] = securityValue\n } else if (securityOption.in === 'query') {\n acc.queryParams.set(securityOption.name, securityValue)\n } else if (securityOption.in === 'cookie') {\n acc.cookies[securityOption.name] = securityValue\n }\n\n return acc\n },\n {\n headers: {},\n queryParams: new URLSearchParams(),\n cookies: {},\n },\n )\n\n const cookieHeader = Object.entries(requestSecurity.cookies)\n .map(([name, value]) => `${name}=${value}`)\n .join('; ')\n\n const fetchOptions = {\n method,\n body,\n headers: {\n ...headers,\n ...requestSecurity.headers,\n Cookie: cookieHeader,\n },\n }\n\n const url = createUrl({\n path,\n activeServer: settings.activeServer,\n proxyUrl,\n queryParams: requestSecurity.queryParams,\n })\n\n const result = await safeFetch(url, fetchOptions)\n\n void chat.addToolOutput({\n tool: EXECUTE_CLIENT_SIDE_REQUEST_TOOL_NAME,\n toolCallId,\n output: result,\n state: 'output-available',\n })\n\n return result\n },\n (originalError) => createError('FAILED_TO_EXECUTE_REQUEST', originalError),\n)\n"],"mappings":";;;;;;;;AAeA,IAAM,oBAAoB;AAE1B,IAAM,UAAU,EAAE,OAChB,OAAO,aAAuB;CAG5B,IAFoB,SAAS,QAAQ,IAAI,cAErC,MAAgB,oBAClB,OAAO;EAAE,SAAS;EAAM,MAAM,MAAM,SAAS,KAAK;CAAE;CAGtD,OAAO;EAAE,SAAS;EAAM,MAAM,MAAM,SAAS,KAAK;CAAE;AACtD,IACC,kBAAkB,YAAY,iCAAiC,EAAE,cAAc,CAAC,CACnF;AAEA,IAAM,oBAAoB,aACxB,KAAK,MAAM,aAAa,KAAK,UAAU,QAAQ,GAAG,iBAAiB,CAAC,CAAC,UAAU;AAGjF,IAAM,YAAY,EAAE,OAClB,OAAO,KAAa,SAAsB;CACxC,MAAM,WAAW,MAAM,MAAM,KAAK,IAAI;CAEtC,MAAM,qBAAqB,MAAM,QAAQ,QAAQ;CAEjD,IAAI,CAAC,SAAS,IACZ,OAAO;EACL,SAAS;EACT,OAAO,YAAY,kBAAkB;GACnC,QAAQ,SAAS;GACjB,KAAK,SAAS;GACd,cAAc,iBAAiB,mBAAmB,UAAU,mBAAmB,OAAO,KAAA,CAAS;GAC/F,SAAS,OAAO,YAAY,SAAS,QAAQ,QAAQ,CAAC;EACxD,CAAC;CACH;CAGF,IAAI,CAAC,mBAAmB,SACtB,OAAO;CAGT,OAAO;EACL,SAAS;EACT,MAAM;GACJ,QAAQ,SAAS;GACjB,cAAc,iBAAiB,mBAAmB,IAAI;GACtD,SAAS,OAAO,YAAY,SAAS,QAAQ,QAAQ,CAAC;EACxD;CACF;AACF,IACC,kBAAkB,YAAY,mBAAmB,EAAE,cAAc,CAAC,CACrE;AAEA,SAAS,UAAU,EACjB,MACA,cACA,UACA,eAMC;
|
|
1
|
+
{"version":3,"file":"execute-request.js","names":["encodeBase64"],"sources":["../../src/client-tools/execute-request.ts"],"sourcesContent":["import type { Chat } from '@ai-sdk/vue'\nimport { redirectToProxy } from '@scalar/helpers/url/redirect-to-proxy'\nimport type { SecuritySchemeObjectSecret } from '@scalar/workspace-store/request-example'\nimport { buildRequestSecurity, getResolvedUrl } from '@scalar/workspace-store/request-example'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.2/strict/openapi-document'\nimport type { UIDataTypes, UIMessage } from 'ai'\nimport { encode as encodeBase64 } from 'js-base64'\nimport { n } from 'neverpanic'\nimport truncateJson from 'truncate-json'\n\nimport { EXECUTE_CLIENT_SIDE_REQUEST_TOOL_NAME } from '@/entities'\nimport { createError } from '@/entities/error/helpers'\nimport type { Tools } from '@/state/state'\n\n// The maximum number of bytes the requests response can be.\nconst MAX_RESPONSE_SIZE = 50_000\n\nconst getBody = n.safeFn(\n async (response: Response) => {\n const contentType = response.headers.get('content-type')\n\n if (contentType === 'application/json') {\n return { success: true, data: await response.json() }\n }\n\n return { success: true, data: await response.text() }\n },\n (originalError) => createError('FAILED_TO_PARSE_RESPONSE_BODY', { originalError }),\n)\n\nconst truncateResponse = (response: unknown) =>\n JSON.parse(truncateJson(JSON.stringify(response), MAX_RESPONSE_SIZE).jsonString)\n\n/* Result type wrapper for fetch */\nconst safeFetch = n.safeFn(\n async (url: string, init: RequestInit) => {\n const response = await fetch(url, init)\n\n const responseBodyResult = await getBody(response)\n\n if (!response.ok) {\n return {\n success: false,\n error: createError('REQUEST_NOT_OK', {\n status: response.status,\n url: response.url,\n responseBody: truncateResponse(responseBodyResult.success ? responseBodyResult.data : undefined),\n headers: Object.fromEntries(response.headers.entries()),\n }),\n }\n }\n\n if (!responseBodyResult.success) {\n return responseBodyResult\n }\n\n return {\n success: true,\n data: {\n status: response.status,\n responseBody: truncateResponse(responseBodyResult.data),\n headers: Object.fromEntries(response.headers.entries()),\n },\n }\n },\n (originalError) => createError('FAILED_TO_FETCH', { originalError }),\n)\n\nfunction createUrl({\n path,\n activeServer,\n proxyUrl,\n queryParams,\n}: {\n path: string\n activeServer: ServerObject | null\n proxyUrl: string\n queryParams: URLSearchParams\n}) {\n const resolvedUrl = getResolvedUrl({\n path,\n server: activeServer,\n urlParams: queryParams,\n })\n\n return redirectToProxy(proxyUrl, resolvedUrl)\n}\n\n/**\n * Executes an HTTP request with the specified options, including method, path, headers, and security schemes, and returns the processed response.\n */\nexport const executeRequestTool = n.safeFn(\n async ({\n documentSettings,\n toolCallId,\n chat,\n proxyUrl,\n input: { method, path, body, headers, documentName },\n }: {\n documentSettings: Record<\n string,\n { activeServer: ServerObject | null; securitySchemes: SecuritySchemeObjectSecret[] }\n >\n toolCallId: string\n chat: Chat<UIMessage<unknown, UIDataTypes, Tools>>\n proxyUrl: string\n input: {\n method: string\n path: string\n headers?: Record<string, string>\n body?: string\n documentName: string\n }\n }) => {\n const settings = documentSettings[documentName]\n\n if (!settings) {\n return {\n success: false,\n error: createError('DOCUMENT_SETTINGS_COULD_NOT_BE_DETERMINED', {\n documentName,\n }),\n }\n }\n\n const requestSecurityOptions = buildRequestSecurity(settings.securitySchemes)\n\n const requestSecurity = requestSecurityOptions.reduce<{\n headers: Record<string, string>\n queryParams: URLSearchParams\n cookies: Record<string, string>\n }>(\n (acc, securityOption) => {\n /** Format the security value based on its authentication scheme. */\n const securityValue = (() => {\n if (securityOption.format === 'basic') {\n return `Basic ${encodeBase64(securityOption.value)}`\n }\n if (securityOption.format === 'bearer') {\n return `Bearer ${securityOption.value}`\n }\n return securityOption.value\n })()\n\n if (securityOption.in === 'header') {\n acc.headers[securityOption.name] = securityValue\n } else if (securityOption.in === 'query') {\n acc.queryParams.set(securityOption.name, securityValue)\n } else if (securityOption.in === 'cookie') {\n acc.cookies[securityOption.name] = securityValue\n }\n\n return acc\n },\n {\n headers: {},\n queryParams: new URLSearchParams(),\n cookies: {},\n },\n )\n\n const cookieHeader = Object.entries(requestSecurity.cookies)\n .map(([name, value]) => `${name}=${value}`)\n .join('; ')\n\n const fetchOptions = {\n method,\n body,\n headers: {\n ...headers,\n ...requestSecurity.headers,\n Cookie: cookieHeader,\n },\n }\n\n const url = createUrl({\n path,\n activeServer: settings.activeServer,\n proxyUrl,\n queryParams: requestSecurity.queryParams,\n })\n\n const result = await safeFetch(url, fetchOptions)\n\n void chat.addToolOutput({\n tool: EXECUTE_CLIENT_SIDE_REQUEST_TOOL_NAME,\n toolCallId,\n output: result,\n state: 'output-available',\n })\n\n return result\n },\n (originalError) => createError('FAILED_TO_EXECUTE_REQUEST', originalError),\n)\n"],"mappings":";;;;;;;;AAeA,IAAM,oBAAoB;AAE1B,IAAM,UAAU,EAAE,OAChB,OAAO,aAAuB;CAG5B,IAFoB,SAAS,QAAQ,IAAI,cAErC,MAAgB,oBAClB,OAAO;EAAE,SAAS;EAAM,MAAM,MAAM,SAAS,KAAK;CAAE;CAGtD,OAAO;EAAE,SAAS;EAAM,MAAM,MAAM,SAAS,KAAK;CAAE;AACtD,IACC,kBAAkB,YAAY,iCAAiC,EAAE,cAAc,CAAC,CACnF;AAEA,IAAM,oBAAoB,aACxB,KAAK,MAAM,aAAa,KAAK,UAAU,QAAQ,GAAG,iBAAiB,CAAC,CAAC,UAAU;AAGjF,IAAM,YAAY,EAAE,OAClB,OAAO,KAAa,SAAsB;CACxC,MAAM,WAAW,MAAM,MAAM,KAAK,IAAI;CAEtC,MAAM,qBAAqB,MAAM,QAAQ,QAAQ;CAEjD,IAAI,CAAC,SAAS,IACZ,OAAO;EACL,SAAS;EACT,OAAO,YAAY,kBAAkB;GACnC,QAAQ,SAAS;GACjB,KAAK,SAAS;GACd,cAAc,iBAAiB,mBAAmB,UAAU,mBAAmB,OAAO,KAAA,CAAS;GAC/F,SAAS,OAAO,YAAY,SAAS,QAAQ,QAAQ,CAAC;EACxD,CAAC;CACH;CAGF,IAAI,CAAC,mBAAmB,SACtB,OAAO;CAGT,OAAO;EACL,SAAS;EACT,MAAM;GACJ,QAAQ,SAAS;GACjB,cAAc,iBAAiB,mBAAmB,IAAI;GACtD,SAAS,OAAO,YAAY,SAAS,QAAQ,QAAQ,CAAC;EACxD;CACF;AACF,IACC,kBAAkB,YAAY,mBAAmB,EAAE,cAAc,CAAC,CACrE;AAEA,SAAS,UAAU,EACjB,MACA,cACA,UACA,eAMC;CACD,MAAM,cAAc,eAAe;EACjC;EACA,QAAQ;EACR,WAAW;CACb,CAAC;CAED,OAAO,gBAAgB,UAAU,WAAW;AAC9C;;;;AAKA,IAAa,qBAAqB,EAAE,OAClC,OAAO,EACL,kBACA,YACA,MACA,UACA,OAAO,EAAE,QAAQ,MAAM,MAAM,SAAS,qBAgBlC;CACJ,MAAM,WAAW,iBAAiB;CAElC,IAAI,CAAC,UACH,OAAO;EACL,SAAS;EACT,OAAO,YAAY,6CAA6C,EAC9D,aACF,CAAC;CACH;CAKF,MAAM,kBAFyB,qBAAqB,SAAS,eAErC,CAAA,CAAuB,QAK5C,KAAK,mBAAmB;;EAEvB,MAAM,uBAAuB;GAC3B,IAAI,eAAe,WAAW,SAC5B,OAAO,SAASA,OAAa,eAAe,KAAK;GAEnD,IAAI,eAAe,WAAW,UAC5B,OAAO,UAAU,eAAe;GAElC,OAAO,eAAe;EACxB,EAAA,CAAG;EAEH,IAAI,eAAe,OAAO,UACxB,IAAI,QAAQ,eAAe,QAAQ;OAC9B,IAAI,eAAe,OAAO,SAC/B,IAAI,YAAY,IAAI,eAAe,MAAM,aAAa;OACjD,IAAI,eAAe,OAAO,UAC/B,IAAI,QAAQ,eAAe,QAAQ;EAGrC,OAAO;CACT,GACA;EACE,SAAS,CAAC;EACV,aAAa,IAAI,gBAAgB;EACjC,SAAS,CAAC;CACZ,CACF;CAEA,MAAM,eAAe,OAAO,QAAQ,gBAAgB,OAAO,CAAC,CACzD,KAAK,CAAC,MAAM,WAAW,GAAG,KAAK,GAAG,OAAO,CAAC,CAC1C,KAAK,IAAI;CAEZ,MAAM,eAAe;EACnB;EACA;EACA,SAAS;GACP,GAAG;GACH,GAAG,gBAAgB;GACnB,QAAQ;EACV;CACF;CASA,MAAM,SAAS,MAAM,UAPT,UAAU;EACpB;EACA,cAAc,SAAS;EACvB;EACA,aAAa,gBAAgB;CAC/B,CAE+B,GAAK,YAAY;CAEhD,KAAU,cAAc;EACtB,MAAM;EACN;EACA,QAAQ;EACR,OAAO;CACT,CAAC;CAED,OAAO;AACT,IACC,kBAAkB,YAAY,6BAA6B,aAAa,CAC3E"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
import ActionsDropdown_vue_vue_type_script_setup_true_lang_default from "./ActionsDropdown.
|
|
3
|
-
/* empty css
|
|
2
|
+
import ActionsDropdown_vue_vue_type_script_setup_true_lang_default from "./ActionsDropdown.vue_vue_type_script_setup_true_lang.js";
|
|
3
|
+
/* empty css */
|
|
4
4
|
//#region src/components/ActionsDropdown.vue
|
|
5
5
|
var ActionsDropdown_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ActionsDropdown_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-e2c3bd19"]]);
|
|
6
6
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionsDropdown.vue.js","names":[],"sources":["../../src/components/ActionsDropdown.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarDropdown, ScalarDropdownItem } from '@scalar/components/dropdown'\nimport { useModal } from '@scalar/components/modal'\nimport { ScalarIconMagnifyingGlass, ScalarIconUpload } from '@scalar/icons'\n\nimport Catalog from '@/views/Catalog/Catalog.vue'\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst catalogModal = useModal()\n</script>\n\n<template>\n <ScalarDropdown :offset=\"{ crossAxis: -5, mainAxis: 5 }\">\n <slot />\n\n <template #items>\n <ScalarDropdownItem @click=\"$emit('uploadApi')\">\n <div class=\"dropdown-item\">\n <ScalarIconUpload />\n Upload API\n </div>\n </ScalarDropdownItem>\n\n <ScalarDropdownItem @click=\"catalogModal.show()\">\n <div class=\"dropdown-item\">\n <ScalarIconMagnifyingGlass />\n Search Catalog\n </div>\n </ScalarDropdownItem>\n </template>\n </ScalarDropdown>\n\n <Catalog\n v-if=\"catalogModal.open\"\n :modal=\"catalogModal\" />\n</template>\n\n<style scoped>\n.dropdown-item {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n</style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ActionsDropdown.vue.js","names":["_sfc_main"],"sources":["../../src/components/ActionsDropdown.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarDropdown, ScalarDropdownItem } from '@scalar/components/dropdown'\nimport { useModal } from '@scalar/components/modal'\nimport { ScalarIconMagnifyingGlass, ScalarIconUpload } from '@scalar/icons'\n\nimport Catalog from '@/views/Catalog/Catalog.vue'\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst catalogModal = useModal()\n</script>\n\n<template>\n <ScalarDropdown :offset=\"{ crossAxis: -5, mainAxis: 5 }\">\n <slot />\n\n <template #items>\n <ScalarDropdownItem @click=\"$emit('uploadApi')\">\n <div class=\"dropdown-item\">\n <ScalarIconUpload />\n Upload API\n </div>\n </ScalarDropdownItem>\n\n <ScalarDropdownItem @click=\"catalogModal.show()\">\n <div class=\"dropdown-item\">\n <ScalarIconMagnifyingGlass />\n Search Catalog\n </div>\n </ScalarDropdownItem>\n </template>\n </ScalarDropdown>\n\n <Catalog\n v-if=\"catalogModal.open\"\n :modal=\"catalogModal\" />\n</template>\n\n<style scoped>\n.dropdown-item {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n</style>\n"],"mappings":""}
|
|
@@ -35,4 +35,4 @@ var ActionsDropdown_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
35
35
|
//#endregion
|
|
36
36
|
export { ActionsDropdown_vue_vue_type_script_setup_true_lang_default as default };
|
|
37
37
|
|
|
38
|
-
//# sourceMappingURL=ActionsDropdown.
|
|
38
|
+
//# sourceMappingURL=ActionsDropdown.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionsDropdown.vue_vue_type_script_setup_true_lang.js","names":["$emit","_openBlock","_createElementBlock","_Fragment","_createVNode","_unref","_withCtx","_createElementVNode","_createTextVNode","_renderSlot","_createBlock","Catalog","_createCommentVNode"],"sources":["../../src/components/ActionsDropdown.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarDropdown, ScalarDropdownItem } from '@scalar/components/dropdown'\nimport { useModal } from '@scalar/components/modal'\nimport { ScalarIconMagnifyingGlass, ScalarIconUpload } from '@scalar/icons'\n\nimport Catalog from '@/views/Catalog/Catalog.vue'\n\ndefineEmits<{\n (e: 'uploadApi'): void\n}>()\n\nconst catalogModal = useModal()\n</script>\n\n<template>\n <ScalarDropdown :offset=\"{ crossAxis: -5, mainAxis: 5 }\">\n <slot />\n\n <template #items>\n <ScalarDropdownItem @click=\"$emit('uploadApi')\">\n <div class=\"dropdown-item\">\n <ScalarIconUpload />\n Upload API\n </div>\n </ScalarDropdownItem>\n\n <ScalarDropdownItem @click=\"catalogModal.show()\">\n <div class=\"dropdown-item\">\n <ScalarIconMagnifyingGlass />\n Search Catalog\n </div>\n </ScalarDropdownItem>\n </template>\n </ScalarDropdown>\n\n <Catalog\n v-if=\"catalogModal.open\"\n :modal=\"catalogModal\" />\n</template>\n\n<style scoped>\n.dropdown-item {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;EAWA,MAAM,eAAe,SAAS;;G,wDAI5BI,YAkBiBC,MAAA,cAAA,GAAA,EAlBA,QAAQ;IAAA,WAAA;IAAA,UAAA;GAAA,EAA8B,GAAA;IAG1C,OAAKC,cAMO,CALrBF,YAKqBC,MAAA,kBAAA,GAAA,EALA,SAAK,OAAA,OAAA,OAAA,MAAA,WAAEL,KAAAA,MAAK,WAAA,G;KAC/B,SAAAM,cAGM,CAHNC,mBAGM,OAHN,YAGM,CAFJH,YAAoBC,MAAA,gBAAA,CAAA,GAAA,OAAA,OAAA,OAAA,KAAAG,gBAAA,gBAEtB,EAAA,E;;I,IAGFJ,YAKqBC,MAAA,kBAAA,GAAA,EALA,SAAK,OAAA,OAAA,OAAA,MAAA,WAAEA,MAAA,YAAA,CAAY,CAAC,KAAI,G;KAC3C,SAAAC,cAGM,CAHNC,mBAGM,OAHN,YAGM,CAFJH,YAA6BC,MAAA,yBAAA,CAAA,GAAA,OAAA,OAAA,OAAA,KAAAG,gBAAA,oBAE/B,EAAA,E;;;IAdJ,SAAAF,cAAQ,CAARG,WAAQ,KAAA,QAAA,WAAA,CAAA,GAAA,KAAA,GAAA,IAAA,C;;G,IAoBFJ,MAAA,YAAA,CAAY,CAAC,QADrBJ,UAAA,GAAAS,YAE0BC,iBAAA;;IAAvB,OAAON,MAAA,YAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
import ApprovalSection_vue_vue_type_script_setup_true_lang_default from "./ApprovalSection.
|
|
3
|
-
/* empty css
|
|
2
|
+
import ApprovalSection_vue_vue_type_script_setup_true_lang_default from "./ApprovalSection.vue_vue_type_script_setup_true_lang.js";
|
|
3
|
+
/* empty css */
|
|
4
4
|
//#region src/components/ApprovalSection.vue
|
|
5
5
|
var ApprovalSection_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ApprovalSection_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f493d089"]]);
|
|
6
6
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApprovalSection.vue.js","names":[],"sources":["../../src/components/ApprovalSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nconst emit = defineEmits<{\n (e: 'approve'): void\n (e: 'reject'): void\n}>()\n</script>\n\n<template>\n <div class=\"approvalSection\">\n <strong class=\"approvalText flex items-center gap-1.5\">\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n One or more requests require approval.\n </strong>\n <div class=\"approveContainer\">\n <button\n class=\"actionButton rejectButton\"\n type=\"button\"\n @click=\"emit('reject')\">\n Reject\n </button>\n <button\n class=\"actionButton approveButton\"\n type=\"button\"\n @click=\"emit('approve')\">\n Approve\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.approvalSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n\n.approvalText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.approveContainer {\n display: flex;\n gap: 5px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n font-size: var(--scalar-font-size-3);\n}\n\n.rejectButton {\n color: white;\n background: var(--scalar-color-red);\n}\n.rejectButton:hover,\n.rejectButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.approveButton {\n color: white;\n background: var(--scalar-color-blue);\n}\n.approveButton:hover,\n.approveButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n</style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ApprovalSection.vue.js","names":["_sfc_main"],"sources":["../../src/components/ApprovalSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nconst emit = defineEmits<{\n (e: 'approve'): void\n (e: 'reject'): void\n}>()\n</script>\n\n<template>\n <div class=\"approvalSection\">\n <strong class=\"approvalText flex items-center gap-1.5\">\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n One or more requests require approval.\n </strong>\n <div class=\"approveContainer\">\n <button\n class=\"actionButton rejectButton\"\n type=\"button\"\n @click=\"emit('reject')\">\n Reject\n </button>\n <button\n class=\"actionButton approveButton\"\n type=\"button\"\n @click=\"emit('approve')\">\n Approve\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.approvalSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n\n.approvalText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.approveContainer {\n display: flex;\n gap: 5px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n font-size: var(--scalar-font-size-3);\n}\n\n.rejectButton {\n color: white;\n background: var(--scalar-color-red);\n}\n.rejectButton:hover,\n.rejectButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.approveButton {\n color: white;\n background: var(--scalar-color-blue);\n}\n.approveButton:hover,\n.approveButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n</style>\n"],"mappings":""}
|
|
@@ -28,4 +28,4 @@ var ApprovalSection_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
28
28
|
//#endregion
|
|
29
29
|
export { ApprovalSection_vue_vue_type_script_setup_true_lang_default as default };
|
|
30
30
|
|
|
31
|
-
//# sourceMappingURL=ApprovalSection.
|
|
31
|
+
//# sourceMappingURL=ApprovalSection.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApprovalSection.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_createElementVNode","_createVNode","_unref","_createTextVNode"],"sources":["../../src/components/ApprovalSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nconst emit = defineEmits<{\n (e: 'approve'): void\n (e: 'reject'): void\n}>()\n</script>\n\n<template>\n <div class=\"approvalSection\">\n <strong class=\"approvalText flex items-center gap-1.5\">\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n One or more requests require approval.\n </strong>\n <div class=\"approveContainer\">\n <button\n class=\"actionButton rejectButton\"\n type=\"button\"\n @click=\"emit('reject')\">\n Reject\n </button>\n <button\n class=\"actionButton approveButton\"\n type=\"button\"\n @click=\"emit('approve')\">\n Approve\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.approvalSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n\n.approvalText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.approveContainer {\n display: flex;\n gap: 5px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n font-size: var(--scalar-font-size-3);\n}\n\n.rejectButton {\n color: white;\n background: var(--scalar-color-red);\n}\n.rejectButton:hover,\n.rejectButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.approveButton {\n color: white;\n background: var(--scalar-color-blue);\n}\n.approveButton:hover,\n.approveButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n</style>\n"],"mappings":";;;;;;;;;;EAGA,MAAM,OAAO;;GAOX,OAAAA,UAAA,GAAAC,mBAqBM,OArBN,YAqBM,CApBJC,mBAKS,UALT,YAKS,CAJPC,YAEkBC,MAAA,cAAA,GAAA;IADhB,OAAM;IACN,QAAO;G,IAAS,OAAA,OAAA,OAAA,KAAAC,gBAAA,4CAEpB,EAAA,E,IACAH,mBAaM,OAbN,YAaM,CAZJA,mBAKS,UAAA;IAJP,OAAM;IACN,MAAK;IACJ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,QAAA;GAAY,GAAA,UAE1B,GACAA,mBAKS,UAAA;IAJP,OAAM;IACN,MAAK;IACJ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,SAAA;GAAa,GAAA,WAE3B,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthenticationProvided.vue.js","names":[],"sources":["../../src/components/AuthenticationProvided.vue"],"sourcesContent":["<template>\n <div class=\"authenticationProvided\">\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 Authorized\n </div>\n</template>\n\n<style scoped>\n.authenticationProvided {\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: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"AuthenticationProvided.vue.js","names":["_openBlock","_createElementBlock","_createStaticVNode"],"sources":["../../src/components/AuthenticationProvided.vue"],"sourcesContent":["<template>\n <div class=\"authenticationProvided\">\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 Authorized\n </div>\n</template>\n\n<style scoped>\n.authenticationProvided {\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: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"mappings":";;;;;AACO,IAAA,aAAA,EAAA,OAAM,yBAAwB;;CAAnC,OAAAA,UAAA,GAAAC,mBAsCM,OAtCN,YAsCM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import { createElementBlock, createStaticVNode, openBlock } from "vue";
|
|
4
4
|
//#region src/components/AuthenticationRequired.vue
|
|
5
5
|
var _sfc_main = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthenticationRequired.vue.js","names":[],"sources":["../../src/components/AuthenticationRequired.vue"],"sourcesContent":["<template>\n <div class=\"authenticationRequired\">\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.5\"\n width=\"14.25\"\n x=\"0.875\"\n y=\"0.875\" />\n <g clip-path=\"url(#clip0_74_585)\">\n <path\n d=\"M10.75 5.5V10.5C10.75 10.6326 10.6973 10.7598 10.6036 10.8536C10.5098 10.9473 10.3826 11 10.25 11H9C8.86739 11 8.74021 10.9473 8.64645 10.8536C8.55268 10.7598 8.5 10.6326 8.5 10.5V5.5C8.5 5.36739 8.55268 5.24021 8.64645 5.14645C8.74021 5.05268 8.86739 5 9 5H10.25C10.3826 5 10.5098 5.05268 10.6036 5.14645C10.6973 5.24021 10.75 5.36739 10.75 5.5ZM7 5H5.75C5.61739 5 5.49021 5.05268 5.39645 5.14645C5.30268 5.24021 5.25 5.36739 5.25 5.5V10.5C5.25 10.6326 5.30268 10.7598 5.39645 10.8536C5.49021 10.9473 5.61739 11 5.75 11H7C7.13261 11 7.25979 10.9473 7.35355 10.8536C7.44732 10.7598 7.5 10.6326 7.5 10.5V5.5C7.5 5.36739 7.44732 5.24021 7.35355 5.14645C7.25979 5.05268 7.13261 5 7 5Z\"\n fill=\"currentColor\" />\n </g>\n <defs>\n <clipPath id=\"clip0_74_585\">\n <rect\n height=\"8\"\n rx=\"4\"\n width=\"8\"\n x=\"4\"\n y=\"4\" />\n </clipPath>\n </defs>\n </svg>\n Authentication required\n </div>\n</template>\n\n<style scoped>\n.authenticationRequired {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-blue);\n font-weight: var(--scalar-semibold);\n min-height: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"AuthenticationRequired.vue.js","names":["_openBlock","_createElementBlock","_createStaticVNode"],"sources":["../../src/components/AuthenticationRequired.vue"],"sourcesContent":["<template>\n <div class=\"authenticationRequired\">\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.5\"\n width=\"14.25\"\n x=\"0.875\"\n y=\"0.875\" />\n <g clip-path=\"url(#clip0_74_585)\">\n <path\n d=\"M10.75 5.5V10.5C10.75 10.6326 10.6973 10.7598 10.6036 10.8536C10.5098 10.9473 10.3826 11 10.25 11H9C8.86739 11 8.74021 10.9473 8.64645 10.8536C8.55268 10.7598 8.5 10.6326 8.5 10.5V5.5C8.5 5.36739 8.55268 5.24021 8.64645 5.14645C8.74021 5.05268 8.86739 5 9 5H10.25C10.3826 5 10.5098 5.05268 10.6036 5.14645C10.6973 5.24021 10.75 5.36739 10.75 5.5ZM7 5H5.75C5.61739 5 5.49021 5.05268 5.39645 5.14645C5.30268 5.24021 5.25 5.36739 5.25 5.5V10.5C5.25 10.6326 5.30268 10.7598 5.39645 10.8536C5.49021 10.9473 5.61739 11 5.75 11H7C7.13261 11 7.25979 10.9473 7.35355 10.8536C7.44732 10.7598 7.5 10.6326 7.5 10.5V5.5C7.5 5.36739 7.44732 5.24021 7.35355 5.14645C7.25979 5.05268 7.13261 5 7 5Z\"\n fill=\"currentColor\" />\n </g>\n <defs>\n <clipPath id=\"clip0_74_585\">\n <rect\n height=\"8\"\n rx=\"4\"\n width=\"8\"\n x=\"4\"\n y=\"4\" />\n </clipPath>\n </defs>\n </svg>\n Authentication required\n </div>\n</template>\n\n<style scoped>\n.authenticationRequired {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-blue);\n font-weight: var(--scalar-semibold);\n min-height: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"mappings":";;;;;AACO,IAAA,aAAA,EAAA,OAAM,yBAAwB;;CAAnC,OAAAA,UAAA,GAAAC,mBAsCM,OAtCN,YAsCM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutosendPaused.vue.js","names":[],"sources":["../../src/components/AutosendPaused.vue"],"sourcesContent":["<template>\n <div class=\"autosendPaused\">\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.5\"\n width=\"14.25\"\n x=\"0.875\"\n y=\"0.875\" />\n <g clip-path=\"url(#clip0_74_585)\">\n <path\n d=\"M10.75 5.5V10.5C10.75 10.6326 10.6973 10.7598 10.6036 10.8536C10.5098 10.9473 10.3826 11 10.25 11H9C8.86739 11 8.74021 10.9473 8.64645 10.8536C8.55268 10.7598 8.5 10.6326 8.5 10.5V5.5C8.5 5.36739 8.55268 5.24021 8.64645 5.14645C8.74021 5.05268 8.86739 5 9 5H10.25C10.3826 5 10.5098 5.05268 10.6036 5.14645C10.6973 5.24021 10.75 5.36739 10.75 5.5ZM7 5H5.75C5.61739 5 5.49021 5.05268 5.39645 5.14645C5.30268 5.24021 5.25 5.36739 5.25 5.5V10.5C5.25 10.6326 5.30268 10.7598 5.39645 10.8536C5.49021 10.9473 5.61739 11 5.75 11H7C7.13261 11 7.25979 10.9473 7.35355 10.8536C7.44732 10.7598 7.5 10.6326 7.5 10.5V5.5C7.5 5.36739 7.44732 5.24021 7.35355 5.14645C7.25979 5.05268 7.13261 5 7 5Z\"\n fill=\"currentColor\" />\n </g>\n <defs>\n <clipPath id=\"clip0_74_585\">\n <rect\n height=\"8\"\n rx=\"4\"\n width=\"8\"\n x=\"4\"\n y=\"4\" />\n </clipPath>\n </defs>\n </svg>\n Accept Request to Continue\n </div>\n</template>\n\n<style scoped>\n.autosendPaused {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-blue);\n font-weight: var(--scalar-semibold);\n min-height: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"AutosendPaused.vue.js","names":["_openBlock","_createElementBlock","_createStaticVNode"],"sources":["../../src/components/AutosendPaused.vue"],"sourcesContent":["<template>\n <div class=\"autosendPaused\">\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.5\"\n width=\"14.25\"\n x=\"0.875\"\n y=\"0.875\" />\n <g clip-path=\"url(#clip0_74_585)\">\n <path\n d=\"M10.75 5.5V10.5C10.75 10.6326 10.6973 10.7598 10.6036 10.8536C10.5098 10.9473 10.3826 11 10.25 11H9C8.86739 11 8.74021 10.9473 8.64645 10.8536C8.55268 10.7598 8.5 10.6326 8.5 10.5V5.5C8.5 5.36739 8.55268 5.24021 8.64645 5.14645C8.74021 5.05268 8.86739 5 9 5H10.25C10.3826 5 10.5098 5.05268 10.6036 5.14645C10.6973 5.24021 10.75 5.36739 10.75 5.5ZM7 5H5.75C5.61739 5 5.49021 5.05268 5.39645 5.14645C5.30268 5.24021 5.25 5.36739 5.25 5.5V10.5C5.25 10.6326 5.30268 10.7598 5.39645 10.8536C5.49021 10.9473 5.61739 11 5.75 11H7C7.13261 11 7.25979 10.9473 7.35355 10.8536C7.44732 10.7598 7.5 10.6326 7.5 10.5V5.5C7.5 5.36739 7.44732 5.24021 7.35355 5.14645C7.25979 5.05268 7.13261 5 7 5Z\"\n fill=\"currentColor\" />\n </g>\n <defs>\n <clipPath id=\"clip0_74_585\">\n <rect\n height=\"8\"\n rx=\"4\"\n width=\"8\"\n x=\"4\"\n y=\"4\" />\n </clipPath>\n </defs>\n </svg>\n Accept Request to Continue\n </div>\n</template>\n\n<style scoped>\n.autosendPaused {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-blue);\n font-weight: var(--scalar-semibold);\n min-height: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n</style>\n"],"mappings":";;;;;AACO,IAAA,aAAA,EAAA,OAAM,iBAAgB;;CAA3B,OAAAA,UAAA,GAAAC,mBAsCM,OAtCN,YAsCM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import { createElementBlock, createElementVNode, createTextVNode, openBlock } from "vue";
|
|
4
4
|
//#region src/components/BuildingRequest.vue
|
|
5
5
|
var _sfc_main = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BuildingRequest.vue.js","names":[],"sources":["../../src/components/BuildingRequest.vue"],"sourcesContent":["<template>\n <div class=\"buildingRequest\">\n <div class=\"playIcon\">\n <svg\n fill=\"currentColor\"\n height=\"32\"\n viewBox=\"0 0 256 256\"\n width=\"32\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z\"></path>\n </svg>\n </div>\n Building Request...\n </div>\n</template>\n\n<style scoped>\n.playIcon {\n padding: 4px;\n height: 16px;\n width: 16px;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-full);\n}\n\n.playIcon::before {\n content: '';\n width: 16px;\n height: 16px;\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n border-width: 1.75px;\n border-style: solid;\n border-color: currentcolor currentcolor transparent;\n border-image: initial;\n border-radius: var(--scalar-radius-full);\n background: var(--scalar-background-1);\n animation: 0.42s linear 0s infinite normal none running rotation;\n}\n\n.buildingRequest {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-blue);\n font-weight: var(--scalar-semibold);\n min-height: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n\n.buildingRequest svg {\n width: 100%;\n height: 100%;\n z-index: 1;\n border-radius: var(--scalar-radius-full);\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n</style>\n"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"BuildingRequest.vue.js","names":["_openBlock","_createElementBlock","_createElementVNode","_createTextVNode"],"sources":["../../src/components/BuildingRequest.vue"],"sourcesContent":["<template>\n <div class=\"buildingRequest\">\n <div class=\"playIcon\">\n <svg\n fill=\"currentColor\"\n height=\"32\"\n viewBox=\"0 0 256 256\"\n width=\"32\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z\"></path>\n </svg>\n </div>\n Building Request...\n </div>\n</template>\n\n<style scoped>\n.playIcon {\n padding: 4px;\n height: 16px;\n width: 16px;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-full);\n}\n\n.playIcon::before {\n content: '';\n width: 16px;\n height: 16px;\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n border-width: 1.75px;\n border-style: solid;\n border-color: currentcolor currentcolor transparent;\n border-image: initial;\n border-radius: var(--scalar-radius-full);\n background: var(--scalar-background-1);\n animation: 0.42s linear 0s infinite normal none running rotation;\n}\n\n.buildingRequest {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-blue);\n font-weight: var(--scalar-semibold);\n min-height: 40px;\n font-size: var(--scalar-font-size-3);\n position: relative;\n}\n\n.buildingRequest svg {\n width: 100%;\n height: 100%;\n z-index: 1;\n border-radius: var(--scalar-radius-full);\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n</style>\n"],"mappings":";;;;;AACO,IAAA,aAAA,EAAA,OAAM,kBAAiB;;CAA5B,OAAAA,UAAA,GAAAC,mBAaM,OAbN,YAaM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAZJC,mBAUM,OAAA,EAVD,OAAM,WAAU,GAAA,CACnBA,mBAQM,OAAA;EAPJ,MAAK;EACL,QAAO;EACP,SAAQ;EACR,OAAM;EACN,OAAM;C,IACNA,mBAC4M,QAAA,EAA1M,GAAE,iMAAgM,CAAA,C,UAElMC,gBAAA,yBAER,EAAA,C"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
import ContextItem_vue_vue_type_script_setup_true_lang_default from "./ContextItem.
|
|
3
|
-
/* empty css
|
|
2
|
+
import ContextItem_vue_vue_type_script_setup_true_lang_default from "./ContextItem.vue_vue_type_script_setup_true_lang.js";
|
|
3
|
+
/* empty css */
|
|
4
4
|
//#region src/components/ContextItem.vue
|
|
5
5
|
var ContextItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ContextItem_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-0509fef2"]]);
|
|
6
6
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextItem.vue.js","names":[],"sources":["../../src/components/ContextItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nconst { loading } = defineProps<{ loading: boolean }>()\n</script>\n\n<template>\n <div\n class=\"contextItem\"\n :class=\"{\n shimmer: loading,\n }\">\n <span class=\"contextItemText\">\n <slot />\n </span>\n </div>\n</template>\n\n<style scoped>\n.contextItem {\n white-space: nowrap;\n font-size: 10px;\n display: inline-block;\n color: var(--scalar-color-2);\n cursor: pointer;\n vertical-align: middle;\n padding: 1px 8px;\n border-radius: var(--scalar-radius-2xl);\n padding: 5px 10px;\n display: flex;\n align-items: center;\n background: color-mix(\n in srgb,\n var(--scalar-background-2),\n var(--scalar-background-1)\n );\n max-width: 200px;\n}\n\n.contextItemText {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.shimmer {\n background: var(--scalar-background-2);\n background-image: linear-gradient(\n 90deg,\n #202020 0%,\n var(--scalar-background-2) 40%,\n var(--scalar-background-3) 80%\n );\n background-size: 200% 100%;\n animation: shimmer 1.4s ease-in-out infinite;\n}\n\n.light-mode .shimmer {\n background: var(--scalar-background-2);\n background-image: linear-gradient(\n 90deg,\n #fafafa 0%,\n var(--scalar-background-2) 40%,\n var(--scalar-background-3) 80%\n );\n background-size: 200% 100%;\n animation: shimmer 1.4s ease-in-out infinite;\n}\n\n@keyframes shimmer {\n 0% {\n background-position: 200% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n}\n</style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ContextItem.vue.js","names":["_sfc_main"],"sources":["../../src/components/ContextItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nconst { loading } = defineProps<{ loading: boolean }>()\n</script>\n\n<template>\n <div\n class=\"contextItem\"\n :class=\"{\n shimmer: loading,\n }\">\n <span class=\"contextItemText\">\n <slot />\n </span>\n </div>\n</template>\n\n<style scoped>\n.contextItem {\n white-space: nowrap;\n font-size: 10px;\n display: inline-block;\n color: var(--scalar-color-2);\n cursor: pointer;\n vertical-align: middle;\n padding: 1px 8px;\n border-radius: var(--scalar-radius-2xl);\n padding: 5px 10px;\n display: flex;\n align-items: center;\n background: color-mix(\n in srgb,\n var(--scalar-background-2),\n var(--scalar-background-1)\n );\n max-width: 200px;\n}\n\n.contextItemText {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.shimmer {\n background: var(--scalar-background-2);\n background-image: linear-gradient(\n 90deg,\n #202020 0%,\n var(--scalar-background-2) 40%,\n var(--scalar-background-3) 80%\n );\n background-size: 200% 100%;\n animation: shimmer 1.4s ease-in-out infinite;\n}\n\n.light-mode .shimmer {\n background: var(--scalar-background-2);\n background-image: linear-gradient(\n 90deg,\n #fafafa 0%,\n var(--scalar-background-2) 40%,\n var(--scalar-background-3) 80%\n );\n background-size: 200% 100%;\n animation: shimmer 1.4s ease-in-out infinite;\n}\n\n@keyframes shimmer {\n 0% {\n background-position: 200% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n}\n</style>\n"],"mappings":""}
|
|
@@ -13,4 +13,4 @@ var ContextItem_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
13
13
|
//#endregion
|
|
14
14
|
export { ContextItem_vue_vue_type_script_setup_true_lang_default as default };
|
|
15
15
|
|
|
16
|
-
//# sourceMappingURL=ContextItem.
|
|
16
|
+
//# sourceMappingURL=ContextItem.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContextItem.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot"],"sources":["../../src/components/ContextItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nconst { loading } = defineProps<{ loading: boolean }>()\n</script>\n\n<template>\n <div\n class=\"contextItem\"\n :class=\"{\n shimmer: loading,\n }\">\n <span class=\"contextItemText\">\n <slot />\n </span>\n </div>\n</template>\n\n<style scoped>\n.contextItem {\n white-space: nowrap;\n font-size: 10px;\n display: inline-block;\n color: var(--scalar-color-2);\n cursor: pointer;\n vertical-align: middle;\n padding: 1px 8px;\n border-radius: var(--scalar-radius-2xl);\n padding: 5px 10px;\n display: flex;\n align-items: center;\n background: color-mix(\n in srgb,\n var(--scalar-background-2),\n var(--scalar-background-1)\n );\n max-width: 200px;\n}\n\n.contextItemText {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.shimmer {\n background: var(--scalar-background-2);\n background-image: linear-gradient(\n 90deg,\n #202020 0%,\n var(--scalar-background-2) 40%,\n var(--scalar-background-3) 80%\n );\n background-size: 200% 100%;\n animation: shimmer 1.4s ease-in-out infinite;\n}\n\n.light-mode .shimmer {\n background: var(--scalar-background-2);\n background-image: linear-gradient(\n 90deg,\n #fafafa 0%,\n var(--scalar-background-2) 40%,\n var(--scalar-background-3) 80%\n );\n background-size: 200% 100%;\n animation: shimmer 1.4s ease-in-out infinite;\n}\n\n@keyframes shimmer {\n 0% {\n background-position: 200% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n}\n</style>\n"],"mappings":";;;;;;;;GAKE,OAAAA,UAAA,GAAAC,mBAQM,OAAA,EAPJ,OAAKC,eAAA,CAAC,eAAa,EACM,SAAA,QAAA,Q,QAGzBC,mBAEO,QAFP,YAEO,CADLC,WAAQ,KAAA,QAAA,WAAA,CAAA,GAAA,KAAA,GAAA,IAAA,C"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
import ErrorMessage_vue_vue_type_script_setup_true_lang_default from "./ErrorMessage.
|
|
3
|
-
/* empty css
|
|
2
|
+
import ErrorMessage_vue_vue_type_script_setup_true_lang_default from "./ErrorMessage.vue_vue_type_script_setup_true_lang.js";
|
|
3
|
+
/* empty css */
|
|
4
4
|
//#region src/components/ErrorMessage.vue
|
|
5
5
|
var ErrorMessage_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ErrorMessage_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-130cb1d5"]]);
|
|
6
6
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorMessage.vue.js","names":[],"sources":["../../src/components/ErrorMessage.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nimport { AgentErrorCodes } from '@/entities/error/constants'\nimport { type ChatError } from '@/hooks/use-chat-error'\n\nconst { error } = defineProps<{ error: ChatError }>()\n\nconst HIDDEN_ERROR_CODES: string[] = [AgentErrorCodes.LIMIT_REACHED]\n</script>\n\n<template>\n <div\n v-if=\"!HIDDEN_ERROR_CODES.includes(error.code)\"\n class=\"error gap-1.5\">\n <ScalarIconInfo\n class=\"text-red size-4\"\n weight=\"bold\" />\n {{ error.message }}\n </div>\n</template>\n\n<style scoped>\n.error {\n display: flex;\n align-items: center;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 95%\n );\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n</style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ErrorMessage.vue.js","names":["_sfc_main"],"sources":["../../src/components/ErrorMessage.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nimport { AgentErrorCodes } from '@/entities/error/constants'\nimport { type ChatError } from '@/hooks/use-chat-error'\n\nconst { error } = defineProps<{ error: ChatError }>()\n\nconst HIDDEN_ERROR_CODES: string[] = [AgentErrorCodes.LIMIT_REACHED]\n</script>\n\n<template>\n <div\n v-if=\"!HIDDEN_ERROR_CODES.includes(error.code)\"\n class=\"error gap-1.5\">\n <ScalarIconInfo\n class=\"text-red size-4\"\n weight=\"bold\" />\n {{ error.message }}\n </div>\n</template>\n\n<style scoped>\n.error {\n display: flex;\n align-items: center;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 95%\n );\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n</style>\n"],"mappings":""}
|
|
@@ -22,4 +22,4 @@ var ErrorMessage_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
22
22
|
//#endregion
|
|
23
23
|
export { ErrorMessage_vue_vue_type_script_setup_true_lang_default as default };
|
|
24
24
|
|
|
25
|
-
//# sourceMappingURL=ErrorMessage.
|
|
25
|
+
//# sourceMappingURL=ErrorMessage.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorMessage.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_createVNode","_unref","_createTextVNode","_toDisplayString","_createCommentVNode"],"sources":["../../src/components/ErrorMessage.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nimport { AgentErrorCodes } from '@/entities/error/constants'\nimport { type ChatError } from '@/hooks/use-chat-error'\n\nconst { error } = defineProps<{ error: ChatError }>()\n\nconst HIDDEN_ERROR_CODES: string[] = [AgentErrorCodes.LIMIT_REACHED]\n</script>\n\n<template>\n <div\n v-if=\"!HIDDEN_ERROR_CODES.includes(error.code)\"\n class=\"error gap-1.5\">\n <ScalarIconInfo\n class=\"text-red size-4\"\n weight=\"bold\" />\n {{ error.message }}\n </div>\n</template>\n\n<style scoped>\n.error {\n display: flex;\n align-items: center;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 95%\n );\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n</style>\n"],"mappings":";;;;;;;;;;;;EAQA,MAAM,qBAA+B,CAAC,gBAAgB,aAAa;;GAKxD,OAAA,CAAA,mBAAmB,SAAS,QAAA,MAAM,IAAI,KAD/CA,UAAA,GAAAC,mBAOM,OAPN,YAOM,CAJJC,YAEkBC,MAAA,cAAA,GAAA;IADhB,OAAM;IACN,QAAO;G,IAASC,gBAAA,MAClBC,gBAAG,QAAA,MAAM,OAAO,GAAA,CAAA,C"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
import FreeMessagesInfoSection_vue_vue_type_script_setup_true_lang_default from "./FreeMessagesInfoSection.
|
|
3
|
-
/* empty css
|
|
2
|
+
import FreeMessagesInfoSection_vue_vue_type_script_setup_true_lang_default from "./FreeMessagesInfoSection.vue_vue_type_script_setup_true_lang.js";
|
|
3
|
+
/* empty css */
|
|
4
4
|
//#region src/components/FreeMessagesInfoSection.vue
|
|
5
5
|
var FreeMessagesInfoSection_default = /*#__PURE__*/ _plugin_vue_export_helper_default(FreeMessagesInfoSection_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-1921dede"]]);
|
|
6
6
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FreeMessagesInfoSection.vue.js","names":[],"sources":["../../src/components/FreeMessagesInfoSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo, ScalarIconX } from '@scalar/icons'\nimport { ref } from 'vue'\n\nimport { URLS } from '@/consts/urls'\nimport { useSignupLink } from '@/hooks/use-signup-link'\n\nconst isDismissed = ref(false)\nconst { signupLink } = useSignupLink()\n\n/**\n * Dismiss the free messages info section.\n */\nfunction dismiss() {\n isDismissed.value = true\n}\n</script>\n\n<template>\n <div\n v-show=\"!isDismissed\"\n class=\"freeMessagesInfoSection\">\n <strong class=\"infoText flex items-center gap-1.5\">\n <!-- Sign up -->\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n <a\n class=\"underline\"\n :href=\"signupLink\"\n target=\"_blank\"\n >Sign up for Agent Scalar</a\n >\n to continue without hitting limits.\n </strong>\n <div class=\"actionsContainer\">\n <a\n class=\"actionButton upgradeButton\"\n :href=\"URLS.AGENT_SCALAR_DOCUMENTATION\"\n target=\"_blank\"\n type=\"button\">\n Read more\n </a>\n <button\n aria-label=\"Close\"\n class=\"closeButton\"\n type=\"button\"\n @click=\"dismiss\">\n <ScalarIconX\n class=\"size-4\"\n weight=\"bold\" />\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.freeMessagesInfoSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n position: relative;\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.infoText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.actionsContainer {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n}\n\n.upgradeButton {\n color: white;\n font-size: var(--scalar-font-size-3);\n background: var(--scalar-color-blue);\n}\n.upgradeButton:hover,\n.upgradeButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.closeButton {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border-radius: var(--scalar-radius-full);\n color: var(--scalar-color-2);\n background: transparent;\n border: none;\n cursor: pointer;\n}\n.closeButton:hover {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 80%\n );\n color: var(--scalar-color-1);\n}\n</style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"FreeMessagesInfoSection.vue.js","names":["_sfc_main"],"sources":["../../src/components/FreeMessagesInfoSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo, ScalarIconX } from '@scalar/icons'\nimport { ref } from 'vue'\n\nimport { URLS } from '@/consts/urls'\nimport { useSignupLink } from '@/hooks/use-signup-link'\n\nconst isDismissed = ref(false)\nconst { signupLink } = useSignupLink()\n\n/**\n * Dismiss the free messages info section.\n */\nfunction dismiss() {\n isDismissed.value = true\n}\n</script>\n\n<template>\n <div\n v-show=\"!isDismissed\"\n class=\"freeMessagesInfoSection\">\n <strong class=\"infoText flex items-center gap-1.5\">\n <!-- Sign up -->\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n <a\n class=\"underline\"\n :href=\"signupLink\"\n target=\"_blank\"\n >Sign up for Agent Scalar</a\n >\n to continue without hitting limits.\n </strong>\n <div class=\"actionsContainer\">\n <a\n class=\"actionButton upgradeButton\"\n :href=\"URLS.AGENT_SCALAR_DOCUMENTATION\"\n target=\"_blank\"\n type=\"button\">\n Read more\n </a>\n <button\n aria-label=\"Close\"\n class=\"closeButton\"\n type=\"button\"\n @click=\"dismiss\">\n <ScalarIconX\n class=\"size-4\"\n weight=\"bold\" />\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.freeMessagesInfoSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n position: relative;\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.infoText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.actionsContainer {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n}\n\n.upgradeButton {\n color: white;\n font-size: var(--scalar-font-size-3);\n background: var(--scalar-color-blue);\n}\n.upgradeButton:hover,\n.upgradeButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.closeButton {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border-radius: var(--scalar-radius-full);\n color: var(--scalar-color-2);\n background: transparent;\n border: none;\n cursor: pointer;\n}\n.closeButton:hover {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 80%\n );\n color: var(--scalar-color-1);\n}\n</style>\n"],"mappings":""}
|
|
@@ -51,4 +51,4 @@ var FreeMessagesInfoSection_vue_vue_type_script_setup_true_lang_default = /*@__P
|
|
|
51
51
|
//#endregion
|
|
52
52
|
export { FreeMessagesInfoSection_vue_vue_type_script_setup_true_lang_default as default };
|
|
53
53
|
|
|
54
|
-
//# sourceMappingURL=FreeMessagesInfoSection.
|
|
54
|
+
//# sourceMappingURL=FreeMessagesInfoSection.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FreeMessagesInfoSection.vue_vue_type_script_setup_true_lang.js","names":["_withDirectives","_openBlock","_createElementBlock","_createElementVNode","_createVNode","_unref","_createTextVNode","_vShow"],"sources":["../../src/components/FreeMessagesInfoSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo, ScalarIconX } from '@scalar/icons'\nimport { ref } from 'vue'\n\nimport { URLS } from '@/consts/urls'\nimport { useSignupLink } from '@/hooks/use-signup-link'\n\nconst isDismissed = ref(false)\nconst { signupLink } = useSignupLink()\n\n/**\n * Dismiss the free messages info section.\n */\nfunction dismiss() {\n isDismissed.value = true\n}\n</script>\n\n<template>\n <div\n v-show=\"!isDismissed\"\n class=\"freeMessagesInfoSection\">\n <strong class=\"infoText flex items-center gap-1.5\">\n <!-- Sign up -->\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n <a\n class=\"underline\"\n :href=\"signupLink\"\n target=\"_blank\"\n >Sign up for Agent Scalar</a\n >\n to continue without hitting limits.\n </strong>\n <div class=\"actionsContainer\">\n <a\n class=\"actionButton upgradeButton\"\n :href=\"URLS.AGENT_SCALAR_DOCUMENTATION\"\n target=\"_blank\"\n type=\"button\">\n Read more\n </a>\n <button\n aria-label=\"Close\"\n class=\"closeButton\"\n type=\"button\"\n @click=\"dismiss\">\n <ScalarIconX\n class=\"size-4\"\n weight=\"bold\" />\n </button>\n </div>\n </div>\n</template>\n\n<style scoped>\n.freeMessagesInfoSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n position: relative;\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.infoText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.actionsContainer {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n}\n\n.upgradeButton {\n color: white;\n font-size: var(--scalar-font-size-3);\n background: var(--scalar-color-blue);\n}\n.upgradeButton:hover,\n.upgradeButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.closeButton {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border-radius: var(--scalar-radius-full);\n color: var(--scalar-color-2);\n background: transparent;\n border: none;\n cursor: pointer;\n}\n.closeButton:hover {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 80%\n );\n color: var(--scalar-color-1);\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;EAOA,MAAM,cAAc,IAAI,KAAK;EAC7B,MAAM,EAAE,eAAe,cAAc;;;;EAKrC,SAAS,UAAU;GACjB,YAAY,QAAQ;EACtB;;GAIE,OAAAA,gBAAAC,UAAA,GAAAC,mBAkCM,OAlCN,YAkCM,CA/BJC,mBAYS,UAZT,YAYS;IAVPC,YAEkBC,MAAA,cAAA,GAAA;KADhB,OAAM;KACN,QAAO;;IACTF,mBAKC,KAAA;KAJC,OAAM;KACL,MAAME,MAAA,UAAA;KACP,QAAO;IACN,GAAA,4BAAwB,GAAA,UAAA;IAC1B,OAAA,OAAA,OAAA,KAAAC,gBAAA,yCAEH,EAAA;G,IACAH,mBAiBM,OAjBN,YAiBM,CAhBJA,mBAMI,KAAA;IALF,OAAM;IACL,MAAME,MAAA,IAAA,CAAI,CAAC;IACZ,QAAO;IACP,MAAK;GAAS,GAAA,eAEhB,GAAA,UAAA,GACAF,mBAQS,UAAA;IAPP,cAAW;IACX,OAAM;IACN,MAAK;IACJ,SAAO;G,IACRC,YAEkBC,MAAA,WAAA,GAAA;IADhB,OAAM;IACN,QAAO;G,iBA9BJ,CAAAE,OAAA,CAAA,YAAA,KAAW,C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import { createElementBlock, createElementVNode, createTextVNode, openBlock } from "vue";
|
|
4
4
|
//#region src/components/LoadingOpenAPISpecsSummary.vue
|
|
5
5
|
var _sfc_main = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingOpenAPISpecsSummary.vue.js","names":[],"sources":["../../src/components/LoadingOpenAPISpecsSummary.vue"],"sourcesContent":["<template>\n <div class=\"loadingApiSpecs\">\n <div class=\"playIcon\"></div>\n Loading APIs...\n </div>\n</template>\n\n<style scoped>\n.playIcon {\n padding: 4px;\n height: 16px;\n width: 16px;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-full);\n}\n\n.playIcon::before {\n content: '';\n width: 16px;\n height: 16px;\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n border-width: 1.5px;\n border-style: solid;\n border-color: currentcolor currentcolor transparent;\n border-image: initial;\n border-radius: var(--scalar-radius-full);\n background: var(--scalar-background-1);\n animation: 0.42s linear 0s infinite normal none running rotation;\n}\n\n.loadingApiSpecs {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-2);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n margin-bottom: 10px;\n}\n\n.loadingApiSpecs svg {\n width: 100%;\n height: 100%;\n z-index: 1;\n border-radius: var(--scalar-radius-full);\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n</style>\n"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"LoadingOpenAPISpecsSummary.vue.js","names":["_openBlock","_createElementBlock","_createElementVNode","_createTextVNode"],"sources":["../../src/components/LoadingOpenAPISpecsSummary.vue"],"sourcesContent":["<template>\n <div class=\"loadingApiSpecs\">\n <div class=\"playIcon\"></div>\n Loading APIs...\n </div>\n</template>\n\n<style scoped>\n.playIcon {\n padding: 4px;\n height: 16px;\n width: 16px;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-full);\n}\n\n.playIcon::before {\n content: '';\n width: 16px;\n height: 16px;\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n border-width: 1.5px;\n border-style: solid;\n border-color: currentcolor currentcolor transparent;\n border-image: initial;\n border-radius: var(--scalar-radius-full);\n background: var(--scalar-background-1);\n animation: 0.42s linear 0s infinite normal none running rotation;\n}\n\n.loadingApiSpecs {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-2);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n margin-bottom: 10px;\n}\n\n.loadingApiSpecs svg {\n width: 100%;\n height: 100%;\n z-index: 1;\n border-radius: var(--scalar-radius-full);\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n</style>\n"],"mappings":";;;;;AACO,IAAA,aAAA,EAAA,OAAM,kBAAiB;;CAA5B,OAAAA,UAAA,GAAAC,mBAGM,OAHN,YAGM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAFJC,mBAA4B,OAAA,EAAvB,OAAM,WAAU,GAAA,MAAA,EAAA,GAAOC,gBAAA,qBAE9B,EAAA,C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import { createElementBlock, createElementVNode, createTextVNode, openBlock } from "vue";
|
|
4
4
|
//#region src/components/LoadingSearchOpenAPIOperations.vue
|
|
5
5
|
var _sfc_main = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingSearchOpenAPIOperations.vue.js","names":[],"sources":["../../src/components/LoadingSearchOpenAPIOperations.vue"],"sourcesContent":["<template>\n <div class=\"sendingRequest\">\n <div class=\"playIcon\"></div>\n Retrieving relevant information...\n </div>\n</template>\n\n<style scoped>\n.playIcon {\n padding: 4px;\n height: 16px;\n width: 16px;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-full);\n}\n\n.playIcon::before {\n content: '';\n width: 16px;\n height: 16px;\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n border-width: 1.5px;\n border-style: solid;\n border-color: currentcolor currentcolor transparent;\n border-image: initial;\n border-radius: var(--scalar-radius-full);\n background: var(--scalar-background-1);\n animation: 0.42s linear 0s infinite normal none running rotation;\n}\n\n.sendingRequest {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-2);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n margin-bottom: 10px;\n}\n\n.sendingRequest svg {\n width: 100%;\n height: 100%;\n z-index: 1;\n border-radius: var(--scalar-radius-full);\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n</style>\n"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"LoadingSearchOpenAPIOperations.vue.js","names":["_openBlock","_createElementBlock","_createElementVNode","_createTextVNode"],"sources":["../../src/components/LoadingSearchOpenAPIOperations.vue"],"sourcesContent":["<template>\n <div class=\"sendingRequest\">\n <div class=\"playIcon\"></div>\n Retrieving relevant information...\n </div>\n</template>\n\n<style scoped>\n.playIcon {\n padding: 4px;\n height: 16px;\n width: 16px;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-full);\n}\n\n.playIcon::before {\n content: '';\n width: 16px;\n height: 16px;\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n border-width: 1.5px;\n border-style: solid;\n border-color: currentcolor currentcolor transparent;\n border-image: initial;\n border-radius: var(--scalar-radius-full);\n background: var(--scalar-background-1);\n animation: 0.42s linear 0s infinite normal none running rotation;\n}\n\n.sendingRequest {\n display: flex;\n align-items: center;\n gap: 6px;\n color: var(--scalar-color-2);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n margin-bottom: 10px;\n}\n\n.sendingRequest svg {\n width: 100%;\n height: 100%;\n z-index: 1;\n border-radius: var(--scalar-radius-full);\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n</style>\n"],"mappings":";;;;;AACO,IAAA,aAAA,EAAA,OAAM,iBAAgB;;CAA3B,OAAAA,UAAA,GAAAC,mBAGM,OAHN,YAGM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAFJC,mBAA4B,OAAA,EAAvB,OAAM,WAAU,GAAA,MAAA,EAAA,GAAOC,gBAAA,wCAE9B,EAAA,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logo.vue.js","names":[],"sources":["../../src/components/Logo.vue"],"sourcesContent":["<template>\n <svg\n fill=\"none\"\n height=\"54\"\n viewBox=\"0 0 64 54\"\n width=\"64\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M31.0667 0C40.2667 0 48.3333 6.13333 52.6 14.9333H57.2667C59.6 14.9333 61.5333 16.8 61.5333 19.1333V32.2C61.5333 33.4667 60.8667 34.6 60 35.3333L63.3333 45.4V45.4667C63.5639 46.207 63.6166 46.9912 63.4874 47.7557C63.3582 48.5202 63.0505 49.2435 62.5895 49.8669C62.1284 50.4903 61.5269 50.9962 60.8338 51.3437C60.1406 51.6911 59.3754 51.8703 58.6 51.8667H54.3333C53.9895 52.4222 53.5082 52.8797 52.936 53.195C52.3638 53.5103 51.72 53.6728 51.0667 53.6667H47.0667C46.5764 53.6755 46.0892 53.5877 45.6328 53.4082C45.1765 53.2287 44.76 52.961 44.4071 52.6205C44.0542 52.28 43.7719 51.8733 43.5762 51.4237C43.3805 50.9741 43.2753 50.4903 43.2667 50C43.2667 47.9333 44.9333 46.2667 47 46.2667H51.0667C52.4667 46.2667 53.7333 46.9333 54.3333 48.0667H58.6C59.3333 48.0667 59.9333 47.4 59.6667 46.6L56.3333 36.3333H51.3333C49.9333 36.3333 48.6 35.6667 47.8 34.5333V34.4667L46.8 32.9333C46.7585 32.8643 46.6999 32.8072 46.6298 32.7675C46.5597 32.7279 46.4805 32.707 46.4 32.707C46.3195 32.707 46.2403 32.7279 46.1702 32.7675C46.1001 32.8072 46.0415 32.8643 46 32.9333L45.4667 34C45.1162 34.7065 44.5739 35.3 43.9019 35.7126C43.2299 36.1253 42.4552 36.3404 41.6667 36.3333H24.9333C23.4 36.3333 21.9333 35.7333 20.8667 34.6667H20.8L19.8667 33.6667C19.6667 33.4667 19.4667 33.3333 19.2 33.3333L17.4667 33.1333C17.3333 38.8667 13.4667 43.4667 8.73333 43.4667C3.93333 43.4667 0 38.6667 0 32.9333C0 32.2667 0 31.6667 0.133333 31.1333V31C0.8 26.8 3.46667 23.4667 6.93333 22.6C9.46667 9.93333 19.3333 0 31.0667 0ZM3.93333 31.5333C4.46667 28 6.93333 26.2 8.73333 26.2C10.7333 26.2 13.6 28.4 13.6 32.8667C13.6 34.4667 13.2667 35.7333 12.7333 36.7333C11.7333 38.7333 10.0667 39.6667 8.73333 39.6667C7.67025 39.6269 6.66506 39.1722 5.93333 38.4C5.8414 38.3142 5.75246 38.2253 5.66667 38.1333C5.19113 37.6008 4.80806 36.9924 4.53333 36.3333C4.0607 35.2169 3.83335 34.0119 3.86667 32.8V31.6667L3.93333 31.6V31.5333ZM24.3333 20.6667C24.3333 19.6667 25.2 18.8 26.2667 18.8H55.8667C56.9333 18.8 57.8 19.6667 57.7333 20.7333V30.7333C57.6667 31.8 56.8 32.6667 55.7333 32.6667H53.4C53.0667 32.6667 52.7333 32.6667 52.4 32.5333C51.5333 32.3333 50.7333 31.8667 50.4 31.3333L47.9333 27.6C47.7363 27.2901 47.4602 27.0383 47.1336 26.8706C46.8069 26.7028 46.4414 26.6251 46.0747 26.6455C45.7081 26.6658 45.3535 26.7835 45.0474 26.9865C44.7413 27.1894 44.4948 27.4702 44.3333 27.8L42.6667 31C42.4199 31.4974 42.04 31.9165 41.5692 32.2107C41.0984 32.505 40.5552 32.6628 40 32.6667L26.2 32.8C25.1333 32.8 24.2667 31.9333 24.2667 30.8667V20.6667H24.3333ZM11 22.2C13.5333 11.5333 22 3.86667 31 3.86667C37.9333 3.86667 44.4 8.2 48.3333 15H24.3333C21.4667 15 18.6 16 16.3333 17.8L16.2667 17.8667L10.9333 22.2H11Z\"\n fill=\"currentColor\"\n fill-rule=\"evenodd\" />\n </svg>\n</template>\n"],"mappings":";;;;;CAEI,MAAK;CACL,QAAO;CACP,SAAQ;CACR,OAAM;CACN,OAAM;;;
|
|
1
|
+
{"version":3,"file":"Logo.vue.js","names":["_openBlock","_createElementBlock","_createElementVNode"],"sources":["../../src/components/Logo.vue"],"sourcesContent":["<template>\n <svg\n fill=\"none\"\n height=\"54\"\n viewBox=\"0 0 64 54\"\n width=\"64\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M31.0667 0C40.2667 0 48.3333 6.13333 52.6 14.9333H57.2667C59.6 14.9333 61.5333 16.8 61.5333 19.1333V32.2C61.5333 33.4667 60.8667 34.6 60 35.3333L63.3333 45.4V45.4667C63.5639 46.207 63.6166 46.9912 63.4874 47.7557C63.3582 48.5202 63.0505 49.2435 62.5895 49.8669C62.1284 50.4903 61.5269 50.9962 60.8338 51.3437C60.1406 51.6911 59.3754 51.8703 58.6 51.8667H54.3333C53.9895 52.4222 53.5082 52.8797 52.936 53.195C52.3638 53.5103 51.72 53.6728 51.0667 53.6667H47.0667C46.5764 53.6755 46.0892 53.5877 45.6328 53.4082C45.1765 53.2287 44.76 52.961 44.4071 52.6205C44.0542 52.28 43.7719 51.8733 43.5762 51.4237C43.3805 50.9741 43.2753 50.4903 43.2667 50C43.2667 47.9333 44.9333 46.2667 47 46.2667H51.0667C52.4667 46.2667 53.7333 46.9333 54.3333 48.0667H58.6C59.3333 48.0667 59.9333 47.4 59.6667 46.6L56.3333 36.3333H51.3333C49.9333 36.3333 48.6 35.6667 47.8 34.5333V34.4667L46.8 32.9333C46.7585 32.8643 46.6999 32.8072 46.6298 32.7675C46.5597 32.7279 46.4805 32.707 46.4 32.707C46.3195 32.707 46.2403 32.7279 46.1702 32.7675C46.1001 32.8072 46.0415 32.8643 46 32.9333L45.4667 34C45.1162 34.7065 44.5739 35.3 43.9019 35.7126C43.2299 36.1253 42.4552 36.3404 41.6667 36.3333H24.9333C23.4 36.3333 21.9333 35.7333 20.8667 34.6667H20.8L19.8667 33.6667C19.6667 33.4667 19.4667 33.3333 19.2 33.3333L17.4667 33.1333C17.3333 38.8667 13.4667 43.4667 8.73333 43.4667C3.93333 43.4667 0 38.6667 0 32.9333C0 32.2667 0 31.6667 0.133333 31.1333V31C0.8 26.8 3.46667 23.4667 6.93333 22.6C9.46667 9.93333 19.3333 0 31.0667 0ZM3.93333 31.5333C4.46667 28 6.93333 26.2 8.73333 26.2C10.7333 26.2 13.6 28.4 13.6 32.8667C13.6 34.4667 13.2667 35.7333 12.7333 36.7333C11.7333 38.7333 10.0667 39.6667 8.73333 39.6667C7.67025 39.6269 6.66506 39.1722 5.93333 38.4C5.8414 38.3142 5.75246 38.2253 5.66667 38.1333C5.19113 37.6008 4.80806 36.9924 4.53333 36.3333C4.0607 35.2169 3.83335 34.0119 3.86667 32.8V31.6667L3.93333 31.6V31.5333ZM24.3333 20.6667C24.3333 19.6667 25.2 18.8 26.2667 18.8H55.8667C56.9333 18.8 57.8 19.6667 57.7333 20.7333V30.7333C57.6667 31.8 56.8 32.6667 55.7333 32.6667H53.4C53.0667 32.6667 52.7333 32.6667 52.4 32.5333C51.5333 32.3333 50.7333 31.8667 50.4 31.3333L47.9333 27.6C47.7363 27.2901 47.4602 27.0383 47.1336 26.8706C46.8069 26.7028 46.4414 26.6251 46.0747 26.6455C45.7081 26.6658 45.3535 26.7835 45.0474 26.9865C44.7413 27.1894 44.4948 27.4702 44.3333 27.8L42.6667 31C42.4199 31.4974 42.04 31.9165 41.5692 32.2107C41.0984 32.505 40.5552 32.6628 40 32.6667L26.2 32.8C25.1333 32.8 24.2667 31.9333 24.2667 30.8667V20.6667H24.3333ZM11 22.2C13.5333 11.5333 22 3.86667 31 3.86667C37.9333 3.86667 44.4 8.2 48.3333 15H24.3333C21.4667 15 18.6 16 16.3333 17.8L16.2667 17.8667L10.9333 22.2H11Z\"\n fill=\"currentColor\"\n fill-rule=\"evenodd\" />\n </svg>\n</template>\n"],"mappings":";;;;;CAEI,MAAK;CACL,QAAO;CACP,SAAQ;CACR,OAAM;CACN,OAAM;;;CALR,OAAAA,UAAA,GAAAC,mBAWM,OAXN,YAWM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CALJC,mBAIwB,QAAA;EAHtB,aAAU;EACV,GAAE;EACF,MAAK;EACL,aAAU"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
-
import PaymentSection_vue_vue_type_script_setup_true_lang_default from "./PaymentSection.
|
|
3
|
-
/* empty css
|
|
2
|
+
import PaymentSection_vue_vue_type_script_setup_true_lang_default from "./PaymentSection.vue_vue_type_script_setup_true_lang.js";
|
|
3
|
+
/* empty css */
|
|
4
4
|
//#region src/components/PaymentSection.vue
|
|
5
5
|
var PaymentSection_default = /*#__PURE__*/ _plugin_vue_export_helper_default(PaymentSection_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-9d163ea1"]]);
|
|
6
6
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentSection.vue.js","names":[],"sources":["../../src/components/PaymentSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nimport { useSignupLink } from '@/hooks/use-signup-link'\n\nconst { navigateToSignup } = useSignupLink()\n</script>\n\n<template>\n <div class=\"paymentSection\">\n <strong class=\"approvalText flex items-center gap-1.5\">\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n You've used up your complimentary Scalar Credits. Sign up to get free\n Credits.\n </strong>\n <div class=\"paymentContainer\">\n <button\n class=\"actionButton approveButton\"\n type=\"button\"\n @click=\"navigateToSignup\">\n Sign up\n </button>\n <div class=\"paymentInfo\">\n <h3>$0 <span>/ month</span></h3>\n <div class=\"paymentInfoSection\">\n <div class=\"paymentInfoItem\">\n <span>Credits</span>\n <span>100</span>\n </div>\n <div class=\"paymentInfoItem\">\n <span>MCP Servers</span>\n <span>Unlimited</span>\n </div>\n <div class=\"paymentInfoItem\">\n <span>Base monthly total</span>\n <span>$0.00</span>\n </div>\n </div>\n <div class=\"paymentInfoSection\">\n <div class=\"paymentInfoItem\">\n <span>Additional Credits</span>\n <span>+ $0.02 per Credit</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<style scoped>\n.paymentSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n position: relative;\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n\n.approvalText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.paymentContainer {\n display: flex;\n gap: 5px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n}\n\n.rejectButton {\n color: white;\n background: var(--scalar-color-red);\n}\n.rejectButton:hover,\n.rejectButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.approveButton {\n color: white;\n font-size: var(--scalar-font-size-3);\n background: var(--scalar-color-blue);\n}\n.approveButton:hover,\n.approveButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n.paymentInfo {\n width: 300px;\n position: absolute;\n right: 0;\n bottom: 70px;\n box-shadow: var(--scalar-shadow-2);\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-3xl);\n pointer-events: none;\n padding: 12px;\n transform: translate3d(0, -5px, 0);\n opacity: 0;\n transition: all 0.2s ease-in-out;\n}\n.paymentInfo h3 {\n font-size: var(--scalar-font-size-1);\n font-weight: var(--scalar-bold);\n margin-bottom: 18px;\n}\n.paymentInfo h3 span {\n font-size: var(--scalar-font-size-2);\n}\n.dark-mode .paymentInfo {\n background: var(--scalar-background-2);\n}\n.paymentContainer:hover .paymentInfo {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n}\n.paymentInfoItem {\n display: flex;\n justify-content: space-between;\n margin-top: 8px;\n font-size: var(--scalar-font-size-3);\n color: var(--scalar-color-2);\n font-weight: var(--scalar-semibold);\n}\n.paymentInfoSection:not(:last-child) {\n border-bottom: var(--scalar-border-width) solid var(--scalar-border-color);\n padding-bottom: 8px;\n}\n</style>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"PaymentSection.vue.js","names":["_sfc_main"],"sources":["../../src/components/PaymentSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconInfo } from '@scalar/icons'\n\nimport { useSignupLink } from '@/hooks/use-signup-link'\n\nconst { navigateToSignup } = useSignupLink()\n</script>\n\n<template>\n <div class=\"paymentSection\">\n <strong class=\"approvalText flex items-center gap-1.5\">\n <ScalarIconInfo\n class=\"text-blue size-4\"\n weight=\"bold\" />\n You've used up your complimentary Scalar Credits. Sign up to get free\n Credits.\n </strong>\n <div class=\"paymentContainer\">\n <button\n class=\"actionButton approveButton\"\n type=\"button\"\n @click=\"navigateToSignup\">\n Sign up\n </button>\n <div class=\"paymentInfo\">\n <h3>$0 <span>/ month</span></h3>\n <div class=\"paymentInfoSection\">\n <div class=\"paymentInfoItem\">\n <span>Credits</span>\n <span>100</span>\n </div>\n <div class=\"paymentInfoItem\">\n <span>MCP Servers</span>\n <span>Unlimited</span>\n </div>\n <div class=\"paymentInfoItem\">\n <span>Base monthly total</span>\n <span>$0.00</span>\n </div>\n </div>\n <div class=\"paymentInfoSection\">\n <div class=\"paymentInfoItem\">\n <span>Additional Credits</span>\n <span>+ $0.02 per Credit</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<style scoped>\n.paymentSection {\n width: 100%;\n margin-bottom: -16px;\n padding: 8px 8px 24px 12px;\n position: relative;\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 95%\n );\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n border-radius: var(--scalar-radius-3xl) var(--scalar-radius-3xl) 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: absolute;\n top: 0;\n transform: translate3d(0, calc(-100% + 16px), 0);\n}\n\n.approvalText {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-font-size-3);\n}\n\n.paymentContainer {\n display: flex;\n gap: 5px;\n}\n\n.actionButton {\n display: flex;\n align-items: center;\n font-weight: var(--scalar-semibold);\n border-radius: var(--scalar-radius-full);\n padding: 6px 12px;\n}\n\n.rejectButton {\n color: white;\n background: var(--scalar-color-red);\n}\n.rejectButton:hover,\n.rejectButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-red),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n\n.approveButton {\n color: white;\n font-size: var(--scalar-font-size-3);\n background: var(--scalar-color-blue);\n}\n.approveButton:hover,\n.approveButton:active {\n background: color-mix(\n in srgb,\n var(--scalar-color-blue),\n var(--scalar-background-1) 10%\n );\n color: white !important;\n}\n.paymentInfo {\n width: 300px;\n position: absolute;\n right: 0;\n bottom: 70px;\n box-shadow: var(--scalar-shadow-2);\n background: var(--scalar-background-1);\n border-radius: var(--scalar-radius-3xl);\n pointer-events: none;\n padding: 12px;\n transform: translate3d(0, -5px, 0);\n opacity: 0;\n transition: all 0.2s ease-in-out;\n}\n.paymentInfo h3 {\n font-size: var(--scalar-font-size-1);\n font-weight: var(--scalar-bold);\n margin-bottom: 18px;\n}\n.paymentInfo h3 span {\n font-size: var(--scalar-font-size-2);\n}\n.dark-mode .paymentInfo {\n background: var(--scalar-background-2);\n}\n.paymentContainer:hover .paymentInfo {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n}\n.paymentInfoItem {\n display: flex;\n justify-content: space-between;\n margin-top: 8px;\n font-size: var(--scalar-font-size-3);\n color: var(--scalar-color-2);\n font-weight: var(--scalar-semibold);\n}\n.paymentInfoSection:not(:last-child) {\n border-bottom: var(--scalar-border-width) solid var(--scalar-border-color);\n padding-bottom: 8px;\n}\n</style>\n"],"mappings":""}
|