@green-on-grey/ui-kit 1.0.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/locales.js CHANGED
@@ -43,7 +43,13 @@ var t = {
43
43
  review: "Check the transcript before sending",
44
44
  notRecognized: "The speech was not recognized",
45
45
  micDenied: "No access to the microphone",
46
- unsupported: "Voice input is not supported in this browser"
46
+ unsupported: "Voice input is not supported in this browser",
47
+ start: "Record a voice message",
48
+ done: "Stop",
49
+ recognizing: "Recognizing…",
50
+ recordingNow: "Recording",
51
+ failed: "The voice message could not be recognized",
52
+ retry: "Retry"
47
53
  },
48
54
  confirm: {
49
55
  title: "Confirm the action",
@@ -54,7 +60,24 @@ var t = {
54
60
  wait: {
55
61
  starting: "The agent is starting…",
56
62
  queued: "{count, plural, =0 {In the queue · you are next} one {In the queue · # ahead of you} other {In the queue · # ahead of you}}"
57
- }
63
+ },
64
+ palette: {
65
+ title: "Commands and skills",
66
+ commands: "Commands",
67
+ skills: "Skills",
68
+ noSkills: "No skills are granted to you",
69
+ empty: "Nothing found"
70
+ },
71
+ unknownCommand: "Unknown command {name}",
72
+ sendAsText: "Send as text",
73
+ skillPlaceholder: "What to do with the skill?",
74
+ context: {
75
+ meter: "Context: {used} of {total} tokens ({pct}%)",
76
+ full: "Answers get more expensive and the agent may get confused.",
77
+ compact: "Compact",
78
+ reset: "Start over"
79
+ },
80
+ event: { details: "Summary" }
58
81
  }
59
82
  },
60
83
  ru: {
@@ -98,7 +121,13 @@ var t = {
98
121
  review: "Проверьте расшифровку перед отправкой",
99
122
  notRecognized: "Речь не распознана",
100
123
  micDenied: "Нет доступа к микрофону",
101
- unsupported: "Голосовой ввод не поддерживается этим браузером"
124
+ unsupported: "Голосовой ввод не поддерживается этим браузером",
125
+ start: "Записать голосом",
126
+ done: "Стоп",
127
+ recognizing: "Распознаём…",
128
+ recordingNow: "Запись",
129
+ failed: "Не удалось распознать голосовое сообщение",
130
+ retry: "Повторить"
102
131
  },
103
132
  confirm: {
104
133
  title: "Подтвердите действие",
@@ -109,7 +138,24 @@ var t = {
109
138
  wait: {
110
139
  starting: "Агент запускается…",
111
140
  queued: "{count, plural, =0 {В очереди · вы следующий} other {В очереди · перед вами #}}"
112
- }
141
+ },
142
+ palette: {
143
+ title: "Команды и скиллы",
144
+ commands: "Команды",
145
+ skills: "Скиллы",
146
+ noSkills: "Вам не выдан ни один скилл",
147
+ empty: "Ничего не найдено"
148
+ },
149
+ unknownCommand: "Неизвестная команда {name}",
150
+ sendAsText: "Отправить как текст",
151
+ skillPlaceholder: "Что сделать по скиллу?",
152
+ context: {
153
+ meter: "Контекст: {used} из {total} токенов ({pct} %)",
154
+ full: "Ответы дорожают, агент может путаться.",
155
+ compact: "Сжать",
156
+ reset: "Начать заново"
157
+ },
158
+ event: { details: "Изложение" }
113
159
  }
114
160
  },
115
161
  de: {
@@ -153,7 +199,13 @@ var t = {
153
199
  review: "Prüfen Sie die Transkription vor dem Senden",
154
200
  notRecognized: "Die Sprache wurde nicht erkannt",
155
201
  micDenied: "Kein Zugriff auf das Mikrofon",
156
- unsupported: "Spracheingabe wird von diesem Browser nicht unterstützt"
202
+ unsupported: "Spracheingabe wird von diesem Browser nicht unterstützt",
203
+ start: "Sprachnachricht aufnehmen",
204
+ done: "Stopp",
205
+ recognizing: "Wird erkannt…",
206
+ recordingNow: "Aufnahme",
207
+ failed: "Die Sprachnachricht konnte nicht erkannt werden",
208
+ retry: "Wiederholen"
157
209
  },
158
210
  confirm: {
159
211
  title: "Aktion bestätigen",
@@ -164,7 +216,24 @@ var t = {
164
216
  wait: {
165
217
  starting: "Der Agent startet…",
166
218
  queued: "{count, plural, =0 {In der Warteschlange · Sie sind als Nächstes dran} other {In der Warteschlange · # vor Ihnen}}"
167
- }
219
+ },
220
+ palette: {
221
+ title: "Befehle und Skills",
222
+ commands: "Befehle",
223
+ skills: "Skills",
224
+ noSkills: "Ihnen ist kein Skill freigegeben",
225
+ empty: "Nichts gefunden"
226
+ },
227
+ unknownCommand: "Unbekannter Befehl {name}",
228
+ sendAsText: "Als Text senden",
229
+ skillPlaceholder: "Was soll mit dem Skill getan werden?",
230
+ context: {
231
+ meter: "Kontext: {used} von {total} Tokens ({pct} %)",
232
+ full: "Antworten werden teurer, der Agent kann durcheinanderkommen.",
233
+ compact: "Komprimieren",
234
+ reset: "Neu beginnen"
235
+ },
236
+ event: { details: "Zusammenfassung" }
168
237
  }
169
238
  },
170
239
  es: {
@@ -208,7 +277,13 @@ var t = {
208
277
  review: "Revise la transcripción antes de enviar",
209
278
  notRecognized: "No se reconoció la voz",
210
279
  micDenied: "Sin acceso al micrófono",
211
- unsupported: "Este navegador no admite la entrada de voz"
280
+ unsupported: "Este navegador no admite la entrada de voz",
281
+ start: "Grabar un mensaje de voz",
282
+ done: "Detener",
283
+ recognizing: "Reconociendo…",
284
+ recordingNow: "Grabando",
285
+ failed: "No se pudo reconocer el mensaje de voz",
286
+ retry: "Reintentar"
212
287
  },
213
288
  confirm: {
214
289
  title: "Confirme la acción",
@@ -219,7 +294,24 @@ var t = {
219
294
  wait: {
220
295
  starting: "El agente se está iniciando…",
221
296
  queued: "{count, plural, =0 {En cola · usted es el siguiente} other {En cola · # por delante}}"
222
- }
297
+ },
298
+ palette: {
299
+ title: "Comandos y skills",
300
+ commands: "Comandos",
301
+ skills: "Skills",
302
+ noSkills: "No tiene skills disponibles",
303
+ empty: "No se encontró nada"
304
+ },
305
+ unknownCommand: "Comando desconocido {name}",
306
+ sendAsText: "Enviar como texto",
307
+ skillPlaceholder: "¿Qué hacer con el skill?",
308
+ context: {
309
+ meter: "Contexto: {used} de {total} tokens ({pct} %)",
310
+ full: "Las respuestas se encarecen y el agente puede confundirse.",
311
+ compact: "Compactar",
312
+ reset: "Empezar de nuevo"
313
+ },
314
+ event: { details: "Resumen" }
223
315
  }
224
316
  },
