@8wave/ai-elements 0.115.0-beta.47 → 0.115.0-beta.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +1 -0
  2. package/dist/_chunks/{Agent-D3cVY0pk.js → Agent-CJbRpoZG.js} +38 -38
  3. package/dist/_chunks/Agent-CJbRpoZG.js.map +1 -0
  4. package/dist/_chunks/PkChatbotFilePreview-DcqwX9nI.js +256 -0
  5. package/dist/_chunks/PkChatbotFilePreview-DcqwX9nI.js.map +1 -0
  6. package/dist/_chunks/{PkStreamingMarkdown-DyvZ5xKK.js → PkStreamingMarkdown-B_qmgO9_.js} +728 -713
  7. package/dist/_chunks/PkStreamingMarkdown-B_qmgO9_.js.map +1 -0
  8. package/dist/_chunks/PkToolEditSpreadsheet-BSxYLcys.js +41 -0
  9. package/dist/_chunks/PkToolEditSpreadsheet-BSxYLcys.js.map +1 -0
  10. package/dist/_chunks/{PkToolRequestGeolocation-DjRmmYMk.js → PkToolRequestGeolocation-YW0ilIxN.js} +2 -2
  11. package/dist/_chunks/{PkToolRequestGeolocation-DjRmmYMk.js.map → PkToolRequestGeolocation-YW0ilIxN.js.map} +1 -1
  12. package/dist/_chunks/{PkToolRequestOAuthConnection-CJ8dg2RY.js → PkToolRequestOAuthConnection-Cx4aFL5g.js} +2 -2
  13. package/dist/_chunks/{PkToolRequestOAuthConnection-CJ8dg2RY.js.map → PkToolRequestOAuthConnection-Cx4aFL5g.js.map} +1 -1
  14. package/dist/_chunks/{PkToolShowArtifact-Bk-xmGxl.js → PkToolShowArtifact-Bgj02cPe.js} +2 -2
  15. package/dist/_chunks/{PkToolShowArtifact-Bk-xmGxl.js.map → PkToolShowArtifact-Bgj02cPe.js.map} +1 -1
  16. package/dist/_chunks/{PkToolShowContactForm-B0o6CY0Q.js → PkToolShowContactForm-Die8UpNv.js} +2 -2
  17. package/dist/_chunks/{PkToolShowContactForm-B0o6CY0Q.js.map → PkToolShowContactForm-Die8UpNv.js.map} +1 -1
  18. package/dist/_chunks/{PkToolShowForm-C4-KAKPL.js → PkToolShowForm-Dmq95u6b.js} +5 -5
  19. package/dist/_chunks/{PkToolShowForm-C4-KAKPL.js.map → PkToolShowForm-Dmq95u6b.js.map} +1 -1
  20. package/dist/_chunks/{PkToolShowImageGallery-Jdo7p2mZ.js → PkToolShowImageGallery-CKuyTxih.js} +2 -2
  21. package/dist/_chunks/{PkToolShowImageGallery-Jdo7p2mZ.js.map → PkToolShowImageGallery-CKuyTxih.js.map} +1 -1
  22. package/dist/_chunks/{PkToolShowProductList-Cfk865KB.js → PkToolShowProductList-DjS9nvXe.js} +2 -2
  23. package/dist/_chunks/{PkToolShowProductList-Cfk865KB.js.map → PkToolShowProductList-DjS9nvXe.js.map} +1 -1
  24. package/dist/_chunks/{PkToolShowSources-qqUbdWzN.js → PkToolShowSources-MJRFeqMA.js} +3 -3
  25. package/dist/_chunks/{PkToolShowSources-qqUbdWzN.js.map → PkToolShowSources-MJRFeqMA.js.map} +1 -1
  26. package/dist/_chunks/{PkToolShowSuggestedReply-Dk6Nu9cG.js → PkToolShowSuggestedReply-DPVS3C74.js} +2 -2
  27. package/dist/_chunks/{PkToolShowSuggestedReply-Dk6Nu9cG.js.map → PkToolShowSuggestedReply-DPVS3C74.js.map} +1 -1
  28. package/dist/_chunks/{PkToolShowVideo-D07i4hVd.js → PkToolShowVideo-DnvvRE7H.js} +2 -2
  29. package/dist/_chunks/{PkToolShowVideo-D07i4hVd.js.map → PkToolShowVideo-DnvvRE7H.js.map} +1 -1
  30. package/dist/_chunks/{PkToolShowWebPages-ksXRNsDK.js → PkToolShowWebPages-CYbiGa7e.js} +2 -2
  31. package/dist/_chunks/{PkToolShowWebPages-ksXRNsDK.js.map → PkToolShowWebPages-CYbiGa7e.js.map} +1 -1
  32. package/dist/_chunks/{chatImagePolicy-B1iRRLAB.js → chatImagePolicy-C5eH4Cpq.js} +2 -2
  33. package/dist/_chunks/{chatImagePolicy-B1iRRLAB.js.map → chatImagePolicy-C5eH4Cpq.js.map} +1 -1
  34. package/dist/_chunks/{markdown-DOitQ2jz.js → markdown-qIVVfGoX.js} +135 -62
  35. package/dist/_chunks/markdown-qIVVfGoX.js.map +1 -0
  36. package/dist/ai-elements.es.js +2706 -2872
  37. package/dist/ai-elements.es.js.map +1 -1
  38. package/dist-vue/PkChatbot.js +1 -1
  39. package/dist-vue/PkChatbotEmptyState.js +1 -1
  40. package/dist-vue/PkChatbotFilePreview.js +1 -1
  41. package/dist-vue/PkChatbotInput.js +1 -1
  42. package/dist-vue/PkChatbotMessages.js +1 -1
  43. package/dist-vue/PkChatbotStepPayload.js +1 -1
  44. package/dist-vue/PkChatbotStepToolDetail.js +1 -1
  45. package/dist-vue/PkChatbotSteps.js +1 -1
  46. package/dist-vue/PkChatbotViewChat.js +1 -1
  47. package/dist-vue/PkChatbotViewConversations.js +1 -1
  48. package/dist-vue/PkChatbotViewFiles.js +1 -1
  49. package/dist-vue/PkChatbotViewProfile.js +1 -1
  50. package/dist-vue/_chunks/{Agent-C4p46YGt.js → Agent---jwXeaB.js} +69 -69
  51. package/dist-vue/_chunks/Agent---jwXeaB.js.map +1 -0
  52. package/dist-vue/_chunks/{Document-B9QaYHKT.js → Document-DmBTgjd4.js} +157 -84
  53. package/dist-vue/_chunks/Document-DmBTgjd4.js.map +1 -0
  54. package/dist-vue/_chunks/{PkChatbot-BkMe7zxp.js → PkChatbot-W9tO1H9i.js} +8 -8
  55. package/dist-vue/_chunks/{PkChatbot-BkMe7zxp.js.map → PkChatbot-W9tO1H9i.js.map} +1 -1
  56. package/dist-vue/_chunks/{PkChatbotEmptyState-HElKT2OO.js → PkChatbotEmptyState-BY3f3T0T.js} +2 -2
  57. package/dist-vue/_chunks/{PkChatbotEmptyState-HElKT2OO.js.map → PkChatbotEmptyState-BY3f3T0T.js.map} +1 -1
  58. package/dist-vue/_chunks/{PkChatbotFilePreview-CwiVQDF2.js → PkChatbotFilePreview-Dq9JBX9U.js} +5 -3
  59. package/dist-vue/_chunks/PkChatbotFilePreview-Dq9JBX9U.js.map +1 -0
  60. package/dist-vue/_chunks/{PkChatbotInput-BykvFqbm.js → PkChatbotInput-C5l6QDQY.js} +3 -3
  61. package/dist-vue/_chunks/{PkChatbotInput-BykvFqbm.js.map → PkChatbotInput-C5l6QDQY.js.map} +1 -1
  62. package/dist-vue/_chunks/PkChatbotMessages-3RZER9PO.js +769 -0
  63. package/dist-vue/_chunks/PkChatbotMessages-3RZER9PO.js.map +1 -0
  64. package/dist-vue/_chunks/{PkChatbotStepPayload-DY0AzM6s.js → PkChatbotStepPayload-C-xnhmzZ.js} +2 -2
  65. package/dist-vue/_chunks/{PkChatbotStepPayload-DY0AzM6s.js.map → PkChatbotStepPayload-C-xnhmzZ.js.map} +1 -1
  66. package/dist-vue/_chunks/{PkChatbotStepToolDetail-AXtXQVQY.js → PkChatbotStepToolDetail-Cko1vU0N.js} +3 -3
  67. package/dist-vue/_chunks/{PkChatbotStepToolDetail-AXtXQVQY.js.map → PkChatbotStepToolDetail-Cko1vU0N.js.map} +1 -1
  68. package/dist-vue/_chunks/PkChatbotSteps-BkZ3Kq2M.js +191 -0
  69. package/dist-vue/_chunks/{PkChatbotSteps-B-yrfTat.js.map → PkChatbotSteps-BkZ3Kq2M.js.map} +1 -1
  70. package/dist-vue/_chunks/PkChatbotViewChat-BFImSy1X.js +789 -0
  71. package/dist-vue/_chunks/PkChatbotViewChat-BFImSy1X.js.map +1 -0
  72. package/dist-vue/_chunks/{PkChatbotViewConversations-C9h_bBIc.js → PkChatbotViewConversations-C6T4ZxxX.js} +2 -2
  73. package/dist-vue/_chunks/{PkChatbotViewConversations-C9h_bBIc.js.map → PkChatbotViewConversations-C6T4ZxxX.js.map} +1 -1
  74. package/dist-vue/_chunks/PkChatbotViewFiles-CMQdbZN6.js +125 -0
  75. package/dist-vue/_chunks/PkChatbotViewFiles-CMQdbZN6.js.map +1 -0
  76. package/dist-vue/_chunks/{PkChatbotViewProfile-CFR0B99Z.js → PkChatbotViewProfile-CDCy1LEX.js} +2 -2
  77. package/dist-vue/_chunks/{PkChatbotViewProfile-CFR0B99Z.js.map → PkChatbotViewProfile-CDCy1LEX.js.map} +1 -1
  78. package/dist-vue/_chunks/{PkStreamingMarkdown-XJBXdSG2.js → PkStreamingMarkdown-DJG-aPx2.js} +3 -3
  79. package/dist-vue/_chunks/{PkStreamingMarkdown-XJBXdSG2.js.map → PkStreamingMarkdown-DJG-aPx2.js.map} +1 -1
  80. package/dist-vue/_chunks/{PkSvgViewer-D-0M5bqg.js → PkSvgViewer-D1y8hZRW.js} +2 -2
  81. package/dist-vue/_chunks/{PkSvgViewer-D-0M5bqg.js.map → PkSvgViewer-D1y8hZRW.js.map} +1 -1
  82. package/dist-vue/_chunks/PkToolEditSpreadsheet-BHh7NUdR.js +40 -0
  83. package/dist-vue/_chunks/PkToolEditSpreadsheet-BHh7NUdR.js.map +1 -0
  84. package/dist-vue/_chunks/{PkToolRequestGeolocation-DpvsFEga.js → PkToolRequestGeolocation-Ccbhljmn.js} +2 -2
  85. package/dist-vue/_chunks/{PkToolRequestGeolocation-DpvsFEga.js.map → PkToolRequestGeolocation-Ccbhljmn.js.map} +1 -1
  86. package/dist-vue/_chunks/{PkToolRequestOAuthConnection-DRefs-S1.js → PkToolRequestOAuthConnection-BXf5ZRzR.js} +2 -2
  87. package/dist-vue/_chunks/{PkToolRequestOAuthConnection-DRefs-S1.js.map → PkToolRequestOAuthConnection-BXf5ZRzR.js.map} +1 -1
  88. package/dist-vue/_chunks/{PkToolShowArtifact-BopCMkyZ.js → PkToolShowArtifact-BsfbvfVC.js} +2 -2
  89. package/dist-vue/_chunks/{PkToolShowArtifact-BopCMkyZ.js.map → PkToolShowArtifact-BsfbvfVC.js.map} +1 -1
  90. package/dist-vue/_chunks/{PkToolShowContactForm-C6F_DdBu.js → PkToolShowContactForm-C-YbtBlG.js} +2 -2
  91. package/dist-vue/_chunks/{PkToolShowContactForm-C6F_DdBu.js.map → PkToolShowContactForm-C-YbtBlG.js.map} +1 -1
  92. package/dist-vue/_chunks/{PkToolShowDiagram-7-m7VrED.js → PkToolShowDiagram-CIHVrQ3e.js} +3 -3
  93. package/dist-vue/_chunks/{PkToolShowDiagram-7-m7VrED.js.map → PkToolShowDiagram-CIHVrQ3e.js.map} +1 -1
  94. package/dist-vue/_chunks/{PkToolShowForm-DEr8wDJi.js → PkToolShowForm-BwYJhEVO.js} +6 -6
  95. package/dist-vue/_chunks/{PkToolShowForm-DEr8wDJi.js.map → PkToolShowForm-BwYJhEVO.js.map} +1 -1
  96. package/dist-vue/_chunks/{PkToolShowImageGallery-D44wf_u3.js → PkToolShowImageGallery-1A9zyOVn.js} +3 -3
  97. package/dist-vue/_chunks/{PkToolShowImageGallery-D44wf_u3.js.map → PkToolShowImageGallery-1A9zyOVn.js.map} +1 -1
  98. package/dist-vue/_chunks/{PkToolShowProductList-C6CVRUlD.js → PkToolShowProductList-D61i6AMs.js} +2 -2
  99. package/dist-vue/_chunks/{PkToolShowProductList-C6CVRUlD.js.map → PkToolShowProductList-D61i6AMs.js.map} +1 -1
  100. package/dist-vue/_chunks/{PkToolShowSources-DzUNanmK.js → PkToolShowSources-BQpdJE_m.js} +3 -3
  101. package/dist-vue/_chunks/{PkToolShowSources-DzUNanmK.js.map → PkToolShowSources-BQpdJE_m.js.map} +1 -1
  102. package/dist-vue/_chunks/{PkToolShowSuggestedReply-DhNtI5gJ.js → PkToolShowSuggestedReply-D3jLsbKJ.js} +2 -2
  103. package/dist-vue/_chunks/{PkToolShowSuggestedReply-DhNtI5gJ.js.map → PkToolShowSuggestedReply-D3jLsbKJ.js.map} +1 -1
  104. package/dist-vue/_chunks/{PkToolShowVideo-HbQzTMh5.js → PkToolShowVideo-DUdkb3qb.js} +2 -2
  105. package/dist-vue/_chunks/{PkToolShowVideo-HbQzTMh5.js.map → PkToolShowVideo-DUdkb3qb.js.map} +1 -1
  106. package/dist-vue/_chunks/{PkToolShowWebPages-Ct1HaCSq.js → PkToolShowWebPages-BeeBiv9R.js} +2 -2
  107. package/dist-vue/_chunks/{PkToolShowWebPages-Ct1HaCSq.js.map → PkToolShowWebPages-BeeBiv9R.js.map} +1 -1
  108. package/dist-vue/_chunks/{createChatbotApiClient-B2PvUG07.js → createChatbotApiClient-CDrs7NwO.js} +22 -18
  109. package/dist-vue/_chunks/{createChatbotApiClient-B2PvUG07.js.map → createChatbotApiClient-CDrs7NwO.js.map} +1 -1
  110. package/dist-vue/_chunks/{useChatbotStore-Cj_UmNH3.js → useChatbotStore-D6YNk8Rx.js} +6 -4
  111. package/dist-vue/_chunks/useChatbotStore-D6YNk8Rx.js.map +1 -0
  112. package/dist-vue/_chunks/utils-roi6YVNC.js +199 -0
  113. package/dist-vue/_chunks/utils-roi6YVNC.js.map +1 -0
  114. package/dist-vue/api.js +1 -1
  115. package/dist-vue/composables.js +67 -11
  116. package/dist-vue/composables.js.map +1 -1
  117. package/dist-vue/index.js +3483 -3472
  118. package/dist-vue/index.js.map +1 -1
  119. package/dist-vue/locales.js +14 -14
  120. package/dist-vue/packages/components/src/chat/PkChatbotFilePreview.d.ts +5 -0
  121. package/dist-vue/packages/components/src/chat/PkToolEditSpreadsheet.d.ts +14 -0
  122. package/dist-vue/packages/components/src/chat/utils.d.ts +8 -0
  123. package/dist-vue/packages/composable/src/chatbot/api/createChatbotApiClient.d.ts +7 -1
  124. package/dist-vue/packages/composable/src/chatbot/useChatbotStore.d.ts +12 -0
  125. package/dist-vue/packages/composable/src/useFileRow.d.ts +21 -0
  126. package/dist-vue/packages/models/src/schema/Agent.d.ts +14 -0
  127. package/dist-vue/packages/models/src/schema/Document.d.ts +173 -0
  128. package/dist-vue/packages/models/src/schema/Tabular.d.ts +181 -0
  129. package/dist-vue/packages/models/src/schema/index.d.ts +1 -0
  130. package/dist-vue/style.css +1 -1
  131. package/package.json +1 -1
  132. package/dist/_chunks/Agent-D3cVY0pk.js.map +0 -1
  133. package/dist/_chunks/PkStreamingMarkdown-DyvZ5xKK.js.map +0 -1
  134. package/dist/_chunks/markdown-DOitQ2jz.js.map +0 -1
  135. package/dist-vue/_chunks/Agent-C4p46YGt.js.map +0 -1
  136. package/dist-vue/_chunks/Document-B9QaYHKT.js.map +0 -1
  137. package/dist-vue/_chunks/PkChatbotFilePreview-CwiVQDF2.js.map +0 -1
  138. package/dist-vue/_chunks/PkChatbotMessages-wH9wxc6Y.js +0 -769
  139. package/dist-vue/_chunks/PkChatbotMessages-wH9wxc6Y.js.map +0 -1
  140. package/dist-vue/_chunks/PkChatbotSteps-B-yrfTat.js +0 -191
  141. package/dist-vue/_chunks/PkChatbotViewChat-CCcMnVkM.js +0 -784
  142. package/dist-vue/_chunks/PkChatbotViewChat-CCcMnVkM.js.map +0 -1
  143. package/dist-vue/_chunks/PkChatbotViewFiles-BkoXgGE6.js +0 -111
  144. package/dist-vue/_chunks/PkChatbotViewFiles-BkoXgGE6.js.map +0 -1
  145. package/dist-vue/_chunks/useChatbotStore-Cj_UmNH3.js.map +0 -1
  146. package/dist-vue/_chunks/utils-DXXzMVU3.js +0 -184
  147. package/dist-vue/_chunks/utils-DXXzMVU3.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { r as t } from "./PkStreamingMarkdown-XJBXdSG2.js";
