@azure/microsoft-playwright-testing 1.0.0-alpha.20250317.1 → 1.0.0-alpha.20250319.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 (597) hide show
  1. package/dist/{common → browser/common}/constants.d.ts +1 -1
  2. package/dist/browser/common/constants.d.ts.map +1 -0
  3. package/dist/browser/common/constants.js +226 -0
  4. package/dist/browser/common/constants.js.map +1 -0
  5. package/dist/browser/common/customerConfig.d.ts.map +1 -0
  6. package/dist/browser/common/customerConfig.js +13 -0
  7. package/dist/{common → browser/common}/customerConfig.js.map +1 -1
  8. package/dist/{common → browser/common}/entraIdAccessToken.d.ts +2 -2
  9. package/dist/browser/common/entraIdAccessToken.d.ts.map +1 -0
  10. package/dist/browser/common/entraIdAccessToken.js +71 -0
  11. package/dist/browser/common/entraIdAccessToken.js.map +1 -0
  12. package/dist/browser/common/environmentVariables.d.ts.map +1 -0
  13. package/dist/browser/common/environmentVariables.js +15 -0
  14. package/dist/browser/common/environmentVariables.js.map +1 -0
  15. package/dist/browser/common/executor.d.ts.map +1 -0
  16. package/dist/browser/common/executor.js +74 -0
  17. package/dist/browser/common/executor.js.map +1 -0
  18. package/dist/browser/common/httpService.d.ts.map +1 -0
  19. package/dist/browser/common/httpService.js +33 -0
  20. package/dist/browser/common/httpService.js.map +1 -0
  21. package/dist/browser/common/logger.d.ts.map +1 -0
  22. package/dist/browser/common/logger.js +6 -0
  23. package/dist/browser/common/logger.js.map +1 -0
  24. package/dist/browser/common/messages.d.ts.map +1 -0
  25. package/dist/browser/common/messages.js +37 -0
  26. package/dist/browser/common/messages.js.map +1 -0
  27. package/dist/browser/common/multimap.d.ts.map +1 -0
  28. package/dist/browser/common/multimap.js +60 -0
  29. package/dist/browser/common/multimap.js.map +1 -0
  30. package/dist/{common → browser/common}/playwrightServiceConfig.d.ts +1 -1
  31. package/dist/browser/common/playwrightServiceConfig.d.ts.map +1 -0
  32. package/dist/browser/common/playwrightServiceConfig.js +45 -0
  33. package/dist/browser/common/playwrightServiceConfig.js.map +1 -0
  34. package/dist/{common → browser/common}/types.d.ts +1 -1
  35. package/dist/browser/common/types.d.ts.map +1 -0
  36. package/dist/browser/common/types.js +4 -0
  37. package/dist/browser/common/types.js.map +1 -0
  38. package/dist/browser/core/global/playwright-service-global-setup.d.ts.map +1 -0
  39. package/dist/browser/core/global/playwright-service-global-setup.js +19 -0
  40. package/dist/browser/core/global/playwright-service-global-setup.js.map +1 -0
  41. package/dist/browser/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  42. package/dist/browser/core/global/playwright-service-global-teardown.js +19 -0
  43. package/dist/browser/core/global/playwright-service-global-teardown.js.map +1 -0
  44. package/dist/{core → browser/core}/playwrightService.d.ts +1 -1
  45. package/dist/browser/core/playwrightService.d.ts.map +1 -0
  46. package/dist/browser/core/playwrightService.js +190 -0
  47. package/dist/browser/core/playwrightService.js.map +1 -0
  48. package/dist/browser/core/playwrightServiceEntra.d.ts.map +1 -0
  49. package/dist/browser/core/playwrightServiceEntra.js +49 -0
  50. package/dist/browser/core/playwrightServiceEntra.js.map +1 -0
  51. package/dist/browser/core/playwrightServiceUtils.d.ts +3 -0
  52. package/dist/browser/core/playwrightServiceUtils.d.ts.map +1 -0
  53. package/dist/browser/core/playwrightServiceUtils.js +11 -0
  54. package/dist/browser/core/playwrightServiceUtils.js.map +1 -0
  55. package/dist/{index.d.ts → browser/index.d.ts} +3 -3
  56. package/dist/browser/index.d.ts.map +1 -0
  57. package/dist/browser/index.js +11 -0
  58. package/dist/browser/index.js.map +1 -0
  59. package/dist/browser/model/entraTokenDetails.d.ts.map +1 -0
  60. package/dist/browser/model/entraTokenDetails.js +5 -0
  61. package/dist/browser/model/entraTokenDetails.js.map +1 -0
  62. package/dist/browser/model/mptTokenDetails.d.ts.map +1 -0
  63. package/dist/browser/model/mptTokenDetails.js +10 -0
  64. package/dist/browser/model/mptTokenDetails.js.map +1 -0
  65. package/dist/browser/model/shard.d.ts.map +1 -0
  66. package/dist/browser/model/shard.js +19 -0
  67. package/dist/browser/model/shard.js.map +1 -0
  68. package/dist/browser/model/storageUri.d.ts.map +1 -0
  69. package/dist/browser/model/storageUri.js +18 -0
  70. package/dist/browser/model/storageUri.js.map +1 -0
  71. package/dist/{model → browser/model}/testResult.d.ts +1 -1
  72. package/dist/browser/model/testResult.d.ts.map +1 -0
  73. package/dist/browser/model/testResult.js +5 -0
  74. package/dist/browser/model/testResult.js.map +1 -0
  75. package/dist/{model → browser/model}/testRun.d.ts +1 -1
  76. package/dist/browser/model/testRun.d.ts.map +1 -0
  77. package/dist/browser/model/testRun.js +8 -0
  78. package/dist/browser/model/testRun.js.map +1 -0
  79. package/dist/browser/package.json +3 -0
  80. package/dist/{reporter → browser/reporter}/index.d.ts +1 -1
  81. package/dist/browser/reporter/index.d.ts.map +1 -0
  82. package/dist/browser/reporter/index.js +12 -0
  83. package/dist/browser/reporter/index.js.map +1 -0
  84. package/dist/{reporter → browser/reporter}/mptReporter.d.ts +1 -1
  85. package/dist/browser/reporter/mptReporter.d.ts.map +1 -0
  86. package/dist/browser/reporter/mptReporter.js +373 -0
  87. package/dist/browser/reporter/mptReporter.js.map +1 -0
  88. package/dist/browser/utils/cIInfoProvider.d.ts.map +1 -0
  89. package/dist/browser/utils/cIInfoProvider.js +101 -0
  90. package/dist/browser/utils/cIInfoProvider.js.map +1 -0
  91. package/dist/browser/utils/getPlaywrightVersion.d.ts +2 -0
  92. package/dist/browser/utils/getPlaywrightVersion.d.ts.map +1 -0
  93. package/dist/browser/utils/getPlaywrightVersion.js +19 -0
  94. package/dist/browser/utils/getPlaywrightVersion.js.map +1 -0
  95. package/dist/{utils → browser/utils}/packageManager.d.ts +1 -1
  96. package/dist/browser/utils/packageManager.d.ts.map +1 -0
  97. package/dist/browser/utils/packageManager.js +47 -0
  98. package/dist/browser/utils/packageManager.js.map +1 -0
  99. package/dist/browser/utils/parseJwt.d.ts +4 -0
  100. package/dist/browser/utils/parseJwt.d.ts.map +1 -0
  101. package/dist/browser/utils/parseJwt.js +16 -0
  102. package/dist/browser/utils/parseJwt.js.map +1 -0
  103. package/dist/{utils → browser/utils}/reporterUtils.d.ts +10 -10
  104. package/dist/browser/utils/reporterUtils.d.ts.map +1 -0
  105. package/dist/browser/utils/reporterUtils.js +585 -0
  106. package/dist/browser/utils/reporterUtils.js.map +1 -0
  107. package/dist/{utils → browser/utils}/serviceClient.d.ts +7 -7
  108. package/dist/browser/utils/serviceClient.d.ts.map +1 -0
  109. package/dist/browser/utils/serviceClient.js +103 -0
  110. package/dist/browser/utils/serviceClient.js.map +1 -0
  111. package/dist/browser/utils/storageClient.d.ts.map +1 -0
  112. package/dist/browser/utils/storageClient.js +37 -0
  113. package/dist/browser/utils/storageClient.js.map +1 -0
  114. package/dist/{utils → browser/utils}/utils.d.ts +3 -4
  115. package/dist/browser/utils/utils.d.ts.map +1 -0
  116. package/dist/browser/utils/utils.js +151 -0
  117. package/dist/browser/utils/utils.js.map +1 -0
  118. package/dist/commonjs/common/constants.d.ts +95 -0
  119. package/dist/commonjs/common/constants.d.ts.map +1 -0
  120. package/dist/commonjs/common/constants.js.map +1 -0
  121. package/dist/commonjs/common/customerConfig.d.ts +9 -0
  122. package/dist/commonjs/common/customerConfig.d.ts.map +1 -0
  123. package/dist/commonjs/common/customerConfig.js.map +1 -0
  124. package/dist/commonjs/common/entraIdAccessToken.d.ts +12 -0
  125. package/dist/commonjs/common/entraIdAccessToken.d.ts.map +1 -0
  126. package/dist/{common → commonjs/common}/entraIdAccessToken.js +22 -18
  127. package/dist/commonjs/common/entraIdAccessToken.js.map +1 -0
  128. package/dist/commonjs/common/environmentVariables.d.ts +13 -0
  129. package/dist/commonjs/common/environmentVariables.d.ts.map +1 -0
  130. package/dist/{common → commonjs/common}/environmentVariables.js +4 -4
  131. package/dist/commonjs/common/environmentVariables.js.map +1 -0
  132. package/dist/commonjs/common/executor.d.ts +2 -0
  133. package/dist/commonjs/common/executor.d.ts.map +1 -0
  134. package/dist/{common → commonjs/common}/executor.js +13 -13
  135. package/dist/commonjs/common/executor.js.map +1 -0
  136. package/dist/commonjs/common/httpService.d.ts +5 -0
  137. package/dist/commonjs/common/httpService.d.ts.map +1 -0
  138. package/dist/{common → commonjs/common}/httpService.js +4 -4
  139. package/dist/commonjs/common/httpService.js.map +1 -0
  140. package/dist/commonjs/common/logger.d.ts +3 -0
  141. package/dist/commonjs/common/logger.d.ts.map +1 -0
  142. package/dist/commonjs/common/logger.js.map +1 -0
  143. package/dist/commonjs/common/messages.d.ts +35 -0
  144. package/dist/commonjs/common/messages.d.ts.map +1 -0
  145. package/dist/commonjs/common/messages.js.map +1 -0
  146. package/dist/commonjs/common/multimap.d.ts +16 -0
  147. package/dist/commonjs/common/multimap.d.ts.map +1 -0
  148. package/dist/commonjs/common/multimap.js.map +1 -0
  149. package/dist/commonjs/common/playwrightServiceConfig.d.ts +13 -0
  150. package/dist/commonjs/common/playwrightServiceConfig.d.ts.map +1 -0
  151. package/dist/commonjs/common/playwrightServiceConfig.js +48 -0
  152. package/dist/commonjs/common/playwrightServiceConfig.js.map +1 -0
  153. package/{types/microsoft-playwright-testing.d.ts → dist/commonjs/common/types.d.ts} +226 -273
  154. package/dist/commonjs/common/types.d.ts.map +1 -0
  155. package/dist/commonjs/common/types.js.map +1 -0
  156. package/dist/commonjs/core/global/playwright-service-global-setup.d.ts +4 -0
  157. package/dist/commonjs/core/global/playwright-service-global-setup.d.ts.map +1 -0
  158. package/dist/commonjs/core/global/playwright-service-global-setup.js +22 -0
  159. package/dist/commonjs/core/global/playwright-service-global-setup.js.map +1 -0
  160. package/dist/commonjs/core/global/playwright-service-global-teardown.d.ts +4 -0
  161. package/dist/commonjs/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  162. package/dist/commonjs/core/global/playwright-service-global-teardown.js +22 -0
  163. package/dist/commonjs/core/global/playwright-service-global-teardown.js.map +1 -0
  164. package/dist/commonjs/core/playwrightService.d.ts +64 -0
  165. package/dist/commonjs/core/playwrightService.d.ts.map +1 -0
  166. package/dist/{core → commonjs/core}/playwrightService.js +44 -43
  167. package/dist/commonjs/core/playwrightService.js.map +1 -0
  168. package/dist/commonjs/core/playwrightServiceEntra.d.ts +16 -0
  169. package/dist/commonjs/core/playwrightServiceEntra.d.ts.map +1 -0
  170. package/dist/{core → commonjs/core}/playwrightServiceEntra.js +12 -12
  171. package/dist/commonjs/core/playwrightServiceEntra.js.map +1 -0
  172. package/dist/commonjs/core/playwrightServiceUtils-cjs.cjs.map +1 -0
  173. package/dist/commonjs/core/playwrightServiceUtils-cjs.d.cts.map +1 -0
  174. package/dist/commonjs/core/playwrightServiceUtils.d.ts +3 -0
  175. package/dist/commonjs/core/playwrightServiceUtils.js +10 -0
  176. package/dist/commonjs/index.d.ts +10 -0
  177. package/dist/commonjs/index.d.ts.map +1 -0
  178. package/dist/{index.js → commonjs/index.js} +9 -10
  179. package/dist/commonjs/index.js.map +1 -0
  180. package/dist/commonjs/model/entraTokenDetails.d.ts +5 -0
  181. package/dist/commonjs/model/entraTokenDetails.d.ts.map +1 -0
  182. package/dist/commonjs/model/entraTokenDetails.js.map +1 -0
  183. package/dist/commonjs/model/mptTokenDetails.d.ts +11 -0
  184. package/dist/commonjs/model/mptTokenDetails.d.ts.map +1 -0
  185. package/dist/commonjs/model/mptTokenDetails.js.map +1 -0
  186. package/dist/commonjs/model/shard.d.ts +41 -0
  187. package/dist/commonjs/model/shard.d.ts.map +1 -0
  188. package/dist/commonjs/model/shard.js.map +1 -0
  189. package/dist/commonjs/model/storageUri.d.ts +14 -0
  190. package/dist/commonjs/model/storageUri.d.ts.map +1 -0
  191. package/dist/commonjs/model/storageUri.js.map +1 -0
  192. package/dist/commonjs/model/testResult.d.ts +40 -0
  193. package/dist/commonjs/model/testResult.d.ts.map +1 -0
  194. package/dist/commonjs/model/testResult.js.map +1 -0
  195. package/dist/commonjs/model/testRun.d.ts +36 -0
  196. package/dist/commonjs/model/testRun.d.ts.map +1 -0
  197. package/dist/commonjs/model/testRun.js.map +1 -0
  198. package/dist/commonjs/package.json +3 -0
  199. package/dist/commonjs/reporter/index.d.ts +10 -0
  200. package/dist/commonjs/reporter/index.d.ts.map +1 -0
  201. package/dist/{reporter → commonjs/reporter}/index.js +2 -2
  202. package/dist/commonjs/reporter/index.js.map +1 -0
  203. package/{types/reporter/microsoft-playwright-testing.d.ts → dist/commonjs/reporter/mptReporter.d.ts} +100 -150
  204. package/dist/commonjs/reporter/mptReporter.d.ts.map +1 -0
  205. package/dist/{reporter → commonjs/reporter}/mptReporter.js +52 -52
  206. package/dist/commonjs/reporter/mptReporter.js.map +1 -0
  207. package/dist/{tsdoc-metadata.json → commonjs/tsdoc-metadata.json} +1 -1
  208. package/dist/commonjs/utils/cIInfoProvider.d.ts +25 -0
  209. package/dist/commonjs/utils/cIInfoProvider.d.ts.map +1 -0
  210. package/dist/commonjs/utils/cIInfoProvider.js.map +1 -0
  211. package/dist/commonjs/utils/getPlaywrightVersion.d.ts +2 -0
  212. package/dist/commonjs/utils/getPlaywrightVersion.d.ts.map +1 -0
  213. package/dist/commonjs/utils/getPlaywrightVersion.js +23 -0
  214. package/dist/commonjs/utils/getPlaywrightVersion.js.map +1 -0
  215. package/dist/commonjs/utils/packageManager.d.ts +15 -0
  216. package/dist/commonjs/utils/packageManager.d.ts.map +1 -0
  217. package/dist/commonjs/utils/packageManager.js.map +1 -0
  218. package/dist/commonjs/utils/parseJwt.d.ts +4 -0
  219. package/dist/commonjs/utils/parseJwt.d.ts.map +1 -0
  220. package/dist/commonjs/utils/parseJwt.js +21 -0
  221. package/dist/commonjs/utils/parseJwt.js.map +1 -0
  222. package/dist/commonjs/utils/reporterUtils.d.ts +60 -0
  223. package/dist/commonjs/utils/reporterUtils.d.ts.map +1 -0
  224. package/dist/{utils → commonjs/utils}/reporterUtils.js +47 -47
  225. package/dist/commonjs/utils/reporterUtils.js.map +1 -0
  226. package/dist/commonjs/utils/serviceClient.d.ts +25 -0
  227. package/dist/commonjs/utils/serviceClient.d.ts.map +1 -0
  228. package/dist/{utils → commonjs/utils}/serviceClient.js +19 -19
  229. package/dist/commonjs/utils/serviceClient.js.map +1 -0
  230. package/dist/commonjs/utils/storageClient.d.ts +6 -0
  231. package/dist/commonjs/utils/storageClient.d.ts.map +1 -0
  232. package/dist/{utils → commonjs/utils}/storageClient.js +7 -7
  233. package/dist/commonjs/utils/storageClient.js.map +1 -0
  234. package/dist/commonjs/utils/utils.d.ts +28 -0
  235. package/dist/commonjs/utils/utils.d.ts.map +1 -0
  236. package/dist/{utils → commonjs/utils}/utils.js +38 -60
  237. package/dist/commonjs/utils/utils.js.map +1 -0
  238. package/dist/esm/common/constants.d.ts +95 -0
  239. package/dist/esm/common/constants.d.ts.map +1 -0
  240. package/dist/esm/common/constants.js +226 -0
  241. package/dist/esm/common/constants.js.map +1 -0
  242. package/dist/esm/common/customerConfig.d.ts +9 -0
  243. package/dist/esm/common/customerConfig.d.ts.map +1 -0
  244. package/dist/esm/common/customerConfig.js +13 -0
  245. package/dist/esm/common/customerConfig.js.map +1 -0
  246. package/dist/esm/common/entraIdAccessToken.d.ts +12 -0
  247. package/dist/esm/common/entraIdAccessToken.d.ts.map +1 -0
  248. package/dist/esm/common/entraIdAccessToken.js +71 -0
  249. package/dist/esm/common/entraIdAccessToken.js.map +1 -0
  250. package/dist/esm/common/environmentVariables.d.ts +13 -0
  251. package/dist/esm/common/environmentVariables.d.ts.map +1 -0
  252. package/dist/esm/common/environmentVariables.js +15 -0
  253. package/dist/esm/common/environmentVariables.js.map +1 -0
  254. package/dist/esm/common/executor.d.ts +2 -0
  255. package/dist/esm/common/executor.d.ts.map +1 -0
  256. package/dist/esm/common/executor.js +74 -0
  257. package/dist/esm/common/executor.js.map +1 -0
  258. package/dist/esm/common/httpService.d.ts +5 -0
  259. package/dist/esm/common/httpService.d.ts.map +1 -0
  260. package/dist/esm/common/httpService.js +33 -0
  261. package/dist/esm/common/httpService.js.map +1 -0
  262. package/dist/esm/common/logger.d.ts +3 -0
  263. package/dist/esm/common/logger.d.ts.map +1 -0
  264. package/dist/esm/common/logger.js +6 -0
  265. package/dist/esm/common/logger.js.map +1 -0
  266. package/dist/esm/common/messages.d.ts +35 -0
  267. package/dist/esm/common/messages.d.ts.map +1 -0
  268. package/dist/esm/common/messages.js +37 -0
  269. package/dist/esm/common/messages.js.map +1 -0
  270. package/dist/esm/common/multimap.d.ts +16 -0
  271. package/dist/esm/common/multimap.d.ts.map +1 -0
  272. package/dist/esm/common/multimap.js +60 -0
  273. package/dist/esm/common/multimap.js.map +1 -0
  274. package/dist/esm/common/playwrightServiceConfig.d.ts +13 -0
  275. package/dist/esm/common/playwrightServiceConfig.d.ts.map +1 -0
  276. package/dist/esm/common/playwrightServiceConfig.js +45 -0
  277. package/dist/esm/common/playwrightServiceConfig.js.map +1 -0
  278. package/dist/esm/common/types.d.ts +226 -0
  279. package/dist/esm/common/types.d.ts.map +1 -0
  280. package/dist/esm/common/types.js +4 -0
  281. package/dist/esm/common/types.js.map +1 -0
  282. package/dist/esm/core/global/playwright-service-global-setup.d.ts +4 -0
  283. package/dist/esm/core/global/playwright-service-global-setup.d.ts.map +1 -0
  284. package/dist/esm/core/global/playwright-service-global-setup.js +19 -0
  285. package/dist/esm/core/global/playwright-service-global-setup.js.map +1 -0
  286. package/dist/esm/core/global/playwright-service-global-teardown.d.ts +4 -0
  287. package/dist/esm/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  288. package/dist/esm/core/global/playwright-service-global-teardown.js +19 -0
  289. package/dist/esm/core/global/playwright-service-global-teardown.js.map +1 -0
  290. package/dist/esm/core/playwrightService.d.ts +64 -0
  291. package/dist/esm/core/playwrightService.d.ts.map +1 -0
  292. package/dist/esm/core/playwrightService.js +190 -0
  293. package/dist/esm/core/playwrightService.js.map +1 -0
  294. package/dist/esm/core/playwrightServiceEntra.d.ts +16 -0
  295. package/dist/esm/core/playwrightServiceEntra.d.ts.map +1 -0
  296. package/dist/esm/core/playwrightServiceEntra.js +49 -0
  297. package/dist/esm/core/playwrightServiceEntra.js.map +1 -0
  298. package/dist/esm/core/playwrightServiceUtils.d.ts +3 -0
  299. package/dist/esm/core/playwrightServiceUtils.d.ts.map +1 -0
  300. package/dist/esm/core/playwrightServiceUtils.js +11 -0
  301. package/dist/esm/core/playwrightServiceUtils.js.map +1 -0
  302. package/dist/esm/index.d.ts +10 -0
  303. package/dist/esm/index.d.ts.map +1 -0
  304. package/dist/esm/index.js +11 -0
  305. package/dist/esm/index.js.map +1 -0
  306. package/dist/esm/model/entraTokenDetails.d.ts +5 -0
  307. package/dist/esm/model/entraTokenDetails.d.ts.map +1 -0
  308. package/dist/esm/model/entraTokenDetails.js +5 -0
  309. package/dist/esm/model/entraTokenDetails.js.map +1 -0
  310. package/dist/esm/model/mptTokenDetails.d.ts +11 -0
  311. package/dist/esm/model/mptTokenDetails.d.ts.map +1 -0
  312. package/dist/esm/model/mptTokenDetails.js +10 -0
  313. package/dist/esm/model/mptTokenDetails.js.map +1 -0
  314. package/dist/esm/model/shard.d.ts +41 -0
  315. package/dist/esm/model/shard.d.ts.map +1 -0
  316. package/dist/esm/model/shard.js +19 -0
  317. package/dist/esm/model/shard.js.map +1 -0
  318. package/dist/esm/model/storageUri.d.ts +14 -0
  319. package/dist/esm/model/storageUri.d.ts.map +1 -0
  320. package/dist/esm/model/storageUri.js +18 -0
  321. package/dist/esm/model/storageUri.js.map +1 -0
  322. package/dist/esm/model/testResult.d.ts +40 -0
  323. package/dist/esm/model/testResult.d.ts.map +1 -0
  324. package/dist/esm/model/testResult.js +5 -0
  325. package/dist/esm/model/testResult.js.map +1 -0
  326. package/dist/esm/model/testRun.d.ts +36 -0
  327. package/dist/esm/model/testRun.d.ts.map +1 -0
  328. package/dist/esm/model/testRun.js +8 -0
  329. package/dist/esm/model/testRun.js.map +1 -0
  330. package/dist/esm/package.json +3 -0
  331. package/dist/esm/reporter/index.d.ts +10 -0
  332. package/dist/esm/reporter/index.d.ts.map +1 -0
  333. package/dist/esm/reporter/index.js +12 -0
  334. package/dist/esm/reporter/index.js.map +1 -0
  335. package/dist/esm/reporter/mptReporter.d.ts +100 -0
  336. package/dist/esm/reporter/mptReporter.d.ts.map +1 -0
  337. package/dist/esm/reporter/mptReporter.js +373 -0
  338. package/dist/esm/reporter/mptReporter.js.map +1 -0
  339. package/dist/esm/utils/cIInfoProvider.d.ts +25 -0
  340. package/dist/esm/utils/cIInfoProvider.d.ts.map +1 -0
  341. package/dist/esm/utils/cIInfoProvider.js +101 -0
  342. package/dist/esm/utils/cIInfoProvider.js.map +1 -0
  343. package/dist/esm/utils/getPlaywrightVersion.d.ts +2 -0
  344. package/dist/esm/utils/getPlaywrightVersion.d.ts.map +1 -0
  345. package/dist/esm/utils/getPlaywrightVersion.js +19 -0
  346. package/dist/esm/utils/getPlaywrightVersion.js.map +1 -0
  347. package/dist/esm/utils/packageManager.d.ts +15 -0
  348. package/dist/esm/utils/packageManager.d.ts.map +1 -0
  349. package/dist/esm/utils/packageManager.js +47 -0
  350. package/dist/esm/utils/packageManager.js.map +1 -0
  351. package/dist/esm/utils/parseJwt.d.ts +4 -0
  352. package/dist/esm/utils/parseJwt.d.ts.map +1 -0
  353. package/dist/esm/utils/parseJwt.js +16 -0
  354. package/dist/esm/utils/parseJwt.js.map +1 -0
  355. package/dist/esm/utils/reporterUtils.d.ts +60 -0
  356. package/dist/esm/utils/reporterUtils.d.ts.map +1 -0
  357. package/dist/esm/utils/reporterUtils.js +585 -0
  358. package/dist/esm/utils/reporterUtils.js.map +1 -0
  359. package/dist/esm/utils/serviceClient.d.ts +25 -0
  360. package/dist/esm/utils/serviceClient.d.ts.map +1 -0
  361. package/dist/esm/utils/serviceClient.js +103 -0
  362. package/dist/esm/utils/serviceClient.js.map +1 -0
  363. package/dist/esm/utils/storageClient.d.ts +6 -0
  364. package/dist/esm/utils/storageClient.d.ts.map +1 -0
  365. package/dist/esm/utils/storageClient.js +37 -0
  366. package/dist/esm/utils/storageClient.js.map +1 -0
  367. package/dist/esm/utils/utils.d.ts +28 -0
  368. package/dist/esm/utils/utils.d.ts.map +1 -0
  369. package/dist/esm/utils/utils.js +151 -0
  370. package/dist/esm/utils/utils.js.map +1 -0
  371. package/dist/react-native/common/constants.d.ts +95 -0
  372. package/dist/react-native/common/constants.d.ts.map +1 -0
  373. package/dist/react-native/common/constants.js +226 -0
  374. package/dist/react-native/common/constants.js.map +1 -0
  375. package/dist/react-native/common/customerConfig.d.ts +9 -0
  376. package/dist/react-native/common/customerConfig.d.ts.map +1 -0
  377. package/dist/react-native/common/customerConfig.js +13 -0
  378. package/dist/react-native/common/customerConfig.js.map +1 -0
  379. package/dist/react-native/common/entraIdAccessToken.d.ts +12 -0
  380. package/dist/react-native/common/entraIdAccessToken.d.ts.map +1 -0
  381. package/dist/react-native/common/entraIdAccessToken.js +71 -0
  382. package/dist/react-native/common/entraIdAccessToken.js.map +1 -0
  383. package/dist/react-native/common/environmentVariables.d.ts +13 -0
  384. package/dist/react-native/common/environmentVariables.d.ts.map +1 -0
  385. package/dist/react-native/common/environmentVariables.js +15 -0
  386. package/dist/react-native/common/environmentVariables.js.map +1 -0
  387. package/dist/react-native/common/executor.d.ts +2 -0
  388. package/dist/react-native/common/executor.d.ts.map +1 -0
  389. package/dist/react-native/common/executor.js +74 -0
  390. package/dist/react-native/common/executor.js.map +1 -0
  391. package/dist/react-native/common/httpService.d.ts +5 -0
  392. package/dist/react-native/common/httpService.d.ts.map +1 -0
  393. package/dist/react-native/common/httpService.js +33 -0
  394. package/dist/react-native/common/httpService.js.map +1 -0
  395. package/dist/react-native/common/logger.d.ts +3 -0
  396. package/dist/react-native/common/logger.d.ts.map +1 -0
  397. package/dist/react-native/common/logger.js +6 -0
  398. package/dist/react-native/common/logger.js.map +1 -0
  399. package/dist/react-native/common/messages.d.ts +35 -0
  400. package/dist/react-native/common/messages.d.ts.map +1 -0
  401. package/dist/react-native/common/messages.js +37 -0
  402. package/dist/react-native/common/messages.js.map +1 -0
  403. package/dist/react-native/common/multimap.d.ts +16 -0
  404. package/dist/react-native/common/multimap.d.ts.map +1 -0
  405. package/dist/react-native/common/multimap.js +60 -0
  406. package/dist/react-native/common/multimap.js.map +1 -0
  407. package/dist/react-native/common/playwrightServiceConfig.d.ts +13 -0
  408. package/dist/react-native/common/playwrightServiceConfig.d.ts.map +1 -0
  409. package/dist/react-native/common/playwrightServiceConfig.js +45 -0
  410. package/dist/react-native/common/playwrightServiceConfig.js.map +1 -0
  411. package/dist/react-native/common/types.d.ts +226 -0
  412. package/dist/react-native/common/types.d.ts.map +1 -0
  413. package/dist/react-native/common/types.js +4 -0
  414. package/dist/react-native/common/types.js.map +1 -0
  415. package/dist/react-native/core/global/playwright-service-global-setup.d.ts +4 -0
  416. package/dist/react-native/core/global/playwright-service-global-setup.d.ts.map +1 -0
  417. package/dist/react-native/core/global/playwright-service-global-setup.js +19 -0
  418. package/dist/react-native/core/global/playwright-service-global-setup.js.map +1 -0
  419. package/dist/react-native/core/global/playwright-service-global-teardown.d.ts +4 -0
  420. package/dist/react-native/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  421. package/dist/react-native/core/global/playwright-service-global-teardown.js +19 -0
  422. package/dist/react-native/core/global/playwright-service-global-teardown.js.map +1 -0
  423. package/dist/react-native/core/playwrightService.d.ts +64 -0
  424. package/dist/react-native/core/playwrightService.d.ts.map +1 -0
  425. package/dist/react-native/core/playwrightService.js +190 -0
  426. package/dist/react-native/core/playwrightService.js.map +1 -0
  427. package/dist/react-native/core/playwrightServiceEntra.d.ts +16 -0
  428. package/dist/react-native/core/playwrightServiceEntra.d.ts.map +1 -0
  429. package/dist/react-native/core/playwrightServiceEntra.js +49 -0
  430. package/dist/react-native/core/playwrightServiceEntra.js.map +1 -0
  431. package/dist/react-native/core/playwrightServiceUtils.d.ts +3 -0
  432. package/dist/react-native/core/playwrightServiceUtils.d.ts.map +1 -0
  433. package/dist/react-native/core/playwrightServiceUtils.js +11 -0
  434. package/dist/react-native/core/playwrightServiceUtils.js.map +1 -0
  435. package/dist/react-native/index.d.ts +10 -0
  436. package/dist/react-native/index.d.ts.map +1 -0
  437. package/dist/react-native/index.js +11 -0
  438. package/dist/react-native/index.js.map +1 -0
  439. package/dist/react-native/model/entraTokenDetails.d.ts +5 -0
  440. package/dist/react-native/model/entraTokenDetails.d.ts.map +1 -0
  441. package/dist/react-native/model/entraTokenDetails.js +5 -0
  442. package/dist/react-native/model/entraTokenDetails.js.map +1 -0
  443. package/dist/react-native/model/mptTokenDetails.d.ts +11 -0
  444. package/dist/react-native/model/mptTokenDetails.d.ts.map +1 -0
  445. package/dist/react-native/model/mptTokenDetails.js +10 -0
  446. package/dist/react-native/model/mptTokenDetails.js.map +1 -0
  447. package/dist/react-native/model/shard.d.ts +41 -0
  448. package/dist/react-native/model/shard.d.ts.map +1 -0
  449. package/dist/react-native/model/shard.js +19 -0
  450. package/dist/react-native/model/shard.js.map +1 -0
  451. package/dist/react-native/model/storageUri.d.ts +14 -0
  452. package/dist/react-native/model/storageUri.d.ts.map +1 -0
  453. package/dist/react-native/model/storageUri.js +18 -0
  454. package/dist/react-native/model/storageUri.js.map +1 -0
  455. package/dist/react-native/model/testResult.d.ts +40 -0
  456. package/dist/react-native/model/testResult.d.ts.map +1 -0
  457. package/dist/react-native/model/testResult.js +5 -0
  458. package/dist/react-native/model/testResult.js.map +1 -0
  459. package/dist/react-native/model/testRun.d.ts +36 -0
  460. package/dist/react-native/model/testRun.d.ts.map +1 -0
  461. package/dist/react-native/model/testRun.js +8 -0
  462. package/dist/react-native/model/testRun.js.map +1 -0
  463. package/dist/react-native/package.json +3 -0
  464. package/dist/react-native/reporter/index.d.ts +10 -0
  465. package/dist/react-native/reporter/index.d.ts.map +1 -0
  466. package/dist/react-native/reporter/index.js +12 -0
  467. package/dist/react-native/reporter/index.js.map +1 -0
  468. package/dist/react-native/reporter/mptReporter.d.ts +100 -0
  469. package/dist/react-native/reporter/mptReporter.d.ts.map +1 -0
  470. package/dist/react-native/reporter/mptReporter.js +373 -0
  471. package/dist/react-native/reporter/mptReporter.js.map +1 -0
  472. package/dist/react-native/utils/cIInfoProvider.d.ts +25 -0
  473. package/dist/react-native/utils/cIInfoProvider.d.ts.map +1 -0
  474. package/dist/react-native/utils/cIInfoProvider.js +101 -0
  475. package/dist/react-native/utils/cIInfoProvider.js.map +1 -0
  476. package/dist/react-native/utils/getPlaywrightVersion.d.ts +2 -0
  477. package/dist/react-native/utils/getPlaywrightVersion.d.ts.map +1 -0
  478. package/dist/react-native/utils/getPlaywrightVersion.js +19 -0
  479. package/dist/react-native/utils/getPlaywrightVersion.js.map +1 -0
  480. package/dist/react-native/utils/packageManager.d.ts +15 -0
  481. package/dist/react-native/utils/packageManager.d.ts.map +1 -0
  482. package/dist/react-native/utils/packageManager.js +47 -0
  483. package/dist/react-native/utils/packageManager.js.map +1 -0
  484. package/dist/react-native/utils/parseJwt.d.ts +4 -0
  485. package/dist/react-native/utils/parseJwt.d.ts.map +1 -0
  486. package/dist/react-native/utils/parseJwt.js +16 -0
  487. package/dist/react-native/utils/parseJwt.js.map +1 -0
  488. package/dist/react-native/utils/reporterUtils.d.ts +60 -0
  489. package/dist/react-native/utils/reporterUtils.d.ts.map +1 -0
  490. package/dist/react-native/utils/reporterUtils.js +585 -0
  491. package/dist/react-native/utils/reporterUtils.js.map +1 -0
  492. package/dist/react-native/utils/serviceClient.d.ts +25 -0
  493. package/dist/react-native/utils/serviceClient.d.ts.map +1 -0
  494. package/dist/react-native/utils/serviceClient.js +103 -0
  495. package/dist/react-native/utils/serviceClient.js.map +1 -0
  496. package/dist/react-native/utils/storageClient.d.ts +6 -0
  497. package/dist/react-native/utils/storageClient.d.ts.map +1 -0
  498. package/dist/react-native/utils/storageClient.js +37 -0
  499. package/dist/react-native/utils/storageClient.js.map +1 -0
  500. package/dist/react-native/utils/utils.d.ts +28 -0
  501. package/dist/react-native/utils/utils.d.ts.map +1 -0
  502. package/dist/react-native/utils/utils.js +151 -0
  503. package/dist/react-native/utils/utils.js.map +1 -0
  504. package/package.json +73 -28
  505. package/CHANGELOG.md +0 -88
  506. package/dist/common/constants.d.ts.map +0 -1
  507. package/dist/common/constants.js.map +0 -1
  508. package/dist/common/customerConfig.d.ts.map +0 -1
  509. package/dist/common/entraIdAccessToken.d.ts.map +0 -1
  510. package/dist/common/entraIdAccessToken.js.map +0 -1
  511. package/dist/common/environmentVariables.d.ts.map +0 -1
  512. package/dist/common/environmentVariables.js.map +0 -1
  513. package/dist/common/executor.d.ts.map +0 -1
  514. package/dist/common/executor.js.map +0 -1
  515. package/dist/common/httpService.d.ts.map +0 -1
  516. package/dist/common/httpService.js.map +0 -1
  517. package/dist/common/logger.d.ts.map +0 -1
  518. package/dist/common/logger.js.map +0 -1
  519. package/dist/common/messages.d.ts.map +0 -1
  520. package/dist/common/messages.js.map +0 -1
  521. package/dist/common/multimap.d.ts.map +0 -1
  522. package/dist/common/multimap.js.map +0 -1
  523. package/dist/common/playwrightServiceConfig.d.ts.map +0 -1
  524. package/dist/common/playwrightServiceConfig.js +0 -48
  525. package/dist/common/playwrightServiceConfig.js.map +0 -1
  526. package/dist/common/types.d.ts.map +0 -1
  527. package/dist/common/types.js.map +0 -1
  528. package/dist/core/global/playwright-service-global-setup.d.ts.map +0 -1
  529. package/dist/core/global/playwright-service-global-setup.js +0 -22
  530. package/dist/core/global/playwright-service-global-setup.js.map +0 -1
  531. package/dist/core/global/playwright-service-global-teardown.d.ts.map +0 -1
  532. package/dist/core/global/playwright-service-global-teardown.js +0 -22
  533. package/dist/core/global/playwright-service-global-teardown.js.map +0 -1
  534. package/dist/core/playwrightService.d.ts.map +0 -1
  535. package/dist/core/playwrightService.js.map +0 -1
  536. package/dist/core/playwrightServiceEntra.d.ts.map +0 -1
  537. package/dist/core/playwrightServiceEntra.js.map +0 -1
  538. package/dist/index.d.ts.map +0 -1
  539. package/dist/index.js.map +0 -1
  540. package/dist/model/entraTokenDetails.d.ts.map +0 -1
  541. package/dist/model/entraTokenDetails.js.map +0 -1
  542. package/dist/model/mptTokenDetails.d.ts.map +0 -1
  543. package/dist/model/mptTokenDetails.js.map +0 -1
  544. package/dist/model/shard.d.ts.map +0 -1
  545. package/dist/model/shard.js.map +0 -1
  546. package/dist/model/storageUri.d.ts.map +0 -1
  547. package/dist/model/storageUri.js.map +0 -1
  548. package/dist/model/testResult.d.ts.map +0 -1
  549. package/dist/model/testResult.js.map +0 -1
  550. package/dist/model/testRun.d.ts.map +0 -1
  551. package/dist/model/testRun.js.map +0 -1
  552. package/dist/reporter/index.d.ts.map +0 -1
  553. package/dist/reporter/index.js.map +0 -1
  554. package/dist/reporter/mptReporter.d.ts.map +0 -1
  555. package/dist/reporter/mptReporter.js.map +0 -1
  556. package/dist/utils/cIInfoProvider.d.ts.map +0 -1
  557. package/dist/utils/cIInfoProvider.js.map +0 -1
  558. package/dist/utils/packageManager.d.ts.map +0 -1
  559. package/dist/utils/packageManager.js.map +0 -1
  560. package/dist/utils/reporterUtils.d.ts.map +0 -1
  561. package/dist/utils/reporterUtils.js.map +0 -1
  562. package/dist/utils/serviceClient.d.ts.map +0 -1
  563. package/dist/utils/serviceClient.js.map +0 -1
  564. package/dist/utils/storageClient.d.ts.map +0 -1
  565. package/dist/utils/storageClient.js.map +0 -1
  566. package/dist/utils/utils.d.ts.map +0 -1
  567. package/dist/utils/utils.js.map +0 -1
  568. /package/dist/{common → browser/common}/customerConfig.d.ts +0 -0
  569. /package/dist/{common → browser/common}/environmentVariables.d.ts +0 -0
  570. /package/dist/{common → browser/common}/executor.d.ts +0 -0
  571. /package/dist/{common → browser/common}/httpService.d.ts +0 -0
  572. /package/dist/{common → browser/common}/logger.d.ts +0 -0
  573. /package/dist/{common → browser/common}/messages.d.ts +0 -0
  574. /package/dist/{common → browser/common}/multimap.d.ts +0 -0
  575. /package/dist/{core → browser/core}/global/playwright-service-global-setup.d.ts +0 -0
  576. /package/dist/{core → browser/core}/global/playwright-service-global-teardown.d.ts +0 -0
  577. /package/dist/{core → browser/core}/playwrightServiceEntra.d.ts +0 -0
  578. /package/dist/{model → browser/model}/entraTokenDetails.d.ts +0 -0
  579. /package/dist/{model → browser/model}/mptTokenDetails.d.ts +0 -0
  580. /package/dist/{model → browser/model}/shard.d.ts +0 -0
  581. /package/dist/{model → browser/model}/storageUri.d.ts +0 -0
  582. /package/dist/{utils → browser/utils}/cIInfoProvider.d.ts +0 -0
  583. /package/dist/{utils → browser/utils}/storageClient.d.ts +0 -0
  584. /package/dist/{common → commonjs/common}/constants.js +0 -0
  585. /package/dist/{common → commonjs/common}/customerConfig.js +0 -0
  586. /package/dist/{common → commonjs/common}/logger.js +0 -0
  587. /package/dist/{common → commonjs/common}/messages.js +0 -0
  588. /package/dist/{common → commonjs/common}/multimap.js +0 -0
  589. /package/dist/{common → commonjs/common}/types.js +0 -0
  590. /package/dist/{model → commonjs/model}/entraTokenDetails.js +0 -0
  591. /package/dist/{model → commonjs/model}/mptTokenDetails.js +0 -0
  592. /package/dist/{model → commonjs/model}/shard.js +0 -0
  593. /package/dist/{model → commonjs/model}/storageUri.js +0 -0
  594. /package/dist/{model → commonjs/model}/testResult.js +0 -0
  595. /package/dist/{model → commonjs/model}/testRun.js +0 -0
  596. /package/dist/{utils → commonjs/utils}/cIInfoProvider.js +0 -0
  597. /package/dist/{utils → commonjs/utils}/packageManager.js +0 -0