225
317
  zh: {
@@ -263,7 +355,13 @@ var t = {
263
355
  review: "发送前请检查转写文本",
264
356
  notRecognized: "未能识别语音",
265
357
  micDenied: "无法访问麦克风",
266
- unsupported: "此浏览器不支持语音输入"
358
+ unsupported: "此浏览器不支持语音输入",
359
+ start: "录制语音",
360
+ done: "停止",
361
+ recognizing: "正在识别…",
362
+ recordingNow: "录音中",
363
+ failed: "无法识别语音消息",
364
+ retry: "重试"
267
365
  },
268
366
  confirm: {
269
367
  title: "确认操作",
@@ -274,7 +372,24 @@ var t = {
274
372
  wait: {
275
373
  starting: "代理正在启动…",
276
374
  queued: "{count, plural, =0 {排队中 · 您是下一位} other {排队中 · 前面还有 # 位}}"
277
- }
375
+ },
376
+ palette: {
377
+ title: "命令和技能",
378
+ commands: "命令",
379
+ skills: "技能",
380
+ noSkills: "您没有可用的技能",
381
+ empty: "未找到"
382
+ },
383
+ unknownCommand: "未知命令 {name}",
384
+ sendAsText: "作为文本发送",
385
+ skillPlaceholder: "用这个技能做什么?",
386
+ context: {
387
+ meter: "上下文:{used} / {total} 个令牌({pct}%)",
388
+ full: "回答变得更贵,代理可能会混淆。",
389
+ compact: "压缩",
390
+ reset: "重新开始"
391
+ },
392
+ event: { details: "摘要" }
278
393
  }
279
394
  }
280
395
  };
