X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fhelpers%2Fcore-utils.ts;h=b93868c1235913078bf2bd139153306e57bcebcd;hb=dc48fdbe68e9dd3a3a6028181e61d8595d98e654;hp=7ba7d865a794b496682365ea0570a184a8ff67c3;hpb=db4b15f21fbf4e33434e930ffc7fb768cdcf9d42;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/helpers/core-utils.ts b/server/helpers/core-utils.ts index 7ba7d865a..b93868c12 100644 --- a/server/helpers/core-utils.ts +++ b/server/helpers/core-utils.ts @@ -154,24 +154,6 @@ function root () { return rootPath } -// Thanks: https://stackoverflow.com/a/12034334 -function escapeHTML (stringParam) { - if (!stringParam) return '' - - const entityMap = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - '\'': ''', - '/': '/', - '`': '`', - '=': '=' - } - - return String(stringParam).replace(/[&<>"'`=/]/g, s => entityMap[s]) -} - function pageToStartAndCount (page: number, itemsPerPage: number) { const start = (page - 1) * itemsPerPage @@ -251,6 +233,17 @@ function promisify2 (func: (arg1: T, arg2: U, cb: (err: any, result: A) } } +type SemVersion = { major: number, minor: number, patch: number } +function parseSemVersion (s: string) { + const parsed = s.match(/^v?(\d+)\.(\d+)\.(\d+)$/i) + + return { + major: parseInt(parsed[1]), + minor: parseInt(parsed[2]), + patch: parseInt(parsed[3]) + } as SemVersion +} + const randomBytesPromise = promisify1(randomBytes) const createPrivateKey = promisify1(pem.createPrivateKey) const getPublicKey = promisify1(pem.getPublicKey) @@ -267,7 +260,6 @@ export { objectConverter, root, - escapeHTML, pageToStartAndCount, sanitizeUrl, sanitizeHost, @@ -288,5 +280,7 @@ export { getPublicKey, execPromise2, execPromise, - pipelinePromise + pipelinePromise, + + parseSemVersion }