microsoft-graph-client 1.0.33 → 1.0.34

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.
@@ -25,39 +25,132 @@ export class MessagesApi extends BaseApi {
25
25
  return this.client.api(`/chats/${params.chatId}/messages/${params.messageId}`).get();
26
26
  }
27
27
  /**
28
- * Get messages from a chat.
28
+ * Get messages from a chat. Returns a flat array of `ChatMessage`.
29
+ *
30
+ * Backward-compat method: prefer `listMessages` for new code, which exposes
31
+ * pagination metadata and a richer return shape.
32
+ *
33
+ * **Bug fix history**: this method previously built the OData filter
34
+ * `from/user/id eq '<id>'` for the `fromUser` param. Graph rejects this
35
+ * with "The entity property 'user/id' and operationKind 'Equal' is not
36
+ * allowed in $filter query." (HTTP 400). The filter is now applied
37
+ * client-side after fetching the page — see the doc on `listMessages`
38
+ * for the full reasoning.
29
39
  */
30
40
  async getChatMessages(params) {
31
- let query = this.client
32
- .api(`/chats/${params.chatId}/messages`)
33
- .top(params.limit || 20)
34
- .orderby('createdDateTime desc');
35
- if (params.fromUser) {
36
- query = query.filter(`from/user/id eq '${params.fromUser}'`);
37
- }
38
- const response = (await query.get());
39
- let messages = response?.value || [];
40
- // Client-side filtering for date ranges
41
+ const result = await this.listMessages({
42
+ chatId: params.chatId,
43
+ limit: params.limit,
44
+ fromUser: params.fromUser,
45
+ });
46
+ let messages = result.messages;
47
+ // Client-side date filtering preserved for backward compat with the old
48
+ // `from`/`to` params. New code should use `listMessages({ since })` for
49
+ // server-side date filtering via `lastModifiedDateTime gt`.
41
50
  if ((params.from || params.to) && messages.length > 0) {
42
51
  messages = messages.filter((message) => {
43
52
  if (!message.createdDateTime)
44
53
  return true;
45
54
  const messageDate = new Date(message.createdDateTime);
46
- if (params.from) {
47
- const fromDate = new Date(params.from);
48
- if (messageDate <= fromDate)
49
- return false;
50
- }
51
- if (params.to) {
52
- const toDate = new Date(params.to);
53
- if (messageDate >= toDate)
54
- return false;
55
- }
55
+ if (params.from && messageDate <= new Date(params.from))
56
+ return false;
57
+ if (params.to && messageDate >= new Date(params.to))
58
+ return false;
56
59
  return true;
57
60
  });
58
61
  }
59
62
  return messages;
60
63
  }
