creevey 0.9.0-non-webpack.2 → 0.9.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 (533) hide show
  1. package/.yarnrc.yml +1 -0
  2. package/AUTHORS +15 -15
  3. package/CHANGELOG.md +1326 -1275
  4. package/LICENSE +21 -21
  5. package/README.md +4 -3
  6. package/dist/cli.d.ts +2 -0
  7. package/dist/cli.js +5 -0
  8. package/dist/cli.js.map +1 -0
  9. package/dist/client/addon/components/Addon.d.ts +8 -0
  10. package/dist/client/addon/components/Addon.js +57 -0
  11. package/dist/client/addon/components/Addon.js.map +1 -0
  12. package/{lib/types → dist}/client/addon/components/Icons.d.ts +7 -7
  13. package/dist/client/addon/components/Icons.js +18 -0
  14. package/dist/client/addon/components/Icons.js.map +1 -0
  15. package/{lib/types → dist}/client/addon/components/Panel.d.ts +9 -9
  16. package/dist/client/addon/components/Panel.js +32 -0
  17. package/dist/client/addon/components/Panel.js.map +1 -0
  18. package/{lib/types → dist}/client/addon/components/TestSelect.d.ts +8 -8
  19. package/dist/client/addon/components/TestSelect.js +33 -0
  20. package/dist/client/addon/components/TestSelect.js.map +1 -0
  21. package/dist/client/addon/components/Tools.d.ts +6 -0
  22. package/dist/client/addon/components/Tools.js +89 -0
  23. package/dist/client/addon/components/Tools.js.map +1 -0
  24. package/{lib/types/client/addon/Manager.d.ts → dist/client/addon/controller.d.ts} +38 -37
  25. package/dist/client/addon/controller.js +208 -0
  26. package/dist/client/addon/controller.js.map +1 -0
  27. package/dist/client/addon/decorator.d.ts +1 -0
  28. package/dist/client/addon/decorator.js +6 -0
  29. package/dist/client/addon/decorator.js.map +1 -0
  30. package/dist/client/addon/index.d.ts +2 -0
  31. package/dist/client/addon/index.js +19 -0
  32. package/dist/client/addon/index.js.map +1 -0
  33. package/dist/client/addon/manager.d.ts +1 -0
  34. package/dist/client/addon/manager.js +41 -0
  35. package/dist/client/addon/manager.js.map +1 -0
  36. package/dist/client/addon/preset.d.ts +2 -0
  37. package/dist/client/addon/preset.js +6 -0
  38. package/dist/client/addon/preset.js.map +1 -0
  39. package/dist/client/addon/preview.d.ts +4 -0
  40. package/dist/client/addon/preview.js +8 -0
  41. package/dist/client/addon/preview.js.map +1 -0
  42. package/{lib/types → dist}/client/addon/readyForCapture.d.ts +6 -6
  43. package/dist/client/addon/readyForCapture.js +7 -0
  44. package/dist/client/addon/readyForCapture.js.map +1 -0
  45. package/{lib/types → dist}/client/addon/utils.d.ts +3 -2
  46. package/dist/client/addon/utils.js +27 -0
  47. package/dist/client/addon/utils.js.map +1 -0
  48. package/{lib/types → dist}/client/addon/withCreevey.d.ts +25 -24
  49. package/dist/client/addon/withCreevey.js +286 -0
  50. package/dist/client/addon/withCreevey.js.map +1 -0
  51. package/dist/client/shared/components/ImagesView/BlendView.d.ts +5 -0
  52. package/dist/client/shared/components/ImagesView/BlendView.js +74 -0
  53. package/dist/client/shared/components/ImagesView/BlendView.js.map +1 -0
  54. package/dist/client/shared/components/ImagesView/ImagesView.d.ts +9 -0
  55. package/dist/client/shared/components/ImagesView/ImagesView.js +46 -0
  56. package/dist/client/shared/components/ImagesView/ImagesView.js.map +1 -0
  57. package/dist/client/shared/components/ImagesView/SideBySideView.d.ts +5 -0
  58. package/dist/client/shared/components/ImagesView/SideBySideView.js +121 -0
  59. package/dist/client/shared/components/ImagesView/SideBySideView.js.map +1 -0
  60. package/dist/client/shared/components/ImagesView/SlideView.d.ts +5 -0
  61. package/dist/client/shared/components/ImagesView/SlideView.js +136 -0
  62. package/dist/client/shared/components/ImagesView/SlideView.js.map +1 -0
  63. package/dist/client/shared/components/ImagesView/SwapView.d.ts +5 -0
  64. package/dist/client/shared/components/ImagesView/SwapView.js +72 -0
  65. package/dist/client/shared/components/ImagesView/SwapView.js.map +1 -0
  66. package/{lib/types/client/shared/components/ImagesView/ImagesView.d.ts → dist/client/shared/components/ImagesView/common.d.ts} +15 -24
  67. package/dist/client/shared/components/ImagesView/common.js +14 -0
  68. package/dist/client/shared/components/ImagesView/common.js.map +1 -0
  69. package/dist/client/shared/components/ImagesView/index.d.ts +5 -0
  70. package/dist/client/shared/components/ImagesView/index.js +14 -0
  71. package/dist/client/shared/components/ImagesView/index.js.map +1 -0
  72. package/{lib/types → dist}/client/shared/components/PageFooter/PageFooter.d.ts +8 -8
  73. package/dist/client/shared/components/PageFooter/PageFooter.js +25 -0
  74. package/dist/client/shared/components/PageFooter/PageFooter.js.map +1 -0
  75. package/{lib/types → dist}/client/shared/components/PageFooter/Paging.d.ts +7 -7
  76. package/dist/client/shared/components/PageFooter/Paging.js +68 -0
  77. package/dist/client/shared/components/PageFooter/Paging.js.map +1 -0
  78. package/{lib/types → dist}/client/shared/components/PageHeader/ImagePreview.d.ts +14 -12
  79. package/dist/client/shared/components/PageHeader/ImagePreview.js +61 -0
  80. package/dist/client/shared/components/PageHeader/ImagePreview.js.map +1 -0
  81. package/{lib/types → dist}/client/shared/components/PageHeader/PageHeader.d.ts +14 -16
  82. package/dist/client/shared/components/PageHeader/PageHeader.js +86 -0
  83. package/dist/client/shared/components/PageHeader/PageHeader.js.map +1 -0
  84. package/{lib/types → dist}/client/shared/components/ResultsPage.d.ts +18 -18
  85. package/dist/client/shared/components/ResultsPage.js +95 -0
  86. package/dist/client/shared/components/ResultsPage.js.map +1 -0
  87. package/{lib/types → dist}/client/shared/creeveyClientApi.d.ts +9 -9
  88. package/dist/client/shared/creeveyClientApi.js +53 -0
  89. package/dist/client/shared/creeveyClientApi.js.map +1 -0
  90. package/{lib/types → dist}/client/shared/helpers.d.ts +46 -46
  91. package/dist/client/shared/helpers.js +381 -0
  92. package/dist/client/shared/helpers.js.map +1 -0
  93. package/{lib/types → dist}/client/shared/viewMode.d.ts +4 -4
  94. package/dist/client/shared/viewMode.js +11 -0
  95. package/dist/client/shared/viewMode.js.map +1 -0
  96. package/dist/client/web/202.js +1 -0
  97. package/dist/client/web/270.js +43 -0
  98. package/dist/client/web/752.js +1 -0
  99. package/{lib/types → dist}/client/web/CreeveyApp.d.ts +11 -11
  100. package/dist/client/web/CreeveyApp.js +130 -0
  101. package/dist/client/web/CreeveyApp.js.map +1 -0
  102. package/{lib/types → dist}/client/web/CreeveyContext.d.ts +11 -11
  103. package/dist/client/web/CreeveyContext.js +17 -0
  104. package/dist/client/web/CreeveyContext.js.map +1 -0
  105. package/dist/client/web/CreeveyLoader.d.ts +3 -0
  106. package/dist/client/web/CreeveyLoader.js +52 -0
  107. package/dist/client/web/CreeveyLoader.js.map +1 -0
  108. package/{lib/types → dist}/client/web/CreeveyView/SideBar/Checkbox.d.ts +22 -19
  109. package/dist/client/web/CreeveyView/SideBar/Checkbox.js +86 -0
  110. package/dist/client/web/CreeveyView/SideBar/Checkbox.js.map +1 -0
  111. package/{lib/types → dist}/client/web/CreeveyView/SideBar/Search.d.ts +6 -6
  112. package/dist/client/web/CreeveyView/SideBar/Search.js +125 -0
  113. package/dist/client/web/CreeveyView/SideBar/Search.js.map +1 -0
  114. package/{lib/types → dist}/client/web/CreeveyView/SideBar/SideBar.d.ts +14 -14
  115. package/dist/client/web/CreeveyView/SideBar/SideBar.js +101 -0
  116. package/dist/client/web/CreeveyView/SideBar/SideBar.js.map +1 -0
  117. package/{lib/types → dist}/client/web/CreeveyView/SideBar/SideBarHeader.d.ts +12 -12
  118. package/dist/client/web/CreeveyView/SideBar/SideBarHeader.js +113 -0
  119. package/dist/client/web/CreeveyView/SideBar/SideBarHeader.js.map +1 -0
  120. package/dist/client/web/CreeveyView/SideBar/SuiteLink.d.ts +38 -0
  121. package/dist/client/web/CreeveyView/SideBar/SuiteLink.js +108 -0
  122. package/dist/client/web/CreeveyView/SideBar/SuiteLink.js.map +1 -0
  123. package/{lib/types → dist}/client/web/CreeveyView/SideBar/TestLink.d.ts +7 -7
  124. package/dist/client/web/CreeveyView/SideBar/TestLink.js +63 -0
  125. package/dist/client/web/CreeveyView/SideBar/TestLink.js.map +1 -0
  126. package/{lib/types → dist}/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +12 -10
  127. package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.js +52 -0
  128. package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.js.map +1 -0
  129. package/dist/client/web/CreeveyView/SideBar/TestsStatus.d.ts +11 -0
  130. package/dist/client/web/CreeveyView/SideBar/TestsStatus.js +74 -0
  131. package/dist/client/web/CreeveyView/SideBar/TestsStatus.js.map +1 -0
  132. package/{lib/types → dist}/client/web/CreeveyView/SideBar/Toggle.d.ts +6 -6
  133. package/dist/client/web/CreeveyView/SideBar/Toggle.js +69 -0
  134. package/dist/client/web/CreeveyView/SideBar/Toggle.js.map +1 -0
  135. package/dist/client/web/CreeveyView/SideBar/index.d.ts +1 -0
  136. package/dist/client/web/CreeveyView/SideBar/index.js +6 -0
  137. package/dist/client/web/CreeveyView/SideBar/index.js.map +1 -0
  138. package/{lib/types → dist}/client/web/KeyboardEventsContext.d.ts +15 -13
  139. package/dist/client/web/KeyboardEventsContext.js +116 -0
  140. package/dist/client/web/KeyboardEventsContext.js.map +1 -0
  141. package/{lib/types → dist}/client/web/index.d.ts +4 -4
  142. package/{lib/cjs → dist}/client/web/index.html +28 -19
  143. package/dist/client/web/index.js +75 -0
  144. package/dist/client/web/index.js.map +1 -0
  145. package/dist/client/web/main.js +79 -0
  146. package/{lib/cjs → dist}/client/web/main.js.LICENSE.txt +0 -15
  147. package/{lib/types → dist}/creevey.d.ts +1 -1
  148. package/dist/creevey.js +52 -0
  149. package/dist/creevey.js.map +1 -0
  150. package/dist/index.d.ts +5 -0
  151. package/dist/index.js +24 -0
  152. package/dist/index.js.map +1 -0
  153. package/{lib/types → dist}/server/config.d.ts +4 -4
  154. package/dist/server/config.js +86 -0
  155. package/dist/server/config.js.map +1 -0
  156. package/{lib/types → dist}/server/docker.d.ts +7 -7
  157. package/dist/server/docker.js +122 -0
  158. package/dist/server/docker.js.map +1 -0
  159. package/{lib/types → dist}/server/index.d.ts +2 -2
  160. package/dist/server/index.js +47 -0
  161. package/dist/server/index.js.map +1 -0
  162. package/{lib/types → dist}/server/logger.d.ts +10 -10
  163. package/dist/server/logger.js +25 -0
  164. package/dist/server/logger.js.map +1 -0
  165. package/{lib/types → dist}/server/master/api.d.ts +7 -7
  166. package/dist/server/master/api.js +50 -0
  167. package/dist/server/master/api.js.map +1 -0
  168. package/dist/server/master/index.d.ts +3 -0
  169. package/dist/server/master/index.js +110 -0
  170. package/dist/server/master/index.js.map +1 -0
  171. package/{lib/types → dist}/server/master/master.d.ts +7 -7
  172. package/dist/server/master/master.js +40 -0
  173. package/dist/server/master/master.js.map +1 -0
  174. package/{lib/types → dist}/server/master/pool.d.ts +30 -31
  175. package/dist/server/master/pool.js +186 -0
  176. package/dist/server/master/pool.js.map +1 -0
  177. package/{lib/types → dist}/server/master/runner.d.ts +21 -26
  178. package/dist/server/master/runner.js +172 -0
  179. package/dist/server/master/runner.js.map +1 -0
  180. package/dist/server/master/server.d.ts +2 -0
  181. package/dist/server/master/server.js +114 -0
  182. package/dist/server/master/server.js.map +1 -0
  183. package/{lib/types → dist}/server/messages.d.ts +26 -27
  184. package/dist/server/messages.js +222 -0
  185. package/dist/server/messages.js.map +1 -0
  186. package/{lib/types → dist}/server/selenium/browser.d.ts +19 -17
  187. package/dist/server/selenium/browser.js +637 -0
  188. package/dist/server/selenium/browser.js.map +1 -0
  189. package/dist/server/selenium/index.d.ts +2 -0
  190. package/dist/server/selenium/index.js +19 -0
  191. package/dist/server/selenium/index.js.map +1 -0
  192. package/{lib/types → dist}/server/selenium/selenoid.d.ts +3 -3
  193. package/dist/server/selenium/selenoid.js +120 -0
  194. package/dist/server/selenium/selenoid.js.map +1 -0
  195. package/dist/server/stories.d.ts +3 -0
  196. package/dist/server/stories.js +92 -0
  197. package/dist/server/stories.js.map +1 -0
  198. package/dist/server/storybook/providers/browser.d.ts +2 -0
  199. package/dist/server/storybook/providers/browser.js +60 -0
  200. package/dist/server/storybook/providers/browser.js.map +1 -0
  201. package/dist/server/storybook/providers/hybrid.d.ts +2 -0
  202. package/dist/server/storybook/providers/hybrid.js +59 -0
  203. package/dist/server/storybook/providers/hybrid.js.map +1 -0
  204. package/dist/server/telemetry.d.ts +2 -0
  205. package/dist/server/telemetry.js +196 -0
  206. package/dist/server/telemetry.js.map +1 -0
  207. package/{lib/types → dist}/server/testsFiles/parser.d.ts +8 -12
  208. package/dist/server/testsFiles/parser.js +50 -0
  209. package/dist/server/testsFiles/parser.js.map +1 -0
  210. package/dist/server/update.d.ts +2 -0
  211. package/dist/server/update.js +53 -0
  212. package/dist/server/update.js.map +1 -0
  213. package/dist/server/utils.d.ts +25 -0
  214. package/dist/server/utils.js +157 -0
  215. package/dist/server/utils.js.map +1 -0
  216. package/{lib/types → dist}/server/worker/chai-image.d.ts +5 -6
  217. package/dist/server/worker/chai-image.js +113 -0
  218. package/dist/server/worker/chai-image.js.map +1 -0
  219. package/{lib/types → dist}/server/worker/helpers.d.ts +8 -8
  220. package/dist/server/worker/helpers.js +57 -0
  221. package/dist/server/worker/helpers.js.map +1 -0
  222. package/dist/server/worker/index.d.ts +1 -0
  223. package/dist/server/worker/index.js +6 -0
  224. package/dist/server/worker/index.js.map +1 -0
  225. package/{lib/types → dist}/server/worker/reporter.d.ts +8 -8
  226. package/dist/server/worker/reporter.js +130 -0
  227. package/dist/server/worker/reporter.js.map +1 -0
  228. package/dist/server/worker/worker.d.ts +4 -0
  229. package/dist/server/worker/worker.js +211 -0
  230. package/dist/server/worker/worker.js.map +1 -0
  231. package/{lib/types → dist}/shared/index.d.ts +7 -7
  232. package/dist/shared/index.js +77 -0
  233. package/dist/shared/index.js.map +1 -0
  234. package/{lib/types → dist}/shared/serializeRegExp.d.ts +9 -9
  235. package/dist/shared/serializeRegExp.js +25 -0
  236. package/dist/shared/serializeRegExp.js.map +1 -0
  237. package/{lib/types → dist}/types.d.ts +459 -490
  238. package/dist/types.js +61 -0
  239. package/dist/types.js.map +1 -0
  240. package/docs/config.md +212 -212
  241. package/docs/grid.md +10 -10
  242. package/docs/tests.md +63 -63
  243. package/manager/package.json +3 -0
  244. package/package.json +115 -156
  245. package/preset/README.md +3 -0
  246. package/preset/package.json +3 -0
  247. package/preview/README.md +3 -0
  248. package/preview/package.json +3 -0
  249. package/src/cli.ts +3 -0
  250. package/src/client/addon/components/Addon.tsx +53 -0
  251. package/src/client/addon/components/Icons.tsx +28 -0
  252. package/src/client/addon/components/Panel.tsx +53 -0
  253. package/src/client/addon/components/TestSelect.tsx +48 -0
  254. package/src/client/addon/components/Tools.tsx +93 -0
  255. package/src/client/addon/controller.ts +224 -0
  256. package/src/client/addon/decorator.ts +3 -0
  257. package/src/client/addon/index.ts +2 -0
  258. package/src/client/addon/manager.ts +44 -0
  259. package/src/client/addon/preset.ts +3 -0
  260. package/src/client/addon/preview.ts +7 -0
  261. package/src/client/addon/readyForCapture.ts +9 -0
  262. package/src/client/addon/utils.tsx +24 -0
  263. package/src/client/addon/withCreevey.ts +326 -0
  264. package/src/client/shared/components/ImagesView/BlendView.tsx +71 -0
  265. package/src/client/shared/components/ImagesView/ImagesView.tsx +70 -0
  266. package/src/client/shared/components/ImagesView/SideBySideView.tsx +139 -0
  267. package/src/client/shared/components/ImagesView/SlideView.tsx +146 -0
  268. package/src/client/shared/components/ImagesView/SwapView.tsx +81 -0
  269. package/src/client/shared/components/ImagesView/common.ts +23 -0
  270. package/src/client/shared/components/ImagesView/index.ts +5 -0
  271. package/src/client/shared/components/PageFooter/PageFooter.tsx +44 -0
  272. package/src/client/shared/components/PageFooter/Paging.tsx +105 -0
  273. package/src/client/shared/components/PageHeader/ImagePreview.tsx +82 -0
  274. package/src/client/shared/components/PageHeader/PageHeader.tsx +123 -0
  275. package/src/client/shared/components/ResultsPage.tsx +135 -0
  276. package/src/client/shared/creeveyClientApi.ts +64 -0
  277. package/src/client/shared/helpers.ts +422 -0
  278. package/src/client/shared/viewMode.ts +10 -0
  279. package/src/client/web/CreeveyApp.tsx +177 -0
  280. package/src/client/web/CreeveyContext.tsx +20 -0
  281. package/src/client/web/CreeveyLoader.tsx +56 -0
  282. package/src/client/web/CreeveyView/SideBar/Checkbox.tsx +118 -0
  283. package/src/client/web/CreeveyView/SideBar/Search.tsx +140 -0
  284. package/src/client/web/CreeveyView/SideBar/SideBar.tsx +125 -0
  285. package/src/client/web/CreeveyView/SideBar/SideBarHeader.tsx +138 -0
  286. package/src/client/web/CreeveyView/SideBar/SuiteLink.tsx +118 -0
  287. package/src/client/web/CreeveyView/SideBar/TestLink.tsx +67 -0
  288. package/src/client/web/CreeveyView/SideBar/TestStatusIcon.tsx +58 -0
  289. package/src/client/web/CreeveyView/SideBar/TestsStatus.tsx +105 -0
  290. package/src/client/web/CreeveyView/SideBar/Toggle.tsx +85 -0
  291. package/src/client/web/CreeveyView/SideBar/index.ts +1 -0
  292. package/src/client/web/KeyboardEventsContext.tsx +121 -0
  293. package/src/client/web/index.html +28 -0
  294. package/src/client/web/index.tsx +63 -0
  295. package/src/creevey.ts +47 -0
  296. package/src/index.ts +4 -0
  297. package/src/server/config.ts +83 -0
  298. package/src/server/docker.ts +136 -0
  299. package/src/server/index.ts +51 -0
  300. package/{lib/esm/server/logger.js → src/server/logger.ts} +8 -7
  301. package/src/server/master/api.ts +55 -0
  302. package/src/server/master/index.ts +111 -0
  303. package/src/server/master/master.ts +47 -0
  304. package/src/server/master/pool.ts +203 -0
  305. package/src/server/master/runner.ts +189 -0
  306. package/src/server/master/server.ts +124 -0
  307. package/src/server/messages.ts +273 -0
  308. package/src/server/selenium/browser.ts +837 -0
  309. package/src/server/selenium/index.ts +2 -0
  310. package/src/server/selenium/selenoid.ts +154 -0
  311. package/src/server/stories.ts +133 -0
  312. package/src/server/storybook/providers/browser.ts +58 -0
  313. package/src/server/storybook/providers/hybrid.ts +70 -0
  314. package/src/server/telemetry.ts +212 -0
  315. package/src/server/testsFiles/parser.ts +62 -0
  316. package/src/server/update.ts +74 -0
  317. package/src/server/utils.ts +206 -0
  318. package/src/server/worker/chai-image.ts +147 -0
  319. package/src/server/worker/helpers.ts +61 -0
  320. package/src/server/worker/index.ts +1 -0
  321. package/src/server/worker/reporter.ts +170 -0
  322. package/src/server/worker/worker.ts +239 -0
  323. package/src/shared/index.ts +76 -0
  324. package/src/shared/serializeRegExp.ts +26 -0
  325. package/src/types.ts +500 -0
  326. package/types/chai.d.ts +11 -12
  327. package/types/global.d.ts +5 -0
  328. package/types/mocha.d.ts +20 -20
  329. package/types/png.d.ts +4 -4
  330. package/addon/package.json +0 -4
  331. package/jest.config.js +0 -6
  332. package/lib/cjs/cli.js +0 -5
  333. package/lib/cjs/client/addon/Manager.js +0 -264
  334. package/lib/cjs/client/addon/components/Addon.js +0 -55
  335. package/lib/cjs/client/addon/components/Icons.js +0 -46
  336. package/lib/cjs/client/addon/components/Panel.js +0 -72
  337. package/lib/cjs/client/addon/components/TestSelect.js +0 -65
  338. package/lib/cjs/client/addon/components/Tools.js +0 -95
  339. package/lib/cjs/client/addon/decorator.js +0 -11
  340. package/lib/cjs/client/addon/index.js +0 -31
  341. package/lib/cjs/client/addon/preset.js +0 -62
  342. package/lib/cjs/client/addon/readyForCapture.js +0 -12
  343. package/lib/cjs/client/addon/register.js +0 -72
  344. package/lib/cjs/client/addon/utils.js +0 -38
  345. package/lib/cjs/client/addon/withCreevey.js +0 -351
  346. package/lib/cjs/client/shared/components/ImagesView/BlendView.js +0 -87
  347. package/lib/cjs/client/shared/components/ImagesView/ImagesView.js +0 -92
  348. package/lib/cjs/client/shared/components/ImagesView/SideBySideView.js +0 -154
  349. package/lib/cjs/client/shared/components/ImagesView/SlideView.js +0 -166
  350. package/lib/cjs/client/shared/components/ImagesView/SwapView.js +0 -91
  351. package/lib/cjs/client/shared/components/ImagesView/index.js +0 -45
  352. package/lib/cjs/client/shared/components/PageFooter/PageFooter.js +0 -50
  353. package/lib/cjs/client/shared/components/PageFooter/Paging.js +0 -94
  354. package/lib/cjs/client/shared/components/PageHeader/ImagePreview.js +0 -82
  355. package/lib/cjs/client/shared/components/PageHeader/PageHeader.js +0 -119
  356. package/lib/cjs/client/shared/components/ResultsPage.js +0 -143
  357. package/lib/cjs/client/shared/creeveyClientApi.js +0 -76
  358. package/lib/cjs/client/shared/helpers.js +0 -411
  359. package/lib/cjs/client/shared/viewMode.js +0 -17
  360. package/lib/cjs/client/web/142.js +0 -2
  361. package/lib/cjs/client/web/142.js.LICENSE.txt +0 -12
  362. package/lib/cjs/client/web/32.js +0 -1
  363. package/lib/cjs/client/web/551.js +0 -1
  364. package/lib/cjs/client/web/566.js +0 -2
  365. package/lib/cjs/client/web/566.js.LICENSE.txt +0 -31
  366. package/lib/cjs/client/web/691.js +0 -2
  367. package/lib/cjs/client/web/691.js.LICENSE.txt +0 -8
  368. package/lib/cjs/client/web/725.js +0 -1
  369. package/lib/cjs/client/web/main.js +0 -2
  370. package/lib/cjs/creevey.js +0 -69
  371. package/lib/cjs/index.js +0 -62
  372. package/lib/cjs/server/config.js +0 -96
  373. package/lib/cjs/server/docker.js +0 -146
  374. package/lib/cjs/server/extract.js +0 -50
  375. package/lib/cjs/server/index.js +0 -83
  376. package/lib/cjs/server/loaders/babel/creevey-plugin.js +0 -86
  377. package/lib/cjs/server/loaders/babel/helpers.js +0 -469
  378. package/lib/cjs/server/loaders/babel/register.js +0 -124
  379. package/lib/cjs/server/loaders/hooks/mdx.js +0 -30
  380. package/lib/cjs/server/loaders/hooks/svelte.js +0 -65
  381. package/lib/cjs/server/loaders/webpack/compile.js +0 -293
  382. package/lib/cjs/server/loaders/webpack/creevey-loader.js +0 -179
  383. package/lib/cjs/server/loaders/webpack/dummy-hmr.js +0 -39
  384. package/lib/cjs/server/loaders/webpack/mdx-loader.js +0 -72
  385. package/lib/cjs/server/loaders/webpack/start.js +0 -41
  386. package/lib/cjs/server/logger.js +0 -48
  387. package/lib/cjs/server/master/api.js +0 -75
  388. package/lib/cjs/server/master/index.js +0 -146
  389. package/lib/cjs/server/master/master.js +0 -57
  390. package/lib/cjs/server/master/pool.js +0 -197
  391. package/lib/cjs/server/master/runner.js +0 -281
  392. package/lib/cjs/server/master/server.js +0 -129
  393. package/lib/cjs/server/messages.js +0 -264
  394. package/lib/cjs/server/selenium/browser.js +0 -672
  395. package/lib/cjs/server/selenium/index.js +0 -31
  396. package/lib/cjs/server/selenium/selenoid.js +0 -172
  397. package/lib/cjs/server/stories.js +0 -159
  398. package/lib/cjs/server/storybook/entry.js +0 -70
  399. package/lib/cjs/server/storybook/helpers.js +0 -159
  400. package/lib/cjs/server/storybook/providers/browser.js +0 -74
  401. package/lib/cjs/server/storybook/providers/hybrid.js +0 -84
  402. package/lib/cjs/server/storybook/providers/nodejs.js +0 -239
  403. package/lib/cjs/server/testsFiles/parser.js +0 -72
  404. package/lib/cjs/server/testsFiles/register.js +0 -48
  405. package/lib/cjs/server/update.js +0 -79
  406. package/lib/cjs/server/utils.js +0 -183
  407. package/lib/cjs/server/worker/chai-image.js +0 -142
  408. package/lib/cjs/server/worker/helpers.js +0 -69
  409. package/lib/cjs/server/worker/index.js +0 -15
  410. package/lib/cjs/server/worker/reporter.js +0 -108
  411. package/lib/cjs/server/worker/worker.js +0 -268
  412. package/lib/cjs/shared/index.js +0 -101
  413. package/lib/cjs/shared/serializeRegExp.js +0 -42
  414. package/lib/cjs/types.js +0 -74
  415. package/lib/esm/cli.js +0 -4
  416. package/lib/esm/client/addon/Manager.js +0 -248
  417. package/lib/esm/client/addon/components/Addon.js +0 -39
  418. package/lib/esm/client/addon/components/Icons.js +0 -31
  419. package/lib/esm/client/addon/components/Panel.js +0 -53
  420. package/lib/esm/client/addon/components/TestSelect.js +0 -51
  421. package/lib/esm/client/addon/components/Tools.js +0 -74
  422. package/lib/esm/client/addon/decorator.js +0 -2
  423. package/lib/esm/client/addon/index.js +0 -2
  424. package/lib/esm/client/addon/preset.js +0 -41
  425. package/lib/esm/client/addon/readyForCapture.js +0 -5
  426. package/lib/esm/client/addon/register.js +0 -51
  427. package/lib/esm/client/addon/utils.js +0 -31
  428. package/lib/esm/client/addon/withCreevey.js +0 -325
  429. package/lib/esm/client/shared/components/ImagesView/BlendView.js +0 -67
  430. package/lib/esm/client/shared/components/ImagesView/ImagesView.js +0 -69
  431. package/lib/esm/client/shared/components/ImagesView/SideBySideView.js +0 -131
  432. package/lib/esm/client/shared/components/ImagesView/SlideView.js +0 -143
  433. package/lib/esm/client/shared/components/ImagesView/SwapView.js +0 -71
  434. package/lib/esm/client/shared/components/ImagesView/index.js +0 -5
  435. package/lib/esm/client/shared/components/PageFooter/PageFooter.js +0 -36
  436. package/lib/esm/client/shared/components/PageFooter/Paging.js +0 -80
  437. package/lib/esm/client/shared/components/PageHeader/ImagePreview.js +0 -68
  438. package/lib/esm/client/shared/components/PageHeader/PageHeader.js +0 -97
  439. package/lib/esm/client/shared/components/ResultsPage.js +0 -115
  440. package/lib/esm/client/shared/creeveyClientApi.js +0 -67
  441. package/lib/esm/client/shared/helpers.js +0 -353
  442. package/lib/esm/client/shared/viewMode.js +0 -6
  443. package/lib/esm/creevey.js +0 -54
  444. package/lib/esm/index.js +0 -5
  445. package/lib/esm/server/config.js +0 -73
  446. package/lib/esm/server/docker.js +0 -123
  447. package/lib/esm/server/extract.js +0 -34
  448. package/lib/esm/server/index.js +0 -64
  449. package/lib/esm/server/loaders/babel/creevey-plugin.js +0 -72
  450. package/lib/esm/server/loaders/babel/helpers.js +0 -452
  451. package/lib/esm/server/loaders/babel/register.js +0 -103
  452. package/lib/esm/server/loaders/hooks/mdx.js +0 -15
  453. package/lib/esm/server/loaders/hooks/svelte.js +0 -49
  454. package/lib/esm/server/loaders/webpack/compile.js +0 -270
  455. package/lib/esm/server/loaders/webpack/creevey-loader.js +0 -158
  456. package/lib/esm/server/loaders/webpack/dummy-hmr.js +0 -32
  457. package/lib/esm/server/loaders/webpack/mdx-loader.js +0 -58
  458. package/lib/esm/server/loaders/webpack/start.js +0 -27
  459. package/lib/esm/server/master/api.js +0 -64
  460. package/lib/esm/server/master/index.js +0 -125
  461. package/lib/esm/server/master/master.js +0 -38
  462. package/lib/esm/server/master/pool.js +0 -176
  463. package/lib/esm/server/master/runner.js +0 -259
  464. package/lib/esm/server/master/server.js +0 -105
  465. package/lib/esm/server/messages.js +0 -232
  466. package/lib/esm/server/selenium/browser.js +0 -639
  467. package/lib/esm/server/selenium/index.js +0 -2
  468. package/lib/esm/server/selenium/selenoid.js +0 -149
  469. package/lib/esm/server/stories.js +0 -140
  470. package/lib/esm/server/storybook/entry.js +0 -46
  471. package/lib/esm/server/storybook/helpers.js +0 -98
  472. package/lib/esm/server/storybook/providers/browser.js +0 -60
  473. package/lib/esm/server/storybook/providers/hybrid.js +0 -64
  474. package/lib/esm/server/storybook/providers/nodejs.js +0 -217
  475. package/lib/esm/server/testsFiles/parser.js +0 -50
  476. package/lib/esm/server/testsFiles/register.js +0 -35
  477. package/lib/esm/server/update.js +0 -61
  478. package/lib/esm/server/utils.js +0 -142
  479. package/lib/esm/server/worker/chai-image.js +0 -130
  480. package/lib/esm/server/worker/helpers.js +0 -60
  481. package/lib/esm/server/worker/index.js +0 -1
  482. package/lib/esm/server/worker/reporter.js +0 -86
  483. package/lib/esm/server/worker/worker.js +0 -238
  484. package/lib/esm/shared/index.js +0 -78
  485. package/lib/esm/shared/serializeRegExp.js +0 -24
  486. package/lib/esm/types.js +0 -43
  487. package/lib/types/cli.d.ts +0 -1
  488. package/lib/types/client/addon/components/Addon.d.ts +0 -8
  489. package/lib/types/client/addon/components/Tools.d.ts +0 -6
  490. package/lib/types/client/addon/decorator.d.ts +0 -1
  491. package/lib/types/client/addon/index.d.ts +0 -2
  492. package/lib/types/client/addon/preset.d.ts +0 -23
  493. package/lib/types/client/addon/register.d.ts +0 -3
  494. package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +0 -3
  495. package/lib/types/client/shared/components/ImagesView/SideBySideView.d.ts +0 -3
  496. package/lib/types/client/shared/components/ImagesView/SlideView.d.ts +0 -3
  497. package/lib/types/client/shared/components/ImagesView/SwapView.d.ts +0 -3
  498. package/lib/types/client/shared/components/ImagesView/index.d.ts +0 -5
  499. package/lib/types/client/web/CreeveyLoader.d.ts +0 -2
  500. package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +0 -33
  501. package/lib/types/client/web/CreeveyView/SideBar/TestsStatus.d.ts +0 -9
  502. package/lib/types/client/web/CreeveyView/SideBar/index.d.ts +0 -1
  503. package/lib/types/index.d.ts +0 -2
  504. package/lib/types/server/extract.d.ts +0 -2
  505. package/lib/types/server/loaders/babel/creevey-plugin.d.ts +0 -1
  506. package/lib/types/server/loaders/babel/helpers.d.ts +0 -19
  507. package/lib/types/server/loaders/babel/register.d.ts +0 -5
  508. package/lib/types/server/loaders/hooks/mdx.d.ts +0 -1
  509. package/lib/types/server/loaders/hooks/svelte.d.ts +0 -1
  510. package/lib/types/server/loaders/webpack/compile.d.ts +0 -2
  511. package/lib/types/server/loaders/webpack/creevey-loader.d.ts +0 -4
  512. package/lib/types/server/loaders/webpack/dummy-hmr.d.ts +0 -10
  513. package/lib/types/server/loaders/webpack/mdx-loader.d.ts +0 -6
  514. package/lib/types/server/loaders/webpack/start.d.ts +0 -1
  515. package/lib/types/server/master/index.d.ts +0 -3
  516. package/lib/types/server/master/server.d.ts +0 -2
  517. package/lib/types/server/selenium/index.d.ts +0 -2
  518. package/lib/types/server/stories.d.ts +0 -8
  519. package/lib/types/server/storybook/entry.d.ts +0 -18
  520. package/lib/types/server/storybook/helpers.d.ts +0 -24
  521. package/lib/types/server/storybook/providers/browser.d.ts +0 -4
  522. package/lib/types/server/storybook/providers/hybrid.d.ts +0 -4
  523. package/lib/types/server/storybook/providers/nodejs.d.ts +0 -9
  524. package/lib/types/server/testsFiles/register.d.ts +0 -2
  525. package/lib/types/server/update.d.ts +0 -2
  526. package/lib/types/server/utils.d.ts +0 -20
  527. package/lib/types/server/worker/index.d.ts +0 -1
  528. package/lib/types/server/worker/worker.d.ts +0 -4
  529. package/preset.js +0 -9
  530. package/types/babel__register.d.ts +0 -1
  531. package/types/event-source-polyfill.d.ts +0 -6
  532. package/types/mdx.d.ts +0 -7
  533. /package/{addon → manager}/README.md +0 -0
