@microsoft/agents-hosting 1.6.0-beta.9.gce9d8facd2 → 1.6.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 (94) hide show
  1. package/dist/package.json +4 -9
  2. package/dist/src/agent-client/agentClient.js +2 -2
  3. package/dist/src/agent-client/agentClient.js.map +1 -1
  4. package/dist/src/agent-client/agentResponseHandler.js +2 -2
  5. package/dist/src/agent-client/agentResponseHandler.js.map +1 -1
  6. package/dist/src/app/agentApplication.js +28 -2
  7. package/dist/src/app/agentApplication.js.map +1 -1
  8. package/dist/src/app/agentApplicationOptions.d.ts +10 -0
  9. package/dist/src/app/attachmentDownloader.js +5 -10
  10. package/dist/src/app/attachmentDownloader.js.map +1 -1
  11. package/dist/src/app/auth/authorizationManager.d.ts +4 -0
  12. package/dist/src/app/auth/authorizationManager.js +94 -67
  13. package/dist/src/app/auth/authorizationManager.js.map +1 -1
  14. package/dist/src/app/auth/handlers/azureBotAuthorization.js +2 -2
  15. package/dist/src/app/auth/handlers/azureBotAuthorization.js.map +1 -1
  16. package/dist/src/app/proactive/createConversationOptionsBuilder.js +10 -6
  17. package/dist/src/app/proactive/createConversationOptionsBuilder.js.map +1 -1
  18. package/dist/src/app/proactive/proactive.d.ts +1 -0
  19. package/dist/src/app/proactive/proactive.js +30 -15
  20. package/dist/src/app/proactive/proactive.js.map +1 -1
  21. package/dist/src/app/teamsAttachmentDownloader.js +6 -14
  22. package/dist/src/app/teamsAttachmentDownloader.js.map +1 -1
  23. package/dist/src/auth/authConfiguration.d.ts +2 -143
  24. package/dist/src/auth/authConfiguration.js +301 -257
  25. package/dist/src/auth/authConfiguration.js.map +1 -1
  26. package/dist/src/auth/jwt-middleware.js +2 -1
  27. package/dist/src/auth/jwt-middleware.js.map +1 -1
  28. package/dist/src/auth/msalConnectionManager.js +27 -14
  29. package/dist/src/auth/msalConnectionManager.js.map +1 -1
  30. package/dist/src/auth/msalTokenProvider.d.ts +7 -0
  31. package/dist/src/auth/msalTokenProvider.js +188 -44
  32. package/dist/src/auth/msalTokenProvider.js.map +1 -1
  33. package/dist/src/auth/settings.d.ts +327 -0
  34. package/dist/src/auth/settings.js +158 -0
  35. package/dist/src/auth/settings.js.map +1 -0
  36. package/dist/src/cloudAdapter.d.ts +58 -1
  37. package/dist/src/cloudAdapter.js +232 -52
  38. package/dist/src/cloudAdapter.js.map +1 -1
  39. package/dist/src/connector-client/connectorClient.d.ts +12 -8
  40. package/dist/src/connector-client/connectorClient.js +99 -82
  41. package/dist/src/connector-client/connectorClient.js.map +1 -1
  42. package/dist/src/errorHelper.js +85 -7
  43. package/dist/src/errorHelper.js.map +1 -1
  44. package/dist/src/getProductInfo.d.ts +23 -0
  45. package/dist/src/getProductInfo.js +71 -1
  46. package/dist/src/getProductInfo.js.map +1 -1
  47. package/dist/src/headerPropagation.d.ts +17 -2
  48. package/dist/src/headerPropagation.js +46 -24
  49. package/dist/src/headerPropagation.js.map +1 -1
  50. package/dist/src/httpClient.d.ts +60 -0
  51. package/dist/src/httpClient.js +173 -0
  52. package/dist/src/httpClient.js.map +1 -0
  53. package/dist/src/index.d.ts +2 -1
  54. package/dist/src/index.js +7 -2
  55. package/dist/src/index.js.map +1 -1
  56. package/dist/src/oauth/userTokenClient.d.ts +5 -4
  57. package/dist/src/oauth/userTokenClient.js +97 -78
  58. package/dist/src/oauth/userTokenClient.js.map +1 -1
  59. package/dist/src/observability/traces.d.ts +11 -4
  60. package/dist/src/observability/traces.js +39 -7
  61. package/dist/src/observability/traces.js.map +1 -1
  62. package/dist/src/utils/env.d.ts +50 -0
  63. package/dist/src/utils/env.js +113 -0
  64. package/dist/src/utils/env.js.map +1 -0
  65. package/dist/src/utils.d.ts +10 -0
  66. package/dist/src/utils.js +18 -0
  67. package/dist/src/utils.js.map +1 -0
  68. package/package.json +4 -9
  69. package/src/agent-client/agentClient.ts +2 -2
  70. package/src/agent-client/agentResponseHandler.ts +2 -2
  71. package/src/app/agentApplication.ts +30 -3
  72. package/src/app/agentApplicationOptions.ts +11 -0
  73. package/src/app/attachmentDownloader.ts +6 -8
  74. package/src/app/auth/authorizationManager.ts +84 -41
  75. package/src/app/auth/handlers/azureBotAuthorization.ts +2 -2
  76. package/src/app/proactive/createConversationOptionsBuilder.ts +8 -4
  77. package/src/app/proactive/proactive.ts +39 -23
  78. package/src/app/teamsAttachmentDownloader.ts +7 -11
  79. package/src/auth/authConfiguration.ts +317 -356
  80. package/src/auth/jwt-middleware.ts +1 -1
  81. package/src/auth/msalConnectionManager.ts +27 -10
  82. package/src/auth/msalTokenProvider.ts +180 -42
  83. package/src/auth/settings.ts +323 -0
  84. package/src/cloudAdapter.ts +291 -12
  85. package/src/connector-client/connectorClient.ts +116 -94
  86. package/src/errorHelper.ts +96 -7
  87. package/src/getProductInfo.ts +79 -1
  88. package/src/headerPropagation.ts +55 -23
  89. package/src/httpClient.ts +223 -0
  90. package/src/index.ts +5 -1
  91. package/src/oauth/userTokenClient.ts +103 -84
  92. package/src/observability/traces.ts +39 -8
  93. package/src/utils/env.ts +105 -0
  94. package/src/utils.ts +14 -0
