creevey 0.10.0-beta.8 → 0.10.0-rc.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 (350) hide show
  1. package/AUTHORS +2 -0
  2. package/CHANGELOG.md +281 -0
  3. package/README.md +19 -41
  4. package/dist/client/addon/components/Addon.js +18 -8
  5. package/dist/client/addon/components/Addon.js.map +1 -1
  6. package/dist/client/addon/components/Panel.js +4 -4
  7. package/dist/client/addon/components/Panel.js.map +1 -1
  8. package/dist/client/addon/components/TestSelect.js +2 -2
  9. package/dist/client/addon/components/TestSelect.js.map +1 -1
  10. package/dist/client/addon/components/Tools.js +19 -9
  11. package/dist/client/addon/components/Tools.js.map +1 -1
  12. package/dist/client/addon/controller.d.ts +1 -1
  13. package/dist/client/addon/controller.js +3 -3
  14. package/dist/client/addon/controller.js.map +1 -1
  15. package/dist/client/addon/decorator.d.ts +1 -1
  16. package/dist/client/addon/makeDecorator.d.ts +9 -0
  17. package/dist/client/addon/makeDecorator.js +48 -0
  18. package/dist/client/addon/makeDecorator.js.map +1 -0
  19. package/dist/client/addon/manager.js +38 -39
  20. package/dist/client/addon/manager.js.map +1 -1
  21. package/dist/client/addon/preset.d.ts +0 -1
  22. package/dist/client/addon/preset.js +3 -2
  23. package/dist/client/addon/preset.js.map +1 -1
  24. package/dist/client/addon/preview.d.ts +1 -1
  25. package/dist/client/addon/withCreevey.d.ts +5 -3
  26. package/dist/client/addon/withCreevey.js +14 -21
  27. package/dist/client/addon/withCreevey.js.map +1 -1
  28. package/dist/client/shared/components/ImagesView/BlendView.d.ts +2 -2
  29. package/dist/client/shared/components/ImagesView/BlendView.js +18 -8
  30. package/dist/client/shared/components/ImagesView/BlendView.js.map +1 -1
  31. package/dist/client/shared/components/ImagesView/ImagesView.js +1 -1
  32. package/dist/client/shared/components/ImagesView/ImagesView.js.map +1 -1
  33. package/dist/client/shared/components/ImagesView/SideBySideView.d.ts +2 -2
  34. package/dist/client/shared/components/ImagesView/SideBySideView.js +19 -9
  35. package/dist/client/shared/components/ImagesView/SideBySideView.js.map +1 -1
  36. package/dist/client/shared/components/ImagesView/SlideView.d.ts +2 -2
  37. package/dist/client/shared/components/ImagesView/SlideView.js +19 -9
  38. package/dist/client/shared/components/ImagesView/SlideView.js.map +1 -1
  39. package/dist/client/shared/components/ImagesView/SwapView.d.ts +2 -2
  40. package/dist/client/shared/components/ImagesView/SwapView.js +31 -9
  41. package/dist/client/shared/components/ImagesView/SwapView.js.map +1 -1
  42. package/dist/client/shared/components/ImagesView/common.d.ts +1 -1
  43. package/dist/client/shared/components/PageFooter/PageFooter.js +1 -1
  44. package/dist/client/shared/components/PageFooter/PageFooter.js.map +1 -1
  45. package/dist/client/shared/components/PageFooter/Paging.js +1 -1
  46. package/dist/client/shared/components/PageFooter/Paging.js.map +1 -1
  47. package/dist/client/shared/components/PageHeader/ImagePreview.d.ts +2 -2
  48. package/dist/client/shared/components/PageHeader/ImagePreview.js +2 -1
  49. package/dist/client/shared/components/PageHeader/ImagePreview.js.map +1 -1
  50. package/dist/client/shared/components/PageHeader/PageHeader.js +34 -13
  51. package/dist/client/shared/components/PageHeader/PageHeader.js.map +1 -1
  52. package/dist/client/shared/components/ResultsPage.d.ts +2 -2
  53. package/dist/client/shared/components/ResultsPage.js +45 -15
  54. package/dist/client/shared/components/ResultsPage.js.map +1 -1
  55. package/dist/client/shared/creeveyClientApi.js +18 -1
  56. package/dist/client/shared/creeveyClientApi.js.map +1 -1
  57. package/dist/client/shared/helpers.d.ts +1 -3
  58. package/dist/client/shared/helpers.js +4 -19
  59. package/dist/client/shared/helpers.js.map +1 -1
  60. package/dist/client/web/CreeveyApp.d.ts +1 -0
  61. package/dist/client/web/CreeveyApp.js +44 -15
  62. package/dist/client/web/CreeveyApp.js.map +1 -1
  63. package/dist/client/web/CreeveyContext.d.ts +6 -0
  64. package/dist/client/web/CreeveyContext.js +21 -7
  65. package/dist/client/web/CreeveyContext.js.map +1 -1
  66. package/dist/client/web/CreeveyLoader.d.ts +1 -1
  67. package/dist/client/web/CreeveyLoader.js +3 -3
  68. package/dist/client/web/CreeveyLoader.js.map +1 -1
  69. package/dist/client/web/CreeveyView/SideBar/Checkbox.d.ts +4 -4
  70. package/dist/client/web/CreeveyView/SideBar/Checkbox.js +36 -6
  71. package/dist/client/web/CreeveyView/SideBar/Checkbox.js.map +1 -1
  72. package/dist/client/web/CreeveyView/SideBar/Search.js +20 -10
  73. package/dist/client/web/CreeveyView/SideBar/Search.js.map +1 -1
  74. package/dist/client/web/CreeveyView/SideBar/SideBar.js +26 -12
  75. package/dist/client/web/CreeveyView/SideBar/SideBar.js.map +1 -1
  76. package/dist/client/web/CreeveyView/SideBar/SideBarFooter.js +67 -13
  77. package/dist/client/web/CreeveyView/SideBar/SideBarFooter.js.map +1 -1
  78. package/dist/client/web/CreeveyView/SideBar/SideBarHeader.js +32 -12
  79. package/dist/client/web/CreeveyView/SideBar/SideBarHeader.js.map +1 -1
  80. package/dist/client/web/CreeveyView/SideBar/SuiteLink.d.ts +6 -6
  81. package/dist/client/web/CreeveyView/SideBar/SuiteLink.js +20 -13
  82. package/dist/client/web/CreeveyView/SideBar/SuiteLink.js.map +1 -1
  83. package/dist/client/web/CreeveyView/SideBar/TestLink.js +20 -13
  84. package/dist/client/web/CreeveyView/SideBar/TestLink.js.map +1 -1
  85. package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +2 -2
  86. package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.js +2 -2
  87. package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.js.map +1 -1
  88. package/dist/client/web/CreeveyView/SideBar/TestsStatus.d.ts +2 -2
  89. package/dist/client/web/CreeveyView/SideBar/TestsStatus.js +3 -2
  90. package/dist/client/web/CreeveyView/SideBar/TestsStatus.js.map +1 -1
  91. package/dist/client/web/CreeveyView/SideBar/Toggle.js +1 -1
  92. package/dist/client/web/CreeveyView/SideBar/Toggle.js.map +1 -1
  93. package/dist/client/web/KeyboardEventsContext.d.ts +1 -8
  94. package/dist/client/web/KeyboardEventsContext.js +79 -64
  95. package/dist/client/web/KeyboardEventsContext.js.map +1 -1
  96. package/dist/client/web/assets/index-CtSq3IhG.js +518 -0
  97. package/dist/client/web/index.html +1 -1
  98. package/dist/client/web/index.js +26 -11
  99. package/dist/client/web/index.js.map +1 -1
  100. package/dist/client/web/themes.d.ts +2 -0
  101. package/dist/client/web/themes.js +22 -0
  102. package/dist/client/web/themes.js.map +1 -0
  103. package/dist/creevey.d.ts +1 -1
  104. package/dist/creevey.js +122 -41
  105. package/dist/creevey.js.map +1 -1
  106. package/dist/index.d.ts +1 -0
  107. package/dist/playwright/generator.d.ts +25 -0
  108. package/dist/playwright/generator.js +243 -0
  109. package/dist/playwright/generator.js.map +1 -0
  110. package/dist/playwright/helpers.d.ts +2 -0
  111. package/dist/playwright/helpers.js +29 -0
  112. package/dist/playwright/helpers.js.map +1 -0
  113. package/dist/playwright/reporter.d.ts +83 -0
  114. package/dist/playwright/reporter.js +334 -0
  115. package/dist/playwright/reporter.js.map +1 -0
  116. package/dist/playwright/setup.d.ts +3 -0
  117. package/dist/playwright/setup.js +72 -0
  118. package/dist/playwright/setup.js.map +1 -0
  119. package/dist/playwright.d.ts +1 -0
  120. package/dist/playwright.js +3 -1
  121. package/dist/playwright.js.map +1 -1
  122. package/dist/server/compare.d.ts +18 -0
  123. package/dist/server/compare.js +182 -0
  124. package/dist/server/compare.js.map +1 -0
  125. package/dist/server/config.d.ts +3 -3
  126. package/dist/server/config.js +75 -8
  127. package/dist/server/config.js.map +1 -1
  128. package/dist/server/connection.d.ts +3 -0
  129. package/dist/server/connection.js +28 -0
  130. package/dist/server/connection.js.map +1 -0
  131. package/dist/server/docker.d.ts +1 -1
  132. package/dist/server/docker.js +54 -32
  133. package/dist/server/docker.js.map +1 -1
  134. package/dist/server/index.d.ts +2 -2
  135. package/dist/server/index.js +165 -64
  136. package/dist/server/index.js.map +1 -1
  137. package/dist/server/master/api.d.ts +11 -6
  138. package/dist/server/master/api.js +88 -25
  139. package/dist/server/master/api.js.map +1 -1
  140. package/dist/server/master/handlers/capture-handler.d.ts +5 -0
  141. package/dist/server/master/handlers/capture-handler.js +25 -0
  142. package/dist/server/master/handlers/capture-handler.js.map +1 -0
  143. package/dist/server/master/handlers/index.d.ts +4 -0
  144. package/dist/server/master/handlers/index.js +21 -0
  145. package/dist/server/master/handlers/index.js.map +1 -0
  146. package/dist/server/master/handlers/ping-handler.d.ts +2 -0
  147. package/dist/server/master/handlers/ping-handler.js +8 -0
  148. package/dist/server/master/handlers/ping-handler.js.map +1 -0
  149. package/dist/server/master/handlers/static-handler.d.ts +1 -0
  150. package/dist/server/master/handlers/static-handler.js +20 -0
  151. package/dist/server/master/handlers/static-handler.js.map +1 -0
  152. package/dist/server/master/handlers/stories-handler.d.ts +4 -0
  153. package/dist/server/master/handlers/stories-handler.js +24 -0
  154. package/dist/server/master/handlers/stories-handler.js.map +1 -0
  155. package/dist/server/master/master.js +7 -24
  156. package/dist/server/master/master.js.map +1 -1
  157. package/dist/server/master/pool.d.ts +1 -0
  158. package/dist/server/master/pool.js +5 -3
  159. package/dist/server/master/pool.js.map +1 -1
  160. package/dist/server/master/queue.d.ts +1 -1
  161. package/dist/server/master/queue.js +14 -6
  162. package/dist/server/master/queue.js.map +1 -1
  163. package/dist/server/master/runner.d.ts +6 -6
  164. package/dist/server/master/runner.js +98 -130
  165. package/dist/server/master/runner.js.map +1 -1
  166. package/dist/server/master/server.d.ts +1 -1
  167. package/dist/server/master/server.js +193 -88
  168. package/dist/server/master/server.js.map +1 -1
  169. package/dist/server/master/start.d.ts +1 -2
  170. package/dist/server/master/start.js +13 -29
  171. package/dist/server/master/start.js.map +1 -1
  172. package/dist/server/master/testsManager.d.ts +81 -0
  173. package/dist/server/master/testsManager.js +282 -0
  174. package/dist/server/master/testsManager.js.map +1 -0
  175. package/dist/server/playwright/docker-file.d.ts +1 -1
  176. package/dist/server/playwright/docker-file.js +17 -8
  177. package/dist/server/playwright/docker-file.js.map +1 -1
  178. package/dist/server/playwright/docker.d.ts +2 -1
  179. package/dist/server/playwright/docker.js +10 -2
  180. package/dist/server/playwright/docker.js.map +1 -1
  181. package/dist/server/playwright/index-source.mjs +16 -0
  182. package/dist/server/playwright/internal.d.ts +7 -7
  183. package/dist/server/playwright/internal.js +144 -84
  184. package/dist/server/playwright/internal.js.map +1 -1
  185. package/dist/server/playwright/webdriver.d.ts +3 -3
  186. package/dist/server/playwright/webdriver.js +0 -6
  187. package/dist/server/playwright/webdriver.js.map +1 -1
  188. package/dist/server/providers/browser.js +4 -3
  189. package/dist/server/providers/browser.js.map +1 -1
  190. package/dist/server/providers/hybrid.js +2 -2
  191. package/dist/server/providers/hybrid.js.map +1 -1
  192. package/dist/server/report.d.ts +10 -0
  193. package/dist/server/report.js +45 -0
  194. package/dist/server/report.js.map +1 -0
  195. package/dist/server/reporters/creevey.d.ts +7 -0
  196. package/dist/server/reporters/creevey.js +63 -0
  197. package/dist/server/reporters/creevey.js.map +1 -0
  198. package/dist/server/reporters/index.d.ts +2 -0
  199. package/dist/server/reporters/index.js +16 -0
  200. package/dist/server/reporters/index.js.map +1 -0
  201. package/dist/server/reporters/junit.d.ts +16 -0
  202. package/dist/server/reporters/junit.js +167 -0
  203. package/dist/server/reporters/junit.js.map +1 -0
  204. package/dist/server/reporters/teamcity.d.ts +7 -0
  205. package/dist/server/reporters/teamcity.js +60 -0
  206. package/dist/server/reporters/teamcity.js.map +1 -0
  207. package/dist/server/selenium/internal.d.ts +4 -4
  208. package/dist/server/selenium/internal.js +56 -40
  209. package/dist/server/selenium/internal.js.map +1 -1
  210. package/dist/server/selenium/selenoid.js +12 -6
  211. package/dist/server/selenium/selenoid.js.map +1 -1
  212. package/dist/server/selenium/webdriver.d.ts +3 -3
  213. package/dist/server/selenium/webdriver.js +4 -8
  214. package/dist/server/selenium/webdriver.js.map +1 -1
  215. package/dist/server/shutdown.d.ts +1 -0
  216. package/dist/server/shutdown.js +23 -0
  217. package/dist/server/shutdown.js.map +1 -0
  218. package/dist/server/stories.d.ts +0 -1
  219. package/dist/server/stories.js +0 -12
  220. package/dist/server/stories.js.map +1 -1
  221. package/dist/server/telemetry.js +3 -3
  222. package/dist/server/telemetry.js.map +1 -1
  223. package/dist/server/testsFiles/parser.js +45 -5
  224. package/dist/server/testsFiles/parser.js.map +1 -1
  225. package/dist/server/utils.d.ts +23 -0
  226. package/dist/server/utils.js +114 -15
  227. package/dist/server/utils.js.map +1 -1
  228. package/dist/server/webdriver.d.ts +1 -1
  229. package/dist/server/worker/context.d.ts +3 -0
  230. package/dist/server/worker/context.js +15 -0
  231. package/dist/server/worker/context.js.map +1 -0
  232. package/dist/server/worker/match-image.d.ts +8 -12
  233. package/dist/server/worker/match-image.js +11 -178
  234. package/dist/server/worker/match-image.js.map +1 -1
  235. package/dist/server/worker/start.d.ts +2 -2
  236. package/dist/server/worker/start.js +41 -64
  237. package/dist/server/worker/start.js.map +1 -1
  238. package/dist/shared/index.d.ts +1 -1
  239. package/dist/shared/index.js +9 -7
  240. package/dist/shared/index.js.map +1 -1
  241. package/dist/types.d.ts +84 -43
  242. package/dist/types.js +65 -1
  243. package/dist/types.js.map +1 -1
  244. package/docs/cli.md +80 -0
  245. package/docs/config.md +179 -165
  246. package/docs/examples/playwright-reporer/playwright.config.ts +37 -0
  247. package/docs/migration-0.9-to-0.10.md +144 -0
  248. package/docs/playwright-reporter.md +357 -0
  249. package/docs/storybook.md +60 -0
  250. package/docs/tests.md +50 -45
  251. package/package.json +78 -83
  252. package/playwright.config.mts +46 -0
  253. package/src/client/addon/components/Addon.tsx +1 -1
  254. package/src/client/addon/components/Panel.tsx +4 -4
  255. package/src/client/addon/components/TestSelect.tsx +2 -2
  256. package/src/client/addon/components/Tools.tsx +2 -2
  257. package/src/client/addon/controller.ts +4 -4
  258. package/src/client/addon/makeDecorator.ts +69 -0
  259. package/src/client/addon/manager.ts +38 -37
  260. package/src/client/addon/preset.ts +2 -1
  261. package/src/client/addon/withCreevey.ts +16 -19
  262. package/src/client/shared/components/ImagesView/BlendView.tsx +1 -1
  263. package/src/client/shared/components/ImagesView/ImagesView.tsx +1 -1
  264. package/src/client/shared/components/ImagesView/SideBySideView.tsx +2 -2
  265. package/src/client/shared/components/ImagesView/SlideView.tsx +2 -2
  266. package/src/client/shared/components/ImagesView/SwapView.tsx +20 -2
  267. package/src/client/shared/components/ImagesView/common.ts +1 -1
  268. package/src/client/shared/components/PageFooter/PageFooter.tsx +1 -1
  269. package/src/client/shared/components/PageFooter/Paging.tsx +1 -1
  270. package/src/client/shared/components/PageHeader/ImagePreview.tsx +2 -1
  271. package/src/client/shared/components/PageHeader/PageHeader.tsx +23 -7
  272. package/src/client/shared/components/ResultsPage.tsx +33 -10
  273. package/src/client/shared/creeveyClientApi.ts +19 -1
  274. package/src/client/shared/helpers.ts +4 -24
  275. package/src/client/web/CreeveyApp.tsx +30 -9
  276. package/src/client/web/CreeveyContext.tsx +11 -0
  277. package/src/client/web/CreeveyLoader.tsx +2 -2
  278. package/src/client/web/CreeveyView/SideBar/Checkbox.tsx +3 -3
  279. package/src/client/web/CreeveyView/SideBar/Search.tsx +4 -4
  280. package/src/client/web/CreeveyView/SideBar/SideBar.tsx +11 -6
  281. package/src/client/web/CreeveyView/SideBar/SideBarFooter.tsx +48 -15
  282. package/src/client/web/CreeveyView/SideBar/SideBarHeader.tsx +20 -5
  283. package/src/client/web/CreeveyView/SideBar/SuiteLink.tsx +12 -12
  284. package/src/client/web/CreeveyView/SideBar/TestLink.tsx +10 -10
  285. package/src/client/web/CreeveyView/SideBar/TestStatusIcon.tsx +2 -2
  286. package/src/client/web/CreeveyView/SideBar/TestsStatus.tsx +3 -2
  287. package/src/client/web/CreeveyView/SideBar/Toggle.tsx +1 -1
  288. package/src/client/web/KeyboardEventsContext.tsx +61 -73
  289. package/src/client/web/index.tsx +10 -5
  290. package/src/client/web/themes.ts +24 -0
  291. package/src/creevey.ts +92 -38
  292. package/src/playwright/generator.ts +322 -0
  293. package/src/playwright/helpers.ts +31 -0
  294. package/src/playwright/reporter.ts +381 -0
  295. package/src/playwright/setup.ts +84 -0
  296. package/src/playwright.ts +1 -0
  297. package/src/server/compare.ts +260 -0
  298. package/src/server/config.ts +52 -9
  299. package/src/server/connection.ts +26 -0
  300. package/src/server/docker.ts +62 -34
  301. package/src/server/index.ts +166 -79
  302. package/src/server/master/api.ts +94 -28
  303. package/src/server/master/handlers/capture-handler.ts +20 -0
  304. package/src/server/master/handlers/index.ts +4 -0
  305. package/src/server/master/handlers/ping-handler.ts +6 -0
  306. package/src/server/master/handlers/static-handler.ts +16 -0
  307. package/src/server/master/handlers/stories-handler.ts +20 -0
  308. package/src/server/master/master.ts +10 -27
  309. package/src/server/master/pool.ts +7 -3
  310. package/src/server/master/queue.ts +21 -7
  311. package/src/server/master/runner.ts +123 -134
  312. package/src/server/master/server.ts +214 -101
  313. package/src/server/master/start.ts +19 -41
  314. package/src/server/master/testsManager.ts +316 -0
  315. package/src/server/playwright/docker-file.ts +20 -8
  316. package/src/server/playwright/docker.ts +16 -3
  317. package/src/server/playwright/index-source.mjs +16 -0
  318. package/src/server/playwright/internal.ts +176 -103
  319. package/src/server/playwright/webdriver.ts +4 -10
  320. package/src/server/providers/browser.ts +4 -3
  321. package/src/server/providers/hybrid.ts +2 -3
  322. package/src/server/report.ts +51 -0
  323. package/src/server/reporters/creevey.ts +71 -0
  324. package/src/server/reporters/index.ts +11 -0
  325. package/src/server/reporters/junit.ts +207 -0
  326. package/src/server/reporters/teamcity.ts +74 -0
  327. package/src/server/selenium/internal.ts +70 -53
  328. package/src/server/selenium/selenoid.ts +13 -6
  329. package/src/server/selenium/webdriver.ts +8 -12
  330. package/src/server/shutdown.ts +19 -0
  331. package/src/server/stories.ts +1 -12
  332. package/src/server/telemetry.ts +3 -3
  333. package/src/server/testsFiles/parser.ts +52 -4
  334. package/src/server/utils.ts +124 -16
  335. package/src/server/webdriver.ts +1 -1
  336. package/src/server/worker/context.ts +14 -0
  337. package/src/server/worker/match-image.ts +16 -248
  338. package/src/server/worker/start.ts +49 -79
  339. package/src/shared/index.ts +10 -8
  340. package/src/types.ts +91 -58
  341. package/types/global.d.ts +1 -0
  342. package/dist/client/web/assets/index-DB8lHlJw.js +0 -591
  343. package/dist/server/reporter.d.ts +0 -26
  344. package/dist/server/reporter.js +0 -108
  345. package/dist/server/reporter.js.map +0 -1
  346. package/dist/server/update.d.ts +0 -2
  347. package/dist/server/update.js +0 -53
  348. package/dist/server/update.js.map +0 -1
  349. package/src/server/reporter.ts +0 -139
  350. package/src/server/update.ts +0 -74
