@unif/react-native-chat-sdk 0.4.1 → 0.5.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 (100) hide show
  1. package/lib/commonjs/hooks/ChatProvider.js +6 -5
  2. package/lib/commonjs/hooks/ChatProvider.js.map +1 -1
  3. package/lib/commonjs/hooks/useXChat.js +3 -11
  4. package/lib/commonjs/hooks/useXChat.js.map +1 -1
  5. package/lib/commonjs/hooks/useXConversations.js +24 -4
  6. package/lib/commonjs/hooks/useXConversations.js.map +1 -1
  7. package/lib/commonjs/hooks/useXModel.js.map +1 -1
  8. package/lib/commonjs/index.js +19 -0
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/providers/AbstractChatProvider.js.map +1 -1
  11. package/lib/commonjs/providers/DeepSeekChatProvider.js.map +1 -1
  12. package/lib/commonjs/providers/OpenAIChatProvider.js +1 -1
  13. package/lib/commonjs/providers/OpenAIChatProvider.js.map +1 -1
  14. package/lib/commonjs/stores/chatStore.js +19 -0
  15. package/lib/commonjs/stores/chatStore.js.map +1 -1
  16. package/lib/commonjs/stores/historyStore.js +26 -0
  17. package/lib/commonjs/stores/historyStore.js.map +1 -1
  18. package/lib/commonjs/tools/XRequest.js +1 -1
  19. package/lib/commonjs/tools/XRequest.js.map +1 -1
  20. package/lib/commonjs/tools/XStream.js +0 -1
  21. package/lib/commonjs/tools/XStream.js.map +1 -1
  22. package/lib/module/hooks/ChatProvider.js +6 -5
  23. package/lib/module/hooks/ChatProvider.js.map +1 -1
  24. package/lib/module/hooks/useXChat.js +5 -13
  25. package/lib/module/hooks/useXChat.js.map +1 -1
  26. package/lib/module/hooks/useXConversations.js +24 -4
  27. package/lib/module/hooks/useXConversations.js.map +1 -1
  28. package/lib/module/hooks/useXModel.js.map +1 -1
  29. package/lib/module/index.js +2 -0
  30. package/lib/module/index.js.map +1 -1
  31. package/lib/module/providers/AbstractChatProvider.js.map +1 -1
  32. package/lib/module/providers/DeepSeekChatProvider.js.map +1 -1
  33. package/lib/module/providers/OpenAIChatProvider.js +1 -1
  34. package/lib/module/providers/OpenAIChatProvider.js.map +1 -1
  35. package/lib/module/stores/chatStore.js +16 -0
  36. package/lib/module/stores/chatStore.js.map +1 -1
  37. package/lib/module/stores/historyStore.js +26 -0
  38. package/lib/module/stores/historyStore.js.map +1 -1
  39. package/lib/module/stores/modelStore.js.map +1 -1
  40. package/lib/module/stores/sessionStore.js.map +1 -1
  41. package/lib/module/tools/XRequest.js +1 -1
  42. package/lib/module/tools/XRequest.js.map +1 -1
  43. package/lib/module/tools/XStream.js +0 -1
  44. package/lib/module/tools/XStream.js.map +1 -1
  45. package/lib/typescript/commonjs/hooks/ChatProvider.d.ts +3 -2
  46. package/lib/typescript/commonjs/hooks/ChatProvider.d.ts.map +1 -1
  47. package/lib/typescript/commonjs/hooks/useXChat.d.ts +1 -2
  48. package/lib/typescript/commonjs/hooks/useXChat.d.ts.map +1 -1
  49. package/lib/typescript/commonjs/hooks/useXConversations.d.ts +3 -0
  50. package/lib/typescript/commonjs/hooks/useXConversations.d.ts.map +1 -1
  51. package/lib/typescript/commonjs/index.d.ts +3 -2
  52. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  53. package/lib/typescript/commonjs/providers/AbstractChatProvider.d.ts.map +1 -1
  54. package/lib/typescript/commonjs/providers/DeepSeekChatProvider.d.ts.map +1 -1
  55. package/lib/typescript/commonjs/providers/OpenAIChatProvider.d.ts.map +1 -1
  56. package/lib/typescript/commonjs/stores/chatStore.d.ts +3 -0
  57. package/lib/typescript/commonjs/stores/chatStore.d.ts.map +1 -1
  58. package/lib/typescript/commonjs/stores/historyStore.d.ts +1 -0
  59. package/lib/typescript/commonjs/stores/historyStore.d.ts.map +1 -1
  60. package/lib/typescript/commonjs/tools/SSEParser.d.ts.map +1 -1
  61. package/lib/typescript/commonjs/tools/XStream.d.ts.map +1 -1
  62. package/lib/typescript/commonjs/types/provider.d.ts.map +1 -1
  63. package/lib/typescript/module/hooks/ChatProvider.d.ts +3 -2
  64. package/lib/typescript/module/hooks/ChatProvider.d.ts.map +1 -1
  65. package/lib/typescript/module/hooks/useXChat.d.ts +1 -2
  66. package/lib/typescript/module/hooks/useXChat.d.ts.map +1 -1
  67. package/lib/typescript/module/hooks/useXConversations.d.ts +3 -0
  68. package/lib/typescript/module/hooks/useXConversations.d.ts.map +1 -1
  69. package/lib/typescript/module/index.d.ts +3 -2
  70. package/lib/typescript/module/index.d.ts.map +1 -1
  71. package/lib/typescript/module/providers/AbstractChatProvider.d.ts.map +1 -1
  72. package/lib/typescript/module/providers/DeepSeekChatProvider.d.ts.map +1 -1
  73. package/lib/typescript/module/providers/OpenAIChatProvider.d.ts.map +1 -1
  74. package/lib/typescript/module/stores/chatStore.d.ts +3 -0
  75. package/lib/typescript/module/stores/chatStore.d.ts.map +1 -1
  76. package/lib/typescript/module/stores/historyStore.d.ts +1 -0
  77. package/lib/typescript/module/stores/historyStore.d.ts.map +1 -1
  78. package/lib/typescript/module/tools/SSEParser.d.ts.map +1 -1
  79. package/lib/typescript/module/tools/XStream.d.ts.map +1 -1
  80. package/lib/typescript/module/types/provider.d.ts.map +1 -1
  81. package/package.json +1 -1
  82. package/src/hooks/ChatProvider.tsx +24 -12
  83. package/src/hooks/useXChat.ts +11 -23
  84. package/src/hooks/useXConversations.ts +39 -10
  85. package/src/hooks/useXModel.ts +2 -2
  86. package/src/index.ts +31 -19
  87. package/src/providers/AbstractChatProvider.ts +7 -3
  88. package/src/providers/DeepSeekChatProvider.ts +4 -7
  89. package/src/providers/OpenAIChatProvider.ts +6 -6
  90. package/src/stores/chatStore.ts +29 -10
  91. package/src/stores/historyStore.ts +45 -8
  92. package/src/stores/modelStore.ts +1 -1
  93. package/src/stores/sessionStore.ts +1 -1
  94. package/src/tools/SSEParser.ts +1 -1
  95. package/src/tools/XRequest.ts +1 -1
  96. package/src/tools/XStream.ts +0 -1
  97. package/src/types/provider.ts +2 -2
  98. package/lib/commonjs/index.md +0 -188
  99. package/lib/module/index.md +0 -188
  100. package/src/index.md +0 -188
