@workhive/api 1.0.1 → 1.1.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.
Files changed (50) hide show
  1. package/dist/client.d.ts +53 -1
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +126 -2
  4. package/dist/context.d.ts +37 -0
  5. package/dist/context.d.ts.map +1 -1
  6. package/dist/hooks/index.d.ts +14 -0
  7. package/dist/hooks/index.d.ts.map +1 -1
  8. package/dist/hooks/index.js +12 -0
  9. package/dist/hooks/use-contact-lead-submissions.d.ts +4 -0
  10. package/dist/hooks/use-contact-lead-submissions.d.ts.map +1 -0
  11. package/dist/hooks/use-contact-lead-submissions.js +10 -0
  12. package/dist/hooks/use-contact-meetings.d.ts +6 -0
  13. package/dist/hooks/use-contact-meetings.d.ts.map +1 -0
  14. package/dist/hooks/use-contact-meetings.js +10 -0
  15. package/dist/hooks/use-delete-inbox-thread.d.ts +4 -0
  16. package/dist/hooks/use-delete-inbox-thread.d.ts.map +1 -0
  17. package/dist/hooks/use-delete-inbox-thread.js +12 -0
  18. package/dist/hooks/use-inbox-calls.d.ts +6 -0
  19. package/dist/hooks/use-inbox-calls.d.ts.map +1 -0
  20. package/dist/hooks/use-inbox-calls.js +11 -0
  21. package/dist/hooks/use-inbox-messages.d.ts +2 -0
  22. package/dist/hooks/use-inbox-messages.d.ts.map +1 -0
  23. package/dist/hooks/use-inbox-messages.js +12 -0
  24. package/dist/hooks/use-inbox-threads.d.ts +5 -0
  25. package/dist/hooks/use-inbox-threads.d.ts.map +1 -0
  26. package/dist/hooks/use-inbox-threads.js +10 -0
  27. package/dist/hooks/use-mark-inbox-thread-read.d.ts +7 -0
  28. package/dist/hooks/use-mark-inbox-thread-read.d.ts.map +1 -0
  29. package/dist/hooks/use-mark-inbox-thread-read.js +34 -0
  30. package/dist/hooks/use-mark-inbox-thread-unread.d.ts +7 -0
  31. package/dist/hooks/use-mark-inbox-thread-unread.d.ts.map +1 -0
  32. package/dist/hooks/use-mark-inbox-thread-unread.js +34 -0
  33. package/dist/hooks/use-message-snippets.d.ts +6 -0
  34. package/dist/hooks/use-message-snippets.d.ts.map +1 -0
  35. package/dist/hooks/use-message-snippets.js +13 -0
  36. package/dist/hooks/use-phone-numbers.d.ts +7 -0
  37. package/dist/hooks/use-phone-numbers.d.ts.map +1 -0
  38. package/dist/hooks/use-phone-numbers.js +14 -0
  39. package/dist/hooks/use-send-inbox-message.d.ts +12 -0
  40. package/dist/hooks/use-send-inbox-message.d.ts.map +1 -0
  41. package/dist/hooks/use-send-inbox-message.js +113 -0
  42. package/dist/hooks/use-update-inbox-thread-status.d.ts +11 -0
  43. package/dist/hooks/use-update-inbox-thread-status.d.ts.map +1 -0
  44. package/dist/hooks/use-update-inbox-thread-status.js +34 -0
  45. package/dist/index.d.ts +3 -3
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +1 -1
  48. package/dist/types.d.ts +209 -0
  49. package/dist/types.d.ts.map +1 -1
  50. package/package.json +1 -1
package/dist/client.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * WorkHive API client – base URL + auth, methods for each route.
3
3
  * Used by both SaaS and mobile; mobile passes EXPO_PUBLIC_API_URL and Supabase getToken.
4
4
  */
5
- import type { LeadSubmissionsResponse, TaskListItem, Meeting, CreateMeetingPayload, PipelineCard, PostMeetingBookedPromptResponse, Pipeline, PipelineStage, TeamMembersResponse, MeResponse, RescheduleMeetingPayload, GetAvailabilitySlotsParams, GetAvailabilitySlotsResponse, EventType } from './types';
5
+ import type { LeadSubmissionsResponse, ContactLeadSubmissionsResponse, TaskListItem, Meeting, CreateMeetingPayload, PipelineCard, PostMeetingBookedPromptResponse, Pipeline, PipelineStage, TeamMembersResponse, MeResponse, RescheduleMeetingPayload, GetAvailabilitySlotsParams, GetAvailabilitySlotsResponse, EventType, PhoneNumbersResponse, InboxThreadsResponse, InboxMessagesResponse, InboxCallsResponse, InboxCallEvent, CreateInboxCallPayload, VoiceTokenResponse, UploadInboxMediaResponse, SendInboxMessagePayload, SendInboxMessageResponse, MessageSnippet, MessageSnippetsResponse, CreateMessageSnippetPayload, UpdateMessageSnippetPayload } from './types';
6
6
  export type ApiClientConfig = {
7
7
  baseURL: string;
8
8
  getToken: () => Promise<string | null>;
@@ -22,6 +22,10 @@ export declare function createApiClient(config: ApiClientConfig): {
22
22
  sortOrder?: "asc" | "desc";
23
23
  showArchivedOnly?: boolean;
24
24
  }): Promise<LeadSubmissionsResponse>;
25
+ getContactLeadSubmissions(contactId: string): Promise<ContactLeadSubmissionsResponse>;
26
+ getContactMeetings(contactId: string): Promise<{
27
+ meetings: Meeting[];
28
+ }>;
25
29
  getTasks(params?: {
26
30
  status?: string;
27
31
  related_card_id?: string;
@@ -111,6 +115,54 @@ export declare function createApiClient(config: ApiClientConfig): {
111
115
  getEventTypes(): Promise<{
112
116
  eventTypes: EventType[];
113
117
  }>;
118
+ getPhoneNumbers(): Promise<PhoneNumbersResponse>;
119
+ /** POST /api/phone-numbers/[id]/voice-token – Twilio Voice Access Token for Device SDK. */
120
+ postVoiceToken(phoneNumberId: string): Promise<VoiceTokenResponse>;
121
+ /** POST /api/phone-numbers/[id]/upload-media – upload files for outbound MMS; returns signed URLs + attachment metadata. */
122
+ uploadInboxMedia(phoneNumberId: string, formData: FormData): Promise<UploadInboxMediaResponse>;
123
+ /** List conversation threads for an inbox (phone number). Optional status filter: active (Open) or archived (Done). */
124
+ getInboxThreads(phoneNumberId: string, params?: {
125
+ status?: "active" | "archived";
126
+ }): Promise<InboxThreadsResponse>;
127
+ /** List call events for an inbox (phone number). Same auth as getInboxThreads. */
128
+ getInboxCalls(phoneNumberId: string): Promise<InboxCallsResponse>;
129
+ /** List messages for a thread. */
130
+ getInboxThreadMessages(threadId: string): Promise<InboxMessagesResponse>;
131
+ /** Create an outbound call event record (before starting Twilio call). Returns the created call event. */
132
+ createInboxCall(payload: CreateInboxCallPayload): Promise<InboxCallEvent>;
133
+ /** Send an outbound message from an inbox (SMS). */
134
+ sendInboxMessage(phoneNumberId: string, body: SendInboxMessagePayload): Promise<SendInboxMessageResponse>;
135
+ /** Mark a thread as read for the current user (e.g. when opening the conversation). */
136
+ markInboxThreadRead(threadId: string): Promise<{
137
+ ok: true;
138
+ }>;
139
+ /** Mark a thread as unread for the current user. */
140
+ markInboxThreadUnread(threadId: string): Promise<{
141
+ ok: true;
142
+ }>;
143
+ /** Update thread status: active = Open, archived = Done. */
144
+ updateInboxThreadStatus(threadId: string, status: "active" | "archived"): Promise<{
145
+ ok: true;
146
+ status: string;
147
+ }>;
148
+ /** Delete a conversation thread (and its messages via cascade). */
149
+ deleteInboxThread(threadId: string): Promise<{
150
+ ok: true;
151
+ }>;
152
+ /** List message snippets for the current org. */
153
+ getMessageSnippets(): Promise<MessageSnippetsResponse>;
154
+ /** Create a message snippet. */
155
+ createMessageSnippet(body: CreateMessageSnippetPayload): Promise<{
156
+ snippet: MessageSnippet;
157
+ }>;
158
+ /** Update a message snippet. */
159
+ updateMessageSnippet(id: string, body: UpdateMessageSnippetPayload): Promise<{
160
+ snippet: MessageSnippet;
161
+ }>;
162
+ /** Delete a message snippet. */
163
+ deleteMessageSnippet(id: string): Promise<{
164
+ ok: true;
165
+ }>;
114
166
  };
115
167
  export type ApiClient = ReturnType<typeof createApiClient>;
116
168
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -21,8 +21,41 @@ export function createApiClient(config) {
21
21
  },
22
22
  });
