UNPKG

@launchmenu/core

Version:

An environment for visual keyboard controlled applets

40 lines 3.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.handleCopyPasteInput = void 0; const copyText_1 = require("../copyText"); const isFieldControlsSettingsFolder_1 = require("./isFieldControlsSettingsFolder"); const InsertTextCommand_1 = require("../commands/InsertTextCommand"); const PasteTextCommand_1 = require("../commands/PasteTextCommand"); /** * Handles copying and pasting of text * @param event The event to test * @param targetField The text field to perform the event for * @param patterns The key patterns to detect, or the base settings to extract them from * @returns Whether the event was caught */ async function handleCopyPasteInput(event, { textField, onChange }, patterns) { if (isFieldControlsSettingsFolder_1.isFieldControlsSettingsFolder(patterns)) patterns = { copy: patterns.copy.get(), cut: patterns.cut.get(), paste: patterns.paste.get(), }; if (patterns.copy.matches(event)) { if (await copyText_1.copyText(textField)) return true; } if (patterns.cut.matches(event)) { if (await copyText_1.copyText(textField)) { onChange(new InsertTextCommand_1.InsertTextCommand(textField, "")); return true; } } if (patterns.paste.matches(event)) { const cmd = new PasteTextCommand_1.PasteTextCommand(textField); onChange(cmd); if (await cmd.pasted) return true; } } exports.handleCopyPasteInput = handleCopyPasteInput; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlQ29weVBhc3RlSW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGV4dEZpZWxkcy9pbnRlcmFjdGlvbi9rZXlIYW5kbGVyL2hhbmRsZUNvcHlQYXN0ZUlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDBDQUFxQztBQUtyQyxtRkFBOEU7QUFFOUUscUVBQWdFO0FBQ2hFLG1FQUE4RDtBQUU5RDs7Ozs7O0dBTUc7QUFDSSxLQUFLLFVBQVUsb0JBQW9CLENBQ3RDLEtBQWUsRUFDZixFQUFDLFNBQVMsRUFBRSxRQUFRLEVBQWtCLEVBQ3RDLFFBTW9FO0lBRXBFLElBQUksNkRBQTZCLENBQUMsUUFBUSxDQUFDO1FBQ3ZDLFFBQVEsR0FBRztZQUNQLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUN6QixHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDdkIsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO1NBQzlCLENBQUM7SUFFTixJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzlCLElBQUksTUFBTSxtQkFBUSxDQUFDLFNBQVMsQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDO0tBQzlDO0lBQ0QsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUM3QixJQUFJLE1BQU0sbUJBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUMzQixRQUFRLENBQUMsSUFBSSxxQ0FBaUIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvQyxPQUFPLElBQUksQ0FBQztTQUNmO0tBQ0o7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQy9CLE1BQU0sR0FBRyxHQUFHLElBQUksbUNBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxNQUFNO1lBQUUsT0FBTyxJQUFJLENBQUM7S0FDckM7QUFDTCxDQUFDO0FBaENELG9EQWdDQyJ9