@oxpulse/chat-sdk 0.1.0 → 0.4.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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,67 @@ All notable changes to this package will be documented in this file.
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.4.0] — 2026-05-16
9
+
10
+ ### Added
11
+
12
+ - `sendReaction(roomId, msgId, type)` — add a reaction emoji (idempotent per user+emoji). Client validates 1-32 chars before network call.
13
+ - `removeReaction(roomId, msgId, type)` — remove own reaction. No-op if never added.
14
+ - `getReactions(roomId, msgId)` — fetch aggregated `{counts, users}` from `GET /api/sdk/messages/:room/:msg/reactions`.
15
+ - `subscribe({onReaction})` — receives `reaction_add`/`reaction_remove` events via existing mutation SSE channel.
16
+ - `ReactionEvent` interface: `{ appId, roomId, msgId, op, reaction, userId }`.
17
+ - `ReactionsResponse` interface: `{ counts: Record<string, number>, users: Record<string, string[]> }`.
18
+ - Server: `POST /api/sdk/messages/{room_id}/{msg_id}/reactions` — add reaction (idempotent, FK-checked).
19
+ - Server: `DELETE /api/sdk/messages/{room_id}/{msg_id}/reactions/{reaction}` — remove own reaction.
20
+ - Server: `GET /api/sdk/messages/{room_id}/{msg_id}/reactions` — aggregated counts + user lists.
21
+ - New event variants on `sdk_message_log_mutation` channel: `op: "reaction_add" | "reaction_remove"` with `{msg_id, user_id, reaction}`.
22
+ - Migration: `sdk_message_reactions` table with composite PK + FK → `sdk_message_log` ON DELETE CASCADE.
23
+
24
+ ### Wire
25
+
26
+ - New event variant on `sdk_message_log_mutation`: `op: "reaction_add" | "reaction_remove"` with `{msg_id, user_id, reaction}`.
27
+
28
+ ## [0.3.0] — 2026-05-16
29
+
30
+ ### Added
31
+
32
+ - `updateMessage(roomId, msgId, {sealed})` — edit a message (only sender). Bumps `editCount`, sets `editedAt`.
33
+ - `deleteMessage(roomId, msgId)` — soft-delete (sender only). Sealed payload cleared, `deletedAt` set.
34
+ - `pinMessage(roomId, msgId)` / `unpinMessage(roomId, msgId)` / `listPins(roomId)` — message pinning.
35
+ - `MessageRow` gains `editedAt?: string`, `deletedAt?: string`, `editCount?: number` fields.
36
+ - `UpdateMessageArgs` interface: `{ sealed: ArrayBuffer }`.
37
+ - `PinnedMessage` interface: `{ appId, roomId, msgId, pinnedBy, pinnedAt }`.
38
+ - Server: `PATCH /api/sdk/messages/{room_id}/{msg_id}` — edit handler (RLS by sender_uid).
39
+ - Server: `DELETE /api/sdk/messages/{room_id}/{msg_id}` — soft-delete handler.
40
+ - Server: `POST /api/sdk/rooms/{room_id}/pins/{msg_id}` — pin handler.
41
+ - Server: `DELETE /api/sdk/rooms/{room_id}/pins/{msg_id}` — unpin handler.
42
+ - Server: `GET /api/sdk/rooms/{room_id}/pins` — list pins handler.
43
+ - `GET /api/sdk/messages?include_deleted=true` — opt-in to include soft-deleted tombstones.
44
+
45
+ ## [0.2.0] — 2026-05-16
46
+
47
+ ### Changed (BREAKING)
48
+
49
+ - **`list()` now returns `ListResult` instead of `MessageRow[]`.**
50
+ Callers must access `result.items` for the message array.
51
+ ```ts
52
+ // Before (0.1.x):
53
+ const rows: MessageRow[] = await client.list(roomId);
54
+ // After (0.2.x):
55
+ const { items, hasNext, next } = await client.list(roomId);
56
+ ```
57
+ - Server GET `/api/sdk/messages` response changed from a bare JSON array to
58
+ an envelope `{ items, has_more, next_cursor }`.
59
+
60
+ ### Added
61
+
62
+ - `ListResult` interface: `{ items: MessageRow[], hasNext: boolean, next?: number }`.
63
+ - `ListArgs.beforeSeq` — reverse-paging cursor. Pass a previous `next` value
64
+ as `beforeSeq` to load the preceding page of history.
65
+ - `before_seq` query parameter on GET `/api/sdk/messages` (Rust server).
66
+ - Rust server: `has_more` sentinel-row detection (limit+1 fetch, no COUNT query).
67
+ - Rust server: `next_cursor` = seq of oldest row in the page.
68
+
8
69
  ## [0.1.0] — 2026-05-16
9
70
 
10
71
  ### Added
package/dist/client.d.ts CHANGED
@@ -9,7 +9,7 @@
9
9
  * W4 skeleton: full implementation mirrors web/src/lib/api/sdkChat.ts.
10
10
  * Publishing to npmjs.org is deferred to W8 (embed widget wave).
11
11
  */
