From 3b5bf51ba78a44e79dc4eb2960b79ed8ef60e247 Mon Sep 17 00:00:00 2001 From: wukko Date: Sat, 14 Jan 2023 00:34:48 +0600 Subject: [PATCH] 4.7 fixes #63, #67, #68, and #71, among other issues --- docs/API.md | 12 +- package.json | 2 +- src/cobalt.js | 6 +- src/config.json | 4 +- src/front/cobalt.css | 25 ++- src/front/cobalt.js | 2 +- src/front/updateBanners/bettertogether.webp | Bin 0 -> 204614 bytes src/localization/languages/en.json | 10 +- src/localization/languages/ru.json | 8 +- src/localization/manager.js | 2 +- src/modules/changelog/changelog.json | 13 +- src/modules/pageRender/page.js | 221 ++++++++++--------- src/modules/processing/match.js | 3 +- src/modules/processing/matchActionDecider.js | 8 +- src/modules/processing/servicesConfig.json | 2 +- src/modules/services/soundcloud.js | 5 +- src/modules/stream/manage.js | 58 +++-- src/modules/sub/crypto.js | 7 +- src/modules/sub/utils.js | 21 +- 19 files changed, 218 insertions(+), 191 deletions(-) create mode 100644 src/front/updateBanners/bettertogether.webp diff --git a/docs/API.md b/docs/API.md index 9801a55..7bbdd72 100644 --- a/docs/API.md +++ b/docs/API.md @@ -45,12 +45,12 @@ Item type: ``object`` Content live render streaming endpoint.
### Request Query Variables -| key | variables | description | -|:----|:-----------------|:------------------------------------------------------------------------------------------------------------------------------| -| p | ``1`` | Used for checking the rate limit. | -| t | Stream UUID | Unique stream identificator by which cobalt finds stored stream info data. | -| h | HMAC | Hashed combination of: (hashed) ip address, stream uuid, expiry timestamp, and service name. Used for verification of stream. | -| e | Expiry timestamp | | +| key | variables | description | +|:----|:-----------------|:-------------------------------------------------------------------------------------------------------------------------------| +| p | ``1`` | Used for checking the rate limit. | +| t | Stream token | Unique stream identificator which is used for retrieving cached stream info data. | +| h | HMAC | Hashed combination of: (hashed) ip address, stream token, expiry timestamp, and service name. Used for verification of stream. | +| e | Expiry timestamp | | ## GET: ``/api/onDemand`` On-demand website element loading. Currently used only for older changelogs.
diff --git a/package.json b/package.json index 00e6cf7..079cb65 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "cobalt", "description": "save what you love", - "version": "4.6.1", + "version": "4.7", "author": "wukko", "exports": "./src/cobalt.js", "type": "module", diff --git a/src/cobalt.js b/src/cobalt.js index 82f4bb9..74004f9 100644 --- a/src/cobalt.js +++ b/src/cobalt.js @@ -15,7 +15,7 @@ import stream from "./modules/stream/stream.js"; import loc from "./localization/manager.js"; import { buildFront } from "./modules/build.js"; import { changelogHistory } from "./modules/pageRender/onDemand.js"; -import { encrypt } from "./modules/sub/crypto.js"; +import { sha256 } from "./modules/sub/crypto.js"; const commitHash = shortCommit(); const app = express(); @@ -71,7 +71,7 @@ if (fs.existsSync('./.env') && process.env.selfURL && process.env.streamSalt && })); app.post('/api/:type', cors({ origin: process.env.selfURL, optionsSuccessStatus: 200 }), async (req, res) => { try { - let ip = encrypt(req.header('x-forwarded-for') ? req.header('x-forwarded-for') : req.ip.replace('::ffff:', ''), process.env.streamSalt); + let ip = sha256(req.header('x-forwarded-for') ? req.header('x-forwarded-for') : req.ip.replace('::ffff:', ''), process.env.streamSalt); switch (req.params.type) { case 'json': try { @@ -103,7 +103,7 @@ if (fs.existsSync('./.env') && process.env.selfURL && process.env.streamSalt && }); app.get('/api/:type', cors({ origin: process.env.selfURL, optionsSuccessStatus: 200 }), (req, res) => { try { - let ip = encrypt(req.header('x-forwarded-for') ? req.header('x-forwarded-for') : req.ip.replace('::ffff:', ''), process.env.streamSalt); + let ip = sha256(req.header('x-forwarded-for') ? req.header('x-forwarded-for') : req.ip.replace('::ffff:', ''), process.env.streamSalt); switch (req.params.type) { case 'json': res.status(405).json({ 'status': 'error', 'text': 'GET method for this request has been deprecated. see https://github.com/wukko/cobalt/blob/current/docs/API.md for up-to-date API documentation.' }); diff --git a/src/config.json b/src/config.json index d42baf2..2d800fe 100644 --- a/src/config.json +++ b/src/config.json @@ -1,5 +1,5 @@ { - "streamLifespan": 3600000, + "streamLifespan": 120000, "maxVideoDuration": 7500000, "maxAudioDuration": 7500000, "genericUserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36", @@ -59,7 +59,7 @@ "webm": ["-c:v", "copy", "-c:a", "copy"], "mp4": ["-c:v", "copy", "-c:a", "copy", "-movflags", "faststart+frag_keyframe+empty_moov"], "copy": ["-c:a", "copy"], - "audio": ["-ar", "48000", "-ac", "2", "-b:a", "320k"], + "audio": ["-vn", "-ar", "48000", "-ac", "2", "-b:a", "320k"], "m4a": ["-movflags", "frag_keyframe+empty_moov"] } } diff --git a/src/front/cobalt.css b/src/front/cobalt.css index a4068ad..283da7c 100644 --- a/src/front/cobalt.css +++ b/src/front/cobalt.css @@ -72,13 +72,13 @@ a { :focus-visible { outline: var(--border-15); } -[type=checkbox] { - margin-right: 0.8rem; -} [type="checkbox"] { -webkit-appearance: none; - margin-right: 0.8rem; + appearance: none; + margin-right: 1rem; z-index: 0; + border: 0; + height: 15px; } [type="checkbox"]::before { content: ""; @@ -91,9 +91,12 @@ a { position: relative; } [type="checkbox"]:checked::before { - box-shadow: inset 0 0 0 0.2rem var(--accent-button-bg); + box-shadow: inset 0 0 0 0.14rem var(--accent-button-bg); background-color: var(--accent); } +.checkbox span { + margin-top: 0.21rem; +} button { background: none; border: none; @@ -421,7 +424,7 @@ input[type="checkbox"] { flex-direction: row; flex-wrap: nowrap; align-content: center; - padding: 0.6rem 1rem 0.6rem 0.6rem; + padding: 0.55rem 1rem 0.8rem 0.7rem; width: auto; margin: 0 0.5rem 0.5rem 0; background: var(--accent-button-bg); @@ -454,7 +457,7 @@ input[type="checkbox"] { color: var(--accent-unhover-2); } .switch { - padding: 0.8rem; + padding: 0.7rem; width: 100%; text-align: center; color: var(--accent); @@ -509,6 +512,9 @@ input[type="checkbox"] { position: relative; width: 100%; } +.popup-tabs { + margin-top: 0.5rem; +} .emoji { margin-right: 0.4rem; } @@ -573,9 +579,6 @@ input[type="checkbox"] { margin-top: 0!important; margin-bottom: 1rem; } -.popup-tabs { - padding-top: 0.5rem; -} /* adapt the page according to screen size */ @media screen and (min-width: 2300px) { html { @@ -754,7 +757,7 @@ input[type="checkbox"] { .popup, .popup.scrollable, .popup.small { border: none; width: 90%; - height: 90%; + height: 92%; max-height: 100%; } .bottom-link { diff --git a/src/front/cobalt.js b/src/front/cobalt.js index 0c57be8..7086ec8 100644 --- a/src/front/cobalt.js +++ b/src/front/cobalt.js @@ -1,7 +1,7 @@ let ua = navigator.userAgent.toLowerCase(); let isIOS = ua.match("iphone os"); let isMobile = ua.match("android") || ua.match("iphone os"); -let version = 20; +let version = 21; let regex = new RegExp(/https:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()!@:%_\+.~#?&\/\/=]*)/); let notification = `
` diff --git a/src/front/updateBanners/bettertogether.webp b/src/front/updateBanners/bettertogether.webp new file mode 100644 index 0000000000000000000000000000000000000000..a1e0380695e9f4481f5b5d4d25abb26727d7a6cb GIT binary patch literal 204614 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%0Dr}SNE}iu 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
').replace(/{bE}/g, '
').replace(/\*;/g, "•"); } export function replaceAll(lang, str, string, replacement) { let s = replaceBase(str[string]) diff --git a/src/modules/changelog/changelog.json b/src/modules/changelog/changelog.json index 1fc86d2..1394a63 100644 --- a/src/modules/changelog/changelog.json +++ b/src/modules/changelog/changelog.json @@ -1,15 +1,20 @@ { "current": { + "version": "4.7", + "title": "we're better together! thank you for bug reports.", + "banner": "bettertogether.webp", + "content": "this update includes a bunch of improvements, many of which were made thanks to the community :D\n\nservice-related improvements:\n*; private soundcloud links are now supported (#68);\n*; tiktok usernames with dots in them no longer confuse cobalt (#71);\n*; .ogg files no longer wrongfully include a video channel (#67);\n*; fixed an issue that caused cobalt to freak out when user attempted to download an audio from audio-only service with \"mute video\" option enabled.\n\nui improvements:\n*; all buttons are now of even size and are displayed without any padding issues across all modern browsers and devices;\n*; checkbox is no longer crippled on ios;\n*; many explanation texts have been simplified to get rid of unnecessary bloat (no bullshit, remember?);\n*; moved tiktok section in video settings higher due to higher priority.\n\nstability improvements:\n*; fixed a memory leak that was caused by misconfigured stream information caching (#63).\n\ninternal improvements:\n*; requested streams are now stored in cache for 2 minutes instead of 1000 hours (yes, 1000 hours, i fucked up);\n*; cached data is now reused if user requests same content within 2 minutes;\n*; page render module is now even cleaner than before;\n*; proper support for bullet-points in loc strings.\n\nyou can suggest features or report bugs either on github or twitter.\nboth work just fine, use whichever you're more comfortable with.\n\nthank you for using cobalt, and thank you for reading this changelog.\n\nyou're amazing, keep it up :)" + }, + "history": [{ "version": "4.6", "title": "mute videos and proper soundcloud support", "banner": "shutup.png", - "content": "i've been longing to implement both of these things, and here they finally are.\n\nservice-related improvements:\n
• you now can download videos with no audio! simply enable the \"mute audio\" option in settings > audio.\n• soundcloud module has been updated, and downloads should no longer break after some time.
\nvisual improvements:\n
• moved some things around in settings popup, and added separators where separation is needed.\n• updated some texts in english and russian.\n• version and commit hash have been joined together, now they're a single unit.
\ninternal improvements:\n
• updated api documentation to include isAudioMuted.\n• simplified the startup message.\n• created render elements for separator and explanation due to high duplication of them in the page.\n• fully deprecated GET method for API requests.\n• fixed some code quirks.
\nhere's how soundcloud downloads got fixed:\n\npreviously, client_id was (stupidly) hardcoded. that means cobalt wasn't able to fetch song data if soundcloud web app got updated.\nnow, cobalt tries to find the up-to-date client_id, caches it in memory, and checks if web app version has changed to update the id accordingly. you can see this change for yourself on github." - }, - "history": [{ + "content": "i've been longing to implement both of these things, and here they finally are.\n\nservice-related improvements:\n{bS}*; you now can download videos with no audio! simply enable the \"mute audio\" option in settings > audio.\n*; soundcloud module has been updated, and downloads should no longer break after some time.{bE}\nvisual improvements:\n{bS}*; moved some things around in settings popup, and added separators where separation is needed.\n*; updated some texts in english and russian.\n*; version and commit hash have been joined together, now they're a single unit.{bE}\ninternal improvements:\n{bS}*; updated api documentation to include isAudioMuted.\n*; simplified the startup message.\n*; created render elements for separator and explanation due to high duplication of them in the page.\n*; fully deprecated GET method for API requests.\n*; fixed some code quirks.{bE}\nhere's how soundcloud downloads got fixed:\n\npreviously, client_id was (stupidly) hardcoded. that means cobalt wasn't able to fetch song data if soundcloud web app got updated.\nnow, cobalt tries to find the up-to-date client_id, caches it in memory, and checks if web app version has changed to update the id accordingly. you can see this change for yourself on github." + }, { "version": "4.5", "title": "better, faster, stronger, stable", "banner": "meowthstrong.webp", - "content": "your favorite social media downloader just got even better! this update includes a ton of imporvements and fixes.\n\nin fact, there are so many changes, i had to split them in sections.\n\nservice-related improvements:\n
• vimeo module has been revamped, all sorts of videos should now be supported.\n• vimeo audio downloads! you now can download audios from more recent videos.\n• {appName} now supports all sorts of tumblr links. (even those scary ones from the mobile app)\n• vk clips support has been fixed. they rolled back the separation of videos and clips, so i had to do the same.\n• youtube videos with community warnings should now be possible to download.
\nuser interface improvements:\n
• list of supported services is now MUCH easier to read.\n• banners in changelog history should no longer overlap each other.\n• bullet points! they have a bit of extra padding, so it makes them stand out of the rest of text.
\ninternal improvements:\n
• cobalt will now match the link to regex when using ?u= query for autopasting it into input area.\n• better rate limiting: limiting now is done per minute, not per 20 minutes. this ensures less waiting and less attack area for request spammers.\n• moved to my own fork of ytdl-core, cause main project seems to have been abandoned. go check it out on github or npm!\n• ALL user inputs are now properly sanitized on the server. that includes variables for POST api method, too.\n• \"got\" package has been (mostly) replaced by native fetch api. this should greately reduce ram usage.\n• all unnecessary duplications of module imports have been gotten rid of. no more error passing strings from inside of service modules. you don't make mistakes only if you don't do anything, right?\n• other code optimizations. there's less clutter overall.
\nhuge update, right? seems like everything's fixed now?\n\nnope, one issue still persists: sometimes youtube server drops packets for an audio file while cobalt's rendering the video for you. this results in abrupt cuts of audio. if you want to help solving this issue, please feel free to do it on github!\n\nthank you for reading this, and thank you for sticking with cobalt and me." + "content": "your favorite social media downloader just got even better! this update includes a ton of imporvements and fixes.\n\nin fact, there are so many changes, i had to split them in sections.\n\nservice-related improvements:\n{bS}*; vimeo module has been revamped, all sorts of videos should now be supported.\n*; vimeo audio downloads! you now can download audios from more recent videos.\n*; {appName} now supports all sorts of tumblr links. (even those scary ones from the mobile app)\n*; vk clips support has been fixed. they rolled back the separation of videos and clips, so i had to do the same.\n*; youtube videos with community warnings should now be possible to download.{bE}\nuser interface improvements:\n{bS}*; list of supported services is now MUCH easier to read.\n*; banners in changelog history should no longer overlap each other.\n*; bullet points! they have a bit of extra padding, so it makes them stand out of the rest of text.{bE}\ninternal improvements:\n{bS}*; cobalt will now match the link to regex when using ?u= query for autopasting it into input area.\n*; better rate limiting: limiting now is done per minute, not per 20 minutes. this ensures less waiting and less attack area for request spammers.\n*; moved to my own fork of ytdl-core, cause main project seems to have been abandoned. go check it out on github or npm!\n*; ALL user inputs are now properly sanitized on the server. that includes variables for POST api method, too.\n*; \"got\" package has been (mostly) replaced by native fetch api. this should greately reduce ram usage.\n*; all unnecessary duplications of module imports have been gotten rid of. no more error passing strings from inside of service modules. you don't make mistakes only if you don't do anything, right?\n*; other code optimizations. there's less clutter overall.{bE}\nhuge update, right? seems like everything's fixed now?\n\nnope, one issue still persists: sometimes youtube server drops packets for an audio file while cobalt's rendering the video for you. this results in abrupt cuts of audio. if you want to help solving this issue, please feel free to do it on github!\n\nthank you for reading this, and thank you for sticking with cobalt and me." }, { "version": "4.4", "title": "over 1 million monthly requests. thank you.", diff --git a/src/modules/pageRender/page.js b/src/modules/pageRender/page.js index 938f3b0..3616cbc 100644 --- a/src/modules/pageRender/page.js +++ b/src/modules/pageRender/page.js @@ -27,11 +27,14 @@ for (let i in donations["crypto"]) { donate += `
${i} (REPLACEME)
${donations["crypto"][i]}
` extr = ' top-margin' } + export default function(obj) { - audioFormats[0]["text"] = loc(obj.lang, 'SettingsAudioFormatBest'); + const t = (str, replace) => { return loc(obj.lang, str, replace) }; let ua = obj.useragent.toLowerCase(); let isIOS = ua.match("iphone os"); let isMobile = ua.match("android") || ua.match("iphone os"); + audioFormats[0]["text"] = t('SettingsAudioFormatBest'); + try { return ` @@ -43,10 +46,10 @@ export default function(obj) { - + - + @@ -59,51 +62,51 @@ export default function(obj) { - + ${multiPagePopup({ name: "about", - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), + closeAria: t('AccessibilityClosePopup'), tabs: [{ name: "about", - title: `${emoji("🐲")} ${loc(obj.lang, 'AboutTab')}`, + title: `${emoji("🐲")} ${t('AboutTab')}`, content: popup({ name: "about", header: { aboveTitle: { - text: loc(obj.lang, 'MadeWithLove'), + text: t('MadeWithLove'), url: authorInfo.link }, - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), - title: loc(obj.lang, 'TitlePopupAbout') + closeAria: t('AccessibilityClosePopup'), + title: t('TitlePopupAbout') }, body: [{ - text: loc(obj.lang, 'AboutSummary') + text: t('AboutSummary') }, { - text: `${loc(obj.lang, 'AboutSupportedServices')}`, + text: `${t('AboutSupportedServices')}`, nopadding: true }, { text: `
${enabledServices}.
` }, { - text: obj.lang !== "ru" ? loc(obj.lang, 'FollowTwitter') : "", + text: obj.lang !== "ru" ? t('FollowTwitter') : "", classes: ["desc-padding"] }, { - text: backdropLink(repo, loc(obj.lang, 'LinkGitHubIssues')), + text: backdropLink(repo, t('LinkGitHubIssues')), classes: ["bottom-link"] }] }) }, { name: "changelog", - title: `${emoji("🎉")} ${loc(obj.lang, 'ChangelogTab')}`, + title: `${emoji("🎉")} ${t('ChangelogTab')}`, content: popup({ name: "changelog", header: { - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), - title: `${emoji("🪄", 30)} ${loc(obj.lang, 'TitlePopupChangelog')}` + closeAria: t('AccessibilityClosePopup'), + title: `${emoji("🪄", 30)} ${t('TitlePopupChangelog')}` }, body: [{ - text: `
${loc(obj.lang, 'ChangelogLastMajor')}
`, + text: `
${t('ChangelogLastMajor')}
`, raw: true }, { text: changelogManager("banner") ? `
`: '', @@ -121,48 +124,50 @@ export default function(obj) { }, { text: com[1] }, { - text: backdropLink(`${repo}/commits`, loc(obj.lang, 'LinkGitHubChanges')), + text: backdropLink(`${repo}/commits`, t('LinkGitHubChanges')), classes: ["bottom-link"] }, { - text: `
${loc(obj.lang, 'ChangelogOlder')}
`, + text: `
${t('ChangelogOlder')}
`, raw: true }, { - text: `
`, + text: `
`, raw: true }] }) }, { name: "donate", - title: `${emoji("💰")} ${loc(obj.lang, 'DonationsTab')}`, + title: `${emoji("💰")} ${t('DonationsTab')}`, content: popup({ name: "donate", header: { - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), - title: emoji("💸", 30) + loc(obj.lang, 'TitlePopupDonate'), - subtitle: loc(obj.lang, 'DonateSub') + closeAria: t('AccessibilityClosePopup'), + title: emoji("💸", 30) + t('TitlePopupDonate') }, body: [{ + text: `
${t('DonateSub')}
`, + raw: true + }, { text: `
`, raw: true - },{ - text: loc(obj.lang, 'DonateExplanation') }, { - text: donateLinks.replace(/REPLACEME/g, loc(obj.lang, 'DonateVia')), + text: t('DonateExplanation') + }, { + text: donateLinks.replace(/REPLACEME/g, t('DonateVia')), raw: true }, { - text: loc(obj.lang, 'DonateLinksDescription'), + text: t('DonateLinksDescription'), classes: ["explanation"] }, { text: sep(), raw: true }, { - text: donate.replace(/REPLACEME/g, loc(obj.lang, 'ClickToCopy')), + text: donate.replace(/REPLACEME/g, t('ClickToCopy')), classes: ["desc-padding"] }, { text: sep(), raw: true }, { - text: loc(obj.lang, 'DonateHireMe', authorInfo.link), + text: t('DonateHireMe', authorInfo.link), classes: ["desc-padding"] }] }) @@ -170,99 +175,100 @@ export default function(obj) { })} ${multiPagePopup({ name: "settings", - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), + closeAria: t('AccessibilityClosePopup'), header: { aboveTitle: { text: `v.${version}-${obj.hash}`, url: `${repo}/commit/${obj.hash}` }, - title: `${emoji("⚙️", 30)} ${loc(obj.lang, 'TitlePopupSettings')}` + title: `${emoji("⚙️", 30)} ${t('TitlePopupSettings')}` }, tabs: [{ name: "video", - title: `${emoji("🎬")} ${loc(obj.lang, 'SettingsVideoTab')}`, + title: `${emoji("🎬")} ${t('SettingsVideoTab')}`, content: settingsCategory({ name: "downloads", - title: loc(obj.lang, 'SettingsVideoGeneral'), + title: t('SettingsVideoGeneral'), body: switcher({ name: "vQuality", - subtitle: loc(obj.lang, 'SettingsQualitySubtitle'), - explanation: loc(obj.lang, 'SettingsQualityDescription'), + subtitle: t('SettingsQualitySubtitle'), + explanation: t('SettingsQualityDescription'), items: [{ "action": "max", - "text": `${loc(obj.lang, 'SettingsQualitySwitchMax')}
(2160p+)` + "text": `${t('SettingsQualitySwitchMax')}
(2160p+)` }, { "action": "hig", - "text": `${loc(obj.lang, 'SettingsQualitySwitchHigh')}
(${quality.hig}p)` + "text": `${t('SettingsQualitySwitchHigh')}
(${quality.hig}p)` }, { "action": "mid", - "text": `${loc(obj.lang, 'SettingsQualitySwitchMedium')}
(${quality.mid}p)` + "text": `${t('SettingsQualitySwitchMedium')}
(${quality.mid}p)` }, { "action": "low", - "text": `${loc(obj.lang, 'SettingsQualitySwitchLow')}
(${quality.low}p)` + "text": `${t('SettingsQualitySwitchLow')}
(${quality.low}p)` }] }) - }) + settingsCategory({ - name: "youtube", - body: switcher({ - name: "vFormat", - subtitle: loc(obj.lang, 'SettingsFormatSubtitle'), - explanation: loc(obj.lang, 'SettingsFormatDescription'), - items: [{ - "action": "mp4", - "text": "mp4 (av1)" - }, { - "action": "webm", - "text": "webm (vp9)" - }] - }) - }) - + settingsCategory({ - name: "tiktok", - title: "tiktok & douyin", - body: checkbox("disableTikTokWatermark", loc(obj.lang, 'SettingsRemoveWatermark')) + }) + + settingsCategory({ + name: "tiktok", + title: "tiktok & douyin", + body: checkbox("disableTikTokWatermark", t('SettingsRemoveWatermark')) + }) + + settingsCategory({ + name: "youtube", + body: switcher({ + name: "vFormat", + subtitle: t('SettingsFormatSubtitle'), + explanation: t('SettingsFormatDescription'), + items: [{ + "action": "mp4", + "text": "mp4 (av1)" + }, { + "action": "webm", + "text": "webm (vp9)" + }] }) + }) }, { name: "audio", - title: `${emoji("🎶")} ${loc(obj.lang, 'SettingsAudioTab')}`, + title: `${emoji("🎶")} ${t('SettingsAudioTab')}`, content: settingsCategory({ name: "general", - title: loc(obj.lang, 'SettingsAudioTab'), + title: t('SettingsAudioTab'), body: switcher({ name: "aFormat", - subtitle: loc(obj.lang, 'SettingsFormatSubtitle'), - explanation: loc(obj.lang, 'SettingsAudioFormatDescription'), + subtitle: t('SettingsFormatSubtitle'), + explanation: t('SettingsAudioFormatDescription'), items: audioFormats - }) + sep(0) + checkbox("muteAudio", loc(obj.lang, 'SettingsVideoMute'), loc(obj.lang, 'SettingsVideoMute'), 3) + explanation(loc(obj.lang, 'SettingsVideoMuteExplanation')) + }) + sep(0) + checkbox("muteAudio", t('SettingsVideoMute'), t('SettingsVideoMute'), 3) + explanation(t('SettingsVideoMuteExplanation')) }) + settingsCategory({ name: "tiktok", title: "tiktok & douyin", - body: checkbox("fullTikTokAudio", loc(obj.lang, 'SettingsAudioFullTikTok'), loc(obj.lang, 'SettingsAudioFullTikTok'), 3) + `
${loc(obj.lang, 'SettingsAudioFullTikTokDescription')}
` + body: checkbox("fullTikTokAudio", t('SettingsAudioFullTikTok'), t('SettingsAudioFullTikTok'), 3) + `
${t('SettingsAudioFullTikTokDescription')}
` }) }, { name: "other", - title: `${emoji("🪅")} ${loc(obj.lang, 'SettingsOtherTab')}`, + title: `${emoji("🪅")} ${t('SettingsOtherTab')}`, content: settingsCategory({ name: "appearance", - title: loc(obj.lang, 'SettingsAppearanceSubtitle'), + title: t('SettingsAppearanceSubtitle'), body: switcher({ name: "theme", - subtitle: loc(obj.lang, 'SettingsThemeSubtitle'), + subtitle: t('SettingsThemeSubtitle'), items: [{ "action": "auto", - "text": loc(obj.lang, 'SettingsThemeAuto') + "text": t('SettingsThemeAuto') }, { "action": "dark", - "text": loc(obj.lang, 'SettingsThemeDark') + "text": t('SettingsThemeDark') }, { "action": "light", - "text": loc(obj.lang, 'SettingsThemeLight') + "text": t('SettingsThemeLight') }] - }) + checkbox("alwaysVisibleButton", loc(obj.lang, 'SettingsKeepDownloadButton'), loc(obj.lang, 'AccessibilityKeepDownloadButton'), 2) + }) + checkbox("alwaysVisibleButton", t('SettingsKeepDownloadButton'), t('AccessibilityKeepDownloadButton'), 2) }) + settingsCategory({ name: "miscellaneous", - title: loc(obj.lang, 'Miscellaneous'), - body: checkbox("disableChangelog", loc(obj.lang, 'SettingsDisableNotifications')) + `${!isIOS ? checkbox("downloadPopup", loc(obj.lang, 'SettingsEnableDownloadPopup'), loc(obj.lang, 'AccessibilityEnableDownloadPopup'), 1) : ''}` + title: t('Miscellaneous'), + body: checkbox("disableChangelog", t('SettingsDisableNotifications')) + `${!isIOS ? checkbox("downloadPopup", t('SettingsEnableDownloadPopup'), t('AccessibilityEnableDownloadPopup'), 1) : ''}` }) }], })} @@ -270,25 +276,25 @@ export default function(obj) { name: "download", standalone: true, header: { - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), - subtitle: loc(obj.lang, 'TitlePopupDownload') + closeAria: t('AccessibilityClosePopup'), + subtitle: t('TitlePopupDownload') }, body: switcher({ name: "download", - subtitle: loc(obj.lang, 'DownloadPopupWayToSave'), - explanation: `${!isIOS ? loc(obj.lang, 'DownloadPopupDescription') : loc(obj.lang, 'DownloadPopupDescriptionIOS')}`, - items: `${loc(obj.lang, 'Download')} -
${loc(obj.lang, 'CopyURL')}
` + subtitle: t('DownloadPopupWayToSave'), + explanation: `${!isIOS ? t('DownloadPopupDescription') : t('DownloadPopupDescriptionIOS')}`, + items: `${t('Download')} +
${t('CopyURL')}
` }) })} ${popupWithBottomButtons({ name: "picker", - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), + closeAria: t('AccessibilityClosePopup'), header: { title: `
`, explanation: `
`, }, - buttons: [`${loc(obj.lang, 'ImagePickerDownloadAudio')}`], + buttons: [`${t('ImagePickerDownloadAudio')}`], content: '
' })} ${popup({ @@ -297,10 +303,10 @@ export default function(obj) { buttonOnly: true, emoji: emoji("☹️", 48, 1), classes: ["small"], - buttonText: loc(obj.lang, 'ErrorPopupCloseButton'), + buttonText: t('ErrorPopupCloseButton'), header: { - closeAria: loc(obj.lang, 'AccessibilityClosePopup'), - title: loc(obj.lang, 'TitlePopupError') + closeAria: t('AccessibilityClosePopup'), + title: t('TitlePopupError') }, body: `
` })} @@ -309,13 +315,13 @@ export default function(obj) {
${appName}
- + - +
- - + +
@@ -324,38 +330,37 @@ export default function(obj) { footerButtons([{ name: "about", type: "popup", - text: `${emoji(celebrationsEmoji() , 22)} ${loc(obj.lang, 'AboutTab')}`, - aria: loc(obj.lang, 'AccessibilityOpenAbout') + text: `${emoji(celebrationsEmoji() , 22)} ${t('AboutTab')}`, + aria: t('AccessibilityOpenAbout') }, { name: "about", type: "popup", context: "donate", - text: `${emoji("💰", 22)} ${loc(obj.lang, 'Donate')}`, - aria: loc(obj.lang, 'AccessibilityOpenDonate') + text: `${emoji("💰", 22)} ${t('Donate')}`, + aria: t('AccessibilityOpenDonate') }, { name: "settings", type: "popup", - text: `${emoji("⚙️", 22)} ${loc(obj.lang, 'TitlePopupSettings')}`, - aria: loc(obj.lang, 'AccessibilityOpenSettings') - }] - )} + text: `${emoji("⚙️", 22)} ${t('TitlePopupSettings')}`, + aria: t('AccessibilityOpenSettings') + }])} `; } catch (err) { - return `${loc(obj.lang, 'ErrorPageRenderFail', obj.hash)}`; + return `${t('ErrorPageRenderFail', obj.hash)}`; } } diff --git a/src/modules/processing/match.js b/src/modules/processing/match.js index b840df1..ff150b8 100644 --- a/src/modules/processing/match.js +++ b/src/modules/processing/match.js @@ -81,7 +81,7 @@ export default async function (host, patternMatch, url, lang, obj) { noWatermark: obj.isNoTTWatermark, fullAudio: obj.isTTFullAudio, isAudioOnly: obj.isAudioOnly }); - if (r.isAudioOnly) obj.isAudioOnly = true + if (r.isAudioOnly) obj.isAudioOnly = true; break; case "tumblr": r = await tumblr({ @@ -100,6 +100,7 @@ export default async function (host, patternMatch, url, lang, obj) { r = await soundcloud({ author: patternMatch["author"], song: patternMatch["song"], url: url, shortLink: patternMatch["shortLink"] ? patternMatch["shortLink"] : false, + accessKey: patternMatch["accessKey"] ? patternMatch["accessKey"] : false, format: obj.aFormat, lang: lang }); diff --git a/src/modules/processing/matchActionDecider.js b/src/modules/processing/matchActionDecider.js index 2de3ed2..a8070cd 100644 --- a/src/modules/processing/matchActionDecider.js +++ b/src/modules/processing/matchActionDecider.js @@ -51,7 +51,7 @@ export default function(r, host, ip, audioFormat, isAudioOnly, lang, isAudioMute return apiJSON(1, { u: r.urls }); } } - } else if (isAudioMuted) { + } else if (isAudioMuted && !isAudioOnly) { let isSplit = Array.isArray(r.urls); return apiJSON(2, { type: isSplit ? "bridge" : "mute", @@ -81,13 +81,13 @@ export default function(r, host, ip, audioFormat, isAudioOnly, lang, isAudioMute picker: r.picker, service: host }) } - } else { + } else if (isAudioOnly) { if ((host === "reddit" && r.typeId === 1) || (host === "vimeo" && !r.filename) || audioIgnore.includes(host)) return apiJSON(0, { t: loc(lang, 'ErrorEmptyDownload') }); let type = "render"; let copy = false; if (!supportedAudio.includes(audioFormat)) audioFormat = "best"; - if ((host == "tiktok" || host == "douyin") && isAudioOnly && services.tiktok.audioFormats.includes(audioFormat)) { + if ((host == "tiktok" || host == "douyin") && services.tiktok.audioFormats.includes(audioFormat)) { if (r.isMp3) { if (audioFormat === "mp3" || audioFormat === "best") { audioFormat = "mp3" @@ -115,5 +115,7 @@ export default function(r, host, ip, audioFormat, isAudioOnly, lang, isAudioMute filename: r.audioFilename, isAudioOnly: true, audioFormat: audioFormat, copy: copy, fileMetadata: r.fileMetadata ? r.fileMetadata : false }) + } else { + return apiJSON(0, { t: loc(lang, 'ErrorSomethingWentWrong') }); } } diff --git a/src/modules/processing/servicesConfig.json b/src/modules/processing/servicesConfig.json index 5535025..49380fd 100644 --- a/src/modules/processing/servicesConfig.json +++ b/src/modules/processing/servicesConfig.json @@ -84,7 +84,7 @@ "enabled": true }, "soundcloud": { - "patterns": [":author/:song", ":shortLink"], + "patterns": [":author/:song/s-:accessKey", ":author/:song", ":shortLink"], "bestAudio": "none", "enabled": true } diff --git a/src/modules/services/soundcloud.js b/src/modules/services/soundcloud.js index ee9392f..af26a92 100644 --- a/src/modules/services/soundcloud.js +++ b/src/modules/services/soundcloud.js @@ -44,7 +44,7 @@ export default async function(obj) { }).then((r) => {return r.text()}).catch(() => {return false}); } if (obj.author && obj.song) { - html = await fetch(`https://soundcloud.com/${obj.author}/${obj.song}`, { + html = await fetch(`https://soundcloud.com/${obj.author}/${obj.song}${obj.accessKey ? `/s-${obj.accessKey}` : ''}`, { headers: {"user-agent": genericUserAgent} }).then((r) => {return r.text()}).catch(() => {return false}); } @@ -54,7 +54,8 @@ export default async function(obj) { if (json["media"]["transcodings"]) { let clientId = await findClientID(); if (clientId) { - let fileUrl = `${json.media.transcodings[0]["url"].replace("/hls", "/progressive")}?client_id=${clientId}&track_authorization=${json.track_authorization}`; + let fileUrlBase = json.media.transcodings[0]["url"].replace("/hls", "/progressive") + let fileUrl = `${fileUrlBase}${fileUrlBase.includes("?") ? "&" : "?"}client_id=${clientId}&track_authorization=${json.track_authorization}`; if (fileUrl.substring(0, 54) === "https://api-v2.soundcloud.com/media/soundcloud:tracks:") { if (json.duration < maxAudioDuration) { let file = await fetch(fileUrl).then(async (r) => {return (await r.json()).url}).catch(() => {return false}); diff --git a/src/modules/stream/manage.js b/src/modules/stream/manage.js index 6c06b3a..dcfb12f 100644 --- a/src/modules/stream/manage.js +++ b/src/modules/stream/manage.js @@ -1,40 +1,50 @@ import NodeCache from "node-cache"; -import { UUID, encrypt } from "../sub/crypto.js"; +import { sha256 } from "../sub/crypto.js"; import { streamLifespan } from "../config.js"; -const streamCache = new NodeCache({ stdTTL: streamLifespan, checkperiod: 120 }); +const streamCache = new NodeCache({ stdTTL: streamLifespan/1000, checkperiod: 10, deleteOnExpire: true }); const salt = process.env.streamSalt; -export function createStream(obj) { - let streamUUID = UUID(), - exp = Math.floor(new Date().getTime()) + streamLifespan, - ghmac = encrypt(`${streamUUID},${obj.service},${obj.ip},${exp}`, salt) +streamCache.on("expired", (key) => { + streamCache.del(key); +}); - streamCache.set(streamUUID, { - id: streamUUID, - service: obj.service, - type: obj.type, - urls: obj.u, - filename: obj.filename, - hmac: ghmac, - ip: obj.ip, - exp: exp, - isAudioOnly: !!obj.isAudioOnly, - audioFormat: obj.audioFormat, - time: obj.time ? obj.time : false, - copy: obj.copy ? true : false, - mute: obj.mute ? true : false, - metadata: obj.fileMetadata ? obj.fileMetadata : false - }); - return `${process.env.selfURL}api/stream?t=${streamUUID}&e=${exp}&h=${ghmac}`; +export function createStream(obj) { + let streamID = sha256(`${obj.ip},${obj.service},${obj.filename},${obj.audioFormat},${obj.mute}`, salt), + exp = Math.floor(new Date().getTime()) + streamLifespan, + ghmac = sha256(`${streamID},${obj.service},${obj.ip},${exp}`, salt); + + if (!streamCache.has(streamID)) { + streamCache.set(streamID, { + id: streamID, + service: obj.service, + type: obj.type, + urls: obj.u, + filename: obj.filename, + hmac: ghmac, + ip: obj.ip, + exp: exp, + isAudioOnly: !!obj.isAudioOnly, + audioFormat: obj.audioFormat, + time: obj.time ? obj.time : false, + copy: !!obj.copy, + mute: !!obj.mute, + metadata: obj.fileMetadata ? obj.fileMetadata : false + }); + } else { + let streamInfo = streamCache.get(streamID); + exp = streamInfo.exp; + ghmac = streamInfo.hmac; + } + return `${process.env.selfURL}api/stream?t=${streamID}&e=${exp}&h=${ghmac}`; } export function verifyStream(ip, id, hmac, exp) { try { let streamInfo = streamCache.get(id); if (streamInfo) { - let ghmac = encrypt(`${id},${streamInfo.service},${ip},${exp}`, salt); + let ghmac = sha256(`${id},${streamInfo.service},${ip},${exp}`, salt); if (hmac == ghmac && ip == streamInfo.ip && ghmac == streamInfo.hmac && exp > Math.floor(new Date().getTime()) && exp == streamInfo.exp) { return streamInfo; } else { diff --git a/src/modules/sub/crypto.js b/src/modules/sub/crypto.js index a34d5a6..e8bf2f9 100644 --- a/src/modules/sub/crypto.js +++ b/src/modules/sub/crypto.js @@ -1,8 +1,5 @@ -import { createHmac, randomUUID } from "crypto"; +import { createHmac } from "crypto"; -export function encrypt(str, salt) { +export function sha256(str, salt) { return createHmac("sha256", salt).update(str).digest("hex"); } -export function UUID() { - return randomUUID(); -} diff --git a/src/modules/sub/utils.js b/src/modules/sub/utils.js index adf85ba..6c65f5f 100644 --- a/src/modules/sub/utils.js +++ b/src/modules/sub/utils.js @@ -62,7 +62,18 @@ export function msToTime(d) { return r; } export function cleanURL(url, host) { - let forbiddenChars = ['}', '{', '(', ')', '\\', '@', '%', '>', '<', '^', '*', '!', '~', ';', ':', ',', '`', '[', ']', '#', '$', '"', "'"] + let forbiddenChars = ['}', '{', '(', ')', '\\', '%', '>', '<', '^', '*', '!', '~', ';', ':', ',', '`', '[', ']', '#', '$', '"', "'", "@"] + switch(host) { + case "youtube": + url = url.split('&')[0]; + break; + case "tiktok": + url = url.replace(/@([a-zA-Z]+(\.[a-zA-Z]+)+)/, "@a") + default: + url = url.split('?')[0]; + if (url.substring(url.length - 1) === "/") url = url.substring(0, url.length - 1); + break; + } for (let i in forbiddenChars) { url = url.replaceAll(forbiddenChars[i], '') } @@ -70,14 +81,6 @@ export function cleanURL(url, host) { if (url.includes('youtube.com/shorts/')) { url = url.split('?')[0].replace('shorts/', 'watch?v='); } - if (host === "youtube") { - url = url.split('&')[0]; - } else { - url = url.split('?')[0]; - if (url.substring(url.length - 1) === "/") { - url = url.substring(0, url.length - 1); - } - } return url.slice(0, 128) } export function languageCode(req) {

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 M1)RP68zw*i0DOn!i2wiq literal 0 HcmV?d00001 diff --git a/src/localization/languages/en.json b/src/localization/languages/en.json index c364fc4..57a8a2d 100644 --- a/src/localization/languages/en.json +++ b/src/localization/languages/en.json @@ -52,11 +52,11 @@ "SettingsEnableDownloadPopup": "ask for a way to save", "AccessibilityEnableDownloadPopup": "ask what to do with downloads", "SettingsFormatDescription": "select webm if you want max quality available. webm videos are usually higher bitrate, but ios devices can't play them natively.", - "SettingsQualityDescription": "if selected quality isn't available, closest one gets picked instead.\nif you want to post a youtube video on social media, then select a combination of mp4 and 720p. those videos are usually not in av1 codec, so they should play just fine basically everywhere.", + "SettingsQualityDescription": "if selected quality isn't available, closest one gets picked instead.\nif you want to post a youtube video on social media, select a combination of mp4 and 720p.", "LinkGitHubIssues": ">> report issues and check out the source code on github", "LinkGitHubChanges": ">> see previous commits and contribute on github", "NoScriptMessage": "{appName} uses javascript for api requests and interactive interface. you have to allow javascript to use this site. i don't have any ads or trackers, pinky promise.", - "DownloadPopupDescriptionIOS": "on ios devices, you have to press and hold the download button, hide the video preview, and then select \"download linked file\" in appeared popup to save the video. this will be required for as long as apple forces safari webview upon all browser developers on ios.", + "DownloadPopupDescriptionIOS": "press and hold the download button, hide the video preview, and then select \"download linked file\" to save.", "DownloadPopupDescription": "download button opens a new tab with requested file. you can disable this popup in settings.", "DownloadPopupWayToSave": "pick a way to save", "ClickToCopy": "press to copy", @@ -72,7 +72,7 @@ "AccessibilityModeToggle": "toggle download mode", "DonateLinksDescription": "donation links open in a new tab. this is the best way to donate if you want me to receive your donation directly.", "SettingsAudioFormatBest": "best", - "SettingsAudioFormatDescription": "when best format is selected, you get audio in best quality available, because audio is kept in its original format. if you select anything other than that, you'll get a slightly compressed file.", + "SettingsAudioFormatDescription": "when best format is selected, you get audio in best quality available, because it's not re-encoded. everything else will be re-encoded.", "Keyphrase": "save what you love", "SettingsRemoveWatermark": "disable watermark", "ErrorPopupCloseButton": "got it", @@ -101,14 +101,14 @@ "MediaPickerExplanationPhoneIOS": "press and hold, hide the preview, and then select \"download linked file\" to save.", "TwitterSpaceWasntRecorded": "this twitter space wasn't recorded, so there's nothing to download. try another one!", "ErrorCantProcess": "i couldn't process your request :(\nyou can try again, but if issue persists, please {ContactLink}.", - "ChangelogPressToHide": "press to hide", + "ChangelogPressToHide": "press to collapse", "Donate": "donate", "DonateSub": "help me keep it up", "DonateExplanation": "{appName} does not (and will never) serve ads or sell your data, therefore it's completely free to use. but hey! turns out keeping up a web service used by hundreds of thousands of people is somewhat costly.\n\nif you ever found {appName} useful and want to keep it online, or simply want to thank the developer, consider chipping in! each and every cent helps and is VERY appreciated.", "DonateVia": "donate via", "DonateHireMe": "or, as an alternative, you can hire me.", "SettingsVideoMute": "mute audio", - "SettingsVideoMuteExplanation": "disables audio in downloaded video when possible. you'll get the source video file if video and audio channels are served in two files by the origin service. ignored when audio mode is on or service only supports audio.", + "SettingsVideoMuteExplanation": "disables audio in downloaded video when possible. ignored when audio mode is on or service only supports audio.", "SettingsVideoGeneral": "general", "ErrorSoundCloudNoClientId": "couldn't find client_id that is required to fetch audio data from soundcloud. try again, and if issue persists, {ContactLink}." } diff --git a/src/localization/languages/ru.json b/src/localization/languages/ru.json index 8c76ae2..b6816d1 100644 --- a/src/localization/languages/ru.json +++ b/src/localization/languages/ru.json @@ -52,11 +52,11 @@ "SettingsEnableDownloadPopup": "спрашивать, что делать при скачивании", "AccessibilityEnableDownloadPopup": "спрашивать, что делать с загрузками", "SettingsFormatDescription": "выбирай webm, если хочешь максимальное качество. у webm видео битрейт обычно выше, но устройства на ios не могут проигрывать их без сторонних приложений.", - "SettingsQualityDescription": "если выбранное качество недоступно, то выбирается ближайшее к нему.\nесли ты хочешь опубликовать видео с youtube где-то в соц. сетях, то выбирай комбинацию из mp4 и 720p. у таких видео кодек обычно не av1, поэтому они должны работать практически везде.", + "SettingsQualityDescription": "если выбранное качество недоступно, то выбирается ближайшее к нему.\nесли ты хочешь опубликовать видео с youtube где-то в соц. сетях, то выбирай комбинацию из mp4 и 720p.", "LinkGitHubIssues": ">> сообщай о проблемах и смотри исходный код на github", "LinkGitHubChanges": ">> смотри предыдущие изменения на github", "NoScriptMessage": "{appName} использует javascript для обработки ссылок и интерактивного интерфейса. ты должен разрешить использование javascript, чтобы пользоваться сайтом. тут нет никаких трекеров или рекламы, обещаю.", - "DownloadPopupDescriptionIOS": "так как у тебя устройство на ios, тебе нужно зажать кнопку \"скачать\", затем скрыть превью видео и выбрать \"загрузить файл по ссылке\" в появившемся окне.", + "DownloadPopupDescriptionIOS": "зажми кнопку \"скачать\", затем скрой превью видео и выбери \"загрузить файл по ссылке\" в появившемся окне.", "DownloadPopupDescription": "кнопка скачивания открывает новое окно с файлом. ты можешь отключить выбор метода сохранения файла в настройках.", "DownloadPopupWayToSave": "выбери, как сохранить", "ClickToCopy": "нажми, чтобы скопировать", @@ -72,7 +72,7 @@ "AccessibilityModeToggle": "переключить режим скачивания", "DonateLinksDescription": "ссылки на донаты открываются в новой вкладке. это наилучший способ отправить донат, если ты хочешь, чтобы я получил его напрямую.", "SettingsAudioFormatBest": "лучший", - "SettingsAudioFormatDescription": "когда выбран \"лучший\" формат, ты получишь аудио максимально возможного качества, так как оно останется в оригинальном формате. если же выбрано что-то другое, то аудио будет немного сжато.", + "SettingsAudioFormatDescription": "когда выбран \"лучший\" формат, ты получишь аудио лучшего качества, так как оно не будет сконвертировано. если же выбрано что-то другое, то аудио будет немного сжато.", "Keyphrase": "сохраняй то, что любишь", "SettingsRemoveWatermark": "убрать ватермарку", "ErrorPopupCloseButton": "ясно", @@ -108,7 +108,7 @@ "DonateVia": "открыть", "DonateHireMe": "или же ты можешь пригласить меня на работу.", "SettingsVideoMute": "отключить аудио", - "SettingsVideoMuteExplanation": "убирает аудио при загрузке видео, когда это возможно. ты получишь исходное видео напрямую от сервиса, если видео и аудио каналы разбиты по файлам. игнорируется если включен режим аудио или сервис поддерживает только аудио загрузки.", + "SettingsVideoMuteExplanation": "убирает аудио при загрузке видео, когда это возможно. игнорируется если включен режим аудио или сервис поддерживает только аудио загрузки.", "SettingsVideoGeneral": "основные", "ErrorSoundCloudNoClientId": "мне не удалось достать client_id, который необходим для получения аудио из soundcloud. попробуй ещё раз, но если так и не получится, {ContactLink}." } diff --git a/src/localization/manager.js b/src/localization/manager.js index 497c1bc..2db0774 100644 --- a/src/localization/manager.js +++ b/src/localization/manager.js @@ -15,7 +15,7 @@ export function loadLoc() { } loadLoc(); export function replaceBase(s) { - return s.replace(/\n/g, '
').replace(/{appName}/g, appName).replace(/{repo}/g, repo)// .replace(/{discord}/g, socials.discord) + return s.replace(/\n/g, '
').replace(/{appName}/g, appName).replace(/{repo}/g, repo).replace(/{bS}/g, '