@microsoft/teams-js 2.38.0 → 2.39.0
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.
- package/README.md +4 -4
- package/dist/esm/packages/teams-js/dts/internal/telemetry.d.ts +4 -0
- package/dist/esm/packages/teams-js/dts/private/copilot/copilot.d.ts +2 -1
- package/dist/esm/packages/teams-js/dts/private/copilot/sidePanel.d.ts +75 -0
- package/dist/esm/packages/teams-js/dts/private/copilot/sidePanelInterfaces.d.ts +294 -0
- package/dist/esm/packages/teams-js/dts/private/index.d.ts +1 -0
- package/dist/esm/packages/teams-js/dts/public/runtime.d.ts +6 -0
- package/dist/esm/packages/teams-js/src/index.js +1 -1
- package/dist/esm/packages/teams-js/src/private/copilot/copilot.js +1 -1
- package/dist/esm/packages/teams-js/src/private/copilot/sidePanel.js +1 -0
- package/dist/esm/packages/teams-js/src/private/copilot/sidePanelInterfaces.js +1 -0
- package/dist/esm/packages/teams-js/src/public/nestedAppAuth.js +1 -1
- package/dist/esm/packages/teams-js/src/public/runtime.js +1 -1
- package/dist/esm/packages/teams-js/src/public/version.js +1 -1
- package/dist/umd/MicrosoftTeams.js +278 -5
- package/dist/umd/MicrosoftTeams.js.map +1 -1
- package/dist/umd/MicrosoftTeams.min.js +1 -1
- package/dist/umd/MicrosoftTeams.min.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
@@ -24,7 +24,7 @@ To install the stable [version](https://learn.microsoft.com/javascript/api/overv
|
|
24
24
|
|
25
25
|
### Production
|
26
26
|
|
27
|
-
You can reference these files directly [from here](https://res.cdn.office.net/teams-js/2.
|
27
|
+
You can reference these files directly [from here](https://res.cdn.office.net/teams-js/2.39.0/js/MicrosoftTeams.min.js) or point your package manager at them.
|
28
28
|
|
29
29
|
## Usage
|
30
30
|
|
@@ -45,13 +45,13 @@ Reference the library inside of your `.html` page using:
|
|
45
45
|
```html
|
46
46
|
<!-- Microsoft Teams JavaScript API (via CDN) -->
|
47
47
|
<script
|
48
|
-
src="https://res.cdn.office.net/teams-js/2.
|
49
|
-
integrity="sha384-
|
48
|
+
src="https://res.cdn.office.net/teams-js/2.39.0/js/MicrosoftTeams.min.js"
|
49
|
+
integrity="sha384-XYPfud/y4+g4RJ1EBfLD8IVybNuKXSda4PyKOc8h56srGBwitmBqbBWHb0mNWtfd"
|
50
50
|
crossorigin="anonymous"
|
51
51
|
></script>
|
52
52
|
|
53
53
|
<!-- Microsoft Teams JavaScript API (via npm) -->
|
54
|
-
<script src="node_modules/@microsoft/teams-js@2.
|
54
|
+
<script src="node_modules/@microsoft/teams-js@2.39.0/dist/MicrosoftTeams.min.js"></script>
|
55
55
|
|
56
56
|
<!-- Microsoft Teams JavaScript API (via local) -->
|
57
57
|
<script src="MicrosoftTeams.min.js"></script>
|
@@ -84,6 +84,10 @@ export declare const enum ApiName {
|
|
84
84
|
Conversations_RegisterStartConversationHandler = "conversations.registerStartConversationHandler",
|
85
85
|
Copilot_CustomTelemetry_SendCustomTelemetryData = "copilot.customTelemetry.sendCustomTelemetryData",
|
86
86
|
Copilot_Eligibility_GetEligibilityInfo = "copilot.eligibility.getEligibilityInfo",
|
87
|
+
Copilot_SidePanel_RegisterUserActionContentSelect = "copilot.sidePanel.registerUserActionContentSelect",
|
88
|
+
Copilot_SidePanel_RegisterOnUserConsentChange = "copilot.sidePanel.registerOnUserConsentChange",
|
89
|
+
Copilot_SidePanel_GetContent = "copilot.sidePanel.getContent",
|
90
|
+
Copilot_SidePanel_PreCheckUserConsent = "copilot.sidePanel.preCheckUserConsent",
|
87
91
|
Dialog_AdaptiveCard_Bot_Open = "dialog.adaptiveCard.bot.open",
|
88
92
|
Dialog_AdaptiveCard_Open = "dialog.adaptiveCard.open",
|
89
93
|
Dialog_RegisterMessageForChildHandler = "dialog.registerMessageForChildHandler",
|
@@ -0,0 +1,75 @@
|
|
1
|
+
/**
|
2
|
+
* @beta
|
3
|
+
* @hidden
|
4
|
+
* User information required by specific apps
|
5
|
+
* @internal
|
6
|
+
* Limited to Microsoft-internal use
|
7
|
+
* @module
|
8
|
+
*/
|
9
|
+
import { SdkError } from '../../public/interfaces';
|
10
|
+
import { Content, ContentRequest, PreCheckContextResponse, SidePanelError, SidePanelErrorImpl } from './sidePanelInterfaces';
|
11
|
+
/**
|
12
|
+
* @hidden
|
13
|
+
* @internal
|
14
|
+
* Limited to Microsoft-internal use
|
15
|
+
* @beta
|
16
|
+
* @returns boolean to represent whether copilot.sidePanel capability is supported
|
17
|
+
*
|
18
|
+
* @throws Error if {@linkcode app.initialize} has not successfully completed
|
19
|
+
*/
|
20
|
+
export declare function isSupported(): boolean;
|
21
|
+
/**
|
22
|
+
* @beta
|
23
|
+
* @hidden
|
24
|
+
* Determines if the provided error object is an instance of SidePanelError or SdkError.
|
25
|
+
* @internal
|
26
|
+
* Limited to Microsoft-internal use
|
27
|
+
* @param err The error object to check whether it is of SidePanelError type
|
28
|
+
*/
|
29
|
+
export declare function isResponseAReportableError(err: unknown): err is SidePanelError | SdkError;
|
30
|
+
/**
|
31
|
+
* Get user content data from the hub to send to copilot app.
|
32
|
+
*
|
33
|
+
* @returns { Promise<Content> } - promise resolves with a content object containing user content data
|
34
|
+
* @throws { SidePanelError | SdkError } - Throws a SidePanelError or SdkError if host SDK returns an error as a response to this call
|
35
|
+
*
|
36
|
+
* @hidden
|
37
|
+
* @beta
|
38
|
+
* @internal
|
39
|
+
* Limited to Microsoft-internal use
|
40
|
+
*/
|
41
|
+
export declare function getContent(request?: ContentRequest): Promise<Content>;
|
42
|
+
/**
|
43
|
+
* When the copilot detects a contextual query it gets the user consent status before making the getContent call.
|
44
|
+
*
|
45
|
+
* @returns { Promise<PreCheckContextResponse> } - promise resolves with a content object containing user content data
|
46
|
+
* @throws { SidePanelError | SdkError } - Throws a SidePanelError or SdkError if host SDK returns an error as a response to this call
|
47
|
+
*
|
48
|
+
* @hidden
|
49
|
+
* @beta
|
50
|
+
* @internal
|
51
|
+
* Limited to Microsoft-internal use
|
52
|
+
*/
|
53
|
+
export declare function preCheckUserConsent(): Promise<PreCheckContextResponse>;
|
54
|
+
/** Register user action content select handler function type */
|
55
|
+
export type userActionHandlerType = (selectedContent: Content) => void;
|
56
|
+
/**
|
57
|
+
* @hidden
|
58
|
+
* @beta
|
59
|
+
* Registers a handler to get updated content data from the hub to send to copilot app.
|
60
|
+
* This handler will be called when the user selects content in the application.
|
61
|
+
* @param handler - The handler for getting user action content select.
|
62
|
+
*
|
63
|
+
* @internal
|
64
|
+
* Limited to Microsoft-internal use
|
65
|
+
*/
|
66
|
+
export declare function registerUserActionContentSelect(handler: userActionHandlerType): void;
|
67
|
+
/**
|
68
|
+
* @hidden
|
69
|
+
* @beta
|
70
|
+
* @internal
|
71
|
+
* Limited to Microsoft-internal use
|
72
|
+
*
|
73
|
+
* Error thrown when the copilot side panel API is not supported on the current platform.
|
74
|
+
*/
|
75
|
+
export declare const copilotSidePanelNotSupportedOnPlatformError: SidePanelErrorImpl;
|
@@ -0,0 +1,294 @@
|
|
1
|
+
/**
|
2
|
+
* @hidden
|
3
|
+
*
|
4
|
+
* Interface for content data
|
5
|
+
*
|
6
|
+
* @internal
|
7
|
+
* Limited to Microsoft-internal use
|
8
|
+
*/
|
9
|
+
export declare enum ContentItemType {
|
10
|
+
EMAIL = "email",
|
11
|
+
TEXT = "text",
|
12
|
+
MEDIA = "media",
|
13
|
+
CALENDAR_INVITE = "calendarInvite",
|
14
|
+
WEB_PAGE = "webPage",
|
15
|
+
MIXED = "mixed"
|
16
|
+
}
|
17
|
+
/**
|
18
|
+
* @hidden
|
19
|
+
*
|
20
|
+
* Common properties for all email content types
|
21
|
+
*
|
22
|
+
* @internal
|
23
|
+
* Limited to Microsoft-internal use
|
24
|
+
*/
|
25
|
+
export interface BaseEmailContent {
|
26
|
+
subject?: string;
|
27
|
+
body?: string;
|
28
|
+
sender?: string;
|
29
|
+
recipients?: string[];
|
30
|
+
cc?: string[];
|
31
|
+
bcc?: string[];
|
32
|
+
attachments?: string[];
|
33
|
+
renderedHtml?: string;
|
34
|
+
}
|
35
|
+
/**
|
36
|
+
* @hidden
|
37
|
+
*
|
38
|
+
* Interface for server email content (must have id, receivedTime, sentTime)
|
39
|
+
*
|
40
|
+
* @internal
|
41
|
+
* Limited to Microsoft-internal use
|
42
|
+
*/
|
43
|
+
export interface ServerEmailContent extends BaseEmailContent {
|
44
|
+
id: string;
|
45
|
+
receivedTime?: Date;
|
46
|
+
sentTime?: Date;
|
47
|
+
}
|
48
|
+
/**
|
49
|
+
* @hidden
|
50
|
+
*
|
51
|
+
* Interface for draft email content (no id, times optional)
|
52
|
+
*
|
53
|
+
* @internal
|
54
|
+
* Limited to Microsoft-internal use
|
55
|
+
*/
|
56
|
+
export interface DraftEmailContent extends BaseEmailContent {
|
57
|
+
savedTime?: Date;
|
58
|
+
}
|
59
|
+
export type EmailContent = ServerEmailContent | DraftEmailContent;
|
60
|
+
/**
|
61
|
+
* @hidden
|
62
|
+
*
|
63
|
+
* Interface for email content data
|
64
|
+
*
|
65
|
+
* @internal
|
66
|
+
* Limited to Microsoft-internal use
|
67
|
+
*/
|
68
|
+
export interface CalendarInviteContent {
|
69
|
+
id: string;
|
70
|
+
title?: string;
|
71
|
+
startTime?: Date;
|
72
|
+
endTime?: Date;
|
73
|
+
location?: string;
|
74
|
+
meetingParameters?: string;
|
75
|
+
attendees?: string[];
|
76
|
+
organizer?: string;
|
77
|
+
body?: string;
|
78
|
+
attachments?: string[];
|
79
|
+
}
|
80
|
+
/**
|
81
|
+
* @hidden
|
82
|
+
*
|
83
|
+
* Interface for web page content data
|
84
|
+
*
|
85
|
+
* @internal
|
86
|
+
* Limited to Microsoft-internal use
|
87
|
+
*/
|
88
|
+
export interface WebPageContent {
|
89
|
+
id?: string;
|
90
|
+
url: string;
|
91
|
+
title?: string;
|
92
|
+
data?: string;
|
93
|
+
description_for_model?: string;
|
94
|
+
description?: string;
|
95
|
+
faviconUrl?: string;
|
96
|
+
}
|
97
|
+
/**
|
98
|
+
* @hidden
|
99
|
+
*
|
100
|
+
* Interface for user selected content data
|
101
|
+
*
|
102
|
+
* @internal
|
103
|
+
* Limited to Microsoft-internal use
|
104
|
+
*/
|
105
|
+
export interface TextSelection {
|
106
|
+
content: string;
|
107
|
+
source?: EmailContent | WebPageContent | CalendarInviteContent;
|
108
|
+
}
|
109
|
+
/**
|
110
|
+
* @hidden
|
111
|
+
*
|
112
|
+
* Interface for image media content
|
113
|
+
*
|
114
|
+
* @internal
|
115
|
+
* Limited to Microsoft-internal use
|
116
|
+
*/
|
117
|
+
export interface ImageContent {
|
118
|
+
url: string;
|
119
|
+
width?: number;
|
120
|
+
height?: number;
|
121
|
+
fileSize?: number;
|
122
|
+
format?: string;
|
123
|
+
thumbnailUrl?: string;
|
124
|
+
}
|
125
|
+
/**
|
126
|
+
* @hidden
|
127
|
+
*
|
128
|
+
* Interface for audio media content
|
129
|
+
*
|
130
|
+
* @internal
|
131
|
+
* Limited to Microsoft-internal use
|
132
|
+
*/
|
133
|
+
export interface AudioContent {
|
134
|
+
url: string;
|
135
|
+
duration?: number;
|
136
|
+
fileSize?: number;
|
137
|
+
format?: string;
|
138
|
+
transcript?: string;
|
139
|
+
}
|
140
|
+
/**
|
141
|
+
* @hidden
|
142
|
+
*
|
143
|
+
* Interface for video media content
|
144
|
+
*
|
145
|
+
* @internal
|
146
|
+
* Limited to Microsoft-internal use
|
147
|
+
*/
|
148
|
+
export interface VideoContent {
|
149
|
+
url: string;
|
150
|
+
width?: number;
|
151
|
+
height?: number;
|
152
|
+
duration?: number;
|
153
|
+
fileSize?: number;
|
154
|
+
format?: string;
|
155
|
+
thumbnailUrl?: string;
|
156
|
+
transcript?: string;
|
157
|
+
}
|
158
|
+
/**
|
159
|
+
* @hidden
|
160
|
+
*
|
161
|
+
* Enum for media selection types
|
162
|
+
*
|
163
|
+
* @internal
|
164
|
+
* Limited to Microsoft-internal use
|
165
|
+
*/
|
166
|
+
export declare enum MediaSelectionType {
|
167
|
+
IMAGE = "image",
|
168
|
+
AUDIO = "audio",
|
169
|
+
VIDEO = "video"
|
170
|
+
}
|
171
|
+
/**
|
172
|
+
* @hidden
|
173
|
+
*
|
174
|
+
* Interface for media selection
|
175
|
+
*
|
176
|
+
* @internal
|
177
|
+
* Limited to Microsoft-internal use
|
178
|
+
*/
|
179
|
+
export interface MediaSelection {
|
180
|
+
type: MediaSelectionType;
|
181
|
+
altText?: string;
|
182
|
+
content: ImageContent | AudioContent | VideoContent;
|
183
|
+
source?: EmailContent | WebPageContent | CalendarInviteContent;
|
184
|
+
}
|
185
|
+
/**
|
186
|
+
* @hidden
|
187
|
+
*
|
188
|
+
* Interface for a catch all type content data
|
189
|
+
*
|
190
|
+
* @internal
|
191
|
+
* Limited to Microsoft-internal use
|
192
|
+
*/
|
193
|
+
export interface MixedContent {
|
194
|
+
emails?: EmailContent[];
|
195
|
+
texts?: TextSelection[];
|
196
|
+
media?: (ImageContent | AudioContent | VideoContent)[];
|
197
|
+
calendarInvites?: CalendarInviteContent[];
|
198
|
+
webPages?: WebPageContent[];
|
199
|
+
otherContent?: Array<Record<string, unknown>> | undefined;
|
200
|
+
}
|
201
|
+
/**
|
202
|
+
* @hidden
|
203
|
+
*
|
204
|
+
* Interface for content data we get from hub
|
205
|
+
*
|
206
|
+
* @internal
|
207
|
+
* Limited to Microsoft-internal use
|
208
|
+
*/
|
209
|
+
export type ContentItem = EmailContent | TextSelection | MediaSelection | CalendarInviteContent | WebPageContent | MixedContent;
|
210
|
+
export interface Content {
|
211
|
+
userAction?: string;
|
212
|
+
contentType: ContentItemType.CALENDAR_INVITE | ContentItemType.EMAIL | ContentItemType.MEDIA | ContentItemType.TEXT | ContentItemType.WEB_PAGE | ContentItemType.MIXED;
|
213
|
+
formCode?: string;
|
214
|
+
contentItems: ContentItem[];
|
215
|
+
metadata?: string;
|
216
|
+
description?: string;
|
217
|
+
error_code?: string;
|
218
|
+
status?: string;
|
219
|
+
}
|
220
|
+
export interface ContentRequest {
|
221
|
+
localEndpointInfo: string;
|
222
|
+
}
|
223
|
+
/**
|
224
|
+
* @hidden
|
225
|
+
*
|
226
|
+
* Interface for the response context used during user consent pre-checks.
|
227
|
+
* Contains information about the user's consent status and whether to show the consent card.
|
228
|
+
*
|
229
|
+
* @internal
|
230
|
+
* Limited to Microsoft-internal use
|
231
|
+
*/
|
232
|
+
export interface PreCheckContextResponse {
|
233
|
+
error_code?: string;
|
234
|
+
status?: string;
|
235
|
+
user_consent: UserConsent;
|
236
|
+
show_consent_card: boolean;
|
237
|
+
}
|
238
|
+
/**
|
239
|
+
* @hidden
|
240
|
+
*
|
241
|
+
* Enum representing possible user consent states.
|
242
|
+
*
|
243
|
+
* @internal
|
244
|
+
* Limited to Microsoft-internal use
|
245
|
+
*/
|
246
|
+
export declare enum UserConsent {
|
247
|
+
Accepted = "accepted",
|
248
|
+
NotAccepted = "not_accepted"
|
249
|
+
}
|
250
|
+
/**
|
251
|
+
* @hidden
|
252
|
+
*
|
253
|
+
* Type for user action handler functions that receive content data.
|
254
|
+
*
|
255
|
+
* @internal
|
256
|
+
* Limited to Microsoft-internal use
|
257
|
+
*/
|
258
|
+
export declare enum SidePanelErrorCode {
|
259
|
+
ConsentNotAccepted = "consent_not_accepted",
|
260
|
+
PageContentBlockedPolicy = "page_content_blocked_policy",
|
261
|
+
PageContentBlockedDlp = "page_content_blocked_dlp",
|
262
|
+
PageContentTypeNotSupportedYet = "page_content_type_not_supported_yet",
|
263
|
+
PageContentSizeNotSupported = "page_content_size_not_supported",
|
264
|
+
PageContextChanged = "page_context_changed",
|
265
|
+
PageContentExtractionFailed = "page_content_extraction_failed",
|
266
|
+
PageContentSizeNotSupportedPDF = "page_content_size_not_supported_pdf",
|
267
|
+
NotSupportedOnPlatform = "not_supported_on_platform",
|
268
|
+
OtherError = "other_error"
|
269
|
+
}
|
270
|
+
/**
|
271
|
+
* @hidden
|
272
|
+
*
|
273
|
+
* Interface for errors related to side panel operations.
|
274
|
+
* Contains an error code and an optional message.
|
275
|
+
*
|
276
|
+
* @internal
|
277
|
+
* Limited to Microsoft-internal use
|
278
|
+
*/
|
279
|
+
export interface SidePanelError {
|
280
|
+
errorCode: SidePanelErrorCode;
|
281
|
+
message?: string;
|
282
|
+
}
|
283
|
+
/**
|
284
|
+
* @hidden
|
285
|
+
* @beta
|
286
|
+
* Implementation of the SidePanelError interface.
|
287
|
+
* This class extends the built-in Error class and includes an error code.
|
288
|
+
* It is used to represent errors that occur during side panel operations.
|
289
|
+
* The error code can be one of the SidePanelErrorCode values or a general ErrorCode.
|
290
|
+
*/
|
291
|
+
export declare class SidePanelErrorImpl extends Error implements SidePanelError {
|
292
|
+
errorCode: SidePanelErrorCode;
|
293
|
+
constructor(errorCode: SidePanelErrorCode, message?: string);
|
294
|
+
}
|
@@ -4,6 +4,7 @@ export { sendCustomMessage, sendCustomEvent, registerCustomHandler, uploadCustom
|
|
4
4
|
export * as conversations from './conversations';
|
5
5
|
export { ConversationResponse, OpenConversationRequest } from './conversations';
|
6
6
|
export * as copilot from './copilot/copilot';
|
7
|
+
export * as sidePanelInterfaces from './copilot/sidePanelInterfaces';
|
7
8
|
export * as externalAppAuthentication from './externalAppAuthentication';
|
8
9
|
export * as externalAppAuthenticationForCEA from './externalAppAuthenticationForCEA';
|
9
10
|
export * as externalAppCardActions from './externalAppCardActions';
|
@@ -33,6 +33,7 @@ interface IRuntimeV4 extends IBaseRuntime {
|
|
33
33
|
readonly copilot?: {
|
34
34
|
readonly customTelemetry?: {};
|
35
35
|
readonly eligibility?: {};
|
36
|
+
readonly sidePanel?: {};
|
36
37
|
};
|
37
38
|
readonly dialog?: {
|
38
39
|
readonly card?: {
|
@@ -185,6 +186,11 @@ export declare function fastForwardRuntime(outdatedRuntime: IBaseRuntime): Runti
|
|
185
186
|
* Limited to Microsoft-internal use
|
186
187
|
*/
|
187
188
|
export declare const upgradeChain: IRuntimeUpgrade[];
|
189
|
+
/**
|
190
|
+
* This version is for legacy Teams mobile clients that don’t pass a runtime object during initialization.
|
191
|
+
* It’s the minimum version required to support deeply nested app auth.
|
192
|
+
*/
|
193
|
+
export declare const legacyTeamsMobileVersionForDeeplyNestedAuth = "2.1.2";
|
188
194
|
/**
|
189
195
|
* This structure is used for versions of Teams that don't pass a runtime object during initialization.
|
190
196
|
* Please see the extensive comments in versionAndPlatformAgnosticTeamsRuntimeConfig for more information
|
@@ -1 +1 @@
|
|
1
|
-
export{NotificationTypes,UserSettingTypes,ViewerActionTypes}from"./private/interfaces.js";export{openFilePreview,registerCustomHandler,registerUserSettingsChangeHandler,sendCustomEvent,sendCustomMessage,uploadCustomApp}from"./private/privateAPIs.js";import*as e from"./private/logs.js";export{e as logs};import*as r from"./private/conversations.js";export{r as conversations};import*as t from"./private/copilot/copilot.js";export{t as copilot};import*as o from"./private/
|
1
|
+
export{NotificationTypes,UserSettingTypes,ViewerActionTypes}from"./private/interfaces.js";export{openFilePreview,registerCustomHandler,registerUserSettingsChangeHandler,sendCustomEvent,sendCustomMessage,uploadCustomApp}from"./private/privateAPIs.js";import*as e from"./private/logs.js";export{e as logs};import*as r from"./private/conversations.js";export{r as conversations};import*as t from"./private/copilot/copilot.js";export{t as copilot};import*as o from"./private/copilot/sidePanelInterfaces.js";export{o as sidePanelInterfaces};import*as p from"./private/externalAppAuthentication.js";export{p as externalAppAuthentication};import*as i from"./private/externalAppAuthenticationForCEA.js";export{i as externalAppAuthenticationForCEA};import*as a from"./private/externalAppCardActions.js";export{a as externalAppCardActions};import*as s from"./private/externalAppCardActionsForCEA.js";export{s as externalAppCardActionsForCEA};import*as m from"./private/externalAppCardActionsForDA.js";export{m as externalAppCardActionsForDA};import*as n from"./private/externalAppCommands.js";export{n as externalAppCommands};import*as l from"./private/files.js";export{l as files};import*as c from"./private/meetingRoom.js";export{c as meetingRoom};import*as f from"./private/messageChannels/messageChannels.js";export{f as messageChannels};import*as u from"./private/nestedAppAuth/nestedAppAuthBridge.js";export{u as nestedAppAuthBridge};import*as x from"./private/notifications.js";export{x as notifications};import*as j from"./private/otherAppStateChange.js";export{j as otherAppStateChange};import*as d from"./private/remoteCamera.js";export{d as remoteCamera};import*as g from"./private/appEntity.js";export{g as appEntity};import*as b from"./private/teams/teams.js";export{b as teams};import*as v from"./private/videoEffectsEx.js";export{v as videoEffectsEx};import*as C from"./private/hostEntity/hostEntity.js";export{C as hostEntity};import*as A from"./private/store.js";export{A as store};export{ChannelType,DialogDimension,FrameContexts,HostClientType,HostName,RenderingSurfaces,DialogDimension as TaskModuleDimension,TeamType,UserTeamRole}from"./public/constants.js";export{ActionObjectType,EduType,ErrorCode,FileOpenPreference,SecondaryM365ContentIdName}from"./public/interfaces.js";export{AppId}from"./public/appId.js";export{EmailAddress}from"./public/emailAddress.js";export{activateChildProxyingCommunication,getCurrentFeatureFlagsState,overwriteFeatureFlagsState,setFeatureFlagsState}from"./public/featureFlags.js";export{getAdaptiveCardSchemaVersion}from"./public/adaptiveCards.js";export{ChildAppWindow,ParentAppWindow}from"./public/appWindow.js";export{ValidatedSafeString}from"./public/validatedSafeString.js";export{version}from"./public/version.js";export{enablePrintCapability,executeDeepLink,getContext,getMruTabInstances,getTabInstances,initialize,initializeWithFrameContext,print,registerAppButtonClickHandler,registerAppButtonHoverEnterHandler,registerAppButtonHoverLeaveHandler,registerBackButtonHandler,registerBeforeUnloadHandler,registerChangeSettingsHandler,registerFocusEnterHandler,registerFullScreenHandler,registerOnLoadHandler,registerOnThemeChangeHandler,setFrameContext,shareDeepLink}from"./public/publicAPIs.js";export{navigateBack,navigateCrossDomain,navigateToTab,returnFocus}from"./public/navigation.js";export{UUID}from"./public/uuidObject.js";import*as h from"./public/liveShareHost.js";export{h as liveShare};export{LiveShareHost}from"./public/liveShareHost.js";import*as S from"./public/authentication.js";export{S as authentication};import*as H from"./public/app/app.js";export{H as app};import*as F from"./public/appInstallDialog.js";export{F as appInstallDialog};import*as y from"./public/barCode.js";export{y as barCode};import*as T from"./public/chat.js";export{T as chat};import*as E from"./public/clipboard.js";export{E as clipboard};import*as I from"./public/dialog/dialog.js";export{I as dialog};import*as D from"./public/nestedAppAuth.js";export{D as nestedAppAuth};import*as w from"./public/geoLocation/geoLocation.js";export{w as geoLocation};import*as P from"./public/pages/pages.js";export{P as pages};import*as B from"./public/menus.js";export{B as menus};import*as k from"./public/media.js";export{k as media};import*as L from"./public/secondaryBrowser.js";export{L as secondaryBrowser};import*as M from"./public/location.js";export{M as location};import*as U from"./public/meeting/meeting.js";export{U as meeting};import*as O from"./public/monetization.js";export{O as monetization};import*as V from"./public/calendar.js";export{V as calendar};import*as z from"./public/mail/mail.js";export{z as mail};import*as W from"./public/teamsAPIs.js";export{W as teamsCore};import*as N from"./public/people.js";export{N as people};import*as R from"./public/profile.js";export{R as profile};import*as q from"./public/videoEffects.js";export{q as videoEffects};import*as G from"./public/search.js";export{G as search};import*as J from"./public/sharing/sharing.js";export{J as sharing};import*as K from"./public/stageView/stageView.js";export{K as stageView};import*as Q from"./public/visualMedia/visualMedia.js";export{Q as visualMedia};import*as X from"./public/webStorage.js";export{X as webStorage};import*as Y from"./public/call.js";export{Y as call};import*as Z from"./public/appInitialization.js";export{Z as appInitialization};import*as $ from"./public/thirdPartyCloudStorage.js";export{$ as thirdPartyCloudStorage};import*as _ from"./public/settings.js";export{_ as settings};import*as ee from"./public/tasks.js";export{ee as tasks};import*as re from"./public/marketplace.js";export{re as marketplace};
|
@@ -1 +1 @@
|
|
1
|
-
import*as o from"./customTelemetry.js";export{o as customTelemetry};import*as r from"./eligibility.js";export{r as eligibility};
|
1
|
+
import*as o from"./customTelemetry.js";export{o as customTelemetry};import*as r from"./eligibility.js";export{r as eligibility};import*as e from"./sidePanel.js";export{e as sidePanel};
|
@@ -0,0 +1 @@
|
|
1
|
+
import{__awaiter as e}from"../../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{callFunctionInHostAndHandleResponse as t}from"../../internal/communication.js";import{registerHandlerHelper as n}from"../../internal/handlers.js";import{ensureInitialized as o}from"../../internal/internalAPIs.js";import{ResponseHandler as r}from"../../internal/responseHandler.js";import{getApiVersionTag as i}from"../../internal/telemetry.js";import{FrameContexts as s}from"../../public/constants.js";import{isSdkError as l}from"../../public/interfaces.js";import{runtime as c}from"../../public/runtime.js";import{SidePanelErrorCode as p,SidePanelErrorImpl as u}from"./sidePanelInterfaces.js";const a="v2";function d(){var e;return o(c)&&!!(null===(e=c.supports.copilot)||void 0===e?void 0:e.sidePanel)}function m(e){if("object"!=typeof e||null===e)return!1;const t=e;return Object.values(p).includes(t.errorCode)&&(void 0===t.message||"string"==typeof t.message)||l(e)}function f(n){return e(this,void 0,void 0,(function*(){o(c);const e=n?[new C(n)]:[];return t("copilot.sidePanel.getContent",e,new b,i(a,"copilot.sidePanel.getContent"),m)}))}function j(){return e(this,void 0,void 0,(function*(){return o(c),t("copilot.sidePanel.preCheckUserConsent",[],new h,i(a,"copilot.sidePanel.preCheckUserConsent"),m)}))}function v(e){n(i(a,"copilot.sidePanel.registerUserActionContentSelect"),"copilot.sidePanel.userActionContentSelect",e,[s.content],(()=>{if(!d())throw P}))}const P=new u(p.NotSupportedOnPlatform,"This API is not supported on the current platform.");class b extends r{validate(e){return null!==e&&"object"==typeof e}deserialize(e){return e}}class h extends r{validate(e){return null!==e&&"object"==typeof e}deserialize(e){return e}}class C{constructor(e){this.contentRequest=e}serialize(){return this.contentRequest}}export{P as copilotSidePanelNotSupportedOnPlatformError,f as getContent,m as isResponseAReportableError,d as isSupported,j as preCheckUserConsent,v as registerUserActionContentSelect};
|
@@ -0,0 +1 @@
|
|
1
|
+
var e,t,o,n;!function(e){e.EMAIL="email",e.TEXT="text",e.MEDIA="media",e.CALENDAR_INVITE="calendarInvite",e.WEB_PAGE="webPage",e.MIXED="mixed"}(e||(e={})),function(e){e.IMAGE="image",e.AUDIO="audio",e.VIDEO="video"}(t||(t={})),function(e){e.Accepted="accepted",e.NotAccepted="not_accepted"}(o||(o={})),function(e){e.ConsentNotAccepted="consent_not_accepted",e.PageContentBlockedPolicy="page_content_blocked_policy",e.PageContentBlockedDlp="page_content_blocked_dlp",e.PageContentTypeNotSupportedYet="page_content_type_not_supported_yet",e.PageContentSizeNotSupported="page_content_size_not_supported",e.PageContextChanged="page_context_changed",e.PageContentExtractionFailed="page_content_extraction_failed",e.PageContentSizeNotSupportedPDF="page_content_size_not_supported_pdf",e.NotSupportedOnPlatform="not_supported_on_platform",e.OtherError="other_error"}(n||(n={}));class p extends Error{constructor(e,t){super(t),this.errorCode=e,this.name="SidePanelError"}}export{e as ContentItemType,t as MediaSelectionType,n as SidePanelErrorCode,p as SidePanelErrorImpl,o as UserConsent};
|
@@ -1 +1 @@
|
|
1
|
-
import{__awaiter as n}from"../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{Communication as r,callFunctionInHostAndHandleResponse as t}from"../internal/communication.js";import{GlobalVars as i}from"../internal/globalVars.js";import{ensureInitialized as e}from"../internal/internalAPIs.js";import{getApiVersionTag as
|
1
|
+
import{__awaiter as n}from"../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{Communication as r,callFunctionInHostAndHandleResponse as t}from"../internal/communication.js";import{GlobalVars as i}from"../internal/globalVars.js";import{ensureInitialized as e,isCurrentSDKVersionAtLeast as o}from"../internal/internalAPIs.js";import{getApiVersionTag as s}from"../internal/telemetry.js";import{HostClientType as a,errorNotSupportedOnPlatform as p}from"./constants.js";import{runtime as u,legacyTeamsMobileVersionForDeeplyNestedAuth as l}from"./runtime.js";const c="v2",d={validate:n=>Array.isArray(n)||"object"==typeof n,deserialize:n=>n};var m;function h(){var n;return null!==(n=e(u)&&(u.isNAAChannelRecommended||!!(e(u)&&y()&&u.isLegacyTeams&&u.supports.nestedAppAuth)))&&void 0!==n&&n}function f(){return e(u),r.parentOrigin}function A(){var n;return null!==(n=e(u)&&u.canParentManageNAATrustedOrigins)&&void 0!==n&&n}function v(){var n;return null!==(n=e(u)&&(u.isDeeplyNestedAuthSupported||!!(e(u)&&y()&&u.isLegacyTeams&&o(l))))&&void 0!==n&&n}function y(){return i.hostClientType===a.android||i.hostClientType===a.ios||i.hostClientType===a.ipados||i.hostClientType===a.visionOS}function g(r){return n(this,void 0,void 0,(function*(){if(!A())throw p;const n=r.map(E);return T(m.ADD,n)}))}function w(r){return n(this,void 0,void 0,(function*(){if(!A())throw p;const n=r.map(E);return T(m.DELETE,n)}))}function T(r,i){return n(this,void 0,void 0,(function*(){if(window.parent!==window.top)throw new Error("This API is only available in the top-level parent.");if(!Array.isArray(i)||0===i.length)throw new Error(`The '${i}' parameter is required and must be a non-empty array.`);const n=[new D(r,i)];return t("nestedAppAuth.manageNAATrustedOrigins",n,d,s(c,"nestedAppAuth.manageNAATrustedOrigins"))}))}function E(n){try{return new URL(n).origin.toLowerCase()}catch(r){throw new Error(`Invalid origin provided: ${n}`)}}!function(n){n.ADD="ADD",n.DELETE="DELETE"}(m||(m={}));class D{constructor(n,r){this.action=n,this.appOrigins=r}serialize(){return{action:this.action,appOrigins:this.appOrigins}}}export{g as addNAATrustedOrigins,A as canParentManageNAATrustedOrigins,w as deleteNAATrustedOrigins,f as getParentOrigin,v as isDeeplyNestedAuthSupported,h as isNAAChannelRecommended};
|
@@ -1 +1 @@
|
|
1
|
-
import{__rest as o}from"../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{errorRuntimeNotInitialized as e,errorRuntimeNotSupported as s}from"../internal/constants.js";import{GlobalVars as i}from"../internal/globalVars.js";import{getLogger as t}from"../internal/telemetry.js";import{compareSDKVersions as n,deepFreeze as a}from"../internal/utils.js";import{HostClientType as r,teamsMinAdaptiveCardVersion as p}from"./constants.js";const l=t("runtime"),d=4;function u(o){return o.apiVersion===d}function c(o){if(u(o))return!0;throw-1===o.apiVersion?new Error(e):new Error(s)}let g={apiVersion:-1,supports:{}};const m={apiVersion:4,isNAAChannelRecommended:!1,isDeeplyNestedAuthSupported:!1,hostVersionsInfo:p,isLegacyTeams:!0,supports:{appInstallDialog:{},appEntity:{},call:{},chat:{},conversations:{},dialog:{card:{bot:{}},url:{bot:{},parentCommunication:{}},update:{}},interactive:{},logs:{},meetingRoom:{},menus:{},monetization:{},notifications:{},pages:{config:{},backStack:{},fullTrust:{}},remoteCamera:{},teams:{fullTrust:{}},teamsCore:{},video:{sharedFrame:{}}}},y=[r.desktop,r.web,r.rigel,r.surfaceHub,r.teamsRoomsWindows,r.teamsRoomsAndroid,r.teamsPhones,r.teamsDisplays],b=[r.android,r.ios,r.ipados,r.visionOS],f=[...y,...b];function h(o){let e=o;if(e.apiVersion<d&&v.forEach((o=>{e.apiVersion===o.versionToUpgradeFrom&&(e=o.upgradeToNextVersion(e))})),u(e))return e;throw new Error("Received a runtime that could not be upgraded to the latest version")}const v=[{versionToUpgradeFrom:1,upgradeToNextVersion:o=>{var e;return{apiVersion:2,hostVersionsInfo:void 0,isLegacyTeams:o.isLegacyTeams,supports:Object.assign(Object.assign({},o.supports),{dialog:o.supports.dialog?{card:void 0,url:o.supports.dialog,update:null===(e=o.supports.dialog)||void 0===e?void 0:e.update}:void 0})}}},{versionToUpgradeFrom:2,upgradeToNextVersion:e=>{const s=e.supports,i=o(s,["appNotification"]);return Object.assign(Object.assign({},e),{apiVersion:3,supports:i})}},{versionToUpgradeFrom:3,upgradeToNextVersion:o=>{var e,s,i,t,n;return{apiVersion:4,hostVersionsInfo:o.hostVersionsInfo,isNAAChannelRecommended:o.isNAAChannelRecommended,isLegacyTeams:o.isLegacyTeams,supports:Object.assign(Object.assign({},o.supports),{dialog:o.supports.dialog?{card:null===(e=o.supports.dialog)||void 0===e?void 0:e.card,url:{bot:null===(i=null===(s=o.supports.dialog)||void 0===s?void 0:s.url)||void 0===i?void 0:i.bot,parentCommunication:(null===(t=o.supports.dialog)||void 0===t?void 0:t.url)?{}:void 0},update:null===(n=o.supports.dialog)||void 0===n?void 0:n.update}:void 0})}}}],T={"1.0.0":[{capability:{pages:{appButton:{},tabs:{}},stageView:{}},hostClientTypes:y}],"1.9.0":[{capability:{location:{}},hostClientTypes:f}],"2.0.0":[{capability:{people:{}},hostClientTypes:f},{capability:{sharing:{}},hostClientTypes:[r.desktop,r.web]}],"2.0.1":[{capability:{teams:{fullTrust:{joinedTeams:{}}}},hostClientTypes:[r.android,r.desktop,r.ios,r.teamsRoomsAndroid,r.teamsPhones,r.teamsDisplays,r.web]},{capability:{webStorage:{}},hostClientTypes:[r.desktop]}],"2.0.5":[{capability:{webStorage:{}},hostClientTypes:[r.android,r.ios]}],"2.0.8":[{capability:{sharing:{}},hostClientTypes:[r.android,r.ios]}],"2.1.1":[{capability:{nestedAppAuth:{}},hostClientTypes:[r.android,r.ios,r.ipados,r.visionOS]}]},
|
1
|
+
import{__rest as o}from"../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{errorRuntimeNotInitialized as e,errorRuntimeNotSupported as s}from"../internal/constants.js";import{GlobalVars as i}from"../internal/globalVars.js";import{getLogger as t}from"../internal/telemetry.js";import{compareSDKVersions as n,deepFreeze as a}from"../internal/utils.js";import{HostClientType as r,teamsMinAdaptiveCardVersion as p}from"./constants.js";const l=t("runtime"),d=4;function u(o){return o.apiVersion===d}function c(o){if(u(o))return!0;throw-1===o.apiVersion?new Error(e):new Error(s)}let g={apiVersion:-1,supports:{}};const m={apiVersion:4,isNAAChannelRecommended:!1,isDeeplyNestedAuthSupported:!1,hostVersionsInfo:p,isLegacyTeams:!0,supports:{appInstallDialog:{},appEntity:{},call:{},chat:{},conversations:{},dialog:{card:{bot:{}},url:{bot:{},parentCommunication:{}},update:{}},interactive:{},logs:{},meetingRoom:{},menus:{},monetization:{},notifications:{},pages:{config:{},backStack:{},fullTrust:{}},remoteCamera:{},teams:{fullTrust:{}},teamsCore:{},video:{sharedFrame:{}}}},y=[r.desktop,r.web,r.rigel,r.surfaceHub,r.teamsRoomsWindows,r.teamsRoomsAndroid,r.teamsPhones,r.teamsDisplays],b=[r.android,r.ios,r.ipados,r.visionOS],f=[...y,...b];function h(o){let e=o;if(e.apiVersion<d&&v.forEach((o=>{e.apiVersion===o.versionToUpgradeFrom&&(e=o.upgradeToNextVersion(e))})),u(e))return e;throw new Error("Received a runtime that could not be upgraded to the latest version")}const v=[{versionToUpgradeFrom:1,upgradeToNextVersion:o=>{var e;return{apiVersion:2,hostVersionsInfo:void 0,isLegacyTeams:o.isLegacyTeams,supports:Object.assign(Object.assign({},o.supports),{dialog:o.supports.dialog?{card:void 0,url:o.supports.dialog,update:null===(e=o.supports.dialog)||void 0===e?void 0:e.update}:void 0})}}},{versionToUpgradeFrom:2,upgradeToNextVersion:e=>{const s=e.supports,i=o(s,["appNotification"]);return Object.assign(Object.assign({},e),{apiVersion:3,supports:i})}},{versionToUpgradeFrom:3,upgradeToNextVersion:o=>{var e,s,i,t,n;return{apiVersion:4,hostVersionsInfo:o.hostVersionsInfo,isNAAChannelRecommended:o.isNAAChannelRecommended,isLegacyTeams:o.isLegacyTeams,supports:Object.assign(Object.assign({},o.supports),{dialog:o.supports.dialog?{card:null===(e=o.supports.dialog)||void 0===e?void 0:e.card,url:{bot:null===(i=null===(s=o.supports.dialog)||void 0===s?void 0:s.url)||void 0===i?void 0:i.bot,parentCommunication:(null===(t=o.supports.dialog)||void 0===t?void 0:t.url)?{}:void 0},update:null===(n=o.supports.dialog)||void 0===n?void 0:n.update}:void 0})}}}],T="2.1.2",V={"1.0.0":[{capability:{pages:{appButton:{},tabs:{}},stageView:{}},hostClientTypes:y}],"1.9.0":[{capability:{location:{}},hostClientTypes:f}],"2.0.0":[{capability:{people:{}},hostClientTypes:f},{capability:{sharing:{}},hostClientTypes:[r.desktop,r.web]}],"2.0.1":[{capability:{teams:{fullTrust:{joinedTeams:{}}}},hostClientTypes:[r.android,r.desktop,r.ios,r.teamsRoomsAndroid,r.teamsPhones,r.teamsDisplays,r.web]},{capability:{webStorage:{}},hostClientTypes:[r.desktop]}],"2.0.5":[{capability:{webStorage:{}},hostClientTypes:[r.android,r.ios]}],"2.0.8":[{capability:{sharing:{}},hostClientTypes:[r.android,r.ios]}],"2.1.1":[{capability:{nestedAppAuth:{}},hostClientTypes:[r.android,r.ios,r.ipados,r.visionOS]}],"2.1.2":[]},C=l.extend("generateBackCompatRuntimeConfig");function j(o,e){const s=Object.assign({},o);for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&("object"!=typeof e[i]||Array.isArray(e[i])?i in o||(s[i]=e[i]):s[i]=j(o[i]||{},e[i]));return s}function w(o,e,s){C("generating back compat runtime config for %s",o);let t=Object.assign({},e.supports);C("Supported capabilities in config before updating based on highestSupportedVersion: %o",t),Object.keys(s).forEach((e=>{n(o,e)>=0&&s[e].forEach((o=>{void 0!==i.hostClientType&&o.hostClientTypes.includes(i.hostClientType)&&(t=j(t,o.capability))}))}));const a={apiVersion:d,hostVersionsInfo:p,isLegacyTeams:!0,supports:t};return C("Runtime config after updating based on highestSupportedVersion: %o",a),a}const O=l.extend("applyRuntimeConfig");function A(o){"string"==typeof o.apiVersion&&(O("Trying to apply runtime with string apiVersion, processing as v1: %o",o),o=Object.assign(Object.assign({},o),{apiVersion:1})),O("Fast-forwarding runtime %o",o);const e=h(o);O("Applying runtime %o",e),g=a(e)}export{A as applyRuntimeConfig,h as fastForwardRuntime,w as generateVersionBasedTeamsRuntimeConfig,c as isRuntimeInitialized,d as latestRuntimeApiVersion,T as legacyTeamsMobileVersionForDeeplyNestedAuth,V as mapTeamsVersionToSupportedCapabilities,g as runtime,v as upgradeChain,f as v1HostClientTypes,b as v1MobileHostClientTypes,m as versionAndPlatformAgnosticTeamsRuntimeConfig};
|
@@ -1 +1 @@
|
|
1
|
-
const o="2.
|
1
|
+
const o="2.39.0";export{o as version};
|