64
+ /**
65
+ * List messages in a chat with caller-driven pagination.
66
+ *
67
+ * Returns one page plus a `nextLink` token. The caller passes the token
68
+ * back as `nextLink` on a follow-up call to fetch the next page. This
69
+ * method does NOT loop through pages.
70
+ *
71
+ * **Server-side capabilities of `/chats/{id}/messages`** (verified
72
+ * empirically — Microsoft's docs are vague on most of this):
73
+ *
74
+ * - `$top` ✓ (works, max ~50)
75
+ * - `$orderby=createdDateTime desc` ✓ (default)
76
+ * - `$filter=lastModifiedDateTime gt|lt <iso>` ✓ — the only content-ish
77
+ * filter that works
78
+ * - `$search` ✗ — "Query option 'Search' is not allowed"
79
+ * - `$filter=contains(body/content, 'X')` ✗ — "Only binary operation
80
+ * expressions are allowed"
81
+ * - `$filter=from/user/id eq 'X'` ✗ — "operationKind 'Equal' is not
82
+ * allowed"
83
+ *
84
+ * Microsoft's recommended approach for keyword search within a chat is:
85
+ * use the global `/search/query` endpoint and filter `chatId` client-side.
86
+ * That global path is implemented in `messages.search()`. This local path
87
+ * is for chronological reading of a chat with optional date filter.
88
+ *
89
+ * **The `containing` and `fromUser` params are client-side filters** —
90
+ * they keep only messages from the returned page that match. The
91
+ * `scanned` and `matched` fields in the result tell the caller how many
92
+ * messages were inspected vs how many matched, so the agent can paginate
93
+ * forward if it wants more.
94
+ *
95
+ * @example
96
+ * // Read the most recent 50 messages from a chat:
97
+ * const r = await client.messages.listMessages({ chatId, limit: 50 });
98
+ * console.log(r.messages, r.nextLink);
99
+ *
100
+ * @example
101
+ * // Find messages containing "ticket" in the most recent 50:
102
+ * const r = await client.messages.listMessages({
103
+ * chatId, limit: 50, containing: 'ticket'
104
+ * });
105
+ * // r.scanned === 50, r.matched === r.messages.length
106
+ *
107
+ * @example
108
+ * // Page forward:
109
+ * const r2 = await client.messages.listMessages({
110
+ * chatId, nextLink: r.nextLink
111
+ * });
112
+ */
113
+ async listMessages(params) {
114
+ let query;
115
+ if (params.nextLink) {
116
+ // Follow the @odata.nextLink directly. All filters and ordering are
117
+ // already baked into the URL.
118
+ query = this.client.api(params.nextLink);
119
+ }
120
+ else {
121
+ query = this.client
122
+ .api(`/chats/${params.chatId}/messages`)
123
+ .top(params.limit ?? 20)
124
+ .orderby('createdDateTime desc');
125
+ if (params.since) {
126
+ // The only content-related $filter Graph accepts on this endpoint.
127
+ query = query.filter(`lastModifiedDateTime gt ${params.since}`);
128
+ }
129
+ }
130
+ const response = (await query.get());
131
+ const all = response?.value ?? [];
132
+ const nextLink = response?.['@odata.nextLink'];
133
+ const scanned = all.length;
134
+ let messages = all;
135
+ // Client-side: substring match against body content. We have to do this
136
+ // here because Graph doesn't support content filters on this endpoint
137
+ // (see method-level doc above).
138
+ if (params.containing && params.containing.trim().length > 0) {
139
+ const needle = params.containing.toLowerCase();
140
+ messages = messages.filter((m) => m.body?.content?.toLowerCase().includes(needle) ?? false);
141
+ }
142
+ // Client-side: filter by sender user ID. Same reason — `from/user/id eq`
143
+ // is rejected server-side.
144
+ if (params.fromUser) {
145
+ messages = messages.filter((m) => m.from?.user?.id === params.fromUser);
146
+ }
147
+ return {
148
+ messages,
149
+ scanned,
150
+ matched: messages.length,
151
+ nextLink,
152
+ };
153
+ }
61
154
  /**
62
155
  * Send a message to a chat.
63
156
  */
@@ -146,41 +239,113 @@ export class MessagesApi extends BaseApi {
146
239
  await this.client.api(`/chats/${params.chatId}/messages/${params.messageId}`).patch(messagePayload);
147
240
  }
