@ykurilov/agent-chat-react 0.55.0 → 0.57.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/CHANGELOG.md +22 -0
- package/README.md +4 -0
- package/dist/{chunk-JZQ7ZOJI.js → chunk-7DVTSVKQ.js} +13 -5
- package/dist/{chunk-JZQ7ZOJI.js.map → chunk-7DVTSVKQ.js.map} +1 -1
- package/dist/index.js +1 -1
- package/dist/panel.js +1 -1
- package/dist/types/agent-chat-extensions.d.ts +8 -4
- package/dist/types/media-viewer/generated-images.d.ts +5 -3
- package/dist/types/skin-contract.d.ts +16 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
package/dist/panel.js
CHANGED
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
useChatList,
|
|
7
7
|
useChatListView,
|
|
8
8
|
useWorkspaceListSync
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-7DVTSVKQ.js";
|
|
10
10
|
|
|
11
11
|
// src/agent-panel/agent-panel-provider.tsx
|
|
12
12
|
import { useCallback as useCallback2, useMemo, useRef, useState, useSyncExternalStore as useSyncExternalStore2 } from "react";
|
|
@@ -12,8 +12,9 @@ export interface DiagramsClient {
|
|
|
12
12
|
}>;
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
15
|
-
* Картинки агента на экране (пакет `@ykurilov/agent-chat-images`, `imagesClient
|
|
16
|
-
*
|
|
15
|
+
* Картинки агента на экране (пакет `@ykurilov/agent-chat-images`, `imagesClient`; библиотека картинок
|
|
16
|
+
* `@ykurilov/agent-chat-image-library`, `imageLibraryClient`): сообщает слою поведения имя инструмента и превращает его
|
|
17
|
+
* вызов в вид для скина. Нет `describe`-результата — вызов остаётся обычной строкой инструмента.
|
|
17
18
|
*/
|
|
18
19
|
export interface ImagesClient {
|
|
19
20
|
/** Имя инструмента, чьи вызовы рисуются как картинки: `generate_images`. */
|
|
@@ -56,8 +57,11 @@ export interface AgentChatExtensions {
|
|
|
56
57
|
* На сервере — `agent.liveDemos: true`.
|
|
57
58
|
*/
|
|
58
59
|
liveDemos?: boolean;
|
|
59
|
-
/**
|
|
60
|
-
|
|
60
|
+
/**
|
|
61
|
+
* Картинки агента: один клиент (`imagesClient`) или несколько списком (`[imagesClient, imageLibraryClient]`) — у каждого
|
|
62
|
+
* своё имя инструмента. Окно просмотра листает картинки всех клиентов по порядку ленты. Список держите постоянным.
|
|
63
|
+
*/
|
|
64
|
+
images?: ImagesClient | readonly ImagesClient[];
|
|
61
65
|
/** Видео агента: `videosClient`. */
|
|
62
66
|
videos?: VideosClient;
|
|
63
67
|
/** Вид событий приложения в ответе: тип события → компонент (`{ lesson_passed: LessonPassedBadge }`). */
|
|
@@ -5,11 +5,13 @@ import type { GeneratedImagesView } from "../skin-contract.js";
|
|
|
5
5
|
import type { MediaViewerItem } from "./media-viewer-types.js";
|
|
6
6
|
/** Вид картинок агента для части ответа; `undefined` — это не вызов картинок, он остаётся строкой инструмента. */
|
|
7
7
|
export type DescribeGeneratedImages = (part: ToolUIPart | DynamicToolUIPart) => GeneratedImagesView | undefined;
|
|
8
|
+
/** `images` страницы — всегда списком: один клиент или несколько. */
|
|
9
|
+
export declare const imageClientsOf: (images: ImagesClient | readonly ImagesClient[] | undefined) => readonly ImagesClient[];
|
|
8
10
|
/**
|
|
9
|
-
* Картинки агента (`images` страницы): вызов
|
|
10
|
-
* просмотра) — клик по картинке ничего не делает.
|
|
11
|
+
* Картинки агента (`images` страницы): вызов инструмента одного из клиентов → вид для скина; клиент выбирается по имени
|
|
12
|
+
* инструмента. Нет `open` (у скина нет окна просмотра) — клик по картинке ничего не делает.
|
|
11
13
|
*/
|
|
12
|
-
export declare function describeGeneratedImages(images: ImagesClient, call: {
|
|
14
|
+
export declare function describeGeneratedImages(images: ImagesClient | readonly ImagesClient[], call: {
|
|
13
15
|
api: string;
|
|
14
16
|
chatId: string;
|
|
15
17
|
open?: ((key: string, trigger: HTMLElement) => void) | undefined;
|
|
@@ -281,7 +281,10 @@ export type LiveDemoView =
|
|
|
281
281
|
source: string;
|
|
282
282
|
reason: "tooLarge" | "unfinished" | "leftPage" | "externalContent";
|
|
283
283
|
};
|
|
284
|
-
/**
|
|
284
|
+
/**
|
|
285
|
+
* Картинки агента из вызова `generate_images` (версия 13) или `show_image` библиотеки картинок (версия 26: `wide` и
|
|
286
|
+
* `caption`).
|
|
287
|
+
*/
|
|
285
288
|
export interface GeneratedImagesView {
|
|
286
289
|
/** Заказано картинок. */
|
|
287
290
|
ordered: number;
|
|
@@ -297,6 +300,8 @@ export interface GeneratedImagesView {
|
|
|
297
300
|
alt: string;
|
|
298
301
|
width?: number;
|
|
299
302
|
height?: number;
|
|
303
|
+
/** Версия 26, необязательное: видимая подпись под картинкой (название из библиотеки). */
|
|
304
|
+
caption?: string;
|
|
300
305
|
onOpen: (trigger: HTMLElement) => void;
|
|
301
306
|
} | {
|
|
302
307
|
state: "failed";
|
|
@@ -305,6 +310,11 @@ export interface GeneratedImagesView {
|
|
|
305
310
|
}>;
|
|
306
311
|
/** Человек нажал «Стоп»: показать `labels.images.stopped`. */
|
|
307
312
|
stopped: boolean;
|
|
313
|
+
/**
|
|
314
|
+
* Версия 26, необязательное: картинки во всю ширину ответа, каждая своей пропорции (`width`/`height` элемента), без
|
|
315
|
+
* обрезки — готовая картинка из библиотеки. Пустой `items` при `wide` — вызов идёт, ничего не рисовать.
|
|
316
|
+
*/
|
|
317
|
+
wide?: boolean;
|
|
308
318
|
}
|
|
309
319
|
/**
|
|
310
320
|
* Видео агента из вызова `show_video` (версия 14). Плеер грузить только по нажатию на карточку: до него к площадке
|
|
@@ -372,7 +382,11 @@ export interface StaffMessageView {
|
|
|
372
382
|
staffName?: string;
|
|
373
383
|
}
|
|
374
384
|
/**
|
|
375
|
-
* Договор скина, версия
|
|
385
|
+
* Договор скина, версия 26 (в версии 26 добавились только необязательные `GeneratedImagesView.wide` и `caption` у готовой
|
|
386
|
+
* картинки — библиотека картинок, docs/image-library.md; скин версии 25 работает без правок: картинка библиотеки
|
|
387
|
+
* рисуется плиткой сетки ближайшей обычной пропорции (1:1, 3:2, 2:3, 16:9, 9:16) без подписи, подпись остаётся в `alt`;
|
|
388
|
+
* docs/skin-v26.md).
|
|
389
|
+
* Версия 25 (в версии 25 добавилось только необязательное `StaffMessage` — реплика живого сотрудника,
|
|
376
390
|
* docs/skin-v25.md; скин версии 24 работает без правок: реплика показывается ответом агента с подписью
|
|
377
391
|
* `labels.notices.staffSaid`).
|
|
378
392
|
* Версия 24 (в версии 24 добавилось только необязательное `AgentMessage.undelivered` — отметка
|