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

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