@microsoft/teams-js 2.23.0-beta.1 → 2.23.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/MicrosoftTeams.d.ts
CHANGED
@@ -8978,19 +8978,21 @@ export namespace visualMedia {
|
|
8978
8978
|
}
|
8979
8979
|
|
8980
8980
|
/**
|
8981
|
-
* Contains functionality to
|
8981
|
+
* Contains functionality enabling apps to query properties about how the host manages web storage (`Window.LocalStorage`)
|
8982
8982
|
*
|
8983
8983
|
* @beta
|
8984
8984
|
*/
|
8985
8985
|
export namespace webStorage {
|
8986
8986
|
/**
|
8987
|
-
* Checks if web storage gets cleared when a user logs out from host
|
8987
|
+
* Checks if web storage (`Window.LocalStorage`) gets cleared when a user logs out from host
|
8988
8988
|
*
|
8989
|
-
* @returns true
|
8989
|
+
* @returns `true` if web storage gets cleared on logout and `false` if not
|
8990
|
+
*
|
8991
|
+
* @throws `Error` if {@linkcode app.initialize} has not successfully completed
|
8990
8992
|
*
|
8991
8993
|
* @beta
|
8992
8994
|
*/
|
8993
|
-
function isWebStorageClearedOnUserLogOut(): boolean
|
8995
|
+
function isWebStorageClearedOnUserLogOut(): Promise<boolean>;
|
8994
8996
|
/**
|
8995
8997
|
* Checks if webStorage capability is supported by the host
|
8996
8998
|
* @returns boolean to represent whether the webStorage capability is supported
|
package/dist/MicrosoftTeams.js
CHANGED
@@ -1130,7 +1130,7 @@ function isFollowingApiVersionTagFormat(apiVersionTag) {
|
|
1130
1130
|
}
|
1131
1131
|
|
1132
1132
|
;// CONCATENATED MODULE: ./src/artifactsForCDN/validDomains.json
|
1133
|
-
const validDomains_namespaceObject = /*#__PURE__*/JSON.parse('{"validOrigins":["teams.microsoft.com","teams.microsoft.us","gov.teams.microsoft.us","dod.teams.microsoft.us","int.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","*.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"]}');
|
1133
|
+
const validDomains_namespaceObject = /*#__PURE__*/JSON.parse('{"validOrigins":["teams.microsoft.com","teams.microsoft.us","gov.teams.microsoft.us","dod.teams.microsoft.us","int.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","*.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","fa000000125.resources.office.net","fa000000129.resources.office.net","fa000000124.resources.office.net","fa000000128.resources.office.net"]}');
|
1134
1134
|
var artifactsForCDN_validDomains_namespaceObject = /*#__PURE__*/__webpack_require__.t(validDomains_namespaceObject, 2);
|
1135
1135
|
;// CONCATENATED MODULE: ./src/internal/constants.ts
|
1136
1136
|
|
@@ -1303,7 +1303,7 @@ GlobalVars.printCapabilityEnabled = false;
|
|
1303
1303
|
|
1304
1304
|
// EXTERNAL MODULE: ../../node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js
|
1305
1305
|
var base64_js = __webpack_require__(933);
|
1306
|
-
;// CONCATENATED MODULE: ../../node_modules/.pnpm/file+skeleton-buffer/node_modules/skeleton-buffer/index.js
|
1306
|
+
;// CONCATENATED MODULE: ../../node_modules/.pnpm/skeleton-buffer@file+skeleton-buffer/node_modules/skeleton-buffer/index.js
|
1307
1307
|
|
1308
1308
|
|
1309
1309
|
const _Buffer = Buffer;
|
@@ -2947,6 +2947,29 @@ function validateUrl(url, errorToThrow) {
|
|
2947
2947
|
throw errorToThrow || new Error('Url should be a valid https url');
|
2948
2948
|
}
|
2949
2949
|
}
|
2950
|
+
/**
|
2951
|
+
* This function takes in a string that represents a full or relative path and returns a
|
2952
|
+
* fully qualified URL object.
|
2953
|
+
*
|
2954
|
+
* Currently this is accomplished by assigning the input string to an a tag and then retrieving
|
2955
|
+
* the a tag's href value. A side effect of doing this is that the string becomes a fully qualified
|
2956
|
+
* URL. This is probably not how I would choose to do this, but in order to not unintentionally
|
2957
|
+
* break something I've preseved the functionality here and just isolated the code to make it
|
2958
|
+
* easier to mock.
|
2959
|
+
*
|
2960
|
+
* @example
|
2961
|
+
* `fullyQualifyUrlString('https://example.com')` returns `new URL('https://example.com')`
|
2962
|
+
* `fullyQualifyUrlString('helloWorld')` returns `new URL('https://example.com/helloWorld')`
|
2963
|
+
* `fullyQualifyUrlString('hello%20World')` returns `new URL('https://example.com/hello%20World')`
|
2964
|
+
*
|
2965
|
+
* @param fullOrRelativePath A string representing a full or relative URL.
|
2966
|
+
* @returns A fully qualified URL representing the input string.
|
2967
|
+
*/
|
2968
|
+
function fullyQualifyUrlString(fullOrRelativePath) {
|
2969
|
+
const link = document.createElement('a');
|
2970
|
+
link.href = fullOrRelativePath;
|
2971
|
+
return new URL(link.href);
|
2972
|
+
}
|
2950
2973
|
/**
|
2951
2974
|
* The hasScriptTags function first decodes any HTML entities in the input string using the decodeHTMLEntities function.
|
2952
2975
|
* It then tries to decode the result as a URI component. If the URI decoding fails (which would throw an error), it assumes that the input was not encoded and uses the original input.
|
@@ -3372,7 +3395,7 @@ const _minRuntimeConfigToUninitialize = {
|
|
3372
3395
|
* @hidden
|
3373
3396
|
* Package version.
|
3374
3397
|
*/
|
3375
|
-
const version = "2.23.0-beta.
|
3398
|
+
const version = "2.23.0-beta.3";
|
3376
3399
|
|
3377
3400
|
;// CONCATENATED MODULE: ./src/internal/internalAPIs.ts
|
3378
3401
|
|
@@ -3647,6 +3670,7 @@ function validateOrigin(messageOrigin) {
|
|
3647
3670
|
|
3648
3671
|
|
3649
3672
|
|
3673
|
+
|
3650
3674
|
/**
|
3651
3675
|
* Namespace to interact with the authentication-specific part of the SDK.
|
3652
3676
|
*
|
@@ -3729,23 +3753,13 @@ var authentication;
|
|
3729
3753
|
authentication.authenticate = authenticate;
|
3730
3754
|
function authenticateHelper(apiVersionTag, authenticateParameters) {
|
3731
3755
|
return new Promise((resolve, reject) => {
|
3732
|
-
if (GlobalVars.hostClientType
|
3733
|
-
GlobalVars.hostClientType === HostClientType.android ||
|
3734
|
-
GlobalVars.hostClientType === HostClientType.ios ||
|
3735
|
-
GlobalVars.hostClientType === HostClientType.ipados ||
|
3736
|
-
GlobalVars.hostClientType === HostClientType.macos ||
|
3737
|
-
GlobalVars.hostClientType === HostClientType.rigel ||
|
3738
|
-
GlobalVars.hostClientType === HostClientType.teamsRoomsWindows ||
|
3739
|
-
GlobalVars.hostClientType === HostClientType.teamsRoomsAndroid ||
|
3740
|
-
GlobalVars.hostClientType === HostClientType.teamsPhones ||
|
3741
|
-
GlobalVars.hostClientType === HostClientType.teamsDisplays ||
|
3742
|
-
GlobalVars.hostClientType === HostClientType.surfaceHub) {
|
3756
|
+
if (GlobalVars.hostClientType !== HostClientType.web) {
|
3743
3757
|
// Convert any relative URLs into absolute URLs before sending them over to the parent window.
|
3744
|
-
const
|
3745
|
-
|
3758
|
+
const fullyQualifiedURL = fullyQualifyUrlString(authenticateParameters.url);
|
3759
|
+
validateUrl(fullyQualifiedURL);
|
3746
3760
|
// Ask the parent window to open an authentication window with the parameters provided by the caller.
|
3747
3761
|
resolve(sendMessageToParentAsync(apiVersionTag, 'authentication.authenticate', [
|
3748
|
-
|
3762
|
+
fullyQualifiedURL.href,
|
3749
3763
|
authenticateParameters.width,
|
3750
3764
|
authenticateParameters.height,
|
3751
3765
|
authenticateParameters.isExternal,
|
@@ -3873,8 +3887,8 @@ var authentication;
|
|
3873
3887
|
width = Math.min(width, Communication.currentWindow.outerWidth - 400);
|
3874
3888
|
height = Math.min(height, Communication.currentWindow.outerHeight - 200);
|
3875
3889
|
// Convert any relative URLs into absolute URLs before sending them over to the parent window
|
3876
|
-
const
|
3877
|
-
|
3890
|
+
const fullyQualifiedURL = fullyQualifyUrlString(authenticateParameters.url.replace('{oauthRedirectMethod}', 'web'));
|
3891
|
+
validateUrl(fullyQualifiedURL);
|
3878
3892
|
// We are running in the browser, so we need to center the new window ourselves
|
3879
3893
|
let left = typeof Communication.currentWindow.screenLeft !== 'undefined'
|
3880
3894
|
? Communication.currentWindow.screenLeft
|
@@ -3885,7 +3899,7 @@ var authentication;
|
|
3885
3899
|
left += Communication.currentWindow.outerWidth / 2 - width / 2;
|
3886
3900
|
top += Communication.currentWindow.outerHeight / 2 - height / 2;
|
3887
3901
|
// Open a child window with a desired set of standard browser features
|
3888
|
-
Communication.childWindow = Communication.currentWindow.open(
|
3902
|
+
Communication.childWindow = Communication.currentWindow.open(fullyQualifiedURL.href, '_blank', 'toolbar=no, location=yes, status=no, menubar=no, scrollbars=yes, top=' +
|
3889
3903
|
top +
|
3890
3904
|
', left=' +
|
3891
3905
|
left +
|
@@ -5404,7 +5418,7 @@ var pages;
|
|
5404
5418
|
if (!isSupported()) {
|
5405
5419
|
throw errorNotSupportedOnPlatform;
|
5406
5420
|
}
|
5407
|
-
const apiVersionTag = getApiVersionTag(pagesTelemetryVersionNumber, "pages.
|
5421
|
+
const apiVersionTag = getApiVersionTag(pagesTelemetryVersionNumber, "pages.navigateToApp" /* ApiName.Pages_NavigateToApp */);
|
5408
5422
|
if (runtime.isLegacyTeams) {
|
5409
5423
|
resolve(sendAndHandleStatusAndReason(apiVersionTag, 'executeDeepLink', createTeamsAppLink(params)));
|
5410
5424
|
}
|
@@ -6385,6 +6399,7 @@ function initializeCommunication(validMessageOrigins, apiVersionTag) {
|
|
6385
6399
|
return sendMessageToParentAsync(apiVersionTag, 'initialize', [
|
6386
6400
|
version,
|
6387
6401
|
latestRuntimeApiVersion,
|
6402
|
+
validMessageOrigins,
|
6388
6403
|
]).then(([context, clientType, runtimeConfig, clientSupportedSDKVersion]) => {
|
6389
6404
|
tryPolyfillWithNestedAppAuthBridge(clientSupportedSDKVersion, Communication.currentWindow, {
|
6390
6405
|
onMessage: processAuthBridgeMessage,
|
@@ -11670,25 +11685,44 @@ var visualMedia;
|
|
11670
11685
|
})(visualMedia || (visualMedia = {}));
|
11671
11686
|
|
11672
11687
|
;// CONCATENATED MODULE: ./src/public/webStorage.ts
|
11688
|
+
var webStorage_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
|
11689
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
11690
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
11691
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
11692
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
11693
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
11694
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
11695
|
+
});
|
11696
|
+
};
|
11697
|
+
|
11698
|
+
|
11699
|
+
|
11673
11700
|
|
11674
11701
|
|
11675
11702
|
/**
|
11676
|
-
* Contains functionality to
|
11703
|
+
* Contains functionality enabling apps to query properties about how the host manages web storage (`Window.LocalStorage`)
|
11677
11704
|
*
|
11678
11705
|
* @beta
|
11679
11706
|
*/
|
11680
11707
|
var webStorage;
|
11681
11708
|
(function (webStorage) {
|
11682
11709
|
/**
|
11683
|
-
* Checks if web storage gets cleared when a user logs out from host
|
11710
|
+
* Checks if web storage (`Window.LocalStorage`) gets cleared when a user logs out from host
|
11711
|
+
*
|
11712
|
+
* @returns `true` if web storage gets cleared on logout and `false` if not
|
11684
11713
|
*
|
11685
|
-
* @
|
11714
|
+
* @throws `Error` if {@linkcode app.initialize} has not successfully completed
|
11686
11715
|
*
|
11687
11716
|
* @beta
|
11688
11717
|
*/
|
11689
11718
|
function isWebStorageClearedOnUserLogOut() {
|
11690
|
-
|
11691
|
-
|
11719
|
+
return webStorage_awaiter(this, void 0, void 0, function* () {
|
11720
|
+
ensureInitialized(runtime);
|
11721
|
+
if (!isSupported()) {
|
11722
|
+
throw errorNotSupportedOnPlatform;
|
11723
|
+
}
|
11724
|
+
return yield sendAndUnwrap(getApiVersionTag("v2" /* ApiVersionNumber.V_2 */, "webStorage.isWebStorageClearedOnUserLogOut" /* ApiName.WebStorage_IsWebStorageClearedOnUserLogOut */), "webStorage.isWebStorageClearedOnUserLogOut" /* ApiName.WebStorage_IsWebStorageClearedOnUserLogOut */);
|
11725
|
+
});
|
11692
11726
|
}
|
11693
11727
|
webStorage.isWebStorageClearedOnUserLogOut = isWebStorageClearedOnUserLogOut;
|
11694
11728
|
/**
|
@@ -11700,7 +11734,7 @@ var webStorage;
|
|
11700
11734
|
* @beta
|
11701
11735
|
*/
|
11702
11736
|
function isSupported() {
|
11703
|
-
return ensureInitialized(runtime) && runtime.supports.webStorage
|
11737
|
+
return ensureInitialized(runtime) && runtime.supports.webStorage !== undefined;
|
11704
11738
|
}
|
11705
11739
|
webStorage.isSupported = isSupported;
|
11706
11740
|
})(webStorage || (webStorage = {}));
|