@assistant-ui/react-ai-sdk 1.1.14 → 1.1.15

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.
@@ -8,6 +8,5 @@ export type UseChatRuntimeOptions<UI_MESSAGE extends UIMessage = UIMessage> = Ch
8
8
  adapters?: AISDKRuntimeAdapter["adapters"] | undefined;
9
9
  toCreateMessage?: CustomToCreateMessageFunction;
10
10
  };
11
- export declare const useChatThreadRuntime: <UI_MESSAGE extends UIMessage = UIMessage>(options?: UseChatRuntimeOptions<UI_MESSAGE>) => AssistantRuntime;
12
11
  export declare const useChatRuntime: <UI_MESSAGE extends UIMessage = UIMessage>({ cloud, ...options }?: UseChatRuntimeOptions<UI_MESSAGE>) => AssistantRuntime;
13
12
  //# sourceMappingURL=useChatRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useChatRuntime.d.ts","sourceRoot":"","sources":["../../../src/ui/use-chat/useChatRuntime.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,gBAAgB,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,6BAA6B,EACnC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAiB,MAAM,IAAI,CAAC;AAI7C,MAAM,MAAM,qBAAqB,CAAC,UAAU,SAAS,SAAS,GAAG,SAAS,IACxE,QAAQ,CAAC,UAAU,CAAC,GAAG;IACrB,KAAK,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;IACvD,eAAe,CAAC,EAAE,6BAA6B,CAAC;CACjD,CAAC;AAqBJ,eAAO,MAAM,oBAAoB,GAAI,UAAU,SAAS,SAAS,GAAG,SAAS,EAC3E,UAAU,qBAAqB,CAAC,UAAU,CAAC,KAC1C,gBA6BF,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,SAAS,GAAG,SAAS,EAAE,wBAGtE,qBAAqB,CAAC,UAAU,CAAM,KAAG,gBAQ3C,CAAC"}
1
+ {"version":3,"file":"useChatRuntime.d.ts","sourceRoot":"","sources":["../../../src/ui/use-chat/useChatRuntime.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,gBAAgB,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,6BAA6B,EACnC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAiB,MAAM,IAAI,CAAC;AAI7C,MAAM,MAAM,qBAAqB,CAAC,UAAU,SAAS,SAAS,GAAG,SAAS,IACxE,QAAQ,CAAC,UAAU,CAAC,GAAG;IACrB,KAAK,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;IACvD,eAAe,CAAC,EAAE,6BAA6B,CAAC;CACjD,CAAC;AA0DJ,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,SAAS,GAAG,SAAS,EAAE,wBAGtE,qBAAqB,CAAC,UAAU,CAAM,KAAG,gBAS3C,CAAC"}
@@ -18,12 +18,13 @@ var useDynamicChatTransport = (transport) => {
18
18
  transportRef.current = transport;
19
19
  });
20
20
  const dynamicTransport = useMemo(
21
- () => new Proxy(transport, {
21
+ () => new Proxy(transportRef.current, {
22
22
  get(_, prop) {
23
- return transportRef.current[prop];
23
+ const res = transportRef.current[prop];
24
+ return typeof res === "function" ? res.bind(transportRef.current) : res;
24
25
  }
25
26
  }),
26
- [transport]
27
+ []
27
28
  );
28
29
  return dynamicTransport;
29
30
  };
@@ -61,11 +62,11 @@ var useChatRuntime = ({
61
62
  runtimeHook: function RuntimeHook() {
62
63
  return useChatThreadRuntime(options);
63
64
  },
64
- adapter: cloudAdapter
65
+ adapter: cloudAdapter,
66
+ allowNesting: true
65
67
  });
66
68
  };
67
69
  export {
68
- useChatRuntime,
69
- useChatThreadRuntime
70
+ useChatRuntime
70
71
  };
