@8wave/ai-elements 0.115.0-beta.2 → 0.115.0-beta.30

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 (126) hide show
  1. package/dist/_chunks/{PkStreamingMarkdown-BKxA6Ntl.js → PkStreamingMarkdown-B7SRIqnV.js} +2 -2
  2. package/dist/_chunks/{PkStreamingMarkdown-BKxA6Ntl.js.map → PkStreamingMarkdown-B7SRIqnV.js.map} +1 -1
  3. package/dist/_chunks/{PkToolRequestOAuthConnection-CgQePKKb.js → PkToolRequestOAuthConnection-CbZn1f14.js} +31 -25
  4. package/dist/_chunks/PkToolRequestOAuthConnection-CbZn1f14.js.map +1 -0
  5. package/dist/_chunks/{PkToolShowArtifact-CHxeuKEU.js → PkToolShowArtifact-CRQySuGC.js} +2 -2
  6. package/dist/_chunks/{PkToolShowArtifact-CHxeuKEU.js.map → PkToolShowArtifact-CRQySuGC.js.map} +1 -1
  7. package/dist/_chunks/{PkToolShowCalendarEvent-D0jVbqWt.js → PkToolShowCalendarEvent-Cj7yRj-0.js} +2 -2
  8. package/dist/_chunks/{PkToolShowCalendarEvent-D0jVbqWt.js.map → PkToolShowCalendarEvent-Cj7yRj-0.js.map} +1 -1
  9. package/dist/_chunks/{PkToolShowContactForm-DqVLVwqJ.js → PkToolShowContactForm-DGmzPa3d.js} +2 -2
  10. package/dist/_chunks/{PkToolShowContactForm-DqVLVwqJ.js.map → PkToolShowContactForm-DGmzPa3d.js.map} +1 -1
  11. package/dist/_chunks/{PkToolShowForm-YJQPYfEe.js → PkToolShowForm-76LQdZHH.js} +2 -2
  12. package/dist/_chunks/{PkToolShowForm-YJQPYfEe.js.map → PkToolShowForm-76LQdZHH.js.map} +1 -1
  13. package/dist/_chunks/{PkToolShowImageGallery-1mq-_cnp.js → PkToolShowImageGallery-BmpcrdIL.js} +2 -2
  14. package/dist/_chunks/{PkToolShowImageGallery-1mq-_cnp.js.map → PkToolShowImageGallery-BmpcrdIL.js.map} +1 -1
  15. package/dist/_chunks/{PkToolShowSources-VFoI0YS8.js → PkToolShowSources-13IBQve7.js} +3 -3
  16. package/dist/_chunks/{PkToolShowSources-VFoI0YS8.js.map → PkToolShowSources-13IBQve7.js.map} +1 -1
  17. package/dist/_chunks/{PkToolShowWebPages-BgXlRdmH.js → PkToolShowWebPages-CCSRAlz5.js} +2 -2
  18. package/dist/_chunks/{PkToolShowWebPages-BgXlRdmH.js.map → PkToolShowWebPages-CCSRAlz5.js.map} +1 -1
  19. package/dist/_chunks/{markdown-BL7WANiX.js → markdown-tS_2A0k9.js} +39 -11
  20. package/dist/_chunks/markdown-tS_2A0k9.js.map +1 -0
  21. package/dist/_chunks/{url-validation-uLMZ5-AU.js → url-validation-9DstIfq2.js} +9 -2
  22. package/dist/_chunks/{url-validation-uLMZ5-AU.js.map → url-validation-9DstIfq2.js.map} +1 -1
  23. package/dist/ai-elements.es.js +1697 -1578
  24. package/dist/ai-elements.es.js.map +1 -1
  25. package/dist-vue/PkChatbot.js +1 -1
  26. package/dist-vue/PkChatbotEmptyState.js +1 -1
  27. package/dist-vue/PkChatbotInput.js +1 -1
  28. package/dist-vue/PkChatbotMessages.js +1 -1
  29. package/dist-vue/PkChatbotSteps.js +1 -1
  30. package/dist-vue/PkChatbotViewChat.js +1 -1
  31. package/dist-vue/PkChatbotViewConversations.js +1 -1
  32. package/dist-vue/PkChatbotViewFiles.js +1 -1
  33. package/dist-vue/PkChatbotViewProfile.js +1 -1
  34. package/dist-vue/_chunks/{Document-nCWwJC2h.js → Document-BmfGStvM.js} +40 -12
  35. package/dist-vue/_chunks/Document-BmfGStvM.js.map +1 -0
  36. package/dist-vue/_chunks/{PkChatbot-CdtYJ1Lf.js → PkChatbot-DKqKEsUn.js} +7 -7
  37. package/dist-vue/_chunks/{PkChatbot-CdtYJ1Lf.js.map → PkChatbot-DKqKEsUn.js.map} +1 -1
  38. package/dist-vue/_chunks/PkChatbotAuth-jzoNJkmH.js.map +1 -1
  39. package/dist-vue/_chunks/{PkChatbotEmptyState-Dicjr_Fv.js → PkChatbotEmptyState-BPPP0-0U.js} +2 -2
  40. package/dist-vue/_chunks/{PkChatbotEmptyState-Dicjr_Fv.js.map → PkChatbotEmptyState-BPPP0-0U.js.map} +1 -1
  41. package/dist-vue/_chunks/PkChatbotFilePreview-CwiVQDF2.js.map +1 -1
  42. package/dist-vue/_chunks/{PkChatbotInput-DcLmOqA1.js → PkChatbotInput-BHcxLnWU.js} +2 -2
  43. package/dist-vue/_chunks/PkChatbotInput-BHcxLnWU.js.map +1 -0
  44. package/dist-vue/_chunks/PkChatbotMessageFeedback-BYmrVaCE.js.map +1 -1
  45. package/dist-vue/_chunks/{PkChatbotMessages-R1EsTJpM.js → PkChatbotMessages-CaHFzdIC.js} +122 -113
  46. package/dist-vue/_chunks/PkChatbotMessages-CaHFzdIC.js.map +1 -0
  47. package/dist-vue/_chunks/{PkChatbotSteps-CPPjwTJN.js → PkChatbotSteps-CXiFF3Z-.js} +2 -2
  48. package/dist-vue/_chunks/{PkChatbotSteps-CPPjwTJN.js.map → PkChatbotSteps-CXiFF3Z-.js.map} +1 -1
  49. package/dist-vue/_chunks/{PkChatbotViewChat-CbqrHEC6.js → PkChatbotViewChat-D5HtjK3u.js} +9 -7
  50. package/dist-vue/_chunks/{PkChatbotViewChat-CbqrHEC6.js.map → PkChatbotViewChat-D5HtjK3u.js.map} +1 -1
  51. package/dist-vue/_chunks/{PkChatbotViewConversations-CHpN4vhm.js → PkChatbotViewConversations-C5O-IocA.js} +2 -2
  52. package/dist-vue/_chunks/{PkChatbotViewConversations-CHpN4vhm.js.map → PkChatbotViewConversations-C5O-IocA.js.map} +1 -1
  53. package/dist-vue/_chunks/{PkChatbotViewFiles-Bk9-K6Hw.js → PkChatbotViewFiles-W8DDmtTi.js} +3 -3
  54. package/dist-vue/_chunks/{PkChatbotViewFiles-Bk9-K6Hw.js.map → PkChatbotViewFiles-W8DDmtTi.js.map} +1 -1
  55. package/dist-vue/_chunks/{PkChatbotViewProfile-CosaHA-g.js → PkChatbotViewProfile--upofqcF.js} +2 -2
  56. package/dist-vue/_chunks/{PkChatbotViewProfile-CosaHA-g.js.map → PkChatbotViewProfile--upofqcF.js.map} +1 -1
  57. package/dist-vue/_chunks/{PkStreamingMarkdown-DYy79C1P.js → PkStreamingMarkdown-it3X7T75.js} +2 -2
  58. package/dist-vue/_chunks/{PkStreamingMarkdown-DYy79C1P.js.map → PkStreamingMarkdown-it3X7T75.js.map} +1 -1
  59. package/dist-vue/_chunks/PkToolRequestOAuthConnection-BiaSF6R_.js +124 -0
  60. package/dist-vue/_chunks/PkToolRequestOAuthConnection-BiaSF6R_.js.map +1 -0
  61. package/dist-vue/_chunks/{PkToolShowArtifact-DUOnFdfa.js → PkToolShowArtifact-BFyFYjHI.js} +2 -2
  62. package/dist-vue/_chunks/{PkToolShowArtifact-DUOnFdfa.js.map → PkToolShowArtifact-BFyFYjHI.js.map} +1 -1
  63. package/dist-vue/_chunks/{PkToolShowCalendarEvent-BsBdsbV0.js → PkToolShowCalendarEvent-yttlTHiX.js} +2 -2
  64. package/dist-vue/_chunks/{PkToolShowCalendarEvent-BsBdsbV0.js.map → PkToolShowCalendarEvent-yttlTHiX.js.map} +1 -1
  65. package/dist-vue/_chunks/{PkToolShowContactForm-1TFKvG_s.js → PkToolShowContactForm-YpaC_31s.js} +2 -2
  66. package/dist-vue/_chunks/{PkToolShowContactForm-1TFKvG_s.js.map → PkToolShowContactForm-YpaC_31s.js.map} +1 -1
  67. package/dist-vue/_chunks/{PkToolShowDiagram-Dmtqu3th.js → PkToolShowDiagram-Bdxjd0BJ.js} +2 -2
  68. package/dist-vue/_chunks/{PkToolShowDiagram-Dmtqu3th.js.map → PkToolShowDiagram-Bdxjd0BJ.js.map} +1 -1
  69. package/dist-vue/_chunks/{PkToolShowEmail-BDsBoETQ.js → PkToolShowEmail-CNkFP7qC.js} +2 -2
  70. package/dist-vue/_chunks/{PkToolShowEmail-BDsBoETQ.js.map → PkToolShowEmail-CNkFP7qC.js.map} +1 -1
  71. package/dist-vue/_chunks/{PkToolShowForm-DwFKxMJd.js → PkToolShowForm-FKJNKXPq.js} +2 -2
  72. package/dist-vue/_chunks/{PkToolShowForm-DwFKxMJd.js.map → PkToolShowForm-FKJNKXPq.js.map} +1 -1
  73. package/dist-vue/_chunks/{PkToolShowImageGallery-DudQzBx4.js → PkToolShowImageGallery-DmhZLnBk.js} +2 -2
  74. package/dist-vue/_chunks/{PkToolShowImageGallery-DudQzBx4.js.map → PkToolShowImageGallery-DmhZLnBk.js.map} +1 -1
  75. package/dist-vue/_chunks/{PkToolShowMessage-Dau3agUy.js → PkToolShowMessage-C9xFAi1s.js} +2 -2
  76. package/dist-vue/_chunks/{PkToolShowMessage-Dau3agUy.js.map → PkToolShowMessage-C9xFAi1s.js.map} +1 -1
  77. package/dist-vue/_chunks/{PkToolShowProductList-CsupMsuy.js → PkToolShowProductList-k1ckf1Ko.js} +2 -2
  78. package/dist-vue/_chunks/{PkToolShowProductList-CsupMsuy.js.map → PkToolShowProductList-k1ckf1Ko.js.map} +1 -1
  79. package/dist-vue/_chunks/{PkToolShowSources-TzkNgwnr.js → PkToolShowSources-DE0RO8z9.js} +4 -4
  80. package/dist-vue/_chunks/{PkToolShowSources-TzkNgwnr.js.map → PkToolShowSources-DE0RO8z9.js.map} +1 -1
  81. package/dist-vue/_chunks/{PkToolShowWebPages-D4E3Xzg1.js → PkToolShowWebPages-v-6DGCNM.js} +3 -3
  82. package/dist-vue/_chunks/{PkToolShowWebPages-D4E3Xzg1.js.map → PkToolShowWebPages-v-6DGCNM.js.map} +1 -1
  83. package/dist-vue/_chunks/{PkUrl-Cu3qKl4G.js → PkUrl-C5UXwNxy.js} +2 -2
  84. package/dist-vue/_chunks/{PkUrl-Cu3qKl4G.js.map → PkUrl-C5UXwNxy.js.map} +1 -1
  85. package/dist-vue/_chunks/{createChatbotApiClient-BlWs282E.js → createChatbotApiClient-L7wpQUUA.js} +110 -110
  86. package/dist-vue/_chunks/createChatbotApiClient-L7wpQUUA.js.map +1 -0
  87. package/dist-vue/_chunks/mcpOAuthReport-DG84H11Y.js +9 -0
  88. package/dist-vue/_chunks/mcpOAuthReport-DG84H11Y.js.map +1 -0
  89. package/dist-vue/_chunks/{url-validation-uLMZ5-AU.js → url-validation-9DstIfq2.js} +9 -2
  90. package/dist-vue/_chunks/{url-validation-uLMZ5-AU.js.map → url-validation-9DstIfq2.js.map} +1 -1
  91. package/dist-vue/_chunks/{useChatbotStore-CMo47fnS.js → useChatbotStore-Ctr5gDIr.js} +2 -2
  92. package/dist-vue/_chunks/{useChatbotStore-CMo47fnS.js.map → useChatbotStore-Ctr5gDIr.js.map} +1 -1
  93. package/dist-vue/api.js +1 -1
  94. package/dist-vue/composables.js +118 -10
  95. package/dist-vue/composables.js.map +1 -1
  96. package/dist-vue/index.js +2976 -2972
  97. package/dist-vue/index.js.map +1 -1
  98. package/dist-vue/locales.js +4 -0
  99. package/dist-vue/packages/auth/src/active-membership.d.ts +36 -0
  100. package/dist-vue/packages/auth/src/add-member-to-organization.d.ts +5 -1
  101. package/dist-vue/packages/auth/src/passkey-policy-client-plugin.d.ts +1 -1
  102. package/dist-vue/packages/auth/src/social-redirect-plugin.d.ts +13 -1
  103. package/dist-vue/packages/auth/src/two-factor-policy-client-plugin.d.ts +3 -3
  104. package/dist-vue/packages/auth/src/two-factor-policy-plugin.d.ts +1 -1
  105. package/dist-vue/packages/components/src/chat/PkChatbotMessages.d.ts +5 -0
  106. package/dist-vue/packages/components/src/chat/PkToolRequestOAuthConnection.d.ts +5 -0
  107. package/dist-vue/packages/components/src/chat/index.d.ts +1 -0
  108. package/dist-vue/packages/components/src/chat/mcpOAuthReport.d.ts +11 -0
  109. package/dist-vue/packages/models/src/schema/AgentApiTool.d.ts +5 -8
  110. package/dist-vue/packages/models/src/schema/ConversationAnalysis.d.ts +6 -1
  111. package/dist-vue/packages/models/src/schema/Document.d.ts +478 -0
  112. package/dist-vue/packages/models/src/schema/Header.d.ts +39 -0
  113. package/dist-vue/packages/models/src/schema/McpServer.d.ts +76 -11
  114. package/dist-vue/packages/models/src/schema/Notification.d.ts +2 -0
  115. package/dist-vue/packages/models/src/schema/Organization.d.ts +23 -6
  116. package/dist-vue/packages/models/src/schema/SignInSecurity.d.ts +1 -1
  117. package/dist-vue/style.css +1 -1
  118. package/package.json +1 -1
  119. package/dist/_chunks/PkToolRequestOAuthConnection-CgQePKKb.js.map +0 -1
  120. package/dist/_chunks/markdown-BL7WANiX.js.map +0 -1
  121. package/dist-vue/_chunks/Document-nCWwJC2h.js.map +0 -1
  122. package/dist-vue/_chunks/PkChatbotInput-DcLmOqA1.js.map +0 -1
  123. package/dist-vue/_chunks/PkChatbotMessages-R1EsTJpM.js.map +0 -1
  124. package/dist-vue/_chunks/PkToolRequestOAuthConnection-a2LegFoE.js +0 -122
  125. package/dist-vue/_chunks/PkToolRequestOAuthConnection-a2LegFoE.js.map +0 -1
  126. package/dist-vue/_chunks/createChatbotApiClient-BlWs282E.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PkChatbotMessageFeedback-BYmrVaCE.js","names":[],"sources":["../../../../packages/components/src/chat/PkChatbotMessageFeedback.vue","../../../../packages/components/src/chat/PkChatbotMessageFeedback.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import type { MessageFeedback } from 'models'\n import { computed } from 'vue'\n\n const props = defineProps<{\n feedback: MessageFeedback\n }>()\n\n // The real reaction glyph, shown ONLY for unmapped reactions (no vote):\n // 👍/❤️/👎 keep the classic thumb icon, while e.g. WhatsApp \"😍\" shows the\n // actual emoji.\n const emoji = computed(() => {\n if (props.feedback.vote) {\n return undefined\n }\n const raw = props.feedback.metadata?.reactionEmoji\n return typeof raw === 'string' && /\\p{Extended_Pictographic}/u.test(raw)\n ? raw\n : undefined\n })\n\n // Accent matches the vote; neutral for a real emoji (it carries its own\n // colour) or a comment-only feedback.\n const toneClass = computed(() => {\n if (emoji.value) {\n return 'pk-message-feedback--neutral'\n }\n switch (props.feedback.vote) {\n case 'upvote':\n return 'pk-message-feedback--positive'\n case 'downvote':\n return 'pk-message-feedback--negative'\n default:\n return 'pk-message-feedback--neutral'\n }\n })\n\n // Fallback icon when there is no real emoji glyph to show.\n const icon = computed(() => {\n switch (props.feedback.vote) {\n case 'upvote':\n return 'ri:thumb-up-fill'\n case 'downvote':\n return 'ri:thumb-down-fill'\n default:\n return 'ri:chat-quote-line'\n }\n })\n</script>\n\n<template>\n <div class=\"pk-message-feedback\" :class=\"toneClass\">\n <span class=\"pk-message-feedback__badge\">\n <span v-if=\"emoji\" class=\"pk-message-feedback__emoji\">\n {{ emoji }}\n </span>\n <VvIcon v-else :name=\"icon\" />\n </span>\n <p v-if=\"feedback.comment\" class=\"pk-message-feedback__comment\">\n {{ feedback.comment }}\n </p>\n </div>\n</template>\n\n<style lang=\"scss\">\n /*\n * The user's reaction + comment, shown as an annotation hanging off the\n * assistant message: echoes the bubble radius (same speech-bubble tail) and\n * a coloured left rail + badge match the vote. Sits flush under the bubble.\n */\n .pk-message-feedback {\n display: flex;\n align-items: center;\n gap: var(--spacing-8);\n padding: var(--spacing-6) var(--spacing-12) var(--spacing-6)\n var(--spacing-6);\n border-radius: var(--rounded-lg);\n background: var(--pk-feedback-surface);\n font-size: var(--text-12);\n color: var(--color-word-2);\n\n &--positive {\n --pk-feedback-accent: var(--color-success);\n }\n\n &--negative {\n --pk-feedback-accent: var(--color-danger);\n }\n\n &--neutral {\n --pk-feedback-accent: var(--color-surface-4);\n }\n\n --pk-feedback-surface: color-mix(\n in srgb,\n var(--pk-feedback-accent) 8%,\n var(--color-surface)\n );\n\n &__badge {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--spacing-22, 1.375rem);\n height: var(--spacing-22, 1.375rem);\n border-radius: var(--rounded-full, 9999px);\n background: var(--color-surface);\n color: var(--pk-feedback-accent);\n box-shadow: var(--shadow-sm);\n }\n\n &__emoji {\n /* Smaller than the badge so the glyph doesn't touch the ring. */\n font-size: var(--text-12);\n line-height: 1;\n }\n\n &__comment {\n margin: 0;\n /* Preserve the user's line breaks; avoid orphans on wrap. */\n white-space: pre-wrap;\n text-wrap: pretty;\n }\n }\n</style>\n","<script lang=\"ts\" setup>\n import type { MessageFeedback } from 'models'\n import { computed } from 'vue'\n\n const props = defineProps<{\n feedback: MessageFeedback\n }>()\n\n // The real reaction glyph, shown ONLY for unmapped reactions (no vote):\n // 👍/❤️/👎 keep the classic thumb icon, while e.g. WhatsApp \"😍\" shows the\n // actual emoji.\n const emoji = computed(() => {\n if (props.feedback.vote) {\n return undefined\n }\n const raw = props.feedback.metadata?.reactionEmoji\n return typeof raw === 'string' && /\\p{Extended_Pictographic}/u.test(raw)\n ? raw\n : undefined\n })\n\n // Accent matches the vote; neutral for a real emoji (it carries its own\n // colour) or a comment-only feedback.\n const toneClass = computed(() => {\n if (emoji.value) {\n return 'pk-message-feedback--neutral'\n }\n switch (props.feedback.vote) {\n case 'upvote':\n return 'pk-message-feedback--positive'\n case 'downvote':\n return 'pk-message-feedback--negative'\n default:\n return 'pk-message-feedback--neutral'\n }\n })\n\n // Fallback icon when there is no real emoji glyph to show.\n const icon = computed(() => {\n switch (props.feedback.vote) {\n case 'upvote':\n return 'ri:thumb-up-fill'\n case 'downvote':\n return 'ri:thumb-down-fill'\n default:\n return 'ri:chat-quote-line'\n }\n })\n</script>\n\n<template>\n <div class=\"pk-message-feedback\" :class=\"toneClass\">\n <span class=\"pk-message-feedback__badge\">\n <span v-if=\"emoji\" class=\"pk-message-feedback__emoji\">\n {{ emoji }}\n </span>\n <VvIcon v-else :name=\"icon\" />\n </span>\n <p v-if=\"feedback.comment\" class=\"pk-message-feedback__comment\">\n {{ feedback.comment }}\n </p>\n </div>\n</template>\n\n<style lang=\"scss\">\n /*\n * The user's reaction + comment, shown as an annotation hanging off the\n * assistant message: echoes the bubble radius (same speech-bubble tail) and\n * a coloured left rail + badge match the vote. Sits flush under the bubble.\n */\n .pk-message-feedback {\n display: flex;\n align-items: center;\n gap: var(--spacing-8);\n padding: var(--spacing-6) var(--spacing-12) var(--spacing-6)\n var(--spacing-6);\n border-radius: var(--rounded-lg);\n background: var(--pk-feedback-surface);\n font-size: var(--text-12);\n color: var(--color-word-2);\n\n &--positive {\n --pk-feedback-accent: var(--color-success);\n }\n\n &--negative {\n --pk-feedback-accent: var(--color-danger);\n }\n\n &--neutral {\n --pk-feedback-accent: var(--color-surface-4);\n }\n\n --pk-feedback-surface: color-mix(\n in srgb,\n var(--pk-feedback-accent) 8%,\n var(--color-surface)\n );\n\n &__badge {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--spacing-22, 1.375rem);\n height: var(--spacing-22, 1.375rem);\n border-radius: var(--rounded-full, 9999px);\n background: var(--color-surface);\n color: var(--pk-feedback-accent);\n box-shadow: var(--shadow-sm);\n }\n\n &__emoji {\n /* Smaller than the badge so the glyph doesn't touch the ring. */\n font-size: var(--text-12);\n line-height: 1;\n }\n\n &__comment {\n margin: 0;\n /* Preserve the user's line breaks; avoid orphans on wrap. */\n white-space: pre-wrap;\n text-wrap: pretty;\n }\n }\n</style>\n"],"mappings":";;;;;;;;;;;;;EAII,IAAM,IAAQ,GAOR,IAAQ,QAAe;GACzB,IAAI,EAAM,SAAS,MACf;GAEJ,IAAM,IAAM,EAAM,SAAS,UAAU;GACrC,OAAO,OAAO,KAAQ,YAAY,6BAA6B,KAAK,CAAG,IACjE,IACA,KAAA;EACV,CAAC,GAIK,IAAY,QAAe;GAC7B,IAAI,EAAM,OACN,OAAO;GAEX,QAAQ,EAAM,SAAS,MAAvB;IACI,KAAK,UACD,OAAO;IACX,KAAK,YACD,OAAO;IACX,SACI,OAAO;GACf;EACJ,CAAC,GAGK,IAAO,QAAe;GACxB,QAAQ,EAAM,SAAS,MAAvB;IACI,KAAK,UACD,OAAO;IACX,KAAK,YACD,OAAO;IACX,SACI,OAAO;GACf;EACJ,CAAC;;;GAID,OAAA,EAAA,GAAA,EAUM,OAAA,EAVD,OAAK,EAAA,CAAC,uBAA8B,EAAA,KAAS,CAAA,EAAA,GAAA,CAC9C,EAKO,QALP,GAKO,CAJS,EAAA,SAAZ,EAAA,GAAA,EAEO,QAFP,GAEO,EADA,EAAA,KAAK,GAAA,CAAA,MAEZ,EAAA,GAAA,EAA8B,GAAA;;IAAd,MAAM,EAAA;GAEjB,GAAA,MAAA,GAAA,CAAA,MAAA,CAAA,EAAA,CAAA,GAAA,EAAA,SAAS,WAAlB,EAAA,GAAA,EAEI,KAFJ,GAEI,EADG,EAAA,SAAS,OAAO,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"PkChatbotMessageFeedback-BYmrVaCE.js","names":[],"sources":["../../../../packages/components/src/chat/PkChatbotMessageFeedback.vue","../../../../packages/components/src/chat/PkChatbotMessageFeedback.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import type { MessageFeedback } from 'models'\n import { computed } from 'vue'\n\n const props = defineProps<{\n feedback: MessageFeedback\n }>()\n\n // The real reaction glyph, shown ONLY for unmapped reactions (no vote):\n // 👍/❤️/👎 keep the classic thumb icon, while e.g. WhatsApp \"😍\" shows the\n // actual emoji.\n const emoji = computed(() => {\n if (props.feedback.vote) {\n return undefined\n }\n const raw = props.feedback.metadata?.reactionEmoji\n return typeof raw === 'string' && /\\p{Extended_Pictographic}/u.test(raw)\n ? raw\n : undefined\n })\n\n // Accent matches the vote; neutral for a real emoji (it carries its own\n // colour) or a comment-only feedback.\n const toneClass = computed(() => {\n if (emoji.value) {\n return 'pk-message-feedback--neutral'\n }\n switch (props.feedback.vote) {\n case 'upvote':\n return 'pk-message-feedback--positive'\n case 'downvote':\n return 'pk-message-feedback--negative'\n default:\n return 'pk-message-feedback--neutral'\n }\n })\n\n // Fallback icon when there is no real emoji glyph to show.\n const icon = computed(() => {\n switch (props.feedback.vote) {\n case 'upvote':\n return 'ri:thumb-up-fill'\n case 'downvote':\n return 'ri:thumb-down-fill'\n default:\n return 'ri:chat-quote-line'\n }\n })\n</script>\n\n<template>\n <div class=\"pk-message-feedback\" :class=\"toneClass\">\n <span class=\"pk-message-feedback__badge\">\n <span v-if=\"emoji\" class=\"pk-message-feedback__emoji\">\n {{ emoji }}\n </span>\n <VvIcon v-else :name=\"icon\" />\n </span>\n <p v-if=\"feedback.comment\" class=\"pk-message-feedback__comment\">\n {{ feedback.comment }}\n </p>\n </div>\n</template>\n\n<style lang=\"scss\">\n /*\n * The user's reaction + comment, shown as an annotation hanging off the\n * assistant message: echoes the bubble radius (same speech-bubble tail) and\n * a coloured left rail + badge match the vote. Sits flush under the bubble.\n */\n .pk-message-feedback {\n display: flex;\n align-items: center;\n gap: var(--spacing-8);\n padding: var(--spacing-6) var(--spacing-12) var(--spacing-6)\n var(--spacing-6);\n border-radius: var(--rounded-lg);\n background: var(--pk-feedback-surface);\n font-size: var(--text-12);\n color: var(--color-word-2);\n\n // The accent colors the thumb on the surface: the text shades of\n // success and danger, the fills where a host app loads only the\n // library and this package's stylesheet\n &--positive {\n --pk-feedback-accent: var(--u-success-text, var(--color-success));\n }\n\n &--negative {\n --pk-feedback-accent: var(--u-danger-text, var(--color-danger));\n }\n\n &--neutral {\n --pk-feedback-accent: var(--color-surface-4);\n }\n\n --pk-feedback-surface: color-mix(\n in srgb,\n var(--pk-feedback-accent) 8%,\n var(--color-surface)\n );\n\n &__badge {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--spacing-22, 1.375rem);\n height: var(--spacing-22, 1.375rem);\n border-radius: var(--rounded-full, 9999px);\n background: var(--color-surface);\n color: var(--pk-feedback-accent);\n box-shadow: var(--shadow-sm);\n }\n\n &__emoji {\n /* Smaller than the badge so the glyph doesn't touch the ring. */\n font-size: var(--text-12);\n line-height: 1;\n }\n\n &__comment {\n margin: 0;\n /* Preserve the user's line breaks; avoid orphans on wrap. */\n white-space: pre-wrap;\n text-wrap: pretty;\n }\n }\n</style>\n","<script lang=\"ts\" setup>\n import type { MessageFeedback } from 'models'\n import { computed } from 'vue'\n\n const props = defineProps<{\n feedback: MessageFeedback\n }>()\n\n // The real reaction glyph, shown ONLY for unmapped reactions (no vote):\n // 👍/❤️/👎 keep the classic thumb icon, while e.g. WhatsApp \"😍\" shows the\n // actual emoji.\n const emoji = computed(() => {\n if (props.feedback.vote) {\n return undefined\n }\n const raw = props.feedback.metadata?.reactionEmoji\n return typeof raw === 'string' && /\\p{Extended_Pictographic}/u.test(raw)\n ? raw\n : undefined\n })\n\n // Accent matches the vote; neutral for a real emoji (it carries its own\n // colour) or a comment-only feedback.\n const toneClass = computed(() => {\n if (emoji.value) {\n return 'pk-message-feedback--neutral'\n }\n switch (props.feedback.vote) {\n case 'upvote':\n return 'pk-message-feedback--positive'\n case 'downvote':\n return 'pk-message-feedback--negative'\n default:\n return 'pk-message-feedback--neutral'\n }\n })\n\n // Fallback icon when there is no real emoji glyph to show.\n const icon = computed(() => {\n switch (props.feedback.vote) {\n case 'upvote':\n return 'ri:thumb-up-fill'\n case 'downvote':\n return 'ri:thumb-down-fill'\n default:\n return 'ri:chat-quote-line'\n }\n })\n</script>\n\n<template>\n <div class=\"pk-message-feedback\" :class=\"toneClass\">\n <span class=\"pk-message-feedback__badge\">\n <span v-if=\"emoji\" class=\"pk-message-feedback__emoji\">\n {{ emoji }}\n </span>\n <VvIcon v-else :name=\"icon\" />\n </span>\n <p v-if=\"feedback.comment\" class=\"pk-message-feedback__comment\">\n {{ feedback.comment }}\n </p>\n </div>\n</template>\n\n<style lang=\"scss\">\n /*\n * The user's reaction + comment, shown as an annotation hanging off the\n * assistant message: echoes the bubble radius (same speech-bubble tail) and\n * a coloured left rail + badge match the vote. Sits flush under the bubble.\n */\n .pk-message-feedback {\n display: flex;\n align-items: center;\n gap: var(--spacing-8);\n padding: var(--spacing-6) var(--spacing-12) var(--spacing-6)\n var(--spacing-6);\n border-radius: var(--rounded-lg);\n background: var(--pk-feedback-surface);\n font-size: var(--text-12);\n color: var(--color-word-2);\n\n // The accent colors the thumb on the surface: the text shades of\n // success and danger, the fills where a host app loads only the\n // library and this package's stylesheet\n &--positive {\n --pk-feedback-accent: var(--u-success-text, var(--color-success));\n }\n\n &--negative {\n --pk-feedback-accent: var(--u-danger-text, var(--color-danger));\n }\n\n &--neutral {\n --pk-feedback-accent: var(--color-surface-4);\n }\n\n --pk-feedback-surface: color-mix(\n in srgb,\n var(--pk-feedback-accent) 8%,\n var(--color-surface)\n );\n\n &__badge {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--spacing-22, 1.375rem);\n height: var(--spacing-22, 1.375rem);\n border-radius: var(--rounded-full, 9999px);\n background: var(--color-surface);\n color: var(--pk-feedback-accent);\n box-shadow: var(--shadow-sm);\n }\n\n &__emoji {\n /* Smaller than the badge so the glyph doesn't touch the ring. */\n font-size: var(--text-12);\n line-height: 1;\n }\n\n &__comment {\n margin: 0;\n /* Preserve the user's line breaks; avoid orphans on wrap. */\n white-space: pre-wrap;\n text-wrap: pretty;\n }\n }\n</style>\n"],"mappings":";;;;;;;;;;;;;EAII,IAAM,IAAQ,GAOR,IAAQ,QAAe;GACzB,IAAI,EAAM,SAAS,MACf;GAEJ,IAAM,IAAM,EAAM,SAAS,UAAU;GACrC,OAAO,OAAO,KAAQ,YAAY,6BAA6B,KAAK,CAAG,IACjE,IACA,KAAA;EACV,CAAC,GAIK,IAAY,QAAe;GAC7B,IAAI,EAAM,OACN,OAAO;GAEX,QAAQ,EAAM,SAAS,MAAvB;IACI,KAAK,UACD,OAAO;IACX,KAAK,YACD,OAAO;IACX,SACI,OAAO;GACf;EACJ,CAAC,GAGK,IAAO,QAAe;GACxB,QAAQ,EAAM,SAAS,MAAvB;IACI,KAAK,UACD,OAAO;IACX,KAAK,YACD,OAAO;IACX,SACI,OAAO;GACf;EACJ,CAAC;;;GAID,OAAA,EAAA,GAAA,EAUM,OAAA,EAVD,OAAK,EAAA,CAAC,uBAA8B,EAAA,KAAS,CAAA,EAAA,GAAA,CAC9C,EAKO,QALP,GAKO,CAJS,EAAA,SAAZ,EAAA,GAAA,EAEO,QAFP,GAEO,EADA,EAAA,KAAK,GAAA,CAAA,MAEZ,EAAA,GAAA,EAA8B,GAAA;;IAAd,MAAM,EAAA;GAEjB,GAAA,MAAA,GAAA,CAAA,MAAA,CAAA,EAAA,CAAA,GAAA,EAAA,SAAS,WAAlB,EAAA,GAAA,EAEI,KAFJ,GAEI,EADG,EAAA,SAAS,OAAO,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,GAAA,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { O as e } from "./Agent-tbKw8Mdt.js";
