@assistant-ui/react-ai-sdk 1.1.19 → 1.1.21

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 (37) hide show
  1. package/dist/frontendTools.js +5 -11
  2. package/dist/frontendTools.js.map +1 -1
  3. package/dist/index.d.ts +2 -2
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +1 -5
  6. package/dist/index.js.map +1 -1
  7. package/dist/ui/adapters/aiSDKFormatAdapter.js +21 -26
  8. package/dist/ui/adapters/aiSDKFormatAdapter.js.map +1 -1
  9. package/dist/ui/getVercelAIMessages.js +3 -9
  10. package/dist/ui/getVercelAIMessages.js.map +1 -1
  11. package/dist/ui/index.d.ts +4 -4
  12. package/dist/ui/index.d.ts.map +1 -1
  13. package/dist/ui/index.js +3 -9
  14. package/dist/ui/index.js.map +1 -1
  15. package/dist/ui/use-chat/AssistantChatTransport.js +50 -59
  16. package/dist/ui/use-chat/AssistantChatTransport.js.map +1 -1
  17. package/dist/ui/use-chat/useAISDKRuntime.js +129 -148
  18. package/dist/ui/use-chat/useAISDKRuntime.js.map +1 -1
  19. package/dist/ui/use-chat/useChatRuntime.d.ts +1 -1
  20. package/dist/ui/use-chat/useChatRuntime.d.ts.map +1 -1
  21. package/dist/ui/use-chat/useChatRuntime.js +42 -64
  22. package/dist/ui/use-chat/useChatRuntime.js.map +1 -1
  23. package/dist/ui/use-chat/useExternalHistory.js +88 -95
  24. package/dist/ui/use-chat/useExternalHistory.js.map +1 -1
  25. package/dist/ui/utils/convertMessage.d.ts.map +1 -1
  26. package/dist/ui/utils/convertMessage.js +188 -174
  27. package/dist/ui/utils/convertMessage.js.map +1 -1
  28. package/dist/ui/utils/sliceMessagesUntil.js +10 -15
  29. package/dist/ui/utils/sliceMessagesUntil.js.map +1 -1
  30. package/dist/ui/utils/toCreateMessage.d.ts.map +1 -1
  31. package/dist/ui/utils/toCreateMessage.js +38 -43
  32. package/dist/ui/utils/toCreateMessage.js.map +1 -1
  33. package/dist/ui/utils/vercelAttachmentAdapter.js +36 -38
  34. package/dist/ui/utils/vercelAttachmentAdapter.js.map +1 -1
  35. package/package.json +26 -17
  36. package/src/ui/utils/convertMessage.ts +6 -9
  37. package/src/ui/utils/toCreateMessage.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ui/utils/vercelAttachmentAdapter.ts"],"sourcesContent":["import { AttachmentAdapter } from \"@assistant-ui/react\";\nimport { generateId } from \"ai\";\n\nconst getFileDataURL = (file: File) =>\n new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = () => resolve(reader.result as string);\n reader.onerror = (error) => reject(error);\n\n reader.readAsDataURL(file);\n });\n\nexport const vercelAttachmentAdapter: AttachmentAdapter = {\n accept:\n \"image/*, text/plain, text/html, text/markdown, text/csv, text/xml, text/json, text/css\",\n async add({ file }) {\n return {\n id: generateId(),\n type: file.type.startsWith(\"image/\") ? \"image\" : \"file\",\n name: file.name,\n file,\n contentType: file.type,\n content: [],\n status: { type: \"requires-action\", reason: \"composer-send\" },\n };\n },\n async send(attachment) {\n // noop\n return {\n ...attachment,\n status: { type: \"complete\" },\n content: [\n {\n type: \"file\",\n mimeType: attachment.contentType,\n filename: attachment.name,\n data: await getFileDataURL(attachment.file),\n },\n ],\n };\n },\n async remove() {\n // noop\n },\n};\n"],"mappings":";AACA,SAAS,kBAAkB;AAE3B,IAAM,iBAAiB,CAAC,SACtB,IAAI,QAAgB,CAAC,SAAS,WAAW;AACvC,QAAM,SAAS,IAAI,WAAW;AAE9B,SAAO,SAAS,MAAM,QAAQ,OAAO,MAAgB;AACrD,SAAO,UAAU,CAAC,UAAU,OAAO,KAAK;AAExC,SAAO,cAAc,IAAI;AAC3B,CAAC;AAEI,IAAM,0BAA6C;AAAA,EACxD,QACE;AAAA,EACF,MAAM,IAAI,EAAE,KAAK,GAAG;AAClB,WAAO;AAAA,MACL,IAAI,WAAW;AAAA,MACf,MAAM,KAAK,KAAK,WAAW,QAAQ,IAAI,UAAU;AAAA,MACjD,MAAM,KAAK;AAAA,MACX;AAAA,MACA,aAAa,KAAK;AAAA,MAClB,SAAS,CAAC;AAAA,MACV,QAAQ,EAAE,MAAM,mBAAmB,QAAQ,gBAAgB;AAAA,IAC7D;AAAA,EACF;AAAA,EACA,MAAM,KAAK,YAAY;AAErB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,QAAQ,EAAE,MAAM,WAAW;AAAA,MAC3B,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,UAAU,WAAW;AAAA,UACrB,UAAU,WAAW;AAAA,UACrB,MAAM,MAAM,eAAe,WAAW,IAAI;AAAA,QAC5C;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EACA,MAAM,SAAS;AAAA,EAEf;AACF;","names":[]}
