@meistrari/chat-nuxt 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/dist/module.d.mts +2 -1
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/conversations/components/chat-conversation-creator-filter.d.vue.ts +1 -1
  4. package/dist/runtime/conversations/components/chat-conversation-creator-filter.vue.d.ts +1 -1
  5. package/dist/runtime/conversations/components/chat-conversation-item.d.vue.ts +3 -3
  6. package/dist/runtime/conversations/components/chat-conversation-item.vue.d.ts +3 -3
  7. package/dist/runtime/conversations/components/chat-conversation-list.d.vue.ts +1 -1
  8. package/dist/runtime/conversations/components/chat-conversation-list.vue.d.ts +1 -1
  9. package/dist/runtime/conversations/components/chat-conversation-new-group-button.d.vue.ts +1 -1
  10. package/dist/runtime/conversations/components/chat-conversation-new-group-button.vue.d.ts +1 -1
  11. package/dist/runtime/conversations/components/chat-conversation-new-group-popover-content.d.vue.ts +4 -4
  12. package/dist/runtime/conversations/components/chat-conversation-new-group-popover-content.vue.d.ts +4 -4
  13. package/dist/runtime/conversations/components/chat-conversation-search.d.vue.ts +3 -3
  14. package/dist/runtime/conversations/components/chat-conversation-search.vue.d.ts +3 -3
  15. package/dist/runtime/conversations/components/chat-new-conversation-modal.d.vue.ts +23 -5
  16. package/dist/runtime/conversations/components/chat-new-conversation-modal.vue.d.ts +23 -5
  17. package/dist/runtime/conversations/composables/conversation-list.d.ts +58 -1
  18. package/dist/runtime/embed/components/chat-configuration-modal.d.vue.ts +3 -3
  19. package/dist/runtime/embed/components/chat-configuration-modal.vue +59 -176
  20. package/dist/runtime/embed/components/chat-configuration-modal.vue.d.ts +3 -3
  21. package/dist/runtime/embed/components/chat-embed-inner.d.vue.ts +3 -3
  22. package/dist/runtime/embed/components/chat-embed-inner.vue.d.ts +3 -3
  23. package/dist/runtime/embed/components/chat-embed.d.vue.ts +3 -3
  24. package/dist/runtime/embed/components/chat-embed.vue.d.ts +3 -3
  25. package/dist/runtime/embed/components/chat-topbar.d.vue.ts +5 -5
  26. package/dist/runtime/embed/components/chat-topbar.vue.d.ts +5 -5
  27. package/dist/runtime/embed/components/configuration/chat-configuration-agent-tab.d.vue.ts +13 -0
  28. package/dist/runtime/embed/components/configuration/chat-configuration-agent-tab.vue +167 -0
  29. package/dist/runtime/embed/components/configuration/chat-configuration-agent-tab.vue.d.ts +13 -0
  30. package/dist/runtime/embed/components/configuration/chat-configuration-credentials-tab.d.vue.ts +3 -3
  31. package/dist/runtime/embed/components/configuration/chat-configuration-credentials-tab.vue.d.ts +3 -3
  32. package/dist/runtime/embed/components/configuration/chat-configuration-knowledge-sources-tab.d.vue.ts +5 -5
  33. package/dist/runtime/embed/components/configuration/chat-configuration-knowledge-sources-tab.vue.d.ts +5 -5
  34. package/dist/runtime/embed/components/configuration/chat-configuration-mobile-shell.d.vue.ts +3 -3
  35. package/dist/runtime/embed/components/configuration/chat-configuration-mobile-shell.vue.d.ts +3 -3
  36. package/dist/runtime/embed/components/mobile/chat-mobile-bottom-sheet.d.vue.ts +3 -3
  37. package/dist/runtime/embed/components/mobile/chat-mobile-bottom-sheet.vue.d.ts +3 -3
  38. package/dist/runtime/embed/components/mobile/chat-mobile-drawer.d.vue.ts +3 -3
  39. package/dist/runtime/embed/components/mobile/chat-mobile-drawer.vue.d.ts +3 -3
  40. package/dist/runtime/embed/components/mobile/chat-mobile-file-preview.d.vue.ts +3 -3
  41. package/dist/runtime/embed/components/mobile/chat-mobile-file-preview.vue.d.ts +3 -3
  42. package/dist/runtime/embed/components/mobile/chat-mobile-files-view.d.vue.ts +3 -3
  43. package/dist/runtime/embed/components/mobile/chat-mobile-files-view.vue.d.ts +3 -3
  44. package/dist/runtime/embed/components/mobile/chat-mobile-header.d.vue.ts +5 -5
  45. package/dist/runtime/embed/components/mobile/chat-mobile-header.vue.d.ts +5 -5
  46. package/dist/runtime/embed/components/mobile/chat-mobile-home-header.d.vue.ts +3 -3
  47. package/dist/runtime/embed/components/mobile/chat-mobile-home-header.vue.d.ts +3 -3
  48. package/dist/runtime/embed/components/mobile/chat-mobile-home-recents.d.vue.ts +3 -3
  49. package/dist/runtime/embed/components/mobile/chat-mobile-home-recents.vue.d.ts +3 -3
  50. package/dist/runtime/embed/components/mobile/chat-mobile-home-suggestions.d.vue.ts +3 -3
  51. package/dist/runtime/embed/components/mobile/chat-mobile-home-suggestions.vue.d.ts +3 -3
  52. package/dist/runtime/embed/components/mobile/chat-mobile-info-bubble.d.vue.ts +1 -1
  53. package/dist/runtime/embed/components/mobile/chat-mobile-info-bubble.vue.d.ts +1 -1
  54. package/dist/runtime/embed/components/mobile/chat-mobile-outdated-settings-sheet.d.vue.ts +3 -3
  55. package/dist/runtime/embed/components/mobile/chat-mobile-outdated-settings-sheet.vue.d.ts +3 -3
  56. package/dist/runtime/embed/components/mobile/chat-mobile-shell.d.vue.ts +41 -9
  57. package/dist/runtime/embed/components/mobile/chat-mobile-shell.vue.d.ts +41 -9
  58. package/dist/runtime/embed/components/mobile/chat-mobile-usage-view.d.vue.ts +1 -1
  59. package/dist/runtime/embed/components/mobile/chat-mobile-usage-view.vue.d.ts +1 -1
  60. package/dist/runtime/embed/components/mobile/chat-mobile-workspace-sheet.d.vue.ts +3 -3
  61. package/dist/runtime/embed/components/mobile/chat-mobile-workspace-sheet.vue.d.ts +3 -3
  62. package/dist/runtime/embed/components/powered-by-tela.d.vue.ts +1 -1
  63. package/dist/runtime/embed/components/powered-by-tela.vue.d.ts +1 -1
  64. package/dist/runtime/files/components/audio-preview.d.vue.ts +3 -3
  65. package/dist/runtime/files/components/audio-preview.vue.d.ts +3 -3
  66. package/dist/runtime/files/components/chat-file-preview.d.vue.ts +1 -1
  67. package/dist/runtime/files/components/chat-file-preview.vue.d.ts +1 -1
  68. package/dist/runtime/files/components/chat-files-view.d.vue.ts +1 -1
  69. package/dist/runtime/files/components/chat-files-view.vue.d.ts +1 -1
  70. package/dist/runtime/files/components/chat-vault-link.d.vue.ts +1 -1
  71. package/dist/runtime/files/components/chat-vault-link.vue.d.ts +1 -1
  72. package/dist/runtime/files/components/conversation-files-panel.d.vue.ts +1 -1
  73. package/dist/runtime/files/components/conversation-files-panel.vue.d.ts +1 -1
  74. package/dist/runtime/files/components/csv-preview.d.vue.ts +3 -3
  75. package/dist/runtime/files/components/csv-preview.vue.d.ts +3 -3
  76. package/dist/runtime/files/components/file-preview-panel.d.vue.ts +1 -1
  77. package/dist/runtime/files/components/file-preview-panel.vue.d.ts +1 -1
  78. package/dist/runtime/files/components/file-uploader.d.vue.ts +3 -3
  79. package/dist/runtime/files/components/file-uploader.vue.d.ts +3 -3
  80. package/dist/runtime/files/components/image-preview.d.vue.ts +3 -3
  81. package/dist/runtime/files/components/image-preview.vue.d.ts +3 -3
  82. package/dist/runtime/files/components/pdf-preview.client.d.vue.ts +3 -3
  83. package/dist/runtime/files/components/pdf-preview.client.vue.d.ts +3 -3
  84. package/dist/runtime/files/components/pdf-viewer.client.d.vue.ts +1 -1
  85. package/dist/runtime/files/components/pdf-viewer.client.vue.d.ts +1 -1
  86. package/dist/runtime/files/components/text-preview.d.vue.ts +3 -3
  87. package/dist/runtime/files/components/text-preview.vue.d.ts +3 -3
  88. package/dist/runtime/files/components/video-preview.d.vue.ts +3 -3
  89. package/dist/runtime/files/components/video-preview.vue.d.ts +3 -3
  90. package/dist/runtime/files/composables/pdf.d.ts +248 -27
  91. package/dist/runtime/files/file-limits.d.ts +2 -0
  92. package/dist/runtime/files/file-limits.js +2 -0
  93. package/dist/runtime/messages/components/chat-canvas-selector-modal.d.vue.ts +23 -5
  94. package/dist/runtime/messages/components/chat-canvas-selector-modal.vue.d.ts +23 -5
  95. package/dist/runtime/messages/components/chat-context-config.d.vue.ts +52 -10
  96. package/dist/runtime/messages/components/chat-context-config.vue +2 -2
  97. package/dist/runtime/messages/components/chat-context-config.vue.d.ts +52 -10
  98. package/dist/runtime/messages/components/chat-mention-dropdown.d.vue.ts +27 -5
  99. package/dist/runtime/messages/components/chat-mention-dropdown.vue.d.ts +27 -5
  100. package/dist/runtime/messages/components/chat-message-bubble.d.vue.ts +3 -3
  101. package/dist/runtime/messages/components/chat-message-bubble.vue.d.ts +3 -3
  102. package/dist/runtime/messages/components/chat-message-feedback.d.vue.ts +1 -1
  103. package/dist/runtime/messages/components/chat-message-feedback.vue.d.ts +1 -1
  104. package/dist/runtime/messages/components/chat-message-input.d.vue.ts +38 -6
  105. package/dist/runtime/messages/components/chat-message-input.vue +1 -1
  106. package/dist/runtime/messages/components/chat-message-input.vue.d.ts +38 -6
  107. package/dist/runtime/messages/components/chat-message-list.d.vue.ts +3 -3
  108. package/dist/runtime/messages/components/chat-message-list.vue.d.ts +3 -3
  109. package/dist/runtime/messages/components/chat-workstation-selector-modal.d.vue.ts +19 -5
  110. package/dist/runtime/messages/components/chat-workstation-selector-modal.vue.d.ts +19 -5
  111. package/dist/runtime/messages/components/reasoning/chat-reasoning-message.d.vue.ts +1 -1
  112. package/dist/runtime/messages/components/reasoning/chat-reasoning-message.vue.d.ts +1 -1
  113. package/dist/runtime/messages/components/reasoning/chat-reasoning-step-item.d.vue.ts +4 -4
  114. package/dist/runtime/messages/components/reasoning/chat-reasoning-step-item.vue.d.ts +4 -4
  115. package/dist/runtime/messages/components/reasoning/chat-reasoning-steps.d.vue.ts +2 -2
  116. package/dist/runtime/messages/components/reasoning/chat-reasoning-steps.vue.d.ts +2 -2
  117. package/dist/runtime/messages/components/reasoning/chat-reasoning-thought.d.vue.ts +1 -1
  118. package/dist/runtime/messages/components/reasoning/chat-reasoning-thought.vue.d.ts +1 -1
  119. package/dist/runtime/messages/components/reasoning/chat-thinking-indicator.d.vue.ts +1 -1
  120. package/dist/runtime/messages/components/reasoning/chat-thinking-indicator.vue.d.ts +1 -1
  121. package/dist/runtime/messages/components/widgets/chat-bash-widget.d.vue.ts +1 -1
  122. package/dist/runtime/messages/components/widgets/chat-bash-widget.vue.d.ts +1 -1
  123. package/dist/runtime/messages/components/widgets/chat-doc-sdk-widget.d.vue.ts +1 -1
  124. package/dist/runtime/messages/components/widgets/chat-doc-sdk-widget.vue.d.ts +1 -1
  125. package/dist/runtime/messages/components/widgets/chat-generic-tool-widget.d.vue.ts +1 -1
  126. package/dist/runtime/messages/components/widgets/chat-generic-tool-widget.vue.d.ts +1 -1
  127. package/dist/runtime/messages/components/widgets/chat-grep-widget.d.vue.ts +1 -1
  128. package/dist/runtime/messages/components/widgets/chat-grep-widget.vue.d.ts +1 -1
  129. package/dist/runtime/messages/components/widgets/chat-read-widget.d.vue.ts +1 -1
  130. package/dist/runtime/messages/components/widgets/chat-read-widget.vue.d.ts +1 -1
  131. package/dist/runtime/messages/components/widgets/chat-tela-skill-widget.d.vue.ts +1 -1
  132. package/dist/runtime/messages/components/widgets/chat-tela-skill-widget.vue.d.ts +1 -1
  133. package/dist/runtime/messages/components/widgets/chat-thinking-widget.d.vue.ts +1 -1
  134. package/dist/runtime/messages/components/widgets/chat-thinking-widget.vue.d.ts +1 -1
  135. package/dist/runtime/messages/components/widgets/chat-web-search-widget.d.vue.ts +1 -1
  136. package/dist/runtime/messages/components/widgets/chat-web-search-widget.vue.d.ts +1 -1
  137. package/dist/runtime/messages/components/widgets/chat-workstation-query-widget.d.vue.ts +1 -1
  138. package/dist/runtime/messages/components/widgets/chat-workstation-query-widget.vue.d.ts +1 -1
  139. package/dist/runtime/messages/components/widgets/chat-write-widget.d.vue.ts +1 -1
  140. package/dist/runtime/messages/components/widgets/chat-write-widget.vue.d.ts +1 -1
  141. package/dist/runtime/messages/composables/chat.js +4 -3
  142. package/dist/runtime/rendering/components/app-markdown-render.d.vue.ts +2 -2
  143. package/dist/runtime/rendering/components/app-markdown-render.vue.d.ts +2 -2
  144. package/dist/runtime/rendering/components/renderers/artifact-display.d.vue.ts +3 -3
  145. package/dist/runtime/rendering/components/renderers/artifact-display.vue.d.ts +3 -3
  146. package/dist/runtime/rendering/components/renderers/audio-renderer.d.vue.ts +1 -1
  147. package/dist/runtime/rendering/components/renderers/audio-renderer.vue.d.ts +1 -1
  148. package/dist/runtime/rendering/components/renderers/csv-renderer.d.vue.ts +1 -1
  149. package/dist/runtime/rendering/components/renderers/csv-renderer.vue.d.ts +1 -1
  150. package/dist/runtime/rendering/components/renderers/image-renderer.d.vue.ts +1 -1
  151. package/dist/runtime/rendering/components/renderers/image-renderer.vue.d.ts +1 -1
  152. package/dist/runtime/rendering/components/renderers/markdown-renderer.d.vue.ts +1 -1
  153. package/dist/runtime/rendering/components/renderers/markdown-renderer.vue.d.ts +1 -1
  154. package/dist/runtime/rendering/components/renderers/mermaid-diagram.d.vue.ts +1 -1
  155. package/dist/runtime/rendering/components/renderers/mermaid-diagram.vue.d.ts +1 -1
  156. package/dist/runtime/rendering/components/renderers/text-renderer.d.vue.ts +1 -1
  157. package/dist/runtime/rendering/components/renderers/text-renderer.vue.d.ts +1 -1
  158. package/dist/runtime/rendering/components/renderers/video-renderer.d.vue.ts +1 -1
  159. package/dist/runtime/rendering/components/renderers/video-renderer.vue.d.ts +1 -1
  160. package/dist/runtime/shared/chat-api-error.d.ts +1 -0
  161. package/dist/runtime/shared/chat-api-error.js +5 -0
  162. package/dist/runtime/shared/components/app-status-toast.d.vue.ts +1 -1
  163. package/dist/runtime/shared/components/app-status-toast.vue.d.ts +1 -1
  164. package/dist/runtime/shared/components/icons/anthropic.d.vue.ts +1 -1
  165. package/dist/runtime/shared/components/icons/anthropic.vue.d.ts +1 -1
  166. package/dist/runtime/shared/components/icons/tela-chat.d.vue.ts +1 -1
  167. package/dist/runtime/shared/components/icons/tela-chat.vue.d.ts +1 -1
  168. package/dist/runtime/shared/components/icons/tela-wordmark.d.vue.ts +1 -1
  169. package/dist/runtime/shared/components/icons/tela-wordmark.vue.d.ts +1 -1
  170. package/dist/runtime/types/schemas/chat/workspace-agent.d.ts +33 -0
  171. package/dist/runtime/types/schemas/chat/workspace-agent.js +12 -0
  172. package/dist/runtime/types/schemas/index.d.ts +1 -0
  173. package/dist/runtime/types/schemas/index.js +1 -0
  174. package/dist/runtime/types/workspace-settings.d.ts +1 -1
  175. package/dist/runtime/usage/components/chat-usage-view.d.vue.ts +1 -1
  176. package/dist/runtime/usage/components/chat-usage-view.vue.d.ts +1 -1
  177. package/dist/runtime/workspace/composables/github-skills-callback.js +1 -1
  178. package/dist/runtime/workspace/composables/workspace-agent.d.ts +8 -0
  179. package/dist/runtime/workspace/composables/workspace-agent.js +89 -0
  180. package/dist/runtime/workspace/composables/workspace-settings.d.ts +42 -1
  181. package/package.json +15 -15
  182. package/dist/runtime/embed/components/configuration/chat-configuration-context-files-tab.d.vue.ts +0 -22
  183. package/dist/runtime/embed/components/configuration/chat-configuration-context-files-tab.vue +0 -133
  184. package/dist/runtime/embed/components/configuration/chat-configuration-context-files-tab.vue.d.ts +0 -22
  185. package/dist/runtime/embed/components/configuration/chat-configuration-external-skills-tab.d.vue.ts +0 -32
  186. package/dist/runtime/embed/components/configuration/chat-configuration-external-skills-tab.vue +0 -222
  187. package/dist/runtime/embed/components/configuration/chat-configuration-external-skills-tab.vue.d.ts +0 -32
  188. package/dist/runtime/embed/components/configuration/chat-configuration-personalization-tab.d.vue.ts +0 -10
  189. package/dist/runtime/embed/components/configuration/chat-configuration-personalization-tab.vue +0 -37
  190. package/dist/runtime/embed/components/configuration/chat-configuration-personalization-tab.vue.d.ts +0 -10
  191. package/dist/runtime/embed/components/configuration/chat-configuration-tela-tools-tab.d.vue.ts +0 -20
  192. package/dist/runtime/embed/components/configuration/chat-configuration-tela-tools-tab.vue +0 -146
  193. package/dist/runtime/embed/components/configuration/chat-configuration-tela-tools-tab.vue.d.ts +0 -20
  194. package/dist/runtime/workspace/composables/workspace-context-files.d.ts +0 -19
  195. package/dist/runtime/workspace/composables/workspace-context-files.js +0 -83
  196. package/dist/runtime/workspace/composables/workspace-external-skills.d.ts +0 -22
  197. package/dist/runtime/workspace/composables/workspace-external-skills.js +0 -137
  198. package/dist/runtime/workspace/composables/workspace-personalization.d.ts +0 -6
  199. package/dist/runtime/workspace/composables/workspace-personalization.js +0 -18
  200. package/dist/runtime/workspace/composables/workspace-tela-tools.d.ts +0 -13
  201. package/dist/runtime/workspace/composables/workspace-tela-tools.js +0 -91
