@microsoft/teams.api
Version:
<p> <a href="https://www.npmjs.com/package/@microsoft/teams.api" target="_blank"> <img src="https://img.shields.io/npm/v/@microsoft/teams.api/latest" /> </a> <a href="https://www.npmjs.com/package/@microsoft/teams.api?activeTab=code" t
1 lines • 4.97 kB
Source Map (JSON)
{"version":3,"sources":["../../../src/clients/conversation/member.ts"],"names":["HttpClient"],"mappings":";;;;;AASO,MAAM,wBAAA,CAAyB;AAAA,EAC3B,UAAA;AAAA,EAET,IAAI,IAAA,GAAO;AACT,IAAA,OAAO,IAAA,CAAK,KAAA;AAAA,EACd;AAAA,EACA,IAAI,KAAK,CAAA,EAAG;AACV,IAAA,IAAA,CAAK,KAAA,GAAQ,CAAA;AAAA,EACf;AAAA,EACU,KAAA;AAAA,EACA,kBAAA;AAAA,EAEV,WAAA,CAAY,UAAA,EAAoB,OAAA,EAA0C,iBAAA,EAAgD;AACxH,IAAA,IAAA,CAAK,UAAA,GAAa,oBAAoB,UAAU,CAAA;AAEhD,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,MAAA,EAAW;AAAA,IAC9B,CAAA,MAAA,IAAW,aAAa,OAAA,EAAS;AAC/B,MAAA,IAAA,CAAK,KAAA,GAAQ,OAAA;AAAA,IACf,CAAA,MAAO;AACL,MAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,MAAA,CAAW,OAAO,CAAA;AAAA,IACrC;AACA,IAAA,IAAA,CAAK,kBAAA,GAAqB,uBAAuB,iBAAiB,CAAA;AAAA,EACpE;AAAA,EAEA,MAAM,IAAI,cAAA,EAAwD;AAChE,IAAA,MAAM,GAAA,GAAM,CAAA,EAAG,IAAA,CAAK,UAAU,qBAAqB,cAAc,CAAA,QAAA,CAAA;AACjE,IAAA,MAAM,GAAA,GAAM,MAAM,IAAA,CAAK,IAAA,CAAK,IAA2B,GAAG,CAAA;AAC1D,IAAA,OAAO,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,kBAAkB,CAAA;AAAA,EACxC;AAAA,EAEA,MAAM,OAAA,CAAQ,cAAA,EAAwB,EAAA,EAA0C;AAC9E,IAAA,MAAM,MAAM,CAAA,EAAG,IAAA,CAAK,UAAU,CAAA,kBAAA,EAAqB,cAAc,YAAY,EAAE,CAAA,CAAA;AAC/E,IAAA,MAAM,GAAA,GAAM,MAAM,IAAA,CAAK,IAAA,CAAK,IAAyB,GAAG,CAAA;AACxD,IAAA,OAAO,kBAAA,CAAmB,IAAI,IAAI,CAAA;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,QAAA,CAAS,cAAA,EAAwB,QAAA,EAAmB,iBAAA,EAAyD;AACjH,IAAA,MAAM,SAA0C,EAAC;AACjD,IAAA,IAAI,QAAA,KAAa,MAAA,EAAW,MAAA,CAAO,UAAU,CAAA,GAAI,QAAA;AACjD,IAAA,IAAI,iBAAA,KAAsB,MAAA,EAAW,MAAA,CAAO,mBAAmB,CAAA,GAAI,iBAAA;AAEnE,IAAA,MAAM,GAAA,GAAM,CAAA,EAAG,IAAA,CAAK,UAAU,qBAAqB,cAAc,CAAA,aAAA,CAAA;AACjE,IAAA,MAAM,GAAA,GAAM,MAAM,IAAA,CAAK,IAAA,CAAK,IAAwB,GAAA,EAAK,EAAE,QAAQ,CAAA;AACnE,IAAA,OAAO,EAAE,GAAG,GAAA,CAAI,IAAA,EAAM,OAAA,EAAS,IAAI,IAAA,CAAK,OAAA,CAAQ,GAAA,CAAI,kBAAkB,CAAA,EAAE;AAAA,EAC1E;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,MAAA,CAAO,cAAA,EAAwB,EAAA,EAAY;AAC/C,IAAA,MAAM,MAAM,CAAA,EAAG,IAAA,CAAK,UAAU,CAAA,kBAAA,EAAqB,cAAc,YAAY,EAAE,CAAA,CAAA;AAC/E,IAAA,MAAM,GAAA,GAAM,MAAM,IAAA,CAAK,IAAA,CAAK,OAAa,GAAG,CAAA;AAC5C,IAAA,OAAO,GAAA,CAAI,IAAA;AAAA,EACb;AACF","file":"member.mjs","sourcesContent":["import {\n Client as HttpClient,\n type ClientOptions as HttpClientOptions\n} from '@microsoft/teams.common';\n\nimport { PagedMembersResult, resolveAadObjectId, TeamsChannelAccount } from '../../models';\nimport { ApiClientSettings, mergeApiClientSettings } from '../api-client-settings';\nimport { normalizeServiceUrl } from '../service-url';\n\nexport class ConversationMemberClient {\n readonly serviceUrl: string;\n\n get http() {\n return this._http;\n }\n set http(v) {\n this._http = v;\n }\n protected _http: HttpClient;\n protected _apiClientSettings: Partial<ApiClientSettings>;\n\n constructor(serviceUrl: string, options?: HttpClient | HttpClientOptions, apiClientSettings?: Partial<ApiClientSettings>) {\n this.serviceUrl = normalizeServiceUrl(serviceUrl);\n\n if (!options) {\n this._http = new HttpClient();\n } else if ('request' in options) {\n this._http = options;\n } else {\n this._http = new HttpClient(options);\n }\n this._apiClientSettings = mergeApiClientSettings(apiClientSettings);\n }\n\n async get(conversationId: string): Promise<TeamsChannelAccount[]> {\n const url = `${this.serviceUrl}/v3/conversations/${conversationId}/members`;\n const res = await this.http.get<TeamsChannelAccount[]>(url);\n return res.data.map(resolveAadObjectId);\n }\n\n async getById(conversationId: string, id: string): Promise<TeamsChannelAccount> {\n const url = `${this.serviceUrl}/v3/conversations/${conversationId}/members/${id}`;\n const res = await this.http.get<TeamsChannelAccount>(url);\n return resolveAadObjectId(res.data);\n }\n\n /**\n * Get paged members in a conversation.\n * @param conversationId - The ID of the conversation.\n * @param pageSize - Optional maximum number of members per page (min 50, default 200, max 500).\n * @param continuationToken - Optional token from a previous call to fetch the next page.\n * @returns PagedMembersResult containing members and an optional continuation token.\n */\n async getPaged(conversationId: string, pageSize?: number, continuationToken?: string): Promise<PagedMembersResult> {\n const params: Record<string, string | number> = {};\n if (pageSize !== undefined) params['pageSize'] = pageSize;\n if (continuationToken !== undefined) params['continuationToken'] = continuationToken;\n\n const url = `${this.serviceUrl}/v3/conversations/${conversationId}/pagedMembers`;\n const res = await this.http.get<PagedMembersResult>(url, { params });\n return { ...res.data, members: res.data.members.map(resolveAadObjectId) };\n }\n\n /**\n * @deprecated This will be removed by end of summer 2026.\n */\n async delete(conversationId: string, id: string) {\n const url = `${this.serviceUrl}/v3/conversations/${conversationId}/members/${id}`;\n const res = await this.http.delete<void>(url);\n return res.data;\n }\n}\n"]}