Lua: Add base64 encoding bindings

Change-Id: I4f4576ef5615be80c935b97242e232292bc24793
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Marcus Tillmanns
2024-09-17 09:10:25 +02:00
parent 8d306fd1e6
commit 1b969dd110
2 changed files with 34 additions and 0 deletions

View File

@@ -189,6 +189,21 @@ void setupUtilsModule()
QDesktopServices::openUrl(QUrl::fromEncoded(url.toUtf8())); QDesktopServices::openUrl(QUrl::fromEncoded(url.toUtf8()));
}; };
utils["stringToBase64Url"] = [](const QString &data) {
return QString::fromLatin1(data.toUtf8().toBase64(QByteArray::Base64UrlEncoding));
};
utils["base64UrlToString"] = [](const char *data) {
return QString::fromUtf8(
QByteArray::fromBase64(data, QByteArray::Base64UrlEncoding));
};
utils["stringToBase64"] = [](const QString &data) {
return QString::fromLatin1(data.toUtf8().toBase64());
};
utils["base64ToString"] = [](const char *data) {
return QString::fromUtf8(QByteArray::fromBase64(data));
};
return utils; return utils;
}); });
} }

View File

@@ -126,4 +126,23 @@ function utils.Timer:stop() end
---@param url string The URL to open. ---@param url string The URL to open.
function utils.openExternalUrl(url) end function utils.openExternalUrl(url) end
---Converts a string to a base64 URL encoding. Instead of using "+" and "/" characters, it uses "-" and "_".
---@param text string The text to convert.
---@return string The base64 URL encoded string.
function utils.stringToBase64Url(text) end
---Converts a base64 URL encoded string back to a normal string.
---@param text string The base64 URL encoded string.
---@return string The decoded string.
function utils.base64UrlToString(text) end
---Converts a string to a base64 encoding.
---@param text string The text to convert.
---@return string The base64 encoded string.
function utils.stringToBase64(text) end
---Converts a base64 encoded string back to a normal string.
---@param text string The base64 encoded string.
---@return string The decoded string.
function utils.base64ToString(text) end
return utils return utils