@microsoft/sp-adaptive-card-extension-base 1.23.2 → 1.24.0-beta.2

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 (514) hide show
  1. package/dist/eeec822e-c28a-46b4-affc-7058e4c1aa80.manifest.json +137 -142
  2. package/dist/index-internal-beta.d.ts +2 -6
  3. package/dist/index-internal-public.d.ts +2 -6
  4. package/dist/index-internal.d.ts +193 -28
  5. package/dist/index.d.ts +2 -2
  6. package/dist/sp-adaptive-card-extension-base_default_be5d2a76104ab20a7df3.js +1 -0
  7. package/dist/sp-adaptive-card-extension-base_en-us_daf5e5154e82492eea26.js +1 -0
  8. package/dist/sp-adaptive-card-extension-base_qps-ploc_3f63afdd6f59d8592622.js +1 -0
  9. package/dist/sp-adaptive-card-extension-base_qps-ploca_0bc9525a6a1a759b7d4f.js +1 -0
  10. package/dist/tsdoc-metadata.json +1 -1
  11. package/lib-commonjs/AdaptiveCardExtensionContext.js +66 -99
  12. package/lib-commonjs/AdaptiveCardExtensionHost.js +52 -60
  13. package/lib-commonjs/AdaptiveCardExtensionLoader.js +90 -97
  14. package/lib-commonjs/BaseAdaptiveCardExtension.js +941 -1138
  15. package/lib-commonjs/ac-template/basicL1Template.js +19 -14
  16. package/lib-commonjs/ac-template/basicL1TemplateSelectAction.js +19 -14
  17. package/lib-commonjs/ac-template/common/Constants.js +13 -5
  18. package/lib-commonjs/ac-template/common/CustomElements.js +63 -51
  19. package/lib-commonjs/ac-template/imageL1Template.js +19 -14
  20. package/lib-commonjs/ac-template/imageL1TemplateSelectAction.js +19 -14
  21. package/lib-commonjs/ac-template/index.js +37 -15
  22. package/lib-commonjs/ac-template/primaryTextL1Template.js +22 -15
  23. package/lib-commonjs/ac-template/primaryTextL1TemplateSelectAction.js +22 -15
  24. package/lib-commonjs/ac-template/searchL1Template.js +21 -20
  25. package/lib-commonjs/ac-template/textInputL1Template.js +38 -39
  26. package/lib-commonjs/ac-template/util/actionButtonHelper.js +76 -78
  27. package/lib-commonjs/ac-template/util/getCardRenderParameters.js +109 -119
  28. package/lib-commonjs/actionShim/AdaptiveCardExtensionActionShim.js +86 -100
  29. package/lib-commonjs/actionShim/IActionShimProvider.js +5 -2
  30. package/lib-commonjs/actionShim/getOnBeforeActionArguments.js +30 -29
  31. package/lib-commonjs/caching/CacheManager.js +40 -35
  32. package/lib-commonjs/caching/IAdaptiveCardExtensionCacheObject.js +5 -2
  33. package/lib-commonjs/caching/ICacheSettings.js +5 -2
  34. package/lib-commonjs/caching/ICachedLoadParameters.js +11 -4
  35. package/lib-commonjs/caching/cache/ACEMySiteCacheManager.js +88 -90
  36. package/lib-commonjs/caching/cache/BaseAdaptiveCardExtensionCache.js +21 -24
  37. package/lib-commonjs/caching/cache/IAdaptiveCardExtensionCache.js +5 -2
  38. package/lib-commonjs/caching/cache/LocalStorageACECache.js +56 -64
  39. package/lib-commonjs/common/Flights.js +27 -16
  40. package/lib-commonjs/common/Killswitches.js +143 -150
  41. package/lib-commonjs/components/BarChartComponent.js +68 -72
  42. package/lib-commonjs/components/BaseComponent.js +15 -15
  43. package/lib-commonjs/components/CardBarComponent.js +15 -9
  44. package/lib-commonjs/components/CardButtonComponent.js +26 -23
  45. package/lib-commonjs/components/DataVisualizationComponent.js +30 -19
  46. package/lib-commonjs/components/ICardButtonBase.js +5 -2
  47. package/lib-commonjs/components/LineChartComponent.js +28 -22
  48. package/lib-commonjs/components/PieChartComponent.js +69 -44
  49. package/lib-commonjs/components/PoweredByComponent.js +15 -9
  50. package/lib-commonjs/components/PromptsSetComponent.js +15 -9
  51. package/lib-commonjs/components/SearchBoxComponent.js +15 -9
  52. package/lib-commonjs/components/SearchFooterComponent.js +15 -6
  53. package/lib-commonjs/components/TextComponent.js +15 -9
  54. package/lib-commonjs/components/TextInputComponent.js +15 -9
  55. package/lib-commonjs/index.js +201 -91
  56. package/lib-commonjs/interfaces/CardActionType.js +5 -2
  57. package/lib-commonjs/interfaces/IActionArguments.js +5 -2
  58. package/lib-commonjs/interfaces/IAdaptiveCardExtension.js +5 -2
  59. package/lib-commonjs/interfaces/IAdaptiveCardExtensionData.js +5 -2
  60. package/lib-commonjs/interfaces/IAdaptiveCardExtensionImage.js +12 -3
  61. package/lib-commonjs/interfaces/IAdaptiveCardExtensionLoadContext.js +5 -2
  62. package/lib-commonjs/interfaces/IAdaptiveCardExtensionPropertiesMetadata.js +5 -2
  63. package/lib-commonjs/interfaces/IAdaptiveCardRenderParameters.js +5 -2
  64. package/lib-commonjs/interfaces/IBaseCardParameters.js +10 -3
  65. package/lib-commonjs/interfaces/ICardButton.js +5 -2
  66. package/lib-commonjs/interfaces/ICardRenderParameters.js +5 -2
  67. package/lib-commonjs/interfaces/IFocusParameters.js +6 -4
  68. package/lib-commonjs/interfaces/IGetLocationActionTypes.js +5 -2
  69. package/lib-commonjs/interfaces/IHostContext.js +13 -3
  70. package/lib-commonjs/interfaces/ILocation.js +6 -4
  71. package/lib-commonjs/interfaces/INotificationTypes.js +5 -2
  72. package/lib-commonjs/interfaces/IOnBeforeActionArguments.js +5 -2
  73. package/lib-commonjs/interfaces/IQuickViewRenderParameters.js +5 -2
  74. package/lib-commonjs/interfaces/ISPFxAdaptiveCard.js +5 -2
  75. package/lib-commonjs/interfaces/ISelectMediaActionTypes.js +13 -10
  76. package/lib-commonjs/interfaces/ISelectionActionTemplateAdaptiveCard.js +5 -2
  77. package/lib-commonjs/interfaces/IShowLocationActionTypes.js +5 -2
  78. package/lib-commonjs/interfaces/InternalTypes.js +9 -3
  79. package/lib-commonjs/isolation/IsolatedAdaptiveCardExtensionService.js +396 -399
  80. package/lib-commonjs/isolation/RenderArgumentsUtils.js +99 -86
  81. package/lib-commonjs/isolation/interfaces/IBot.js +6 -4
  82. package/lib-commonjs/isolation/interfaces/IIsolatedAction.js +5 -2
  83. package/lib-commonjs/isolation/interfaces/IIsolatedListener.js +5 -2
  84. package/lib-commonjs/isolation/interfaces/IIsolatedServiceCallbackParameters.js +5 -2
  85. package/lib-commonjs/isolation/interfaces/ILoadIsolatedAdaptiveCardExtensionParameters.js +5 -2
  86. package/lib-commonjs/isolation/interfaces/IRenderIsolatedQuickViewParameters.js +13 -3
  87. package/lib-commonjs/isolation/interfaces/IsolatedAdaptiveCardExtensionApplicationMessageEvent.js +5 -2
  88. package/lib-commonjs/isolation/interfaces/IsolatedServiceMessageEvent.js +5 -2
  89. package/lib-commonjs/test-api/AdaptiveCardExtensionTestWrapper.js +95 -123
  90. package/lib-commonjs/test-api/MockAdaptiveCardExtensionManifestInstance.js +22 -11
  91. package/lib-commonjs/test-api/index.js +12 -5
  92. package/lib-commonjs/utilities/StringHelper.js +13 -10
  93. package/lib-commonjs/views/base/BaseView.js +46 -76
  94. package/lib-commonjs/views/card/BaseBasicCardView.js +37 -52
  95. package/lib-commonjs/views/card/BaseCardView.js +56 -81
  96. package/lib-commonjs/views/card/BaseComponentsCardView.js +41 -39
  97. package/lib-commonjs/views/card/BaseImageCardView.js +38 -54
  98. package/lib-commonjs/views/card/BasePrimaryTextCardView.js +37 -54
  99. package/lib-commonjs/views/card/BaseTemplateCardView.js +47 -67
  100. package/lib-commonjs/views/card/DefaultCardView.js +24 -29
  101. package/lib-commonjs/views/card/parameters/BaseParameters.js +5 -2
  102. package/lib-commonjs/views/card/parameters/CardViewParametersProcessors.js +26 -31
  103. package/lib-commonjs/views/card/parameters/DataVisualizationParameters.js +75 -76
  104. package/lib-commonjs/views/card/parameters/FocusedParameters.js +53 -35
  105. package/lib-commonjs/views/card/parameters/GenericTemplates.js +87 -70
  106. package/lib-commonjs/views/interfaces/IAdaptiveCardExtensionActionView.js +5 -2
  107. package/lib-commonjs/views/interfaces/IAdaptiveCardExtensionDataView.js +5 -2
  108. package/lib-commonjs/views/interfaces/INavigationBarProperties.js +5 -2
  109. package/lib-commonjs/views/interfaces/IViewNavigator.js +5 -2
  110. package/lib-commonjs/views/navigator/QuickViewNavigator.js +22 -28
  111. package/lib-commonjs/views/navigator/ViewNavigator.js +138 -193
  112. package/lib-commonjs/views/navigator/ViewRegistry.js +25 -26
  113. package/lib-commonjs/views/quickView/BaseAdaptiveCardQuickView.js +64 -88
  114. package/lib-commonjs/views/quickView/BaseQuickView.js +32 -46
  115. package/lib-commonjs/views/quickView/BaseWebQuickView.js +47 -59
  116. package/{lib → lib-dts}/AdaptiveCardExtensionContext.d.ts +1 -5
  117. package/{lib → lib-dts}/BaseAdaptiveCardExtension.d.ts +2 -1
  118. package/lib-esm/AdaptiveCardExtensionContext.js +67 -0
  119. package/lib-esm/AdaptiveCardExtensionHost.js +65 -0
  120. package/{lib → lib-esm}/AdaptiveCardExtensionLoader.js +56 -74
  121. package/lib-esm/BaseAdaptiveCardExtension.js +1237 -0
  122. package/{lib → lib-esm}/ac-template/basicL1Template.js +6 -4
  123. package/{lib → lib-esm}/ac-template/basicL1TemplateSelectAction.js +6 -4
  124. package/{lib → lib-esm}/ac-template/common/Constants.js +3 -2
  125. package/{lib → lib-esm}/ac-template/common/CustomElements.js +26 -30
  126. package/{lib → lib-esm}/ac-template/imageL1Template.js +6 -4
  127. package/{lib → lib-esm}/ac-template/imageL1TemplateSelectAction.js +6 -4
  128. package/{lib → lib-esm}/ac-template/index.js +2 -1
  129. package/{lib → lib-esm}/ac-template/primaryTextL1Template.js +10 -5
  130. package/{lib → lib-esm}/ac-template/primaryTextL1TemplateSelectAction.js +10 -5
  131. package/{lib → lib-esm}/ac-template/searchL1Template.js +7 -7
  132. package/{lib → lib-esm}/ac-template/textInputL1Template.js +10 -13
  133. package/{lib → lib-esm}/ac-template/util/actionButtonHelper.js +45 -57
  134. package/{lib → lib-esm}/ac-template/util/getCardRenderParameters.js +75 -92
  135. package/{lib → lib-esm}/actionShim/AdaptiveCardExtensionActionShim.js +74 -87
  136. package/lib-esm/actionShim/IActionShimProvider.js +7 -0
  137. package/{lib → lib-esm}/actionShim/getOnBeforeActionArguments.js +22 -25
  138. package/lib-esm/caching/CacheManager.js +55 -0
  139. package/lib-esm/caching/IAdaptiveCardExtensionCacheObject.js +7 -0
  140. package/lib-esm/caching/ICacheSettings.js +5 -0
  141. package/{lib → lib-esm}/caching/ICachedLoadParameters.js +2 -1
  142. package/lib-esm/caching/cache/ACEMySiteCacheManager.js +130 -0
  143. package/{lib → lib-esm}/caching/cache/BaseAdaptiveCardExtensionCache.js +10 -16
  144. package/lib-esm/caching/cache/IAdaptiveCardExtensionCache.js +7 -0
  145. package/lib-esm/caching/cache/LocalStorageACECache.js +73 -0
  146. package/{lib → lib-esm}/common/Flights.js +6 -8
  147. package/{lib → lib-esm}/common/Killswitches.js +37 -105
  148. package/lib-esm/components/BarChartComponent.js +112 -0
  149. package/{lib → lib-esm}/components/BaseComponent.js +8 -4
  150. package/lib-esm/components/CardBarComponent.js +10 -0
  151. package/{lib → lib-esm}/components/CardButtonComponent.js +9 -9
  152. package/lib-esm/components/DataVisualizationComponent.js +26 -0
  153. package/lib-esm/components/ICardButtonBase.js +7 -0
  154. package/lib-esm/components/LineChartComponent.js +29 -0
  155. package/lib-esm/components/PieChartComponent.js +115 -0
  156. package/lib-esm/components/PoweredByComponent.js +10 -0
  157. package/lib-esm/components/PromptsSetComponent.js +10 -0
  158. package/lib-esm/components/SearchBoxComponent.js +10 -0
  159. package/lib-esm/components/SearchFooterComponent.js +8 -0
  160. package/lib-esm/components/TextComponent.js +10 -0
  161. package/lib-esm/components/TextInputComponent.js +10 -0
  162. package/{lib → lib-esm}/index.js +3 -3
  163. package/lib-esm/interfaces/CardActionType.js +5 -0
  164. package/lib-esm/interfaces/IActionArguments.js +7 -0
  165. package/lib-esm/interfaces/IAdaptiveCardExtension.js +7 -0
  166. package/lib-esm/interfaces/IAdaptiveCardExtensionData.js +5 -0
  167. package/lib-esm/interfaces/IAdaptiveCardExtensionImage.js +15 -0
  168. package/lib-esm/interfaces/IAdaptiveCardExtensionLoadContext.js +5 -0
  169. package/lib-esm/interfaces/IAdaptiveCardExtensionPropertiesMetadata.js +7 -0
  170. package/lib-esm/interfaces/IAdaptiveCardRenderParameters.js +5 -0
  171. package/lib-esm/interfaces/IBaseCardParameters.js +11 -0
  172. package/lib-esm/interfaces/ICardButton.js +6 -0
  173. package/lib-esm/interfaces/ICardRenderParameters.js +6 -0
  174. package/{lib → lib-esm}/interfaces/IFocusParameters.js +3 -3
  175. package/lib-esm/interfaces/IGetLocationActionTypes.js +7 -0
  176. package/lib-esm/interfaces/IHostContext.js +15 -0
  177. package/lib-esm/interfaces/ILocation.js +6 -0
  178. package/lib-esm/interfaces/INotificationTypes.js +9 -0
  179. package/lib-esm/interfaces/IOnBeforeActionArguments.js +7 -0
  180. package/lib-esm/interfaces/IQuickViewRenderParameters.js +5 -0
  181. package/lib-esm/interfaces/ISPFxAdaptiveCard.js +7 -0
  182. package/{lib → lib-esm}/interfaces/ISelectMediaActionTypes.js +3 -7
  183. package/lib-esm/interfaces/ISelectionActionTemplateAdaptiveCard.js +5 -0
  184. package/lib-esm/interfaces/IShowLocationActionTypes.js +9 -0
  185. package/lib-esm/interfaces/InternalTypes.js +6 -0
  186. package/lib-esm/isolation/IsolatedAdaptiveCardExtensionService.js +505 -0
  187. package/{lib → lib-esm}/isolation/RenderArgumentsUtils.js +79 -71
  188. package/{lib → lib-esm}/isolation/interfaces/IBot.js +3 -3
  189. package/lib-esm/isolation/interfaces/IIsolatedAction.js +5 -0
  190. package/lib-esm/isolation/interfaces/IIsolatedListener.js +7 -0
  191. package/lib-esm/isolation/interfaces/IIsolatedServiceCallbackParameters.js +5 -0
  192. package/lib-esm/isolation/interfaces/ILoadIsolatedAdaptiveCardExtensionParameters.js +7 -0
  193. package/lib-esm/isolation/interfaces/IRenderIsolatedQuickViewParameters.js +10 -0
  194. package/lib-esm/isolation/interfaces/IsolatedAdaptiveCardExtensionApplicationMessageEvent.js +5 -0
  195. package/lib-esm/isolation/interfaces/IsolatedServiceMessageEvent.js +5 -0
  196. package/lib-esm/test-api/AdaptiveCardExtensionTestWrapper.js +125 -0
  197. package/{lib → lib-esm}/test-api/MockAdaptiveCardExtensionManifestInstance.js +12 -8
  198. package/{lib → lib-esm}/test-api/index.js +2 -1
  199. package/lib-esm/utilities/StringHelper.js +8 -0
  200. package/lib-esm/views/base/BaseView.js +47 -0
  201. package/lib-esm/views/card/BaseBasicCardView.js +51 -0
  202. package/lib-esm/views/card/BaseCardView.js +59 -0
  203. package/lib-esm/views/card/BaseComponentsCardView.js +43 -0
  204. package/{lib → lib-esm}/views/card/BaseImageCardView.js +24 -36
  205. package/{lib → lib-esm}/views/card/BasePrimaryTextCardView.js +23 -35
  206. package/lib-esm/views/card/BaseTemplateCardView.js +65 -0
  207. package/lib-esm/views/card/DefaultCardView.js +19 -0
  208. package/lib-esm/views/card/parameters/BaseParameters.js +7 -0
  209. package/lib-esm/views/card/parameters/CardViewParametersProcessors.js +30 -0
  210. package/{lib → lib-esm}/views/card/parameters/DataVisualizationParameters.js +41 -35
  211. package/lib-esm/views/card/parameters/FocusedParameters.js +58 -0
  212. package/{lib → lib-esm}/views/card/parameters/GenericTemplates.js +59 -34
  213. package/lib-esm/views/interfaces/IAdaptiveCardExtensionActionView.js +7 -0
  214. package/lib-esm/views/interfaces/IAdaptiveCardExtensionDataView.js +7 -0
  215. package/lib-esm/views/interfaces/INavigationBarProperties.js +5 -0
  216. package/lib-esm/views/interfaces/IViewNavigator.js +5 -0
  217. package/lib-esm/views/navigator/QuickViewNavigator.js +22 -0
  218. package/lib-esm/views/navigator/ViewNavigator.js +174 -0
  219. package/lib-esm/views/navigator/ViewRegistry.js +26 -0
  220. package/lib-esm/views/quickView/BaseAdaptiveCardQuickView.js +65 -0
  221. package/lib-esm/views/quickView/BaseQuickView.js +28 -0
  222. package/lib-esm/views/quickView/BaseWebQuickView.js +49 -0
  223. package/package.json +53 -18
  224. package/dist/index.js +0 -8
  225. package/dist/sp-adaptive-card-extension-base_default_80cb284b0ce5185f01a3.js +0 -1
  226. package/dist/sp-adaptive-card-extension-base_en-us_f42ce38c47d8423e6856.js +0 -1
  227. package/dist/sp-adaptive-card-extension-base_qps-ploc_256d38b669b67722cc35.js +0 -1
  228. package/dist/sp-adaptive-card-extension-base_qps-ploca_d709c1c8a8609f16e251.js +0 -1
  229. package/dist/test-api/AdaptiveCardExtensionTestWrapper.js +0 -155
  230. package/dist/test-api/MockAdaptiveCardExtensionManifestInstance.js +0 -23
  231. package/dist/test-api/index.js +0 -6
  232. package/lib/AdaptiveCardExtensionContext.d.ts.map +0 -1
  233. package/lib/AdaptiveCardExtensionContext.js +0 -103
  234. package/lib/AdaptiveCardExtensionHost.d.ts.map +0 -1
  235. package/lib/AdaptiveCardExtensionHost.js +0 -76
  236. package/lib/AdaptiveCardExtensionLoader.d.ts.map +0 -1
  237. package/lib/BaseAdaptiveCardExtension.d.ts.map +0 -1
  238. package/lib/BaseAdaptiveCardExtension.js +0 -1433
  239. package/lib/ac-template/basicL1Template.d.ts.map +0 -1
  240. package/lib/ac-template/basicL1TemplateSelectAction.d.ts.map +0 -1
  241. package/lib/ac-template/common/Constants.d.ts.map +0 -1
  242. package/lib/ac-template/common/CustomElements.d.ts.map +0 -1
  243. package/lib/ac-template/imageL1Template.d.ts.map +0 -1
  244. package/lib/ac-template/imageL1TemplateSelectAction.d.ts.map +0 -1
  245. package/lib/ac-template/index.d.ts.map +0 -1
  246. package/lib/ac-template/primaryTextL1Template.d.ts.map +0 -1
  247. package/lib/ac-template/primaryTextL1TemplateSelectAction.d.ts.map +0 -1
  248. package/lib/ac-template/searchL1Template.d.ts.map +0 -1
  249. package/lib/ac-template/textInputL1Template.d.ts.map +0 -1
  250. package/lib/ac-template/util/actionButtonHelper.d.ts.map +0 -1
  251. package/lib/ac-template/util/getCardRenderParameters.d.ts.map +0 -1
  252. package/lib/actionShim/AdaptiveCardExtensionActionShim.d.ts.map +0 -1
  253. package/lib/actionShim/IActionShimProvider.d.ts.map +0 -1
  254. package/lib/actionShim/IActionShimProvider.js +0 -2
  255. package/lib/actionShim/getOnBeforeActionArguments.d.ts.map +0 -1
  256. package/lib/caching/CacheManager.d.ts.map +0 -1
  257. package/lib/caching/CacheManager.js +0 -57
  258. package/lib/caching/IAdaptiveCardExtensionCacheObject.d.ts.map +0 -1
  259. package/lib/caching/IAdaptiveCardExtensionCacheObject.js +0 -2
  260. package/lib/caching/ICacheSettings.d.ts.map +0 -1
  261. package/lib/caching/ICacheSettings.js +0 -2
  262. package/lib/caching/ICachedLoadParameters.d.ts.map +0 -1
  263. package/lib/caching/cache/ACEMySiteCacheManager.d.ts.map +0 -1
  264. package/lib/caching/cache/ACEMySiteCacheManager.js +0 -135
  265. package/lib/caching/cache/BaseAdaptiveCardExtensionCache.d.ts.map +0 -1
  266. package/lib/caching/cache/IAdaptiveCardExtensionCache.d.ts.map +0 -1
  267. package/lib/caching/cache/IAdaptiveCardExtensionCache.js +0 -2
  268. package/lib/caching/cache/LocalStorageACECache.d.ts.map +0 -1
  269. package/lib/caching/cache/LocalStorageACECache.js +0 -84
  270. package/lib/common/Flights.d.ts.map +0 -1
  271. package/lib/common/Killswitches.d.ts.map +0 -1
  272. package/lib/components/BarChartComponent.d.ts.map +0 -1
  273. package/lib/components/BarChartComponent.js +0 -125
  274. package/lib/components/BaseComponent.d.ts.map +0 -1
  275. package/lib/components/CardBarComponent.d.ts.map +0 -1
  276. package/lib/components/CardBarComponent.js +0 -8
  277. package/lib/components/CardButtonComponent.d.ts.map +0 -1
  278. package/lib/components/DataVisualizationComponent.d.ts.map +0 -1
  279. package/lib/components/DataVisualizationComponent.js +0 -24
  280. package/lib/components/ICardButtonBase.d.ts.map +0 -1
  281. package/lib/components/ICardButtonBase.js +0 -2
  282. package/lib/components/LineChartComponent.d.ts.map +0 -1
  283. package/lib/components/LineChartComponent.js +0 -32
  284. package/lib/components/PieChartComponent.d.ts.map +0 -1
  285. package/lib/components/PieChartComponent.js +0 -99
  286. package/lib/components/PoweredByComponent.d.ts.map +0 -1
  287. package/lib/components/PoweredByComponent.js +0 -8
  288. package/lib/components/PromptsSetComponent.d.ts.map +0 -1
  289. package/lib/components/PromptsSetComponent.js +0 -8
  290. package/lib/components/SearchBoxComponent.d.ts.map +0 -1
  291. package/lib/components/SearchBoxComponent.js +0 -8
  292. package/lib/components/SearchFooterComponent.d.ts.map +0 -1
  293. package/lib/components/SearchFooterComponent.js +0 -5
  294. package/lib/components/TextComponent.d.ts.map +0 -1
  295. package/lib/components/TextComponent.js +0 -8
  296. package/lib/components/TextInputComponent.d.ts.map +0 -1
  297. package/lib/components/TextInputComponent.js +0 -8
  298. package/lib/index.d.ts.map +0 -1
  299. package/lib/interfaces/CardActionType.d.ts.map +0 -1
  300. package/lib/interfaces/CardActionType.js +0 -2
  301. package/lib/interfaces/IActionArguments.d.ts.map +0 -1
  302. package/lib/interfaces/IActionArguments.js +0 -2
  303. package/lib/interfaces/IAdaptiveCardExtension.d.ts.map +0 -1
  304. package/lib/interfaces/IAdaptiveCardExtension.js +0 -2
  305. package/lib/interfaces/IAdaptiveCardExtensionData.d.ts.map +0 -1
  306. package/lib/interfaces/IAdaptiveCardExtensionData.js +0 -2
  307. package/lib/interfaces/IAdaptiveCardExtensionImage.d.ts.map +0 -1
  308. package/lib/interfaces/IAdaptiveCardExtensionImage.js +0 -2
  309. package/lib/interfaces/IAdaptiveCardExtensionLoadContext.d.ts.map +0 -1
  310. package/lib/interfaces/IAdaptiveCardExtensionLoadContext.js +0 -2
  311. package/lib/interfaces/IAdaptiveCardExtensionPropertiesMetadata.d.ts.map +0 -1
  312. package/lib/interfaces/IAdaptiveCardExtensionPropertiesMetadata.js +0 -2
  313. package/lib/interfaces/IAdaptiveCardRenderParameters.d.ts.map +0 -1
  314. package/lib/interfaces/IAdaptiveCardRenderParameters.js +0 -2
  315. package/lib/interfaces/IBaseCardParameters.d.ts.map +0 -1
  316. package/lib/interfaces/IBaseCardParameters.js +0 -2
  317. package/lib/interfaces/ICardButton.d.ts.map +0 -1
  318. package/lib/interfaces/ICardButton.js +0 -2
  319. package/lib/interfaces/ICardRenderParameters.d.ts.map +0 -1
  320. package/lib/interfaces/ICardRenderParameters.js +0 -2
  321. package/lib/interfaces/IFocusParameters.d.ts.map +0 -1
  322. package/lib/interfaces/IGetLocationActionTypes.d.ts.map +0 -1
  323. package/lib/interfaces/IGetLocationActionTypes.js +0 -2
  324. package/lib/interfaces/IHostContext.d.ts.map +0 -1
  325. package/lib/interfaces/IHostContext.js +0 -2
  326. package/lib/interfaces/ILocation.d.ts.map +0 -1
  327. package/lib/interfaces/ILocation.js +0 -6
  328. package/lib/interfaces/INotificationTypes.d.ts.map +0 -1
  329. package/lib/interfaces/INotificationTypes.js +0 -2
  330. package/lib/interfaces/IOnBeforeActionArguments.d.ts.map +0 -1
  331. package/lib/interfaces/IOnBeforeActionArguments.js +0 -2
  332. package/lib/interfaces/IQuickViewRenderParameters.d.ts.map +0 -1
  333. package/lib/interfaces/IQuickViewRenderParameters.js +0 -2
  334. package/lib/interfaces/ISPFxAdaptiveCard.d.ts.map +0 -1
  335. package/lib/interfaces/ISPFxAdaptiveCard.js +0 -2
  336. package/lib/interfaces/ISelectMediaActionTypes.d.ts.map +0 -1
  337. package/lib/interfaces/ISelectionActionTemplateAdaptiveCard.d.ts.map +0 -1
  338. package/lib/interfaces/ISelectionActionTemplateAdaptiveCard.js +0 -2
  339. package/lib/interfaces/IShowLocationActionTypes.d.ts.map +0 -1
  340. package/lib/interfaces/IShowLocationActionTypes.js +0 -2
  341. package/lib/interfaces/InternalTypes.d.ts.map +0 -1
  342. package/lib/interfaces/InternalTypes.js +0 -2
  343. package/lib/isolation/IsolatedAdaptiveCardExtensionService.d.ts.map +0 -1
  344. package/lib/isolation/IsolatedAdaptiveCardExtensionService.js +0 -513
  345. package/lib/isolation/RenderArgumentsUtils.d.ts.map +0 -1
  346. package/lib/isolation/interfaces/IBot.d.ts.map +0 -1
  347. package/lib/isolation/interfaces/IIsolatedAction.d.ts.map +0 -1
  348. package/lib/isolation/interfaces/IIsolatedAction.js +0 -2
  349. package/lib/isolation/interfaces/IIsolatedListener.d.ts.map +0 -1
  350. package/lib/isolation/interfaces/IIsolatedListener.js +0 -2
  351. package/lib/isolation/interfaces/IIsolatedServiceCallbackParameters.d.ts.map +0 -1
  352. package/lib/isolation/interfaces/IIsolatedServiceCallbackParameters.js +0 -2
  353. package/lib/isolation/interfaces/ILoadIsolatedAdaptiveCardExtensionParameters.d.ts.map +0 -1
  354. package/lib/isolation/interfaces/ILoadIsolatedAdaptiveCardExtensionParameters.js +0 -2
  355. package/lib/isolation/interfaces/IRenderIsolatedQuickViewParameters.d.ts.map +0 -1
  356. package/lib/isolation/interfaces/IRenderIsolatedQuickViewParameters.js +0 -2
  357. package/lib/isolation/interfaces/IsolatedAdaptiveCardExtensionApplicationMessageEvent.d.ts.map +0 -1
  358. package/lib/isolation/interfaces/IsolatedAdaptiveCardExtensionApplicationMessageEvent.js +0 -2
  359. package/lib/isolation/interfaces/IsolatedServiceMessageEvent.d.ts.map +0 -1
  360. package/lib/isolation/interfaces/IsolatedServiceMessageEvent.js +0 -2
  361. package/lib/test-api/AdaptiveCardExtensionTestWrapper.d.ts.map +0 -1
  362. package/lib/test-api/AdaptiveCardExtensionTestWrapper.js +0 -152
  363. package/lib/test-api/MockAdaptiveCardExtensionManifestInstance.d.ts.map +0 -1
  364. package/lib/test-api/index.d.ts.map +0 -1
  365. package/lib/utilities/StringHelper.d.ts.map +0 -1
  366. package/lib/utilities/StringHelper.js +0 -11
  367. package/lib/views/base/BaseView.d.ts.map +0 -1
  368. package/lib/views/base/BaseView.js +0 -77
  369. package/lib/views/card/BaseBasicCardView.d.ts.map +0 -1
  370. package/lib/views/card/BaseBasicCardView.js +0 -63
  371. package/lib/views/card/BaseCardView.d.ts.map +0 -1
  372. package/lib/views/card/BaseCardView.js +0 -84
  373. package/lib/views/card/BaseComponentsCardView.d.ts.map +0 -1
  374. package/lib/views/card/BaseComponentsCardView.js +0 -44
  375. package/lib/views/card/BaseImageCardView.d.ts.map +0 -1
  376. package/lib/views/card/BasePrimaryTextCardView.d.ts.map +0 -1
  377. package/lib/views/card/BaseTemplateCardView.d.ts.map +0 -1
  378. package/lib/views/card/BaseTemplateCardView.js +0 -85
  379. package/lib/views/card/DefaultCardView.d.ts.map +0 -1
  380. package/lib/views/card/DefaultCardView.js +0 -29
  381. package/lib/views/card/parameters/BaseParameters.d.ts.map +0 -1
  382. package/lib/views/card/parameters/BaseParameters.js +0 -2
  383. package/lib/views/card/parameters/CardViewParametersProcessors.d.ts.map +0 -1
  384. package/lib/views/card/parameters/CardViewParametersProcessors.js +0 -37
  385. package/lib/views/card/parameters/DataVisualizationParameters.d.ts.map +0 -1
  386. package/lib/views/card/parameters/FocusedParameters.d.ts.map +0 -1
  387. package/lib/views/card/parameters/FocusedParameters.js +0 -43
  388. package/lib/views/card/parameters/GenericTemplates.d.ts.map +0 -1
  389. package/lib/views/interfaces/IAdaptiveCardExtensionActionView.d.ts.map +0 -1
  390. package/lib/views/interfaces/IAdaptiveCardExtensionActionView.js +0 -2
  391. package/lib/views/interfaces/IAdaptiveCardExtensionDataView.d.ts.map +0 -1
  392. package/lib/views/interfaces/IAdaptiveCardExtensionDataView.js +0 -2
  393. package/lib/views/interfaces/INavigationBarProperties.d.ts.map +0 -1
  394. package/lib/views/interfaces/INavigationBarProperties.js +0 -2
  395. package/lib/views/interfaces/IViewNavigator.d.ts.map +0 -1
  396. package/lib/views/interfaces/IViewNavigator.js +0 -2
  397. package/lib/views/navigator/QuickViewNavigator.d.ts.map +0 -1
  398. package/lib/views/navigator/QuickViewNavigator.js +0 -29
  399. package/lib/views/navigator/ViewNavigator.d.ts.map +0 -1
  400. package/lib/views/navigator/ViewNavigator.js +0 -233
  401. package/lib/views/navigator/ViewRegistry.d.ts.map +0 -1
  402. package/lib/views/navigator/ViewRegistry.js +0 -32
  403. package/lib/views/quickView/BaseAdaptiveCardQuickView.d.ts.map +0 -1
  404. package/lib/views/quickView/BaseAdaptiveCardQuickView.js +0 -90
  405. package/lib/views/quickView/BaseQuickView.d.ts.map +0 -1
  406. package/lib/views/quickView/BaseQuickView.js +0 -45
  407. package/lib/views/quickView/BaseWebQuickView.d.ts.map +0 -1
  408. package/lib/views/quickView/BaseWebQuickView.js +0 -64
  409. /package/{lib → lib-dts}/AdaptiveCardExtensionHost.d.ts +0 -0
  410. /package/{lib → lib-dts}/AdaptiveCardExtensionLoader.d.ts +0 -0
  411. /package/{lib → lib-dts}/ac-template/basicL1Template.d.ts +0 -0
  412. /package/{lib → lib-dts}/ac-template/basicL1TemplateSelectAction.d.ts +0 -0
  413. /package/{lib → lib-dts}/ac-template/common/Constants.d.ts +0 -0
  414. /package/{lib → lib-dts}/ac-template/common/CustomElements.d.ts +0 -0
  415. /package/{lib → lib-dts}/ac-template/imageL1Template.d.ts +0 -0
  416. /package/{lib → lib-dts}/ac-template/imageL1TemplateSelectAction.d.ts +0 -0
  417. /package/{lib → lib-dts}/ac-template/index.d.ts +0 -0
  418. /package/{lib → lib-dts}/ac-template/primaryTextL1Template.d.ts +0 -0
  419. /package/{lib → lib-dts}/ac-template/primaryTextL1TemplateSelectAction.d.ts +0 -0
  420. /package/{lib → lib-dts}/ac-template/searchL1Template.d.ts +0 -0
  421. /package/{lib → lib-dts}/ac-template/textInputL1Template.d.ts +0 -0
  422. /package/{lib → lib-dts}/ac-template/util/actionButtonHelper.d.ts +0 -0
  423. /package/{lib → lib-dts}/ac-template/util/getCardRenderParameters.d.ts +0 -0
  424. /package/{lib → lib-dts}/actionShim/AdaptiveCardExtensionActionShim.d.ts +0 -0
  425. /package/{lib → lib-dts}/actionShim/IActionShimProvider.d.ts +0 -0
  426. /package/{lib → lib-dts}/actionShim/getOnBeforeActionArguments.d.ts +0 -0
  427. /package/{lib → lib-dts}/caching/CacheManager.d.ts +0 -0
  428. /package/{lib → lib-dts}/caching/IAdaptiveCardExtensionCacheObject.d.ts +0 -0
  429. /package/{lib → lib-dts}/caching/ICacheSettings.d.ts +0 -0
  430. /package/{lib → lib-dts}/caching/ICachedLoadParameters.d.ts +0 -0
  431. /package/{lib → lib-dts}/caching/cache/ACEMySiteCacheManager.d.ts +0 -0
  432. /package/{lib → lib-dts}/caching/cache/BaseAdaptiveCardExtensionCache.d.ts +0 -0
  433. /package/{lib → lib-dts}/caching/cache/IAdaptiveCardExtensionCache.d.ts +0 -0
  434. /package/{lib → lib-dts}/caching/cache/LocalStorageACECache.d.ts +0 -0
  435. /package/{lib → lib-dts}/common/Flights.d.ts +0 -0
  436. /package/{lib → lib-dts}/common/Killswitches.d.ts +0 -0
  437. /package/{lib → lib-dts}/components/BarChartComponent.d.ts +0 -0
  438. /package/{lib → lib-dts}/components/BaseComponent.d.ts +0 -0
  439. /package/{lib → lib-dts}/components/CardBarComponent.d.ts +0 -0
  440. /package/{lib → lib-dts}/components/CardButtonComponent.d.ts +0 -0
  441. /package/{lib → lib-dts}/components/DataVisualizationComponent.d.ts +0 -0
  442. /package/{lib → lib-dts}/components/ICardButtonBase.d.ts +0 -0
  443. /package/{lib → lib-dts}/components/LineChartComponent.d.ts +0 -0
  444. /package/{lib → lib-dts}/components/PieChartComponent.d.ts +0 -0
  445. /package/{lib → lib-dts}/components/PoweredByComponent.d.ts +0 -0
  446. /package/{lib → lib-dts}/components/PromptsSetComponent.d.ts +0 -0
  447. /package/{lib → lib-dts}/components/SearchBoxComponent.d.ts +0 -0
  448. /package/{lib → lib-dts}/components/SearchFooterComponent.d.ts +0 -0
  449. /package/{lib → lib-dts}/components/TextComponent.d.ts +0 -0
  450. /package/{lib → lib-dts}/components/TextInputComponent.d.ts +0 -0
  451. /package/{lib → lib-dts}/index.d.ts +0 -0
  452. /package/{lib → lib-dts}/interfaces/CardActionType.d.ts +0 -0
  453. /package/{lib → lib-dts}/interfaces/IActionArguments.d.ts +0 -0
  454. /package/{lib → lib-dts}/interfaces/IAdaptiveCardExtension.d.ts +0 -0
  455. /package/{lib → lib-dts}/interfaces/IAdaptiveCardExtensionData.d.ts +0 -0
  456. /package/{lib → lib-dts}/interfaces/IAdaptiveCardExtensionImage.d.ts +0 -0
  457. /package/{lib → lib-dts}/interfaces/IAdaptiveCardExtensionLoadContext.d.ts +0 -0
  458. /package/{lib → lib-dts}/interfaces/IAdaptiveCardExtensionPropertiesMetadata.d.ts +0 -0
  459. /package/{lib → lib-dts}/interfaces/IAdaptiveCardRenderParameters.d.ts +0 -0
  460. /package/{lib → lib-dts}/interfaces/IBaseCardParameters.d.ts +0 -0
  461. /package/{lib → lib-dts}/interfaces/ICardButton.d.ts +0 -0
  462. /package/{lib → lib-dts}/interfaces/ICardRenderParameters.d.ts +0 -0
  463. /package/{lib → lib-dts}/interfaces/IFocusParameters.d.ts +0 -0
  464. /package/{lib → lib-dts}/interfaces/IGetLocationActionTypes.d.ts +0 -0
  465. /package/{lib → lib-dts}/interfaces/IHostContext.d.ts +0 -0
  466. /package/{lib → lib-dts}/interfaces/ILocation.d.ts +0 -0
  467. /package/{lib → lib-dts}/interfaces/INotificationTypes.d.ts +0 -0
  468. /package/{lib → lib-dts}/interfaces/IOnBeforeActionArguments.d.ts +0 -0
  469. /package/{lib → lib-dts}/interfaces/IQuickViewRenderParameters.d.ts +0 -0
  470. /package/{lib → lib-dts}/interfaces/ISPFxAdaptiveCard.d.ts +0 -0
  471. /package/{lib → lib-dts}/interfaces/ISelectMediaActionTypes.d.ts +0 -0
  472. /package/{lib → lib-dts}/interfaces/ISelectionActionTemplateAdaptiveCard.d.ts +0 -0
  473. /package/{lib → lib-dts}/interfaces/IShowLocationActionTypes.d.ts +0 -0
  474. /package/{lib → lib-dts}/interfaces/InternalTypes.d.ts +0 -0
  475. /package/{lib → lib-dts}/isolation/IsolatedAdaptiveCardExtensionService.d.ts +0 -0
  476. /package/{lib → lib-dts}/isolation/RenderArgumentsUtils.d.ts +0 -0
  477. /package/{lib → lib-dts}/isolation/interfaces/IBot.d.ts +0 -0
  478. /package/{lib → lib-dts}/isolation/interfaces/IIsolatedAction.d.ts +0 -0
  479. /package/{lib → lib-dts}/isolation/interfaces/IIsolatedListener.d.ts +0 -0
  480. /package/{lib → lib-dts}/isolation/interfaces/IIsolatedServiceCallbackParameters.d.ts +0 -0
  481. /package/{lib → lib-dts}/isolation/interfaces/ILoadIsolatedAdaptiveCardExtensionParameters.d.ts +0 -0
  482. /package/{lib → lib-dts}/isolation/interfaces/IRenderIsolatedQuickViewParameters.d.ts +0 -0
  483. /package/{lib → lib-dts}/isolation/interfaces/IsolatedAdaptiveCardExtensionApplicationMessageEvent.d.ts +0 -0
  484. /package/{lib → lib-dts}/isolation/interfaces/IsolatedServiceMessageEvent.d.ts +0 -0
  485. /package/{lib → lib-dts}/loc/Strings.resx.d.ts +0 -0
  486. /package/{lib → lib-dts}/test-api/AdaptiveCardExtensionTestWrapper.d.ts +0 -0
  487. /package/{lib → lib-dts}/test-api/MockAdaptiveCardExtensionManifestInstance.d.ts +0 -0
  488. /package/{lib → lib-dts}/test-api/index.d.ts +0 -0
  489. /package/{lib → lib-dts}/utilities/StringHelper.d.ts +0 -0
  490. /package/{lib → lib-dts}/views/base/BaseView.d.ts +0 -0
  491. /package/{lib → lib-dts}/views/card/BaseBasicCardView.d.ts +0 -0
  492. /package/{lib → lib-dts}/views/card/BaseCardView.d.ts +0 -0
  493. /package/{lib → lib-dts}/views/card/BaseComponentsCardView.d.ts +0 -0
  494. /package/{lib → lib-dts}/views/card/BaseImageCardView.d.ts +0 -0
  495. /package/{lib → lib-dts}/views/card/BasePrimaryTextCardView.d.ts +0 -0
  496. /package/{lib → lib-dts}/views/card/BaseTemplateCardView.d.ts +0 -0
  497. /package/{lib → lib-dts}/views/card/DefaultCardView.d.ts +0 -0
  498. /package/{lib → lib-dts}/views/card/parameters/BaseParameters.d.ts +0 -0
  499. /package/{lib → lib-dts}/views/card/parameters/CardViewParametersProcessors.d.ts +0 -0
  500. /package/{lib → lib-dts}/views/card/parameters/DataVisualizationParameters.d.ts +0 -0
  501. /package/{lib → lib-dts}/views/card/parameters/FocusedParameters.d.ts +0 -0
  502. /package/{lib → lib-dts}/views/card/parameters/GenericTemplates.d.ts +0 -0
  503. /package/{lib → lib-dts}/views/interfaces/IAdaptiveCardExtensionActionView.d.ts +0 -0
  504. /package/{lib → lib-dts}/views/interfaces/IAdaptiveCardExtensionDataView.d.ts +0 -0
  505. /package/{lib → lib-dts}/views/interfaces/INavigationBarProperties.d.ts +0 -0
  506. /package/{lib → lib-dts}/views/interfaces/IViewNavigator.d.ts +0 -0
  507. /package/{lib → lib-dts}/views/navigator/QuickViewNavigator.d.ts +0 -0
  508. /package/{lib → lib-dts}/views/navigator/ViewNavigator.d.ts +0 -0
  509. /package/{lib → lib-dts}/views/navigator/ViewRegistry.d.ts +0 -0
  510. /package/{lib → lib-dts}/views/quickView/BaseAdaptiveCardQuickView.d.ts +0 -0
  511. /package/{lib → lib-dts}/views/quickView/BaseQuickView.d.ts +0 -0
  512. /package/{lib → lib-dts}/views/quickView/BaseWebQuickView.d.ts +0 -0
  513. /package/{lib → lib-esm}/loc/Strings.resx.json +0 -0
  514. /package/{lib → lib-esm}/sp-adaptive-card-base.manifest.json +0 -0