12
- import type { SDKChatClientOptions, SendArgs, ListArgs, MessageRow, SubscribeArgs, Room, Member, CreateRoomArgs, UpdateRoomArgs, PresenceUser } from './types.js';
12
+ import type { SDKChatClientOptions, SendArgs, ListArgs, ListResult, MessageRow, ReactionsResponse, SubscribeArgs, Room, Member, CreateRoomArgs, UpdateRoomArgs, UpdateMessageArgs, PinnedMessage, PresenceUser } from './types.js';
13
13
  export declare class SDKChatClient {
14
14
  #private;
15
15
  constructor(opts: SDKChatClientOptions);
@@ -32,7 +32,7 @@ export declare class SDKChatClient {
32
32
  seq: number;
33
33
  msgId: string;
34
34
  }>;
35
- list(roomId: string, args?: ListArgs): Promise<MessageRow[]>;
35
+ list(roomId: string, args?: ListArgs): Promise<ListResult>;
36
36
  subscribe(roomId: string, args: SubscribeArgs): () => void;
37
37
  /**
38
38
  * Broadcast a typing indicator for roomId.
@@ -94,5 +94,67 @@ export declare class SDKChatClient {
94
94
  * Requires scope: chat:read:<room_id>.
95
95
  */
96
96
  getThread(roomId: string, rootMsgId: string): Promise<MessageRow[]>;
97
+ /**
98
+ * Edit a message (only the original sender may edit).
99
+ * Wire-contract: PATCH /api/sdk/messages/:room_id/:msg_id
100
+ * Body: { sealed_b64 }
101
+ * Scope: chat:write:<room_id>.
102
+ */
103
+ updateMessage(roomId: string, msgId: string, args: UpdateMessageArgs): Promise<void>;
104
+ /**
105
+ * Soft-delete a message (only the original sender may delete).
106
+ * Wire-contract: DELETE /api/sdk/messages/:room_id/:msg_id
107
+ * Returns void on 204.
108
+ * Scope: chat:write:<room_id>.
109
+ */
110
+ deleteMessage(roomId: string, msgId: string): Promise<void>;
111
+ /**
112
+ * Pin a message in a room. Idempotent.
113
+ * Wire-contract: POST /api/sdk/rooms/:room_id/pins/:msg_id
114
+ * Scope: chat:write:<room_id>.
115
+ */
116
+ pinMessage(roomId: string, msgId: string): Promise<void>;
117
+ /**
118
+ * Unpin a message in a room. No-op if not pinned.
119
+ * Wire-contract: DELETE /api/sdk/rooms/:room_id/pins/:msg_id
120
+ * Scope: chat:write:<room_id>.
121
+ */
122
+ unpinMessage(roomId: string, msgId: string): Promise<void>;
123
+ /**
124
+ * List pinned messages in a room, ordered by pinned_at descending.
125
+ * Wire-contract: GET /api/sdk/rooms/:room_id/pins
126
+ * Scope: chat:read:<room_id>.
127
+ */
128
+ listPins(roomId: string): Promise<PinnedMessage[]>;
129
+ /**
130
+ * W3: Add a reaction emoji to a message. Idempotent per (user, emoji).
131
+ * Wire-contract: POST /api/sdk/messages/:room_id/:msg_id/reactions
132
+ * Scope: chat:write:<room_id>.
133
+ *
134
+ * @param reaction - Emoji / reaction string. Must be 1–32 Unicode code points
135
+ * (`[...reaction].length`). The server enforces the same limit via
136
+ * `character_length(reaction) BETWEEN 1 AND 32` (PG code-point count).
137
+ * Throws `invalid_args` if the validation fails before the network call.
138
+ */
139
+ sendReaction(roomId: string, msgId: string, reaction: string): Promise<void>;
140
+ /**
141
+ * W3: Remove own reaction from a message. No-op if never added.
142
+ * Wire-contract: DELETE /api/sdk/messages/:room_id/:msg_id/reactions/:reaction
143
+ * Scope: chat:write:<room_id>.
144
+ *
145
+ * The reaction string is percent-encoded in the path to support emoji.
146
+ *
147
+ * @param reaction - Emoji / reaction string. Must be 1–32 Unicode code points
148
+ * (`[...reaction].length`). The server enforces the same limit via
149
+ * `character_length(reaction) BETWEEN 1 AND 32` (PG code-point count).
150
+ * Throws `invalid_args` if the validation fails before the network call.
151
+ */
152
+ removeReaction(roomId: string, msgId: string, reaction: string): Promise<void>;
153
+ /**
154
+ * W3: Fetch aggregated reaction counts + user lists for a message.
155
+ * Wire-contract: GET /api/sdk/messages/:room_id/:msg_id/reactions
156
+ * Scope: chat:read:<room_id>.
157
+ */
158
+ getReactions(roomId: string, msgId: string): Promise<ReactionsResponse>;
97
159
  }
