@microsoft/teams-js 2.31.1 → 2.32.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/esm/packages/teams-js/dts/internal/telemetry.d.ts +2 -0
  2. package/dist/esm/packages/teams-js/dts/private/index.d.ts +1 -0
  3. package/dist/esm/packages/teams-js/dts/private/otherAppStateChange.d.ts +14 -0
  4. package/dist/esm/packages/teams-js/dts/private/store.d.ts +123 -0
  5. package/dist/esm/packages/teams-js/dts/public/dialog/adaptiveCard/adaptiveCard.d.ts +0 -4
  6. package/dist/esm/packages/teams-js/dts/public/dialog/adaptiveCard/bot.d.ts +0 -5
  7. package/dist/esm/packages/teams-js/dts/public/dialog/dialog.d.ts +0 -7
  8. package/dist/esm/packages/teams-js/dts/public/dialog/update.d.ts +0 -5
  9. package/dist/esm/packages/teams-js/dts/public/dialog/url/bot.d.ts +0 -5
  10. package/dist/esm/packages/teams-js/dts/public/dialog/url/parentCommunication.d.ts +0 -9
  11. package/dist/esm/packages/teams-js/dts/public/dialog/url/url.d.ts +0 -6
  12. package/dist/esm/packages/teams-js/dts/public/runtime.d.ts +1 -0
  13. package/dist/esm/packages/teams-js/src/index.js +1 -1
  14. package/dist/esm/packages/teams-js/src/private/otherAppStateChange.js +1 -1
  15. package/dist/esm/packages/teams-js/src/private/store.js +1 -0
  16. package/dist/esm/packages/teams-js/src/public/nestedAppAuth.js +1 -1
  17. package/dist/esm/packages/teams-js/src/public/runtime.js +1 -1
  18. package/dist/esm/packages/teams-js/src/public/version.js +1 -1
  19. package/dist/umd/MicrosoftTeams.js +175 -40
  20. package/dist/umd/MicrosoftTeams.js.map +1 -1
  21. package/dist/umd/MicrosoftTeams.min.js +1 -1
  22. package/dist/umd/MicrosoftTeams.min.js.map +1 -1
  23. package/package.json +1 -50
@@ -927,6 +927,7 @@ __webpack_require__.d(__webpack_exports__, {
927
927
  shareDeepLink: () => (/* reexport */ publicAPIs_shareDeepLink),
928
928
  sharing: () => (/* reexport */ sharing_namespaceObject),
929
929
  stageView: () => (/* reexport */ stageView_namespaceObject),
930
+ store: () => (/* reexport */ store_namespaceObject),
930
931
  tasks: () => (/* reexport */ tasks_namespaceObject),
931
932
  teams: () => (/* reexport */ teams_namespaceObject),
932
933
  teamsCore: () => (/* reexport */ teamsAPIs_namespaceObject),
@@ -1328,6 +1329,7 @@ var otherAppStateChange_namespaceObject = {};
1328
1329
  __webpack_require__.r(otherAppStateChange_namespaceObject);
1329
1330
  __webpack_require__.d(otherAppStateChange_namespaceObject, {
1330
1331
  isSupported: () => (otherAppStateChange_isSupported),
1332
+ notifyInstallCompleted: () => (notifyInstallCompleted),
1331
1333
  registerAppInstallationHandler: () => (registerAppInstallationHandler),
1332
1334
  unregisterAppInstallationHandler: () => (unregisterAppInstallationHandler)
1333
1335
  });
@@ -1434,6 +1436,18 @@ __webpack_require__.d(hostEntity_namespaceObject, {
1434
1436
  tab: () => (tab_namespaceObject)
1435
1437
  });
1436
1438
 
1439
+ // NAMESPACE OBJECT: ./src/private/store.ts
1440
+ var store_namespaceObject = {};
1441
+ __webpack_require__.r(store_namespaceObject);
1442
+ __webpack_require__.d(store_namespaceObject, {
1443
+ StoreDialogType: () => (StoreDialogType),
1444
+ errorInvalidDialogType: () => (errorInvalidDialogType),
1445
+ errorMissingAppId: () => (errorMissingAppId),
1446
+ errorMissingCollectionId: () => (errorMissingCollectionId),
1447
+ isSupported: () => (store_isSupported),
1448
+ openStoreExperience: () => (openStoreExperience)
1449
+ });
1450
+
1437
1451
  // NAMESPACE OBJECT: ./src/public/appInstallDialog.ts
1438
1452
  var appInstallDialog_namespaceObject = {};
1439
1453
  __webpack_require__.r(appInstallDialog_namespaceObject);
@@ -3326,6 +3340,12 @@ const mapTeamsVersionToSupportedCapabilities = {
3326
3340
  hostClientTypes: [HostClientType.android, HostClientType.ios],
3327
3341
  },
3328
3342
  ],
3343
+ '2.1.1': [
3344
+ {
3345
+ capability: { nestedAppAuth: {} },
3346
+ hostClientTypes: [HostClientType.android, HostClientType.ios, HostClientType.ipados],
3347
+ },
3348
+ ],
3329
3349
  };
