@vibexnpm/talkx 8.11.0 → 8.13.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/index.d.ts +91 -1
- package/dist/talkflow-sdk.esm.js +1 -1
- package/dist/talkflow-sdk.esm.js.map +1 -1
- package/dist/talkflow-sdk.standalone.js +1 -1
- package/dist/talkflow-sdk.standalone.js.map +1 -1
- package/dist/talkflow-sdk.umd.js +1 -1
- package/dist/talkflow-sdk.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/chat/ChatClient.js +41 -2
- package/src/talkflow/delegates.js +3 -0
- package/types/__typetests__/files.types.ts +10 -9
- package/types/__typetests__/pmReports.types.ts +55 -0
- package/types/index.d.ts +91 -1
package/dist/index.d.ts
CHANGED
|
@@ -1290,10 +1290,18 @@ export interface ApiEnvelope<T> {
|
|
|
1290
1290
|
message?: string;
|
|
1291
1291
|
}
|
|
1292
1292
|
|
|
1293
|
+
/**
|
|
1294
|
+
* 파일 종류 — {@link ChatFile.category} 와 {@link ChatFileListParams.type} 이 같은 값을 쓴다.
|
|
1295
|
+
* {@code FILE} 은 «기타» — 이미지·동영상·음성·문서가 아닌 파일(zip 등).
|
|
1296
|
+
*/
|
|
1297
|
+
export type ChatFileCategory = 'IMAGE' | 'VIDEO' | 'AUDIO' | 'DOCUMENT' | 'FILE';
|
|
1298
|
+
|
|
1293
1299
|
/** {@link ChatClient.getFiles} 파라미터 — 파일함 한 페이지. */
|
|
1294
1300
|
export interface ChatFileListParams {
|
|
1295
1301
|
/** 방 하나로 거르기. 생략하면 내가 지금 참여 중인 방 전부. 참여하지 않은 방이면 403. */
|
|
1296
1302
|
roomId?: string;
|
|
1303
|
+
/** 종류로 거르기 — 생략하면 전부. 방·종류를 바꾸면 커서({@code lastId}·{@code lastSortValue}) 없이 처음부터 부른다. */
|
|
1304
|
+
type?: ChatFileCategory;
|
|
1297
1305
|
/** 페이지 크기(파일 수). 기본 50, max 100. */
|
|
1298
1306
|
size?: number;
|
|
1299
1307
|
/** 직전 응답의 {@code lastId} 그대로 — 불투명 값이라 만들어 쓰지 않는다. */
|
|
@@ -1326,11 +1334,71 @@ export interface ChatFile {
|
|
|
1326
1334
|
/** 올린 시각(epoch millis). */
|
|
1327
1335
|
uploadedAt: number;
|
|
1328
1336
|
/** 종류 — 파일 MIME 기준, 채팅 첨부 분류와 같다. */
|
|
1329
|
-
category:
|
|
1337
|
+
category: ChatFileCategory;
|
|
1330
1338
|
/** 파일명({@code fileName})·다운로드 링크({@code fileUrl})·MIME({@code fileType})·크기·썸네일 — 채팅 메시지 첨부와 같은 모양. */
|
|
1331
1339
|
file: FileMetaData;
|
|
1332
1340
|
}
|
|
1333
1341
|
|
|
1342
|
+
/** PM 보고서 종류 — 지금은 자료조사({@code RESEARCH}) 하나. {@link PmReport.kind} 와 {@link PmReportListParams.kind} 가 같은 값. */
|
|
1343
|
+
export type PmReportKind = 'RESEARCH';
|
|
1344
|
+
|
|
1345
|
+
/** {@link ChatClient.getPmReports} 파라미터 — 보고서 한 페이지. */
|
|
1346
|
+
export interface PmReportListParams {
|
|
1347
|
+
/** 보고서 종류 — 생략하면 {@code RESEARCH}. 종류·방을 바꾸면 커서 없이 처음부터 부른다. */
|
|
1348
|
+
kind?: PmReportKind;
|
|
1349
|
+
/** 방 하나로 거르기. 생략하면 내가 지금 참여 중인 방 전부. 참여하지 않은 방이면 403. */
|
|
1350
|
+
roomId?: string;
|
|
1351
|
+
/** 페이지 크기. 기본 50, max 100. */
|
|
1352
|
+
size?: number;
|
|
1353
|
+
/** 직전 응답의 {@code lastId} 그대로. */
|
|
1354
|
+
lastId?: string;
|
|
1355
|
+
/** 직전 응답의 {@code lastSortValue} 그대로(epoch millis). */
|
|
1356
|
+
lastSortValue?: number | string;
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
/**
|
|
1360
|
+
* PM 보고서 목록 한 줄 — 방에 PM 이 올린 작업 결과 하나.
|
|
1361
|
+
*
|
|
1362
|
+
* <p>보이는 범위는 파일함과 같다 — 참여 중인 방만, 재입장 이전·보관 기간 밖·나만 삭제한 결과는 오지 않는다.</p>
|
|
1363
|
+
*/
|
|
1364
|
+
export interface PmReport {
|
|
1365
|
+
/** 보고서 id — 상세({@link ChatClient.getPmReport})에 넘기는 값. 목록 key 로 쓴다. */
|
|
1366
|
+
id: string;
|
|
1367
|
+
/** 결과 메시지 — {@link ChatMessage.messageId} 와 같은 값. 채팅에서 그 메시지로 이동할 때 쓴다. */
|
|
1368
|
+
messageId: string;
|
|
1369
|
+
kind: PmReportKind;
|
|
1370
|
+
/** 제목 — PM 이 작업을 맡긴 요지(120자). 비어 있으면 null. */
|
|
1371
|
+
title: string | null;
|
|
1372
|
+
/** 결과 앞 200자 — 마크다운 원문 그대로. */
|
|
1373
|
+
preview: string;
|
|
1374
|
+
/** 채팅에서 «작업 중 참고한 대화 일부가 수정/삭제되어…» 고지가 붙은 결과인가 — 상세 본문 위에 같은 문구가 붙는다. */
|
|
1375
|
+
contextChanged: boolean;
|
|
1376
|
+
roomId: string;
|
|
1377
|
+
/** 방 이름 — 1:1 은 상대 이름. 찾지 못하면 null. */
|
|
1378
|
+
roomName: string | null;
|
|
1379
|
+
roomType: ChatRoomTypeValue | null;
|
|
1380
|
+
/** 작업을 시킨 사람. */
|
|
1381
|
+
requesterId: string | null;
|
|
1382
|
+
/** 그 사람 닉네임 — 찾지 못하면(탈퇴 등) null. */
|
|
1383
|
+
requesterName: string | null;
|
|
1384
|
+
requesterProfileUrl: string | null;
|
|
1385
|
+
/** 결과를 올린 PM 페르소나 이름 — 찾지 못하면 null. */
|
|
1386
|
+
pmName: string | null;
|
|
1387
|
+
/** 결과가 방에 올라온 시각(epoch millis). */
|
|
1388
|
+
publishedAt: number;
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1391
|
+
/** PM 보고서 상세 — 목록 한 줄({@link PmReport})과 같은 칸 + 본문. */
|
|
1392
|
+
export interface PmReportDetail extends PmReport {
|
|
1393
|
+
/**
|
|
1394
|
+
* 본문(마크다운) — 결과 전문(출처 절 포함). 채팅에서 결과에 붙었던 안내도 같은 문구로 붙는다: 대화 변경 고지(본문 위,
|
|
1395
|
+
* {@code contextChanged} 일 때)·이미지 분석 범위 안내(본문 끝).
|
|
1396
|
+
*/
|
|
1397
|
+
content: string;
|
|
1398
|
+
/** 본문 글자 수(코드포인트). */
|
|
1399
|
+
contentLength: number;
|
|
1400
|
+
}
|
|
1401
|
+
|
|
1334
1402
|
// ============================================================================
|
|
1335
1403
|
// Event payloads
|
|
1336
1404
|
// ============================================================================
|
|
@@ -2447,6 +2515,17 @@ export class ChatClient implements SdkEventEmitter<ChatClientEvents> {
|
|
|
2447
2515
|
* 다음 페이지는 응답의 {@code lastId}·{@code lastSortValue} 를 그대로 넘긴다.
|
|
2448
2516
|
*/
|
|
2449
2517
|
getFiles(params?: ChatFileListParams): Promise<ApiEnvelope<CursorPageResponse<ChatFile>>>;
|
|
2518
|
+
|
|
2519
|
+
/**
|
|
2520
|
+
* PM 보고서 목록 — 내가 지금 참여 중인 방들에 PM 이 올린 작업 결과(지금은 자료조사), 최신순 커서 페이징. 반환은
|
|
2521
|
+
* envelope 째({@code result.data.content}). 보이는 범위는 파일함과 같다. 다음 페이지는 응답의 {@code lastId}·
|
|
2522
|
+
* {@code lastSortValue} 를 그대로 넘긴다. 끝은 {@code hasNext} 로만 판단한다 — 드물게 짧거나 빈 페이지가
|
|
2523
|
+
* {@code hasNext: true} 와 함께 온다.
|
|
2524
|
+
*/
|
|
2525
|
+
getPmReports(params?: PmReportListParams): Promise<ApiEnvelope<CursorPageResponse<PmReport>>>;
|
|
2526
|
+
|
|
2527
|
+
/** PM 보고서 상세 — 목록 한 줄 + 본문({@code content}). 없거나 볼 수 없으면 404. 반환은 envelope 째. */
|
|
2528
|
+
getPmReport(reportId: string): Promise<ApiEnvelope<PmReportDetail>>;
|
|
2450
2529
|
fetchLinkPreview(url: string): Promise<FetchLinkPreviewResponse | null>;
|
|
2451
2530
|
sendMessage(roomId: string, data: SendMessageData): Promise<SendMessageResult>;
|
|
2452
2531
|
/** Optimistic UI 버전 — 응답 전 base/예측 messageIds 동기 반환. */
|
|
@@ -2940,6 +3019,17 @@ export default class TalkFlowClient implements SdkEventEmitter<TalkFlowClientEve
|
|
|
2940
3019
|
* 다음 페이지는 응답의 {@code lastId}·{@code lastSortValue} 를 그대로 넘긴다.
|
|
2941
3020
|
*/
|
|
2942
3021
|
getFiles(params?: ChatFileListParams): Promise<ApiEnvelope<CursorPageResponse<ChatFile>>>;
|
|
3022
|
+
|
|
3023
|
+
/**
|
|
3024
|
+
* PM 보고서 목록 — 내가 지금 참여 중인 방들에 PM 이 올린 작업 결과(지금은 자료조사), 최신순 커서 페이징. 반환은
|
|
3025
|
+
* envelope 째({@code result.data.content}). 보이는 범위는 파일함과 같다. 다음 페이지는 응답의 {@code lastId}·
|
|
3026
|
+
* {@code lastSortValue} 를 그대로 넘긴다. 끝은 {@code hasNext} 로만 판단한다 — 드물게 짧거나 빈 페이지가
|
|
3027
|
+
* {@code hasNext: true} 와 함께 온다.
|
|
3028
|
+
*/
|
|
3029
|
+
getPmReports(params?: PmReportListParams): Promise<ApiEnvelope<CursorPageResponse<PmReport>>>;
|
|
3030
|
+
|
|
3031
|
+
/** PM 보고서 상세 — 목록 한 줄 + 본문({@code content}). 없거나 볼 수 없으면 404. 반환은 envelope 째. */
|
|
3032
|
+
getPmReport(reportId: string): Promise<ApiEnvelope<PmReportDetail>>;
|
|
2943
3033
|
fetchLinkPreview(url: string): Promise<FetchLinkPreviewResponse | null>;
|
|
2944
3034
|
sendMessage(roomId: string, data: SendMessageData): Promise<SendMessageResult>;
|
|
2945
3035
|
/** Optimistic UI 버전 — 응답 전 base/예측 messageIds 동기 반환. */
|