creevey
Version:
Cross-browser screenshot testing tool for Storybook with fancy UI Runner
35 lines • 2 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Panel = void 0;
const react_1 = __importDefault(require("react"));
const components_1 = require("@storybook/components");
const theming_1 = require("@storybook/theming");
const ResultsPage_js_1 = require("../../shared/components/ResultsPage.js");
const helpers_js_1 = require("../../shared/helpers.js");
const TestSelect_js_1 = __importDefault(require("./TestSelect.js"));
const lodash_1 = require("lodash");
const Wrapper = theming_1.styled.div(({ isRunning }) => ({
opacity: isRunning ? 0.5 : 1,
height: '100%',
}));
const TestSelectContainer = theming_1.styled.div(({ theme }) => ({
padding: '8px',
border: `1px solid ${theme.appBorderColor}`,
}));
const Panel = ({ tests, selectedTestId, onChangeTest }) => {
const result = tests.find((x) => x.id === selectedTestId);
const isRunning = result?.status === 'running';
return (react_1.default.createElement("div", null,
tests.length > 1 && (react_1.default.createElement(TestSelectContainer, null,
react_1.default.createElement(TestSelect_js_1.default, { tests: tests, selectedTestId: selectedTestId, onChangeTest: onChangeTest }))),
isRunning && react_1.default.createElement(components_1.Loader, null),
result?.results?.length ? (react_1.default.createElement(Wrapper, { isRunning: isRunning },
react_1.default.createElement(ResultsPage_js_1.ResultsPage, { height: '100%', key: `${result.id}_${result.results.length}`, path: (0, helpers_js_1.getTestPath)(result), results: result.results, approved: result.approved,
// addon doesn't work, add only stubs
retry: 0, onRetryChange: lodash_1.noop, imageName: "", onImageChange: lodash_1.noop }))) : null));
};
exports.Panel = Panel;
//# sourceMappingURL=Panel.js.map