23
23
  if (!res.ok) {
24
- const err = await res.json().catch(() => ({}));
25
- throw new Error(err.error || res.statusText);
24
+ const text = await res.text();
25
+ let err = {};
26
+ try {
27
+ if (text.length > 0)
28
+ err = JSON.parse(text);
29
+ }
30
+ catch {
31
+ // Server returned non-JSON (e.g. HTML error page); avoid "Unexpected token '<'" in Sentry
32
+ }
33
+ throw new Error(err.error || res.statusText || 'Request failed');
34
+ }
35
+ return res.json();
36
+ }
37
+ /** POST with FormData; do not set Content-Type so browser sets multipart boundary. */
38
+ async function requestForm(path, formData) {
39
+ const token = await getToken();
40
+ const url = buildUrl(baseURL, path);
41
+ const res = await fetch(url, {
42
+ method: 'POST',
43
+ body: formData,
44
+ headers: {
45
+ ...(token ? { Authorization: `Bearer ${token}` } : {}),
46
+ },
47
+ });
48
+ if (!res.ok) {
49
+ const text = await res.text();
50
+ let err = {};
51
+ try {
52
+ if (text.length > 0)
53
+ err = JSON.parse(text);
54
+ }
55
+ catch {
56
+ // Server returned non-JSON
57
+ }
58
+ throw new Error(err.error || res.statusText || 'Request failed');
26
59
  }
27
60
  return res.json();
28
61
  }
@@ -59,6 +92,15 @@ export function createApiClient(config) {
59
92
  return request(`/api/lead-submissions?${search}`);
60
93
  },
61
94
  // -------------------------------------------------------------------------
95
+ // Contact-scoped (GET /api/contacts/[id]/lead-submissions, .../meetings)
96
+ // -------------------------------------------------------------------------
97
+ getContactLeadSubmissions(contactId) {
98
+ return request(`/api/contacts/${encodeURIComponent(contactId)}/lead-submissions`);
99
+ },
100
+ getContactMeetings(contactId) {
101
+ return request(`/api/contacts/${encodeURIComponent(contactId)}/meetings`);
102
+ },
103
+ // -------------------------------------------------------------------------
62
104
  // Tasks (GET /api/tasks)
63
105
  // -------------------------------------------------------------------------
64
106
  getTasks(params) {
@@ -230,5 +272,87 @@ export function createApiClient(config) {
230
272
  getEventTypes() {
231
273
  return request('/api/scheduling/event-types');
232
274
  },
275
+ // -------------------------------------------------------------------------
276
+ // Phone numbers / inboxes (GET /api/phone-numbers)
277
+ // For header phone-number switch; filter by current user assignment client-side
278
+ // or use assignments to show only numbers the user can use for inbox/calls.
279
+ // -------------------------------------------------------------------------
280
+ getPhoneNumbers() {
281
+ return request('/api/phone-numbers');
282
+ },
283
+ /** POST /api/phone-numbers/[id]/voice-token – Twilio Voice Access Token for Device SDK. */
284
+ postVoiceToken(phoneNumberId) {
285
+ return request(`/api/phone-numbers/${encodeURIComponent(phoneNumberId)}/voice-token`, { method: 'POST' });
286
+ },
287
+ /** POST /api/phone-numbers/[id]/upload-media – upload files for outbound MMS; returns signed URLs + attachment metadata. */
288
+ uploadInboxMedia(phoneNumberId, formData) {
289
+ return requestForm(`/api/phone-numbers/${encodeURIComponent(phoneNumberId)}/upload-media`, formData);
290
+ },
291
+ // -------------------------------------------------------------------------
292
+ // Inbox: threads, messages, send (use shared API; no raw fetch in app)
293
+ // -------------------------------------------------------------------------
294
+ /** List conversation threads for an inbox (phone number). Optional status filter: active (Open) or archived (Done). */
295
+ getInboxThreads(phoneNumberId, params) {
296
+ const path = `/api/phone-numbers/${encodeURIComponent(phoneNumberId)}/threads` +
297
+ (params?.status ? `?status=${encodeURIComponent(params.status)}` : '');
298
+ return request(path);
299
+ },
300
+ /** List call events for an inbox (phone number). Same auth as getInboxThreads. */
301
+ getInboxCalls(phoneNumberId) {
302
+ return request(`/api/phone-numbers/${encodeURIComponent(phoneNumberId)}/calls`);
303
+ },
304
+ /** List messages for a thread. */
305
+ getInboxThreadMessages(threadId) {
306
+ return request(`/api/inbox/threads/${encodeURIComponent(threadId)}/messages`);
307
+ },
308
+ /** Create an outbound call event record (before starting Twilio call). Returns the created call event. */
309
+ createInboxCall(payload) {
310
+ return request('/api/inbox/calls', {
311
+ method: 'POST',
312
+ body: JSON.stringify(payload),
313
+ });
314
+ },
315
+ /** Send an outbound message from an inbox (SMS). */
316
+ sendInboxMessage(phoneNumberId, body) {
317
+ return request(`/api/phone-numbers/${encodeURIComponent(phoneNumberId)}/send`, {
318
+ method: 'POST',
319
+ body: JSON.stringify(body),
320
+ });
321
+ },
322
+ /** Mark a thread as read for the current user (e.g. when opening the conversation). */
323
+ markInboxThreadRead(threadId) {
324
+ return request(`/api/inbox/threads/${encodeURIComponent(threadId)}/read`, { method: 'POST' });
325
+ },
326
+ /** Mark a thread as unread for the current user. */
327
+ markInboxThreadUnread(threadId) {
328
+ return request(`/api/inbox/threads/${encodeURIComponent(threadId)}/unread`, { method: 'POST' });
329
+ },
330
+ /** Update thread status: active = Open, archived = Done. */
331
+ updateInboxThreadStatus(threadId, status) {
332
+ return request(`/api/inbox/threads/${encodeURIComponent(threadId)}`, { method: 'PATCH', body: JSON.stringify({ status }) });
333
+ },
334
+ /** Delete a conversation thread (and its messages via cascade). */
335
+ deleteInboxThread(threadId) {
336
+ return request(`/api/inbox/threads/${encodeURIComponent(threadId)}`, { method: 'DELETE' });
337
+ },
338
+ // -------------------------------------------------------------------------
339
+ // Message snippets (Settings → Messaging; Inbox picker)
340
+ // -------------------------------------------------------------------------
341
+ /** List message snippets for the current org. */
342
+ getMessageSnippets() {
343
+ return request('/api/settings/messaging/snippets');
344
+ },
345
+ /** Create a message snippet. */
346
+ createMessageSnippet(body) {
347
+ return request('/api/settings/messaging/snippets', { method: 'POST', body: JSON.stringify(body) });
348
+ },
349
+ /** Update a message snippet. */
350
+ updateMessageSnippet(id, body) {
351
+ return request(`/api/settings/messaging/snippets/${encodeURIComponent(id)}`, { method: 'PATCH', body: JSON.stringify(body) });
352
+ },
353
+ /** Delete a message snippet. */
354
+ deleteMessageSnippet(id) {
355
+ return request(`/api/settings/messaging/snippets/${encodeURIComponent(id)}`, { method: 'DELETE' });
356
+ },
233
357
  };
234
358
  }
