botframework-webchat 4.13.0 → 4.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/.eslintrc.yml +5 -104
  2. package/.prettierrc.yml +1 -1
  3. package/README.md +33 -36
  4. package/babel.config.json +2 -2
  5. package/babel.sanitize-html.config.json +10 -0
  6. package/lib/AddFullBundle.d.ts +30 -0
  7. package/lib/AddFullBundle.d.ts.map +1 -0
  8. package/lib/AddFullBundle.js +76 -0
  9. package/lib/FullComposer.d.ts +8 -0
  10. package/lib/FullComposer.d.ts.map +1 -0
  11. package/lib/FullComposer.js +6 -16
  12. package/lib/FullReactWebChat.d.ts +8 -0
  13. package/lib/FullReactWebChat.d.ts.map +1 -0
  14. package/lib/FullReactWebChat.js +8 -23
  15. package/lib/adaptiveCards/AdaptiveCardsComposer.d.ts +10 -0
  16. package/lib/adaptiveCards/AdaptiveCardsComposer.d.ts.map +1 -0
  17. package/lib/adaptiveCards/AdaptiveCardsComposer.js +6 -2
  18. package/lib/adaptiveCards/AdaptiveCardsContext.d.ts +8 -0
  19. package/lib/adaptiveCards/AdaptiveCardsContext.d.ts.map +1 -0
  20. package/lib/adaptiveCards/AdaptiveCardsContext.js +3 -3
  21. package/lib/adaptiveCards/AdaptiveCardsStyleOptions.d.ts +5 -3
  22. package/lib/adaptiveCards/AdaptiveCardsStyleOptions.d.ts.map +1 -1
  23. package/lib/adaptiveCards/AdaptiveCardsStyleSet.d.ts +7 -0
  24. package/lib/adaptiveCards/AdaptiveCardsStyleSet.d.ts.map +1 -0
  25. package/lib/{FullBundleStyleOptions.js → adaptiveCards/AdaptiveCardsStyleSet.js} +0 -0
  26. package/lib/adaptiveCards/Attachment/AdaptiveCardAttachment.d.ts +9 -0
  27. package/lib/adaptiveCards/Attachment/AdaptiveCardAttachment.d.ts.map +1 -0
  28. package/lib/adaptiveCards/Attachment/AdaptiveCardAttachment.js +1 -1
  29. package/lib/adaptiveCards/Attachment/AdaptiveCardBuilder.d.ts +28 -0
  30. package/lib/adaptiveCards/Attachment/AdaptiveCardBuilder.d.ts.map +1 -0
  31. package/lib/adaptiveCards/Attachment/AdaptiveCardBuilder.js +13 -6
  32. package/lib/adaptiveCards/Attachment/AdaptiveCardContent.d.ts +9 -0
  33. package/lib/adaptiveCards/Attachment/AdaptiveCardContent.d.ts.map +1 -0
  34. package/lib/adaptiveCards/Attachment/AdaptiveCardContent.js +8 -4
  35. package/lib/adaptiveCards/Attachment/AdaptiveCardRenderer.d.ts +12 -0
  36. package/lib/adaptiveCards/Attachment/AdaptiveCardRenderer.d.ts.map +1 -0
  37. package/lib/adaptiveCards/Attachment/AdaptiveCardRenderer.js +310 -85
  38. package/lib/adaptiveCards/Attachment/AnimationCardContent.d.ts +10 -0
  39. package/lib/adaptiveCards/Attachment/AnimationCardContent.d.ts.map +1 -0
  40. package/lib/adaptiveCards/Attachment/AnimationCardContent.js +1 -1
  41. package/lib/adaptiveCards/Attachment/AudioCardContent.d.ts +10 -0
  42. package/lib/adaptiveCards/Attachment/AudioCardContent.d.ts.map +1 -0
  43. package/lib/adaptiveCards/Attachment/AudioCardContent.js +1 -1
  44. package/lib/adaptiveCards/Attachment/CommonCard.js +11 -6
  45. package/lib/adaptiveCards/Attachment/HeroCardContent.d.ts +10 -0
  46. package/lib/adaptiveCards/Attachment/HeroCardContent.d.ts.map +1 -0
  47. package/lib/adaptiveCards/Attachment/HeroCardContent.js +11 -6
  48. package/lib/adaptiveCards/Attachment/OAuthCardContent.d.ts +10 -0
  49. package/lib/adaptiveCards/Attachment/OAuthCardContent.d.ts.map +1 -0
  50. package/lib/adaptiveCards/Attachment/OAuthCardContent.js +11 -6
  51. package/lib/adaptiveCards/Attachment/ReceiptCardContent.d.ts +10 -0
  52. package/lib/adaptiveCards/Attachment/ReceiptCardContent.d.ts.map +1 -0
  53. package/lib/adaptiveCards/Attachment/ReceiptCardContent.js +11 -6
  54. package/lib/adaptiveCards/Attachment/SignInCardContent.d.ts +10 -0
  55. package/lib/adaptiveCards/Attachment/SignInCardContent.d.ts.map +1 -0
  56. package/lib/adaptiveCards/Attachment/SignInCardContent.js +1 -1
  57. package/lib/adaptiveCards/Attachment/ThumbnailCardContent.d.ts +10 -0
  58. package/lib/adaptiveCards/Attachment/ThumbnailCardContent.d.ts.map +1 -0
  59. package/lib/adaptiveCards/Attachment/ThumbnailCardContent.js +11 -6
  60. package/lib/adaptiveCards/Attachment/VideoCardContent.d.ts +20 -0
  61. package/lib/adaptiveCards/Attachment/VideoCardContent.d.ts.map +1 -0
  62. package/lib/adaptiveCards/Attachment/VideoCardContent.js +7 -5
  63. package/lib/adaptiveCards/AttachmentForScreenReader/AdaptiveCardAttachment.js +7 -3
  64. package/lib/adaptiveCards/AttachmentForScreenReader/RichCardAttachment.js +1 -1
  65. package/lib/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.d.ts +59 -0
  66. package/lib/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.d.ts.map +1 -0
  67. package/lib/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.js +8 -1
  68. package/lib/adaptiveCards/Styles/adaptiveCardHostConfig.d.ts +126 -0
  69. package/lib/adaptiveCards/Styles/adaptiveCardHostConfig.d.ts.map +1 -0
  70. package/lib/adaptiveCards/Styles/adaptiveCardHostConfig.js +29 -9
  71. package/lib/adaptiveCards/Styles/createAdaptiveCardsStyleSet.d.ts +5 -0
  72. package/lib/adaptiveCards/Styles/createAdaptiveCardsStyleSet.d.ts.map +1 -0
  73. package/lib/adaptiveCards/Styles/createAdaptiveCardsStyleSet.js +2 -2
  74. package/lib/adaptiveCards/createAdaptiveCardsAttachmentForScreenReaderMiddleware.d.ts +3 -0
  75. package/lib/adaptiveCards/createAdaptiveCardsAttachmentForScreenReaderMiddleware.d.ts.map +1 -0
  76. package/lib/adaptiveCards/createAdaptiveCardsAttachmentForScreenReaderMiddleware.js +5 -11
  77. package/lib/adaptiveCards/createAdaptiveCardsAttachmentMiddleware.d.ts +3 -0
  78. package/lib/adaptiveCards/createAdaptiveCardsAttachmentMiddleware.d.ts.map +1 -0
  79. package/lib/adaptiveCards/createAdaptiveCardsAttachmentMiddleware.js +2 -15
  80. package/lib/adaptiveCards/defaultStyleOptions.d.ts +4 -0
  81. package/lib/adaptiveCards/defaultStyleOptions.d.ts.map +1 -0
  82. package/lib/adaptiveCards/defaultStyleOptions.js +3 -2
  83. package/lib/adaptiveCards/hooks/internal/useAdaptiveCardsContext.d.ts +3 -0
  84. package/lib/adaptiveCards/hooks/internal/useAdaptiveCardsContext.d.ts.map +1 -0
  85. package/lib/adaptiveCards/hooks/internal/useAdaptiveCardsContext.js +1 -1
  86. package/lib/adaptiveCards/hooks/internal/useParseAdaptiveCardJSON.d.ts +2 -0
  87. package/lib/adaptiveCards/hooks/internal/useParseAdaptiveCardJSON.d.ts.map +1 -0
  88. package/lib/adaptiveCards/hooks/internal/useParseAdaptiveCardJSON.js +7 -5
  89. package/lib/adaptiveCards/hooks/internal/useUniqueId.js +1 -1
  90. package/lib/adaptiveCards/hooks/useAdaptiveCardsHostConfig.d.ts +2 -0
  91. package/lib/adaptiveCards/hooks/useAdaptiveCardsHostConfig.d.ts.map +1 -0
  92. package/lib/adaptiveCards/hooks/useAdaptiveCardsHostConfig.js +3 -5
  93. package/lib/adaptiveCards/hooks/useAdaptiveCardsPackage.d.ts +3 -0
  94. package/lib/adaptiveCards/hooks/useAdaptiveCardsPackage.d.ts.map +1 -0
  95. package/lib/adaptiveCards/hooks/useAdaptiveCardsPackage.js +1 -1
  96. package/lib/adaptiveCards/normalizeStyleOptions.d.ts +3 -0
  97. package/lib/adaptiveCards/normalizeStyleOptions.d.ts.map +1 -0
  98. package/lib/adaptiveCards/normalizeStyleOptions.js +1 -1
  99. package/lib/addVersion.js +2 -2
  100. package/lib/createBrowserWebSpeechPonyfillFactory.d.ts +3 -0
  101. package/lib/createBrowserWebSpeechPonyfillFactory.d.ts.map +1 -0
  102. package/lib/createBrowserWebSpeechPonyfillFactory.js +7 -4
  103. package/lib/createCognitiveServicesSpeechServicesPonyfillFactory.d.ts +17 -0
  104. package/lib/createCognitiveServicesSpeechServicesPonyfillFactory.d.ts.map +1 -0
  105. package/lib/createCognitiveServicesSpeechServicesPonyfillFactory.js +17 -11
  106. package/lib/createDirectLine.d.ts +17 -0
  107. package/lib/createDirectLine.d.ts.map +1 -0
  108. package/lib/createDirectLine.js +3 -2
  109. package/lib/createDirectLineAppServiceExtension.d.ts +7 -0
  110. package/lib/createDirectLineAppServiceExtension.d.ts.map +1 -0
  111. package/lib/createDirectLineAppServiceExtension.js +1 -1
  112. package/lib/createDirectLineSpeechAdapters.d.ts +25 -0
  113. package/lib/createDirectLineSpeechAdapters.d.ts.map +1 -0
  114. package/lib/createDirectLineSpeechAdapters.js +57 -3
  115. package/lib/createFullStyleSet.d.ts +1375 -0
  116. package/lib/createFullStyleSet.d.ts.map +1 -0
  117. package/lib/createFullStyleSet.js +2 -2
  118. package/lib/fullBundleDefaultStyleOptions.js +4 -4
  119. package/lib/hooks/useStyleOptions.d.ts +3 -0
  120. package/lib/hooks/useStyleOptions.d.ts.map +1 -0
  121. package/lib/hooks/useStyleOptions.js +21 -0
  122. package/lib/index-es5.d.ts +4 -20
  123. package/lib/index-es5.d.ts.map +1 -1
  124. package/lib/index-es5.js +3 -43
  125. package/lib/index-minimal.d.ts +9 -6
  126. package/lib/index-minimal.d.ts.map +1 -1
  127. package/lib/index-minimal.js +27 -21
  128. package/lib/index.d.ts +164 -18
  129. package/lib/index.d.ts.map +1 -1
  130. package/lib/index.js +19 -12
  131. package/lib/polyfill.d.ts +23 -0
  132. package/lib/polyfill.d.ts.map +1 -0
  133. package/lib/polyfill.js +46 -0
  134. package/lib/renderMarkdown.d.ts +6 -0
  135. package/lib/renderMarkdown.d.ts.map +1 -0
  136. package/lib/renderMarkdown.js +36 -5
  137. package/lib/renderWebChat.d.ts +3 -0
  138. package/lib/renderWebChat.d.ts.map +1 -0
  139. package/lib/renderWebChat.js +1 -1
  140. package/lib/speech/CustomAudioInputStream.d.ts +94 -0
  141. package/lib/speech/CustomAudioInputStream.d.ts.map +1 -0
  142. package/lib/speech/CustomAudioInputStream.js +441 -0
  143. package/lib/speech/bytesPerSample.d.ts +2 -0
  144. package/lib/speech/bytesPerSample.d.ts.map +1 -0
  145. package/lib/speech/bytesPerSample.js +12 -0
  146. package/lib/speech/createAudioConfig.d.ts +23 -0
  147. package/lib/speech/createAudioConfig.d.ts.map +1 -0
  148. package/lib/speech/createAudioConfig.js +90 -0
  149. package/lib/speech/createAudioContext.d.ts +3 -0
  150. package/lib/speech/createAudioContext.d.ts.map +1 -0
  151. package/lib/speech/createAudioContext.js +22 -0
  152. package/lib/speech/createMicrophoneAudioConfigAndAudioContext.d.ts +9 -0
  153. package/lib/speech/createMicrophoneAudioConfigAndAudioContext.d.ts.map +1 -0
  154. package/lib/speech/createMicrophoneAudioConfigAndAudioContext.js +161 -0
  155. package/lib/speech/getUserMedia.d.ts +2 -0
  156. package/lib/speech/getUserMedia.d.ts.map +1 -0
  157. package/lib/speech/getUserMedia.js +25 -0
  158. package/lib/types/AdaptiveCardsPackage.d.ts +13 -0
  159. package/lib/types/AdaptiveCardsPackage.d.ts.map +1 -0
  160. package/lib/types/AdaptiveCardsPackage.js +2 -0
  161. package/lib/types/CognitiveServicesAudioOutputFormat.d.ts +3 -0
  162. package/lib/types/CognitiveServicesAudioOutputFormat.d.ts.map +1 -0
  163. package/lib/types/CognitiveServicesAudioOutputFormat.js +2 -0
  164. package/lib/types/CognitiveServicesCredentials.d.ts +18 -0
  165. package/lib/types/CognitiveServicesCredentials.d.ts.map +1 -0
  166. package/lib/types/CognitiveServicesCredentials.js +2 -0
  167. package/lib/types/CognitiveServicesTextNormalization.d.ts +3 -0
  168. package/lib/types/CognitiveServicesTextNormalization.d.ts.map +1 -0
  169. package/lib/types/CognitiveServicesTextNormalization.js +2 -0
  170. package/lib/{FullBundleStyleOptions.d.ts → types/FullBundleStyleOptions.d.ts} +1 -1
  171. package/lib/types/FullBundleStyleOptions.d.ts.map +1 -0
  172. package/lib/types/FullBundleStyleOptions.js +2 -0
  173. package/lib/useComposerProps.d.ts +22 -0
  174. package/lib/useComposerProps.d.ts.map +1 -0
  175. package/lib/useComposerProps.js +6 -8
  176. package/package.json +46 -48
  177. package/src/AddFullBundle.tsx +93 -0
  178. package/src/FullComposer.tsx +38 -0
  179. package/src/FullReactWebChat.tsx +32 -0
  180. package/src/__tests__/createDirectLine.spec.js +2 -0
  181. package/src/__tests__/renderMarkdown.spec.js +1 -1
  182. package/src/__tests__/versionTag.es5.spec.js +3 -0
  183. package/src/__tests__/versionTag.full.spec.js +3 -0
  184. package/src/__tests__/versionTag.minimal.spec.js +3 -0
  185. package/src/adaptiveCards/{AdaptiveCardsComposer.js → AdaptiveCardsComposer.tsx} +17 -5
  186. package/src/adaptiveCards/AdaptiveCardsContext.ts +12 -0
  187. package/src/adaptiveCards/AdaptiveCardsStyleOptions.ts +5 -3
  188. package/src/adaptiveCards/AdaptiveCardsStyleSet.ts +7 -0
  189. package/src/adaptiveCards/Attachment/{AdaptiveCardAttachment.js → AdaptiveCardAttachment.tsx} +8 -2
  190. package/src/adaptiveCards/Attachment/AdaptiveCardBuilder.ts +27 -17
  191. package/src/adaptiveCards/Attachment/{AdaptiveCardContent.js → AdaptiveCardContent.tsx} +8 -2
  192. package/src/adaptiveCards/Attachment/AdaptiveCardRenderer.tsx +768 -0
  193. package/src/adaptiveCards/Attachment/{AnimationCardContent.js → AnimationCardContent.tsx} +9 -2
  194. package/src/adaptiveCards/Attachment/{AudioCardContent.js → AudioCardContent.tsx} +9 -2
  195. package/src/adaptiveCards/Attachment/CommonCard.js +2 -1
  196. package/src/adaptiveCards/Attachment/{HeroCardContent.js → HeroCardContent.tsx} +12 -3
  197. package/src/adaptiveCards/Attachment/{OAuthCardContent.js → OAuthCardContent.tsx} +11 -3
  198. package/src/adaptiveCards/Attachment/{ReceiptCardContent.js → ReceiptCardContent.tsx} +58 -28
  199. package/src/adaptiveCards/Attachment/{SignInCardContent.js → SignInCardContent.tsx} +9 -2
  200. package/src/adaptiveCards/Attachment/{ThumbnailCardContent.js → ThumbnailCardContent.tsx} +12 -3
  201. package/src/adaptiveCards/Attachment/{VideoCardContent.js → VideoCardContent.tsx} +15 -3
  202. package/src/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.ts +9 -1
  203. package/src/adaptiveCards/Styles/adaptiveCardHostConfig.ts +28 -8
  204. package/src/adaptiveCards/Styles/createAdaptiveCardsStyleSet.spec.js +2 -0
  205. package/src/adaptiveCards/Styles/createAdaptiveCardsStyleSet.ts +7 -4
  206. package/src/adaptiveCards/{createAdaptiveCardsAttachmentForScreenReaderMiddleware.js → createAdaptiveCardsAttachmentForScreenReaderMiddleware.tsx} +16 -15
  207. package/src/adaptiveCards/createAdaptiveCardsAttachmentMiddleware.tsx +44 -0
  208. package/src/adaptiveCards/defaultStyleOptions.ts +2 -1
  209. package/src/adaptiveCards/hooks/internal/{useAdaptiveCardsContext.js → useAdaptiveCardsContext.ts} +1 -1
  210. package/src/adaptiveCards/hooks/internal/{useParseAdaptiveCardJSON.js → useParseAdaptiveCardJSON.ts} +5 -2
  211. package/src/adaptiveCards/hooks/internal/{useUniqueId.js → useUniqueId.ts} +1 -1
  212. package/src/adaptiveCards/hooks/{useAdaptiveCardsHostConfig.js → useAdaptiveCardsHostConfig.ts} +6 -8
  213. package/src/adaptiveCards/hooks/{useAdaptiveCardsPackage.js → useAdaptiveCardsPackage.ts} +2 -1
  214. package/src/createBrowserWebSpeechPonyfillFactory.ts +21 -0
  215. package/src/createCognitiveServicesSpeechServicesPonyfillFactory.spec.js +36 -6
  216. package/src/createCognitiveServicesSpeechServicesPonyfillFactory.ts +78 -0
  217. package/src/createDirectLine.ts +65 -0
  218. package/src/createDirectLineAppServiceExtension.ts +22 -0
  219. package/src/createDirectLineSpeechAdapters.ts +84 -0
  220. package/src/createFullStyleSet.ts +2 -2
  221. package/src/fullBundleDefaultStyleOptions.ts +3 -3
  222. package/src/hooks/useStyleOptions.ts +9 -0
  223. package/src/index-es5.ts +3 -28
  224. package/src/index-minimal.ts +3 -2
  225. package/src/index.ts +22 -10
  226. package/src/polyfill.ts +29 -0
  227. package/src/renderMarkdown.ts +140 -0
  228. package/src/renderWebChat.tsx +6 -0
  229. package/src/speech/CustomAudioInputStream.ts +356 -0
  230. package/src/speech/bytesPerSample.ts +4 -0
  231. package/src/speech/createAudioConfig.spec.js +23 -0
  232. package/src/speech/createAudioConfig.ts +77 -0
  233. package/src/speech/createAudioContext.ts +16 -0
  234. package/src/speech/createMicrophoneAudioConfigAndAudioContext.ts +146 -0
  235. package/src/speech/getUserMedia.ts +14 -0
  236. package/src/tsconfig.json +1 -1
  237. package/src/types/AdaptiveCardsPackage.ts +23 -0
  238. package/src/types/CognitiveServicesAudioOutputFormat.ts +28 -0
  239. package/src/types/CognitiveServicesCredentials.ts +28 -0
  240. package/src/types/CognitiveServicesTextNormalization.ts +3 -0
  241. package/src/{FullBundleStyleOptions.ts → types/FullBundleStyleOptions.ts} +1 -1
  242. package/src/{useComposerProps.js → useComposerProps.ts} +21 -11
  243. package/webpack.config.js +46 -6
  244. package/.eslintignore +0 -9
  245. package/lib/FullBundleStyleOptions.d.ts.map +0 -1
  246. package/src/FullComposer.js +0 -40
  247. package/src/FullReactWebChat.js +0 -47
  248. package/src/adaptiveCards/AdaptiveCardsContext.js +0 -5
  249. package/src/adaptiveCards/Attachment/AdaptiveCardRenderer.js +0 -492
  250. package/src/adaptiveCards/createAdaptiveCardsAttachmentMiddleware.js +0 -41
  251. package/src/createBrowserWebSpeechPonyfillFactory.js +0 -16
  252. package/src/createCognitiveServicesSpeechServicesPonyfillFactory.js +0 -58
  253. package/src/createDirectLine.js +0 -38
  254. package/src/createDirectLineAppServiceExtension.js +0 -12
  255. package/src/createDirectLineSpeechAdapters.js +0 -5
  256. package/src/index-es5.tsx +0 -49
  257. package/src/index-minimal.tsx +0 -9
  258. package/src/index.tsx +0 -45
  259. package/src/renderMarkdown.js +0 -97
  260. package/src/renderWebChat.js +0 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDirectLineAppServiceExtension.d.ts","sourceRoot":"","sources":["../src/createDirectLineAppServiceExtension.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,mCAAmC,CAAC,EAC1D,QAAQ,EACR,cAAc,EACd,MAAM,EACN,KAAK,EACN,EAAE;IACD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,GAAG,CAAC,CASf"}