@@ -1,172 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.startSelenoidContainer = startSelenoidContainer;
7
- exports.startSelenoidStandalone = startSelenoidStandalone;
8
-
9
- var _path = _interopRequireDefault(require("path"));
10
-
11
- var _util = require("util");
12
-
13
- var _fs = require("fs");
14
-
15
- var _utils = require("../utils");
16
-
17
- var _docker = require("../docker");
18
-
19
- var _core = require("@octokit/core");
20
-
21
- var _messages = require("../messages");
22
-
23
- var _cluster = _interopRequireDefault(require("cluster"));
24
-
25
- var _shelljs = require("shelljs");
26
-
27
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
-
29
- const mkdirAsync = (0, _util.promisify)(_fs.mkdir);
30
- const writeFileAsync = (0, _util.promisify)(_fs.writeFile);
31
- const copyFileAsync = (0, _util.promisify)(_fs.copyFile);
32
-
33
- async function createSelenoidConfig(browsers, {
34
- useDocker
35
- }) {
36
- const selenoidConfig = {};
37
-
38
- const selenoidConfigDir = _path.default.join((0, _utils.getCreeveyCache)(), 'selenoid');
39
-
40
- browsers.forEach(({
41
- browserName,
42
- version = 'latest',
43
- dockerImage = `selenoid/${browserName}:${version}`,
44
- webdriverCommand = []
45
- }) => {
46
- if (!selenoidConfig[browserName]) selenoidConfig[browserName] = {
47
- default: version,
48
- versions: {}
49
- };
50
- if (!useDocker && webdriverCommand.length == 0) throw new Error('Please specify "webdriverCommand" browser option with path to browser webdriver');
51
- selenoidConfig[browserName].versions[version] = {
52
- image: useDocker ? dockerImage : webdriverCommand,
53
- port: '4444',
54
- path: !useDocker || ['chrome', 'opera', 'webkit', 'MicrosoftEdge'].includes(browserName) ? '/' : '/wd/hub'
55
- };
56
- });
57
- await mkdirAsync(selenoidConfigDir, {
58
- recursive: true
59
- });
60
- await writeFileAsync(_path.default.join(selenoidConfigDir, 'browsers.json'), JSON.stringify(selenoidConfig));
61
- return selenoidConfigDir;
62
- }
63
-
64
- async function downloadSelenoidBinary(destination) {
65
- const platformNameMapping = {
66
- darwin: 'selenoid_darwin_amd64',
67
- linux: 'selenoid_linux_amd64',
68
- win32: 'selenoid_windows_amd64.exe'
69
- };
70
- const octokit = new _core.Octokit();
71
- const response = await octokit.request('GET /repos/{owner}/{repo}/releases/latest', {
72
- owner: 'aerokube',
73
- repo: 'selenoid'
74
- });
75
- const {
76
- assets
77
- } = response.data;
78
- const {
79
- browser_download_url: downloadUrl,
80
- size: binarySize
81
- } = assets.find(({
82
- name
83
- }) => platformNameMapping[process.platform] == name) ?? {};
84
- if ((0, _fs.existsSync)(destination) && (0, _fs.lstatSync)(destination).size == binarySize) return;
85
-
86
- if (!downloadUrl) {
87
- throw new Error(`Couldn't get download url for selenoid binary. Please download it manually from "https://github.com/aerokube/selenoid/releases/latest" and define "selenoidPath" option in the Creevey config`);
88
- }
89
-
90
- return (0, _utils.downloadBinary)(downloadUrl, destination);
91
- }
92
-
93
- async function startSelenoidStandalone(config, debug) {
94
- config.gridUrl = 'http://localhost:4444/wd/hub';
95
- if (_cluster.default.isWorker) return;
96
- const browsers = Object.values(config.browsers).filter(browser => !browser.gridUrl);
97
- const selenoidConfigDir = await createSelenoidConfig(browsers, {
98
- useDocker: false
99
- });
100
-
101
- const binaryPath = _path.default.join(selenoidConfigDir, process.platform == 'win32' ? 'selenoid.exe' : 'selenoid');
102
-
103
- if (config.selenoidPath) {
104
- await copyFileAsync(_path.default.resolve(config.selenoidPath), binaryPath);
105
- } else {
106
- await downloadSelenoidBinary(binaryPath);
107
- } // TODO Download browser webdrivers
108
-
109
-
110
- try {
111
- if (process.platform != 'win32') (0, _shelljs.chmod)('+x', binaryPath);
112
- } catch (_) {
113
- /* noop */
114
- }
115
-
116
- const selenoidProcess = (0, _shelljs.exec)(`${binaryPath} -conf ./browsers.json -disable-docker`, {
117
- async: true,
118
- cwd: selenoidConfigDir
119
- });
120
-
121
- if (debug) {
122
- var _selenoidProcess$stdo, _selenoidProcess$stde;
123
-
124
- (_selenoidProcess$stdo = selenoidProcess.stdout) === null || _selenoidProcess$stdo === void 0 ? void 0 : _selenoidProcess$stdo.pipe(process.stdout);
125
- (_selenoidProcess$stde = selenoidProcess.stderr) === null || _selenoidProcess$stde === void 0 ? void 0 : _selenoidProcess$stde.pipe(process.stderr);
126
- }
127
-
128
- (0, _messages.subscribeOn)('shutdown', () => selenoidProcess.kill());
129
- }
130
-
131
- async function startSelenoidContainer(config, debug) {
132
- const browsers = Object.values(config.browsers).filter(browser => !browser.gridUrl);
133
- const images = [];
134
- let limit = 0;
135
- browsers.forEach(({
136
- browserName,
137
- version = 'latest',
138
- limit: browserLimit = 1,
139
- dockerImage = `selenoid/${browserName}:${version}`
140
- }) => {
141
- limit += browserLimit;
142
- images.push(dockerImage);
143
- });
144
- const selenoidImage = config.dockerImage;
145
- const pullOptions = {
146
- auth: config.dockerAuth,
147
- platform: config.dockerImagePlatform
148
- };
149
-
150
- if (config.pullImages) {
151
- await (0, _docker.pullImages)([selenoidImage], pullOptions);
152
- await (0, _docker.pullImages)(images, pullOptions);
153
- } // TODO Allow pass custom options
154
-
155
-
156
- const selenoidOptions = {
157
- ExposedPorts: {
158
- '4444/tcp': {}
159
- },
160
- HostConfig: {
161
- PortBindings: {
162
- '4444/tcp': [{
163
- HostPort: '4444'
164
- }]
165
- },
166
- Binds: ['/var/run/docker.sock:/var/run/docker.sock', `${await createSelenoidConfig(browsers, {
167
- useDocker: true
168
- })}:/etc/selenoid/:ro`]
169
- }
170
- };
171
- return (0, _docker.runImage)(selenoidImage, ['-limit', String(limit)], selenoidOptions, debug);
172
- }
@@ -1,159 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.loadTestsFromStories = loadTestsFromStories;
7
- exports.saveStoriesJson = saveStoriesJson;
8
- exports.saveTestsJson = saveTestsJson;
9
-
10
- var _path = _interopRequireDefault(require("path"));
11
-
12
- var _fs = require("fs");
13
-
14
- var _crypto = require("crypto");
15
-
16
- var _lodash = require("lodash");
17
-
18
- var _types = require("../types");
19
-
20
- var _utils = require("./utils");
21
-
22
- var _helpers = require("./storybook/helpers");
23
-
24
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
-
26
- function storyTestFabric(delay, testFn) {
27
- return async function storyTest() {
28
- delay ? await new Promise(resolve => setTimeout(resolve, delay)) : void 0;
29
- await (testFn ? testFn.call(this) : this.screenshots.length > 0 ? this.expect(this.screenshots.reduce((screenshots, {
30
- imageName,
31
- screenshot
32
- }, index) => ({ ...screenshots,
33
- [imageName ?? `screenshot_${index}`]: screenshot
34
- }), {})).to.matchImages() : this.expect(await this.takeScreenshot()).to.matchImage());
35
- };
36
- }
37
-
38
- function createCreeveyTest(browser, storyMeta, skipOptions, testName) {
39
- const {
40
- kind,
41
- name: story,
42
- id: storyId
43
- } = storyMeta;
44
- const path = [kind, story, testName, browser].filter(_types.isDefined);
45
- const skip = skipOptions ? (0, _utils.shouldSkip)(browser, {
46
- kind,
47
- story
48
- }, skipOptions, testName) : false;
49
- const id = (0, _crypto.createHash)('sha1').update(path.join('/')).digest('hex');
50
- return {
51
- id,
52
- skip,
53
- browser,
54
- testName,
55
- storyPath: [...kind.split('/').map(x => x.trim()), story],
56
- storyId
57
- };
58
- }
59
-
60
- function convertStories(browserName, stories) {
61
- const tests = {};
62
- (Array.isArray(stories) ? stories : Object.values(stories)).forEach(storyMeta => {
63
- // TODO Skip docsOnly stories for now
64
- if (storyMeta.parameters.docsOnly) return;
65
- const {
66
- delay: delayParam,
67
- tests: storyTests,
68
- skip
69
- } = storyMeta.parameters.creevey ?? {};
70
- const delay = typeof delayParam == 'number' ? delayParam : delayParam !== null && delayParam !== void 0 && delayParam.for.includes(browserName) ? delayParam.ms : 0; // typeof tests === "undefined" => rootSuite -> kindSuite -> storyTest -> [browsers.png]
71
- // typeof tests === "function" => rootSuite -> kindSuite -> storyTest -> browser -> [images.png]
72
- // typeof tests === "object" => rootSuite -> kindSuite -> storySuite -> test -> [browsers.png]
73
- // typeof tests === "object" => rootSuite -> kindSuite -> storySuite -> test -> browser -> [images.png]
74
-
75
- if (!storyTests) {
76
- const test = createCreeveyTest(browserName, storyMeta, skip);
77
- tests[test.id] = { ...test,
78
- storyId: storyMeta.id,
79
- story: storyMeta,
80
- fn: storyTestFabric(delay)
81
- };
82
- return;
83
- }
84
-
85
- Object.entries(storyTests).forEach(([testName, testFn]) => {
86
- const test = createCreeveyTest(browserName, storyMeta, skip, testName);
87
- tests[test.id] = { ...test,
88
- storyId: storyMeta.id,
89
- story: storyMeta,
90
- fn: storyTestFabric(delay, testFn)
91
- };
92
- });
93
- });
94
- return tests;
95
- }
96
-
97
- async function loadTestsFromStories(browsers, provider, update) {
98
- const testIdsByFiles = new Map();
99
- const stories = await provider(storiesByFiles => {
100
- const testsDiff = {};
101
- const tests = {};
102
- browsers.forEach(browser => {
103
- Array.from(storiesByFiles.entries()).forEach(([filename, stories]) => {
104
- var _testIdsByFiles$get;
105
-
106
- Object.assign(tests, convertStories(browser, stories));
107
- const changed = Object.keys(tests);
108
- const removed = ((_testIdsByFiles$get = testIdsByFiles.get(filename)) === null || _testIdsByFiles$get === void 0 ? void 0 : _testIdsByFiles$get.filter(testId => !tests[testId])) ?? [];
109
- if (changed.length == 0) testIdsByFiles.delete(filename);else testIdsByFiles.set(filename, changed);
110
- Object.assign(testsDiff, tests);
111
- removed.forEach(testId => testsDiff[testId] = undefined);
112
- });
113
- });
114
- update === null || update === void 0 ? void 0 : update(testsDiff);
115
- });
116
- const tests = browsers.reduce((tests, browser) => Object.assign(tests, convertStories(browser, stories)), {});
117
- Object.values(tests).filter(_types.isDefined).forEach(({
118
- id,
119
- story: {
120
- parameters: {
121
- fileName
122
- }
123
- }
124
- }) => // TODO Don't use filename as a key, due possible collisions if two require.context with same structure of modules are defined
125
- testIdsByFiles.set(fileName, [...(testIdsByFiles.get(fileName) ?? []), id]));
126
- return tests;
127
- }
128
-
129
- function saveStoriesJson(storiesData, extract) {
130
- const outputDir = typeof extract == 'boolean' ? 'storybook-static' : extract;
131
-
132
- if (!(0, _helpers.isStorybookVersionLessThan)(6)) {
133
- // NOTE Copy-pasted from Storybook's `getStoriesJsonData` method
134
- const allowed = ['fileName', 'docsOnly', 'framework', '__id', '__isArgsStory'];
135
- storiesData.globalParameters = (0, _lodash.pick)(storiesData.globalParameters, allowed); // @ts-expect-error ignore error
136
-
137
- storiesData.kindParameters = (0, _lodash.mapValues)(storiesData.kindParameters, v => (0, _lodash.pick)(v, allowed)); // @ts-expect-error ignore error
138
-
139
- storiesData.stories = (0, _lodash.mapValues)(storiesData.stories, v => ({ ...(0, _lodash.pick)(v, ['id', 'name', 'kind', 'story']),
140
- parameters: (0, _lodash.pick)(v.parameters, allowed)
141
- }));
142
- } // TODO Fix args stories
143
-
144
-
145
- (0, _utils.removeProps)(storiesData ?? {}, ['stories', () => true, 'parameters', '__isArgsStory']);
146
- Object.values((storiesData === null || storiesData === void 0 ? void 0 : storiesData.stories) ?? {}).forEach(story => (0, _types.isObject)(story) && 'parameters' in story && (0, _types.isObject)(story.parameters) && delete story.parameters.__isArgsStory);
147
- (0, _fs.mkdirSync)(outputDir, {
148
- recursive: true
149
- });
150
- (0, _fs.writeFileSync)(_path.default.join(outputDir, 'stories.json'), JSON.stringify(storiesData, null, 2));
151
- }
152
-
153
- function saveTestsJson(tests, dstPath = process.cwd()) {
154
- (0, _fs.mkdirSync)(dstPath, {
155
- recursive: true
156
- });
157
- (0, _fs.writeFileSync)(_path.default.join(dstPath, 'tests.json'), // eslint-disable-next-line @typescript-eslint/no-unsafe-return
158
- JSON.stringify(tests, (_, value) => (0, _types.isFunction)(value) ? value.toString() : value, 2));
159
- }
@@ -1,70 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.storiesOf = exports.setAddon = exports.raw = exports.getStorybook = exports.forceReRender = exports.configure = exports.clientApi = exports.clearDecorators = exports.channel = exports.addParameters = exports.addDecorator = void 0;
7
-
8
- var _addons = require("@storybook/addons");
9
-
10
- var _helpers = require("./helpers");
11
-
12
- var _api$context;
13
-
14
- const framework = (0, _helpers.getStorybookFramework)(); // eslint-disable-next-line @typescript-eslint/no-var-requires
15
-
16
- const core = require((0, _helpers.resolveFromStorybook)('@storybook/core')); //@ts-expect-error: 6.2 use named exports
17
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
18
-
19
-
20
- const start = (0, _helpers.isStorybookVersionLessThan)(6, 2) ? core.default.start : core.start;
21
- const api = start(() => void 0);
22
- const channel = (0, _helpers.isStorybookVersionLessThan)(6, 4) ? //@ts-expect-error: 6.x has { channel }, but 5.x has { context: { channel } }
23
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
24
- api.channel ?? ((_api$context = api.context) === null || _api$context === void 0 ? void 0 : _api$context.channel) : _addons.addons.getChannel();
25
- exports.channel = channel;
26
- const clientApi = api.clientApi;
27
- exports.clientApi = clientApi;
28
- const forceReRender = api.forceReRender;
29
- exports.forceReRender = forceReRender;
30
-
31
- const storiesOf = (kind, m) => {
32
- return clientApi.storiesOf(kind, m).addParameters({
33
- framework
34
- });
35
- };
36
-
37
- exports.storiesOf = storiesOf;
38
-
39
- const configure = (...args) => {
40
- if ((0, _helpers.isStorybookVersionLessThan)(5, 2)) {
41
- //NOTE: Storybook <= 5.1 pass args as is
42
- //@ts-expect-error: ignore it
43
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
44
- return api.configApi.configure(...args);
45
- }
46
-
47
- if ((0, _helpers.isStorybookVersionLessThan)(6)) {
48
- //NOTE: Storybook <= 5.3 pass `framework` as last argument
49
- //@ts-expect-error: ignore it
50
- return api.configure(...args, framework);
51
- } //NOTE Storybook 6.x pass `framework` as first argument
52
- //@ts-expect-error: ignore it
53
-
54
-
55
- return api.configure(framework, ...args);
56
- };
57
-
58
- exports.configure = configure;
59
- const addDecorator = clientApi.addDecorator;
60
- exports.addDecorator = addDecorator;
61
- const addParameters = clientApi.addParameters;
62
- exports.addParameters = addParameters;
63
- const clearDecorators = clientApi.clearDecorators;
64
- exports.clearDecorators = clearDecorators;
65
- const setAddon = clientApi.setAddon;
66
- exports.setAddon = setAddon;
67
- const getStorybook = clientApi.getStorybook;
68
- exports.getStorybook = getStorybook;
69
- const raw = clientApi.raw;
70
- exports.raw = raw;
@@ -1,159 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getStorybookFramework = getStorybookFramework;
7
- exports.getStorybookVersion = getStorybookVersion;
8
- exports.hasDocsAddon = hasDocsAddon;
9
- exports.hasSvelteCSFAddon = hasSvelteCSFAddon;
10
- exports.importStorybookClientLogger = void 0;
11
- exports.importStorybookConfig = importStorybookConfig;
12
- exports.importStorybookCoreEvents = exports.importStorybookCoreCommon = void 0;
13
- exports.isCSFv3Enabled = isCSFv3Enabled;
14
- exports.isStorybookVersion = isStorybookVersion;
15
- exports.isStorybookVersionGreaterThan = isStorybookVersionGreaterThan;
16
- exports.isStorybookVersionLessThan = isStorybookVersionLessThan;
17
- exports.storybookDirRef = exports.storybookConfigRef = exports.resolveFromStorybookCoreServer = exports.resolveFromStorybookCore = exports.resolveFromStorybookBuilderWebpack4 = exports.resolveFromStorybookAddonDocs = exports.resolveFromStorybook = void 0;
18
-
19
- var _path = _interopRequireDefault(require("path"));
20
-
21
- var _resolveFrom = _interopRequireDefault(require("resolve-from"));
22
-
23
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
-
25
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
-
27
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
28
-
29
- const supportedFrameworks = ['react', 'vue', 'vue3', 'angular', 'marionette', 'mithril', 'marko', 'html', 'svelte', 'riot', 'ember', 'preact', 'rax', 'aurelia', 'server', 'web-components'];
30
- const storybookDirRef = {
31
- current: _path.default.resolve('.storybook')
32
- };
33
- exports.storybookDirRef = storybookDirRef;
34
-
35
- const resolveFromStorybook = modulePath => (0, _resolveFrom.default)(storybookDirRef.current, modulePath);
36
-
37
- exports.resolveFromStorybook = resolveFromStorybook;
38
-
39
- const resolveFromStorybookAddonDocs = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/addon-docs'), modulePath);
40
-
41
- exports.resolveFromStorybookAddonDocs = resolveFromStorybookAddonDocs;
42
-
43
- const resolveFromStorybookBuilderWebpack4 = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/builder-webpack4'), modulePath);
44
-
45
- exports.resolveFromStorybookBuilderWebpack4 = resolveFromStorybookBuilderWebpack4;
46
-
47
- const resolveFromStorybookCore = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/core'), modulePath);
48
-
49
- exports.resolveFromStorybookCore = resolveFromStorybookCore;
50
-
51
- const resolveFromStorybookCoreServer = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/core-server'), modulePath);
52
-
53
- exports.resolveFromStorybookCoreServer = resolveFromStorybookCoreServer;
54
-
55
- const importFromStorybook = modulePath => Promise.resolve(`${resolveFromStorybook(modulePath)}`).then(s => _interopRequireWildcard(require(s)));
56
-
57
- const importStorybookClientLogger = () => importFromStorybook('@storybook/client-logger');
58
-
59
- exports.importStorybookClientLogger = importStorybookClientLogger;
60
-
61
- const importStorybookCoreCommon = () => importFromStorybook('@storybook/core-common');
62
-
63
- exports.importStorybookCoreCommon = importStorybookCoreCommon;
64
-
65
- const importStorybookCoreEvents = () => importFromStorybook('@storybook/core-events');
66
-
67
- exports.importStorybookCoreEvents = importStorybookCoreEvents;
68
-
69
- function hasDocsAddon() {
70
- try {
71
- resolveFromStorybook('@storybook/addon-docs');
72
- return true;
73
- } catch (_) {
74
- return false;
75
- }
76
- }
77
-
78
- function hasSvelteCSFAddon() {
79
- try {
80
- resolveFromStorybook('@storybook/addon-svelte-csf');
81
- return true;
82
- } catch (_) {
83
- return false;
84
- }
85
- }
86
-
87
- function getStorybookVersion() {
88
- // eslint-disable-next-line @typescript-eslint/no-var-requires
89
- const {
90
- version
91
- } = require(resolveFromStorybook('@storybook/core-server/package.json'));
92
-
93
- return version;
94
- }
95
-
96
- function isStorybookVersionLessThan(major, minor) {
97
- const [sbMajor, sbMinor] = (process.env.__CREEVEY_STORYBOOK_VERSION__ ?? getStorybookVersion()).split('.');
98
- return Number(sbMajor) < major || minor != undefined && Number(sbMajor) == major && Number(sbMinor) < minor;
99
- }
100
-
101
- function isStorybookVersionGreaterThan(major, minor) {
102
- const [sbMajor, sbMinor] = (process.env.__CREEVEY_STORYBOOK_VERSION__ ?? getStorybookVersion()).split('.');
103
- return Number(sbMajor) > major || minor != undefined && Number(sbMajor) == major && Number(sbMinor) > minor;
104
- }
105
-
106
- function isStorybookVersion(major, minor) {
107
- const [sbMajor, sbMinor] = (process.env.__CREEVEY_STORYBOOK_VERSION__ ?? getStorybookVersion()).split('.');
108
- return Number(sbMajor) == major || minor != undefined && Number(sbMajor) == major && Number(sbMinor) == minor;
109
- }
110
-
111
- function getStorybookFramework() {
112
- const framework = process.env.__CREEVEY_STORYBOOK_FRAMEWORK__ ?? supportedFrameworks.find(framework => {
113
- try {
114
- return require.resolve(resolveFromStorybook(`@storybook/${framework}`));
115
- } catch (_) {
116
- return false;
117
- }
118
- });
119
- if (!framework) throw new Error("Couldn't detect used Storybook framework. Please ensure that you install `@storybook/<framework>` package");
120
- return framework;
121
- }
122
-
123
- const storybookConfigRef = {
124
- current: {
125
- stories: []
126
- }
127
- };
128
- exports.storybookConfigRef = storybookConfigRef;
129
-
130
- async function importStorybookConfig() {
131
- const configPath = `${storybookDirRef.current}/main`;
132
-
133
- try {
134
- return storybookConfigRef.current = (await Promise.resolve(`${require.resolve(configPath)}`).then(s => _interopRequireWildcard(require(s)))).default;
135
- } catch (_) {
136
- const storybookUtilsPath = isStorybookVersionLessThan(6, 2) ? '@storybook/core/dist/server/utils' : '@storybook/core-common/dist/cjs/utils';
137
- const serverRequireModule = isStorybookVersionLessThan(6, 2) ? 'server-require' : 'interpret-require'; // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
138
-
139
- const {
140
- getInterpretedFile
141
- } = await Promise.resolve(`${resolveFromStorybook(`${storybookUtilsPath}/interpret-files`)}`).then(s => _interopRequireWildcard(require(s))); // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
142
-
143
- const {
144
- default: serverRequireFallback,
145
- serverRequire = serverRequireFallback
146
- } = await Promise.resolve(`${resolveFromStorybook(`${storybookUtilsPath}/${serverRequireModule}`)}`).then(s => _interopRequireWildcard(require(s))); // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
147
-
148
- const mainConfigFile = isStorybookVersionLessThan(6, 1) ? configPath : // eslint-disable-next-line @typescript-eslint/no-unsafe-call
149
- getInterpretedFile(configPath); // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call
150
-
151
- return storybookConfigRef.current = serverRequire(mainConfigFile);
152
- }
153
- }
154
-
155
- async function isCSFv3Enabled() {
156
- var _await$importStoryboo, _await$importStoryboo2;
157
-
158
- return ((_await$importStoryboo = await importStorybookConfig()) === null || _await$importStoryboo === void 0 ? void 0 : (_await$importStoryboo2 = _await$importStoryboo.features) === null || _await$importStoryboo2 === void 0 ? void 0 : _await$importStoryboo2.previewCsfV3) ?? false;
159
- }
@@ -1,74 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.loadStories = loadStories;
7
-
8
- var _cluster = _interopRequireDefault(require("cluster"));
9
-
10
- var _selenium = require("../../selenium");
11
-
12
- var _messages = require("../../messages");
13
-
14
- var _types = require("../../../types");
15
-
16
- var _logger = require("../../logger");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- async function loadStories(_config, {
21
- port
22
- }, storiesListener) {
23
- if (_cluster.default.isPrimary) {
24
- return new Promise(resolve => {
25
- const worker = Object.values(_cluster.default.workers ?? {}).filter(_types.isDefined).find(worker => worker.isConnected());
26
-
27
- if (worker) {
28
- const unsubscribe = (0, _messages.subscribeOnWorker)(worker, 'stories', message => {
29
- if (message.type == 'set') {
30
- const {
31
- stories,
32
- oldTests
33
- } = message.payload;
34
- if (oldTests.length > 0) _logger.logger.warn(`If you use browser stories provider of CSFv3 Storybook feature\n` + `Creevey will not load tests defined in story parameters from following stories:\n` + oldTests.join('\n'));
35
- unsubscribe();
36
- resolve(stories);
37
- }
38
- });
39
- (0, _messages.sendStoriesMessage)(worker, {
40
- type: 'get'
41
- });
42
- }
43
-
44
- (0, _messages.subscribeOn)('stories', message => {
45
- // TODO updates only one browser :(
46
- if (message.type == 'update') storiesListener(new Map(message.payload));
47
- });
48
- });
49
- } else {
50
- (0, _messages.subscribeOn)('stories', message => {
51
- if (message.type == 'get') (0, _messages.emitStoriesMessage)({
52
- type: 'set',
53
- payload: {
54
- stories,
55
- oldTests: storiesWithOldTests
56
- }
57
- });
58
- if (message.type == 'update') storiesListener(new Map(message.payload));
59
- });
60
- const stories = await (0, _selenium.loadStoriesFromBrowser)(port);
61
- const storiesWithOldTests = [];
62
- Object.values(stories).forEach(story => {
63
- var _parameters, _parameters$creevey;
64
-
65
- if ((_parameters = story.parameters) !== null && _parameters !== void 0 && (_parameters$creevey = _parameters.creevey) !== null && _parameters$creevey !== void 0 && _parameters$creevey.tests) {
66
- var _parameters2, _parameters2$creevey;
67
-
68
- (_parameters2 = story.parameters) === null || _parameters2 === void 0 ? true : (_parameters2$creevey = _parameters2.creevey) === null || _parameters2$creevey === void 0 ? true : delete _parameters2$creevey.tests;
69
- storiesWithOldTests.push(`${story.kind}/${story.name}`);
70
- }
71
- });
72
- return stories;
73
- }
74
- }