1
+ {"version":3,"file":"vercelAttachmentAdapter.js","sourceRoot":"","sources":["../../../src/ui/utils/vercelAttachmentAdapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC,MAAM,cAAc,GAAG,CAAC,IAAU,EAAE,EAAE,CACpC,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IACtC,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAEhC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;IACvD,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE1C,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,uBAAuB,GAAsB;IACxD,MAAM,EACJ,wFAAwF;IAC1F,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;QAChB,OAAO;YACL,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;YACvD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,IAAI;YACtB,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,EAAE;SAC7D,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,UAAU;QACnB,OAAO;QACP,OAAO;YACL,GAAG,UAAU;YACb,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;YAC5B,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,UAAU,CAAC,WAAW;oBAChC,QAAQ,EAAE,UAAU,CAAC,IAAI;oBACzB,IAAI,EAAE,MAAM,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;iBAC5C;aACF;SACF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,MAAM;QACV,OAAO;IACT,CAAC;CACF,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,23 @@
1
1
  {
2
2
  "name": "@assistant-ui/react-ai-sdk",
3
- "version": "1.1.19",
3
+ "version": "1.1.21",
4
+ "description": "Vercel AI SDK adapter for assistant-ui",
5
+ "keywords": [
6
+ "ai-sdk",
7
+ "vercel",
8
+ "assistant-ui",
9
+ "react",
10
+ "ai",
11
+ "chat",
12
+ "openai",
13
+ "streaming"
14
+ ],
15
+ "author": "AgentbaseAI Inc.",
4
16
  "license": "MIT",
5
17
  "type": "module",
6
18
  "exports": {
7
19
  ".": {
20
+ "aui-source": "./src/index.ts",
8
21
  "types": "./dist/index.d.ts",
9
22
  "default": "./dist/index.js"
10
23
  }
@@ -18,20 +31,15 @@
18
31
  ],
19
32
  "sideEffects": false,
20
33
  "dependencies": {
21
- "@ai-sdk/provider": "^2.0.0",
22
- "@ai-sdk/react": "^2.0.114",
23
- "@radix-ui/react-use-callback-ref": "^1.1.1",
24
- "@types/json-schema": "^7.0.15",
25
- "ai": "^5.0.112",
26
- "assistant-stream": "^0.2.45",
27
- "zod": "^4.1.13",
28
- "zustand": "^5.0.9"
34
+ "@ai-sdk/react": "^2.0.118",
35
+ "ai": "^5.0.116",
36
+ "zod": "^4.3.5"
29
37
  },
30
38
  "peerDependencies": {
31
- "@assistant-ui/react": "^0.11.50",
39
+ "@assistant-ui/react": "^0.11.56",
32
40
  "@types/react": "*",
33
41
  "assistant-cloud": "*",
34
- "react": "^18 || ^19 || ^19.0.0-rc"
42
+ "react": "^18 || ^19"
35
43
  },
36
44
  "peerDependenciesMeta": {
37
45
  "@types/react": {
@@ -42,25 +50,26 @@
42
50
  }
43
51
  },
44
52
  "devDependencies": {
45
- "@types/node": "^25.0.0",
53
+ "@types/json-schema": "^7.0.15",
46
54
  "@types/react": "^19.2.7",
47
- "react": "19.2.3",
48
- "tsx": "^4.21.0",
49
- "@assistant-ui/react": "0.11.50",
55
+ "react": "^19.2.3",
56
+ "@assistant-ui/react": "0.11.56",
50
57
  "@assistant-ui/x-buildutils": "0.0.1"
51
58
  },
52
59
  "publishConfig": {
53
60
  "access": "public",
54
61
  "provenance": true
55
62
  },
63
+ "homepage": "https://www.assistant-ui.com/",
56
64
  "repository": {
57
65
  "type": "git",
58
- "url": "https://github.com/assistant-ui/assistant-ui/tree/main/packages/react-ai-sdk"
66
+ "url": "git+https://github.com/assistant-ui/assistant-ui.git",
67
+ "directory": "packages/react-ai-sdk"
59
68
  },
60
69
  "bugs": {
61
70
  "url": "https://github.com/assistant-ui/assistant-ui/issues"
62
71
  },
63
72
  "scripts": {
64
- "build": "tsx scripts/build.mts"
73
+ "build": "aui-build"
65
74
  }
66
75
  }
@@ -7,8 +7,11 @@ import {
7
7
  type DataMessagePart,
8
8
  type SourceMessagePart,
9
9
  type useExternalMessageConverter,
10
+ type ThreadMessageLike,
10
11
  } from "@assistant-ui/react";
11
12
 
13
+ type MessageMetadata = ThreadMessageLike["metadata"];
14
+
12
15
  function stripClosingDelimiters(json: string) {
13
16
  return json.replace(/[}\]"]+$/, "");
14
17
  }
@@ -207,6 +210,7 @@ export const AISDKMessageConverter = unstable_createMessageConverter(
207
210
  status: { type: "complete" as const },
208
211
  };
209
212
  }),