98
160
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,OAAO,KAAK,EACV,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,UAAU,EAEV,aAAa,EACb,IAAI,EACJ,MAAM,EACN,cAAc,EACd,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAC;AAgEpB,qBAAa,aAAa;;gBAQZ,IAAI,EAAE,oBAAoB;IAoDtC;;;OAGG;IACG,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;IAIpE;;;;;;;;OAQG;IACG,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwB5D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAuC7E,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,QAAa,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAwEtE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,MAAM,IAAI;IAwI1D;;;;OAIG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BjE;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BjD;;;;OAIG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA+B1D;;;OAGG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB1D;;;OAGG;IACG,UAAU,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C1D;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB5C;;;OAGG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BrE;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKpD;;;;OAIG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,SAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAoCjF;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBjE;;;;;OAKG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CA2C1E"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,OAAO,KAAK,EACV,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,EAGV,iBAAiB,EAEjB,aAAa,EACb,IAAI,EACJ,MAAM,EACN,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AAmGpB,qBAAa,aAAa;;gBAQZ,IAAI,EAAE,oBAAoB;IAoDtC;;;OAGG;IACG,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;IAIpE;;;;;;;;OAQG;IACG,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwB5D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAuC7E,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,QAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IA4FpE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,MAAM,IAAI;IA0L1D;;;;OAIG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BjE;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BjD;;;;OAIG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA+B1D;;;OAGG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB1D;;;OAGG;IACG,UAAU,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C1D;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB5C;;;OAGG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BrE;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKpD;;;;OAIG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,SAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAoCjF;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBjE;;;;;OAKG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAqCzE;;;;;OAKG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B1F;;;;;OAKG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBjE;;;;OAIG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB9D;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBhE;;;;OAIG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAwCxD;;;;;;;;;OASG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkClF;;;;;;;;;;;OAWG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BpF;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAuB9E"}
package/dist/client.js CHANGED
@@ -23,7 +23,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
23
23
  var _SDKChatClient_instances, _SDKChatClient_baseUrl, _SDKChatClient_jwt, _SDKChatClient_compression, _SDKChatClient_minCompressBytes, _SDKChatClient_dictHint, _SDKChatClient_ready, _SDKChatClient_encodeBody, _SDKChatClient_fetchSubscribeTicket;
24
24
  import { ensureWireCodecReady, encodeHttpBody, decodeHttpBody, setDictLoader, setDictBaseUrl, asWireBytes, } from '@oxpulse/wire-codec';
25
25
  import { SDKChatError } from './errors.js';