@@ -1,222 +0,0 @@
1
- <script setup>
2
- defineProps({
3
- searchQuery: { type: String, required: true },
4
- displayedSkills: { type: Array, required: true },
5
- filteredSkills: { type: Array, required: true },
6
- hasChanges: { type: Boolean, required: true },
7
- isPending: { type: Function, required: true },
8
- skillModalOpen: { type: Boolean, required: true },
9
- skillRefInput: { type: String, required: true },
10
- skillError: { type: String, required: true },
11
- discoveringSkills: { type: Boolean, required: true },
12
- gitHubButtonText: { type: String, required: true }
13
- });
14
- const emit = defineEmits(["update:searchQuery", "update:skillModalOpen", "update:skillRefInput", "removeSkill", "closeSkillModal", "handleAddSkillAndClose", "connectGitHub"]);
15
- const gitHubIconUrl = "/chat-assets/github.svg";
16
- </script>
17
-
18
- <template>
19
- <div mb-24px>
20
- <h2 text-16px font-semibold text-primary tracking="-.2px" leading-20px>
21
- Skills Externas
22
- </h2>
23
- <div h-px bg-gray-200 mt-24px />
24
- </div>
25
-
26
- <div v-if="displayedSkills.length === 0 && !hasChanges" flex="~ col" items-center justify-center h-400px gap-24px>
27
- <div
28
- w-88px h-64px rounded-10px bg-white b=".5px gray-100"
29
- flex items-center justify-center
30
- shadow-sm
31
- >
32
- <div i-ph-wrench text-32px style="color: #DFE3E7;" />
33
- </div>
34
- <p text-20px font-semibold text-primary tracking="-.5px" leading-24px text-center>
35
- Sua equipe ainda não<br>adicionou skills externas
36
- </p>
37
- <div flex items-center gap-12px>
38
- <TelaButton
39
- variant="primary"
40
- @click="emit('update:skillModalOpen', true)"
41
- >
42
- <div i-ph-plus text-16px />
43
- <span>Adicionar Skill</span>
44
- </TelaButton>
45
- <TelaButton
46
- variant="secondary"
47
- @click="emit('connectGitHub')"
48
- >
49
- <img :src="gitHubIconUrl">
50
- <span>{{ gitHubButtonText }}</span>
51
- </TelaButton>
52
- </div>
53
- </div>
54
-
55
- <template v-else>
56
- <div flex items-center justify-between mb-24px>
57
- <div
58
- flex items-center gap-8px
59
- w-240px pl-12px
60
- bg-white b=".5px gray-200" rounded-10px
61
- shadow-sm
62
- >
63
- <div i-ph-magnifying-glass text-12px text-gray-400 />
64
- <input
65
- :value="searchQuery"
66
- type="text"
67
- placeholder="Buscar skills"
68
- text-14px text-primary placeholder:text-gray-400 h-32px
69
- bg-transparent border-none outline-none
70
- flex-1 leading-18px tracking="-.15px"
71
- @input="emit('update:searchQuery', $event.target.value)"
72
- >
73
- </div>
74
-
75
- <div flex items-center gap-8px>
76
- <TelaButton
77
- variant="secondary"
78
- @click="emit('update:skillModalOpen', true)"
79
- >
80
- <div i-ph-plus text-16px />
81
- <span>Adicionar Skill</span>
82
- </TelaButton>
83
- <TelaButton
84
- variant="secondary"
85
- @click="emit('connectGitHub')"
86
- >
87
- <img :src="gitHubIconUrl">
88
- <span>{{ gitHubButtonText }}</span>
89
- </TelaButton>
90
- </div>
91
- </div>
92
-
93
- <div max-h-400px overflow-y-auto>
94
- <TelaTable class="table-fixed" w-full>
95
- <TelaTableHeader>
96
- <TelaTableRow>
97
- <TelaTableHead class="!py-12px text-12px font-semibold text-primary leading-16px w-160px!">
98
- Skill
99
- </TelaTableHead>
100
- <TelaTableHead class="!py-12px !w-280px text-12px font-semibold text-primary leading-16px">
101
- Fonte
102
- </TelaTableHead>
103
- <TelaTableHead class="!py-12px !w-48px" />
104
- </TelaTableRow>
105
- </TelaTableHeader>
106
- <TelaTableBody>
107
- <TelaTableRow
108
- v-for="skill in filteredSkills"
109
- :key="skill.ref"
110
- hover:bg-gray-50 transition
111
- :class="{
112
- 'bg-blue-50': isPending(skill.ref)
113
- }"
114
- >
115
- <TelaTableCell>
116
- <div flex="~ col" gap-2px>
117
- <span text-14px text-gray-900 tracking="-.15px" truncate>
118
- {{ skill.name }}
119
- </span>
120
- </div>
121
- </TelaTableCell>
122
- <TelaTableCell>
123
- <div flex items-center gap-8px>
124
- <span text-12px text-tertiary truncate font-mono>
125
- {{ skill.ref }}
126
- </span>
127
- <TelaBadge v-if="!skill.isPublic">
128
- Privado
129
- </TelaBadge>
130
- </div>
131
- </TelaTableCell>
132
- <TelaTableCell class="!w-48px">
133
- <TelaDropdownMenu
134
- :items="[
135
- {
136
- label: 'Excluir',
137
- icon: 'i-ph-trash',
138
- color: 'negative',
139
- click: () => emit('removeSkill', skill.ref)
140
- }
141
- ]"
142
- align="end"
143
- >
144
- <button
145
- p-4px rounded-6px text-gray-400
146
- hover:text-gray-600 hover:bg-gray-100
147
- cursor-pointer transition
148
- >
149
- <div i-ph-dots-three text-16px />
150
- </button>
151
- </TelaDropdownMenu>
152
- </TelaTableCell>
153
- </TelaTableRow>
154
- </TelaTableBody>
155
- </TelaTable>
156
- </div>
157
- </template>
158
-
159
- <TelaModal
160
- :model-value="skillModalOpen"
161
- !w-420px
162
- !p-20px
163
- hide-header
164
- @update:model-value="(v) => {
165
- if (!v) emit('closeSkillModal');
166
- }"
167
- >
168
- <div flex="~ col" w-full>
169
- <div flex items-center justify-between mb-16px>
170
- <span text-12px font-460 leading-16px text-black-500>
171
- Adicionar Skill
172
- </span>
173
- <button
174
- p-4px rounded-8px
175
- hover:bg-gray-100
176
- transition cursor-pointer
177
- @click="emit('closeSkillModal')"
178
- >
179
- <div i-ph-x text-20px />
180
- </button>
181
- </div>
182
-
183
- <div flex="~ col" gap-8px>
184
- <label text-14px font-580 leading-16px tracking="-.15px" text-primary>
185
- Referência da Skill
186
- </label>
187
- <TelaInput
188
- :model-value="skillRefInput"
189
- type="text"
190
- size="sm"
191
- placeholder="github.com/owner/repo/tree/main/path"
192
- :disabled="discoveringSkills"
193
- @update:model-value="(v) => emit('update:skillRefInput', v)"
194
- />
195
- <p v-if="skillError" text-12px text-red-500>
196
- {{ skillError }}
197
- </p>
198
- <p v-else text-12px font-400 leading-16px text-secondary>
199
- Cole a URL do repositório ou a referência gh:owner/repo/path
200
- </p>
201
- </div>
202
-
203
- <div flex justify-end gap-12px mt-24px>
204
- <TelaButton
205
- variant="secondary"
206
- :disabled="discoveringSkills"
207
- @click="emit('closeSkillModal')"
208
- >
209
- Cancelar
210
- </TelaButton>
211
- <TelaButton
212
- variant="primary"
213
- :disabled="discoveringSkills"
214
- @click="emit('handleAddSkillAndClose')"
215
- >
216
- <div v-if="discoveringSkills" i-ph-spinner animate-spin text-14px />
217
- <span>{{ discoveringSkills ? "Buscando..." : "Adicionar" }}</span>
218
- </TelaButton>
219
- </div>
220
- </div>
221
- </TelaModal>
222
- </template>
@@ -1,32 +0,0 @@
1
- import type { ExternalSkill } from '../../../types/schemas/chat/workspace-settings.js';
2
- type __VLS_Props = {
3
- searchQuery: string;
4
- displayedSkills: readonly ExternalSkill[];
5
- filteredSkills: readonly ExternalSkill[];
6
- hasChanges: boolean;
7
- isPending: (ref: string) => boolean;
8
- skillModalOpen: boolean;
9
- skillRefInput: string;
10
- skillError: string;
11
- discoveringSkills: boolean;
12
- gitHubButtonText: string;
13
- };
14
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
15
- "update:searchQuery": (value: string) => any;
16
- "update:skillModalOpen": (value: boolean) => any;
17
- "update:skillRefInput": (value: string) => any;
18
- removeSkill: (ref: string) => any;
19
- closeSkillModal: () => any;
20
- handleAddSkillAndClose: () => any;
21
- connectGitHub: () => any;
22
- }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
23
- "onUpdate:searchQuery"?: ((value: string) => any) | undefined;
24
- "onUpdate:skillModalOpen"?: ((value: boolean) => any) | undefined;
25
- "onUpdate:skillRefInput"?: ((value: string) => any) | undefined;
26
- onRemoveSkill?: ((ref: string) => any) | undefined;
27
- onCloseSkillModal?: (() => any) | undefined;
28
- onHandleAddSkillAndClose?: (() => any) | undefined;
29
- onConnectGitHub?: (() => any) | undefined;
30
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
31
- declare const _default: typeof __VLS_export;
32
- export default _default;
@@ -1,10 +0,0 @@
1
- type __VLS_ModelProps = {
2
- 'systemMessage': string;
3
- };
4
- declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
- "update:systemMessage": (value: string) => any;
6
- }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
7
- "onUpdate:systemMessage"?: ((value: string) => any) | undefined;
8
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
- declare const _default: typeof __VLS_export;
10
- export default _default;
@@ -1,37 +0,0 @@
1
- <script setup>
2
- const localSystemMessage = defineModel("systemMessage", { type: String, ...{ required: true } });
3
- </script>
4
-
5
- <template>
6
- <div>
7
- <div mb-24px>
8
- <h2 text-16px font-semibold text-primary tracking="-.2px" leading-20px>
9
- Personalização
10
- </h2>
11
- <div h-px bg-gray-200 mt-24px />
12
- </div>
13
-
14
- <div flex="~ col" gap-32px>
15
- <div flex="~ col" gap-12px>
16
- <label text-14px font-semibold text-primary tracking="-.15px" leading-16px>
17
- Instruções personalizadas
18
- </label>
19
- <div flex="~ col" gap-4px>
20
- <textarea
21
- v-model="localSystemMessage"
22
- placeholder="Ex: &quot;Sempre forneça fontes para conclusões importantes&quot;, &quot;Mantenha um tom profissional&quot;, ou &quot;Diferencie fatos de interpretações&quot;"
23
- rows="20"
24
- w-full px-16px py-14px rounded-10px b=".5px gray-200" text-16px
25
- bg-white leading-20px tracking="-.2px"
26
- text-primary placeholder:text-tertiary
27
- focus:outline-none focus:b-gray-400
28
- resize-none
29
- />
30
- <p text-12px text-secondary leading-16px>
31
- Esta instrução será aplicada a todas as novas conversas do workspace
32
- </p>
33
- </div>
34
- </div>
35
- </div>
36
- </div>
37
- </template>
@@ -1,10 +0,0 @@
1
- type __VLS_ModelProps = {
2
- 'systemMessage': string;
3
- };
4
- declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
- "update:systemMessage": (value: string) => any;
6
- }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
7
- "onUpdate:systemMessage"?: ((value: string) => any) | undefined;
8
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
- declare const _default: typeof __VLS_export;
10
- export default _default;
@@ -1,20 +0,0 @@
1
- import type { TelaCanvas } from '../../../types/schemas/integrations/tela-api.js';
2
- type __VLS_Props = {
3
- searchQuery: string;
4
- canvas: TelaCanvas[];
5
- filteredCanvasTools: TelaCanvas[];
6
- selectedToolIds: Set<string>;
7
- allToolsSelected: boolean;
8
- getProjectName: (projectId: string) => string;
9
- };
10
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
11
- "update:searchQuery": (value: string) => any;
12
- toggleTool: (canvasId: string) => any;
13
- toggleAll: (selected: boolean | "indeterminate") => any;
14
- }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
15
- "onUpdate:searchQuery"?: ((value: string) => any) | undefined;
16
- onToggleTool?: ((canvasId: string) => any) | undefined;
17
- onToggleAll?: ((selected: boolean | "indeterminate") => any) | undefined;
18
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
- declare const _default: typeof __VLS_export;
20
- export default _default;
@@ -1,146 +0,0 @@
1
- <script setup>
2
- import { formatAbsoluteDate } from "../../../shared/date-formatting";
3
- defineProps({
4
- searchQuery: { type: String, required: true },
5
- canvas: { type: Array, required: true },
6
- filteredCanvasTools: { type: Array, required: true },
7
- selectedToolIds: { type: Set, required: true },
8
- allToolsSelected: { type: Boolean, required: true },
9
- getProjectName: { type: Function, required: true }
10
- });
11
- const emit = defineEmits(["update:searchQuery", "toggleTool", "toggleAll"]);
12
- </script>
13
-
14
- <template>
15
- <div mb-24px>
16
- <h2 text-16px font-semibold text-primary tracking="-.2px" leading-20px>
17
- Skills Tela
18
- </h2>
19
- <div h-px bg-gray-200 mt-24px />
20
- </div>
21
-
22
- <div v-if="canvas.length === 0" flex="~ col" items-center justify-center h-400px gap-24px>
23
- <div
24
- w-88px h-64px rounded-10px bg-white b=".5px gray-100"
25
- flex items-center justify-center
26
- shadow-sm
27
- >
28
- <div i-ph-shapes text-32px style="color: #DFE3E7;" />
29
- </div>
30
- <div flex="~ col" gap-8px items-center text-center>
31
- <p text-20px font-semibold text-primary tracking="-.5px" leading-24px max-w-239px>
32
- Sua equipe ainda não criou automações
33
- </p>
34
- <p text-14px text-secondary tracking="-.15px" leading-18px max-w-264px>
35
- Acesse o Tela para criar canvas e workflows
36
- </p>
37
- </div>
38
- </div>
39
-
40
- <template v-else>
41
- <div
42
- flex items-center gap-8px
43
- w-240px pl-12px pr-8px py-4px mb-24px
44
- bg-white b=".5px gray-200" rounded-10px
45
- shadow-sm
46
- >
47
- <div i-ph-magnifying-glass text-12px text-gray-400 />
48
- <input
49
- :value="searchQuery"
50
- type="text"
51
- placeholder="Buscar"
52
- text-14px text-primary placeholder:text-gray-400
53
- bg-transparent border-none outline-none
54
- flex-1 leading-18px tracking="-.15px"
55
- @input="emit('update:searchQuery', $event.target.value)"
56
- >
57
- </div>
58
-
59
- <div max-h-400px overflow-y-auto>
60
- <TelaTable class="table-fixed" w-full>
61
- <TelaTableHeader>
62
- <TelaTableRow>
63
- <TelaTableHead class="!p-0 !w-48px !min-w-48px">
64
- <div flex items-center justify-center w-48px h-full>
65
- <TelaCheckbox
66
- :model-value="allToolsSelected"
67
- @update:model-value="emit('toggleAll', $event)"
68
- />
69
- </div>
70
- </TelaTableHead>
71
- <TelaTableHead class="!py-12px !w-287px text-12px font-semibold text-primary leading-16px">
72
- Nome
73
- </TelaTableHead>
74
- <TelaTableHead class="!py-12px !w-125px !min-w-125px text-12px font-semibold text-primary leading-16px">
75
- Projeto
76
- </TelaTableHead>
77
- <TelaTableHead class="!py-12px !w-125px !min-w-125px text-12px font-semibold text-primary leading-16px">
78
- Última edição
79
- </TelaTableHead>
80
- </TelaTableRow>
81
- </TelaTableHeader>
82
- <TelaTableBody>
83
- <TelaTableRow
84
- v-for="item in filteredCanvasTools"
85
- :key="item.id"
86
- hover:bg-gray-50 cursor-pointer transition
87
- :class="{ 'opacity-50': !item.promotedVersion }"
88
- @click="item.promotedVersion && emit('toggleTool', item.id)"
89
- >
90
- <TelaTableCell class="!p-0 !w-48px !min-w-48px">
91
- <div flex items-center justify-center w-48px h-full>
92
- <TelaCheckbox
93
- :model-value="selectedToolIds.has(item.id)"
94
- :disabled="!item.promotedVersion"
95
- @click.stop
96
- @update:model-value="emit('toggleTool', item.id)"
97
- />
98
- </div>
99
- </TelaTableCell>
100
- <TelaTableCell class="!w-287px">
101
- <div flex items-center gap-8px>
102
- <span text-14px text-gray-900 leading-18px tracking="-.15px" truncate>
103
- {{ item.title }}
104
- </span>
105
- <div
106
- b=".5px gray-200" rounded-5px px-5px
107
- flex items-center justify-center shrink-0
108
- >
109
- <span text-9px font-semibold uppercase tracking-wide style="color: #9DA2AA;">
110
- {{ item.promotedVersion?.workflowSpec ? "Workflow" : "Canvas" }}
111
- </span>
112
- </div>
113
- </div>
114
- </TelaTableCell>
115
- <TelaTableCell class="!w-125px !min-w-125px">
116
- <div
117
- b=".5px gray-100" rounded-8px px-8px py-4px
118
- flex items-center gap-5px w-fit
119
- >
120
- <div i-ph-folder text-14px style="color: #767E88;" />
121
- <span text-12px font-semibold style="color: #767E88;">
122
- {{ getProjectName(item.projectId) }}
123
- </span>
124
- </div>
125
- </TelaTableCell>
126
- <TelaTableCell class="!w-125px !min-w-125px">
127
- <span text-12px text-tertiary leading-16px>
128
- {{ formatAbsoluteDate(item.updatedAt) }}
129
- </span>
130
- </TelaTableCell>
131
- </TelaTableRow>
132
-
133
- <TelaTableRow v-if="filteredCanvasTools.length === 0 && canvas.length > 0">
134
- <TelaTableCell colspan="4">
135
- <TelaTableEmpty :colspan="4">
136
- <div text-center py-48px text-14px text-tertiary>
137
- Nenhum resultado encontrado
138
- </div>
139
- </TelaTableEmpty>
140
- </TelaTableCell>
141
- </TelaTableRow>
142
- </TelaTableBody>
143
- </TelaTable>
144
- </div>
145
- </template>
146
- </template>
@@ -1,20 +0,0 @@
1
- import type { TelaCanvas } from '../../../types/schemas/integrations/tela-api.js';
2
- type __VLS_Props = {
3
- searchQuery: string;
4
- canvas: TelaCanvas[];
5
- filteredCanvasTools: TelaCanvas[];
6
- selectedToolIds: Set<string>;
7
- allToolsSelected: boolean;
8
- getProjectName: (projectId: string) => string;
9
- };
10
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
11
- "update:searchQuery": (value: string) => any;
12
- toggleTool: (canvasId: string) => any;
13
- toggleAll: (selected: boolean | "indeterminate") => any;
14
- }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
15
- "onUpdate:searchQuery"?: ((value: string) => any) | undefined;
16
- onToggleTool?: ((canvasId: string) => any) | undefined;
17
- onToggleAll?: ((selected: boolean | "indeterminate") => any) | undefined;
18
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
- declare const _default: typeof __VLS_export;
20
- export default _default;
@@ -1,19 +0,0 @@
1
- import type { ContextFile } from '../../types/schemas/chat/files.js';
2
- export declare const MAX_FILES = 10;
3
- export declare const MAX_FILE_SIZE: number;
4
- export declare function useWorkspaceContextFiles(searchQuery: Ref<string>, currentContextFiles: Ref<readonly ContextFile[] | null | undefined> | ComputedRef<readonly ContextFile[] | null | undefined>): {
5
- pendingFiles: any;
6
- filteredContextFiles: any;
7
- filteredPendingFiles: any;
8
- currentFileCount: any;
9
- hasChanges: any;
10
- maxFiles: number;
11
- handleFileSelect: (event: Event) => void;
12
- removePendingFile: (file: File) => void;
13
- removeContextFile: (url: string) => void;
14
- getFileType: (fileName: string) => string;
15
- initialize: () => void;
16
- getPendingFiles: () => File[];
17
- getKeptContextFiles: () => ContextFile[];
18
- clearPendingFiles: () => void;
19
- };
@@ -1,83 +0,0 @@
1
- export const MAX_FILES = 10;
2
- export const MAX_FILE_SIZE = 10 * 1024 * 1024;
3
- export function useWorkspaceContextFiles(searchQuery, currentContextFiles) {
4
- const pendingFiles = ref([]);
5
- const removedUrls = ref(/* @__PURE__ */ new Set());
6
- const effectiveContextFiles = computed(
7
- () => (currentContextFiles.value ?? []).filter((file) => !removedUrls.value.has(file.url))
8
- );
9
- const filteredContextFiles = computed(() => {
10
- if (!searchQuery.value.trim())
11
- return effectiveContextFiles.value;
12
- const query = searchQuery.value.toLowerCase();
13
- return effectiveContextFiles.value.filter(
14
- (file) => file.name.toLowerCase().includes(query)
15
- );
16
- });
17
- const filteredPendingFiles = computed(() => {
18
- if (!searchQuery.value.trim())
19
- return pendingFiles.value;
20
- const query = searchQuery.value.toLowerCase();
21
- return pendingFiles.value.filter(
22
- (file) => file.name.toLowerCase().includes(query)
23
- );
24
- });
25
- const currentFileCount = computed(
26
- () => effectiveContextFiles.value.length + pendingFiles.value.length
27
- );
28
- const hasChanges = computed(
29
- () => pendingFiles.value.length > 0 || removedUrls.value.size > 0
30
- );
31
- function handleFileSelect(event) {
32
- const target = event.target;
33
- if (!target.files)
34
- return;
35
- const newFiles = Array.from(target.files).filter((file) => file.size <= MAX_FILE_SIZE);
36
- const availableSlots = MAX_FILES - currentFileCount.value;
37
- pendingFiles.value = [...pendingFiles.value, ...newFiles.slice(0, availableSlots)];
38
- target.value = "";
39
- }
40
- function removePendingFile(file) {
41
- const idx = pendingFiles.value.indexOf(file);
42
- if (idx !== -1)
43
- pendingFiles.value = pendingFiles.value.filter((_, i) => i !== idx);
44
- }
45
- function removeContextFile(url) {
46
- const next = new Set(removedUrls.value);
47
- next.add(url);
48
- removedUrls.value = next;
49
- }
50
- function getFileType(fileName) {
51
- return fileName.split(".").pop()?.toUpperCase() ?? "";
52
- }
53
- function initialize() {
54
- pendingFiles.value = [];
55
- removedUrls.value = /* @__PURE__ */ new Set();
56
- }
57
- function getPendingFiles() {
58
- return [...pendingFiles.value];
59
- }
60
- function getKeptContextFiles() {
61
- return [...effectiveContextFiles.value];
62
- }
63
- function clearPendingFiles() {
64
- pendingFiles.value = [];
65
- removedUrls.value = /* @__PURE__ */ new Set();
66
- }
67
- return {
68
- pendingFiles: readonly(pendingFiles),
69
- filteredContextFiles,
70
- filteredPendingFiles,
71
- currentFileCount,
72
- hasChanges,
73
- maxFiles: MAX_FILES,
74
- handleFileSelect,
75
- removePendingFile,
76
- removeContextFile,
77
- getFileType,
78
- initialize,
79
- getPendingFiles,
80
- getKeptContextFiles,
81
- clearPendingFiles
82
- };
83
- }
@@ -1,22 +0,0 @@
1
- import type { ExternalSkill } from '../../types/schemas/chat/workspace-settings.js';
2
- export declare function useWorkspaceExternalSkills(currentExternalSkills: Ref<readonly ExternalSkill[] | null | undefined> | ComputedRef<readonly ExternalSkill[] | null | undefined>, searchQuery?: Ref<string>): {
3
- displayedSkills: any;
4
- filteredSkills: any;
5
- hasChanges: any;
6
- isPending: (ref: string) => boolean;
7
- addSkill: (skill: ExternalSkill) => void;
8
- removeSkill: (ref: string) => void;
9
- buildExternalSkills: () => ExternalSkill[] | null;
10
- initialize: () => void;
11
- skillModalOpen: any;
12
- skillRefInput: any;
13
- skillError: any;
14
- discoveringSkills: any;
15
- handleAddSkill: () => Promise<void>;
16
- closeSkillModal: () => void;
17
- handleAddSkillAndClose: () => Promise<void>;
18
- getGitHubButtonText: () => string;
19
- skillsConnection: any;
20
- fetchGitHubConnection: () => Promise<void>;
21
- connectGitHub: () => void;
22
- };