148
241
  /**
149
- * Search messages across chats and channels.
242
+ * Search chat messages across the signed-in user's chats and channels.
243
+ *
244
+ * Uses the BETA `/search/query` endpoint with `entityTypes: ['chatMessage']`.
245
+ * Beta is the canonical example in Microsoft's docs and is functionally
246
+ * equivalent to v1.0 (verified empirically — same results, same latency)
247
+ * but is the documented forward path. See:
248
+ * https://learn.microsoft.com/en-us/graph/search-concept-chat-messages
249
+ *
250
+ * **What this method DOES support:**
251
+ *
252
+ * - Free-text full-text search across message body and attachments.
253
+ * Microsoft Search indexes all messages the user has access to —
254
+ * NOT recency-windowed, unlike `/me/chats` filters.
255
+ * - The full set of documented KQL operators (`from:`, `to:`, `mentions:`,
256
+ * `IsRead:`, `hasAttachment:`, `sent>`, `sent<`) via typed params.
257
+ * - Real pagination via `from_offset` (skip N hits) and `size` (page size).
258
+ * Caller drives pagination — this method does NOT loop.
259
+ * - Up to 500 hits per call (Graph hard cap is 501).
260
+ *
261
+ * **What this method does NOT support, and why:**
262
+ *
263
+ * - **No `chatId` / `channelId` / `scope` filter.** Microsoft has not built
264
+ * server-side filtering by chat or channel for `chatMessage` search.
265
+ * Verified exhaustively against ~12 KQL operator variants and request
266
+ * body shapes (`stringInputs`, `sourceFilters`, etc.) — none filter.
267
+ * Confirmed by Microsoft on
268
+ * https://learn.microsoft.com/en-us/answers/questions/5510799 :
269
+ * "All scoping beyond keyword/KQL must be done client-side."
270
+ *
271
+ * - **`from:` does NOT accept user IDs.** Per docs and verified empirically,
272
+ * `from:` accepts a display name (`from:Bob`, `from:"Bob Smith"`) or an
273
+ * email (`from:bob@contoso.com`). Passing a GUID returns 0 hits silently.
274
+ * Resolve a user ID to a name/email before passing it here.
275
+ *
276
+ * - **`mentions:` is the inverse:** it ONLY accepts the user ID, and the
277
+ * GUID must have dashes stripped. Per docs.
278
+ *
279
+ * **About `total` in the response:** Microsoft's docs say total is "the
280
+ * number of results on the page, not the total number of matching results."
281
+ * That documentation is wrong (or outdated). Verified empirically: `total`
282
+ * IS the grand total of matching messages across all pages, regardless of
283
+ * `size`. For very common terms total can be in the thousands.
284
+ *
285
+ * @example
286
+ * // Find messages I sent containing "delivery", page 1:
287
+ * const r = await client.messages.search({
288
+ * query: 'delivery',
289
+ * from: 'evrim.a@first.bet',
290
+ * size: 25,
291
+ * });
292
+ * // r.value[0].hitsContainers[0]: { total, moreResultsAvailable, hits[] }
293
+ *
294
+ * @example
295
+ * // Page 2:
296
+ * const r2 = await client.messages.search({
297
+ * query: 'delivery',
298
+ * from: 'evrim.a@first.bet',
299
+ * size: 25,
300
+ * from_offset: 25,
301
+ * });
150
302
  */
