UNPKG

cypress-controls-ext

Version:

Extension to embed controls to controls panel in cypress app

34 lines (33 loc) 1.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.updateEnvVar = exports.getStoredVar = exports.setStoredVar = exports.cypressAppSelect = void 0; const cypressAppSelect = (selector) => Cypress.$(selector, top === null || top === void 0 ? void 0 : top.document); exports.cypressAppSelect = cypressAppSelect; /** * Sets session storage * @param item * @param value */ const setStoredVar = (item, value) => window.sessionStorage.setItem(item, value); exports.setStoredVar = setStoredVar; /** * Get item from session storage * @param item * @param defaultValue when no such value in storage */ const getStoredVar = (item, defaultValue) => { const storage = window.sessionStorage.getItem(item); const isString = typeof defaultValue === 'string'; if (storage == null) { const envVar = Cypress.env(item) !== undefined ? Cypress.env(item) : defaultValue; if (envVar === undefined) { return undefined; } (0, exports.setStoredVar)(item, isString ? envVar : JSON.stringify(envVar)); } const value = window.sessionStorage.getItem(item); return isString ? value : JSON.parse(value); }; exports.getStoredVar = getStoredVar; const updateEnvVar = (item, defaultValue) => Cypress.env(item, (0, exports.getStoredVar)(item, defaultValue)); exports.updateEnvVar = updateEnvVar;