@@ -19,4 +19,4 @@ function createDirectLineAppServiceExtension(_ref) {
19
19
  token: token
20
20
  }));
21
21
  }
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVEaXJlY3RMaW5lQXBwU2VydmljZUV4dGVuc2lvbi5qcyJdLCJuYW1lcyI6WyJjcmVhdGVEaXJlY3RMaW5lQXBwU2VydmljZUV4dGVuc2lvbiIsImJvdEFnZW50IiwiY29udmVyc2F0aW9uSWQiLCJkb21haW4iLCJ0b2tlbiIsIlByb21pc2UiLCJyZXNvbHZlIiwiRGlyZWN0TGluZVN0cmVhbWluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVlLFNBQVNBLG1DQUFULE9BQTBGO0FBQUEsTUFBM0NDLFFBQTJDLFFBQTNDQSxRQUEyQztBQUFBLE1BQWpDQyxjQUFpQyxRQUFqQ0EsY0FBaUM7QUFBQSxNQUFqQkMsTUFBaUIsUUFBakJBLE1BQWlCO0FBQUEsTUFBVEMsS0FBUyxRQUFUQSxLQUFTO0FBQ3ZHLFNBQU9DLE9BQU8sQ0FBQ0MsT0FBUixDQUNMLElBQUlDLDZDQUFKLENBQXdCO0FBQ3RCTixJQUFBQSxRQUFRLEVBQVJBLFFBRHNCO0FBRXRCQyxJQUFBQSxjQUFjLEVBQWRBLGNBRnNCO0FBR3RCQyxJQUFBQSxNQUFNLEVBQU5BLE1BSHNCO0FBSXRCQyxJQUFBQSxLQUFLLEVBQUxBO0FBSnNCLEdBQXhCLENBREssQ0FBUDtBQVFEIiwic291cmNlUm9vdCI6ImJ1bmRsZTovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RMaW5lU3RyZWFtaW5nIH0gZnJvbSAnYm90ZnJhbWV3b3JrLWRpcmVjdGxpbmVqcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZURpcmVjdExpbmVBcHBTZXJ2aWNlRXh0ZW5zaW9uKHsgYm90QWdlbnQsIGNvbnZlcnNhdGlvbklkLCBkb21haW4sIHRva2VuIH0pIHtcbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShcbiAgICBuZXcgRGlyZWN0TGluZVN0cmVhbWluZyh7XG4gICAgICBib3RBZ2VudCxcbiAgICAgIGNvbnZlcnNhdGlvbklkLFxuICAgICAgZG9tYWluLFxuICAgICAgdG9rZW5cbiAgICB9KVxuICApO1xufVxuIl19
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVEaXJlY3RMaW5lQXBwU2VydmljZUV4dGVuc2lvbi50cyJdLCJuYW1lcyI6WyJjcmVhdGVEaXJlY3RMaW5lQXBwU2VydmljZUV4dGVuc2lvbiIsImJvdEFnZW50IiwiY29udmVyc2F0aW9uSWQiLCJkb21haW4iLCJ0b2tlbiIsIlByb21pc2UiLCJyZXNvbHZlIiwiRGlyZWN0TGluZVN0cmVhbWluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVlLFNBQVNBLG1DQUFULE9BVUU7QUFBQSxNQVRmQyxRQVNlLFFBVGZBLFFBU2U7QUFBQSxNQVJmQyxjQVFlLFFBUmZBLGNBUWU7QUFBQSxNQVBmQyxNQU9lLFFBUGZBLE1BT2U7QUFBQSxNQU5mQyxLQU1lLFFBTmZBLEtBTWU7QUFDZixTQUFPQyxPQUFPLENBQUNDLE9BQVIsQ0FDTCxJQUFJQyw2Q0FBSixDQUF3QjtBQUN0Qk4sSUFBQUEsUUFBUSxFQUFSQSxRQURzQjtBQUV0QkMsSUFBQUEsY0FBYyxFQUFkQSxjQUZzQjtBQUd0QkMsSUFBQUEsTUFBTSxFQUFOQSxNQUhzQjtBQUl0QkMsSUFBQUEsS0FBSyxFQUFMQTtBQUpzQixHQUF4QixDQURLLENBQVA7QUFRRCIsInNvdXJjZVJvb3QiOiJidW5kbGU6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0TGluZVN0cmVhbWluZyB9IGZyb20gJ2JvdGZyYW1ld29yay1kaXJlY3RsaW5lanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBjcmVhdGVEaXJlY3RMaW5lQXBwU2VydmljZUV4dGVuc2lvbih7XG4gIGJvdEFnZW50LFxuICBjb252ZXJzYXRpb25JZCxcbiAgZG9tYWluLFxuICB0b2tlblxufToge1xuICBib3RBZ2VudD86IHN0cmluZztcbiAgY29udmVyc2F0aW9uSWQ/OiBzdHJpbmc7XG4gIGRvbWFpbj86IHN0cmluZztcbiAgdG9rZW46IHN0cmluZztcbn0pOiBQcm9taXNlPGFueT4ge1xuICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFxuICAgIG5ldyBEaXJlY3RMaW5lU3RyZWFtaW5nKHtcbiAgICAgIGJvdEFnZW50LFxuICAgICAgY29udmVyc2F0aW9uSWQsXG4gICAgICBkb21haW4sXG4gICAgICB0b2tlblxuICAgIH0pXG4gICk7XG59XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { AudioConfig } from 'microsoft-cognitiveservices-speech-sdk';
2
+ import { DirectLineJSBotConnection } from 'botframework-webchat-core';
3
+ import { WebSpeechPonyfill } from 'botframework-webchat-api';
4
+ import CognitiveServicesAudioOutputFormat from './types/CognitiveServicesAudioOutputFormat';
5
+ import CognitiveServicesCredentials from './types/CognitiveServicesCredentials';
6
+ import CognitiveServicesTextNormalization from './types/CognitiveServicesTextNormalization';
7
+ export default function createDirectLineSpeechAdapters({ audioConfig, audioContext, audioInputDeviceId, enableInternalHTTPSupport, enableTelemetry, fetchCredentials, speechRecognitionEndpointId, speechRecognitionLanguage, speechSynthesisDeploymentId, speechSynthesisOutputFormat, textNormalization, userID, username }: {
8
+ audioConfig?: AudioConfig;
9
+ audioContext?: AudioContext;
10
+ audioInputDeviceId?: string;
11
+ enableInternalHTTPSupport?: true;
12
+ enableTelemetry?: true;
13
+ fetchCredentials: CognitiveServicesCredentials;
14
+ speechRecognitionEndpointId?: string;
15
+ speechRecognitionLanguage?: string;
16
+ speechSynthesisDeploymentId?: string;
17
+ speechSynthesisOutputFormat?: CognitiveServicesAudioOutputFormat;
18
+ textNormalization?: CognitiveServicesTextNormalization;
19
+ userID?: string;
20
+ username?: string;
21
+ }): {
22
+ directLine: DirectLineJSBotConnection;
23
+ webSpeechPonyfill: WebSpeechPonyfill;
24
+ };
25
+ //# sourceMappingURL=createDirectLineSpeechAdapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDirectLineSpeechAdapters.d.ts","sourceRoot":"","sources":["../src/createDirectLineSpeechAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAErE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,kCAAkC,MAAM,4CAA4C,CAAC;AAC5F,OAAO,4BAA4B,MAAM,sCAAsC,CAAC;AAChF,OAAO,kCAAkC,MAAM,4CAA4C,CAAC;AAM5F,MAAM,CAAC,OAAO,UAAU,8BAA8B,CAAC,EACrD,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAC3B,yBAA2E,EAC3E,2BAA2B,EAC3B,2BAA2B,EAC3B,iBAAiB,EACjB,MAAM,EACN,QAAQ,EACT,EAAE;IACD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,yBAAyB,CAAC,EAAE,IAAI,CAAC;IACjC,eAAe,CAAC,EAAE,IAAI,CAAC;IACvB,gBAAgB,EAAE,4BAA4B,CAAC;IAC/C,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2BAA2B,CAAC,EAAE,kCAAkC,CAAC;IACjE,iBAAiB,CAAC,EAAE,kCAAkC,CAAC;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG;IACF,UAAU,EAAE,yBAAyB,CAAC;IACtC,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CAuCA"}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -7,7 +9,59 @@ exports.default = createDirectLineSpeechAdapters;
7
9
 
