creevey 0.8.0-beta.0 → 0.9.0-beta.1

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 (225) hide show
  1. package/CHANGELOG.md +5 -9
  2. package/lib/cjs/client/web/main.js +6 -6
  3. package/lib/types/cli.d.ts +1 -1
  4. package/lib/types/client/addon/Manager.d.ts +37 -37
  5. package/lib/types/client/addon/components/Addon.d.ts +8 -8
  6. package/lib/types/client/addon/components/Icons.d.ts +7 -7
  7. package/lib/types/client/addon/components/Panel.d.ts +9 -9
  8. package/lib/types/client/addon/components/TestSelect.d.ts +9 -9
  9. package/lib/types/client/addon/components/Tools.d.ts +6 -6
  10. package/lib/types/client/addon/decorator.d.ts +1 -1
  11. package/lib/types/client/addon/preset.d.ts +24 -22
  12. package/lib/types/client/addon/readyForCapture.d.ts +6 -0
  13. package/lib/types/client/addon/register.d.ts +3 -3
  14. package/lib/types/client/addon/utils.d.ts +2 -2
  15. package/lib/types/client/addon/withCreevey.d.ts +24 -13
  16. package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +3 -3
  17. package/lib/types/client/shared/components/ImagesView/ImagesView.d.ts +25 -25
  18. package/lib/types/client/shared/components/ImagesView/SideBySideView.d.ts +3 -3
  19. package/lib/types/client/shared/components/ImagesView/SlideView.d.ts +3 -3
  20. package/lib/types/client/shared/components/ImagesView/SwapView.d.ts +3 -3
  21. package/lib/types/client/shared/components/ImagesView/index.d.ts +5 -5
  22. package/lib/types/client/shared/components/PageFooter/PageFooter.d.ts +9 -9
  23. package/lib/types/client/shared/components/PageFooter/Paging.d.ts +8 -8
  24. package/lib/types/client/shared/components/PageHeader/ImagePreview.d.ts +12 -12
  25. package/lib/types/client/shared/components/PageHeader/PageHeader.d.ts +17 -17
  26. package/lib/types/client/shared/components/ResultsPage.d.ts +18 -18
  27. package/lib/types/client/shared/creeveyClientApi.d.ts +9 -9
  28. package/lib/types/client/shared/helpers.d.ts +46 -46
  29. package/lib/types/client/shared/viewMode.d.ts +4 -4
  30. package/lib/types/client/web/CreeveyApp.d.ts +12 -12
  31. package/lib/types/client/web/CreeveyContext.d.ts +11 -11
  32. package/lib/types/client/web/CreeveyLoader.d.ts +3 -3
  33. package/lib/types/client/web/CreeveyView/SideBar/Checkbox.d.ts +19 -19
  34. package/lib/types/client/web/CreeveyView/SideBar/Search.d.ts +6 -6
  35. package/lib/types/client/web/CreeveyView/SideBar/SideBar.d.ts +14 -14
  36. package/lib/types/client/web/CreeveyView/SideBar/SideBarHeader.d.ts +13 -13
  37. package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +33 -33
  38. package/lib/types/client/web/CreeveyView/SideBar/TestLink.d.ts +8 -8
  39. package/lib/types/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +10 -10
  40. package/lib/types/client/web/CreeveyView/SideBar/TestsStatus.d.ts +9 -9
  41. package/lib/types/client/web/CreeveyView/SideBar/Toggle.d.ts +6 -6
  42. package/lib/types/client/web/CreeveyView/SideBar/index.d.ts +1 -1
  43. package/lib/types/client/web/KeyboardEventsContext.d.ts +13 -13
  44. package/lib/types/client/web/index.d.ts +4 -4
  45. package/lib/types/creevey.d.ts +1 -1
  46. package/lib/types/index.d.ts +4 -2
  47. package/lib/types/server/config.d.ts +4 -4
  48. package/lib/types/server/docker.d.ts +7 -7
  49. package/lib/types/server/extract.d.ts +2 -2
  50. package/lib/types/server/index.d.ts +2 -2
  51. package/lib/types/server/loaders/babel/creevey-plugin.d.ts +1 -1
  52. package/lib/types/server/loaders/babel/helpers.d.ts +19 -19
  53. package/lib/types/server/loaders/babel/register.d.ts +5 -5
  54. package/lib/types/server/loaders/hooks/mdx.d.ts +1 -1
  55. package/lib/types/server/loaders/hooks/svelte.d.ts +1 -1
  56. package/lib/types/server/loaders/webpack/compile.d.ts +2 -2
  57. package/lib/types/server/loaders/webpack/creevey-loader.d.ts +2 -2
  58. package/lib/types/server/loaders/webpack/dummy-hmr.d.ts +10 -10
  59. package/lib/types/server/loaders/webpack/mdx-loader.d.ts +6 -6
  60. package/lib/types/server/loaders/webpack/start.d.ts +1 -1
  61. package/lib/types/server/logger.d.ts +6 -6
  62. package/lib/types/server/master/api.d.ts +7 -7
  63. package/lib/types/server/master/index.d.ts +3 -3
  64. package/lib/types/server/master/master.d.ts +7 -6
  65. package/lib/types/server/master/pool.d.ts +31 -30
  66. package/lib/types/server/master/runner.d.ts +26 -26
  67. package/lib/types/server/master/server.d.ts +2 -2
  68. package/lib/types/server/messages.d.ts +27 -18
  69. package/lib/types/server/selenium/browser.d.ts +17 -14
  70. package/lib/types/server/selenium/index.d.ts +2 -2
  71. package/lib/types/server/selenium/selenoid.d.ts +3 -3
  72. package/lib/types/server/stories.d.ts +8 -8
  73. package/lib/types/server/storybook/entry.d.ts +18 -18
  74. package/lib/types/server/storybook/helpers.d.ts +24 -24
  75. package/lib/types/server/storybook/providers/browser.d.ts +4 -0
  76. package/lib/types/server/storybook/providers/hybrid.d.ts +4 -0
  77. package/lib/types/server/storybook/providers/nodejs.d.ts +9 -0
  78. package/lib/types/server/testsFiles/parser.d.ts +12 -0
  79. package/lib/types/server/testsFiles/register.d.ts +2 -0
  80. package/lib/types/server/update.d.ts +2 -2
  81. package/lib/types/server/utils.d.ts +20 -19
  82. package/lib/types/server/worker/chai-image.d.ts +6 -6
  83. package/lib/types/server/worker/helpers.d.ts +8 -7
  84. package/lib/types/server/worker/index.d.ts +1 -1
  85. package/lib/types/server/worker/reporter.d.ts +8 -8
  86. package/lib/types/server/worker/worker.d.ts +4 -4
  87. package/lib/types/shared.d.ts +16 -4
  88. package/lib/types/types.d.ts +489 -459
  89. package/package.json +16 -7
  90. package/storybook-static/stories.json +21 -0
  91. package/types/mocha.d.ts +1 -0
  92. package/lib/cjs/cli.js +0 -5
  93. package/lib/cjs/client/addon/Manager.js +0 -413
  94. package/lib/cjs/client/addon/components/Addon.js +0 -76
  95. package/lib/cjs/client/addon/components/Icons.js +0 -42
  96. package/lib/cjs/client/addon/components/Panel.js +0 -68
  97. package/lib/cjs/client/addon/components/TestSelect.js +0 -63
  98. package/lib/cjs/client/addon/components/Tools.js +0 -114
  99. package/lib/cjs/client/addon/decorator.js +0 -11
  100. package/lib/cjs/client/addon/preset.js +0 -80
  101. package/lib/cjs/client/addon/register.js +0 -96
  102. package/lib/cjs/client/addon/utils.js +0 -38
  103. package/lib/cjs/client/addon/withCreevey.js +0 -284
  104. package/lib/cjs/client/shared/components/ImagesView/BlendView.js +0 -85
  105. package/lib/cjs/client/shared/components/ImagesView/ImagesView.js +0 -88
  106. package/lib/cjs/client/shared/components/ImagesView/SideBySideView.js +0 -176
  107. package/lib/cjs/client/shared/components/ImagesView/SlideView.js +0 -178
  108. package/lib/cjs/client/shared/components/ImagesView/SwapView.js +0 -110
  109. package/lib/cjs/client/shared/components/ImagesView/index.js +0 -45
  110. package/lib/cjs/client/shared/components/PageFooter/PageFooter.js +0 -46
  111. package/lib/cjs/client/shared/components/PageFooter/Paging.js +0 -98
  112. package/lib/cjs/client/shared/components/PageHeader/ImagePreview.js +0 -78
  113. package/lib/cjs/client/shared/components/PageHeader/PageHeader.js +0 -144
  114. package/lib/cjs/client/shared/components/ResultsPage.js +0 -173
  115. package/lib/cjs/client/shared/creeveyClientApi.js +0 -103
  116. package/lib/cjs/client/shared/helpers.js +0 -482
  117. package/lib/cjs/client/shared/viewMode.js +0 -17
  118. package/lib/cjs/client/web/index.html +0 -19
  119. package/lib/cjs/creevey.js +0 -71
  120. package/lib/cjs/index.js +0 -44
  121. package/lib/cjs/server/config.js +0 -92
  122. package/lib/cjs/server/docker.js +0 -150
  123. package/lib/cjs/server/extract.js +0 -43
  124. package/lib/cjs/server/index.js +0 -85
  125. package/lib/cjs/server/loaders/babel/creevey-plugin.js +0 -88
  126. package/lib/cjs/server/loaders/babel/helpers.js +0 -479
  127. package/lib/cjs/server/loaders/babel/register.js +0 -126
  128. package/lib/cjs/server/loaders/hooks/mdx.js +0 -30
  129. package/lib/cjs/server/loaders/hooks/svelte.js +0 -65
  130. package/lib/cjs/server/loaders/webpack/compile.js +0 -286
  131. package/lib/cjs/server/loaders/webpack/creevey-loader.js +0 -174
  132. package/lib/cjs/server/loaders/webpack/dummy-hmr.js +0 -44
  133. package/lib/cjs/server/loaders/webpack/mdx-loader.js +0 -72
  134. package/lib/cjs/server/loaders/webpack/start.js +0 -41
  135. package/lib/cjs/server/logger.js +0 -47
  136. package/lib/cjs/server/master/api.js +0 -71
  137. package/lib/cjs/server/master/index.js +0 -152
  138. package/lib/cjs/server/master/master.js +0 -56
  139. package/lib/cjs/server/master/pool.js +0 -206
  140. package/lib/cjs/server/master/runner.js +0 -294
  141. package/lib/cjs/server/master/server.js +0 -57
  142. package/lib/cjs/server/messages.js +0 -154
  143. package/lib/cjs/server/selenium/browser.js +0 -582
  144. package/lib/cjs/server/selenium/index.js +0 -31
  145. package/lib/cjs/server/selenium/selenoid.js +0 -174
  146. package/lib/cjs/server/stories.js +0 -167
  147. package/lib/cjs/server/storybook/entry.js +0 -68
  148. package/lib/cjs/server/storybook/helpers.js +0 -165
  149. package/lib/cjs/server/storybook/nodejs-provider.js +0 -220
  150. package/lib/cjs/server/update.js +0 -83
  151. package/lib/cjs/server/utils.js +0 -178
  152. package/lib/cjs/server/worker/chai-image.js +0 -142
  153. package/lib/cjs/server/worker/helpers.js +0 -73
  154. package/lib/cjs/server/worker/index.js +0 -15
  155. package/lib/cjs/server/worker/reporter.js +0 -120
  156. package/lib/cjs/server/worker/worker.js +0 -266
  157. package/lib/cjs/shared.js +0 -35
  158. package/lib/cjs/types.js +0 -69
  159. package/lib/esm/cli.js +0 -4
  160. package/lib/esm/client/addon/Manager.js +0 -397
  161. package/lib/esm/client/addon/components/Addon.js +0 -58
  162. package/lib/esm/client/addon/components/Icons.js +0 -27
  163. package/lib/esm/client/addon/components/Panel.js +0 -49
  164. package/lib/esm/client/addon/components/TestSelect.js +0 -49
  165. package/lib/esm/client/addon/components/Tools.js +0 -91
  166. package/lib/esm/client/addon/decorator.js +0 -2
  167. package/lib/esm/client/addon/preset.js +0 -55
  168. package/lib/esm/client/addon/register.js +0 -75
  169. package/lib/esm/client/addon/utils.js +0 -31
  170. package/lib/esm/client/addon/withCreevey.js +0 -270
  171. package/lib/esm/client/shared/components/ImagesView/BlendView.js +0 -64
  172. package/lib/esm/client/shared/components/ImagesView/ImagesView.js +0 -65
  173. package/lib/esm/client/shared/components/ImagesView/SideBySideView.js +0 -152
  174. package/lib/esm/client/shared/components/ImagesView/SlideView.js +0 -154
  175. package/lib/esm/client/shared/components/ImagesView/SwapView.js +0 -89
  176. package/lib/esm/client/shared/components/ImagesView/index.js +0 -5
  177. package/lib/esm/client/shared/components/PageFooter/PageFooter.js +0 -32
  178. package/lib/esm/client/shared/components/PageFooter/Paging.js +0 -84
  179. package/lib/esm/client/shared/components/PageHeader/ImagePreview.js +0 -64
  180. package/lib/esm/client/shared/components/PageHeader/PageHeader.js +0 -120
  181. package/lib/esm/client/shared/components/ResultsPage.js +0 -143
  182. package/lib/esm/client/shared/creeveyClientApi.js +0 -94
  183. package/lib/esm/client/shared/helpers.js +0 -424
  184. package/lib/esm/client/shared/viewMode.js +0 -6
  185. package/lib/esm/creevey.js +0 -56
  186. package/lib/esm/index.js +0 -4
  187. package/lib/esm/server/config.js +0 -71
  188. package/lib/esm/server/docker.js +0 -123
  189. package/lib/esm/server/extract.js +0 -30
  190. package/lib/esm/server/index.js +0 -65
  191. package/lib/esm/server/loaders/babel/creevey-plugin.js +0 -74
  192. package/lib/esm/server/loaders/babel/helpers.js +0 -462
  193. package/lib/esm/server/loaders/babel/register.js +0 -105
  194. package/lib/esm/server/loaders/hooks/mdx.js +0 -15
  195. package/lib/esm/server/loaders/hooks/svelte.js +0 -49
  196. package/lib/esm/server/loaders/webpack/compile.js +0 -263
  197. package/lib/esm/server/loaders/webpack/creevey-loader.js +0 -153
  198. package/lib/esm/server/loaders/webpack/dummy-hmr.js +0 -36
  199. package/lib/esm/server/loaders/webpack/mdx-loader.js +0 -58
  200. package/lib/esm/server/loaders/webpack/start.js +0 -27
  201. package/lib/esm/server/logger.js +0 -20
  202. package/lib/esm/server/master/api.js +0 -60
  203. package/lib/esm/server/master/index.js +0 -131
  204. package/lib/esm/server/master/master.js +0 -37
  205. package/lib/esm/server/master/pool.js +0 -187
  206. package/lib/esm/server/master/runner.js +0 -272
  207. package/lib/esm/server/master/server.js +0 -37
  208. package/lib/esm/server/messages.js +0 -128
  209. package/lib/esm/server/selenium/browser.js +0 -554
  210. package/lib/esm/server/selenium/index.js +0 -2
  211. package/lib/esm/server/selenium/selenoid.js +0 -151
  212. package/lib/esm/server/stories.js +0 -147
  213. package/lib/esm/server/storybook/entry.js +0 -44
  214. package/lib/esm/server/storybook/helpers.js +0 -106
  215. package/lib/esm/server/storybook/nodejs-provider.js +0 -200
  216. package/lib/esm/server/update.js +0 -65
  217. package/lib/esm/server/utils.js +0 -141
  218. package/lib/esm/server/worker/chai-image.js +0 -130
  219. package/lib/esm/server/worker/helpers.js +0 -64
  220. package/lib/esm/server/worker/index.js +0 -1
  221. package/lib/esm/server/worker/reporter.js +0 -98
  222. package/lib/esm/server/worker/worker.js +0 -236
  223. package/lib/esm/shared.js +0 -22
  224. package/lib/esm/types.js +0 -40
  225. package/lib/types/server/storybook/nodejs-provider.d.ts +0 -5