2
- import { t } from "./PkStreamingMarkdown-DYy79C1P.js";
2
+ import { t } from "./PkStreamingMarkdown-it3X7T75.js";
3
3
  import "./src-DT8FLE4_.js";
4
4
  import { a as n, c as r, o as i, r as a, s as o, t as s } from "./message-RohfrdWS.js";
5
5
  import { t as c } from "./PkChatbotError-CuX9C_b9.js";
@@ -8,32 +8,32 @@ import { S as u, _ as d, b as f, c as p, d as m, f as h, i as g, n as ee, p as t
8
8
  import { t as re } from "./PkChatbotFilePreview-CwiVQDF2.js";
9
9
  import { t as ie } from "./PkChatbotFeedbackForm-4XWLHOkB.js";
10
10
  import { t as ae } from "./PkChatbotMessageFeedback-BYmrVaCE.js";
11
- import { n as b, t as x } from "./PkChatbotSteps-CPPjwTJN.js";
11
+ import { n as b, t as x } from "./PkChatbotSteps-CXiFF3Z-.js";
12
12
  import { t as S } from "./PkChatbotOutlineRail-np4g6vsz.js";
13
13
  import { VvButton as oe, VvButtonGroup as se, VvIcon as ce } from "@volverjs/ui-vue/components";
14
14
  import { Fragment as C, Transition as w, computed as T, createBlock as E, createCommentVNode as D, createElementBlock as O, createElementVNode as k, createTextVNode as le, createVNode as A, defineAsyncComponent as j, defineComponent as M, mergeProps as ue, nextTick as N, normalizeClass as P, normalizeStyle as de, onBeforeUnmount as F, onMounted as fe, openBlock as I, ref as L, renderList as pe, renderSlot as me, resolveDynamicComponent as he, toDisplayString as R, unref as z, useSlots as ge, useTemplateRef as _e, watch as B, withCtx as V, withModifiers as H } from "vue";
15
15
  import { useI18n as ve } from "vue-i18n";
16
16
  //#region ../../packages/utils/src/text.ts
17
17
  var U = (e) => e.normalize("NFD").replace(/[\u0300-\u036f]/g, ""), ye = (e) => e ? e.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g, "$1 $2").replace(/[-_]+/g, " ") : "", be = (e) => e ? U(e).replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/[^a-zA-Z0-9]+/g, "-").toLowerCase() : "", xe = (e) => e ? U(e).replace(/([a-z0-9])([A-Z])/g, "$1_$2").replace(/[^a-zA-Z0-9]+/g, "_").toLowerCase() : "", Se = (e) => e ? e.charAt(0).toUpperCase() + e.slice(1) : "", Ce = {
18
- requestOAuthConnection: j(() => import("./PkToolRequestOAuthConnection-a2LegFoE.js")),
19
- showArtifact: j(() => import("./PkToolShowArtifact-DUOnFdfa.js").then((e) => e.n)),
20
- showCalendarEvent: j(() => import("./PkToolShowCalendarEvent-BsBdsbV0.js").then((e) => e.n)),
18
+ requestOAuthConnection: j(() => import("./PkToolRequestOAuthConnection-BiaSF6R_.js")),
19
+ showArtifact: j(() => import("./PkToolShowArtifact-BFyFYjHI.js").then((e) => e.n)),
20
+ showCalendarEvent: j(() => import("./PkToolShowCalendarEvent-yttlTHiX.js").then((e) => e.n)),
21
21
  showComparison: j(() => import("./PkToolShowComparison-DQs3E6-k.js").then((e) => e.n)),
22
- showContactForm: j(() => import("./PkToolShowContactForm-1TFKvG_s.js").then((e) => e.n)),
23
- showDiagram: j(() => import("./PkToolShowDiagram-Dmtqu3th.js")),
24
- showEmail: j(() => import("./PkToolShowEmail-BDsBoETQ.js").then((e) => e.n)),
25
- showImageGallery: j(() => import("./PkToolShowImageGallery-DudQzBx4.js").then((e) => e.n)),
22
+ showContactForm: j(() => import("./PkToolShowContactForm-YpaC_31s.js").then((e) => e.n)),
23
+ showDiagram: j(() => import("./PkToolShowDiagram-Bdxjd0BJ.js")),
24
+ showEmail: j(() => import("./PkToolShowEmail-CNkFP7qC.js").then((e) => e.n)),
25
+ showImageGallery: j(() => import("./PkToolShowImageGallery-DmhZLnBk.js").then((e) => e.n)),
26
26
  showLocation: j(() => import("./PkToolShowLocation-Bv6sLN5P.js").then((e) => e.n)),
27
- showMessage: j(() => import("./PkToolShowMessage-Dau3agUy.js").then((e) => e.n)),
28
- showForm: j(() => import("./PkToolShowForm-DwFKxMJd.js").then((e) => e.n)),
29
- showMultipleChoice: j(() => import("./PkToolShowForm-DwFKxMJd.js").then((e) => e.n)),
30
- showProductList: j(() => import("./PkToolShowProductList-CsupMsuy.js").then((e) => e.n)),
27
+ showMessage: j(() => import("./PkToolShowMessage-C9xFAi1s.js").then((e) => e.n)),
28
+ showForm: j(() => import("./PkToolShowForm-FKJNKXPq.js").then((e) => e.n)),
29
+ showMultipleChoice: j(() => import("./PkToolShowForm-FKJNKXPq.js").then((e) => e.n)),
30
+ showProductList: j(() => import("./PkToolShowProductList-k1ckf1Ko.js").then((e) => e.n)),
31
31
  showQrCode: j(() => import("./PkToolShowQrCode-DEAvfLFu.js").then((e) => e.n)),
32
- showSources: j(() => import("./PkToolShowSources-TzkNgwnr.js").then((e) => e.n)),
32
+ showSources: j(() => import("./PkToolShowSources-DE0RO8z9.js").then((e) => e.n)),
33
33
  showSuggestedReply: j(() => import("./PkToolShowSuggestedReply-qAWdCUhr.js").then((e) => e.n)),
34
34
  showVideo: j(() => import("./PkToolShowVideo-BZOTu2Qe.js")),
35
35
  showWeather: j(() => import("./PkToolShowWeather-Bzqalzh8.js")),
36
- showWebPages: j(() => import("./PkToolShowWebPages-D4E3Xzg1.js").then((e) => e.n))
36
+ showWebPages: j(() => import("./PkToolShowWebPages-v-6DGCNM.js").then((e) => e.n))
37
37
  }, W = {
38
38
  key: 0,
39
39
  class: "text-12 text-word-3 m-0 mb-xs"
@@ -219,13 +219,13 @@ var ke = ["aria-busy"], Ae = {
219
219
  }, He = ["datetime", "title"], Ue = { class: "truncate" }, We = {
220
220
  key: 0,
221
221
  class: "flex items-center gap-4 min-w-0"
222
- }, Ge = { class: "truncate" }, Ke = {
223
- key: 1,
222
+ }, Ge = { class: "truncate" }, Ke = ["title"], qe = {
223
+ key: 2,
224
224
  class: "flex items-center gap-4 text-12 text-word-3"
225
- }, qe = { class: "truncate" }, Je = ["datetime"], Ye = { class: "truncate" }, Xe = {
226
- key: 3,
225
+ }, Je = { class: "truncate" }, Ye = ["datetime"], Xe = { class: "truncate" }, Ze = {
226
+ key: 4,
227
227
  class: "flex items-center gap-4 text-12 text-word-3"
228
- }, Ze = { class: "pk-chatbot-message__loading-info" }, Qe = { class: "flex gap-8 items-center" }, $e = { class: "text-12" }, et = ["title", "aria-label"], tt = /* @__PURE__ */ M({
228
+ }, Qe = { class: "pk-chatbot-message__loading-info" }, $e = { class: "flex gap-8 items-center" }, et = { class: "text-12" }, tt = ["title", "aria-label"], nt = /* @__PURE__ */ M({
229
229
  __name: "PkChatbotMessages",
230
230
  props: {
231
231
  status: {},
@@ -240,6 +240,7 @@ var ke = ["aria-busy"], Ae = {
240
240
  disableHeightAdjustment: { type: Boolean },
241
241
  showMessageDateTime: { type: Boolean },
242
242
  showMessageTokensCount: { type: Boolean },
243
+ showMessageNumber: { type: Boolean },
243
244
  showAllMessageParts: { type: Boolean },
244
245
  interactive: { type: Boolean },
245
246
  showExtendedSteps: { type: Boolean },
@@ -283,99 +284,102 @@ var ke = ["aria-busy"], Ae = {
283
284
  id: n,
284
285
  approved: t
285
286
  });
286
- }, W = _e("scrollEl"), G = _e("wrapperEl"), we = T(() => u(j.textColor, j.mainColor)), { handleScroll: Te, scrollToBottom: De, userScrolledUp: K, isAtBottom: tt } = Oe({
287
+ }, W = _e("scrollEl"), G = _e("wrapperEl"), we = T(() => u(j.textColor, j.mainColor)), { handleScroll: Te, scrollToBottom: De, userScrolledUp: K, isAtBottom: nt } = Oe({
287
288
  scrollEl: W,
288
289
  status: () => j.status,
289
290
  messagesLength: () => j.messages?.length,
290
291
  lastMessageRole: () => j.messages?.[j.messages.length - 1]?.role,
291
292
  contentEl: () => G.value,
292
- beforeNewMessageScroll: () => lt(),
293
+ beforeNewMessageScroll: () => ut(),
293
294
  onScrollUp: () => M("scroll-up"),
294
295
  onScrollDown: () => M("scroll-down")
295
- }), nt = () => {
296
+ }), rt = () => {
296
297
  K.value = !1, De();
297
298
  }, q = T(() => (j.messages ?? []).filter((e) => e.role === "user").map((e) => ({
298
299
  id: e.id,
299
300
  preview: e.parts.find(o)?.text.trim().slice(0, 120) || "…"
300
- }))), rt = L(), it = () => W.value?.querySelectorAll(".pk-chatbot-message--user") ?? [], at = () => {
301
+ }))), it = L(), at = () => W.value?.querySelectorAll(".pk-chatbot-message--user") ?? [], ot = () => {
301
302
  let e = W.value;
302
303
  if (!e || !j.showScrollToBottom) return;
303
304
  let t = e.getBoundingClientRect().top + e.clientHeight / 2, n = q.value[0]?.id;
304
- it().forEach((e, r) => {
305
+ at().forEach((e, r) => {
305
306
  e.getBoundingClientRect().top <= t && (n = q.value[r]?.id);
306
- }), rt.value = n;
307
+ }), it.value = n;
307
308
  };
308
309
  B(q, async () => {
309
- await N(), at();
310
+ await N(), ot();
310
311
  });
311
- let ot = () => {
312
- Te(), at();
313
- }, st = (e) => {
314
- let t = W.value, n = q.value.findIndex((t) => t.id === e), r = it()[n];
312
+ let st = () => {
313
+ Te(), ot();
314
+ }, ct = (e) => {
315
+ let t = W.value, n = q.value.findIndex((t) => t.id === e), r = at()[n];
315
316
  t && r && (K.value = !0, t.scrollTo({
316
317
  top: t.scrollTop + r.getBoundingClientRect().top - t.getBoundingClientRect().top - Number.parseFloat(getComputedStyle(t).paddingTop),
317
318
  behavior: "smooth"
318
319
  }));
319
- }, J = L(0), ct = L(!1), lt = async () => {
320
+ }, J = L(0), lt = L(!1), ut = async () => {
320
321
  let e = j.messages;
321
- if (!e?.length || j.disableHeightAdjustment || e[e.length - 1].role !== "user" && j.status !== "submitted" && j.status !== "streaming" || (ct.value = !1, await N(), !W.value)) return;
322
- let { paddingTop: t, paddingBottom: n } = getComputedStyle(W.value), r = W.value.clientHeight - Number.parseFloat(t) - Number.parseFloat(n), i = G.value && Number.parseFloat(getComputedStyle(G.value).rowGap) || 0, a = it(), o = r - (a[a.length - 1]?.clientHeight ?? 0) - i;
322
+ if (!e?.length || j.disableHeightAdjustment || e[e.length - 1].role !== "user" && j.status !== "submitted" && j.status !== "streaming" || (lt.value = !1, await N(), !W.value)) return;
323
+ let { paddingTop: t, paddingBottom: n } = getComputedStyle(W.value), r = W.value.clientHeight - Number.parseFloat(t) - Number.parseFloat(n), i = G.value && Number.parseFloat(getComputedStyle(G.value).rowGap) || 0, a = at(), o = r - (a[a.length - 1]?.clientHeight ?? 0) - i;
323
324
  r > 0 && (J.value = Math.max(o, 0)), await N();
324
325
  };
325
- B(() => [j.messages?.length, j.messages?.[j.messages.length - 1]?.id], () => lt()), fe(() => {
326
- (j.status === "submitted" || j.status === "streaming" || j.awaitingSpokenAnswer) && lt();
326
+ B(() => [j.messages?.length, j.messages?.[j.messages.length - 1]?.id], () => ut()), fe(() => {
327
+ (j.status === "submitted" || j.status === "streaming" || j.awaitingSpokenAnswer) && ut();
327
328
  }), B(() => j.status, (e) => {
328
- (e === "ready" || e === "error") && (ct.value = !0, J.value = 0);
329
+ (e === "ready" || e === "error") && (lt.value = !0, J.value = 0);
329
330
  });
330
- let ut = (e) => j.revisedAnswers?.some((t) => t.messageId === e), Y = (e) => j.messageFeedbacks?.find((t) => t.messageId === e), dt = (e, t) => !j.readonlyFeedback && kt(e, t), ft = (e) => j.readonlyFeedback ? Y(e) : void 0, pt = (e) => ft(e)?.vote, mt = (e) => {
331
- let t = ft(e);
331
+ let dt = (e) => j.revisedAnswers?.some((t) => t.messageId === e), Y = (e) => j.messageFeedbacks?.find((t) => t.messageId === e), ft = (e, t) => !j.readonlyFeedback && At(e, t), pt = (e) => j.readonlyFeedback ? Y(e) : void 0, mt = (e) => pt(e)?.vote, ht = (e) => {
332
+ let t = pt(e);
332
333
  if (t?.vote) return;
333
334
  let n = t?.metadata?.reactionEmoji;
334
335
  return typeof n == "string" && /\p{Extended_Pictographic}/u.test(n) ? n : void 0;
335
- }, ht = (e) => !!(pt(e) || mt(e)), gt = (e) => {
336
- if (mt(e)) return "pk-chatbot-message__reaction--neutral";
337
- let t = pt(e);
336
+ }, gt = (e) => !!(mt(e) || ht(e)), _t = (e) => {
337
+ if (ht(e)) return "pk-chatbot-message__reaction--neutral";
338
+ let t = mt(e);
338
339
  return t === "upvote" ? "pk-chatbot-message__reaction--positive" : t === "downvote" ? "pk-chatbot-message__reaction--negative" : "pk-chatbot-message__reaction--neutral";
339
- }, _t = (e) => {
340
- let t = pt(e);
341
- return F(t === "upvote" ? "hint.userFeedbackPositive" : t === "downvote" ? "hint.userFeedbackNegative" : "hint.userFeedbackReaction");
342
340
  }, vt = (e) => {
343
- let t = xt(e);
341
+ let t = mt(e);
342
+ return F(t === "upvote" ? "hint.userFeedbackPositive" : t === "downvote" ? "hint.userFeedbackNegative" : "hint.userFeedbackReaction");
343
+ }, yt = (e) => {
344
+ let t = St(e);
344
345
  for (let e = t.length - 1; e >= 0; --e) if (o(t[e])) return e;
345
346
  return -1;
346
- }, yt = T(() => j.messages?.[j.messages.length - 1]), X = T(() => {
347
- let e = yt.value;
347
+ }, bt = T(() => j.messages?.[j.messages.length - 1]), X = T(() => {
348
+ let e = bt.value;
348
349
  return e ? e.parts[e.parts.length - 1] : null;
349
- }), bt = T(() => {
350
+ }), xt = T(() => {
350
351
  let e = /* @__PURE__ */ new Map();
351
352
  for (let t of j.messages ?? []) t.role === "assistant" && e.set(t.id, g(ne(t.parts)));
352
353
  return e;
353
- }), xt = (e) => bt.value.get(e.id) ?? e.parts, Z = T(() => j.status === "submitted" || j.status === "streaming"), St = T(() => j.status === "error"), Ct = T(() => j.awaitingSpokenAnswer === !0 && !Z.value), wt = T(() => Ct.value && yt.value?.role === "user" && !St.value), Tt = T(() => {
354
+ }), St = (e) => xt.value.get(e.id) ?? e.parts, Z = T(() => j.status === "submitted" || j.status === "streaming"), Ct = T(() => j.status === "error"), wt = T(() => j.awaitingSpokenAnswer === !0 && !Z.value), Tt = T(() => wt.value && bt.value?.role === "user" && !Ct.value), Et = T(() => {
354
355
  let e = X.value;
355
356
  return te(F, e);
356
- }), Et = T(() => {
357
+ }), Dt = T(() => {
357
358
  let e = X.value;
358
359
  return v(e);
359
- }), Dt = (e) => j.messages?.findIndex((t) => t.id === e), Q = (e) => e === void 0 || !j.messages ? !1 : e === j.messages.length - 1, Ot = (e) => Q(e) && j.status === "ready" && !!j.actions?.includes("regenerate"), kt = (e, t) => (!Q(t) || j.status === "ready") && !!j.actions?.includes(e), At = (e) => {
360
+ }), Ot = (e) => j.messages?.findIndex((t) => t.id === e), Q = (e) => e === void 0 || !j.messages ? !1 : e === j.messages.length - 1, kt = (e) => Q(e) && j.status === "ready" && !!j.actions?.includes("regenerate"), At = (e, t) => (!Q(t) || j.status === "ready") && !!j.actions?.includes(e), jt = (e) => {
360
361
  let t = e.parts[e.parts.length - 1];
361
362
  return o(t);
362
- }, jt = (e) => e.parts.some((e) => i(e) || r(e)), Mt = (e) => !!j.showExtendedSteps && $(e) && jt(e), Nt = (e) => r(e) && !y(e) && !!(Ce[a(e)] || xe[e.type] || j.showAllMessageParts), Pt = (e) => e.parts.some((e) => o(e) && !!e.text.trim() || n(e) || d(e) && !y(e) || Nt(e)), $ = (e) => e.role === "assistant", Ft = (e) => e.role === "user", It = (e) => j.messages?.slice(0, e).reverse().find((e) => $(e)), Lt = (e) => j.messages?.slice(e + 1).find((e) => $(e)), Rt = (e) => {
363
- let t = It(e)?.metadata?.createdAt, n = Lt(e)?.metadata?.createdAt;
363
+ }, Mt = (e) => e.parts.some((e) => i(e) || r(e)), Nt = (e) => !!j.showExtendedSteps && $(e) && Mt(e), Pt = (e) => r(e) && !y(e) && !!(Ce[a(e)] || xe[e.type] || j.showAllMessageParts), Ft = (e) => e.parts.some((e) => o(e) && !!e.text.trim() || n(e) || d(e) && !y(e) || Pt(e)), $ = (e) => e.role === "assistant", It = (e) => e.role === "user", Lt = (e) => j.messages?.slice(0, e).reverse().find((e) => $(e)), Rt = (e) => j.messages?.slice(e + 1).find((e) => $(e)), zt = (e) => {
364
+ let t = Lt(e)?.metadata?.createdAt, n = Rt(e)?.metadata?.createdAt;
364
365
  if (!t || !n) return;
365
366
  let r = new Date(t), i = new Date(n);
366
367
  return r.toDateString() === i.toDateString() ? void 0 : i;
367
- }, zt = (e, t) => t === 0 || e.role !== "assistant" ? !1 : !!(j.actions?.length || j.showMessageDateTime && e.metadata?.createdAt !== void 0 || e.metadata?.completedAt !== void 0 || j.showMessageTokensCount && e.metadata?.totalTokens !== void 0), Bt = (e) => {
368
+ }, Bt = T(() => {
369
+ let e = 0;
370
+ return (j.messages ?? []).map((t) => t.parts.length > 0 ? ++e : void 0);
371
+ }), Vt = (e, t) => t === 0 || e.role !== "assistant" ? !1 : !!(j.actions?.length || j.showMessageNumber || j.showMessageDateTime && e.metadata?.createdAt !== void 0 || e.metadata?.completedAt !== void 0 || j.showMessageTokensCount && e.metadata?.totalTokens !== void 0), Ht = (e) => {
368
372
  let t = new Date(e), n = t.toDateString() === (/* @__PURE__ */ new Date()).toDateString();
369
373
  return U(t, n ? "time" : "date-time");
370
- }, Vt = (e) => {
374
+ }, Ut = (e) => {
371
375
  let { createdAt: t, completedAt: n } = e.metadata ?? {};
372
376
  if (t && n) return p(ye, n - t);
373
- }, Ht = _e("feedbackMessageEl");
377
+ }, Wt = _e("feedbackMessageEl");
374
378
  return B(() => j.feedbackMessageId, async () => {
375
379
  if (await N(), !j.feedbackMessageId) return;
376
- let e = Ht.value?.[0]?.$el;
380
+ let e = Wt.value?.[0]?.$el;
377
381
  if (e) {
378
- if (Q(Dt(j.feedbackMessageId))) {
382
+ if (Q(Ot(j.feedbackMessageId))) {
379
383
  De();
380
384
  return;
381
385
  }
@@ -389,7 +393,7 @@ var ke = ["aria-busy"], Ae = {
389
393
  return I(), O("div", {
390
394
  ref_key: "scrollEl",
391
395
  ref: W,
392
- class: P(["pk-chatbot-messages", { "pk-chatbot-messages--settling": ct.value }]),
396
+ class: P(["pk-chatbot-messages", { "pk-chatbot-messages--settling": lt.value }]),
393
397
  role: "log",
394
398
  "aria-live": "polite",
395
399
  "aria-relevant": "additions text",
@@ -398,32 +402,32 @@ var ke = ["aria-busy"], Ae = {
398
402
  "--chatbot-main-color": e.mainColor,
399
403
  "--chatbot-contrast-color": we.value
400
404
  }),
401
- onScroll: ot
405
+ onScroll: st
402
406
  }, [
403
407
  e.showScrollToBottom && q.value.length > 1 ? (I(), O("div", Ae, [A(S, {
404
408
  items: q.value,
405
- "active-id": rt.value,
406
- onSelect: st
409
+ "active-id": it.value,
410
+ onSelect: ct
407
411
  }, null, 8, ["items", "active-id"])])) : D("", !0),
408
412
  k("div", {
409
413
  ref_key: "wrapperEl",
410
414
  ref: G,
411
415
  class: "pk-chatbot-messages__wrapper"
412
416
  }, [
413
- (I(!0), O(C, null, pe(e.messages, (c, g) => (I(), O(C, { key: c.id }, [Ft(c) && Rt(g) ? (I(), O("div", je, [k("span", Me, R(z(U)(Rt(g), "short")), 1)])) : D("", !0), c.parts.length || Q(g) && Z.value && $(c) ? (I(), O("div", {
417
+ (I(!0), O(C, null, pe(e.messages, (c, g) => (I(), O(C, { key: c.id }, [It(c) && zt(g) ? (I(), O("div", je, [k("span", Me, R(z(U)(zt(g), "short")), 1)])) : D("", !0), c.parts.length || Q(g) && Z.value && $(c) ? (I(), O("div", {
414
418
  key: 1,
415
419
  class: P(["pk-chatbot-message", [`pk-chatbot-message--${c.role}`, { "pk-chatbot-message--loading": Z.value && Q(g) && $(c) }]]),
416
- style: de({ minHeight: Q(g) && $(c) && !St.value ? `${J.value}px` : void 0 })
420
+ style: de({ minHeight: Q(g) && $(c) && !Ct.value ? `${J.value}px` : void 0 })
417
421
  }, [
418
422
  A(w, {
419
423
  appear: "",
420
424
  name: "pk-chatbot-part"
421
425
  }, {
422
- default: V(() => [Mt(c) ? (I(), E(x, {
426
+ default: V(() => [Nt(c) ? (I(), E(x, {
423
427
  key: 0,
424
428
  message: c,
425
429
  "is-streaming": Z.value && Q(g),
426
- "has-content": Pt(c),
430
+ "has-content": Ft(c),
427
431
  "is-dark": e.isDark
428
432
  }, null, 8, [
429
433
  "message",
@@ -433,7 +437,7 @@ var ke = ["aria-busy"], Ae = {
433
437
  ])) : D("", !0)]),
434
438
  _: 2
435
439
  }, 1024),
436
- (I(!0), O(C, null, pe(xt(c), (i, l) => (I(), O(C, { key: l }, [z(o)(i) && i.text.trim() ? (I(), E(w, {
440
+ (I(!0), O(C, null, pe(St(c), (i, l) => (I(), O(C, { key: l }, [z(o)(i) && i.text.trim() ? (I(), E(w, {
437
441
  key: 0,
438
442
  appear: "",
439
443
  name: "pk-chatbot-part"
@@ -453,13 +457,13 @@ var ke = ["aria-busy"], Ae = {
453
457
  "markdown",
454
458
  "is-dark",
455
459
  "loading"
456
- ])) : (I(), O(C, { key: 1 }, [le(R(i.text), 1)], 64))]), ht(c.id) && !Y(c.id)?.comment && l === vt(c) ? (I(), O("span", {
460
+ ])) : (I(), O(C, { key: 1 }, [le(R(i.text), 1)], 64))]), gt(c.id) && !Y(c.id)?.comment && l === yt(c) ? (I(), O("span", {
457
461
  key: 0,
458
- class: P(["pk-chatbot-message__reaction", gt(c.id)]),
459
- title: _t(c.id)
460
- }, [mt(c.id) ? (I(), O("span", Fe, R(mt(c.id)), 1)) : (I(), E(u, {
462
+ class: P(["pk-chatbot-message__reaction", _t(c.id)]),
463
+ title: vt(c.id)
464
+ }, [ht(c.id) ? (I(), O("span", Fe, R(ht(c.id)), 1)) : (I(), E(u, {
461
465
  key: 1,
462
- name: pt(c.id) === "downvote" ? "ri:thumb-down-fill" : "ri:thumb-up-fill"
466
+ name: mt(c.id) === "downvote" ? "ri:thumb-down-fill" : "ri:thumb-up-fill"
463
467
  }, null, 8, ["name"]))], 10, Pe)) : D("", !0)])]),
464
468
  _: 2
465
469
  }, 1024)) : z(n)(i) ? (I(), E(w, {
@@ -497,7 +501,7 @@ var ke = ["aria-busy"], Ae = {
497
501
  "onRespond"
498
502
  ]))]),
499
503
  _: 2
500
- }, 1024)) : Nt(i) ? (I(), E(w, {
504
+ }, 1024)) : Pt(i) ? (I(), E(w, {
501
505
  key: 3,
502
506
  appear: "",
503
507
  name: "pk-chatbot-part"
@@ -517,7 +521,7 @@ var ke = ["aria-busy"], Ae = {
517
521
  }, null, 8, ["name"])) : D("", !0), k("code", Re, R(z(be)(i.type)), 1)])])) : D("", !0)], void 0, 1)]),
518
522
  _: 2
519
523
  }, 1024)) : D("", !0), A(w, { mode: "out-in" }, {
520
- default: V(() => [l === vt(c) && e.readonlyFeedback && Y(c.id)?.comment ? (I(), E(ae, {
524
+ default: V(() => [l === yt(c) && e.readonlyFeedback && Y(c.id)?.comment ? (I(), E(ae, {
521
525
  key: 0,
522
526
  feedback: Y(c.id)
523
527
  }, null, 8, ["feedback"])) : D("", !0)]),
@@ -527,7 +531,7 @@ var ke = ["aria-busy"], Ae = {
527
531
  name: "fade-in",
528
532
  mode: "out-in"
529
533
  }, {
530
- default: V(() => [Z.value && Q(g) && !At(c) && $(c) && (!Mt(c) || Pt(c)) ? (I(), O("div", {
534
+ default: V(() => [Z.value && Q(g) && !jt(c) && $(c) && (!Nt(c) || Ft(c)) ? (I(), O("div", {
531
535
  key: `loading-info-${c.id}`,
532
536
  class: "pk-chatbot-message__loading-info"
533
537
  }, [k("div", ze, [
@@ -536,25 +540,25 @@ var ke = ["aria-busy"], Ae = {
536
540
  class: "shrink-0"
537
541
  }),
538
542
  A(w, { mode: "out-in" }, {
539
- default: V(() => [Et.value ? (I(), E(u, {
540
- key: Et.value,
543
+ default: V(() => [Dt.value ? (I(), E(u, {
544
+ key: Dt.value,
541
545
  class: "shrink-0",
542
- name: Et.value
546
+ name: Dt.value
543
547
  }, null, 8, ["name"])) : D("", !0)]),
544
548
  _: 1
545
549
  }),
546
550
  A(w, { mode: "out-in" }, {
547
- default: V(() => [Tt.value ? (I(), O("span", {
548
- key: Tt.value,
551
+ default: V(() => [Et.value ? (I(), O("span", {
552
+ key: Et.value,
549
553
  class: "text-12"
550
- }, R(Tt.value), 1)) : D("", !0)]),
554
+ }, R(Et.value), 1)) : D("", !0)]),
551
555
  _: 1
552
556
  })
553
557
  ]), A(w, {
554
558
  name: "fade-in",
555
559
  mode: "out-in"
556
560
  }, {
557
- default: V(() => [!Mt(c) && X.value && "text" in X.value && X.value.text.trim() ? (I(), E(b, {
561
+ default: V(() => [!Nt(c) && X.value && "text" in X.value && X.value.text.trim() ? (I(), E(b, {
558
562
  key: 0,
559
563
  markdown: X.value.text,
560
564
  "is-dark": e.isDark,
@@ -571,14 +575,14 @@ var ke = ["aria-busy"], Ae = {
571
575
  _: 2
572
576
  }, 1024),
573
577
  A(w, { mode: "out-in" }, {
574
- default: V(() => [zt(c, g) ? (I(), O("div", Be, [
578
+ default: V(() => [Vt(c, g) ? (I(), O("div", Be, [
575
579
  A(h, {
576
580
  modifiers: "compact",
577
581
  class: "mr-auto shrink-0"
578
582
  }, {
579
583
  default: V(() => [
580
584
  A(w, { mode: "out-in" }, {
581
- default: V(() => [Ot(g) ? (I(), E(p, {
585
+ default: V(() => [kt(g) ? (I(), E(p, {
582
586
  key: 0,
583
587
  icon: "ri:reset-right-line",
584
588
  modifiers: "action-quiet-small",
@@ -589,7 +593,7 @@ var ke = ["aria-busy"], Ae = {
589
593
  _: 2
590
594
  }, 1024),
591
595
  A(w, { mode: "out-in" }, {
592
- default: V(() => [kt("show-info", g) ? (I(), E(p, {
596
+ default: V(() => [At("show-info", g) ? (I(), E(p, {
593
597
  key: 0,
594
598
  icon: "ri:information-line",
595
599
  title: z(F)("action.getMoreInfo"),
@@ -604,13 +608,13 @@ var ke = ["aria-busy"], Ae = {
604
608
  _: 2
605
609
  }, 1024),
606
610
  A(w, { mode: "out-in" }, {
607
- default: V(() => [kt("revise", g) ? (I(), E(p, {
611
+ default: V(() => [At("revise", g) ? (I(), E(p, {
608
612
  key: 0,
609
- icon: ut(c.id) ? "ri:file-edit-fill" : "ri:file-edit-line",
610
- title: ut(c.id) ? z(F)("action.editRevise") : z(F)("action.createRevise"),
611
- "aria-label": ut(c.id) ? z(F)("action.editRevise") : z(F)("action.createRevise"),
613
+ icon: dt(c.id) ? "ri:file-edit-fill" : "ri:file-edit-line",
614
+ title: dt(c.id) ? z(F)("action.editRevise") : z(F)("action.createRevise"),
615
+ "aria-label": dt(c.id) ? z(F)("action.editRevise") : z(F)("action.createRevise"),
612
616
  modifiers: "action-quiet-small",
613
- class: P({ "text-brand": ut(c.id) }),
617
+ class: P({ "text-brand": dt(c.id) }),
614
618
  onClick: H((e) => r.$emit("revise", c), ["stop"])
615
619
  }, null, 8, [
616
620
  "icon",
@@ -622,7 +626,7 @@ var ke = ["aria-busy"], Ae = {
622
626
  _: 2
623
627
  }, 1024),
624
628
  A(w, { mode: "out-in" }, {
625
- default: V(() => [dt("upvote", g) ? (I(), E(p, {
629
+ default: V(() => [ft("upvote", g) ? (I(), E(p, {
626
630
  key: 0,
627
631
  icon: Y(c.id)?.vote === "upvote" ? "ri:thumb-up-fill" : "ri:thumb-up-line",
628
632
  title: z(F)("action.upvote"),
@@ -638,7 +642,7 @@ var ke = ["aria-busy"], Ae = {
638
642
  _: 2
639
643
  }, 1024),
640
644
  A(w, { mode: "out-in" }, {
641
- default: V(() => [dt("downvote", g) ? (I(), E(p, {
645
+ default: V(() => [ft("downvote", g) ? (I(), E(p, {
642
646
  key: 0,
643
647
  icon: Y(c.id)?.vote === "downvote" ? "ri:thumb-down-fill" : "ri:thumb-down-line",
644
648
  title: z(F)("action.downvote"),
@@ -654,7 +658,7 @@ var ke = ["aria-busy"], Ae = {
654
658
  _: 2
655
659
  }, 1024),
656
660
  A(w, { mode: "out-in" }, {
657
- default: V(() => [dt("feedback", g) ? (I(), E(p, {
661
+ default: V(() => [ft("feedback", g) ? (I(), E(p, {
658
662
  key: 0,
659
663
  icon: Y(c.id)?.comment ? "ri:feedback-fill" : "ri:feedback-line",
660
664
  title: z(F)("action.feedback"),
@@ -679,23 +683,28 @@ var ke = ["aria-busy"], Ae = {
679
683
  }, [A(u, {
680
684
  name: "ri:time-line",
681
685
  class: "shrink-0"
682
- }), k("span", Ue, R(Bt(c.metadata.createdAt)), 1)], 8, He), Vt(c) ? (I(), O("span", We, [A(u, {
686
+ }), k("span", Ue, R(Ht(c.metadata.createdAt)), 1)], 8, He), Ut(c) ? (I(), O("span", We, [A(u, {
683
687
  name: "ri:hourglass-line",
684
688
  class: "shrink-0"
685
- }), k("span", Ge, R(Vt(c)), 1)])) : D("", !0)])) : D("", !0),
686
- e.showMessageTokensCount && c.metadata?.totalTokens ? (I(), O("span", Ke, [A(u, {
689
+ }), k("span", Ge, R(Ut(c)), 1)])) : D("", !0)])) : D("", !0),
690
+ e.showMessageNumber ? (I(), O("span", {
691
+ key: 1,
692
+ title: z(F)("label.messageNumber", { n: Bt.value[g] }),
693
+ class: "text-12 text-word-3 tabular-nums"
694
+ }, " #" + R(Bt.value[g]), 9, Ke)) : D("", !0),
695
+ e.showMessageTokensCount && c.metadata?.totalTokens ? (I(), O("span", qe, [A(u, {
687
696
  name: "ri:ai-generate-2-line",
688
697
  class: "shrink-0"
689
- }), k("span", qe, R(z(ye)(c.metadata.totalTokens, "integer")) + " " + R(z(F)("label.tokens")), 1)])) : D("", !0),
698
+ }), k("span", Je, R(z(ye)(c.metadata.totalTokens, "integer")) + " " + R(z(F)("label.tokens")), 1)])) : D("", !0),
690
699
  e.showMessageDateTime && c.metadata?.createdAt ? (I(), O("time", {
691
- key: 2,
700
+ key: 3,
692
701
  datetime: new Date(c.metadata?.createdAt).toISOString(),
693
702
  class: "flex items-center gap-4 text-12 text-word-3"
694
703
  }, [A(u, {
695
704
  name: "ri:time-line",
696
705
  class: "shrink-0"
697
- }), k("span", Ye, R(z(U)(new Date(c.metadata?.createdAt), "date-time")), 1)], 8, Je)) : D("", !0),
698
- e.showMessageDateTime && c?.metadata?.completedAt && c?.metadata?.createdAt ? (I(), O("div", Xe, [A(u, {
706
+ }), k("span", Xe, R(z(U)(new Date(c.metadata?.createdAt), "date-time")), 1)], 8, Ye)) : D("", !0),
707
+ e.showMessageDateTime && c?.metadata?.completedAt && c?.metadata?.createdAt ? (I(), O("div", Ze, [A(u, {
699
708
  name: "ri:hourglass-line",
700
709
  class: "shrink-0"
701
710
  }), A(l, {
@@ -711,7 +720,7 @@ var ke = ["aria-busy"], Ae = {
711
720
  key: 0,
712
721
  ref_for: !0,
713
722
  ref_key: "feedbackMessageEl",
714
- ref: Ht,
723
+ ref: Wt,
715
724
  loading: e.feedbackLoading,
716
725
  submitted: e.feedbackSubmitted,
717
726
  error: e.feedbackError,
@@ -729,21 +738,21 @@ var ke = ["aria-busy"], Ae = {
729
738
  appear: "",
730
739
  name: "pk-chatbot-part"
731
740
  }, {
732
- default: V(() => [Ct.value ? (I(), O("div", {
741
+ default: V(() => [wt.value ? (I(), O("div", {
733
742
  key: 0,
734
743
  class: "pk-chatbot-message pk-chatbot-message--assistant pk-chatbot-message--loading",
735
- style: de({ minHeight: wt.value ? `${J.value}px` : void 0 })
736
- }, [k("div", Ze, [k("div", Qe, [A(u, {
744
+ style: de({ minHeight: Tt.value ? `${J.value}px` : void 0 })
745
+ }, [k("div", Qe, [k("div", $e, [A(u, {
737
746
  name: "loading-loop",
738
747
  class: "shrink-0"
739
- }), k("span", $e, R(z(F)("label.answeringOnTheCall")), 1)])])], 4)) : D("", !0)]),
748
+ }), k("span", et, R(z(F)("label.answeringOnTheCall")), 1)])])], 4)) : D("", !0)]),
740
749
  _: 1
741
750
  }),
742
751
  A(w, {
743
752
  appear: "",
744
753
  name: "pk-chatbot-part"
745
754
  }, {
746
- default: V(() => [St.value ? (I(), E(c, {
755
+ default: V(() => [Ct.value ? (I(), E(c, {
747
756
  key: 0,
748
757
  error: e.error,
749
758
  onRetry: i[3] ||= (e) => r.$emit("auto-retry"),
@@ -751,21 +760,21 @@ var ke = ["aria-busy"], Ae = {
751
760
  }, null, 8, ["error"])) : D("", !0)]),
752
761
  _: 1
753
762
  }),
754
- yt.value?.role === "user" && !wt.value || St.value ? (I(), O("div", {
763
+ bt.value?.role === "user" && !Tt.value || Ct.value ? (I(), O("div", {
755
764
  key: 0,
756
765
  class: "pk-chatbot-messages__spacer",
757
766
  style: de({ minHeight: `${J.value}px` })
758
767
  }, null, 4)) : D("", !0)
759
768
  ], 512),
760
769
  A(w, { name: "pk-chatbot-messages-fab" }, {
761
- default: V(() => [e.showScrollToBottom && (z(K) || !z(tt)) ? (I(), O("button", {
770
+ default: V(() => [e.showScrollToBottom && (z(K) || !z(nt)) ? (I(), O("button", {
762
771
  key: 0,
763
772
  type: "button",
764
773
  class: "pk-chatbot-messages__scroll-to-bottom",
765
774
  title: z(F)("action.scrollToBottom"),
766
775
  "aria-label": z(F)("action.scrollToBottom"),
767
- onClick: nt
768
- }, [A(u, { name: "ri:arrow-down-line" })], 8, et)) : D("", !0)]),
776
+ onClick: rt
777
+ }, [A(u, { name: "ri:arrow-down-line" })], 8, tt)) : D("", !0)]),
769
778
  _: 1
770
779
  })
771
780
  ], 46, ke);
@@ -773,6 +782,6 @@ var ke = ["aria-busy"], Ae = {
773
782
  }
774
783
  });
775
784
  //#endregion
776
- export { xe as a, be as i, Se as n, ye as r, tt as t };
785
+ export { xe as a, be as i, Se as n, ye as r, nt as t };
777
786
 
778
- //# sourceMappingURL=PkChatbotMessages-R1EsTJpM.js.map
787
+ //# sourceMappingURL=PkChatbotMessages-CaHFzdIC.js.map