@@ -0,0 +1,28 @@
1
+ import type { VersionInfo } from "../common/types.js";
2
+ import type { TokenCredential } from "@azure/identity";
3
+ export { getPlaywrightVersion } from "./getPlaywrightVersion.js";
4
+ export { parseJwt } from "./parseJwt.js";
5
+ export declare const exitWithFailureMessage: (error: {
6
+ key: string;
7
+ message: string;
8
+ }) => never;
9
+ export declare const populateValuesFromServiceUrl: () => {
10
+ region: string;
11
+ accountId: string;
12
+ } | null;
13
+ export declare const getAccessToken: () => string | undefined;
14
+ export declare const getServiceBaseURL: () => string | undefined;
15
+ export declare const getAndSetRunId: () => string;
16
+ export declare const getServiceWSEndpoint: (runId: string, os: string) => string;
17
+ export declare const validateServiceUrl: () => void;
18
+ export declare const validateMptPAT: (validationFailureCallback: (error: {
19
+ key: string;
20
+ message: string;
21
+ }) => void) => void;
22
+ export declare const warnIfAccessTokenCloseToExpiry: () => void;
23
+ export declare const fetchOrValidateAccessToken: (credential?: TokenCredential) => Promise<string>;
24
+ export declare const emitReportingUrl: () => void;
25
+ export declare const getPackageVersion: () => string;
26
+ export declare const getVersionInfo: (version: string) => VersionInfo;
27
+ export declare const validatePlaywrightVersion: () => void;
28
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAUlE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AASvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,eAAO,MAAM,sBAAsB,GAAI,OAAO;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,KAAG,KAKhF,CAAC;AAEF,eAAO,MAAM,4BAA4B,QAAO;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAevF,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,MAAM,GAAG,SAE1C,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,MAAM,GAAG,SAE7C,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,MAIjC,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,OAAO,MAAM,EAAE,IAAI,MAAM,KAAG,MAEhE,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAO,IAKrC,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,2BAA2B,CAAC,KAAK,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,KAC3E,IAqBF,CAAC;AAYF,eAAO,MAAM,8BAA8B,QAAO,IAOjD,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAU,aAAa,eAAe,KAAG,OAAO,CAAC,MAAM,CAS7F,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,IAUnC,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,MASpC,CAAC;AACF,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,WAYhD,CAAC;AAEF,eAAO,MAAM,yBAAyB,QAAO,IAc5C,CAAC"}
@@ -2,16 +2,22 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT License.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.validatePlaywrightVersion = exports.getVersionInfo = exports.getPackageVersion = exports.getPlaywrightVersion = exports.emitReportingUrl = exports.fetchOrValidateAccessToken = exports.warnIfAccessTokenCloseToExpiry = exports.validateMptPAT = exports.validateServiceUrl = exports.getServiceWSEndpoint = exports.getAndSetRunId = exports.getServiceBaseURL = exports.getAccessToken = exports.parseJwt = exports.populateValuesFromServiceUrl = exports.base64UrlDecode = exports.exitWithFailureMessage = void 0;
5
+ exports.validatePlaywrightVersion = exports.getVersionInfo = exports.getPackageVersion = exports.emitReportingUrl = exports.fetchOrValidateAccessToken = exports.warnIfAccessTokenCloseToExpiry = exports.validateMptPAT = exports.validateServiceUrl = exports.getServiceWSEndpoint = exports.getAndSetRunId = exports.getServiceBaseURL = exports.getAccessToken = exports.populateValuesFromServiceUrl = exports.exitWithFailureMessage = exports.parseJwt = exports.getPlaywrightVersion = void 0;
6
6
  const tslib_1 = require("tslib");
