creevey 0.9.0-beta.2 → 0.9.0-non-webpack.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 (236) hide show
  1. package/AUTHORS +15 -15
  2. package/CHANGELOG.md +1275 -1275
  3. package/LICENSE +21 -21
  4. package/README.md +7 -0
  5. package/addon/README.md +3 -0
  6. package/addon/package.json +4 -0
  7. package/docs/config.md +212 -212
  8. package/docs/grid.md +10 -10
  9. package/docs/tests.md +63 -63
  10. package/jest.config.js +6 -0
  11. package/lib/cjs/client/addon/Manager.js +123 -271
  12. package/lib/cjs/client/addon/components/Addon.js +17 -38
  13. package/lib/cjs/client/addon/components/Icons.js +12 -8
  14. package/lib/cjs/client/addon/components/Panel.js +17 -13
  15. package/lib/cjs/client/addon/components/TestSelect.js +11 -9
  16. package/lib/cjs/client/addon/components/Tools.js +21 -40
  17. package/lib/cjs/client/addon/decorator.js +1 -1
  18. package/lib/cjs/client/addon/index.js +31 -0
  19. package/lib/cjs/client/addon/preset.js +13 -32
  20. package/lib/cjs/client/addon/register.js +46 -70
  21. package/lib/cjs/client/addon/utils.js +1 -1
  22. package/lib/cjs/client/addon/withCreevey.js +164 -344
  23. package/lib/cjs/client/shared/components/ImagesView/BlendView.js +23 -21
  24. package/lib/cjs/client/shared/components/ImagesView/ImagesView.js +22 -18
  25. package/lib/cjs/client/shared/components/ImagesView/SideBySideView.js +42 -64
  26. package/lib/cjs/client/shared/components/ImagesView/SlideView.js +35 -48
  27. package/lib/cjs/client/shared/components/ImagesView/SwapView.js +24 -43
  28. package/lib/cjs/client/shared/components/ImagesView/index.js +9 -9
  29. package/lib/cjs/client/shared/components/PageFooter/PageFooter.js +12 -8
  30. package/lib/cjs/client/shared/components/PageFooter/Paging.js +14 -18
  31. package/lib/cjs/client/shared/components/PageHeader/ImagePreview.js +22 -18
  32. package/lib/cjs/client/shared/components/PageHeader/PageHeader.js +42 -67
  33. package/lib/cjs/client/shared/components/ResultsPage.js +39 -69
  34. package/lib/cjs/client/shared/creeveyClientApi.js +55 -82
  35. package/lib/cjs/client/shared/helpers.js +143 -214
  36. package/lib/cjs/client/shared/viewMode.js +5 -5
  37. package/lib/cjs/client/web/142.js +2 -0
  38. package/lib/cjs/client/web/142.js.LICENSE.txt +12 -0
  39. package/lib/cjs/client/web/32.js +1 -0
  40. package/lib/cjs/client/web/551.js +1 -0
  41. package/lib/cjs/client/web/566.js +2 -0
  42. package/lib/cjs/client/web/566.js.LICENSE.txt +31 -0
  43. package/lib/cjs/client/web/691.js +2 -0
  44. package/lib/cjs/client/web/691.js.LICENSE.txt +8 -0
  45. package/lib/cjs/client/web/725.js +1 -0
  46. package/lib/cjs/client/web/index.html +19 -19
  47. package/lib/cjs/client/web/main.js +2 -38
  48. package/lib/cjs/client/web/main.js.LICENSE.txt +49 -0
  49. package/lib/cjs/creevey.js +3 -5
  50. package/lib/cjs/index.js +4 -4
  51. package/lib/cjs/server/config.js +1 -1
  52. package/lib/cjs/server/docker.js +3 -7
  53. package/lib/cjs/server/index.js +1 -1
  54. package/lib/cjs/server/loaders/babel/creevey-plugin.js +1 -3
  55. package/lib/cjs/server/loaders/babel/helpers.js +13 -23
  56. package/lib/cjs/server/loaders/babel/register.js +1 -3
  57. package/lib/cjs/server/loaders/webpack/compile.js +31 -24
  58. package/lib/cjs/server/loaders/webpack/creevey-loader.js +10 -5
  59. package/lib/cjs/server/loaders/webpack/dummy-hmr.js +2 -7
  60. package/lib/cjs/server/loaders/webpack/mdx-loader.js +1 -1
  61. package/lib/cjs/server/loaders/webpack/start.js +1 -1
  62. package/lib/cjs/server/logger.js +2 -1
  63. package/lib/cjs/server/master/index.js +2 -2
  64. package/lib/cjs/server/master/pool.js +9 -18
  65. package/lib/cjs/server/master/runner.js +53 -66
  66. package/lib/cjs/server/master/server.js +2 -2
  67. package/lib/cjs/server/messages.js +8 -10
  68. package/lib/cjs/server/selenium/browser.js +23 -31
  69. package/lib/cjs/server/selenium/selenoid.js +5 -7
  70. package/lib/cjs/server/stories.js +9 -20
  71. package/lib/cjs/server/storybook/entry.js +5 -3
  72. package/lib/cjs/server/storybook/helpers.js +15 -21
  73. package/lib/cjs/server/storybook/providers/browser.js +5 -9
  74. package/lib/cjs/server/storybook/providers/nodejs.js +4 -4
  75. package/lib/cjs/server/update.js +1 -5
  76. package/lib/cjs/server/utils.js +13 -15
  77. package/lib/cjs/server/worker/reporter.js +8 -20
  78. package/lib/cjs/server/worker/worker.js +6 -16
  79. package/lib/cjs/shared/index.js +101 -0
  80. package/lib/cjs/shared/serializeRegExp.js +42 -0
  81. package/lib/cjs/types.js +6 -6
  82. package/lib/esm/client/addon/Manager.js +123 -271
  83. package/lib/esm/client/addon/components/Addon.js +15 -34
  84. package/lib/esm/client/addon/components/Icons.js +11 -7
  85. package/lib/esm/client/addon/components/Panel.js +17 -13
  86. package/lib/esm/client/addon/components/TestSelect.js +11 -9
  87. package/lib/esm/client/addon/components/Tools.js +19 -36
  88. package/lib/esm/client/addon/decorator.js +1 -1
  89. package/lib/esm/client/addon/index.js +2 -0
  90. package/lib/esm/client/addon/preset.js +10 -25
  91. package/lib/esm/client/addon/register.js +42 -66
  92. package/lib/esm/client/addon/utils.js +1 -1
  93. package/lib/esm/client/addon/withCreevey.js +157 -341
  94. package/lib/esm/client/shared/components/ImagesView/BlendView.js +21 -17
  95. package/lib/esm/client/shared/components/ImagesView/ImagesView.js +21 -17
  96. package/lib/esm/client/shared/components/ImagesView/SideBySideView.js +40 -60
  97. package/lib/esm/client/shared/components/ImagesView/SlideView.js +33 -44
  98. package/lib/esm/client/shared/components/ImagesView/SwapView.js +22 -39
  99. package/lib/esm/client/shared/components/PageFooter/PageFooter.js +12 -8
  100. package/lib/esm/client/shared/components/PageFooter/Paging.js +14 -18
  101. package/lib/esm/client/shared/components/PageHeader/ImagePreview.js +22 -18
  102. package/lib/esm/client/shared/components/PageHeader/PageHeader.js +37 -60
  103. package/lib/esm/client/shared/components/ResultsPage.js +36 -64
  104. package/lib/esm/client/shared/creeveyClientApi.js +57 -84
  105. package/lib/esm/client/shared/helpers.js +127 -198
  106. package/lib/esm/client/shared/viewMode.js +4 -4
  107. package/lib/esm/creevey.js +3 -5
  108. package/lib/esm/index.js +1 -3
  109. package/lib/esm/server/docker.js +2 -2
  110. package/lib/esm/server/index.js +1 -1
  111. package/lib/esm/server/loaders/babel/creevey-plugin.js +1 -3
  112. package/lib/esm/server/loaders/babel/helpers.js +12 -22
  113. package/lib/esm/server/loaders/babel/register.js +1 -3
  114. package/lib/esm/server/loaders/webpack/compile.js +31 -24
  115. package/lib/esm/server/loaders/webpack/creevey-loader.js +9 -4
  116. package/lib/esm/server/loaders/webpack/dummy-hmr.js +2 -6
  117. package/lib/esm/server/loaders/webpack/start.js +1 -1
  118. package/lib/esm/server/master/index.js +2 -2
  119. package/lib/esm/server/master/pool.js +7 -18
  120. package/lib/esm/server/master/runner.js +53 -66
  121. package/lib/esm/server/master/server.js +2 -2
  122. package/lib/esm/server/messages.js +3 -5
  123. package/lib/esm/server/selenium/browser.js +20 -28
  124. package/lib/esm/server/selenium/selenoid.js +4 -6
  125. package/lib/esm/server/stories.js +9 -20
  126. package/lib/esm/server/storybook/entry.js +4 -2
  127. package/lib/esm/server/storybook/helpers.js +7 -15
  128. package/lib/esm/server/storybook/providers/browser.js +4 -5
  129. package/lib/esm/server/storybook/providers/nodejs.js +3 -3
  130. package/lib/esm/server/update.js +1 -5
  131. package/lib/esm/server/utils.js +5 -9
  132. package/lib/esm/server/worker/reporter.js +8 -20
  133. package/lib/esm/server/worker/worker.js +6 -16
  134. package/lib/esm/shared/index.js +78 -0
  135. package/lib/esm/shared/serializeRegExp.js +24 -0
  136. package/lib/types/cli.d.ts +1 -1
  137. package/lib/types/client/addon/Manager.d.ts +37 -37
  138. package/lib/types/client/addon/components/Addon.d.ts +8 -8
  139. package/lib/types/client/addon/components/Icons.d.ts +7 -7
  140. package/lib/types/client/addon/components/Panel.d.ts +9 -9
  141. package/lib/types/client/addon/components/TestSelect.d.ts +8 -9
  142. package/lib/types/client/addon/components/Tools.d.ts +6 -6
  143. package/lib/types/client/addon/decorator.d.ts +1 -1
  144. package/lib/types/client/addon/index.d.ts +2 -0
  145. package/lib/types/client/addon/preset.d.ts +23 -24
  146. package/lib/types/client/addon/readyForCapture.d.ts +6 -6
  147. package/lib/types/client/addon/register.d.ts +3 -3
  148. package/lib/types/client/addon/utils.d.ts +2 -2
  149. package/lib/types/client/addon/withCreevey.d.ts +24 -24
  150. package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +3 -3
  151. package/lib/types/client/shared/components/ImagesView/ImagesView.d.ts +24 -25
  152. package/lib/types/client/shared/components/ImagesView/SideBySideView.d.ts +3 -3
  153. package/lib/types/client/shared/components/ImagesView/SlideView.d.ts +3 -3
  154. package/lib/types/client/shared/components/ImagesView/SwapView.d.ts +3 -3
  155. package/lib/types/client/shared/components/ImagesView/index.d.ts +5 -5
  156. package/lib/types/client/shared/components/PageFooter/PageFooter.d.ts +8 -9
  157. package/lib/types/client/shared/components/PageFooter/Paging.d.ts +7 -8
  158. package/lib/types/client/shared/components/PageHeader/ImagePreview.d.ts +12 -12
  159. package/lib/types/client/shared/components/PageHeader/PageHeader.d.ts +16 -17
  160. package/lib/types/client/shared/components/ResultsPage.d.ts +18 -18
  161. package/lib/types/client/shared/creeveyClientApi.d.ts +9 -9
  162. package/lib/types/client/shared/helpers.d.ts +46 -46
  163. package/lib/types/client/shared/viewMode.d.ts +4 -4
  164. package/lib/types/client/web/CreeveyApp.d.ts +11 -12
  165. package/lib/types/client/web/CreeveyContext.d.ts +11 -11
  166. package/lib/types/client/web/CreeveyLoader.d.ts +2 -3
  167. package/lib/types/client/web/CreeveyView/SideBar/Checkbox.d.ts +19 -19
  168. package/lib/types/client/web/CreeveyView/SideBar/Search.d.ts +6 -6
  169. package/lib/types/client/web/CreeveyView/SideBar/SideBar.d.ts +14 -14
  170. package/lib/types/client/web/CreeveyView/SideBar/SideBarHeader.d.ts +12 -13
  171. package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +33 -33
  172. package/lib/types/client/web/CreeveyView/SideBar/TestLink.d.ts +7 -8
  173. package/lib/types/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +10 -10
  174. package/lib/types/client/web/CreeveyView/SideBar/TestsStatus.d.ts +9 -9
  175. package/lib/types/client/web/CreeveyView/SideBar/Toggle.d.ts +6 -6
  176. package/lib/types/client/web/CreeveyView/SideBar/index.d.ts +1 -1
  177. package/lib/types/client/web/KeyboardEventsContext.d.ts +13 -13
  178. package/lib/types/client/web/index.d.ts +4 -4
  179. package/lib/types/creevey.d.ts +1 -1
  180. package/lib/types/index.d.ts +0 -1
  181. package/lib/types/server/config.d.ts +4 -4
  182. package/lib/types/server/docker.d.ts +7 -7
  183. package/lib/types/server/extract.d.ts +2 -2
  184. package/lib/types/server/index.d.ts +2 -2
  185. package/lib/types/server/loaders/babel/creevey-plugin.d.ts +1 -1
  186. package/lib/types/server/loaders/babel/helpers.d.ts +19 -19
  187. package/lib/types/server/loaders/babel/register.d.ts +5 -5
  188. package/lib/types/server/loaders/hooks/mdx.d.ts +1 -1
  189. package/lib/types/server/loaders/hooks/svelte.d.ts +1 -1
  190. package/lib/types/server/loaders/webpack/compile.d.ts +2 -2
  191. package/lib/types/server/loaders/webpack/creevey-loader.d.ts +4 -2
  192. package/lib/types/server/loaders/webpack/dummy-hmr.d.ts +10 -10
  193. package/lib/types/server/loaders/webpack/mdx-loader.d.ts +6 -6
  194. package/lib/types/server/loaders/webpack/start.d.ts +1 -1
  195. package/lib/types/server/logger.d.ts +10 -6
  196. package/lib/types/server/master/api.d.ts +7 -7
  197. package/lib/types/server/master/index.d.ts +3 -3
  198. package/lib/types/server/master/master.d.ts +7 -7
  199. package/lib/types/server/master/pool.d.ts +31 -31
  200. package/lib/types/server/master/runner.d.ts +26 -26
  201. package/lib/types/server/master/server.d.ts +2 -2
  202. package/lib/types/server/messages.d.ts +27 -27
  203. package/lib/types/server/selenium/browser.d.ts +17 -17
  204. package/lib/types/server/selenium/index.d.ts +2 -2
  205. package/lib/types/server/selenium/selenoid.d.ts +3 -3
  206. package/lib/types/server/stories.d.ts +8 -8
  207. package/lib/types/server/storybook/entry.d.ts +18 -18
  208. package/lib/types/server/storybook/helpers.d.ts +24 -24
  209. package/lib/types/server/storybook/providers/browser.d.ts +4 -4
  210. package/lib/types/server/storybook/providers/hybrid.d.ts +4 -4
  211. package/lib/types/server/storybook/providers/nodejs.d.ts +9 -9
  212. package/lib/types/server/testsFiles/parser.d.ts +12 -12
  213. package/lib/types/server/testsFiles/register.d.ts +2 -2
  214. package/lib/types/server/update.d.ts +2 -2
  215. package/lib/types/server/utils.d.ts +20 -20
  216. package/lib/types/server/worker/chai-image.d.ts +6 -6
  217. package/lib/types/server/worker/helpers.d.ts +8 -8
  218. package/lib/types/server/worker/index.d.ts +1 -1
  219. package/lib/types/server/worker/reporter.d.ts +8 -8
  220. package/lib/types/server/worker/worker.d.ts +4 -4
  221. package/lib/types/{shared.d.ts → shared/index.d.ts} +7 -16
  222. package/lib/types/shared/serializeRegExp.d.ts +9 -0
  223. package/lib/types/types.d.ts +490 -489
  224. package/package.json +115 -102
  225. package/preset.js +9 -9
  226. package/types/babel__register.d.ts +1 -1
  227. package/types/chai.d.ts +12 -12
  228. package/types/event-source-polyfill.d.ts +6 -6
  229. package/types/mdx.d.ts +3 -2
  230. package/types/mocha.d.ts +20 -20
  231. package/types/png.d.ts +4 -4
  232. package/lib/cjs/client/web/1.js +0 -13
  233. package/lib/cjs/client/web/2.js +0 -1
  234. package/lib/cjs/shared.js +0 -124
  235. package/lib/esm/shared.js +0 -93
  236. package/storybook-static/stories.json +0 -21