26
- import { arrayBufferToBase64url, base64ToArrayBuffer, httpStatusToCode, backoffMs, dispatchTransient, } from './utils.js';
26
+ import { arrayBufferToBase64, base64ToArrayBuffer, httpStatusToCode, backoffMs, dispatchTransient, } from './utils.js';
27
27
  function dtoToRoom(dto) {
28
28
  return {
29
29
  appId: dto.app_id,
@@ -48,6 +48,27 @@ function dtoToMember(dto) {
48
48
  active: dto.active,
49
49
  };
50
50
  }
51
+ // ─── Shared row mapper (M5 DRY fix) ──────────────────────────────────────────
52
+ /**
53
+ * Map a raw wire-DTO row (snake_case) to a `MessageRow` (camelCase).
54
+ * Used by list(), thread list, and the SSE onmessage handler.
55
+ * M5 fix: extracted from two duplicated sites to prevent mapper drift.
56
+ */
57
+ function rowToMessageRow(row) {
58
+ return {
59
+ seq: row.seq,
60
+ msgId: row.msg_id,
61
+ senderUid: row.sender_uid,
62
+ sealed: base64ToArrayBuffer(row.sealed_b64),
63
+ createdAt: row.created_at,
64
+ threadRootMsgId: row.thread_root_msg_id ?? null,
65
+ productRef: row.product_ref ?? null,
66
+ productMeta: row.product_meta ?? null,
67
+ editedAt: row.edited_at ?? undefined,
68
+ deletedAt: row.deleted_at ?? undefined,
69
+ editCount: row.edit_count ?? 0,
70
+ };
71
+ }
51
72
  // ─── Client ───────────────────────────────────────────────────────────────────
52
73
  const DEFAULT_MIN_COMPRESS_BYTES = 256;
53
74
  export class SDKChatClient {
@@ -126,7 +147,7 @@ export class SDKChatClient {
126
147
  room_id: roomId,
127
148
  msg_id: msgId,
128
149
  sender_uid: args.senderUid,
129
- sealed_b64: arrayBufferToBase64url(args.sealed),
150
+ sealed_b64: arrayBufferToBase64(args.sealed),
130
151
  };
131
152
  if (args.threadRootMsgId !== undefined) {
132
153
  payload['thread_root_msg_id'] = args.threadRootMsgId;
@@ -158,6 +179,9 @@ export class SDKChatClient {
158
179
  after_seq: String(args.afterSeq ?? 0),
159
180
  limit: String(args.limit ?? 50),
160
181
  });
182
+ if (args.beforeSeq !== undefined) {
183
+ params.set('before_seq', String(args.beforeSeq));
184
+ }
161
185
  let resp;
162
186
  try {
163
187
  resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/messages?${params}`, {
@@ -171,16 +195,21 @@ export class SDKChatClient {
171
195
  throw new SDKChatError(httpStatusToCode(resp.status), `list failed: HTTP ${resp.status}`, resp.status);
172
196
  }
173
197
  const json = (await resp.json());
174
- return json.map((row) => ({
175
- seq: row.seq,
176
- msgId: row.msg_id,
177
- senderUid: row.sender_uid,
178
- sealed: base64ToArrayBuffer(row.sealed_b64),
179
- createdAt: row.created_at,
180
- threadRootMsgId: row.thread_root_msg_id ?? null,
181
- productRef: row.product_ref ?? null,
182
- productMeta: row.product_meta ?? null,
183
- }));
198
+ const items = json.items.map(rowToMessageRow);
199
+ if (json.has_more && json.next_cursor == null) {
200
+ throw new SDKChatError('server_error', 'server returned has_more=true but next_cursor=null');
201
+ }
202
+ const result = { items, hasNext: json.has_more };
203
+ if (json.has_more && json.next_cursor != null) {
204
+ const cursor = json.next_cursor;
205
+ // Direction-aware thunk: forward paging passes cursor as afterSeq;
206
+ // backward paging passes cursor as beforeSeq.
207
+ result.next =
208
+ args.beforeSeq != null
209
+ ? () => this.list(roomId, { ...args, beforeSeq: cursor })
210
+ : () => this.list(roomId, { ...args, afterSeq: cursor });
211
+ }
212
+ return result;
184
213
  }
185
214
  subscribe(roomId, args) {
186
215
  let destroyed = false;
@@ -200,16 +229,7 @@ export class SDKChatClient {
200
229
  return;
201
230
  }
202
231
  lastSeq = data.seq;
203
- args.onMessage({
204
- seq: data.seq,
205
- msgId: data.msg_id,
206
- senderUid: data.sender_uid,
207
- sealed: base64ToArrayBuffer(data.sealed_b64),
208
- createdAt: data.created_at,
209
- threadRootMsgId: data.thread_root_msg_id ?? null,
210
- productRef: data.product_ref ?? null,
211
- productMeta: data.product_meta ?? null,
212
- });
232
+ args.onMessage(rowToMessageRow(data));
213
233
  }
214
234
  catch {
215
235
  // Malformed frame — ignore.
@@ -229,6 +249,49 @@ export class SDKChatClient {
229
249
  }
230
250
  });
231
251
  }
252
+ // W2 fix-pass + W3: mutation events (edit/delete/pin/unpin/reaction_add/reaction_remove)
253
+ // arrive as named SSE events on the `sdk_message_log_mutation` channel.
254
+ if (args.onMutation || args.onReaction) {
255
+ es.addEventListener('mutation', (ev) => {
256
+ const msgEv = ev;
257
+ try {
258
+ const data = JSON.parse(msgEv.data);
259
+ // W3: dispatch reaction events to onReaction if registered.
260
+ if (args.onReaction &&
261
+ (data.op === 'reaction_add' || data.op === 'reaction_remove') &&
262
+ data.reaction !== undefined &&
263
+ data.user_id !== undefined) {
264
+ const reactionEv = {
265
+ appId: data.app_id,
266
+ roomId: data.room_id,
267
+ msgId: data.msg_id,
268
+ op: data.op,
269
+ reaction: data.reaction,
270
+ userId: data.user_id,
271
+ };
272
+ args.onReaction(reactionEv);
273
+ return;
274
+ }
275
+ // W2: dispatch non-reaction mutations to onMutation.
276
+ if (args.onMutation) {
277
+ const mutation = {
278
+ appId: data.app_id,
279
+ roomId: data.room_id,
280
+ msgId: data.msg_id,
281
+ op: data.op,
282
+ editedAt: data.edited_at,
283
+ editCount: data.edit_count,
284
+ deletedAt: data.deleted_at,
285
+ pinnedBy: data.pinned_by,
286
+ };
287
+ args.onMutation(mutation);
288
+ }
289
+ }
290
+ catch {
291
+ // Malformed frame — ignore.
292
+ }
293
+ });
294
+ }
232
295
  es.onerror = () => {
233
296
  es?.close();
234
297
  es = null;
@@ -256,7 +319,7 @@ export class SDKChatClient {
256
319
  return;
257
320
  try {
258
321
  const missed = await this.list(roomId, { afterSeq: lastSeq });
259
- for (const row of missed) {
322
+ for (const row of missed.items) {
260
323
  lastSeq = row.seq;
261
324
  args.onMessage(row);
262
325
  }
@@ -577,17 +640,208 @@ export class SDKChatClient {
577
640
  throw new SDKChatError(httpStatusToCode(resp.status), `getThread failed: HTTP ${resp.status}`, resp.status);
578
641
  }
579
642
  const json = (await resp.json());
580
- return json.map((row) => ({
581
- seq: row.seq,
582
- msgId: row.msg_id,
583
- senderUid: row.sender_uid,
584
- sealed: base64ToArrayBuffer(row.sealed_b64),
585
- createdAt: row.created_at,
586
- threadRootMsgId: row.thread_root_msg_id ?? null,
587
- productRef: row.product_ref ?? null,
588
- productMeta: row.product_meta ?? null,
643
+ return json.map(rowToMessageRow);
644
+ }
645
+ // ── W2: Edit / delete / pin ────────────────────────────────────────────────
646
+ /**
647
+ * Edit a message (only the original sender may edit).
648
+ * Wire-contract: PATCH /api/sdk/messages/:room_id/:msg_id
649
+ * Body: { sealed_b64 }
650
+ * Scope: chat:write:<room_id>.
651
+ */
652
+ async updateMessage(roomId, msgId, args) {
653
+ const body = {
654
+ sealed_b64: arrayBufferToBase64(args.sealed),
655
+ };
656
+ let resp;
657
+ try {
658
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/messages/${encodeURIComponent(roomId)}/${encodeURIComponent(msgId)}`, {
659
+ method: 'PATCH',
660
+ headers: {
661
+ 'Content-Type': 'application/json',
662
+ Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}`,
663
+ },
664
+ body: JSON.stringify(body),
665
+ });
666
+ }
667
+ catch (err) {
668
+ throw new SDKChatError('network', `updateMessage failed: ${String(err)}`);
669
+ }
670
+ if (!resp.ok) {
671
+ throw new SDKChatError(httpStatusToCode(resp.status), `updateMessage failed: HTTP ${resp.status}`, resp.status);
672
+ }
673
+ }
674
+ /**
675
+ * Soft-delete a message (only the original sender may delete).
676
+ * Wire-contract: DELETE /api/sdk/messages/:room_id/:msg_id
677
+ * Returns void on 204.
678
+ * Scope: chat:write:<room_id>.
679
+ */
680
+ async deleteMessage(roomId, msgId) {
681
+ let resp;
682
+ try {
683
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/messages/${encodeURIComponent(roomId)}/${encodeURIComponent(msgId)}`, {
684
+ method: 'DELETE',
685
+ headers: { Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}` },
686
+ });
687
+ }
688
+ catch (err) {
689
+ throw new SDKChatError('network', `deleteMessage failed: ${String(err)}`);
690
+ }
691
+ if (!resp.ok) {
692
+ throw new SDKChatError(httpStatusToCode(resp.status), `deleteMessage failed: HTTP ${resp.status}`, resp.status);
693
+ }
694
+ }
695
+ /**
696
+ * Pin a message in a room. Idempotent.
697
+ * Wire-contract: POST /api/sdk/rooms/:room_id/pins/:msg_id
698
+ * Scope: chat:write:<room_id>.
699
+ */
700
+ async pinMessage(roomId, msgId) {
701
+ let resp;
702
+ try {
703
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/rooms/${encodeURIComponent(roomId)}/pins/${encodeURIComponent(msgId)}`, {
704
+ method: 'POST',
705
+ headers: { Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}` },
706
+ });
707
+ }
708
+ catch (err) {
709
+ throw new SDKChatError('network', `pinMessage failed: ${String(err)}`);
710
+ }
711
+ if (!resp.ok) {
712
+ throw new SDKChatError(httpStatusToCode(resp.status), `pinMessage failed: HTTP ${resp.status}`, resp.status);
713
+ }
714
+ }
715
+ /**
716
+ * Unpin a message in a room. No-op if not pinned.
717
+ * Wire-contract: DELETE /api/sdk/rooms/:room_id/pins/:msg_id
718
+ * Scope: chat:write:<room_id>.
719
+ */
720
+ async unpinMessage(roomId, msgId) {
721
+ let resp;
722
+ try {
723
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/rooms/${encodeURIComponent(roomId)}/pins/${encodeURIComponent(msgId)}`, {
724
+ method: 'DELETE',
725
+ headers: { Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}` },
726
+ });
727
+ }
728
+ catch (err) {
729
+ throw new SDKChatError('network', `unpinMessage failed: ${String(err)}`);
730
+ }
731
+ if (!resp.ok) {
732
+ throw new SDKChatError(httpStatusToCode(resp.status), `unpinMessage failed: HTTP ${resp.status}`, resp.status);
733
+ }
734
+ }
735
+ /**
736
+ * List pinned messages in a room, ordered by pinned_at descending.
737
+ * Wire-contract: GET /api/sdk/rooms/:room_id/pins
738
+ * Scope: chat:read:<room_id>.
739
+ */
740
+ async listPins(roomId) {
741
+ let resp;
742
+ try {
743
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/rooms/${encodeURIComponent(roomId)}/pins`, {
744
+ headers: { Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}` },
745
+ });
746
+ }
747
+ catch (err) {
748
+ throw new SDKChatError('network', `listPins failed: ${String(err)}`);
749
+ }
750
+ if (!resp.ok) {
751
+ throw new SDKChatError(httpStatusToCode(resp.status), `listPins failed: HTTP ${resp.status}`, resp.status);
752
+ }
753
+ const arr = (await resp.json());
754
+ return arr.map((p) => ({
755
+ appId: p.app_id,
756
+ roomId: p.room_id,
757
+ msgId: p.msg_id,
758
+ pinnedBy: p.pinned_by,
759
+ pinnedAt: p.pinned_at,
589
760
  }));
590
761
  }
762
+ // ── W3: Reactions ────────────────────────────────────────────────────────
763
+ /**
764
+ * W3: Add a reaction emoji to a message. Idempotent per (user, emoji).
765
+ * Wire-contract: POST /api/sdk/messages/:room_id/:msg_id/reactions
766
+ * Scope: chat:write:<room_id>.
767
+ *
768
+ * @param reaction - Emoji / reaction string. Must be 1–32 Unicode code points
769
+ * (`[...reaction].length`). The server enforces the same limit via
770
+ * `character_length(reaction) BETWEEN 1 AND 32` (PG code-point count).
771
+ * Throws `invalid_args` if the validation fails before the network call.
772
+ */
773
+ async sendReaction(roomId, msgId, reaction) {
774
+ if (!reaction || [...reaction].length > 32) {
775
+ throw new SDKChatError('invalid_args', `reaction must be 1-32 Unicode code points, got ${[...reaction].length}`);
776
+ }
777
+ let resp;
778
+ try {
779
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/messages/${encodeURIComponent(roomId)}/${encodeURIComponent(msgId)}/reactions`, {
780
+ method: 'POST',
781
+ headers: {
782
+ Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}`,
783
+ 'Content-Type': 'application/json',
784
+ },
785
+ body: JSON.stringify({ reaction }),
786
+ });
787
+ }
788
+ catch (err) {
789
+ throw new SDKChatError('network', `sendReaction failed: ${String(err)}`);
790
+ }
791
+ if (!resp.ok) {
792
+ throw new SDKChatError(httpStatusToCode(resp.status), `sendReaction failed: HTTP ${resp.status}`, resp.status);
793
+ }
794
+ }
795
+ /**
796
+ * W3: Remove own reaction from a message. No-op if never added.
797
+ * Wire-contract: DELETE /api/sdk/messages/:room_id/:msg_id/reactions/:reaction
798
+ * Scope: chat:write:<room_id>.
799
+ *
800
+ * The reaction string is percent-encoded in the path to support emoji.
801
+ *
802
+ * @param reaction - Emoji / reaction string. Must be 1–32 Unicode code points
803
+ * (`[...reaction].length`). The server enforces the same limit via
804
+ * `character_length(reaction) BETWEEN 1 AND 32` (PG code-point count).
805
+ * Throws `invalid_args` if the validation fails before the network call.
806
+ */
807
+ async removeReaction(roomId, msgId, reaction) {
808
+ if (!reaction || [...reaction].length > 32) {
809
+ throw new SDKChatError('invalid_args', `reaction must be 1-32 Unicode code points, got ${[...reaction].length}`);
810
+ }
811
+ let resp;
812
+ try {
813
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/messages/${encodeURIComponent(roomId)}/${encodeURIComponent(msgId)}/reactions/${encodeURIComponent(reaction)}`, {
814
+ method: 'DELETE',
815
+ headers: { Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}` },
816
+ });
817
+ }
818
+ catch (err) {
819
+ throw new SDKChatError('network', `removeReaction failed: ${String(err)}`);
820
+ }
821
+ if (!resp.ok) {
822
+ throw new SDKChatError(httpStatusToCode(resp.status), `removeReaction failed: HTTP ${resp.status}`, resp.status);
823
+ }
824
+ }
825
+ /**
826
+ * W3: Fetch aggregated reaction counts + user lists for a message.
827
+ * Wire-contract: GET /api/sdk/messages/:room_id/:msg_id/reactions
828
+ * Scope: chat:read:<room_id>.
829
+ */
830
+ async getReactions(roomId, msgId) {
831
+ let resp;
832
+ try {
833
+ resp = await fetch(`${__classPrivateFieldGet(this, _SDKChatClient_baseUrl, "f")}/api/sdk/messages/${encodeURIComponent(roomId)}/${encodeURIComponent(msgId)}/reactions`, {
834
+ headers: { Authorization: `Bearer ${__classPrivateFieldGet(this, _SDKChatClient_jwt, "f")}` },
835
+ });
836
+ }
837
+ catch (err) {
838
+ throw new SDKChatError('network', `getReactions failed: ${String(err)}`);
839
+ }
840
+ if (!resp.ok) {
841
+ throw new SDKChatError(httpStatusToCode(resp.status), `getReactions failed: HTTP ${resp.status}`, resp.status);
842
+ }
843
+ return (await resp.json());
844
+ }
591
845
  }
592
846
  _SDKChatClient_baseUrl = new WeakMap(), _SDKChatClient_jwt = new WeakMap(), _SDKChatClient_compression = new WeakMap(), _SDKChatClient_minCompressBytes = new WeakMap(), _SDKChatClient_dictHint = new WeakMap(), _SDKChatClient_ready = new WeakMap(), _SDKChatClient_instances = new WeakSet(), _SDKChatClient_encodeBody =
593
847
  /** Encode payload bytes for POST /api/sdk/messages per the configured compression mode.
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -24,7 +24,7 @@
24
24
  * ```
25
25
  */
26
26
  export { SDKChatClient } from './client.js';
27
- export type { SDKChatClientOptions, SendArgs, ListArgs, SubscribeArgs, MessageRow, SDKChatErrorCode } from './types.js';
27
+ export type { SDKChatClientOptions, SendArgs, ListArgs, ListResult, SubscribeArgs, MessageRow, SDKChatErrorCode, UpdateMessageArgs, PinnedMessage, MutationEvent, ReactionEvent, ReactionsResponse } from './types.js';
28
28
  export { SDKChatError } from './errors.js';
29
29
  export { setDictLoader, setDictBaseUrl, ensureWireCodecReady } from '@oxpulse/wire-codec';
30
30
  export type { DictLoader, DictName } from '@oxpulse/wire-codec';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EAAE,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACxH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EAAE,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACvN,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -43,6 +43,15 @@ export interface SDKChatClientOptions {
43
43
  * Defaults to 'zstd-dict-ru-v1' if not specified.
44
44
  */
45
45
  dictHint?: import('@oxpulse/wire-codec').DictName;
46
+ /**
47
+ * Application namespace identifier — matches the JWT `aud` claim and
48
+ * scopes messages to a multi-tenant application bucket on the server
49
+ * (e.g. `demo_marketplace`, partner integrations). The client passes
50
+ * it through but does NOT enforce it locally; server-side scope check
51
+ * is authoritative. Optional for backwards compatibility: when omitted
52
+ * the server falls back to the JWT `aud` claim alone.
53
+ */
54
+ appId?: string;
46
55
  }
47
56
  export interface SendArgs {
48
57
  /** Caller-assigned stable user identifier. */
@@ -68,9 +77,30 @@ export interface SendArgs {
68
77
  export interface ListArgs {
69
78
  /** Return messages with seq > afterSeq (exclusive). Defaults to 0. */
70
79
  afterSeq?: number;
80
+ /** W1: Return messages with seq < beforeSeq (exclusive) — reverse paging cursor. */
81
+ beforeSeq?: number;
71
82
  /** Maximum rows returned. Defaults to 50, server-capped at 200. */
72
83
  limit?: number;
73
84
  }
85
+ /**
86
+ * W1: Paginated result from list().
87
+ *
88
+ * Direction-aware: `next` is a thunk that calls list() with the correct
89
+ * cursor argument for the current paging direction.
90
+ * - Forward (afterSeq query): thunk passes next_cursor as `afterSeq`.
91
+ * - Backward (beforeSeq query): thunk passes next_cursor as `beforeSeq`.
92
+ */
93
+ export interface ListResult {
94
+ /** Current page of messages, ordered by seq ascending. */
95
+ items: MessageRow[];
96
+ /** True when more messages exist in the current paging direction. */
97
+ hasNext: boolean;
98
+ /**
99
+ * Thunk that fetches the next page in the same direction.
100
+ * Present only when hasNext is true.
101
+ */
102
+ next?: () => Promise<ListResult>;
103
+ }
74
104
  /** W9: Marketplace product display metadata. Non-sensitive catalog info. */
75
105
  export interface ProductMeta {
76
106
  title: string;
@@ -104,6 +134,31 @@ export interface MessageRow {
104
134
  * Non-sensitive catalog info — server stores and returns without E2EE decryption.
105
135
  */
106
136
  productMeta: ProductMeta | null;
137
+ /**
138
+ * W2: RFC 3339 timestamp of the last edit. undefined when never edited.
139
+ */
140
+ editedAt?: string;
141
+ /**
142
+ * W2: RFC 3339 timestamp of soft-delete. undefined when not deleted.
143
+ */
144
+ deletedAt?: string;
145
+ /**
146
+ * W2: number of times the message has been edited. 0 when never edited.
147
+ */
148
+ editCount?: number;
149
+ }
150
+ /** W2: Arguments for editing a message (only the sender may edit). */
151
+ export interface UpdateMessageArgs {
152
+ /** New sealed ciphertext — replaces the existing payload. */
153
+ sealed: ArrayBuffer;
154
+ }
155
+ /** W2: A pinned-message entry returned by listPins(). */
156
+ export interface PinnedMessage {
157
+ appId: string;
158
+ roomId: string;
159
+ msgId: string;
160
+ pinnedBy: string;
161
+ pinnedAt: string;
107
162
  }
108
163
  export interface TypingEvent {
109
164
  userId: string;
@@ -121,6 +176,59 @@ export interface PresenceUser {
121
176
  userId: string;
122
177
  lastSeenAt: string;
123
178
  }
179
+ /**
180
+ * W2 fix-pass: a mutation event received from the `sdk_message_log_mutation`
181
+ * SSE channel. Carries metadata for edit / delete / pin / unpin operations.
182
+ * The sealed ciphertext is NOT re-transmitted — re-fetch if needed.
183
+ */
184
+ export interface MutationEvent {
185
+ appId: string;
186
+ roomId: string;
187
+ msgId: string;
188
+ /** "edit" | "delete" | "pin" | "unpin" */
189
+ op: string;
190
+ /** RFC 3339 — present on op="edit". */
191
+ editedAt?: string;
192
+ /** Present on op="edit". */
193
+ editCount?: number;
194
+ /** RFC 3339 — present on op="delete". */
195
+ deletedAt?: string;
196
+ /** Present on op="pin". */
197
+ pinnedBy?: string;
198
+ }
199
+ /**
200
+ * W3: A reaction event received from the mutation SSE channel.
201
+ * Fired for op "reaction_add" | "reaction_remove".
202
+ */
203
+ export interface ReactionEvent {
204
+ appId: string;
205
+ roomId: string;
206
+ msgId: string;
207
+ /** Discriminated literal — narrows to exactly the two reaction ops. */
208
+ op: 'reaction_add' | 'reaction_remove';
209
+ /** The emoji / reaction string. */
210
+ reaction: string;
211
+ /** The user who reacted. */
212
+ userId: string;
213
+ }
214
+ /**
215
+ * W3: Aggregated reaction response from GET /api/sdk/messages/:room/:msg/reactions.
216
+ */
217
+ export interface ReactionsResponse {
218
+ /** Map from reaction string to total count of users who reacted with it. Always exact. */
219
+ counts: Record<string, number>;
220
+ /**
221
+ * Map from reaction string to list of user_ids who reacted with it.
222
+ * Capped at 100 entries per emoji. Check `truncated` to detect when the list
223
+ * is incomplete; use `counts` for the accurate total.
224
+ */
225
+ users: Record<string, string[]>;
226
+ /**
227
+ * True when at least one emoji's user list was truncated to 100 entries.
228
+ * Exact counts are always preserved in `counts` regardless of truncation.
229
+ */
230
+ truncated: boolean;
231
+ }
124
232
  export interface SubscribeArgs {
125
233
  /** Called for each new message received via SSE. */
126
234
  onMessage: (row: MessageRow) => void;
@@ -132,6 +240,18 @@ export interface SubscribeArgs {
132
240
  onPresence?: (event: PresenceEvent) => void;
133
241
  /** W6: called when a read receipt is received via SSE. */
134
242
  onReadReceipt?: (event: ReadReceiptEvent) => void;
243
+ /**
244
+ * W2 fix-pass: called when a mutation event arrives on the SSE stream.
245
+ * Fired for edit / delete / pin / unpin. Clients should update local
246
+ * state (cache invalidation / UI refresh) on receipt.
247
+ */
248
+ onMutation?: (event: MutationEvent) => void;
249
+ /**
250
+ * W3: called when a reaction mutation event arrives on the SSE stream.
251
+ * Fired for op "reaction_add" | "reaction_remove".
252
+ * Clients should update local reaction state on receipt.
253
+ */
254
+ onReaction?: (event: ReactionEvent) => void;
135
255
  }
136
256
  export type SDKChatErrorCode = 'network' | 'unauthorized' | 'forbidden' | 'not_found' | 'rate_limited' | 'server_error' | 'unsupported' | 'invalid_args';
137
257
  export interface Room {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts CHANGED
@@ -20,7 +20,19 @@ export interface TransientCallbacks {
20
20
  * by sdk_presence.rs.
21
21
  */
22
22
  export declare function dispatchTransient(evType: string, data: Record<string, unknown>, callbacks: TransientCallbacks): void;
23
- /** ArrayBuffer → base64url string (no padding). */
23
+ /**
24
+ * ArrayBuffer → standard base64 string (with `+`/`/`, with padding).
25
+ *
26
+ * B2 fix: server uses `base64::engine::general_purpose::STANDARD` which rejects
27
+ * URL-safe characters (`-`, `_`). All sealed payload round-trips MUST use this
28
+ * function so client-produced base64 survives server decode.
29
+ *
30
+ * @deprecated `arrayBufferToBase64url` (URL-safe, no padding) is kept for
31
+ * backward-compat with any existing callers outside this package; new code
32
+ * MUST use `arrayBufferToBase64`.
33
+ */
34
+ export declare function arrayBufferToBase64(buf: ArrayBuffer): string;
35
+ /** @deprecated Use `arrayBufferToBase64` (standard) for server round-trips. */
24
36
  export declare function arrayBufferToBase64url(buf: ArrayBuffer): string;
25
37
  /** base64 (standard or url-safe, with or without padding) → ArrayBuffer. */
26
38
  export declare function base64ToArrayBuffer(b64: string): ArrayBuffer;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjG,yFAAyF;AACzF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACxC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,EAAE,kBAAkB,GAC5B,IAAI,CAuBN;AAED,mDAAmD;AACnD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAO/D;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAQ5D;AAED,sDAAsD;AACtD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAQjE;AAED,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGjD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjG,yFAAyF;AACzF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACxC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,EAAE,kBAAkB,GAC5B,IAAI,CAuBN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAO5D;AAED,+EAA+E;AAC/E,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAE/D;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAQ5D;AAED,sDAAsD;AACtD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAQjE;AAED,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGjD"}
package/dist/utils.js CHANGED
@@ -36,14 +36,28 @@ export function dispatchTransient(evType, data, callbacks) {
36
36
  });
37
37
  }
38
38
  }
39
- /** ArrayBuffer → base64url string (no padding). */
40
- export function arrayBufferToBase64url(buf) {
39
+ /**
40
+ * ArrayBuffer → standard base64 string (with `+`/`/`, with padding).
41
+ *
42
+ * B2 fix: server uses `base64::engine::general_purpose::STANDARD` which rejects
43
+ * URL-safe characters (`-`, `_`). All sealed payload round-trips MUST use this
44
+ * function so client-produced base64 survives server decode.
45
+ *
46
+ * @deprecated `arrayBufferToBase64url` (URL-safe, no padding) is kept for
47
+ * backward-compat with any existing callers outside this package; new code
48
+ * MUST use `arrayBufferToBase64`.
49
+ */
50
+ export function arrayBufferToBase64(buf) {
41
51
  const bytes = new Uint8Array(buf);
42
52
  let binary = '';
43
53
  for (let i = 0; i < bytes.byteLength; i++) {
44
54
  binary += String.fromCharCode(bytes[i]);
45
55
  }
46
- return btoa(binary).replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '');
56
+ return btoa(binary);
57
+ }
58
+ /** @deprecated Use `arrayBufferToBase64` (standard) for server round-trips. */
59
+ export function arrayBufferToBase64url(buf) {
60
+ return arrayBufferToBase64(buf).replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '');
47
61
  }
48
62
  /** base64 (standard or url-safe, with or without padding) → ArrayBuffer. */
49
63
  export function base64ToArrayBuffer(b64) {
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxpulse/chat-sdk",
3
- "version": "0.1.0",
3
+ "version": "0.4.0",
4
4
  "description": "OxPulse Chat SDK — send/list/subscribe over the OxPulse SDK HTTP API. CSP-safe (zero eval/Function calls).",
5
5
  "license": "AGPL-3.0-or-later",
6
6
  "author": "Anatoly Koptev",