@@ -7,9 +7,10 @@
7
7
  * It filters the incoming request headers based on the definition provided and loads them into the outgoing headers collection.
8
8
  */
9
9
  export declare class HeaderPropagation implements HeaderPropagationCollection {
10
+ private _keys;
10
11
  private _incomingRequests;
11
12
  private _outgoingHeaders;
12
- private _headersToPropagate;
13
+ private _protectedHeaders;
13
14
  get incoming(): Record<string, string>;
14
15
  get outgoing(): Record<string, string>;
15
16
  constructor(headers: Record<string, string | string[] | undefined>);
@@ -17,8 +18,15 @@ export declare class HeaderPropagation implements HeaderPropagationCollection {
17
18
  add(headers: Record<string, string>): void;
18
19
  concat(headers: Record<string, string>): void;
19
20
  override(headers: Record<string, string>): void;
21
+ key(key: string): string | undefined;
20
22
  /**
21
- * Normalizes the headers by lowercasing the keys and ensuring the values are strings.
23
+ * A helper method to process headers based on a provided callback function. It iterates over the headers and applies the callback to each header key and value.
24
+ * @param headers An array of header key-value pairs to process.
25
+ * @param callback A function that takes a header key and value, allowing for custom processing logic to be applied to each header.
26
+ */
27
+ private process;
28
+ /**
29
+ * Normalizes the headers by ensuring the values are strings.
22
30
  * @param headers The headers to normalize.
23
31
  * @returns A new object with normalized headers.
24
32
  */
@@ -80,4 +88,11 @@ export interface HeaderPropagationCollection {
80
88
  * If the header does not exist in the incoming headers, it will be added to the outgoing collection.
81
89
  */
82
90
  override(headers: Record<string, string>): void;
91
+ /**
92
+ * Resolves the actual header key in a case-insensitive manner.
93
+ * This is useful for ensuring that headers are accessed correctly regardless of their case in the incoming request.
94
+ * @param key The header key to resolve.
95
+ * @returns The resolved header key or undefined if not found.
96
+ */
97
+ key?(key: string): string | undefined;
83
98
  }
@@ -17,56 +17,78 @@ class HeaderPropagation {
17
17
  return this._outgoingHeaders;
18
18
  }
19
19
  constructor(headers) {
20
+ this._keys = [];
20
21
  this._outgoingHeaders = {};
21
- this._headersToPropagate = ['x-ms-correlation-id'];
22
+ this._protectedHeaders = ['x-ms-correlation-id'];
22
23
  if (!headers) {
23
24
  throw new Error('Headers must be provided.');
24
25
  }
25
26
  this._incomingRequests = this.normalizeHeaders(headers);
26
- this.propagate(this._headersToPropagate);
27
+ // Ensure protected headers are propagated from incoming to outgoing by default without allowing modifications.
28
+ const protectedHeaders = [...this._protectedHeaders];
29
+ this._protectedHeaders = []; // Temporarily clear protected headers to allow propagation without restriction
30
+ this.propagate(protectedHeaders);
31
+ this._protectedHeaders = protectedHeaders; // Restore protected headers list after propagation
27
32
  }
28
33
  propagate(headers) {
29
- for (const key of headers !== null && headers !== void 0 ? headers : []) {
30
- const lowerKey = key.toLowerCase();
31
- if (this._incomingRequests[lowerKey] && !this._outgoingHeaders[lowerKey]) {
32
- this._outgoingHeaders[lowerKey] = this._incomingRequests[lowerKey];
34
+ this.process(headers.map(h => [h, '']), key => {
35
+ if (this._incomingRequests[key] && !this._outgoingHeaders[key]) {
36
+ this._outgoingHeaders[key] = this._incomingRequests[key];
33
37
  }
34
- }
38
+ });
35
39
  }
36
40
  add(headers) {
37
- for (const [key, value] of Object.entries(headers !== null && headers !== void 0 ? headers : {})) {
38
- const lowerKey = key.toLowerCase();
39
- if (!this._incomingRequests[lowerKey] && !this._outgoingHeaders[lowerKey]) {
40
- this._outgoingHeaders[lowerKey] = value;
41
+ this.process(Object.entries(headers !== null && headers !== void 0 ? headers : {}), (key, value) => {
42
+ if (!this._incomingRequests[key] && !this._outgoingHeaders[key]) {
43
+ this._outgoingHeaders[key] = value;
41
44
  }
42
- }
45
+ });
43
46
  }
44
47
  concat(headers) {
45
- var _a;
46
- for (const [key, value] of Object.entries(headers !== null && headers !== void 0 ? headers : {})) {
47
- const lowerKey = key.toLowerCase();
48
- if (this._incomingRequests[lowerKey] && !this._headersToPropagate.includes(lowerKey)) {
49
- this._outgoingHeaders[lowerKey] = `${(_a = this._outgoingHeaders[lowerKey]) !== null && _a !== void 0 ? _a : this._incomingRequests[lowerKey]} ${value}`.trim();
48
+ this.process(Object.entries(headers !== null && headers !== void 0 ? headers : {}), (key, value) => {
49
+ var _a;
50
+ if (this._incomingRequests[key] || this._outgoingHeaders[key]) {
51
+ this._outgoingHeaders[key] = `${(_a = this._outgoingHeaders[key]) !== null && _a !== void 0 ? _a : this._incomingRequests[key]} ${value}`.trim();
50
52
  }
51
- }
53
+ });
52
54
  }
53
55
  override(headers) {
54
- for (const [key, value] of Object.entries(headers !== null && headers !== void 0 ? headers : {})) {
55
- const lowerKey = key.toLowerCase();
56
- if (!this._headersToPropagate.includes(lowerKey)) {
57
- this._outgoingHeaders[lowerKey] = value;
56
+ this.process(Object.entries(headers !== null && headers !== void 0 ? headers : {}), (key, value) => {
57
+ this._outgoingHeaders[key] = value;
58
+ });
59
+ }
60
+ key(key) {
61
+ return this._keys.find(k => k.toLowerCase() === key.toLowerCase());
62
+ }
63
+ /**
64
+ * A helper method to process headers based on a provided callback function. It iterates over the headers and applies the callback to each header key and value.
65
+ * @param headers An array of header key-value pairs to process.
66
+ * @param callback A function that takes a header key and value, allowing for custom processing logic to be applied to each header.
67
+ */
68
+ process(headers, callback) {
69
+ for (const [key, value] of headers) {
70
+ const savedKey = this.key(key);
71
+ const realKey = savedKey !== null && savedKey !== void 0 ? savedKey : key;
72
+ if (!savedKey) {
73
+ this._keys.push(realKey);
74
+ }
75
+ if (!this._protectedHeaders.includes(key.toLowerCase())) {
76
+ callback(realKey, value);
58
77
  }
59
78
  }
60
79
  }
61
80
  /**
62
- * Normalizes the headers by lowercasing the keys and ensuring the values are strings.
81
+ * Normalizes the headers by ensuring the values are strings.
63
82
  * @param headers The headers to normalize.
64
83
  * @returns A new object with normalized headers.
65
84
  */
66
85
  normalizeHeaders(headers) {
67
86
  return Object.entries(headers).reduce((acc, [key, value]) => {
68
87
  if (value) {
69
- acc[key.toLowerCase()] = Array.isArray(value) ? value.join(' ') : value;
88
+ acc[key] = Array.isArray(value) ? value.join(' ') : value;
89
+ if (!this._keys.includes(key)) {
90
+ this._keys.push(key); // Store the original casing of the header keys
91
+ }
70
92
  }
71
93
  return acc;
72
94
  }, {});
@@ -1 +1 @@
1
- {"version":3,"file":"headerPropagation.js","sourceRoot":"","sources":["../../src/headerPropagation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headerPropagation.js","sourceRoot":"","sources":["../../src/headerPropagation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ /**
6
+ * Configuration for an HTTP request.
7
+ */
8
+ export interface HttpRequestConfig {
9
+ method: string;
10
+ url: string;
11
+ headers?: Record<string, string>;
12
+ data?: unknown;
13
+ params?: Record<string, string | undefined>;
14
+ responseType?: 'json' | 'arraybuffer' | 'stream';
15
+ timeout?: number;
16
+ signal?: AbortSignal;
17
+ }
18
+ /**
19
+ * Represents an HTTP response.
20
+ */
21
+ export interface HttpResponse<T = unknown> {
22
+ data: T;
23
+ status: number;
24
+ statusText: string;
25
+ headers: Headers;
26
+ config: HttpRequestConfig;
27
+ }
28
+ /**
29
+ * Options for creating an HttpClient instance.
30
+ */
31
+ export interface HttpClientOptions {
32
+ baseURL?: string;
33
+ headers?: Record<string, string>;
34
+ }
35
+ /**
36
+ * A lightweight HTTP client built on native fetch.
37
+ */
38
+ export declare class HttpClient {
39
+ private _baseURL;
40
+ private _defaultHeaders;
41
+ constructor(options?: HttpClientOptions);
42
+ get baseURL(): string;
43
+ get defaultHeaders(): Record<string, string>;
44
+ set defaultHeaders(headers: Record<string, string>);
45
+ setHeader(name: string, value: string): void;
46
+ request<T = unknown>(config: HttpRequestConfig): Promise<HttpResponse<T>>;
47
+ get<T = unknown>(url: string, options?: Partial<HttpRequestConfig>): Promise<HttpResponse<T>>;
48
+ private buildUrl;
49
+ private normalizeHeaders;
50
+ }
51
+ /**
52
+ * Error thrown when an HTTP request fails.
53
+ */
54
+ export declare class HttpError extends Error {
55
+ readonly response: HttpResponse;
56
+ readonly config: HttpRequestConfig;
57
+ readonly status: number;
58
+ constructor(message: string, response: HttpResponse, config: HttpRequestConfig);
59
+ toJSON(): Record<string, unknown>;
60
+ }
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.HttpError = exports.HttpClient = void 0;
8
+ const agents_activity_1 = require("@microsoft/agents-activity");
9
+ const node_stream_1 = require("node:stream");
10
+ const errorHelper_1 = require("./errorHelper");
11
+ /**
12
+ * A lightweight HTTP client built on native fetch.
13
+ */
14
+ class HttpClient {
15
+ constructor(options = {}) {
16
+ var _a;
17
+ this._baseURL = (_a = options.baseURL) !== null && _a !== void 0 ? _a : '';
18
+ this._defaultHeaders = this.normalizeHeaders(options.headers);
19
+ }
20
+ get baseURL() {
21
+ return this._baseURL;
22
+ }
23
+ get defaultHeaders() {
24
+ return this._defaultHeaders;
25
+ }
26
+ set defaultHeaders(headers) {
27
+ this._defaultHeaders = this.normalizeHeaders(headers);
28
+ }
29
+ setHeader(name, value) {
30
+ this._defaultHeaders[name.toLowerCase()] = value;
31
+ }
32
+ async request(config) {
33
+ var _a, _b, _c;
34
+ const url = this.buildUrl(config.url, config.params);
35
+ const headers = this.normalizeHeaders({ ...this._defaultHeaders, ...config.headers });
36
+ const requestHeaders = new Headers(headers);
37
+ const fetchOptions = {
38
+ method: config.method.toUpperCase(),
39
+ headers: requestHeaders,
40
+ signal: (_a = config.signal) !== null && _a !== void 0 ? _a : (config.timeout ? AbortSignal.timeout(config.timeout) : undefined)
41
+ };
42
+ if (config.data !== undefined && config.data !== null) {
43
+ const contentType = (_b = requestHeaders.get('content-type')) !== null && _b !== void 0 ? _b : '';
44
+ if (contentType.includes('application/x-www-form-urlencoded')) {
45
+ fetchOptions.body = new URLSearchParams(config.data).toString();
46
+ }
47
+ else if (config.data instanceof URLSearchParams) {
48
+ if (!contentType) {
49
+ requestHeaders.set('content-type', 'application/x-www-form-urlencoded;charset=utf-8');
50
+ }
51
+ fetchOptions.body = config.data.toString();
52
+ }
53
+ else if (typeof config.data === 'string') {
54
+ fetchOptions.body = config.data;
55
+ }
56
+ else if (config.data instanceof Uint8Array || config.data instanceof ArrayBuffer ||
57
+ config.data instanceof Blob || config.data instanceof FormData ||
58
+ config.data instanceof ReadableStream) {
59
+ fetchOptions.body = config.data;
60
+ }
61
+ else {
62
+ if (!contentType) {
63
+ requestHeaders.set('content-type', 'application/json');
64
+ }
65
+ fetchOptions.body = JSON.stringify(config.data);
66
+ }
67
+ }
68
+ const response = await fetch(url, fetchOptions);
69
+ let data;
70
+ if (config.responseType === 'stream') {
71
+ if (!response.ok) {
72
+ data = await response.text();
73
+ }
74
+ else {
75
+ data = node_stream_1.Readable.fromWeb((_c = response.body) !== null && _c !== void 0 ? _c : new ReadableStream());
76
+ }
77
+ }
78
+ else if (config.responseType === 'arraybuffer') {
79
+ data = await response.arrayBuffer();
80
+ }
81
+ else {
82
+ const text = await response.text();
83
+ try {
84
+ data = JSON.parse(text);
85
+ }
86
+ catch {
87
+ data = text;
88
+ }
89
+ }
90
+ const httpResponse = {
91
+ data,
92
+ status: response.status,
93
+ statusText: response.statusText,
94
+ headers: response.headers,
95
+ config,
96
+ };
97
+ if (!response.ok) {
98
+ const error = new HttpError(`Request failed with status ${response.status}`, httpResponse, config);
99
+ throw error;
100
+ }
101
+ return httpResponse;
102
+ }
103
+ async get(url, options) {
104
+ return this.request({ method: 'get', url, ...options });
105
+ }
106
+ buildUrl(path, params) {
107
+ let url;
108
+ if (path.startsWith('http://') || path.startsWith('https://')) {
109
+ url = path;
110
+ }
111
+ else {
112
+ if (!this._baseURL) {
113
+ throw agents_activity_1.ExceptionHelper.generateException(Error, errorHelper_1.Errors.HttpClientRelativeUrlRequiresBaseUrl, undefined, { url: path });
114
+ }
115
+ const base = this._baseURL.endsWith('/') ? this._baseURL.slice(0, -1) : this._baseURL;
116
+ const cleanPath = path.startsWith('/') ? path : `/${path}`;
117
+ url = `${base}${cleanPath}`;
118
+ }
119
+ if (params) {
120
+ const searchParams = new URLSearchParams();
121
+ for (const [key, value] of Object.entries(params)) {
122
+ if (value !== undefined && value !== null) {
123
+ searchParams.set(key, value);
124
+ }
125
+ }
126
+ const queryString = searchParams.toString();
127
+ if (queryString) {
128
+ url += `${url.includes('?') ? '&' : '?'}${queryString}`;
129
+ }
130
+ }
131
+ return url;
132
+ }
133
+ normalizeHeaders(headers) {
134
+ if (!headers) {
135
+ return {};
136
+ }
137
+ return Object.entries(headers).reduce((normalized, [name, value]) => {
138
+ normalized[name.toLowerCase()] = value;
139
+ return normalized;
140
+ }, {});
141
+ }
142
+ }
143
+ exports.HttpClient = HttpClient;
144
+ /**
145
+ * Error thrown when an HTTP request fails.
146
+ */
147
+ class HttpError extends Error {
148
+ constructor(message, response, config) {
149
+ super(message);
150
+ this.name = 'HttpError';
151
+ this.response = response;
152
+ this.config = config;
153
+ this.status = response.status;
154
+ }
155
+ toJSON() {
156
+ return {
157
+ message: this.message,
158
+ status: this.status,
159
+ config: {
160
+ url: this.config.url,
161
+ method: this.config.method,
162
+ data: this.config.data,
163
+ },
164
+ response: {
165
+ status: this.response.status,
166
+ statusText: this.response.statusText,
167
+ data: this.response.data,
168
+ },
169
+ };
170
+ }
171
+ }
172
+ exports.HttpError = HttpError;
173
+ //# sourceMappingURL=httpClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/httpClient.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ export * from './storage';
15
15
  export * from './transcript';
16
16
  export * from './activityHandler';
17
17
  export * from './baseAdapter';
18
- export * from './cloudAdapter';
18
+ export { CloudAdapter, type CloudAdapterOptions } from './cloudAdapter';
19
19
  export * from './middlewareSet';
20
20
  export * from './messageFactory';
21
21
  export * from './statusCodes';
@@ -23,4 +23,5 @@ export * from './turnContext';
23
23
  export * from './turnContextStateCollection';
24
24
  export * from './storage/storage';
25
25
  export * from './headerPropagation';
26
+ export * from './httpClient';
26
27
  export * from './agent-client';
package/dist/src/index.js CHANGED
@@ -18,7 +18,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
18
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.HostingErrors = exports.buildJwksUri = exports.authorizeJWT = void 0;
21
+ exports.CloudAdapter = exports.HostingErrors = exports.buildJwksUri = exports.authorizeJWT = void 0;
22
22
  __exportStar(require("./auth/"), exports);
23
23
  var jwt_middleware_1 = require("./auth/jwt-middleware");
24
24
  Object.defineProperty(exports, "authorizeJWT", { enumerable: true, get: function () { return jwt_middleware_1.authorizeJWT; } });
@@ -35,7 +35,11 @@ __exportStar(require("./storage"), exports);
35
35
  __exportStar(require("./transcript"), exports);
36
36
  __exportStar(require("./activityHandler"), exports);
37
37
  __exportStar(require("./baseAdapter"), exports);
38
- __exportStar(require("./cloudAdapter"), exports);
38
+ // Note: re-export the public surface of `cloudAdapter` explicitly so the
39
+ // test-only internals (e.g., the per-process warning dedup set) do not leak
40
+ // into the package's public API.
41
+ var cloudAdapter_1 = require("./cloudAdapter");
42
+ Object.defineProperty(exports, "CloudAdapter", { enumerable: true, get: function () { return cloudAdapter_1.CloudAdapter; } });
39
43
  __exportStar(require("./middlewareSet"), exports);
40
44
  __exportStar(require("./messageFactory"), exports);
41
45
  __exportStar(require("./statusCodes"), exports);
@@ -43,5 +47,6 @@ __exportStar(require("./turnContext"), exports);
43
47
  __exportStar(require("./turnContextStateCollection"), exports);
44
48
  __exportStar(require("./storage/storage"), exports);
45
49
  __exportStar(require("./headerPropagation"), exports);
50
+ __exportStar(require("./httpClient"), exports);
46
51
  __exportStar(require("./agent-client"), exports);
47
52
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;AAEH,0CAAuB;AACvB,wDAAkE;AAAzD,8GAAA,YAAY,OAAA;AAAE,8GAAA,YAAY,OAAA;AAEnC,wCAAqB;AACrB,0CAAuB;AACvB,qDAAkC;AAClC,6CAAuD;AAA9C,4GAAA,MAAM,OAAiB;AAChC,2CAAwB;AACxB,0CAAuB;AACvB,0CAAuB;AACvB,4CAAyB;AACzB,+CAA4B;AAE5B,oDAAiC;AACjC,gDAA6B;AAC7B,iDAA8B;AAC9B,kDAA+B;AAC/B,mDAAgC;AAChC,gDAA6B;AAC7B,gDAA6B;AAC7B,+DAA4C;AAC5C,oDAAiC;AACjC,sDAAmC;AAEnC,iDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;AAEH,0CAAuB;AACvB,wDAAkE;AAAzD,8GAAA,YAAY,OAAA;AAAE,8GAAA,YAAY,OAAA;AAEnC,wCAAqB;AACrB,0CAAuB;AACvB,qDAAkC;AAClC,6CAAuD;AAA9C,4GAAA,MAAM,OAAiB;AAChC,2CAAwB;AACxB,0CAAuB;AACvB,0CAAuB;AACvB,4CAAyB;AACzB,+CAA4B;AAE5B,oDAAiC;AACjC,gDAA6B;AAC7B,yEAAyE;AACzE,4EAA4E;AAC5E,iCAAiC;AACjC,+CAAuE;AAA9D,4GAAA,YAAY,OAAA;AACrB,kDAA+B;AAC/B,mDAAgC;AAChC,gDAA6B;AAC7B,gDAA6B;AAC7B,+DAA4C;AAC5C,oDAAiC;AACjC,sDAAmC;AACnC,+CAA4B;AAE5B,iDAA8B"}
@@ -1,4 +1,4 @@
1
- import { AxiosInstance } from 'axios';
1
+ import { HttpClient } from '../httpClient';
2
2
  import { ConversationReference } from '@microsoft/agents-activity';
3
3
  import { AadResourceUrls, SignInResource, TokenExchangeRequest, TokenOrSinginResourceResponse, TokenResponse, TokenStatus } from './userTokenClient.types';
4
4
  import { AuthProvider } from '../auth';
@@ -7,7 +7,7 @@ import { HeaderPropagationCollection } from '../headerPropagation';
7
7
  * Client for managing user tokens.
8
8
  */
9
9
  export declare class UserTokenClient {
10
- client: AxiosInstance;
10
+ client: HttpClient;
11
11
  private msAppId;
12
12
  /**
13
13
  * Creates a new instance of UserTokenClient.
@@ -16,9 +16,9 @@ export declare class UserTokenClient {
16
16
  constructor(msAppId: string);
17
17
  /**
18
18
  * Creates a new instance of UserTokenClient.
19
- * @param axiosInstance The axios instance.
19
+ * @param httpClient The HttpClient instance.
20
20
  */
21
- constructor(axiosInstance: AxiosInstance);
21
+ constructor(httpClient: HttpClient);
22
22
  /**
23
23
  * Creates a new instance of UserTokenClient with authentication.
24
24
  * @param baseURL - The base URL for the API.
@@ -95,4 +95,5 @@ export declare class UserTokenClient {
95
95
  */
96
96
  getAadTokens(userId: string, connectionName: string, channelIdComposite: string, resourceUrls: AadResourceUrls): Promise<Record<string, TokenResponse>>;
97
97
  updateAuthToken(token: string): void;
98
+ private executeRequest;
98
99
  }