@@ -0,0 +1,78 @@
1
+ import { mapValues, mergeWith, cloneDeepWith } from 'lodash';
2
+ import { deserializeRegExp, isSerializedRegExp, isRegExp, serializeRegExp } from './serializeRegExp'; // NOTE: Copy-paste from storybook/api
3
+
4
+ export const combineParameters = function () {
5
+ for (var _len = arguments.length, parameterSets = new Array(_len), _key = 0; _key < _len; _key++) {
6
+ parameterSets[_key] = arguments[_key];
7
+ }
8
+
9
+ return (// eslint-disable-next-line @typescript-eslint/no-unsafe-return
10
+ mergeWith({}, ...parameterSets, (_, srcValue) => {
11
+ // Treat arrays as scalars:
12
+ if (Array.isArray(srcValue)) return srcValue;
13
+ return undefined;
14
+ })
15
+ );
16
+ }; // NOTE: Copy-paste from storybook/api
17
+
18
+ export const denormalizeStoryParameters = _ref => {
19
+ let {
20
+ globalParameters,
21
+ kindParameters,
22
+ stories
23
+ } = _ref;
24
+ return mapValues(stories, storyData => {
25
+ var _kindParameters$story;
26
+
27
+ return { ...storyData,
28
+ parameters: combineParameters(globalParameters, (_kindParameters$story = kindParameters[storyData.kind]) !== null && _kindParameters$story !== void 0 ? _kindParameters$story : {}, storyData.parameters)
29
+ };
30
+ });
31
+ };
32
+ export const serializeRawStories = stories => {
33
+ return mapValues(stories, storyData => {
34
+ const creevey = storyData.parameters.creevey;
35
+
36
+ if (creevey !== null && creevey !== void 0 && creevey.skip) {
37
+ return { ...storyData,
38
+ parameters: { ...storyData.parameters,
39
+ creevey: { ...creevey,
40
+ skip: cloneDeepWith(creevey.skip, value => {
41
+ if (isRegExp(value)) {
42
+ return serializeRegExp(value);
43
+ }
44
+
45
+ return undefined;
46
+ })
47
+ }
48
+ }
49
+ };
50
+ }
51
+
52
+ return storyData;
53
+ });
54
+ };
55
+ export const deserializeRawStories = stories => {
56
+ return mapValues(stories, deserializeStory);
57
+ };
58
+ export const deserializeStory = story => {
59
+ const creevey = story.parameters.creevey;
60
+
61
+ if (creevey !== null && creevey !== void 0 && creevey.skip) {
62
+ return { ...story,
63
+ parameters: { ...story.parameters,
64
+ creevey: { ...creevey,
65
+ skip: cloneDeepWith(creevey.skip, value => {
66
+ if (isSerializedRegExp(value)) {
67
+ return deserializeRegExp(value);
68
+ }
69
+
70
+ return undefined;
71
+ })
72
+ }
73
+ }
74
+ };
75
+ }
76
+
77
+ return story;
78
+ };
@@ -0,0 +1,24 @@
1
+ export const isRegExp = exp => {
2
+ return exp instanceof RegExp;
3
+ };
4
+ export const isSerializedRegExp = exp => {
5
+ return typeof exp === 'object' && exp !== null && Reflect.get(exp, '__regexp') === true;
6
+ };
7
+ export const serializeRegExp = exp => {
8
+ const {
9
+ source,
10
+ flags
11
+ } = exp;
12
+ return {
13
+ __regexp: true,
14
+ source,
15
+ flags
16
+ };
17
+ };
18
+ export const deserializeRegExp = _ref => {
19
+ let {
20
+ source,
21
+ flags
22
+ } = _ref;
23
+ return new RegExp(source, flags);
24
+ };
@@ -1 +1 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
@@ -1,37 +1,37 @@
1
- import { API } from '@storybook/api';
2
- import { SetStoriesPayload } from '@storybook/api/dist/ts3.9/lib/stories';
3
- import { CreeveyStatus, CreeveyUpdate, TestData, TestStatus, StoriesRaw } from '../../types';
4
- import { CreeveyClientApi } from '../shared/creeveyClientApi';
5
- export declare class CreeveyManager {
6
- storybookApi: API;
7
- storyId: string;
8
- activeBrowser: string;
9
- selectedTestId: string;
10
- status: CreeveyStatus;
11
- creeveyApi: CreeveyClientApi | null;
12
- stories: StoriesRaw;
13
- updateStatusListeners: Array<(update: CreeveyUpdate) => void>;
14
- changeTestListeners: Array<(testId: string) => void>;
15
- constructor(storybookApi: API);
16
- initAll: () => Promise<void>;
17
- onUpdateStatus(listener: (update: CreeveyUpdate) => void): () => void;
18
- onChangeTest(listener: (testId: string) => void): () => void;
19
- handleCreeveyUpdate: (update: CreeveyUpdate) => void;
20
- getCurrentTest: () => TestData | undefined;
21
- onStoryRendered: (storyId: string) => void;
22
- onStart: () => void;
23
- onStop: () => void;
24
- onImageApprove: (id: string, retry: number, image: string) => void;
25
- onStartAllStoryTests: () => void;
26
- onStartAllTests: () => void;
27
- onSetStories: (data: SetStoriesPayload) => void;
28
- setActiveBrowser: (browser: string) => void;
29
- setSelectedTestId: (testId: string) => void;
30
- getStoryTests: (storyId: string) => TestData[];
31
- getBrowsers: () => string[];
32
- getTestsByStoryIdAndBrowser: (browser: string) => TestData[];
33
- getTabTitle: (browser: string) => string;
34
- setPanelsTitle: () => void;
35
- addStatusesToSideBar(): Promise<void>;
36
- addStatusToStoryName(name: string, status: TestStatus | undefined, skip: string | boolean): string;
37
- }
1
+ import { API } from '@storybook/api';
2
+ import { denormalizeStoryParameters } from '../../shared';
3
+ import { CreeveyStatus, CreeveyUpdate, TestData, TestStatus, StoriesRaw } from '../../types';
4
+ import { CreeveyClientApi } from '../shared/creeveyClientApi';
5
+ export declare class CreeveyManager {
6
+ storyId: string;
7
+ activeBrowser: string;
8
+ selectedTestId: string;
9
+ status: CreeveyStatus;
10
+ creeveyApi: CreeveyClientApi | null;
11
+ storybookApi: API;
12
+ stories: StoriesRaw;
13
+ updateStatusListeners: Array<(update: CreeveyUpdate) => void>;
14
+ changeTestListeners: Array<(testId: string) => void>;
15
+ constructor(storybookApi: API);
16
+ initAll: () => Promise<void>;
17
+ onUpdateStatus(listener: (update: CreeveyUpdate) => void): () => void;
18
+ onChangeTest(listener: (testId: string) => void): () => void;
19
+ handleCreeveyUpdate: (update: CreeveyUpdate) => void;
20
+ getCurrentTest: () => TestData | undefined;
21
+ onStoryRendered: (storyId: string) => void;
22
+ onStart: () => void;
23
+ onStop: () => void;
24
+ onImageApprove: (id: string, retry: number, image: string) => void;
25
+ onStartAllStoryTests: () => void;
26
+ onStartAllTests: () => void;
27
+ onSetStories: (data: Parameters<typeof denormalizeStoryParameters>['0']) => void;
28
+ setActiveBrowser: (browser: string) => void;
29
+ setSelectedTestId: (testId: string) => void;
30
+ getStoryTests: (storyId: string) => TestData[];
31
+ getBrowsers: () => string[];
32
+ getTestsByStoryIdAndBrowser: (browser: string) => TestData[];
33
+ getTabTitle: (browser: string) => string;
34
+ setPanelsTitle: () => void;
35
+ addStatusesToSideBar(): Promise<void>;
36
+ addStatusToStoryName(name: string, status: TestStatus | undefined, skip: string | boolean): string;
37
+ }
@@ -1,8 +1,8 @@
1
- import { CreeveyManager } from '../Manager';
2
- interface AddonProps {
3
- active?: boolean;
4
- browser: string;
5
- manager: CreeveyManager;
6
- }
7
- export declare const Addon: ({ active, browser, manager }: AddonProps) => JSX.Element | null;
8
- export {};
1
+ import { CreeveyManager } from '../Manager';
2
+ interface AddonProps {
3
+ active?: boolean;
4
+ browser: string;
5
+ manager: CreeveyManager;
6
+ }
7
+ export declare const Addon: ({ active, browser, manager }: AddonProps) => JSX.Element | null;
8
+ export {};
@@ -1,7 +1,7 @@
1
- interface IconProps {
2
- width?: number;
3
- height?: number;
4
- }
5
- export declare const NextIcon: ({ width, height }: IconProps) => JSX.Element;
6
- export declare const ForwardIcon: ({ width, height }: IconProps) => JSX.Element;
7
- export {};
1
+ interface IconProps {
2
+ width?: number;
3
+ height?: number;
4
+ }
5
+ export declare const NextIcon: ({ width, height }: IconProps) => JSX.Element;
6
+ export declare const ForwardIcon: ({ width, height }: IconProps) => JSX.Element;
7
+ export {};
@@ -1,9 +1,9 @@
1
- import { TestData } from '../../../types';
2
- interface PanelProps {
3
- tests: TestData[];
4
- selectedTestId: string;
5
- onChangeTest: (testId: string) => void;
6
- onImageApprove: (id: string, retry: number, image: string) => void;
7
- }
8
- export declare const Panel: ({ tests, selectedTestId, onChangeTest, onImageApprove }: PanelProps) => JSX.Element;
9
- export {};
1
+ import { TestData } from '../../../types';
2
+ interface PanelProps {
3
+ tests: TestData[];
4
+ selectedTestId: string;
5
+ onChangeTest: (testId: string) => void;
6
+ onImageApprove: (id: string, retry: number, image: string) => void;
7
+ }
8
+ export declare const Panel: ({ tests, selectedTestId, onChangeTest, onImageApprove }: PanelProps) => JSX.Element;
9
+ export {};
@@ -1,9 +1,8 @@
1
- /// <reference types="react" />
2
- import { TestData } from '../../../types';
3
- interface TestSelectProps {
4
- tests: TestData[];
5
- selectedTestId: string;
6
- onChangeTest: (testId: string) => void;
7
- }
8
- export default function TestSelect(props: TestSelectProps): JSX.Element;
9
- export {};
1
+ import { TestData } from '../../../types';
2
+ interface TestSelectProps {
3
+ tests: TestData[];
4
+ selectedTestId: string;
5
+ onChangeTest: (testId: string) => void;
6
+ }
7
+ export default function TestSelect(props: TestSelectProps): JSX.Element;
8
+ export {};
@@ -1,6 +1,6 @@
1
- import { CreeveyManager } from '../Manager';
2
- interface ToolsProps {
3
- manager: CreeveyManager;
4
- }
5
- export declare const Tools: ({ manager }: ToolsProps) => JSX.Element | null;
6
- export {};
1
+ import { CreeveyManager } from '../Manager';
2
+ interface ToolsProps {
3
+ manager: CreeveyManager;
4
+ }
5
+ export declare const Tools: ({ manager }: ToolsProps) => JSX.Element | null;
6
+ export {};
@@ -1 +1 @@
1
- export declare const decorators: import("@storybook/addons").MakeDecoratorResult[];
1
+ export declare const decorators: import("@storybook/addons").MakeDecoratorResult[];
@@ -0,0 +1,2 @@
1
+ export * from './withCreevey';
2
+ export * from './readyForCapture';
@@ -1,24 +1,23 @@
1
- /// <reference types="webpack-dev-server" />
2
- import { Configuration } from 'webpack';
3
- export declare function config(entry?: string[]): string[];
4
- export declare function managerEntries(entry?: string[]): string[];
5
- declare global {
6
- const __CREEVEY_SERVER_HOST__: string;
7
- const __CREEVEY_SERVER_PORT__: number;
8
- const __CREEVEY_CLIENT_PORT__: number | null;
9
- }
10
- export interface CreeveyAddonOptions {
11
- creeveyConfigPath?: string;
12
- creeveyPreExtract?: string;
13
- creeveyHost?: string;
14
- creeveyPort?: number;
15
- clientPort?: number;
16
- configType: string;
17
- configDir: string;
18
- outputDir: string;
19
- skipExtract?: boolean;
20
- presets?: {
21
- apply: <T>(preset: string) => Promise<T | undefined>;
22
- };
23
- }
24
- export declare function managerWebpack(config: Configuration, options: CreeveyAddonOptions): Promise<Configuration>;
1
+ import { Configuration } from 'webpack';
2
+ export declare function config(entry?: string[]): string[];
3
+ export declare function managerEntries(entry?: string[]): string[];
4
+ declare global {
5
+ const __CREEVEY_SERVER_HOST__: string;
6
+ const __CREEVEY_SERVER_PORT__: number;
7
+ const __CREEVEY_CLIENT_PORT__: number | null;
8
+ }
9
+ export interface CreeveyAddonOptions {
10
+ creeveyConfigPath?: string;
11
+ creeveyPreExtract?: string;
12
+ creeveyHost?: string;
13
+ creeveyPort?: number;
14
+ clientPort?: number;
15
+ configType: string;
16
+ configDir: string;
17
+ outputDir: string;
18
+ skipExtract?: boolean;
19
+ presets?: {
20
+ apply: <T>(preset: string) => Promise<T | undefined>;
21
+ };
22
+ }
23
+ export declare function _managerWebpack(config: Configuration, options: CreeveyAddonOptions): Promise<Configuration>;
@@ -1,6 +1,6 @@
1
- declare global {
2
- interface Window {
3
- __CREEVEY_SET_READY_FOR_CAPTURE__?: () => void;
4
- }
5
- }
6
- export declare function readyForCapture(): void;
1
+ declare global {
2
+ interface Window {
3
+ __CREEVEY_SET_READY_FOR_CAPTURE__?: () => void;
4
+ }
5
+ }
6
+ export declare function readyForCapture(): void;
@@ -1,3 +1,3 @@
1
- import { API } from '@storybook/api';
2
- export declare const ADDON_ID = "creevey";
3
- export declare function registerCreeveyPanels(storybookApi: API): Promise<void>;
1
+ import { API } from '@storybook/api';
2
+ export declare const ADDON_ID = "creevey";
3
+ export declare function registerCreeveyPanels(storybookApi: API): Promise<void>;
@@ -1,2 +1,2 @@
1
- import { TestStatus } from '../../types';
2
- export declare function getEmojiByTestStatus(status: TestStatus | undefined, skip?: string | boolean): string;
1
+ import { TestStatus } from '../../types';
2
+ export declare function getEmojiByTestStatus(status: TestStatus | undefined, skip?: string | boolean): string;
@@ -1,24 +1,24 @@
1
- import type { PreviewWeb } from '@storybook/preview-web';
2
- import type { AnyFramework } from '@storybook/csf';
3
- import type { StoryStore } from '@storybook/client-api';
4
- import { MakeDecoratorResult, Channel } from '@storybook/addons';
5
- import { CaptureOptions, StoriesRaw, StorybookGlobals } from '../../types';
6
- declare global {
7
- interface Window {
8
- __CREEVEY_SERVER_HOST__: string;
9
- __CREEVEY_SERVER_PORT__: number;
10
- __CREEVEY_WORKER_ID__: number;
11
- __CREEVEY_GET_STORIES__: () => Promise<StoriesRaw | void>;
12
- __CREEVEY_SELECT_STORY__: (storyId: string, kind: string, name: string, shouldWaitForReady: boolean, callback: (response: [error?: string | null, isCaptureCalled?: boolean]) => void) => void;
13
- __CREEVEY_UPDATE_GLOBALS__: (globals: StorybookGlobals) => void;
14
- __CREEVEY_INSERT_IGNORE_STYLES__: (ignoreElements: string[]) => HTMLStyleElement;
15
- __CREEVEY_REMOVE_IGNORE_STYLES__: (ignoreStyles: HTMLStyleElement) => void;
16
- __CREEVEY_HAS_PLAY_COMPLETED_YET__: (callback: (isPlayCompleted: boolean) => void) => void;
17
- __CREEVEY_SET_READY_FOR_CAPTURE__?: () => void;
18
- __STORYBOOK_ADDONS_CHANNEL__: Channel;
19
- __STORYBOOK_STORY_STORE__: StoryStore<AnyFramework>;
20
- __STORYBOOK_PREVIEW__: PreviewWeb<AnyFramework>;
21
- }
22
- }
23
- export declare function withCreevey(): MakeDecoratorResult;
24
- export declare function capture(options?: CaptureOptions): Promise<void>;
1
+ import type { PreviewWeb } from '@storybook/preview-web';
2
+ import type { AnyFramework } from '@storybook/csf';
3
+ import type { StoryStore } from '@storybook/client-api';
4
+ import { MakeDecoratorResult, Channel } from '@storybook/addons';
5
+ import { CaptureOptions, StoriesRaw, StorybookGlobals } from '../../types';
6
+ declare global {
7
+ interface Window {
8
+ __CREEVEY_SERVER_HOST__: string;
9
+ __CREEVEY_SERVER_PORT__: number;
10
+ __CREEVEY_WORKER_ID__: number;
11
+ __CREEVEY_GET_STORIES__: () => Promise<StoriesRaw | void>;
12
+ __CREEVEY_SELECT_STORY__: (storyId: string, kind: string, name: string, shouldWaitForReady: boolean, callback: (response: [error?: string | null, isCaptureCalled?: boolean]) => void) => Promise<void>;
13
+ __CREEVEY_UPDATE_GLOBALS__: (globals: StorybookGlobals) => void;
14
+ __CREEVEY_INSERT_IGNORE_STYLES__: (ignoreElements: string[]) => HTMLStyleElement;
15
+ __CREEVEY_REMOVE_IGNORE_STYLES__: (ignoreStyles: HTMLStyleElement) => void;
16
+ __CREEVEY_HAS_PLAY_COMPLETED_YET__: (callback: (isPlayCompleted: boolean) => void) => void;
17
+ __CREEVEY_SET_READY_FOR_CAPTURE__?: () => void;
18
+ __STORYBOOK_ADDONS_CHANNEL__: Channel;
19
+ __STORYBOOK_STORY_STORE__: StoryStore<AnyFramework>;
20
+ __STORYBOOK_PREVIEW__: PreviewWeb<AnyFramework>;
21
+ }
22
+ }
23
+ export declare function withCreevey(): MakeDecoratorResult;
24
+ export declare function capture(options?: CaptureOptions): Promise<void>;
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- import { ViewPropsWithTheme } from './ImagesView';
3
- export declare const BlendView: React.SFC<import("emotion-theming/types/helper").AddOptionalTo<ViewPropsWithTheme, "theme">>;
1
+ import React from 'react';
2
+ import { ViewPropsWithTheme } from './ImagesView';
3
+ export declare const BlendView: React.FC<import("@storybook/theming").AddOptionalTo<ViewPropsWithTheme, "theme">>;
@@ -1,25 +1,24 @@
1
- /// <reference types="react" />
2
- import { Images, ImagesViewMode } from '../../../../types';
3
- import { Theme } from '@storybook/theming';
4
- export declare const themeBorderColors: {
5
- actual: string;
6
- expect: string;
7
- diff: string;
8
- };
9
- export declare function getBorderColor(theme: Theme, color: string): string;
10
- interface ViewProps {
11
- actual: string;
12
- diff: string;
13
- expect: string;
14
- }
15
- export interface ViewPropsWithTheme extends ViewProps {
16
- theme: Theme;
17
- }
18
- interface ImagesViewProps {
19
- url: string;
20
- image: Images;
21
- canApprove: boolean;
22
- mode: ImagesViewMode;
23
- }
24
- export declare function ImagesView({ url, image, canApprove, mode }: ImagesViewProps): JSX.Element;
25
- export {};
1
+ import { Images, ImagesViewMode } from '../../../../types';
2
+ import { Theme } from '@storybook/theming';
3
+ export declare const themeBorderColors: {
4
+ actual: string;
5
+ expect: string;
6
+ diff: string;
7
+ };
8
+ export declare function getBorderColor(theme: Theme, color: string): string;
9
+ interface ViewProps {
10
+ actual: string;
11
+ diff: string;
12
+ expect: string;
13
+ }
14
+ export interface ViewPropsWithTheme extends ViewProps {
15
+ theme: Theme;
16
+ }
17
+ interface ImagesViewProps {
18
+ url: string;
19
+ image: Images;
20
+ canApprove: boolean;
21
+ mode: ImagesViewMode;
22
+ }
23
+ export declare function ImagesView({ url, image, canApprove, mode }: ImagesViewProps): JSX.Element;
24
+ export {};
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- import { ViewPropsWithTheme } from './ImagesView';
3
- export declare const SideBySideView: React.SFC<import("emotion-theming/types/helper").AddOptionalTo<ViewPropsWithTheme, "theme">>;
1
+ import React from 'react';
2
+ import { ViewPropsWithTheme } from './ImagesView';
3
+ export declare const SideBySideView: React.FC<import("@storybook/theming").AddOptionalTo<ViewPropsWithTheme, "theme">>;
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- import { ViewPropsWithTheme } from './ImagesView';
3
- export declare const SlideView: React.SFC<import("emotion-theming/types/helper").AddOptionalTo<ViewPropsWithTheme, "theme">>;
1
+ import React from 'react';
2
+ import { ViewPropsWithTheme } from './ImagesView';
3
+ export declare const SlideView: React.FC<import("@storybook/theming").AddOptionalTo<ViewPropsWithTheme, "theme">>;
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- import { ViewPropsWithTheme } from './ImagesView';
3
- export declare const SwapView: React.SFC<import("emotion-theming/types/helper").AddOptionalTo<ViewPropsWithTheme, "theme">>;
1
+ import React from 'react';
2
+ import { ViewPropsWithTheme } from './ImagesView';
3
+ export declare const SwapView: React.FC<import("@storybook/theming").AddOptionalTo<ViewPropsWithTheme, "theme">>;
@@ -1,5 +1,5 @@
1
- export { ImagesView } from './ImagesView';
2
- export { BlendView } from './BlendView';
3
- export { SideBySideView } from './SideBySideView';
4
- export { SlideView } from './SlideView';
5
- export { SwapView } from './SwapView';
1
+ export { ImagesView } from './ImagesView';
2
+ export { BlendView } from './BlendView';
3
+ export { SideBySideView } from './SideBySideView';
4
+ export { SlideView } from './SlideView';
5
+ export { SwapView } from './SwapView';
@@ -1,9 +1,8 @@
1
- /// <reference types="react" />
2
- export interface PageFooterProps {
3
- canApprove: boolean;
4
- retriesCount: number;
5
- retry: number;
6
- onRetryChange: (retry: number) => void;
7
- onApprove: () => void;
8
- }
9
- export declare function PageFooter({ canApprove, retriesCount, retry, onRetryChange, onApprove, }: PageFooterProps): JSX.Element;
1
+ export interface PageFooterProps {
2
+ canApprove: boolean;
3
+ retriesCount: number;
4
+ retry: number;
5
+ onRetryChange: (retry: number) => void;
6
+ onApprove: () => void;
7
+ }
8
+ export declare function PageFooter({ canApprove, retriesCount, retry, onRetryChange, onApprove, }: PageFooterProps): JSX.Element;
@@ -1,8 +1,7 @@
1
- /// <reference types="react" />
2
- export interface PagingProps {
3
- activePage: number;
4
- onPageChange: (pageNumber: number) => void;
5
- pagesCount: number;
6
- }
7
- export declare type ItemType = number | '.' | 'forward';
8
- export declare function Paging(props: PagingProps): JSX.Element;
1
+ export interface PagingProps {
2
+ activePage: number;
3
+ onPageChange: (pageNumber: number) => void;
4
+ pagesCount: number;
5
+ }
6
+ export declare type ItemType = number | '.' | 'forward';
7
+ export declare function Paging(props: PagingProps): JSX.Element;
@@ -1,12 +1,12 @@
1
- import React from 'react';
2
- import { Theme } from '@storybook/theming';
3
- interface ImageSwapProps {
4
- url: string;
5
- isActive: boolean;
6
- onClick: (imageName: string) => void;
7
- imageName: string;
8
- theme: Theme;
9
- error?: boolean;
10
- }
11
- export declare const ImagePreview: React.SFC<import("emotion-theming/types/helper").AddOptionalTo<ImageSwapProps, "theme">>;
12
- export {};
1
+ import React from 'react';
2
+ import { Theme } from '@storybook/theming';
3
+ interface ImageSwapProps {
4
+ url: string;
5
+ isActive: boolean;
6
+ onClick: (imageName: string) => void;
7
+ imageName: string;
8
+ theme: Theme;
9
+ error?: boolean;
10
+ }
11
+ export declare const ImagePreview: React.FC<import("@storybook/theming").AddOptionalTo<ImageSwapProps, "theme">>;
12
+ export {};
@@ -1,17 +1,16 @@
1
- /// <reference types="react" />
2
- import { ImagesViewMode, Images } from '../../../../types';
3
- interface PageHeaderProps {
4
- title: string[];
5
- images?: Partial<{
6
- [name: string]: Images;
7
- }>;
8
- errorMessage?: string | null;
9
- showViewModes: boolean;
10
- showTitle?: boolean;
11
- viewMode: ImagesViewMode;
12
- imagesWithError?: string[];
13
- onImageChange: (name: string) => void;
14
- onViewModeChange: (viewMode: ImagesViewMode) => void;
15
- }
16
- export declare function PageHeader({ title, images, errorMessage, showViewModes, showTitle, viewMode, imagesWithError, onImageChange, onViewModeChange, }: PageHeaderProps): JSX.Element | null;
17
- export {};
1
+ import { ImagesViewMode, Images } from '../../../../types';
2
+ interface PageHeaderProps {
3
+ title: string[];
4
+ images?: Partial<{
5
+ [name: string]: Images;
6
+ }>;
7
+ errorMessage?: string | null;
8
+ showViewModes: boolean;
9
+ showTitle?: boolean;
10
+ viewMode: ImagesViewMode;
11
+ imagesWithError?: string[];
12
+ onImageChange: (name: string) => void;
13
+ onViewModeChange: (viewMode: ImagesViewMode) => void;
14
+ }
15
+ export declare function PageHeader({ title, images, errorMessage, showViewModes, showTitle, viewMode, imagesWithError, onImageChange, onViewModeChange, }: PageHeaderProps): JSX.Element | null;
16
+ export {};
@@ -1,18 +1,18 @@
1
- import React from 'react';
2
- import { Theme } from '@storybook/theming';
3
- import { TestResult } from '../../../types';
4
- interface TestResultsProps {
5
- id: string;
6
- path: string[];
7
- results?: TestResult[];
8
- approved?: Partial<{
9
- [image: string]: number;
10
- }>;
11
- showTitle?: boolean;
12
- onImageApprove: (id: string, retry: number, image: string) => void;
13
- theme: Theme;
14
- height?: string;
15
- }
16
- export declare function ResultsPageInternal({ id, path, results, approved, theme, onImageApprove, showTitle, height, }: TestResultsProps): JSX.Element;
17
- export declare const ResultsPage: React.SFC<import("emotion-theming/types/helper").AddOptionalTo<TestResultsProps, "theme">>;
18
- export {};
1
+ import React from 'react';
2
+ import { Theme } from '@storybook/theming';
3
+ import { TestResult } from '../../../types';
4
+ interface TestResultsProps {
5
+ id: string;
6
+ path: string[];
7
+ results?: TestResult[];
8
+ approved?: Partial<{
9
+ [image: string]: number;
10
+ }>;
11
+ showTitle?: boolean;
12
+ onImageApprove: (id: string, retry: number, image: string) => void;
13
+ theme: Theme;
14
+ height?: string;
15
+ }
16
+ export declare function ResultsPageInternal({ id, path, results, approved, theme, onImageApprove, showTitle, height, }: TestResultsProps): JSX.Element;
17
+ export declare const ResultsPage: React.FC<import("@storybook/theming").AddOptionalTo<TestResultsProps, "theme">>;
18
+ export {};