simple-ai-sdk 1.0.11 → 1.0.12

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.
@@ -1,31 +1,17 @@
1
- import type { Message, JSONValue } from "../shared/index.js";
1
+ import { type JSONValue } from "../shared/index.js";
2
2
  export type PrefetchChatSessionOptions = {
3
- initialMessages: Message[];
4
3
  api: string;
5
4
  body?: Record<string, JSONValue>;
6
- startStream?: boolean;
5
+ /**
6
+ * ここにcontentを指定すると呼び出し時に即座に送信される
7
+ */
8
+ streamMessageContent?: string;
7
9
  };
8
10
  /**
9
11
  * ページ遷移前にセッションを事前に初期化し、オプションでストリーミングを開始するフック
10
12
  *
11
13
  * @returns prefetchChatSession - セッションの初期化とストリーミング開始を行う関数
12
14
  *
13
- * @example
14
- * ```tsx
15
- * const prefetch = usePrefetchChatSession();
16
- *
17
- * // セッション初期化のみ
18
- * prefetch('session-1', {
19
- * initialMessages: [{ id: '1', role: 'user', content: 'Hello' }]
20
- * });
21
- *
22
- * // セッション初期化とストリーミング開始(完了を待たない)
23
- * prefetch('session-2', {
24
- * initialMessages: [{ id: '1', role: 'user', content: 'Hello' }],
25
- * startStream: true,
26
- * api: '/api/chat'
27
- * });
28
- * ```
29
15
  */
30
16
  export declare function usePrefetchChatSession(): (sessionId: string, options: PrefetchChatSessionOptions) => void;
31
17
  //# sourceMappingURL=chat-session-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-session-utils.d.ts","sourceRoot":"","sources":["../../src/client/chat-session-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG7D,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,sBAAsB,gBAItB,MAAM,WAAW,0BAA0B,UA2B1D"}
1
+ {"version":3,"file":"chat-session-utils.d.ts","sourceRoot":"","sources":["../../src/client/chat-session-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAc,MAAM,oBAAoB,CAAC;AAGhE,MAAM,MAAM,0BAA0B,GAAG;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,sBAAsB,gBAItB,MAAM,WAAW,0BAA0B,UAqC1D"}
@@ -1,38 +1,29 @@
1
1
  import { useCallback } from "react";
2
+ import { generateId } from "../shared/index.js";
2
3
  import { useAIStreamManager } from "./context.js";
3
4
  /**
4
5
  * ページ遷移前にセッションを事前に初期化し、オプションでストリーミングを開始するフック
5
6
  *
6
7
  * @returns prefetchChatSession - セッションの初期化とストリーミング開始を行う関数
7
8
  *
8
- * @example
9
- * ```tsx
10
- * const prefetch = usePrefetchChatSession();
11
- *
12
- * // セッション初期化のみ
13
- * prefetch('session-1', {
14
- * initialMessages: [{ id: '1', role: 'user', content: 'Hello' }]
15
- * });
16
- *
17
- * // セッション初期化とストリーミング開始(完了を待たない)
18
- * prefetch('session-2', {
19
- * initialMessages: [{ id: '1', role: 'user', content: 'Hello' }],
20
- * startStream: true,
21
- * api: '/api/chat'
22
- * });
23
- * ```
24
9
  */
25
10
  export function usePrefetchChatSession() {
26
11
  const manager = useAIStreamManager();
27
12
  const prefetchChatSession = useCallback((sessionId, options) => {
28
13
  // セッションの初期化(すでに存在する場合はスキップされる)
29
- manager.initSession(sessionId, options.initialMessages);
14
+ manager.initSession(sessionId);
30
15
  // startStreamがtrueの場合、ストリーミングを開始(完了を待たない)
31
- if (options.startStream) {
16
+ if (options.streamMessageContent) {
32
17
  // streamChatを呼び出すが、awaitせずに即座に返す
33
18
  // これによりストリーミングはバックグラウンドで継続される
34
19
  manager
35
- .streamChat(sessionId, options.initialMessages, {
20
+ .streamChat(sessionId, [
21
+ {
22
+ id: generateId({ prefix: "msg-" }),
23
+ role: "user",
24
+ content: options.streamMessageContent,
25
+ },
26
+ ], {
36
27
  api: options.api,
37
28
  body: options.body,
38
29
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simple-ai-sdk",
3
- "version": "1.0.11",
3
+ "version": "1.0.12",
4
4
  "private": false,
5
5
  "description": "Simple AI SDK for Hono / React19+ / OpenAI",
6
6
  "type": "module",