213
+ metadata: message.metadata as MessageMetadata,
210
214
  };
211
215
 
212
216
  case "system":
@@ -215,6 +219,7 @@ export const AISDKMessageConverter = unstable_createMessageConverter(
215
219
  id: message.id,
216
220
  createdAt,
217
221
  content: convertParts(message, metadata),
222
+ metadata: message.metadata as MessageMetadata,
218
223
  };
219
224
 
220
225
  case "assistant":
@@ -223,15 +228,7 @@ export const AISDKMessageConverter = unstable_createMessageConverter(
223
228
  id: message.id,
224
229
  createdAt,
225
230
  content: convertParts(message, metadata),
226
- metadata: {
227
- unstable_annotations: (message as any).annotations,
228
- unstable_data: Array.isArray((message as any).data)
229
- ? (message as any).data
230
- : (message as any).data
231
- ? [(message as any).data]
232
- : undefined,
233
- custom: {},
234
- },
231
+ metadata: message.metadata as MessageMetadata,
235
232
  };
236
233
 
237
234
  default:
@@ -49,5 +49,6 @@ export const toCreateMessage = <UI_MESSAGE extends UIMessage = UIMessage>(
49
49
  return {
50
50
  role: message.role,
51
51
  parts,
52
+ metadata: message.metadata,
52
53
  } satisfies CreateUIMessage<UIMessage> as CreateUIMessage<UI_MESSAGE>;
53
54
  };