151
303
  async search(params) {
152
- const queryParts = [];
153
- if (params.query) {
154
- queryParts.push(params.query);
304
+ const parts = [];
305
+ if (params.query && params.query.trim().length > 0) {
306
+ parts.push(params.query);
307
+ }
308
+ if (params.from) {
309
+ // Quote multi-word values so KQL parses them as a single token.
310
+ const v = params.from.includes(' ') ? `"${params.from}"` : params.from;
311
+ parts.push(`from:${v}`);
312
+ }
313
+ if (params.to) {
314
+ const v = params.to.includes(' ') ? `"${params.to}"` : params.to;
315
+ parts.push(`to:${v}`);
155
316
  }
156
317
  if (params.mentions) {
157
- queryParts.push(`mentions:${params.mentions}`);
318
+ // Per docs: must be the user ID without dashes.
319
+ parts.push(`mentions:${params.mentions.replace(/-/g, '')}`);
158
320
  }
159
- if (params.from) {
160
- const dateOnly = params.from.split('T')[0];
161
- queryParts.push(`sent>=${dateOnly}`);
321
+ if (params.unread) {
322
+ parts.push(`IsRead:false`);
162
323
  }
163
- if (params.fromUser) {
164
- queryParts.push(`from:${params.fromUser}`);
324
+ if (params.hasAttachment) {
325
+ parts.push(`hasAttachment:true`);
165
326
  }
166
- let enhancedQuery = queryParts.length > 0 ? queryParts.join(' AND ') : '*';
167
- const scope = params.scope || 'all';
168
- if (scope === 'channels') {
169
- enhancedQuery = `${enhancedQuery} AND (channelIdentity/channelId:*)`;
327
+ if (params.sentAfter) {
328
+ parts.push(`sent>${params.sentAfter.split('T')[0]}`);
170
329
  }
171
- else if (scope === 'chats') {
172
- enhancedQuery = `${enhancedQuery} AND (chatId:* AND NOT channelIdentity/channelId:*)`;
330
+ if (params.sentBefore) {
331
+ parts.push(`sent<${params.sentBefore.split('T')[0]}`);
173
332
  }
333
+ // KQL combines tokens with implicit AND. We use explicit AND for
334
+ // readability in error messages and tests.
335
+ const queryString = parts.length > 0 ? parts.join(' AND ') : '*';
174
336
  const searchRequest = {
175
337
  entityTypes: ['chatMessage'],
176
- query: {
177
- queryString: enhancedQuery,
178
- },
179
- from: 0,
180
- size: params.limit || 25,
181
- enableTopResults: params.enableTopResults !== undefined ? params.enableTopResults : true,
338
+ query: { queryString },
339
+ from: params.from_offset ?? 0,
340
+ size: params.size ?? 25,
341
+ // Default to recency ordering (Graph's default for chatMessage). Caller
342
+ // can opt into relevance ordering with `enableTopResults: true`.
343
+ enableTopResults: params.enableTopResults ?? false,
182
344
  };
183
- return this.client.api('/search/query').post({ requests: [searchRequest] });
345
+ return this.client
346
+ .api('/search/query')
347
+ .version('beta')
348
+ .post({ requests: [searchRequest] });
184
349
  }
185
350
  /**
186
351
  * Set a reaction on a message.
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/api/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/api/messages.ts"],"names":[],"mappings":"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"}
@@ -3,18 +3,55 @@ export interface GetChatParams {
3
3
  chatId: string;
4
4
  }
5
5
  export interface ListChatsParams {
6
+ /**
7
+ * Substring match against chat topic. Server-side filter via
8
+ * `contains(tolower(topic), …)`. Note this is *post-filtered* by Graph
9
+ * against a window of $top chats — see chats.list() doc for details.
10
+ */
6
11
  searchTerm?: string;
12
+ /**
13
+ * Substring match against expanded member display names. Auto-adds
14
+ * `$expand=members`. Subject to the same recency-window post-filter
15
+ * behavior. WARNING: combining this with `chatTypes: ['oneOnOne']` triggers
16
+ * a known Graph bug — see chats.list() doc.
17
+ */
7
18
  memberName?: string;
19
+ /** Exact match against member email. Same caveats as memberName. */
8
20
  memberEmail?: string;
21
+ /** Exact match against the AAD userId of a member. Auto-adds `$expand=members`. */
22
+ memberUserId?: string;
23
+ /**
24
+ * Filter to one or more chat types. Single equality is server-side and
25
+ * efficient. The combination `members/any(displayName) + chatType eq
26
+ * 'oneOnOne'` is broken on Graph and returns 0 — use `memberUserId` instead
27
+ * for the userId predicate which works.
28
+ */
9
29
  chatTypes?: ('oneOnOne' | 'group' | 'meeting')[];
10
30
  expand?: string[];
31
+ /**
32
+ * Page size. Hard-capped at 50 by Graph; values above 50 return HTTP 400.
33
+ * @see https://learn.microsoft.com/en-us/graph/api/chat-list?view=graph-rest-1.0
34
+ */
11
35
  top?: number;
36
+ /**
37
+ * Sort order. The ONLY value Graph allows on `/me/chats` is
38
+ * `'lastMessagePreview/createdDateTime desc'`. Ascending is rejected,
39
+ * other fields are rejected. Pass `true` to enable it; pass `false` or
40
+ * omit to use Graph's default ordering (which is *not* strictly recency).
41
+ *
42
+ * Strongly recommended: always pass `true` so pagination is monotonic.
43
+ */
44
+ orderByLastMessage?: boolean;
12
45
  nextLink?: string;
13
46
  }
14
47
  export interface ListChatsResult {
15
48
  chats: import('@microsoft/microsoft-graph-types').Chat[];
16
49
  nextLink?: string;
17
50
  }
51
+ export interface FindDmParams {
52
+ /** AAD userId of the other party in the 1:1 chat. */
53
+ userId: string;
54
+ }
18
55
  export interface CreateChatParams {
19
56
  chatType: 'oneOnOne' | 'group';
20
57
  members: import('@microsoft/microsoft-graph-types').ConversationMember[];
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/types/chat.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAM3F,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,CAAC,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;IACjD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,OAAO,kCAAkC,EAAE,IAAI,EAAE,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC;IAC/B,OAAO,EAAE,OAAO,kCAAkC,EAAE,kBAAkB,EAAE,CAAC;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;CACtB"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/types/chat.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAM3F,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,CAAC,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;IACjD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,OAAO,kCAAkC,EAAE,IAAI,EAAE,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC;IAC/B,OAAO,EAAE,OAAO,kCAAkC,EAAE,kBAAkB,EAAE,CAAC;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;CACtB"}
@@ -2,8 +2,8 @@ export type { GraphApiResponse, GraphClientConfig, GraphError } from './common.j
2
2
  export { DEFAULT_SCOPES } from './common.js';
3
3
  export type { GetUserParams, SearchUsersParams, User } from './user.js';
4
4
  export type { PreferredPresenceAvailability, PresenceAvailability, SetPreferredPresenceParams, SetPresenceParams, } from './presence.js';
5
- export type { AddChatMemberParams, Chat, ChatType, ConversationMember, CreateChatParams, GetChatParams, ListChatsParams, ListChatsResult, RemoveChatMemberParams, UpdateChatParams, } from './chat.js';
6
- export type { ChatMessage, ChatMessageAttachment, ChatMessageImportance, ChatMessageInfo, ChatMessageMention, GetChatMessagesParams, GetMessageParams, ItemBody, SearchHit, SearchHitsContainer, SearchMessagesParams, SearchRequest, SearchResponse, SearchResult, SendChatMessageParams, SetMessageReactionParams, DeleteChatMessageParams, DownloadHostedContentParams, DownloadHostedContentResult, UnsetMessageReactionParams, UpdateChatMessageParams, } from './message.js';
5
+ export type { AddChatMemberParams, Chat, ChatType, ConversationMember, CreateChatParams, FindDmParams, GetChatParams, ListChatsParams, ListChatsResult, RemoveChatMemberParams, UpdateChatParams, } from './chat.js';
6
+ export type { ChatMessage, ChatMessageAttachment, ChatMessageImportance, ChatMessageInfo, ChatMessageMention, GetChatMessagesParams, GetMessageParams, ItemBody, ListMessagesParams, ListMessagesResult, SearchHit, SearchHitsContainer, SearchMessagesParams, SearchRequest, SearchResponse, SearchResult, SendChatMessageParams, SetMessageReactionParams, DeleteChatMessageParams, DownloadHostedContentParams, DownloadHostedContentResult, UnsetMessageReactionParams, UpdateChatMessageParams, } from './message.js';
7
7
  export type { DeleteMailParams, EmailAddress, FileAttachment, ForwardMailParams, GetMailParams, ListMailAttachmentsParams, ListMailsParams, MarkMailReadParams, Message, ReplyMailParams, SearchMailsParams, SendMailParams, } from './mail.js';
8
8
  export type { Attendee, CancelCalendarEventParams, CreateCalendarEventParams, DateTimeTimeZone, Event, FindMeetingTimesParams, GetCalendarEventsParams, Location, MeetingTimeSuggestion, MeetingTimeSuggestionsResult, NullableOption, RespondToEventParams, UpdateCalendarEventParams, } from './calendar.js';
9
9
  export type { DownloadSharePointFileParams, DownloadSharePointFileResult, DriveItem, DriveItemMeetingSource, GetDriveItemParams, GrantFilePermissionParams, SearchFilesParams, UpdateSharePointFileParams, UpdateSharePointFileResult, UploadToSharePointParams, UploadToSharePointResult, } from './file.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGxE,YAAY,EACV,6BAA6B,EAC7B,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,YAAY,EACV,mBAAmB,EACnB,IAAI,EACJ,QAAQ,EACR,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,yBAAyB,EACzB,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,eAAe,EACf,iBAAiB,EACjB,cAAc,GACf,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,QAAQ,EACR,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,KAAK,EACL,sBAAsB,EACtB,uBAAuB,EACvB,QAAQ,EACR,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,eAAe,CAAC;AAGvB,YAAY,EACV,4BAA4B,EAC5B,4BAA4B,EAC5B,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGxE,YAAY,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGxE,YAAY,EACV,6BAA6B,EAC7B,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,YAAY,EACV,mBAAmB,EACnB,IAAI,EACJ,QAAQ,EACR,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EAClB,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,yBAAyB,EACzB,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,eAAe,EACf,iBAAiB,EACjB,cAAc,GACf,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,QAAQ,EACR,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,KAAK,EACL,sBAAsB,EACtB,uBAAuB,EACvB,QAAQ,EACR,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,eAAe,CAAC;AAGvB,YAAY,EACV,4BAA4B,EAC5B,4BAA4B,EAC5B,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGxE,YAAY,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -37,6 +37,12 @@ export interface SearchHit {
37
37
  };
38
38
  subject?: string;
39
39
  chatId?: string;
40
+ /**
41
+ * Deep link to open the message in Teams. Present on chatMessage hits.
42
+ * Not the same as `webUrl` on DriveItem hits — different entity types
43
+ * use different link field names.
44
+ */
45
+ webLink?: string;
40
46
  channelIdentity?: {
41
47
  teamId?: string;
42
48
  channelId?: string;
@@ -70,13 +76,70 @@ export interface GetMessageParams {
70
76
  export interface GetChatMessagesParams {
71
77
  chatId: string;
72
78
  limit?: number;
73
- /** ISO datetime filter - messages after this time */
79
+ /** ISO datetime filter messages after this time. Client-side filter applied to the returned page. */
74
80
  from?: string;
75
- /** ISO datetime filter - messages before this time */
81
+ /** ISO datetime filter messages before this time. Client-side filter. */
76
82
  to?: string;
77
- /** Filter by sender user ID */
83
+ /**
84
+ * Filter by sender user ID. NOTE: Graph rejects `$filter=from/user/id eq …`
85
+ * with "operationKind 'Equal' is not allowed", so this is applied
86
+ * client-side after the page is fetched. Inherently bounded to the page.
87
+ */
78
88
  fromUser?: string;
79
89
  }
90
+ /**
91
+ * Parameters for `listMessages` — the new caller-driven pagination shape.
92
+ *
93
+ * Replaces `getChatMessages` for new code. Returns the page plus a
94
+ * `nextLink` for the caller to follow. No internal pagination loop, no
95
+ * silently discarded metadata.
96
+ */
97
+ export interface ListMessagesParams {
98
+ chatId: string;
99
+ /** Page size. Default 20. Max is whatever Graph allows on `/chats/{id}/messages` (50). */
100
+ limit?: number;
101
+ /**
102
+ * Server-side filter: only messages whose `lastModifiedDateTime` is greater
103
+ * than this ISO datetime. This is the only message-content-related filter
104
+ * `/chats/{id}/messages` actually supports — `$search`, `contains(body…)`,
105
+ * and `from/user/id eq` are all rejected by Graph.
106
+ *
107
+ * Note: `lastModifiedDateTime` ≠ `createdDateTime`. A message edited later
108
+ * has a more recent `lastModifiedDateTime`. Use `--containing` for content
109
+ * matching if needed.
110
+ */
111
+ since?: string;
112
+ /**
113
+ * Client-side filter: keep only messages whose body content (case-insensitive,
114
+ * substring match) matches this string. Applied AFTER fetching the page,
115
+ * so the count of matches is naturally bounded by the page size. The result
116
+ * tells you how many messages were scanned vs how many matched.
117
+ *
118
+ * Why client-side: see `since` doc — Graph rejects content filters on this
119
+ * endpoint.
120
+ */
121
+ containing?: string;
122
+ /**
123
+ * Client-side filter: keep only messages whose sender user ID matches.
124
+ * Same reason as `containing` — server-side filter is broken.
125
+ */
126
+ fromUser?: string;
127
+ /**
128
+ * Pagination: pass the `nextLink` from a previous response to fetch the
129
+ * next page. When set, all other filter params are ignored (the URL
130
+ * already has them baked in).
131
+ */
132
+ nextLink?: string;
133
+ }
134
+ export interface ListMessagesResult {
135
+ messages: import('@microsoft/microsoft-graph-types').ChatMessage[];
136
+ /** Total messages in this page response (before client-side filtering). */
137
+ scanned: number;
138
+ /** Messages that survived client-side filtering. Equals `messages.length`. */
139
+ matched: number;
140
+ /** Pagination link to the next page, or `undefined` if no more pages. */
141
+ nextLink?: string;
142
+ }
80
143
  export interface SendChatMessageParams {
81
144
  chatId: string;
82
145
  message: string;
@@ -92,14 +155,56 @@ export interface UpdateChatMessageParams {
92
155
  importance?: 'normal' | 'high' | 'urgent';
93
156
  format?: 'text' | 'markdown' | 'html';
94
157
  }
158
+ /**
159
+ * Parameters for `messages.search()`.
160
+ *
161
+ * Mapped to KQL operators on Microsoft Graph's `/search/query` endpoint.
162
+ * The set of supported operators is fixed by Microsoft and documented at
163
+ * https://learn.microsoft.com/en-us/graph/search-concept-chat-messages
164
+ *
165
+ * Important: there is NO server-side way to scope a chatMessage search to a
166
+ * specific chat ID, channel ID, or chat type. Microsoft confirmed this on
167
+ * https://learn.microsoft.com/en-us/answers/questions/5510799 — "All scoping
168
+ * beyond keyword/KQL must be done client-side." This package therefore does
169
+ * not expose `chatId` / `channelId` / `scope` parameters; consumers that need
170
+ * those filters must call `.search()` and filter the returned hits client-side.
171
+ */
95
172
  export interface SearchMessagesParams {
173
+ /**
174
+ * Free-text query string. Combined with the operator-specific params below
175
+ * via `AND`. If everything is omitted, defaults to `*` (match all).
176
+ */
96
177
  query?: string;
97
- scope?: 'all' | 'channels' | 'chats';
98
- limit?: number;
99
- enableTopResults?: boolean;
100
- mentions?: string;
178
+ /** KQL `from:` operator. Accepts display name (quoted if multi-word) or email. NOT user ID. */
101
179
  from?: string;
102
- fromUser?: string;
180
+ /** KQL `to:` operator. Same form as `from`. Partial support for 1:1 chats only per docs. */
181
+ to?: string;
182
+ /** KQL `mentions:` operator. Takes the user ID **without dashes**. */
183
+ mentions?: string;
184
+ /** KQL `IsRead:false` shortcut. */
185
+ unread?: boolean;
186
+ /** KQL `hasAttachment:true` shortcut. */
187
+ hasAttachment?: boolean;
188
+ /** KQL `sent>YYYY-MM-DD`. ISO date or datetime; only the date portion is used. */
189
+ sentAfter?: string;
190
+ /** KQL `sent<YYYY-MM-DD`. ISO date or datetime; only the date portion is used. */
191
+ sentBefore?: string;
192
+ /**
193
+ * Pagination: skip the first N hits. Used for the next-page request.
194
+ * Default 0.
195
+ */
196
+ from_offset?: number;
197
+ /**
198
+ * Page size. Default 25, maximum 500. Values above 500 return HTTP 400
199
+ * with `Max page size should be <= 501.`.
200
+ */
201
+ size?: number;
202
+ /**
203
+ * If true, results are sorted by relevance instead of `dateTime desc`.
204
+ * Surfaces older content that's textually relevant to the query. Default
205
+ * `false` (recency-first).
206
+ */
207
+ enableTopResults?: boolean;
103
208
  }
104
209
  export interface SetMessageReactionParams {
105
210
  chatId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { markdownToHtml, sanitizeHtml } from './markdown.js';
2
- export { escapeODataString } from './odata.js';
2
+ export { escapeODataLiteral, escapeODataString, odataFilterValue } from './odata.js';
3
3
  export { encodeSharePointUrl } from './sharepoint.js';
4
4
  export { extractChatIdFromJoinUrl, extractMeetingInfoFromJoinUrl } from './teams.js';
5
5
  export type { MeetingInfo } from './teams.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AACrF,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AACrF,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { markdownToHtml, sanitizeHtml } from './markdown.js';
2
- export { escapeODataString } from './odata.js';
2
+ export { escapeODataLiteral, escapeODataString, odataFilterValue } from './odata.js';
3
3
  export { encodeSharePointUrl } from './sharepoint.js';
4
4
  export { extractChatIdFromJoinUrl, extractMeetingInfoFromJoinUrl } from './teams.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC"}