7
- const constants_1 = require("../common/constants");
8
- const messages_1 = require("../common/messages");
9
- const entraIdAccessToken_1 = require("../common/entraIdAccessToken");
10
- const logger_1 = require("../common/logger");
11
- const reporterUtils_1 = tslib_1.__importDefault(require("./reporterUtils"));
12
- const cIInfoProvider_1 = require("./cIInfoProvider");
13
- const packageManager_1 = require("./packageManager");
14
- const child_process_1 = require("child_process");
7
+ const constants_js_1 = require("../common/constants.js");
8
+ const messages_js_1 = require("../common/messages.js");
9
+ const logger_js_1 = require("../common/logger.js");
10
+ const reporterUtils_js_1 = tslib_1.__importDefault(require("./reporterUtils.js"));
11
+ const cIInfoProvider_js_1 = require("./cIInfoProvider.js");
12
+ const process = tslib_1.__importStar(require("node:process"));
13
+ const parseJwt_js_1 = require("./parseJwt.js");
14
+ const getPlaywrightVersion_js_1 = require("./getPlaywrightVersion.js");
15
+ const entraIdAccessToken_js_1 = require("../common/entraIdAccessToken.js");
16
+ // Re-exporting for backward compatibility
17
+ var getPlaywrightVersion_js_2 = require("./getPlaywrightVersion.js");
18
+ Object.defineProperty(exports, "getPlaywrightVersion", { enumerable: true, get: function () { return getPlaywrightVersion_js_2.getPlaywrightVersion; } });
19
+ var parseJwt_js_2 = require("./parseJwt.js");
20
+ Object.defineProperty(exports, "parseJwt", { enumerable: true, get: function () { return parseJwt_js_2.parseJwt; } });
15
21
  const exitWithFailureMessage = (error) => {
16
22
  console.log();
17
23
  console.error(error.message);
@@ -19,16 +25,10 @@ const exitWithFailureMessage = (error) => {
19
25
  process.exit(1);
20
26
  };
21
27
  exports.exitWithFailureMessage = exitWithFailureMessage;
22
- const base64UrlDecode = (base64Url) => {
23
- const base64 = base64Url.replace(/-/g, "+").replace(/_/g, "/");
24
- const buffer = Buffer.from(base64, "base64");
25
- return buffer.toString("utf-8");
26
- };
27
- exports.base64UrlDecode = base64UrlDecode;
28
28
  const populateValuesFromServiceUrl = () => {
29
29
  // Service URL format: wss://<region>.api.playwright.microsoft.com/accounts/<workspace-id>/browsers
30
30
  const url = process.env["PLAYWRIGHT_SERVICE_URL"];
31
- if (!reporterUtils_1.default.isNullOrEmpty(url)) {
31
+ if (!reporterUtils_js_1.default.isNullOrEmpty(url)) {
32
32
  const parts = url.split("/");
33
33
  if (parts.length > 2) {
34
34
  const subdomainParts = parts[2].split(".");
@@ -40,37 +40,28 @@ const populateValuesFromServiceUrl = () => {
40
40
  return null;
41
41
  };
42
42
  exports.populateValuesFromServiceUrl = populateValuesFromServiceUrl;
43
- const parseJwt = (token) => {
44
- const parts = token.split(".");
45
- if (parts.length !== 3) {
46
- throw new Error("Invalid JWT token.");
47
- }
48
- const payload = (0, exports.base64UrlDecode)(parts[1]);
49
- return JSON.parse(payload);
50
- };
51
- exports.parseJwt = parseJwt;
52
43
  const getAccessToken = () => {
53
- return process.env[constants_1.ServiceEnvironmentVariable.PLAYWRIGHT_SERVICE_ACCESS_TOKEN];
44
+ return process.env[constants_js_1.ServiceEnvironmentVariable.PLAYWRIGHT_SERVICE_ACCESS_TOKEN];
54
45
  };
55
46
  exports.getAccessToken = getAccessToken;
56
47
  const getServiceBaseURL = () => {
57
- return process.env[constants_1.ServiceEnvironmentVariable.PLAYWRIGHT_SERVICE_URL];
48
+ return process.env[constants_js_1.ServiceEnvironmentVariable.PLAYWRIGHT_SERVICE_URL];
58
49
  };
59
50
  exports.getServiceBaseURL = getServiceBaseURL;
60
51
  const getAndSetRunId = () => {
61
- const runId = reporterUtils_1.default.getRunId(cIInfoProvider_1.CIInfoProvider.getCIInfo());
62
- process.env[constants_1.InternalEnvironmentVariables.MPT_SERVICE_RUN_ID] = runId;
52
+ const runId = reporterUtils_js_1.default.getRunId(cIInfoProvider_js_1.CIInfoProvider.getCIInfo());
53
+ process.env[constants_js_1.InternalEnvironmentVariables.MPT_SERVICE_RUN_ID] = runId;
63
54
  return runId;
64
55
  };
65
56
  exports.getAndSetRunId = getAndSetRunId;
66
57
  const getServiceWSEndpoint = (runId, os) => {
67
- return `${(0, exports.getServiceBaseURL)()}?runId=${encodeURIComponent(runId)}&os=${os}&api-version=${constants_1.API_VERSION}`;
58
+ return `${(0, exports.getServiceBaseURL)()}?runId=${encodeURIComponent(runId)}&os=${os}&api-version=${constants_js_1.API_VERSION}`;
68
59
  };
69
60
  exports.getServiceWSEndpoint = getServiceWSEndpoint;
70
61
  const validateServiceUrl = () => {
71
62
  const serviceUrl = (0, exports.getServiceBaseURL)();
72
63
  if (!serviceUrl) {
73
- (0, exports.exitWithFailureMessage)(messages_1.ServiceErrorMessageConstants.NO_SERVICE_URL_ERROR);
64
+ (0, exports.exitWithFailureMessage)(messages_js_1.ServiceErrorMessageConstants.NO_SERVICE_URL_ERROR);
74
65
  }
75
66
  };
76
67
  exports.validateServiceUrl = validateServiceUrl;
@@ -79,37 +70,37 @@ const validateMptPAT = (validationFailureCallback) => {
79
70
  const accessToken = (0, exports.getAccessToken)();
80
71
  const result = (0, exports.populateValuesFromServiceUrl)();
81
72
  if (!accessToken) {
82
- validationFailureCallback(messages_1.ServiceErrorMessageConstants.NO_AUTH_ERROR);
73
+ validationFailureCallback(messages_js_1.ServiceErrorMessageConstants.NO_AUTH_ERROR);
83
74
  }
84
- const claims = (0, exports.parseJwt)(accessToken);
75
+ const claims = (0, parseJwt_js_1.parseJwt)(accessToken);
85
76
  if (!claims.exp) {
86
- validationFailureCallback(messages_1.ServiceErrorMessageConstants.INVALID_MPT_PAT_ERROR);
77
+ validationFailureCallback(messages_js_1.ServiceErrorMessageConstants.INVALID_MPT_PAT_ERROR);
87
78
  }
88
79
  if (Date.now() >= claims.exp * 1000) {
89
- validationFailureCallback(messages_1.ServiceErrorMessageConstants.EXPIRED_MPT_PAT_ERROR);
80
+ validationFailureCallback(messages_js_1.ServiceErrorMessageConstants.EXPIRED_MPT_PAT_ERROR);
90
81
  }
91
82
  if (result.accountId !== claims.aid) {
92
- validationFailureCallback(messages_1.ServiceErrorMessageConstants.WORKSPACE_MISMATCH_ERROR);
83
+ validationFailureCallback(messages_js_1.ServiceErrorMessageConstants.WORKSPACE_MISMATCH_ERROR);
93
84
  }
94
85
  }
95
86
  catch (err) {
96
- logger_1.coreLogger.error(err);
97
- (0, exports.exitWithFailureMessage)(messages_1.ServiceErrorMessageConstants.INVALID_MPT_PAT_ERROR);
87
+ logger_js_1.coreLogger.error(err);
88
+ (0, exports.exitWithFailureMessage)(messages_js_1.ServiceErrorMessageConstants.INVALID_MPT_PAT_ERROR);
98
89
  }
99
90
  };
100
91
  exports.validateMptPAT = validateMptPAT;
101
92
  const isTokenExpiringSoon = (expirationTime, currentTime) => {
102
- return expirationTime * 1000 - currentTime <= constants_1.Constants.sevenDaysInMs;
93
+ return expirationTime * 1000 - currentTime <= constants_js_1.Constants.sevenDaysInMs;
103
94
  };
104
95
  const warnAboutTokenExpiry = (expirationTime, currentTime) => {
105
- const daysToExpiration = Math.ceil((expirationTime * 1000 - currentTime) / constants_1.Constants.oneDayInMs);
96
+ const daysToExpiration = Math.ceil((expirationTime * 1000 - currentTime) / constants_js_1.Constants.oneDayInMs);
106
97
  const expirationDate = new Date(expirationTime * 1000).toLocaleDateString();
107
98
  const expirationWarning = `Warning: The access token used for this test run will expire in ${daysToExpiration} days on ${expirationDate}. Generate a new token from the portal to avoid failures. For a simpler, more secure solution, switch to Microsoft Entra ID and eliminate token management. https://learn.microsoft.com/en-us/entra/identity/`;
108
99
  console.warn(expirationWarning);
109
100
  };
110
101
  const warnIfAccessTokenCloseToExpiry = () => {
111
102
  const accessToken = (0, exports.getAccessToken)();
112
- const claims = (0, exports.parseJwt)(accessToken);
103
+ const claims = (0, parseJwt_js_1.parseJwt)(accessToken);
113
104
  const currentTime = Date.now();
114
105
  if (isTokenExpiringSoon(claims.exp, currentTime)) {
115
106
  warnAboutTokenExpiry(claims.exp, currentTime);
@@ -117,12 +108,12 @@ const warnIfAccessTokenCloseToExpiry = () => {
117
108
  };
118
109
  exports.warnIfAccessTokenCloseToExpiry = warnIfAccessTokenCloseToExpiry;
119
110
  const fetchOrValidateAccessToken = async (credential) => {
120
- const entraIdAccessToken = new entraIdAccessToken_1.EntraIdAccessToken(credential);
111
+ const entraIdAccessToken = (0, entraIdAccessToken_js_1.createEntraIdAccessToken)(credential);
121
112
  if (entraIdAccessToken.token && entraIdAccessToken.doesEntraIdAccessTokenNeedRotation()) {
122
113
  await entraIdAccessToken.fetchEntraIdAccessToken();
123
114
  }
124
115
  if (!(0, exports.getAccessToken)()) {
125
- throw new Error(messages_1.ServiceErrorMessageConstants.NO_AUTH_ERROR.message);
116
+ throw new Error(messages_js_1.ServiceErrorMessageConstants.NO_AUTH_ERROR.message);
126
117
  }
127
118
  return (0, exports.getAccessToken)();
128
119
  };
@@ -133,24 +124,11 @@ const emitReportingUrl = () => {
133
124
  const match = url === null || url === void 0 ? void 0 : url.match(regex);
134
125
  if (match && match.length >= 3) {
135
126
  const [, region, domain] = match;
136
- process.env[constants_1.InternalEnvironmentVariables.MPT_SERVICE_REPORTING_URL] =
127
+ process.env[constants_js_1.InternalEnvironmentVariables.MPT_SERVICE_REPORTING_URL] =
137
128
  `https://${region}.reporting.api.${domain}`;
138
129
  }
139
130
  };
140
131
  exports.emitReportingUrl = emitReportingUrl;
141
- const getPlaywrightVersion = () => {
142
- if (process.env[constants_1.InternalEnvironmentVariables.MPT_PLAYWRIGHT_VERSION]) {
143
- return process.env[constants_1.InternalEnvironmentVariables.MPT_PLAYWRIGHT_VERSION];
144
- }
145
- const packageManager = (0, packageManager_1.getPackageManager)();
146
- const command = packageManager.runCommand("playwright", "--version");
147
- const stdout = (0, child_process_1.execSync)(command).toString().trim();
148
- const version = packageManager.getVersionFromStdout(stdout);
149
- process.env[constants_1.InternalEnvironmentVariables.MPT_PLAYWRIGHT_VERSION] = version;
150
- logger_1.coreLogger.info(`Playwright version being used - ${process.env[constants_1.InternalEnvironmentVariables.MPT_PLAYWRIGHT_VERSION]}`);
151
- return process.env[constants_1.InternalEnvironmentVariables.MPT_PLAYWRIGHT_VERSION];
152
- };
153
- exports.getPlaywrightVersion = getPlaywrightVersion;
154
132
  const getPackageVersion = () => {
155
133
  try {
156
134
  // eslint-disable-next-line @typescript-eslint/no-require-imports
@@ -178,15 +156,15 @@ const getVersionInfo = (version) => {
178
156
  };
179
157
  exports.getVersionInfo = getVersionInfo;
180
158
  const validatePlaywrightVersion = () => {
181
- const minimumSupportedVersion = constants_1.MINIMUM_SUPPORTED_PLAYWRIGHT_VERSION;
182
- const installedVersion = (0, exports.getPlaywrightVersion)();
159
+ const minimumSupportedVersion = constants_js_1.MINIMUM_SUPPORTED_PLAYWRIGHT_VERSION;
160
+ const installedVersion = (0, getPlaywrightVersion_js_1.getPlaywrightVersion)();
183
161
  const minimumSupportedVersionInfo = (0, exports.getVersionInfo)(minimumSupportedVersion);
184
162
  const installedVersionInfo = (0, exports.getVersionInfo)(installedVersion);
185
163
  const isInstalledVersionGreater = installedVersionInfo.major > minimumSupportedVersionInfo.major ||
186
164
  (installedVersionInfo.major === minimumSupportedVersionInfo.major &&
187
165
  installedVersionInfo.minor >= minimumSupportedVersionInfo.minor);
188
166
  if (!isInstalledVersionGreater) {
189
- (0, exports.exitWithFailureMessage)(messages_1.ServiceErrorMessageConstants.INVALID_PLAYWRIGHT_VERSION_ERROR);
167
+ (0, exports.exitWithFailureMessage)(messages_js_1.ServiceErrorMessageConstants.INVALID_PLAYWRIGHT_VERSION_ERROR);
190
168
  }
191
169
  };
192
170
  exports.validatePlaywrightVersion = validatePlaywrightVersion;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { JwtPayload, VersionInfo } from \"../common/types.js\";\nimport {\n API_VERSION,\n Constants,\n InternalEnvironmentVariables,\n MINIMUM_SUPPORTED_PLAYWRIGHT_VERSION,\n ServiceEnvironmentVariable,\n} from \"../common/constants.js\";\nimport { ServiceErrorMessageConstants } from \"../common/messages.js\";\nimport { coreLogger } from \"../common/logger.js\";\nimport type { TokenCredential } from \"@azure/identity\";\nimport ReporterUtils from \"./reporterUtils.js\";\nimport { CIInfoProvider } from \"./cIInfoProvider.js\";\nimport * as process from \"node:process\";\nimport { parseJwt } from \"./parseJwt.js\";\nimport { getPlaywrightVersion } from \"./getPlaywrightVersion.js\";\nimport { createEntraIdAccessToken } from \"../common/entraIdAccessToken.js\";\n\n// Re-exporting for backward compatibility\nexport { getPlaywrightVersion } from \"./getPlaywrightVersion.js\";\nexport { parseJwt } from \"./parseJwt.js\";\n\nexport const exitWithFailureMessage = (error: { key: string; message: string }): never => {\n console.log();\n console.error(error.message);\n // eslint-disable-next-line n/no-process-exit\n process.exit(1);\n};\n\nexport const populateValuesFromServiceUrl = (): { region: string; accountId: string } | null => {\n // Service URL format: wss://<region>.api.playwright.microsoft.com/accounts/<workspace-id>/browsers\n const url = process.env[\"PLAYWRIGHT_SERVICE_URL\"]!;\n if (!ReporterUtils.isNullOrEmpty(url)) {\n const parts = url.split(\"/\");\n\n if (parts.length > 2) {\n const subdomainParts = parts[2]!.split(\".\");\n const region = subdomainParts.length > 0 ? subdomainParts[0] : null;\n const accountId = parts[4];\n\n return { region: region!, accountId: accountId! };\n }\n }\n return null;\n};\n\nexport const getAccessToken = (): string | undefined => {\n return process.env[ServiceEnvironmentVariable.PLAYWRIGHT_SERVICE_ACCESS_TOKEN];\n};\n\nexport const getServiceBaseURL = (): string | undefined => {\n return process.env[ServiceEnvironmentVariable.PLAYWRIGHT_SERVICE_URL];\n};\n\nexport const getAndSetRunId = (): string => {\n const runId = ReporterUtils.getRunId(CIInfoProvider.getCIInfo());\n process.env[InternalEnvironmentVariables.MPT_SERVICE_RUN_ID] = runId;\n return runId;\n};\n\nexport const getServiceWSEndpoint = (runId: string, os: string): string => {\n return `${getServiceBaseURL()}?runId=${encodeURIComponent(runId)}&os=${os}&api-version=${API_VERSION}`;\n};\n\nexport const validateServiceUrl = (): void => {\n const serviceUrl = getServiceBaseURL();\n if (!serviceUrl) {\n exitWithFailureMessage(ServiceErrorMessageConstants.NO_SERVICE_URL_ERROR);\n }\n};\n\nexport const validateMptPAT = (\n validationFailureCallback: (error: { key: string; message: string }) => void,\n): void => {\n try {\n const accessToken = getAccessToken();\n const result = populateValuesFromServiceUrl();\n if (!accessToken) {\n validationFailureCallback(ServiceErrorMessageConstants.NO_AUTH_ERROR);\n }\n const claims = parseJwt<JwtPayload>(accessToken!);\n if (!claims.exp) {\n validationFailureCallback(ServiceErrorMessageConstants.INVALID_MPT_PAT_ERROR);\n }\n if (Date.now() >= claims.exp! * 1000) {\n validationFailureCallback(ServiceErrorMessageConstants.EXPIRED_MPT_PAT_ERROR);\n }\n if (result!.accountId !== claims!.aid) {\n validationFailureCallback(ServiceErrorMessageConstants.WORKSPACE_MISMATCH_ERROR);\n }\n } catch (err) {\n coreLogger.error(err);\n exitWithFailureMessage(ServiceErrorMessageConstants.INVALID_MPT_PAT_ERROR);\n }\n};\nconst isTokenExpiringSoon = (expirationTime: number, currentTime: number): boolean => {\n return expirationTime * 1000 - currentTime <= Constants.sevenDaysInMs;\n};\n\nconst warnAboutTokenExpiry = (expirationTime: number, currentTime: number): void => {\n const daysToExpiration = Math.ceil((expirationTime * 1000 - currentTime) / Constants.oneDayInMs);\n const expirationDate = new Date(expirationTime * 1000).toLocaleDateString();\n const expirationWarning = `Warning: The access token used for this test run will expire in ${daysToExpiration} days on ${expirationDate}. Generate a new token from the portal to avoid failures. For a simpler, more secure solution, switch to Microsoft Entra ID and eliminate token management. https://learn.microsoft.com/en-us/entra/identity/`;\n console.warn(expirationWarning);\n};\n\nexport const warnIfAccessTokenCloseToExpiry = (): void => {\n const accessToken = getAccessToken();\n const claims = parseJwt<JwtPayload>(accessToken!);\n const currentTime = Date.now();\n if (isTokenExpiringSoon(claims.exp!, currentTime)) {\n warnAboutTokenExpiry(claims.exp!, currentTime);\n }\n};\n\nexport const fetchOrValidateAccessToken = async (credential?: TokenCredential): Promise<string> => {\n const entraIdAccessToken = createEntraIdAccessToken(credential);\n if (entraIdAccessToken.token && entraIdAccessToken.doesEntraIdAccessTokenNeedRotation()) {\n await entraIdAccessToken.fetchEntraIdAccessToken();\n }\n if (!getAccessToken()) {\n throw new Error(ServiceErrorMessageConstants.NO_AUTH_ERROR.message);\n }\n return getAccessToken()!;\n};\n\nexport const emitReportingUrl = (): void => {\n const regex =\n /wss:\\/\\/([\\w-]+)\\.api\\.(playwright(?:-test|-int)?\\.io|playwright\\.microsoft\\.com)\\//;\n const url = getServiceBaseURL();\n const match = url?.match(regex);\n if (match && match.length >= 3) {\n const [, region, domain] = match;\n process.env[InternalEnvironmentVariables.MPT_SERVICE_REPORTING_URL] =\n `https://${region}.reporting.api.${domain}`;\n }\n};\n\nexport const getPackageVersion = (): string => {\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n const version = require(\"../../package.json\").version;\n return version;\n } catch (error) {\n console.error(\"Error fetching package version:\", error);\n return \"unknown version\";\n }\n};\nexport const getVersionInfo = (version: string): VersionInfo => {\n const regex = /^(\\d+)(?:\\.(\\d+))?(?:\\.(\\d+))?/;\n const match = version.match(regex);\n const versionInfo = {\n major: 0,\n minor: 0,\n patch: 0,\n };\n versionInfo.major = match && match[1] ? parseInt(match[1], 10) : 0;\n versionInfo.minor = match && match[2] ? parseInt(match[2], 10) : 0;\n versionInfo.patch = match && match[3] ? parseInt(match[3], 10) : 0;\n return versionInfo;\n};\n\nexport const validatePlaywrightVersion = (): void => {\n const minimumSupportedVersion = MINIMUM_SUPPORTED_PLAYWRIGHT_VERSION;\n const installedVersion = getPlaywrightVersion();\n\n const minimumSupportedVersionInfo = getVersionInfo(minimumSupportedVersion);\n const installedVersionInfo = getVersionInfo(installedVersion);\n\n const isInstalledVersionGreater =\n installedVersionInfo.major > minimumSupportedVersionInfo.major ||\n (installedVersionInfo.major === minimumSupportedVersionInfo.major &&\n installedVersionInfo.minor >= minimumSupportedVersionInfo.minor);\n if (!isInstalledVersionGreater) {\n exitWithFailureMessage(ServiceErrorMessageConstants.INVALID_PLAYWRIGHT_VERSION_ERROR);\n }\n};\n"]}
@@ -0,0 +1,95 @@
1
+ import type { ApiErrorMessage } from "./types.js";
2
+ export declare const EntraIdAccessTokenConstants: {
3
+ LIFETIME_LEFT_THRESHOLD_IN_MINUTES_FOR_ROTATION: number;
4
+ SCOPE: string;
5
+ ROTATION_INTERVAL_PERIOD_IN_MINUTES: number;
6
+ };
7
+ /** @public
8
+ *
9
+ * OS types supported on Microsoft Playwright Testing cloud hosted browsers
10
+ */
11
+ export declare const ServiceOS: {
12
+ readonly LINUX: "linux";
13
+ readonly WINDOWS: "windows";
14
+ };
15
+ /** @public
16
+ *
17
+ * Authentication types supported on Microsoft Playwright Testing
18
+ */
19
+ export declare const ServiceAuth: {
20
+ readonly ENTRA_ID: "ENTRA_ID";
21
+ readonly ACCESS_TOKEN: "ACCESS_TOKEN";
22
+ };
23
+ /** @public
24
+ *
25
+ * Environment variables used by Microsoft Playwright Testing
26
+ */
27
+ export declare const ServiceEnvironmentVariable: {
28
+ PLAYWRIGHT_SERVICE_ACCESS_TOKEN: string;
29
+ PLAYWRIGHT_SERVICE_URL: string;
30
+ };
31
+ export declare const DefaultConnectOptionsConstants: {
32
+ DEFAULT_TIMEOUT: number;
33
+ DEFAULT_SLOW_MO: number;
34
+ DEFAULT_EXPOSE_NETWORK: string;
35
+ DEFAULT_SERVICE_OS: "linux";
36
+ };
37
+ export declare const API_VERSION = "2023-10-01-preview";
38
+ export declare class Constants {
39
+ static readonly TEST_FRAMEWORK_NAME = "PLAYWRIGHT";
40
+ static readonly TEST_FRAMEWORK_RUNNERNAME = "PLAYWRIGHT";
41
+ static readonly TEST_TYPE = "WebTest";
42
+ static readonly TEST_SDK_LANGUAGE = "JAVASCRIPT";
43
+ static readonly DEFAULT_DASHBOARD_ENDPOINT = "https://playwright.microsoft.com";
44
+ static readonly DEFAULT_SERVICE_ENDPOINT = "https://{region}.reporting.api.playwright-test.io";
45
+ static readonly DEFAULT_REDACTED_MESSAGE = "***REDACTED***";
46
+ static readonly SAS_URI_SEPARATOR = "?";
47
+ static readonly DEFAULT_TEST_RUN_NAME = "MPTReporterTests";
48
+ static readonly TEST_BATCH_SIZE = 50;
49
+ static readonly UPLOAD_MODE = "sdk";
50
+ static readonly GIT_VERSION_COMMAND = "git --version";
51
+ static readonly GIT_REV_PARSE = "git rev-parse --is-inside-work-tree";
52
+ static readonly GIT_COMMIT_MESSAGE_COMMAND = "git log -1 --pretty=format:\"%s\"";
53
+ static readonly ERROR_MESSAGES_MAX_LENGTH = 100;
54
+ static readonly sevenDaysInMs: number;
55
+ static readonly oneDayInMs: number;
56
+ static readonly API_VERSION = "2024-09-01-preview";
57
+ static readonly OS = "Os";
58
+ static readonly NON_RETRYABLE_STATUS_CODES: number[];
59
+ static readonly SupportedRegions: string[];
60
+ static readonly CONFLICT_409_ERROR_MESSAGE = "Test run with id {runId} already exists. Provide a unique run id.";
61
+ static readonly FORBIDDEN_403_ERROR_MESSAGE = "You do not have the required permissions to upload test results. This could be because\n\n a. Reporting is not enabled for your workspace {workspaceId}. Enable the Reporting feature under Feature management settings using the Playwright portal: https://playwright.microsoft.com/workspaces/{workspaceId}/settings/general\n b. You do not have the required roles on the workspace. Only Owner and Contributor roles can run tests. Contact the service administrator.\n c. The workspace you are trying to run the tests on is in a different Azure tenant than what you are signed into. Check the tenant id from Azure portal (https://aka.ms/mpt/find-tenant-id) and login using the command 'az login --tenant <TENANT_ID>\n ";
62
+ static readonly testRunsEndpoint: string;
63
+ static readonly testRunsShardEndpoint: string;
64
+ static readonly storageUriEndpoint: string;
65
+ static readonly testResultsEndpoint: string;
66
+ static readonly patchTestRun: string;
67
+ static readonly getTestRun: string;
68
+ static readonly patchTestRunShardStart: string;
69
+ static readonly patchTestRunShardEnd: string;
70
+ static readonly postTestResults: string;
71
+ static readonly getStorageUri: string;
72
+ static readonly ERROR_MESSAGE: ApiErrorMessage;
73
+ }
74
+ export declare const TestErrorType: {
75
+ Scalable: string;
76
+ Reporting: string;
77
+ };
78
+ export declare const TestResultErrorConstants: {
79
+ key: string;
80
+ message: string;
81
+ pattern: RegExp;
82
+ type: string;
83
+ }[];
84
+ export declare const InternalEnvironmentVariables: {
85
+ MPT_PLAYWRIGHT_VERSION: string;
86
+ MPT_SETUP_FATAL_ERROR: string;
87
+ MPT_SERVICE_RUN_NAME: string;
88
+ MPT_SERVICE_RUN_ID: string;
89
+ MPT_CLOUD_HOSTED_BROWSER_USED: string;
90
+ MPT_SERVICE_OS: string;
91
+ MPT_SERVICE_REPORTING_URL: string;
92
+ ONE_TIME_OPERATION_FLAG: string;
93
+ };
94
+ export declare const MINIMUM_SUPPORTED_PLAYWRIGHT_VERSION = "1.47.0";
95
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/common/constants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,2BAA2B;;;;CAIvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,WAAW;;;CAGd,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,0BAA0B;;;CAGtC,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;CAK1C,CAAC;AAEF,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAKhD,qBAAa,SAAS;IAEpB,gBAAuB,mBAAmB,gBAAgB;IAC1D,gBAAuB,yBAAyB,gBAAgB;IAChE,gBAAuB,SAAS,aAAa;IAC7C,gBAAuB,iBAAiB,gBAAgB;IAExD,gBAAuB,0BAA0B,sCAAsC;IACvF,gBAAuB,wBAAwB,uDACO;IACtD,gBAAuB,wBAAwB,oBAAoB;IACnE,gBAAuB,iBAAiB,OAAO;IAC/C,gBAAuB,qBAAqB,sBAAsB;IAClE,gBAAuB,eAAe,MAAM;IAC5C,gBAAuB,WAAW,SAAS;IAC3C,gBAAuB,mBAAmB,mBAAmB;IAC7D,gBAAuB,aAAa,yCAAyC;IAC7E,gBAAuB,0BAA0B,uCAAqC;IACtF,gBAAuB,yBAAyB,OAAO;IACvD,gBAAuB,aAAa,SAA2B;IAC/D,gBAAuB,UAAU,SAAuB;IACxD,gBAAuB,WAAW,wBAAwB;IAC1D,gBAAuB,EAAE,QAAQ;IACjC,gBAAuB,0BAA0B,WAA6B;IAC9E,gBAAuB,gBAAgB,EAAE,MAAM,EAAE,CAO/C;IAEF,gBAAuB,0BAA0B,uEACqB;IACtE,gBAAuB,2BAA2B,ktBAKhD;IAEF,gBAAuB,gBAAgB,EAAE,MAAM,CAAwC;IACvF,gBAAuB,qBAAqB,EAAE,MAAM,CAC0B;IAC9E,gBAAuB,kBAAkB,EAAE,MAAM,CAC+B;IAChF,gBAAuB,mBAAmB,EAAE,MAAM,CACK;IACvD,gBAAuB,YAAY,EAAE,MAAM,CAAkB;IAC7D,gBAAuB,UAAU,EAAE,MAAM,CAAgB;IACzD,gBAAuB,sBAAsB,EAAE,MAAM,CAA4B;IACjF,gBAAuB,oBAAoB,EAAE,MAAM,CAA0B;IAC7E,gBAAuB,eAAe,EAAE,MAAM,CAAqB;IACnE,gBAAuB,aAAa,EAAE,MAAM,CAAmB;IAC/D,gBAAuB,aAAa,EAAE,eAAe,CAsDnD;CACH;AAED,eAAO,MAAM,aAAa;;;CAGzB,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;GAwEpC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;CASxC,CAAC;AAEF,eAAO,MAAM,oCAAoC,WAAW,CAAC"}
@@ -0,0 +1,226 @@
1
+ export const EntraIdAccessTokenConstants = {
2
+ LIFETIME_LEFT_THRESHOLD_IN_MINUTES_FOR_ROTATION: 15,
3
+ SCOPE: "https://management.core.windows.net/.default",
4
+ ROTATION_INTERVAL_PERIOD_IN_MINUTES: 4,
5
+ };
6
+ /** @public
7
+ *
8
+ * OS types supported on Microsoft Playwright Testing cloud hosted browsers
9
+ */
10
+ export const ServiceOS = {
11
+ LINUX: "linux",
12
+ WINDOWS: "windows",
13
+ };
14
+ /** @public
15
+ *
16
+ * Authentication types supported on Microsoft Playwright Testing
17
+ */
18
+ export const ServiceAuth = {
19
+ ENTRA_ID: "ENTRA_ID",
20
+ ACCESS_TOKEN: "ACCESS_TOKEN",
21
+ };
22
+ /** @public
23
+ *
24
+ * Environment variables used by Microsoft Playwright Testing
25
+ */
26
+ export const ServiceEnvironmentVariable = {
27
+ PLAYWRIGHT_SERVICE_ACCESS_TOKEN: "PLAYWRIGHT_SERVICE_ACCESS_TOKEN",
28
+ PLAYWRIGHT_SERVICE_URL: "PLAYWRIGHT_SERVICE_URL",
29
+ };
30
+ export const DefaultConnectOptionsConstants = {
31
+ DEFAULT_TIMEOUT: 30000,
32
+ DEFAULT_SLOW_MO: 0,
33
+ DEFAULT_EXPOSE_NETWORK: "<loopback>",
34
+ DEFAULT_SERVICE_OS: ServiceOS.LINUX,
35
+ };
36
+ export const API_VERSION = "2023-10-01-preview";
37
+ // Do not put an ending slash for the urls,
38
+ // for example use https://www.microsoft.com/en-in and not https://www.microsoft.com/en-in/
39
+ export class Constants {
40
+ }
41
+ // Config related constants
42
+ Constants.TEST_FRAMEWORK_NAME = "PLAYWRIGHT";
43
+ Constants.TEST_FRAMEWORK_RUNNERNAME = "PLAYWRIGHT";
44
+ Constants.TEST_TYPE = "WebTest";
45
+ Constants.TEST_SDK_LANGUAGE = "JAVASCRIPT";
46
+ // Placeholder version
47
+ Constants.DEFAULT_DASHBOARD_ENDPOINT = "https://playwright.microsoft.com";
48
+ Constants.DEFAULT_SERVICE_ENDPOINT = "https://{region}.reporting.api.playwright-test.io";
49
+ Constants.DEFAULT_REDACTED_MESSAGE = "***REDACTED***";
50
+ Constants.SAS_URI_SEPARATOR = "?";
51
+ Constants.DEFAULT_TEST_RUN_NAME = "MPTReporterTests";
52
+ Constants.TEST_BATCH_SIZE = 50;
53
+ Constants.UPLOAD_MODE = "sdk";
54
+ Constants.GIT_VERSION_COMMAND = "git --version";
55
+ Constants.GIT_REV_PARSE = "git rev-parse --is-inside-work-tree";
56
+ Constants.GIT_COMMIT_MESSAGE_COMMAND = 'git log -1 --pretty=format:"%s"';
57
+ Constants.ERROR_MESSAGES_MAX_LENGTH = 100;
58
+ Constants.sevenDaysInMs = 7 * 24 * 60 * 60 * 1000;
59
+ Constants.oneDayInMs = 24 * 60 * 60 * 1000;
60
+ Constants.API_VERSION = "2024-09-01-preview";
61
+ Constants.OS = "Os";
62
+ Constants.NON_RETRYABLE_STATUS_CODES = [400, 403, 404, 405, 409];
63
+ Constants.SupportedRegions = [
64
+ "eastus",
65
+ "eastasia",
66
+ "westeurope",
67
+ "westus3",
68
+ "centraluseuap",
69
+ "eastus2euap",
70
+ ];
71
+ // Error messages
72
+ Constants.CONFLICT_409_ERROR_MESSAGE = "Test run with id {runId} already exists. Provide a unique run id.";
73
+ Constants.FORBIDDEN_403_ERROR_MESSAGE = `You do not have the required permissions to upload test results. This could be because
74
+
75
+ a. Reporting is not enabled for your workspace {workspaceId}. Enable the Reporting feature under Feature management settings using the Playwright portal: https://playwright.microsoft.com/workspaces/{workspaceId}/settings/general
76
+ b. You do not have the required roles on the workspace. Only Owner and Contributor roles can run tests. Contact the service administrator.
77
+ c. The workspace you are trying to run the tests on is in a different Azure tenant than what you are signed into. Check the tenant id from Azure portal (https://aka.ms/mpt/find-tenant-id) and login using the command 'az login --tenant <TENANT_ID>
78
+ `;
79
+ // API Endpoints
80
+ Constants.testRunsEndpoint = "workspaces/{workspaceId}/test-runs";
81
+ Constants.testRunsShardEndpoint = "workspaces/{workspaceId}/test-runs/{testRunId}:updateShardExecutionStatus";
82
+ Constants.storageUriEndpoint = "workspaces/{workspaceId}/test-runs/{testRunId}:createArtifactsUploadBaseUri";
83
+ Constants.testResultsEndpoint = "workspaces/{workspaceId}/test-results/upload-batch";
84
+ Constants.patchTestRun = "patchTestRun";
85
+ Constants.getTestRun = "getTestRun";
86
+ Constants.patchTestRunShardStart = "patchTestRunShardStart";
87
+ Constants.patchTestRunShardEnd = "patchTestRunShardEnd";
88
+ Constants.postTestResults = "postTestResults";
89
+ Constants.getStorageUri = "getStorageUri";
90
+ Constants.ERROR_MESSAGE = {
91
+ patchTestRun: {
92
+ 400: "The request made to the server is invalid. Please check the request parameters and try again.",
93
+ 401: "The authentication token provided is invalid. Please check the token and try again.",
94
+ 500: "An unexpected error occurred on our server. Our team is working to resolve the issue. Please try again later, or contact support if the problem continues.",
95
+ 429: "You have exceeded the rate limit for the API. Please wait and try again later.",
96
+ 504: "The request to the service timed out. Please try again later.",
97
+ 503: "The service is currently unavailable. Please check the service status and try again.",
98
+ },
99
+ getTestRun: {
100
+ 400: "The request made to the server is invalid. Please check the request parameters and try again.",
101
+ 401: "The authentication token provided is invalid. Please check the token and try again.",
102
+ 403: "You do not have the required permissions to run tests. Please contact your workspace administrator.",
103
+ 500: "An unexpected error occurred on our server. Our team is working to resolve the issue. Please try again later, or contact support if the problem continues.",
104
+ 429: "You have exceeded the rate limit for the API. Please wait and try again later.",
105
+ 504: "The request to the service timed out. Please try again later.",
106
+ 503: "The service is currently unavailable. Please check the service status and try again.",
107
+ },
108
+ patchTestRunShardStart: {
109
+ 400: "The request made to the server is invalid. Please check the request parameters and try again.",
110
+ 401: "The authentication token provided is invalid. Please check the token and try again.",
111
+ 403: "You do not have the required permissions to run tests. Please contact your workspace administrator.",
112
+ 500: "An unexpected error occurred on our server. Our team is working to resolve the issue. Please try again later, or contact support if the problem continues.",
113
+ 429: "You have exceeded the rate limit for the API. Please wait and try again later.",
114
+ 504: "The request to the service timed out. Please try again later.",
115
+ 503: "The service is currently unavailable. Please check the service status and try again.",
116
+ },
117
+ patchTestRunShardEnd: {
118
+ 400: "The request made to the server is invalid. Please check the request parameters and try again.",
119
+ 401: "The authentication token provided is invalid. Please check the token and try again.",
120
+ 403: "You do not have the required permissions to run tests. Please contact your workspace administrator.",
121
+ 500: "An unexpected error occurred on our server. Our team is working to resolve the issue. Please try again later, or contact support if the problem continues.",
122
+ 429: "You have exceeded the rate limit for the API. Please wait and try again later.",
123
+ 504: "The request to the service timed out. Please try again later.",
124
+ 503: "The service is currently unavailable. Please check the service status and try again.",
125
+ },
126
+ postTestResults: {
127
+ 400: "The request made to the server is invalid. Please check the request parameters and try again.",
128
+ 401: "The authentication token provided is invalid. Please check the token and try again.",
129
+ 403: "You do not have the required permissions to run tests. Please contact your workspace administrator.",
130
+ 500: "An unexpected error occurred on our server. Our team is working to resolve the issue. Please try again later, or contact support if the problem continues.",
131
+ 429: "You have exceeded the rate limit for the API. Please wait and try again later.",
132
+ 504: "The request to the service timed out. Please try again later.",
133
+ 503: "The service is currently unavailable. Please check the service status and try again.",
134
+ },
135
+ getStorageUri: {
136
+ 400: "The request made to the server is invalid. Please check the request parameters and try again.",
137
+ 401: "The authentication token provided is invalid. Please check the token and try again.",
138
+ 403: "You do not have the required permissions to run tests. Please contact your workspace administrator.",
139
+ 500: "An unexpected error occurred on our server. Our team is working to resolve the issue. Please try again later, or contact support if the problem continues.",
140
+ 429: "You have exceeded the rate limit for the API. Please wait and try again later.",
141
+ 504: "The request to the service timed out. Please try again later.",
142
+ 503: "The service is currently unavailable. Please check the service status and try again.",
143
+ },
144
+ };
145
+ export const TestErrorType = {
146
+ Scalable: "Scalable",
147
+ Reporting: "Reporting",
148
+ };
149
+ export const TestResultErrorConstants = [
150
+ {
151
+ key: "401",
152
+ message: "The authentication token provided is invalid. Please check the token and try again.",
153
+ pattern: /(?=.*browserType\.connect)(?=.*401 Unauthorized)/i,
154
+ type: TestErrorType.Scalable,
155
+ },
156
+ {
157
+ key: "NoPermissionOnWorkspace_Scalable",
158
+ message: `You do not have the required permissions to run tests. This could be because:
159
+
160
+ a. You do not have the required roles on the workspace. Only Owner and Contributor roles can run tests. Contact the service administrator.
161
+ b. The workspace you are trying to run the tests on is in a different Azure tenant than what you are signed into. Check the tenant id from Azure portal (https://aka.ms/mpt/find-tenant-id) and login using the command 'az login --tenant <TENANT_ID>'.
162
+ `,
163
+ pattern: /(?=.*browserType\.connect)(?=.*403 Forbidden)(?=[\s\S]*CheckAccess API call with non successful response)/i,
164
+ type: TestErrorType.Scalable,
165
+ },
166
+ {
167
+ key: "InvalidWorkspace_Scalable",
168
+ message: "The specified workspace does not exist. Please verify your workspace settings.",
169
+ pattern: /(?=.*browserType\.connect)(?=.*403 Forbidden)(?=[\s\S]*InvalidAccountOrSubscriptionState)/i,
170
+ type: TestErrorType.Scalable,
171
+ },
172
+ {
173
+ key: "InvalidAccessToken",
174
+ message: "The provided access token does not match the specified workspace URL. Please verify that both values are correct.",
175
+ pattern: /(?=.*browserType\.connect)(?=.*403 Forbidden)(?=[\s\S]*InvalidAccessToken)/i,
176
+ type: TestErrorType.Scalable,
177
+ },
178
+ {
179
+ key: "AccessTokenOrUserOrWorkspaceNotFound_Scalable",
180
+ message: "The data for the user, workspace or access token was not found. Please check the request or create new token and try again.",
181
+ pattern: /(?=.*browserType\.connect)(?=.*404 Not Found)(?=[\s\S]*NotFound)/i,
182
+ type: TestErrorType.Scalable,
183
+ },
184
+ {
185
+ key: "AccessKeyBasedAuthNotSupported_Scalable",
186
+ message: "Authentication through service access token is disabled for this workspace. Please use Entra ID to authenticate.",
187
+ pattern: /(?=.*browserType\.connect)(?=.*403 Forbidden)(?=[\s\S]*AccessKeyBasedAuthNotSupported)/i,
188
+ type: TestErrorType.Scalable,
189
+ },
190
+ {
191
+ key: "503",
192
+ message: "The service is currently unavailable. Please check the service status and try again.",
193
+ pattern: /(?=.*browserType\.connect)(?=.*503 Service Unavailable)/i,
194
+ type: TestErrorType.Scalable,
195
+ },
196
+ {
197
+ key: "504",
198
+ message: "The request to the service timed out. Please try again later.",
199
+ pattern: /(?=.*browserType\.connect)(?=.*504 Gateway Timeout)/i,
200
+ type: TestErrorType.Scalable,
201
+ },
202
+ {
203
+ key: "QuotaLimitError_Scalable",
204
+ message: "It is possible that the maximum number of concurrent sessions allowed for your workspace has been exceeded. Check the quota at https://aka.ms/mpt/resource-quota.",
205
+ pattern: /(?=.*browserType\.connect): (?=.*Timeout .* exceeded)/i,
206
+ type: TestErrorType.Scalable,
207
+ },
208
+ {
209
+ key: "BrowserConnectionError_Scalable",
210
+ message: "The service is currently unavailable. Please try again after some time.",
211
+ pattern: /(?=.*browserType\.connect): (?=.Target page, context or browser has been closed)/i,
212
+ type: TestErrorType.Scalable,
213
+ },
214
+ ];
215
+ export const InternalEnvironmentVariables = {
216
+ MPT_PLAYWRIGHT_VERSION: "_MPT_PLAYWRIGHT_VERSION",
217
+ MPT_SETUP_FATAL_ERROR: "_MPT_SETUP_FATAL_ERROR",
218
+ MPT_SERVICE_RUN_NAME: "_MPT_SERVICE_RUN_NAME",
219
+ MPT_SERVICE_RUN_ID: "_MPT_SERVICE_RUN_ID",
220
+ MPT_CLOUD_HOSTED_BROWSER_USED: "_MPT_CLOUD_HOSTED_BROWSER_USED",
221
+ MPT_SERVICE_OS: "_MPT_SERVICE_OS",
222
+ MPT_SERVICE_REPORTING_URL: "_MPT_SERVICE_REPORTING_URL",
223
+ ONE_TIME_OPERATION_FLAG: "_ONE_TIME_OPERATION_FLAG",
224
+ };
225
+ export const MINIMUM_SUPPORTED_PLAYWRIGHT_VERSION = "1.47.0";
226
+ //# sourceMappingURL=constants.js.map