@@ -4,15 +4,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.InternalBrowser = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const assert_1 = __importDefault(require("assert"));
7
9
  const playwright_core_1 = require("playwright-core");
8
10
  const chalk_1 = __importDefault(require("chalk"));
9
11
  const uuid_1 = require("uuid");
12
+ const loglevel_1 = __importDefault(require("loglevel"));
10
13
  const loglevel_plugin_prefix_1 = __importDefault(require("loglevel-plugin-prefix"));
11
14
  const types_1 = require("../../types");
12
- const messages_1 = require("../messages");
13
15
  const webdriver_1 = require("../webdriver");
14
16
  const utils_1 = require("../utils");
15
17
  const logger_1 = require("../logger");
18
+ const context_1 = require("../worker/context");
19
+ const browsers = {
20
+ chromium: playwright_core_1.chromium,
21
+ firefox: playwright_core_1.firefox,
22
+ webkit: playwright_core_1.webkit,
23
+ };
16
24
  async function tryConnect(type, gridUrl) {
17
25
  let timeout = null;
18
26
  let isTimeout = false;
@@ -42,22 +50,47 @@ async function tryConnect(type, gridUrl) {
42
50
  })(),
43
51
  ]);
44
52
  }
53
+ async function tryCreateBrowserContext(browser, options) {
54
+ try {
55
+ const context = await browser.newContext(options);
56
+ const page = await context.newPage();
57
+ return { context, page };
58
+ }
59
+ catch (error) {
60
+ if (error instanceof Error && error.message.includes('ffmpeg')) {
61
+ (0, logger_1.logger)().warn('Failed to create browser context with video recording. Video recording will be disabled.');
62
+ (0, logger_1.logger)().warn(error);
63
+ const context = await browser.newContext({
64
+ ...options,
65
+ recordVideo: undefined,
66
+ });
67
+ const page = await context.newPage();
68
+ return { context, page };
69
+ }
70
+ throw error;
71
+ }
72
+ }
45
73
  class InternalBrowser {
46
74
  #isShuttingDown = false;
47
75
  #browser;
76
+ #context;
48
77
  #page;
78
+ #traceDir;
49
79
  #sessionId = (0, uuid_1.v4)();
50
80
  #serverHost = null;
51
81
  #serverPort;
52
- #unsubscribe = types_1.noop;
53
- constructor(browser, page, port) {
82
+ #debug;
83
+ #storybookGlobals;
84
+ constructor(browser, context, page, traceDir, port, debug = false, storybookGlobals) {
54
85
  this.#browser = browser;
86
+ this.#context = context;
55
87
  this.#page = page;
88
+ this.#traceDir = traceDir;
56
89
  this.#serverPort = port;
57
- this.#unsubscribe = (0, messages_1.subscribeOn)('shutdown', () => {
58
- void this.closeBrowser();
59
- });
90
+ this.#debug = debug;
91
+ this.#storybookGlobals = storybookGlobals;
60
92
  }
