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.
- package/AUTHORS +15 -15
- package/CHANGELOG.md +1275 -1275
- package/LICENSE +21 -21
- package/README.md +7 -0
- package/addon/README.md +3 -0
- package/addon/package.json +4 -0
- package/docs/config.md +212 -212
- package/docs/grid.md +10 -10
- package/docs/tests.md +63 -63
- package/jest.config.js +6 -0
- package/lib/cjs/client/addon/Manager.js +123 -271
- package/lib/cjs/client/addon/components/Addon.js +17 -38
- package/lib/cjs/client/addon/components/Icons.js +12 -8
- package/lib/cjs/client/addon/components/Panel.js +17 -13
- package/lib/cjs/client/addon/components/TestSelect.js +11 -9
- package/lib/cjs/client/addon/components/Tools.js +21 -40
- package/lib/cjs/client/addon/decorator.js +1 -1
- package/lib/cjs/client/addon/index.js +31 -0
- package/lib/cjs/client/addon/preset.js +13 -32
- package/lib/cjs/client/addon/register.js +46 -70
- package/lib/cjs/client/addon/utils.js +1 -1
- package/lib/cjs/client/addon/withCreevey.js +164 -344
- package/lib/cjs/client/shared/components/ImagesView/BlendView.js +23 -21
- package/lib/cjs/client/shared/components/ImagesView/ImagesView.js +22 -18
- package/lib/cjs/client/shared/components/ImagesView/SideBySideView.js +42 -64
- package/lib/cjs/client/shared/components/ImagesView/SlideView.js +35 -48
- package/lib/cjs/client/shared/components/ImagesView/SwapView.js +24 -43
- package/lib/cjs/client/shared/components/ImagesView/index.js +9 -9
- package/lib/cjs/client/shared/components/PageFooter/PageFooter.js +12 -8
- package/lib/cjs/client/shared/components/PageFooter/Paging.js +14 -18
- package/lib/cjs/client/shared/components/PageHeader/ImagePreview.js +22 -18
- package/lib/cjs/client/shared/components/PageHeader/PageHeader.js +42 -67
- package/lib/cjs/client/shared/components/ResultsPage.js +39 -69
- package/lib/cjs/client/shared/creeveyClientApi.js +55 -82
- package/lib/cjs/client/shared/helpers.js +143 -214
- package/lib/cjs/client/shared/viewMode.js +5 -5
- package/lib/cjs/client/web/142.js +2 -0
- package/lib/cjs/client/web/142.js.LICENSE.txt +12 -0
- package/lib/cjs/client/web/32.js +1 -0
- package/lib/cjs/client/web/551.js +1 -0
- package/lib/cjs/client/web/566.js +2 -0
- package/lib/cjs/client/web/566.js.LICENSE.txt +31 -0
- package/lib/cjs/client/web/691.js +2 -0
- package/lib/cjs/client/web/691.js.LICENSE.txt +8 -0
- package/lib/cjs/client/web/725.js +1 -0
- package/lib/cjs/client/web/index.html +19 -19
- package/lib/cjs/client/web/main.js +2 -38
- package/lib/cjs/client/web/main.js.LICENSE.txt +49 -0
- package/lib/cjs/creevey.js +3 -5
- package/lib/cjs/index.js +4 -4
- package/lib/cjs/server/config.js +1 -1
- package/lib/cjs/server/docker.js +3 -7
- package/lib/cjs/server/index.js +1 -1
- package/lib/cjs/server/loaders/babel/creevey-plugin.js +1 -3
- package/lib/cjs/server/loaders/babel/helpers.js +13 -23
- package/lib/cjs/server/loaders/babel/register.js +1 -3
- package/lib/cjs/server/loaders/webpack/compile.js +31 -24
- package/lib/cjs/server/loaders/webpack/creevey-loader.js +10 -5
- package/lib/cjs/server/loaders/webpack/dummy-hmr.js +2 -7
- package/lib/cjs/server/loaders/webpack/mdx-loader.js +1 -1
- package/lib/cjs/server/loaders/webpack/start.js +1 -1
- package/lib/cjs/server/logger.js +2 -1
- package/lib/cjs/server/master/index.js +2 -2
- package/lib/cjs/server/master/pool.js +9 -18
- package/lib/cjs/server/master/runner.js +53 -66
- package/lib/cjs/server/master/server.js +2 -2
- package/lib/cjs/server/messages.js +8 -10
- package/lib/cjs/server/selenium/browser.js +23 -31
- package/lib/cjs/server/selenium/selenoid.js +5 -7
- package/lib/cjs/server/stories.js +9 -20
- package/lib/cjs/server/storybook/entry.js +5 -3
- package/lib/cjs/server/storybook/helpers.js +15 -21
- package/lib/cjs/server/storybook/providers/browser.js +5 -9
- package/lib/cjs/server/storybook/providers/nodejs.js +4 -4
- package/lib/cjs/server/update.js +1 -5
- package/lib/cjs/server/utils.js +13 -15
- package/lib/cjs/server/worker/reporter.js +8 -20
- package/lib/cjs/server/worker/worker.js +6 -16
- package/lib/cjs/shared/index.js +101 -0
- package/lib/cjs/shared/serializeRegExp.js +42 -0
- package/lib/cjs/types.js +6 -6
- package/lib/esm/client/addon/Manager.js +123 -271
- package/lib/esm/client/addon/components/Addon.js +15 -34
- package/lib/esm/client/addon/components/Icons.js +11 -7
- package/lib/esm/client/addon/components/Panel.js +17 -13
- package/lib/esm/client/addon/components/TestSelect.js +11 -9
- package/lib/esm/client/addon/components/Tools.js +19 -36
- package/lib/esm/client/addon/decorator.js +1 -1
- package/lib/esm/client/addon/index.js +2 -0
- package/lib/esm/client/addon/preset.js +10 -25
- package/lib/esm/client/addon/register.js +42 -66
- package/lib/esm/client/addon/utils.js +1 -1
- package/lib/esm/client/addon/withCreevey.js +157 -341
- package/lib/esm/client/shared/components/ImagesView/BlendView.js +21 -17
- package/lib/esm/client/shared/components/ImagesView/ImagesView.js +21 -17
- package/lib/esm/client/shared/components/ImagesView/SideBySideView.js +40 -60
- package/lib/esm/client/shared/components/ImagesView/SlideView.js +33 -44
- package/lib/esm/client/shared/components/ImagesView/SwapView.js +22 -39
- package/lib/esm/client/shared/components/PageFooter/PageFooter.js +12 -8
- package/lib/esm/client/shared/components/PageFooter/Paging.js +14 -18
- package/lib/esm/client/shared/components/PageHeader/ImagePreview.js +22 -18
- package/lib/esm/client/shared/components/PageHeader/PageHeader.js +37 -60
- package/lib/esm/client/shared/components/ResultsPage.js +36 -64
- package/lib/esm/client/shared/creeveyClientApi.js +57 -84
- package/lib/esm/client/shared/helpers.js +127 -198
- package/lib/esm/client/shared/viewMode.js +4 -4
- package/lib/esm/creevey.js +3 -5
- package/lib/esm/index.js +1 -3
- package/lib/esm/server/docker.js +2 -2
- package/lib/esm/server/index.js +1 -1
- package/lib/esm/server/loaders/babel/creevey-plugin.js +1 -3
- package/lib/esm/server/loaders/babel/helpers.js +12 -22
- package/lib/esm/server/loaders/babel/register.js +1 -3
- package/lib/esm/server/loaders/webpack/compile.js +31 -24
- package/lib/esm/server/loaders/webpack/creevey-loader.js +9 -4
- package/lib/esm/server/loaders/webpack/dummy-hmr.js +2 -6
- package/lib/esm/server/loaders/webpack/start.js +1 -1
- package/lib/esm/server/master/index.js +2 -2
- package/lib/esm/server/master/pool.js +7 -18
- package/lib/esm/server/master/runner.js +53 -66
- package/lib/esm/server/master/server.js +2 -2
- package/lib/esm/server/messages.js +3 -5
- package/lib/esm/server/selenium/browser.js +20 -28
- package/lib/esm/server/selenium/selenoid.js +4 -6
- package/lib/esm/server/stories.js +9 -20
- package/lib/esm/server/storybook/entry.js +4 -2
- package/lib/esm/server/storybook/helpers.js +7 -15
- package/lib/esm/server/storybook/providers/browser.js +4 -5
- package/lib/esm/server/storybook/providers/nodejs.js +3 -3
- package/lib/esm/server/update.js +1 -5
- package/lib/esm/server/utils.js +5 -9
- package/lib/esm/server/worker/reporter.js +8 -20
- package/lib/esm/server/worker/worker.js +6 -16
- package/lib/esm/shared/index.js +78 -0
- package/lib/esm/shared/serializeRegExp.js +24 -0
- package/lib/types/cli.d.ts +1 -1
- package/lib/types/client/addon/Manager.d.ts +37 -37
- package/lib/types/client/addon/components/Addon.d.ts +8 -8
- package/lib/types/client/addon/components/Icons.d.ts +7 -7
- package/lib/types/client/addon/components/Panel.d.ts +9 -9
- package/lib/types/client/addon/components/TestSelect.d.ts +8 -9
- package/lib/types/client/addon/components/Tools.d.ts +6 -6
- package/lib/types/client/addon/decorator.d.ts +1 -1
- package/lib/types/client/addon/index.d.ts +2 -0
- package/lib/types/client/addon/preset.d.ts +23 -24
- package/lib/types/client/addon/readyForCapture.d.ts +6 -6
- package/lib/types/client/addon/register.d.ts +3 -3
- package/lib/types/client/addon/utils.d.ts +2 -2
- package/lib/types/client/addon/withCreevey.d.ts +24 -24
- package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +3 -3
- package/lib/types/client/shared/components/ImagesView/ImagesView.d.ts +24 -25
- package/lib/types/client/shared/components/ImagesView/SideBySideView.d.ts +3 -3
- package/lib/types/client/shared/components/ImagesView/SlideView.d.ts +3 -3
- package/lib/types/client/shared/components/ImagesView/SwapView.d.ts +3 -3
- package/lib/types/client/shared/components/ImagesView/index.d.ts +5 -5
- package/lib/types/client/shared/components/PageFooter/PageFooter.d.ts +8 -9
- package/lib/types/client/shared/components/PageFooter/Paging.d.ts +7 -8
- package/lib/types/client/shared/components/PageHeader/ImagePreview.d.ts +12 -12
- package/lib/types/client/shared/components/PageHeader/PageHeader.d.ts +16 -17
- package/lib/types/client/shared/components/ResultsPage.d.ts +18 -18
- package/lib/types/client/shared/creeveyClientApi.d.ts +9 -9
- package/lib/types/client/shared/helpers.d.ts +46 -46
- package/lib/types/client/shared/viewMode.d.ts +4 -4
- package/lib/types/client/web/CreeveyApp.d.ts +11 -12
- package/lib/types/client/web/CreeveyContext.d.ts +11 -11
- package/lib/types/client/web/CreeveyLoader.d.ts +2 -3
- package/lib/types/client/web/CreeveyView/SideBar/Checkbox.d.ts +19 -19
- package/lib/types/client/web/CreeveyView/SideBar/Search.d.ts +6 -6
- package/lib/types/client/web/CreeveyView/SideBar/SideBar.d.ts +14 -14
- package/lib/types/client/web/CreeveyView/SideBar/SideBarHeader.d.ts +12 -13
- package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +33 -33
- package/lib/types/client/web/CreeveyView/SideBar/TestLink.d.ts +7 -8
- package/lib/types/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +10 -10
- package/lib/types/client/web/CreeveyView/SideBar/TestsStatus.d.ts +9 -9
- package/lib/types/client/web/CreeveyView/SideBar/Toggle.d.ts +6 -6
- package/lib/types/client/web/CreeveyView/SideBar/index.d.ts +1 -1
- package/lib/types/client/web/KeyboardEventsContext.d.ts +13 -13
- package/lib/types/client/web/index.d.ts +4 -4
- package/lib/types/creevey.d.ts +1 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/types/server/config.d.ts +4 -4
- package/lib/types/server/docker.d.ts +7 -7
- package/lib/types/server/extract.d.ts +2 -2
- package/lib/types/server/index.d.ts +2 -2
- package/lib/types/server/loaders/babel/creevey-plugin.d.ts +1 -1
- package/lib/types/server/loaders/babel/helpers.d.ts +19 -19
- package/lib/types/server/loaders/babel/register.d.ts +5 -5
- package/lib/types/server/loaders/hooks/mdx.d.ts +1 -1
- package/lib/types/server/loaders/hooks/svelte.d.ts +1 -1
- package/lib/types/server/loaders/webpack/compile.d.ts +2 -2
- package/lib/types/server/loaders/webpack/creevey-loader.d.ts +4 -2
- package/lib/types/server/loaders/webpack/dummy-hmr.d.ts +10 -10
- package/lib/types/server/loaders/webpack/mdx-loader.d.ts +6 -6
- package/lib/types/server/loaders/webpack/start.d.ts +1 -1
- package/lib/types/server/logger.d.ts +10 -6
- package/lib/types/server/master/api.d.ts +7 -7
- package/lib/types/server/master/index.d.ts +3 -3
- package/lib/types/server/master/master.d.ts +7 -7
- package/lib/types/server/master/pool.d.ts +31 -31
- package/lib/types/server/master/runner.d.ts +26 -26
- package/lib/types/server/master/server.d.ts +2 -2
- package/lib/types/server/messages.d.ts +27 -27
- package/lib/types/server/selenium/browser.d.ts +17 -17
- package/lib/types/server/selenium/index.d.ts +2 -2
- package/lib/types/server/selenium/selenoid.d.ts +3 -3
- package/lib/types/server/stories.d.ts +8 -8
- package/lib/types/server/storybook/entry.d.ts +18 -18
- package/lib/types/server/storybook/helpers.d.ts +24 -24
- package/lib/types/server/storybook/providers/browser.d.ts +4 -4
- package/lib/types/server/storybook/providers/hybrid.d.ts +4 -4
- package/lib/types/server/storybook/providers/nodejs.d.ts +9 -9
- package/lib/types/server/testsFiles/parser.d.ts +12 -12
- package/lib/types/server/testsFiles/register.d.ts +2 -2
- package/lib/types/server/update.d.ts +2 -2
- package/lib/types/server/utils.d.ts +20 -20
- package/lib/types/server/worker/chai-image.d.ts +6 -6
- package/lib/types/server/worker/helpers.d.ts +8 -8
- package/lib/types/server/worker/index.d.ts +1 -1
- package/lib/types/server/worker/reporter.d.ts +8 -8
- package/lib/types/server/worker/worker.d.ts +4 -4
- package/lib/types/{shared.d.ts → shared/index.d.ts} +7 -16
- package/lib/types/shared/serializeRegExp.d.ts +9 -0
- package/lib/types/types.d.ts +490 -489
- package/package.json +115 -102
- package/preset.js +9 -9
- package/types/babel__register.d.ts +1 -1
- package/types/chai.d.ts +12 -12
- package/types/event-source-polyfill.d.ts +6 -6
- package/types/mdx.d.ts +3 -2
- package/types/mocha.d.ts +20 -20
- package/types/png.d.ts +4 -4
- package/lib/cjs/client/web/1.js +0 -13
- package/lib/cjs/client/web/2.js +0 -1
- package/lib/cjs/shared.js +0 -124
- package/lib/esm/shared.js +0 -93
- 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
|
+
};
|
package/lib/types/cli.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
#!/usr/bin/env node
|
1
|
+
#!/usr/bin/env node
|
@@ -1,37 +1,37 @@
|
|
1
|
-
import { API } from '@storybook/api';
|
2
|
-
import {
|
3
|
-
import { CreeveyStatus, CreeveyUpdate, TestData, TestStatus, StoriesRaw } from '../../types';
|
4
|
-
import { CreeveyClientApi } from '../shared/creeveyClientApi';
|
5
|
-
export declare class CreeveyManager {
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
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:
|
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
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
export
|
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[];
|
@@ -1,24 +1,23 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
export declare function
|
4
|
-
|
5
|
-
|
6
|
-
const
|
7
|
-
const
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
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.
|
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
|
-
|
2
|
-
import {
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
}
|
24
|
-
export
|
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.
|
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.
|
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.
|
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
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
retry: number;
|
6
|
-
|
7
|
-
|
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
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
export declare
|
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.
|
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
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
16
|
-
export
|
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.
|
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 {};
|