creevey 0.9.0-beta.0 → 0.9.0-beta.10
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 +51 -0
- package/README.md +9 -1
- package/addon/README.md +3 -0
- package/addon/package.json +5 -0
- package/docs/config.md +29 -26
- package/jest.config.js +6 -0
- package/lib/cjs/client/addon/Manager.js +122 -270
- package/lib/cjs/client/addon/components/Addon.js +17 -38
- package/lib/cjs/client/addon/components/Icons.js +11 -7
- 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 +22 -41
- package/lib/cjs/client/addon/decorator.js +1 -1
- package/lib/cjs/client/addon/index.js +31 -0
- package/lib/cjs/client/addon/preset.ie11.js +74 -0
- package/lib/cjs/client/addon/preset.js +4 -68
- package/lib/cjs/client/addon/preset.sb7.js +19 -0
- package/lib/cjs/client/addon/preview.js +14 -0
- package/lib/cjs/client/addon/register.js +46 -70
- package/lib/cjs/client/addon/utils.js +6 -2
- package/lib/cjs/client/addon/withCreevey.js +161 -366
- 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 +139 -210
- 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/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 +5 -5
- package/lib/cjs/server/config.js +3 -5
- package/lib/cjs/server/docker.js +3 -7
- package/lib/cjs/server/extract.js +1 -5
- 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 +2 -4
- package/lib/cjs/server/loaders/webpack/compile.js +34 -51
- package/lib/cjs/server/loaders/webpack/creevey-loader.js +20 -22
- package/lib/cjs/server/loaders/webpack/dummy-hmr.js +2 -7
- package/lib/cjs/server/loaders/webpack/mdx-loader.js +2 -2
- 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 +5 -3
- package/lib/cjs/server/messages.js +8 -10
- package/lib/cjs/server/selenium/browser.js +58 -70
- package/lib/cjs/server/selenium/selenoid.js +5 -7
- package/lib/cjs/server/stories.js +16 -33
- package/lib/cjs/server/storybook/entry.js +7 -22
- package/lib/cjs/server/storybook/helpers.js +21 -28
- package/lib/cjs/server/storybook/providers/browser.js +10 -14
- package/lib/cjs/server/storybook/providers/hybrid.js +17 -14
- package/lib/cjs/server/storybook/providers/nodejs.js +12 -12
- package/lib/cjs/server/{parser.js → testsFiles/parser.js} +1 -14
- package/lib/cjs/server/testsFiles/register.js +44 -0
- package/lib/cjs/server/update.js +1 -5
- package/lib/cjs/server/utils.js +27 -36
- package/lib/cjs/server/worker/reporter.js +8 -20
- package/lib/cjs/server/worker/worker.js +9 -19
- package/lib/cjs/shared/index.js +101 -0
- package/lib/cjs/shared/serializeRegExp.js +42 -0
- package/lib/cjs/types.js +7 -6
- package/lib/esm/client/addon/Manager.js +122 -270
- package/lib/esm/client/addon/components/Addon.js +15 -34
- package/lib/esm/client/addon/components/Icons.js +10 -6
- 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 +20 -37
- package/lib/esm/client/addon/decorator.js +1 -1
- package/lib/esm/client/addon/index.js +2 -0
- package/lib/esm/client/addon/preset.ie11.js +59 -0
- package/lib/esm/client/addon/preset.js +4 -52
- package/lib/esm/client/addon/preset.sb7.js +8 -0
- package/lib/esm/client/addon/preview.js +5 -0
- package/lib/esm/client/addon/register.js +42 -66
- package/lib/esm/client/addon/utils.js +3 -2
- package/lib/esm/client/addon/withCreevey.js +156 -363
- 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 +123 -194
- package/lib/esm/client/shared/viewMode.js +4 -4
- package/lib/esm/creevey.js +3 -5
- package/lib/esm/index.js +2 -4
- package/lib/esm/server/config.js +3 -5
- package/lib/esm/server/docker.js +2 -2
- package/lib/esm/server/extract.js +1 -3
- 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 +3 -5
- package/lib/esm/server/loaders/webpack/compile.js +35 -52
- package/lib/esm/server/loaders/webpack/creevey-loader.js +9 -10
- package/lib/esm/server/loaders/webpack/dummy-hmr.js +2 -6
- package/lib/esm/server/loaders/webpack/mdx-loader.js +2 -2
- 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 +5 -3
- package/lib/esm/server/messages.js +3 -5
- package/lib/esm/server/selenium/browser.js +54 -66
- package/lib/esm/server/selenium/selenoid.js +4 -6
- package/lib/esm/server/stories.js +16 -32
- package/lib/esm/server/storybook/entry.js +5 -22
- package/lib/esm/server/storybook/helpers.js +12 -21
- package/lib/esm/server/storybook/providers/browser.js +6 -9
- package/lib/esm/server/storybook/providers/hybrid.js +10 -13
- package/lib/esm/server/storybook/providers/nodejs.js +10 -11
- package/lib/esm/server/{parser.js → testsFiles/parser.js} +1 -14
- package/lib/esm/server/testsFiles/register.js +31 -0
- package/lib/esm/server/update.js +1 -5
- package/lib/esm/server/utils.js +18 -31
- package/lib/esm/server/worker/reporter.js +8 -20
- package/lib/esm/server/worker/worker.js +9 -19
- package/lib/esm/shared/index.js +78 -0
- package/lib/esm/shared/serializeRegExp.js +24 -0
- package/lib/esm/types.js +1 -0
- package/lib/types/client/addon/Manager.d.ts +2 -2
- package/lib/types/client/addon/components/TestSelect.d.ts +0 -1
- package/lib/types/client/addon/index.d.ts +2 -0
- package/lib/types/client/addon/preset.d.ts +0 -22
- package/lib/types/client/addon/preset.ie11.d.ts +10 -0
- package/lib/types/client/addon/preset.sb7.d.ts +2 -0
- package/lib/types/client/addon/preview.d.ts +4 -0
- package/lib/types/client/addon/utils.d.ts +1 -0
- package/lib/types/client/addon/withCreevey.d.ts +1 -1
- package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +1 -1
- package/lib/types/client/shared/components/ImagesView/ImagesView.d.ts +0 -1
- package/lib/types/client/shared/components/ImagesView/SideBySideView.d.ts +1 -1
- package/lib/types/client/shared/components/ImagesView/SlideView.d.ts +1 -1
- package/lib/types/client/shared/components/ImagesView/SwapView.d.ts +1 -1
- package/lib/types/client/shared/components/PageFooter/PageFooter.d.ts +0 -1
- package/lib/types/client/shared/components/PageFooter/Paging.d.ts +0 -1
- package/lib/types/client/shared/components/PageHeader/ImagePreview.d.ts +1 -1
- package/lib/types/client/shared/components/PageHeader/PageHeader.d.ts +0 -1
- package/lib/types/client/shared/components/ResultsPage.d.ts +1 -1
- package/lib/types/client/web/CreeveyApp.d.ts +0 -1
- package/lib/types/client/web/CreeveyLoader.d.ts +1 -2
- package/lib/types/client/web/CreeveyView/SideBar/Checkbox.d.ts +1 -1
- package/lib/types/client/web/CreeveyView/SideBar/SideBarHeader.d.ts +0 -1
- package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +4 -4
- package/lib/types/client/web/CreeveyView/SideBar/TestLink.d.ts +0 -1
- package/lib/types/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +1 -1
- package/lib/types/client/web/CreeveyView/SideBar/TestsStatus.d.ts +1 -1
- package/lib/types/index.d.ts +4 -2
- package/lib/types/server/config.d.ts +1 -1
- package/lib/types/server/loaders/babel/register.d.ts +1 -1
- package/lib/types/server/loaders/webpack/creevey-loader.d.ts +4 -2
- package/lib/types/server/logger.d.ts +6 -2
- package/lib/types/server/messages.d.ts +13 -12
- package/lib/types/server/selenium/browser.d.ts +5 -3
- package/lib/types/server/storybook/entry.d.ts +2 -3
- package/lib/types/server/storybook/helpers.d.ts +1 -1
- package/lib/types/server/storybook/providers/browser.d.ts +2 -4
- package/lib/types/server/storybook/providers/hybrid.d.ts +2 -4
- package/lib/types/server/storybook/providers/nodejs.d.ts +3 -3
- package/lib/types/server/{parser.d.ts → testsFiles/parser.d.ts} +1 -1
- package/lib/types/server/testsFiles/register.d.ts +2 -0
- package/lib/types/server/utils.d.ts +5 -1
- package/lib/types/{shared.d.ts → shared/index.d.ts} +1 -10
- package/lib/types/shared/serializeRegExp.d.ts +9 -0
- package/lib/types/types.d.ts +7 -9
- package/package.json +119 -102
- package/preset/ie11.js +5 -0
- package/{preset.js → preset/index.js} +2 -2
- package/preset/sb7.js +5 -0
- package/types/global.d.ts +5 -0
- package/types/mdx.d.ts +3 -2
- package/lib/cjs/client/web/1.js +0 -13
- package/lib/cjs/client/web/2.js +0 -1
- package/lib/cjs/shared.js +0 -107
- package/lib/esm/shared.js +0 -76
- package/storybook-static/stories.json +0 -21
@@ -19,33 +19,37 @@ var _TestSelect = _interopRequireDefault(require("./TestSelect"));
|
|
19
19
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
21
21
|
|
22
|
-
|
23
|
-
|
22
|
+
const Wrapper = _theming.styled.div(_ref => {
|
23
|
+
let {
|
24
|
+
isRunning
|
25
|
+
} = _ref;
|
24
26
|
return {
|
25
27
|
opacity: isRunning ? 0.5 : 1,
|
26
28
|
height: '100%'
|
27
29
|
};
|
28
30
|
});
|
29
31
|
|
30
|
-
|
31
|
-
|
32
|
+
const TestSelectContainer = _theming.styled.div(_ref2 => {
|
33
|
+
let {
|
34
|
+
theme
|
35
|
+
} = _ref2;
|
32
36
|
return {
|
33
37
|
padding: '8px',
|
34
38
|
border: "1px solid ".concat(theme.appBorderColor)
|
35
39
|
};
|
36
40
|
});
|
37
41
|
|
38
|
-
|
42
|
+
const Panel = _ref3 => {
|
39
43
|
var _result$results, _result$results$lengt, _result$results2;
|
40
44
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
45
|
+
let {
|
46
|
+
tests,
|
47
|
+
selectedTestId,
|
48
|
+
onChangeTest,
|
49
|
+
onImageApprove
|
50
|
+
} = _ref3;
|
51
|
+
const result = tests.find(x => x.id === selectedTestId);
|
52
|
+
const isRunning = (result === null || result === void 0 ? void 0 : result.status) === 'running';
|
49
53
|
return /*#__PURE__*/_react.default.createElement("div", null, tests.length > 1 && /*#__PURE__*/_react.default.createElement(TestSelectContainer, null, /*#__PURE__*/_react.default.createElement(_TestSelect.default, {
|
50
54
|
tests: tests,
|
51
55
|
selectedTestId: selectedTestId,
|
@@ -15,8 +15,10 @@ var _utils = require("../utils");
|
|
15
15
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17
17
|
|
18
|
-
|
19
|
-
|
18
|
+
const LinkIconContainer = _theming.styled.span(_ref => {
|
19
|
+
let {
|
20
|
+
theme
|
21
|
+
} = _ref;
|
20
22
|
return {
|
21
23
|
display: 'inline-block',
|
22
24
|
width: '20px',
|
@@ -28,24 +30,24 @@ var LinkIconContainer = _theming.styled.span(function (_ref) {
|
|
28
30
|
function TestSelect(props) {
|
29
31
|
var _props$tests$find$tes, _props$tests$find;
|
30
32
|
|
31
|
-
|
32
|
-
return x.id === props.selectedTestId;
|
33
|
-
})) === null || _props$tests$find === void 0 ? void 0 : _props$tests$find.testName) !== null && _props$tests$find$tes !== void 0 ? _props$tests$find$tes : '';
|
33
|
+
const testName = (_props$tests$find$tes = (_props$tests$find = props.tests.find(x => x.id === props.selectedTestId)) === null || _props$tests$find === void 0 ? void 0 : _props$tests$find.testName) !== null && _props$tests$find$tes !== void 0 ? _props$tests$find$tes : '';
|
34
34
|
return /*#__PURE__*/_react.default.createElement(_components.WithTooltip, {
|
35
35
|
trigger: "click",
|
36
36
|
placement: "bottom",
|
37
37
|
closeOnClick: true,
|
38
|
-
tooltip:
|
39
|
-
|
38
|
+
tooltip: _ref2 => {
|
39
|
+
let {
|
40
|
+
onHide
|
41
|
+
} = _ref2;
|
40
42
|
return /*#__PURE__*/_react.default.createElement(_components.TooltipLinkList, {
|
41
|
-
links: props.tests.map(
|
43
|
+
links: props.tests.map(x => {
|
42
44
|
var _x$testName;
|
43
45
|
|
44
46
|
return {
|
45
47
|
id: x.id,
|
46
48
|
title: (_x$testName = x.testName) !== null && _x$testName !== void 0 ? _x$testName : '',
|
47
49
|
active: props.selectedTestId === x.id,
|
48
|
-
onClick:
|
50
|
+
onClick: () => {
|
49
51
|
props.onChangeTest(x.id);
|
50
52
|
onHide();
|
51
53
|
},
|
@@ -1,7 +1,5 @@
|
|
1
1
|
"use strict";
|
2
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
3
|
Object.defineProperty(exports, "__esModule", {
|
6
4
|
value: true
|
7
5
|
});
|
@@ -21,23 +19,11 @@ var _types = require("../../../types");
|
|
21
19
|
|
22
20
|
var _helpers = require("../../shared/helpers");
|
23
21
|
|
24
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function
|
25
|
-
|
26
|
-
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; }
|
27
|
-
|
28
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
29
|
-
|
30
|
-
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."); }
|
31
|
-
|
32
|
-
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); }
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
33
23
|
|
34
|
-
function
|
24
|
+
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; }
|
35
25
|
|
36
|
-
|
37
|
-
|
38
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
39
|
-
|
40
|
-
var Button = (0, _theming.styled)(_components.IconButton)({
|
26
|
+
const Button = (0, _theming.styled)(_components.IconButton)({
|
41
27
|
'&:disabled': {
|
42
28
|
opacity: 0.5,
|
43
29
|
cursor: 'default'
|
@@ -47,30 +33,25 @@ var Button = (0, _theming.styled)(_components.IconButton)({
|
|
47
33
|
}
|
48
34
|
});
|
49
35
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
isRunning = _useState4[0],
|
61
|
-
setRunning = _useState4[1];
|
62
|
-
|
63
|
-
var forceUpdate = (0, _helpers.useForceUpdate)();
|
64
|
-
var test = manager.getCurrentTest();
|
65
|
-
(0, _react.useEffect)(function () {
|
66
|
-
var unsubscribe = manager.onChangeTest(function () {
|
36
|
+
const Tools = _ref => {
|
37
|
+
let {
|
38
|
+
manager
|
39
|
+
} = _ref;
|
40
|
+
const [buttonClicked, setButtonClicked] = (0, _react.useState)();
|
41
|
+
const [isRunning, setRunning] = (0, _react.useState)(manager.status.isRunning);
|
42
|
+
const forceUpdate = (0, _helpers.useForceUpdate)();
|
43
|
+
const test = manager.getCurrentTest();
|
44
|
+
(0, _react.useEffect)(() => {
|
45
|
+
const unsubscribe = manager.onChangeTest(() => {
|
67
46
|
forceUpdate();
|
68
47
|
});
|
69
48
|
return unsubscribe;
|
70
49
|
}, [manager, forceUpdate]);
|
71
|
-
(0, _react.useEffect)(
|
72
|
-
|
73
|
-
|
50
|
+
(0, _react.useEffect)(() => {
|
51
|
+
const unsubscribe = manager.onUpdateStatus(_ref2 => {
|
52
|
+
let {
|
53
|
+
isRunning
|
54
|
+
} = _ref2;
|
74
55
|
if ((0, _types.isDefined)(isRunning)) setRunning(isRunning);
|
75
56
|
});
|
76
57
|
return unsubscribe;
|
@@ -78,14 +59,14 @@ var Tools = function Tools(_ref) {
|
|
78
59
|
if (!test) return null;
|
79
60
|
|
80
61
|
function renderButton(type, title, onClick, icon) {
|
81
|
-
|
62
|
+
const handleClick = () => {
|
82
63
|
setButtonClicked(type);
|
83
64
|
onClick();
|
84
65
|
};
|
85
66
|
|
86
|
-
|
67
|
+
const disabled = isRunning && buttonClicked != null && buttonClicked !== type;
|
87
68
|
return /*#__PURE__*/_react.default.createElement(Button, {
|
88
|
-
onClick:
|
69
|
+
onClick: () => {
|
89
70
|
isRunning ? manager.onStop() : handleClick();
|
90
71
|
},
|
91
72
|
title: disabled ? '' : title,
|
@@ -96,7 +77,7 @@ var Tools = function Tools(_ref) {
|
|
96
77
|
}
|
97
78
|
|
98
79
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_components.IconButton, {
|
99
|
-
href: "http://localhost:".concat(__CREEVEY_CLIENT_PORT__ || __CREEVEY_SERVER_PORT__, "/?").concat((0, _qs.stringify)({
|
80
|
+
href: "http://localhost:".concat(__CREEVEY_CLIENT_PORT__ || __CREEVEY_SERVER_PORT__ || 3000, "/?").concat((0, _qs.stringify)({
|
100
81
|
testPath: (0, _helpers.getTestPath)(test)
|
101
82
|
})),
|
102
83
|
target: "_blank",
|
@@ -0,0 +1,31 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
|
7
|
+
var _withCreevey = require("./withCreevey");
|
8
|
+
|
9
|
+
Object.keys(_withCreevey).forEach(function (key) {
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
11
|
+
if (key in exports && exports[key] === _withCreevey[key]) return;
|
12
|
+
Object.defineProperty(exports, key, {
|
13
|
+
enumerable: true,
|
14
|
+
get: function () {
|
15
|
+
return _withCreevey[key];
|
16
|
+
}
|
17
|
+
});
|
18
|
+
});
|
19
|
+
|
20
|
+
var _readyForCapture = require("./readyForCapture");
|
21
|
+
|
22
|
+
Object.keys(_readyForCapture).forEach(function (key) {
|
23
|
+
if (key === "default" || key === "__esModule") return;
|
24
|
+
if (key in exports && exports[key] === _readyForCapture[key]) return;
|
25
|
+
Object.defineProperty(exports, key, {
|
26
|
+
enumerable: true,
|
27
|
+
get: function () {
|
28
|
+
return _readyForCapture[key];
|
29
|
+
}
|
30
|
+
});
|
31
|
+
});
|
@@ -0,0 +1,74 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.webpack = exports.managerWebpack = exports.babel = void 0;
|
7
|
+
const ie11Preset = ['@babel/preset-env', {
|
8
|
+
targets: {
|
9
|
+
ie: '11'
|
10
|
+
}
|
11
|
+
}];
|
12
|
+
|
13
|
+
const babel = config => {
|
14
|
+
const {
|
15
|
+
presets = []
|
16
|
+
} = config;
|
17
|
+
return { ...config,
|
18
|
+
presets: [...(presets || []), ie11Preset]
|
19
|
+
};
|
20
|
+
};
|
21
|
+
|
22
|
+
exports.babel = babel;
|
23
|
+
const nodeModulesThatNeedToBeParsedBecauseTheyExposeES6 = ['creevey', '@testing-library'];
|
24
|
+
const include = new RegExp("[\\\\/](".concat(nodeModulesThatNeedToBeParsedBecauseTheyExposeES6.join('|'), ")"));
|
25
|
+
const es6Loader = {
|
26
|
+
test: /\.js$/,
|
27
|
+
use: [{
|
28
|
+
loader: require.resolve('babel-loader'),
|
29
|
+
options: {
|
30
|
+
presets: [ie11Preset]
|
31
|
+
}
|
32
|
+
}],
|
33
|
+
include
|
34
|
+
};
|
35
|
+
|
36
|
+
const managerWebpack = function () {
|
37
|
+
var _webpackConfig$module, _webpackConfig$module2;
|
38
|
+
|
39
|
+
let webpackConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
40
|
+
return { ...webpackConfig,
|
41
|
+
module: { ...webpackConfig.module,
|
42
|
+
rules: [...((_webpackConfig$module = (_webpackConfig$module2 = webpackConfig.module) === null || _webpackConfig$module2 === void 0 ? void 0 : _webpackConfig$module2.rules) !== null && _webpackConfig$module !== void 0 ? _webpackConfig$module : []), es6Loader]
|
43
|
+
}
|
44
|
+
};
|
45
|
+
};
|
46
|
+
|
47
|
+
exports.managerWebpack = managerWebpack;
|
48
|
+
|
49
|
+
const webpack = function () {
|
50
|
+
var _webpackConfig$module3, _webpackConfig$module4;
|
51
|
+
|
52
|
+
let webpackConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
53
|
+
const {
|
54
|
+
entry
|
55
|
+
} = webpackConfig;
|
56
|
+
const polyfills = [require.resolve('whatwg-fetch')];
|
57
|
+
|
58
|
+
if (Array.isArray(entry)) {
|
59
|
+
polyfills.forEach(polyfill => {
|
60
|
+
if (!entry.includes(polyfill)) {
|
61
|
+
entry.unshift(polyfill);
|
62
|
+
}
|
63
|
+
});
|
64
|
+
}
|
65
|
+
|
66
|
+
return { ...webpackConfig,
|
67
|
+
entry,
|
68
|
+
module: { ...webpackConfig.module,
|
69
|
+
rules: [...((_webpackConfig$module3 = (_webpackConfig$module4 = webpackConfig.module) === null || _webpackConfig$module4 === void 0 ? void 0 : _webpackConfig$module4.rules) !== null && _webpackConfig$module3 !== void 0 ? _webpackConfig$module3 : []), es6Loader]
|
70
|
+
}
|
71
|
+
};
|
72
|
+
};
|
73
|
+
|
74
|
+
exports.webpack = webpack;
|
@@ -1,81 +1,17 @@
|
|
1
1
|
"use strict";
|
2
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
3
|
Object.defineProperty(exports, "__esModule", {
|
6
4
|
value: true
|
7
5
|
});
|
8
6
|
exports.config = config;
|
9
7
|
exports.managerEntries = managerEntries;
|
10
|
-
exports.managerWebpack = managerWebpack;
|
11
|
-
|
12
|
-
var _path = _interopRequireDefault(require("path"));
|
13
|
-
|
14
|
-
var _shelljs = require("shelljs");
|
15
|
-
|
16
|
-
var _webpack = require("webpack");
|
17
|
-
|
18
|
-
var _helpers = require("../../server/storybook/helpers");
|
19
|
-
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
21
|
-
|
22
|
-
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); }
|
23
|
-
|
24
|
-
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; }
|
25
|
-
|
26
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
27
|
-
|
28
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
29
|
-
|
30
|
-
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); }
|
31
|
-
|
32
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
33
|
-
|
34
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
35
|
-
|
36
|
-
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; }
|
37
8
|
|
38
9
|
function config() {
|
39
|
-
|
40
|
-
return [
|
10
|
+
let entry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
11
|
+
return [...entry, require.resolve('./decorator')];
|
41
12
|
}
|
42
13
|
|
43
14
|
function managerEntries() {
|
44
|
-
|
45
|
-
return [
|
46
|
-
}
|
47
|
-
|
48
|
-
function managerWebpack(config, options) {
|
49
|
-
var _options$presets$appl, _options$presets;
|
50
|
-
|
51
|
-
// TODO How to execute with non-webpack bundlers
|
52
|
-
if (options.configType == 'PRODUCTION' && !(0, _helpers.isStorybookVersionLessThan)(6, 2) && options.skipExtract != true) {
|
53
|
-
var args = [];
|
54
|
-
if (options.creeveyPreExtract) args.push("--require \"".concat(options.creeveyPreExtract, "\""));
|
55
|
-
args.push(_path.default.join(__dirname, '../../cli'));
|
56
|
-
args.push("--extract \"".concat(options.outputDir, "\""));
|
57
|
-
if (options.creeveyConfigPath) args.push("--config \"".concat(options.creeveyConfigPath, "\""));
|
58
|
-
(0, _shelljs.exec)("node ".concat(args.join(' ')), {
|
59
|
-
async: true
|
60
|
-
});
|
61
|
-
}
|
62
|
-
|
63
|
-
return ((_options$presets$appl = (_options$presets = options.presets) === null || _options$presets === void 0 ? void 0 : _options$presets.apply('webpackInstance')) !== null && _options$presets$appl !== void 0 ? _options$presets$appl : Promise.resolve(undefined)).then(function (webpack) {
|
64
|
-
return webpack !== null && webpack !== void 0 ? webpack : Promise.resolve("".concat((0, _helpers.isStorybookVersionLessThan)(6, 2) ? (0, _helpers.resolveFromStorybookCore)('webpack') : (0, _helpers.resolveFromStorybookCoreServer)('webpack'))).then(function (s) {
|
65
|
-
return _interopRequireWildcard(require(s));
|
66
|
-
});
|
67
|
-
}).then(function (webpack) {
|
68
|
-
var _config$plugins, _options$creeveyPort;
|
69
|
-
|
70
|
-
var _ref = webpack !== null && webpack !== void 0 ? webpack : {},
|
71
|
-
_ref$DefinePlugin = _ref.DefinePlugin,
|
72
|
-
DefinePlugin = _ref$DefinePlugin === void 0 ? _webpack.DefinePlugin : _ref$DefinePlugin;
|
73
|
-
|
74
|
-
(_config$plugins = config.plugins) === null || _config$plugins === void 0 ? void 0 : _config$plugins.push(new DefinePlugin({
|
75
|
-
__CREEVEY_SERVER_HOST__: options.creeveyHost,
|
76
|
-
__CREEVEY_SERVER_PORT__: (_options$creeveyPort = options.creeveyPort) !== null && _options$creeveyPort !== void 0 ? _options$creeveyPort : 3000,
|
77
|
-
__CREEVEY_CLIENT_PORT__: options.clientPort
|
78
|
-
}));
|
79
|
-
return config;
|
80
|
-
});
|
15
|
+
let entry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
16
|
+
return [...entry, require.resolve('./register')];
|
81
17
|
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.managerEntries = managerEntries;
|
7
|
+
exports.previewAnnotations = void 0;
|
8
|
+
|
9
|
+
const previewAnnotations = function () {
|
10
|
+
let entry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
11
|
+
return [...entry, require.resolve('./preview')];
|
12
|
+
};
|
13
|
+
|
14
|
+
exports.previewAnnotations = previewAnnotations;
|
15
|
+
|
16
|
+
function managerEntries() {
|
17
|
+
let entry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
18
|
+
return [...entry, require.resolve('./register')];
|
19
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _withCreevey = require("./withCreevey");
|
9
|
+
|
10
|
+
const preview = {
|
11
|
+
decorators: [(0, _withCreevey.withCreevey)()]
|
12
|
+
};
|
13
|
+
var _default = preview;
|
14
|
+
exports.default = _default;
|
@@ -3,8 +3,8 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports.registerCreeveyPanels = registerCreeveyPanels;
|
7
6
|
exports.ADDON_ID = void 0;
|
7
|
+
exports.registerCreeveyPanels = registerCreeveyPanels;
|
8
8
|
|
9
9
|
var _addons = require("@storybook/addons");
|
10
10
|
|
@@ -18,79 +18,55 @@ var _Manager = require("./Manager");
|
|
18
18
|
|
19
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
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); }); }; }
|
24
|
-
|
25
|
-
var ADDON_ID = 'creevey';
|
21
|
+
const ADDON_ID = 'creevey';
|
26
22
|
exports.ADDON_ID = ADDON_ID;
|
27
23
|
|
28
|
-
_addons.addons.register(ADDON_ID,
|
24
|
+
_addons.addons.register(ADDON_ID, api => {
|
29
25
|
void registerCreeveyPanels(api);
|
30
26
|
});
|
31
27
|
|
32
|
-
function registerCreeveyPanels(
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
// NOTE key = PANEL_ID needs to correct render button in addons panel
|
74
|
-
// eslint-disable-next-line react/display-name
|
75
|
-
render: function render(_ref2) {
|
76
|
-
var active = _ref2.active,
|
77
|
-
key = _ref2.key;
|
78
|
-
return /*#__PURE__*/_react.default.createElement(_Addon.Addon, {
|
79
|
-
active: active,
|
80
|
-
key: key,
|
81
|
-
manager: manager,
|
82
|
-
browser: browser
|
83
|
-
});
|
84
|
-
}
|
85
|
-
});
|
86
|
-
});
|
87
|
-
|
88
|
-
case 6:
|
89
|
-
case "end":
|
90
|
-
return _context.stop();
|
91
|
-
}
|
28
|
+
async function registerCreeveyPanels(storybookApi) {
|
29
|
+
const manager = new _Manager.CreeveyManager(storybookApi);
|
30
|
+
|
31
|
+
_addons.addons.addPanel("".concat(ADDON_ID, "/panel/run"), {
|
32
|
+
title: "Creevey/Run",
|
33
|
+
match: _ref => {
|
34
|
+
let {
|
35
|
+
viewMode
|
36
|
+
} = _ref;
|
37
|
+
return !!(viewMode && /^story$/.exec(viewMode));
|
38
|
+
},
|
39
|
+
type: _addons.types.TOOL,
|
40
|
+
// eslint-disable-next-line react/display-name
|
41
|
+
render: () => /*#__PURE__*/_react.default.createElement(_Tools.Tools, {
|
42
|
+
manager
|
43
|
+
})
|
44
|
+
});
|
45
|
+
|
46
|
+
await manager.initAll();
|
47
|
+
const browsers = manager.getBrowsers();
|
48
|
+
browsers.forEach(browser => {
|
49
|
+
const panelId = "".concat(ADDON_ID, "/panel/").concat(browser);
|
50
|
+
const title = manager.getTabTitle(browser);
|
51
|
+
|
52
|
+
_addons.addons.addPanel(panelId, {
|
53
|
+
title,
|
54
|
+
type: _addons.types.PANEL,
|
55
|
+
paramKey: browser,
|
56
|
+
// NOTE key = PANEL_ID needs to correct render button in addons panel
|
57
|
+
// eslint-disable-next-line react/display-name
|
58
|
+
render: _ref2 => {
|
59
|
+
let {
|
60
|
+
active,
|
61
|
+
key
|
62
|
+
} = _ref2;
|
63
|
+
return /*#__PURE__*/_react.default.createElement(_Addon.Addon, {
|
64
|
+
active,
|
65
|
+
key,
|
66
|
+
manager,
|
67
|
+
browser
|
68
|
+
});
|
92
69
|
}
|
93
|
-
}
|
94
|
-
})
|
95
|
-
return _registerCreeveyPanels.apply(this, arguments);
|
70
|
+
});
|
71
|
+
});
|
96
72
|
}
|
@@ -4,9 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.getEmojiByTestStatus = getEmojiByTestStatus;
|
7
|
+
exports.isInternetExplorer = void 0;
|
7
8
|
|
8
9
|
function getEmojiByTestStatus(status) {
|
9
|
-
|
10
|
+
let skip = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
10
11
|
|
11
12
|
switch (status) {
|
12
13
|
case 'failed':
|
@@ -35,4 +36,7 @@ function getEmojiByTestStatus(status) {
|
|
35
36
|
return '';
|
36
37
|
}
|
37
38
|
}
|
38
|
-
}
|
39
|
+
}
|
40
|
+
|
41
|
+
const isInternetExplorer = navigator.userAgent.includes('Trident/');
|
42
|
+
exports.isInternetExplorer = isInternetExplorer;
|