93
+ // TODO Expose #browser and #context in tests
61
94
  get browser() {
62
95
  return this.#page;
63
96
  }
@@ -68,41 +101,52 @@ class InternalBrowser {
68
101
  if (this.#isShuttingDown)
69
102
  return;
70
103
  this.#isShuttingDown = true;
71
- this.#unsubscribe();
72
- try {
73
- await this.#page.close();
74
- await this.#browser.close();
75
- }
76
- catch (_) {
77
- /* noop */
104
+ const teardown = [
105
+ this.#debug ? () => this.#context.tracing.stop({ path: path_1.default.join(this.#traceDir, 'trace.zip') }) : null,
106
+ () => this.#page.close(),
107
+ this.#debug ? () => this.#page.video()?.saveAs(path_1.default.join(this.#traceDir, 'video.webm')) : null,
108
+ () => this.#context.close(),
109
+ () => this.#browser.close(),
110
+ () => (0, context_1.removeWorkerContainer)(),
111
+ ];
112
+ for (const fn of teardown) {
113
+ try {
114
+ if (fn)
115
+ await fn();
116
+ }
117
+ catch {
118
+ /* noop */
119
+ }
78
120
  }
79
121
  }
80
122
  async takeScreenshot(captureElement, ignoreElements) {
81
- // TODO Implement features from selenium `takeScreenshot`
82
- // TODO Do we need scroll bar hack from selenium?
83
123
  const ignore = Array.isArray(ignoreElements) ? ignoreElements : ignoreElements ? [ignoreElements] : [];
84
124
  const mask = ignore.map((el) => this.#page.locator(el));
85
125
  if (captureElement) {
86
126
  const element = await this.#page.$(captureElement);
87
127
  if (!element)
88
128
  throw new Error(`Element with selector ${captureElement} not found`);
129
+ (0, logger_1.logger)().debug(`Capturing ${chalk_1.default.cyan(captureElement)} element`);
89
130
  return element.screenshot({
131
+ style: ':root { overflow: hidden !important; }',
90
132
  animations: 'disabled',
91
133
  mask,
92
- style: ':root { overflow: hidden !important; }',
93
134
  });
94
135
  }
95
- return this.#page.screenshot({ animations: 'disabled', mask, fullPage: true });
136
+ (0, logger_1.logger)().debug('Capturing viewport screenshot');
137
+ return this.#page.screenshot({ animations: 'disabled', mask });
96
138
  }
97
139
  waitForComplete(callback) {
98
140
  void this.#page.evaluate(() => window.__CREEVEY_HAS_PLAY_COMPLETED_YET__()).then(callback);
99
141
  }
100
142
  async selectStory(id, waitForReady = false) {
101
143
  // NOTE: Global variables might be reset after hot reload. I think it's workaround, maybe we need better solution
144
+ await this.updateStorybookGlobals();
102
145
  await this.updateBrowserGlobalVariables();
103
146
  await this.resetMousePosition();
104
147
  (0, logger_1.logger)().debug(`Triggering 'SetCurrentStory' event with storyId ${chalk_1.default.magenta(id)}`);
105
148
  const result = await this.#page.evaluate(([id, shouldWaitForReady]) => {
149
+ // TODO: Don't use creevey related global variables, inline this function to simplify support
106
150
  if (typeof window.__CREEVEY_SELECT_STORY__ == 'undefined') {
107
151
  return [
108
152
  "Creevey can't switch story. This may happened if forget to add `creevey` addon to your storybook config, or storybook not loaded in browser due syntax error.",
@@ -126,65 +170,68 @@ class InternalBrowser {
126
170
  });
127
171
  }, [story.id, updatedArgs, types_1.StorybookEvents.UPDATE_STORY_ARGS, types_1.StorybookEvents.STORY_RENDERED]);
128
172
  }
129
- async loadStoriesFromBrowser(retry = false) {
130
- try {
131
- const stories = await this.#page.evaluate(() => window.__CREEVEY_GET_STORIES__());
132
- if (!stories)
133
- throw new Error("Can't get stories, it seems creevey or storybook API isn't available");
134
- return stories;
135
- }
136
- catch (error) {
137
- // TODO Check how other solutions with playwright get stories from storybook
138
- if (retry)
139
- throw error;
140
- await new Promise((resolve) => setTimeout(resolve, 1000));
141
- // NOTE: Try one more time because of dynamic nature of vite and storybook
142
- return this.loadStoriesFromBrowser(true);
143
- }
173
+ async loadStoriesFromBrowser() {
174
+ const stories = await this.#page.evaluate(() => window.__CREEVEY_GET_STORIES__());
175
+ if (!stories)
176
+ throw new Error("Can't get stories, it seems creevey or storybook API isn't available");
177
+ return stories;
144
178
  }
145
179
  static async getBrowser(browserName, gridUrl, config, options) {
146
180
  const browserConfig = config.browsers[browserName];
147
- const { storybookUrl: address = config.storybookUrl, viewport, _storybookGlobals, seleniumCapabilities, playwrightOptions, } = browserConfig;
181
+ const { storybookUrl: address = config.storybookUrl, viewport,
182
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
183
+ _storybookGlobals, storybookGlobals = _storybookGlobals, seleniumCapabilities, playwrightOptions, } = browserConfig;
184
+ const parsedUrl = new URL(gridUrl);
185
+ const tracesDir = path_1.default.join(playwrightOptions?.tracesDir ?? path_1.default.join(config.reportDir, 'traces'), process.pid.toString());
186
+ const cacheDir = await (0, utils_1.getCreeveyCache)();
187
+ (0, assert_1.default)(cacheDir, "Couldn't get cache directory");
148
188
  let browser = null;
149
- if (new URL(gridUrl).protocol === 'ws:') {
150
- switch (browserConfig.browserName) {
151
- case 'chromium':
152
- browser = await tryConnect(playwright_core_1.chromium, gridUrl);
153
- break;
154
- case 'firefox':
155
- browser = await tryConnect(playwright_core_1.firefox, gridUrl);
156
- break;
157
- case 'webkit':
158
- browser = await tryConnect(playwright_core_1.webkit, gridUrl);
159
- break;
160
- default:
161
- (0, logger_1.logger)().error(`Unknown browser ${browserConfig.browserName}. Playwright supports browsers: chromium, firefox, webkit`);
162
- }
189
+ if (parsedUrl.protocol === 'ws:') {
190
+ browser = await tryConnect(browsers[(0, utils_1.resolvePlaywrightBrowserType)(browserConfig.browserName)], gridUrl);
191
+ }
192
+ else if (parsedUrl.protocol === 'creevey:') {
193
+ browser = await browsers[(0, utils_1.resolvePlaywrightBrowserType)(browserConfig.browserName)].launch({
194
+ ...playwrightOptions,
195
+ tracesDir: path_1.default.join(cacheDir, `${process.pid}`),
196
+ });
163
197
  }
164
198
  else {
165
- if (browserConfig.browserName != 'chrome') {
199
+ if (browserConfig.browserName !== 'chrome') {
166
200
  (0, logger_1.logger)().error("Playwright's Selenium Grid feature supports only chrome browser");
167
201
  return null;
168
202
  }
169
203
  process.env.SELENIUM_REMOTE_URL = gridUrl;
170
204
  process.env.SELENIUM_REMOTE_CAPABILITIES = JSON.stringify(seleniumCapabilities);
171
- browser = await playwright_core_1.chromium.launch(playwrightOptions);
205
+ browser = await playwright_core_1.chromium.launch({ ...playwrightOptions, tracesDir: path_1.default.join(cacheDir, `${process.pid}`) });
172
206
  }
173
207
  if (!browser) {
174
208
  return null;
175
209
  }
176
- const page = await browser.newPage();
177
- // TODO Add debug output
178
- const internalBrowser = new InternalBrowser(browser, page, options.port);
210
+ const { context, page } = await tryCreateBrowserContext(browser, {
211
+ recordVideo: options.debug
212
+ ? {
213
+ dir: path_1.default.join(cacheDir, `${process.pid}`),
214
+ size: viewport,
215
+ }
216
+ : undefined,
217
+ screen: viewport,
218
+ viewport,
219
+ });
220
+ if (options.debug) {
221
+ await context.tracing.start(Object.assign({ screenshots: true, snapshots: true, sources: true }, playwrightOptions?.trace));
222
+ }
223
+ if ((0, logger_1.logger)().getLevel() <= loglevel_1.default.levels.DEBUG) {
224
+ page.on('console', (msg) => {
225
+ (0, logger_1.logger)().debug(`Console message: ${msg.text()}`);
226
+ });
227
+ }
228
+ const internalBrowser = new InternalBrowser(browser, context, page, tracesDir, options.port, options.debug, storybookGlobals);
179
229
  try {
180
230
  if (utils_1.isShuttingDown.current)
181
231
  return null;
182
232
  const done = await internalBrowser.init({
183
233
  browserName,
184
- viewport,
185
234
  storybookUrl: address,
186
- storybookGlobals: _storybookGlobals,
187
- resolveStorybookUrl: config.resolveStorybookUrl,
188
235
  });
189
236
  return done ? internalBrowser : null;
190
237
  }
@@ -198,7 +245,7 @@ class InternalBrowser {
198
245
  return null;
199
246
  }
200
247
  }
201
- async init({ browserName, viewport, storybookUrl, storybookGlobals, resolveStorybookUrl, }) {
248
+ async init({ browserName, storybookUrl }) {
202
249
  const sessionId = this.#sessionId;
203
250
  loglevel_plugin_prefix_1.default.apply((0, logger_1.logger)(), {
204
251
  format(level) {
@@ -208,30 +255,22 @@ class InternalBrowser {
208
255
  });
209
256
  this.#page.setDefaultTimeout(60000);
210
257
  return await (0, utils_1.runSequence)([
211
- () => this.openStorybookPage(storybookUrl, resolveStorybookUrl),
258
+ () => this.openStorybookPage(storybookUrl),
212
259
  () => this.waitForStorybook(),
213
- () => this.updateStorybookGlobals(storybookGlobals),
260
+ () => this.triggerViteReload(),
261
+ () => this.updateStorybookGlobals(),
214
262
  () => this.resolveCreeveyHost(),
215
263
  () => this.updateBrowserGlobalVariables(),
216
- () => this.resizeViewport(viewport),
217
264
  ], () => !this.#isShuttingDown);
218
265
  }
219
- async openStorybookPage(storybookUrl, resolver) {
266
+ async openStorybookPage(storybookUrl) {
220
267
  if (!webdriver_1.LOCALHOST_REGEXP.test(storybookUrl)) {
221
268
  await this.#page.goto((0, webdriver_1.appendIframePath)(storybookUrl));
222
269
  return;
223
270
  }
224
271
  try {
225
- if (resolver) {
226
- (0, logger_1.logger)().debug('Resolving storybook url with custom resolver');
227
- const resolvedUrl = await resolver();
228
- (0, logger_1.logger)().debug(`Resolver storybook url ${resolvedUrl}`);
229
- await this.#page.goto((0, webdriver_1.appendIframePath)(resolvedUrl));
230
- }
231
- else {
232
- // TODO this.#page.setDefaultNavigationTimeout(10000);
233
- await (0, webdriver_1.resolveStorybookUrl)((0, webdriver_1.appendIframePath)(storybookUrl), (url) => this.checkUrl(url));
234
- }
272
+ const resolvedUrl = await (0, webdriver_1.resolveStorybookUrl)((0, webdriver_1.appendIframePath)(storybookUrl), (url) => this.checkUrl(url));
273
+ await this.#page.goto(resolvedUrl);
235
274
  }
236
275
  catch (error) {
237
276
  (0, logger_1.logger)().error('Failed to resolve storybook URL', error instanceof Error ? error.message : '');
@@ -239,9 +278,10 @@ class InternalBrowser {
239
278
  }
240
279
  }
241
280
  async checkUrl(url) {
281
+ const page = await this.#browser.newPage();
242
282
  try {
243
283
  (0, logger_1.logger)().debug(`Opening ${chalk_1.default.magenta(url)} and checking the page source`);
244
- const response = await this.#page.goto(url, { waitUntil: 'commit' });
284
+ const response = await page.goto(url, { waitUntil: 'commit' });
245
285
  const source = await response?.text();
246
286
  (0, logger_1.logger)().debug(`Checking ${chalk_1.default.cyan(`#${webdriver_1.storybookRootID}`)} existence on ${chalk_1.default.magenta(url)}`);
247
287
  return source?.includes(`id="${webdriver_1.storybookRootID}"`) ?? false;
@@ -249,10 +289,12 @@ class InternalBrowser {
249
289
  catch {
250
290
  return false;
251
291
  }
292
+ finally {
293
+ await page.close();
294
+ }
252
295
  }
253
296
  async waitForStorybook() {
254
- // TODO Duplicated code with selenium
255
- (0, logger_1.logger)().debug('Waiting for `setStories` event to make sure that storybook is initiated');
297
+ (0, logger_1.logger)().debug('Waiting for Storybook to initiate');
256
298
  const isTimeout = await Promise.race([
257
299
  new Promise((resolve) => {
258
300
  setTimeout(() => {
@@ -262,6 +304,8 @@ class InternalBrowser {
262
304
  (async () => {
263
305
  let wait = true;
264
306
  do {
307
+ if (this.#page.isClosed())
308
+ return false;
265
309
  try {
266
310
  // TODO Research a different way to ensure storybook is initiated
267
311
  wait = await this.#page.evaluate((SET_GLOBALS) => {
@@ -274,25 +318,43 @@ class InternalBrowser {
274
318
  }
275
319
  catch (e) {
276
320
  (0, logger_1.logger)().debug('An error has been caught during the script:', e);
321
+ if (this.#page.isClosed())
322
+ throw e;
277
323
  }
324
+ if (wait)
325
+ await new Promise((resolve) => setTimeout(resolve, 1000));
278
326
  } while (wait);
279
327
  return false;
280
328
  })(),
281
329
  ]);
282
- // TODO Change the message to describe a reason why it might happen
283
330
  if (isTimeout)
284
- throw new Error('Failed to wait `setStories` event');
331
+ throw new Error('Failed to wait Storybook init');
285
332
  }
286
- async updateStorybookGlobals(globals) {
287
- if (!globals)
333
+ // TODO Doesn't work for some reason, maybe because of race-condition
334
+ async triggerViteReload() {
335
+ // NOTE: On the first load, Vite might try to optimize some dependencies and reload the page
336
+ // We need to trigger reload earlier to avoid unnecessary reloads further
337
+ try {
338
+ await this.#page.evaluate(async () => {
339
+ await window.__STORYBOOK_PREVIEW__.extract();
340
+ });
341
+ }
342
+ catch {
343
+ await this.waitForStorybook();
344
+ }
345
+ }
346
+ async updateStorybookGlobals() {
347
+ if (!this.#storybookGlobals)
288
348
  return;
289
349
  (0, logger_1.logger)().debug('Applying storybook globals');
290
350
  await this.#page.evaluate((globals) => {
291
351
  window.__CREEVEY_UPDATE_GLOBALS__(globals);
292
- }, globals);
352
+ }, this.#storybookGlobals);
293
353
  }
294
354
  async resolveCreeveyHost() {
295
- const addresses = (0, webdriver_1.getAddresses)();
355
+ const storybookUrl = this.#page.url();
356
+ const storybookHost = new URL(storybookUrl).hostname;
357
+ const addresses = [storybookHost, ...(0, webdriver_1.getAddresses)()];
296
358
  this.#serverHost = await this.#page.evaluate(([hosts, port]) => {
297
359
  return Promise.all(hosts.map((host) => {
298
360
  return Promise.race([
@@ -310,18 +372,16 @@ class InternalBrowser {
310
372
  throw new Error("Can't reach creevey server from a browser");
311
373
  }
312
374
  async updateBrowserGlobalVariables() {
375
+ (0, logger_1.logger)().debug('Updating browser global variables');
313
376
  await this.#page.evaluate(([workerId, creeveyHost, creeveyPort]) => {
377
+ window.__CREEVEY_ENV__ = true;
314
378
  window.__CREEVEY_WORKER_ID__ = workerId;
315
379
  window.__CREEVEY_SERVER_HOST__ = creeveyHost ?? 'localhost';
316
380
  window.__CREEVEY_SERVER_PORT__ = creeveyPort;
317
381
  }, [process.pid, this.#serverHost, this.#serverPort]);
318
382
  }
319
- async resizeViewport(viewport) {
320
- if (!viewport)
321
- return;
322
- await this.#page.setViewportSize(viewport);
323
- }
324
383
  async resetMousePosition() {
384
+ (0, logger_1.logger)().debug('Resetting mouse position to (0, 0)');
325
385
  await this.#page.mouse.move(0, 0);
326
386
  }
327
387
  }
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/server/playwright/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/server/playwright/internal.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import { Args } from '@storybook/csf';
2
- import { Config, Options, ServerTest, StoriesRaw, StoryInput } from '../../types';
1
+ import type { Args } from 'storybook/internal/types';
2
+ import { Config, ServerTest, StoriesRaw, StoryInput, WorkerOptions } from '../../types';
3
3
  import { CreeveyWebdriverBase } from '../webdriver';
4
4
  export declare class PlaywrightWebdriver extends CreeveyWebdriverBase {
5
5
  #private;
6
- constructor(browser: string, gridUrl: string, config: Config, options: Options);
6
+ constructor(browser: string, gridUrl: string, config: Config, options: WorkerOptions);
7
7
  get browser(): import("playwright-core").Page | undefined;
8
8
  getSessionId(): Promise<string>;
9
9
  openBrowser(fresh?: boolean): Promise<PlaywrightWebdriver | null>;
@@ -26,7 +26,6 @@ class PlaywrightWebdriver extends webdriver_1.CreeveyWebdriverBase {
26
26
  }
27
27
  getSessionId() {
28
28
  if (!this.#browser) {
29
- // TODO Describe the error
30
29
  throw new Error('Browser is not initialized');
31
30
  }
32
31
  return Promise.resolve(this.#browser.sessionId);
@@ -67,7 +66,6 @@ class PlaywrightWebdriver extends webdriver_1.CreeveyWebdriverBase {
67
66
  }
68
67
  async loadStoriesFromBrowser() {
69
68
  if (!this.#browser) {
70
- // TODO Describe the error
71
69
  throw new Error('Browser is not initialized');
72
70
  }
73
71
  return this.#browser.loadStoriesFromBrowser();
@@ -77,28 +75,24 @@ class PlaywrightWebdriver extends webdriver_1.CreeveyWebdriverBase {
77
75
  }
78
76
  async takeScreenshot(captureElement, ignoreElements) {
79
77
  if (!this.#browser) {
80
- // TODO Describe the error
81
78
  throw new Error('Browser is not initialized');
82
79
  }
83
80
  return this.#browser.takeScreenshot(captureElement, ignoreElements);
84
81
  }
85
82
  waitForComplete(callback) {
86
83
  if (!this.#browser) {
87
- // TODO Describe the error
88
84
  throw new Error('Browser is not initialized');
89
85
  }
90
86
  this.#browser.waitForComplete(callback);
91
87
  }
92
88
  async selectStory(id, waitForReady) {
93
89
  if (!this.#browser) {
94
- // TODO Describe the error
95
90
  throw new Error('Browser is not initialized');
96
91
  }
97
92
  return this.#browser.selectStory(id, waitForReady);
98
93
  }
99
94
  async updateStoryArgs(story, updatedArgs) {
100
95
  if (!this.#browser) {
101
- // TODO Describe the error
102
96
  throw new Error('Browser is not initialized');
103
97
  }
104
98
  return this.#browser.updateStoryArgs(story, updatedArgs);
@@ -1 +1 @@
1
- {"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../../../src/server/playwright/webdriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../../../src/server/playwright/webdriver.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ const loadStories = async (_config, storiesListener, webdriver) => {
25
25
  `Creevey will not load tests defined in story parameters from following stories:\n` +
26
26
  oldTests.join('\n'));
27
27
  unsubscribe();
28
- resolve(stories);
28
+ resolve((0, index_js_1.deserializeRawStories)(stories));
29
29
  }
30
30
  });
31
31
  (0, messages_js_1.sendStoriesMessage)(worker, { type: 'get' });
@@ -40,11 +40,12 @@ const loadStories = async (_config, storiesListener, webdriver) => {
40
40
  else {
41
41
  (0, messages_js_1.subscribeOn)('stories', (message) => {
42
42
  if (message.type == 'get')
43
- (0, messages_js_1.emitStoriesMessage)({ type: 'set', payload: { stories, oldTests: storiesWithOldTests } });
43
+ (0, messages_js_1.emitStoriesMessage)({ type: 'set', payload: { stories: rawStories, oldTests: storiesWithOldTests } });
44
44
  if (message.type == 'update')
45
45
  storiesListener(new Map(message.payload));
46
46
  });
47
- const stories = (0, index_js_1.deserializeRawStories)((await webdriver?.loadStoriesFromBrowser()) ?? {});
47
+ const rawStories = (await webdriver?.loadStoriesFromBrowser()) ?? {};
48
+ const stories = (0, index_js_1.deserializeRawStories)(rawStories);
48
49
  const storiesWithOldTests = [];
49
50
  Object.values(stories).forEach((story) => {
50
51
  if (story.parameters?.creevey?.tests) {
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/server/providers/browser.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA8B;AAE9B,gDAAwG;AACxG,6CAA2C;AAC3C,4CAAsC;AACtC,oDAA8D;AAE9D,uCAAuC;AAChC,MAAM,WAAW,GAAoB,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE;IACxF,IAAI,iBAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAO,CAAC,OAAO,IAAI,EAAE,CAAC;iBAChD,MAAM,CAAC,oBAAS,CAAC;iBACjB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAE1C,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,WAAW,GAAG,IAAA,+BAAiB,EAAC,MAAM,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;oBACnE,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;wBAC1B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;wBAC9C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;4BACrB,IAAA,kBAAM,GAAE,CAAC,IAAI,CACX,kEAAkE;gCAChE,mFAAmF;gCACnF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CACtB,CAAC;wBACJ,WAAW,EAAE,CAAC;wBACd,OAAO,CAAC,OAAO,CAAC,CAAC;oBACnB,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAA,gCAAkB,EAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,CAAC;YACD,IAAA,yBAAW,EAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gBACjC,mCAAmC;gBACnC,IAAI,OAAO,CAAC,IAAI,IAAI,QAAQ;oBAAE,eAAe,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,IAAA,yBAAW,EAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK;gBACvB,IAAA,gCAAkB,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,EAAE,CAAC,CAAC;YAC3F,IAAI,OAAO,CAAC,IAAI,IAAI,QAAQ;gBAAE,eAAe,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,gCAAqB,EAAC,CAAC,MAAM,SAAS,EAAE,sBAAsB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAEzF,MAAM,mBAAmB,GAAa,EAAE,CAAC;QAEzC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,IAAK,KAAsB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBACvD,OAAQ,KAAsB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC;gBAC1D,mBAAmB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AA/CW,QAAA,WAAW,eA+CtB;AAEF,mBAAW,CAAC,YAAY,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/server/providers/browser.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA8B;AAE9B,gDAAwG;AACxG,6CAA2C;AAC3C,4CAAsC;AACtC,oDAA8D;AAE9D,uCAAuC;AAChC,MAAM,WAAW,GAAoB,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE;IACxF,IAAI,iBAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAO,CAAC,OAAO,IAAI,EAAE,CAAC;iBAChD,MAAM,CAAC,oBAAS,CAAC;iBACjB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAE1C,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,WAAW,GAAG,IAAA,+BAAiB,EAAC,MAAM,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;oBACnE,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;wBAC1B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;wBAC9C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;4BACrB,IAAA,kBAAM,GAAE,CAAC,IAAI,CACX,kEAAkE;gCAChE,mFAAmF;gCACnF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CACtB,CAAC;wBACJ,WAAW,EAAE,CAAC;wBACd,OAAO,CAAC,IAAA,gCAAqB,EAAC,OAAO,CAAC,CAAC,CAAC;oBAC1C,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAA,gCAAkB,EAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,CAAC;YACD,IAAA,yBAAW,EAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gBACjC,mCAAmC;gBACnC,IAAI,OAAO,CAAC,IAAI,IAAI,QAAQ;oBAAE,eAAe,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,IAAA,yBAAW,EAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK;gBACvB,IAAA,gCAAkB,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,mBAAmB,EAAE,EAAE,CAAC,CAAC;YACvG,IAAI,OAAO,CAAC,IAAI,IAAI,QAAQ;gBAAE,eAAe,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS,EAAE,sBAAsB,EAAE,CAAC,IAAI,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG,IAAA,gCAAqB,EAAC,UAAU,CAAC,CAAC;QAElD,MAAM,mBAAmB,GAAa,EAAE,CAAC;QAEzC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,IAAK,KAAsB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBACvD,OAAQ,KAAsB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC;gBAC1D,mBAAmB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAhDW,QAAA,WAAW,eAgDtB;AAEF,mBAAW,CAAC,YAAY,GAAG,SAAS,CAAC"}
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.loadStories = void 0;
7
- const chokidar_1 = __importDefault(require("chokidar"));
7
+ const chokidar_1 = require("chokidar");
8
8
  const browser_js_1 = require("./browser.js");
9
9
  const logger_js_1 = require("../logger.js");
10
10
  const parser_js_1 = __importDefault(require("../testsFiles/parser.js"));
@@ -44,7 +44,7 @@ async function parseParams(config, listener) {
44
44
  }
45
45
  const testFiles = (0, utils_js_1.readDirRecursive)(config.testsDir).filter((file) => config.testsRegex?.test(file));
46
46
  if (listener) {
47
- chokidar_1.default.watch(testFiles).on('change', (filePath) => {
47
+ (0, chokidar_1.watch)(testFiles).on('change', (filePath) => {
48
48
  (0, logger_js_1.logger)().debug(`changed: ${filePath}`);
49
49
  // doesn't work, always returns {} due modules caching
50
50
  // see https://github.com/nodejs/modules/issues/307
@@ -1 +1 @@
1
- {"version":3,"file":"hybrid.js","sourceRoot":"","sources":["../../../src/server/providers/hybrid.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAgC;AAEhC,6CAA8D;AAE9D,4CAAsC;AACtC,wEAAwE;AACxE,0CAA+C;AAC/C,oDAA0D;AAEnD,MAAM,WAAW,GAAoB,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE;IACvF,IAAI,sBAAsB,GAAoC,EAAE,CAAC;IAEjE,MAAM,2BAA2B,GAAG,CAAC,KAAmB,EAAE,aAAiC,EAAQ,EAAE;QACnG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,IAAA,4BAAiB,EAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAe,EACnC,MAAM,EACN,CAAC,qBAAqB,EAAE,EAAE;QACxB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE;YACvE,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7B,MAAM,aAAa,GAAG,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,aAAa;oBAAE,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,eAAe,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC,EACD,SAAS,CACV,CAAC;IAEF,oCAAoC;IACpC,sBAAsB,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;IAEtF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE;QACnD,MAAM,aAAa,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,aAAa;YAAE,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAhCW,QAAA,WAAW,eAgCtB;AAEF,oCAAoC;AACpC,KAAK,UAAU,WAAW,CACxB,MAAc,EACd,QAAiD;IAEjD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,SAAS,GAAG,IAAA,2BAAgB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpG,IAAI,QAAQ,EAAE,CAAC;QACb,kBAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;YAClD,IAAA,kBAAM,GAAE,CAAC,KAAK,CAAC,YAAY,QAAQ,EAAE,CAAC,CAAC;YAEvC,sDAAsD;YACtD,mDAAmD;YACnD,KAAK,IAAA,mBAAK,EAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAA,mBAAK,EAAC,SAAS,CAAC,CAAC;AAC1B,CAAC;AAED,mBAAW,CAAC,YAAY,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"hybrid.js","sourceRoot":"","sources":["../../../src/server/providers/hybrid.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAiC;AACjC,6CAA8D;AAE9D,4CAAsC;AACtC,wEAAwE;AACxE,0CAA+C;AAC/C,oDAA0D;AAEnD,MAAM,WAAW,GAAoB,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE;IACvF,IAAI,sBAAsB,GAAoC,EAAE,CAAC;IAEjE,MAAM,2BAA2B,GAAG,CAAC,KAAmB,EAAE,aAAiC,EAAQ,EAAE;QACnG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,IAAA,4BAAiB,EAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAe,EACnC,MAAM,EACN,CAAC,qBAAqB,EAAE,EAAE;QACxB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE;YACvE,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7B,MAAM,aAAa,GAAG,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,aAAa;oBAAE,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,eAAe,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC,EACD,SAAS,CACV,CAAC;IAEF,oCAAoC;IACpC,sBAAsB,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;IAEtF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE;QACnD,MAAM,aAAa,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,aAAa;YAAE,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAhCW,QAAA,WAAW,eAgCtB;AAEF,oCAAoC;AACpC,KAAK,UAAU,WAAW,CACxB,MAAc,EACd,QAAiD;IAEjD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,SAAS,GAAG,IAAA,2BAAgB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpG,IAAI,QAAQ,EAAE,CAAC;QACb,IAAA,gBAAK,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;YACzC,IAAA,kBAAM,GAAE,CAAC,KAAK,CAAC,YAAY,QAAQ,EAAE,CAAC,CAAC;YAEvC,sDAAsD;YACtD,mDAAmD;YACnD,KAAK,IAAA,mBAAK,EAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAA,mBAAK,EAAC,SAAS,CAAC,CAAC;AAC1B,CAAC;AAED,mBAAW,CAAC,YAAY,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { Config } from '../types.js';
2
+ /**
3
+ * UI Update Mode implementation.
4
+ * This mode allows users to review and approve screenshots from the browser interface.
5
+ * It combines the functionality of both --ui and --update flags.
6
+ *
7
+ * @param config Creevey configuration
8
+ * @param port Port to run the server on
9
+ */
10
+ export declare function report(config: Config, reportDir: string, port: number): void;