@@ -1,482 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.calcStatus = calcStatus;
7
- exports.getTestPath = getTestPath;
8
- exports.getSuiteByPath = getSuiteByPath;
9
- exports.getTestByPath = getTestByPath;
10
- exports.getTestsByStoryId = getTestsByStoryId;
11
- exports.checkSuite = checkSuite;
12
- exports.treeifyTests = treeifyTests;
13
- exports.getCheckedTests = getCheckedTests;
14
- exports.updateTestStatus = updateTestStatus;
15
- exports.removeTests = removeTests;
16
- exports.filterTests = filterTests;
17
- exports.openSuite = openSuite;
18
- exports.flattenSuite = flattenSuite;
19
- exports.countTestsStatus = countTestsStatus;
20
- exports.getConnectionUrl = getConnectionUrl;
21
- exports.getImageUrl = getImageUrl;
22
- exports.getBorderSize = getBorderSize;
23
- exports.useLoadImages = useLoadImages;
24
- exports.useResizeObserver = useResizeObserver;
25
- exports.useApplyScale = useApplyScale;
26
- exports.useCalcScale = useCalcScale;
27
- exports.useTheme = useTheme;
28
- exports.setSearchParams = setSearchParams;
29
- exports.getTestPathFromSearch = getTestPathFromSearch;
30
- exports.useForceUpdate = useForceUpdate;
31
-
32
- var _theming = require("@storybook/theming");
33
-
34
- var _qs = require("qs");
35
-
36
- var _react = require("react");
37
-
38
- var _types = require("../../types");
39
-
40
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
41
-
42
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
43
-
44
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
45
-
46
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
47
-
48
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
49
-
50
- function _toArray(arr) { return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest(); }
51
-
52
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
53
-
54
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
55
-
56
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
57
-
58
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
59
-
60
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
61
-
62
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
63
-
64
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
65
-
66
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
67
-
68
- var statusUpdatesMap = new Map([[undefined, /(unknown|success|failed|pending|running)/], ['unknown', /(success|failed|pending|running)/], ['success', /(failed|pending|running)/], ['failed', /(pending|running)/], ['pending', /running/]]);
69
-
70
- function makeEmptySuiteNode() {
71
- var path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
72
- return {
73
- path: path,
74
- skip: true,
75
- opened: false,
76
- checked: true,
77
- indeterminate: false,
78
- children: {}
79
- };
80
- }
81
-
82
- function calcStatus(oldStatus, newStatus) {
83
- var _statusUpdatesMap$get;
84
-
85
- return newStatus && (_statusUpdatesMap$get = statusUpdatesMap.get(oldStatus)) !== null && _statusUpdatesMap$get !== void 0 && _statusUpdatesMap$get.test(newStatus) ? newStatus : oldStatus;
86
- }
87
-
88
- function getTestPath(test) {
89
- var browser = test.browser,
90
- testName = test.testName,
91
- storyPath = test.storyPath;
92
- return [].concat(_toConsumableArray(storyPath), [testName, browser]).filter(_types.isDefined);
93
- }
94
-
95
- function getSuiteByPath(suite, path) {
96
- return path.reduce(function (suiteOrTest, pathToken) {
97
- return (0, _types.isTest)(suiteOrTest) ? suiteOrTest : suiteOrTest === null || suiteOrTest === void 0 ? void 0 : suiteOrTest.children[pathToken];
98
- }, suite);
99
- }
100
-
101
- function getTestByPath(suite, path) {
102
- var _getSuiteByPath;
103
-
104
- var test = (_getSuiteByPath = getSuiteByPath(suite, path)) !== null && _getSuiteByPath !== void 0 ? _getSuiteByPath : suite;
105
- return (0, _types.isTest)(test) ? test : null;
106
- }
107
-
108
- function getTestsByStoryId(suite, storyId) {
109
- return Object.values(suite.children).filter(_types.isDefined).flatMap(function (suiteOrTest) {
110
- if ((0, _types.isTest)(suiteOrTest)) return suiteOrTest.storyId === storyId ? suiteOrTest : [];
111
- return getTestsByStoryId(suiteOrTest, storyId);
112
- }).filter(_types.isDefined);
113
- }
114
-
115
- function checkTests(suiteOrTest, checked) {
116
- suiteOrTest.checked = checked;
117
-
118
- if (!(0, _types.isTest)(suiteOrTest)) {
119
- suiteOrTest.indeterminate = false;
120
- Object.values(suiteOrTest.children).filter(_types.isDefined).forEach(function (child) {
121
- return checkTests(child, checked);
122
- });
123
- }
124
- }
125
-
126
- function updateChecked(suite) {
127
- var children = Object.values(suite.children).filter(_types.isDefined).filter(function (child) {
128
- return !child.skip;
129
- });
130
- var checkedEvery = children.every(function (test) {
131
- return test.checked;
132
- });
133
- var checkedSome = children.some(function (test) {
134
- return test.checked;
135
- });
136
- var indeterminate = children.some(function (test) {
137
- return (0, _types.isTest)(test) ? false : test.indeterminate;
138
- }) || !checkedEvery && checkedSome;
139
- var checked = indeterminate || suite.checked == checkedEvery ? suite.checked : checkedEvery;
140
- suite.checked = checked;
141
- suite.indeterminate = indeterminate;
142
- }
143
-
144
- function checkSuite(suite, path, checked) {
145
- var subSuite = getSuiteByPath(suite, path);
146
- if (subSuite) checkTests(subSuite, checked);
147
- path.slice(0, -1).map(function (_, index, tokens) {
148
- return tokens.slice(0, tokens.length - index);
149
- }).forEach(function (parentPath) {
150
- var parentSuite = getSuiteByPath(suite, parentPath);
151
- if ((0, _types.isTest)(parentSuite)) return;
152
- if (parentSuite) updateChecked(parentSuite);
153
- });
154
- updateChecked(suite);
155
- }
156
-
157
- function treeifyTests(testsById) {
158
- var rootSuite = makeEmptySuiteNode();
159
- rootSuite.opened = true;
160
- Object.values(testsById).forEach(function (test) {
161
- if (!test) return;
162
-
163
- var _getTestPath$reverse = getTestPath(test).reverse(),
164
- _getTestPath$reverse2 = _toArray(_getTestPath$reverse),
165
- browser = _getTestPath$reverse2[0],
166
- testPath = _getTestPath$reverse2.slice(1);
167
-
168
- var lastSuite = testPath.reverse().reduce(function (suite, token) {
169
- var subSuite = suite.children[token] || makeEmptySuiteNode([].concat(_toConsumableArray(suite.path), [token]));
170
- subSuite.status = calcStatus(subSuite.status, test.status);
171
- if (!test.skip) subSuite.skip = false;
172
- if (!subSuite.skip) suite.skip = false;
173
- suite.children[token] = subSuite;
174
- suite.status = calcStatus(suite.status, subSuite.status);
175
-
176
- if ((0, _types.isTest)(subSuite)) {
177
- throw new Error("Suite and Test should not have same path '".concat(JSON.stringify(getTestPath(subSuite)), "'"));
178
- }
179
-
180
- return subSuite;
181
- }, rootSuite);
182
- lastSuite.children[browser] = _objectSpread(_objectSpread({}, test), {}, {
183
- checked: true
184
- });
185
- });
186
- return rootSuite;
187
- }
188
-
189
- function getCheckedTests(suite) {
190
- return Object.values(suite.children).filter(_types.isDefined).flatMap(function (suiteOrTest) {
191
- if ((0, _types.isTest)(suiteOrTest)) return suiteOrTest.checked ? suiteOrTest : [];
192
- if (!suiteOrTest.checked && !suiteOrTest.indeterminate) return [];
193
- return getCheckedTests(suiteOrTest);
194
- });
195
- }
196
-
197
- function updateTestStatus(suite, path, update) {
198
- var _suite$children$title;
199
-
200
- var title = path.shift();
201
- if (!title) return;
202
- var suiteOrTest = (_suite$children$title = suite.children[title]) !== null && _suite$children$title !== void 0 ? _suite$children$title : suite.children[title] = _objectSpread(_objectSpread({}, path.length == 0 ? update : makeEmptySuiteNode([].concat(_toConsumableArray(suite.path), [title]))), {}, {
203
- checked: suite.checked
204
- });
205
-
206
- if ((0, _types.isTest)(suiteOrTest)) {
207
- var _test$results;
208
-
209
- var test = suiteOrTest;
210
- var skip = update.skip,
211
- status = update.status,
212
- results = update.results,
213
- approved = update.approved;
214
- if ((0, _types.isDefined)(skip)) test.skip = skip;
215
- if ((0, _types.isDefined)(status)) test.status = status;
216
- if ((0, _types.isDefined)(results)) test.results ? (_test$results = test.results).push.apply(_test$results, _toConsumableArray(results)) : test.results = results;
217
- if ((0, _types.isDefined)(approved)) Object.entries(approved).forEach(function (_ref) {
218
- var _ref2 = _slicedToArray(_ref, 2),
219
- image = _ref2[0],
220
- retry = _ref2[1];
221
-
222
- return retry !== undefined && ((test.approved = test.approved || {})[image] = retry);
223
- });
224
- } else {
225
- var subSuite = suiteOrTest;
226
- updateTestStatus(subSuite, path, update);
227
- }
228
-
229
- suite.skip = Object.values(suite.children).filter(_types.isDefined).map(function (_ref3) {
230
- var skip = _ref3.skip;
231
- return skip;
232
- }).every(Boolean);
233
- suite.status = Object.values(suite.children).filter(_types.isDefined).map(function (_ref4) {
234
- var status = _ref4.status;
235
- return status;
236
- }).reduce(calcStatus);
237
- }
238
-
239
- function removeTests(suite, path) {
240
- var _suiteOrTest$children;
241
-
242
- var title = path.shift();
243
- if (!title) return;
244
- var suiteOrTest = suite.children[title];
245
- if (suiteOrTest && !(0, _types.isTest)(suiteOrTest)) removeTests(suiteOrTest, path);
246
- if ((0, _types.isTest)(suiteOrTest) || Object.keys((_suiteOrTest$children = suiteOrTest === null || suiteOrTest === void 0 ? void 0 : suiteOrTest.children) !== null && _suiteOrTest$children !== void 0 ? _suiteOrTest$children : {}).length == 0) delete suite.children[title];
247
- if (Object.keys(suite.children).length == 0) return;
248
- updateChecked(suite);
249
- suite.skip = Object.values(suite.children).filter(_types.isDefined).map(function (_ref5) {
250
- var skip = _ref5.skip;
251
- return skip;
252
- }).every(Boolean);
253
- suite.status = Object.values(suite.children).filter(_types.isDefined).map(function (_ref6) {
254
- var status = _ref6.status;
255
- return status;
256
- }).reduce(calcStatus);
257
- }
258
-
259
- function filterTests(suite, filter) {
260
- var status = filter.status,
261
- subStrings = filter.subStrings;
262
- if (!status && !subStrings.length) return suite;
263
-
264
- var filteredSuite = _objectSpread(_objectSpread({}, suite), {}, {
265
- children: {}
266
- });
267
-
268
- Object.entries(suite.children).forEach(function (_ref7) {
269
- var _ref8 = _slicedToArray(_ref7, 2),
270
- title = _ref8[0],
271
- suiteOrTest = _ref8[1];
272
-
273
- if (!suiteOrTest || suiteOrTest.skip) return;
274
-
275
- if (!status && subStrings.some(function (subString) {
276
- return title.toLowerCase().includes(subString);
277
- })) {
278
- filteredSuite.children[title] = suiteOrTest;
279
- } else if ((0, _types.isTest)(suiteOrTest)) {
280
- if (status && suiteOrTest.status && ['pending', 'running', status].includes(suiteOrTest.status)) filteredSuite.children[title] = suiteOrTest;
281
- } else {
282
- var filteredSubSuite = filterTests(suiteOrTest, filter);
283
- if (Object.keys(filteredSubSuite.children).length == 0) return;
284
- filteredSuite.children[title] = filteredSubSuite;
285
- }
286
- });
287
- return filteredSuite;
288
- }
289
-
290
- function openSuite(suite, path, opened) {
291
- var subSuite = path.reduce(function (suiteOrTest, pathToken) {
292
- if (suiteOrTest && !(0, _types.isTest)(suiteOrTest)) {
293
- if (opened) suiteOrTest.opened = opened;
294
- return suiteOrTest.children[pathToken];
295
- }
296
- }, suite);
297
- if (subSuite && !(0, _types.isTest)(subSuite)) subSuite.opened = opened;
298
- }
299
-
300
- function flattenSuite(suite) {
301
- if (!suite.opened) return [];
302
- return Object.entries(suite.children).flatMap(function (_ref9) {
303
- var _ref10 = _slicedToArray(_ref9, 2),
304
- title = _ref10[0],
305
- subSuite = _ref10[1];
306
-
307
- return subSuite ? [{
308
- title: title,
309
- suite: subSuite
310
- }].concat(_toConsumableArray((0, _types.isTest)(subSuite) ? [] : flattenSuite(subSuite))) : [];
311
- });
312
- }
313
-
314
- function countTestsStatus(suite) {
315
- var successCount = 0;
316
- var failedCount = 0;
317
- var skippedCount = 0;
318
- var pendingCount = 0;
319
- var cases = Object.values(suite.children).filter(_types.isDefined);
320
- var suiteOrTest;
321
-
322
- while (suiteOrTest = cases.pop()) {
323
- if ((0, _types.isTest)(suiteOrTest)) {
324
- if (suiteOrTest.skip) skippedCount++;
325
- if (suiteOrTest.status === 'success') successCount++;
326
- if (suiteOrTest.status === 'failed') failedCount++;
327
- if (suiteOrTest.status === 'pending') pendingCount++;
328
- } else {
329
- cases.push.apply(cases, _toConsumableArray(Object.values(suiteOrTest.children).filter(_types.isDefined)));
330
- }
331
- }
332
-
333
- return {
334
- successCount: successCount,
335
- failedCount: failedCount,
336
- skippedCount: skippedCount,
337
- pendingCount: pendingCount
338
- };
339
- }
340
-
341
- function getConnectionUrl() {
342
- return [window.location.hostname, typeof __CREEVEY_SERVER_PORT__ == 'undefined' ? window.location.port : __CREEVEY_SERVER_PORT__].filter(Boolean).join(':');
343
- }
344
-
345
- function getImageUrl(path, imageName) {
346
- // path => [kind, story, test, browser]
347
- var browser = path.slice(-1)[0];
348
- var imagesUrl = window.location.host ? "".concat(window.location.protocol, "//").concat(getConnectionUrl()).concat(window.location.pathname == '/' ? '/report' : window.location.pathname.split('/').slice(0, -1).join('/'), "/").concat(encodeURI(path.slice(0, -1).join('/'))) : encodeURI(path.slice(0, -1).join('/'));
349
- return imageName == browser ? imagesUrl : "".concat(imagesUrl, "/").concat(encodeURI(browser));
350
- }
351
-
352
- function getBorderSize(element) {
353
- // NOTE Firefox returns empty string for `borderWidth` prop
354
- var borderSize = parseFloat(getComputedStyle(element).borderTopWidth);
355
- return Number.isNaN(borderSize) ? 0 : borderSize;
356
- }
357
-
358
- function useLoadImages(s1, s2, s3) {
359
- var _useState = (0, _react.useState)(false),
360
- _useState2 = _slicedToArray(_useState, 2),
361
- loaded = _useState2[0],
362
- setLoaded = _useState2[1];
363
-
364
- (0, _react.useEffect)(function () {
365
- setLoaded(false);
366
- void Promise.all([s1, s2, s3].map(function (url) {
367
- return new Promise(function (resolve) {
368
- var image = document.createElement('img');
369
- image.src = url;
370
- image.onload = resolve;
371
- image.onerror = resolve;
372
- });
373
- })).then(function () {
374
- return setLoaded(true);
375
- });
376
- }, [s1, s2, s3]);
377
- return loaded;
378
- }
379
- /**
380
- * Uses the ResizeObserver API to observe changes within the given HTML Element DOM Rect.
381
- *
382
- * @returns dimensions of element's content box (which means without paddings and border width)
383
- */
384
-
385
-
386
- function useResizeObserver(elementRef, onResize) {
387
- var debounceTimeout = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 16;
388
- var observerRef = (0, _react.useRef)(null);
389
- (0, _react.useEffect)(function () {
390
- if (!elementRef.current) return;
391
- observerRef.current = new ResizeObserver(onResize);
392
- observerRef.current.observe(elementRef.current);
393
- return function () {
394
- var _observerRef$current;
395
-
396
- return (_observerRef$current = observerRef.current) === null || _observerRef$current === void 0 ? void 0 : _observerRef$current.disconnect();
397
- };
398
- }, [debounceTimeout, elementRef, onResize]);
399
- }
400
-
401
- function useApplyScale(imageRef, scale, dependency) {
402
- (0, _react.useLayoutEffect)(function () {
403
- if (!imageRef.current) return;
404
- var image = imageRef.current;
405
- var borderSize = getBorderSize(image);
406
- image.style.height = "".concat(image.naturalHeight * scale + borderSize * 2, "px");
407
- }, [imageRef, scale, dependency]);
408
- }
409
-
410
- function useCalcScale(diffImageRef, loaded) {
411
- var _useState3 = (0, _react.useState)(1),
412
- _useState4 = _slicedToArray(_useState3, 2),
413
- scale = _useState4[0],
414
- setScale = _useState4[1];
415
-
416
- var calcScale = (0, _react.useCallback)(function () {
417
- var diffImage = diffImageRef.current;
418
- if (!diffImage || !loaded) return setScale(1);
419
- var borderSize = getBorderSize(diffImage);
420
- var ratio = (diffImage.getBoundingClientRect().width - borderSize * 2) / diffImage.naturalWidth;
421
- setScale(Math.min(1, ratio));
422
- }, [diffImageRef, loaded]);
423
- useResizeObserver(diffImageRef, calcScale);
424
- (0, _react.useLayoutEffect)(calcScale, [calcScale]);
425
- return scale;
426
- }
427
-
428
- var CREEVEY_THEME = 'Creevey_theme';
429
-
430
- function isTheme(theme) {
431
- return (0, _types.isDefined)(theme) && Object.prototype.hasOwnProperty.call(_theming.themes, theme);
432
- }
433
-
434
- function initialTheme() {
435
- var theme = localStorage.getItem(CREEVEY_THEME);
436
- return isTheme(theme) ? theme : 'light';
437
- }
438
-
439
- function useTheme() {
440
- var _useState5 = (0, _react.useState)(initialTheme()),
441
- _useState6 = _slicedToArray(_useState5, 2),
442
- theme = _useState6[0],
443
- setTheme = _useState6[1];
444
-
445
- (0, _react.useEffect)(function () {
446
- localStorage.setItem(CREEVEY_THEME, theme);
447
- }, [theme]);
448
- return [theme, setTheme];
449
- }
450
-
451
- function setSearchParams(testPath) {
452
- var pageUrl = "?".concat((0, _qs.stringify)({
453
- testPath: testPath
454
- }));
455
- window.history.pushState({
456
- testPath: testPath
457
- }, '', pageUrl);
458
- }
459
-
460
- function getTestPathFromSearch() {
461
- var _parse = (0, _qs.parse)(window.location.search.slice(1)),
462
- testPath = _parse.testPath; //@ts-expect-error: This expression is not callable.
463
-
464
-
465
- if (Array.isArray(testPath) && testPath.every(function (token) {
466
- return typeof token == 'string';
467
- })) {
468
- return testPath;
469
- }
470
-
471
- return [];
472
- }
473
-
474
- function useForceUpdate() {
475
- var _useState7 = (0, _react.useState)({}),
476
- _useState8 = _slicedToArray(_useState7, 2),
477
- update = _useState8[1];
478
-
479
- return (0, _react.useCallback)(function () {
480
- return update({});
481
- }, []);
482
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getViewMode = exports.viewModes = exports.VIEW_MODE_KEY = void 0;
7
- var VIEW_MODE_KEY = 'Creevey_view_mode';
8
- exports.VIEW_MODE_KEY = VIEW_MODE_KEY;
9
- var viewModes = ['side-by-side', 'swap', 'slide', 'blend'];
10
- exports.viewModes = viewModes;
11
-
12
- var getViewMode = function getViewMode() {
13
- var item = localStorage.getItem(VIEW_MODE_KEY);
14
- return item && viewModes.includes(item) ? item : 'side-by-side';
15
- };
16
-
17
- exports.getViewMode = getViewMode;
@@ -1,19 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <title>Creevey</title>
7
- <style>
8
- body {
9
- margin: 0;
10
- font-family: 'Nunito Sans', -apple-system, '.SFNSText-Regular', 'San Francisco', BlinkMacSystemFont, 'Segoe UI',
11
- 'Helvetica Neue', Helvetica, Arial, sans-serif;
12
- }
13
- </style>
14
- </head>
15
- <body>
16
- <div id="root"></div>
17
- <script src="main.js"></script>
18
- </body>
19
- </html>
@@ -1,71 +0,0 @@
1
- "use strict";
2
-
3
- var _cluster = _interopRequireDefault(require("cluster"));
4
-
5
- var _minimist = _interopRequireDefault(require("minimist"));
6
-
7
- var _server = _interopRequireDefault(require("./server"));
8
-
9
- var _types = require("./types");
10
-
11
- var _messages = require("./server/messages");
12
-
13
- var _utils = require("./server/utils");
14
-
15
- var _loglevel = require("loglevel");
16
-
17
- var _logger = require("./server/logger");
18
-
19
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
-
21
- function shutdownOnException(reason) {
22
- var _reason$stack;
23
-
24
- if (_utils.isShuttingDown.current) return;
25
- const error = reason instanceof Error ? (_reason$stack = reason.stack) !== null && _reason$stack !== void 0 ? _reason$stack : reason.message : reason;
26
-
27
- _logger.logger.error(error);
28
-
29
- process.exitCode = -1;
30
- if (_cluster.default.isWorker) (0, _messages.emitWorkerMessage)({
31
- type: 'error',
32
- payload: {
33
- error
34
- }
35
- });
36
- if (_cluster.default.isMaster && !_utils.isShuttingDown.current) void (0, _utils.shutdownWorkers)();
37
- }
38
-
39
- process.on('uncaughtException', shutdownOnException);
40
- process.on('unhandledRejection', shutdownOnException);
41
- if (_cluster.default.isWorker) process.on('SIGINT', _types.noop);
42
- if (_cluster.default.isMaster) process.on('SIGINT', _utils.shutdown);
43
- const argv = (0, _minimist.default)(process.argv.slice(2), {
44
- string: ['browser', 'config', 'reporter', 'reportDir', 'screenDir'],
45
- boolean: ['debug', 'ui', 'saveReport', 'webpack', 'tests'],
46
- default: {
47
- port: 3000,
48
- saveReport: true
49
- },
50
- alias: {
51
- port: 'p',
52
- config: 'c',
53
- debug: 'd',
54
- update: 'u',
55
- extract: 'e'
56
- }
57
- }); // @ts-expect-error: define log level for storybook
58
-
59
- global.LOGLEVEL = argv.debug ? 'debug' : 'warn';
60
-
61
- if (argv.debug) {
62
- _logger.logger.setDefaultLevel(_loglevel.levels.DEBUG);
63
-
64
- (0, _loglevel.setDefaultLevel)(_loglevel.levels.DEBUG);
65
- } else {
66
- _logger.logger.setDefaultLevel(_loglevel.levels.INFO);
67
-
68
- (0, _loglevel.setDefaultLevel)(_loglevel.levels.INFO);
69
- }
70
-
71
- void (0, _server.default)(argv);
package/lib/cjs/index.js DELETED
@@ -1,44 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _exportNames = {
7
- nodejsStoriesProvider: true
8
- };
9
- Object.defineProperty(exports, "nodejsStoriesProvider", {
10
- enumerable: true,
11
- get: function () {
12
- return _nodejsProvider.loadStories;
13
- }
14
- });
15
-
16
- var _types = require("./types");
17
-
18
- Object.keys(_types).forEach(function (key) {
19
- if (key === "default" || key === "__esModule") return;
20
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
21
- if (key in exports && exports[key] === _types[key]) return;
22
- Object.defineProperty(exports, key, {
23
- enumerable: true,
24
- get: function () {
25
- return _types[key];
26
- }
27
- });
28
- });
29
-
30
- var _withCreevey = require("./client/addon/withCreevey");
31
-
32
- Object.keys(_withCreevey).forEach(function (key) {
33
- if (key === "default" || key === "__esModule") return;
34
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
35
- if (key in exports && exports[key] === _withCreevey[key]) return;
36
- Object.defineProperty(exports, key, {
37
- enumerable: true,
38
- get: function () {
39
- return _withCreevey[key];
40
- }
41
- });
42
- });
43
-
44
- var _nodejsProvider = require("./server/storybook/nodejs-provider");