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.
- package/CHANGELOG.md +5 -9
- package/lib/cjs/client/web/main.js +6 -6
- 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 +9 -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/preset.d.ts +24 -22
- package/lib/types/client/addon/readyForCapture.d.ts +6 -0
- 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 -13
- package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +3 -3
- package/lib/types/client/shared/components/ImagesView/ImagesView.d.ts +25 -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 +9 -9
- package/lib/types/client/shared/components/PageFooter/Paging.d.ts +8 -8
- package/lib/types/client/shared/components/PageHeader/ImagePreview.d.ts +12 -12
- package/lib/types/client/shared/components/PageHeader/PageHeader.d.ts +17 -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 +12 -12
- package/lib/types/client/web/CreeveyContext.d.ts +11 -11
- package/lib/types/client/web/CreeveyLoader.d.ts +3 -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 +13 -13
- package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +33 -33
- package/lib/types/client/web/CreeveyView/SideBar/TestLink.d.ts +8 -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 +4 -2
- 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 +2 -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 +6 -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 -6
- package/lib/types/server/master/pool.d.ts +31 -30
- 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 -18
- package/lib/types/server/selenium/browser.d.ts +17 -14
- 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 -0
- package/lib/types/server/storybook/providers/hybrid.d.ts +4 -0
- package/lib/types/server/storybook/providers/nodejs.d.ts +9 -0
- package/lib/types/server/testsFiles/parser.d.ts +12 -0
- package/lib/types/server/testsFiles/register.d.ts +2 -0
- package/lib/types/server/update.d.ts +2 -2
- package/lib/types/server/utils.d.ts +20 -19
- package/lib/types/server/worker/chai-image.d.ts +6 -6
- package/lib/types/server/worker/helpers.d.ts +8 -7
- 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 +16 -4
- package/lib/types/types.d.ts +489 -459
- package/package.json +16 -7
- package/storybook-static/stories.json +21 -0
- package/types/mocha.d.ts +1 -0
- package/lib/cjs/cli.js +0 -5
- package/lib/cjs/client/addon/Manager.js +0 -413
- package/lib/cjs/client/addon/components/Addon.js +0 -76
- package/lib/cjs/client/addon/components/Icons.js +0 -42
- package/lib/cjs/client/addon/components/Panel.js +0 -68
- package/lib/cjs/client/addon/components/TestSelect.js +0 -63
- package/lib/cjs/client/addon/components/Tools.js +0 -114
- package/lib/cjs/client/addon/decorator.js +0 -11
- package/lib/cjs/client/addon/preset.js +0 -80
- package/lib/cjs/client/addon/register.js +0 -96
- package/lib/cjs/client/addon/utils.js +0 -38
- package/lib/cjs/client/addon/withCreevey.js +0 -284
- package/lib/cjs/client/shared/components/ImagesView/BlendView.js +0 -85
- package/lib/cjs/client/shared/components/ImagesView/ImagesView.js +0 -88
- package/lib/cjs/client/shared/components/ImagesView/SideBySideView.js +0 -176
- package/lib/cjs/client/shared/components/ImagesView/SlideView.js +0 -178
- package/lib/cjs/client/shared/components/ImagesView/SwapView.js +0 -110
- package/lib/cjs/client/shared/components/ImagesView/index.js +0 -45
- package/lib/cjs/client/shared/components/PageFooter/PageFooter.js +0 -46
- package/lib/cjs/client/shared/components/PageFooter/Paging.js +0 -98
- package/lib/cjs/client/shared/components/PageHeader/ImagePreview.js +0 -78
- package/lib/cjs/client/shared/components/PageHeader/PageHeader.js +0 -144
- package/lib/cjs/client/shared/components/ResultsPage.js +0 -173
- package/lib/cjs/client/shared/creeveyClientApi.js +0 -103
- package/lib/cjs/client/shared/helpers.js +0 -482
- package/lib/cjs/client/shared/viewMode.js +0 -17
- package/lib/cjs/client/web/index.html +0 -19
- package/lib/cjs/creevey.js +0 -71
- package/lib/cjs/index.js +0 -44
- package/lib/cjs/server/config.js +0 -92
- package/lib/cjs/server/docker.js +0 -150
- package/lib/cjs/server/extract.js +0 -43
- package/lib/cjs/server/index.js +0 -85
- package/lib/cjs/server/loaders/babel/creevey-plugin.js +0 -88
- package/lib/cjs/server/loaders/babel/helpers.js +0 -479
- package/lib/cjs/server/loaders/babel/register.js +0 -126
- package/lib/cjs/server/loaders/hooks/mdx.js +0 -30
- package/lib/cjs/server/loaders/hooks/svelte.js +0 -65
- package/lib/cjs/server/loaders/webpack/compile.js +0 -286
- package/lib/cjs/server/loaders/webpack/creevey-loader.js +0 -174
- package/lib/cjs/server/loaders/webpack/dummy-hmr.js +0 -44
- package/lib/cjs/server/loaders/webpack/mdx-loader.js +0 -72
- package/lib/cjs/server/loaders/webpack/start.js +0 -41
- package/lib/cjs/server/logger.js +0 -47
- package/lib/cjs/server/master/api.js +0 -71
- package/lib/cjs/server/master/index.js +0 -152
- package/lib/cjs/server/master/master.js +0 -56
- package/lib/cjs/server/master/pool.js +0 -206
- package/lib/cjs/server/master/runner.js +0 -294
- package/lib/cjs/server/master/server.js +0 -57
- package/lib/cjs/server/messages.js +0 -154
- package/lib/cjs/server/selenium/browser.js +0 -582
- package/lib/cjs/server/selenium/index.js +0 -31
- package/lib/cjs/server/selenium/selenoid.js +0 -174
- package/lib/cjs/server/stories.js +0 -167
- package/lib/cjs/server/storybook/entry.js +0 -68
- package/lib/cjs/server/storybook/helpers.js +0 -165
- package/lib/cjs/server/storybook/nodejs-provider.js +0 -220
- package/lib/cjs/server/update.js +0 -83
- package/lib/cjs/server/utils.js +0 -178
- package/lib/cjs/server/worker/chai-image.js +0 -142
- package/lib/cjs/server/worker/helpers.js +0 -73
- package/lib/cjs/server/worker/index.js +0 -15
- package/lib/cjs/server/worker/reporter.js +0 -120
- package/lib/cjs/server/worker/worker.js +0 -266
- package/lib/cjs/shared.js +0 -35
- package/lib/cjs/types.js +0 -69
- package/lib/esm/cli.js +0 -4
- package/lib/esm/client/addon/Manager.js +0 -397
- package/lib/esm/client/addon/components/Addon.js +0 -58
- package/lib/esm/client/addon/components/Icons.js +0 -27
- package/lib/esm/client/addon/components/Panel.js +0 -49
- package/lib/esm/client/addon/components/TestSelect.js +0 -49
- package/lib/esm/client/addon/components/Tools.js +0 -91
- package/lib/esm/client/addon/decorator.js +0 -2
- package/lib/esm/client/addon/preset.js +0 -55
- package/lib/esm/client/addon/register.js +0 -75
- package/lib/esm/client/addon/utils.js +0 -31
- package/lib/esm/client/addon/withCreevey.js +0 -270
- package/lib/esm/client/shared/components/ImagesView/BlendView.js +0 -64
- package/lib/esm/client/shared/components/ImagesView/ImagesView.js +0 -65
- package/lib/esm/client/shared/components/ImagesView/SideBySideView.js +0 -152
- package/lib/esm/client/shared/components/ImagesView/SlideView.js +0 -154
- package/lib/esm/client/shared/components/ImagesView/SwapView.js +0 -89
- package/lib/esm/client/shared/components/ImagesView/index.js +0 -5
- package/lib/esm/client/shared/components/PageFooter/PageFooter.js +0 -32
- package/lib/esm/client/shared/components/PageFooter/Paging.js +0 -84
- package/lib/esm/client/shared/components/PageHeader/ImagePreview.js +0 -64
- package/lib/esm/client/shared/components/PageHeader/PageHeader.js +0 -120
- package/lib/esm/client/shared/components/ResultsPage.js +0 -143
- package/lib/esm/client/shared/creeveyClientApi.js +0 -94
- package/lib/esm/client/shared/helpers.js +0 -424
- package/lib/esm/client/shared/viewMode.js +0 -6
- package/lib/esm/creevey.js +0 -56
- package/lib/esm/index.js +0 -4
- package/lib/esm/server/config.js +0 -71
- package/lib/esm/server/docker.js +0 -123
- package/lib/esm/server/extract.js +0 -30
- package/lib/esm/server/index.js +0 -65
- package/lib/esm/server/loaders/babel/creevey-plugin.js +0 -74
- package/lib/esm/server/loaders/babel/helpers.js +0 -462
- package/lib/esm/server/loaders/babel/register.js +0 -105
- package/lib/esm/server/loaders/hooks/mdx.js +0 -15
- package/lib/esm/server/loaders/hooks/svelte.js +0 -49
- package/lib/esm/server/loaders/webpack/compile.js +0 -263
- package/lib/esm/server/loaders/webpack/creevey-loader.js +0 -153
- package/lib/esm/server/loaders/webpack/dummy-hmr.js +0 -36
- package/lib/esm/server/loaders/webpack/mdx-loader.js +0 -58
- package/lib/esm/server/loaders/webpack/start.js +0 -27
- package/lib/esm/server/logger.js +0 -20
- package/lib/esm/server/master/api.js +0 -60
- package/lib/esm/server/master/index.js +0 -131
- package/lib/esm/server/master/master.js +0 -37
- package/lib/esm/server/master/pool.js +0 -187
- package/lib/esm/server/master/runner.js +0 -272
- package/lib/esm/server/master/server.js +0 -37
- package/lib/esm/server/messages.js +0 -128
- package/lib/esm/server/selenium/browser.js +0 -554
- package/lib/esm/server/selenium/index.js +0 -2
- package/lib/esm/server/selenium/selenoid.js +0 -151
- package/lib/esm/server/stories.js +0 -147
- package/lib/esm/server/storybook/entry.js +0 -44
- package/lib/esm/server/storybook/helpers.js +0 -106
- package/lib/esm/server/storybook/nodejs-provider.js +0 -200
- package/lib/esm/server/update.js +0 -65
- package/lib/esm/server/utils.js +0 -141
- package/lib/esm/server/worker/chai-image.js +0 -130
- package/lib/esm/server/worker/helpers.js +0 -64
- package/lib/esm/server/worker/index.js +0 -1
- package/lib/esm/server/worker/reporter.js +0 -98
- package/lib/esm/server/worker/worker.js +0 -236
- package/lib/esm/shared.js +0 -22
- package/lib/esm/types.js +0 -40
- package/lib/types/server/storybook/nodejs-provider.d.ts +0 -5
@@ -1,284 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.withCreevey = withCreevey;
|
7
|
-
|
8
|
-
var Events = _interopRequireWildcard(require("@storybook/core-events"));
|
9
|
-
|
10
|
-
var polyfill = _interopRequireWildcard(require("event-source-polyfill"));
|
11
|
-
|
12
|
-
var _addons = require("@storybook/addons");
|
13
|
-
|
14
|
-
var _types = require("../../types");
|
15
|
-
|
16
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
17
|
-
|
18
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
19
|
-
|
20
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
21
|
-
|
22
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
23
|
-
|
24
|
-
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
25
|
-
|
26
|
-
if ((typeof process === "undefined" ? "undefined" : _typeof(process)) != 'object' || typeof process.version != 'string') {
|
27
|
-
// NOTE If you don't use babel-polyfill or any other polyfills that add EventSource for IE11
|
28
|
-
// You don't get hot reload in IE11. So put polyfill for that to better UX
|
29
|
-
// Don't load in nodejs environment
|
30
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
31
|
-
var NativeEventSource = polyfill.NativeEventSource,
|
32
|
-
EventSourcePolyfill = polyfill.EventSourcePolyfill; // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
33
|
-
|
34
|
-
window.EventSource = NativeEventSource || EventSourcePolyfill;
|
35
|
-
}
|
36
|
-
|
37
|
-
var disableAnimationsStyles = "\n*,\n*:hover,\n*::before,\n*::after {\n animation-delay: -0.0001ms !important;\n animation-duration: 0s !important;\n animation-play-state: paused !important;\n cursor: none !important;\n caret-color: transparent !important;\n transition: 0s !important;\n}\n";
|
38
|
-
|
39
|
-
function resetCurrentStory(_x) {
|
40
|
-
return _resetCurrentStory.apply(this, arguments);
|
41
|
-
}
|
42
|
-
|
43
|
-
function _resetCurrentStory() {
|
44
|
-
_resetCurrentStory = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(channel) {
|
45
|
-
return regeneratorRuntime.wrap(function _callee3$(_context3) {
|
46
|
-
while (1) {
|
47
|
-
switch (_context3.prev = _context3.next) {
|
48
|
-
case 0:
|
49
|
-
setTimeout(function () {
|
50
|
-
return channel.emit(Events.SET_CURRENT_STORY, {
|
51
|
-
storyId: true,
|
52
|
-
name: '',
|
53
|
-
kind: ''
|
54
|
-
});
|
55
|
-
}, 0);
|
56
|
-
return _context3.abrupt("return", new Promise(function (resolve) {
|
57
|
-
return channel.once(Events.STORY_MISSING, resolve);
|
58
|
-
}));
|
59
|
-
|
60
|
-
case 2:
|
61
|
-
case "end":
|
62
|
-
return _context3.stop();
|
63
|
-
}
|
64
|
-
}
|
65
|
-
}, _callee3);
|
66
|
-
}));
|
67
|
-
return _resetCurrentStory.apply(this, arguments);
|
68
|
-
}
|
69
|
-
|
70
|
-
function catchRenderError(channel) {
|
71
|
-
var rejectCallback;
|
72
|
-
var promise = new Promise(function (_resolve, reject) {
|
73
|
-
return rejectCallback = reject;
|
74
|
-
});
|
75
|
-
|
76
|
-
function errorHandler(_ref) {
|
77
|
-
var title = _ref.title,
|
78
|
-
description = _ref.description;
|
79
|
-
rejectCallback({
|
80
|
-
message: title,
|
81
|
-
stack: description
|
82
|
-
});
|
83
|
-
}
|
84
|
-
|
85
|
-
function exceptionHandler(exception) {
|
86
|
-
rejectCallback(exception);
|
87
|
-
}
|
88
|
-
|
89
|
-
function removeHandlers() {
|
90
|
-
channel.off(Events.STORY_ERRORED, errorHandler);
|
91
|
-
channel.off(Events.STORY_THREW_EXCEPTION, errorHandler);
|
92
|
-
}
|
93
|
-
|
94
|
-
channel.once(Events.STORY_ERRORED, errorHandler);
|
95
|
-
channel.once(Events.STORY_THREW_EXCEPTION, exceptionHandler);
|
96
|
-
return Object.assign(promise, {
|
97
|
-
cancel: removeHandlers
|
98
|
-
});
|
99
|
-
}
|
100
|
-
|
101
|
-
function waitForStoryRendered(channel) {
|
102
|
-
var resolveCallback;
|
103
|
-
var promise = new Promise(function (resolve) {
|
104
|
-
return resolveCallback = resolve;
|
105
|
-
});
|
106
|
-
|
107
|
-
function renderHandler() {
|
108
|
-
resolveCallback();
|
109
|
-
}
|
110
|
-
|
111
|
-
function removeHandlers() {
|
112
|
-
channel.off(Events.STORY_RENDERED, renderHandler);
|
113
|
-
}
|
114
|
-
|
115
|
-
channel.once(Events.STORY_RENDERED, renderHandler);
|
116
|
-
return Object.assign(promise, {
|
117
|
-
cancel: removeHandlers
|
118
|
-
});
|
119
|
-
}
|
120
|
-
|
121
|
-
function waitForFontsLoaded() {
|
122
|
-
if (!document.fonts) return;
|
123
|
-
var areFontsLoading = Array.from(document.fonts).some(function (font) {
|
124
|
-
return font.status == 'loading';
|
125
|
-
});
|
126
|
-
|
127
|
-
if (areFontsLoading) {
|
128
|
-
return new Promise(function (resolve) {
|
129
|
-
var fontsLoadedHandler = function fontsLoadedHandler() {
|
130
|
-
document.fonts.removeEventListener('loadingdone', fontsLoadedHandler);
|
131
|
-
resolve();
|
132
|
-
};
|
133
|
-
|
134
|
-
document.fonts.addEventListener('loadingdone', fontsLoadedHandler);
|
135
|
-
});
|
136
|
-
}
|
137
|
-
}
|
138
|
-
|
139
|
-
function withCreevey() {
|
140
|
-
var currentStory = '';
|
141
|
-
var isAnimationDisabled = false;
|
142
|
-
|
143
|
-
function disableAnimation() {
|
144
|
-
isAnimationDisabled = true;
|
145
|
-
var style = document.createElement('style');
|
146
|
-
var textNode = document.createTextNode(disableAnimationsStyles);
|
147
|
-
style.setAttribute('type', 'text/css');
|
148
|
-
style.appendChild(textNode);
|
149
|
-
document.head.appendChild(style);
|
150
|
-
}
|
151
|
-
|
152
|
-
function selectStory(_x2, _x3, _x4, _x5, _x6) {
|
153
|
-
return _selectStory.apply(this, arguments);
|
154
|
-
}
|
155
|
-
|
156
|
-
function _selectStory() {
|
157
|
-
_selectStory = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(storyId, kind, name, shouldWaitForReady, callback) {
|
158
|
-
var channel, waitForReady, renderPromise, errorPromise, _reason$stack, errorMessage;
|
159
|
-
|
160
|
-
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
161
|
-
while (1) {
|
162
|
-
switch (_context2.prev = _context2.next) {
|
163
|
-
case 0:
|
164
|
-
if (!isAnimationDisabled) disableAnimation();
|
165
|
-
channel = _addons.addons.getChannel();
|
166
|
-
waitForReady = shouldWaitForReady ? new Promise(function (resolve) {
|
167
|
-
return window.__CREEVEY_SET_READY_FOR_CAPTURE__ = resolve;
|
168
|
-
}) : Promise.resolve();
|
169
|
-
|
170
|
-
if (!(storyId == currentStory)) {
|
171
|
-
_context2.next = 8;
|
172
|
-
break;
|
173
|
-
}
|
174
|
-
|
175
|
-
_context2.next = 6;
|
176
|
-
return resetCurrentStory(channel);
|
177
|
-
|
178
|
-
case 6:
|
179
|
-
_context2.next = 9;
|
180
|
-
break;
|
181
|
-
|
182
|
-
case 8:
|
183
|
-
currentStory = storyId;
|
184
|
-
|
185
|
-
case 9:
|
186
|
-
renderPromise = waitForStoryRendered(channel);
|
187
|
-
errorPromise = catchRenderError(channel);
|
188
|
-
setTimeout(function () {
|
189
|
-
return channel.emit(Events.SET_CURRENT_STORY, {
|
190
|
-
storyId: storyId,
|
191
|
-
name: name,
|
192
|
-
kind: kind
|
193
|
-
});
|
194
|
-
}, 0);
|
195
|
-
_context2.prev = 12;
|
196
|
-
_context2.next = 15;
|
197
|
-
return Promise.race([_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
198
|
-
return regeneratorRuntime.wrap(function _callee$(_context) {
|
199
|
-
while (1) {
|
200
|
-
switch (_context.prev = _context.next) {
|
201
|
-
case 0:
|
202
|
-
_context.next = 2;
|
203
|
-
return renderPromise;
|
204
|
-
|
205
|
-
case 2:
|
206
|
-
_context.next = 4;
|
207
|
-
return waitForFontsLoaded();
|
208
|
-
|
209
|
-
case 4:
|
210
|
-
_context.next = 6;
|
211
|
-
return waitForReady;
|
212
|
-
|
213
|
-
case 6:
|
214
|
-
case "end":
|
215
|
-
return _context.stop();
|
216
|
-
}
|
217
|
-
}
|
218
|
-
}, _callee);
|
219
|
-
}))(), errorPromise]);
|
220
|
-
|
221
|
-
case 15:
|
222
|
-
callback();
|
223
|
-
_context2.next = 22;
|
224
|
-
break;
|
225
|
-
|
226
|
-
case 18:
|
227
|
-
_context2.prev = 18;
|
228
|
-
_context2.t0 = _context2["catch"](12);
|
229
|
-
// NOTE Event `STORY_THREW_EXCEPTION` triggered only in react and vue frameworks and return Error instance
|
230
|
-
// NOTE Event `STORY_ERRORED` return error-like object without `name` field
|
231
|
-
errorMessage = _context2.t0 instanceof Error ? (_reason$stack = _context2.t0.stack) !== null && _reason$stack !== void 0 ? _reason$stack : _context2.t0.message : (0, _types.isObject)(_context2.t0) ? "".concat(_context2.t0.message, "\n ").concat(_context2.t0.stack) : _context2.t0;
|
232
|
-
callback(errorMessage);
|
233
|
-
|
234
|
-
case 22:
|
235
|
-
_context2.prev = 22;
|
236
|
-
renderPromise.cancel();
|
237
|
-
errorPromise.cancel();
|
238
|
-
return _context2.finish(22);
|
239
|
-
|
240
|
-
case 26:
|
241
|
-
case "end":
|
242
|
-
return _context2.stop();
|
243
|
-
}
|
244
|
-
}
|
245
|
-
}, _callee2, null, [[12, 18, 22, 26]]);
|
246
|
-
}));
|
247
|
-
return _selectStory.apply(this, arguments);
|
248
|
-
}
|
249
|
-
|
250
|
-
function updateGlobals(globals) {
|
251
|
-
_addons.addons.getChannel().emit(Events.UPDATE_GLOBALS, {
|
252
|
-
globals: globals
|
253
|
-
});
|
254
|
-
}
|
255
|
-
|
256
|
-
function insertIgnoreStyles(ignoreSelectors) {
|
257
|
-
var stylesElement = document.createElement('style');
|
258
|
-
stylesElement.setAttribute('type', 'text/css');
|
259
|
-
document.head.appendChild(stylesElement);
|
260
|
-
ignoreSelectors.forEach(function (selector) {
|
261
|
-
stylesElement.innerHTML += "\n ".concat(selector, " {\n background: #000 !important;\n box-shadow: none !important;\n text-shadow: none !important;\n outline: 0 !important;\n color: rgba(0,0,0,0) !important;\n }\n ").concat(selector, " *, ").concat(selector, "::before, ").concat(selector, "::after {\n visibility: hidden !important;\n }\n ");
|
262
|
-
});
|
263
|
-
return stylesElement;
|
264
|
-
}
|
265
|
-
|
266
|
-
function removeIgnoreStyles(ignoreStyles) {
|
267
|
-
var _ignoreStyles$parentN;
|
268
|
-
|
269
|
-
(_ignoreStyles$parentN = ignoreStyles.parentNode) === null || _ignoreStyles$parentN === void 0 ? void 0 : _ignoreStyles$parentN.removeChild(ignoreStyles);
|
270
|
-
}
|
271
|
-
|
272
|
-
window.__CREEVEY_SELECT_STORY__ = selectStory;
|
273
|
-
window.__CREEVEY_UPDATE_GLOBALS__ = updateGlobals;
|
274
|
-
window.__CREEVEY_INSERT_IGNORE_STYLES__ = insertIgnoreStyles;
|
275
|
-
window.__CREEVEY_REMOVE_IGNORE_STYLES__ = removeIgnoreStyles;
|
276
|
-
window.__CREEVEY_SET_READY_FOR_CAPTURE__ = _types.noop;
|
277
|
-
return (0, _addons.makeDecorator)({
|
278
|
-
name: 'withCreevey',
|
279
|
-
parameterName: 'creevey',
|
280
|
-
wrapper: function wrapper(getStory, context) {
|
281
|
-
return getStory(context);
|
282
|
-
}
|
283
|
-
});
|
284
|
-
}
|
@@ -1,85 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports.BlendView = void 0;
|
9
|
-
|
10
|
-
var _react = _interopRequireWildcard(require("react"));
|
11
|
-
|
12
|
-
var _ImagesView = require("./ImagesView");
|
13
|
-
|
14
|
-
var _theming = require("@storybook/theming");
|
15
|
-
|
16
|
-
var _helpers = require("../../helpers");
|
17
|
-
|
18
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
19
|
-
|
20
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
21
|
-
|
22
|
-
var Container = _theming.styled.div({
|
23
|
-
position: 'relative',
|
24
|
-
display: 'flex',
|
25
|
-
filter: 'invert(100%)'
|
26
|
-
});
|
27
|
-
|
28
|
-
var ImageContainer = _theming.styled.div({
|
29
|
-
position: 'absolute',
|
30
|
-
width: '100%',
|
31
|
-
height: '100%',
|
32
|
-
display: 'flex'
|
33
|
-
});
|
34
|
-
|
35
|
-
var Image = _theming.styled.img(function (_ref) {
|
36
|
-
var borderColor = _ref.borderColor;
|
37
|
-
return {
|
38
|
-
boxSizing: 'border-box',
|
39
|
-
border: "1px solid ".concat(borderColor),
|
40
|
-
maxWidth: '100%',
|
41
|
-
filter: 'invert(100%)'
|
42
|
-
};
|
43
|
-
});
|
44
|
-
|
45
|
-
var ActualImage = (0, _theming.styled)(Image)({
|
46
|
-
mixBlendMode: 'difference'
|
47
|
-
});
|
48
|
-
var DiffImage = (0, _theming.styled)(Image)({
|
49
|
-
opacity: '0'
|
50
|
-
});
|
51
|
-
var BlendView = (0, _theming.withTheme)(function (_ref2) {
|
52
|
-
var actual = _ref2.actual,
|
53
|
-
diff = _ref2.diff,
|
54
|
-
expect = _ref2.expect,
|
55
|
-
theme = _ref2.theme;
|
56
|
-
var expectImageRef = (0, _react.useRef)(null);
|
57
|
-
var diffImageRef = (0, _react.useRef)(null);
|
58
|
-
var actualImageRef = (0, _react.useRef)(null);
|
59
|
-
var loaded = (0, _helpers.useLoadImages)(expect, diff, actual);
|
60
|
-
var scale = (0, _helpers.useCalcScale)(diffImageRef, loaded);
|
61
|
-
(0, _helpers.useApplyScale)(expectImageRef, scale, loaded);
|
62
|
-
(0, _helpers.useApplyScale)(actualImageRef, scale, loaded);
|
63
|
-
(0, _react.useEffect)(function () {
|
64
|
-
var _window$__CREEVEY_SET, _window;
|
65
|
-
|
66
|
-
if (loaded) (_window$__CREEVEY_SET = (_window = window).__CREEVEY_SET_READY_FOR_CAPTURE__) === null || _window$__CREEVEY_SET === void 0 ? void 0 : _window$__CREEVEY_SET.call(_window);
|
67
|
-
}, [loaded]);
|
68
|
-
return /*#__PURE__*/_react.default.createElement(Container, null, /*#__PURE__*/_react.default.createElement(ImageContainer, null, /*#__PURE__*/_react.default.createElement(Image, {
|
69
|
-
ref: expectImageRef,
|
70
|
-
borderColor: (0, _ImagesView.getBorderColor)(theme, _ImagesView.themeBorderColors.expect),
|
71
|
-
alt: "expect",
|
72
|
-
src: expect
|
73
|
-
})), /*#__PURE__*/_react.default.createElement(DiffImage, {
|
74
|
-
ref: diffImageRef,
|
75
|
-
borderColor: 'transparent',
|
76
|
-
alt: "diff",
|
77
|
-
src: diff
|
78
|
-
}), /*#__PURE__*/_react.default.createElement(ImageContainer, null, /*#__PURE__*/_react.default.createElement(ActualImage, {
|
79
|
-
ref: actualImageRef,
|
80
|
-
borderColor: (0, _ImagesView.getBorderColor)(theme, _ImagesView.themeBorderColors.actual),
|
81
|
-
alt: "actual",
|
82
|
-
src: actual
|
83
|
-
})));
|
84
|
-
});
|
85
|
-
exports.BlendView = BlendView;
|
@@ -1,88 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.getBorderColor = getBorderColor;
|
7
|
-
exports.ImagesView = ImagesView;
|
8
|
-
exports.themeBorderColors = void 0;
|
9
|
-
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
11
|
-
|
12
|
-
var _SideBySideView = require("./SideBySideView");
|
13
|
-
|
14
|
-
var _SwapView = require("./SwapView");
|
15
|
-
|
16
|
-
var _SlideView = require("./SlideView");
|
17
|
-
|
18
|
-
var _BlendView = require("./BlendView");
|
19
|
-
|
20
|
-
var _theming = require("@storybook/theming");
|
21
|
-
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23
|
-
|
24
|
-
var themeBorderColors = {
|
25
|
-
actual: 'negative',
|
26
|
-
expect: 'positive',
|
27
|
-
diff: 'secondary'
|
28
|
-
};
|
29
|
-
exports.themeBorderColors = themeBorderColors;
|
30
|
-
|
31
|
-
var isColor = function isColor(theme, color) {
|
32
|
-
return color in theme.color;
|
33
|
-
};
|
34
|
-
|
35
|
-
function getBorderColor(theme, color) {
|
36
|
-
return isColor(theme, color) ? theme.color[color] : color;
|
37
|
-
}
|
38
|
-
|
39
|
-
var views = {
|
40
|
-
'side-by-side': _SideBySideView.SideBySideView,
|
41
|
-
swap: _SwapView.SwapView,
|
42
|
-
slide: _SlideView.SlideView,
|
43
|
-
blend: _BlendView.BlendView
|
44
|
-
};
|
45
|
-
|
46
|
-
var Container = _theming.styled.div({
|
47
|
-
height: '100%',
|
48
|
-
display: 'flex',
|
49
|
-
textAlign: 'center',
|
50
|
-
alignItems: 'center',
|
51
|
-
justifyContent: 'center',
|
52
|
-
padding: '0 20px'
|
53
|
-
});
|
54
|
-
|
55
|
-
var ImageLink = _theming.styled.a({
|
56
|
-
lineHeight: 0
|
57
|
-
});
|
58
|
-
|
59
|
-
var ActualImage = (0, _theming.withTheme)(_theming.styled.img(function (_ref) {
|
60
|
-
var theme = _ref.theme;
|
61
|
-
return {
|
62
|
-
border: "1px solid ".concat(getBorderColor(theme, themeBorderColors.expect)),
|
63
|
-
maxWidth: '100%'
|
64
|
-
};
|
65
|
-
}));
|
66
|
-
|
67
|
-
function ImagesView(_ref2) {
|
68
|
-
var url = _ref2.url,
|
69
|
-
image = _ref2.image,
|
70
|
-
canApprove = _ref2.canApprove,
|
71
|
-
mode = _ref2.mode;
|
72
|
-
var ViewComponent = views[mode];
|
73
|
-
var actual = image.actual,
|
74
|
-
diff = image.diff,
|
75
|
-
expect = image.expect;
|
76
|
-
return /*#__PURE__*/_react.default.createElement(Container, null, canApprove && diff && expect ? /*#__PURE__*/_react.default.createElement(ViewComponent, {
|
77
|
-
actual: "".concat(url, "/").concat(actual),
|
78
|
-
diff: "".concat(url, "/").concat(diff),
|
79
|
-
expect: "".concat(url, "/").concat(expect)
|
80
|
-
}) : /*#__PURE__*/_react.default.createElement(ImageLink, {
|
81
|
-
href: "".concat(url, "/").concat(actual),
|
82
|
-
target: "_blank",
|
83
|
-
rel: "noopener noreferrer"
|
84
|
-
}, /*#__PURE__*/_react.default.createElement(ActualImage, {
|
85
|
-
alt: "actual",
|
86
|
-
src: "".concat(url, "/").concat(actual)
|
87
|
-
})));
|
88
|
-
}
|
@@ -1,176 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports.SideBySideView = void 0;
|
9
|
-
|
10
|
-
var _react = _interopRequireWildcard(require("react"));
|
11
|
-
|
12
|
-
var _ImagesView = require("./ImagesView");
|
13
|
-
|
14
|
-
var _theming = require("@storybook/theming");
|
15
|
-
|
16
|
-
var _helpers = require("../../helpers");
|
17
|
-
|
18
|
-
var _components = require("@storybook/components");
|
19
|
-
|
20
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
21
|
-
|
22
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
23
|
-
|
24
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
25
|
-
|
26
|
-
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."); }
|
27
|
-
|
28
|
-
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); }
|
29
|
-
|
30
|
-
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; }
|
31
|
-
|
32
|
-
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; }
|
33
|
-
|
34
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
35
|
-
|
36
|
-
var Container = _theming.styled.div({
|
37
|
-
display: 'flex',
|
38
|
-
flexWrap: 'nowrap',
|
39
|
-
alignItems: 'center',
|
40
|
-
justifyContent: 'center',
|
41
|
-
height: '100%',
|
42
|
-
width: '100%'
|
43
|
-
});
|
44
|
-
|
45
|
-
var ImagesLayout = _theming.styled.div(function (_ref) {
|
46
|
-
var layout = _ref.layout;
|
47
|
-
return {
|
48
|
-
display: 'flex',
|
49
|
-
alignItems: 'flex-start',
|
50
|
-
justifyContent: 'flex-start',
|
51
|
-
flexDirection: layout == 'horizontal' ? 'row' : 'column',
|
52
|
-
'& > :not(:first-of-type)': {
|
53
|
-
marginLeft: layout == 'horizontal' ? '20px' : 0,
|
54
|
-
marginTop: layout == 'horizontal' ? 0 : '20px'
|
55
|
-
}
|
56
|
-
};
|
57
|
-
});
|
58
|
-
|
59
|
-
var ImageLink = _theming.styled.a({
|
60
|
-
lineHeight: 0,
|
61
|
-
flexShrink: 0
|
62
|
-
});
|
63
|
-
|
64
|
-
var ImageDiffLink = _theming.styled.a({
|
65
|
-
lineHeight: 0
|
66
|
-
});
|
67
|
-
|
68
|
-
var Image = _theming.styled.img(function (_ref2) {
|
69
|
-
var borderColor = _ref2.borderColor;
|
70
|
-
return {
|
71
|
-
boxSizing: 'border-box',
|
72
|
-
border: "1px solid ".concat(borderColor),
|
73
|
-
maxWidth: '100%',
|
74
|
-
flexShrink: 0
|
75
|
-
};
|
76
|
-
});
|
77
|
-
|
78
|
-
var DiffImage = (0, _theming.styled)(Image)({
|
79
|
-
flexShrink: 1
|
80
|
-
});
|
81
|
-
var SideBySideView = (0, _theming.withTheme)(function (_ref3) {
|
82
|
-
var actual = _ref3.actual,
|
83
|
-
diff = _ref3.diff,
|
84
|
-
expect = _ref3.expect,
|
85
|
-
theme = _ref3.theme;
|
86
|
-
|
87
|
-
var _useState = (0, _react.useState)('horizontal'),
|
88
|
-
_useState2 = _slicedToArray(_useState, 2),
|
89
|
-
layout = _useState2[0],
|
90
|
-
setLayout = _useState2[1];
|
91
|
-
|
92
|
-
var _useState3 = (0, _react.useState)(1),
|
93
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
94
|
-
scale = _useState4[0],
|
95
|
-
setScale = _useState4[1];
|
96
|
-
|
97
|
-
var containerRef = (0, _react.useRef)(null);
|
98
|
-
var expectImageRef = (0, _react.useRef)(null);
|
99
|
-
var diffImageRef = (0, _react.useRef)(null);
|
100
|
-
var actualImageRef = (0, _react.useRef)(null);
|
101
|
-
var loaded = (0, _helpers.useLoadImages)(expect, diff, actual);
|
102
|
-
var calcScale = (0, _react.useCallback)(function () {
|
103
|
-
var containerElement = containerRef.current;
|
104
|
-
var expectImage = expectImageRef.current;
|
105
|
-
var diffImage = diffImageRef.current;
|
106
|
-
var actualImage = actualImageRef.current;
|
107
|
-
if (!containerElement || !expectImage || !actualImage || !diffImage || !loaded) return setScale(1);
|
108
|
-
var borderSize = (0, _helpers.getBorderSize)(diffImage);
|
109
|
-
|
110
|
-
if (layout == 'vertical') {
|
111
|
-
var ratio = (diffImage.getBoundingClientRect().width - borderSize * 2) / diffImage.naturalWidth;
|
112
|
-
setScale(Math.min(1, ratio));
|
113
|
-
}
|
114
|
-
|
115
|
-
if (layout == 'horizontal') {
|
116
|
-
var _ratio = // NOTE: 40px because we have two margins by 20px and 6px for borders
|
117
|
-
(containerElement.getBoundingClientRect().width - 40 - borderSize * 6) / [expectImage, diffImage, actualImage].map(function (image) {
|
118
|
-
return image.naturalWidth;
|
119
|
-
}).reduce(function (a, b) {
|
120
|
-
return a + b;
|
121
|
-
}, 0);
|
122
|
-
|
123
|
-
setScale(Math.min(1, _ratio));
|
124
|
-
}
|
125
|
-
}, [loaded, layout]);
|
126
|
-
(0, _helpers.useResizeObserver)(containerRef, calcScale);
|
127
|
-
(0, _react.useLayoutEffect)(calcScale, [calcScale]);
|
128
|
-
(0, _react.useLayoutEffect)(function () {
|
129
|
-
var diffImage = diffImageRef.current;
|
130
|
-
if (!diffImage || !loaded) return;
|
131
|
-
var ratio = diffImage.naturalWidth / diffImage.naturalHeight;
|
132
|
-
setLayout(ratio >= 2 ? 'vertical' : 'horizontal');
|
133
|
-
}, [loaded]);
|
134
|
-
(0, _helpers.useApplyScale)(expectImageRef, scale);
|
135
|
-
(0, _helpers.useApplyScale)(actualImageRef, scale);
|
136
|
-
(0, _react.useEffect)(function () {
|
137
|
-
var _window$__CREEVEY_SET, _window;
|
138
|
-
|
139
|
-
if (loaded) (_window$__CREEVEY_SET = (_window = window).__CREEVEY_SET_READY_FOR_CAPTURE__) === null || _window$__CREEVEY_SET === void 0 ? void 0 : _window$__CREEVEY_SET.call(_window);
|
140
|
-
}, [loaded]);
|
141
|
-
return /*#__PURE__*/_react.default.createElement(Container, {
|
142
|
-
ref: containerRef
|
143
|
-
}, loaded ? /*#__PURE__*/_react.default.createElement(ImagesLayout, {
|
144
|
-
layout: layout
|
145
|
-
}, /*#__PURE__*/_react.default.createElement(ImageLink, {
|
146
|
-
href: expect,
|
147
|
-
target: "_blank",
|
148
|
-
rel: "noopener noreferrer"
|
149
|
-
}, /*#__PURE__*/_react.default.createElement(Image, {
|
150
|
-
ref: expectImageRef,
|
151
|
-
borderColor: (0, _ImagesView.getBorderColor)(theme, _ImagesView.themeBorderColors.expect),
|
152
|
-
alt: "expect",
|
153
|
-
src: expect
|
154
|
-
})), /*#__PURE__*/_react.default.createElement(ImageDiffLink, {
|
155
|
-
href: diff,
|
156
|
-
target: "_blank",
|
157
|
-
rel: "noopener noreferrer"
|
158
|
-
}, /*#__PURE__*/_react.default.createElement(DiffImage, {
|
159
|
-
ref: diffImageRef,
|
160
|
-
borderColor: (0, _ImagesView.getBorderColor)(theme, _ImagesView.themeBorderColors.diff),
|
161
|
-
alt: "diff",
|
162
|
-
src: diff
|
163
|
-
})), /*#__PURE__*/_react.default.createElement(ImageLink, {
|
164
|
-
href: actual,
|
165
|
-
target: "_blank",
|
166
|
-
rel: "noopener noreferrer"
|
167
|
-
}, /*#__PURE__*/_react.default.createElement(Image, {
|
168
|
-
ref: actualImageRef,
|
169
|
-
borderColor: (0, _ImagesView.getBorderColor)(theme, _ImagesView.themeBorderColors.actual),
|
170
|
-
alt: "actual",
|
171
|
-
src: actual
|
172
|
-
}))) : /*#__PURE__*/_react.default.createElement(_components.Loader, {
|
173
|
-
size: 64
|
174
|
-
}));
|
175
|
-
});
|
176
|
-
exports.SideBySideView = SideBySideView;
|