@microsoft/teams-js 2.19.1-beta.0 → 2.20.0-beta.1
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/MicrosoftTeams.d.ts +67 -63
- package/dist/MicrosoftTeams.js +648 -253
- package/dist/MicrosoftTeams.js.map +1 -1
- package/dist/MicrosoftTeams.min.js +1 -1
- package/dist/MicrosoftTeams.min.js.map +1 -1
- package/package.json +1 -1
package/dist/MicrosoftTeams.js
CHANGED
@@ -1012,8 +1012,8 @@ var ApiName;
|
|
1012
1012
|
ApiName["Dialog_Url_Bot_Open"] = "dialog.url.bot.open";
|
1013
1013
|
ApiName["Dialog_Url_Open"] = "dialog.url.open";
|
1014
1014
|
ApiName["Dialog_Url_Submit"] = "dialog.url.submit";
|
1015
|
-
ApiName["
|
1016
|
-
ApiName["
|
1015
|
+
ApiName["Dialog_Url_ParentCommunication_SendMessageToParentFromDialog"] = "dialog.url.parentCommunication.sendMessageToParentFromDialog";
|
1016
|
+
ApiName["Dialog_Url_ParentCommunication_SendMessageToDialog"] = "dialog.url.parentCommunication.sendMessageToDialog";
|
1017
1017
|
ApiName["Files_AddCloudStorageFolder"] = "files.addCloudStorageFolder";
|
1018
1018
|
ApiName["Files_AddCloudStorageProvider"] = "files.addCloudStorageProvider";
|
1019
1019
|
ApiName["Files_AddCloudStorageProviderFile"] = "files.addCloudStorageProviderFile";
|
@@ -1035,7 +1035,7 @@ var ApiName;
|
|
1035
1035
|
ApiName["GeoLocation_GetCurrentLocation"] = "geoLocation.getCurrentLocation";
|
1036
1036
|
ApiName["GeoLocation_HasPermission"] = "geoLocation.hasPermission";
|
1037
1037
|
ApiName["GeoLocation_Map_ChooseLocation"] = "geoLocation.map.chooseLocation";
|
1038
|
-
ApiName["GeoLocation_RequestPermission"] = "geoLocation.
|
1038
|
+
ApiName["GeoLocation_RequestPermission"] = "geoLocation.requestPermission";
|
1039
1039
|
ApiName["GeoLocation_ShowLocation"] = "geoLocation.showLocation";
|
1040
1040
|
ApiName["Interactive_GetClientInfo"] = "interactive.getClientInfo";
|
1041
1041
|
ApiName["Interactive_GetClientRoles"] = "interactive.getClientRoles";
|
@@ -1108,8 +1108,8 @@ var ApiName;
|
|
1108
1108
|
ApiName["Pages_BackStack_NavigateBack"] = "pages.backStack.navigateBack";
|
1109
1109
|
ApiName["Pages_BackStack_RegisterBackButtonHandler"] = "pages.backStack.registerBackButtonHandler";
|
1110
1110
|
ApiName["Pages_Config_RegisterChangeConfigHandler"] = "pages.config.registerChangeConfigHandler";
|
1111
|
-
ApiName["
|
1112
|
-
ApiName["
|
1111
|
+
ApiName["Pages_Config_RegisterOnRemoveHandler"] = "pages.config.registerOnRemoveHandler";
|
1112
|
+
ApiName["Pages_Config_RegisterOnSaveHandler"] = "pages.config.registerOnSaveHandler";
|
1113
1113
|
ApiName["Pages_Config_SetConfig"] = "pages.config.setConfig";
|
1114
1114
|
ApiName["Pages_Config_SetValidityState"] = "pages.config.setValidityState";
|
1115
1115
|
ApiName["Pages_CurrentApp_NavigateTo"] = "pages.currentApp.navigateTo";
|
@@ -1121,13 +1121,23 @@ var ApiName;
|
|
1121
1121
|
ApiName["Pages_NavigateToApp"] = "pages.navigateToApp";
|
1122
1122
|
ApiName["Pages_RegisterFocusEnterHandler"] = "pages.registerFocusEnterHandler";
|
1123
1123
|
ApiName["Pages_RegisterFullScreenHandler"] = "pages.registerFullScreenHandler";
|
1124
|
+
ApiName["Pages_RemoveEvent_NotifyFailure"] = "pages.removeEvent.notifyFailure";
|
1125
|
+
ApiName["Pages_RemoveEvent_NotifySuccess"] = "pages.removeEvent.notifySuccess";
|
1124
1126
|
ApiName["Pages_ReturnFocus"] = "pages.returnFocus";
|
1127
|
+
ApiName["Pages_SaveEvent_NotifyFailure"] = "pages.saveEvent.notifyFailure";
|
1128
|
+
ApiName["Pages_SaveEvent_NotifySuccess"] = "pages.saveEvent.notifySuccess";
|
1125
1129
|
ApiName["Pages_SetCurrentFrame"] = "pages.setCurrentFrame";
|
1126
1130
|
ApiName["Pages_ShareDeepLink"] = "pages.shareDeepLink";
|
1127
1131
|
ApiName["Pages_Tabs_GetMruTabInstances"] = "pages.tabs.getMruTabInstances";
|
1128
1132
|
ApiName["Pages_Tabs_GetTabInstances"] = "pages.tabs.getTabInstances";
|
1129
1133
|
ApiName["Pages_Tabs_NavigateToTab"] = "pages.tabs.navigateToTab";
|
1130
1134
|
ApiName["People_SelectPeople"] = "people.selectPeople";
|
1135
|
+
ApiName["PrivateAPIs_OpenFilePreview"] = "openFilePreview";
|
1136
|
+
ApiName["PrivateAPIs_RegisterCustomHandler"] = "registerCustomHandler";
|
1137
|
+
ApiName["PrivateAPIs_RegisterUserSettingsChangeHandler"] = "registerUserSettingsChangeHandler";
|
1138
|
+
ApiName["PrivateAPIs_SendCustomMessage"] = "sendCustomMessage";
|
1139
|
+
ApiName["PrivateAPIs_UploadCustomApp"] = "uploadCustomApp";
|
1140
|
+
ApiName["Profile_ShowProfile"] = "profile.showProfile";
|
1131
1141
|
ApiName["PublicAPIs_ExecuteDeepLink"] = "executeDeepLink";
|
1132
1142
|
ApiName["PublicAPIs_GetContext"] = "getContext";
|
1133
1143
|
ApiName["PublicAPIs_GetMruTabInstances"] = "getMruTabInstances";
|
@@ -1146,17 +1156,70 @@ var ApiName;
|
|
1146
1156
|
ApiName["PublicAPIs_ShareDeepLink"] = "shareDeepLink";
|
1147
1157
|
ApiName["RegisterHandler"] = "registerHandler";
|
1148
1158
|
ApiName["RegisterOnThemeChangeHandler"] = "registerOnThemeChangeHandler";
|
1159
|
+
ApiName["RemoteCamera_GetCapableParticipants"] = "remoteCamera.getCapableParticipants";
|
1160
|
+
ApiName["RemoteCamera_RegisterOnCapableParticipantsChangeHandler"] = "remoteCamera.registerOnCapableParticipantsChangeHandler";
|
1161
|
+
ApiName["RemoteCamera_RegisterOnDeviceStateChangeHandler"] = "remoteCamera.registerOnDeviceStateChangeHandler";
|
1162
|
+
ApiName["RemoteCamera_RegisterOnErrorHandler"] = "remoteCamera.registerOnErrorHandler";
|
1163
|
+
ApiName["RemoteCamera_RegisterOnSessionStatusChangeHandler"] = "remoteCamera.registerOnSessionStatusChangeHandler";
|
1164
|
+
ApiName["RemoteCamera_RequestControl"] = "remoteCamera.requestControl";
|
1165
|
+
ApiName["RemoteCamera_SendControlCommand"] = "remoteCamera.sendControlCommand";
|
1166
|
+
ApiName["RemoteCamera_TerminateSession"] = "remoteCamera.terminateSession";
|
1167
|
+
ApiName["Search_CloseSearch"] = "search.closeSearch";
|
1168
|
+
ApiName["Search_RegisterOnChangeHandler"] = "search.registerOnChangeHandler";
|
1169
|
+
ApiName["Search_RegisterOnClosedHandler"] = "search.registerOnClosedHandler";
|
1170
|
+
ApiName["Search_RegisterOnExecutedHandler"] = "search.registerOnExecutedHandler";
|
1171
|
+
ApiName["Search_UnregisterHandlers"] = "search.unregisterHandlers";
|
1172
|
+
ApiName["SecondaryBrowser_OpenUrl"] = "secondaryBrowser.openUrl";
|
1173
|
+
ApiName["Settings_GetSettings"] = "settings.getSettings";
|
1174
|
+
ApiName["Settings_RegisterOnRemoveHandler"] = "settings.registerOnRemoveHandler";
|
1175
|
+
ApiName["Settings_RegisterOnSaveHandler"] = "settings.registerOnSaveHandler";
|
1149
1176
|
ApiName["Settings_Remove_Failure"] = "settings.remove.failure";
|
1150
1177
|
ApiName["Settings_Remove_Success"] = "settings.remove.success";
|
1151
1178
|
ApiName["Settings_Save_Failure"] = "settings.save.failure";
|
1152
1179
|
ApiName["Settings_Save_Success"] = "settings.save.success";
|
1180
|
+
ApiName["Settings_SetSettings"] = "settings.setSettings";
|
1181
|
+
ApiName["Settings_SetValidityState"] = "settings.setValidityState";
|
1182
|
+
ApiName["StageView_Open"] = "stageView.open";
|
1153
1183
|
ApiName["Tasks_StartTask"] = "tasks.startTask";
|
1154
1184
|
ApiName["Tasks_SubmitTask"] = "tasks.submitTask";
|
1155
1185
|
ApiName["Tasks_UpdateTask"] = "tasks.updateTask";
|
1186
|
+
ApiName["Teams_FullTrust_GetConfigSetting"] = "teams.fullTrust.getConfigSetting";
|
1187
|
+
ApiName["Teams_FullTrust_JoinedTeams_GetUserJoinedTeams"] = "teams.fullTrust.joinedTeams.getUserJoinedTeams";
|
1188
|
+
ApiName["Teams_GetTeamChannels"] = "teams.getTeamChannels";
|
1189
|
+
ApiName["Teams_RefreshSiteUrl"] = "teams.refreshSiteUrl";
|
1190
|
+
ApiName["VideoEffects_MediaStream_RegisterForVideoFrame"] = "videoEffects.mediaStream.registerForVideoFrame";
|
1191
|
+
ApiName["VideoEffects_NotifySelectedVideoEffectChanged"] = "videoEffects.notifySelectedVideoEffectChanged";
|
1192
|
+
ApiName["VideoEffects_NotifyError"] = "videoEffects.notifyError";
|
1193
|
+
ApiName["VideoEffects_NotifyVideoFrameProcessed"] = "videoEffects.notifyVideoFrameProcessed";
|
1194
|
+
ApiName["VideoEffects_RegisterEffectParameterChangeHandler"] = "videoEffects.registerEffectParameterChangeHandler";
|
1195
|
+
ApiName["VideoEffects_RegisterForVideoEffect"] = "videoEffects.registerForVideoEffect";
|
1196
|
+
ApiName["VideoEffects_RegisterForVideoFrame"] = "videoEffects.registerForVideoFrame";
|
1197
|
+
ApiName["VideoEffects_RegisterSetFrameProcessTimeLimitHandler"] = "videoEffects.setFrameProcessTimeLimitHandler";
|
1198
|
+
ApiName["VideoEffects_RegisterStartVideoExtensibilityVideoStreamHandler"] = "videoEffects.startVideoExtensibilityVideoStreamHandler";
|
1199
|
+
ApiName["VideoEffects_RegisterForVideoBufferHandler"] = "videoEffects.registerForVideoBufferHandler";
|
1200
|
+
ApiName["VideoEffectsEx_MediaStream_RegisterForVideoFrame"] = "videoEffectsEX.mediaStream.registerForVideoFrame";
|
1201
|
+
ApiName["VideoEffectsEx_NotifyError"] = "videoEffectsEx.notifyError";
|
1202
|
+
ApiName["VideoEffectsEx_NotifySelectedVideoEffectChanged"] = "videoEffectsEx.notifySelectedVideoEffectChanged";
|
1203
|
+
ApiName["VideoEffectsEx_NotifyVideoFrameProcessed"] = "videoEffectsEx.notifyVideoFrameProcessed";
|
1204
|
+
ApiName["VideoEffectsEx_RegisterEffectParameterChangeHandler"] = "videoEffectsEx.registerEffectParamterChangeHandler";
|
1205
|
+
ApiName["VideoEffectsEx_RegisterForVideoEffect"] = "videoEffectsEx.registerForVideoEffect";
|
1206
|
+
ApiName["VideoEffectsEx_RegisterForVideoFrame"] = "videoEffectsEx.registerForVideoFrame";
|
1207
|
+
ApiName["VideoEffectsEx_RegisterNewVideoFrameHandler"] = "videoEffectsEx.registerNewVideoFrameHandler";
|
1208
|
+
ApiName["VideoEffectsEx_RegisterSetFrameProcessTimeLimitHandler"] = "videoEffectsEX.registerSetFrameProcessTimeLimitHandler";
|
1209
|
+
ApiName["VideoEffectsEx_RegisterStartVideoExtensibilityVideoStreamHandler"] = "videoEffectsEX.registerStartVideoExtensibilityVideoStreamHandler";
|
1210
|
+
ApiName["VideoEffectsEx_UpdatePersonalizedEffects"] = "videoEffectsEx.updatePersonalizedEffects";
|
1211
|
+
ApiName["VideoPerformanceMonitor_Constructor"] = "videoPerformanceMonitor.performanceDataGenerated";
|
1212
|
+
ApiName["VideoPerformanceMonitor_ReportFrameProcessed"] = "videoPerformanceMonitor.reportFrameProcessed";
|
1213
|
+
ApiName["VideoPerformanceMonitor_ReportTextureStreamAcquired"] = "videoPerformanceMonitor.reportTextureStreamAcquired";
|
1214
|
+
ApiName["VideoPerformanceMonitor_StartMonitorSlowFrameProcessing"] = "videoPerformanceMonitor.startMonitorSlowFrameProcessing";
|
1215
|
+
ApiName["VisualMedia_HasPermission"] = "visualMedia.hasPermission";
|
1216
|
+
ApiName["VisualMedia_Image_CaptureImages"] = "visualMedia.image.captureImages";
|
1217
|
+
ApiName["VisualMedia_Image_RetrieveImages"] = "visualMedia.image.retrieveImages";
|
1218
|
+
ApiName["VisualMedia_RequestPermission"] = "visualMedia.requestPermission";
|
1156
1219
|
})(ApiName || (ApiName = {}));
|
1157
1220
|
|
1158
1221
|
;// CONCATENATED MODULE: ./src/artifactsForCDN/validDomains.json
|
1159
|
-
const validDomains_namespaceObject = JSON.parse('{"validOrigins":["teams.microsoft.com","teams.microsoft.us","gov.teams.microsoft.us","dod.teams.microsoft.us","int.teams.microsoft.com","teams.
|
1222
|
+
const validDomains_namespaceObject = JSON.parse('{"validOrigins":["teams.microsoft.com","teams.microsoft.us","gov.teams.microsoft.us","dod.teams.microsoft.us","int.teams.microsoft.com","*.teams.microsoft.com","outlook.office.com","outlook-sdf.office.com","outlook.office365.com","outlook-sdf.office365.com","outlook.live.com","outlook-sdf.live.com","teams.live.com","local.teams.live.com","local.teams.live.com:8080","local.teams.office.com","local.teams.office.com:8080","devspaces.skype.com","ssauth.skype.com","*.www.office.com","www.office.com","word.office.com","excel.office.com","powerpoint.office.com","www.officeppe.com","*.www.microsoft365.com","www.microsoft365.com","bing.com","edgeservices.bing.com","www.bing.com","www.staging-bing-int.com","teams.cloud.microsoft","outlook.cloud.microsoft","m365.cloud.microsoft","copilot.microsoft.com","windows.msn.com"]}');
|
1160
1223
|
var artifactsForCDN_validDomains_namespaceObject = /*#__PURE__*/__webpack_require__.t(validDomains_namespaceObject, 2);
|
1161
1224
|
;// CONCATENATED MODULE: ./src/internal/constants.ts
|
1162
1225
|
|
@@ -2102,7 +2165,7 @@ var __rest = (undefined && undefined.__rest) || function (s, e) {
|
|
2102
2165
|
|
2103
2166
|
|
2104
2167
|
const runtimeLogger = getLogger('runtime');
|
2105
|
-
const latestRuntimeApiVersion =
|
2168
|
+
const latestRuntimeApiVersion = 4;
|
2106
2169
|
function isLatestRuntimeVersion(runtime) {
|
2107
2170
|
return runtime.apiVersion === latestRuntimeApiVersion;
|
2108
2171
|
}
|
@@ -2134,7 +2197,7 @@ function isRuntimeInitialized(runtime) {
|
|
2134
2197
|
}
|
2135
2198
|
let runtime_runtime = _uninitializedRuntime;
|
2136
2199
|
const versionAndPlatformAgnosticTeamsRuntimeConfig = {
|
2137
|
-
apiVersion:
|
2200
|
+
apiVersion: 4,
|
2138
2201
|
hostVersionsInfo: teamsMinAdaptiveCardVersion,
|
2139
2202
|
isLegacyTeams: true,
|
2140
2203
|
supports: {
|
@@ -2149,6 +2212,7 @@ const versionAndPlatformAgnosticTeamsRuntimeConfig = {
|
|
2149
2212
|
},
|
2150
2213
|
url: {
|
2151
2214
|
bot: {},
|
2215
|
+
parentCommunication: {},
|
2152
2216
|
},
|
2153
2217
|
update: {},
|
2154
2218
|
},
|
@@ -2246,6 +2310,27 @@ const upgradeChain = [
|
|
2246
2310
|
return Object.assign(Object.assign({}, previousVersionRuntime), { apiVersion: 3, supports: newSupports });
|
2247
2311
|
},
|
2248
2312
|
},
|
2313
|
+
{
|
2314
|
+
versionToUpgradeFrom: 3,
|
2315
|
+
upgradeToNextVersion: (previousVersionRuntime) => {
|
2316
|
+
var _a, _b, _c, _d, _e;
|
2317
|
+
return {
|
2318
|
+
apiVersion: 4,
|
2319
|
+
hostVersionsInfo: previousVersionRuntime.hostVersionsInfo,
|
2320
|
+
isLegacyTeams: previousVersionRuntime.isLegacyTeams,
|
2321
|
+
supports: Object.assign(Object.assign({}, previousVersionRuntime.supports), { dialog: previousVersionRuntime.supports.dialog
|
2322
|
+
? {
|
2323
|
+
card: (_a = previousVersionRuntime.supports.dialog) === null || _a === void 0 ? void 0 : _a.card,
|
2324
|
+
url: {
|
2325
|
+
bot: (_c = (_b = previousVersionRuntime.supports.dialog) === null || _b === void 0 ? void 0 : _b.url) === null || _c === void 0 ? void 0 : _c.bot,
|
2326
|
+
parentCommunication: ((_d = previousVersionRuntime.supports.dialog) === null || _d === void 0 ? void 0 : _d.url) ? {} : undefined,
|
2327
|
+
},
|
2328
|
+
update: (_e = previousVersionRuntime.supports.dialog) === null || _e === void 0 ? void 0 : _e.update,
|
2329
|
+
}
|
2330
|
+
: undefined }),
|
2331
|
+
};
|
2332
|
+
},
|
2333
|
+
},
|
2249
2334
|
];
|
2250
2335
|
const mapTeamsVersionToSupportedCapabilities = {
|
2251
2336
|
// 1.0.0 just signifies "these capabilities have practically always been supported." For some of these
|
@@ -2417,7 +2502,7 @@ const _minRuntimeConfigToUninitialize = {
|
|
2417
2502
|
* @hidden
|
2418
2503
|
* Package version.
|
2419
2504
|
*/
|
2420
|
-
const version = "2.
|
2505
|
+
const version = "2.20.0-beta.1";
|
2421
2506
|
|
2422
2507
|
;// CONCATENATED MODULE: ./src/internal/internalAPIs.ts
|
2423
2508
|
|
@@ -2691,7 +2776,6 @@ function validateOrigin(messageOrigin) {
|
|
2691
2776
|
|
2692
2777
|
|
2693
2778
|
|
2694
|
-
|
2695
2779
|
/**
|
2696
2780
|
* Namespace to interact with the authentication-specific part of the SDK.
|
2697
2781
|
*
|
@@ -2830,6 +2914,7 @@ var authentication;
|
|
2830
2914
|
authTokenRequest === null || authTokenRequest === void 0 ? void 0 : authTokenRequest.resources,
|
2831
2915
|
authTokenRequest === null || authTokenRequest === void 0 ? void 0 : authTokenRequest.claims,
|
2832
2916
|
authTokenRequest === null || authTokenRequest === void 0 ? void 0 : authTokenRequest.silent,
|
2917
|
+
authTokenRequest === null || authTokenRequest === void 0 ? void 0 : authTokenRequest.tenantId,
|
2833
2918
|
]));
|
2834
2919
|
}).then(([success, result]) => {
|
2835
2920
|
if (success) {
|
@@ -2968,21 +3053,11 @@ var authentication;
|
|
2968
3053
|
});
|
2969
3054
|
}
|
2970
3055
|
/**
|
2971
|
-
*
|
2972
|
-
*
|
2973
|
-
* {@link authentication.
|
2974
|
-
* authentication request was successful.
|
2975
|
-
*
|
2976
|
-
* @remarks
|
2977
|
-
* This function is usable only from the authentication window.
|
2978
|
-
* This call causes the authentication window to be closed.
|
2979
|
-
*
|
2980
|
-
* @param result - Specifies a result for the authentication. If specified, the frame that initiated the authentication pop-up receives
|
2981
|
-
* this value in its callback or via the `Promise` return value
|
2982
|
-
* @param callbackUrl - Specifies the url to redirect back to if the client is Win32 Outlook.
|
3056
|
+
* @deprecated
|
3057
|
+
* This function used to have an unused optional second parameter called callbackUrl. Because it was not used, it has been removed.
|
3058
|
+
* Please use the {@link authentication.notifySuccess authentication.notifySuccess(result?: string): void} instead.
|
2983
3059
|
*/
|
2984
|
-
function notifySuccess(result,
|
2985
|
-
redirectIfWin32Outlook(callbackUrl, 'result', result);
|
3060
|
+
function notifySuccess(result, _callbackUrl) {
|
2986
3061
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.authentication);
|
2987
3062
|
sendMessageToParent('authentication.authenticate.success', [result]);
|
2988
3063
|
// Wait for the message to be sent before closing the window
|
@@ -2990,22 +3065,11 @@ var authentication;
|
|
2990
3065
|
}
|
2991
3066
|
authentication.notifySuccess = notifySuccess;
|
2992
3067
|
/**
|
2993
|
-
*
|
2994
|
-
*
|
2995
|
-
* {@link authentication.
|
2996
|
-
* authentication request failed.
|
2997
|
-
|
2998
|
-
*
|
2999
|
-
* @remarks
|
3000
|
-
* This function is usable only on the authentication window.
|
3001
|
-
* This call causes the authentication window to be closed.
|
3002
|
-
*
|
3003
|
-
* @param result - Specifies a result for the authentication. If specified, the frame that initiated the authentication pop-up receives
|
3004
|
-
* this value in its callback or via the `Promise` return value
|
3005
|
-
* @param callbackUrl - Specifies the url to redirect back to if the client is Win32 Outlook.
|
3068
|
+
* @deprecated
|
3069
|
+
* This function used to have an unused optional second parameter called callbackUrl. Because it was not used, it has been removed.
|
3070
|
+
* Please use the {@link authentication.notifyFailure authentication.notifyFailure(result?: string): void} instead.
|
3006
3071
|
*/
|
3007
|
-
function notifyFailure(reason,
|
3008
|
-
redirectIfWin32Outlook(callbackUrl, 'reason', reason);
|
3072
|
+
function notifyFailure(reason, _callbackUrl) {
|
3009
3073
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.authentication);
|
3010
3074
|
sendMessageToParent('authentication.authenticate.failure', [reason]);
|
3011
3075
|
// Wait for the message to be sent before closing the window
|
@@ -3034,48 +3098,6 @@ var authentication;
|
|
3034
3098
|
closeAuthenticationWindow();
|
3035
3099
|
}
|
3036
3100
|
}
|
3037
|
-
/**
|
3038
|
-
* Validates that the callbackUrl param is a valid connector url, appends the result/reason and authSuccess/authFailure as URL fragments and redirects the window
|
3039
|
-
* @param callbackUrl - the connectors url to redirect to
|
3040
|
-
* @param key - "result" in case of success and "reason" in case of failure
|
3041
|
-
* @param value - the value of the passed result/reason parameter
|
3042
|
-
*/
|
3043
|
-
function redirectIfWin32Outlook(callbackUrl, key, value) {
|
3044
|
-
if (callbackUrl) {
|
3045
|
-
const link = document.createElement('a');
|
3046
|
-
link.href = decodeURIComponent(callbackUrl);
|
3047
|
-
if (link.host &&
|
3048
|
-
link.host !== ssrSafeWindow().location.host &&
|
3049
|
-
link.host === 'outlook.office.com' &&
|
3050
|
-
link.search.indexOf('client_type=Win32_Outlook') > -1) {
|
3051
|
-
if (key && key === 'result') {
|
3052
|
-
if (value) {
|
3053
|
-
link.href = updateUrlParameter(link.href, 'result', value);
|
3054
|
-
}
|
3055
|
-
Communication.currentWindow.location.assign(updateUrlParameter(link.href, 'authSuccess', ''));
|
3056
|
-
}
|
3057
|
-
if (key && key === 'reason') {
|
3058
|
-
if (value) {
|
3059
|
-
link.href = updateUrlParameter(link.href, 'reason', value);
|
3060
|
-
}
|
3061
|
-
Communication.currentWindow.location.assign(updateUrlParameter(link.href, 'authFailure', ''));
|
3062
|
-
}
|
3063
|
-
}
|
3064
|
-
}
|
3065
|
-
}
|
3066
|
-
/**
|
3067
|
-
* Appends either result or reason as a fragment to the 'callbackUrl'
|
3068
|
-
* @param uri - the url to modify
|
3069
|
-
* @param key - the fragment key
|
3070
|
-
* @param value - the fragment value
|
3071
|
-
*/
|
3072
|
-
function updateUrlParameter(uri, key, value) {
|
3073
|
-
const i = uri.indexOf('#');
|
3074
|
-
let hash = i === -1 ? '#' : uri.substr(i);
|
3075
|
-
hash = hash + '&' + key + (value !== '' ? '=' + value : '');
|
3076
|
-
uri = i === -1 ? uri : uri.substr(0, i);
|
3077
|
-
return uri + hash;
|
3078
|
-
}
|
3079
3101
|
/**
|
3080
3102
|
* @hidden
|
3081
3103
|
* Limited set of data residencies information exposed to 1P application developers
|
@@ -3245,69 +3267,94 @@ var dialog;
|
|
3245
3267
|
}
|
3246
3268
|
url.submit = submit;
|
3247
3269
|
/**
|
3248
|
-
*
|
3270
|
+
* Subcapability that allows communication between the dialog and the parent app.
|
3249
3271
|
*
|
3250
3272
|
* @remarks
|
3251
|
-
*
|
3252
|
-
*
|
3253
|
-
* @param message - The message to send to the parent
|
3273
|
+
* Note that dialog can be invoked from parentless scenarios e.g. Search Message Extensions. The subcapability `parentCommunication` is not supported in such scenarios.
|
3254
3274
|
*
|
3255
3275
|
* @beta
|
3256
3276
|
*/
|
3257
|
-
|
3258
|
-
|
3259
|
-
|
3260
|
-
|
3261
|
-
|
3262
|
-
|
3277
|
+
let parentCommunication;
|
3278
|
+
(function (parentCommunication) {
|
3279
|
+
/**
|
3280
|
+
* Send message to the parent from dialog
|
3281
|
+
*
|
3282
|
+
* @remarks
|
3283
|
+
* This function is only intended to be called from code running within the dialog. Calling it from outside the dialog will have no effect.
|
3284
|
+
*
|
3285
|
+
* @param message - The message to send to the parent
|
3286
|
+
*
|
3287
|
+
* @beta
|
3288
|
+
*/
|
3289
|
+
function sendMessageToParentFromDialog(
|
3290
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
3291
|
+
message) {
|
3292
|
+
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.task);
|
3293
|
+
if (!isSupported()) {
|
3294
|
+
throw errorNotSupportedOnPlatform;
|
3295
|
+
}
|
3296
|
+
sendMessageToParentWithVersion(getApiVersionTag(dialogTelemetryVersionNumber, ApiName.Dialog_Url_ParentCommunication_SendMessageToParentFromDialog), 'messageForParent', [message]);
|
3263
3297
|
}
|
3264
|
-
|
3265
|
-
|
3266
|
-
|
3267
|
-
|
3268
|
-
|
3269
|
-
|
3270
|
-
|
3271
|
-
|
3272
|
-
|
3273
|
-
|
3274
|
-
|
3275
|
-
|
3276
|
-
|
3277
|
-
|
3278
|
-
|
3279
|
-
|
3298
|
+
parentCommunication.sendMessageToParentFromDialog = sendMessageToParentFromDialog;
|
3299
|
+
/**
|
3300
|
+
* Send message to the dialog from the parent
|
3301
|
+
*
|
3302
|
+
* @param message - The message to send
|
3303
|
+
*
|
3304
|
+
* @beta
|
3305
|
+
*/
|
3306
|
+
function sendMessageToDialog(
|
3307
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
3308
|
+
message) {
|
3309
|
+
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.sidePanel, FrameContexts.meetingStage);
|
3310
|
+
if (!isSupported()) {
|
3311
|
+
throw errorNotSupportedOnPlatform;
|
3312
|
+
}
|
3313
|
+
sendMessageToParentWithVersion(getApiVersionTag(dialogTelemetryVersionNumber, ApiName.Dialog_Url_ParentCommunication_SendMessageToDialog), 'messageForChild', [message]);
|
3280
3314
|
}
|
3281
|
-
|
3282
|
-
|
3283
|
-
|
3284
|
-
|
3285
|
-
|
3286
|
-
|
3287
|
-
|
3288
|
-
|
3289
|
-
|
3290
|
-
|
3291
|
-
|
3292
|
-
|
3293
|
-
|
3294
|
-
|
3295
|
-
|
3296
|
-
|
3297
|
-
|
3315
|
+
parentCommunication.sendMessageToDialog = sendMessageToDialog;
|
3316
|
+
/**
|
3317
|
+
* Register a listener that will be triggered when a message is received from the app that opened the dialog.
|
3318
|
+
*
|
3319
|
+
* @remarks
|
3320
|
+
* This function is only intended to be called from code running within the dialog. Calling it from outside the dialog will have no effect.
|
3321
|
+
*
|
3322
|
+
* @param listener - The listener that will be triggered.
|
3323
|
+
*
|
3324
|
+
* @beta
|
3325
|
+
*/
|
3326
|
+
function registerOnMessageFromParent(listener) {
|
3327
|
+
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.task);
|
3328
|
+
if (!isSupported()) {
|
3329
|
+
throw errorNotSupportedOnPlatform;
|
3330
|
+
}
|
3331
|
+
// We need to remove the original 'messageForChild'
|
3332
|
+
// handler since the original does not allow for post messages.
|
3333
|
+
// It is replaced by the user specified listener that is passed in.
|
3334
|
+
removeHandler('messageForChild');
|
3335
|
+
registerHandler('messageForChild', listener);
|
3336
|
+
storedMessages.reverse();
|
3337
|
+
while (storedMessages.length > 0) {
|
3338
|
+
const message = storedMessages.pop();
|
3339
|
+
listener(message);
|
3340
|
+
}
|
3298
3341
|
}
|
3299
|
-
|
3300
|
-
|
3301
|
-
|
3302
|
-
|
3303
|
-
|
3304
|
-
|
3305
|
-
|
3306
|
-
|
3307
|
-
|
3342
|
+
parentCommunication.registerOnMessageFromParent = registerOnMessageFromParent;
|
3343
|
+
/**
|
3344
|
+
* Checks if dialog.url.parentCommunication capability is supported by the host
|
3345
|
+
*
|
3346
|
+
* @returns boolean to represent whether dialog.url.parentCommunication capability is supported
|
3347
|
+
*
|
3348
|
+
* @throws Error if {@linkcode app.initialize} has not successfully completed
|
3349
|
+
*
|
3350
|
+
* @beta
|
3351
|
+
*/
|
3352
|
+
function isSupported() {
|
3353
|
+
var _a, _b;
|
3354
|
+
return internalAPIs_ensureInitialized(runtime_runtime) && !!((_b = (_a = runtime_runtime.supports.dialog) === null || _a === void 0 ? void 0 : _a.url) === null || _b === void 0 ? void 0 : _b.parentCommunication);
|
3308
3355
|
}
|
3309
|
-
|
3310
|
-
url.
|
3356
|
+
parentCommunication.isSupported = isSupported;
|
3357
|
+
})(parentCommunication = url.parentCommunication || (url.parentCommunication = {}));
|
3311
3358
|
/**
|
3312
3359
|
* Checks if dialog.url module is supported by the host
|
3313
3360
|
*
|
@@ -4310,6 +4357,31 @@ function setCurrentFrameHelper(apiVersionTag, frameInfo) {
|
|
4310
4357
|
}
|
4311
4358
|
sendMessageToParentWithVersion(apiVersionTag, 'setFrameContext', [frameInfo]);
|
4312
4359
|
}
|
4360
|
+
function configSetValidityStateHelper(apiVersionTag, validityState) {
|
4361
|
+
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.settings, FrameContexts.remove);
|
4362
|
+
if (!pages.config.isSupported()) {
|
4363
|
+
throw errorNotSupportedOnPlatform;
|
4364
|
+
}
|
4365
|
+
sendMessageToParentWithVersion(apiVersionTag, 'settings.setValidityState', [validityState]);
|
4366
|
+
}
|
4367
|
+
function getConfigHelper(apiVersionTag) {
|
4368
|
+
return new Promise((resolve) => {
|
4369
|
+
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.settings, FrameContexts.remove, FrameContexts.sidePanel);
|
4370
|
+
if (!pages.isSupported()) {
|
4371
|
+
throw errorNotSupportedOnPlatform;
|
4372
|
+
}
|
4373
|
+
resolve(sendAndUnwrapWithVersion(apiVersionTag, 'settings.getSettings'));
|
4374
|
+
});
|
4375
|
+
}
|
4376
|
+
function configSetConfigHelper(apiVersionTag, instanceConfig) {
|
4377
|
+
return new Promise((resolve) => {
|
4378
|
+
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.settings, FrameContexts.sidePanel);
|
4379
|
+
if (!pages.config.isSupported()) {
|
4380
|
+
throw errorNotSupportedOnPlatform;
|
4381
|
+
}
|
4382
|
+
resolve(sendAndHandleStatusAndReasonWithVersion(apiVersionTag, 'settings.setSettings', instanceConfig));
|
4383
|
+
});
|
4384
|
+
}
|
4313
4385
|
/**
|
4314
4386
|
* Navigation-specific part of the SDK.
|
4315
4387
|
*/
|
@@ -4375,13 +4447,7 @@ var pages;
|
|
4375
4447
|
* @returns Promise that resolves with the {@link InstanceConfig} object.
|
4376
4448
|
*/
|
4377
4449
|
function getConfig() {
|
4378
|
-
return
|
4379
|
-
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.settings, FrameContexts.remove, FrameContexts.sidePanel);
|
4380
|
-
if (!isSupported()) {
|
4381
|
-
throw errorNotSupportedOnPlatform;
|
4382
|
-
}
|
4383
|
-
resolve(sendAndUnwrapWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_GetConfig), 'settings.getSettings'));
|
4384
|
-
});
|
4450
|
+
return getConfigHelper(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_GetConfig));
|
4385
4451
|
}
|
4386
4452
|
pages.getConfig = getConfig;
|
4387
4453
|
/**
|
@@ -4533,11 +4599,7 @@ var pages;
|
|
4533
4599
|
* @param validityState - Indicates whether the save or remove button is enabled for the user.
|
4534
4600
|
*/
|
4535
4601
|
function setValidityState(validityState) {
|
4536
|
-
|
4537
|
-
if (!isSupported()) {
|
4538
|
-
throw errorNotSupportedOnPlatform;
|
4539
|
-
}
|
4540
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_SetValidityState), 'settings.setValidityState', [validityState]);
|
4602
|
+
return configSetValidityStateHelper(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_SetValidityState), validityState);
|
4541
4603
|
}
|
4542
4604
|
config.setValidityState = setValidityState;
|
4543
4605
|
/**
|
@@ -4547,13 +4609,7 @@ var pages;
|
|
4547
4609
|
* @returns Promise that resolves when the operation has completed.
|
4548
4610
|
*/
|
4549
4611
|
function setConfig(instanceConfig) {
|
4550
|
-
return
|
4551
|
-
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.settings, FrameContexts.sidePanel);
|
4552
|
-
if (!isSupported()) {
|
4553
|
-
throw errorNotSupportedOnPlatform;
|
4554
|
-
}
|
4555
|
-
resolve(sendAndHandleStatusAndReasonWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_SetConfig), 'settings.setSettings', instanceConfig));
|
4556
|
-
});
|
4612
|
+
return configSetConfigHelper(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_SetConfig), instanceConfig);
|
4557
4613
|
}
|
4558
4614
|
config.setConfig = setConfig;
|
4559
4615
|
/**
|
@@ -4564,7 +4620,7 @@ var pages;
|
|
4564
4620
|
* @param handler - The handler to invoke when the user selects the Save button.
|
4565
4621
|
*/
|
4566
4622
|
function registerOnSaveHandler(handler) {
|
4567
|
-
registerOnSaveHandlerHelper(handler, () => {
|
4623
|
+
registerOnSaveHandlerHelper(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_RegisterOnSaveHandler), handler, () => {
|
4568
4624
|
if (!isNullOrUndefined(handler) && !isSupported()) {
|
4569
4625
|
throw errorNotSupportedOnPlatform;
|
4570
4626
|
}
|
@@ -4578,18 +4634,18 @@ var pages;
|
|
4578
4634
|
* @internal
|
4579
4635
|
* Limited to Microsoft-internal use
|
4580
4636
|
*
|
4637
|
+
* @param apiVersionTag - The API version tag, which is used for telemetry, composed by API version number and source API name.
|
4581
4638
|
* @param handler - The handler to invoke when the user selects the Save button.
|
4582
4639
|
* @param versionSpecificHelper - The helper function containing logic pertaining to a specific version of the API.
|
4583
4640
|
*/
|
4584
|
-
function registerOnSaveHandlerHelper(handler, versionSpecificHelper) {
|
4641
|
+
function registerOnSaveHandlerHelper(apiVersionTag, handler, versionSpecificHelper) {
|
4585
4642
|
// allow for registration cleanup even when not finished initializing
|
4586
4643
|
!isNullOrUndefined(handler) && internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.settings);
|
4587
4644
|
if (versionSpecificHelper) {
|
4588
4645
|
versionSpecificHelper();
|
4589
4646
|
}
|
4590
4647
|
saveHandler = handler;
|
4591
|
-
!isNullOrUndefined(handler) &&
|
4592
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_RegisterOnSaveHandlerHelper), 'registerHandler', ['save']);
|
4648
|
+
!isNullOrUndefined(handler) && sendMessageToParentWithVersion(apiVersionTag, 'registerHandler', ['save']);
|
4593
4649
|
}
|
4594
4650
|
config.registerOnSaveHandlerHelper = registerOnSaveHandlerHelper;
|
4595
4651
|
/**
|
@@ -4600,7 +4656,7 @@ var pages;
|
|
4600
4656
|
* @param handler - The handler to invoke when the user selects the Remove button.
|
4601
4657
|
*/
|
4602
4658
|
function registerOnRemoveHandler(handler) {
|
4603
|
-
registerOnRemoveHandlerHelper(handler, () => {
|
4659
|
+
registerOnRemoveHandlerHelper(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_RegisterOnRemoveHandler), handler, () => {
|
4604
4660
|
if (!isNullOrUndefined(handler) && !isSupported()) {
|
4605
4661
|
throw errorNotSupportedOnPlatform;
|
4606
4662
|
}
|
@@ -4614,18 +4670,18 @@ var pages;
|
|
4614
4670
|
* @internal
|
4615
4671
|
* Limited to Microsoft-internal use
|
4616
4672
|
*
|
4673
|
+
* @param apiVersionTag - The API version tag, which is used for telemetry, composed by API version number and source API name.
|
4617
4674
|
* @param handler - The handler to invoke when the user selects the Remove button.
|
4618
4675
|
* @param versionSpecificHelper - The helper function containing logic pertaining to a specific version of the API.
|
4619
4676
|
*/
|
4620
|
-
function registerOnRemoveHandlerHelper(handler, versionSpecificHelper) {
|
4677
|
+
function registerOnRemoveHandlerHelper(apiVersionTag, handler, versionSpecificHelper) {
|
4621
4678
|
// allow for registration cleanup even when not finished initializing
|
4622
4679
|
!isNullOrUndefined(handler) && internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.remove, FrameContexts.settings);
|
4623
4680
|
if (versionSpecificHelper) {
|
4624
4681
|
versionSpecificHelper();
|
4625
4682
|
}
|
4626
4683
|
removeHandler = handler;
|
4627
|
-
!isNullOrUndefined(handler) &&
|
4628
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_Config_RegisterOnRemoveHandlerHelper), 'registerHandler', ['remove']);
|
4684
|
+
!isNullOrUndefined(handler) && sendMessageToParentWithVersion(apiVersionTag, 'registerHandler', ['remove']);
|
4629
4685
|
}
|
4630
4686
|
config.registerOnRemoveHandlerHelper = registerOnRemoveHandlerHelper;
|
4631
4687
|
function handleSave(result) {
|
@@ -4664,12 +4720,12 @@ var pages;
|
|
4664
4720
|
}
|
4665
4721
|
notifySuccess() {
|
4666
4722
|
this.ensureNotNotified();
|
4667
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.
|
4723
|
+
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_SaveEvent_NotifySuccess), 'settings.save.success');
|
4668
4724
|
this.notified = true;
|
4669
4725
|
}
|
4670
4726
|
notifyFailure(reason) {
|
4671
4727
|
this.ensureNotNotified();
|
4672
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.
|
4728
|
+
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_SaveEvent_NotifyFailure), 'settings.save.failure', [reason]);
|
4673
4729
|
this.notified = true;
|
4674
4730
|
}
|
4675
4731
|
ensureNotNotified() {
|
@@ -4701,12 +4757,12 @@ var pages;
|
|
4701
4757
|
}
|
4702
4758
|
notifySuccess() {
|
4703
4759
|
this.ensureNotNotified();
|
4704
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.
|
4760
|
+
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_RemoveEvent_NotifySuccess), 'settings.remove.success');
|
4705
4761
|
this.notified = true;
|
4706
4762
|
}
|
4707
4763
|
notifyFailure(reason) {
|
4708
4764
|
this.ensureNotNotified();
|
4709
|
-
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.
|
4765
|
+
sendMessageToParentWithVersion(getApiVersionTag(pagesTelemetryVersionNumber, ApiName.Pages_RemoveEvent_NotifyFailure), 'settings.remove.failure', [reason]);
|
4710
4766
|
this.notified = true;
|
4711
4767
|
}
|
4712
4768
|
ensureNotNotified() {
|
@@ -4821,6 +4877,8 @@ var pages;
|
|
4821
4877
|
* Hide from docs
|
4822
4878
|
* ------
|
4823
4879
|
* Provides APIs to interact with the full-trust part of the SDK. Limited to 1P applications
|
4880
|
+
* @internal
|
4881
|
+
* Limited to Microsoft-internal use
|
4824
4882
|
*/
|
4825
4883
|
let fullTrust;
|
4826
4884
|
(function (fullTrust) {
|
@@ -4829,6 +4887,7 @@ var pages;
|
|
4829
4887
|
* Hide from docs
|
4830
4888
|
* ------
|
4831
4889
|
* Place the tab into full-screen mode.
|
4890
|
+
*
|
4832
4891
|
*/
|
4833
4892
|
function enterFullscreen() {
|
4834
4893
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content);
|
@@ -5261,6 +5320,125 @@ function handlers_registerOnResumeHandler(handler) {
|
|
5261
5320
|
!isNullOrUndefined(handler) && sendMessageToParent('registerHandler', ['load']);
|
5262
5321
|
}
|
5263
5322
|
|
5323
|
+
;// CONCATENATED MODULE: ./src/internal/nestedAppAuth.ts
|
5324
|
+
|
5325
|
+
|
5326
|
+
const nestedAppAuthLogger = getLogger('nestedAppAuth');
|
5327
|
+
const tryPolyfillWithNestedAppAuthBridgeLogger = nestedAppAuthLogger.extend('tryPolyfillWithNestedAppAuthBridge');
|
5328
|
+
/**
|
5329
|
+
* @hidden
|
5330
|
+
* Enumeration for nested app authentication message event names.
|
5331
|
+
*
|
5332
|
+
* @internal
|
5333
|
+
* Limited to Microsoft-internal use
|
5334
|
+
*
|
5335
|
+
* @enum {string}
|
5336
|
+
*
|
5337
|
+
* @property {string} Request - Event name for a nested app authentication request.
|
5338
|
+
* @property {string} Response - Event name for a nested app authentication response.
|
5339
|
+
*/
|
5340
|
+
var NestedAppAuthMessageEventNames;
|
5341
|
+
(function (NestedAppAuthMessageEventNames) {
|
5342
|
+
NestedAppAuthMessageEventNames["Request"] = "NestedAppAuthRequest";
|
5343
|
+
NestedAppAuthMessageEventNames["Response"] = "NestedAppAuthResponse";
|
5344
|
+
})(NestedAppAuthMessageEventNames || (NestedAppAuthMessageEventNames = {}));
|
5345
|
+
/**
|
5346
|
+
* @hidden
|
5347
|
+
* Attempt to polyfill the nestedAppAuthBridge object on the given window
|
5348
|
+
*
|
5349
|
+
* @internal
|
5350
|
+
* Limited to Microsoft-internal use
|
5351
|
+
*/
|
5352
|
+
function tryPolyfillWithNestedAppAuthBridge(clientSupportedSDKVersion, window, handlers) {
|
5353
|
+
var _a;
|
5354
|
+
const logger = tryPolyfillWithNestedAppAuthBridgeLogger;
|
5355
|
+
if (GlobalVars.isFramelessWindow) {
|
5356
|
+
logger('Cannot polyfill nestedAppAuthBridge as current window is frameless');
|
5357
|
+
return;
|
5358
|
+
}
|
5359
|
+
if (!window) {
|
5360
|
+
logger('Cannot polyfill nestedAppAuthBridge as current window does not exist');
|
5361
|
+
return;
|
5362
|
+
}
|
5363
|
+
const parsedClientSupportedSDKVersion = (() => {
|
5364
|
+
try {
|
5365
|
+
return JSON.parse(clientSupportedSDKVersion);
|
5366
|
+
}
|
5367
|
+
catch (e) {
|
5368
|
+
return null;
|
5369
|
+
}
|
5370
|
+
})();
|
5371
|
+
if (!parsedClientSupportedSDKVersion || !((_a = parsedClientSupportedSDKVersion.supports) === null || _a === void 0 ? void 0 : _a.nestedAppAuth)) {
|
5372
|
+
logger('Cannot polyfill nestedAppAuthBridge as current hub does not support nested app auth');
|
5373
|
+
return;
|
5374
|
+
}
|
5375
|
+
const extendedWindow = window;
|
5376
|
+
if (extendedWindow.nestedAppAuthBridge) {
|
5377
|
+
logger('nestedAppAuthBridge already exists on current window, skipping polyfill');
|
5378
|
+
return;
|
5379
|
+
}
|
5380
|
+
const nestedAppAuthBridge = createNestedAppAuthBridge(extendedWindow, handlers);
|
5381
|
+
if (nestedAppAuthBridge) {
|
5382
|
+
extendedWindow.nestedAppAuthBridge = nestedAppAuthBridge;
|
5383
|
+
}
|
5384
|
+
}
|
5385
|
+
const createNestedAppAuthBridgeLogger = nestedAppAuthLogger.extend('createNestedAppAuthBridge');
|
5386
|
+
/**
|
5387
|
+
* @hidden
|
5388
|
+
* Creates a bridge for nested app authentication.
|
5389
|
+
*
|
5390
|
+
* @internal
|
5391
|
+
* Limited to Microsoft-internal use
|
5392
|
+
*
|
5393
|
+
* @param {Window | null} window - The window object where the nested app authentication bridge will be created. If null, the function will log an error message and return null.
|
5394
|
+
* @returns {NestedAppAuthBridge | null} Returns an object with methods for adding and removing event listeners, and posting messages. If the provided window is null, returns null.
|
5395
|
+
*
|
5396
|
+
* @property {Function} addEventListener - Adds an event listener to the window. Only supports the 'message' event. If an unsupported event is passed, logs an error message.
|
5397
|
+
* @property {Function} postMessage - Posts a message to the window. The message should be a stringified JSON object with a messageType of 'NestedAppAuthRequest'. If the message does not meet these criteria, logs an error message.
|
5398
|
+
* @property {Function} removeEventListener - Removes an event listener from the window.
|
5399
|
+
*/
|
5400
|
+
function createNestedAppAuthBridge(window, bridgeHandlers) {
|
5401
|
+
const logger = createNestedAppAuthBridgeLogger;
|
5402
|
+
if (!window) {
|
5403
|
+
logger('nestedAppAuthBridge cannot be created as current window does not exist');
|
5404
|
+
return null;
|
5405
|
+
}
|
5406
|
+
const { onMessage, sendPostMessage } = bridgeHandlers;
|
5407
|
+
const nestedAppAuthBridgeHandler = (callback) => (evt) => onMessage(evt, callback);
|
5408
|
+
return {
|
5409
|
+
addEventListener: (eventName, callback) => {
|
5410
|
+
if (eventName === 'message') {
|
5411
|
+
window.addEventListener(eventName, nestedAppAuthBridgeHandler(callback));
|
5412
|
+
}
|
5413
|
+
else {
|
5414
|
+
logger(`Event ${eventName} is not supported by nestedAppAuthBridge`);
|
5415
|
+
}
|
5416
|
+
},
|
5417
|
+
postMessage: (message) => {
|
5418
|
+
// Validate that it is a valid auth bridge request message
|
5419
|
+
const parsedMessage = (() => {
|
5420
|
+
try {
|
5421
|
+
return JSON.parse(message);
|
5422
|
+
}
|
5423
|
+
catch (e) {
|
5424
|
+
return null;
|
5425
|
+
}
|
5426
|
+
})();
|
5427
|
+
if (!parsedMessage ||
|
5428
|
+
typeof parsedMessage !== 'object' ||
|
5429
|
+
parsedMessage.messageType !== NestedAppAuthMessageEventNames.Request) {
|
5430
|
+
logger('Unrecognized data format received by app, message being ignored. Message: %o', message);
|
5431
|
+
return;
|
5432
|
+
}
|
5433
|
+
// Post the message to the top window
|
5434
|
+
sendPostMessage(message);
|
5435
|
+
},
|
5436
|
+
removeEventListener: (eventName, callback) => {
|
5437
|
+
window.removeEventListener(eventName, nestedAppAuthBridgeHandler(callback));
|
5438
|
+
},
|
5439
|
+
};
|
5440
|
+
}
|
5441
|
+
|
5264
5442
|
;// CONCATENATED MODULE: ./src/internal/communication.ts
|
5265
5443
|
/* eslint-disable @typescript-eslint/ban-types */
|
5266
5444
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
@@ -5282,6 +5460,7 @@ var communication_awaiter = (undefined && undefined.__awaiter) || function (this
|
|
5282
5460
|
|
5283
5461
|
|
5284
5462
|
|
5463
|
+
|
5285
5464
|
const communicationLogger = getLogger('communication');
|
5286
5465
|
/**
|
5287
5466
|
* @internal
|
@@ -5297,6 +5476,7 @@ class CommunicationPrivate {
|
|
5297
5476
|
}
|
5298
5477
|
CommunicationPrivate.parentMessageQueue = [];
|
5299
5478
|
CommunicationPrivate.childMessageQueue = [];
|
5479
|
+
CommunicationPrivate.topMessageQueue = [];
|
5300
5480
|
CommunicationPrivate.nextMessageId = 0;
|
5301
5481
|
CommunicationPrivate.callbacks = {};
|
5302
5482
|
CommunicationPrivate.promiseCallbacks = {};
|
@@ -5314,6 +5494,7 @@ function initializeCommunication(validMessageOrigins, apiVersionTag) {
|
|
5314
5494
|
Communication.currentWindow.parent !== Communication.currentWindow.self
|
5315
5495
|
? Communication.currentWindow.parent
|
5316
5496
|
: Communication.currentWindow.opener;
|
5497
|
+
Communication.topWindow = Communication.currentWindow.top;
|
5317
5498
|
// Listen to messages from the parent or child frame.
|
5318
5499
|
// Frameless windows will only receive this event from child frames and if validMessageOrigins is passed.
|
5319
5500
|
if (Communication.parentWindow || validMessageOrigins) {
|
@@ -5338,6 +5519,10 @@ function initializeCommunication(validMessageOrigins, apiVersionTag) {
|
|
5338
5519
|
version,
|
5339
5520
|
latestRuntimeApiVersion,
|
5340
5521
|
]).then(([context, clientType, runtimeConfig, clientSupportedSDKVersion]) => {
|
5522
|
+
tryPolyfillWithNestedAppAuthBridge(clientSupportedSDKVersion, Communication.currentWindow, {
|
5523
|
+
onMessage: processAuthBridgeMessage,
|
5524
|
+
sendPostMessage: sendNestedAuthRequestToTopWindow,
|
5525
|
+
});
|
5341
5526
|
return { context, clientType, runtimeConfig, clientSupportedSDKVersion };
|
5342
5527
|
});
|
5343
5528
|
}
|
@@ -5553,19 +5738,29 @@ function sendMessageToParent(actionName, argsOrCallback, callback) {
|
|
5553
5738
|
CommunicationPrivate.callbacks[request.id] = callback;
|
5554
5739
|
}
|
5555
5740
|
}
|
5556
|
-
const
|
5741
|
+
const sendNestedAuthRequestToTopWindowLogger = communicationLogger.extend('sendNestedAuthRequestToTopWindow');
|
5557
5742
|
/**
|
5558
5743
|
* @internal
|
5559
5744
|
* Limited to Microsoft-internal use
|
5560
5745
|
*/
|
5561
|
-
function
|
5562
|
-
const logger =
|
5563
|
-
const targetWindow = Communication.
|
5564
|
-
const request =
|
5565
|
-
logger('Message %i information: %o', request.id, { actionName
|
5746
|
+
function sendNestedAuthRequestToTopWindow(message) {
|
5747
|
+
const logger = sendNestedAuthRequestToTopWindowLogger;
|
5748
|
+
const targetWindow = Communication.topWindow;
|
5749
|
+
const request = createNestedAppAuthRequest(message);
|
5750
|
+
logger('Message %i information: %o', request.id, { actionName: request.func });
|
5751
|
+
return sendRequestToTargetWindowHelper(targetWindow, request);
|
5752
|
+
}
|
5753
|
+
const sendRequestToTargetWindowHelperLogger = communicationLogger.extend('sendRequestToTargetWindowHelper');
|
5754
|
+
/**
|
5755
|
+
* @internal
|
5756
|
+
* Limited to Microsoft-internal use
|
5757
|
+
*/
|
5758
|
+
function sendRequestToTargetWindowHelper(targetWindow, request) {
|
5759
|
+
const logger = sendRequestToTargetWindowHelperLogger;
|
5760
|
+
const targetWindowName = getTargetName(targetWindow);
|
5566
5761
|
if (GlobalVars.isFramelessWindow) {
|
5567
5762
|
if (Communication.currentWindow && Communication.currentWindow.nativeInterface) {
|
5568
|
-
logger(
|
5763
|
+
logger(`Sending message %i to ${targetWindowName} via framelessPostMessage interface`, request.id);
|
5569
5764
|
Communication.currentWindow.nativeInterface.framelessPostMessage(JSON.stringify(request));
|
5570
5765
|
}
|
5571
5766
|
}
|
@@ -5574,16 +5769,29 @@ function sendMessageToParentHelper(apiVersionTag, actionName, args) {
|
|
5574
5769
|
// If the target window isn't closed and we already know its origin, send the message right away; otherwise,
|
5575
5770
|
// queue the message and send it after the origin is established
|
5576
5771
|
if (targetWindow && targetOrigin) {
|
5577
|
-
logger(
|
5772
|
+
logger(`Sending message %i to ${targetWindowName} via postMessage`, request.id);
|
5578
5773
|
targetWindow.postMessage(request, targetOrigin);
|
5579
5774
|
}
|
5580
5775
|
else {
|
5581
|
-
logger(
|
5776
|
+
logger(`Adding message %i to ${targetWindowName} message queue`, request.id);
|
5582
5777
|
getTargetMessageQueue(targetWindow).push(request);
|
5583
5778
|
}
|
5584
5779
|
}
|
5585
5780
|
return request;
|
5586
5781
|
}
|
5782
|
+
const sendMessageToParentHelperLogger = communicationLogger.extend('sendMessageToParentHelper');
|
5783
|
+
/**
|
5784
|
+
* @internal
|
5785
|
+
* Limited to Microsoft-internal use
|
5786
|
+
*/
|
5787
|
+
function sendMessageToParentHelper(apiVersionTag, actionName, args) {
|
5788
|
+
const logger = sendMessageToParentHelperLogger;
|
5789
|
+
const targetWindow = Communication.parentWindow;
|
5790
|
+
const request = createMessageRequest(apiVersionTag, actionName, args);
|
5791
|
+
/* eslint-disable-next-line strict-null-checks/all */ /* Fix tracked by 5730662 */
|
5792
|
+
logger('Message %i information: %o', request.id, { actionName, args });
|
5793
|
+
return sendRequestToTargetWindowHelper(targetWindow, request);
|
5794
|
+
}
|
5587
5795
|
const processMessageLogger = communicationLogger.extend('processMessage');
|
5588
5796
|
/**
|
5589
5797
|
* @internal
|
@@ -5618,6 +5826,69 @@ function processMessage(evt) {
|
|
5618
5826
|
});
|
5619
5827
|
});
|
5620
5828
|
}
|
5829
|
+
const processAuthBridgeMessageLogger = communicationLogger.extend('processAuthBridgeMessage');
|
5830
|
+
/**
|
5831
|
+
* @internal
|
5832
|
+
* Limited to Microsoft-internal use
|
5833
|
+
*/
|
5834
|
+
function processAuthBridgeMessage(evt, onMessageReceived) {
|
5835
|
+
var _a, _b;
|
5836
|
+
const logger = processAuthBridgeMessageLogger;
|
5837
|
+
// Process only if we received a valid message
|
5838
|
+
if (!evt || !evt.data || typeof evt.data !== 'object') {
|
5839
|
+
logger('Unrecognized message format received by app, message being ignored. Message: %o', evt);
|
5840
|
+
return;
|
5841
|
+
}
|
5842
|
+
const { args } = evt.data;
|
5843
|
+
const [, message] = args !== null && args !== void 0 ? args : [];
|
5844
|
+
const parsedData = (() => {
|
5845
|
+
try {
|
5846
|
+
return JSON.parse(message);
|
5847
|
+
}
|
5848
|
+
catch (e) {
|
5849
|
+
return null;
|
5850
|
+
}
|
5851
|
+
})();
|
5852
|
+
// Validate that it is a valid auth bridge response message
|
5853
|
+
if (!parsedData ||
|
5854
|
+
typeof parsedData !== 'object' ||
|
5855
|
+
parsedData.messageType !== NestedAppAuthMessageEventNames.Response) {
|
5856
|
+
logger('Unrecognized data format received by app, message being ignored. Message: %o', evt);
|
5857
|
+
return;
|
5858
|
+
}
|
5859
|
+
// Process only if the message is coming from a different window and a valid origin
|
5860
|
+
// valid origins are either a pre-known origin or one specified by the app developer
|
5861
|
+
// in their call to app.initialize
|
5862
|
+
const messageSource = evt.source || ((_a = evt === null || evt === void 0 ? void 0 : evt.originalEvent) === null || _a === void 0 ? void 0 : _a.source);
|
5863
|
+
const messageOrigin = evt.origin || ((_b = evt === null || evt === void 0 ? void 0 : evt.originalEvent) === null || _b === void 0 ? void 0 : _b.origin);
|
5864
|
+
if (!messageSource) {
|
5865
|
+
logger('Message being ignored by app because it is coming for a target that is null');
|
5866
|
+
return;
|
5867
|
+
}
|
5868
|
+
if (!shouldProcessMessage(messageSource, messageOrigin)) {
|
5869
|
+
logger('Message being ignored by app because it is either coming from the current window or a different window with an invalid origin');
|
5870
|
+
return;
|
5871
|
+
}
|
5872
|
+
/**
|
5873
|
+
* In most cases, top level window and the parent window will be same.
|
5874
|
+
* If they're not, perform the necessary updates for the top level window.
|
5875
|
+
*
|
5876
|
+
* Top window logic to flush messages is kept independent so that we don't affect
|
5877
|
+
* any of the code for the existing communication channel.
|
5878
|
+
*/
|
5879
|
+
if (!Communication.topWindow || Communication.topWindow.closed || messageSource === Communication.topWindow) {
|
5880
|
+
Communication.topWindow = messageSource;
|
5881
|
+
Communication.topOrigin = messageOrigin;
|
5882
|
+
}
|
5883
|
+
// Clean up pointers to closed parent and child windows
|
5884
|
+
if (Communication.topWindow && Communication.topWindow.closed) {
|
5885
|
+
Communication.topWindow = null;
|
5886
|
+
Communication.topOrigin = null;
|
5887
|
+
}
|
5888
|
+
flushMessageQueue(Communication.topWindow);
|
5889
|
+
// Return the response to the registered callback
|
5890
|
+
onMessageReceived(message);
|
5891
|
+
}
|
5621
5892
|
const shouldProcessMessageLogger = communicationLogger.extend('shouldProcessMessage');
|
5622
5893
|
/**
|
5623
5894
|
* @hidden
|
@@ -5756,27 +6027,70 @@ function handleChildMessage(evt) {
|
|
5756
6027
|
}
|
5757
6028
|
}
|
5758
6029
|
}
|
6030
|
+
/**
|
6031
|
+
* @internal
|
6032
|
+
* Limited to Microsoft-internal use
|
6033
|
+
*
|
6034
|
+
* Checks if the top window and the parent window are different.
|
6035
|
+
*
|
6036
|
+
* @returns {boolean} Returns true if the top window and the parent window are different, false otherwise.
|
6037
|
+
*/
|
6038
|
+
function areTopAndParentWindowsDistinct() {
|
6039
|
+
return Communication.topWindow !== Communication.parentWindow;
|
6040
|
+
}
|
5759
6041
|
/**
|
5760
6042
|
* @internal
|
5761
6043
|
* Limited to Microsoft-internal use
|
5762
6044
|
*/
|
5763
6045
|
function getTargetMessageQueue(targetWindow) {
|
5764
|
-
|
5765
|
-
|
5766
|
-
|
5767
|
-
|
5768
|
-
|
6046
|
+
if (targetWindow === Communication.topWindow && areTopAndParentWindowsDistinct()) {
|
6047
|
+
return CommunicationPrivate.topMessageQueue;
|
6048
|
+
}
|
6049
|
+
else if (targetWindow === Communication.parentWindow) {
|
6050
|
+
return CommunicationPrivate.parentMessageQueue;
|
6051
|
+
}
|
6052
|
+
else if (targetWindow === Communication.childWindow) {
|
6053
|
+
return CommunicationPrivate.childMessageQueue;
|
6054
|
+
}
|
6055
|
+
else {
|
6056
|
+
return [];
|
6057
|
+
}
|
5769
6058
|
}
|
5770
6059
|
/**
|
5771
6060
|
* @internal
|
5772
6061
|
* Limited to Microsoft-internal use
|
5773
6062
|
*/
|
5774
6063
|
function getTargetOrigin(targetWindow) {
|
5775
|
-
|
5776
|
-
|
5777
|
-
|
5778
|
-
|
5779
|
-
|
6064
|
+
if (targetWindow === Communication.topWindow && areTopAndParentWindowsDistinct()) {
|
6065
|
+
return Communication.topOrigin;
|
6066
|
+
}
|
6067
|
+
else if (targetWindow === Communication.parentWindow) {
|
6068
|
+
return Communication.parentOrigin;
|
6069
|
+
}
|
6070
|
+
else if (targetWindow === Communication.childWindow) {
|
6071
|
+
return Communication.childOrigin;
|
6072
|
+
}
|
6073
|
+
else {
|
6074
|
+
return null;
|
6075
|
+
}
|
6076
|
+
}
|
6077
|
+
/**
|
6078
|
+
* @internal
|
6079
|
+
* Limited to Microsoft-internal use
|
6080
|
+
*/
|
6081
|
+
function getTargetName(targetWindow) {
|
6082
|
+
if (targetWindow === Communication.topWindow && areTopAndParentWindowsDistinct()) {
|
6083
|
+
return 'top';
|
6084
|
+
}
|
6085
|
+
else if (targetWindow === Communication.parentWindow) {
|
6086
|
+
return 'parent';
|
6087
|
+
}
|
6088
|
+
else if (targetWindow === Communication.childWindow) {
|
6089
|
+
return 'child';
|
6090
|
+
}
|
6091
|
+
else {
|
6092
|
+
return null;
|
6093
|
+
}
|
5780
6094
|
}
|
5781
6095
|
const flushMessageQueueLogger = communicationLogger.extend('flushMessageQueue');
|
5782
6096
|
/**
|
@@ -5786,7 +6100,7 @@ const flushMessageQueueLogger = communicationLogger.extend('flushMessageQueue');
|
|
5786
6100
|
function flushMessageQueue(targetWindow) {
|
5787
6101
|
const targetOrigin = getTargetOrigin(targetWindow);
|
5788
6102
|
const targetMessageQueue = getTargetMessageQueue(targetWindow);
|
5789
|
-
const target = targetWindow
|
6103
|
+
const target = getTargetName(targetWindow);
|
5790
6104
|
while (targetWindow && targetOrigin && targetMessageQueue.length > 0) {
|
5791
6105
|
const request = targetMessageQueue.shift();
|
5792
6106
|
/* eslint-disable-next-line strict-null-checks/all */ /* Fix tracked by 5730662 */
|
@@ -5860,6 +6174,28 @@ function createMessageRequest(apiVersionTag, func, args) {
|
|
5860
6174
|
apiversiontag: apiVersionTag,
|
5861
6175
|
};
|
5862
6176
|
}
|
6177
|
+
/**
|
6178
|
+
* @internal
|
6179
|
+
* Limited to Microsoft-internal use
|
6180
|
+
*
|
6181
|
+
* Creates a nested app authentication request.
|
6182
|
+
*
|
6183
|
+
* @param {string} message - The message to be included in the request. This is typically a stringified JSON object containing the details of the authentication request.
|
6184
|
+
* The reason for using a string is to allow complex data structures to be sent as a message while avoiding potential issues with object serialization and deserialization.
|
6185
|
+
*
|
6186
|
+
* @returns {NestedAppAuthRequest} Returns a NestedAppAuthRequest object with a unique id, the function name set to 'nestedAppAuthRequest', the current timestamp, an empty args array, and the provided message as data.
|
6187
|
+
*/
|
6188
|
+
function createNestedAppAuthRequest(message) {
|
6189
|
+
return {
|
6190
|
+
id: CommunicationPrivate.nextMessageId++,
|
6191
|
+
func: 'nestedAppAuth.execute',
|
6192
|
+
timestamp: Date.now(),
|
6193
|
+
// Since this is a nested app auth request, we don't need to send any args.
|
6194
|
+
// We avoid overloading the args array with the message to avoid potential issues processing of these messages on the hubSDK.
|
6195
|
+
args: [],
|
6196
|
+
data: message,
|
6197
|
+
};
|
6198
|
+
}
|
5863
6199
|
/**
|
5864
6200
|
* @internal
|
5865
6201
|
* Limited to Microsoft-internal use
|
@@ -6007,6 +6343,7 @@ var UserSettingTypes;
|
|
6007
6343
|
|
6008
6344
|
|
6009
6345
|
|
6346
|
+
|
6010
6347
|
/**
|
6011
6348
|
* @hidden
|
6012
6349
|
* Upload a custom App manifest directly to both team and personal scopes.
|
@@ -6014,10 +6351,13 @@ var UserSettingTypes;
|
|
6014
6351
|
*
|
6015
6352
|
* @internal
|
6016
6353
|
* Limited to Microsoft-internal use
|
6354
|
+
*
|
6355
|
+
* v1 APIs telemetry file: All of APIs in this capability file should send out API version v1 ONLY
|
6017
6356
|
*/
|
6357
|
+
const privateAPIsTelemetryVersionNumber = ApiVersionNumber.V_1;
|
6018
6358
|
function uploadCustomApp(manifestBlob, onComplete) {
|
6019
6359
|
internalAPIs_ensureInitialized(runtime_runtime);
|
6020
|
-
|
6360
|
+
sendMessageToParentWithVersion(getApiVersionTag(privateAPIsTelemetryVersionNumber, ApiName.PrivateAPIs_UploadCustomApp), 'uploadCustomApp', [manifestBlob], onComplete ? onComplete : getGenericOnCompleteHandler());
|
6021
6361
|
}
|
6022
6362
|
/**
|
6023
6363
|
* @hidden
|
@@ -6033,7 +6373,7 @@ function uploadCustomApp(manifestBlob, onComplete) {
|
|
6033
6373
|
*/
|
6034
6374
|
function sendCustomMessage(actionName, args, callback) {
|
6035
6375
|
internalAPIs_ensureInitialized(runtime_runtime);
|
6036
|
-
|
6376
|
+
sendMessageToParentWithVersion(getApiVersionTag(privateAPIsTelemetryVersionNumber, ApiName.PrivateAPIs_SendCustomMessage), actionName, args, callback);
|
6037
6377
|
}
|
6038
6378
|
/**
|
6039
6379
|
* @hidden
|
@@ -6067,7 +6407,7 @@ function sendCustomEvent(actionName, args) {
|
|
6067
6407
|
*/
|
6068
6408
|
function registerCustomHandler(actionName, customHandler) {
|
6069
6409
|
internalAPIs_ensureInitialized(runtime_runtime);
|
6070
|
-
|
6410
|
+
registerHandlerWithVersion(getApiVersionTag(privateAPIsTelemetryVersionNumber, ApiName.PrivateAPIs_RegisterCustomHandler), actionName, (...args) => {
|
6071
6411
|
return customHandler.apply(this, args);
|
6072
6412
|
});
|
6073
6413
|
}
|
@@ -6083,7 +6423,7 @@ function registerCustomHandler(actionName, customHandler) {
|
|
6083
6423
|
*/
|
6084
6424
|
function registerUserSettingsChangeHandler(settingTypes, handler) {
|
6085
6425
|
internalAPIs_ensureInitialized(runtime_runtime);
|
6086
|
-
|
6426
|
+
registerHandlerWithVersion(getApiVersionTag(privateAPIsTelemetryVersionNumber, ApiName.PrivateAPIs_RegisterUserSettingsChangeHandler), 'userSettingsChange', handler, true, [settingTypes]);
|
6087
6427
|
}
|
6088
6428
|
/**
|
6089
6429
|
* @hidden
|
@@ -6113,7 +6453,7 @@ function openFilePreview(filePreviewParameters) {
|
|
6113
6453
|
filePreviewParameters.conversationId,
|
6114
6454
|
filePreviewParameters.sizeInBytes,
|
6115
6455
|
];
|
6116
|
-
|
6456
|
+
sendMessageToParentWithVersion(getApiVersionTag(privateAPIsTelemetryVersionNumber, ApiName.PrivateAPIs_OpenFilePreview), 'openFilePreview', params);
|
6117
6457
|
}
|
6118
6458
|
|
6119
6459
|
;// CONCATENATED MODULE: ./src/private/conversations.ts
|
@@ -7621,6 +7961,11 @@ class ParentAppWindow {
|
|
7621
7961
|
|
7622
7962
|
|
7623
7963
|
|
7964
|
+
|
7965
|
+
/**
|
7966
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
7967
|
+
*/
|
7968
|
+
const secondaryBrowserTelemetryVersionNumber = ApiVersionNumber.V_2;
|
7624
7969
|
/**
|
7625
7970
|
* Namespace to power up the in-app browser experiences in the host app.
|
7626
7971
|
* For e.g., opening a URL in the host app inside a browser
|
@@ -7651,7 +7996,7 @@ var secondaryBrowser;
|
|
7651
7996
|
if (!url || !isValidHttpsURL(url)) {
|
7652
7997
|
throw { errorCode: ErrorCode.INVALID_ARGUMENTS, message: 'Invalid Url: Only https URL is allowed' };
|
7653
7998
|
}
|
7654
|
-
return
|
7999
|
+
return sendAndHandleSdkErrorWithVersion(getApiVersionTag(secondaryBrowserTelemetryVersionNumber, ApiName.SecondaryBrowser_OpenUrl), 'secondaryBrowser.open', url.toString());
|
7655
8000
|
}
|
7656
8001
|
secondaryBrowser.open = open;
|
7657
8002
|
/**
|
@@ -8880,6 +9225,11 @@ function validatePersona(persona) {
|
|
8880
9225
|
|
8881
9226
|
|
8882
9227
|
|
9228
|
+
|
9229
|
+
/**
|
9230
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
9231
|
+
*/
|
9232
|
+
const profileTelemetryVersionNumber = ApiVersionNumber.V_2;
|
8883
9233
|
/**
|
8884
9234
|
* Namespace for profile related APIs.
|
8885
9235
|
*
|
@@ -8913,7 +9263,7 @@ var profile;
|
|
8913
9263
|
height: showProfileRequest.targetElementBoundingRect.height,
|
8914
9264
|
},
|
8915
9265
|
};
|
8916
|
-
resolve(
|
9266
|
+
resolve(sendAndHandleSdkErrorWithVersion(getApiVersionTag(profileTelemetryVersionNumber, ApiName.Profile_ShowProfile), 'profile.showProfile', requestInternal));
|
8917
9267
|
});
|
8918
9268
|
}
|
8919
9269
|
profile.showProfile = showProfile;
|
@@ -9414,6 +9764,11 @@ VideoPerformanceStatistics.maxSessionTimeoutInMs = 1000 * 30;
|
|
9414
9764
|
;// CONCATENATED MODULE: ./src/internal/videoPerformanceMonitor.ts
|
9415
9765
|
|
9416
9766
|
|
9767
|
+
|
9768
|
+
/**
|
9769
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
9770
|
+
*/
|
9771
|
+
const videoPerformanceMonitorTelemetryVersionNumber = ApiVersionNumber.V_2;
|
9417
9772
|
/**
|
9418
9773
|
* This class is used to monitor the performance of video processing, and report performance events.
|
9419
9774
|
*/
|
@@ -9425,7 +9780,7 @@ class VideoPerformanceMonitor {
|
|
9425
9780
|
this.frameProcessingStartedAt = 0;
|
9426
9781
|
this.frameProcessingTimeCost = 0;
|
9427
9782
|
this.processedFrameCount = 0;
|
9428
|
-
this.performanceStatistics = new VideoPerformanceStatistics(VideoPerformanceMonitor.distributionBinSize, (result) => this.reportPerformanceEvent('video.performance.performanceDataGenerated', [result]));
|
9783
|
+
this.performanceStatistics = new VideoPerformanceStatistics(VideoPerformanceMonitor.distributionBinSize, (result) => this.reportPerformanceEvent(getApiVersionTag(videoPerformanceMonitorTelemetryVersionNumber, ApiName.VideoPerformanceMonitor_Constructor), 'video.performance.performanceDataGenerated', [result]));
|
9429
9784
|
}
|
9430
9785
|
/**
|
9431
9786
|
* Start to check frame processing time intervally
|
@@ -9438,7 +9793,7 @@ class VideoPerformanceMonitor {
|
|
9438
9793
|
}
|
9439
9794
|
const averageFrameProcessingTime = this.frameProcessingTimeCost / this.processedFrameCount;
|
9440
9795
|
if (averageFrameProcessingTime > this.frameProcessTimeLimit) {
|
9441
|
-
this.reportPerformanceEvent('video.performance.frameProcessingSlow', [averageFrameProcessingTime]);
|
9796
|
+
this.reportPerformanceEvent(getApiVersionTag(videoPerformanceMonitorTelemetryVersionNumber, ApiName.VideoPerformanceMonitor_StartMonitorSlowFrameProcessing), 'video.performance.frameProcessingSlow', [averageFrameProcessingTime]);
|
9442
9797
|
}
|
9443
9798
|
this.frameProcessingTimeCost = 0;
|
9444
9799
|
this.processedFrameCount = 0;
|
@@ -9506,11 +9861,7 @@ class VideoPerformanceMonitor {
|
|
9506
9861
|
this.performanceStatistics.processEnds();
|
9507
9862
|
if (!this.isFirstFrameProcessed) {
|
9508
9863
|
this.isFirstFrameProcessed = true;
|
9509
|
-
this.reportPerformanceEvent('video.performance.firstFrameProcessed', [
|
9510
|
-
Date.now(),
|
9511
|
-
this.appliedEffect.effectId,
|
9512
|
-
(_a = this.appliedEffect) === null || _a === void 0 ? void 0 : _a.effectParam,
|
9513
|
-
]);
|
9864
|
+
this.reportPerformanceEvent(getApiVersionTag(videoPerformanceMonitorTelemetryVersionNumber, ApiName.VideoPerformanceMonitor_ReportFrameProcessed), 'video.performance.firstFrameProcessed', [Date.now(), this.appliedEffect.effectId, (_a = this.appliedEffect) === null || _a === void 0 ? void 0 : _a.effectParam]);
|
9514
9865
|
}
|
9515
9866
|
}
|
9516
9867
|
/**
|
@@ -9526,7 +9877,7 @@ class VideoPerformanceMonitor {
|
|
9526
9877
|
reportTextureStreamAcquired() {
|
9527
9878
|
if (this.gettingTextureStreamStartedAt !== undefined) {
|
9528
9879
|
const timeTaken = performance.now() - this.gettingTextureStreamStartedAt;
|
9529
|
-
this.reportPerformanceEvent('video.performance.textureStreamAcquired', [this.currentStreamId, timeTaken]);
|
9880
|
+
this.reportPerformanceEvent(getApiVersionTag(videoPerformanceMonitorTelemetryVersionNumber, ApiName.VideoPerformanceMonitor_ReportTextureStreamAcquired), 'video.performance.textureStreamAcquired', [this.currentStreamId, timeTaken]);
|
9530
9881
|
}
|
9531
9882
|
}
|
9532
9883
|
}
|
@@ -9562,6 +9913,11 @@ var videoEffects_rest = (undefined && undefined.__rest) || function (s, e) {
|
|
9562
9913
|
|
9563
9914
|
|
9564
9915
|
|
9916
|
+
|
9917
|
+
/**
|
9918
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
9919
|
+
*/
|
9920
|
+
const videoEffectsTelemetryVersionNumber = ApiVersionNumber.V_2;
|
9565
9921
|
/**
|
9566
9922
|
* Namespace to video extensibility of the SDK
|
9567
9923
|
* @beta
|
@@ -9570,7 +9926,7 @@ var videoEffects;
|
|
9570
9926
|
(function (videoEffects) {
|
9571
9927
|
const videoPerformanceMonitor = inServerSideRenderingEnvironment()
|
9572
9928
|
? undefined
|
9573
|
-
: new VideoPerformanceMonitor(
|
9929
|
+
: new VideoPerformanceMonitor(sendMessageToParentWithVersion);
|
9574
9930
|
/**
|
9575
9931
|
* Video frame format enum, currently only support NV12
|
9576
9932
|
* @beta
|
@@ -9656,7 +10012,7 @@ var videoEffects;
|
|
9656
10012
|
if (!parameters.videoFrameHandler || !parameters.videoBufferHandler) {
|
9657
10013
|
throw new Error('Both videoFrameHandler and videoBufferHandler must be provided');
|
9658
10014
|
}
|
9659
|
-
|
10015
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_RegisterSetFrameProcessTimeLimitHandler), 'video.setFrameProcessTimeLimit', (timeLimitInfo) => videoPerformanceMonitor === null || videoPerformanceMonitor === void 0 ? void 0 : videoPerformanceMonitor.setFrameProcessTimeLimit(timeLimitInfo.timeLimit), false);
|
9660
10016
|
if (doesSupportMediaStream()) {
|
9661
10017
|
registerForMediaStream(parameters.videoFrameHandler, parameters.config);
|
9662
10018
|
}
|
@@ -9683,7 +10039,7 @@ var videoEffects;
|
|
9683
10039
|
if (!isSupported()) {
|
9684
10040
|
throw errorNotSupportedOnPlatform;
|
9685
10041
|
}
|
9686
|
-
|
10042
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_NotifySelectedVideoEffectChanged), 'video.videoEffectChanged', [effectChangeType, effectId]);
|
9687
10043
|
}
|
9688
10044
|
videoEffects.notifySelectedVideoEffectChanged = notifySelectedVideoEffectChanged;
|
9689
10045
|
/**
|
@@ -9696,8 +10052,8 @@ var videoEffects;
|
|
9696
10052
|
if (!isSupported()) {
|
9697
10053
|
throw errorNotSupportedOnPlatform;
|
9698
10054
|
}
|
9699
|
-
|
9700
|
-
|
10055
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_RegisterEffectParameterChangeHandler), 'video.effectParameterChange', createEffectParameterChangeCallback(callback, videoPerformanceMonitor), false);
|
10056
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_RegisterForVideoEffect), 'video.registerForVideoEffect');
|
9701
10057
|
}
|
9702
10058
|
videoEffects.registerForVideoEffect = registerForVideoEffect;
|
9703
10059
|
/**
|
@@ -9706,7 +10062,7 @@ var videoEffects;
|
|
9706
10062
|
* @beta
|
9707
10063
|
*/
|
9708
10064
|
function notifyVideoFrameProcessed(timestamp) {
|
9709
|
-
|
10065
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_NotifyVideoFrameProcessed), 'video.videoFrameProcessed', [timestamp]);
|
9710
10066
|
}
|
9711
10067
|
/**
|
9712
10068
|
* Sending error notification to host
|
@@ -9714,7 +10070,7 @@ var videoEffects;
|
|
9714
10070
|
* @param errorMessage - The error message that will be sent to the host
|
9715
10071
|
*/
|
9716
10072
|
function notifyError(errorMessage) {
|
9717
|
-
|
10073
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_NotifyError), 'video.notifyError', [errorMessage]);
|
9718
10074
|
}
|
9719
10075
|
/**
|
9720
10076
|
* Checks if video capability is supported by the host.
|
@@ -9736,13 +10092,13 @@ var videoEffects;
|
|
9736
10092
|
if (!isSupported() || !doesSupportMediaStream()) {
|
9737
10093
|
throw errorNotSupportedOnPlatform;
|
9738
10094
|
}
|
9739
|
-
|
10095
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_RegisterStartVideoExtensibilityVideoStreamHandler), 'video.startVideoExtensibilityVideoStream', (mediaStreamInfo) => videoEffects_awaiter(this, void 0, void 0, function* () {
|
9740
10096
|
// when a new streamId is ready:
|
9741
10097
|
const { streamId } = mediaStreamInfo;
|
9742
10098
|
const monitoredVideoFrameHandler = createMonitoredVideoFrameHandler(videoFrameHandler, videoPerformanceMonitor);
|
9743
10099
|
yield processMediaStream(streamId, monitoredVideoFrameHandler, notifyError, videoPerformanceMonitor);
|
9744
10100
|
}), false);
|
9745
|
-
|
10101
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_MediaStream_RegisterForVideoFrame), 'video.mediaStream.registerForVideoFrame', [config]);
|
9746
10102
|
}
|
9747
10103
|
function createMonitoredVideoFrameHandler(videoFrameHandler, videoPerformanceMonitor) {
|
9748
10104
|
return (videoFrameData) => videoEffects_awaiter(this, void 0, void 0, function* () {
|
@@ -9759,7 +10115,7 @@ var videoEffects;
|
|
9759
10115
|
if (!isSupported() || !doesSupportSharedFrame()) {
|
9760
10116
|
throw errorNotSupportedOnPlatform;
|
9761
10117
|
}
|
9762
|
-
|
10118
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_RegisterForVideoBufferHandler), 'video.newVideoFrame',
|
9763
10119
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
9764
10120
|
(videoBufferData) => {
|
9765
10121
|
if (videoBufferData) {
|
@@ -9771,7 +10127,7 @@ var videoEffects;
|
|
9771
10127
|
}, notifyError);
|
9772
10128
|
}
|
9773
10129
|
}, false);
|
9774
|
-
|
10130
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsTelemetryVersionNumber, ApiName.VideoEffects_RegisterForVideoFrame), 'video.registerForVideoFrame', [config]);
|
9775
10131
|
}
|
9776
10132
|
function normalizeVideoBufferData(videoBufferData) {
|
9777
10133
|
if ('videoFrameBuffer' in videoBufferData) {
|
@@ -9805,6 +10161,11 @@ var videoEffects;
|
|
9805
10161
|
|
9806
10162
|
|
9807
10163
|
|
10164
|
+
|
10165
|
+
/**
|
10166
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
10167
|
+
*/
|
10168
|
+
const searchTelemetryVersionNumber = ApiVersionNumber.V_2;
|
9808
10169
|
/**
|
9809
10170
|
* Allows your application to interact with the host M365 application's search box.
|
9810
10171
|
* By integrating your application with the host's search box, users can search
|
@@ -9864,10 +10225,10 @@ var search;
|
|
9864
10225
|
if (!isSupported()) {
|
9865
10226
|
throw errorNotSupportedOnPlatform;
|
9866
10227
|
}
|
9867
|
-
|
9868
|
-
|
10228
|
+
registerHandlerWithVersion(getApiVersionTag(searchTelemetryVersionNumber, ApiName.Search_RegisterOnClosedHandler), onClosedHandlerName, onClosedHandler);
|
10229
|
+
registerHandlerWithVersion(getApiVersionTag(searchTelemetryVersionNumber, ApiName.Search_RegisterOnExecutedHandler), onExecutedHandlerName, onExecuteHandler);
|
9869
10230
|
if (onChangeHandler) {
|
9870
|
-
|
10231
|
+
registerHandlerWithVersion(getApiVersionTag(searchTelemetryVersionNumber, ApiName.Search_RegisterOnChangeHandler), onChangeHandlerName, onChangeHandler);
|
9871
10232
|
}
|
9872
10233
|
}
|
9873
10234
|
search.registerHandlers = registerHandlers;
|
@@ -9884,7 +10245,7 @@ var search;
|
|
9884
10245
|
}
|
9885
10246
|
// This should let the host know to stop making the app scope show up in the search experience
|
9886
10247
|
// Can also be used to clean up handlers on the host if desired
|
9887
|
-
|
10248
|
+
sendMessageToParentWithVersion(getApiVersionTag(searchTelemetryVersionNumber, ApiName.Search_UnregisterHandlers), 'search.unregister');
|
9888
10249
|
removeHandler(onChangeHandlerName);
|
9889
10250
|
removeHandler(onClosedHandlerName);
|
9890
10251
|
removeHandler(onExecutedHandlerName);
|
@@ -9913,7 +10274,7 @@ var search;
|
|
9913
10274
|
if (!isSupported()) {
|
9914
10275
|
throw new Error('Not supported');
|
9915
10276
|
}
|
9916
|
-
resolve(
|
10277
|
+
resolve(sendAndHandleStatusAndReasonWithVersion(getApiVersionTag(searchTelemetryVersionNumber, ApiName.Search_CloseSearch), 'search.closeSearch'));
|
9917
10278
|
});
|
9918
10279
|
}
|
9919
10280
|
search.closeSearch = closeSearch;
|
@@ -9926,6 +10287,10 @@ var search;
|
|
9926
10287
|
|
9927
10288
|
|
9928
10289
|
|
10290
|
+
|
10291
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
10292
|
+
const sharingTelemetryVersionNumber_v1 = ApiVersionNumber.V_1;
|
10293
|
+
const sharingTelemetryVersionNumber_v2 = ApiVersionNumber.V_2;
|
9929
10294
|
/**
|
9930
10295
|
* Namespace to open a share dialog for web content.
|
9931
10296
|
* For more info, see [Share to Teams from personal app or tab](https://learn.microsoft.com/microsoftteams/platform/concepts/build-and-test/share-to-teams-from-personal-app-or-tab)
|
@@ -9941,6 +10306,7 @@ var sharing;
|
|
9941
10306
|
shareWebContent: 'sharing.shareWebContent',
|
9942
10307
|
};
|
9943
10308
|
function shareWebContent(shareWebContentRequest, callback) {
|
10309
|
+
const apiVersionTag = '';
|
9944
10310
|
// validate the given input (synchronous check)
|
9945
10311
|
try {
|
9946
10312
|
validateNonEmptyContent(shareWebContentRequest);
|
@@ -10029,6 +10395,11 @@ var sharing;
|
|
10029
10395
|
|
10030
10396
|
|
10031
10397
|
|
10398
|
+
|
10399
|
+
/**
|
10400
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
10401
|
+
*/
|
10402
|
+
const stageViewTelemetryVersionNumber = ApiVersionNumber.V_2;
|
10032
10403
|
/**
|
10033
10404
|
* Namespace to interact with the stage view specific part of the SDK.
|
10034
10405
|
*
|
@@ -10072,7 +10443,7 @@ var stageView;
|
|
10072
10443
|
if (!stageViewParams) {
|
10073
10444
|
throw new Error('[stageView.open] Stage view params cannot be null');
|
10074
10445
|
}
|
10075
|
-
resolve(
|
10446
|
+
resolve(sendAndHandleSdkErrorWithVersion(getApiVersionTag(stageViewTelemetryVersionNumber, ApiName.StageView_Open), 'stageView.open', stageViewParams));
|
10076
10447
|
});
|
10077
10448
|
}
|
10078
10449
|
stageView.open = open;
|
@@ -10105,6 +10476,11 @@ var visualMedia_awaiter = (undefined && undefined.__awaiter) || function (thisAr
|
|
10105
10476
|
|
10106
10477
|
|
10107
10478
|
|
10479
|
+
|
10480
|
+
/**
|
10481
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
10482
|
+
*/
|
10483
|
+
const visualMediaTelemetryVersionNumber = ApiVersionNumber.V_2;
|
10108
10484
|
/**
|
10109
10485
|
* @hidden
|
10110
10486
|
* Interact with images. Allows the app developer ask the user to get images from their camera / camera roll / file system.
|
@@ -10158,7 +10534,7 @@ var visualMedia;
|
|
10158
10534
|
throw errorNotSupportedOnPlatform;
|
10159
10535
|
}
|
10160
10536
|
const permissions = DevicePermission.Media;
|
10161
|
-
return
|
10537
|
+
return sendAndHandleSdkErrorWithVersion(getApiVersionTag(visualMediaTelemetryVersionNumber, ApiName.VisualMedia_HasPermission), 'permissions.has', permissions);
|
10162
10538
|
}
|
10163
10539
|
visualMedia.hasPermission = hasPermission;
|
10164
10540
|
/**
|
@@ -10176,7 +10552,7 @@ var visualMedia;
|
|
10176
10552
|
throw errorNotSupportedOnPlatform;
|
10177
10553
|
}
|
10178
10554
|
const permissions = DevicePermission.Media;
|
10179
|
-
return
|
10555
|
+
return sendAndHandleSdkErrorWithVersion(getApiVersionTag(visualMediaTelemetryVersionNumber, ApiName.VisualMedia_RequestPermission), 'permissions.request', permissions);
|
10180
10556
|
}
|
10181
10557
|
visualMedia.requestPermission = requestPermission;
|
10182
10558
|
/**
|
@@ -10201,7 +10577,7 @@ var visualMedia;
|
|
10201
10577
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.task);
|
10202
10578
|
ensureSupported();
|
10203
10579
|
ensureImageInputValid(cameraImageInputs);
|
10204
|
-
const files = yield
|
10580
|
+
const files = yield sendAndHandleSdkErrorWithVersion(getApiVersionTag(visualMediaTelemetryVersionNumber, ApiName.VisualMedia_Image_CaptureImages), 'visualMedia.image.captureImages', cameraImageInputs);
|
10205
10581
|
ensureResponseValid(cameraImageInputs.maxVisualMediaCount, files);
|
10206
10582
|
return files;
|
10207
10583
|
});
|
@@ -10221,7 +10597,7 @@ var visualMedia;
|
|
10221
10597
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.task);
|
10222
10598
|
ensureSupported();
|
10223
10599
|
ensureImageInputValid(galleryImageInputs);
|
10224
|
-
const files = yield
|
10600
|
+
const files = yield sendAndHandleSdkErrorWithVersion(getApiVersionTag(visualMediaTelemetryVersionNumber, ApiName.VisualMedia_Image_RetrieveImages), 'visualMedia.image.retrieveImages', galleryImageInputs);
|
10225
10601
|
ensureResponseValid(galleryImageInputs.maxVisualMediaCount, files);
|
10226
10602
|
return files;
|
10227
10603
|
});
|
@@ -10996,6 +11372,11 @@ function navigateBack(onComplete) {
|
|
10996
11372
|
|
10997
11373
|
|
10998
11374
|
|
11375
|
+
|
11376
|
+
/**
|
11377
|
+
* v1 APIs telemetry file: All of APIs in this capability file should send out API version v1 ONLY
|
11378
|
+
*/
|
11379
|
+
const settingsTelemetryVersionNumber = ApiVersionNumber.V_1;
|
10999
11380
|
/**
|
11000
11381
|
* @deprecated
|
11001
11382
|
* As of 2.0.0, please use {@link pages.config} namespace instead.
|
@@ -11015,7 +11396,7 @@ var settings;
|
|
11015
11396
|
* @param validityState - Indicates whether the save or remove button is enabled for the user.
|
11016
11397
|
*/
|
11017
11398
|
function setValidityState(validityState) {
|
11018
|
-
|
11399
|
+
configSetValidityStateHelper(getApiVersionTag(settingsTelemetryVersionNumber, ApiName.Settings_SetValidityState), validityState);
|
11019
11400
|
}
|
11020
11401
|
settings.setValidityState = setValidityState;
|
11021
11402
|
/**
|
@@ -11028,7 +11409,7 @@ var settings;
|
|
11028
11409
|
*/
|
11029
11410
|
function getSettings(callback) {
|
11030
11411
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.settings, FrameContexts.remove, FrameContexts.sidePanel);
|
11031
|
-
|
11412
|
+
getConfigHelper(getApiVersionTag(settingsTelemetryVersionNumber, ApiName.Settings_GetSettings)).then((config) => {
|
11032
11413
|
callback(config);
|
11033
11414
|
});
|
11034
11415
|
}
|
@@ -11045,8 +11426,7 @@ var settings;
|
|
11045
11426
|
function setSettings(instanceSettings, onComplete) {
|
11046
11427
|
internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.content, FrameContexts.settings, FrameContexts.sidePanel);
|
11047
11428
|
const completionHandler = onComplete !== null && onComplete !== void 0 ? onComplete : getGenericOnCompleteHandler();
|
11048
|
-
|
11049
|
-
.setConfig(instanceSettings)
|
11429
|
+
configSetConfigHelper(getApiVersionTag(settingsTelemetryVersionNumber, ApiName.Settings_SetSettings), instanceSettings)
|
11050
11430
|
.then(() => {
|
11051
11431
|
completionHandler(true);
|
11052
11432
|
})
|
@@ -11067,7 +11447,7 @@ var settings;
|
|
11067
11447
|
* @param handler - The handler to invoke when the user selects the save button.
|
11068
11448
|
*/
|
11069
11449
|
function registerOnSaveHandler(handler) {
|
11070
|
-
pages.config.registerOnSaveHandlerHelper(handler);
|
11450
|
+
pages.config.registerOnSaveHandlerHelper(getApiVersionTag(settingsTelemetryVersionNumber, ApiName.Settings_RegisterOnSaveHandler), handler);
|
11071
11451
|
}
|
11072
11452
|
settings.registerOnSaveHandler = registerOnSaveHandler;
|
11073
11453
|
/**
|
@@ -11082,7 +11462,7 @@ var settings;
|
|
11082
11462
|
* @param handler - The handler to invoke when the user selects the remove button.
|
11083
11463
|
*/
|
11084
11464
|
function registerOnRemoveHandler(handler) {
|
11085
|
-
pages.config.registerOnRemoveHandlerHelper(handler);
|
11465
|
+
pages.config.registerOnRemoveHandlerHelper(getApiVersionTag(settingsTelemetryVersionNumber, ApiName.Settings_RegisterOnRemoveHandler), handler);
|
11086
11466
|
}
|
11087
11467
|
settings.registerOnRemoveHandler = registerOnRemoveHandler;
|
11088
11468
|
})(settings || (settings = {}));
|
@@ -12329,7 +12709,9 @@ var files;
|
|
12329
12709
|
* @hidden
|
12330
12710
|
* Hide from docs
|
12331
12711
|
*
|
12332
|
-
* Gets a list of cloud storage folders added to the channel
|
12712
|
+
* Gets a list of cloud storage folders added to the channel. This function will not timeout;
|
12713
|
+
* the callback will only return when the host responds with a list of folders or error.
|
12714
|
+
*
|
12333
12715
|
* @param channelId - ID of the channel whose cloud storage folders should be retrieved
|
12334
12716
|
* @param callback - Callback that will be triggered post folders load
|
12335
12717
|
*
|
@@ -12947,12 +13329,16 @@ var notifications;
|
|
12947
13329
|
|
12948
13330
|
|
12949
13331
|
|
13332
|
+
|
12950
13333
|
/**
|
12951
13334
|
* @hidden
|
12952
13335
|
*
|
12953
13336
|
* @internal
|
12954
13337
|
* Limited to Microsoft-internal use
|
13338
|
+
*
|
13339
|
+
* v1 APIs telemetry file: All of APIs in this capability file should send out API version v1 ONLY
|
12955
13340
|
*/
|
13341
|
+
const remoteCameraTelemetryVersionNumber = ApiVersionNumber.V_1;
|
12956
13342
|
var remoteCamera;
|
12957
13343
|
(function (remoteCamera) {
|
12958
13344
|
/**
|
@@ -13031,7 +13417,7 @@ var remoteCamera;
|
|
13031
13417
|
if (!isSupported()) {
|
13032
13418
|
throw errorNotSupportedOnPlatform;
|
13033
13419
|
}
|
13034
|
-
|
13420
|
+
sendMessageToParentWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_GetCapableParticipants), 'remoteCamera.getCapableParticipants', callback);
|
13035
13421
|
}
|
13036
13422
|
remoteCamera.getCapableParticipants = getCapableParticipants;
|
13037
13423
|
/**
|
@@ -13058,7 +13444,7 @@ var remoteCamera;
|
|
13058
13444
|
if (!isSupported()) {
|
13059
13445
|
throw errorNotSupportedOnPlatform;
|
13060
13446
|
}
|
13061
|
-
|
13447
|
+
sendMessageToParentWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_RequestControl), 'remoteCamera.requestControl', [participant], callback);
|
13062
13448
|
}
|
13063
13449
|
remoteCamera.requestControl = requestControl;
|
13064
13450
|
/**
|
@@ -13082,7 +13468,7 @@ var remoteCamera;
|
|
13082
13468
|
if (!isSupported()) {
|
13083
13469
|
throw errorNotSupportedOnPlatform;
|
13084
13470
|
}
|
13085
|
-
|
13471
|
+
sendMessageToParentWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_SendControlCommand), 'remoteCamera.sendControlCommand', [ControlCommand], callback);
|
13086
13472
|
}
|
13087
13473
|
remoteCamera.sendControlCommand = sendControlCommand;
|
13088
13474
|
/**
|
@@ -13102,7 +13488,7 @@ var remoteCamera;
|
|
13102
13488
|
if (!isSupported()) {
|
13103
13489
|
throw errorNotSupportedOnPlatform;
|
13104
13490
|
}
|
13105
|
-
|
13491
|
+
sendMessageToParentWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_TerminateSession), 'remoteCamera.terminateSession', callback);
|
13106
13492
|
}
|
13107
13493
|
remoteCamera.terminateSession = terminateSession;
|
13108
13494
|
/**
|
@@ -13123,7 +13509,7 @@ var remoteCamera;
|
|
13123
13509
|
if (!isSupported()) {
|
13124
13510
|
throw errorNotSupportedOnPlatform;
|
13125
13511
|
}
|
13126
|
-
|
13512
|
+
registerHandlerWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_RegisterOnCapableParticipantsChangeHandler), 'remoteCamera.capableParticipantsChange', handler);
|
13127
13513
|
}
|
13128
13514
|
remoteCamera.registerOnCapableParticipantsChangeHandler = registerOnCapableParticipantsChangeHandler;
|
13129
13515
|
/**
|
@@ -13144,7 +13530,7 @@ var remoteCamera;
|
|
13144
13530
|
if (!isSupported()) {
|
13145
13531
|
throw errorNotSupportedOnPlatform;
|
13146
13532
|
}
|
13147
|
-
|
13533
|
+
registerHandlerWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_RegisterOnErrorHandler), 'remoteCamera.handlerError', handler);
|
13148
13534
|
}
|
13149
13535
|
remoteCamera.registerOnErrorHandler = registerOnErrorHandler;
|
13150
13536
|
/**
|
@@ -13165,7 +13551,7 @@ var remoteCamera;
|
|
13165
13551
|
if (!isSupported()) {
|
13166
13552
|
throw errorNotSupportedOnPlatform;
|
13167
13553
|
}
|
13168
|
-
|
13554
|
+
registerHandlerWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_RegisterOnDeviceStateChangeHandler), 'remoteCamera.deviceStateChange', handler);
|
13169
13555
|
}
|
13170
13556
|
remoteCamera.registerOnDeviceStateChangeHandler = registerOnDeviceStateChangeHandler;
|
13171
13557
|
/**
|
@@ -13186,7 +13572,7 @@ var remoteCamera;
|
|
13186
13572
|
if (!isSupported()) {
|
13187
13573
|
throw errorNotSupportedOnPlatform;
|
13188
13574
|
}
|
13189
|
-
|
13575
|
+
registerHandlerWithVersion(getApiVersionTag(remoteCameraTelemetryVersionNumber, ApiName.RemoteCamera_RegisterOnSessionStatusChangeHandler), 'remoteCamera.sessionStatusChange', handler);
|
13190
13576
|
}
|
13191
13577
|
remoteCamera.registerOnSessionStatusChangeHandler = registerOnSessionStatusChangeHandler;
|
13192
13578
|
/**
|
@@ -13281,13 +13667,17 @@ var appEntity;
|
|
13281
13667
|
|
13282
13668
|
|
13283
13669
|
|
13670
|
+
|
13284
13671
|
/**
|
13285
13672
|
* @hidden
|
13286
13673
|
* Namespace to interact with the `teams` specific part of the SDK.
|
13287
13674
|
*
|
13288
13675
|
* @internal
|
13289
13676
|
* Limited to Microsoft-internal use
|
13677
|
+
*
|
13678
|
+
* v1 APIs telemetry file: All of APIs in this capability file should send out API version v1 ONLY
|
13290
13679
|
*/
|
13680
|
+
const teamsTelemetryVersionNumber = ApiVersionNumber.V_1;
|
13291
13681
|
var teams;
|
13292
13682
|
(function (teams) {
|
13293
13683
|
let ChannelType;
|
@@ -13316,7 +13706,7 @@ var teams;
|
|
13316
13706
|
if (!callback) {
|
13317
13707
|
throw new Error('[teams.getTeamChannels] Callback cannot be null');
|
13318
13708
|
}
|
13319
|
-
|
13709
|
+
sendMessageToParentWithVersion(getApiVersionTag(teamsTelemetryVersionNumber, ApiName.Teams_GetTeamChannels), 'teams.getTeamChannels', [groupId], callback);
|
13320
13710
|
}
|
13321
13711
|
teams.getTeamChannels = getTeamChannels;
|
13322
13712
|
/**
|
@@ -13341,7 +13731,7 @@ var teams;
|
|
13341
13731
|
if (!callback) {
|
13342
13732
|
throw new Error('[teams.refreshSiteUrl] Callback cannot be null');
|
13343
13733
|
}
|
13344
|
-
|
13734
|
+
sendMessageToParentWithVersion(getApiVersionTag(teamsTelemetryVersionNumber, ApiName.Teams_RefreshSiteUrl), 'teams.refreshSiteUrl', [threadId], callback);
|
13345
13735
|
}
|
13346
13736
|
teams.refreshSiteUrl = refreshSiteUrl;
|
13347
13737
|
/**
|
@@ -13398,7 +13788,9 @@ var teams;
|
|
13398
13788
|
throw new Error(JSON.stringify(oldPlatformError));
|
13399
13789
|
}
|
13400
13790
|
/* eslint-disable-next-line strict-null-checks/all */ /* Fix tracked by 5730662 */
|
13401
|
-
resolve(
|
13791
|
+
resolve(sendAndUnwrapWithVersion(getApiVersionTag(teamsTelemetryVersionNumber, ApiName.Teams_FullTrust_JoinedTeams_GetUserJoinedTeams), 'getUserJoinedTeams',
|
13792
|
+
/* eslint-disable-next-line strict-null-checks/all */ /* Fix tracked by 5730662 */
|
13793
|
+
teamInstanceParameters));
|
13402
13794
|
});
|
13403
13795
|
}
|
13404
13796
|
joinedTeams.getUserJoinedTeams = getUserJoinedTeams;
|
@@ -13440,7 +13832,7 @@ var teams;
|
|
13440
13832
|
if (!isSupported()) {
|
13441
13833
|
throw errorNotSupportedOnPlatform;
|
13442
13834
|
}
|
13443
|
-
resolve(
|
13835
|
+
resolve(sendAndUnwrapWithVersion(getApiVersionTag(teamsTelemetryVersionNumber, ApiName.Teams_FullTrust_GetConfigSetting), 'getConfigSetting', key));
|
13444
13836
|
});
|
13445
13837
|
}
|
13446
13838
|
fullTrust.getConfigSetting = getConfigSetting;
|
@@ -13485,6 +13877,7 @@ var videoEffectsEx_awaiter = (undefined && undefined.__awaiter) || function (thi
|
|
13485
13877
|
|
13486
13878
|
|
13487
13879
|
|
13880
|
+
|
13488
13881
|
/**
|
13489
13882
|
* @hidden
|
13490
13883
|
* Extended video API
|
@@ -13492,13 +13885,15 @@ var videoEffectsEx_awaiter = (undefined && undefined.__awaiter) || function (thi
|
|
13492
13885
|
*
|
13493
13886
|
* @internal
|
13494
13887
|
* Limited to Microsoft-internal use
|
13888
|
+
* v2 APIs telemetry file: All of APIs in this capability file should send out API version v2 ONLY
|
13495
13889
|
*/
|
13890
|
+
const videoEffectsExTelemetryVersionNumber = ApiVersionNumber.V_2;
|
13496
13891
|
var videoEffectsEx;
|
13497
13892
|
(function (videoEffectsEx) {
|
13498
13893
|
videoEffectsEx.frameProcessingTimeoutInMs = 2000;
|
13499
13894
|
const videoPerformanceMonitor = inServerSideRenderingEnvironment()
|
13500
13895
|
? undefined
|
13501
|
-
: new VideoPerformanceMonitor(
|
13896
|
+
: new VideoPerformanceMonitor(sendMessageToParentWithVersion);
|
13502
13897
|
/**
|
13503
13898
|
* @hidden
|
13504
13899
|
* Error level when notifying errors to the host, the host will decide what to do acording to the error level.
|
@@ -13533,9 +13928,9 @@ var videoEffectsEx;
|
|
13533
13928
|
throw new Error('Both videoFrameHandler and videoBufferHandler must be provided');
|
13534
13929
|
}
|
13535
13930
|
if (internalAPIs_ensureInitialized(runtime_runtime, FrameContexts.sidePanel)) {
|
13536
|
-
|
13931
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_RegisterSetFrameProcessTimeLimitHandler), 'video.setFrameProcessTimeLimit', (timeLimit) => videoPerformanceMonitor === null || videoPerformanceMonitor === void 0 ? void 0 : videoPerformanceMonitor.setFrameProcessTimeLimit(timeLimit), false);
|
13537
13932
|
if ((_a = runtime_runtime.supports.video) === null || _a === void 0 ? void 0 : _a.mediaStream) {
|
13538
|
-
|
13933
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_RegisterStartVideoExtensibilityVideoStreamHandler), 'video.startVideoExtensibilityVideoStream', (mediaStreamInfo) => videoEffectsEx_awaiter(this, void 0, void 0, function* () {
|
13539
13934
|
const { streamId, metadataInTexture } = mediaStreamInfo;
|
13540
13935
|
const handler = videoPerformanceMonitor
|
13541
13936
|
? createMonitoredVideoFrameHandler(parameters.videoFrameHandler, videoPerformanceMonitor)
|
@@ -13544,10 +13939,10 @@ var videoEffectsEx;
|
|
13544
13939
|
? yield processMediaStreamWithMetadata(streamId, handler, notifyError, videoPerformanceMonitor)
|
13545
13940
|
: yield processMediaStream(streamId, handler, notifyError, videoPerformanceMonitor);
|
13546
13941
|
}), false);
|
13547
|
-
|
13942
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_MediaStream_RegisterForVideoFrame), 'video.mediaStream.registerForVideoFrame', [parameters.config]);
|
13548
13943
|
}
|
13549
13944
|
else if ((_b = runtime_runtime.supports.video) === null || _b === void 0 ? void 0 : _b.sharedFrame) {
|
13550
|
-
|
13945
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_RegisterNewVideoFrameHandler), 'video.newVideoFrame', (videoBufferData) => {
|
13551
13946
|
if (videoBufferData) {
|
13552
13947
|
videoPerformanceMonitor === null || videoPerformanceMonitor === void 0 ? void 0 : videoPerformanceMonitor.reportStartFrameProcessing(videoBufferData.width, videoBufferData.height);
|
13553
13948
|
const clearProcessingTimeout = createFrameProcessingTimeout();
|
@@ -13559,7 +13954,7 @@ var videoEffectsEx;
|
|
13559
13954
|
}, notifyError);
|
13560
13955
|
}
|
13561
13956
|
}, false);
|
13562
|
-
|
13957
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_RegisterForVideoFrame), 'video.registerForVideoFrame', [parameters.config]);
|
13563
13958
|
}
|
13564
13959
|
else {
|
13565
13960
|
// should not happen if isSupported() is true
|
@@ -13612,7 +14007,7 @@ var videoEffectsEx;
|
|
13612
14007
|
if (!isSupported()) {
|
13613
14008
|
throw errorNotSupportedOnPlatform;
|
13614
14009
|
}
|
13615
|
-
|
14010
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_NotifySelectedVideoEffectChanged), 'video.videoEffectChanged', [effectChangeType, effectId, effectParam]);
|
13616
14011
|
}
|
13617
14012
|
videoEffectsEx.notifySelectedVideoEffectChanged = notifySelectedVideoEffectChanged;
|
13618
14013
|
/**
|
@@ -13629,8 +14024,8 @@ var videoEffectsEx;
|
|
13629
14024
|
if (!isSupported()) {
|
13630
14025
|
throw errorNotSupportedOnPlatform;
|
13631
14026
|
}
|
13632
|
-
|
13633
|
-
|
14027
|
+
registerHandlerWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_RegisterEffectParameterChangeHandler), 'video.effectParameterChange', createEffectParameterChangeCallback(callback, videoPerformanceMonitor), false);
|
14028
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_RegisterForVideoEffect), 'video.registerForVideoEffect');
|
13634
14029
|
}
|
13635
14030
|
videoEffectsEx.registerForVideoEffect = registerForVideoEffect;
|
13636
14031
|
/**
|
@@ -13646,7 +14041,7 @@ var videoEffectsEx;
|
|
13646
14041
|
if (!videoEffects.isSupported()) {
|
13647
14042
|
throw errorNotSupportedOnPlatform;
|
13648
14043
|
}
|
13649
|
-
|
14044
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_UpdatePersonalizedEffects), 'video.personalizedEffectsChanged', [effects]);
|
13650
14045
|
}
|
13651
14046
|
videoEffectsEx.updatePersonalizedEffects = updatePersonalizedEffects;
|
13652
14047
|
/**
|
@@ -13677,7 +14072,7 @@ var videoEffectsEx;
|
|
13677
14072
|
* Limited to Microsoft-internal use
|
13678
14073
|
*/
|
13679
14074
|
function notifyVideoFrameProcessed(timestamp) {
|
13680
|
-
|
14075
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_NotifyVideoFrameProcessed), 'video.videoFrameProcessed', [timestamp]);
|
13681
14076
|
}
|
13682
14077
|
/**
|
13683
14078
|
* @hidden
|
@@ -13690,7 +14085,7 @@ var videoEffectsEx;
|
|
13690
14085
|
* Limited to Microsoft-internal use
|
13691
14086
|
*/
|
13692
14087
|
function notifyError(errorMessage, errorLevel = ErrorLevel.Warn) {
|
13693
|
-
|
14088
|
+
sendMessageToParentWithVersion(getApiVersionTag(videoEffectsExTelemetryVersionNumber, ApiName.VideoEffectsEx_NotifyError), 'video.notifyError', [errorMessage, errorLevel]);
|
13694
14089
|
}
|
13695
14090
|
/**
|
13696
14091
|
* @hidden
|