diff --git a/examples/ai-chatbot/package.json b/examples/ai-chatbot/package.json index 2d0068d6c..ab21c6912 100644 --- a/examples/ai-chatbot/package.json +++ b/examples/ai-chatbot/package.json @@ -18,7 +18,7 @@ "next": "^16.2.4", "react": "^19.2.6", "react-dom": "^19.2.6", - "stream-chat": "10.0.0-rc.25", + "stream-chat": "10.0.0-rc.28", "stream-chat-react": "workspace:^" }, "devDependencies": { diff --git a/examples/cookbook/package.json b/examples/cookbook/package.json index d49081db7..99518e364 100644 --- a/examples/cookbook/package.json +++ b/examples/cookbook/package.json @@ -19,7 +19,7 @@ "react": "^19.2.6", "react-dom": "^19.2.6", "react-leaflet": "^5.0.0", - "stream-chat": "10.0.0-rc.25", + "stream-chat": "10.0.0-rc.28", "stream-chat-react": "workspace:^" }, "devDependencies": { diff --git a/examples/tutorial/package.json b/examples/tutorial/package.json index c38a10c80..e68162832 100644 --- a/examples/tutorial/package.json +++ b/examples/tutorial/package.json @@ -16,7 +16,7 @@ "emoji-mart": "^5.6.0", "react": "^19.2.6", "react-dom": "^19.2.6", - "stream-chat": "10.0.0-rc.25", + "stream-chat": "10.0.0-rc.28", "stream-chat-react": "workspace:^" }, "devDependencies": { diff --git a/examples/vite/package.json b/examples/vite/package.json index 7148ee8e1..3a10f9874 100644 --- a/examples/vite/package.json +++ b/examples/vite/package.json @@ -18,7 +18,7 @@ "modern-normalize": "^3.0.1", "react": "^19.2.6", "react-dom": "^19.2.6", - "stream-chat": "10.0.0-rc.25", + "stream-chat": "10.0.0-rc.28", "stream-chat-react": "workspace:^" }, "devDependencies": { diff --git a/package.json b/package.json index 0bce69b73..8b4b45972 100644 --- a/package.json +++ b/package.json @@ -144,7 +144,7 @@ "modern-normalize": "^3.0.1", "react": "^19.0.0 || ^18.0.0 || ^17.0.0", "react-dom": "^19.0.0 || ^18.0.0 || ^17.0.0", - "stream-chat": "^10.0.0-rc.25" + "stream-chat": "^10.0.0-rc.28" }, "peerDependenciesMeta": { "@breezystack/lamejs": { @@ -210,7 +210,7 @@ "react-dom": "^19.2.6", "sass": "^1.100.0", "semantic-release": "^25.0.3", - "stream-chat": "10.0.0-rc.25", + "stream-chat": "10.0.0-rc.28", "typescript": "^6.0.3", "typescript-eslint": "^8.59.4", "vite": "^8.1.3", diff --git a/src/components/MessageComposer/__tests__/MessageInput.test.tsx b/src/components/MessageComposer/__tests__/MessageInput.test.tsx index 4a9402231..fc1119762 100644 --- a/src/components/MessageComposer/__tests__/MessageInput.test.tsx +++ b/src/components/MessageComposer/__tests__/MessageInput.test.tsx @@ -1075,7 +1075,7 @@ describe(`MessageInputFlat`, () => { await waitFor(() => { expect(sendMessageMock).toHaveBeenCalledWith( customChannel, - expect.objectContaining(customMessageData), + expect.objectContaining({ custom: customMessageData }), {}, ); }); @@ -1103,11 +1103,12 @@ describe(`MessageInputFlat`, () => { await act(() => submit()); - // The custom handler receives the composed message (text + custom data) and the send options. + // The custom handler receives the composed message (text + custom data, nested under `custom`) + // and the send options. await waitFor(() => expect(sendMessageMock).toHaveBeenCalledWith( customChannel, - expect.objectContaining({ text: messageText, ...customMessageData }), + expect.objectContaining({ custom: customMessageData, text: messageText }), {}, ), ); diff --git a/src/mock-builders/event/messageDelivered.ts b/src/mock-builders/event/messageDelivered.ts index 40b45693d..3ae9c210c 100644 --- a/src/mock-builders/event/messageDelivered.ts +++ b/src/mock-builders/event/messageDelivered.ts @@ -15,11 +15,9 @@ type MessageDeliveredEvent = { channel_member_count: number; channel_type: string; cid: string; - // `created_at` is unix nanoseconds like other wire timestamps, but the spec declares - // `last_delivered_at` as a plain string, so it arrives as RFC3339. created_at: TimestampNS; custom: CustomEventData; - last_delivered_at: string; + last_delivered_at: TimestampNS; last_delivered_message_id: string; user: UserResponse; }; @@ -35,7 +33,7 @@ export const makeMessageDeliveredEvent = ( cid: 'messaging:test', created_at: convertDateToTimestamp('2025-09-16T13:25:57.996011272Z'), custom: {}, - last_delivered_at: '2025-09-16T13:25:57Z', + last_delivered_at: convertDateToTimestamp('2025-09-16T13:25:57Z'), last_delivered_message_id: 'aefbf38a-0e02-4ba6-a480-e595c37ec78a', type: 'message.delivered', user: { @@ -74,7 +72,7 @@ export const dispatchMessageDeliveredEvent = ({ channel_type: channel.type, cid: channel.cid, created_at: convertDateToTimestamp(), - last_delivered_at: deliveredAt, + last_delivered_at: convertDateToTimestamp(deliveredAt), last_delivered_message_id: lastDeliveredMessageId, user, }), diff --git a/yarn.lock b/yarn.lock index 56c831af2..d2028223e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2160,14 +2160,14 @@ __metadata: languageName: node linkType: hard -"@stream-io/logger@npm:^2.0.0": +"@stream-io/logger@npm:^2.1.0": version: 2.1.0 resolution: "@stream-io/logger@npm:2.1.0" checksum: 10c0/0a09c9420b8bbec7a3007bf02acccaf7c0792b18d76eb791198e2a20890f1244b42788c3cc99d6ab52a591f49fde80dd6b2236e194f95f03b36fce5d0aa71dc3 languageName: node linkType: hard -"@stream-io/state-store@npm:^1.1.6, @stream-io/state-store@npm:^1.2.0": +"@stream-io/state-store@npm:^1.2.0": version: 1.2.0 resolution: "@stream-io/state-store@npm:1.2.0" peerDependencies: @@ -2197,7 +2197,7 @@ __metadata: react: "npm:^19.2.6" react-dom: "npm:^19.2.6" sass: "npm:^1.100.0" - stream-chat: "npm:10.0.0-rc.25" + stream-chat: "npm:10.0.0-rc.28" stream-chat-react: "workspace:^" typescript: "npm:^6.0.3" languageName: unknown @@ -2219,7 +2219,7 @@ __metadata: react: "npm:^19.2.6" react-dom: "npm:^19.2.6" react-leaflet: "npm:^5.0.0" - stream-chat: "npm:10.0.0-rc.25" + stream-chat: "npm:10.0.0-rc.28" stream-chat-react: "workspace:^" typescript: "npm:^6.0.3" vite: "npm:^8.1.3" @@ -2237,7 +2237,7 @@ __metadata: emoji-mart: "npm:^5.6.0" react: "npm:^19.2.6" react-dom: "npm:^19.2.6" - stream-chat: "npm:10.0.0-rc.25" + stream-chat: "npm:10.0.0-rc.28" stream-chat-react: "workspace:^" typescript: "npm:^6.0.3" vite: "npm:^8.1.3" @@ -2265,7 +2265,7 @@ __metadata: react: "npm:^19.2.6" react-dom: "npm:^19.2.6" sass: "npm:^1.100.0" - stream-chat: "npm:10.0.0-rc.25" + stream-chat: "npm:10.0.0-rc.28" stream-chat-react: "workspace:^" typescript: "npm:^6.0.3" vite: "npm:^8.1.3" @@ -10340,7 +10340,7 @@ __metadata: remark-parse: "npm:^11.0.0" sass: "npm:^1.100.0" semantic-release: "npm:^25.0.3" - stream-chat: "npm:10.0.0-rc.25" + stream-chat: "npm:10.0.0-rc.28" typescript: "npm:^6.0.3" typescript-eslint: "npm:^8.59.4" unified: "npm:^11.0.5" @@ -10358,7 +10358,7 @@ __metadata: modern-normalize: ^3.0.1 react: ^19.0.0 || ^18.0.0 || ^17.0.0 react-dom: ^19.0.0 || ^18.0.0 || ^17.0.0 - stream-chat: ^10.0.0-rc.25 + stream-chat: ^10.0.0-rc.28 dependenciesMeta: "@parcel/watcher": built: true @@ -10382,12 +10382,12 @@ __metadata: languageName: unknown linkType: soft -"stream-chat@npm:10.0.0-rc.25": - version: 10.0.0-rc.25 - resolution: "stream-chat@npm:10.0.0-rc.25" +"stream-chat@npm:10.0.0-rc.28": + version: 10.0.0-rc.28 + resolution: "stream-chat@npm:10.0.0-rc.28" dependencies: - "@stream-io/logger": "npm:^2.0.0" - "@stream-io/state-store": "npm:^1.1.6" + "@stream-io/logger": "npm:^2.1.0" + "@stream-io/state-store": "npm:^1.2.0" axios: "npm:^1.19.0" linkifyjs: "npm:^4.3.3" dependenciesMeta: @@ -10395,7 +10395,7 @@ __metadata: built: true husky: built: true - checksum: 10c0/cb8a316988d73c00347c9a98047246ac05cbedcba28560afaa6358b6e022b84350a51bb80a73bf3376ff68a91fffe2d203414831b342200cde831972ea027d11 + checksum: 10c0/0132ae268d1b228eeb8b70a08b03eff77e955f8a2215fcf7804fa4df8dd7c032adc3a356d934cbf883fd4835f823612ec9d53ccf3948c494023ae5d636341f01 languageName: node linkType: hard