UNPKG

testcafe

Version:

Automated browser testing for the modern web development stack.

54 lines 5.92 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.calculateMouseButtonValue = exports.getModifiersBit = exports.getModifiersState = exports.calculateKeyModifiersValue = void 0; const types_1 = require("./types"); // @ts-ignore const hammerhead_1 = require("../../client/core/deps/hammerhead"); const EMPTY_MODIFIERS = { ctrl: false, alt: false, shift: false, meta: false, }; function calculateKeyModifiersValue(modifiers) { let result = 0; if (!modifiers) return result; if (modifiers.ctrl) result |= types_1.KeyModifierValues.ctrl; if (modifiers.alt) result |= types_1.KeyModifierValues.alt; if (modifiers.shift) result |= types_1.KeyModifierValues.shift; if (modifiers.meta) result |= types_1.KeyModifierValues.meta; return result; } exports.calculateKeyModifiersValue = calculateKeyModifiersValue; function getModifiersState(modifiersBit) { const modifiers = hammerhead_1.utils.extend({}, EMPTY_MODIFIERS); if (!modifiersBit) return modifiers; if (modifiersBit & types_1.KeyModifierValues.ctrl) modifiers.ctrl = true; if (modifiersBit & types_1.KeyModifierValues.alt) modifiers.alt = true; if (modifiersBit & types_1.KeyModifierValues.shift) modifiers.shift = true; if (modifiersBit & types_1.KeyModifierValues.meta) modifiers.meta = true; return modifiers; } exports.getModifiersState = getModifiersState; function getModifiersBit(key) { // @ts-ignore return types_1.KeyModifierValues[key] || 0; } exports.getModifiersBit = getModifiersBit; function calculateMouseButtonValue(options) { if (options.button) return options.button; return 'left'; } exports.calculateMouseButtonValue = calculateMouseButtonValue; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmF0aXZlLWF1dG9tYXRpb24vY2xpZW50L3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUEwRDtBQUcxRCxhQUFhO0FBQ2Isa0VBQTBEO0FBRTFELE1BQU0sZUFBZSxHQUFHO0lBQ3BCLElBQUksRUFBRyxLQUFLO0lBQ1osR0FBRyxFQUFJLEtBQUs7SUFDWixLQUFLLEVBQUUsS0FBSztJQUNaLElBQUksRUFBRyxLQUFLO0NBQ2YsQ0FBQztBQUVGLFNBQWdCLDBCQUEwQixDQUFFLFNBQXdCO0lBQ2hFLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztJQUVmLElBQUksQ0FBQyxTQUFTO1FBQ1YsT0FBTyxNQUFNLENBQUM7SUFFbEIsSUFBSSxTQUFTLENBQUMsSUFBSTtRQUNkLE1BQU0sSUFBSSx5QkFBaUIsQ0FBQyxJQUFJLENBQUM7SUFDckMsSUFBSSxTQUFTLENBQUMsR0FBRztRQUNiLE1BQU0sSUFBSSx5QkFBaUIsQ0FBQyxHQUFHLENBQUM7SUFDcEMsSUFBSSxTQUFTLENBQUMsS0FBSztRQUNmLE1BQU0sSUFBSSx5QkFBaUIsQ0FBQyxLQUFLLENBQUM7SUFDdEMsSUFBSSxTQUFTLENBQUMsSUFBSTtRQUNkLE1BQU0sSUFBSSx5QkFBaUIsQ0FBQyxJQUFJLENBQUM7SUFFckMsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQWhCRCxnRUFnQkM7QUFFRCxTQUFnQixpQkFBaUIsQ0FBRSxZQUFxQjtJQUNwRCxNQUFNLFNBQVMsR0FBRyxrQkFBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsZUFBZSxDQUFpQixDQUFDO0lBRXBFLElBQUksQ0FBQyxZQUFZO1FBQ2IsT0FBTyxTQUFTLENBQUM7SUFFckIsSUFBSSxZQUFZLEdBQUcseUJBQWlCLENBQUMsSUFBSTtRQUNyQyxTQUFTLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUMxQixJQUFJLFlBQVksR0FBRyx5QkFBaUIsQ0FBQyxHQUFHO1FBQ3BDLFNBQVMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3pCLElBQUksWUFBWSxHQUFHLHlCQUFpQixDQUFDLEtBQUs7UUFDdEMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDM0IsSUFBSSxZQUFZLEdBQUcseUJBQWlCLENBQUMsSUFBSTtRQUNyQyxTQUFTLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUUxQixPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDO0FBaEJELDhDQWdCQztBQUVELFNBQWdCLGVBQWUsQ0FBRSxHQUFXO0lBQ3hDLGFBQWE7SUFDYixPQUFPLHlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN2QyxDQUFDO0FBSEQsMENBR0M7QUFFRCxTQUFnQix5QkFBeUIsQ0FBRSxPQUFZO0lBQ25ELElBQUksT0FBTyxDQUFDLE1BQU07UUFDZCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFFMUIsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQUxELDhEQUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5TW9kaWZpZXJzLCBLZXlNb2RpZmllclZhbHVlcyB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IFByb3RvY29sIGZyb20gJ2RldnRvb2xzLXByb3RvY29sJztcbmltcG9ydCBNb3VzZUJ1dHRvbiA9IFByb3RvY29sLklucHV0Lk1vdXNlQnV0dG9uO1xuLy8gQHRzLWlnbm9yZVxuaW1wb3J0IHsgdXRpbHMgfSBmcm9tICcuLi8uLi9jbGllbnQvY29yZS9kZXBzL2hhbW1lcmhlYWQnO1xuXG5jb25zdCBFTVBUWV9NT0RJRklFUlMgPSB7XG4gICAgY3RybDogIGZhbHNlLFxuICAgIGFsdDogICBmYWxzZSxcbiAgICBzaGlmdDogZmFsc2UsXG4gICAgbWV0YTogIGZhbHNlLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUtleU1vZGlmaWVyc1ZhbHVlIChtb2RpZmllcnM/OiBLZXlNb2RpZmllcnMpOiBudW1iZXIge1xuICAgIGxldCByZXN1bHQgPSAwO1xuXG4gICAgaWYgKCFtb2RpZmllcnMpXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG5cbiAgICBpZiAobW9kaWZpZXJzLmN0cmwpXG4gICAgICAgIHJlc3VsdCB8PSBLZXlNb2RpZmllclZhbHVlcy5jdHJsO1xuICAgIGlmIChtb2RpZmllcnMuYWx0KVxuICAgICAgICByZXN1bHQgfD0gS2V5TW9kaWZpZXJWYWx1ZXMuYWx0O1xuICAgIGlmIChtb2RpZmllcnMuc2hpZnQpXG4gICAgICAgIHJlc3VsdCB8PSBLZXlNb2RpZmllclZhbHVlcy5zaGlmdDtcbiAgICBpZiAobW9kaWZpZXJzLm1ldGEpXG4gICAgICAgIHJlc3VsdCB8PSBLZXlNb2RpZmllclZhbHVlcy5tZXRhO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1vZGlmaWVyc1N0YXRlIChtb2RpZmllcnNCaXQ/OiBudW1iZXIpOiBLZXlNb2RpZmllcnMge1xuICAgIGNvbnN0IG1vZGlmaWVycyA9IHV0aWxzLmV4dGVuZCh7fSwgRU1QVFlfTU9ESUZJRVJTKSBhcyBLZXlNb2RpZmllcnM7XG5cbiAgICBpZiAoIW1vZGlmaWVyc0JpdClcbiAgICAgICAgcmV0dXJuIG1vZGlmaWVycztcblxuICAgIGlmIChtb2RpZmllcnNCaXQgJiBLZXlNb2RpZmllclZhbHVlcy5jdHJsKVxuICAgICAgICBtb2RpZmllcnMuY3RybCA9IHRydWU7XG4gICAgaWYgKG1vZGlmaWVyc0JpdCAmIEtleU1vZGlmaWVyVmFsdWVzLmFsdClcbiAgICAgICAgbW9kaWZpZXJzLmFsdCA9IHRydWU7XG4gICAgaWYgKG1vZGlmaWVyc0JpdCAmIEtleU1vZGlmaWVyVmFsdWVzLnNoaWZ0KVxuICAgICAgICBtb2RpZmllcnMuc2hpZnQgPSB0cnVlO1xuICAgIGlmIChtb2RpZmllcnNCaXQgJiBLZXlNb2RpZmllclZhbHVlcy5tZXRhKVxuICAgICAgICBtb2RpZmllcnMubWV0YSA9IHRydWU7XG5cbiAgICByZXR1cm4gbW9kaWZpZXJzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9kaWZpZXJzQml0IChrZXk6IHN0cmluZyk6IG51bWJlciB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiBLZXlNb2RpZmllclZhbHVlc1trZXldIHx8IDA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVNb3VzZUJ1dHRvblZhbHVlIChvcHRpb25zOiBhbnkpOiBNb3VzZUJ1dHRvbiB7XG4gICAgaWYgKG9wdGlvbnMuYnV0dG9uKVxuICAgICAgICByZXR1cm4gb3B0aW9ucy5idXR0b247XG5cbiAgICByZXR1cm4gJ2xlZnQnO1xufVxuIl19