71
72
  //# sourceMappingURL=useChatRuntime.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ui/use-chat/useChatRuntime.tsx"],"sourcesContent":["\"use client\";\n\nimport { useChat, type UIMessage } from \"@ai-sdk/react\";\nimport type { AssistantCloud } from \"assistant-cloud\";\nimport {\n AssistantRuntime,\n unstable_useCloudThreadListAdapter,\n unstable_useRemoteThreadListRuntime,\n useAssistantState,\n} from \"@assistant-ui/react\";\nimport {\n useAISDKRuntime,\n type AISDKRuntimeAdapter,\n type CustomToCreateMessageFunction,\n} from \"./useAISDKRuntime\";\nimport { ChatInit, ChatTransport } from \"ai\";\nimport { AssistantChatTransport } from \"./AssistantChatTransport\";\nimport { useEffect, useMemo, useRef } from \"react\";\n\nexport type UseChatRuntimeOptions<UI_MESSAGE extends UIMessage = UIMessage> =\n ChatInit<UI_MESSAGE> & {\n cloud?: AssistantCloud | undefined;\n adapters?: AISDKRuntimeAdapter[\"adapters\"] | undefined;\n toCreateMessage?: CustomToCreateMessageFunction;\n };\n\nconst useDynamicChatTransport = <UI_MESSAGE extends UIMessage = UIMessage>(\n transport: ChatTransport<UI_MESSAGE>,\n): ChatTransport<UI_MESSAGE> => {\n const transportRef = useRef<ChatTransport<UI_MESSAGE>>(transport);\n useEffect(() => {\n transportRef.current = transport;\n });\n const dynamicTransport = useMemo(\n () =>\n new Proxy(transport, {\n get(_, prop) {\n return transportRef.current[prop as keyof ChatTransport<UI_MESSAGE>];\n },\n }),\n [transport],\n );\n return dynamicTransport;\n};\n\nexport const useChatThreadRuntime = <UI_MESSAGE extends UIMessage = UIMessage>(\n options?: UseChatRuntimeOptions<UI_MESSAGE>,\n): AssistantRuntime => {\n const {\n adapters,\n transport: transportOptions,\n toCreateMessage,\n ...chatOptions\n } = options ?? {};\n\n const transport = useDynamicChatTransport(\n transportOptions ?? new AssistantChatTransport(),\n );\n\n const id = useAssistantState(({ threadListItem }) => threadListItem.id);\n const chat = useChat({\n ...chatOptions,\n id,\n transport,\n });\n\n const runtime = useAISDKRuntime(chat, {\n adapters,\n ...(toCreateMessage && { toCreateMessage }),\n });\n\n if (transport instanceof AssistantChatTransport) {\n transport.setRuntime(runtime);\n }\n\n return runtime;\n};\n\nexport const useChatRuntime = <UI_MESSAGE extends UIMessage = UIMessage>({\n cloud,\n ...options\n}: UseChatRuntimeOptions<UI_MESSAGE> = {}): AssistantRuntime => {\n const cloudAdapter = unstable_useCloudThreadListAdapter({ cloud });\n return unstable_useRemoteThreadListRuntime({\n runtimeHook: function RuntimeHook() {\n return useChatThreadRuntime(options);\n },\n adapter: cloudAdapter,\n });\n};\n"],"mappings":";;;AAEA,SAAS,eAA+B;AAExC;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,OAGK;AAEP,SAAS,8BAA8B;AACvC,SAAS,WAAW,SAAS,cAAc;AAS3C,IAAM,0BAA0B,CAC9B,cAC8B;AAC9B,QAAM,eAAe,OAAkC,SAAS;AAChE,YAAU,MAAM;AACd,iBAAa,UAAU;AAAA,EACzB,CAAC;AACD,QAAM,mBAAmB;AAAA,IACvB,MACE,IAAI,MAAM,WAAW;AAAA,MACnB,IAAI,GAAG,MAAM;AACX,eAAO,aAAa,QAAQ,IAAuC;AAAA,MACrE;AAAA,IACF,CAAC;AAAA,IACH,CAAC,SAAS;AAAA,EACZ;AACA,SAAO;AACT;AAEO,IAAM,uBAAuB,CAClC,YACqB;AACrB,QAAM;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,GAAG;AAAA,EACL,IAAI,WAAW,CAAC;AAEhB,QAAM,YAAY;AAAA,IAChB,oBAAoB,IAAI,uBAAuB;AAAA,EACjD;AAEA,QAAM,KAAK,kBAAkB,CAAC,EAAE,eAAe,MAAM,eAAe,EAAE;AACtE,QAAM,OAAO,QAAQ;AAAA,IACnB,GAAG;AAAA,IACH;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,UAAU,gBAAgB,MAAM;AAAA,IACpC;AAAA,IACA,GAAI,mBAAmB,EAAE,gBAAgB;AAAA,EAC3C,CAAC;AAED,MAAI,qBAAqB,wBAAwB;AAC/C,cAAU,WAAW,OAAO;AAAA,EAC9B;AAEA,SAAO;AACT;AAEO,IAAM,iBAAiB,CAA2C;AAAA,EACvE;AAAA,EACA,GAAG;AACL,IAAuC,CAAC,MAAwB;AAC9D,QAAM,eAAe,mCAAmC,EAAE,MAAM,CAAC;AACjE,SAAO,oCAAoC;AAAA,IACzC,aAAa,SAAS,cAAc;AAClC,aAAO,qBAAqB,OAAO;AAAA,IACrC;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../src/ui/use-chat/useChatRuntime.tsx"],"sourcesContent":["\"use client\";\n\nimport { useChat, type UIMessage } from \"@ai-sdk/react\";\nimport type { AssistantCloud } from \"assistant-cloud\";\nimport {\n AssistantRuntime,\n unstable_useCloudThreadListAdapter,\n unstable_useRemoteThreadListRuntime,\n useAssistantState,\n} from \"@assistant-ui/react\";\nimport {\n useAISDKRuntime,\n type AISDKRuntimeAdapter,\n type CustomToCreateMessageFunction,\n} from \"./useAISDKRuntime\";\nimport { ChatInit, ChatTransport } from \"ai\";\nimport { AssistantChatTransport } from \"./AssistantChatTransport\";\nimport { useEffect, useMemo, useRef } from \"react\";\n\nexport type UseChatRuntimeOptions<UI_MESSAGE extends UIMessage = UIMessage> =\n ChatInit<UI_MESSAGE> & {\n cloud?: AssistantCloud | undefined;\n adapters?: AISDKRuntimeAdapter[\"adapters\"] | undefined;\n toCreateMessage?: CustomToCreateMessageFunction;\n };\n\nconst useDynamicChatTransport = <UI_MESSAGE extends UIMessage = UIMessage>(\n transport: ChatTransport<UI_MESSAGE>,\n): ChatTransport<UI_MESSAGE> => {\n const transportRef = useRef<ChatTransport<UI_MESSAGE>>(transport);\n useEffect(() => {\n transportRef.current = transport;\n });\n const dynamicTransport = useMemo(\n () =>\n new Proxy(transportRef.current, {\n get(_, prop) {\n const res =\n transportRef.current[prop as keyof ChatTransport<UI_MESSAGE>];\n return typeof res === \"function\"\n ? res.bind(transportRef.current)\n : res;\n },\n }),\n [],\n );\n return dynamicTransport;\n};\n\nconst useChatThreadRuntime = <UI_MESSAGE extends UIMessage = UIMessage>(\n options?: UseChatRuntimeOptions<UI_MESSAGE>,\n): AssistantRuntime => {\n const {\n adapters,\n transport: transportOptions,\n toCreateMessage,\n ...chatOptions\n } = options ?? {};\n\n const transport = useDynamicChatTransport(\n transportOptions ?? new AssistantChatTransport(),\n );\n\n const id = useAssistantState(({ threadListItem }) => threadListItem.id);\n const chat = useChat({\n ...chatOptions,\n id,\n transport,\n });\n\n const runtime = useAISDKRuntime(chat, {\n adapters,\n ...(toCreateMessage && { toCreateMessage }),\n });\n\n if (transport instanceof AssistantChatTransport) {\n transport.setRuntime(runtime);\n }\n\n return runtime;\n};\n\nexport const useChatRuntime = <UI_MESSAGE extends UIMessage = UIMessage>({\n cloud,\n ...options\n}: UseChatRuntimeOptions<UI_MESSAGE> = {}): AssistantRuntime => {\n const cloudAdapter = unstable_useCloudThreadListAdapter({ cloud });\n return unstable_useRemoteThreadListRuntime({\n runtimeHook: function RuntimeHook() {\n return useChatThreadRuntime(options);\n },\n adapter: cloudAdapter,\n allowNesting: true,\n });\n};\n"],"mappings":";;;AAEA,SAAS,eAA+B;AAExC;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,OAGK;AAEP,SAAS,8BAA8B;AACvC,SAAS,WAAW,SAAS,cAAc;AAS3C,IAAM,0BAA0B,CAC9B,cAC8B;AAC9B,QAAM,eAAe,OAAkC,SAAS;AAChE,YAAU,MAAM;AACd,iBAAa,UAAU;AAAA,EACzB,CAAC;AACD,QAAM,mBAAmB;AAAA,IACvB,MACE,IAAI,MAAM,aAAa,SAAS;AAAA,MAC9B,IAAI,GAAG,MAAM;AACX,cAAM,MACJ,aAAa,QAAQ,IAAuC;AAC9D,eAAO,OAAO,QAAQ,aAClB,IAAI,KAAK,aAAa,OAAO,IAC7B;AAAA,MACN;AAAA,IACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACA,SAAO;AACT;AAEA,IAAM,uBAAuB,CAC3B,YACqB;AACrB,QAAM;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,GAAG;AAAA,EACL,IAAI,WAAW,CAAC;AAEhB,QAAM,YAAY;AAAA,IAChB,oBAAoB,IAAI,uBAAuB;AAAA,EACjD;AAEA,QAAM,KAAK,kBAAkB,CAAC,EAAE,eAAe,MAAM,eAAe,EAAE;AACtE,QAAM,OAAO,QAAQ;AAAA,IACnB,GAAG;AAAA,IACH;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,UAAU,gBAAgB,MAAM;AAAA,IACpC;AAAA,IACA,GAAI,mBAAmB,EAAE,gBAAgB;AAAA,EAC3C,CAAC;AAED,MAAI,qBAAqB,wBAAwB;AAC/C,cAAU,WAAW,OAAO;AAAA,EAC9B;AAEA,SAAO;AACT;AAEO,IAAM,iBAAiB,CAA2C;AAAA,EACvE;AAAA,EACA,GAAG;AACL,IAAuC,CAAC,MAAwB;AAC9D,QAAM,eAAe,mCAAmC,EAAE,MAAM,CAAC;AACjE,SAAO,oCAAoC;AAAA,IACzC,aAAa,SAAS,cAAc;AAClC,aAAO,qBAAqB,OAAO;AAAA,IACrC;AAAA,IACA,SAAS;AAAA,IACT,cAAc;AAAA,EAChB,CAAC;AACH;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@assistant-ui/react-ai-sdk",