8
10
  var _botframeworkDirectlinespeechSdk = require("botframework-directlinespeech-sdk");
9
11
 
10
- function createDirectLineSpeechAdapters() {
11
- return _botframeworkDirectlinespeechSdk.createAdapters.apply(void 0, arguments);
12
+ var _createMicrophoneAudioConfigAndAudioContext = _interopRequireDefault(require("./speech/createMicrophoneAudioConfigAndAudioContext"));
13
+
14
+ var DEFAULT_LANGUAGE = 'en-US'; // TODO: When using DLSpeech via bundle, we will add our own MicrophoneAudioConfig.
15
+
16
+ function createDirectLineSpeechAdapters(_ref) {
17
+ var _window, _window$navigator;
18
+
19
+ var audioConfig = _ref.audioConfig,
20
+ audioContext = _ref.audioContext,
21
+ audioInputDeviceId = _ref.audioInputDeviceId,
22
+ enableInternalHTTPSupport = _ref.enableInternalHTTPSupport,
23
+ enableTelemetry = _ref.enableTelemetry,
24
+ fetchCredentials = _ref.fetchCredentials,
25
+ speechRecognitionEndpointId = _ref.speechRecognitionEndpointId,
26
+ _ref$speechRecognitio = _ref.speechRecognitionLanguage,
27
+ speechRecognitionLanguage = _ref$speechRecognitio === void 0 ? ((_window = window) === null || _window === void 0 ? void 0 : (_window$navigator = _window.navigator) === null || _window$navigator === void 0 ? void 0 : _window$navigator.language) || DEFAULT_LANGUAGE : _ref$speechRecognitio,
28
+ speechSynthesisDeploymentId = _ref.speechSynthesisDeploymentId,
29
+ speechSynthesisOutputFormat = _ref.speechSynthesisOutputFormat,
30
+ textNormalization = _ref.textNormalization,
31
+ userID = _ref.userID,
32
+ username = _ref.username;
33
+
34
+ if (audioConfig) {
35
+ audioInputDeviceId && console.warn('botframework-webchat: "audioConfig" and "audioInputDeviceId" cannot be set at the same time; ignoring "audioInputDeviceId".');
36
+ audioContext && console.warn('botframework-webchat: "audioConfig" and "audioContext" cannot be set at the same time; ignoring "audioContext" for speech recognition.');
37
+ } else if (!window.navigator.mediaDevices) {
38
+ // If the browser does not support or allow microphone access, we will continue to create Direct Line Speech adapter without custom "audioConfig" and "audioContext".
39
+ // In Direct Line Speech SDK, it will disable speech functionality, only leaving text chat available via the protocol.
40
+ console.warn('botframework-webchat: Your browser does not support or allow microphone access or the page is not loaded via HTTPS or localhost. Speech is disabled for Direct Line Speech. However, you may pass a custom "audioConfig" to enable speech in this environment.');
41
+ } else {
42
+ var _createMicrophoneAudi = (0, _createMicrophoneAudioConfigAndAudioContext.default)({
43
+ audioContext: audioContext,
44
+ audioInputDeviceId: audioInputDeviceId,
45
+ enableTelemetry: enableTelemetry
46
+ });
47
+
48
+ audioConfig = _createMicrophoneAudi.audioConfig;
49
+ audioContext = _createMicrophoneAudi.audioContext;
50
+ }
51
+
52
+ return (0, _botframeworkDirectlinespeechSdk.createAdapters)({
53
+ audioConfig: audioConfig,
54
+ audioContext: audioContext,
55
+ enableInternalHTTPSupport: enableInternalHTTPSupport,
56
+ enableTelemetry: enableTelemetry,
57
+ fetchCredentials: fetchCredentials,
58
+ speechRecognitionEndpointId: speechRecognitionEndpointId,
59
+ speechRecognitionLanguage: speechRecognitionLanguage,
60
+ speechSynthesisDeploymentId: speechSynthesisDeploymentId,
61
+ speechSynthesisOutputFormat: speechSynthesisOutputFormat,
62
+ textNormalization: textNormalization,
63
+ userID: userID,
64
+ username: username
65
+ });
12
66
  }
13
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVEaXJlY3RMaW5lU3BlZWNoQWRhcHRlcnMuanMiXSwibmFtZXMiOlsiY3JlYXRlRGlyZWN0TGluZVNwZWVjaEFkYXB0ZXJzIiwiY3JlYXRlQWRhcHRlcnMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFZSxTQUFTQSw4QkFBVCxHQUFpRDtBQUM5RCxTQUFPQyx3RUFBUDtBQUNEIiwic291cmNlUm9vdCI6ImJ1bmRsZTovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBZGFwdGVycyB9IGZyb20gJ2JvdGZyYW1ld29yay1kaXJlY3RsaW5lc3BlZWNoLXNkayc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZURpcmVjdExpbmVTcGVlY2hBZGFwdGVycyguLi5hcmdzKSB7XG4gIHJldHVybiBjcmVhdGVBZGFwdGVycyguLi5hcmdzKTtcbn1cbiJdfQ==
67
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVEaXJlY3RMaW5lU3BlZWNoQWRhcHRlcnMudHMiXSwibmFtZXMiOlsiREVGQVVMVF9MQU5HVUFHRSIsImNyZWF0ZURpcmVjdExpbmVTcGVlY2hBZGFwdGVycyIsImF1ZGlvQ29uZmlnIiwiYXVkaW9Db250ZXh0IiwiYXVkaW9JbnB1dERldmljZUlkIiwiZW5hYmxlSW50ZXJuYWxIVFRQU3VwcG9ydCIsImVuYWJsZVRlbGVtZXRyeSIsImZldGNoQ3JlZGVudGlhbHMiLCJzcGVlY2hSZWNvZ25pdGlvbkVuZHBvaW50SWQiLCJzcGVlY2hSZWNvZ25pdGlvbkxhbmd1YWdlIiwid2luZG93IiwibmF2aWdhdG9yIiwibGFuZ3VhZ2UiLCJzcGVlY2hTeW50aGVzaXNEZXBsb3ltZW50SWQiLCJzcGVlY2hTeW50aGVzaXNPdXRwdXRGb3JtYXQiLCJ0ZXh0Tm9ybWFsaXphdGlvbiIsInVzZXJJRCIsInVzZXJuYW1lIiwiY29uc29sZSIsIndhcm4iLCJtZWRpYURldmljZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBOztBQU9BOztBQUVBLElBQU1BLGdCQUFnQixHQUFHLE9BQXpCLEMsQ0FFQTs7QUFDZSxTQUFTQyw4QkFBVCxPQStCYjtBQUFBOztBQUFBLE1BOUJBQyxXQThCQSxRQTlCQUEsV0E4QkE7QUFBQSxNQTdCQUMsWUE2QkEsUUE3QkFBLFlBNkJBO0FBQUEsTUE1QkFDLGtCQTRCQSxRQTVCQUEsa0JBNEJBO0FBQUEsTUEzQkFDLHlCQTJCQSxRQTNCQUEseUJBMkJBO0FBQUEsTUExQkFDLGVBMEJBLFFBMUJBQSxlQTBCQTtBQUFBLE1BekJBQyxnQkF5QkEsUUF6QkFBLGdCQXlCQTtBQUFBLE1BeEJBQywyQkF3QkEsUUF4QkFBLDJCQXdCQTtBQUFBLG1DQXZCQUMseUJBdUJBO0FBQUEsTUF2QkFBLHlCQXVCQSxzQ0F2QjRCLFlBQUFDLE1BQU0sVUFBTiwrREFBUUMsU0FBUix3RUFBbUJDLFFBQW5CLEtBQStCWixnQkF1QjNEO0FBQUEsTUF0QkFhLDJCQXNCQSxRQXRCQUEsMkJBc0JBO0FBQUEsTUFyQkFDLDJCQXFCQSxRQXJCQUEsMkJBcUJBO0FBQUEsTUFwQkFDLGlCQW9CQSxRQXBCQUEsaUJBb0JBO0FBQUEsTUFuQkFDLE1BbUJBLFFBbkJBQSxNQW1CQTtBQUFBLE1BbEJBQyxRQWtCQSxRQWxCQUEsUUFrQkE7O0FBQ0EsTUFBSWYsV0FBSixFQUFpQjtBQUNmRSxJQUFBQSxrQkFBa0IsSUFDaEJjLE9BQU8sQ0FBQ0MsSUFBUixDQUNFLDZIQURGLENBREY7QUFLQWhCLElBQUFBLFlBQVksSUFDVmUsT0FBTyxDQUFDQyxJQUFSLENBQ0Usd0lBREYsQ0FERjtBQUlELEdBVkQsTUFVTyxJQUFJLENBQUNULE1BQU0sQ0FBQ0MsU0FBUCxDQUFpQlMsWUFBdEIsRUFBb0M7QUFDekM7QUFDQTtBQUNBRixJQUFBQSxPQUFPLENBQUNDLElBQVIsQ0FDRSxnUUFERjtBQUdELEdBTk0sTUFNQTtBQUFBLGdDQUM0Qix5REFBMkM7QUFDMUVoQixNQUFBQSxZQUFZLEVBQVpBLFlBRDBFO0FBRTFFQyxNQUFBQSxrQkFBa0IsRUFBbEJBLGtCQUYwRTtBQUcxRUUsTUFBQUEsZUFBZSxFQUFmQTtBQUgwRSxLQUEzQyxDQUQ1Qjs7QUFDRkosSUFBQUEsV0FERSx5QkFDRkEsV0FERTtBQUNXQyxJQUFBQSxZQURYLHlCQUNXQSxZQURYO0FBTU47O0FBRUQsU0FBTyxxREFBZTtBQUNwQkQsSUFBQUEsV0FBVyxFQUFYQSxXQURvQjtBQUVwQkMsSUFBQUEsWUFBWSxFQUFaQSxZQUZvQjtBQUdwQkUsSUFBQUEseUJBQXlCLEVBQXpCQSx5QkFIb0I7QUFJcEJDLElBQUFBLGVBQWUsRUFBZkEsZUFKb0I7QUFLcEJDLElBQUFBLGdCQUFnQixFQUFoQkEsZ0JBTG9CO0FBTXBCQyxJQUFBQSwyQkFBMkIsRUFBM0JBLDJCQU5vQjtBQU9wQkMsSUFBQUEseUJBQXlCLEVBQXpCQSx5QkFQb0I7QUFRcEJJLElBQUFBLDJCQUEyQixFQUEzQkEsMkJBUm9CO0FBU3BCQyxJQUFBQSwyQkFBMkIsRUFBM0JBLDJCQVRvQjtBQVVwQkMsSUFBQUEsaUJBQWlCLEVBQWpCQSxpQkFWb0I7QUFXcEJDLElBQUFBLE1BQU0sRUFBTkEsTUFYb0I7QUFZcEJDLElBQUFBLFFBQVEsRUFBUkE7QUFab0IsR0FBZixDQUFQO0FBY0QiLCJzb3VyY2VSb290IjoiYnVuZGxlOi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1ZGlvQ29uZmlnIH0gZnJvbSAnbWljcm9zb2Z0LWNvZ25pdGl2ZXNlcnZpY2VzLXNwZWVjaC1zZGsnO1xuaW1wb3J0IHsgY3JlYXRlQWRhcHRlcnMgfSBmcm9tICdib3RmcmFtZXdvcmstZGlyZWN0bGluZXNwZWVjaC1zZGsnO1xuaW1wb3J0IHsgRGlyZWN0TGluZUpTQm90Q29ubmVjdGlvbiB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWNvcmUnO1xuaW1wb3J0IHsgV2ViU3BlZWNoUG9ueWZpbGwgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1hcGknO1xuXG5pbXBvcnQgQ29nbml0aXZlU2VydmljZXNBdWRpb091dHB1dEZvcm1hdCBmcm9tICcuL3R5cGVzL0NvZ25pdGl2ZVNlcnZpY2VzQXVkaW9PdXRwdXRGb3JtYXQnO1xuaW1wb3J0IENvZ25pdGl2ZVNlcnZpY2VzQ3JlZGVudGlhbHMgZnJvbSAnLi90eXBlcy9Db2duaXRpdmVTZXJ2aWNlc0NyZWRlbnRpYWxzJztcbmltcG9ydCBDb2duaXRpdmVTZXJ2aWNlc1RleHROb3JtYWxpemF0aW9uIGZyb20gJy4vdHlwZXMvQ29nbml0aXZlU2VydmljZXNUZXh0Tm9ybWFsaXphdGlvbic7XG5pbXBvcnQgY3JlYXRlTWljcm9waG9uZUF1ZGlvQ29uZmlnQW5kQXVkaW9Db250ZXh0IGZyb20gJy4vc3BlZWNoL2NyZWF0ZU1pY3JvcGhvbmVBdWRpb0NvbmZpZ0FuZEF1ZGlvQ29udGV4dCc7XG5cbmNvbnN0IERFRkFVTFRfTEFOR1VBR0UgPSAnZW4tVVMnO1xuXG4vLyBUT0RPOiBXaGVuIHVzaW5nIERMU3BlZWNoIHZpYSBidW5kbGUsIHdlIHdpbGwgYWRkIG91ciBvd24gTWljcm9waG9uZUF1ZGlvQ29uZmlnLlxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlRGlyZWN0TGluZVNwZWVjaEFkYXB0ZXJzKHtcbiAgYXVkaW9Db25maWcsXG4gIGF1ZGlvQ29udGV4dCxcbiAgYXVkaW9JbnB1dERldmljZUlkLFxuICBlbmFibGVJbnRlcm5hbEhUVFBTdXBwb3J0LFxuICBlbmFibGVUZWxlbWV0cnksXG4gIGZldGNoQ3JlZGVudGlhbHMsXG4gIHNwZWVjaFJlY29nbml0aW9uRW5kcG9pbnRJZCxcbiAgc3BlZWNoUmVjb2duaXRpb25MYW5ndWFnZSA9IHdpbmRvdz8ubmF2aWdhdG9yPy5sYW5ndWFnZSB8fCBERUZBVUxUX0xBTkdVQUdFLFxuICBzcGVlY2hTeW50aGVzaXNEZXBsb3ltZW50SWQsXG4gIHNwZWVjaFN5bnRoZXNpc091dHB1dEZvcm1hdCxcbiAgdGV4dE5vcm1hbGl6YXRpb24sXG4gIHVzZXJJRCxcbiAgdXNlcm5hbWVcbn06IHtcbiAgYXVkaW9Db25maWc/OiBBdWRpb0NvbmZpZztcbiAgYXVkaW9Db250ZXh0PzogQXVkaW9Db250ZXh0O1xuICBhdWRpb0lucHV0RGV2aWNlSWQ/OiBzdHJpbmc7XG4gIGVuYWJsZUludGVybmFsSFRUUFN1cHBvcnQ/OiB0cnVlO1xuICBlbmFibGVUZWxlbWV0cnk/OiB0cnVlO1xuICBmZXRjaENyZWRlbnRpYWxzOiBDb2duaXRpdmVTZXJ2aWNlc0NyZWRlbnRpYWxzO1xuICBzcGVlY2hSZWNvZ25pdGlvbkVuZHBvaW50SWQ/OiBzdHJpbmc7XG4gIHNwZWVjaFJlY29nbml0aW9uTGFuZ3VhZ2U/OiBzdHJpbmc7XG4gIHNwZWVjaFN5bnRoZXNpc0RlcGxveW1lbnRJZD86IHN0cmluZztcbiAgc3BlZWNoU3ludGhlc2lzT3V0cHV0Rm9ybWF0PzogQ29nbml0aXZlU2VydmljZXNBdWRpb091dHB1dEZvcm1hdDtcbiAgdGV4dE5vcm1hbGl6YXRpb24/OiBDb2duaXRpdmVTZXJ2aWNlc1RleHROb3JtYWxpemF0aW9uO1xuICB1c2VySUQ/OiBzdHJpbmc7XG4gIHVzZXJuYW1lPzogc3RyaW5nO1xufSk6IHtcbiAgZGlyZWN0TGluZTogRGlyZWN0TGluZUpTQm90Q29ubmVjdGlvbjtcbiAgd2ViU3BlZWNoUG9ueWZpbGw6IFdlYlNwZWVjaFBvbnlmaWxsO1xufSB7XG4gIGlmIChhdWRpb0NvbmZpZykge1xuICAgIGF1ZGlvSW5wdXREZXZpY2VJZCAmJlxuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAnYm90ZnJhbWV3b3JrLXdlYmNoYXQ6IFwiYXVkaW9Db25maWdcIiBhbmQgXCJhdWRpb0lucHV0RGV2aWNlSWRcIiBjYW5ub3QgYmUgc2V0IGF0IHRoZSBzYW1lIHRpbWU7IGlnbm9yaW5nIFwiYXVkaW9JbnB1dERldmljZUlkXCIuJ1xuICAgICAgKTtcblxuICAgIGF1ZGlvQ29udGV4dCAmJlxuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAnYm90ZnJhbWV3b3JrLXdlYmNoYXQ6IFwiYXVkaW9Db25maWdcIiBhbmQgXCJhdWRpb0NvbnRleHRcIiBjYW5ub3QgYmUgc2V0IGF0IHRoZSBzYW1lIHRpbWU7IGlnbm9yaW5nIFwiYXVkaW9Db250ZXh0XCIgZm9yIHNwZWVjaCByZWNvZ25pdGlvbi4nXG4gICAgICApO1xuICB9IGVsc2UgaWYgKCF3aW5kb3cubmF2aWdhdG9yLm1lZGlhRGV2aWNlcykge1xuICAgIC8vIElmIHRoZSBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgb3IgYWxsb3cgbWljcm9waG9uZSBhY2Nlc3MsIHdlIHdpbGwgY29udGludWUgdG8gY3JlYXRlIERpcmVjdCBMaW5lIFNwZWVjaCBhZGFwdGVyIHdpdGhvdXQgY3VzdG9tIFwiYXVkaW9Db25maWdcIiBhbmQgXCJhdWRpb0NvbnRleHRcIi5cbiAgICAvLyBJbiBEaXJlY3QgTGluZSBTcGVlY2ggU0RLLCBpdCB3aWxsIGRpc2FibGUgc3BlZWNoIGZ1bmN0aW9uYWxpdHksIG9ubHkgbGVhdmluZyB0ZXh0IGNoYXQgYXZhaWxhYmxlIHZpYSB0aGUgcHJvdG9jb2wuXG4gICAgY29uc29sZS53YXJuKFxuICAgICAgJ2JvdGZyYW1ld29yay13ZWJjaGF0OiBZb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBvciBhbGxvdyBtaWNyb3Bob25lIGFjY2VzcyBvciB0aGUgcGFnZSBpcyBub3QgbG9hZGVkIHZpYSBIVFRQUyBvciBsb2NhbGhvc3QuIFNwZWVjaCBpcyBkaXNhYmxlZCBmb3IgRGlyZWN0IExpbmUgU3BlZWNoLiBIb3dldmVyLCB5b3UgbWF5IHBhc3MgYSBjdXN0b20gXCJhdWRpb0NvbmZpZ1wiIHRvIGVuYWJsZSBzcGVlY2ggaW4gdGhpcyBlbnZpcm9ubWVudC4nXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICAoeyBhdWRpb0NvbmZpZywgYXVkaW9Db250ZXh0IH0gPSBjcmVhdGVNaWNyb3Bob25lQXVkaW9Db25maWdBbmRBdWRpb0NvbnRleHQoe1xuICAgICAgYXVkaW9Db250ZXh0LFxuICAgICAgYXVkaW9JbnB1dERldmljZUlkLFxuICAgICAgZW5hYmxlVGVsZW1ldHJ5XG4gICAgfSkpO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUFkYXB0ZXJzKHtcbiAgICBhdWRpb0NvbmZpZyxcbiAgICBhdWRpb0NvbnRleHQsXG4gICAgZW5hYmxlSW50ZXJuYWxIVFRQU3VwcG9ydCxcbiAgICBlbmFibGVUZWxlbWV0cnksXG4gICAgZmV0Y2hDcmVkZW50aWFscyxcbiAgICBzcGVlY2hSZWNvZ25pdGlvbkVuZHBvaW50SWQsXG4gICAgc3BlZWNoUmVjb2duaXRpb25MYW5ndWFnZSxcbiAgICBzcGVlY2hTeW50aGVzaXNEZXBsb3ltZW50SWQsXG4gICAgc3BlZWNoU3ludGhlc2lzT3V0cHV0Rm9ybWF0LFxuICAgIHRleHROb3JtYWxpemF0aW9uLFxuICAgIHVzZXJJRCxcbiAgICB1c2VybmFtZVxuICB9KTtcbn1cbiJdfQ==