@@ -1 +1 @@
1
- {"version":3,"file":"SSEParser.d.ts","sourceRoot":"","sources":["../../../../src/tools/SSEParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAE9C,qBAAa,SAAS;IACpB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,OAAO,CAAK;IAEpB,KAAK,IAAI,IAAI;IAMb;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE;CA2BpC"}
1
+ {"version":3,"file":"SSEParser.d.ts","sourceRoot":"","sources":["../../../../src/tools/SSEParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,qBAAa,SAAS;IACpB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,OAAO,CAAK;IAEpB,KAAK,IAAI,IAAI;IAMb;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE;CA2BpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"XStream.d.ts","sourceRoot":"","sources":["../../../../src/tools/XStream.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;CAC1E;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAUD,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAK;gBAEZ,MAAM,EAAE,aAAa;IAIjC,OAAO,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IA+E1C,KAAK,IAAI,IAAI;IAYb,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,UAAU;CAMnB"}
1
+ {"version":3,"file":"XStream.d.ts","sourceRoot":"","sources":["../../../../src/tools/XStream.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;CAC1E;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAUD,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAK;gBAEZ,MAAM,EAAE,aAAa;IAIjC,OAAO,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IA8E1C,KAAK,IAAI,IAAI;IAYb,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,UAAU;CAMnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/types/provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,OAAO,CAAC;AAE1C,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,WAAW;IAC5C,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,WAAW;IACtD,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAClD"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/types/provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,WAAW;IAC5C,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,WAAW;IACtD,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAClD"}
@@ -32,18 +32,19 @@ interface ChatContextValue<Message = ChatMessage> {
32
32
  onRequest: (input: unknown) => void;
33
33
  onReload: (id: string, input: unknown) => void;
34
34
  abort: () => void;
35
- resetChat: () => void;
36
- loadSession: (messages: ChatMessage[]) => void;
37
35
  clearError: () => void;
38
36
  setMessages: (messages: MessageInfo<Message>[] | ((prev: MessageInfo<Message>[]) => MessageInfo<Message>[])) => void;
39
37
  setMessage: (id: string, partial: Partial<MessageInfo<Message>> | ((msg: MessageInfo<Message>) => Partial<MessageInfo<Message>>)) => void;
40
38
  removeMessage: (id: string) => void;
41
39
  sessions: SessionSummary[];
42
40
  activeId: string;
41
+ setActiveId: (id: string) => void;
43
42
  switchSession: (id: string) => Promise<Message[]>;
44
43
  newSession: () => void;
45
44
  deleteSession: (id: string) => Promise<void>;
46
45
  archiveSession: (id: string, title: string, messages: Message[]) => Promise<void>;
46
+ saveSession: (id: string, title: string, messages: Message[]) => Promise<void>;
47
+ loadSessionMessages: (id: string) => Promise<Message[]>;
47
48
  updateSession: (id: string, data: Partial<{
48
49
  title: string;
49
50
  }>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"ChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/hooks/ChatProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/hooks/ChatProvider.tsx"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface MessageInfo<Message = ChatMessage> {
14
14
  extra?: Record<string, unknown>;
15
15
  }
16
16
  export interface UseXChatConfig<Message = ChatMessage, Input = RequestParams<Message>, Output = SSEOutput> {
17
+ conversationKey: string;
17
18
  provider: AbstractChatProvider<Message, Input, Output>;
18
19
  requestPlaceholder?: (input: Input) => Message;
19
20
  requestFallback?: (input: Input, info: {
@@ -29,8 +30,6 @@ export interface UseXChatReturn<Message = ChatMessage, Input = RequestParams<Mes
29
30
  onRequest: (input: Input) => void;
30
31
  onReload: (id: string, input: Input) => void;
31
32
  abort: () => void;
32
- resetChat: () => void;
33
- loadSession: (messages: ChatMessage[]) => void;
34
33
  clearError: () => void;
35
34
  setMessages: (messages: MessageInfo<Message>[] | ((prev: MessageInfo<Message>[]) => MessageInfo<Message>[])) => void;
36
35
  setMessage: (id: string, partial: Partial<MessageInfo<Message>> | ((msg: MessageInfo<Message>) => Partial<MessageInfo<Message>>)) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useXChat.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useXChat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,WAAW,CAAC,OAAO,GAAG,WAAW;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,cAAc,CAC7B,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,EAC9B,MAAM,GAAG,SAAS;IAElB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,OAAO,CAAC;IACpE,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc,CAC7B,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC;IAE9B,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC7C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IAC/C,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,WAAW,EAAE,CACX,QAAQ,EACJ,WAAW,CAAC,OAAO,CAAC,EAAE,GACtB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,KAC3D,IAAI,CAAC;IACV,UAAU,EAAE,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EACH,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAC7B,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,KAC/D,IAAI,CAAC;IACV,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,wBAAgB,QAAQ,CACtB,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,EAC9B,MAAM,GAAG,SAAS,EAElB,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,GAC7C,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAkPhC"}
1
+ {"version":3,"file":"useXChat.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useXChat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,WAAW,CAAC,OAAO,GAAG,WAAW;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,cAAc,CAC7B,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,EAC9B,MAAM,GAAG,SAAS;IAElB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,OAAO,CAAC;IACpE,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc,CAC7B,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC;IAE9B,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC7C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,WAAW,EAAE,CACX,QAAQ,EACJ,WAAW,CAAC,OAAO,CAAC,EAAE,GACtB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,KAC3D,IAAI,CAAC;IACV,UAAU,EAAE,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EACH,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAC7B,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,KAC/D,IAAI,CAAC;IACV,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,wBAAgB,QAAQ,CACtB,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,EAC9B,MAAM,GAAG,SAAS,EAElB,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,GAC7C,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAuOhC"}
@@ -13,10 +13,13 @@ export interface UseXConversationsOptions {
13
13
  export declare function useXConversations(options: UseXConversationsOptions): {
14
14
  sessions: import("./useXConversations").SessionSummary[];
15
15
  activeId: string;
16
+ setActiveId: (id: string) => void;
16
17
  switchSession: (id: string) => Promise<ChatMessage[]>;
17
18
  newSession: () => void;
18
19
  deleteSession: (id: string) => Promise<void>;
19
20
  archiveSession: (id: string, title: string, messages: ChatMessage[]) => Promise<void>;
21
+ saveSession: (id: string, title: string, messages: ChatMessage[]) => Promise<void>;
22
+ loadSessionMessages: (id: string) => Promise<ChatMessage[]>;
20
23
  updateSession: (id: string, data: Partial<{
21
24
  title: string;
22
25
  }>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useXConversations.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useXConversations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAC,KAAK,cAAc,EAAC,MAAM,wBAAwB,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB;;;wBAqBpD,MAAM,KAAG,OAAO,CAAC,WAAW,EAAE,CAAC;;wBAY/B,MAAM;yBAWN,MAAM,SAAS,MAAM,YAAY,WAAW,EAAE;wBAQpD,MAAM,QAAQ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;EAmBhD"}
1
+ {"version":3,"file":"useXConversations.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useXConversations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB;;;sBAoB5B,MAAM;wBAK9B,MAAM,KAAG,OAAO,CAAC,WAAW,EAAE,CAAC;;wBAY/B,MAAM;yBAWN,MAAM,SAAS,MAAM,YAAY,WAAW,EAAE;sBAQ9C,MAAM,SAAS,MAAM,YAAY,WAAW,EAAE;8BAQ9C,MAAM,KAAG,OAAO,CAAC,WAAW,EAAE,CAAC;wBAarC,MAAM,QAAQ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;EAsBhD"}
@@ -16,10 +16,11 @@ export type { OpenAIChatProviderConfig } from './providers/OpenAIChatProvider';
16
16
  export { DeepSeekChatProvider } from './providers/DeepSeekChatProvider';
17
17
  export type { DeepSeekChatProviderConfig } from './providers/DeepSeekChatProvider';
18
18
  export type { ChatStorage } from './stores/storage';
19
+ export { getOrCreateChatStore, deleteChatStore, getChatStoreMessages, } from './stores/chatStore';
19
20
  export { useXChat } from './hooks/useXChat';
20
- export type { UseXChatConfig, UseXChatReturn, MessageInfo } from './hooks/useXChat';
21
+ export type { UseXChatConfig, UseXChatReturn, MessageInfo, } from './hooks/useXChat';
21
22
  export { useXConversations } from './hooks/useXConversations';
22
- export type { UseXConversationsOptions, SessionSummary } from './hooks/useXConversations';
23
+ export type { UseXConversationsOptions, SessionSummary, } from './hooks/useXConversations';
23
24
  export { useXModel } from './hooks/useXModel';
24
25
  export type { UseXModelOptions, ModelInfo } from './hooks/useXModel';
25
26
  export { ChatProvider, useChatContext } from './hooks/ChatProvider';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,aAAa,EACb,SAAS,EACT,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AACxC,YAAY,EAAC,aAAa,EAAE,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AAErE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,YAAY,EAAC,cAAc,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAExE,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAC,oBAAoB,EAAC,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,YAAY,EAAC,wBAAwB,EAAC,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAC,oBAAoB,EAAC,MAAM,kCAAkC,CAAC;AACtE,YAAY,EAAC,0BAA0B,EAAC,MAAM,kCAAkC,CAAC;AAGjF,YAAY,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,YAAY,EAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,YAAY,EAAC,wBAAwB,EAAE,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAExF,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAC5C,YAAY,EAAC,gBAAgB,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAC,YAAY,EAAE,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAClE,YAAY,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,aAAa,EACb,SAAS,EACT,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAGnF,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,YAAY,EACV,cAAc,EACd,cAAc,EACd,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,YAAY,EACV,wBAAwB,EACxB,cAAc,GACf,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/providers/AbstractChatProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAC,QAAQ,EAAoB,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAC,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAEnF,8BAAsB,oBAAoB,CACxC,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,EAC9B,MAAM,GAAG,SAAS;IAElB,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC;gBAEhB,MAAM,EAAE;QAAE,OAAO,EAAE,QAAQ,CAAA;KAAE;IAIzC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAE/D;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAErD;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO;IAErE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,IAAI;IAyBtE;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"AbstractChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/providers/AbstractChatProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAE3B,8BAAsB,oBAAoB,CACxC,OAAO,GAAG,WAAW,EACrB,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,EAC9B,MAAM,GAAG,SAAS;IAElB,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC;gBAEhB,MAAM,EAAE;QAAE,OAAO,EAAE,QAAQ,CAAA;KAAE;IAIzC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAE/D;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAErD;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO;IAErE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,IAAI;IAyBtE;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeepSeekChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/providers/DeepSeekChatProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,oBAAqB,SAAQ,kBAAkB;gBAC9C,MAAM,EAAE,0BAA0B;IAS9C;;OAEG;IACM,gBAAgB,CACvB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,WAAW,GACpB,WAAW;CAsEf"}
1
+ {"version":3,"file":"DeepSeekChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/providers/DeepSeekChatProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,oBAAqB,SAAQ,kBAAkB;gBAC9C,MAAM,EAAE,0BAA0B;IAS9C;;OAEG;IACM,gBAAgB,CACvB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,WAAW,GACpB,WAAW;CAmEf"}
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/providers/OpenAIChatProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAAC,WAAW,EAAgB,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EAAC,aAAa,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAEhE,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAKD,qBAAa,kBAAmB,SAAQ,oBAAoB,CAC1D,WAAW,EACX,aAAa,CAAC,WAAW,CAAC,EAC1B,SAAS,CACV;IACC,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,EAAE,wBAAwB;IAiB5C;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAkB3E;;OAEG;IACH,qBAAqB,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW;IAYrE;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW;IAiCvE,OAAO,CAAC,oBAAoB;CAW7B"}
1
+ {"version":3,"file":"OpenAIChatProvider.d.ts","sourceRoot":"","sources":["../../../../src/providers/OpenAIChatProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAiB,MAAM,kBAAkB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAKD,qBAAa,kBAAmB,SAAQ,oBAAoB,CAC1D,WAAW,EACX,aAAa,CAAC,WAAW,CAAC,EAC1B,SAAS,CACV;IACC,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,EAAE,wBAAwB;IAiB5C;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAkB3E;;OAEG;IACH,qBAAqB,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW;IAYrE;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW;IAiCvE,OAAO,CAAC,oBAAoB;CAW7B"}
@@ -22,6 +22,9 @@ interface ChatState {
22
22
  resetChat: () => void;
23
23
  loadSession: (messages: ChatMessage[]) => void;
24
24
  }
25
+ export declare function getOrCreateChatStore(key: string): import("zustand").UseBoundStore<import("zustand").StoreApi<ChatState>>;
26
+ export declare function deleteChatStore(key: string): void;
27
+ export declare function getChatStoreMessages(key: string): ChatMessage[] | undefined;
25
28
  export declare const createChatStore: () => import("zustand").UseBoundStore<import("zustand").StoreApi<ChatState>>;
26
29
  export {};
27
30
  //# sourceMappingURL=chatStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chatStore.d.ts","sourceRoot":"","sources":["../../../../src/stores/chatStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAEjD,UAAU,SAAS;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,UAAU,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAC3C,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;IAChF,aAAa,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,CACX,QAAQ,EACJ,WAAW,EAAE,GACb,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,CAAC,KACzC,IAAI,CAAC;IACV,UAAU,EAAE,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EACH,OAAO,CAAC,WAAW,CAAC,GACpB,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,KAC7C,IAAI,CAAC;IACV,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,cAAc,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACzC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;CAChD;AAED,eAAO,MAAM,eAAe,8EA2EvB,CAAC"}
1
+ {"version":3,"file":"chatStore.d.ts","sourceRoot":"","sources":["../../../../src/stores/chatStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,UAAU,SAAS;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,UAAU,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAC3C,aAAa,EAAE,CACb,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,WAAW,KACvC,IAAI,CAAC;IACV,aAAa,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,CACX,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,CAAC,KAC/D,IAAI,CAAC;IACV,UAAU,EAAE,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,KACzE,IAAI,CAAC;IACV,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,cAAc,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACzC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;CAChD;AAKD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,0EAO/C;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,QAE1C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,6BAE/C;AAED,eAAO,MAAM,eAAe,8EA2EvB,CAAC"}
@@ -14,6 +14,7 @@ export interface SessionSummary {
14
14
  export interface HistoryStore {
15
15
  sessions: SessionSummary[];
16
16
  archiveSession: (id: string, title: string, messages: ChatMessage[]) => Promise<void>;
17
+ saveSession: (id: string, title: string, messages: ChatMessage[]) => Promise<void>;
17
18
  loadSessionMessages: (id: string) => Promise<ChatMessage[]>;
18
19
  deleteSession: (id: string) => Promise<void>;
19
20
  clearAll: () => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"historyStore.d.ts","sourceRoot":"","sources":["../../../../src/stores/historyStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAK3C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,cAAc,EAAE,CACd,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,WAAW,EAAE,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5D,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAqFrE"}
1
+ {"version":3,"file":"historyStore.d.ts","sourceRoot":"","sources":["../../../../src/stores/historyStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAK7C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,cAAc,EAAE,CACd,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,WAAW,EAAE,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,WAAW,EAAE,CACX,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,WAAW,EAAE,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5D,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAqHrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"SSEParser.d.ts","sourceRoot":"","sources":["../../../../src/tools/SSEParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAE9C,qBAAa,SAAS;IACpB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,OAAO,CAAK;IAEpB,KAAK,IAAI,IAAI;IAMb;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE;CA2BpC"}
1
+ {"version":3,"file":"SSEParser.d.ts","sourceRoot":"","sources":["../../../../src/tools/SSEParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,qBAAa,SAAS;IACpB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,OAAO,CAAK;IAEpB,KAAK,IAAI,IAAI;IAMb;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE;CA2BpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"XStream.d.ts","sourceRoot":"","sources":["../../../../src/tools/XStream.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;CAC1E;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAUD,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAK;gBAEZ,MAAM,EAAE,aAAa;IAIjC,OAAO,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IA+E1C,KAAK,IAAI,IAAI;IAYb,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,UAAU;CAMnB"}
1
+ {"version":3,"file":"XStream.d.ts","sourceRoot":"","sources":["../../../../src/tools/XStream.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;CAC1E;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAUD,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAK;gBAEZ,MAAM,EAAE,aAAa;IAIjC,OAAO,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IA8E1C,KAAK,IAAI,IAAI;IAYb,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,UAAU;CAMnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/types/provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,OAAO,CAAC;AAE1C,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,WAAW;IAC5C,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,WAAW;IACtD,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAClD"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/types/provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,WAAW;IAC5C,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,WAAW;IACtD,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAClD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unif/react-native-chat-sdk",
3
- "version": "0.4.1",
3
+ "version": "0.5.0",
4
4
  "description": "UNIF React Native Chat SDK — 流式通信、Provider、状态管理",
5
5
  "main": "./lib/commonjs/index.js",
6
6
  "module": "./lib/module/index.js",
@@ -23,7 +23,7 @@ import type { AbstractChatProvider } from '../providers/AbstractChatProvider';
23
23
  export interface ChatProviderProps<
24
24
  Message = ChatMessage,
25
25
  Input = RequestParams<Message>,
26
- Output = SSEOutput
26
+ Output = SSEOutput,
27
27
  > {
28
28
  provider: AbstractChatProvider<Message, Input, Output>;
29
29
  storage?: ChatStorage;
@@ -44,8 +44,6 @@ interface ChatContextValue<Message = ChatMessage> {
44
44
  onRequest: (input: unknown) => void;
45
45
  onReload: (id: string, input: unknown) => void;
46
46
  abort: () => void;
47
- resetChat: () => void;
48
- loadSession: (messages: ChatMessage[]) => void;
49
47
  clearError: () => void;
50
48
  setMessages: (
51
49
  messages:
@@ -62,6 +60,7 @@ interface ChatContextValue<Message = ChatMessage> {
62
60
  // useXConversations
63
61
  sessions: SessionSummary[];
64
62
  activeId: string;
63
+ setActiveId: (id: string) => void;
65
64
  switchSession: (id: string) => Promise<Message[]>;
66
65
  newSession: () => void;
67
66
  deleteSession: (id: string) => Promise<void>;
@@ -70,6 +69,12 @@ interface ChatContextValue<Message = ChatMessage> {
70
69
  title: string,
71
70
  messages: Message[]
72
71
  ) => Promise<void>;
72
+ saveSession: (
73
+ id: string,
74
+ title: string,
75
+ messages: Message[]
76
+ ) => Promise<void>;
77
+ loadSessionMessages: (id: string) => Promise<Message[]>;
73
78
  updateSession: (id: string, data: Partial<{ title: string }>) => void;
74
79
  // useXModel
75
80
  selectedModel: string;
@@ -95,7 +100,7 @@ const memoryStorage: ChatStorage = {
95
100
  export function ChatProvider<
96
101
  Message = ChatMessage,
97
102
  Input = RequestParams<Message>,
98
- Output = SSEOutput
103
+ Output = SSEOutput,
99
104
  >(props: ChatProviderProps<Message, Input, Output>) {
100
105
  const {
101
106
  provider,
@@ -108,24 +113,31 @@ export function ChatProvider<
108
113
  children,
109
114
  } = props;
110
115
 
116
+ const convOptions: UseXConversationsOptions = useMemo(
117
+ () => ({ storage: storage ?? memoryStorage }),
118
+ [storage]
119
+ );
120
+ const conversations = useXConversations(convOptions);
121
+
111
122
  const chatConfig: UseXChatConfig<Message, Input, Output> = useMemo(
112
123
  () => ({
124
+ conversationKey: conversations.activeId,
113
125
  provider,
114
126
  generateId,
115
127
  requestPlaceholder,
116
128
  requestFallback,
117
129
  }),
118
- [provider, generateId, requestPlaceholder, requestFallback]
130
+ [
131
+ conversations.activeId,
132
+ provider,
133
+ generateId,
134
+ requestPlaceholder,
135
+ requestFallback,
136
+ ]
119
137
  );
120
138
 
121
139
  const chat = useXChat(chatConfig);
122
140
 
123
- const convOptions: UseXConversationsOptions = useMemo(
124
- () => ({ storage: storage ?? memoryStorage }),
125
- [storage]
126
- );
127
- const conversations = useXConversations(convOptions);
128
-
129
141
  const model = useXModel({ models, defaultModel });
130
142
 
131
143
  const value = useMemo(
@@ -145,7 +157,7 @@ export function ChatProvider<
145
157
  }
146
158
 
147
159
  export function useChatContext<
148
- Message = ChatMessage
160
+ Message = ChatMessage,
149
161
  >(): ChatContextValue<Message> {
150
162
  const ctx = useContext(ChatContext);
151
163
  if (!ctx) {
@@ -4,8 +4,8 @@
4
4
  * 消费 ChatProvider,输出可渲染的 messages 列表
5
5
  */
6
6
 
7
- import { useCallback, useEffect, useRef, useSyncExternalStore } from 'react';
8
- import { createChatStore } from '../stores/chatStore';
7
+ import { useCallback, useEffect, useMemo, useSyncExternalStore } from 'react';
8
+ import { getOrCreateChatStore } from '../stores/chatStore';
9
9
  import type { AbstractChatProvider } from '../providers/AbstractChatProvider';
10
10
  import type { ChatMessage, MessageStatus } from '../types/message';
11
11
  import type { RequestParams, SSEOutput } from '../types/provider';
@@ -21,8 +21,9 @@ export interface MessageInfo<Message = ChatMessage> {
21
21
  export interface UseXChatConfig<
22
22
  Message = ChatMessage,
23
23
  Input = RequestParams<Message>,
24
- Output = SSEOutput
24
+ Output = SSEOutput,
25
25
  > {
26
+ conversationKey: string;
26
27
  provider: AbstractChatProvider<Message, Input, Output>;
27
28
  requestPlaceholder?: (input: Input) => Message;
28
29
  requestFallback?: (input: Input, info: { error: Error }) => Message;
@@ -31,7 +32,7 @@ export interface UseXChatConfig<
31
32
 
32
33
  export interface UseXChatReturn<
33
34
  Message = ChatMessage,
34
- Input = RequestParams<Message>
35
+ Input = RequestParams<Message>,
35
36
  > {
36
37
  messages: MessageInfo<Message>[];
37
38
  requesting: boolean;
@@ -40,8 +41,6 @@ export interface UseXChatReturn<
40
41
  onRequest: (input: Input) => void;
41
42
  onReload: (id: string, input: Input) => void;
42
43
  abort: () => void;
43
- resetChat: () => void;
44
- loadSession: (messages: ChatMessage[]) => void;
45
44
  clearError: () => void;
46
45
  setMessages: (
47
46
  messages:
@@ -60,14 +59,16 @@ export interface UseXChatReturn<
60
59
  export function useXChat<
61
60
  Message = ChatMessage,
62
61
  Input = RequestParams<Message>,
63
- Output = SSEOutput
62
+ Output = SSEOutput,
64
63
  >(
65
64
  config: UseXChatConfig<Message, Input, Output>
66
65
  ): UseXChatReturn<Message, Input> {
67
- const { provider } = config;
66
+ const { provider, conversationKey } = config;
68
67
 
69
- const storeRef = useRef(createChatStore());
70
- const store = storeRef.current;
68
+ const store = useMemo(
69
+ () => getOrCreateChatStore(conversationKey),
70
+ [conversationKey]
71
+ );
71
72
 
72
73
  // 使用 useSyncExternalStore 订阅 zustand store 变化
73
74
  const state = useSyncExternalStore(
@@ -153,17 +154,6 @@ export function useXChat<
153
154
  store.getState().setRequesting(false);
154
155
  }, [provider, store]);
155
156
 
156
- const resetChat = useCallback(() => {
157
- store.getState().resetChat();
158
- }, [store]);
159
-
160
- const loadSession = useCallback(
161
- (messages: ChatMessage[]) => {
162
- store.getState().loadSession(messages);
163
- },
164
- [store]
165
- );
166
-
167
157
  const clearError = useCallback(() => {
168
158
  store.getState().setError(null);
169
159
  }, [store]);
@@ -298,8 +288,6 @@ export function useXChat<
298
288
  onRequest,
299
289
  onReload,
300
290
  abort,
301
- resetChat,
302
- loadSession,
303
291
  clearError,
304
292
  setMessages,
305
293
  setMessage,
@@ -4,12 +4,13 @@
4
4
  * 组合 sessionStore + historyStore,管理会话生命周期
5
5
  */
6
6
 
7
- import {useState, useCallback, useEffect, useRef} from 'react';
8
- import {createHistoryStore} from '../stores/historyStore';
9
- import type {ChatStorage} from '../stores/storage';
10
- import type {ChatMessage} from '../types/message';
7
+ import { useState, useCallback, useEffect, useRef } from 'react';
8
+ import { createHistoryStore } from '../stores/historyStore';
9
+ import { getOrCreateChatStore } from '../stores/chatStore';
10
+ import type { ChatStorage } from '../stores/storage';
11
+ import type { ChatMessage } from '../types/message';
11
12
 
12
- export {type SessionSummary} from '../stores/historyStore';
13
+ export { type SessionSummary } from '../stores/historyStore';
13
14
 
14
15
  export interface UseXConversationsOptions {
15
16
  storage: ChatStorage;
@@ -17,13 +18,13 @@ export interface UseXConversationsOptions {
17
18
  }
18
19
 
19
20
  export function useXConversations(options: UseXConversationsOptions) {
20
- const {storage} = options;
21
+ const { storage } = options;
21
22
 
22
23
  const historyRef = useRef(createHistoryStore(storage));
23
24
  const history = historyRef.current;
24
25
 
25
26
  const [sessions, setSessions] = useState(history.sessions);
26
- const [activeId, setActiveId] = useState('');
27
+ const [activeId, setActiveIdState] = useState('');
27
28
 
28
29
  // 初始化加载
29
30
  useEffect(() => {
@@ -36,16 +37,20 @@ export function useXConversations(options: UseXConversationsOptions) {
36
37
  // eslint-disable-next-line react-hooks/exhaustive-deps
37
38
  }, []);
38
39
 
40
+ const setActiveId = useCallback((id: string) => {
41
+ setActiveIdState(id);
42
+ }, []);
43
+
39
44
  const switchSession = useCallback(
40
45
  async (id: string): Promise<ChatMessage[]> => {
41
- setActiveId(id);
46
+ setActiveIdState(id);
42
47
  return await history.loadSessionMessages(id);
43
48
  },
44
49
  [history]
45
50
  );
46
51
 
47
52
  const newSession = useCallback(() => {
48
- setActiveId('');
53
+ setActiveIdState('');
49
54
  }, []);
50
55
 
51
56
  const deleteSession = useCallback(
@@ -53,7 +58,7 @@ export function useXConversations(options: UseXConversationsOptions) {
53
58
  await history.deleteSession(id);
54
59
  setSessions([...history.sessions]);
55
60
  if (activeId === id) {
56
- setActiveId('');
61
+ setActiveIdState('');
57
62
  }
58
63
  },
59
64
  [history, activeId]
@@ -67,6 +72,27 @@ export function useXConversations(options: UseXConversationsOptions) {
67
72
  [history]
68
73
  );
69
74
 
75
+ const saveSession = useCallback(
76
+ async (id: string, title: string, messages: ChatMessage[]) => {
77
+ await history.saveSession(id, title, messages);
78
+ setSessions([...history.sessions]);
79
+ },
80
+ [history]
81
+ );
82
+
83
+ const loadSessionMessages = useCallback(
84
+ async (id: string): Promise<ChatMessage[]> => {
85
+ const msgs = await history.loadSessionMessages(id);
86
+ // 将消息加载到对应的内存 store
87
+ if (msgs.length > 0) {
88
+ const store = getOrCreateChatStore(id);
89
+ store.getState().loadSession(msgs);
90
+ }
91
+ return msgs;
92
+ },
93
+ [history]
94
+ );
95
+
70
96
  const updateSession = useCallback(
71
97
  (id: string, data: Partial<{ title: string }>) => {
72
98
  const session = history.sessions.find((s) => s.id === id);
@@ -81,10 +107,13 @@ export function useXConversations(options: UseXConversationsOptions) {
81
107
  return {
82
108
  sessions,
83
109
  activeId,
110
+ setActiveId,
84
111
  switchSession,
85
112
  newSession,
86
113
  deleteSession,
87
114
  archiveSession,
115
+ saveSession,
116
+ loadSessionMessages,
88
117
  updateSession,
89
118
  };
90
119
  }
@@ -2,7 +2,7 @@
2
2
  * useXModel — 模型选择 hook
3
3
  */
4
4
 
5
- import {useState, useCallback} from 'react';
5
+ import { useState, useCallback } from 'react';
6
6
 
7
7
  export interface ModelInfo {
8
8
  id: string;
@@ -16,7 +16,7 @@ export interface UseXModelOptions {
16
16
  }
17
17
 
18
18
  export function useXModel(options: UseXModelOptions) {
19
- const {models, defaultModel} = options;
19
+ const { models, defaultModel } = options;
20
20
  const [selectedModel, setSelected] = useState(
21
21
  defaultModel ?? models[0]?.id ?? ''
22
22
  );
package/src/index.ts CHANGED
@@ -30,33 +30,45 @@ export type {
30
30
  } from './types/provider';
31
31
 
32
32
  // Tools
33
- export {XStream} from './tools/XStream';
34
- export type {XStreamConfig, XStreamCallbacks} from './tools/XStream';
33
+ export { XStream } from './tools/XStream';
34
+ export type { XStreamConfig, XStreamCallbacks } from './tools/XStream';
35
35
 
36
- export {XRequest} from './tools/XRequest';
37
- export type {XRequestConfig, XRequestCallbacks} from './tools/XRequest';
36
+ export { XRequest } from './tools/XRequest';
37
+ export type { XRequestConfig, XRequestCallbacks } from './tools/XRequest';
38
38
 
39
- export {SSEParser} from './tools/SSEParser';
39
+ export { SSEParser } from './tools/SSEParser';
40
40
 
41
41
  // Providers
42
- export {AbstractChatProvider} from './providers/AbstractChatProvider';
43
- export {OpenAIChatProvider} from './providers/OpenAIChatProvider';
44
- export type {OpenAIChatProviderConfig} from './providers/OpenAIChatProvider';
45
- export {DeepSeekChatProvider} from './providers/DeepSeekChatProvider';
46
- export type {DeepSeekChatProviderConfig} from './providers/DeepSeekChatProvider';
42
+ export { AbstractChatProvider } from './providers/AbstractChatProvider';
43
+ export { OpenAIChatProvider } from './providers/OpenAIChatProvider';
44
+ export type { OpenAIChatProviderConfig } from './providers/OpenAIChatProvider';
45
+ export { DeepSeekChatProvider } from './providers/DeepSeekChatProvider';
46
+ export type { DeepSeekChatProviderConfig } from './providers/DeepSeekChatProvider';
47
47
 
48
48
  // Stores
49
- export type {ChatStorage} from './stores/storage';
49
+ export type { ChatStorage } from './stores/storage';
50
+ export {
51
+ getOrCreateChatStore,
52
+ deleteChatStore,
53
+ getChatStoreMessages,
54
+ } from './stores/chatStore';
50
55
 
51
56
  // Hooks
52
- export {useXChat} from './hooks/useXChat';
53
- export type {UseXChatConfig, UseXChatReturn, MessageInfo} from './hooks/useXChat';
57
+ export { useXChat } from './hooks/useXChat';
58
+ export type {
59
+ UseXChatConfig,
60
+ UseXChatReturn,
61
+ MessageInfo,
62
+ } from './hooks/useXChat';
54
63
 
55
- export {useXConversations} from './hooks/useXConversations';
56
- export type {UseXConversationsOptions, SessionSummary} from './hooks/useXConversations';
64
+ export { useXConversations } from './hooks/useXConversations';
65
+ export type {
66
+ UseXConversationsOptions,
67
+ SessionSummary,
68
+ } from './hooks/useXConversations';
57
69
 
58
- export {useXModel} from './hooks/useXModel';
59
- export type {UseXModelOptions, ModelInfo} from './hooks/useXModel';
70
+ export { useXModel } from './hooks/useXModel';
71
+ export type { UseXModelOptions, ModelInfo } from './hooks/useXModel';
60
72
 
61
- export {ChatProvider, useChatContext} from './hooks/ChatProvider';
62
- export type {ChatProviderProps} from './hooks/ChatProvider';
73
+ export { ChatProvider, useChatContext } from './hooks/ChatProvider';
74
+ export type { ChatProviderProps } from './hooks/ChatProvider';
@@ -4,9 +4,13 @@
4
4
  * 3 个抽象方法:transformParams / transformLocalMessage / transformMessage
5
5
  */
6
6
 
7
- import type {XRequest, XRequestCallbacks} from '../tools/XRequest';
8
- import type {ChatMessage} from '../types/message';
9
- import type {RequestParams, SSEOutput, ProviderCallbacks} from '../types/provider';
7
+ import type { XRequest, XRequestCallbacks } from '../tools/XRequest';
8
+ import type { ChatMessage } from '../types/message';
9
+ import type {
10
+ RequestParams,
11
+ SSEOutput,
12
+ ProviderCallbacks,
13
+ } from '../types/provider';
10
14
 
11
15
  export abstract class AbstractChatProvider<
12
16
  Message = ChatMessage,