@@ -1 +1 @@
1
- {"version":3,"file":"locales.js","names":["loading","cancel","create","close","remove","agentName","topbar","chat","loading","cancel","create","close","remove","agentName","topbar","chat","loading","cancel","create","close","remove","agentName","topbar","chat","loading","cancel","create","close","remove","agentName","topbar","chat","UIKIT_NS","resources","\"delete\"","\"sections\"","\"profile\"","\"title\"","\"conversations\"","\"conversation\"","\"topics\"","\"archive\"","\"noTopics\"","\"newTopic\"","\"topicTitle\"","\"topicHint\"","\"loadOlder\"","\"emptyTitle\"","\"placeholder\"","\"send\"","\"attach\"","\"typing\"","\"moreSteps\"","\"hideSteps\"","\"unread\"","\"retry\"","\"tooLarge\"","\"stop\"","\"voice\"","\"hold\"","\"recording\"","\"review\"","\"notRecognized\"","\"micDenied\"","\"unsupported\"","\"confirm\"","\"text\"","\"approve\"","\"reject\"","\"wait\"","\"starting\"","\"queued\""],"sources":["../src/locales/en.json","../src/locales/ru.json","../src/locales/de.json","../src/locales/es.json","../src/locales/zh.json","../src/locales/index.ts"],"sourcesContent":["{\n \"loading\": \"Loading…\",\n \"cancel\": \"Cancel\",\n \"create\": \"Create\",\n \"close\": \"Close\",\n \"delete\": \"Delete\",\n \"remove\": \"Remove\",\n \"agentName\": \"Agent name\",\n \"topbar\": {\n \"sections\": \"Sections\",\n \"profile\": \"Profile\"\n },\n \"chat\": {\n \"title\": \"Chat\",\n \"conversations\": \"Conversations\",\n \"conversation\": \"Conversation\",\n \"topics\": \"Topics\",\n \"archive\": \"Archive\",\n \"noTopics\": \"No topics yet\",\n \"newTopic\": \"New topic\",\n \"topicTitle\": \"Topic\",\n \"topicHint\": \"A topic has its own history and the same memory and space.\",\n \"loadOlder\": \"Earlier messages\",\n \"emptyTitle\": \"Hi, I am {name}\",\n \"placeholder\": \"Message {name}…\",\n \"send\": \"Send\",\n \"attach\": \"Attach files\",\n \"typing\": \"The agent is typing\",\n \"moreSteps\": \"{count, plural, one {# more step} other {# more steps}}\",\n \"hideSteps\": \"Hide steps\",\n \"unread\": \"{count, plural, one {# unread answer} other {# unread answers}}\",\n \"retry\": \"Retry\",\n \"tooLarge\": \"The file is too large.\",\n \"stop\": \"Stop\",\n \"voice\": {\n \"hold\": \"Hold to record\",\n \"stop\": \"Stop recording\",\n \"recording\": \"Recording… {seconds} s\",\n \"review\": \"Check the transcript before sending\",\n \"notRecognized\": \"The speech was not recognized\",\n \"micDenied\": \"No access to the microphone\",\n \"unsupported\": \"Voice input is not supported in this browser\"\n },\n \"confirm\": {\n \"title\": \"Confirm the action\",\n \"text\": \"The agent wants to perform: {action}\",\n \"approve\": \"Execute\",\n \"reject\": \"Reject\"\n },\n \"wait\": {\n \"starting\": \"The agent is starting…\",\n \"queued\": \"{count, plural, =0 {In the queue · you are next} one {In the queue · # ahead of you} other {In the queue · # ahead of you}}\"\n }\n }\n}\n","{\n \"loading\": \"Загрузка…\",\n \"cancel\": \"Отмена\",\n \"create\": \"Создать\",\n \"close\": \"Закрыть\",\n \"delete\": \"Удалить\",\n \"remove\": \"Убрать\",\n \"agentName\": \"Имя агента\",\n \"topbar\": {\n \"sections\": \"Разделы\",\n \"profile\": \"Профиль\"\n },\n \"chat\": {\n \"title\": \"Чат\",\n \"conversations\": \"Разговоры\",\n \"conversation\": \"Разговор\",\n \"topics\": \"Темы\",\n \"archive\": \"Архив\",\n \"noTopics\": \"Тем пока нет\",\n \"newTopic\": \"Новая тема\",\n \"topicTitle\": \"Тема\",\n \"topicHint\": \"У темы своя история, а память и пространство — те же.\",\n \"loadOlder\": \"Более ранние сообщения\",\n \"emptyTitle\": \"Привет, я {name}\",\n \"placeholder\": \"Сообщение для {name}…\",\n \"send\": \"Отправить\",\n \"attach\": \"Прикрепить файлы\",\n \"typing\": \"Агент печатает\",\n \"moreSteps\": \"{count, plural, one {ещё # шаг} few {ещё # шага} many {ещё # шагов} other {ещё # шага}}\",\n \"hideSteps\": \"Скрыть шаги\",\n \"unread\": \"{count, plural, one {# непрочитанный ответ} few {# непрочитанных ответа} many {# непрочитанных ответов} other {# непрочитанных ответа}}\",\n \"retry\": \"Повторить\",\n \"tooLarge\": \"Файл слишком большой.\",\n \"stop\": \"Остановить\",\n \"voice\": {\n \"hold\": \"Удерживайте для записи\",\n \"stop\": \"Остановить запись\",\n \"recording\": \"Запись… {seconds} с\",\n \"review\": \"Проверьте расшифровку перед отправкой\",\n \"notRecognized\": \"Речь не распознана\",\n \"micDenied\": \"Нет доступа к микрофону\",\n \"unsupported\": \"Голосовой ввод не поддерживается этим браузером\"\n },\n \"confirm\": {\n \"title\": \"Подтвердите действие\",\n \"text\": \"Агент хочет выполнить: {action}\",\n \"approve\": \"Выполнить\",\n \"reject\": \"Отклонить\"\n },\n \"wait\": {\n \"starting\": \"Агент запускается…\",\n \"queued\": \"{count, plural, =0 {В очереди · вы следующий} other {В очереди · перед вами #}}\"\n }\n }\n}\n","{\n \"loading\": \"Wird geladen…\",\n \"cancel\": \"Abbrechen\",\n \"create\": \"Erstellen\",\n \"close\": \"Schließen\",\n \"delete\": \"Löschen\",\n \"remove\": \"Entfernen\",\n \"agentName\": \"Name des Agenten\",\n \"topbar\": {\n \"sections\": \"Bereiche\",\n \"profile\": \"Profil\"\n },\n \"chat\": {\n \"title\": \"Chat\",\n \"conversations\": \"Gespräche\",\n \"conversation\": \"Gespräch\",\n \"topics\": \"Themen\",\n \"archive\": \"Archiv\",\n \"noTopics\": \"Noch keine Themen\",\n \"newTopic\": \"Neues Thema\",\n \"topicTitle\": \"Thema\",\n \"topicHint\": \"Ein Thema hat einen eigenen Verlauf, aber dasselbe Gedächtnis und denselben Arbeitsbereich.\",\n \"loadOlder\": \"Frühere Nachrichten\",\n \"emptyTitle\": \"Hallo, ich bin {name}\",\n \"placeholder\": \"Nachricht an {name}…\",\n \"send\": \"Senden\",\n \"attach\": \"Dateien anhängen\",\n \"typing\": \"Der Agent schreibt\",\n \"moreSteps\": \"{count, plural, one {# weiterer Schritt} other {# weitere Schritte}}\",\n \"hideSteps\": \"Schritte ausblenden\",\n \"unread\": \"{count, plural, one {# ungelesene Antwort} other {# ungelesene Antworten}}\",\n \"retry\": \"Wiederholen\",\n \"tooLarge\": \"Die Datei ist zu groß.\",\n \"stop\": \"Stoppen\",\n \"voice\": {\n \"hold\": \"Zum Aufnehmen gedrückt halten\",\n \"stop\": \"Aufnahme beenden\",\n \"recording\": \"Aufnahme… {seconds} s\",\n \"review\": \"Prüfen Sie die Transkription vor dem Senden\",\n \"notRecognized\": \"Die Sprache wurde nicht erkannt\",\n \"micDenied\": \"Kein Zugriff auf das Mikrofon\",\n \"unsupported\": \"Spracheingabe wird von diesem Browser nicht unterstützt\"\n },\n \"confirm\": {\n \"title\": \"Aktion bestätigen\",\n \"text\": \"Der Agent möchte ausführen: {action}\",\n \"approve\": \"Ausführen\",\n \"reject\": \"Ablehnen\"\n },\n \"wait\": {\n \"starting\": \"Der Agent startet…\",\n \"queued\": \"{count, plural, =0 {In der Warteschlange · Sie sind als Nächstes dran} other {In der Warteschlange · # vor Ihnen}}\"\n }\n }\n}\n","{\n \"loading\": \"Cargando…\",\n \"cancel\": \"Cancelar\",\n \"create\": \"Crear\",\n \"close\": \"Cerrar\",\n \"delete\": \"Eliminar\",\n \"remove\": \"Quitar\",\n \"agentName\": \"Nombre del agente\",\n \"topbar\": {\n \"sections\": \"Secciones\",\n \"profile\": \"Perfil\"\n },\n \"chat\": {\n \"title\": \"Chat\",\n \"conversations\": \"Conversaciones\",\n \"conversation\": \"Conversación\",\n \"topics\": \"Temas\",\n \"archive\": \"Archivo\",\n \"noTopics\": \"Aún no hay temas\",\n \"newTopic\": \"Nuevo tema\",\n \"topicTitle\": \"Tema\",\n \"topicHint\": \"Un tema tiene su propio historial y la misma memoria y espacio.\",\n \"loadOlder\": \"Mensajes anteriores\",\n \"emptyTitle\": \"Hola, soy {name}\",\n \"placeholder\": \"Mensaje para {name}…\",\n \"send\": \"Enviar\",\n \"attach\": \"Adjuntar archivos\",\n \"typing\": \"El agente está escribiendo\",\n \"moreSteps\": \"{count, plural, one {# paso más} other {# pasos más}}\",\n \"hideSteps\": \"Ocultar pasos\",\n \"unread\": \"{count, plural, one {# respuesta sin leer} other {# respuestas sin leer}}\",\n \"retry\": \"Reintentar\",\n \"tooLarge\": \"El archivo es demasiado grande.\",\n \"stop\": \"Detener\",\n \"voice\": {\n \"hold\": \"Mantenga pulsado para grabar\",\n \"stop\": \"Detener la grabación\",\n \"recording\": \"Grabando… {seconds} s\",\n \"review\": \"Revise la transcripción antes de enviar\",\n \"notRecognized\": \"No se reconoció la voz\",\n \"micDenied\": \"Sin acceso al micrófono\",\n \"unsupported\": \"Este navegador no admite la entrada de voz\"\n },\n \"confirm\": {\n \"title\": \"Confirme la acción\",\n \"text\": \"El agente quiere ejecutar: {action}\",\n \"approve\": \"Ejecutar\",\n \"reject\": \"Rechazar\"\n },\n \"wait\": {\n \"starting\": \"El agente se está iniciando…\",\n \"queued\": \"{count, plural, =0 {En cola · usted es el siguiente} other {En cola · # por delante}}\"\n }\n }\n}\n","{\n \"loading\": \"加载中…\",\n \"cancel\": \"取消\",\n \"create\": \"创建\",\n \"close\": \"关闭\",\n \"delete\": \"删除\",\n \"remove\": \"移除\",\n \"agentName\": \"智能体名称\",\n \"topbar\": {\n \"sections\": \"栏目\",\n \"profile\": \"个人资料\"\n },\n \"chat\": {\n \"title\": \"聊天\",\n \"conversations\": \"对话\",\n \"conversation\": \"对话\",\n \"topics\": \"话题\",\n \"archive\": \"归档\",\n \"noTopics\": \"暂无话题\",\n \"newTopic\": \"新话题\",\n \"topicTitle\": \"话题\",\n \"topicHint\": \"话题有独立的历史记录,记忆和空间与主对话相同。\",\n \"loadOlder\": \"更早的消息\",\n \"emptyTitle\": \"你好,我是 {name}\",\n \"placeholder\": \"给 {name} 发消息…\",\n \"send\": \"发送\",\n \"attach\": \"附加文件\",\n \"typing\": \"智能体正在输入\",\n \"moreSteps\": \"{count, plural, other {另外 # 个步骤}}\",\n \"hideSteps\": \"隐藏步骤\",\n \"unread\": \"{count} 条未读回复\",\n \"retry\": \"重试\",\n \"tooLarge\": \"文件太大。\",\n \"stop\": \"停止\",\n \"voice\": {\n \"hold\": \"按住录音\",\n \"stop\": \"停止录音\",\n \"recording\": \"录音中… {seconds} 秒\",\n \"review\": \"发送前请检查转写文本\",\n \"notRecognized\": \"未能识别语音\",\n \"micDenied\": \"无法访问麦克风\",\n \"unsupported\": \"此浏览器不支持语音输入\"\n },\n \"confirm\": {\n \"title\": \"确认操作\",\n \"text\": \"代理想要执行:{action}\",\n \"approve\": \"执行\",\n \"reject\": \"拒绝\"\n },\n \"wait\": {\n \"starting\": \"代理正在启动…\",\n \"queued\": \"{count, plural, =0 {排队中 · 您是下一位} other {排队中 · 前面还有 # 位}}\"\n }\n }\n}\n","import en from \"./en.json\";\nimport ru from \"./ru.json\";\nimport de from \"./de.json\";\nimport es from \"./es.json\";\nimport zh from \"./zh.json\";\n\n/** Strings of the components in the five languages of the products. A product adds\n * them to its i18next instance under the namespace `uikit`. */\nexport const resources = { en, ru, de, es, zh };\nexport type KitLanguage = keyof typeof resources;\nexport { UIKIT_NS } from \"../i18n\";\n"],"mappings":";;;AKQA,IAAaiC,IAAY;CAAE,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;AAAG"}
1
+ {"version":3,"file":"locales.js","names":["loading","cancel","create","close","remove","agentName","topbar","chat","loading","cancel","create","close","remove","agentName","topbar","chat","loading","cancel","create","close","remove","agentName","topbar","chat","loading","cancel","create","close","remove","agentName","topbar","chat","UIKIT_NS","resources","\"delete\"","\"sections\"","\"profile\"","\"title\"","\"conversations\"","\"conversation\"","\"topics\"","\"archive\"","\"noTopics\"","\"newTopic\"","\"topicTitle\"","\"topicHint\"","\"loadOlder\"","\"emptyTitle\"","\"placeholder\"","\"send\"","\"attach\"","\"typing\"","\"moreSteps\"","\"hideSteps\"","\"unread\"","\"retry\"","\"tooLarge\"","\"stop\"","\"voice\"","\"hold\"","\"recording\"","\"review\"","\"notRecognized\"","\"micDenied\"","\"unsupported\"","\"start\"","\"done\"","\"recognizing\"","\"recordingNow\"","\"failed\"","\"confirm\"","\"text\"","\"approve\"","\"reject\"","\"wait\"","\"starting\"","\"queued\"","\"palette\"","\"commands\"","\"skills\"","\"noSkills\"","\"empty\"","\"unknownCommand\"","\"sendAsText\"","\"skillPlaceholder\"","\"context\"","\"meter\"","\"full\"","\"compact\"","\"reset\"","\"event\"","\"details\""],"sources":["../src/locales/en.json","../src/locales/ru.json","../src/locales/de.json","../src/locales/es.json","../src/locales/zh.json","../src/locales/index.ts"],"sourcesContent":["{\n \"loading\": \"Loading…\",\n \"cancel\": \"Cancel\",\n \"create\": \"Create\",\n \"close\": \"Close\",\n \"delete\": \"Delete\",\n \"remove\": \"Remove\",\n \"agentName\": \"Agent name\",\n \"topbar\": {\n \"sections\": \"Sections\",\n \"profile\": \"Profile\"\n },\n \"chat\": {\n \"title\": \"Chat\",\n \"conversations\": \"Conversations\",\n \"conversation\": \"Conversation\",\n \"topics\": \"Topics\",\n \"archive\": \"Archive\",\n \"noTopics\": \"No topics yet\",\n \"newTopic\": \"New topic\",\n \"topicTitle\": \"Topic\",\n \"topicHint\": \"A topic has its own history and the same memory and space.\",\n \"loadOlder\": \"Earlier messages\",\n \"emptyTitle\": \"Hi, I am {name}\",\n \"placeholder\": \"Message {name}…\",\n \"send\": \"Send\",\n \"attach\": \"Attach files\",\n \"typing\": \"The agent is typing\",\n \"moreSteps\": \"{count, plural, one {# more step} other {# more steps}}\",\n \"hideSteps\": \"Hide steps\",\n \"unread\": \"{count, plural, one {# unread answer} other {# unread answers}}\",\n \"retry\": \"Retry\",\n \"tooLarge\": \"The file is too large.\",\n \"stop\": \"Stop\",\n \"voice\": {\n \"hold\": \"Hold to record\",\n \"stop\": \"Stop recording\",\n \"recording\": \"Recording… {seconds} s\",\n \"review\": \"Check the transcript before sending\",\n \"notRecognized\": \"The speech was not recognized\",\n \"micDenied\": \"No access to the microphone\",\n \"unsupported\": \"Voice input is not supported in this browser\",\n \"start\": \"Record a voice message\",\n \"done\": \"Stop\",\n \"recognizing\": \"Recognizing…\",\n \"recordingNow\": \"Recording\",\n \"failed\": \"The voice message could not be recognized\",\n \"retry\": \"Retry\"\n },\n \"confirm\": {\n \"title\": \"Confirm the action\",\n \"text\": \"The agent wants to perform: {action}\",\n \"approve\": \"Execute\",\n \"reject\": \"Reject\"\n },\n \"wait\": {\n \"starting\": \"The agent is starting…\",\n \"queued\": \"{count, plural, =0 {In the queue · you are next} one {In the queue · # ahead of you} other {In the queue · # ahead of you}}\"\n },\n \"palette\": {\n \"title\": \"Commands and skills\",\n \"commands\": \"Commands\",\n \"skills\": \"Skills\",\n \"noSkills\": \"No skills are granted to you\",\n \"empty\": \"Nothing found\"\n },\n \"unknownCommand\": \"Unknown command {name}\",\n \"sendAsText\": \"Send as text\",\n \"skillPlaceholder\": \"What to do with the skill?\",\n \"context\": {\n \"meter\": \"Context: {used} of {total} tokens ({pct}%)\",\n \"full\": \"Answers get more expensive and the agent may get confused.\",\n \"compact\": \"Compact\",\n \"reset\": \"Start over\"\n },\n \"event\": {\n \"details\": \"Summary\"\n }\n }\n}\n","{\n \"loading\": \"Загрузка…\",\n \"cancel\": \"Отмена\",\n \"create\": \"Создать\",\n \"close\": \"Закрыть\",\n \"delete\": \"Удалить\",\n \"remove\": \"Убрать\",\n \"agentName\": \"Имя агента\",\n \"topbar\": {\n \"sections\": \"Разделы\",\n \"profile\": \"Профиль\"\n },\n \"chat\": {\n \"title\": \"Чат\",\n \"conversations\": \"Разговоры\",\n \"conversation\": \"Разговор\",\n \"topics\": \"Темы\",\n \"archive\": \"Архив\",\n \"noTopics\": \"Тем пока нет\",\n \"newTopic\": \"Новая тема\",\n \"topicTitle\": \"Тема\",\n \"topicHint\": \"У темы своя история, а память и пространство — те же.\",\n \"loadOlder\": \"Более ранние сообщения\",\n \"emptyTitle\": \"Привет, я {name}\",\n \"placeholder\": \"Сообщение для {name}…\",\n \"send\": \"Отправить\",\n \"attach\": \"Прикрепить файлы\",\n \"typing\": \"Агент печатает\",\n \"moreSteps\": \"{count, plural, one {ещё # шаг} few {ещё # шага} many {ещё # шагов} other {ещё # шага}}\",\n \"hideSteps\": \"Скрыть шаги\",\n \"unread\": \"{count, plural, one {# непрочитанный ответ} few {# непрочитанных ответа} many {# непрочитанных ответов} other {# непрочитанных ответа}}\",\n \"retry\": \"Повторить\",\n \"tooLarge\": \"Файл слишком большой.\",\n \"stop\": \"Остановить\",\n \"voice\": {\n \"hold\": \"Удерживайте для записи\",\n \"stop\": \"Остановить запись\",\n \"recording\": \"Запись… {seconds} с\",\n \"review\": \"Проверьте расшифровку перед отправкой\",\n \"notRecognized\": \"Речь не распознана\",\n \"micDenied\": \"Нет доступа к микрофону\",\n \"unsupported\": \"Голосовой ввод не поддерживается этим браузером\",\n \"start\": \"Записать голосом\",\n \"done\": \"Стоп\",\n \"recognizing\": \"Распознаём…\",\n \"recordingNow\": \"Запись\",\n \"failed\": \"Не удалось распознать голосовое сообщение\",\n \"retry\": \"Повторить\"\n },\n \"confirm\": {\n \"title\": \"Подтвердите действие\",\n \"text\": \"Агент хочет выполнить: {action}\",\n \"approve\": \"Выполнить\",\n \"reject\": \"Отклонить\"\n },\n \"wait\": {\n \"starting\": \"Агент запускается…\",\n \"queued\": \"{count, plural, =0 {В очереди · вы следующий} other {В очереди · перед вами #}}\"\n },\n \"palette\": {\n \"title\": \"Команды и скиллы\",\n \"commands\": \"Команды\",\n \"skills\": \"Скиллы\",\n \"noSkills\": \"Вам не выдан ни один скилл\",\n \"empty\": \"Ничего не найдено\"\n },\n \"unknownCommand\": \"Неизвестная команда {name}\",\n \"sendAsText\": \"Отправить как текст\",\n \"skillPlaceholder\": \"Что сделать по скиллу?\",\n \"context\": {\n \"meter\": \"Контекст: {used} из {total} токенов ({pct} %)\",\n \"full\": \"Ответы дорожают, агент может путаться.\",\n \"compact\": \"Сжать\",\n \"reset\": \"Начать заново\"\n },\n \"event\": {\n \"details\": \"Изложение\"\n }\n }\n}\n","{\n \"loading\": \"Wird geladen…\",\n \"cancel\": \"Abbrechen\",\n \"create\": \"Erstellen\",\n \"close\": \"Schließen\",\n \"delete\": \"Löschen\",\n \"remove\": \"Entfernen\",\n \"agentName\": \"Name des Agenten\",\n \"topbar\": {\n \"sections\": \"Bereiche\",\n \"profile\": \"Profil\"\n },\n \"chat\": {\n \"title\": \"Chat\",\n \"conversations\": \"Gespräche\",\n \"conversation\": \"Gespräch\",\n \"topics\": \"Themen\",\n \"archive\": \"Archiv\",\n \"noTopics\": \"Noch keine Themen\",\n \"newTopic\": \"Neues Thema\",\n \"topicTitle\": \"Thema\",\n \"topicHint\": \"Ein Thema hat einen eigenen Verlauf, aber dasselbe Gedächtnis und denselben Arbeitsbereich.\",\n \"loadOlder\": \"Frühere Nachrichten\",\n \"emptyTitle\": \"Hallo, ich bin {name}\",\n \"placeholder\": \"Nachricht an {name}…\",\n \"send\": \"Senden\",\n \"attach\": \"Dateien anhängen\",\n \"typing\": \"Der Agent schreibt\",\n \"moreSteps\": \"{count, plural, one {# weiterer Schritt} other {# weitere Schritte}}\",\n \"hideSteps\": \"Schritte ausblenden\",\n \"unread\": \"{count, plural, one {# ungelesene Antwort} other {# ungelesene Antworten}}\",\n \"retry\": \"Wiederholen\",\n \"tooLarge\": \"Die Datei ist zu groß.\",\n \"stop\": \"Stoppen\",\n \"voice\": {\n \"hold\": \"Zum Aufnehmen gedrückt halten\",\n \"stop\": \"Aufnahme beenden\",\n \"recording\": \"Aufnahme… {seconds} s\",\n \"review\": \"Prüfen Sie die Transkription vor dem Senden\",\n \"notRecognized\": \"Die Sprache wurde nicht erkannt\",\n \"micDenied\": \"Kein Zugriff auf das Mikrofon\",\n \"unsupported\": \"Spracheingabe wird von diesem Browser nicht unterstützt\",\n \"start\": \"Sprachnachricht aufnehmen\",\n \"done\": \"Stopp\",\n \"recognizing\": \"Wird erkannt…\",\n \"recordingNow\": \"Aufnahme\",\n \"failed\": \"Die Sprachnachricht konnte nicht erkannt werden\",\n \"retry\": \"Wiederholen\"\n },\n \"confirm\": {\n \"title\": \"Aktion bestätigen\",\n \"text\": \"Der Agent möchte ausführen: {action}\",\n \"approve\": \"Ausführen\",\n \"reject\": \"Ablehnen\"\n },\n \"wait\": {\n \"starting\": \"Der Agent startet…\",\n \"queued\": \"{count, plural, =0 {In der Warteschlange · Sie sind als Nächstes dran} other {In der Warteschlange · # vor Ihnen}}\"\n },\n \"palette\": {\n \"title\": \"Befehle und Skills\",\n \"commands\": \"Befehle\",\n \"skills\": \"Skills\",\n \"noSkills\": \"Ihnen ist kein Skill freigegeben\",\n \"empty\": \"Nichts gefunden\"\n },\n \"unknownCommand\": \"Unbekannter Befehl {name}\",\n \"sendAsText\": \"Als Text senden\",\n \"skillPlaceholder\": \"Was soll mit dem Skill getan werden?\",\n \"context\": {\n \"meter\": \"Kontext: {used} von {total} Tokens ({pct} %)\",\n \"full\": \"Antworten werden teurer, der Agent kann durcheinanderkommen.\",\n \"compact\": \"Komprimieren\",\n \"reset\": \"Neu beginnen\"\n },\n \"event\": {\n \"details\": \"Zusammenfassung\"\n }\n }\n}\n","{\n \"loading\": \"Cargando…\",\n \"cancel\": \"Cancelar\",\n \"create\": \"Crear\",\n \"close\": \"Cerrar\",\n \"delete\": \"Eliminar\",\n \"remove\": \"Quitar\",\n \"agentName\": \"Nombre del agente\",\n \"topbar\": {\n \"sections\": \"Secciones\",\n \"profile\": \"Perfil\"\n },\n \"chat\": {\n \"title\": \"Chat\",\n \"conversations\": \"Conversaciones\",\n \"conversation\": \"Conversación\",\n \"topics\": \"Temas\",\n \"archive\": \"Archivo\",\n \"noTopics\": \"Aún no hay temas\",\n \"newTopic\": \"Nuevo tema\",\n \"topicTitle\": \"Tema\",\n \"topicHint\": \"Un tema tiene su propio historial y la misma memoria y espacio.\",\n \"loadOlder\": \"Mensajes anteriores\",\n \"emptyTitle\": \"Hola, soy {name}\",\n \"placeholder\": \"Mensaje para {name}…\",\n \"send\": \"Enviar\",\n \"attach\": \"Adjuntar archivos\",\n \"typing\": \"El agente está escribiendo\",\n \"moreSteps\": \"{count, plural, one {# paso más} other {# pasos más}}\",\n \"hideSteps\": \"Ocultar pasos\",\n \"unread\": \"{count, plural, one {# respuesta sin leer} other {# respuestas sin leer}}\",\n \"retry\": \"Reintentar\",\n \"tooLarge\": \"El archivo es demasiado grande.\",\n \"stop\": \"Detener\",\n \"voice\": {\n \"hold\": \"Mantenga pulsado para grabar\",\n \"stop\": \"Detener la grabación\",\n \"recording\": \"Grabando… {seconds} s\",\n \"review\": \"Revise la transcripción antes de enviar\",\n \"notRecognized\": \"No se reconoció la voz\",\n \"micDenied\": \"Sin acceso al micrófono\",\n \"unsupported\": \"Este navegador no admite la entrada de voz\",\n \"start\": \"Grabar un mensaje de voz\",\n \"done\": \"Detener\",\n \"recognizing\": \"Reconociendo…\",\n \"recordingNow\": \"Grabando\",\n \"failed\": \"No se pudo reconocer el mensaje de voz\",\n \"retry\": \"Reintentar\"\n },\n \"confirm\": {\n \"title\": \"Confirme la acción\",\n \"text\": \"El agente quiere ejecutar: {action}\",\n \"approve\": \"Ejecutar\",\n \"reject\": \"Rechazar\"\n },\n \"wait\": {\n \"starting\": \"El agente se está iniciando…\",\n \"queued\": \"{count, plural, =0 {En cola · usted es el siguiente} other {En cola · # por delante}}\"\n },\n \"palette\": {\n \"title\": \"Comandos y skills\",\n \"commands\": \"Comandos\",\n \"skills\": \"Skills\",\n \"noSkills\": \"No tiene skills disponibles\",\n \"empty\": \"No se encontró nada\"\n },\n \"unknownCommand\": \"Comando desconocido {name}\",\n \"sendAsText\": \"Enviar como texto\",\n \"skillPlaceholder\": \"¿Qué hacer con el skill?\",\n \"context\": {\n \"meter\": \"Contexto: {used} de {total} tokens ({pct} %)\",\n \"full\": \"Las respuestas se encarecen y el agente puede confundirse.\",\n \"compact\": \"Compactar\",\n \"reset\": \"Empezar de nuevo\"\n },\n \"event\": {\n \"details\": \"Resumen\"\n }\n }\n}\n","{\n \"loading\": \"加载中…\",\n \"cancel\": \"取消\",\n \"create\": \"创建\",\n \"close\": \"关闭\",\n \"delete\": \"删除\",\n \"remove\": \"移除\",\n \"agentName\": \"智能体名称\",\n \"topbar\": {\n \"sections\": \"栏目\",\n \"profile\": \"个人资料\"\n },\n \"chat\": {\n \"title\": \"聊天\",\n \"conversations\": \"对话\",\n \"conversation\": \"对话\",\n \"topics\": \"话题\",\n \"archive\": \"归档\",\n \"noTopics\": \"暂无话题\",\n \"newTopic\": \"新话题\",\n \"topicTitle\": \"话题\",\n \"topicHint\": \"话题有独立的历史记录,记忆和空间与主对话相同。\",\n \"loadOlder\": \"更早的消息\",\n \"emptyTitle\": \"你好,我是 {name}\",\n \"placeholder\": \"给 {name} 发消息…\",\n \"send\": \"发送\",\n \"attach\": \"附加文件\",\n \"typing\": \"智能体正在输入\",\n \"moreSteps\": \"{count, plural, other {另外 # 个步骤}}\",\n \"hideSteps\": \"隐藏步骤\",\n \"unread\": \"{count} 条未读回复\",\n \"retry\": \"重试\",\n \"tooLarge\": \"文件太大。\",\n \"stop\": \"停止\",\n \"voice\": {\n \"hold\": \"按住录音\",\n \"stop\": \"停止录音\",\n \"recording\": \"录音中… {seconds} 秒\",\n \"review\": \"发送前请检查转写文本\",\n \"notRecognized\": \"未能识别语音\",\n \"micDenied\": \"无法访问麦克风\",\n \"unsupported\": \"此浏览器不支持语音输入\",\n \"start\": \"录制语音\",\n \"done\": \"停止\",\n \"recognizing\": \"正在识别…\",\n \"recordingNow\": \"录音中\",\n \"failed\": \"无法识别语音消息\",\n \"retry\": \"重试\"\n },\n \"confirm\": {\n \"title\": \"确认操作\",\n \"text\": \"代理想要执行:{action}\",\n \"approve\": \"执行\",\n \"reject\": \"拒绝\"\n },\n \"wait\": {\n \"starting\": \"代理正在启动…\",\n \"queued\": \"{count, plural, =0 {排队中 · 您是下一位} other {排队中 · 前面还有 # 位}}\"\n },\n \"palette\": {\n \"title\": \"命令和技能\",\n \"commands\": \"命令\",\n \"skills\": \"技能\",\n \"noSkills\": \"您没有可用的技能\",\n \"empty\": \"未找到\"\n },\n \"unknownCommand\": \"未知命令 {name}\",\n \"sendAsText\": \"作为文本发送\",\n \"skillPlaceholder\": \"用这个技能做什么?\",\n \"context\": {\n \"meter\": \"上下文:{used} / {total} 个令牌({pct}%)\",\n \"full\": \"回答变得更贵,代理可能会混淆。\",\n \"compact\": \"压缩\",\n \"reset\": \"重新开始\"\n },\n \"event\": {\n \"details\": \"摘要\"\n }\n }\n}\n","import en from \"./en.json\";\nimport ru from \"./ru.json\";\nimport de from \"./de.json\";\nimport es from \"./es.json\";\nimport zh from \"./zh.json\";\n\n/** Strings of the components in the five languages of the products. A product adds\n * them to its i18next instance under the namespace `uikit`. */\nexport const resources = { en, ru, de, es, zh };\nexport type KitLanguage = keyof typeof resources;\nexport { UIKIT_NS } from \"../i18n\";\n"],"mappings":";;;AKQA,IAAaiC,IAAY;CAAE,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;CAAI,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA;AAAG"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.1",
2
+ "version": "1.2.0",
3
3
  "classes": [
4
4
  "a",
5
5
  "action",
@@ -9,6 +9,8 @@
9
9
  "agent",
10
10
  "agentbtn",
11
11
  "agentmenu",
12
+ "agentmodel",
13
+ "agentmodels",
12
14
  "agentoption",
13
15
  "agentoptions",
14
16
  "amber",
@@ -16,6 +18,9 @@
16
18
  "arch",
17
19
  "atts",
18
20
  "avatar",
21
+ "badges",
22
+ "bg",
23
+ "body",
19
24
  "box",
20
25
  "brand",
21
26
  "brief",
@@ -23,31 +28,46 @@
23
28
  "bub",
24
29
  "burger",
25
30
  "business",
31
+ "cap",
26
32
  "card",
27
33
  "chan",
28
34
  "chip",
29
35
  "chips",
30
36
  "clickable",
37
+ "cmd-unknown",
31
38
  "composer",
39
+ "composer-wrap",
32
40
  "confirm",
33
41
  "count",
34
42
  "cov",
43
+ "ctxmeter",
44
+ "ctxring",
45
+ "ctxtip",
35
46
  "danger",
36
47
  "danger-fill",
37
48
  "dashed",
49
+ "dot",
38
50
  "draft",
51
+ "ds",
39
52
  "edit",
40
53
  "ellipsis",
41
54
  "empty",
55
+ "ending",
42
56
  "er",
43
57
  "err",
44
58
  "err-t",
45
59
  "err-text",
46
60
  "error",
61
+ "evchip",
62
+ "evdetails",
63
+ "evdiv",
64
+ "evline",
65
+ "fg",
47
66
  "field",
48
67
  "fill",
49
68
  "form-grid",
50
69
  "friendly",
70
+ "full",
51
71
  "gap",
52
72
  "ghost",
53
73
  "grow",
@@ -73,6 +93,7 @@
73
93
  "llmerr",
74
94
  "loading",
75
95
  "login",
96
+ "lvl",
76
97
  "m",
77
98
  "main",
78
99
  "mb",
@@ -99,14 +120,20 @@
99
120
  "open",
100
121
  "overlay",
101
122
  "page",
123
+ "palette",
124
+ "palette-empty",
125
+ "palette-h",
126
+ "palette-row",
102
127
  "panel",
103
128
  "panel-h",
104
129
  "pending-files",
105
130
  "primary",
106
131
  "prose",
107
132
  "q",
133
+ "radio",
108
134
  "rec",
109
135
  "rec-box",
136
+ "recbar",
110
137
  "row",
111
138
  "row2",
112
139
  "run",
@@ -115,11 +142,14 @@
115
142
  "sec",
116
143
  "sel",
117
144
  "side",
145
+ "skill-chip",
146
+ "slash",
118
147
  "sm",
119
148
  "small",
120
149
  "spacer",
121
150
  "spin",
122
151
  "sr-only",
152
+ "src",
123
153
  "st",
124
154
  "stack",
125
155
  "sub",
@@ -132,6 +162,8 @@
132
162
  "table",
133
163
  "tabs",
134
164
  "tag",
165
+ "textbtn",
166
+ "tm",
135
167
  "toast",
136
168
  "toast-wrap",
137
169
  "tool",
@@ -148,12 +180,15 @@
148
180
  "warn",
149
181
  "warn-t",
150
182
  "webhook",
151
- "wide"
183
+ "wide",
184
+ "with-skill"
152
185
  ],
153
186
  "roots": [
154
187
  "admin",
155
188
  "agentbtn",
156
189
  "agentmenu",
190
+ "agentmodel",
191
+ "agentmodels",
157
192
  "agentoption",
158
193
  "agentoptions",
159
194
  "app",
@@ -165,15 +200,24 @@
165
200
  "chan",
166
201
  "chip",
167
202
  "chips",
203
+ "cmd-unknown",
168
204
  "composer",
205
+ "composer-wrap",
169
206
  "confirm",
170
207
  "count",
171
208
  "cov",
209
+ "ctxmeter",
210
+ "ctxring",
211
+ "ctxtip",
172
212
  "ellipsis",
173
213
  "empty",
174
214
  "err",
175
215
  "err-t",
176
216
  "err-text",
217
+ "evchip",
218
+ "evdetails",
219
+ "evdiv",
220
+ "evline",
177
221
  "field",
178
222
  "form-grid",
179
223
  "grow",
@@ -208,15 +252,21 @@
208
252
  "ok-t",
209
253
  "overlay",
210
254
  "page",
255
+ "palette",
256
+ "palette-empty",
257
+ "palette-h",
258
+ "palette-row",
211
259
  "panel",
212
260
  "panel-h",
213
261
  "pending-files",
214
262
  "prose",
263
+ "recbar",
215
264
  "row",
216
265
  "search",
217
266
  "sec",
218
267
  "sel",
219
268
  "side",
269
+ "skill-chip",
220
270
  "small",
221
271
  "spacer",
222
272
  "spin",
@@ -231,6 +281,7 @@
231
281
  "t2",
232
282
  "table",
233
283
  "tabs",
284
+ "textbtn",
234
285
  "toast",
235
286
  "toast-wrap",
236
287
  "tool",
package/dist/styles.css CHANGED
@@ -1218,7 +1218,7 @@ select.inp.inherit {
1218
1218
  .tool .er{color:var(--red)}
1219
1219
  .tool .run{color:var(--muted)}
1220
1220
  .tool .tx{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
1221
- .tools-fold{font-size:12px;color:var(--muted);border:0;background:none;padding:2px 0;margin-bottom:4px}
1221
+ .tools-fold{display:block;font-size:12px;color:var(--muted);border:0;background:none;padding:2px 0;margin-bottom:4px}
1222
1222
  .ok-t{color:var(--green)}
1223
1223
  .err-t{color:var(--red)}
1224
1224
  .warn-t{color:var(--amber)}
@@ -1304,3 +1304,57 @@ select.inp.inherit {
1304
1304
  .nb-app.narrow .nb-side.open{display:block;position:absolute;inset:0 30% 0 0;z-index:15;box-shadow:var(--shadow)}
1305
1305
  .nb-app.narrow .nb-scrim{display:block;position:absolute;inset:0;z-index:14;border:0;padding:0;background:rgba(0,0,0,.25)}
1306
1306
  .nb-app.narrow .nb-chat .m,.nb-app.narrow .nb-chat .m.u{max-width:92%}
1307
+ /* FTR.NAB.CHAT-0001 design §1, §3: the palette of commands, the skill of a message, the fill of the context,
1308
+ the dividers of events, the bar of a recording, the models of the agent. */
1309
+ .composer-wrap{position:relative;border-top:1px solid var(--border)}
1310
+ .composer-wrap .composer{border-top:0}
1311
+ /* .field of the forms has a margin under it: in the composer the field stands on the line of the buttons */
1312
+ .composer .field{flex:1;display:flex;align-items:flex-end;gap:6px;min-width:0;margin-bottom:0}
1313
+ .composer .field textarea{min-width:0}
1314
+ .composer .field.with-skill{flex-wrap:wrap}
1315
+ .skill-chip{background:var(--violet-soft);color:var(--violet-text);border-color:transparent;align-self:center}
1316
+ .palette{position:absolute;left:10px;right:10px;bottom:calc(100% - 4px);z-index:15;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-m);box-shadow:var(--shadow-l, 0 12px 32px rgba(0,0,0,.18));padding:6px;max-height:300px;overflow-y:auto}
1317
+ .palette-h{font-size:11px;color:var(--muted);padding:6px 10px 4px;text-transform:uppercase;letter-spacing:.04em}
1318
+ .palette-row{display:grid;grid-template-columns:18px minmax(110px,auto) 1fr auto;gap:8px;align-items:center;width:100%;padding:7px 10px;border:0;border-radius:var(--r-s);background:none;color:var(--text);font-size:13px;text-align:left}
1319
+ .palette-row.on{background:var(--violet-soft)}
1320
+ .palette-row .slash{font-family:var(--mono);color:var(--muted);text-align:center}
1321
+ .palette-row .nm{font-family:var(--mono);white-space:nowrap}
1322
+ .palette-row .ds{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
1323
+ .palette-row .src{font-size:11px;color:var(--muted);white-space:nowrap}
1324
+ .palette-empty{font-size:13px;color:var(--muted);padding:6px 10px}
1325
+ .cmd-unknown{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--amber);padding:8px 12px 0}
1326
+ .textbtn{border:0;background:none;padding:0;color:var(--violet-text);font:inherit;cursor:pointer}
1327
+ .ctxmeter{position:relative;align-self:center}
1328
+ .ctxring{width:26px;height:26px;display:grid;place-items:center;border:0;background:none;padding:0;border-radius:50%}
1329
+ .ctxring svg{width:18px;height:18px}
1330
+ .ctxring circle{fill:none;stroke-width:3}
1331
+ .ctxring .bg{stroke:var(--border)}
1332
+ .ctxring .fg{stroke:var(--muted)}
1333
+ .ctxring.warn .fg{stroke:var(--amber)}
1334
+ .ctxring.full .fg{stroke:var(--red)}
1335
+ .ctxtip{position:absolute;right:0;bottom:calc(100% + 8px);z-index:16;width:260px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-m);box-shadow:var(--shadow-l, 0 12px 32px rgba(0,0,0,.18));padding:10px 12px;font-size:13px}
1336
+ .evdiv{display:flex;flex-direction:column;align-items:center;gap:6px}
1337
+ .evline{display:flex;align-items:center;gap:10px;width:100%;color:var(--muted);font-size:12px}
1338
+ .evline::before,.evline::after{content:"";flex:1;height:1px;background:var(--border)}
1339
+ .evchip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--border);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
1340
+ .evdetails{max-width:560px;font-size:13px;color:var(--text-2);background:var(--surface-2);border-radius:var(--r-m);padding:10px 12px;white-space:pre-wrap}
1341
+ .recbar{flex:1;display:flex;align-items:center;gap:10px;border:1px solid var(--red);border-radius:var(--r-m);padding:5px 8px 5px 12px;background:var(--red-soft);min-width:0}
1342
+ .recbar .dot{width:10px;height:10px;border-radius:50%;background:var(--red);flex:none;animation:blink 1.2s infinite}
1343
+ .recbar .tm{font-family:var(--mono);font-size:13px;white-space:nowrap}
1344
+ .recbar .lvl{flex:1;height:6px;border-radius:3px;background:var(--border);overflow:hidden;min-width:20px}
1345
+ .recbar .lvl i{display:block;height:100%;background:var(--red);transform-origin:left;transition:transform .1s linear}
1346
+ .recbar.ending{border-color:var(--amber);background:var(--amber-soft)}
1347
+ .recbar.ending .tm{color:var(--amber)}
1348
+ .recbar.ending .dot,.recbar.ending .lvl i{background:var(--amber)}
1349
+ .agentmodels{display:flex;flex-direction:column;gap:4px}
1350
+ .agentmodel{display:flex;gap:10px;align-items:flex-start;width:100%;padding:8px;border:0;border-radius:var(--r-m);background:none;color:var(--text);text-align:left}
1351
+ .agentmodel.on{background:var(--violet-soft)}
1352
+ .agentmodel:disabled{cursor:default}
1353
+ .agentmodel .radio{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-strong);margin-top:2px;flex:none}
1354
+ .agentmodel .radio.on{border:5px solid var(--violet)}
1355
+ .agentmodel .body{display:flex;flex-direction:column;gap:2px;min-width:0}
1356
+ .agentmodel .nm{font-size:14px;font-weight:500}
1357
+ .agentmodel .sub{font-size:12px;color:var(--muted)}
1358
+ .agentmodel .badges{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}
1359
+ .agentmodel .cap{display:inline-flex;align-items:center;gap:3px;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-2)}
1360
+ .agentmodel .warn{font-size:12px;color:var(--amber);margin-top:2px}
@@ -73,7 +73,9 @@ var l = {
73
73
  globe: "<circle cx=\"12\" cy=\"12\" r=\"9\"/><path d=\"M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18\"/>",
74
74
  download: "<path d=\"M12 4v12M7 11l5 5 5-5M5 20h14\"/>",
75
75
  pin: "<path d=\"M9 4h6l-1 6 4 4H6l4-4zM12 14v6\"/>",
76
- edit: "<path d=\"M4 20h4L19 9l-4-4L4 16zM14 6l4 4\"/>"
76
+ edit: "<path d=\"M4 20h4L19 9l-4-4L4 16zM14 6l4 4\"/>",
77
+ image: "<rect x=\"3\" y=\"4\" width=\"18\" height=\"16\" rx=\"2\"/><circle cx=\"9\" cy=\"10\" r=\"2\"/><path d=\"m21 16-5-5-9 9\"/>",
78
+ compress: "<path d=\"M4 14h6v6M20 10h-6V4M14 10l7-7M3 21l7-7\"/>"
77
79
  };
78
80
  function u({ name: e, size: n = 18, className: r = "" }) {
79
81
  return /* @__PURE__ */ t("svg", {
@@ -304,4 +306,4 @@ function w(e, t) {
304
306
  //#endregion
305
307
  export { x as a, v as c, u as d, h as i, m as l, S as n, _ as o, C as r, w as s, b as t, d as u };
306
308
 
307
- //# sourceMappingURL=ui-CGgZtEVm.js.map
309
+ //# sourceMappingURL=ui-joAvYmUH.js.map