@cellarnode/ui 0.19.2 → 0.20.1

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.
@@ -1,4 +1,23 @@
1
1
  import type { ChatWsConfig, PresenceEvent } from "./types";
2
+ /**
3
+ * Offer realtime event types — mirrors Plan 2 backend's
4
+ * `src/features/offers/realtime.ts:OfferEventType`. The composite
5
+ * `offer.mutation` carries a `subEvents` array so a single atomic server
6
+ * mutation (counter / accept / decline / withdraw) fans out as ONE message
7
+ * to every subscriber, preserving cross-sub-event ordering.
8
+ */
9
+ export type OfferEventType = "offer.state_changed" | "offer.timeline_event_added" | "offer.attachment_added" | "offer.presence_changed" | "offer.typing_changed" | "offer.mutation";
10
+ export interface OfferSubEvent {
11
+ type: Exclude<OfferEventType, "offer.mutation">;
12
+ payload: Record<string, unknown>;
13
+ }
14
+ export interface OfferEvent {
15
+ seq: number;
16
+ type: OfferEventType;
17
+ offerId: string;
18
+ emittedAt: string;
19
+ payload: Record<string, unknown>;
20
+ }
2
21
  type MessageCallback = (roomId: string, data: Record<string, unknown>) => void;
3
22
  type TypingCallback = (roomId: string, orgId: string) => void;