3
- "version": "1.1.14",
3
+ "version": "1.1.15",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "exports": {
@@ -28,7 +28,7 @@
28
28
  "zustand": "^5.0.8"
29
29
  },
30
30
  "peerDependencies": {
31
- "@assistant-ui/react": "^0.11.45",
31
+ "@assistant-ui/react": "^0.11.46",
32
32
  "@types/react": "*",
33
33
  "assistant-cloud": "*",
34
34
  "react": "^18 || ^19 || ^19.0.0-rc"
@@ -48,7 +48,7 @@
48
48
  "eslint-config-next": "16.0.4",
49
49
  "react": "19.2.0",
50
50
  "tsx": "^4.20.6",
51
- "@assistant-ui/react": "0.11.45",
51
+ "@assistant-ui/react": "0.11.46",
52
52
  "@assistant-ui/x-buildutils": "0.0.1"
53
53
  },
54
54
  "publishConfig": {
@@ -57,7 +57,7 @@
57
57
  },
58
58
  "repository": {
59
59
  "type": "git",
60
- "url": "https://github.com/assistant-ui/assistant-ui/tree/main/packages/react-ai-sdk-v5"
60
+ "url": "https://github.com/assistant-ui/assistant-ui/tree/main/packages/react-ai-sdk"
61
61
  },
