cypress-controls-ext
Version:
Extension to embed controls to controls panel in cypress app
37 lines (36 loc) • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.mockButton = void 0;
const src_1 = require("../src");
const mockButton = () => {
const ITEM_NAME = 'MOCK';
const defaultValue = true;
return {
id: 'myButton',
mode: { run: true, open: true },
style: (parentId) => {
return `
#${parentId} {
background-color: ${(0, src_1.getStoredVar)(ITEM_NAME, defaultValue) ? '#569532' : 'rgb(160,44,145)'};
}`;
},
control: () => {
const val = (0, src_1.getStoredVar)(ITEM_NAME, defaultValue);
return `
<span id="turnMockOnLabel">Mock:</span>
<input id="turnMockOn" type="checkbox" ${val ? 'checked' : ''}/>
`;
},
addEventListener: (parentId, listener, cyStop, cyRestart) => {
Cypress.env(ITEM_NAME, (0, src_1.getStoredVar)(ITEM_NAME, defaultValue));
listener('#turnMockOn', 'click', () => {
const current = (0, src_1.getStoredVar)(ITEM_NAME, defaultValue);
const newValue = current != null ? !current : defaultValue;
(0, src_1.setStoredVar)(ITEM_NAME, JSON.stringify(newValue));
console.log('Restarting...');
cyRestart();
});
},
};
};
exports.mockButton = mockButton;