@@ -1,217 +1,39 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IsolatedAdaptiveCardExtensionService = void 0;
4
- var sp_component_base_1 = require("@microsoft/sp-component-base");
5
- var sp_core_library_1 = require("@microsoft/sp-core-library");
6
- var sp_diagnostics_1 = require("@microsoft/sp-diagnostics");
7
- var sp_http_base_1 = require("@microsoft/sp-http-base");
8
- var sp_page_context_1 = require("@microsoft/sp-page-context");
9
- var sp_telemetry_1 = require("@msinternal/sp-telemetry");
10
- var Flights_1 = require("../common/Flights");
11
- var Killswitches_1 = require("../common/Killswitches");
12
- var TIMEOUT_INTERVAL = 15000;
13
- var EMBEDDED_PAGE_CONTAINER = 'embedded-page-container';
14
- /**
15
- * @internal
16
- */
17
- var IsolatedAdaptiveCardExtensionService = /** @class */ (function () {
18
- function IsolatedAdaptiveCardExtensionService(serviceScope) {
19
- var _this = this;
20
- this._callbackCache = new Map();
21
- this._isolatedFrames = new Map();
22
- this._isolatedListeners = new Map();
23
- this._handleIframeTimeout = function (isolatedFrameKey, isVCD1P) {
24
- var frame = _this._isolatedFrames.get(isolatedFrameKey);
25
- var frameMonitor = frame.frameMonitor, retryMonitor = frame.retryMonitor, tokenMonitor = frame.tokenMonitor;
26
- /*
27
- * There is a rare case the iframe is running into a "reset connection" error. This is because the
28
- * client/server is unable to communicate for an unknown reason. When we run into this, we will attempt to refresh the iframe once.
29
- */
30
- if (frame.retryCount < 1) {
31
- frame.retryCount += 1;
32
- frame.retryMonitor = _this._createRetryMonitor();
33
- // Use a shorter interval for the retry, this would put the retry around ~P95
34
- frame.timeoutId = setTimeout(function () { return _this._handleIframeTimeout(isolatedFrameKey, isVCD1P); }, TIMEOUT_INTERVAL - 500);
35
- return;
36
- }
37
- else if (retryMonitor) {
38
- retryMonitor.writeUnexpectedFailure('reloadFailed');
39
- }
40
- /*
41
- * If this timeout has been executed then the isolated ACE application
42
- * did not send the `Ready` message to the host applicaton. By checking if
43
- * the `tokenMonitor` exists we can verify whether framedteamslogon even requested
44
- * a token. If it doesn't exist, then we assume we are stuck in the MSAL interactive flow.
45
- * This would be unexpected in Teams but is a known issue in browsers with ITP or 3P
46
- * cookies blocked.
47
- */
48
- if (frameMonitor && !frameMonitor.hasEnded) {
49
- try {
50
- if (tokenMonitor) {
51
- frameMonitor.writeUnexpectedFailure('tokenTimeout');
52
- if (!tokenMonitor.hasEnded) {
53
- tokenMonitor.writeUnexpectedFailure('timeout');
54
- }
55
- }
56
- else {
57
- if (isVCD1P) {
58
- // We should never hit this, but adding for completeness
59
- frameMonitor.writeUnexpectedFailure('authorizeTimeout');
60
- }
61
- else {
62
- frameMonitor.writeExpectedFailure('authorizeTimeout');
63
- }
64
- }
65
- }
66
- catch (e) {
67
- frameMonitor.writeUnexpectedFailure('unexpectedFailure', e);
68
- }
69
- }
70
- };
71
- /**
72
- * Message handler for isolated domain iframes.
73
- *
74
- * @param message - {@link _IsolatedAdaptiveCardExtensionApplicationMessageEvent}
75
- */
76
- this._handleIsolatedApplicationMessage = function (message) {
77
- var data = message.data;
78
- if (data.messageType === 'applicationMessage') {
79
- var instanceId = data.instanceId, kind = data.kind;
80
- switch (kind) {
81
- case 'Card':
82
- _this._invokeCallback(instanceId, {
83
- aceData: data.aceData,
84
- card: data.card,
85
- cacheObject: data.cacheObject,
86
- type: kind
87
- });
88
- break;
89
- case 'CloseQuickView':
90
- var qvFrame = _this._isolatedFrames.get(new URL(message.origin).hostname);
91
- if (qvFrame) {
92
- qvFrame.iframe.hidden = true;
93
- }
94
- break;
95
- case 'Error':
96
- _this._invokeCallback(instanceId, { error: data.error, type: kind });
97
- break;
98
- case 'OpenQuickView':
99
- var frame = _this._isolatedFrames.get(new URL(message.origin).hostname);
100
- if (frame) {
101
- frame.iframe.hidden = false;
102
- }
103
- break;
104
- case 'OpenUrl':
105
- _this._invokeCallback(instanceId, { type: kind, url: data.url });
106
- break;
107
- case 'LocationRequest':
108
- _this._invokeCallback(instanceId, { type: kind });
109
- break;
110
- case 'RenderCompleted':
111
- _this._invokeCallback(instanceId, { type: kind, didUpdate: data.didUpdate });
112
- break;
113
- case 'Ready':
114
- /*
115
- * Once we get this message from the isolated ACE application, we know it has been loaded
116
- * and we can start sending messages to the isolated frame.
117
- */
118
- var isolatedFrame = _this._isolatedFrames.get(new URL(message.origin).hostname);
119
- if (isolatedFrame) {
120
- if (isolatedFrame.retryMonitor) {
121
- isolatedFrame.retryMonitor.writeSuccess();
122
- }
123
- clearTimeout(isolatedFrame.timeoutId);
124
- isolatedFrame.frameMonitor.writeSuccess();
125
- isolatedFrame.isReady = true;
126
- for (var _i = 0, _a = isolatedFrame.messageQueue; _i < _a.length; _i++) {
127
- var _b = _a[_i], id = _b[0], msg = _b[1];
128
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
129
- _this._sendMessage(_this._getIsolatedFrame(id), id, msg);
130
- }
131
- isolatedFrame.messageQueue = [];
132
- }
133
- break;
134
- case 'OBOTokenRequest':
135
- var applicationId = data.applicationId, claims = data.claims;
136
- _this._getAuthToken(applicationId, claims, message.origin);
137
- break;
138
- case 'PropertyPaneConfiguration':
139
- _this._invokeCallback(instanceId, {
140
- propertyPaneConfiguration: data.propertyPaneConfiguration,
141
- type: kind
142
- });
143
- break;
144
- default:
145
- _this._logError("Unexpected message: ".concat(JSON.stringify(message.data)));
146
- break;
147
- }
148
- }
149
- else if (data.messageType === 'bridgeMessage' && data.bridgeAction === 'onTokenRequested') {
150
- /*
151
- * When we load in Teams, we use framedteamslogon to ensure the isolated app iframe has a valid cookie.
152
- * If it doesn't then framedteamslogon will request a token from the host app to use to call the
153
- * /Authenticate API, which will set a new session cookie on the iframe and then redirect to the isolated
154
- * ACE applicaton.
155
- */
156
- var monitor_1 = _this._createTokenRequestMonitor();
157
- var applicationId = data.applicationId, claims = data.claims;
158
- var isolatedFrame_1 = _this._isolatedFrames.get(new URL(message.origin).hostname);
159
- if (!isolatedFrame_1) {
160
- monitor_1.writeUnexpectedFailure('missingIsolatedFrame');
161
- return;
162
- }
163
- isolatedFrame_1.tokenMonitor = monitor_1;
164
- var configurableTokenProvider = sp_http_base_1._AadTokenProviders.configurable;
165
- if (!configurableTokenProvider._oboThirdPartyTokenCallback) {
166
- monitor_1.writeUnexpectedFailure('missingThirdPartyTokenCallback');
167
- return;
168
- }
169
- try {
170
- configurableTokenProvider._oboThirdPartyTokenCallback(applicationId, claims)
171
- .then(function (token) {
172
- if (!isolatedFrame_1.iframe.contentWindow) {
173
- throw new Error('missingContentWindow');
174
- }
175
- isolatedFrame_1.iframe.contentWindow.postMessage({ token: token, messageType: 'dashboardMessage', kind: 'Token' }, '*');
176
- monitor_1.writeSuccess();
177
- })
178
- .catch(function (e) {
179
- monitor_1.writeUnexpectedFailure('oboThirdPartyTokenCallbackError', e);
180
- });
181
- }
182
- catch (e) {
183
- /*
184
- * This is to account for an exception when calling the `_oboThirdPartyTokenCallback`.
185
- * We've seen in the past where it unexpectedly returned `undefined` causing the Promise
186
- * chain to never be executed.
187
- */
188
- monitor_1.writeUnexpectedFailure('unexpectedException', e);
189
- }
190
- }
191
- };
192
- this._serviceScope = serviceScope;
193
- window.addEventListener('message', this._handleIsolatedApplicationMessage);
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "IsolatedAdaptiveCardExtensionService", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return IsolatedAdaptiveCardExtensionService;
194
9
  }
195
- Object.defineProperty(IsolatedAdaptiveCardExtensionService.prototype, "_pageContext", {
196
- /**
197
- * @internal
198
- */
199
- get: function () {
200
- if (!this._pContext) {
201
- // Since this service can be autocreated, we must consume services after autocreation has finished
202
- this._pContext = this._serviceScope.consume(sp_page_context_1.PageContext.serviceKey);
203
- }
204
- return this._pContext;
205
- },
206
- enumerable: false,
207
- configurable: true
208
- });
209
- IsolatedAdaptiveCardExtensionService.prototype.disposeEntry = function (instanceId, isolatedDomain) {
10
+ });
11
+ const _spcomponentbase = require("@microsoft/sp-component-base");
12
+ const _spcorelibrary = require("@microsoft/sp-core-library");
13
+ const _spdiagnostics = require("@microsoft/sp-diagnostics");
14
+ const _sphttpbase = require("@microsoft/sp-http-base");
15
+ const _sppagecontext = require("@microsoft/sp-page-context");
16
+ const _sptelemetry = require("@msinternal/sp-telemetry");
17
+ const _Flights = require("../common/Flights");
18
+ const _Killswitches = require("../common/Killswitches");
19
+ const TIMEOUT_INTERVAL = 15000;
20
+ const EMBEDDED_PAGE_CONTAINER = 'embedded-page-container';
21
+ class IsolatedAdaptiveCardExtensionService {
22
+ /**
23
+ * @internal
24
+ */ get _pageContext() {
25
+ if (!this._pContext) {
26
+ // Since this service can be autocreated, we must consume services after autocreation has finished
27
+ this._pContext = this._serviceScope.consume(_sppagecontext.PageContext.serviceKey);
28
+ }
29
+ return this._pContext;
30
+ }
31
+ disposeEntry(instanceId, isolatedDomain) {
210
32
  this._isolatedListeners.delete(instanceId);
211
- if (!(0, Killswitches_1.isRemoveIsolatedDomainOnDisposeKSActivated)()) {
33
+ if (!(0, _Killswitches.isRemoveIsolatedDomainOnDisposeKSActivated)()) {
212
34
  this._callbackCache.delete(instanceId);
213
35
  // reduce the number of Isolated ACEs tied to a isolated domain
214
- var frame = this._isolatedFrames.get(isolatedDomain);
36
+ const frame = this._isolatedFrames.get(isolatedDomain);
215
37
  if (frame) {
216
38
  frame.childInstanceIds.delete(instanceId);
217
39
  // remove the isolated domain when there is no isolated aces depending on it.
@@ -221,34 +43,31 @@ var IsolatedAdaptiveCardExtensionService = /** @class */ (function () {
221
43
  }
222
44
  }
223
45
  }
224
- };
46
+ }
225
47
  /**
226
- * Load an isolated Adaptive Card Extension.
227
- *
228
- * @remarks Only loads one iframe per isolated domain.
229
- *
230
- * @param args - {@link _ILoadIsolatedAdaptiveCardExtensionParameters}
231
- */
232
- IsolatedAdaptiveCardExtensionService.prototype.load = function (args) {
233
- var _this = this;
234
- var callback = args.callback, instanceId = args.instanceId, listenerId = args.listenerId;
48
+ * Load an isolated Adaptive Card Extension.
49
+ *
50
+ * @remarks Only loads one iframe per isolated domain.
51
+ *
52
+ * @param args - {@link _ILoadIsolatedAdaptiveCardExtensionParameters}
53
+ */ load(args) {
54
+ const { callback, instanceId, listenerId } = args;
235
55
  // Normalize the domain since we are using it as dictionary keys
236
- var isolatedDomain = args.isolatedDomain.toLowerCase();
237
- var isolatedFrame = this._isolatedFrames.get(isolatedDomain);
56
+ const isolatedDomain = args.isolatedDomain.toLowerCase();
57
+ let isolatedFrame = this._isolatedFrames.get(isolatedDomain);
238
58
  if (!isolatedFrame) {
239
- var monitor = this._createLoadMonitor();
240
- var iframe = document.createElement('iframe');
59
+ const monitor = this._createLoadMonitor();
60
+ const iframe = document.createElement('iframe');
241
61
  // to fix isTeamsHosted in Teams 2.1 and in old Teams isBrowserHosted check
242
- if (!(0, Killswitches_1.isFixIframeNameKSActive)() && window.name === EMBEDDED_PAGE_CONTAINER) {
62
+ if (!(0, _Killswitches.isFixIframeNameKSActive)() && window.name === EMBEDDED_PAGE_CONTAINER) {
243
63
  iframe.name = EMBEDDED_PAGE_CONTAINER;
244
64
  }
245
- var isVCD1P_1 = sp_core_library_1._BrowserUtilities.isTeams1PVivaDesktopHosted();
246
- iframe.src = this._configureIframeSrc(isolatedDomain, args, isVCD1P_1);
65
+ const isVCD1P = _spcorelibrary._BrowserUtilities.isTeams1PVivaDesktopHosted();
66
+ iframe.src = this._configureIframeSrc(isolatedDomain, args, isVCD1P);
247
67
  /*
248
- * Initialize the iframe as hidden and full screen.
249
- * This effectively sets up the isolated iframe as an overlay over the application.
250
- */
251
- iframe.hidden = true;
68
+ * Initialize the iframe as hidden and full screen.
69
+ * This effectively sets up the isolated iframe as an overlay over the application.
70
+ */ iframe.hidden = true;
252
71
  iframe.scrolling = 'no';
253
72
  iframe.style.overflow = 'hidden';
254
73
  iframe.style.height = '100%';
@@ -261,256 +80,434 @@ var IsolatedAdaptiveCardExtensionService = /** @class */ (function () {
261
80
  iframe.setAttribute('allow', 'geolocation');
262
81
  iframe.setAttribute('data-automation-id', 'isolated_ACE_iframe');
263
82
  document.body.appendChild(iframe);
264
- var isolatedFrameKey_1 = isolatedDomain.toLowerCase();
83
+ const isolatedFrameKey = isolatedDomain.toLowerCase();
265
84
  isolatedFrame = {
266
- iframe: iframe,
85
+ iframe,
267
86
  frameMonitor: monitor,
268
87
  isReady: false,
269
88
  messageQueue: [],
270
89
  retryCount: 0,
271
90
  childInstanceIds: new Set()
272
91
  };
273
- isolatedFrame.timeoutId = setTimeout(function () {
274
- _this._handleIframeTimeout(isolatedFrameKey_1, isVCD1P_1);
92
+ isolatedFrame.timeoutId = setTimeout(()=>{
93
+ this._handleIframeTimeout(isolatedFrameKey, isVCD1P);
275
94
  }, TIMEOUT_INTERVAL);
276
- this._isolatedFrames.set(isolatedFrameKey_1, isolatedFrame);
95
+ this._isolatedFrames.set(isolatedFrameKey, isolatedFrame);
277
96
  }
278
- if (!(0, Killswitches_1.isRemoveIsolatedDomainOnDisposeKSActivated)()) {
97
+ if (!(0, _Killswitches.isRemoveIsolatedDomainOnDisposeKSActivated)()) {
279
98
  isolatedFrame.childInstanceIds.add(instanceId);
280
99
  }
281
- var entry = this._isolatedListeners.get(instanceId);
100
+ const entry = this._isolatedListeners.get(instanceId);
282
101
  if (!entry) {
283
- var listenerEntry = this._createIsolatedListenerEntry(isolatedDomain, isolatedFrame.iframe, args);
102
+ const listenerEntry = this._createIsolatedListenerEntry(isolatedDomain, isolatedFrame.iframe, args);
284
103
  this._isolatedListeners.set(instanceId, listenerEntry);
285
- }
286
- else if (!entry.listeners.get(listenerId)) {
287
- entry.listeners.set(listenerId, { callback: callback });
104
+ } else if (!entry.listeners.get(listenerId)) {
105
+ entry.listeners.set(listenerId, {
106
+ callback
107
+ });
288
108
  }
289
109
  // When we are creating a new isolated ACE during authoring, we need to tell the isolated app to initialize a new ACE instance.
290
110
  if (!args.isRenderedFromPersistedData) {
291
111
  this.sendInitialize(args);
292
- }
293
- else {
112
+ } else {
294
113
  this._handleRenderingFromPersistedData(args);
295
114
  }
296
115
  // If the ACE has previously loaded, then send the latest data to the listener.
297
116
  // Otherwise, when the isolated domain iframe has loaded we will automatically notify the listener.
298
- var callbackArgs = this._callbackCache.get(instanceId);
117
+ const callbackArgs = this._callbackCache.get(instanceId);
299
118
  if (callbackArgs) {
300
119
  this._invokeCallback(instanceId, callbackArgs, listenerId);
301
120
  }
302
- };
121
+ }
303
122
  /**
304
- * Display the iframe with the ACE quick view.
305
- *
306
- * @param args - {@link _IRenderIsolatedQuickViewParameters}
307
- */
308
- IsolatedAdaptiveCardExtensionService.prototype.renderQuickView = function (args) {
309
- var instanceId = args.instanceId, isSelectAction = args.isSelectAction, listenerId = args.listenerId, pageTheme = args.pageTheme, targetRect = args.targetRect, theme = args.theme, viewId = args.viewId;
123
+ * Display the iframe with the ACE quick view.
124
+ *
125
+ * @param args - {@link _IRenderIsolatedQuickViewParameters}
126
+ */ renderQuickView(args) {
127
+ const { instanceId, isSelectAction, listenerId, pageTheme, targetRect, theme, viewId } = args;
310
128
  this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, {
311
129
  serviceAction: 'Action',
312
130
  action: {
313
- action: { type: 'QuickView', isSelectAction: isSelectAction, pageTheme: pageTheme, targetRect: targetRect, theme: theme, viewId: viewId },
314
- instanceId: instanceId,
315
- listenerId: listenerId
131
+ action: {
132
+ type: 'QuickView',
133
+ isSelectAction,
134
+ pageTheme,
135
+ targetRect,
136
+ theme,
137
+ viewId
138
+ },
139
+ instanceId,
140
+ listenerId
316
141
  }
317
142
  });
318
- };
319
- IsolatedAdaptiveCardExtensionService.prototype.setDisplayMode = function (displayMode) {
320
- // not implemented
321
- };
322
- IsolatedAdaptiveCardExtensionService.prototype.setRenderType = function (newRenderType) {
323
- // not implemented
324
- };
143
+ }
144
+ setDisplayMode(displayMode) {
145
+ // not implemented
146
+ }
147
+ setRenderType(newRenderType) {
148
+ // not implemented
149
+ }
325
150
  /**
326
- * Send an action to an isolated ACE.
327
- *
328
- * @param action - {@link _IIsolatedAction}
329
- */
330
- IsolatedAdaptiveCardExtensionService.prototype.sendAction = function (action) {
331
- var instanceId = action.instanceId;
332
- this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, { serviceAction: 'Action', action: action });
333
- };
151
+ * Send an action to an isolated ACE.
152
+ *
153
+ * @param action - {@link _IIsolatedAction}
154
+ */ sendAction(action) {
155
+ const { instanceId } = action;
156
+ this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, {
157
+ serviceAction: 'Action',
158
+ action
159
+ });
160
+ }
334
161
  /**
335
- * Send an action to ACE onBeforeAction in an isolated domain.
336
- *
337
- * @param action - {@link _IIsolatedOnBeforeAction}
338
- */
339
- IsolatedAdaptiveCardExtensionService.prototype.sendOnBeforeAction = function (action) {
340
- var instanceId = action.instanceId;
162
+ * Send an action to ACE onBeforeAction in an isolated domain.
163
+ *
164
+ * @param action - {@link _IIsolatedOnBeforeAction}
165
+ */ sendOnBeforeAction(action) {
166
+ const { instanceId } = action;
341
167
  this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, {
342
168
  serviceAction: 'OnBeforeAction',
343
- action: action
169
+ action
344
170
  });
345
- };
346
- IsolatedAdaptiveCardExtensionService.prototype.sendInitialize = function (args) {
347
- var instanceId = args.instanceId, manifestId = args.manifestId;
171
+ }
172
+ sendInitialize(args) {
173
+ const { instanceId, manifestId } = args;
348
174
  this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, {
349
175
  serviceAction: 'Initialize',
350
- instanceId: instanceId,
351
- manifestId: manifestId
176
+ instanceId,
177
+ manifestId
352
178
  });
353
- };
354
- IsolatedAdaptiveCardExtensionService.prototype.updateACEData = function (instanceId, aceData) {
179
+ }
180
+ updateACEData(instanceId, aceData) {
355
181
  if (this._isolatedListeners.has(instanceId)) {
356
182
  this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, {
357
- aceData: aceData,
358
- instanceId: instanceId,
183
+ aceData,
184
+ instanceId,
359
185
  serviceAction: 'UpdateACEData'
360
186
  });
361
187
  }
362
- };
363
- IsolatedAdaptiveCardExtensionService.prototype.handleLocationRequest = function (instanceId, location, locationError) {
188
+ }
189
+ handleLocationRequest(instanceId, location, locationError) {
364
190
  this._sendMessage(this._getIsolatedFrame(instanceId), instanceId, {
365
- location: location,
366
- locationError: locationError,
367
- instanceId: instanceId,
191
+ location,
192
+ locationError,
193
+ instanceId,
368
194
  serviceAction: 'LocationResponse'
369
195
  });
370
- };
371
- IsolatedAdaptiveCardExtensionService.prototype._createLoadMonitor = function () {
372
- return new sp_diagnostics_1._QosMonitor('IsolatedAdaptiveCardExtensionService.load');
373
- };
374
- IsolatedAdaptiveCardExtensionService.prototype._createRetryMonitor = function () {
375
- return new sp_diagnostics_1._QosMonitor('IsolatedAdaptiveCardExtension.iframeReload');
376
- };
377
- IsolatedAdaptiveCardExtensionService.prototype._createTokenRequestMonitor = function () {
378
- return new sp_diagnostics_1._QosMonitor('IsolatedAdaptiveCardExtensionService.onTokenRequested');
379
- };
380
- IsolatedAdaptiveCardExtensionService.prototype._createGetAuthTokenMonitor = function () {
381
- return new sp_diagnostics_1._QosMonitor('IsolatedAdaptiveCardExtensionService._getAuthToken');
382
- };
383
- IsolatedAdaptiveCardExtensionService.prototype._configureDestUrlParams = function (loadArgs) {
384
- var dashboardListId = loadArgs.dashboardListId, itemId = loadArgs.itemId;
385
- var destUrlParams = new URLSearchParams(window.location.search);
196
+ }
197
+ _createLoadMonitor() {
198
+ return new _spdiagnostics._QosMonitor('IsolatedAdaptiveCardExtensionService.load');
199
+ }
200
+ _createRetryMonitor() {
201
+ return new _spdiagnostics._QosMonitor('IsolatedAdaptiveCardExtension.iframeReload');
202
+ }
203
+ _createTokenRequestMonitor() {
204
+ return new _spdiagnostics._QosMonitor('IsolatedAdaptiveCardExtensionService.onTokenRequested');
205
+ }
206
+ _createGetAuthTokenMonitor() {
207
+ return new _spdiagnostics._QosMonitor('IsolatedAdaptiveCardExtensionService._getAuthToken');
208
+ }
209
+ _configureDestUrlParams(loadArgs) {
210
+ const { dashboardListId, itemId } = loadArgs;
211
+ const destUrlParams = new URLSearchParams(window.location.search);
386
212
  destUrlParams.append('dashboardListID', dashboardListId);
387
213
  destUrlParams.append('id', itemId);
388
- if (sp_telemetry_1._SPPerfExperiment.getVariantAndTrackExperiment(sp_telemetry_1._PerformanceExperiment.WEXOOPIF) === 1) {
214
+ if (_sptelemetry._SPPerfExperiment.getVariantAndTrackExperiment(_sptelemetry._PerformanceExperiment.WEXOOPIF) === 1) {
389
215
  destUrlParams.append('OOPIF', '1');
390
216
  }
391
- destUrlParams.append('deviceContext', sp_core_library_1._BrowserUtilities.isTeams1PVivaDesktopHosted() ? 'TeamsDesktop' : 'WebView');
217
+ destUrlParams.append('deviceContext', _spcorelibrary._BrowserUtilities.isTeams1PVivaDesktopHosted() ? 'TeamsDesktop' : 'WebView');
392
218
  destUrlParams.append('parentWindowOrigin', window.location.origin);
393
219
  return destUrlParams;
394
- };
395
- IsolatedAdaptiveCardExtensionService.prototype._configureIframeSrc = function (isolatedDomain, loadArgs, isVCD1P) {
396
- var serverRelativeUrl = this._pageContext.site.serverRelativeUrl;
397
- var destBaseUrl = serverRelativeUrl === '/' ? '' : serverRelativeUrl;
398
- var isolatedUrlBase = (0, sp_component_base_1._ensureIsolatedDomainUrl)(isolatedDomain, this._pageContext.web.absoluteUrl);
399
- var destUrlParams = this._configureDestUrlParams(loadArgs);
400
- var serviceDestinationEndpoint = loadArgs.serviceDestinationEndpoint;
401
- var layoutPage = !(0, Killswitches_1.isTargetBotDriveAceAspxKSActivated)() && serviceDestinationEndpoint !== undefined
402
- ? serviceDestinationEndpoint
403
- : 'adaptivecardextensions.aspx';
404
- var destUrl = "/_layouts/15/".concat(layoutPage, "?").concat(destUrlParams.toString());
405
- if (sp_core_library_1._BrowserUtilities.isUsingSecureBroker()) {
406
- return "".concat(isolatedUrlBase, "/_layouts/15/brokerlogon.aspx?spfx=true&").concat(sp_core_library_1._BROKER_IN_USE_KEY, "=true&dest=").concat(encodeURIComponent(isolatedUrlBase + destUrl));
407
- }
408
- else if (isVCD1P && (0, Flights_1.isFramedTeamsLogonEnabled)()) {
220
+ }
221
+ _configureIframeSrc(isolatedDomain, loadArgs, isVCD1P) {
222
+ const serverRelativeUrl = this._pageContext.site.serverRelativeUrl;
223
+ const destBaseUrl = serverRelativeUrl === '/' ? '' : serverRelativeUrl;
224
+ const isolatedUrlBase = (0, _spcomponentbase._ensureIsolatedDomainUrl)(isolatedDomain, this._pageContext.web.absoluteUrl);
225
+ const destUrlParams = this._configureDestUrlParams(loadArgs);
226
+ const { serviceDestinationEndpoint } = loadArgs;
227
+ const layoutPage = !(0, _Killswitches.isTargetBotDriveAceAspxKSActivated)() && serviceDestinationEndpoint !== undefined ? serviceDestinationEndpoint : 'adaptivecardextensions.aspx';
228
+ const destUrl = `/_layouts/15/${layoutPage}?${destUrlParams.toString()}`;
229
+ if (_spcorelibrary._BrowserUtilities.isUsingSecureBroker()) {
230
+ return `${isolatedUrlBase}/_layouts/15/brokerlogon.aspx?spfx=true&${_spcorelibrary._BROKER_IN_USE_KEY}=true&dest=${encodeURIComponent(isolatedUrlBase + destUrl)}`;
231
+ } else if (isVCD1P && (0, _Flights.isFramedTeamsLogonEnabled)()) {
409
232
  // Use framedteamslogon.aspx for scenarios where cookie auth doesn't work e.g. Teams, Safari, etc.
410
- return "".concat(isolatedUrlBase, "/_layouts/15/framedteamslogon.aspx?spfx=true&dest=").concat(encodeURIComponent(destBaseUrl + destUrl));
411
- }
412
- else {
233
+ return `${isolatedUrlBase}/_layouts/15/framedteamslogon.aspx?spfx=true&dest=${encodeURIComponent(destBaseUrl + destUrl)}`;
234
+ } else {
413
235
  return isolatedUrlBase + destUrl;
414
236
  }
415
- };
416
- IsolatedAdaptiveCardExtensionService.prototype._createIsolatedListenerEntry = function (isolatedDomain, iframe, args) {
417
- var listenerId = args.listenerId, callback = args.callback, manifestId = args.manifestId;
237
+ }
238
+ _createIsolatedListenerEntry(isolatedDomain, iframe, args) {
239
+ const { listenerId, callback, manifestId } = args;
418
240
  return {
419
- isolatedDomain: isolatedDomain,
241
+ isolatedDomain,
420
242
  iframe: iframe,
421
- listeners: new Map([[listenerId, { callback: callback }]]),
422
- manifestId: manifestId
243
+ listeners: new Map([
244
+ [
245
+ listenerId,
246
+ {
247
+ callback
248
+ }
249
+ ]
250
+ ]),
251
+ manifestId
423
252
  };
424
- };
425
- IsolatedAdaptiveCardExtensionService.prototype._handleRenderingFromPersistedData = function (args) {
426
- // not implemented
427
- };
253
+ }
254
+ _handleRenderingFromPersistedData(args) {
255
+ // not implemented
256
+ }
428
257
  /**
429
- * @internal
430
- * @param instanceId - string
431
- * @returns IIsolatedFrame instance
432
- */
433
- IsolatedAdaptiveCardExtensionService.prototype._getIsolatedFrame = function (instanceId) {
434
- var entry = this._isolatedListeners.get(instanceId);
258
+ * @internal
259
+ * @param instanceId - string
260
+ * @returns IIsolatedFrame instance
261
+ */ _getIsolatedFrame(instanceId) {
262
+ const entry = this._isolatedListeners.get(instanceId);
435
263
  return entry ? this._isolatedFrames.get(entry.isolatedDomain) : undefined;
436
- };
437
- IsolatedAdaptiveCardExtensionService.prototype._sendMessage = function (isolatedFrame, instanceId, message) {
264
+ }
265
+ _sendMessage(isolatedFrame, instanceId, message) {
438
266
  if (isolatedFrame) {
439
267
  this._postOrQueueMessage(isolatedFrame, message, instanceId);
268
+ } else {
269
+ this._logError(`No entry for ${instanceId}`);
440
270
  }
441
- else {
442
- this._logError("No entry for ".concat(instanceId));
443
- }
444
- };
271
+ }
445
272
  /**
446
- * Notify listeners of a change with the ACE;
447
- *
448
- * @param instanceId - ACE instance.
449
- * @param args - {@link _IsolatedServiceCallbackParameters}
450
- * @param listenerId - Optional. If provided, only invoke the callback for this listener.
451
- */
452
- IsolatedAdaptiveCardExtensionService.prototype._invokeCallback = function (instanceId, args, listenerId) {
453
- var _a;
454
- var entry = this._isolatedListeners.get(instanceId);
273
+ * Notify listeners of a change with the ACE;
274
+ *
275
+ * @param instanceId - ACE instance.
276
+ * @param args - {@link _IsolatedServiceCallbackParameters}
277
+ * @param listenerId - Optional. If provided, only invoke the callback for this listener.
278
+ */ _invokeCallback(instanceId, args, listenerId) {
279
+ const entry = this._isolatedListeners.get(instanceId);
455
280
  this._callbackCache.set(instanceId, args);
456
281
  if (entry) {
457
282
  if (listenerId) {
458
- (_a = entry.listeners.get(listenerId)) === null || _a === void 0 ? void 0 : _a.callback(args);
459
- }
460
- else {
461
- entry.listeners.forEach(function (listener) { return listener.callback(args); });
283
+ entry.listeners.get(listenerId)?.callback(args);
284
+ } else {
285
+ entry.listeners.forEach((listener)=>listener.callback(args));
462
286
  }
287
+ } else {
288
+ this._logError(`No entry for ${instanceId}`);
463
289
  }
464
- else {
465
- this._logError("No entry for ".concat(instanceId));
466
- }
467
- };
290
+ }
468
291
  /**
469
- * Trace log an error.
470
- *
471
- * @param errorMessage - Message to create a new `Error` object.
472
- */
473
- IsolatedAdaptiveCardExtensionService.prototype._logError = function (errorMessage) {
474
- sp_diagnostics_1._TraceLogger.logError(IsolatedAdaptiveCardExtensionService._logSource, new Error(errorMessage));
475
- };
476
- IsolatedAdaptiveCardExtensionService.prototype._getAuthToken = function (applicationId, claims, origin) {
477
- var _this = this;
478
- var qosMonitor = this._createGetAuthTokenMonitor();
479
- var configurableTokenProvider = sp_http_base_1._AadTokenProviders.configurable;
292
+ * Trace log an error.
293
+ *
294
+ * @param errorMessage - Message to create a new `Error` object.
295
+ */ _logError(errorMessage) {
296
+ _spdiagnostics._TraceLogger.logError(IsolatedAdaptiveCardExtensionService._logSource, new Error(errorMessage));
297
+ }
298
+ _getAuthToken(applicationId, claims, origin) {
299
+ const qosMonitor = this._createGetAuthTokenMonitor();
300
+ const configurableTokenProvider = _sphttpbase._AadTokenProviders.configurable;
480
301
  if (!configurableTokenProvider._oboThirdPartyTokenCallback) {
481
302
  qosMonitor.writeUnexpectedFailure('oboThirdPartTokenCallbackUndefined');
482
303
  this._logError('Unexpected message: oboThirdPartyTokenCallback is not defined.');
483
304
  return;
484
305
  }
485
- configurableTokenProvider._oboThirdPartyTokenCallback(applicationId, claims)
486
- .then(function (token) {
487
- var originURL = new URL(origin);
488
- var isolatedFrame = _this._isolatedFrames.get(originURL.hostname);
489
- _this._sendMessage(isolatedFrame, '', // instanceId not associated with obo token call back flow.
490
- {
491
- token: token,
492
- applicationId: applicationId,
306
+ configurableTokenProvider._oboThirdPartyTokenCallback(applicationId, claims).then((token)=>{
307
+ const originURL = new URL(origin);
308
+ const isolatedFrame = this._isolatedFrames.get(originURL.hostname);
309
+ this._sendMessage(isolatedFrame, '', {
310
+ token,
311
+ applicationId,
493
312
  serviceAction: 'OBOToken'
494
313
  });
495
314
  qosMonitor.writeSuccess();
496
- })
497
- .catch(function (err) {
315
+ }).catch((err)=>{
498
316
  qosMonitor.writeUnexpectedFailure('oboThirdPartTokenCallbackFailure');
499
- _this._logError("Unexpected message: ".concat(JSON.stringify(err)));
317
+ this._logError(`Unexpected message: ${JSON.stringify(err)}`);
500
318
  });
501
- };
502
- IsolatedAdaptiveCardExtensionService.prototype._postOrQueueMessage = function (isolatedFrame, message, instanceId) {
319
+ }
320
+ _postOrQueueMessage(isolatedFrame, message, instanceId) {
503
321
  if (isolatedFrame.isReady) {
504
322
  message.messageType = 'serviceMessage';
505
323
  isolatedFrame.iframe.contentWindow.postMessage(message, '*');
324
+ } else {
325
+ isolatedFrame.messageQueue.push([
326
+ instanceId,
327
+ message
328
+ ]);
506
329
  }
507
- else {
508
- isolatedFrame.messageQueue.push([instanceId, message]);
509
- }
510
- };
511
- IsolatedAdaptiveCardExtensionService.serviceKey = sp_core_library_1.ServiceKey.create('sp-adaptive-card-extension-base::IsolatedAdaptiveCardExtensionService', IsolatedAdaptiveCardExtensionService);
512
- IsolatedAdaptiveCardExtensionService._logSource = { id: 'IsolatedAdaptiveCardExtensionService' };
513
- return IsolatedAdaptiveCardExtensionService;
514
- }());
515
- exports.IsolatedAdaptiveCardExtensionService = IsolatedAdaptiveCardExtensionService;
516
- //# sourceMappingURL=IsolatedAdaptiveCardExtensionService.js.map
330
+ }
331
+ constructor(serviceScope){
332
+ this._callbackCache = new Map();
333
+ this._isolatedFrames = new Map();
334
+ this._isolatedListeners = new Map();
335
+ this._handleIframeTimeout = (isolatedFrameKey, isVCD1P)=>{
336
+ const frame = this._isolatedFrames.get(isolatedFrameKey);
337
+ const { frameMonitor, retryMonitor, tokenMonitor } = frame;
338
+ /*
339
+ * There is a rare case the iframe is running into a "reset connection" error. This is because the
340
+ * client/server is unable to communicate for an unknown reason. When we run into this, we will attempt to refresh the iframe once.
341
+ */ if (frame.retryCount < 1) {
342
+ frame.retryCount += 1;
343
+ frame.retryMonitor = this._createRetryMonitor();
344
+ // Use a shorter interval for the retry, this would put the retry around ~P95
345
+ frame.timeoutId = setTimeout(()=>this._handleIframeTimeout(isolatedFrameKey, isVCD1P), TIMEOUT_INTERVAL - 500);
346
+ return;
347
+ } else if (retryMonitor) {
348
+ retryMonitor.writeUnexpectedFailure('reloadFailed');
349
+ }
350
+ /*
351
+ * If this timeout has been executed then the isolated ACE application
352
+ * did not send the `Ready` message to the host applicaton. By checking if
353
+ * the `tokenMonitor` exists we can verify whether framedteamslogon even requested
354
+ * a token. If it doesn't exist, then we assume we are stuck in the MSAL interactive flow.
355
+ * This would be unexpected in Teams but is a known issue in browsers with ITP or 3P
356
+ * cookies blocked.
357
+ */ if (frameMonitor && !frameMonitor.hasEnded) {
358
+ try {
359
+ if (tokenMonitor) {
360
+ frameMonitor.writeUnexpectedFailure('tokenTimeout');
361
+ if (!tokenMonitor.hasEnded) {
362
+ tokenMonitor.writeUnexpectedFailure('timeout');
363
+ }
364
+ } else {
365
+ if (isVCD1P) {
366
+ // We should never hit this, but adding for completeness
367
+ frameMonitor.writeUnexpectedFailure('authorizeTimeout');
368
+ } else {
369
+ frameMonitor.writeExpectedFailure('authorizeTimeout');
370
+ }
371
+ }
372
+ } catch (e) {
373
+ frameMonitor.writeUnexpectedFailure('unexpectedFailure', e);
374
+ }
375
+ }
376
+ };
377
+ /**
378
+ * Message handler for isolated domain iframes.
379
+ *
380
+ * @param message - {@link _IsolatedAdaptiveCardExtensionApplicationMessageEvent}
381
+ */ this._handleIsolatedApplicationMessage = (message)=>{
382
+ const { data } = message;
383
+ if (data.messageType === 'applicationMessage') {
384
+ const { instanceId, kind } = data;
385
+ switch(kind){
386
+ case 'Card':
387
+ this._invokeCallback(instanceId, {
388
+ aceData: data.aceData,
389
+ card: data.card,
390
+ cacheObject: data.cacheObject,
391
+ type: kind
392
+ });
393
+ break;
394
+ case 'CloseQuickView':
395
+ const qvFrame = this._isolatedFrames.get(new URL(message.origin).hostname);
396
+ if (qvFrame) {
397
+ qvFrame.iframe.hidden = true;
398
+ }
399
+ break;
400
+ case 'Error':
401
+ this._invokeCallback(instanceId, {
402
+ error: data.error,
403
+ type: kind
404
+ });
405
+ break;
406
+ case 'OpenQuickView':
407
+ const frame = this._isolatedFrames.get(new URL(message.origin).hostname);
408
+ if (frame) {
409
+ frame.iframe.hidden = false;
410
+ }
411
+ break;
412
+ case 'OpenUrl':
413
+ this._invokeCallback(instanceId, {
414
+ type: kind,
415
+ url: data.url
416
+ });
417
+ break;
418
+ case 'LocationRequest':
419
+ this._invokeCallback(instanceId, {
420
+ type: kind
421
+ });
422
+ break;
423
+ case 'RenderCompleted':
424
+ this._invokeCallback(instanceId, {
425
+ type: kind,
426
+ didUpdate: data.didUpdate
427
+ });
428
+ break;
429
+ case 'Ready':
430
+ /*
431
+ * Once we get this message from the isolated ACE application, we know it has been loaded
432
+ * and we can start sending messages to the isolated frame.
433
+ */ const isolatedFrame = this._isolatedFrames.get(new URL(message.origin).hostname);
434
+ if (isolatedFrame) {
435
+ if (isolatedFrame.retryMonitor) {
436
+ isolatedFrame.retryMonitor.writeSuccess();
437
+ }
438
+ clearTimeout(isolatedFrame.timeoutId);
439
+ isolatedFrame.frameMonitor.writeSuccess();
440
+ isolatedFrame.isReady = true;
441
+ for (const [id, msg] of isolatedFrame.messageQueue){
442
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
443
+ this._sendMessage(this._getIsolatedFrame(id), id, msg);
444
+ }
445
+ isolatedFrame.messageQueue = [];
446
+ }
447
+ break;
448
+ case 'OBOTokenRequest':
449
+ const { applicationId, claims } = data;
450
+ this._getAuthToken(applicationId, claims, message.origin);
451
+ break;
452
+ case 'PropertyPaneConfiguration':
453
+ this._invokeCallback(instanceId, {
454
+ propertyPaneConfiguration: data.propertyPaneConfiguration,
455
+ type: kind
456
+ });
457
+ break;
458
+ default:
459
+ this._logError(`Unexpected message: ${JSON.stringify(message.data)}`);
460
+ break;
461
+ }
462
+ } else if (data.messageType === 'bridgeMessage' && data.bridgeAction === 'onTokenRequested') {
463
+ /*
464
+ * When we load in Teams, we use framedteamslogon to ensure the isolated app iframe has a valid cookie.
465
+ * If it doesn't then framedteamslogon will request a token from the host app to use to call the
466
+ * /Authenticate API, which will set a new session cookie on the iframe and then redirect to the isolated
467
+ * ACE applicaton.
468
+ */ const monitor = this._createTokenRequestMonitor();
469
+ const { applicationId, claims } = data;
470
+ const isolatedFrame = this._isolatedFrames.get(new URL(message.origin).hostname);
471
+ if (!isolatedFrame) {
472
+ monitor.writeUnexpectedFailure('missingIsolatedFrame');
473
+ return;
474
+ }
475
+ isolatedFrame.tokenMonitor = monitor;
476
+ const configurableTokenProvider = _sphttpbase._AadTokenProviders.configurable;
477
+ if (!configurableTokenProvider._oboThirdPartyTokenCallback) {
478
+ monitor.writeUnexpectedFailure('missingThirdPartyTokenCallback');
479
+ return;
480
+ }
481
+ try {
482
+ configurableTokenProvider._oboThirdPartyTokenCallback(applicationId, claims).then((token)=>{
483
+ if (!isolatedFrame.iframe.contentWindow) {
484
+ throw new Error('missingContentWindow');
485
+ }
486
+ isolatedFrame.iframe.contentWindow.postMessage({
487
+ token,
488
+ messageType: 'dashboardMessage',
489
+ kind: 'Token'
490
+ }, '*');
491
+ monitor.writeSuccess();
492
+ }).catch((e)=>{
493
+ monitor.writeUnexpectedFailure('oboThirdPartyTokenCallbackError', e);
494
+ });
495
+ } catch (e) {
496
+ /*
497
+ * This is to account for an exception when calling the `_oboThirdPartyTokenCallback`.
498
+ * We've seen in the past where it unexpectedly returned `undefined` causing the Promise
499
+ * chain to never be executed.
500
+ */ monitor.writeUnexpectedFailure('unexpectedException', e);
501
+ }
502
+ }
503
+ };
504
+ this._serviceScope = serviceScope;
505
+ window.addEventListener('message', this._handleIsolatedApplicationMessage);
506
+ }
507
+ }
508
+ IsolatedAdaptiveCardExtensionService.serviceKey = _spcorelibrary.ServiceKey.create('sp-adaptive-card-extension-base::IsolatedAdaptiveCardExtensionService', IsolatedAdaptiveCardExtensionService);
509
+ IsolatedAdaptiveCardExtensionService._logSource = {
510
+ id: 'IsolatedAdaptiveCardExtensionService'
511
+ };
512
+
513
+ //# sourceMappingURL=./IsolatedAdaptiveCardExtensionService.js.map