62
62
  "bugs": {
63
63
  "url": "https://github.com/assistant-ui/assistant-ui/issues"
@@ -33,17 +33,21 @@ const useDynamicChatTransport = <UI_MESSAGE extends UIMessage = UIMessage>(
33
33
  });
34
34
  const dynamicTransport = useMemo(
35
35
  () =>
36
- new Proxy(transport, {
36
+ new Proxy(transportRef.current, {
37
37
  get(_, prop) {
38
- return transportRef.current[prop as keyof ChatTransport<UI_MESSAGE>];
38
+ const res =
39
+ transportRef.current[prop as keyof ChatTransport<UI_MESSAGE>];
40
+ return typeof res === "function"
41
+ ? res.bind(transportRef.current)
42
+ : res;
39
43
  },
40
44
  }),
41
- [transport],
45
+ [],
42
46
  );
43
47
  return dynamicTransport;
44
48
  };
45
49
 
46
- export const useChatThreadRuntime = <UI_MESSAGE extends UIMessage = UIMessage>(
50
+ const useChatThreadRuntime = <UI_MESSAGE extends UIMessage = UIMessage>(
47
51
  options?: UseChatRuntimeOptions<UI_MESSAGE>,
48
52
  ): AssistantRuntime => {
49
53
  const {
@@ -86,5 +90,6 @@ export const useChatRuntime = <UI_MESSAGE extends UIMessage = UIMessage>({
86
90
  return useChatThreadRuntime(options);
87
91
  },
88
92
  adapter: cloudAdapter,
93
+ allowNesting: true,
89
94
  });
90
95
  };