2
+ import { r as t } from "./PkStreamingMarkdown-DJG-aPx2.js";
3
3
  import "./src-DT8FLE4_.js";
4
4
  import { n } from "./url-validation-9DstIfq2.js";
5
5
  import { t as r } from "./PkLazyImg-CDxX9xnq.js";
@@ -83,4 +83,4 @@ var x = {
83
83
  //#endregion
84
84
  export { k as n, A as t };
85
85
 
86
- //# sourceMappingURL=PkToolShowWebPages-Ct1HaCSq.js.map
86
+ //# sourceMappingURL=PkToolShowWebPages-BeeBiv9R.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PkToolShowWebPages-Ct1HaCSq.js","names":["$t","__unplugin_components_0","_openBlock","_createElementBlock","_Fragment","_renderList","_createElementVNode","_unref","_createBlock","PkHeldImage","PkLazyImg","_createCommentVNode","_toDisplayString","_createVNode","PkUrl","_createTextVNode","_sfc_main","__exportAll","useChatImageGate","PkLazyImg_default","PkUrl_default","PkHeldImage_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","PkToolShowWebPages_vue_vue_type_script_setup_true_lang_default","props","__props","toolPart","computed","imageGate","normalizeUrl","u","url","uniquePages","seen","result","page","key","showMore","ref","pages","hasMore","_component_VvIcon","VvIcon","openBlock","createElementBlock","Fragment","renderList","index","createElementVNode","_ctx","unref","isSameSite","createBlock","createCommentVNode","toDisplayString","createVNode","_cache","createTextVNode","PkToolShowWebPages_exports","PkToolShowWebPages_default"],"sources":["../../../../packages/components/src/chat/PkToolShowWebPages.vue","../../../../packages/components/src/chat/PkToolShowWebPages.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { computed, ref } from 'vue'\n import { isSameSite } from 'utils'\n import PkLazyImg from '../PkLazyImg.vue'\n import { useChatImageGate } from './chatImagePolicy'\n import PkHeldImage from './PkHeldImage.vue'\n import PkUrl from '../PkUrl.vue'\n\n const props = defineProps<{\n part: unknown\n }>()\n\n const toolPart = computed(() => {\n const part = props.part as {\n input?: {\n pages: Array<{\n title: string\n url: string\n image?: string\n description?: string\n }>\n }\n }\n return part\n })\n\n // The model writes these urls: one from a host the agent does not list\n // waits for a click (chatImagePolicy.ts).\n const imageGate = useChatImageGate()\n\n // The model often passes the same URL several times (e.g. multiple KB\n // chunks from one page), so collapse duplicates, keeping the first (richest)\n // entry. Normalize by dropping the hash and any trailing slash.\n const normalizeUrl = (url: string) => {\n try {\n const u = new URL(url)\n u.hash = ''\n return u.toString().replace(/\\/$/, '')\n } catch {\n return url.trim().replace(/\\/$/, '')\n }\n }\n const uniquePages = computed(() => {\n const seen = new Set<string>()\n const result: NonNullable<typeof toolPart.value.input>['pages'] = []\n for (const page of toolPart.value.input?.pages || []) {\n const key = normalizeUrl(page.url)\n if (seen.has(key)) {\n continue\n }\n seen.add(key)\n result.push(page)\n }\n return result\n })\n\n const showMore = ref(false)\n const pages = computed(() => {\n if (showMore.value) {\n return uniquePages.value\n }\n return uniquePages.value.slice(0, 2)\n })\n const hasMore = computed(() => uniquePages.value.length > 2)\n</script>\n\n<template>\n <ul v-if=\"pages?.length\" class=\"u-pick-list w-full shrink-0\">\n <li\n v-for=\"(page, index) in pages\"\n :key=\"index\"\n class=\"u-pick-list__row\">\n <a\n :href=\"page.url\"\n :title=\"$t('action.open')\"\n :target=\"isSameSite(page.url) ? undefined : '_blank'\"\n :rel=\"isSameSite(page.url) ? undefined : 'noopener noreferrer'\"\n class=\"u-pick-list__entry u-pick-list__entry--roomy u-pick-list__entry--top\">\n <!-- og:images the model scraped are third-party urls: a dead one\n degrades to an icon instead of breaking the card layout -->\n <PkHeldImage\n v-if=\"page.image && !imageGate.canLoad(page.image)\"\n :host=\"imageGate.hostOf(page.image)\"\n class=\"w-48 h-48 rounded-lg shrink-0 border border-surface-3 bg-surface\"\n @release=\"imageGate.release(page.image)\" />\n <PkLazyImg\n v-else-if=\"page.image\"\n :src=\"page.image\"\n :alt=\"page.title\"\n fallback-icon=\"ri:image-off-line\"\n class=\"w-48 h-48 object-contain rounded-lg shrink-0 border border-surface-3 bg-surface\" />\n <div class=\"flex flex-col gap-4 min-w-0 flex-1\">\n <strong\n class=\"u-pick-list__label font-medium text-12 text-word-1\">\n {{ page.title }}\n </strong>\n <span\n class=\"text-10 text-word-4 truncate flex items-center gap-4\">\n <VvIcon name=\"ri:link\" class=\"shrink-0 text-12\" />\n <PkUrl :url=\"page.url\" />\n </span>\n <p\n v-if=\"page.description\"\n class=\"text-12 text-word-3 line-clamp-2\">\n {{ page.description }}\n </p>\n </div>\n </a>\n </li>\n <li v-if=\"hasMore\" class=\"u-pick-list__row\">\n <button\n class=\"u-pick-list__entry text-12 text-word-3 justify-center cursor-pointer\"\n @click=\"showMore = !showMore\">\n <VvIcon\n :name=\"\n showMore ? 'ri:arrow-up-s-line' : 'ri:arrow-down-s-line'\n \"\n class=\"text-16\" />\n {{\n showMore\n ? $t('action.showLess')\n : $t('action.showMore', {\n count: uniquePages.length - 2,\n })\n }}\n </button>\n </li>\n </ul>\n</template>\n","<script setup lang=\"ts\">\n import { computed, ref } from 'vue'\n import { isSameSite } from 'utils'\n import PkLazyImg from '../PkLazyImg.vue'\n import { useChatImageGate } from './chatImagePolicy'\n import PkHeldImage from './PkHeldImage.vue'\n import PkUrl from '../PkUrl.vue'\n\n const props = defineProps<{\n part: unknown\n }>()\n\n const toolPart = computed(() => {\n const part = props.part as {\n input?: {\n pages: Array<{\n title: string\n url: string\n image?: string\n description?: string\n }>\n }\n }\n return part\n })\n\n // The model writes these urls: one from a host the agent does not list\n // waits for a click (chatImagePolicy.ts).\n const imageGate = useChatImageGate()\n\n // The model often passes the same URL several times (e.g. multiple KB\n // chunks from one page), so collapse duplicates, keeping the first (richest)\n // entry. Normalize by dropping the hash and any trailing slash.\n const normalizeUrl = (url: string) => {\n try {\n const u = new URL(url)\n u.hash = ''\n return u.toString().replace(/\\/$/, '')\n } catch {\n return url.trim().replace(/\\/$/, '')\n }\n }\n const uniquePages = computed(() => {\n const seen = new Set<string>()\n const result: NonNullable<typeof toolPart.value.input>['pages'] = []\n for (const page of toolPart.value.input?.pages || []) {\n const key = normalizeUrl(page.url)\n if (seen.has(key)) {\n continue\n }\n seen.add(key)\n result.push(page)\n }\n return result\n })\n\n const showMore = ref(false)\n const pages = computed(() => {\n if (showMore.value) {\n return uniquePages.value\n }\n return uniquePages.value.slice(0, 2)\n })\n const hasMore = computed(() => uniquePages.value.length > 2)\n</script>\n\n<template>\n <ul v-if=\"pages?.length\" class=\"u-pick-list w-full shrink-0\">\n <li\n v-for=\"(page, index) in pages\"\n :key=\"index\"\n class=\"u-pick-list__row\">\n <a\n :href=\"page.url\"\n :title=\"$t('action.open')\"\n :target=\"isSameSite(page.url) ? undefined : '_blank'\"\n :rel=\"isSameSite(page.url) ? undefined : 'noopener noreferrer'\"\n class=\"u-pick-list__entry u-pick-list__entry--roomy u-pick-list__entry--top\">\n <!-- og:images the model scraped are third-party urls: a dead one\n degrades to an icon instead of breaking the card layout -->\n <PkHeldImage\n v-if=\"page.image && !imageGate.canLoad(page.image)\"\n :host=\"imageGate.hostOf(page.image)\"\n class=\"w-48 h-48 rounded-lg shrink-0 border border-surface-3 bg-surface\"\n @release=\"imageGate.release(page.image)\" />\n <PkLazyImg\n v-else-if=\"page.image\"\n :src=\"page.image\"\n :alt=\"page.title\"\n fallback-icon=\"ri:image-off-line\"\n class=\"w-48 h-48 object-contain rounded-lg shrink-0 border border-surface-3 bg-surface\" />\n <div class=\"flex flex-col gap-4 min-w-0 flex-1\">\n <strong\n class=\"u-pick-list__label font-medium text-12 text-word-1\">\n {{ page.title }}\n </strong>\n <span\n class=\"text-10 text-word-4 truncate flex items-center gap-4\">\n <VvIcon name=\"ri:link\" class=\"shrink-0 text-12\" />\n <PkUrl :url=\"page.url\" />\n </span>\n <p\n v-if=\"page.description\"\n class=\"text-12 text-word-3 line-clamp-2\">\n {{ page.description }}\n </p>\n </div>\n </a>\n </li>\n <li v-if=\"hasMore\" class=\"u-pick-list__row\">\n <button\n class=\"u-pick-list__entry text-12 text-word-3 justify-center cursor-pointer\"\n @click=\"showMore = !showMore\">\n <VvIcon\n :name=\"\n showMore ? 'ri:arrow-up-s-line' : 'ri:arrow-down-s-line'\n \"\n class=\"text-16\" />\n {{\n showMore\n ? $t('action.showLess')\n : $t('action.showMore', {\n count: uniquePages.length - 2,\n })\n }}\n </button>\n </li>\n </ul>\n</template>\n"],"mappings":"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"}
1
+ {"version":3,"file":"PkToolShowWebPages-BeeBiv9R.js","names":["$t","__unplugin_components_0","_openBlock","_createElementBlock","_Fragment","_renderList","_createElementVNode","_unref","_createBlock","PkHeldImage","PkLazyImg","_createCommentVNode","_toDisplayString","_createVNode","PkUrl","_createTextVNode","_sfc_main","__exportAll","useChatImageGate","PkLazyImg_default","PkUrl_default","PkHeldImage_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","PkToolShowWebPages_vue_vue_type_script_setup_true_lang_default","props","__props","toolPart","computed","imageGate","normalizeUrl","u","url","uniquePages","seen","result","page","key","showMore","ref","pages","hasMore","_component_VvIcon","VvIcon","openBlock","createElementBlock","Fragment","renderList","index","createElementVNode","_ctx","unref","isSameSite","createBlock","createCommentVNode","toDisplayString","createVNode","_cache","createTextVNode","PkToolShowWebPages_exports","PkToolShowWebPages_default"],"sources":["../../../../packages/components/src/chat/PkToolShowWebPages.vue","../../../../packages/components/src/chat/PkToolShowWebPages.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { computed, ref } from 'vue'\n import { isSameSite } from 'utils'\n import PkLazyImg from '../PkLazyImg.vue'\n import { useChatImageGate } from './chatImagePolicy'\n import PkHeldImage from './PkHeldImage.vue'\n import PkUrl from '../PkUrl.vue'\n\n const props = defineProps<{\n part: unknown\n }>()\n\n const toolPart = computed(() => {\n const part = props.part as {\n input?: {\n pages: Array<{\n title: string\n url: string\n image?: string\n description?: string\n }>\n }\n }\n return part\n })\n\n // The model writes these urls: one from a host the agent does not list\n // waits for a click (chatImagePolicy.ts).\n const imageGate = useChatImageGate()\n\n // The model often passes the same URL several times (e.g. multiple KB\n // chunks from one page), so collapse duplicates, keeping the first (richest)\n // entry. Normalize by dropping the hash and any trailing slash.\n const normalizeUrl = (url: string) => {\n try {\n const u = new URL(url)\n u.hash = ''\n return u.toString().replace(/\\/$/, '')\n } catch {\n return url.trim().replace(/\\/$/, '')\n }\n }\n const uniquePages = computed(() => {\n const seen = new Set<string>()\n const result: NonNullable<typeof toolPart.value.input>['pages'] = []\n for (const page of toolPart.value.input?.pages || []) {\n const key = normalizeUrl(page.url)\n if (seen.has(key)) {\n continue\n }\n seen.add(key)\n result.push(page)\n }\n return result\n })\n\n const showMore = ref(false)\n const pages = computed(() => {\n if (showMore.value) {\n return uniquePages.value\n }\n return uniquePages.value.slice(0, 2)\n })\n const hasMore = computed(() => uniquePages.value.length > 2)\n</script>\n\n<template>\n <ul v-if=\"pages?.length\" class=\"u-pick-list w-full shrink-0\">\n <li\n v-for=\"(page, index) in pages\"\n :key=\"index\"\n class=\"u-pick-list__row\">\n <a\n :href=\"page.url\"\n :title=\"$t('action.open')\"\n :target=\"isSameSite(page.url) ? undefined : '_blank'\"\n :rel=\"isSameSite(page.url) ? undefined : 'noopener noreferrer'\"\n class=\"u-pick-list__entry u-pick-list__entry--roomy u-pick-list__entry--top\">\n <!-- og:images the model scraped are third-party urls: a dead one\n degrades to an icon instead of breaking the card layout -->\n <PkHeldImage\n v-if=\"page.image && !imageGate.canLoad(page.image)\"\n :host=\"imageGate.hostOf(page.image)\"\n class=\"w-48 h-48 rounded-lg shrink-0 border border-surface-3 bg-surface\"\n @release=\"imageGate.release(page.image)\" />\n <PkLazyImg\n v-else-if=\"page.image\"\n :src=\"page.image\"\n :alt=\"page.title\"\n fallback-icon=\"ri:image-off-line\"\n class=\"w-48 h-48 object-contain rounded-lg shrink-0 border border-surface-3 bg-surface\" />\n <div class=\"flex flex-col gap-4 min-w-0 flex-1\">\n <strong\n class=\"u-pick-list__label font-medium text-12 text-word-1\">\n {{ page.title }}\n </strong>\n <span\n class=\"text-10 text-word-4 truncate flex items-center gap-4\">\n <VvIcon name=\"ri:link\" class=\"shrink-0 text-12\" />\n <PkUrl :url=\"page.url\" />\n </span>\n <p\n v-if=\"page.description\"\n class=\"text-12 text-word-3 line-clamp-2\">\n {{ page.description }}\n </p>\n </div>\n </a>\n </li>\n <li v-if=\"hasMore\" class=\"u-pick-list__row\">\n <button\n class=\"u-pick-list__entry text-12 text-word-3 justify-center cursor-pointer\"\n @click=\"showMore = !showMore\">\n <VvIcon\n :name=\"\n showMore ? 'ri:arrow-up-s-line' : 'ri:arrow-down-s-line'\n \"\n class=\"text-16\" />\n {{\n showMore\n ? $t('action.showLess')\n : $t('action.showMore', {\n count: uniquePages.length - 2,\n })\n }}\n </button>\n </li>\n </ul>\n</template>\n","<script setup lang=\"ts\">\n import { computed, ref } from 'vue'\n import { isSameSite } from 'utils'\n import PkLazyImg from '../PkLazyImg.vue'\n import { useChatImageGate } from './chatImagePolicy'\n import PkHeldImage from './PkHeldImage.vue'\n import PkUrl from '../PkUrl.vue'\n\n const props = defineProps<{\n part: unknown\n }>()\n\n const toolPart = computed(() => {\n const part = props.part as {\n input?: {\n pages: Array<{\n title: string\n url: string\n image?: string\n description?: string\n }>\n }\n }\n return part\n })\n\n // The model writes these urls: one from a host the agent does not list\n // waits for a click (chatImagePolicy.ts).\n const imageGate = useChatImageGate()\n\n // The model often passes the same URL several times (e.g. multiple KB\n // chunks from one page), so collapse duplicates, keeping the first (richest)\n // entry. Normalize by dropping the hash and any trailing slash.\n const normalizeUrl = (url: string) => {\n try {\n const u = new URL(url)\n u.hash = ''\n return u.toString().replace(/\\/$/, '')\n } catch {\n return url.trim().replace(/\\/$/, '')\n }\n }\n const uniquePages = computed(() => {\n const seen = new Set<string>()\n const result: NonNullable<typeof toolPart.value.input>['pages'] = []\n for (const page of toolPart.value.input?.pages || []) {\n const key = normalizeUrl(page.url)\n if (seen.has(key)) {\n continue\n }\n seen.add(key)\n result.push(page)\n }\n return result\n })\n\n const showMore = ref(false)\n const pages = computed(() => {\n if (showMore.value) {\n return uniquePages.value\n }\n return uniquePages.value.slice(0, 2)\n })\n const hasMore = computed(() => uniquePages.value.length > 2)\n</script>\n\n<template>\n <ul v-if=\"pages?.length\" class=\"u-pick-list w-full shrink-0\">\n <li\n v-for=\"(page, index) in pages\"\n :key=\"index\"\n class=\"u-pick-list__row\">\n <a\n :href=\"page.url\"\n :title=\"$t('action.open')\"\n :target=\"isSameSite(page.url) ? undefined : '_blank'\"\n :rel=\"isSameSite(page.url) ? undefined : 'noopener noreferrer'\"\n class=\"u-pick-list__entry u-pick-list__entry--roomy u-pick-list__entry--top\">\n <!-- og:images the model scraped are third-party urls: a dead one\n degrades to an icon instead of breaking the card layout -->\n <PkHeldImage\n v-if=\"page.image && !imageGate.canLoad(page.image)\"\n :host=\"imageGate.hostOf(page.image)\"\n class=\"w-48 h-48 rounded-lg shrink-0 border border-surface-3 bg-surface\"\n @release=\"imageGate.release(page.image)\" />\n <PkLazyImg\n v-else-if=\"page.image\"\n :src=\"page.image\"\n :alt=\"page.title\"\n fallback-icon=\"ri:image-off-line\"\n class=\"w-48 h-48 object-contain rounded-lg shrink-0 border border-surface-3 bg-surface\" />\n <div class=\"flex flex-col gap-4 min-w-0 flex-1\">\n <strong\n class=\"u-pick-list__label font-medium text-12 text-word-1\">\n {{ page.title }}\n </strong>\n <span\n class=\"text-10 text-word-4 truncate flex items-center gap-4\">\n <VvIcon name=\"ri:link\" class=\"shrink-0 text-12\" />\n <PkUrl :url=\"page.url\" />\n </span>\n <p\n v-if=\"page.description\"\n class=\"text-12 text-word-3 line-clamp-2\">\n {{ page.description }}\n </p>\n </div>\n </a>\n </li>\n <li v-if=\"hasMore\" class=\"u-pick-list__row\">\n <button\n class=\"u-pick-list__entry text-12 text-word-3 justify-center cursor-pointer\"\n @click=\"showMore = !showMore\">\n <VvIcon\n :name=\"\n showMore ? 'ri:arrow-up-s-line' : 'ri:arrow-down-s-line'\n \"\n class=\"text-16\" />\n {{\n showMore\n ? $t('action.showLess')\n : $t('action.showMore', {\n count: uniquePages.length - 2,\n })\n }}\n </button>\n </li>\n </ul>\n</template>\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { C as e, S as t, _ as n, a as r, b as i, g as a, l as o, n as s, o as c, p as l, y as u } from "./schemas-BIfOAo0P.js";
2
- import { i as d, t as f } from "./Media-Dk4odudr.js";
3
- import { A as ee, M as te, N as p, a as m, b as h, c as g, f as ne, l as re, n as ie, s as ae } from "./Agent-C4p46YGt.js";
2
+ import { i as d, t as ee } from "./Media-Dk4odudr.js";
3
+ import { N as te, P as f, a as p, c as m, f as h, j as g, l as ne, n as re, s as ie, x as ae } from "./Agent---jwXeaB.js";
4
4
  import { t as oe } from "./StreamError-D1AtGgS3.js";
5
5
  import "./src-DT8FLE4_.js";
6
6
  import { r as _, t as se } from "./url-validation-9DstIfq2.js";
@@ -47,7 +47,7 @@ var me = /* @__PURE__ */ function(e) {
47
47
  text: i()
48
48
  }), D = n({
49
49
  type: l("file"),
50
- mediaType: i().regex(f),
50
+ mediaType: i().regex(ee),
51
51
  url: e(),
52
52
  filename: i().optional(),
53
53
  providerMetadata: u(i(), u(i(), t())).optional()
@@ -67,16 +67,16 @@ n({
67
67
  maxOutputTokens: a().positive().optional(),
68
68
  presencePenalty: a().min(-2).max(2).optional(),
69
69
  frequencyPenalty: a().min(-2).max(2).optional(),
70
- searchMode: s(re).optional(),
70
+ searchMode: s(ne).optional(),
71
71
  limit: a().optional(),
72
- ranking: ae.optional(),
73
- reasoning: g,
74
- webSearch: ne.optional(),
72
+ ranking: ie.optional(),
73
+ reasoning: m,
74
+ webSearch: h.optional(),
75
75
  maxStepCount: a().int().min(1).max(40).optional(),
76
- disabledTools: r(s(ie)).optional(),
76
+ disabledTools: r(s(re)).optional(),
77
77
  fallbackModels: r(i()).optional(),
78
- gatewayOptions: m.partial().optional(),
79
- deviceContext: ee.optional(),
78
+ gatewayOptions: p.partial().optional(),
79
+ deviceContext: g.optional(),
80
80
  externalContext: u(i(), t()).optional(),
81
81
  smoothStream: c().optional()
82
82
  }), n({
@@ -161,16 +161,16 @@ var j = [
161
161
  lastMessageAt: d()
162
162
  });
163
163
  n({
164
- ...p.pagination(),
165
- ...p.sort([
164
+ ...f.pagination(),
165
+ ...f.sort([
166
166
  "updatedAt",
167
167
  "createdAt",
168
168
  "lastMessageAt"
169
169
  ]),
170
- ...p.filters(["agentId", "userId"]),
171
- ...p.range("updatedAt"),
172
- ...p.range("lastMessageAt"),
173
- ...p.ids(),
170
+ ...f.filters(["agentId", "userId"]),
171
+ ...f.range("updatedAt"),
172
+ ...f.range("lastMessageAt"),
173
+ ...f.ids(),
174
174
  startDate: i().optional(),
175
175
  endDate: i().optional()
176
176
  });
@@ -509,6 +509,10 @@ function ze(e) {
509
509
  let i = `${n}/agents/${encodeURIComponent(e)}/chats/${encodeURIComponent(t)}/media/${encodeURIComponent(r)}/view`;
510
510
  return this.appendAuthToken(i);
511
511
  },
512
+ getMediaDownloadUrl(e, t, r) {
513
+ let i = `${n}/agents/${encodeURIComponent(e)}/chats/${encodeURIComponent(t)}/media/${encodeURIComponent(r)}/download`;
514
+ return this.appendAuthToken(i);
515
+ },
512
516
  async expandSourceContext(e, t, n, r = 2) {
513
517
  return i(`/agents/${encodeURIComponent(e)}/sources/expand-context`, {
514
518
  method: "POST",
@@ -553,7 +557,7 @@ function ze(e) {
553
557
  return i(`/agents/${encodeURIComponent(e)}/mcp-oauth/status?${n}`);
554
558
  },
555
559
  async createVoiceSession(e, t, n) {
556
- return h.parse(await i(`/agents/${encodeURIComponent(e)}/voice/session`, {
560
+ return ae.parse(await i(`/agents/${encodeURIComponent(e)}/voice/session`, {
557
561
  method: "POST",
558
562
  headers: { "Content-Type": "application/json" },
559
563
  body: JSON.stringify({
@@ -580,4 +584,4 @@ function ze(e) {
580
584
  //#endregion
581
585
  export { A as a, j as i, Z as n, M as r, ze as t };
582
586
 
583
- //# sourceMappingURL=createChatbotApiClient-B2PvUG07.js.map
587
+ //# sourceMappingURL=createChatbotApiClient-CDrs7NwO.js.map