6 Commits

Author SHA1 Message Date
maaz519 e7c0adb93e chore(deps): @insignia/iios-kernel-client@0.1.6 — ReceiptEvent.userId
Needed by the Seen fix: the adapter reads e.userId to tell your own read receipt
from the other party's.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 17:49:23 +05:30
maaz519 384690f84d fix(messenger): sent messages no longer show Seen instantly (SDK 0.1.14)
Receipts now prefer userId over the IIOS actor UUID, so the SDK can actually
tell your own read receipt from the other party's.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 17:47:16 +05:30
maaz519 b733dfbe69 fix(messenger): SDK 0.1.13 — composer height no longer clobbered by the inbox .miu-textarea rule
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 17:36:10 +05:30
maaz519 55655ee272 fix(messenger): SDK 0.1.12 — composer input back to its original 38px height
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 17:30:20 +05:30
maaz519 804754ea42 fix(messenger): SDK 0.1.11 — composer stops stretching send/attach buttons
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 17:22:27 +05:30
maaz519 43d803d73f fix(messenger): SDK 0.1.10 — readable code chips, no raw markers in previews
Picks up the code-chip contrast fix (inline code was invisible on your own
bubbles) and stripMarkup(). Also applies stripMarkup to the notification toast,
which had the same problem — a formatted message toasted as "~crazy~".

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 17:07:15 +05:30
4 changed files with 16 additions and 13 deletions
+8 -8
View File
@@ -11,8 +11,8 @@
"@abe-kap/appshell-sdk": "^0.2.6",
"@huggingface/transformers": "^4.2.0",
"@imgly/background-removal": "^1.7.0",
"@insignia/iios-kernel-client": "^0.1.4",
"@insignia/iios-messaging-ui": "^0.1.9",
"@insignia/iios-kernel-client": "^0.1.6",
"@insignia/iios-messaging-ui": "^0.1.14",
"@photo-gallery/sdk": "file:./vendor/photo-gallery-sdk",
"@tensorflow-models/coco-ssd": "^2.2.3",
"@tensorflow/tfjs": "^4.22.0",
@@ -1078,18 +1078,18 @@
"integrity": "sha512-+ycbP8ORdwllMtn7dmxIL7lnDpDDkV+gHqT2OKJtMplMivjKU03gsuuEveQxnrE1CMvZ3fcSljmfMs10Cw131g=="
},
"node_modules/@insignia/iios-kernel-client": {
"version": "0.1.4",
"resolved": "https://git.lynkedup.cloud/api/packages/insignia/npm/%40insignia%2Fiios-kernel-client/-/0.1.4/iios-kernel-client-0.1.4.tgz",
"integrity": "sha512-pYBHH21TvgOOm0kp3ogvZx/iEzXLwmU23jHpDzIolh5FrqxCrcpUjRwLDkeYRTTkRVdoJAPTmPES/pU66iNoiA==",
"version": "0.1.6",
"resolved": "https://git.lynkedup.cloud/api/packages/insignia/npm/%40insignia%2Fiios-kernel-client/-/0.1.6/iios-kernel-client-0.1.6.tgz",
"integrity": "sha512-QfjqaGj8acKfwWQvYsf6Rxj1TeLQN+3fNTTlL+PkAP2usAxcdSkgRKkfHxy9FrhoxLXahQBuOn3wnUzd6Qh39Q==",
"dependencies": {
"@insignia/iios-contracts": "0.1.0",
"socket.io-client": "^4.8.1"
}
},
"node_modules/@insignia/iios-messaging-ui": {
"version": "0.1.9",
"resolved": "https://git.lynkedup.cloud/api/packages/insignia/npm/%40insignia%2Fiios-messaging-ui/-/0.1.9/iios-messaging-ui-0.1.9.tgz",
"integrity": "sha512-9kHCoYHkz1rsqJGI9l1JLQOEickUE7ujuEihM0Wx+TYowir25WTN+j5ukf04Tse3ZmyMEtgd2BNE1zmKgNGD6Q==",
"version": "0.1.14",
"resolved": "https://git.lynkedup.cloud/api/packages/insignia/npm/%40insignia%2Fiios-messaging-ui/-/0.1.14/iios-messaging-ui-0.1.14.tgz",
"integrity": "sha512-ywm0DuOxoddlmi48tU27N3jtTF3pMGwnw9M/BhluPPcnJSlwy6aN03BynCGkWRrkXrxGY7c+3G1EMX/eUr7Ffw==",
"peerDependencies": {
"@insignia/iios-kernel-client": "*",
"react": ">=18",
+2 -2
View File
@@ -13,8 +13,8 @@
"@abe-kap/appshell-sdk": "^0.2.6",
"@huggingface/transformers": "^4.2.0",
"@imgly/background-removal": "^1.7.0",
"@insignia/iios-kernel-client": "^0.1.4",
"@insignia/iios-messaging-ui": "^0.1.9",
"@insignia/iios-kernel-client": "^0.1.6",
"@insignia/iios-messaging-ui": "^0.1.14",
"@photo-gallery/sdk": "file:./vendor/photo-gallery-sdk",
"@tensorflow-models/coco-ssd": "^2.2.3",
"@tensorflow/tfjs": "^4.22.0",
@@ -7,7 +7,7 @@
import { useEffect, useMemo, useRef } from "react";
import { useAppShell, useAuth } from "@abe-kap/appshell-sdk/react";
import type { MessagingAdapter } from "@insignia/iios-messaging-ui";
import { stripMarkup, type MessagingAdapter } from "@insignia/iios-messaging-ui";
import { isShellConfigured } from "@/lib/appshell";
import { useRealtime } from "@/lib/realtime";
import { CrmMessagingAdapter, type DataDoor } from "@/lib/crm-messaging-adapter";
@@ -39,7 +39,8 @@ export function NotificationCenter({ active, onNavigate }: { active: string; onN
toast.push({
tone: "info",
title: "New message",
desc: message.text?.slice(0, 90) || "You have a new message",
// Toasts are plain text, so drop the formatting markers rather than show "~crazy~".
desc: (message.text ? stripMarkup(message.text).slice(0, 90) : "") || "You have a new message",
onClick: () => onNavigate("messenger", threadId),
});
});
+3 -1
View File
@@ -69,7 +69,9 @@ export class CrmMessagingAdapter implements MessagingAdapter {
});
socket.on("typing", (e) => this.emit(e.threadId, { kind: "typing", userId: e.userId }));
// Receipts carry no threadId → fan to all open threads; the UI filters by messageId.
socket.on("receipt", (e) => this.broadcast({ kind: "receipt", messageId: e.interactionId, actorId: e.actorId }));
// Prefer userId: the SDK compares this against currentActorId(), which is a userId. e.actorId
// is an IIOS actor UUID, so using it made "is this my own receipt?" always answer no.
socket.on("receipt", (e) => this.broadcast({ kind: "receipt", messageId: e.interactionId, actorId: e.userId ?? e.actorId }));
socket.on("annotation", (e) => {
if (e.type !== REACTION) return;
this.setReactionUsers(e.interactionId, e.value, e.users);