3330
3350
  const generateBackCompatRuntimeConfigLogger = runtimeLogger.extend('generateBackCompatRuntimeConfig');
3331
3351
  /**
@@ -3455,7 +3475,7 @@ function isSerializable(arg) {
3455
3475
  * @hidden
3456
3476
  * Package version.
3457
3477
  */
3458
- const version = "2.31.1";
3478
+ const version = "2.32.0-beta.0";
3459
3479
 
3460
3480
  ;// ./src/internal/internalAPIs.ts
3461
3481
 
@@ -4752,7 +4772,6 @@ var DataResidency;
4752
4772
  /**
4753
4773
  * Module to update the dialog
4754
4774
  *
4755
- * @beta
4756
4775
  * @module
4757
4776
  */
4758
4777
 
@@ -4763,8 +4782,6 @@ var DataResidency;
4763
4782
  * Update dimensions - height/width of a dialog.
4764
4783
  *
4765
4784
  * @param dimensions - An object containing width and height properties.
4766
- *
4767
- * @beta
4768
4785
  */
4769
4786
  function resize(dimensions) {
4770
4787
  updateResizeHelper(getApiVersionTag(dialogTelemetryVersionNumber, "dialog.update.resize" /* ApiName.Dialog_Update_Resize */), dimensions);
@@ -4774,8 +4791,6 @@ function resize(dimensions) {
4774
4791
  * @returns boolean to represent whether dialog.update capabilty is supported
4775
4792
  *
4776
4793
  * @throws Error if {@linkcode app.initialize} has not successfully completed
4777
- *
4778
- * @beta
4779
4794
  */
4780
4795
  function update_isSupported() {
4781
4796
  return ensureInitialized(runtime) && runtime.supports.dialog
@@ -4789,7 +4804,6 @@ function update_isSupported() {
4789
4804
  /**
4790
4805
  * Module to open a dialog that sends results to the bot framework
4791
4806
  *
4792
- * @beta
4793
4807
  * @module
4794
4808
  */
4795
4809
 
@@ -4804,8 +4818,6 @@ function update_isSupported() {
4804
4818
  * @param messageFromChildHandler - Handler that triggers if dialog sends a message to the app.
4805
4819
  *
4806
4820
  * @returns a function that can be used to send messages to the dialog.
4807
- *
4808
- * @beta
4809
4821
  */
4810
4822
  function bot_open(botUrlDialogInfo, submitHandler, messageFromChildHandler) {
4811
4823
  botUrlOpenHelper(getApiVersionTag(dialogTelemetryVersionNumber, "dialog.url.bot.open" /* ApiName.Dialog_Url_Bot_Open */), botUrlDialogInfo, submitHandler, messageFromChildHandler);
@@ -4816,8 +4828,6 @@ function bot_open(botUrlDialogInfo, submitHandler, messageFromChildHandler) {
4816
4828
  * @returns boolean to represent whether dialog.url.bot is supported
4817
4829
  *
4818
4830
  * @throws Error if {@linkcode app.initialize} has not successfully completed
4819
- *
4820
- * @beta
4821
4831
  */
4822
4832
  function bot_isSupported() {
4823
4833
  return (ensureInitialized(runtime) &&
@@ -4831,7 +4841,6 @@ function bot_isSupported() {
4831
4841
  * @remarks
4832
4842
  * Note that dialog can be invoked from parentless scenarios e.g. Search Message Extensions. The subcapability `parentCommunication` is not supported in such scenarios.
4833
4843
  *
4834
- * @beta
4835
4844
  * @module
4836
4845
  */
4837
4846
 
@@ -4848,8 +4857,6 @@ function bot_isSupported() {
4848
4857
  * This function is only intended to be called from code running within the dialog. Calling it from outside the dialog will have no effect.
4849
4858
  *
4850
4859
  * @param message - The message to send to the parent
4851
- *
4852
- * @beta
4853
4860
  */
4854
4861
  function sendMessageToParentFromDialog(
4855
4862
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -4864,8 +4871,6 @@ message) {
4864
4871
  * Send message to the dialog from the parent
4865
4872
  *
4866
4873
  * @param message - The message to send
4867
- *
4868
- * @beta
4869
4874
  */
4870
4875
  function sendMessageToDialog(
4871
4876
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -4883,8 +4888,6 @@ message) {
4883
4888
  * This function is only intended to be called from code running within the dialog. Calling it from outside the dialog will have no effect.
4884
4889
  *
4885
4890
  * @param listener - The listener that will be triggered.
4886
- *
4887
- * @beta
4888
4891
  */
4889
4892
  function registerOnMessageFromParent(listener) {
4890
4893
  ensureInitialized(runtime, FrameContexts.task);
@@ -4908,8 +4911,6 @@ function registerOnMessageFromParent(listener) {
4908
4911
  * @returns boolean to represent whether dialog.url.parentCommunication capability is supported
4909
4912
  *
4910
4913
  * @throws Error if {@linkcode app.initialize} has not successfully completed
4911
- *
4912
- * @beta
4913
4914
  */
4914
4915
  function parentCommunication_isSupported() {
4915
4916
  var _a, _b;
@@ -4934,8 +4935,6 @@ function parentCommunication_isSupported() {
4934
4935
  * @param urlDialogInfo - An object containing the parameters of the dialog module.
4935
4936
  * @param submitHandler - Handler that triggers when a dialog calls the {@linkcode submit} function or when the user closes the dialog.
4936
4937
  * @param messageFromChildHandler - Handler that triggers if dialog sends a message to the app.
4937
- *
4938
- * @beta
4939
4938
  */
4940
4939
  function url_open(urlDialogInfo, submitHandler, messageFromChildHandler) {
4941
4940
  urlOpenHelper(getApiVersionTag(dialogTelemetryVersionNumber, "dialog.url.open" /* ApiName.Dialog_Url_Open */), urlDialogInfo, submitHandler, messageFromChildHandler);
@@ -4950,8 +4949,6 @@ function url_open(urlDialogInfo, submitHandler, messageFromChildHandler) {
4950
4949
  * If this function is called from a dialog while {@link M365ContentAction} is set in the context object by the host, result will be ignored
4951
4950
  *
4952
4951
  * @param appIds - Valid application(s) that can receive the result of the submitted dialogs. Specifying this parameter helps prevent malicious apps from retrieving the dialog result. Multiple app IDs can be specified because a web app from a single underlying domain can power multiple apps across different environments and branding schemes.
4953
- *
4954
- * @beta
4955
4952
  */
4956
4953
  function url_submit(result, appIds) {
4957
4954
  urlSubmitHelper(getApiVersionTag(dialogTelemetryVersionNumber, "dialog.url.submit" /* ApiName.Dialog_Url_Submit */), result, appIds);
@@ -4962,8 +4959,6 @@ function url_submit(result, appIds) {
4962
4959
  * @returns boolean to represent whether dialog.url module is supported
4963
4960
  *
4964
4961
  * @throws Error if {@linkcode app.initialize} has not successfully completed
4965
- *
4966
- * @beta
4967
4962
  */
4968
4963
  function url_isSupported() {
4969
4964
  return ensureInitialized(runtime) && (runtime.supports.dialog && runtime.supports.dialog.url) !== undefined;
@@ -5112,7 +5107,6 @@ function handleDialogMessage(message) {
5112
5107
  /**
5113
5108
  * Module for interaction with adaptive card dialogs that need to communicate with the bot framework
5114
5109
  *
5115
- * @beta
5116
5110
  * @module
5117
5111
  */
5118
5112
 
@@ -5127,8 +5121,6 @@ function handleDialogMessage(message) {
5127
5121
  *
5128
5122
  * @param botAdaptiveCardDialogInfo - An object containing the parameters of the dialog module including completionBotId.
5129
5123
  * @param submitHandler - Handler that triggers when the dialog has been submitted or closed.
5130
- *
5131
- * @beta
5132
5124
  */
5133
5125
  function adaptiveCard_bot_open(botAdaptiveCardDialogInfo, submitHandler) {
5134
5126
  ensureInitialized(runtime, FrameContexts.content, FrameContexts.sidePanel, FrameContexts.meetingStage);
@@ -5146,8 +5138,6 @@ function adaptiveCard_bot_open(botAdaptiveCardDialogInfo, submitHandler) {
5146
5138
  * @returns boolean to represent whether dialog.adaptiveCard.bot is supported
5147
5139
  *
5148
5140
  * @throws Error if {@linkcode app.initialize} has not successfully completed
5149
- *
5150
- * @beta
5151
5141
  */
5152
5142
  function adaptiveCard_bot_isSupported() {
5153
5143
  const isAdaptiveCardVersionSupported = runtime.hostVersionsInfo &&
@@ -5164,7 +5154,6 @@ function adaptiveCard_bot_isSupported() {
5164
5154
  /* eslint-disable @typescript-eslint/no-unused-vars */
5165
5155
  /**
5166
5156
  * Subcapability for interacting with adaptive card dialogs
5167
- * @beta
5168
5157
  * @module
5169
5158
  */
5170
5159
 
@@ -5183,8 +5172,6 @@ function adaptiveCard_bot_isSupported() {
5183
5172
  *
5184
5173
  * @param adaptiveCardDialogInfo - An object containing the parameters of the dialog module {@link AdaptiveCardDialogInfo}.
5185
5174
  * @param submitHandler - Handler that triggers when a dialog fires an [Action.Submit](https://adaptivecards.io/explorer/Action.Submit.html) or when the user closes the dialog.
5186
- *
5187
- * @beta
5188
5175
  */
5189
5176
  function adaptiveCard_open(adaptiveCardDialogInfo, submitHandler) {
5190
5177
  ensureInitialized(runtime, FrameContexts.content, FrameContexts.sidePanel, FrameContexts.meetingStage);
@@ -5202,8 +5189,6 @@ function adaptiveCard_open(adaptiveCardDialogInfo, submitHandler) {
5202
5189
  * @returns boolean to represent whether dialog.adaptiveCard module is supported
5203
5190
  *
5204
5191
  * @throws Error if {@linkcode app.initialize} has not successfully completed
5205
- *
5206
- * @beta
5207
5192
  */
5208
5193
  function adaptiveCard_isSupported() {
5209
5194
  const isAdaptiveCardVersionSupported = runtime.hostVersionsInfo &&
@@ -5229,7 +5214,6 @@ function adaptiveCard_isSupported() {
5229
5214
  * @remarks Note that dialogs were previously called "task modules". While they have been renamed for clarity, the functionality has been maintained.
5230
5215
  * For more details, see [Dialogs](https://learn.microsoft.com/microsoftteams/platform/task-modules-and-cards/what-are-task-modules)
5231
5216
  *
5232
- * @beta
5233
5217
  * @module
5234
5218
  */
5235
5219
 
@@ -5248,8 +5232,6 @@ function adaptiveCard_isSupported() {
5248
5232
  * Function is called during app initialization
5249
5233
  * @internal
5250
5234
  * Limited to Microsoft-internal use
5251
- *
5252
- * @beta
5253
5235
  */
5254
5236
  function dialog_initialize() {
5255
5237
  registerHandler(getApiVersionTag(dialogTelemetryVersionNumber, "dialog.registerMessageForChildHandler" /* ApiName.Dialog_RegisterMessageForChildHandler */), 'messageForChild', handleDialogMessage, false);
@@ -9985,6 +9967,24 @@ function unregisterAppInstallationHandler() {
9985
9967
  sendMessageToParent(getApiVersionTag(otherAppStateChangeTelemetryVersionNumber, "otherApp.unregisterInstall" /* ApiName.OtherAppStateChange_UnregisterInstall */), "otherApp.unregisterInstall" /* ApiName.OtherAppStateChange_UnregisterInstall */);
9986
9968
  handlers_removeHandler("otherApp.install" /* ApiName.OtherAppStateChange_Install */);
9987
9969
  }
9970
+ /**
9971
+ * @hidden
9972
+ * @beta
9973
+ * @internal
9974
+ * Limited to Microsoft-internal use
9975
+ *
9976
+ * This function should be called by the Store App to notify the host that the
9977
+ * app with the given appId has been installed.
9978
+ *
9979
+ * @throws Error if {@link app.initialize} has not successfully completed or if the platform
9980
+ * does not support the otherAppStateChange capability.
9981
+ */
9982
+ function notifyInstallCompleted(appId) {
9983
+ if (!otherAppStateChange_isSupported()) {
9984
+ throw new Error(ErrorCode.NOT_SUPPORTED_ON_PLATFORM.toString());
9985
+ }
9986
+ return callFunctionInHost("otherApp.notifyInstallCompleted" /* ApiName.OtherAppStateChange_NotifyInstallCompleted */, [appId.toString()], getApiVersionTag(otherAppStateChangeTelemetryVersionNumber, "otherApp.notifyInstallCompleted" /* ApiName.OtherAppStateChange_NotifyInstallCompleted */));
9987
+ }
9988
9988
  /**
9989
9989
  * Checks if the otherAppStateChange capability is supported by the host
9990
9990
  * @returns boolean to represent whether the otherAppStateChange capability is supported
@@ -11970,6 +11970,123 @@ function hostEntity_isSupported() {
11970
11970
  }
11971
11971
 
11972
11972
 
11973
+ ;// ./src/private/store.ts
11974
+ var store_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
11975
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11976
+ return new (P || (P = Promise))(function (resolve, reject) {
11977
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
11978
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11979
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
11980
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
11981
+ });
11982
+ };
11983
+
11984
+
11985
+
11986
+
11987
+
11988
+
11989
+ /**
11990
+ * @beta
11991
+ * @hidden
11992
+ * @module
11993
+ * Namespace to open app store
11994
+ * @internal
11995
+ * Limited to Microsoft-internal use
11996
+ */
11997
+ const StoreVersionTagNum = "v2" /* ApiVersionNumber.V_2 */;
11998
+ /**
11999
+ * @beta
12000
+ * @hidden
12001
+ * Enum of store dialog type
12002
+ * @internal
12003
+ * Limited to Microsoft-internal use
12004
+ */
12005
+ var StoreDialogType;
12006
+ (function (StoreDialogType) {
12007
+ /**
12008
+ * open a store without navigation
12009
+ */
12010
+ StoreDialogType["FullStore"] = "fullstore";
12011
+ /**
12012
+ * open a store with navigation to a specific collection
12013
+ */
12014
+ StoreDialogType["SpecificStore"] = "specificstore";
12015
+ /**
12016
+ * open in-context-store
12017
+ */
12018
+ StoreDialogType["InContextStore"] = "ics";
12019
+ /**
12020
+ * open detail dialog (DD)
12021
+ */
12022
+ StoreDialogType["AppDetail"] = "appdetail";
12023
+ })(StoreDialogType || (StoreDialogType = {}));
12024
+ /**
12025
+ * @beta
12026
+ * @hidden
12027
+ * error message when getting invalid store dialog type
12028
+ * @internal
12029
+ * Limited to Microsoft-internal use
12030
+ */
12031
+ const errorInvalidDialogType = 'Invalid store dialog type, but type needed to specify store to open';
12032
+ /**
12033
+ * @beta
12034
+ * @hidden
12035
+ * error message when getting wrong app id or missing app id
12036
+ * @internal
12037
+ * Limited to Microsoft-internal use
12038
+ */
12039
+ const errorMissingAppId = 'No App Id present, but AppId needed to open AppDetail store';
12040
+ /**
12041
+ * @beta
12042
+ * @hidden
12043
+ * error message when getting wrong collection id or missing collection id
12044
+ * @internal
12045
+ * Limited to Microsoft-internal use
12046
+ */
12047
+ const errorMissingCollectionId = 'No Collection Id present, but CollectionId needed to open a store specific to a collection';
12048
+ /**
12049
+ * @beta
12050
+ * @hidden
12051
+ * Api to open a store
12052
+ *
12053
+ * @param openStoreParams - params to call openStoreExperience
12054
+ *
12055
+ * @internal
12056
+ * Limited to Microsoft-internal use
12057
+ */
12058
+ function openStoreExperience(openStoreParams) {
12059
+ return store_awaiter(this, void 0, void 0, function* () {
12060
+ ensureInitialized(runtime, FrameContexts.content, FrameContexts.sidePanel, FrameContexts.meetingStage);
12061
+ if (!store_isSupported()) {
12062
+ throw errorNotSupportedOnPlatform;
12063
+ }
12064
+ if (openStoreParams === undefined || !Object.values(StoreDialogType).includes(openStoreParams.dialogType)) {
12065
+ throw new Error(errorInvalidDialogType);
12066
+ }
12067
+ if (openStoreParams.dialogType === StoreDialogType.AppDetail && !(openStoreParams.appId instanceof AppId)) {
12068
+ throw new Error(errorMissingAppId);
12069
+ }
12070
+ if (openStoreParams.dialogType === StoreDialogType.SpecificStore && !openStoreParams.collectionId) {
12071
+ throw new Error(errorMissingCollectionId);
12072
+ }
12073
+ return callFunctionInHost("store.open" /* ApiName.Store_Open */, [
12074
+ openStoreParams.dialogType,
12075
+ openStoreParams.appId,
12076
+ openStoreParams.collectionId,
12077
+ ], getApiVersionTag(StoreVersionTagNum, "store.open" /* ApiName.Store_Open */));
12078
+ });
12079
+ }
12080
+ /**
12081
+ * Checks if the store capability is supported by the host
12082
+ * @returns boolean to represent whether the store capability is supported
12083
+ *
12084
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
12085
+ */
12086
+ function store_isSupported() {
12087
+ return ensureInitialized(runtime) && !!runtime.supports.store;
12088
+ }
12089
+
11973
12090
  ;// ./src/private/index.ts
11974
12091
 
11975
12092
 
@@ -12006,6 +12123,8 @@ function hostEntity_isSupported() {
12006
12123
 
12007
12124
 
12008
12125
 
12126
+
12127
+
12009
12128
 
12010
12129
 
12011
12130
 
@@ -13145,6 +13264,8 @@ function clipboard_isSupported() {
13145
13264
  */
13146
13265
 
13147
13266
 
13267
+
13268
+
13148
13269
  /**
13149
13270
  * Checks if MSAL-NAA channel recommended by the host
13150
13271
  * @returns true if host is recommending NAA channel and false otherwise
@@ -13155,7 +13276,21 @@ function clipboard_isSupported() {
13155
13276
  */
13156
13277
  function isNAAChannelRecommended() {
13157
13278
  var _a;
13158
- return (_a = (ensureInitialized(runtime) && runtime.isNAAChannelRecommended)) !== null && _a !== void 0 ? _a : false;
13279
+ return ((_a = (ensureInitialized(runtime) &&
13280
+ (runtime.isNAAChannelRecommended || isNAAChannelRecommendedForLegacyTeamsMobile()))) !== null && _a !== void 0 ? _a : false);
13281
+ }
13282
+ function isNAAChannelRecommendedForLegacyTeamsMobile() {
13283
+ return ensureInitialized(runtime) &&
13284
+ isHostAndroidOrIOSOrIPadOS() &&
13285
+ runtime.isLegacyTeams &&
13286
+ runtime.supports.nestedAppAuth
13287
+ ? true
13288
+ : false;
13289
+ }
13290
+ function isHostAndroidOrIOSOrIPadOS() {
13291
+ return (GlobalVars.hostClientType === HostClientType.android ||
13292
+ GlobalVars.hostClientType === HostClientType.ios ||
13293
+ GlobalVars.hostClientType === HostClientType.ipados);
13159
13294
  }
13160
13295
 
13161
13296
  ;// ./src/public/geoLocation/map.ts