/* * noVNC: HTML5 VNC client * Copyright (C) 2019 The noVNC Authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. */ // Decode from UTF-8 export function decodeUTF8(utf8string, allowLatin1=false) { try { return decodeURIComponent(escape(utf8string)); } catch (e) { if (e instanceof URIError) { if (allowLatin1) { // If we allow Latin1 we can ignore any decoding fails // and in these cases return the original string return utf8string; } } throw e; } } // Encode to UTF-8 export function encodeUTF8(DOMString) { return unescape(encodeURIComponent(DOMString)); }