@cellarnode/ui 0.12.4 → 0.12.6
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/dist/chat/connection-banner.d.ts.map +1 -1
- package/dist/chat/connection-banner.js +12 -7
- package/dist/chat/connection-banner.js.map +1 -1
- package/dist/chat/global-chat-widget.d.ts.map +1 -1
- package/dist/chat/global-chat-widget.js +5 -3
- package/dist/chat/global-chat-widget.js.map +1 -1
- package/dist/chat/presence-dot.d.ts.map +1 -1
- package/dist/chat/presence-dot.js +10 -7
- package/dist/chat/presence-dot.js.map +1 -1
- package/dist/chat/unified-timeline.d.ts.map +1 -1
- package/dist/chat/unified-timeline.js +18 -12
- package/dist/chat/unified-timeline.js.map +1 -1
- package/dist/chat/use-safe-virtualizer.d.ts +3 -0
- package/dist/chat/use-safe-virtualizer.d.ts.map +1 -0
- package/dist/chat/use-safe-virtualizer.js +9 -0
- package/dist/chat/use-safe-virtualizer.js.map +1 -0
- package/dist/components/card-actions-trigger.d.ts +2 -1
- package/dist/components/card-actions-trigger.d.ts.map +1 -1
- package/dist/components/card-actions-trigger.js +2 -3
- package/dist/components/card-actions-trigger.js.map +1 -1
- package/dist/components/offer-card.js +1 -1
- package/dist/components/offer-card.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-banner.d.ts","sourceRoot":"","sources":["../../src/chat/connection-banner.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG,SAAS,GAAG,WAAW,CAAC;AAE7E,UAAU,qBAAqB;IAC7B,KAAK,EAAE,qBAAqB,CAAC;CAC9B;AAID,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"connection-banner.d.ts","sourceRoot":"","sources":["../../src/chat/connection-banner.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG,SAAS,GAAG,WAAW,CAAC;AAE7E,UAAU,qBAAqB;IAC7B,KAAK,EAAE,qBAAqB,CAAC;CAC9B;AAID,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE,qBAAqB,2CAmDhE"}
|
|
@@ -5,14 +5,19 @@ import { Loader2, Wifi, WifiOff } from "lucide-react";
|
|
|
5
5
|
const AUTO_DISMISS_MS = 3000;
|
|
6
6
|
export function ConnectionBanner({ state }) {
|
|
7
7
|
const [showConnected, setShowConnected] = useState(false);
|
|
8
|
+
const [prevState, setPrevState] = useState(state);
|
|
9
|
+
// Derive showConnected from prop changes (no effect needed)
|
|
10
|
+
if (state !== prevState) {
|
|
11
|
+
setPrevState(state);
|
|
12
|
+
setShowConnected(state === "connected");
|
|
13
|
+
}
|
|
14
|
+
// Auto-dismiss the connected banner after a delay
|
|
8
15
|
useEffect(() => {
|
|
9
|
-
if (
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
setShowConnected(false);
|
|
15
|
-
}, [state]);
|
|
16
|
+
if (!showConnected)
|
|
17
|
+
return;
|
|
18
|
+
const timer = setTimeout(() => setShowConnected(false), AUTO_DISMISS_MS);
|
|
19
|
+
return () => clearTimeout(timer);
|
|
20
|
+
}, [showConnected]);
|
|
16
21
|
const visible = state === "reconnecting" || state === "offline" || showConnected;
|
|
17
22
|
return (_jsx(AnimatePresence, { children: visible && (_jsxs(motion.div, { initial: { height: 0, opacity: 0 }, animate: { height: "auto", opacity: 1 }, exit: { height: 0, opacity: 0 }, transition: { duration: 0.2, ease: "easeInOut" }, className: "overflow-hidden", children: [state === "reconnecting" && (_jsxs("div", { className: "flex items-center gap-2 border-t border-amber-500/20 bg-amber-50 px-4 py-2 text-xs text-amber-700 dark:bg-amber-950/30 dark:text-amber-300", children: [_jsx(Loader2, { className: "size-3.5 shrink-0 animate-spin" }), "Reconnecting to live updates..."] })), state === "offline" && (_jsxs("div", { className: "flex items-center gap-2 border-t border-red-500/20 bg-red-50 px-4 py-2 text-xs text-red-700 dark:bg-red-950/30 dark:text-red-300", children: [_jsx(WifiOff, { className: "size-3.5 shrink-0" }), "You are offline. Messages will be sent when you reconnect."] })), showConnected && state === "connected" && (_jsxs("div", { className: "flex items-center gap-2 border-t border-green-500/20 bg-green-50 px-4 py-2 text-xs text-green-700 dark:bg-green-950/30 dark:text-green-300", children: [_jsx(Wifi, { className: "size-3.5 shrink-0" }), "Back online!"] }))] })) }));
|
|
18
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-banner.js","sourceRoot":"","sources":["../../src/chat/connection-banner.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAQtD,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,MAAM,UAAU,gBAAgB,CAAC,EAAE,KAAK,EAAyB;IAC/D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"connection-banner.js","sourceRoot":"","sources":["../../src/chat/connection-banner.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAQtD,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,MAAM,UAAU,gBAAgB,CAAC,EAAE,KAAK,EAAyB;IAC/D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,4DAA4D;IAC5D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,gBAAgB,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED,kDAAkD;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa;YAAE,OAAO;QAC3B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC;QACzE,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,MAAM,OAAO,GAAG,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,SAAS,IAAI,aAAa,CAAC;IAEjF,OAAO,CACL,KAAC,eAAe,cACb,OAAO,IAAI,CACV,MAAC,MAAM,CAAC,GAAG,IACT,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAClC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,EACvC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAC/B,UAAU,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,EAChD,SAAS,EAAC,iBAAiB,aAE1B,KAAK,KAAK,cAAc,IAAI,CAC3B,eAAK,SAAS,EAAC,4IAA4I,aACzJ,KAAC,OAAO,IAAC,SAAS,EAAC,gCAAgC,GAAG,uCAElD,CACP,EACA,KAAK,KAAK,SAAS,IAAI,CACtB,eAAK,SAAS,EAAC,kIAAkI,aAC/I,KAAC,OAAO,IAAC,SAAS,EAAC,mBAAmB,GAAG,kEAErC,CACP,EACA,aAAa,IAAI,KAAK,KAAK,WAAW,IAAI,CACzC,eAAK,SAAS,EAAC,4IAA4I,aACzJ,KAAC,IAAI,IAAC,SAAS,EAAC,mBAAmB,GAAG,oBAElC,CACP,IACU,CACd,GACe,CACnB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-chat-widget.d.ts","sourceRoot":"","sources":["../../src/chat/global-chat-widget.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAI/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,gEAAgE;IAChE,QAAQ,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;CACpC;AAiOD,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,YAAY,EACZ,mBAAmB,EACnB,QAAQ,GACT,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"global-chat-widget.d.ts","sourceRoot":"","sources":["../../src/chat/global-chat-widget.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAI/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,gEAAgE;IAChE,QAAQ,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;CACpC;AAiOD,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,YAAY,EACZ,mBAAmB,EACnB,QAAQ,GACT,EAAE,qBAAqB,2CAmJvB"}
|
|
@@ -39,9 +39,9 @@ function RoomListView({ rooms, onSelectRoom, onOpenFullMessenger, onClose, userR
|
|
|
39
39
|
export function GlobalChatWidget({ rooms, isConnected, chatApi, chatWs, currentOrgId, onOpenFullMessenger, userRole, }) {
|
|
40
40
|
const [isOpen, setIsOpen] = useState(false);
|
|
41
41
|
const [selectedRoom, setSelectedRoom] = useState(null);
|
|
42
|
-
const [announcement, setAnnouncement] = useState("");
|
|
43
42
|
const fabRef = useRef(null);
|
|
44
43
|
const widgetRef = useRef(null);
|
|
44
|
+
const announcementRef = useRef(null);
|
|
45
45
|
const totalUnread = rooms.reduce((n, r) => n + r.unreadCount, 0);
|
|
46
46
|
// Focus management: focus widget when it opens, return focus to FAB when it closes
|
|
47
47
|
useEffect(() => {
|
|
@@ -54,7 +54,9 @@ export function GlobalChatWidget({ rooms, isConnected, chatApi, chatWs, currentO
|
|
|
54
54
|
const focusable = el.querySelector('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
|
|
55
55
|
focusable?.focus();
|
|
56
56
|
});
|
|
57
|
-
|
|
57
|
+
if (announcementRef.current) {
|
|
58
|
+
announcementRef.current.textContent = "Messages panel opened";
|
|
59
|
+
}
|
|
58
60
|
}
|
|
59
61
|
else {
|
|
60
62
|
// Return focus to the FAB
|
|
@@ -80,6 +82,6 @@ export function GlobalChatWidget({ rooms, isConnected, chatApi, chatWs, currentO
|
|
|
80
82
|
e.stopPropagation();
|
|
81
83
|
setIsOpen(false);
|
|
82
84
|
}
|
|
83
|
-
}, children: [_jsx("div", { "aria-live": "polite", "aria-atomic": "false", className: "sr-only"
|
|
85
|
+
}, children: [_jsx("div", { ref: announcementRef, "aria-live": "polite", "aria-atomic": "false", className: "sr-only" }), _jsx(AnimatePresence, { mode: "wait", children: selectedRoom ? (_jsx(motion.div, { initial: { opacity: 0, x: 20 }, animate: { opacity: 1, x: 0 }, exit: { opacity: 0, x: 20 }, transition: { duration: 0.16 }, className: "flex min-h-0 flex-1 flex-col", children: _jsx(RoomConversationView, { room: selectedRoom, currentOrgId: currentOrgId, chatApi: chatApi, chatWs: chatWs, onBack: handleBack, isConnected: isConnected }) }, "conversation")) : (_jsx(motion.div, { initial: { opacity: 0, x: -20 }, animate: { opacity: 1, x: 0 }, exit: { opacity: 0, x: -20 }, transition: { duration: 0.16 }, className: "flex min-h-0 flex-1 flex-col", children: _jsx(RoomListView, { rooms: rooms, onSelectRoom: handleSelectRoom, onOpenFullMessenger: handleOpenMessenger, onClose: handleClose, userRole: userRole }) }, "room-list")) })] }, "global-chat-widget")] })) })] }));
|
|
84
86
|
}
|
|
85
87
|
//# sourceMappingURL=global-chat-widget.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-chat-widget.js","sourceRoot":"","sources":["../../src/chat/global-chat-widget.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"global-chat-widget.js","sourceRoot":"","sources":["../../src/chat/global-chat-widget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presence-dot.d.ts","sourceRoot":"","sources":["../../src/chat/presence-dot.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"presence-dot.d.ts","sourceRoot":"","sources":["../../src/chat/presence-dot.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,UAAU,gBAAgB;IACxB,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,UAAU,EACV,SAAiB,EACjB,SAAS,GACV,EAAE,gBAAgB,2CAyBlB"}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from "react";
|
|
2
3
|
import { cn } from "../lib/utils.js";
|
|
3
4
|
import { formatDistanceToNow } from "date-fns";
|
|
4
5
|
export function PresenceDot({ status, lastSeenAt, showLabel = false, className, }) {
|
|
5
|
-
const label =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
const label = useMemo(() => {
|
|
7
|
+
if (status === "online")
|
|
8
|
+
return "Active now";
|
|
9
|
+
if (status === "away")
|
|
10
|
+
return "Away";
|
|
11
|
+
if (lastSeenAt)
|
|
12
|
+
return `Active ${formatDistanceToNow(new Date(lastSeenAt), { addSuffix: true })}`;
|
|
13
|
+
return "Offline";
|
|
14
|
+
}, [status, lastSeenAt]);
|
|
12
15
|
return (_jsxs("span", { className: cn("inline-flex items-center gap-1.5", className), children: [_jsx("span", { className: cn("size-2 shrink-0 rounded-full", status === "online" && "bg-emerald-500", status === "away" && "bg-amber-400", status === "offline" && "bg-muted-foreground/40"), "aria-label": label }), showLabel && (_jsx("span", { className: "text-[10px] text-muted-foreground", children: label }))] }));
|
|
13
16
|
}
|
|
14
17
|
//# sourceMappingURL=presence-dot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presence-dot.js","sourceRoot":"","sources":["../../src/chat/presence-dot.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAS/C,MAAM,UAAU,WAAW,CAAC,EAC1B,MAAM,EACN,UAAU,EACV,SAAS,GAAG,KAAK,EACjB,SAAS,GACQ;IACjB,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"presence-dot.js","sourceRoot":"","sources":["../../src/chat/presence-dot.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAS/C,MAAM,UAAU,WAAW,CAAC,EAC1B,MAAM,EACN,UAAU,EACV,SAAS,GAAG,KAAK,EACjB,SAAS,GACQ;IACjB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACzB,IAAI,MAAM,KAAK,QAAQ;YAAE,OAAO,YAAY,CAAC;QAC7C,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACrC,IAAI,UAAU;YACZ,OAAO,UAAU,mBAAmB,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACpF,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzB,OAAO,CACL,gBAAM,SAAS,EAAE,EAAE,CAAC,kCAAkC,EAAE,SAAS,CAAC,aAChE,eACE,SAAS,EAAE,EAAE,CACX,8BAA8B,EAC9B,MAAM,KAAK,QAAQ,IAAI,gBAAgB,EACvC,MAAM,KAAK,MAAM,IAAI,cAAc,EACnC,MAAM,KAAK,SAAS,IAAI,wBAAwB,CACjD,gBACW,KAAK,GACjB,EACD,SAAS,IAAI,CACZ,eAAM,SAAS,EAAC,mCAAmC,YAAE,KAAK,GAAQ,CACnE,IACI,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-timeline.d.ts","sourceRoot":"","sources":["../../src/chat/unified-timeline.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEhE,UAAU,oBAAoB;IAC5B,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,qEAAqE;IACrE,CAAC,CAAC,EAAE,aAAa,CAAC;CACnB;
|
|
1
|
+
{"version":3,"file":"unified-timeline.d.ts","sourceRoot":"","sources":["../../src/chat/unified-timeline.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEhE,UAAU,oBAAoB;IAC5B,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,qEAAqE;IACrE,CAAC,CAAC,EAAE,aAAa,CAAC;CACnB;AAkID,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,UAAU,EACV,cAAc,EACd,CAAY,GACb,EAAE,oBAAoB,2CAwMtB"}
|
|
@@ -3,7 +3,7 @@ import { useRef, useEffect, useCallback, useMemo, useState } from "react";
|
|
|
3
3
|
import { format, isToday, isSameDay } from "date-fns";
|
|
4
4
|
import { AlertCircle } from "lucide-react";
|
|
5
5
|
import { motion } from "motion/react";
|
|
6
|
-
import {
|
|
6
|
+
import { useSafeVirtualizer } from "./use-safe-virtualizer";
|
|
7
7
|
import { ShadcnButton as Button } from "../components/shadcn-button";
|
|
8
8
|
import { NegotiationEventCard } from "./negotiation-event-card";
|
|
9
9
|
import { TypingIndicator } from "./typing-indicator.js";
|
|
@@ -15,13 +15,13 @@ function formatMessageTime(dateStr) {
|
|
|
15
15
|
return format(date, "MMM d, h:mm a");
|
|
16
16
|
}
|
|
17
17
|
const defaultT = (_key, fallback) => fallback;
|
|
18
|
-
function TimelineItem({ item, showDaySeparator, isSameSender, currentOrgId, counterpartyOrgId,
|
|
18
|
+
function TimelineItem({ item, showDaySeparator, formattedDay, isSameSender, currentOrgId, counterpartyOrgId, initialLoadDone, onRetryMessage, t, }) {
|
|
19
19
|
const gap = isSameSender ? "mt-1.5" : "mt-3";
|
|
20
20
|
if (item.kind === "response") {
|
|
21
|
-
return (_jsxs("div", { className: `flex flex-col ${showDaySeparator ? "mt-3" : gap}`, children: [showDaySeparator && (_jsx("div", { className: "mb-3 self-center text-center", children: _jsx("span", { className: "status-pill status-pill-no-dot px-3 py-1 text-[11px] font-semibold uppercase tracking-[0.16em] text-muted-foreground", children:
|
|
21
|
+
return (_jsxs("div", { className: `flex flex-col ${showDaySeparator ? "mt-3" : gap}`, children: [showDaySeparator && (_jsx("div", { className: "mb-3 self-center text-center", children: _jsx("span", { className: "status-pill status-pill-no-dot px-3 py-1 text-[11px] font-semibold uppercase tracking-[0.16em] text-muted-foreground", children: formattedDay }) })), _jsx(NegotiationEventCard, { response: item.response, t: t })] }));
|
|
22
22
|
}
|
|
23
23
|
if (item.kind === "system") {
|
|
24
|
-
return (_jsxs("div", { className: `flex flex-col ${showDaySeparator ? "mt-3" : gap}`, children: [showDaySeparator && (_jsx("div", { className: "mb-3 self-center text-center", children: _jsx("span", { className: "status-pill status-pill-no-dot px-3 py-1 text-[11px] font-semibold uppercase tracking-[0.16em] text-muted-foreground", children:
|
|
24
|
+
return (_jsxs("div", { className: `flex flex-col ${showDaySeparator ? "mt-3" : gap}`, children: [showDaySeparator && (_jsx("div", { className: "mb-3 self-center text-center", children: _jsx("span", { className: "status-pill status-pill-no-dot px-3 py-1 text-[11px] font-semibold uppercase tracking-[0.16em] text-muted-foreground", children: formattedDay }) })), _jsx("div", { className: "self-center text-center text-xs text-muted-foreground italic", children: item.message.content })] }));
|
|
25
25
|
}
|
|
26
26
|
// Chat message
|
|
27
27
|
const msg = item.message;
|
|
@@ -30,9 +30,9 @@ function TimelineItem({ item, showDaySeparator, isSameSender, currentOrgId, coun
|
|
|
30
30
|
const deliveryStatus = isMe
|
|
31
31
|
? getDeliveryStatus(msg, counterpartyOrgId)
|
|
32
32
|
: undefined;
|
|
33
|
-
return (_jsxs(motion.div, { className: `flex flex-col ${showDaySeparator ? "mt-3" : gap}`, initial:
|
|
33
|
+
return (_jsxs(motion.div, { className: `flex flex-col ${showDaySeparator ? "mt-3" : gap}`, initial: initialLoadDone
|
|
34
34
|
? { opacity: 0, y: 12, x: isMe ? 8 : -8 }
|
|
35
|
-
: false, animate: { opacity: 1, y: 0, x: 0 }, transition: { duration: 0.15, ease: [0.16, 1, 0.3, 1] }, children: [showDaySeparator && (_jsx("div", { className: "mb-3 self-center text-center", children: _jsx("span", { className: "status-pill px-3 py-1 text-[11px] font-semibold uppercase tracking-[0.16em] text-muted-foreground", children:
|
|
35
|
+
: false, animate: { opacity: 1, y: 0, x: 0 }, transition: { duration: 0.15, ease: [0.16, 1, 0.3, 1] }, children: [showDaySeparator && (_jsx("div", { className: "mb-3 self-center text-center", children: _jsx("span", { className: "status-pill px-3 py-1 text-[11px] font-semibold uppercase tracking-[0.16em] text-muted-foreground", children: formattedDay }) })), _jsxs("div", { className: `max-w-[80%] px-3.5 py-2.5 text-sm shadow-soft ${isMe
|
|
36
36
|
? "self-end rounded-[20px] rounded-br-xs bg-primary text-primary-foreground"
|
|
37
37
|
: "surface-card self-start rounded-[20px] rounded-bl-xs"} ${isFailed ? "opacity-60" : ""}`, children: [_jsx("p", { className: "text-sm/6", children: msg.content }), _jsxs("div", { className: `mt-1.5 flex items-center gap-1 text-[10px] ${isMe
|
|
38
38
|
? "justify-end text-primary-foreground/70"
|
|
@@ -43,6 +43,7 @@ export function UnifiedTimeline({ items, currentOrgId, isTyping, hasMore, onLoad
|
|
|
43
43
|
const wasNearBottomRef = useRef(true);
|
|
44
44
|
const initialScrollDoneRef = useRef(false);
|
|
45
45
|
const initialLoadDoneRef = useRef(false);
|
|
46
|
+
const [initialLoadDone, setInitialLoadDone] = useState(false);
|
|
46
47
|
const [showJumpToLatest, setShowJumpToLatest] = useState(false);
|
|
47
48
|
const checkNearBottom = useCallback(() => {
|
|
48
49
|
const el = scrollRef.current;
|
|
@@ -64,6 +65,7 @@ export function UnifiedTimeline({ items, currentOrgId, isTyping, hasMore, onLoad
|
|
|
64
65
|
// Mark initial load as done after first paint so new messages animate in
|
|
65
66
|
requestAnimationFrame(() => {
|
|
66
67
|
initialLoadDoneRef.current = true;
|
|
68
|
+
setInitialLoadDone(true);
|
|
67
69
|
});
|
|
68
70
|
});
|
|
69
71
|
}
|
|
@@ -85,18 +87,22 @@ export function UnifiedTimeline({ items, currentOrgId, isTyping, hasMore, onLoad
|
|
|
85
87
|
}, [items, currentOrgId]);
|
|
86
88
|
const timeline = useMemo(() => items.map((item, index) => {
|
|
87
89
|
const previous = items[index - 1];
|
|
90
|
+
const itemDate = new Date(item.timestamp);
|
|
88
91
|
const showDaySeparator = !previous ||
|
|
89
|
-
!isSameDay(new Date(previous.timestamp),
|
|
92
|
+
!isSameDay(new Date(previous.timestamp), itemDate);
|
|
93
|
+
const formattedDay = showDaySeparator
|
|
94
|
+
? format(itemDate, "EEEE, MMM d")
|
|
95
|
+
: "";
|
|
90
96
|
// Check if consecutive same-sender for tighter spacing
|
|
91
97
|
const isSameSender = previous &&
|
|
92
98
|
item.kind === "chat" &&
|
|
93
99
|
previous.kind === "chat" &&
|
|
94
100
|
item.senderOrgId === previous.senderOrgId &&
|
|
95
101
|
!showDaySeparator;
|
|
96
|
-
return { item, showDaySeparator, isSameSender };
|
|
102
|
+
return { item, showDaySeparator, formattedDay, isSameSender };
|
|
97
103
|
}), [items]);
|
|
98
104
|
const shouldVirtualize = timeline.length > 50;
|
|
99
|
-
const virtualizer =
|
|
105
|
+
const virtualizer = useSafeVirtualizer({
|
|
100
106
|
count: timeline.length,
|
|
101
107
|
getScrollElement: () => scrollRef.current,
|
|
102
108
|
estimateSize: () => 72,
|
|
@@ -123,15 +129,15 @@ export function UnifiedTimeline({ items, currentOrgId, isTyping, hasMore, onLoad
|
|
|
123
129
|
width: "100%",
|
|
124
130
|
position: "relative",
|
|
125
131
|
}, children: virtualizer.getVirtualItems().map((virtualRow) => {
|
|
126
|
-
const { item, showDaySeparator, isSameSender } = timeline[virtualRow.index];
|
|
132
|
+
const { item, showDaySeparator, formattedDay, isSameSender } = timeline[virtualRow.index];
|
|
127
133
|
return (_jsx("div", { "data-index": virtualRow.index, ref: virtualizer.measureElement, style: {
|
|
128
134
|
position: "absolute",
|
|
129
135
|
top: 0,
|
|
130
136
|
left: 0,
|
|
131
137
|
width: "100%",
|
|
132
138
|
transform: `translateY(${virtualRow.start}px)`,
|
|
133
|
-
}, children: _jsx(TimelineItem, { item: item, showDaySeparator: showDaySeparator, isSameSender: isSameSender, currentOrgId: currentOrgId, counterpartyOrgId: counterpartyOrgId,
|
|
134
|
-
}) })) : (timeline.map(({ item, showDaySeparator, isSameSender }) => (_jsx(TimelineItem, { item: item, showDaySeparator: showDaySeparator, isSameSender: isSameSender, currentOrgId: currentOrgId, counterpartyOrgId: counterpartyOrgId,
|
|
139
|
+
}, children: _jsx(TimelineItem, { item: item, showDaySeparator: showDaySeparator, formattedDay: formattedDay, isSameSender: isSameSender, currentOrgId: currentOrgId, counterpartyOrgId: counterpartyOrgId, initialLoadDone: initialLoadDone, onRetryMessage: onRetryMessage, t: t }) }, item.id));
|
|
140
|
+
}) })) : (timeline.map(({ item, showDaySeparator, formattedDay, isSameSender }) => (_jsx(TimelineItem, { item: item, showDaySeparator: showDaySeparator, formattedDay: formattedDay, isSameSender: isSameSender, currentOrgId: currentOrgId, counterpartyOrgId: counterpartyOrgId, initialLoadDone: initialLoadDone, onRetryMessage: onRetryMessage, t: t }, item.id)))), isTyping && _jsx(TypingIndicator, {}), showJumpToLatest && (_jsx(Button, { size: "sm", className: "sticky bottom-0 mt-2 self-center rounded-full shadow-soft", onClick: () => {
|
|
135
141
|
if (!scrollRef.current)
|
|
136
142
|
return;
|
|
137
143
|
scrollRef.current.scrollTop = scrollRef.current.scrollHeight;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-timeline.js","sourceRoot":"","sources":["../../src/chat/unified-timeline.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"unified-timeline.js","sourceRoot":"","sources":["../../src/chat/unified-timeline.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-safe-virtualizer.d.ts","sourceRoot":"","sources":["../../src/chat/use-safe-virtualizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAIzD,wBAAgB,kBAAkB,CAChC,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,mEAK3C"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { useVirtualizer } from "@tanstack/react-virtual";
|
|
2
|
+
// TODO: Remove wrapper when TanStack Virtual becomes React Compiler compatible
|
|
3
|
+
// See: https://github.com/TanStack/virtual/issues/1119
|
|
4
|
+
export function useSafeVirtualizer(...args) {
|
|
5
|
+
"use no memo";
|
|
6
|
+
// eslint-disable-next-line react-hooks/incompatible-library -- intentionally wrapping with "use no memo"
|
|
7
|
+
return useVirtualizer(...args);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=use-safe-virtualizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-safe-virtualizer.js","sourceRoot":"","sources":["../../src/chat/use-safe-virtualizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,+EAA+E;AAC/E,uDAAuD;AACvD,MAAM,UAAU,kBAAkB,CAChC,GAAG,IAAuC;IAE1C,aAAa,CAAC;IACd,yGAAyG;IACzG,OAAO,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;AACjC,CAAC"}
|
|
@@ -2,6 +2,7 @@ import * as React from "react";
|
|
|
2
2
|
export interface CardActionsTriggerProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
3
3
|
/** Size of the circular button. Default: 28px */
|
|
4
4
|
size?: number;
|
|
5
|
+
ref?: React.Ref<HTMLButtonElement>;
|
|
5
6
|
}
|
|
6
7
|
/**
|
|
7
8
|
* Circular "hot dog menu" trigger designed for card action menus.
|
|
@@ -21,5 +22,5 @@ export interface CardActionsTriggerProps extends React.ButtonHTMLAttributes<HTML
|
|
|
21
22
|
* />
|
|
22
23
|
* ```
|
|
23
24
|
*/
|
|
24
|
-
export declare
|
|
25
|
+
export declare function CardActionsTrigger({ size, className, ref, ...props }: CardActionsTriggerProps): import("react/jsx-runtime").JSX.Element;
|
|
25
26
|
//# sourceMappingURL=card-actions-trigger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-actions-trigger.d.ts","sourceRoot":"","sources":["../../src/components/card-actions-trigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,uBACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACrD,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"card-actions-trigger.d.ts","sourceRoot":"","sources":["../../src/components/card-actions-trigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,uBACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACrD,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,IAAS,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,EAAE,uBAAuB,2CA4ClG"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import * as React from "react";
|
|
3
2
|
import { cn } from "../lib/utils";
|
|
4
3
|
/**
|
|
5
4
|
* Circular "hot dog menu" trigger designed for card action menus.
|
|
@@ -19,10 +18,10 @@ import { cn } from "../lib/utils";
|
|
|
19
18
|
* />
|
|
20
19
|
* ```
|
|
21
20
|
*/
|
|
22
|
-
export
|
|
21
|
+
export function CardActionsTrigger({ size = 28, className, ref, ...props }) {
|
|
23
22
|
const barWidth = Math.round(size * 0.43);
|
|
24
23
|
const barHeight = Math.max(2, Math.round(size * 0.071));
|
|
25
24
|
const gap = Math.max(2, Math.round(size * 0.107));
|
|
26
25
|
return (_jsx("button", { ref: ref, type: "button", "aria-label": "More actions", className: cn("inline-flex items-center justify-center rounded-full", "bg-[color-mix(in_oklab,var(--foreground)_5%,transparent)]", "transition-[background-color,transform] duration-[var(--duration-standard,250ms)] ease-[var(--ease-emphasized,cubic-bezier(0.16,1,0.3,1))]", "hover:bg-[color-mix(in_oklab,var(--foreground)_10%,transparent)]", "focus-visible:bg-[color-mix(in_oklab,var(--foreground)_10%,transparent)] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)]", "active:scale-95", className), style: { width: size, height: size }, ...props, children: _jsx("svg", { width: barWidth + 4, height: barHeight * 3 + gap * 2 + 2, viewBox: `0 0 ${barWidth + 4} ${barHeight * 3 + gap * 2 + 2}`, fill: "none", "aria-hidden": "true", className: "text-[var(--muted-foreground)]", children: [0, 1, 2].map((i) => (_jsx("rect", { x: 2, y: 1 + i * (barHeight + gap), width: barWidth, height: barHeight, rx: barHeight / 2, fill: "currentColor" }, i))) }) }));
|
|
27
|
-
}
|
|
26
|
+
}
|
|
28
27
|
//# sourceMappingURL=card-actions-trigger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-actions-trigger.js","sourceRoot":"","sources":["../../src/components/card-actions-trigger.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"card-actions-trigger.js","sourceRoot":"","sources":["../../src/components/card-actions-trigger.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AASlC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,KAAK,EAA2B;IACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;IAElD,OAAO,CACL,iBACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,gBACF,cAAc,EACzB,SAAS,EAAE,EAAE,CACX,sDAAsD,EACtD,2DAA2D,EAC3D,4IAA4I,EAC5I,kEAAkE,EAClE,qKAAqK,EACrK,iBAAiB,EACjB,SAAS,CACV,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAChC,KAAK,YAET,cACE,KAAK,EAAE,QAAQ,GAAG,CAAC,EACnB,MAAM,EAAE,SAAS,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,EACnC,OAAO,EAAE,OAAO,QAAQ,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,EAC7D,IAAI,EAAC,MAAM,iBACC,MAAM,EAClB,SAAS,EAAC,gCAAgC,YAEzC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACpB,eAEE,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,EAC5B,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,SAAS,EACjB,EAAE,EAAE,SAAS,GAAG,CAAC,EACjB,IAAI,EAAC,cAAc,IANd,CAAC,CAON,CACH,CAAC,GACE,GACC,CACV,CAAC;AACJ,CAAC"}
|
|
@@ -51,6 +51,6 @@ export function OfferCard({ product, tender, price, fromParty, toParty, chips =
|
|
|
51
51
|
: "border-[color-mix(in_oklab,var(--border)_60%,transparent)] bg-[color-mix(in_oklab,white_97%,var(--primary)_3%)]", "shadow-[0_1px_2px_oklch(0.2_0.005_230/0.04),0_12px_36px_-28px_oklch(0.2_0.005_230/0.14),inset_0_1px_0_oklch(1_0_0/0.45)]", onClick && "cursor-pointer hover:-translate-y-[2px] hover:border-[color-mix(in_oklab,var(--primary)_22%,var(--border))] hover:shadow-[0_8px_20px_-12px_oklch(0.2_0.005_230/0.08),0_28px_70px_-36px_oklch(0.40_0.062_178/0.28),inset_0_1px_0_oklch(1_0_0/0.55)]", className), children: [_jsxs("div", { className: "grid grid-cols-[72px_1fr_auto] items-start gap-4", children: [product.image ? (_jsx("img", { src: product.image.url, alt: product.image.altText ?? "", className: "size-[72px] rounded-[14px] object-cover shadow-[0_2px_8px_-2px_oklch(0_0_0/0.15),inset_0_1px_0_oklch(1_0_0/0.2)]", loading: "lazy" })) : (_jsx("div", { className: "flex size-[72px] items-center justify-center rounded-[14px] text-xl font-bold tracking-tight text-white shadow-[0_2px_8px_-2px_oklch(0_0_0/0.15),inset_0_1px_0_oklch(1_0_0/0.2)]", style: {
|
|
52
52
|
background: "linear-gradient(135deg, color-mix(in oklab, var(--primary) 60%, white) 0%, color-mix(in oklab, var(--accent-secondary) 60%, white) 100%)",
|
|
53
53
|
fontFamily: "Sora, sans-serif",
|
|
54
|
-
}, "aria-hidden": "true", children: product.initials ?? "•" })), _jsxs("div", { className: "min-w-0 pt-0.5", children: [_jsxs("div", { className: "mb-1 flex items-center gap-2 font-display text-lg font-bold leading-tight tracking-tight text-foreground", children: [_jsx("span", { className: "truncate", children: product.name }), product.modified && (_jsx("span", { title: "Modified for this offer", "aria-label": "Modified for this offer", className: "size-2 shrink-0 rounded-full bg-[var(--accent-secondary)] shadow-[0_0_0_3px_color-mix(in_oklab,var(--accent-secondary)_15%,transparent)]" })), isWon && _jsx(Award, { className: "size-[18px] shrink-0 text-[var(--accent-secondary)]", "aria-label": "Won" })] }), _jsx("div", { className: "text-[13px] leading-snug text-[var(--muted-foreground)]", children: tender.href ? (_jsx("a", { href: tender.href, className: "font-medium text-[color-mix(in_oklab,black_30%,var(--primary)_70%)] no-underline hover:underline", onClick: (e) => e.stopPropagation(), children: tender.title })) : (_jsx("span", { children: tender.title })) })] }), _jsx("div", { className: "pl-2 text-right", children: priceOnRequest ? (_jsx("div", { className: "font-display text-sm font-semibold leading-tight tracking-tight text-[var(--muted-foreground)]", children: "Price on request" })) : (_jsxs(_Fragment, { children: [_jsx("div", { className: "font-display text-[22px] font-bold leading-none tracking-tight tabular-nums text-[color-mix(in_oklab,black_25%,var(--success)_75%)]", children: formatPrice(price) }), _jsxs("div", { className: "mt-[3px] text-[11px] text-[var(--muted-foreground)] tabular-nums", children: [price.kind === "final" ? "final · " : price.kind === "counter" ? "counter · " : "", price.unit] })] })) })] }), _jsx("div", { className: "my-4 h-px bg-linear-to-r from-transparent via-[color-mix(in_oklab,var(--primary)_18%,transparent)] to-transparent" }), _jsxs("div", { className: "grid grid-cols-[1fr_auto_1fr] items-center gap-[14px]", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-[10px]", children: [_jsx(OrgAvatar, { name: fromParty.name, orgId: fromParty.orgId, logoUrl: fromParty.logoUrl, isOwnOrg: fromParty.isOwnOrg, size: "md" }), _jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "mb-[3px] font-display text-[9px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)]", children: "From" }), _jsx("div", { className: "truncate text-[13px] font-semibold text-foreground", children: fromParty.name }), fromParty.subtitle && (_jsx("div", { className: "truncate text-[11px] text-[var(--muted-foreground)]", children: fromParty.subtitle }))] })] }), _jsx("div", { className: "flex size-11 shrink-0 items-center justify-center", children: _jsxs("svg", { viewBox: "0 0 60 22", className: "size-full", fill: "none", stroke: arrowColor, strokeWidth: isWon ? "1.8" : "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("line", { x1: "4", y1: "11", x2: "52", y2: "11", strokeDasharray: isWon ? undefined : "2 3" }), _jsx("polyline", { points: "46,6 54,11 46,16" })] }) }), _jsxs("div", { className: "flex min-w-0 items-center justify-end gap-[10px]", children: [_jsxs("div", { className: "min-w-0 text-right", children: [_jsx("div", { className: "mb-[3px] font-display text-[9px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)]", children: isWon ? "Won by" : toParty.recipients && toParty.recipients.length > 0 ? `To · ${toParty.recipients.length} importers` : "To" }), _jsx("div", { className: "truncate text-[13px] font-semibold text-foreground", children: toParty.name }), toParty.subtitle && (_jsx("div", { className: "truncate text-[11px] text-[var(--muted-foreground)]", children: toParty.subtitle }))] }), toParty.recipients && toParty.recipients.length > 0 ? (_jsx(AvatarStack, { orgs: toParty.recipients, size: "md" })) : (_jsx(OrgAvatar, { name: toParty.name, orgId: toParty.orgId, logoUrl: toParty.logoUrl, isOwnOrg: toParty.isOwnOrg, size: "md" }))] })] }), (chips.length > 0 || timestamp) && (_jsxs("div", { className: "mt-4 flex items-center justify-between gap-3 border-t border-[color-mix(in_oklab,var(--border)_60%,transparent)] pt-[14px]", children: [_jsx("div", { className: "flex flex-wrap gap-1.5", children: chips.map((chip
|
|
54
|
+
}, "aria-hidden": "true", children: product.initials ?? "•" })), _jsxs("div", { className: "min-w-0 pt-0.5", children: [_jsxs("div", { className: "mb-1 flex items-center gap-2 font-display text-lg font-bold leading-tight tracking-tight text-foreground", children: [_jsx("span", { className: "truncate", children: product.name }), product.modified && (_jsx("span", { title: "Modified for this offer", "aria-label": "Modified for this offer", className: "size-2 shrink-0 rounded-full bg-[var(--accent-secondary)] shadow-[0_0_0_3px_color-mix(in_oklab,var(--accent-secondary)_15%,transparent)]" })), isWon && _jsx(Award, { className: "size-[18px] shrink-0 text-[var(--accent-secondary)]", "aria-label": "Won" })] }), _jsx("div", { className: "text-[13px] leading-snug text-[var(--muted-foreground)]", children: tender.href ? (_jsx("a", { href: tender.href, className: "font-medium text-[color-mix(in_oklab,black_30%,var(--primary)_70%)] no-underline hover:underline", onClick: (e) => e.stopPropagation(), children: tender.title })) : (_jsx("span", { children: tender.title })) })] }), _jsx("div", { className: "pl-2 text-right", children: priceOnRequest ? (_jsx("div", { className: "font-display text-sm font-semibold leading-tight tracking-tight text-[var(--muted-foreground)]", children: "Price on request" })) : (_jsxs(_Fragment, { children: [_jsx("div", { className: "font-display text-[22px] font-bold leading-none tracking-tight tabular-nums text-[color-mix(in_oklab,black_25%,var(--success)_75%)]", children: formatPrice(price) }), _jsxs("div", { className: "mt-[3px] text-[11px] text-[var(--muted-foreground)] tabular-nums", children: [price.kind === "final" ? "final · " : price.kind === "counter" ? "counter · " : "", price.unit] })] })) })] }), _jsx("div", { className: "my-4 h-px bg-linear-to-r from-transparent via-[color-mix(in_oklab,var(--primary)_18%,transparent)] to-transparent" }), _jsxs("div", { className: "grid grid-cols-[1fr_auto_1fr] items-center gap-[14px]", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-[10px]", children: [_jsx(OrgAvatar, { name: fromParty.name, orgId: fromParty.orgId, logoUrl: fromParty.logoUrl, isOwnOrg: fromParty.isOwnOrg, size: "md" }), _jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "mb-[3px] font-display text-[9px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)]", children: "From" }), _jsx("div", { className: "truncate text-[13px] font-semibold text-foreground", children: fromParty.name }), fromParty.subtitle && (_jsx("div", { className: "truncate text-[11px] text-[var(--muted-foreground)]", children: fromParty.subtitle }))] })] }), _jsx("div", { className: "flex size-11 shrink-0 items-center justify-center", children: _jsxs("svg", { viewBox: "0 0 60 22", className: "size-full", fill: "none", stroke: arrowColor, strokeWidth: isWon ? "1.8" : "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("line", { x1: "4", y1: "11", x2: "52", y2: "11", strokeDasharray: isWon ? undefined : "2 3" }), _jsx("polyline", { points: "46,6 54,11 46,16" })] }) }), _jsxs("div", { className: "flex min-w-0 items-center justify-end gap-[10px]", children: [_jsxs("div", { className: "min-w-0 text-right", children: [_jsx("div", { className: "mb-[3px] font-display text-[9px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)]", children: isWon ? "Won by" : toParty.recipients && toParty.recipients.length > 0 ? `To · ${toParty.recipients.length} importers` : "To" }), _jsx("div", { className: "truncate text-[13px] font-semibold text-foreground", children: toParty.name }), toParty.subtitle && (_jsx("div", { className: "truncate text-[11px] text-[var(--muted-foreground)]", children: toParty.subtitle }))] }), toParty.recipients && toParty.recipients.length > 0 ? (_jsx(AvatarStack, { orgs: toParty.recipients, size: "md" })) : (_jsx(OrgAvatar, { name: toParty.name, orgId: toParty.orgId, logoUrl: toParty.logoUrl, isOwnOrg: toParty.isOwnOrg, size: "md" }))] })] }), (chips.length > 0 || timestamp) && (_jsxs("div", { className: "mt-4 flex items-center justify-between gap-3 border-t border-[color-mix(in_oklab,var(--border)_60%,transparent)] pt-[14px]", children: [_jsx("div", { className: "flex flex-wrap gap-1.5", children: chips.map((chip) => (_jsxs("span", { className: cn("inline-flex items-center gap-1.5 rounded-[10px] border px-[9px] py-[3px] text-[11px] font-semibold", CHIP_TONE[chip.tone ?? "brand"]), children: [chip.icon && _jsx("span", { className: "inline-flex size-3 items-center justify-center", children: chip.icon }), chip.label] }, chip.label))) }), _jsx("span", { className: "text-[11px] tabular-nums text-[var(--muted-foreground)]", children: formatRelative(timestamp) })] }))] }));
|
|
55
55
|
}
|
|
56
56
|
//# sourceMappingURL=offer-card.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"offer-card.js","sourceRoot":"","sources":["../../src/components/offer-card.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"offer-card.js","sourceRoot":"","sources":["../../src/components/offer-card.tsx"],"names":[],"mappings":"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"}
|