4
23
  type ReadCallback = (roomId: string, data: {
@@ -18,6 +37,11 @@ type UnreadUpdateCallback = (data: {
18
37
  orgId: string;
19
38
  unreadCount: number;
20
39
  }) => void;
40
+ type OfferEventCallback = (event: OfferEvent) => void;
41
+ type OfferSubscribedCallback = (data: {
42
+ offerId: string;
43
+ cursorSeq: number;
44
+ }) => void;
21
45
  declare class ChatWebSocket {
22
46
  private ws;
23
47
  private pingTimer;
@@ -25,6 +49,12 @@ declare class ChatWebSocket {
25
49
  private reconnectAttempt;
26
50
  private connectAttempts;
27
51
  private subscribedRooms;
52
+ /**
53
+ * Offer subscriptions keyed by offerId → last-observed seq. The value is the
54
+ * sinceSeq to replay from on reconnect. `undefined` means "no cursor yet"
55
+ * (first subscribe); a number means "I've seen up to N, send me N+1 onward".
56
+ */
57
+ private subscribedOffers;
28
58
  private messageCallbacks;
29
59
  private typingCallbacks;
30
60
  private readCallbacks;
@@ -32,6 +62,8 @@ declare class ChatWebSocket {
32
62
  private connectionCallbacks;
33
63
  private notificationCallbacks;
34
64
  private unreadUpdateCallbacks;
65
+ private offerEventCallbacks;
66
+ private offerSubscribedCallbacks;
35
67
  private _isConnected;
36
68
  private _hasFailed;
37
69
  private config;
@@ -45,10 +77,34 @@ declare class ChatWebSocket {
45
77
  onConnectionChange(cb: ConnectionCallback): () => void;
46
78
  onNotification(cb: NotificationCallback): () => void;
47
79
  onUnreadUpdate(cb: UnreadUpdateCallback): () => void;
80
+ /**
81
+ * Subscribe to the per-offer realtime event stream (Plan 2 Chunk 7).
82
+ * `cb` receives every `offer.*` event in delivery order — including the
83
+ * composite `offer.mutation` payload. The callback also tracks the last
84
+ * observed `seq` so reconnects resume with the correct `sinceSeq`.
85
+ */
86
+ onOfferEvent(cb: OfferEventCallback): () => void;
87
+ /**
88
+ * Notified when the server acks a `subscribe_offer` with the initial
89
+ * cursor (the stream length at subscribe time). Mostly useful so the
90
+ * client can `invalidateQueries` after a gap-free handshake.
91
+ */
92
+ onOfferSubscribed(cb: OfferSubscribedCallback): () => void;
48
93
  connect(): Promise<void>;
49
94
  disconnect(): void;
50
95
  subscribe(roomId: string): void;
51
96
  unsubscribe(roomId: string): void;
97
+ /**
98
+ * Start receiving realtime events for an offer. Tracks the subscription
99
+ * so the WS re-sends it on reconnect. If a gap-free replay is desired,
100
+ * call `sendOfferSubscribe(offerId, sinceSeq)` with the last-observed seq.
101
+ */
102
+ sendOfferSubscribe(offerId: string, sinceSeq?: number): void;
103
+ /**
104
+ * Stop receiving realtime events for an offer. Safe to call when not
105
+ * connected — the subscription is simply dropped from the tracking set.
106
+ */
107
+ sendOfferUnsubscribe(offerId: string): void;
52
108
  sendChatMessage(roomId: string, content: string): void;
53
109
  sendTyping(roomId: string): void;
54
110
  sendMarkRead(roomId: string, messageId: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-ws.d.ts","sourceRoot":"","sources":["../../src/chat/chat-ws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-ws.d.ts","sourceRoot":"","sources":["../../src/chat/chat-ws.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,12 @@ class ChatWebSocket {
8
8
  reconnectAttempt = 0;
9
9
  connectAttempts = 0;
10
10
  subscribedRooms = new Set();
11
+ /**
12
+ * Offer subscriptions keyed by offerId → last-observed seq. The value is the
13
+ * sinceSeq to replay from on reconnect. `undefined` means "no cursor yet"
14
+ * (first subscribe); a number means "I've seen up to N, send me N+1 onward".
15
+ */
16
+ subscribedOffers = new Map();
11
17
  messageCallbacks = new Set();
12
18
  typingCallbacks = new Set();
13
19
  readCallbacks = new Set();
@@ -15,6 +21,8 @@ class ChatWebSocket {
15
21
  connectionCallbacks = new Set();
16
22
  notificationCallbacks = new Set();
17
23
  unreadUpdateCallbacks = new Set();
24
+ offerEventCallbacks = new Set();
25
+ offerSubscribedCallbacks = new Set();
18
26
  _isConnected = false;
19
27
  _hasFailed = false;
20
28
  config;
@@ -71,6 +79,29 @@ class ChatWebSocket {
71
79
  this.unreadUpdateCallbacks.delete(cb);
72
80
  };
73
81
  }
82
+ /**
83
+ * Subscribe to the per-offer realtime event stream (Plan 2 Chunk 7).
84
+ * `cb` receives every `offer.*` event in delivery order — including the
85
+ * composite `offer.mutation` payload. The callback also tracks the last
86
+ * observed `seq` so reconnects resume with the correct `sinceSeq`.
87
+ */
88
+ onOfferEvent(cb) {
89
+ this.offerEventCallbacks.add(cb);
90
+ return () => {
91
+ this.offerEventCallbacks.delete(cb);
92
+ };
93
+ }
94
+ /**
95
+ * Notified when the server acks a `subscribe_offer` with the initial
96
+ * cursor (the stream length at subscribe time). Mostly useful so the
97
+ * client can `invalidateQueries` after a gap-free handshake.
98
+ */
99
+ onOfferSubscribed(cb) {
100
+ this.offerSubscribedCallbacks.add(cb);
101
+ return () => {
102
+ this.offerSubscribedCallbacks.delete(cb);
103
+ };
104
+ }
74
105
  async connect() {
75
106
  if (this.ws?.readyState === WebSocket.OPEN)
76
107
  return;
@@ -89,6 +120,13 @@ class ChatWebSocket {
89
120
  for (const roomId of this.subscribedRooms) {
90
121
  this.send({ type: "subscribe", roomId });
91
122
  }
123
+ // Re-subscribe to offers. Pass `sinceSeq` (last observed seq) so
124
+ // the server replays any events we missed during the disconnect.
125
+ for (const [offerId, sinceSeq] of this.subscribedOffers) {
126
+ this.send(sinceSeq !== undefined
127
+ ? { type: "subscribe_offer", offerId, sinceSeq }
128
+ : { type: "subscribe_offer", offerId });
129
+ }
92
130
  // Subscribe to notifications
93
131
  this.send({ type: "subscribe_notifications" });
94
132
  };
@@ -135,6 +173,7 @@ class ChatWebSocket {
135
173
  }
136
174
  this._isConnected = false;
137
175
  this.subscribedRooms.clear();
176
+ this.subscribedOffers.clear();
138
177
  this.notifyConnection(false);
139
178
  }
140
179
  subscribe(roomId) {
@@ -149,6 +188,29 @@ class ChatWebSocket {
149
188
  this.send({ type: "unsubscribe", roomId });
150
189
  }
151
190
  }
191
+ /**
192
+ * Start receiving realtime events for an offer. Tracks the subscription
193
+ * so the WS re-sends it on reconnect. If a gap-free replay is desired,
194
+ * call `sendOfferSubscribe(offerId, sinceSeq)` with the last-observed seq.
195
+ */
196
+ sendOfferSubscribe(offerId, sinceSeq) {
197
+ this.subscribedOffers.set(offerId, sinceSeq);
198
+ if (this._isConnected) {
199
+ this.send(sinceSeq !== undefined
200
+ ? { type: "subscribe_offer", offerId, sinceSeq }
201
+ : { type: "subscribe_offer", offerId });
202
+ }
203
+ }
204
+ /**
205
+ * Stop receiving realtime events for an offer. Safe to call when not
206
+ * connected — the subscription is simply dropped from the tracking set.
207
+ */
208
+ sendOfferUnsubscribe(offerId) {
209
+ this.subscribedOffers.delete(offerId);
210
+ if (this._isConnected) {
211
+ this.send({ type: "unsubscribe_offer", offerId });
212
+ }
213
+ }
152
214
  sendChatMessage(roomId, content) {
153
215
  this.send({ type: "message", roomId, content });
154
216
  }
@@ -208,6 +270,47 @@ class ChatWebSocket {
208
270
  });
209
271
  }
210
272
  break;
273
+ case "offer_subscribed": {
274
+ // Track the initial cursor so the UI knows the subscription is
275
+ // established (and can trigger `invalidateQueries` for a clean
276
+ // snapshot refetch). Also record `cursorSeq` as the floor for the
277
+ // sinceSeq we'll send on next reconnect if no further events
278
+ // arrive.
279
+ const prev = this.subscribedOffers.get(msg.offerId);
280
+ if (prev === undefined) {
281
+ this.subscribedOffers.set(msg.offerId, msg.cursorSeq);
282
+ }
283
+ for (const cb of this.offerSubscribedCallbacks) {
284
+ cb({ offerId: msg.offerId, cursorSeq: msg.cursorSeq });
285
+ }
286
+ break;
287
+ }
288
+ case "offer_unsubscribed":
289
+ this.subscribedOffers.delete(msg.offerId);
290
+ break;
291
+ case "offer.state_changed":
292
+ case "offer.timeline_event_added":
293
+ case "offer.attachment_added":
294
+ case "offer.presence_changed":
295
+ case "offer.typing_changed":
296
+ case "offer.mutation": {
297
+ // Track the highest-seen seq per offer so reconnects resume with
298
+ // the correct `sinceSeq` and the server can replay missed events.
299
+ const prev = this.subscribedOffers.get(msg.offerId) ?? -1;
300
+ if (msg.seq > prev)
301
+ this.subscribedOffers.set(msg.offerId, msg.seq);
302
+ const event = {
303
+ seq: msg.seq,
304
+ type: msg.type,
305
+ offerId: msg.offerId,
306
+ emittedAt: msg.emittedAt,
307
+ payload: msg.payload,
308
+ };
309
+ for (const cb of this.offerEventCallbacks) {
310
+ cb(event);
311
+ }
312
+ break;
313
+ }
211
314
  case "pong":
212
315
  break;
213
316
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chat-ws.js","sourceRoot":"","sources":["../../src/chat/chat-ws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-ws.js","sourceRoot":"","sources":["../../src/chat/chat-ws.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ export { UnifiedTimeline } from "./unified-timeline";
3
3
  export { NegotiationEventCard } from "./negotiation-event-card";
4
4
  export { ChatToggleButton } from "./chat-toggle-button";
5
5
  export { createChatWs } from "./chat-ws";
6
- export type { ChatWebSocket } from "./chat-ws";
6
+ export type { ChatWebSocket, OfferEventType, OfferEvent, OfferSubEvent } from "./chat-ws";
7
7
  export { createChatApi } from "./chat-api";
8
8
  export type { ApiFetchFn } from "./chat-api";
9
9
  export { useChat } from "./use-chat";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,YAAY,EACV,2BAA2B,EAC3B,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,YAAY,EACV,qBAAqB,EACrB,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EACV,QAAQ,EACR,WAAW,EACX,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,SAAS,EACT,uBAAuB,EACvB,cAAc,EACd,aAAa,GACd,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,YAAY,EACV,2BAA2B,EAC3B,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,YAAY,EACV,qBAAqB,EACrB,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EACV,QAAQ,EACR,WAAW,EACX,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,SAAS,EACT,uBAAuB,EACvB,cAAc,EACd,aAAa,GACd,MAAM,SAAS,CAAC"}
@@ -3,7 +3,13 @@ export interface AttachmentsCardProps {
3
3
  attachments: OfferAttachmentItem[];
4
4
  onOpen: (attachment: OfferAttachmentItem) => void;
5
5
  onDelete?: (attachment: OfferAttachmentItem) => void;
6
+ /**
7
+ * Show an upload CTA alongside the heading. The handler is purely a
8
+ * trigger — the consumer owns the file picker + the actual upload flow
9
+ * (commonly a `click()` on a hidden `<input type="file">`).
10
+ */
11
+ onUpload?: () => void;
6
12
  className?: string;
7
13
  }
8
- export declare function AttachmentsCard({ attachments, onOpen, onDelete, className, }: AttachmentsCardProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function AttachmentsCard({ attachments, onOpen, onDelete, onUpload, className, }: AttachmentsCardProps): import("react/jsx-runtime").JSX.Element;
9
15
  //# sourceMappingURL=attachments-card.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachments-card.d.ts","sourceRoot":"","sources":["../../src/offer/attachments-card.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEnD,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,MAAM,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,oBAAoB,2CAmDtB"}
1
+ {"version":3,"file":"attachments-card.d.ts","sourceRoot":"","sources":["../../src/offer/attachments-card.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEnD,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,MAAM,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACrD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,SAAS,GACV,EAAE,oBAAoB,2CAkEtB"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { FileText, Trash2 } from "lucide-react";
2
+ import { FileText, Trash2, Upload } from "lucide-react";
3
3
  import { cn } from "../lib/utils";
4
4
  import { ShadcnBadge as Badge } from "../components/shadcn-badge";
5
5
  import { ShadcnButton as Button } from "../components/shadcn-button";
@@ -10,7 +10,7 @@ function formatBytes(n) {
10
10
  return `${(n / 1024).toFixed(1)} KB`;
11
11
  return `${(n / 1024 / 1024).toFixed(1)} MB`;
12
12
  }
13
- export function AttachmentsCard({ attachments, onOpen, onDelete, className, }) {
14
- return (_jsxs("section", { "aria-labelledby": "attachments-heading", className: cn("rounded-2xl border border-border/60 bg-card p-4", className), children: [_jsx("h2", { id: "attachments-heading", className: "text-xs/5 font-semibold uppercase tracking-wide text-muted-foreground", children: "Attachments" }), attachments.length === 0 ? (_jsx("p", { className: "mt-3 text-sm/6 text-muted-foreground", children: "No attachments yet." })) : (_jsx("ul", { className: "mt-3 grid grid-cols-1 gap-2 sm:grid-cols-2", children: attachments.map((a) => (_jsxs("li", { className: "flex items-start gap-3 rounded-lg border border-border/60 p-3", children: [_jsx(FileText, { "aria-hidden": true, className: "size-5 shrink-0 text-muted-foreground" }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("button", { type: "button", onClick: () => onOpen(a), className: "block truncate text-left text-sm/6 font-medium hover:underline", "aria-label": `Open ${a.fileName}`, children: a.fileName }), _jsxs("div", { className: "mt-1 flex flex-wrap items-center gap-2 text-xs text-muted-foreground", children: [_jsx("span", { children: formatBytes(a.sizeBytes) }), _jsx(Badge, { variant: "ghost", className: "text-[10px]", children: a.sourceLabel ?? a.source })] })] }), onDelete && (_jsx(Button, { variant: "ghost", size: "icon", "aria-label": `Remove ${a.fileName}`, onClick: () => onDelete(a), children: _jsx(Trash2, { "aria-hidden": true, className: "size-4" }) }))] }, a.id))) }))] }));
13
+ export function AttachmentsCard({ attachments, onOpen, onDelete, onUpload, className, }) {
14
+ return (_jsxs("section", { "aria-labelledby": "attachments-heading", className: cn("rounded-2xl border border-border/60 bg-card p-4", className), children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("h2", { id: "attachments-heading", className: "text-xs/5 font-semibold uppercase tracking-wide text-muted-foreground", children: "Attachments" }), onUpload && (_jsxs(Button, { type: "button", size: "sm", variant: "ghost", onClick: onUpload, "aria-label": "Upload attachment", className: "-my-1 h-7 px-2", children: [_jsx(Upload, { "aria-hidden": true, className: "mr-1 size-3.5" }), "Upload"] }))] }), attachments.length === 0 ? (_jsx("p", { className: "mt-3 text-sm/6 text-muted-foreground", children: "No attachments yet." })) : (_jsx("ul", { className: "mt-3 grid grid-cols-1 gap-2 sm:grid-cols-2", children: attachments.map((a) => (_jsxs("li", { className: "flex items-start gap-3 rounded-lg border border-border/60 p-3", children: [_jsx(FileText, { "aria-hidden": true, className: "size-5 shrink-0 text-muted-foreground" }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("button", { type: "button", onClick: () => onOpen(a), className: "block truncate text-left text-sm/6 font-medium hover:underline", "aria-label": `Open ${a.fileName}`, children: a.fileName }), _jsxs("div", { className: "mt-1 flex flex-wrap items-center gap-2 text-xs text-muted-foreground", children: [_jsx("span", { children: formatBytes(a.sizeBytes) }), _jsx(Badge, { variant: "ghost", className: "text-[10px]", children: a.sourceLabel ?? a.source })] })] }), onDelete && (_jsx(Button, { variant: "ghost", size: "icon", "aria-label": `Remove ${a.fileName}`, onClick: () => onDelete(a), children: _jsx(Trash2, { "aria-hidden": true, className: "size-4" }) }))] }, a.id))) }))] }));
15
15
  }
16
16
  //# sourceMappingURL=attachments-card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachments-card.js","sourceRoot":"","sources":["../../src/offer/attachments-card.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAUrE,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,CAAC,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IAC9B,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1D,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAC9B,WAAW,EACX,MAAM,EACN,QAAQ,EACR,SAAS,GACY;IACrB,OAAO,CACL,sCACkB,qBAAqB,EACrC,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,aAE3E,aAAI,EAAE,EAAC,qBAAqB,EAAC,SAAS,EAAC,uEAAuE,4BAEzG,EACJ,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC1B,YAAG,SAAS,EAAC,sCAAsC,oCAAwB,CAC5E,CAAC,CAAC,CAAC,CACF,aAAI,SAAS,EAAC,4CAA4C,YACvD,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtB,cAEE,SAAS,EAAC,+DAA+D,aAEzE,KAAC,QAAQ,yBAAa,SAAS,EAAC,uCAAuC,GAAG,EAC1E,eAAK,SAAS,EAAC,gBAAgB,aAC7B,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EACxB,SAAS,EAAC,gEAAgE,gBAC9D,QAAQ,CAAC,CAAC,QAAQ,EAAE,YAE/B,CAAC,CAAC,QAAQ,GACJ,EACT,eAAK,SAAS,EAAC,sEAAsE,aACnF,yBAAO,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAQ,EACvC,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,aAAa,YAC3C,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,MAAM,GACpB,IACJ,IACF,EACL,QAAQ,IAAI,CACX,KAAC,MAAM,IACL,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,MAAM,gBACC,UAAU,CAAC,CAAC,QAAQ,EAAE,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,YAE1B,KAAC,MAAM,yBAAa,SAAS,EAAC,QAAQ,GAAG,GAClC,CACV,KA7BI,CAAC,CAAC,EAAE,CA8BN,CACN,CAAC,GACC,CACN,IACO,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"attachments-card.js","sourceRoot":"","sources":["../../src/offer/attachments-card.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAgBrE,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,CAAC,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IAC9B,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1D,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAC9B,WAAW,EACX,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,SAAS,GACY;IACrB,OAAO,CACL,sCACkB,qBAAqB,EACrC,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,aAE3E,eAAK,SAAS,EAAC,mCAAmC,aAChD,aAAI,EAAE,EAAC,qBAAqB,EAAC,SAAS,EAAC,uEAAuE,4BAEzG,EACJ,QAAQ,IAAI,CACX,MAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,QAAQ,gBACN,mBAAmB,EAC9B,SAAS,EAAC,gBAAgB,aAE1B,KAAC,MAAM,yBAAa,SAAS,EAAC,eAAe,GAAG,cAEzC,CACV,IACG,EACL,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC1B,YAAG,SAAS,EAAC,sCAAsC,oCAAwB,CAC5E,CAAC,CAAC,CAAC,CACF,aAAI,SAAS,EAAC,4CAA4C,YACvD,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtB,cAEE,SAAS,EAAC,+DAA+D,aAEzE,KAAC,QAAQ,yBAAa,SAAS,EAAC,uCAAuC,GAAG,EAC1E,eAAK,SAAS,EAAC,gBAAgB,aAC7B,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EACxB,SAAS,EAAC,gEAAgE,gBAC9D,QAAQ,CAAC,CAAC,QAAQ,EAAE,YAE/B,CAAC,CAAC,QAAQ,GACJ,EACT,eAAK,SAAS,EAAC,sEAAsE,aACnF,yBAAO,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAQ,EACvC,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,aAAa,YAC3C,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,MAAM,GACpB,IACJ,IACF,EACL,QAAQ,IAAI,CACX,KAAC,MAAM,IACL,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,MAAM,gBACC,UAAU,CAAC,CAAC,QAAQ,EAAE,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,YAE1B,KAAC,MAAM,yBAAa,SAAS,EAAC,QAAQ,GAAG,GAClC,CACV,KA7BI,CAAC,CAAC,EAAE,CA8BN,CACN,CAAC,GACC,CACN,IACO,CACX,CAAC;AACJ,CAAC"}
@@ -62,7 +62,7 @@ export type { NegotiationSectionProps } from "./negotiation-section";
62
62
  export { OfferExportButton } from "./offer-export-button";
63
63
  export type { OfferExportButtonProps } from "./offer-export-button";
64
64
  export { OfferDocument } from "./offer-document";
65
- export type { OfferDocumentProps, OfferDocumentAction } from "./offer-document";
65
+ export type { OfferDocumentProps } from "./offer-document";
66
66
  export { ImporterPickerModal, type ImporterPickerModalProps, type ImporterPickerImporter, type ImporterPickerMode, } from "../components/importer-picker-modal";
67
67
  export { OffersSentPanel, type OffersSentPanelProps, type OfferBranch, } from "../components/branch-overview-panel";
68
68
  export { FinalizeDealModal, type FinalizeDealModalProps, type FinalizeDealTerm, type FinalizeDealClosedBranch, } from "../components/branch-resolution-modal";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/offer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/offer/index.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,15 @@ export interface NegotiationSectionProps {
5
5
  viewerRole?: Perspective;
6
6
  viewerAdvantageFor?: (event: TimelineEventData) => ViewerAdvantage;
7
7
  onOpenComposer?: () => void;
8
+ /**
9
+ * Optional pagination hook — when provided, renders a "Load older events"
10
+ * button at the top of the timeline that invokes the handler. Undefined
11
+ * means "all events loaded; no pagination affordance".
12
+ */
13
+ onLoadOlder?: () => void;
14
+ /** Disables the load-older button while a prior request is in flight. */
15
+ loadOlderDisabled?: boolean;
8
16
  className?: string;
9
17
  }
10
- export declare function NegotiationSection({ events, viewerOrgId: _viewerOrgId, viewerRole: _viewerRole, viewerAdvantageFor, onOpenComposer, className, }: NegotiationSectionProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare function NegotiationSection({ events, viewerOrgId: _viewerOrgId, viewerRole: _viewerRole, viewerAdvantageFor, onOpenComposer, onLoadOlder, loadOlderDisabled, className, }: NegotiationSectionProps): import("react/jsx-runtime").JSX.Element;
11
19
  //# sourceMappingURL=negotiation-section.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"negotiation-section.d.ts","sourceRoot":"","sources":["../../src/offer/negotiation-section.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,eAAe,CAAC;IACnE,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,WAAW,EACvB,kBAAkB,EAClB,cAAc,EACd,SAAS,GACV,EAAE,uBAAuB,2CAgLzB"}
1
+ {"version":3,"file":"negotiation-section.d.ts","sourceRoot":"","sources":["../../src/offer/negotiation-section.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,eAAe,CAAC;IACnE,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,WAAW,EACvB,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,SAAS,GACV,EAAE,uBAAuB,2CA+LzB"}
@@ -6,7 +6,7 @@ import { ShadcnButton as Button } from "../components/shadcn-button";
6
6
  import { useSafeVirtualizer } from "../chat/use-safe-virtualizer";
7
7
  import { TimelineEvent } from "./timeline-event";
8
8
  import { NewActivityPill } from "./new-activity-pill";
9
- export function NegotiationSection({ events, viewerOrgId: _viewerOrgId, viewerRole: _viewerRole, viewerAdvantageFor, onOpenComposer, className, }) {
9
+ export function NegotiationSection({ events, viewerOrgId: _viewerOrgId, viewerRole: _viewerRole, viewerAdvantageFor, onOpenComposer, onLoadOlder, loadOlderDisabled, className, }) {
10
10
  const scrollRef = useRef(null);
11
11
  const [newEventCount, setNewEventCount] = useState(0);
12
12
  const [focusedIndex, setFocusedIndex] = useState(0);
@@ -80,7 +80,7 @@ export function NegotiationSection({ events, viewerOrgId: _viewerOrgId, viewerRo
80
80
  else
81
81
  eventListRef.current.delete(index);
82
82
  }, []);
83
- return (_jsxs("section", { "aria-labelledby": "negotiation-heading", className: cn("rounded-2xl border border-border/60 bg-card p-4", className), children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("h2", { id: "negotiation-heading", className: "text-xs/5 font-semibold uppercase tracking-wide text-muted-foreground", children: "Negotiation" }), onOpenComposer && (_jsxs(Button, { size: "sm", onClick: onOpenComposer, children: [_jsx(ArrowLeftRight, { "aria-hidden": true, className: "size-4" }), "Counter"] }))] }), _jsxs("div", { ref: scrollRef, className: "relative mt-3 max-h-[480px] overflow-y-auto", children: [events.length === 0 ? (_jsx("p", { className: "py-6 text-center text-sm text-muted-foreground", children: "No activity yet." })) : shouldVirtualize ? (_jsx("ol", { role: "list", "aria-label": "Negotiation timeline", className: "relative", style: { height: virtualizer.getTotalSize() }, onKeyDown: handleKeyDown, children: virtualizer.getVirtualItems().map((row) => {
83
+ return (_jsxs("section", { "aria-labelledby": "negotiation-heading", className: cn("rounded-2xl border border-border/60 bg-card p-4", className), children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("h2", { id: "negotiation-heading", className: "text-xs/5 font-semibold uppercase tracking-wide text-muted-foreground", children: "Negotiation" }), onOpenComposer && (_jsxs(Button, { size: "sm", onClick: onOpenComposer, children: [_jsx(ArrowLeftRight, { "aria-hidden": true, className: "size-4" }), "Counter"] }))] }), _jsxs("div", { ref: scrollRef, className: "relative mt-3 max-h-[480px] overflow-y-auto", children: [onLoadOlder && events.length > 0 && (_jsx("div", { className: "mb-2 flex justify-center", children: _jsx(Button, { type: "button", variant: "ghost", size: "sm", onClick: onLoadOlder, disabled: loadOlderDisabled, "aria-label": "Load older events", className: "h-7 text-xs", children: "Load older events" }) })), events.length === 0 ? (_jsx("p", { className: "py-6 text-center text-sm text-muted-foreground", children: "No activity yet." })) : shouldVirtualize ? (_jsx("ol", { role: "list", "aria-label": "Negotiation timeline", className: "relative", style: { height: virtualizer.getTotalSize() }, onKeyDown: handleKeyDown, children: virtualizer.getVirtualItems().map((row) => {
84
84
  const ev = events[row.index];
85
85
  return (_jsx("div", { ref: virtualizer.measureElement, "data-index": row.index, style: {
86
86
  position: "absolute",
@@ -1 +1 @@
1
- {"version":3,"file":"negotiation-section.js","sourceRoot":"","sources":["../../src/offer/negotiation-section.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"negotiation-section.js","sourceRoot":"","sources":["../../src/offer/negotiation-section.tsx"],"names":[],"mappings":"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"}
@@ -1,33 +1,33 @@
1
- import { type FactsCardStatus } from "./facts-card";
2
- import { type OfferProductBeverage, type OfferProductVariant } from "./offer-product-card";
3
- import { type OpportunityCardData } from "./opportunity-card";
4
- import type { MatchEvaluation, OfferAttachmentItem, OfferFxInfo, OfferPartyInfo, OfferPresenceEntry, OfferSectionId, OfferTerms, Perspective, SectionOverride, TimelineEventData } from "./types";
5
- export type OfferDocumentAction = "counter" | "accept" | "decline" | "withdraw" | "reopen" | "renew";
1
+ import type { MatchEvaluation, OfferAttachmentItem, OfferCounterBody, OfferCounts, OfferFxInfo, OfferParties, OfferPresenceEntry, OfferRaw, OfferSectionId, Perspective, SectionOverride, TimelineEventData } from "./types";
6
2
  export interface OfferDocumentProps {
7
- offerId: string;
8
- status: FactsCardStatus;
9
- round: number;
3
+ offer: OfferRaw;
4
+ matchEvaluation: MatchEvaluation | null;
5
+ counts?: OfferCounts;
6
+ fx?: OfferFxInfo | null;
7
+ presence?: OfferPresenceEntry[];
8
+ parties: OfferParties;
9
+ timelineEvents: TimelineEventData[];
10
+ /** Whether there are older timeline events beyond what's loaded. */
11
+ hasMoreTimeline?: boolean;
12
+ /** Load the next older page; OfferDocument exposes this via the negotiation shell. */
13
+ onLoadOlderTimeline?: () => void;
10
14
  perspective: Perspective;
11
15
  viewerOrgId: string;
12
- producer: OfferPartyInfo;
13
- importer: OfferPartyInfo;
14
- opportunity: OpportunityCardData;
15
- beverage: OfferProductBeverage;
16
- variant: OfferProductVariant;
17
- terms: OfferTerms;
18
- previousTerms?: OfferTerms;
19
- evaluation: MatchEvaluation;
20
- attachments: OfferAttachmentItem[];
21
- events: TimelineEventData[];
22
- presence: OfferPresenceEntry[];
23
- fx?: OfferFxInfo;
16
+ /** Currency the tender was denominated in — enables FX display in FactsCard. */
24
17
  tenderCurrency?: string;
25
- /** Per-section overrides (hide / reorder / override default-open). */
18
+ onCounter: (body: OfferCounterBody) => Promise<void>;
19
+ onAccept: () => Promise<void>;
20
+ onDecline: () => Promise<void>;
21
+ onWithdraw: () => Promise<void>;
22
+ onUploadAttachment?: (file: File) => Promise<void>;
23
+ /** Optional "reopen" / "renew" terminal-state escape hatches. */
24
+ onReopen?: () => Promise<void>;
25
+ onRenew?: () => Promise<void>;
26
+ /** True when the socket is reconnecting; renders a non-blocking banner. */
27
+ isReconnecting?: boolean;
26
28
  sections?: Partial<Record<OfferSectionId, SectionOverride>>;
27
- onAction: (action: OfferDocumentAction) => void;
28
- onOpenComposer?: () => void;
29
29
  onOpenAttachment?: (a: OfferAttachmentItem) => void;
30
30
  className?: string;
31
31
  }
32
- export declare function OfferDocument({ offerId, status, round, perspective, viewerOrgId, producer, importer, opportunity, beverage, variant, terms, previousTerms, evaluation, attachments, events, presence, fx, tenderCurrency, sections, onAction, onOpenComposer, onOpenAttachment, className, }: OfferDocumentProps): import("react/jsx-runtime").JSX.Element;
32
+ export declare function OfferDocument({ offer, matchEvaluation, counts, fx, presence, parties, timelineEvents, hasMoreTimeline: _hasMoreTimeline, onLoadOlderTimeline, perspective, viewerOrgId, tenderCurrency, onCounter, onAccept, onDecline, onWithdraw, onUploadAttachment, onReopen, onRenew, isReconnecting, sections, onOpenAttachment, className, }: OfferDocumentProps): import("react/jsx-runtime").JSX.Element;
33
33
  //# sourceMappingURL=offer-document.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"offer-document.d.ts","sourceRoot":"","sources":["../../src/offer/offer-document.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/D,OAAO,EAAoB,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAmB,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAG/E,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,eAAe,EACf,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,UAAU,GACV,QAAQ,GACR,OAAO,CAAC;AAEZ,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IAEpB,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,mBAAmB,CAAC;IACjC,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,EAAE,UAAU,CAAC;IAClB,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,UAAU,EAAE,eAAe,CAAC;IAC5B,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAE5D,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEpD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6ED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,MAAM,EACN,KAAK,EACL,WAAW,EACX,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,OAAO,EACP,KAAK,EACL,aAAa,EACb,UAAU,EACV,WAAW,EACX,MAAM,EACN,QAAQ,EACR,EAAE,EACF,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,gBAAgB,EAChB,SAAS,GACV,EAAE,kBAAkB,2CAgMpB"}
1
+ {"version":3,"file":"offer-document.d.ts","sourceRoot":"","sources":["../../src/offer/offer-document.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,YAAY,EAEZ,kBAAkB,EAClB,QAAQ,EACR,cAAc,EAEd,WAAW,EACX,eAAe,EACf,iBAAiB,EAElB,MAAM,SAAS,CAAC;AASjB,MAAM,WAAW,kBAAkB;IAEjC,KAAK,EAAE,QAAQ,CAAC;IAChB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,cAAc,EAAE,iBAAiB,EAAE,CAAC;IACpC,oEAAoE;IACpE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,sFAAsF;IACtF,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IAGjC,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,SAAS,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAG9B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,OAAO,CAAC;IAGzB,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAC5D,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAgOD,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,eAAe,EACf,MAAM,EACN,EAAE,EACF,QAAQ,EACR,OAAO,EACP,cAAc,EACd,eAAe,EAAE,gBAAgB,EACjC,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,cAAc,EACd,SAAS,EACT,QAAQ,EACR,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,OAAO,EACP,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,SAAS,GACV,EAAE,kBAAkB,2CAmSpB"}