package/dist/context.d.ts CHANGED
@@ -17,6 +17,10 @@ export declare const ApiProvider: import("react").Provider<{
17
17
  sortOrder?: "asc" | "desc";
18
18
  showArchivedOnly?: boolean;
19
19
  }): Promise<import("./types").LeadSubmissionsResponse>;
20
+ getContactLeadSubmissions(contactId: string): Promise<import("./types").ContactLeadSubmissionsResponse>;
21
+ getContactMeetings(contactId: string): Promise<{
22
+ meetings: import("./types").Meeting[];
23
+ }>;
20
24
  getTasks(params?: {
21
25
  status?: string;
22
26
  related_card_id?: string;
@@ -95,6 +99,39 @@ export declare const ApiProvider: import("react").Provider<{
95
99
  getEventTypes(): Promise<{
96
100
  eventTypes: import("./types").EventType[];
97
101
  }>;
102
+ getPhoneNumbers(): Promise<import("./types").PhoneNumbersResponse>;
103
+ postVoiceToken(phoneNumberId: string): Promise<import("./types").VoiceTokenResponse>;
104
+ uploadInboxMedia(phoneNumberId: string, formData: FormData): Promise<import("./types").UploadInboxMediaResponse>;
105
+ getInboxThreads(phoneNumberId: string, params?: {
106
+ status?: "active" | "archived";
107
+ }): Promise<import("./types").InboxThreadsResponse>;
108
+ getInboxCalls(phoneNumberId: string): Promise<import("./types").InboxCallsResponse>;
109
+ getInboxThreadMessages(threadId: string): Promise<import("./types").InboxMessagesResponse>;
110
+ createInboxCall(payload: import("./types").CreateInboxCallPayload): Promise<import("./types").InboxCallEvent>;
111
+ sendInboxMessage(phoneNumberId: string, body: import("./types").SendInboxMessagePayload): Promise<import("./types").SendInboxMessageResponse>;
112
+ markInboxThreadRead(threadId: string): Promise<{
113
+ ok: true;
114
+ }>;
115
+ markInboxThreadUnread(threadId: string): Promise<{
116
+ ok: true;
117
+ }>;
118
+ updateInboxThreadStatus(threadId: string, status: "active" | "archived"): Promise<{
119
+ ok: true;
120
+ status: string;
121
+ }>;
122
+ deleteInboxThread(threadId: string): Promise<{
123
+ ok: true;
124
+ }>;
125
+ getMessageSnippets(): Promise<import("./types").MessageSnippetsResponse>;
126
+ createMessageSnippet(body: import("./types").CreateMessageSnippetPayload): Promise<{
127
+ snippet: import("./types").MessageSnippet;
128
+ }>;
129
+ updateMessageSnippet(id: string, body: import("./types").UpdateMessageSnippetPayload): Promise<{
130
+ snippet: import("./types").MessageSnippet;
131
+ }>;
132
+ deleteMessageSnippet(id: string): Promise<{
133
+ ok: true;
134
+ }>;
98
135
  } | null>;
99
136
  export declare function useApiClient(): ApiClient;
100
137
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAIzC,eAAO,MAAM,WAAW;;WASitC,CAAC;YAA6C,CAAC;aAAoB,CAAC;cAAqB,CAAC;cAAqB,CAAC;cAAyD,CAAC;gBAAuB,CAAC;mBAA4B,CAAC;cAAuB,CAAC;cAAqB,CAAC;iBAAiD,CAAC;wBAAuC,CAAC;;;cAAkvC,CAAC;uBAA8B,CAAC;aAAoB,CAAC;cAAqB,CAAC;eAAsB,CAAC;kBAAyB,CAAC;;;;;;aAA8wB,CAAC;;;;;cAAub,CAAC;uBAA8B,CAAC;cAAqB,CAAC;kBAAyB,CAAC;gBAAuB,CAAC;;;;;;;;;;;;;;gBAA2yD,CAAC;;;sBAAke,CAAC;;;;;;;cAAm8B,CAAC;;;;;;;oBAAm5B,CAAC;;;;;;;;;;cAA2lD,CAAC;;;;;;;;;;YAA0+B,CAAC;;;;;;SAT52V,CAAA;AAE9C,wBAAgB,YAAY,IAAI,SAAS,CAMxC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAIzC,eAAO,MAAM,WAAW;;WAS+jF,CAAC;YAA6C,CAAC;aAAoB,CAAC;cAAqB,CAAC;cAAqB,CAAC;cAAyD,CAAC;gBAAuB,CAAC;mBAA4B,CAAC;cAAuB,CAAC;cAAqB,CAAC;iBAAiD,CAAC;wBAAuC,CAAC;;;;;;;cAA65D,CAAC;uBAA8B,CAAC;aAAoB,CAAC;cAAqB,CAAC;eAAsB,CAAC;kBAAyB,CAAC;;;;;;aAA8wB,CAAC;;;;;cAAub,CAAC;uBAA8B,CAAC;cAAqB,CAAC;kBAAyB,CAAC;gBAAuB,CAAC;;;;;;;;;;;;;;gBAA2yD,CAAC;;;sBAAke,CAAC;;;;;;;cAAm8B,CAAC;;;;;;;oBAAm5B,CAAC;;;;;;;;;;cAA2lD,CAAC;;;;;;;;;;YAA0+B,CAAC;;;;;;;;;;cAAyoF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAT/gf,CAAA;AAE9C,wBAAgB,YAAY,IAAI,SAAS,CAMxC"}
@@ -1,5 +1,7 @@
1
1
  export { useLeads } from './use-leads';
2
2
  export type { GetLeadSubmissionsParams } from './use-leads';
3
+ export { useContactLeadSubmissions } from './use-contact-lead-submissions';
4
+ export { useContactMeetings } from './use-contact-meetings';
3
5
  export { useTasks } from './use-tasks';
4
6
  export type { GetTasksParams } from './use-tasks';
5
7
  export { useMeetings } from './use-meetings';
@@ -9,4 +11,16 @@ export type { GetPipelinesParams } from './use-pipelines';
9
11
  export { useStages } from './use-stages';
10
12
  export { useTeamMembers } from './use-team-members';
11
13
  export { useMe } from './use-me';
14
+ export { usePhoneNumbers } from './use-phone-numbers';
15
+ export { useInboxThreads } from './use-inbox-threads';
16
+ export type { GetInboxThreadsParams } from './use-inbox-threads';
17
+ export { useInboxMessages } from './use-inbox-messages';
18
+ export { useInboxCalls } from './use-inbox-calls';
19
+ export type { UseInboxCallsOptions } from './use-inbox-calls';
20
+ export { useSendInboxMessage } from './use-send-inbox-message';
21
+ export { useMarkInboxThreadRead } from './use-mark-inbox-thread-read';
22
+ export { useMarkInboxThreadUnread } from './use-mark-inbox-thread-unread';
23
+ export { useUpdateInboxThreadStatus } from './use-update-inbox-thread-status';
24
+ export { useDeleteInboxThread } from './use-delete-inbox-thread';
25
+ export { useMessageSnippets } from './use-message-snippets';
12
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,YAAY,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,YAAY,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAA;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA"}
@@ -1,7 +1,19 @@
1
1
  export { useLeads } from './use-leads';
2
+ export { useContactLeadSubmissions } from './use-contact-lead-submissions';
3
+ export { useContactMeetings } from './use-contact-meetings';
2
4
  export { useTasks } from './use-tasks';
3
5
  export { useMeetings } from './use-meetings';
4
6
  export { usePipelines } from './use-pipelines';
5
7
  export { useStages } from './use-stages';
6
8
  export { useTeamMembers } from './use-team-members';
7
9
  export { useMe } from './use-me';
10
+ export { usePhoneNumbers } from './use-phone-numbers';
11
+ export { useInboxThreads } from './use-inbox-threads';
12
+ export { useInboxMessages } from './use-inbox-messages';
13
+ export { useInboxCalls } from './use-inbox-calls';
14
+ export { useSendInboxMessage } from './use-send-inbox-message';
15
+ export { useMarkInboxThreadRead } from './use-mark-inbox-thread-read';
16
+ export { useMarkInboxThreadUnread } from './use-mark-inbox-thread-unread';
17
+ export { useUpdateInboxThreadStatus } from './use-update-inbox-thread-status';
18
+ export { useDeleteInboxThread } from './use-delete-inbox-thread';
19
+ export { useMessageSnippets } from './use-message-snippets';
@@ -0,0 +1,4 @@
1
+ export declare function useContactLeadSubmissions(contactId: string | null, options?: {
2
+ enabled?: boolean;
3
+ }): import("@tanstack/react-query").UseQueryResult<import("..").ContactLeadSubmissionsResponse, Error>;
4
+ //# sourceMappingURL=use-contact-lead-submissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-contact-lead-submissions.d.ts","sourceRoot":"","sources":["../../src/hooks/use-contact-lead-submissions.ts"],"names":[],"mappings":"AAGA,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,sGAQhC"}
@@ -0,0 +1,10 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ export function useContactLeadSubmissions(contactId, options) {
4
+ const client = useApiClient();
5
+ return useQuery({
6
+ queryKey: ['contact-lead-submissions', contactId],
7
+ queryFn: () => client.getContactLeadSubmissions(contactId),
8
+ enabled: (options?.enabled !== false) && !!contactId,
9
+ });
10
+ }
@@ -0,0 +1,6 @@
1
+ export declare function useContactMeetings(contactId: string | null, options?: {
2
+ enabled?: boolean;
3
+ }): import("@tanstack/react-query").UseQueryResult<{
4
+ meetings: import("..").Meeting[];
5
+ }, Error>;
6
+ //# sourceMappingURL=use-contact-meetings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-contact-meetings.d.ts","sourceRoot":"","sources":["../../src/hooks/use-contact-meetings.ts"],"names":[],"mappings":"AAGA,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE;;UAQhC"}
@@ -0,0 +1,10 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ export function useContactMeetings(contactId, options) {
4
+ const client = useApiClient();
5
+ return useQuery({
6
+ queryKey: ['contact-meetings', contactId],
7
+ queryFn: () => client.getContactMeetings(contactId),
8
+ enabled: (options?.enabled !== false) && !!contactId,
9
+ });
10
+ }
@@ -0,0 +1,4 @@
1
+ export declare function useDeleteInboxThread(): import("@tanstack/react-query").UseMutationResult<{
2
+ ok: true;
3
+ }, Error, string, unknown>;
4
+ //# sourceMappingURL=use-delete-inbox-thread.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-delete-inbox-thread.d.ts","sourceRoot":"","sources":["../../src/hooks/use-delete-inbox-thread.ts"],"names":[],"mappings":"AAGA,wBAAgB,oBAAoB;;2BASnC"}
@@ -0,0 +1,12 @@
1
+ import { useMutation, useQueryClient } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ export function useDeleteInboxThread() {
4
+ const client = useApiClient();
5
+ const queryClient = useQueryClient();
6
+ return useMutation({
7
+ mutationFn: (threadId) => client.deleteInboxThread(threadId),
8
+ onSuccess: () => {
9
+ queryClient.invalidateQueries({ queryKey: ['inbox', 'threads'] });
10
+ },
11
+ });
12
+ }
@@ -0,0 +1,6 @@
1
+ export type UseInboxCallsOptions = {
2
+ /** When false, the query is disabled (e.g. when Calls tab is not active). */
3
+ enabled?: boolean;
4
+ };
5
+ export declare function useInboxCalls(phoneNumberId: string | undefined, options?: UseInboxCallsOptions): import("@tanstack/react-query").UseQueryResult<import("..").InboxCallsResponse, Error>;
6
+ //# sourceMappingURL=use-inbox-calls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-inbox-calls.d.ts","sourceRoot":"","sources":["../../src/hooks/use-inbox-calls.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,oBAAoB,GAAG;IACjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,OAAO,CAAC,EAAE,oBAAoB,0FAS/B"}
@@ -0,0 +1,11 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ export function useInboxCalls(phoneNumberId, options) {
4
+ const client = useApiClient();
5
+ const enabled = options?.enabled !== false && Boolean(phoneNumberId);
6
+ return useQuery({
7
+ queryKey: ['inbox', 'calls', phoneNumberId],
8
+ queryFn: () => client.getInboxCalls(phoneNumberId),
9
+ enabled,
10
+ });
11
+ }
@@ -0,0 +1,2 @@
1
+ export declare function useInboxMessages(threadId: string | undefined): import("@tanstack/react-query").UseQueryResult<import("..").InboxMessagesResponse, Error>;
2
+ //# sourceMappingURL=use-inbox-messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-inbox-messages.d.ts","sourceRoot":"","sources":["../../src/hooks/use-inbox-messages.ts"],"names":[],"mappings":"AAGA,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,6FAS5D"}
@@ -0,0 +1,12 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ export function useInboxMessages(threadId) {
4
+ const client = useApiClient();
5
+ return useQuery({
6
+ queryKey: ['inbox', 'messages', threadId],
7
+ queryFn: () => client.getInboxThreadMessages(threadId),
8
+ enabled: Boolean(threadId),
9
+ refetchInterval: threadId ? 30000 : false, // fallback; realtime drives updates
10
+ refetchOnWindowFocus: true,
11
+ });
12
+ }
@@ -0,0 +1,5 @@
1
+ export type GetInboxThreadsParams = {
2
+ status?: 'active' | 'archived';
3
+ };
4
+ export declare function useInboxThreads(phoneNumberId: string | undefined, params?: GetInboxThreadsParams): import("@tanstack/react-query").UseQueryResult<import("..").InboxThreadsResponse, Error>;
5
+ //# sourceMappingURL=use-inbox-threads.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-inbox-threads.d.ts","sourceRoot":"","sources":["../../src/hooks/use-inbox-threads.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;CAC/B,CAAA;AAED,wBAAgB,eAAe,CAC7B,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,MAAM,CAAC,EAAE,qBAAqB,4FAQ/B"}
@@ -0,0 +1,10 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ export function useInboxThreads(phoneNumberId, params) {
4
+ const client = useApiClient();
5
+ return useQuery({
6
+ queryKey: ['inbox', 'threads', phoneNumberId, params?.status],
7
+ queryFn: () => client.getInboxThreads(phoneNumberId, params),
8
+ enabled: Boolean(phoneNumberId),
9
+ });
10
+ }
@@ -0,0 +1,7 @@
1
+ import type { InboxThreadsResponse } from '../types';
2
+ export declare function useMarkInboxThreadRead(): import("@tanstack/react-query").UseMutationResult<{
3
+ ok: true;
4
+ }, Error, string, {
5
+ previous: [readonly unknown[], InboxThreadsResponse | undefined][];
6
+ }>;
7
+ //# sourceMappingURL=use-mark-inbox-thread-read.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mark-inbox-thread-read.d.ts","sourceRoot":"","sources":["../../src/hooks/use-mark-inbox-thread-read.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAIpD,wBAAgB,sBAAsB;;;;GAkCrC"}
@@ -0,0 +1,34 @@
1
+ import { useMutation, useQueryClient } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ const THREADS_QUERY_KEY_PREFIX = ['inbox', 'threads'];
4
+ export function useMarkInboxThreadRead() {
5
+ const client = useApiClient();
6
+ const queryClient = useQueryClient();
7
+ return useMutation({
8
+ mutationFn: (threadId) => client.markInboxThreadRead(threadId),
9
+ onMutate: async (threadId) => {
10
+ const previous = queryClient.getQueriesData({
11
+ queryKey: THREADS_QUERY_KEY_PREFIX,
12
+ exact: false,
13
+ });
14
+ queryClient.setQueriesData({ queryKey: THREADS_QUERY_KEY_PREFIX, exact: false }, (data) => {
15
+ if (!data?.threads?.length)
16
+ return data;
17
+ return {
18
+ threads: data.threads.map((t) => t.id === threadId ? { ...t, unread_count: 0 } : t),
19
+ };
20
+ });
21
+ return { previous };
22
+ },
23
+ onError: (_err, _variables, context) => {
24
+ if (context?.previous) {
25
+ context.previous.forEach(([queryKey, data]) => {
26
+ queryClient.setQueryData(queryKey, data);
27
+ });
28
+ }
29
+ },
30
+ onSettled: () => {
31
+ queryClient.invalidateQueries({ queryKey: THREADS_QUERY_KEY_PREFIX });
32
+ },
33
+ });
34
+ }
@@ -0,0 +1,7 @@
1
+ import type { InboxThreadsResponse } from '../types';
2
+ export declare function useMarkInboxThreadUnread(): import("@tanstack/react-query").UseMutationResult<{
3
+ ok: true;
4
+ }, Error, string, {
5
+ previous: [readonly unknown[], InboxThreadsResponse | undefined][];
6
+ }>;
7
+ //# sourceMappingURL=use-mark-inbox-thread-unread.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mark-inbox-thread-unread.d.ts","sourceRoot":"","sources":["../../src/hooks/use-mark-inbox-thread-unread.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAIpD,wBAAgB,wBAAwB;;;;GAkCvC"}
@@ -0,0 +1,34 @@
1
+ import { useMutation, useQueryClient } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ const THREADS_QUERY_KEY_PREFIX = ['inbox', 'threads'];
4
+ export function useMarkInboxThreadUnread() {
5
+ const client = useApiClient();
6
+ const queryClient = useQueryClient();
7
+ return useMutation({
8
+ mutationFn: (threadId) => client.markInboxThreadUnread(threadId),
9
+ onMutate: async (threadId) => {
10
+ const previous = queryClient.getQueriesData({
11
+ queryKey: THREADS_QUERY_KEY_PREFIX,
12
+ exact: false,
13
+ });
14
+ queryClient.setQueriesData({ queryKey: THREADS_QUERY_KEY_PREFIX, exact: false }, (data) => {
15
+ if (!data?.threads?.length)
16
+ return data;
17
+ return {
18
+ threads: data.threads.map((t) => t.id === threadId ? { ...t, unread_count: (t.unread_count ?? 0) || 1 } : t),
19
+ };
20
+ });
21
+ return { previous };
22
+ },
23
+ onError: (_err, _variables, context) => {
24
+ if (context?.previous) {
25
+ context.previous.forEach(([queryKey, data]) => {
26
+ queryClient.setQueryData(queryKey, data);
27
+ });
28
+ }
29
+ },
30
+ onSettled: () => {
31
+ queryClient.invalidateQueries({ queryKey: THREADS_QUERY_KEY_PREFIX });
32
+ },
33
+ });
34
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Message snippets for the current org (GET /api/settings/messaging/snippets).
3
+ * Use in Settings Snippets section and Inbox snippet picker.
4
+ */
5
+ export declare function useMessageSnippets(): import("@tanstack/react-query").UseQueryResult<import("..").MessageSnippetsResponse, Error>;
6
+ //# sourceMappingURL=use-message-snippets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-message-snippets.d.ts","sourceRoot":"","sources":["../../src/hooks/use-message-snippets.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,kBAAkB,gGAMjC"}
@@ -0,0 +1,13 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ /**
4
+ * Message snippets for the current org (GET /api/settings/messaging/snippets).
5
+ * Use in Settings Snippets section and Inbox snippet picker.
6
+ */
7
+ export function useMessageSnippets() {
8
+ const client = useApiClient();
9
+ return useQuery({
10
+ queryKey: ['message-snippets'],
11
+ queryFn: () => client.getMessageSnippets(),
12
+ });
13
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Phone numbers for the org (GET /api/phone-numbers).
3
+ * Use for header phone-number switch; filter by current user id in assignments
4
+ * to show only numbers assigned to the current user (useMe().data.user.id).
5
+ */
6
+ export declare function usePhoneNumbers(): import("@tanstack/react-query").UseQueryResult<import("..").PhoneNumbersResponse, Error>;
7
+ //# sourceMappingURL=use-phone-numbers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-phone-numbers.d.ts","sourceRoot":"","sources":["../../src/hooks/use-phone-numbers.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,eAAe,6FAM9B"}
@@ -0,0 +1,14 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ /**
4
+ * Phone numbers for the org (GET /api/phone-numbers).
5
+ * Use for header phone-number switch; filter by current user id in assignments
6
+ * to show only numbers assigned to the current user (useMe().data.user.id).
7
+ */
8
+ export function usePhoneNumbers() {
9
+ const client = useApiClient();
10
+ return useQuery({
11
+ queryKey: ['phone-numbers'],
12
+ queryFn: () => client.getPhoneNumbers(),
13
+ });
14
+ }
@@ -0,0 +1,12 @@
1
+ import type { InboxMessagesResponse, InboxThreadsResponse, SendInboxMessagePayload } from '../types';
2
+ export declare function useSendInboxMessage(): import("@tanstack/react-query").UseMutationResult<import("..").SendInboxMessageResponse, Error, {
3
+ phoneNumberId: string;
4
+ body: SendInboxMessagePayload;
5
+ }, {
6
+ previousMessages: null;
7
+ previousThreads?: undefined;
8
+ } | {
9
+ previousMessages: readonly [readonly ["inbox", "messages", string], InboxMessagesResponse] | null;
10
+ previousThreads: [readonly unknown[], InboxThreadsResponse | undefined][];
11
+ }>;
12
+ //# sourceMappingURL=use-send-inbox-message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-send-inbox-message.d.ts","sourceRoot":"","sources":["../../src/hooks/use-send-inbox-message.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,UAAU,CAAA;AAkDjB,wBAAgB,mBAAmB;mBAQd,MAAM;UACf,uBAAuB;;;;;;;GA2ElC"}
@@ -0,0 +1,113 @@
1
+ import { useMutation, useQueryClient } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ const THREADS_QUERY_KEY_PREFIX = ['inbox', 'threads'];
4
+ const MESSAGES_QUERY_KEY_PREFIX = ['inbox', 'messages'];
5
+ function buildOptimisticMessage(threadId, body, tempId) {
6
+ const occurredAt = new Date().toISOString();
7
+ const rawMediaUrl = Array.isArray(body.media_url)
8
+ ? body.media_url[0] ?? null
9
+ : body.media_url ?? null;
10
+ const hasAttachmentMetas = Boolean(body.attachment_metas?.length);
11
+ // Match backend: only show media_url when no attachment_metas, or first media is external (e.g. GIF)
12
+ const mediaUrl = rawMediaUrl && (!hasAttachmentMetas || body.first_media_is_external) ? rawMediaUrl : null;
13
+ // For upload-only: use first media URL as display URL for the first attachment so the image shows before send completes
14
+ const firstAttachmentDisplayUrl = hasAttachmentMetas && !body.first_media_is_external && rawMediaUrl ? rawMediaUrl : null;
15
+ const attachments = body.attachment_metas?.map((m, i) => ({
16
+ id: `optimistic-att-${tempId}-${i}`,
17
+ message_id: tempId,
18
+ org_id: '',
19
+ file_path: m.file_path,
20
+ file_name: m.file_name,
21
+ mime_type: m.mime_type,
22
+ file_size: 0,
23
+ sort_order: i,
24
+ signed_url: i === 0 ? firstAttachmentDisplayUrl : null,
25
+ }));
26
+ return {
27
+ id: tempId,
28
+ thread_id: threadId,
29
+ org_id: '',
30
+ direction: 'outbound',
31
+ body: body.body ?? '',
32
+ occurred_at: occurredAt,
33
+ status: 'sending',
34
+ provider_message_id: null,
35
+ phone_number_id: null,
36
+ user_id: null,
37
+ card_id: body.card_id ?? null,
38
+ contact_id: body.contact_id ?? null,
39
+ media_url: mediaUrl ?? undefined,
40
+ attachments: attachments?.length ? attachments : undefined,
41
+ };
42
+ }
43
+ export function useSendInboxMessage() {
44
+ const client = useApiClient();
45
+ const queryClient = useQueryClient();
46
+ return useMutation({
47
+ mutationFn: ({ phoneNumberId, body, }) => client.sendInboxMessage(phoneNumberId, body),
48
+ onMutate: async ({ body }) => {
49
+ const threadId = body.thread_id;
50
+ if (!threadId)
51
+ return { previousMessages: null };
52
+ const messagesKey = [...MESSAGES_QUERY_KEY_PREFIX, threadId];
53
+ const previousMessages = queryClient.getQueryData(messagesKey);
54
+ const tempId = `optimistic-${Date.now()}`;
55
+ const optimisticMessage = buildOptimisticMessage(threadId, body, tempId);
56
+ queryClient.setQueryData(messagesKey, (data) => {
57
+ const messages = data?.messages ?? [];
58
+ return { messages: [...messages, optimisticMessage] };
59
+ });
60
+ const previousThreads = queryClient.getQueriesData({
61
+ queryKey: THREADS_QUERY_KEY_PREFIX,
62
+ exact: false,
63
+ });
64
+ queryClient.setQueriesData({ queryKey: THREADS_QUERY_KEY_PREFIX, exact: false }, (data) => {
65
+ if (!data?.threads?.length)
66
+ return data;
67
+ return {
68
+ threads: data.threads.map((t) => {
69
+ if (t.id !== threadId)
70
+ return t;
71
+ return {
72
+ ...t,
73
+ last_message_at: optimisticMessage.occurred_at,
74
+ last_message_preview: optimisticMessage.body?.slice(0, 80) ||
75
+ (optimisticMessage.media_url ? 'Attachment' : null) ||
76
+ t.last_message_preview,
77
+ updated_at: optimisticMessage.occurred_at,
78
+ };
79
+ }),
80
+ };
81
+ });
82
+ return {
83
+ previousMessages: previousMessages
84
+ ? [messagesKey, previousMessages]
85
+ : null,
86
+ previousThreads,
87
+ };
88
+ },
89
+ onError: (_err, _variables, context) => {
90
+ if (context?.previousMessages) {
91
+ const [queryKey, data] = context.previousMessages;
92
+ queryClient.setQueryData(queryKey, data);
93
+ }
94
+ if (context?.previousThreads?.length) {
95
+ context.previousThreads.forEach(([queryKey, data]) => {
96
+ queryClient.setQueryData(queryKey, data);
97
+ });
98
+ }
99
+ },
100
+ onSuccess: (data, { phoneNumberId, body }) => {
101
+ // Invalidate so refetch runs; do not remove the optimistic message here — the refetch
102
+ // replaces the cache with server data, avoiding a flicker where the message disappears
103
+ // before the real one appears.
104
+ queryClient.invalidateQueries({ queryKey: ['inbox', 'threads', phoneNumberId] });
105
+ if (body.thread_id) {
106
+ queryClient.invalidateQueries({ queryKey: ['inbox', 'messages', body.thread_id] });
107
+ }
108
+ if (data?.threadId) {
109
+ queryClient.invalidateQueries({ queryKey: ['inbox', 'messages', data.threadId] });
110
+ }
111
+ },
112
+ });
113
+ }
@@ -0,0 +1,11 @@
1
+ import type { InboxThreadsResponse } from '../types';
2
+ export declare function useUpdateInboxThreadStatus(): import("@tanstack/react-query").UseMutationResult<{
3
+ ok: true;
4
+ status: string;
5
+ }, Error, {
6
+ threadId: string;
7
+ status: "active" | "archived";
8
+ }, {
9
+ previous: [readonly unknown[], InboxThreadsResponse | undefined][];
10
+ }>;
11
+ //# sourceMappingURL=use-update-inbox-thread-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-update-inbox-thread-status.d.ts","sourceRoot":"","sources":["../../src/hooks/use-update-inbox-thread-status.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAIpD,wBAAgB,0BAA0B;;;;cAQ1B,MAAM;YACR,QAAQ,GAAG,UAAU;;;GA+BlC"}
@@ -0,0 +1,34 @@
1
+ import { useMutation, useQueryClient } from '@tanstack/react-query';
2
+ import { useApiClient } from '../context';
3
+ const THREADS_QUERY_KEY_PREFIX = ['inbox', 'threads'];
4
+ export function useUpdateInboxThreadStatus() {
5
+ const client = useApiClient();
6
+ const queryClient = useQueryClient();
7
+ return useMutation({
8
+ mutationFn: ({ threadId, status, }) => client.updateInboxThreadStatus(threadId, status),
9
+ onMutate: async ({ threadId, status }) => {
10
+ const previous = queryClient.getQueriesData({
11
+ queryKey: THREADS_QUERY_KEY_PREFIX,
12
+ exact: false,
13
+ });
14
+ queryClient.setQueriesData({ queryKey: THREADS_QUERY_KEY_PREFIX, exact: false }, (data) => {
15
+ if (!data?.threads?.length)
16
+ return data;
17
+ return {
18
+ threads: data.threads.map((t) => t.id === threadId ? { ...t, status } : t),
19
+ };
20
+ });
21
+ return { previous };
22
+ },
23
+ onError: (_err, _variables, context) => {
24
+ if (context?.previous) {
25
+ context.previous.forEach(([queryKey, data]) => {
26
+ queryClient.setQueryData(queryKey, data);
27
+ });
28
+ }
29
+ },
30
+ onSettled: () => {
31
+ queryClient.invalidateQueries({ queryKey: THREADS_QUERY_KEY_PREFIX });
32
+ },
33
+ });
34
+ }
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  export { createApiClient } from './client';
5
5
  export type { ApiClientConfig, ApiClient } from './client';
6
6
  export { ApiProvider, useApiClient } from './context';
7
- export type { FlattenedLead, LeadSubmissionsResponse, TaskStatus, TaskListItem, TaskCallOutcomeType, TaskChatOutcomeType, TaskOutcomeType, MeetingStatus, MeetingProvider, MeetingMode, Meeting, CreateMeetingPayload, PipelineCard, PostMeetingBookedPromptResponse, Pipeline, PipelineStage, TeamMember, TeamMembersResponse, MeUser, MeMembership, MeOrganization, MeResponse, RescheduleMeetingPayload, GetAvailabilitySlotsParams, GetAvailabilitySlotsResponse, AvailabilitySlot, EventType, EventTypeHost, } from './types';
8
- export { useLeads, useTasks, useMeetings, usePipelines, useStages, useTeamMembers, useMe } from './hooks';
9
- export type { GetLeadSubmissionsParams, GetTasksParams, GetMeetingsParams, GetPipelinesParams, } from './hooks';
7
+ export type { FlattenedLead, LeadSubmissionsResponse, ContactLeadSubmission, ContactLeadSubmissionsResponse, TaskStatus, TaskListItem, TaskCallOutcomeType, TaskChatOutcomeType, TaskOutcomeType, MeetingStatus, MeetingProvider, MeetingMode, Meeting, CreateMeetingPayload, PipelineCard, PostMeetingBookedPromptResponse, Pipeline, PipelineStage, TeamMember, TeamMembersResponse, MeUser, MeMembership, MeOrganization, MeResponse, RescheduleMeetingPayload, GetAvailabilitySlotsParams, GetAvailabilitySlotsResponse, AvailabilitySlot, EventType, EventTypeHost, PhoneNumberRecord, PhoneNumberAssignmentRecord, PhoneNumbersResponse, InboxThreadListItem, InboxThreadsResponse, InboxMessageAttachment, InboxMessage, InboxMessagesResponse, InboxCallEvent, InboxCallListItem, InboxCallsResponse, CreateInboxCallPayload, VoiceTokenResponse, UploadInboxMediaResponse, SendInboxMessagePayload, SendInboxMessageResponse, MessageSnippet, MessageSnippetsResponse, CreateMessageSnippetPayload, UpdateMessageSnippetPayload, } from './types';
8
+ export { useLeads, useContactLeadSubmissions, useContactMeetings, useTasks, useMeetings, usePipelines, useStages, useTeamMembers, useMe, usePhoneNumbers, useInboxThreads, useInboxMessages, useInboxCalls, useSendInboxMessage, useMarkInboxThreadRead, useMarkInboxThreadUnread, useUpdateInboxThreadStatus, useDeleteInboxThread, useMessageSnippets, } from './hooks';
9
+ export type { GetLeadSubmissionsParams, GetTasksParams, GetMeetingsParams, GetPipelinesParams, GetInboxThreadsParams, UseInboxCallsOptions, } from './hooks';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAG1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAGrD,YAAY,EACV,aAAa,EACb,uBAAuB,EACvB,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,EACX,OAAO,EACP,oBAAoB,EACpB,YAAY,EACZ,+BAA+B,EAC/B,QAAQ,EACR,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,MAAM,EACN,YAAY,EACZ,cAAc,EACd,UAAU,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,SAAS,EACT,aAAa,GACd,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACzG,YAAY,EACV,wBAAwB,EACxB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAG1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAGrD,YAAY,EACV,aAAa,EACb,uBAAuB,EACvB,qBAAqB,EACrB,8BAA8B,EAC9B,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,EACX,OAAO,EACP,oBAAoB,EACpB,YAAY,EACZ,+BAA+B,EAC/B,QAAQ,EACR,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,MAAM,EACN,YAAY,EACZ,cAAc,EACd,UAAU,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,cAAc,EACd,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,SAAS,CAAA;AAGhB,OAAO,EACL,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,SAAS,EACT,cAAc,EACd,KAAK,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,YAAY,EACV,wBAAwB,EACxB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -6,4 +6,4 @@ export { createApiClient } from './client';
6
6
  // Context (React)
7
7
  export { ApiProvider, useApiClient } from './context';
8
8
  // Hooks
9
- export { useLeads, useTasks, useMeetings, usePipelines, useStages, useTeamMembers, useMe } from './hooks';
9
+ export { useLeads, useContactLeadSubmissions, useContactMeetings, useTasks, useMeetings, usePipelines, useStages, useTeamMembers, useMe, usePhoneNumbers, useInboxThreads, useInboxMessages, useInboxCalls, useSendInboxMessage, useMarkInboxThreadRead, useMarkInboxThreadUnread, useUpdateInboxThreadStatus, useDeleteInboxThread, useMessageSnippets, } from './hooks';
package/dist/types.d.ts CHANGED
@@ -81,6 +81,21 @@ export interface LeadSubmissionsResponse {
81
81
  offset: number;
82
82
  };
83
83
  }
84
+ export interface ContactLeadSubmission {
85
+ id: string;
86
+ created_at: string;
87
+ status: string;
88
+ form_id: string;
89
+ card_id: string | null;
90
+ primary_contact_id: string;
91
+ lead_forms: {
92
+ id: string;
93
+ name: string;
94
+ } | null;
95
+ }
96
+ export interface ContactLeadSubmissionsResponse {
97
+ submissions: ContactLeadSubmission[];
98
+ }
84
99
  export type TaskStatus = 'todo' | 'in_progress' | 'completed' | 'cancelled';
85
100
  export interface TaskListItem {
86
101
  id: string;
@@ -306,4 +321,198 @@ export interface EventType {
306
321
  }>;
307
322
  metadata?: Record<string, unknown>;
308
323
  }
324
+ export interface PhoneNumberAssignmentRecord {
325
+ id: string;
326
+ phone_number_id: string;
327
+ user_id: string;
328
+ org_id: string;
329
+ is_primary: boolean;
330
+ can_use_for_calls: boolean;
331
+ can_use_for_sms: boolean;
332
+ assigned_at: string;
333
+ assigned_by: string | null;
334
+ }
335
+ export interface PhoneNumberRecord {
336
+ id: string;
337
+ org_id: string;
338
+ phone_number: string;
339
+ friendly_name: string | null;
340
+ description: string | null;
341
+ twilio_phone_number_sid: string | null;
342
+ communication_provider_id: string | null;
343
+ is_active: boolean;
344
+ is_shared: boolean;
345
+ business_hours_enabled?: boolean;
346
+ timezone?: string;
347
+ weekly_schedule?: unknown[];
348
+ overrides?: unknown[];
349
+ created_at: string;
350
+ updated_at: string;
351
+ phone_number_assignments?: PhoneNumberAssignmentRecord[];
352
+ }
353
+ export interface PhoneNumbersResponse {
354
+ phone_numbers: PhoneNumberRecord[];
355
+ }
356
+ /** Single conversation thread for inbox list (with contact preview and last message). */
357
+ export interface InboxThreadListItem {
358
+ id: string;
359
+ org_id: string;
360
+ contact_id: string;
361
+ channel: 'sms' | 'email' | 'whatsapp';
362
+ phone_number: string | null;
363
+ status: string;
364
+ last_message_at: string | null;
365
+ created_at: string;
366
+ updated_at: string;
367
+ /** Contact display name (first_name + last_name or phone) for list display */
368
+ contact_display_name?: string | null;
369
+ /** Contact phone number (for SMS threads) */
370
+ contact_phone_number?: string | null;
371
+ /** Contact email (for variable resolution) */
372
+ contact_email?: string | null;
373
+ /** Last message body snippet for preview */
374
+ last_message_preview?: string | null;
375
+ /** Optional unread count for this thread */
376
+ unread_count?: number;
377
+ }
378
+ export interface InboxThreadsResponse {
379
+ threads: InboxThreadListItem[];
380
+ }
381
+ /** Single attachment on a message (from message_attachments). */
382
+ export interface InboxMessageAttachment {
383
+ id: string;
384
+ message_id: string;
385
+ org_id: string;
386
+ file_path: string;
387
+ file_name: string;
388
+ mime_type: string;
389
+ file_size: number;
390
+ sort_order: number;
391
+ /** Signed URL for display/download; populated by GET thread messages. */
392
+ signed_url?: string | null;
393
+ }
394
+ /** Single message in a thread. */
395
+ export interface InboxMessage {
396
+ id: string;
397
+ thread_id: string;
398
+ org_id: string;
399
+ direction: 'inbound' | 'outbound';
400
+ body: string;
401
+ occurred_at: string;
402
+ status: string;
403
+ provider_message_id: string | null;
404
+ phone_number_id: string | null;
405
+ user_id: string | null;
406
+ card_id: string | null;
407
+ contact_id: string | null;
408
+ created_at?: string;
409
+ /** Optional URL for MMS media (e.g. GIF). Shown as image in thread. */
410
+ media_url?: string | null;
411
+ /** Attachments (MMS media) stored in inbox-attachments; includes signed_url when returned by GET messages. */
412
+ attachments?: InboxMessageAttachment[];
413
+ }
414
+ /** Single call event in a thread (from call_events table). */
415
+ export interface InboxCallEvent {
416
+ id: string;
417
+ thread_id: string;
418
+ org_id: string;
419
+ contact_id: string | null;
420
+ phone_number_id: string | null;
421
+ user_id: string | null;
422
+ twilio_call_sid: string | null;
423
+ direction: 'inbound' | 'outbound';
424
+ status: string;
425
+ duration_sec: number | null;
426
+ recording_url: string | null;
427
+ /** Twilio AMD: human, machine, fax, etc. Used to show "Voicemail" when machine/fax. */
428
+ answered_by?: string | null;
429
+ /** Full transcript from recording (e.g. Deepgram). */
430
+ transcript_text?: string | null;
431
+ /** Short AI-generated call summary. */
432
+ call_summary?: string | null;
433
+ /** AI-generated next steps (array of strings). */
434
+ call_summary_next_steps?: string[] | null;
435
+ occurred_at: string;
436
+ created_at?: string;
437
+ updated_at?: string;
438
+ }
439
+ export interface InboxMessagesResponse {
440
+ messages: InboxMessage[];
441
+ /** Call events in this thread; merge with messages by occurred_at for timeline. */
442
+ call_events?: InboxCallEvent[];
443
+ }
444
+ /** Call event with optional contact fields (from GET phone-numbers/[id]/calls). */
445
+ export interface InboxCallListItem extends InboxCallEvent {
446
+ contact_display_name?: string | null;
447
+ contact_phone_number?: string | null;
448
+ contact_email?: string | null;
449
+ }
450
+ export interface InboxCallsResponse {
451
+ calls: InboxCallListItem[];
452
+ }
453
+ /** Payload for creating an outbound call event (POST /api/inbox/calls). */
454
+ export interface CreateInboxCallPayload {
455
+ thread_id: string;
456
+ phone_number_id?: string;
457
+ }
458
+ /** Response from POST /api/phone-numbers/[id]/voice-token (Twilio Voice Access Token). */
459
+ export interface VoiceTokenResponse {
460
+ token: string;
461
+ fromNumber: string;
462
+ }
463
+ /** Metadata for one outbound attachment (from upload-media); used to persist message_attachments. */
464
+ export interface OutboundAttachmentMeta {
465
+ file_path: string;
466
+ file_name: string;
467
+ mime_type: string;
468
+ }
469
+ /** Response from POST /api/phone-numbers/[id]/upload-media (signed URLs + attachment metadata). */
470
+ export interface UploadInboxMediaResponse {
471
+ urls: string[];
472
+ attachments?: OutboundAttachmentMeta[];
473
+ }
474
+ /** Payload for sending an outbound message from an inbox. */
475
+ export interface SendInboxMessagePayload {
476
+ /** Recipient E.164 phone number */
477
+ to: string;
478
+ /** Message body (required by Twilio; use empty string when sending only media) */
479
+ body: string;
480
+ /** Optional: MMS media URL(s), e.g. GIF from GIPHY. Sent via Twilio MediaUrl. */
481
+ media_url?: string | string[];
482
+ /** Optional: attachment metadata from upload-media; persisted as message_attachments so UI shows all images. */
483
+ attachment_metas?: OutboundAttachmentMeta[];
484
+ /** When true, the first media_url is external (e.g. GIF); store it in message.media_url even when attachment_metas exist. */
485
+ first_media_is_external?: boolean;
486
+ /** Optional: link to existing thread (avoids duplicate thread creation) */
487
+ thread_id?: string;
488
+ /** Optional: contact id (if known) */
489
+ contact_id?: string;
490
+ /** Optional: card id to associate message with */
491
+ card_id?: string;
492
+ }
493
+ export interface SendInboxMessageResponse {
494
+ success: boolean;
495
+ messageId?: string;
496
+ threadId?: string;
497
+ error?: string;
498
+ }
499
+ export interface MessageSnippet {
500
+ id: string;
501
+ org_id: string;
502
+ name: string;
503
+ body: string;
504
+ created_at: string;
505
+ updated_at: string;
506
+ }
507
+ export interface MessageSnippetsResponse {
508
+ snippets: MessageSnippet[];
509
+ }
510
+ export interface CreateMessageSnippetPayload {
511
+ name: string;
512
+ body?: string;
513
+ }
514
+ export interface UpdateMessageSnippetPayload {
515
+ name?: string;
516
+ body?: string;
517
+ }
309
518
  //# sourceMappingURL=types.d.ts.map
@@ -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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workhive/api",
3
- "version": "1.0.1",
3
+ "version": "1.1.1",
4
4
  "description": "Shared API client, types, and hooks for WorkHive SaaS and mobile",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",