From eede972ace0583cfb47c1cf0cf71c23228fb7783 Mon Sep 17 00:00:00 2001 From: wukko Date: Fri, 2 Aug 2024 21:23:56 +0600 Subject: [PATCH] api: remove old frontend files --- api/src/core/web.js | 97 -- api/src/front/assets/meowbalt/error.png | Bin 15420 -> 0 bytes api/src/front/assets/meowbalt/question.png | Bin 21198 -> 0 bytes api/src/front/cobalt.css | 1265 ----------------- api/src/front/cobalt.js | 708 --------- api/src/front/emoji/3d/film_frames.png | Bin 8720 -> 0 bytes api/src/front/emoji/3d/headphone.png | Bin 11316 -> 0 bytes api/src/front/emoji/abacus.svg | 8 - api/src/front/emoji/alien_monster.svg | 9 - api/src/front/emoji/biceps.svg | 7 - api/src/front/emoji/bird.svg | 6 - api/src/front/emoji/boring_document.svg | 8 - api/src/front/emoji/bubbles.svg | 30 - api/src/front/emoji/cake.svg | 11 - api/src/front/emoji/candle.svg | 7 - api/src/front/emoji/cat.svg | 13 - api/src/front/emoji/cat_crying.svg | 14 - api/src/front/emoji/cat_flabbergasted.svg | 21 - api/src/front/emoji/cat_grin.svg | 13 - api/src/front/emoji/cat_smile.svg | 13 - api/src/front/emoji/christmas_tree.svg | 11 - api/src/front/emoji/clapper_board.svg | 13 - api/src/front/emoji/clipboard.svg | 11 - api/src/front/emoji/crystal_ball.svg | 7 - api/src/front/emoji/dog.svg | 11 - api/src/front/emoji/dragon_face.svg | 11 - api/src/front/emoji/dragon_face_wukko.svg | 11 - api/src/front/emoji/elephant.svg | 8 - api/src/front/emoji/email.svg | 9 - api/src/front/emoji/film_frames.svg | 4 - api/src/front/emoji/gear.svg | 5 - api/src/front/emoji/headphone.svg | 7 - api/src/front/emoji/keyboard.svg | 4 - api/src/front/emoji/link.svg | 4 - api/src/front/emoji/locked.svg | 5 - api/src/front/emoji/loudspeaker.svg | 6 - api/src/front/emoji/magic_wand.svg | 5 - api/src/front/emoji/magnifying_glass.svg | 5 - api/src/front/emoji/mailbox.svg | 12 - api/src/front/emoji/mending_heart.svg | 5 - api/src/front/emoji/money_with_wings.svg | 12 - api/src/front/emoji/musical_notes.svg | 5 - api/src/front/emoji/newspaper.svg | 5 - api/src/front/emoji/octopus.svg | 12 - api/src/front/emoji/party_popper.svg | 15 - api/src/front/emoji/pinata.svg | 16 - api/src/front/emoji/pumpkin.svg | 7 - api/src/front/emoji/question_mark.svg | 4 - api/src/front/emoji/sparkles.svg | 5 - api/src/front/emoji/sparkling_heart.svg | 5 - api/src/front/emoji/wrench.svg | 3 - .../front/fonts/files/notosansmono_3dVQ.woff2 | Bin 9292 -> 0 bytes .../fonts/files/notosansmono_7dVXQQ.woff2 | Bin 5912 -> 0 bytes .../fonts/files/notosansmono_DdVXQQ.woff2 | Bin 17708 -> 0 bytes .../fonts/files/notosansmono_HdVXQQ.woff2 | Bin 4460 -> 0 bytes .../fonts/files/notosansmono_LdVXQQ.woff2 | Bin 2592 -> 0 bytes .../fonts/files/notosansmono_PdVXQQ.woff2 | Bin 26380 -> 0 bytes .../fonts/files/notosansmono_ndVXQQ.woff2 | Bin 5272 -> 0 bytes api/src/front/fonts/notosansmono.css | 1 - .../front/icons/android-chrome-192x192.png | Bin 3580 -> 0 bytes .../front/icons/android-chrome-512x512.png | Bin 9818 -> 0 bytes api/src/front/icons/apple-touch-icon.png | Bin 3278 -> 0 bytes api/src/front/icons/favicon-16x16.png | Bin 215 -> 0 bytes api/src/front/icons/favicon-32x32.png | Bin 365 -> 0 bytes api/src/front/icons/favicon.ico | Bin 9662 -> 0 bytes api/src/front/icons/generic.png | Bin 9818 -> 0 bytes api/src/front/icons/maskable/128.png | Bin 815 -> 0 bytes api/src/front/icons/maskable/192.png | Bin 1014 -> 0 bytes api/src/front/icons/maskable/384.png | Bin 1856 -> 0 bytes api/src/front/icons/maskable/48.png | Bin 390 -> 0 bytes api/src/front/icons/maskable/512.png | Bin 2828 -> 0 bytes api/src/front/icons/maskable/72.png | Bin 569 -> 0 bytes api/src/front/icons/maskable/96.png | Bin 617 -> 0 bytes api/src/front/icons/pattern.png | Bin 91509 -> 0 bytes api/src/front/manifest.webmanifest | 75 - api/src/front/robots.txt | 8 - api/src/front/sponsors/royale.svg | 1 - api/src/modules/build.js | 41 - api/src/modules/buildStatic.js | 7 - api/src/modules/changelog/changelogManager.js | 46 - api/src/modules/emoji.js | 66 - api/src/modules/pageRender/elements.js | 270 ---- api/src/modules/pageRender/findRendered.js | 6 - api/src/modules/pageRender/onDemand.js | 33 - api/src/modules/pageRender/page.js | 666 --------- 85 files changed, 3693 deletions(-) delete mode 100644 api/src/core/web.js delete mode 100644 api/src/front/assets/meowbalt/error.png delete mode 100644 api/src/front/assets/meowbalt/question.png delete mode 100644 api/src/front/cobalt.css delete mode 100644 api/src/front/cobalt.js delete mode 100644 api/src/front/emoji/3d/film_frames.png delete mode 100644 api/src/front/emoji/3d/headphone.png delete mode 100644 api/src/front/emoji/abacus.svg delete mode 100644 api/src/front/emoji/alien_monster.svg delete mode 100644 api/src/front/emoji/biceps.svg delete mode 100644 api/src/front/emoji/bird.svg delete mode 100644 api/src/front/emoji/boring_document.svg delete mode 100644 api/src/front/emoji/bubbles.svg delete mode 100644 api/src/front/emoji/cake.svg delete mode 100644 api/src/front/emoji/candle.svg delete mode 100644 api/src/front/emoji/cat.svg delete mode 100644 api/src/front/emoji/cat_crying.svg delete mode 100644 api/src/front/emoji/cat_flabbergasted.svg delete mode 100644 api/src/front/emoji/cat_grin.svg delete mode 100644 api/src/front/emoji/cat_smile.svg delete mode 100644 api/src/front/emoji/christmas_tree.svg delete mode 100644 api/src/front/emoji/clapper_board.svg delete mode 100644 api/src/front/emoji/clipboard.svg delete mode 100644 api/src/front/emoji/crystal_ball.svg delete mode 100644 api/src/front/emoji/dog.svg delete mode 100644 api/src/front/emoji/dragon_face.svg delete mode 100644 api/src/front/emoji/dragon_face_wukko.svg delete mode 100644 api/src/front/emoji/elephant.svg delete mode 100644 api/src/front/emoji/email.svg delete mode 100644 api/src/front/emoji/film_frames.svg delete mode 100644 api/src/front/emoji/gear.svg delete mode 100644 api/src/front/emoji/headphone.svg delete mode 100644 api/src/front/emoji/keyboard.svg delete mode 100644 api/src/front/emoji/link.svg delete mode 100644 api/src/front/emoji/locked.svg delete mode 100644 api/src/front/emoji/loudspeaker.svg delete mode 100644 api/src/front/emoji/magic_wand.svg delete mode 100644 api/src/front/emoji/magnifying_glass.svg delete mode 100644 api/src/front/emoji/mailbox.svg delete mode 100644 api/src/front/emoji/mending_heart.svg delete mode 100644 api/src/front/emoji/money_with_wings.svg delete mode 100644 api/src/front/emoji/musical_notes.svg delete mode 100644 api/src/front/emoji/newspaper.svg delete mode 100644 api/src/front/emoji/octopus.svg delete mode 100644 api/src/front/emoji/party_popper.svg delete mode 100644 api/src/front/emoji/pinata.svg delete mode 100644 api/src/front/emoji/pumpkin.svg delete mode 100644 api/src/front/emoji/question_mark.svg delete mode 100644 api/src/front/emoji/sparkles.svg delete mode 100644 api/src/front/emoji/sparkling_heart.svg delete mode 100644 api/src/front/emoji/wrench.svg delete mode 100644 api/src/front/fonts/files/notosansmono_3dVQ.woff2 delete mode 100644 api/src/front/fonts/files/notosansmono_7dVXQQ.woff2 delete mode 100644 api/src/front/fonts/files/notosansmono_DdVXQQ.woff2 delete mode 100644 api/src/front/fonts/files/notosansmono_HdVXQQ.woff2 delete mode 100644 api/src/front/fonts/files/notosansmono_LdVXQQ.woff2 delete mode 100644 api/src/front/fonts/files/notosansmono_PdVXQQ.woff2 delete mode 100644 api/src/front/fonts/files/notosansmono_ndVXQQ.woff2 delete mode 100644 api/src/front/fonts/notosansmono.css delete mode 100644 api/src/front/icons/android-chrome-192x192.png delete mode 100644 api/src/front/icons/android-chrome-512x512.png delete mode 100644 api/src/front/icons/apple-touch-icon.png delete mode 100644 api/src/front/icons/favicon-16x16.png delete mode 100644 api/src/front/icons/favicon-32x32.png delete mode 100644 api/src/front/icons/favicon.ico delete mode 100644 api/src/front/icons/generic.png delete mode 100644 api/src/front/icons/maskable/128.png delete mode 100644 api/src/front/icons/maskable/192.png delete mode 100644 api/src/front/icons/maskable/384.png delete mode 100644 api/src/front/icons/maskable/48.png delete mode 100644 api/src/front/icons/maskable/512.png delete mode 100644 api/src/front/icons/maskable/72.png delete mode 100644 api/src/front/icons/maskable/96.png delete mode 100644 api/src/front/icons/pattern.png delete mode 100644 api/src/front/manifest.webmanifest delete mode 100644 api/src/front/robots.txt delete mode 100644 api/src/front/sponsors/royale.svg delete mode 100644 api/src/modules/build.js delete mode 100644 api/src/modules/buildStatic.js delete mode 100644 api/src/modules/changelog/changelogManager.js delete mode 100644 api/src/modules/emoji.js delete mode 100644 api/src/modules/pageRender/elements.js delete mode 100644 api/src/modules/pageRender/findRendered.js delete mode 100644 api/src/modules/pageRender/onDemand.js delete mode 100644 api/src/modules/pageRender/page.js diff --git a/api/src/core/web.js b/api/src/core/web.js deleted file mode 100644 index d892c56c..00000000 --- a/api/src/core/web.js +++ /dev/null @@ -1,97 +0,0 @@ - -import { Bright, Cyan } from "../modules/sub/consoleText.js"; -import { languageCode } from "../modules/sub/utils.js"; -import { version, env } from "../modules/config.js"; - -import { buildFront } from "../modules/build.js"; -import findRendered from "../modules/pageRender/findRendered.js"; - -import { celebrationsEmoji } from "../modules/pageRender/elements.js"; -import { changelogHistory } from "../modules/pageRender/onDemand.js"; -import { createResponse } from "../modules/processing/request.js"; - -export async function runWeb(express, app, gitCommit, gitBranch, __dirname) { - const startTime = new Date(); - const startTimestamp = Math.floor(startTime.getTime()); - - await buildFront(gitCommit, gitBranch); - - app.use('/', express.static('./build/min')); - app.use('/', express.static('./src/front')); - - app.use((req, res, next) => { - try { decodeURIComponent(req.path) } catch (e) { return res.redirect('/') } - next(); - }) - - app.get('/onDemand', (req, res) => { - try { - if (typeof req.query.blockId !== 'string') { - return res.status(400).json({ - status: "error", - text: "couldn't render this block, please try again!" - }); - } - - let blockId = req.query.blockId.slice(0, 3); - let blockData; - switch(blockId) { - // changelog history - case "0": - let history = changelogHistory(); - if (history) { - blockData = createResponse("success", { t: history }) - } else { - blockData = createResponse("error", { - t: "couldn't render this block, please try again!" - }) - } - break; - // celebrations emoji - case "1": - let celebration = celebrationsEmoji(); - if (celebration) { - blockData = createResponse("success", { t: celebration }) - } - break; - default: - blockData = createResponse("error", { - t: "couldn't find a block with this id" - }) - break; - } - - if (blockData?.body) { - return res.status(blockData.status).json(blockData.body); - } else { - return res.status(204).end(); - } - } catch { - return res.status(400).json({ - status: "error", - text: "couldn't render this block, please try again!" - }) - } - }) - - app.get("/", (req, res) => { - return res.sendFile(`${__dirname}/${findRendered(languageCode(req))}`) - }) - - app.get("/favicon.ico", (req, res) => { - return res.sendFile(`${__dirname}/src/front/icons/favicon.ico`) - }) - - app.get("/*", (req, res) => { - return res.redirect('/') - }) - - app.listen(env.webPort, () => { - console.log(`\n` + - `${Cyan("cobalt")} WEB ${Bright(`v.${version}-${gitCommit} (${gitBranch})`)}\n` + - `Start time: ${Bright(`${startTime.toUTCString()} (${startTimestamp})`)}\n\n` + - `URL: ${Cyan(`${env.webURL}`)}\n` + - `Port: ${env.webPort}\n` - ) - }) -} diff --git a/api/src/front/assets/meowbalt/error.png b/api/src/front/assets/meowbalt/error.png deleted file mode 100644 index 533858a70ebc3a95ef3f226c7c4abd73237c0723..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15420 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 diff --git a/api/src/front/assets/meowbalt/question.png b/api/src/front/assets/meowbalt/question.png deleted file mode 100644 index 330cd69b7de23dd0a316558af38b23eab3addfe5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21198 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 diff --git a/api/src/front/cobalt.css b/api/src/front/cobalt.css deleted file mode 100644 index ab8c5e3b..00000000 --- a/api/src/front/cobalt.css +++ /dev/null @@ -1,1265 +0,0 @@ -:root { - --transparent: rgba(0, 0, 0, 0); - --without-padding: calc(100% - 4rem); - --border-15: 0.15rem solid var(--accent); - --border-10: 0.1rem solid var(--accent); - --inset-focus: 0 0 0 0.1rem var(--accent) inset; - --inset-focus-inv: 0 0 0 0.15rem var(--background) inset; - --font-mono: 'Noto Sans Mono', 'Consolas', 'SF Mono', monospace; - --padding: 0.7rem; - --padding-small: 0.2rem; - --padding-dialog: 18px; - --line-height: 1.65rem; - --red: rgb(249, 47, 96); - --blue: rgb(47, 138, 249); - --gap: 0.5rem; - --gap-no-icon: 0.6rem; -} -[data-theme="dark"] { - --accent: rgb(225, 225, 225); - --accent-highlight: rgb(225, 225, 225, 4%); - --accent-subtext: rgb(110, 110, 110); - --accent-hover: rgb(30, 30, 30); - --accent-hover-elevated: rgb(48, 48, 48); - --accent-hover-transparent: rgba(48, 48, 48, 0.5); - --accent-button: rgb(25, 25, 25); - --accent-button-elevated: rgb(42, 42, 42); - --glass: rgba(25, 25, 25, 0.85); - --glass-lite: rgba(25, 25, 25, 0.98); - --subbackground: rgb(10, 10, 10); - --background: rgb(0, 0, 0); - --background-backdrop: rgba(0, 0, 0, 0.5); -} -[data-theme="light"] { - --accent: rgb(25, 25, 25); - --accent-highlight: rgb(25, 25, 25, 4%); - --accent-subtext: rgb(110, 110, 110); - --accent-hover: rgb(225, 225, 225); - --accent-hover-elevated: rgb(210, 210, 210); - --accent-hover-transparent: rgba(215, 215, 215, 0.5); - --accent-button: rgb(232, 232, 232); - --accent-button-elevated: rgb(215, 215, 215); - --glass: rgba(232, 232, 232, 0.85); - --glass-lite: rgba(232, 232, 232, 0.98); - --subbackground: rgb(240, 240, 240); - --background: rgb(255, 255, 255); - --background-backdrop: rgba(255, 255, 255, 0.5); -} -html, -body { - height: calc(100% + env(safe-area-inset-top) / 2); - margin: 0; - background: var(--background); - color: var(--accent); - -webkit-tap-highlight-color: var(--transparent); - font-family: var(--font-mono); - user-select: none; - -webkit-user-select: none; - overflow: hidden; - -ms-overflow-style: none; - scrollbar-width: none; -} -#home { - position: fixed; - width: 100%; - height: 100%; -} -a { - color: var(--accent); - text-decoration: none; - user-select: none; - -webkit-user-select: none; -} -::placeholder, -::moz-placeholder { - color: var(--accent-subtext); -} -.switches::-webkit-scrollbar, -.popup-content::-webkit-scrollbar { - display: none; -} -:focus-visible { - outline: var(--border-15); -} -.checkbox { - display: inline-flex; - align-items: center; - flex-direction: row; - flex-wrap: nowrap; - padding: calc(var(--gap) - 0.1rem) calc(var(--gap)*2 - var(--padding-small)) calc(var(--gap) - 0.1rem) var(--gap); - width: auto; - margin-right: var(--padding); - margin-bottom: var(--padding); - background: var(--accent-button); -} -.checkbox-label { - line-height: 1.3rem; -} -[type="checkbox"] { - -webkit-appearance: none; - appearance: none; - width: 20px; - height: 20px; - z-index: 0; - margin-right: var(--padding); - border: 0.15rem solid var(--accent); -} -[type="checkbox"]::before { - content: ""; - display: none; - position: relative; - width: 6px; - height: 12px; - z-index: 5; - transform: scaleX(0.9)rotate(45deg); - left: 6px; - top: 1px; - border-bottom: 0.18rem solid var(--background); - border-right: 0.18rem solid var(--background); -} -[type="checkbox"]:checked::before { - display: block; -} -[type="checkbox"]:checked { - background-color: var(--accent); - border: 0; -} -input[type="checkbox"] { - cursor: pointer; -} -button { - background: none; - border: none; - font-family: var(--font-mono); - color: var(--accent); - font-size: 0.9rem; -} -input, -input[type="text"], -[type="text"] { - border-radius: 0; -} -.glass-bkg { - background: var(--glass); - backdrop-filter: blur(7px); - -webkit-backdrop-filter: blur(7px); -} -.glass-bkg.alone { - z-index: -1; - top: 0; - left: 0; - bottom: 0; - right: 0; - position: absolute; -} -.glass-bkg.small { - top: 0; - left: 0; - bottom: 0; - right: 0; - z-index: -1; - position: absolute; - border: var(--accent-highlight) solid 0.15rem; - border-radius: 22px; -} -.desktop button:hover, -.desktop .switch:hover, -.desktop .checkbox:hover, -.desktop .text-to-copy:hover, -.desktop .collapse-header:hover { - background: var(--accent-hover); - box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset; - cursor: pointer; -} -button:active, -.switch:active, -.checkbox:active, -.text-to-copy:active { - box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset; - cursor: pointer; - transform: scale(0.95); -} -.collapse-header:active { - box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset; -} -.popup.small .switch { - background: var(--accent-button-elevated); -} -.desktop .popup.small .switch:hover { - background: var(--accent-hover-elevated); -} -.switch.text-backdrop, -.switch.text-backdrop:hover, -.switch.text-backdrop:active, -.text-to-copy.text-backdrop, -.text-to-copy.text-backdrop:hover, -.text-to-copy.text-backdrop:active, -.popup.small .switch.text-backdrop, -.popup.small .switch.text-backdrop:hover, -.popup.small .switch.text-backdrop:active { - background: var(--accent); - color: var(--background); - box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset; -} -.picker-image:active { - cursor: pointer; - transform: scale(0.95); -} -.button { - background: none; - border: var(--border-15); - color: var(--accent); - padding: 0.3rem var(--padding) 0.5rem; - font-size: 1rem; -} -.mono { - font-family: var(--font-mono); -} -.center { - top: 50%; - left: 50%; - transform: translate(-50%, -50%); -} -#cobalt-main-box { - position: fixed; - width: 40rem; - height: auto; - display: flex; - flex-direction: column; - align-content: center; - align-items: center; -} -#logo { - text-align: center; - font-size: 1rem; - height: 2.5rem; - align-items: center; - display: flex; - gap: 0.3rem; -} -.logo-sub { - color: var(--blue); - font-size: 0.8rem; -} -#download-area { - display: flex; - flex-direction: column; - width: 100%; -} -#cobalt-main-box #top { - display: inline-flex; - height: 2.5rem; - flex-direction: row; -} -#cobalt-main-box #bottom { - padding-top: calc(1rem - var(--padding-small)); - display: flex; - flex-direction: row; - justify-content: space-between; -} -.box { - background: var(--background); - color: var(--accent); -} -#url-input-area { - background: none; - padding-left: calc(20px + 1.4rem); - width: 100%; - color: var(--accent); - border: 0; - float: right; - border-bottom: 0.1rem solid var(--accent-subtext); - outline: none; - font-size: 0.8rem; -} -#url-clear { - height: 100%; - background: none; - padding: 0 1rem var(--padding-small); - transform: none; - font-size: 1rem; - box-shadow: none!important; -} -#url-input-area:focus { - outline: none; - border-bottom: var(--border-10); -} -#link-icon { - display: flex; - position: absolute; - width: 20px; - padding-top: var(--padding-small); - left: var(--padding); - flex-wrap: nowrap; - color: var(--accent-subtext); -} -#download-button { - height: 2.5rem; - color: var(--accent); - background: none; - border: none; - font-size: 1.8rem; - cursor: pointer; - padding: 0; - letter-spacing: -0.35rem; - font-weight: normal!important; -} -#download-button:disabled { - color: var(--accent-subtext); - cursor: not-allowed; -} -#cobalt-main-box .switch, -#footer .switch { - box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset; -} -#footer { - bottom: 0; - width: 100%; - position: absolute; - display: flex; - justify-content: center; - padding-bottom: 2rem; - font-size: 0.9rem; - text-align: center; -} -#cobalt-main-box #bottom, -#footer-buttons, -#footer-buttons, .footer-pair { - gap: var(--gap); -} -#footer-buttons, .footer-pair { - display: flex; - flex-direction: row; - align-items: center; -} -.footer-button { - width: auto!important; - color: var(--accent-subtext); - padding: var(--gap) 1rem!important; - align-content: center; -} -.notification-dot { - width: 8px; - height: 8px; - background: var(--red); - margin-right: 0.4rem; - border-radius: 99rem; -} -.text-backdrop { - background: var(--accent); - color: var(--background); - padding: 0 0.3rem; -} -.text-backdrop.link { - text-decoration: underline; -} -.cobalt-support-link { - display: flex; - flex-direction: row; - justify-content: flex-start; - gap: 0.3rem; - margin-top: 0.5rem; - user-select: none; - -webkit-user-select: none; -} -::-moz-selection { - background-color: var(--accent); - color: var(--background); -} -::selection { - background-color: var(--accent); - color: var(--background); -} -.popup { - visibility: hidden; - position: fixed; - height: auto; - width: 36%; - z-index: 999; - font-size: 0.9rem; - max-height: 95%; - opacity: 0; - transform: translate(-50%,-48%)scale(.95); - box-shadow: 0 0 0 var(--padding-small) var(--glass) inset, - 0 0 20px 0 var(--accent-hover-transparent); -} -.popup.visible { - visibility: visible; - opacity: 1; - transform: translate(-50%, -50%); - transition: transform 100ms ease-out, opacity 100ms ease-in-out; -} -#popup-backdrop { - visibility: hidden; - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: 998; - opacity: 0; - background: var(--background-backdrop); -} -#popup-backdrop.visible { - visibility: visible; - opacity: 1; - transition: opacity .13s ease-in-out; - backdrop-filter: blur(7px); - -webkit-backdrop-filter: blur(7px); -} -.popup.small { - width: 21rem; - box-shadow: 0px 0px 60px 0px var(--accent-hover); - padding: var(--padding-dialog); - transform: translate(-50%, -50%)scale(.95); - pointer-events: all; - border-radius: 22px; -} -.popup.small .popup-content-inner { - display: flex; - flex-direction: column; - gap: var(--padding-dialog); - width: 100%; -} -.popup.small.visible { - transform: translate(-50%, -50%); -} -.popup.small .popup-header-contents, -.popup.small .popup-content-inner, -.popup.small .popup-header { - padding: 0; -} -.popup.small .popup-header { - position: relative; - border: none; -} -.popup.small .popup-title { - margin-bottom: 0.6rem; -} -.popup.small .close-error.switch { - background: var(--accent)!important; - color: var(--background); - height: 2.5rem; -} -#popup-error, -#popup-download { - display: flex; - flex-direction: column; - padding-top: 4rem; -} -#popup-error { - justify-content: center; - align-items: center; -} -.popout-meowbalt { - position: absolute; - top: -7rem; - user-select: none; - -webkit-user-select: none; - pointer-events: none; - height: 180px; - width: 180px; -} -#popup-download .popout-meowbalt { - left: -2rem; -} -.popup.scrollable { - height: 95%; -} -.changelog-subtitle { - font-size: 1.3rem; - padding-bottom: var(--gap-no-icon); -} -.changelog-banner { - position: relative; - width: 100%; - max-height: 300px; - min-height: 210px; - margin-bottom: var(--padding); - float: left; - background: var(--accent-hover); - display: flex; -} -.changelog-img { - object-fit: cover; - width: inherit; - height: inherit; - max-height: inherit; -} -.changelog-tags { - display: inline-flex; - align-items: center; - gap: var(--padding); - padding-bottom: var(--padding); - flex-wrap: wrap; -} -.changelog-tag-version { - font-size: 1rem; - padding: 0.15rem 0.5rem; -} -.changelog-tag-date { - color: var(--accent-subtext); - font-size: 0.8rem; -} -.nowrap { - white-space: nowrap; -} -.no-top-padding { - padding-top: 0!important; -} -.desc-padding { - padding-bottom: var(--padding); -} -#popup-subtitle { - font-size: 1.1rem; - padding-bottom: var(--padding); -} -.popup-desc, -.desc-error, -#popup-info-desc { - width: 100%; - text-align: left; - float: left; - line-height: var(--line-height); - user-select: text; - -webkit-user-select: text; -} -.desc-error { - padding-bottom: 0rem; - text-align: center; -} -.popup-title { - font-size: 1.5rem; - display: flex; - align-items: center; - line-height: 1em; - margin-bottom: 0.4rem; - margin-top: 0.4rem; -} -.popup-above-title { - color: var(--accent-subtext); - font-size: 0.8rem; -} -.popup-content { - overflow-x: scroll; - overflow-y: auto; - height: 100%; - scrollbar-width: none; -} -.popup-content-inner, -.tab-content-settings, -#picker-holder { - padding-top: calc(var(--padding) + 4rem); - padding-bottom: 4.8rem; -} -.tab-content-settings, -#tab-about-about .popup-content-inner { - padding-top: 6rem; -} -.bullpadding { - padding-left: 0.58rem; -} -.popup-header { - position: absolute; - z-index: 999; - padding-top: calc(var(--padding) + 1rem); - width: 100%; -} -.settings-category { - padding-bottom: var(--padding); -} -.separator { - float: left; -} -.separator, -.category-title { - width: 100%; - color: var(--accent-subtext); - border-bottom: 0.05rem solid var(--accent-subtext); - padding-bottom: 0.25rem; - margin-bottom: calc(var(--gap-no-icon)*1.5); -} -.category-title { - text-align: left; - line-height: var(--line-height); -} -.bottom-margin { - margin-bottom: var(--padding)!important; -} -.top-margin { - margin-top: var(--padding)!important; -} -.top-margin-only { - margin-top: var(--padding)!important; - margin-bottom: 0!important; -} -.no-margin { - margin: 0!important; -} -.switch-container { - width: 100%; -} -.subtitle { - width: 100%; - text-align: left; - line-height: var(--line-height); - padding-bottom: 0.4rem; - color: var(--accent); -} -.small-padding .subtitle { - margin-top: 0.5rem; -} -.explanation { - margin-top: var(--padding); - width: 100%; - font-size: 0.8rem; - text-align: left; - line-height: 1.3rem!important; - color: var(--accent-subtext); -} -.explanation.embedded { - margin-top: 0.825rem; - margin-bottom: 0.825rem; -} -.subtext { - color: var(--accent-subtext); -} -.switch { - padding: var(--gap-no-icon); - width: 100%; - text-align: left; - color: var(--accent); - background: var(--accent-button); - display: flex; - justify-content: center; - align-items: center; - cursor: pointer; -} -.switch.space-right { - margin-right: var(--padding); -} -.switch:focus { - box-shadow: var(--inset-focus) inset; -} -.popup-tabs .switch { - background: none; -} -.desktop .popup-tabs .switch:hover, -.popup-tabs .switch:active { - background: var(--accent-hover-transparent); - box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset; -} -.switch[data-enabled="true"], -.popup-tabs .switch[data-enabled="true"] { - color: var(--background); - background: var(--accent)!important; - cursor: default; -} -.switch[data-enabled="true"]:hover { - background: var(--accent); -} -.switch[data-enabled="true"]:focus { - box-shadow: var(--inset-focus-inv) inset; -} -.switches { - display: flex; - width: auto; - flex-direction: row; - flex-wrap: nowrap; - scrollbar-width: none; -} -.switches .switch { - padding-left: calc(var(--gap-no-icon) + 0.1rem); - padding-right: calc(var(--gap-no-icon) + 0.1rem); -} -#popup-settings .switches .switch { - text-align: center; -} -.autowidth { - width: auto; -} -.bottom-space { - margin-bottom: 2rem; -} -.text-to-copy { - user-select: text; - -webkit-user-select: text; - background: var(--accent-button); - padding: var(--gap-no-icon); - overflow: clip; -} -.back-button { - padding: 0; - background: none; - max-width: 4rem; - font-size: 1rem; -} -.back-button svg path, -.collapse-indicator svg path { - fill: var(--accent); -} -.popup-tab-content[data-enabled="false"] { - display: none; -} -.popup-tabs { - z-index: 999; - bottom: 0; - position: absolute; - width: 100%; - padding-top: var(--padding-small); - padding-bottom: calc(var(--padding) + 1rem); -} -.popup-tabs-child { - width: 100%; - padding: 0 var(--padding-small); -} -.emoji, svg { - user-select: none; - -webkit-user-select: none; - pointer-events: none; -} -.emoji { - margin-right: 0.4rem; -} -.picker-image { - object-fit: cover; - width: 100%; - height: 100%; - cursor: pointer; - user-select: all; - -webkit-user-select: all; -} -.picker-image-container { - width: calc(100% / 3); - height: 12rem; - background-color: var(--accent-button); - cursor: pointer; - position: relative; -} -#picker-holder { - display: flex; - justify-content: start; - flex-wrap: wrap; - align-content: space-around; - padding-top: 7.6rem; - padding-bottom: 4.8rem; - padding-left: var(--padding-small); - padding-right: var(--padding-small); -} -.imageBlock { - width: 100%; - height: 100%; - position: absolute; - z-index: 99; -} -.picker-element-name { - position: absolute; - background: var(--background); - color: var(--accent); - padding: 0.3rem var(--gap); - font-size: 0.8rem; - opacity: 0.7; - margin: 0.4rem; -} -#popup-picker .explanation { - margin-top: 0!important; - margin-bottom: var(--padding); -} -#cobalt-main-box #bottom button { - width: auto; - padding: var(--gap) 0.9rem; -} -.collapse-list { - background: var(--subbackground); - user-select: none; - -webkit-user-select: none; -} -.collapse-header { - padding: 0.5rem var(--padding); - font-size: 0.95rem; - display: flex; - flex-direction: row; - align-items: center; - cursor: pointer; - background: var(--accent-button); -} -.collapse-header .emoji { - margin-right: var(--padding); -} -.collapse-indicator { - display: flex; - justify-content: center; - align-items: center; - cursor: pointer; - transform: none; -} -.collapse-list.expanded .collapse-indicator { - transform: rotate(180deg); -} -.collapse-title { - width: 100%; - display: flex; - flex-direction: row; - align-items: center; -} -.collapse-body { - display: none; - padding: var(--padding); - padding-bottom: 1rem; - user-select: text; - -webkit-user-select: text; -} -.expanded .collapse-body { - display: block; -} -#download-switcher .switches { - gap: var(--gap); -} -#pd-share { - display: none; -} -.popup-content-inner, -.tab-content-settings, -.popup-header-contents { - padding-left: 1rem; - padding-right: 1rem; -} -.urgent-notice { - width: 100%; - text-align: center; - position: absolute; - display: flex; - justify-content: center; - align-items: center; - padding-top: 1rem; -} -.urgent-text { - display: flex; - align-items: center; - cursor: pointer; -} -.no-transparency .glass-bkg, -.no-transparency #popup-backdrop { - backdrop-filter: none; - -webkit-backdrop-filter: none; -} -.no-transparency .glass-bkg { - background: var(--glass-lite); -} -.no-animation .popup, -.no-animation #popup-backdrop { - transition: none; -} -.popup-from-bottom { - position: fixed; - width: 100%; - height: 100%; - bottom: 0; - z-index: 999; - visibility: hidden; - pointer-events: none; -} -.popup-from-bottom.visible { - visibility: visible; -} -#keyboard-collapse { - display: none; -} -.desktop #keyboard-collapse { - display: block; -} -.text-backdrop.key { - color: var(--accent-hover-elevated); -} -#keyboard-shortcuts { - display: flex; - flex-direction: row; - flex-wrap: wrap; - justify-content: flex-start; - align-items: flex-start; - gap: 1.5rem; - user-select: none; - color: var(--accent); -} -.loader { - text-align: center; -} -#picker-download { - visibility: hidden; -} -#picker-download.visible { - visibility: visible; -} -#home { - opacity: 0; -} -#home.visible { - opacity: 1; - transition: opacity 0.2s ease-out; -} -.no-animation #home { - transition: none; -} -.sponsored-by-text { - text-align: center!important; - font-size: .85rem; - color: var(--accent-subtext); - user-select: none; -} -#sponsored-logos { - width: 100%; - display: flex; - justify-content: center; - flex-wrap: wrap; - gap: var(--padding-small) 1rem; - margin-bottom: 1rem; -} -.sponsored-logo svg { - height: inherit; - width: inherit; -} -.sponsored-logo svg path { - fill: var(--accent-subtext); -} -#filename-preview { - background: var(--accent-button); - margin-top: 0.8rem; -} -.filename-item { - display: flex; - flex-direction: row; - align-items: center; - justify-content: flex-start; - gap: 1rem; - padding: 0.5rem var(--padding); -} -.filename-item.line { - border-bottom: 0.1rem solid var(--accent-button-elevated); -} -.filename-label { - color: var(--accent-subtext); - font-size: 0.8rem; -} -.filename-container { - overflow-wrap: anywhere; -} -/* rounded corners */ -#bottom #paste, -#footer .switch, -#audioMode, -.popup-content .switches, -.checkbox, -.changelog-img, -.changelog-banner, -.close-error, -#download-switcher .switch, -#popup-about .switch, -.popup-tabs .switch, -.text-to-copy, -.text-to-copy.text-backdrop, -#filename-preview { - border-radius: 9px; -} -[type=checkbox] { - border-radius: 4px; -} -.popup, -.scrollable .popup-content { - border-radius: 12px; -} -.popup-header .glass-bkg { - border-top-left-radius: 12px; - border-top-right-radius: 12px; - border-bottom: var(--accent-highlight) solid 0.1rem; - top: -1px; -} -.popup-tabs .glass-bkg { - border-bottom-left-radius: 12px; - border-bottom-right-radius: 12px; - border-top: var(--accent-highlight) solid 0.1rem; - bottom: -1px; -} -.switches .switch:first-child { - border-top-left-radius: 9px; - border-bottom-left-radius: 9px; -} -.switches .switch:last-child { - border-top-right-radius: 9px; - border-bottom-right-radius: 9px; -} -.text-backdrop { - border-radius: 4px; -} -.collapse-list:first-child, -.collapse-list:first-child .collapse-header { - border-top-left-radius: 8px; - border-top-right-radius: 8px; -} -.collapse-list:last-child, -.collapse-list:last-child .collapse-header { - border-bottom-left-radius: 8px; - border-bottom-right-radius: 8px; -} -.collapse-list:last-child.expanded .collapse-header { - border-radius: 0; -} -/* prevent resizing fliecker on ios if web app is installed as standalone */ -@media all and (display-mode: standalone) { - #home.visible { - transition-delay: 0.1s; - } -} -/* adapt the page according to screen size */ -@media screen and (max-width: 1550px) { - .popup { - width: 40%; - } -} -@media screen and (max-width: 1440px) { - .popup { - width: 45%; - } -} -@media screen and (max-width: 1300px) { - .popup { - width: 50%; - } -} -@media screen and (max-width: 1200px) { - .popup { - width: 55%; - } -} -@media screen and (max-width: 1025px) { - .popup { - width: 60%; - } -} -@media screen and (max-width: 850px) { - .popup { - width: 75%; - } -} -@media screen and (max-width: 680px) { - .popup { - width: 90%; - } -} -@media screen and (max-width: 660px) { - #cobalt-main-box { - width: calc(100% - (var(--padding) * 2)); - } -} -/* mobile page */ -@media screen and (max-width: 499px) { - .tab { - font-size: 0!important; - } - .tab .emoji { - margin-right: 0; - } - .checkbox { - width: calc(100% - 1.3rem); - } -} -@media screen and (max-width: 535px) { - #cobalt-main-box #bottom { - flex-direction: row-reverse; - } - #cobalt-main-box #bottom #audioMode button, #audioMode { - width: 100%; - } - #footer-buttons { - flex-direction: column; - align-items: stretch; - width: 100%; - padding: 0 var(--padding); - } - .footer-pair .footer-button { - width: 100%!important; - } - #logo { - width: 100%; - height: auto; - justify-content: center; - } - #cobalt-main-box { - display: flex; - border: none; - padding: 0; - flex-direction: column; - gap: var(--gap); - } - .popup, - .popup-header .glass-bkg, - .popup-tabs .glass-bkg, - .glass-bkg.small { - border-radius: 0; - } - .popup-tabs .glass-bkg { - bottom: 0; - } - .switches { - overflow-x: scroll; - } - .checkbox { - margin-right: 0; - } - .popup.center { - top: unset; - left: unset; - transform: unset; - } - .popup.small { - width: calc(100% - var(--padding-dialog) * 2); - height: auto; - top: unset; - bottom: 0; - left: 0; - transform: none; - position: absolute; - transform: translateY(30rem); - } - #popup-download .popout-meowbalt { - left: unset; - } - .glass-bkg.small { - border: none; - border-top: var(--accent-highlight) solid 0.15rem; - } - .popup.small.visible { - transform: translateY(0rem); - transition: transform 250ms cubic-bezier(0.075, 0.82, 0.165, 1), opacity 130ms ease-in-out; - } - .popup.small .popup-header { - background: none; - } - .no-animation .popup.small { - transition: none; - } - .close-error { - bottom: 3rem; - } - #picker-holder { - padding-left: 0; - padding-right: 0; - } - #picker-holder::-webkit-scrollbar { - display: none; - } - #picker-holder.various { - flex-wrap: wrap; - gap: 0; - overflow-x: hidden; - overflow-y: scroll; - } - .popup, .popup.scrollable { - border: none; - width: 100%; - height: 100%; - max-height: 100%; - box-shadow: none; - } - .popup-content-inner, - .tab-content-settings, - .popup-tabs-child, - .popup-header-contents { - padding-left: var(--padding); - padding-right: var(--padding); - } - .popup-content-inner, - .tab-content-settings, - #picker-holder { - padding-bottom: calc(var(--padding) + 3.5rem); - padding-top: calc(var(--padding) + 3rem - var(--padding-small)); - } - #footer, - .popup-tabs { - padding-bottom: var(--padding); - } - .popup.small { - padding-bottom: var(--padding-dialog) - } - .urgent-notice { - padding-top: 1rem; - } - .popup-title { - margin-top: var(--padding-small); - } - .popup-header { - padding-top: var(--padding); - } - .tab-content-settings, - #tab-about-about .popup-content-inner { - padding-top: calc(5rem - var(--padding-small)); - } -} -@media screen and (max-width: 535px) and (display-mode: standalone) { - .popup-header { - padding-top: max( - calc(env(safe-area-inset-top)), - var(--padding) + 1rem - ); - } - .urgent-notice { - padding-top: max( - calc(env(safe-area-inset-top) - var(--padding-small)), - var(--padding) - ); - } - #footer, - .popup-tabs { - padding-bottom: max( - calc(env(safe-area-inset-bottom) + var(--padding-small)), - var(--padding) - ); - } - .popup.small { - padding-bottom: max( - calc(env(safe-area-inset-bottom) + var(--padding-small)), - var(--padding-dialog) - ); - } - .popup-content-inner, - .tab-content-settings { - padding-top: max( - calc(env(safe-area-inset-top) + var(--padding) + var(--padding-small) + 2rem), - calc(var(--padding) + 4rem - var(--padding-small)) - ); - padding-bottom: max( - calc(env(safe-area-inset-bottom) + var(--padding) + 3rem), - calc(var(--padding) + var(--padding-small) * 2 + 3rem) - ); - } - .tab-content-settings, - #tab-about-about .popup-content-inner { - padding-top: max( - calc(env(safe-area-inset-top) + var(--padding) + var(--padding-small) * 2 + 3rem), - calc(var(--padding) + 5rem) - ); - } - #picker-holder { - padding-top: max( - calc(env(safe-area-inset-top) + var(--padding) + 5rem), - calc(var(--padding) * 2 + 6rem) - ); - padding-bottom: max( - calc(env(safe-area-inset-bottom) + var(--padding) + 2rem), - calc(4rem - var(--padding) + var(--padding-small)) - ); - } - - .android .popup-header { - padding-top: var(--padding); - } - .android .popup-content-inner, - .android .tab-content-settings, - .android #picker-holder { - padding-bottom: calc(var(--padding) + 3.5rem); - padding-top: calc(var(--padding) + 3rem - var(--padding-small)); - } - .android .tab-content-settings, - .android #tab-about-about .popup-content-inner { - padding-top: calc(5rem - var(--padding-small)); - } -} diff --git a/api/src/front/cobalt.js b/api/src/front/cobalt.js deleted file mode 100644 index 0c89dec2..00000000 --- a/api/src/front/cobalt.js +++ /dev/null @@ -1,708 +0,0 @@ -const ua = navigator.userAgent.toLowerCase(); -const isIOS = ua.includes("iphone os") || (ua.includes("mac os") && navigator.maxTouchPoints > 0); -const isAndroid = ua.includes("android"); -const isMobile = ua.includes("android") || isIOS; -const isSafari = ua.includes("safari/"); -const isFirefox = ua.includes("firefox/"); -const isOldFirefox = ua.includes("firefox/") && ua.split("firefox/")[1].split('.')[0] < 103; - -const switchers = { - "theme": ["auto", "light", "dark"], - "vCodec": ["h264", "av1", "vp9"], - "vQuality": ["720", "max", "2160", "1440", "1080", "480", "360", "240", "144"], - "aFormat": ["mp3", "best", "ogg", "wav", "opus"], - "audioMode": ["false", "true"], - "filenamePattern": ["classic", "pretty", "basic", "nerdy"] -} -const checkboxes = [ - "alwaysVisibleButton", - "downloadPopup", - "fullTikTokAudio", - "muteAudio", - "reduceTransparency", - "disableAnimations", - "disableMetadata", - "twitterGif", - "plausible_ignore", - "ytDub", - "tiktokH265" -] -const bottomPopups = ["error", "download"] - -let store = {}; - -const validLink = (link) => { - try { - return /^https:/i.test(new URL(link).protocol); - } catch { - return false - } -} - -const fixApiUrl = (url) => { - return url.endsWith('/') ? url.slice(0, -1) : url -} - -let apiURL = fixApiUrl(defaultApiUrl); - -const changeApi = (url) => { - apiURL = fixApiUrl(url); - return true -} - -const eid = (id) => { - return document.getElementById(id) -} - -const sGet = (id) =>{ - return localStorage.getItem(id) -} -const sSet = (id, value) => { - localStorage.setItem(id, value) -} -const lazyGet = (key) => { - const value = sGet(key); - if (key in switchers) { - if (switchers[key][0] !== value) - return value; - } else if (checkboxes.includes(key)) { - if (value === 'true') - return true; - } -} - -const changeDownloadButton = (action, text) => { - switch (action) { - case "hidden": // hidden, but only visible when alwaysVisibleButton is true - eid("download-button").disabled = true - if (sGet("alwaysVisibleButton") === "true") { - eid("download-button").value = '>>' - eid("download-button").style.padding = '0 1rem' - } else { - eid("download-button").value = '' - eid("download-button").style.padding = '0' - } - break; - case "disabled": - eid("download-button").disabled = true - eid("download-button").value = text - eid("download-button").style.padding = '0 1rem' - break; - default: - eid("download-button").disabled = false - eid("download-button").value = '>>' - eid("download-button").style.padding = '0 1rem' - break; - } -} - -const button = () => { - let regexTest = validLink(eid("url-input-area").value); - - eid("url-clear").style.display = "none"; - - if ((eid("url-input-area").value).length > 0) { - eid("url-clear").style.display = "block"; - } - - if (regexTest) { - changeDownloadButton() - } else { - changeDownloadButton("hidden") - } -} - -const clearInput = () => { - eid("url-input-area").value = ''; - button(); -} - -const copy = (id, data) => { - let target = document.getElementById(id); - target.classList.add("text-backdrop"); - - setTimeout(() => { - target.classList.remove("text-backdrop") - }, 600); - - if (data) { - navigator.clipboard.writeText(data) - } else { - navigator.clipboard.writeText(target.textContent) - } -} - -const share = url => navigator?.share({ url }).catch(() => {}); - -const preferredColorScheme = () => { - let theme = "auto"; - let localTheme = sGet("theme"); - let isLightPreferred = false; - - if (localTheme) { - theme = localTheme; - } - if (window.matchMedia) { - isLightPreferred = window.matchMedia('(prefers-color-scheme: light)').matches; - } - if (theme === "auto") { - theme = isLightPreferred ? "light" : "dark" - } - - return theme -} - -const changeStatusBarColor = () => { - const theme = preferredColorScheme(); - const colors = { - "dark": "#000000", - "light": "#ffffff", - "dark-popup": "#151515", - "light-popup": "#ebebeb" - } - - let state = store.isPopupOpen ? "dark-popup" : "dark"; - - if (theme === "light") { - state = store.isPopupOpen ? "light-popup" : "light"; - } - - document.querySelector('meta[name="theme-color"]').setAttribute('content', colors[state]); -} -const detectColorScheme = () => { - document.documentElement.setAttribute("data-theme", preferredColorScheme()); - changeStatusBarColor(); -} - -if (window.matchMedia) { - window.matchMedia('(prefers-color-scheme: light)').addEventListener('change', () => { - changeStatusBarColor() - detectColorScheme() - }) -} - -const updateFilenamePreview = () => { - let videoFilePreview = ``; - let audioFilePreview = ``; - let resMatch = { - "max": "3840x2160", - "2160": "3840x2160", - "1440": "2560x1440", - "1080": "1920x1080", - "720": "1280x720", - "480": "854x480", - "360": "640x360", - } - - switch(sGet("filenamePattern")) { - case "classic": - videoFilePreview = `youtube_dQw4w9WgXcQ_${resMatch[sGet('vQuality')]}_${sGet('vCodec')}` - + `${sGet("muteAudio") === "true" ? "_mute" : ""}` - + `.${sGet('vCodec') === "vp9" ? 'webm' : 'mp4'}`; - audioFilePreview = `youtube_dQw4w9WgXcQ_audio` - + `.${sGet('aFormat') !== "best" ? sGet('aFormat') : 'opus'}`; - break; - case "basic": - videoFilePreview = `${loc.FilenamePreviewVideoTitle} ` - + `(${sGet('vQuality') === "max" ? "2160p" : `${sGet('vQuality')}p`}, ` - + `${sGet('vCodec')}${sGet("muteAudio") === "true" ? ", mute" : ""})` - + `.${sGet('vCodec') === "vp9" ? 'webm' : 'mp4'}`; - audioFilePreview = `${loc.FilenamePreviewAudioTitle} - ${loc.FilenamePreviewAudioAuthor}` - + `.${sGet('aFormat') !== "best" ? sGet('aFormat') : 'opus'}`; - break; - case "pretty": - videoFilePreview = `${loc.FilenamePreviewVideoTitle} ` - + `(${sGet('vQuality') === "max" ? "2160p" : `${sGet('vQuality')}p`}, ${sGet('vCodec')}, ` - + `${sGet("muteAudio") === "true" ? "mute, " : ""}youtube)` - + `.${sGet('vCodec') === "vp9" ? 'webm' : 'mp4'}`; - audioFilePreview = `${loc.FilenamePreviewAudioTitle} - ${loc.FilenamePreviewAudioAuthor} (soundcloud)` - + `.${sGet('aFormat') !== "best" ? sGet('aFormat') : 'opus'}`; - break; - case "nerdy": - videoFilePreview = `${loc.FilenamePreviewVideoTitle} ` - + `(${sGet('vQuality') === "max" ? "2160p" : `${sGet('vQuality')}p`}, ${sGet('vCodec')}, ` - + `${sGet("muteAudio") === "true" ? "mute, " : ""}youtube, dQw4w9WgXcQ)` - + `.${sGet('vCodec') === "vp9" ? 'webm' : 'mp4'}`; - audioFilePreview = `${loc.FilenamePreviewAudioTitle} - ${loc.FilenamePreviewAudioAuthor} ` - + `(soundcloud, 1242868615)` - + `.${sGet('aFormat') !== "best" ? sGet('aFormat') : 'opus'}`; - break; - } - eid("video-filename-text").innerHTML = videoFilePreview - eid("audio-filename-text").innerHTML = audioFilePreview -} - -const changeTab = (evnt, tabId, tabClass) => { - if (tabId === "tab-settings-other") updateFilenamePreview(); - - let tabcontent = document.getElementsByClassName(`tab-content-${tabClass}`); - let tablinks = document.getElementsByClassName(`tab-${tabClass}`); - - for (let i = 0; i < tabcontent.length; i++) { - tabcontent[i].dataset.enabled = "false"; - } - for (let i = 0; i < tablinks.length; i++) { - tablinks[i].dataset.enabled = "false"; - } - - evnt.currentTarget.dataset.enabled = "true"; - eid(tabId).dataset.enabled = "true"; - eid(tabId).parentElement.scrollTop = 0; -} - -const expandCollapsible = (evnt) => { - let classlist = evnt.currentTarget.parentNode.classList; - let c = "expanded"; - !classlist.contains(c) ? classlist.add(c) : classlist.remove(c); -} - -const hideAllPopups = () => { - let filter = document.getElementsByClassName('popup'); - for (let i = 0; i < filter.length; i++) { - filter[i].classList.remove("visible"); - } - eid("popup-backdrop").classList.remove("visible"); - store.isPopupOpen = false; - - // clear the picker - eid("picker-holder").innerHTML = ''; - eid("picker-download").href = '/'; - eid("picker-download").classList.remove("visible"); -} - -const popup = (type, action, text) => { - if (action === 1) { - hideAllPopups(); // hide the previous popup before showing a new one - store.isPopupOpen = true; - - // if not a small popup, update status bar color to match the popup header - if (!bottomPopups.includes(type)) changeStatusBarColor(); - switch (type) { - case "about": - let tabId = "about"; - if (text) tabId = text; - eid(`tab-button-${type}-${tabId}`).click(); - break; - case "settings": - eid(`tab-button-${type}-video`).click(); - break; - case "error": - eid("desc-error").innerHTML = text; - break; - case "download": - eid("pd-download").href = text; - eid("pd-copy").setAttribute("onClick", `copy('pd-copy', '${text}')`); - eid("pd-share").setAttribute("onClick", `share('${text}')`); - if (navigator.canShare) eid("pd-share").style.display = "flex"; - break; - case "picker": - eid("picker-title").innerHTML = loc.MediaPickerTitle; - eid("picker-subtitle").innerHTML = isMobile ? loc.MediaPickerExplanationPhone : loc.MediaPickerExplanationPC; - - switch (text.type) { - case "images": - eid("picker-holder").classList.remove("various"); - - eid("picker-download").href = text.audio; - eid("picker-download").classList.add("visible"); - - for (let i in text.arr) { - eid("picker-holder").innerHTML += - `` + - `` + - `` - } - break; - default: - eid("picker-holder").classList.add("various"); - - for (let i in text.arr) { - eid("picker-holder").innerHTML += - `` + - `
${text.arr[i].type}
` + - (text.arr[i].type === 'photo' ? '' : '
') + - `` + - `
` - } - eid("picker-download").classList.remove("visible"); - break; - } - break; - default: - break; - } - } else { - store.isPopupOpen = false; - - // reset status bar to base color - changeStatusBarColor(); - - if (type === "picker") { - eid("picker-download").href = '/'; - eid("picker-download").classList.remove("visible"); - eid("picker-holder").innerHTML = '' - } - } - if (bottomPopups.includes(type)) { - eid(`popup-${type}-container`).classList.toggle("visible"); - } - eid("popup-backdrop").classList.toggle("visible"); - eid(`popup-${type}`).classList.toggle("visible"); - eid(`popup-${type}`).focus(); -} - -const changeSwitcher = (switcher, state) => { - if (state) { - if (!switchers[switcher].includes(state)) { - state = switchers[switcher][0]; - } - sSet(switcher, state); - - for (let i in switchers[switcher]) { - if (switchers[switcher][i] === state) { - eid(`${switcher}-${state}`).dataset.enabled = "true"; - } else { - eid(`${switcher}-${switchers[switcher][i]}`).dataset.enabled = "false"; - } - } - if (switcher === "theme") detectColorScheme(); - if (switcher === "filenamePattern") updateFilenamePreview(); - } else { - let defaultValue = switchers[switcher][0]; - sSet(switcher, defaultValue); - for (let i in switchers[switcher]) { - if (switchers[switcher][i] === defaultValue) { - eid(`${switcher}-${defaultValue}`).dataset.enabled = "true"; - } else { - eid(`${switcher}-${switchers[switcher][i]}`).dataset.enabled = "false"; - } - } - } -} - -const checkbox = (action) => { - sSet(action, !!eid(action).checked); - switch(action) { - case "alwaysVisibleButton": button(); break; - case "reduceTransparency": eid("cobalt-body").classList.toggle('no-transparency'); break; - case "disableAnimations": eid("cobalt-body").classList.toggle('no-animation'); break; - } -} - -const changeButton = (type, text) => { - switch (type) { - case "error": //error - eid("url-input-area").disabled = false - eid("url-clear").style.display = "block"; - changeDownloadButton("disabled", '!!'); - popup("error", 1, text); - setTimeout(() => { changeButton("default") }, 2500); - break; - case "default": //enable back - changeDownloadButton(); - eid("url-clear").style.display = "block"; - eid("url-input-area").disabled = false - break; - case "error-default": //enable back + information popup - popup("error", 1, text); - changeDownloadButton(); - eid("url-clear").style.display = "block"; - eid("url-input-area").disabled = false - break; - } -} - -const internetError = () => { - eid("url-input-area").disabled = false - changeDownloadButton("disabled", '!!'); - setTimeout(() => { changeButton("default") }, 2500); - popup("error", 1, loc.ErrorNoInternet); -} - -const resetSettings = () => { - localStorage.clear(); - window.location.reload(); -} - -const download = async(url) => { - changeDownloadButton("disabled", '...'); - - eid("url-clear").style.display = "none"; - eid("url-input-area").disabled = true; - - let req = { - url, - vCodec: lazyGet("vCodec"), - vQuality: lazyGet("vQuality"), - aFormat: lazyGet("aFormat"), - filenamePattern: lazyGet("filenamePattern"), - isAudioOnly: lazyGet("audioMode"), - isTTFullAudio: lazyGet("fullTikTokAudio"), - isAudioMuted: lazyGet("muteAudio"), - disableMetadata: lazyGet("disableMetadata"), - dubLang: lazyGet("ytDub"), - twitterGif: lazyGet("twitterGif"), - tiktokH265: lazyGet("tiktokH265"), - } - - let j = await fetch(`${apiURL}/api/json`, { - method: "POST", - body: JSON.stringify(req), - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json' - } - }).then(r => r.json()).catch(() => {}); - - if (!j) { - internetError(); - return; - } - - if ((j.status === "error" || j.status === "rate-limit") && j && j.text) { - changeButton("error", j.text); - return; - } - - if (j.text && (!j.url || !j.picker)) { - if (j.status === "success") { - changeButton("error-default", j.text) - } else { - changeButton("error", loc.ErrorNoUrlReturned); - } - } - switch (j.status) { - case "redirect": - changeDownloadButton("disabled", '>>>'); - setTimeout(() => { changeButton("default") }, 1500); - - if (sGet("downloadPopup") === "true") { - popup('download', 1, j.url) - } else { - window.open(j.url, '_blank') - } - break; - case "stream": - changeDownloadButton("disabled", '?..'); - - let probeStream = await fetch(`${j.url}&p=1`).then(r => r.json()).catch(() => {}); - if (!probeStream) return internetError(); - - if (probeStream.status !== "continue") { - changeButton("error", probeStream.text); - return; - } - - changeDownloadButton("disabled", '>>>'); - if (sGet("downloadPopup") === "true") { - popup('download', 1, j.url) - } else { - if (isMobile || isSafari) { - window.location.href = j.url; - } else { - window.open(j.url, '_blank'); - } - } - setTimeout(() => { changeButton("default") }, 2500); - break; - case "picker": - if (j.audio && j.picker) { - changeDownloadButton("disabled", '>>>'); - popup('picker', 1, { - audio: j.audio, - arr: j.picker, - type: j.pickerType - }); - setTimeout(() => { changeButton("default") }, 2500); - } else if (j.picker) { - changeDownloadButton("disabled", '>>>'); - popup('picker', 1, { - arr: j.picker, - type: j.pickerType - }); - setTimeout(() => { changeButton("default") }, 2500); - } else { - changeButton("error", loc.ErrorNoUrlReturned); - } - break; - case "success": - changeButton("error-default", j.text); - break; - default: - changeButton("error", loc.ErrorUnknownStatus); - break; - } -} - -const pasteClipboard = async() => { - try { - let clipboard = await navigator.clipboard.readText(); - let onlyURL = clipboard.match(/https:\/\/[^\s]+/g) - if (onlyURL) { - eid("url-input-area").value = onlyURL; - download(eid("url-input-area").value); - } - } catch (e) { - let errorMessage = loc.FeatureErrorGeneric; - let doError = true; - let error = String(e).toLowerCase(); - - if (error.includes("denied")) errorMessage = loc.ClipboardErrorNoPermission; - if (error.includes("dismissed") || isIOS) doError = false; - if (error.includes("function") && isFirefox) errorMessage = loc.ClipboardErrorFirefox; - - if (doError) popup("error", 1, errorMessage); - } -} - -const loadCelebrationsEmoji = async() => { - let aboutButtonBackup = eid("about-footer").innerHTML; - try { - let j = await fetch(`/onDemand?blockId=1`).then(r => r.json()).catch(() => {}); - if (j && j.status === "success" && j.text) { - eid("about-footer").innerHTML = eid("about-footer").innerHTML.replace( - `${aboutButtonBackup.split('> ')[0]}>`, - j.text - ) - } - } catch { - eid("about-footer").innerHTML = aboutButtonBackup; - } -} - -const loadOnDemand = async(elementId, blockId) => { - store.historyButton = eid(elementId).innerHTML; - eid(elementId).innerHTML = `
...
`; - - try { - if (!store.historyContent) { - let j = await fetch(`/onDemand?blockId=${blockId}`).then(r => r.json()).catch(() => {}); - if (!j) throw new Error(); - - if (j.status === "success") { - store.historyContent = j.text - } - } - eid(elementId).innerHTML = - ` - ${store.historyContent}`; - } catch { - eid(elementId).innerHTML = store.historyButton; - internetError() - } -} - -const restoreUpdateHistory = () => { - eid("changelog-history").innerHTML = store.historyButton; -} - -const loadSettings = () => { - if (sGet("alwaysVisibleButton") === "true") { - eid("alwaysVisibleButton").checked = true; - eid("download-button").value = '>>' - eid("download-button").style.padding = '0 1rem'; - } - if (sGet("downloadPopup") === "true" && !isIOS) { - eid("downloadPopup").checked = true; - } - if (sGet("reduceTransparency") === "true" || isOldFirefox) { - eid("cobalt-body").classList.add('no-transparency'); - } - if (sGet("disableAnimations") === "true") { - eid("cobalt-body").classList.add('no-animation'); - } - if (!isMobile) { - eid("cobalt-body").classList.add('desktop'); - } - if (isAndroid) { - eid("cobalt-body").classList.add('android'); - } - if (isIOS) { - eid("download-switcher") - .querySelector(".explanation") - .innerHTML = loc.DownloadPopupDescriptionIOS; - } - for (let i = 0; i < checkboxes.length; i++) { - try { - if (sGet(checkboxes[i]) === "true") eid(checkboxes[i]).checked = true; - } - catch { - console.error(`checkbox ${checkboxes[i]} failed to initialize`) - } - } - for (let i in switchers) { - changeSwitcher(i, sGet(i)) - } - updateFilenamePreview() -} - -window.onload = () => { - loadCelebrationsEmoji(); - - loadSettings(); - detectColorScheme(); - - changeDownloadButton("hidden"); - eid("url-input-area").value = ""; - - if (isIOS) { - sSet("downloadPopup", "true"); - eid("downloadPopup-chkbx").style.display = "none"; - } - - eid("home").style.visibility = 'visible'; - eid("home").classList.toggle("visible"); - - const pageQuery = new URLSearchParams(window.location.search); - if (pageQuery.has("u") && validLink(pageQuery.get("u"))) { - eid("url-input-area").value = pageQuery.get("u"); - button() - } - window.history.replaceState(null, '', window.location.pathname); - - // fix for animations not working in Safari - if (isIOS) { - document.addEventListener('touchstart', () => {}, true); - } -} - -eid("url-input-area").addEventListener("keydown", () => { - button(); -}) -eid("url-input-area").addEventListener("keyup", (e) => { - if (e.key === 'Enter') eid("download-button").click(); -}) - -document.addEventListener("keydown", (event) => { - if (event.key === "Tab") { - eid("download-button").value = '>>' - eid("download-button").style.padding = '0 1rem' - } -}) -document.onkeydown = (e) => { - if (!store.isPopupOpen) { - if (e.metaKey || e.ctrlKey || e.key === "/") eid("url-input-area").focus(); - if (e.key === "Escape" || e.key === "Clear") clearInput(); - - if (e.target === eid("url-input-area")) return; - - // top buttons - if (e.key === "D") pasteClipboard(); - if (e.key === "K") changeSwitcher('audioMode', 'false'); - if (e.key === "L") changeSwitcher('audioMode', 'true'); - - // popups - if (e.key === "B") popup('about', 1, 'about'); // open about - if (e.key === "N") popup('about', 1, 'changelog'); // open changelog - if (e.key === "M") popup('settings', 1); - - } else { - if (e.key === "Escape") hideAllPopups(); - } -} diff --git a/api/src/front/emoji/3d/film_frames.png b/api/src/front/emoji/3d/film_frames.png deleted file mode 100644 index 6522c5f737612757ac117488aeffaf48fff464c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8720 zcmXw9c{G*Z_df5v*LBU8WR7dhkfB0CTr$sdGSBmz44Gc@m?-m*YaS93K8V~55h^Ju z#6`x8B_zYI?;pSY&w2LR>#XOjz4uvXuVcm&dw+uG5NgrQp+(MBqfk$ua$iuc007d2#q;r>-!g`f}bKbxpV=_rJ1 z$_7~J#v0v>^s-M?k@SstwQQ;p@h=Jg%ZXt^%;1`3#c<5fT4>LL%k5Nmt2EE1&%X8# zeHt7+;u1!G|>n%RKDkCec#Lefwf+OzEXIgN4A+dY@!Erpd#DADW*M1Ckr>#?*L)l*JCM`Nr2fg;dx(WEz|*D*fwt_CO;&V}RGA z!S@Uf((3gmY1K>MwpZo`d+gA2gM)VOGHMzD;B3=WQ8Edc+ISWHZx4V8C$-GAi2uQV z=29JQ@iC!KMz1vXRnxS+BY6b!`VzKW9EauJ!0|D3Rc2(6N6{?Wzvzut&H;8Kh{KHObgdA77R zn|{!oc;oa}?tS|n{d*$CZGVo=&mO-J7r0+KxvY-Za{xb1#8qq7t-u}{6yh`gZcIhLVjzw;gM z1Sk&YzmmzZPS?Cmzn>>3H>x4xEHXzclv_%9wOO*JzFGI(05HaHn#E-YedKu-50+;( zvR)&&CKm)(6LY_sQ-z1T<@?&%#OH0c_ybM$u0PL3(U@NHEt*~=tphU@d1bmXdel=o zX^XT}g~S5+$r}weiMVX#Rye}>gg$e{iE;0H`j{AY4@L-K|P<9O&=t1 zy!mC+OhzShr&;JFMRCqX^sJ@tEtmhW;8q|#VOAMdl}%j#$q-_}z)NKd-`hrf;@qbY zj76j?LC)tHv2mzXv&lC(C<73&jbLdnD}<$Sq%l>zt2Hr?7Z0s}Er7}8A>$nsiHbxV z*tfUF+dOI_t3a9KO^X#^@YWh^T_mP`qHRanL)KOhSL)|`FDxl)n4WHbDZ$e-?&RJO zG4tk4is5=FZcwQ_bQ;TIM4_i-RgLeZeB?Rf-htmrDvTXKaCgXrTYVRC=rv8Irtq(| zxcg9lNZ%fU zijjQ4Vo)u#e_TacBJSNm_@5D zco8oOwOgGrHmOv^>*ljcg*$1=93;shBk#P;Z_}&Tbi2ESmO$IIEyp6-K%>0 zK`eV$_xI;d#BA8be@eS}3)Igikj57Y=F2M=rP?Q*?rKG-4*M+mw4ZQ?M~v$1+%;SN zyEfuc^9ieMdQP_Eih6Z@R}8WhA=xv&cvJ3Ru(N-UcI@u@C|Z9 z(`l?aT&i2L@x*`Wb`evvATo~3zr)JYD7%dL{}yjKOoR$<2!EuKpQFCPPVyz1Z0pia zUTixio%OFpX^k!qxC^E%P$`*MQ7!Z~PEDm}N9IpZv(;6}lq$Wdt>sQ-q)Mr*iDy(P z&gNkfvFKcHBfX9{cd{b{O8Lm9LaprdGV><2 zOp3MAYgY&sxx}v@jbs;07UVrz-x7@iFB(g{6{2k5cf~*On|jmke&_QgWUCq~%OhLe zjyl>F8A}5?hREBpFV7n*WJu8eLaQCg^3kS$R8!+xPy5e@$FW?8)t_-8TEd?)JM6{& zA!1buB7{Eu>P7p0|6cdSM(z>e+x!!zrW2ys^=2LRWrV1yYsCR0!r6X^sLa)F?WnSR z?UIisDXysBQLZ|L-j6dElB_xDTlc2E{^x0l1!GOuHhwqQx-Q%9)U*{}P2-sM{`3hE zvpVtF(>0rZ$6a5e~Nhmfx3RF0Bukenh1BoOZ9;t#*Iv^2>wa$J<)G z2I>A%fwD^O?MVeP`NtNw1bha`k-=$TP|u9#HA7&trb3 zrsA5K-W|R9P|m5(Q?FJ%wD~A(?IZ;ERvCvXOz=K`gF>ZMPh0Bq5!FmoF~6GL;e&yj ziStoCJL2F_94ZTPUj z(O-UZq3kD-@p1FeSILC0WbId)o+dOLe+axaS~_rC!tqyedC69iSPOuGc%x4`V>AX5 z&O~h({du5j@J7)1wDND#r=l-SXS#7pJS5b5#N__E>;OmaSltUXDVJ8zGurYBlB%=G+MiXAkbsl z@8gRGzp;=<^xc`P7T4y2jh_Rlwy%Fg1^ju_y;_sen4{beg#KfwDJPryII4e1vD5qy z-xlzKFlU*fr|*rCMHB%1ru>^Y=zuZE!ogbR7s|+vEF09BCem2IPyPKx+>tFJpkuG9 zM5)JJs*sDdOfco*rDN!`sdsqPeU$wKHAN|}s>WWzIE4rm4~9YWzqq7#Ujn!J_L-hz zMdY~TxEZvmp3VDWwO76c`E#b9Y0#~H9avBC?s<~=0;qG z)W@z39^)?T*!lf>6ATDY+f^V4y3SmGpOC|Xxwf~mwf1M04s6(VWex+@El8MLjB{nd;})!M|$F))74ad zJ6m@I>Eyl2%QZy~3WDcRX)%feV8@tnum~VV<*>*f)d8o%o&AHKwZ5r;qaF2suJ#O- zbEpzfEHPN1h^&X25K0K7->V;q5Ff&G1>wicdGCb%J1HK!quL(vVgxMX0TD@NcNDC* zM_2sm@Ft26i*A~+g<$@t@GvC|WX^)WpD-h>Y?&dz%ycrQhiJ$8I5OcW;x3GxX(1W+ z3XgLRCi<lEvfQpi>TVvHN}a~4EW=-q+FN>3LDefuF| zglUgl2sihRD319V!#|2;D{^HR z2wWFA!D-jJej3~Yu42(+ToHooFf#tgk=2bZiR=;*0*jR3l?~bs4dA59n6nU&@%W-< zx_Ci!D4@*(j7)V8kEzvr7IJC!`NY3b@d!59$%!H#VX*KmNS6d$X1#D-E*D{ z()R`MEgoaHZ3SGwdZRkPcu{Nz(3${hGn?>-Qp74;BDgSy#VgT z4}vIwCs@}PxTs&3*yGKaLG4CE31s29<^&|3bZe8AfK&#Yxe&FQBN(HlX2B)PGa)Qs zu7SB+UI`k4C7ItwlPpQ&8w0f(06y;#J8^(%1T=@7EJp))It&n|p!duFI3)`Zp%c(F zBeAx!(jE9h@C9=%{468U43W1EUv#7+aY8zG@%jpsoIz-!z!xV!C)O z??f{CBFR^4X@yj^pDHxYZ7If)KKBxaE2++-W3{5Sr4V;dYpf5ML%To!WO~0fJzcmP z{mh^D@9y&3u&Z}G0lvN|Y@JmCi9~x6l>?zx%ulhMImloXaUmb$E(rs>K{)3s?w`(f zs0AI`eL~YAkzJUDMsDg=T~_#k)v_ch7y<5|%knq(AQnjA4H0S3En3)tgVuYe+JO_N z1*~z)ydQugJqp=Qzi!3OG6E~GC(_L$e}Zsnv1oUCIFJPaf_}jq$Q(K*{xM$KTx~n% zY|z?^Rl0$swPE!;cEMe-{nsVJw3EPZu!xWgOPmYeh0tap1rzXfdwlEp$4!!gke%ah zH>Pu?II--P2py@d02IkX1o#KkmFvC*gqA~)*& zZXjPeKZmPO1>r2R^kBop8qkf~S&qYRt!t?c2Q*sgWBe*#fZj1W(Da2hndB$Z1%R_i znv7QtnFG4061dI1KuNRGz~?@FBPUR4Tx3znfJluuT^7S(j$}>1#0ai4UHeLfLKk7s zUK-3}2!IY}rY1P<(y9#!P+taH-pv4lQ|vlW3R5iHhp-0f{dLf-$<`(630Po>{s$F@ z8keTg{Kz(G>ea&kjP1MXagulme4EmegVT=7DhE(`p`=Qoqd@^+brx=cm}8?Xqy#I5 zxD-SNHa?Q}7*pv%(>)coES|$jy13rj79*s>Gl_m^%q3be3zDZ{;3BZ3rb?i|_j}b&muTLY^Lu6Fj?xod@3;pUw%!}z2 z1(IMZ_7OEpIN#ELeJRFYsc4CrDipS6G!v-#}IqER3nUI&U|`*C*jY~qFQ7W3A~ z8EM-&mWqKbN!zd&SfyU<8|yK&27}|QXaY(e_;aP{^Lui3U4{jS5V2LJgRUmZ9`Wmq z*-LSpw%y;+sg5{ldR2QCs}xWAIGmKj`SY#1!6{{SI~^(SB~r5*OjIbU3fW4hdACvy#mB&So&ff7Zr|-(re4KJwKEAV6ESLYM z$MH4Liay(K4=*`s4_AkRYJ4T?{g{=ek%v~HfRnLQVA`p%s`jq6t})iGrQB0TJTcfGEkjA5#6^Bt{+Z*w zr6GZQjOkN0!Y?B(^TV!k;XhpDrOap8oxqs9@ z4`!P8JXW8ku**vHrbUoElDr+SVE7pRg*?&q14ElGk6*Lw^h@hMK@_3JWy$YHu5gLm%sohBPg)^ux`eX zHlH- z66)!UKy8qwf^Wr_wNu&AUs8i2(a}W10SG-q?P_S*X&N4y9iuBun&wSwlLN}z7_$+c zmXv%Bu~|9MC(*nyhnpywgQV3Ux@+drde5&tM3jM{z%yiJ>wQBDB-219dbY#%60oHe z?CERT3sH{JFoM|(EVd-1_;@8ar8Ttl5ODBZ$=_#h&4A?P(qDIJikOI>lm(ylQ5rw* z{ATqlz3N}Fyy^ag68mv@oubDyEy~BES$m6nuUGY~H-#6!-|Jn27BNMxR00QP$tkNy zX7<(dwARYnY?k> zu2kB@TM^UT9KHKzw=5O#6a4e6PpID5Pq3A+M!hd48W9v3o=`Qnh?uhuz9OqHx>8KI zJZU9M-PCfwb}QHeYWf*;{dAkMe>eWS-Iq+$HMKui&kdk1=^|Fi`yUwqM8AqBFU@(e zmy36!4d$+Ag*}6!Ci3r{{P7n^JxKUG>lCkeG;hr2wu!&k-ee%Ae`e!EMhisskldMf zGm$Z$x5yeI^A^wcElBHMSm(A3w4^!3Yf;l-c29n}yiHK-5(W*NOc4v?d)c+G#8WF^ zO@v^Eint#W$qW-GUKIBFhj^r9NW{WPiP|Z77!+DFxcy-6@K5;K=iNh^kce+$-d8q5 z<0k1=6vyfYMoG`cpX+nYiN552`I4e{?Dx%(6I1IK#1zl}TK!Aoa}VCllwYB`mROsA zh012CeCN599rr}3mHd3*@PtQemxOguyXU&l+Z-FSgy1kEGbLeMUUtv~*(s;!+tlMP zUY9L}Hs_dm@*S1iSAKpWJ+rDLwa)3E=G>|b&F0RfJXb+HK9=Xh(bV{t-mlN()|R`P zy2WMcFMRdx{J3PR$UyCgRgH&q@WXXmLKQm2(_B^B?NzYg{ZfAEjML0%9d8y{!#e68 zatq%K9LobDS_{FiPwATF#lBK?w&NZhU(X3PkMAZqRq2daaq>>dOw?YtKYgtIWGLn} znOTTx;W4@~OD`v2^1wJVTg>viEV3orsMfSFehyd?qN;|5`+sKZIR~ND)X<4)YNJ;q zDh7fomT8`zI=f0RW?-s{Px@wApH|Vt`yZ?BBRbYq+5Uo9%tE}KO4kUEUup7*wUnTB zOiYVL{IlzRw60qDg*IeV&TpMd>~2l3vTwMA#hkn^6Ic)4_?qr`?SzeYsAula@gM%g zJE$|ZU#D+yRHv*yvKvFoyLs%J#0c_g{Sem6*A}A1MpQOh|G;jie;wC09_gd)*1l2* zT|NA*s#L;#_l4#7R1*hED4K^oMos&ldiH($mB$Z=Xba5U2f_;c8+y6N+BNkcQAwG( zlDnl^EzN-8thawNL$1@}U3H7)N=l!Xu(yrXh?YTHPR6@J)9=7d-HCtj;ytkD0I^U=qndc_fDj4nBQCo^~`^c|h;lnA_D`>}A zHR>~AA7%B?R97S(c~(XyTCv;Lxqy|S?5kW7-ox~*=d1-!VC>&}SY(Lyx~&EFxTOZ1 zdzQ5(%{&ah+uG=@uKr)y}~`w^&62ET-fCw9n4v6x94~_4o3LkHyeGO zZCZtmp7S9ZSt8Ee)?BAZVBy$ILCRZEpaW&gKfD)y1zfU56H5Z&ZVJNKJ=Lf>=?{=g zI?8~{7a<`7yvnSEfRkD*IgUq`bf1Tkcv*x4_?}&a^Zm#rHxncjs!A{7ICLJnNy z(0;-+xM~CNI25_SiK8WaF%<&Uvkg#7_in2M@I8l*Mvv7z0>UYNj|lSdOuqA_w3@n3}%P08<69o>RHS1k7ZN0G7WK>GpJm;omI( zPnpN|pk^{x`H5>VWo_%3IM^Pscr8~iCIen8PPR0rUI2tDrQpL*$EA?W72r1s<*DiN zS2%T~e{#T-AN0)4%*fwKrFj@ba*;trk>__R(D0*R2U1cr*8fTHCB6?V+$bme5d=kFamt){r zt2*nR{>j68niDPC_JE<*-_*>lN$}OAoLL=e)ANiv*5TV)#%rQjoT+!ZBFc&PmR>dZ!V&Puyg^Y7mPT@a!h@ujK0j>y3-xc z$nO_iRa%_O?z*+qoU+l@{(56`LX~6O@#2(@!1GVS(^(pY!-XCCg<4dbZN8eNH=I}( z88~0E9u3T1_>QAS7=q%;%r6$@?A!Kb%|9-5;hBA=uClx*DL?8+SrNL_5o4!CjEig7 z?HRzMU6hv*{m77-e}b%TE&r0q&9i`#;oKEJ!{K^CPjB)ah3r+I(f0C7m#s>UtOy@G zJccd2j`Xw@a%#>?-aILWoqV1OwGYe-9U)8fUA~Dis(f>J8HKHjy1Dwe_mt^xFdwGC zwP&*>r_x>Je}6Xq-%9pL`2S&iM$d2Dt^c7SltH1_d|>A%>Hm3}s(LC7%62jT2Xfk; A!2kdN diff --git a/api/src/front/emoji/3d/headphone.png b/api/src/front/emoji/3d/headphone.png deleted file mode 100644 index b46173a2915807ea81fa6023e735596e29293e18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11316 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 - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/alien_monster.svg b/api/src/front/emoji/alien_monster.svg deleted file mode 100644 index 66be00bd..00000000 --- a/api/src/front/emoji/alien_monster.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/biceps.svg b/api/src/front/emoji/biceps.svg deleted file mode 100644 index 4de9e74e..00000000 --- a/api/src/front/emoji/biceps.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/api/src/front/emoji/bird.svg b/api/src/front/emoji/bird.svg deleted file mode 100644 index 55cf0208..00000000 --- a/api/src/front/emoji/bird.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/api/src/front/emoji/boring_document.svg b/api/src/front/emoji/boring_document.svg deleted file mode 100644 index ec3e642f..00000000 --- a/api/src/front/emoji/boring_document.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/bubbles.svg b/api/src/front/emoji/bubbles.svg deleted file mode 100644 index e5bccc36..00000000 --- a/api/src/front/emoji/bubbles.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/api/src/front/emoji/cake.svg b/api/src/front/emoji/cake.svg deleted file mode 100644 index c6de34d4..00000000 --- a/api/src/front/emoji/cake.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/api/src/front/emoji/candle.svg b/api/src/front/emoji/candle.svg deleted file mode 100644 index f62a93d3..00000000 --- a/api/src/front/emoji/candle.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/api/src/front/emoji/cat.svg b/api/src/front/emoji/cat.svg deleted file mode 100644 index a29d581e..00000000 --- a/api/src/front/emoji/cat.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/api/src/front/emoji/cat_crying.svg b/api/src/front/emoji/cat_crying.svg deleted file mode 100644 index 896ae898..00000000 --- a/api/src/front/emoji/cat_crying.svg +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/cat_flabbergasted.svg b/api/src/front/emoji/cat_flabbergasted.svg deleted file mode 100644 index 92f72427..00000000 --- a/api/src/front/emoji/cat_flabbergasted.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/cat_grin.svg b/api/src/front/emoji/cat_grin.svg deleted file mode 100644 index 4b7cbb06..00000000 --- a/api/src/front/emoji/cat_grin.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/cat_smile.svg b/api/src/front/emoji/cat_smile.svg deleted file mode 100644 index 06ff249c..00000000 --- a/api/src/front/emoji/cat_smile.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/christmas_tree.svg b/api/src/front/emoji/christmas_tree.svg deleted file mode 100644 index dead8216..00000000 --- a/api/src/front/emoji/christmas_tree.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/api/src/front/emoji/clapper_board.svg b/api/src/front/emoji/clapper_board.svg deleted file mode 100644 index 8bcf482b..00000000 --- a/api/src/front/emoji/clapper_board.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/api/src/front/emoji/clipboard.svg b/api/src/front/emoji/clipboard.svg deleted file mode 100644 index b4d28229..00000000 --- a/api/src/front/emoji/clipboard.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/api/src/front/emoji/crystal_ball.svg b/api/src/front/emoji/crystal_ball.svg deleted file mode 100644 index d2a7f670..00000000 --- a/api/src/front/emoji/crystal_ball.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/api/src/front/emoji/dog.svg b/api/src/front/emoji/dog.svg deleted file mode 100644 index 03056a1f..00000000 --- a/api/src/front/emoji/dog.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/api/src/front/emoji/dragon_face.svg b/api/src/front/emoji/dragon_face.svg deleted file mode 100644 index 861ae074..00000000 --- a/api/src/front/emoji/dragon_face.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/api/src/front/emoji/dragon_face_wukko.svg b/api/src/front/emoji/dragon_face_wukko.svg deleted file mode 100644 index c389f4c8..00000000 --- a/api/src/front/emoji/dragon_face_wukko.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/api/src/front/emoji/elephant.svg b/api/src/front/emoji/elephant.svg deleted file mode 100644 index 3f96a89a..00000000 --- a/api/src/front/emoji/elephant.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/api/src/front/emoji/email.svg b/api/src/front/emoji/email.svg deleted file mode 100644 index 144c9534..00000000 --- a/api/src/front/emoji/email.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/film_frames.svg b/api/src/front/emoji/film_frames.svg deleted file mode 100644 index 7471d431..00000000 --- a/api/src/front/emoji/film_frames.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/api/src/front/emoji/gear.svg b/api/src/front/emoji/gear.svg deleted file mode 100644 index 8351a33a..00000000 --- a/api/src/front/emoji/gear.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/api/src/front/emoji/headphone.svg b/api/src/front/emoji/headphone.svg deleted file mode 100644 index 1c9b6702..00000000 --- a/api/src/front/emoji/headphone.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/keyboard.svg b/api/src/front/emoji/keyboard.svg deleted file mode 100644 index f6cb218b..00000000 --- a/api/src/front/emoji/keyboard.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/api/src/front/emoji/link.svg b/api/src/front/emoji/link.svg deleted file mode 100644 index c3d86605..00000000 --- a/api/src/front/emoji/link.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/api/src/front/emoji/locked.svg b/api/src/front/emoji/locked.svg deleted file mode 100644 index 98e9e0e7..00000000 --- a/api/src/front/emoji/locked.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/loudspeaker.svg b/api/src/front/emoji/loudspeaker.svg deleted file mode 100644 index 6acd5873..00000000 --- a/api/src/front/emoji/loudspeaker.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/api/src/front/emoji/magic_wand.svg b/api/src/front/emoji/magic_wand.svg deleted file mode 100644 index b10883b6..00000000 --- a/api/src/front/emoji/magic_wand.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/api/src/front/emoji/magnifying_glass.svg b/api/src/front/emoji/magnifying_glass.svg deleted file mode 100644 index 905da556..00000000 --- a/api/src/front/emoji/magnifying_glass.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/mailbox.svg b/api/src/front/emoji/mailbox.svg deleted file mode 100644 index 5dfd70b5..00000000 --- a/api/src/front/emoji/mailbox.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/api/src/front/emoji/mending_heart.svg b/api/src/front/emoji/mending_heart.svg deleted file mode 100644 index 3b647fa7..00000000 --- a/api/src/front/emoji/mending_heart.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/money_with_wings.svg b/api/src/front/emoji/money_with_wings.svg deleted file mode 100644 index 56d0cb0c..00000000 --- a/api/src/front/emoji/money_with_wings.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/api/src/front/emoji/musical_notes.svg b/api/src/front/emoji/musical_notes.svg deleted file mode 100644 index f66414f0..00000000 --- a/api/src/front/emoji/musical_notes.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/api/src/front/emoji/newspaper.svg b/api/src/front/emoji/newspaper.svg deleted file mode 100644 index ebe0b5fd..00000000 --- a/api/src/front/emoji/newspaper.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/octopus.svg b/api/src/front/emoji/octopus.svg deleted file mode 100644 index b8c6e906..00000000 --- a/api/src/front/emoji/octopus.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/api/src/front/emoji/party_popper.svg b/api/src/front/emoji/party_popper.svg deleted file mode 100644 index 93113d0f..00000000 --- a/api/src/front/emoji/party_popper.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/api/src/front/emoji/pinata.svg b/api/src/front/emoji/pinata.svg deleted file mode 100644 index cf260701..00000000 --- a/api/src/front/emoji/pinata.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/api/src/front/emoji/pumpkin.svg b/api/src/front/emoji/pumpkin.svg deleted file mode 100644 index 3dcf031a..00000000 --- a/api/src/front/emoji/pumpkin.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/api/src/front/emoji/question_mark.svg b/api/src/front/emoji/question_mark.svg deleted file mode 100644 index 3c7e887a..00000000 --- a/api/src/front/emoji/question_mark.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/api/src/front/emoji/sparkles.svg b/api/src/front/emoji/sparkles.svg deleted file mode 100644 index e9702d09..00000000 --- a/api/src/front/emoji/sparkles.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/api/src/front/emoji/sparkling_heart.svg b/api/src/front/emoji/sparkling_heart.svg deleted file mode 100644 index b5dd6eb2..00000000 --- a/api/src/front/emoji/sparkling_heart.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/api/src/front/emoji/wrench.svg b/api/src/front/emoji/wrench.svg deleted file mode 100644 index b186d3b3..00000000 --- a/api/src/front/emoji/wrench.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/api/src/front/fonts/files/notosansmono_3dVQ.woff2 b/api/src/front/fonts/files/notosansmono_3dVQ.woff2 deleted file mode 100644 index 1174c3628ccfb454e1934e3c3570f289cad42b9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9292 zcmV-SB(vLhPew8T0RR9103=KR4gdfE07_f{03-1L0RR9100000000000000000000 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 diff --git a/api/src/front/fonts/files/notosansmono_7dVXQQ.woff2 b/api/src/front/fonts/files/notosansmono_7dVXQQ.woff2 deleted file mode 100644 index e9fcb07d7865eb71abf45f9d3232f00cdb766753..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5912 zcmV+z7w71APew8T0RR9102del4gdfE04^*502aLf0RR9100000000000000000000 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 diff --git a/api/src/front/fonts/files/notosansmono_HdVXQQ.woff2 b/api/src/front/fonts/files/notosansmono_HdVXQQ.woff2 deleted file mode 100644 index 95050fe689e872094a48523cba6723519f3ab3ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4460 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 diff --git a/api/src/front/fonts/files/notosansmono_LdVXQQ.woff2 b/api/src/front/fonts/files/notosansmono_LdVXQQ.woff2 deleted file mode 100644 index 137ea72c0d381bec968d3b2c4ecb74fe75557b48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2592 zcmV+*3g7j2Pew8T0RR91016-g4gdfE02)XD013tb0RR9100000000000000000000 z0000QHX9%uHU?lnQ&d4zBmjI0qyV603xW&)0X7081B3_!AO(aP2Ot})7NeqmaZ+Lg z|2&M1S%-(IUB#+h8jGOPVbt=R z6CDt2{~E}C0l)v>+N<50nHSyw+fCTG%$X87xx0U9&i@l+Sq8Pg_(7{k?Go$n+ZzOo3hK*CQ7~G82qrTS5CQ0ysIpaXo$*>vcvn|gT-T!Xn^ee=q-STP$xi+1%Z%&D{|%5 zbjrozAONO34htcmbTC_dF(6yb;`-wKd14R|hIo;|#7eu#N$JnhU!{M`kGfnyDDfnN zh=q2M6VhGMU!=d4zn3manf-oG?9y-lL;~A^>*@mjgx`AWRuFWZ zxkCm+)DnK{93a|lA|8h%<6^IQ$LVJoUs}r( z1EVKmszYt(bu#Y;zx*2f)uH>#g6B@uMe$RexAd1Ob_n+UjpzNz#{KIzb>)OiRm+dw z`bHSPZRgGqGhcnOx3_NFojV~sw!C;Th+~KtMnO9U=PplwljGPv9Qo*4$8YNDB19&( zTzyD8tJJIB>{3U>sMF}tzjkNmDucltcs1nEizv?4`DR3+@9??Bf{$hVu3p>tHr8$1 zd*aHi{&SZeDmfamk?TBv`TW(chXQLaTp{zE&HH@G<_nX0=G?1sq1+@DAH4C-b_5&z zwr+<%`69vVgD2BIeA2w;*Ytfyv*V6#Ok4MB#IrEd2Yx1)oyTgjovIqu*V#3&6s!`5 z>bZiY1#7Ia=9y!NFuPurULU%+s(sXcyUCQ@piFBBTcp*7ElI0yRAp4FGc=*o4GXeX zSE@5LVVlU%wB^}hu&~mSrkGUzyyGO<25 z#oA$RuvCfj+2*XDIqi@fY4>o2nas-#;AKO{K`R_RTaz`zWJsIYkyV;MK2_abrkok7 zD5#K+8lv|?!L?ea? z)#k{|+{g(z)oIh)(hCaO)6!?uWJgZWirCLvo5#_d{%c?s!wO%+Qbjgf-^+ zx^YeAsR~VM{IvjGibqpOl_b|K#OGry{>?}GsqWOT9h4~5eU@f)nU6X^ zYaf}FTi;ldVUh|9jfI$F_3k}z)^=`xZ-gj!PD5AM$ko{xT$5K>D$A&TYV(!Znle3f zWf(F+e+Ng+@So092Kmj&m3jHu%!#Fmxg-4M#4Eh~&9*~9%y-mye}74kpn00E0L>Qn`+N0@iW~_@*z^&(%0(`66D^Jqu_Dkbs{$vq+>J4! ziYkgI8(0DzXg|beKT|HEAct7OZbflscr6qW6H!GKMU)LKF@l8|KS z$ffS_@0rCKK%Ek+WHh=MN|-()lTq^x<@AekcFmeFpYTT}8?2`w^{`u$>CyeKh4neG z{o-nhsWZWi|Bs!u6!cB1@n{+?MkP$2Q8}YF*)>b@34dg=!Fr0|p<#&W=_Y*b)N@P= z-e)?s-mt(IfLiUdvBe6aPTA8E8uHokzF|iFSy4|u{lfdg7;V5;09{f8$fgsi^E1{V zpEd6rX4Jwr+!Or*T-9Ubzg+gIMbY%To?9G36?#x_?VRsh5M7A9lwPVvZXY86C|TCj zwJ)VklJdJd!+Zt6d$-b!xR5h?)&Kv!4RB|l{@&oN00I7EvCB49{Qu1Zg4#4^jHung z3uag_80nA!=z#`_D1-{xh{2D5_F^?SZHZ7i=3*7Tz$7ip!QfsM@8>O63-j_ygr%@B ztYeV^>B~ABGFglTz;zCVf5_hFt!jM>db*bo0E-fZf@H!Efl}_PTLU6|F(6h5pccF~ z!d`6~qrzv_;S@VHVB13UUbRJ-eb-ju81J@5XmVRyBGTATAk_N&2r@DqS=zLl#?ER2 z3kNx+SR;)hm#0lzxw_dnRoocQG6E{2fac!HaB`xn#@S8d*iBxmv4O6o+BmdrsnVd8 z9xu`6ur?Q4tR`v6P!nX=W)19=P_d1!@si~!Q+eX22J3Jw4u@XZDP}!YF2|qaR^@EE zwo9U*z!+uq-CC0)@>R3_yxZ7Kpim}PalP?148hEe8(7O<*ujDU0KnBv2_OIz0001O CKLx%3 diff --git a/api/src/front/fonts/files/notosansmono_PdVXQQ.woff2 b/api/src/front/fonts/files/notosansmono_PdVXQQ.woff2 deleted file mode 100644 index e3267a5ef390d835dfeaa411c652a523045aad90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26380 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 diff --git a/api/src/front/fonts/files/notosansmono_ndVXQQ.woff2 b/api/src/front/fonts/files/notosansmono_ndVXQQ.woff2 deleted file mode 100644 index bb374b0a546c5711cfa8f97be947d5768065be78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5272 zcmV;J6ld#qPew8T0RR9102G)24gdfE04QVt02Dj`0RR9100000000000000000000 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 diff --git a/api/src/front/fonts/notosansmono.css b/api/src/front/fonts/notosansmono.css deleted file mode 100644 index 827b4f61..00000000 --- a/api/src/front/fonts/notosansmono.css +++ /dev/null @@ -1 +0,0 @@ -@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_DdVXQQ.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_ndVXQQ.woff2') format('woff2');unicode-range:U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_HdVXQQ.woff2') format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_7dVXQQ.woff2') format('woff2');unicode-range:U+0370-03FF}@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_LdVXQQ.woff2') format('woff2');unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_PdVXQQ.woff2') format('woff2');unicode-range:U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Noto Sans Mono';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url('files/notosansmono_3dVQ.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD} \ No newline at end of file diff --git a/api/src/front/icons/android-chrome-192x192.png b/api/src/front/icons/android-chrome-192x192.png deleted file mode 100644 index 0d3ac83a24696f6d2e99ffe51177a583e01a6533..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3580 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 diff --git a/api/src/front/icons/apple-touch-icon.png b/api/src/front/icons/apple-touch-icon.png deleted file mode 100644 index b2abfa63d553dc474982d8b3d36dee71f9ceb0ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3278 zcmeHK`8$+t8@3H*ERm%#QBi%iEMuw0k{V?ULn3CFtb?&+dF@hJhp~(-F_uOqQiG5g zQ$k1v8BDyg6?!f4A|xtB-}8R|!uR9%{qWrPaXiO;U)Oz|&v{<=`J~&~q9hY(L*vB^RhkK5W4Bcg< zh%2aU;jDap2Jh-wyph`1O_3^2%PH>7K@d`}QBGcv8!PM9yoKKBio*?#%x+kS-3 z%DuK7#3$!(EmrD*^;@+=TmJaCwWfE2$|~(CBq0;!oMdEN9y+Q^s+=d=sVN{kSrgHy zFIyrRb14BCS6~~JiX7pu7q#=NAMP8p^D~;2w2{F_+R>n`ij%4Y-K5KTZV&TmbY4Wq|4#67t0e&t#FCCA%`fy*zwG^t zmP_YBnUDr&A%@k`i^!EXlTCpO++zL4;15R4v0J{w%rR*Au=$>O!rv+9ZhmjLtL^GC z-5#&AwK$M}DO0|0tlmBUw1|`oo{JV6QPC|xQq>(e5o^Hfypj@)eyR@jI4ZlBNgO)$ zLUBeznr_&w=#C7Iw`t-@%eue3nag4s6vGLribfH=TJ(e`d)lnjBEcvGof@YcVUZ*v zsh9&2lka_KO`V^576K+^9v!k;^3FzlZa`$TJL?c_!l1Xj)&PuRR`{sNZme-IIV~j!>Vtmua6&_ zVh82-+&S7~2zm>liNky3a^{Zq%OjH~?i@9n@5@)!3x0ogqA3vjK2`ZCgw|W6WGp|n z*ht|?S3{!|jib1jZJJS}mF_7pQ%KtA3Oudv_$u2G?8>k|iAJMyVTJ)hi(huu@QC>R zR?Pi#uG-h0OHC@_3Eaew|7zfOL?+9;3&RxaUE2M+eB7tMP$Em))bvBEtvmaAvB}Nv zx_24pC~y(s(sJQH!4kI3VGDUBhJjY~Zf)MY@(cEj-hCb4KYwUZZHZnl1dvMoGW!_5 z*kLEbOR%ErhiSOKY^}Z4Y!7@`)z~ld;4G;Xq(v4~8UHL;?tNRA8jK*BYz_^oJ_NH1 zo9|T)nqbQ~{pWh>#+i$lin#9;mx5mm;He>2Xq0DemWrHOWPg?uO z)+ee_B?8woG<38Ii$s;r_fs$L?yPBcrAp-A z*!~-IB*UXRq`y$B@y2#Q^UWV&YWimm5Ae1hT96yOmY z15fs;28dJ$lqnpn!xT2)C_>24!`m)PqWP~#V*RhvWqf8k675@K{?NBRSb6jNMkm*O z&T)6-(dA@=f`ulaP|(G@6kjp=am)s?%Dw%zo_DX*@u-|6Pf^ZT4y-HpkdB*>zjlA1 zArM)#--21d^GKQ?C4t1=0C-mthsyGdql2xl7Gt}HuZo)qA2@Q|?P1y#;2gptrKg!R zp0t`&Gaw4Rh$TDyL2dg=vPAupp{KW3W4 zQBkYoo^Cs{3HNj}I7MBv9%Z?qu=6-dVDO>2(apJ@(nuxTuM`pHF_5uO=(iq|9Y7N1 z&UMxB#bX%#mO|w3M70xjPESe{GQO_QxHmjjv+RUPb5lHw$EVxk%wy*O+8x6n=E;d} zgZB^v{x(eCfjoXeVWF4!xfoInw!WnMYEi#rg$rLDbpf$ zyS;|+2=i%>wg7M{aq`DhH;k~4zu&kU4N($Av=%X3TiBS=(>9aOLXMh?{cfB8t2@(T zDMrz=3ciTzuwTMG-dl%ZN+Va^4V=3Ds&UkB#)#vvWO)X_&n81H!hog6$W+Jy#9X?q zj1z#_pi_9{%LFd_nmS91A-=uQLBcM?1f2_C|nQw*mpc$`2A-%aBB*3{y@E&%O&Ma4Z3Z z2!;rgf4v46;4@n7*m&z_RCDA?;RwhYMu<`mtJH$f5;fSSp6kkN?8k02?}>{atY&rN zFQFOdPQm%TpWkSUR|s5N{$KB)BzbAew{3CJ%;blTHBMJ9xBC>7qwX9j2L1lIvlf1i z#e;?ysccDVc^z2|)g8z?X)Tnd@j~P5kYFGkZnn0|gaR46N2_SpW79awcU)Vd3~QEP zXM(SH^;JtsI?c4lw<9c8Ih4arW8+T4P-f7~wRinaNP;k5;JxD_Ci`1MX12J$)RLRS zKb3SHfxAUD8v{MTwwyCg{)U`uU(#@_wxnvidVgJd>#OiMQ^5b}VGwb~^9+R3Uk6as zb=%a>*iDS0b#?sY@QcVmh8;aA-&u^W{nk%*?)Rm)6^rZInZU9gGe7(^nBsX6=#AVG zpV}sJRHvQO`OVNY)5Mr@{8KN|?AH@mAamXB=NC#LDXFq&i51c7)5A{*s7{4H>L5|n z>(i~yJF63f=`YP1K+U7y8YVZ9eu`9*F%h8g>(S&R3GFww->mL)uDCxpZ~2w*2vATS z&!;7Tr0rB&Bn>Ua!a<+@`g%Ko#KIY*TyFn}k)Tdh7;skY*)gn#wtlMtoWrKI%#LWM zhNfP}&i9*tG8`7ZE{`m3T*A7S0WDRtYBLyBz>690dR10sQ))Dq^6UmqjrGTzMR+S; z_LnecAXek=&0y;Sp7uE}1^%p-^$8|%fbmQ9a+!g9u>_zigt+8pfc_Mil4hKhxtZ?G zb(!6u>Sl`3=aj;WOkM>WPl+lannVx8Nh!GJQBYu&hzDNTBGiW4$MK>RLJ%rj(f{1& z&W|nPqmht!YfLRtRd2CNa$&gmaeS68=i<*!_keF4jqHI1$O|4D0De&T N(3fm4)*(HT{tc`e{yYEx diff --git a/api/src/front/icons/favicon-16x16.png b/api/src/front/icons/favicon-16x16.png deleted file mode 100644 index 94f9c1a907c7a34881b87009d4903b834f305556..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UA=6Sj}hDcoQ?c2-8m?+|Me(!y8 z)?Sy88@=p~?n;X$bu=BR;$ZDnf6QwpHFZAQ#Q*`VY|+_wHC%iQPtNpFW3Km5*`~6w zVFpJ}z@~Cxt7i+Pn6g&Lv^o8~QP1ke*z&IK`m*9E^Un4&37ZQfbDyV%FmnDWzIt%~ z6|TVLTlbs|>b+Vz%k99WYQIet2Q8Yp6huC2Fp5;AC5e4;xGM-W}gvosB>hpHfYLLS0VLDM<83$;d| zeamHOGYLWGj>peT`3wQN4_tn1Bq65f$YUYhYOSEXr(`jm0ICKq$oJJ4r0h;bif&;o z4hbVe?=97A*??k?sTPQ;L5|CfJ{u4WxBV8!;sLv&kEq~b{&;)=hwo_B9UbI+00000 LNkvXXu0mjfO!k}l diff --git a/api/src/front/icons/favicon.ico b/api/src/front/icons/favicon.ico deleted file mode 100644 index 1b08e4bb950906a1ac5b144997ccb290d21b1e8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9662 zcmeHKODJ|*7~bwlxr8I+eh!DC4`Cu@ppcMT2Fh`n8JWqLnNlWZGU8;wKvI-M2IMZ6 zC<7w~QX+Tn`JVNkXSIC)r_S%&=RbAY>uc||+iN}Rectzd-nG|fS$^)H%VoLmsn(yr zS=KL>W&Q5H+^?)Z+!x-f_N!&BhJU-hy-;^?-<`{efujLO1C9n94LBNbG~j69Zw>hS z`%6GTz?b6T3)YS^8F&W<1}g49$^|(3{i9f4xx*gTNJ~qTm6a8#t*zDZ#~6L`W{22< zf&y7xU6u0k@()=0&U0Yj|s;VmS^Yc@_VD7(> z53U~>87aHFyUI5Bzr4I?E_-`>(%jsvwFEBkgZz_{lH~mS+$(l{eO+p5YCia3#=tHe zVV$6$AZcxFm7Sd(#Rai6{Wv%{P~(_~`Sb(Np`oGD+1V+_$H!i=o12?bUth0tKrG|u zs~=d0Yhi7~3>siFb#-)fByDYN5*!??{D3Z~4fxj5(jr@1TiOp`sVl^$si{fNx6=>s zH+6xSU{6_CSkU%OKTb|gq`kdeLPA26A0`&Os;jG2J)1G0AN%|JDwouf89!fh0X*Uf z4qU6axL9UpW(54vP$T4WdU`5dU0q)N0KTlOOy=k3^?Vb1czF0Bm$YYBPd})w+}vE5 zn3&LYVb%w96&o9?YlB#FDJ(3M>FH_ZJA5#8g}p8!B0^zli#R)aaDld&6MXLwJ2dQ@ zPft%OzFApWnm_G&VsmnG^nL{#@z}$Gp$+1F?Xey>a2?hJ>>`HL)Ya9MBqSt!;NXd^ ztgMvfEG{l8 zEO5j=JUqzo@UYe$Z826~>9K~nm!zhq%J}%WiWvx)nnz7%XJ>!P8+w|Wn$moMMFaoI z$w|q`$k5oYa5XWWyklZwWN2te?(grFP1r`=q2b$5T3V`Y!(Y?~oy2>)hn@PoJ?4a*p|7VPVqO*C*H4*V;BUjy=Dzu~E&#T-Y}4M@2=+z`%gq z-rjzP#W@7u1adNQeCJD#_;q)83u*}soSE;-%S-9$>G|%P%Xs7b(A(Q9s9`kVh{bvx z9Uc1oM4x@(N-XV%hllHLzRCOU?oI{=2Li|2vU4$GzF(7|sRQk4j2P zG;h0W)0=(s9pdEeJZ#SS>=|{B3*$eVx5)|d{Azvqf;Blf&-U$YPAr{RIvQ{^;Ap_n SfTMx`g$CSdblQIvfxiHiNSp`& diff --git a/api/src/front/icons/generic.png b/api/src/front/icons/generic.png deleted file mode 100644 index d1777d489d3824d04f6d6db9f1d7e167b5f4dbc7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9818 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 diff --git a/api/src/front/icons/maskable/128.png b/api/src/front/icons/maskable/128.png deleted file mode 100644 index e8213cfe5828cc4435d15e4da25d5e57b3f2c472..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 815 zcmV+~1JL}5P)C0002YP)t-s00030 z|Ns5{{T3D$`T6gwv<-QBdbw3CyQgoK2BeSJ7MIN;#m$jHdIx3{aStB{b8 ziHV7HbaZ89Wll~`OG`^dMMVh-3GD3b=H}+)SUnwoKOaadSbR8&+y zKR-J=J2EmdBqSvB^YiWP?Y+IdsHmuwm6d^kfm&KxK|w*<+S%6WNt=~O%#0006W zNkl~PJx+&|Ey*O!vMtM z0l3frw1Tc_06Oak7&-Xg;QW2S#V`+SP;tw7(*UgV-4J)bEL6tXHm_6jcfe)WL#2`C z^pvCxYQZOPnYnmjEe_e1R;e}afJxF`qSEYw&U<>KR%V+}`GZQW7=tcuQS(b4F!4$* zDxC`GqGF9MM9MbdR7Pdl&bDKpT4M}c!j*R4%@WWZmegL32{75OQCUy3Z4yxH&w)uY z_33g45$FmNq*kl|mydf?-m|GNtW)~{E|o1R*Dc>xsS14TfCgL(FF%k2Y<5N8IAGFq zmQjR!I-$qjFb%Erf4HCZ}!tI^jGABIgZQgf~3>jWYa&{Am z)r<5N26}69JOE|`)Ren=`+P;>w>VzNx{WH5lAQyxuj}pI0}e=@2iX(aNa~vycsO{` ziUCXmI(Z;01Kd&!U>NZ7^Zo diff --git a/api/src/front/icons/maskable/192.png b/api/src/front/icons/maskable/192.png deleted file mode 100644 index 8268d89a58c3c6334d887d403c4a9a615343c5f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1014 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 nv_N+M?+@W;^HqDlV&cz;Xd diff --git a/api/src/front/icons/maskable/48.png b/api/src/front/icons/maskable/48.png deleted file mode 100644 index 02a5bca0fb8b6cf17cd1327fab8f337e61c79489..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 390 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 diff --git a/api/src/front/icons/maskable/72.png b/api/src/front/icons/maskable/72.png deleted file mode 100644 index 903f6bd500691990bc32f79d2192de30a594dbac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 569 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 diff --git a/api/src/front/manifest.webmanifest b/api/src/front/manifest.webmanifest deleted file mode 100644 index 3777ca6d..00000000 --- a/api/src/front/manifest.webmanifest +++ /dev/null @@ -1,75 +0,0 @@ -{ - "name": "cobalt", - "short_name": "cobalt", - "start_url": "/", - "icons": [ - { - "src": "/icons/android-chrome-192x192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "/icons/android-chrome-512x512.png", - "sizes": "512x512", - "type": "image/png" - }, - { - "src": "/icons/generic.png", - "sizes": "512x512", - "type": "image/png", - "purpose": "any" - }, - { - "src": "/icons/maskable/48.png", - "sizes": "48x48", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "/icons/maskable/72.png", - "sizes": "72x72", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "/icons/maskable/96.png", - "sizes": "96x96", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "/icons/maskable/128.png", - "sizes": "128x128", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "/icons/maskable/192.png", - "sizes": "192x192", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "/icons/maskable/384.png", - "sizes": "384x384", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "/icons/maskable/512.png", - "sizes": "512x512", - "type": "image/png", - "purpose": "maskable" - } - ], - "share_target": { - "action": "/", - "params": { - "text": "u", - "url": "u" - } - }, - "theme_color": "#000000", - "background_color": "#000000", - "display": "standalone" -} diff --git a/api/src/front/robots.txt b/api/src/front/robots.txt deleted file mode 100644 index a5218222..00000000 --- a/api/src/front/robots.txt +++ /dev/null @@ -1,8 +0,0 @@ -User-Agent: * -Disallow: /emoji/ -Disallow: /fonts/ -Disallow: /icons/ -Disallow: /sponsors/ -Disallow: /updateBanners/ -Disallow: /*.js -Disallow: /*.css diff --git a/api/src/front/sponsors/royale.svg b/api/src/front/sponsors/royale.svg deleted file mode 100644 index c0338038..00000000 --- a/api/src/front/sponsors/royale.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/api/src/modules/build.js b/api/src/modules/build.js deleted file mode 100644 index a4c4aa6b..00000000 --- a/api/src/modules/build.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as esbuild from "esbuild"; -import * as fs from "fs"; -import { loadLoc, languageList } from "../localization/manager.js"; -import { cleanHTML } from "./sub/utils.js"; - -import page from "./pageRender/page.js"; - -export async function buildFront(commitHash, branch) { - try { - // preload localization files - await loadLoc(); - - // build html - if (!fs.existsSync('./build/')){ - fs.mkdirSync('./build/'); - } - // get rid of old build path - if (fs.existsSync('./min')) { - fs.rmSync('./min', { recursive: true, force: true }); - } - for (let i in languageList) { - i = languageList[i]; - let params = { - "hash": commitHash, - "lang": i, - "branch": branch - } - fs.writeFileSync(`./build/${i}.html`, cleanHTML(page(params))); - } - // build js & css - await esbuild.build({ - entryPoints: ['src/front/cobalt.js', 'src/front/cobalt.css'], - outdir: 'build/min/', - minify: true, - loader: { '.js': 'js', '.css': 'css', }, - charset: 'utf8' - }) - } catch { - return; - } -} diff --git a/api/src/modules/buildStatic.js b/api/src/modules/buildStatic.js deleted file mode 100644 index d3ed909f..00000000 --- a/api/src/modules/buildStatic.js +++ /dev/null @@ -1,7 +0,0 @@ -import { buildFront } from "./build.js"; -import { getCurrentBranch, shortCommit } from "./sub/currentCommit.js"; - -const commitHash = shortCommit(); -const branch = getCurrentBranch(); - -await buildFront(commitHash, branch); diff --git a/api/src/modules/changelog/changelogManager.js b/api/src/modules/changelog/changelogManager.js deleted file mode 100644 index b8763fb5..00000000 --- a/api/src/modules/changelog/changelogManager.js +++ /dev/null @@ -1,46 +0,0 @@ -import { replaceBase } from "../../localization/manager.js"; -import { loadJSON } from "../sub/loadFromFs.js"; - -let changelog = loadJSON('./src/modules/changelog/changelog.json') - -export default function(string) { - try { - const currentChangelog = changelog.current; - - switch (string) { - case "version": - return `v.${currentChangelog.version}${ - currentChangelog.date ? `ยท ${currentChangelog.date}` : '' - }` - case "title": - return replaceBase(currentChangelog.title); - case "banner": - const currentBanner = changelog.current.banner; - return currentBanner ? { - ...currentBanner, - url: `updateBanners/${currentBanner.file}` - } : false; - case "content": - return replaceBase(currentChangelog.content); - case "history": - return changelog.history.map((log) => { - const banner = log.banner; - return { - title: replaceBase(log.title), - version: `v.${log.version}${ - log.date ? `ยท ${log.date}` : '' - }`, - content: replaceBase(log.content), - banner: banner ? { - ...banner, - url: `updateBanners/${banner.file}` - } : false, - } - }); - default: - return replaceBase(changelog[string]) - } - } catch (e) { - return `!!CHANGELOG_${string}!!` - } -} diff --git a/api/src/modules/emoji.js b/api/src/modules/emoji.js deleted file mode 100644 index 82273ac4..00000000 --- a/api/src/modules/emoji.js +++ /dev/null @@ -1,66 +0,0 @@ -const names = { - "๐ŸŽถ": "musical_notes", - "๐ŸŽฌ": "clapper_board", - "๐ŸŽ‰": "party_popper", - "โ“": "question_mark", - "โœจ": "sparkles", - "๐Ÿช…": "pinata", - "๐Ÿช„": "magic_wand", - "๐Ÿฒ": "dragon_face", - "๐Ÿ€„": "dragon_face_wukko", - "๐Ÿ’ธ": "money_with_wings", - "โš™๏ธ": "gear", - "๐Ÿ“‹": "clipboard", - "๐ŸŽƒ": "pumpkin", - "๐ŸŽ„": "christmas_tree", - "๐Ÿ•ฏ๏ธ": "candle", - "๐Ÿ˜บ": "cat", - "๐Ÿถ": "dog", - "๐ŸŽ‚": "cake", - "๐Ÿ˜": "elephant", - "๐Ÿฆ": "bird", - "๐Ÿ™": "octopus", - "๐Ÿ”ฎ": "crystal_ball", - "๐Ÿ’ช": "biceps", - "๐Ÿ’–": "sparkling_heart", - "๐Ÿ‘พ": "alien_monster", - "๐Ÿ˜ฟ": "cat_crying", - "๐Ÿ™€": "cat_flabbergasted", - "๐Ÿฑ": "cat_smile", - "โค๏ธโ€๐Ÿฉน": "mending_heart", - "๐Ÿ”’": "locked", - "๐Ÿ”": "magnifying_glass", - "๐Ÿ”—": "link", - "โŒจ": "keyboard", - "๐Ÿ“‘": "boring_document", - "๐Ÿงฎ": "abacus", - "๐Ÿ˜ธ": "cat_grin", - "๐Ÿ“ฐ": "newspaper", - "๐ŸŽž๏ธ": "film_frames", - "๐ŸŽง": "headphone", - "๐Ÿ“ง": "email", - "๐Ÿ“ฌ": "mailbox", - "๐Ÿ“ข": "loudspeaker", - "๐Ÿ”ง": "wrench", - "๐Ÿซง": "bubbles" -} -let sizing = { - 18: 0.8, - 22: 0.4, - 30: 0.7, - 32: 0.8, - 48: 0.9, - 64: 0.9, - 78: 0.9 -} -export default function(emoji, size, disablePadding, fluent) { - if (!size) size = 22; - let padding = size !== 22 ? `margin-right:${sizing[size] ? sizing[size] : "0.4"}rem;` : false; - if (disablePadding) padding = 'margin-right:0!important;'; - - if (!names[emoji]) emoji = "โ“"; - - let filePath = `emoji/${names[emoji]}.svg`; - if (fluent) filePath = `emoji/3d/${names[emoji]}.png`; - return `` -} diff --git a/api/src/modules/pageRender/elements.js b/api/src/modules/pageRender/elements.js deleted file mode 100644 index ae14cd88..00000000 --- a/api/src/modules/pageRender/elements.js +++ /dev/null @@ -1,270 +0,0 @@ -import { authorInfo, celebrations, sponsors, env } from "../config.js"; -import emoji from "../emoji.js"; -import { loadFile } from "../sub/loadFromFs.js"; - -export const backButtonSVG = ` - -` - -export const dropdownSVG = ` - -` - -export const linkSVG = '' - -export function switcher(obj) { - let items = ``; - if (obj.name === "download") { - items = obj.items; - } else { - for (let i = 0; i < obj.items.length; i++) { - let classes = obj.items[i]["classes"] ? obj.items[i]["classes"] : []; - items += `` - } - } - - if (obj.noParent) return `
${items}
`; - return `
- ${obj.subtitle ? `
${obj.subtitle}
` : ``} -
${items}
- ${obj.explanation ? `
${obj.explanation}
` : ``} -
` -} -export function checkbox(obj) { - let paddings = ["bottom-margin", "top-margin", "no-margin", "top-margin-only"]; - let checkboxes = ``; - for (let i = 0; i < obj.length; i++) { - let paddingClass = obj[i].padding && paddings.includes(obj[i].padding) ? ` ${obj[i].padding}` : ''; - - checkboxes += `` - } - return checkboxes -} -export function sep(paddingType) { - let paddingClass = `` - switch(paddingType) { - case 0: - paddingClass += ` top-margin`; - break; - } - return `
` -} -export function popup(obj) { - let classes = obj.classes ? obj.classes : []; - let body = obj.body; - if (Array.isArray(obj.body)) { - body = `` - for (let i = 0; i < obj.body.length; i++) { - if (obj.body[i]["text"].length > 0) { - classes = obj.body[i]["classes"] ?? [] - if (i !== obj.body.length - 1 && !obj.body[i]["nopadding"]) { - classes.push("desc-padding") - } - body += obj.body[i]["raw"] ? obj.body[i]["text"] : `
${obj.body[i]["text"]}
` - } - } - } - return ` - ${obj.standalone ? `
` : ''}` -} - -export function multiPagePopup(obj) { - let tabs = ` - `; - - let tabContent = ``; - for (let i = 0; i < obj.tabs.length; i++) { - tabs += `` - tabContent += `` - } - - return ` - ` -} -export function collapsibleList(arr) { - let items = ``; - - for (let i = 0; i < arr.length; i++) { - let classes = arr[i]["classes"] ? arr[i]["classes"] : []; - items += `
-
-
${arr[i]["title"]}
-
${dropdownSVG}
-
-
${arr[i]["body"]}
-
` - } - return items; -} -export function popupWithBottomButtons(obj) { - let tabs = ` - ` - - for (let i = 0; i < obj.buttons.length; i++) { - tabs += obj.buttons[i] - } - return ` - ` -} -export function socialLink(emji, name, url) { - return `` -} -export function socialLinks(lang) { - let links = authorInfo.support[lang] ? authorInfo.support[lang] : authorInfo.support.default; - let r = ``; - for (let i in links) { - r += socialLink( - emoji(links[i].emoji), links[i].name, links[i].url - ) - } - return r -} -export function settingsCategory(obj) { - return `
-
${obj.title ?? obj.name}
-
${obj.body}
-
` -} - -export function footerButtons(obj) { - let items = `` - for (let i = 0; i < obj.length; i++) { - let buttonName = obj[i]["context"] ? `${obj[i]["name"]}-${obj[i]["context"]}` : obj[i]["name"], - context = obj[i]["context"] ? `, '${obj[i]["context"]}'` : '', - buttonName2, - context2; - - if (obj[i + 1]) { - buttonName2 = obj[i + 1]["context"] ? `${obj[i + 1]["name"]}-${obj[i + 1]["context"]}` : obj[i + 1]["name"]; - context2 = obj[i + 1]["context"] ? `, '${obj[i + 1]["context"]}'` : ''; - } - - items += - ``; - i++; - } - return ` - ` -} -export function explanation(text) { - return `
${text}
` -} -export function celebrationsEmoji() { - try { - let n = new Date().toISOString().split('T')[0].split('-'); - let dm = `${n[1]}-${n[2]}`; - let f = Object.keys(celebrations).includes(dm) ? celebrations[dm] : "๐Ÿฒ"; - return f != "๐Ÿฒ" ? emoji(f, 22) : false; - } catch (e) { - return false - } -} -export function urgentNotice(obj) { - if (obj.visible) { - return `
` + - `${emoji(obj.emoji, 18)} ${obj.text}` + - `
` - } - return `` -} -export function keyboardShortcuts(arr) { - let base = `
`; - - for (let i = 0; i < arr.length; i++) { - base += `
`; - for (let c = 0; c < arr[i].items.length; c++) { - let combo = arr[i].items[c].combo.split('+').map( - key => `${key}` - ).join("+") - base += `
${combo}: ${arr[i].items[c].name}
` - } - base += `
` - } - base += `
`; - - return base; -} -export function webLoc(t, arr) { - let base = ``; - for (let i = 0; i < arr.length; i++) { - base += `${arr[i]}:` + "`" + t(arr[i]) + "`" + `,` - } - return `{${base}};` -} - -export function sponsoredList() { - let base = ``; - let altText = `` - for (let i = 0; i < sponsors.length; i++) { - let s = sponsors[i]; - let loadedLogo = loadFile(`./src/front/sponsors/${s.name}.svg`); - - altText += `${s.fullName ? s.fullName : s.name}, `; - base += - `` - } - return `` -} - -export function betaTag() { - return env.isBeta ? 'ฮฒ' : '' -} diff --git a/api/src/modules/pageRender/findRendered.js b/api/src/modules/pageRender/findRendered.js deleted file mode 100644 index 1cbb01aa..00000000 --- a/api/src/modules/pageRender/findRendered.js +++ /dev/null @@ -1,6 +0,0 @@ -import { languageList } from "../../localization/manager.js"; - -export default function(lang) { - let language = languageList.includes(lang) ? lang : "en"; - return `/build/${language}.html`; -} diff --git a/api/src/modules/pageRender/onDemand.js b/api/src/modules/pageRender/onDemand.js deleted file mode 100644 index 7667708f..00000000 --- a/api/src/modules/pageRender/onDemand.js +++ /dev/null @@ -1,33 +0,0 @@ -import changelogManager from "../changelog/changelogManager.js" -import { cleanHTML } from "../sub/utils.js"; - -let cache = {} - -export function changelogHistory() { // blockId 0 - if (cache['0']) return cache['0']; - let history = changelogManager("history"); - let render = ``; - - let historyLen = history.length; - for (let i in history) { - let separator = (i !== 0 && i !== historyLen) ? '
' : ''; - - render += ` - ${separator}${history[i]["banner"] ? - `
- `+ - ` -
` : ''} - - - ` - } - render = cleanHTML(render); - cache['0'] = render; - return render; -} diff --git a/api/src/modules/pageRender/page.js b/api/src/modules/pageRender/page.js deleted file mode 100644 index 2c166177..00000000 --- a/api/src/modules/pageRender/page.js +++ /dev/null @@ -1,666 +0,0 @@ -import { services as s, version, repo, donations, supportedAudio, links, env } from "../config.js"; -import { getCommitInfo } from "../sub/currentCommit.js"; -import loc from "../../localization/manager.js"; -import emoji from "../emoji.js"; -import changelogManager from "../changelog/changelogManager.js"; - -import { - checkbox, - collapsibleList, - explanation, - footerButtons, - multiPagePopup, - popup, - popupWithBottomButtons, - sep, - settingsCategory, - switcher, - socialLink, - socialLinks, - urgentNotice, - keyboardShortcuts, - webLoc, - sponsoredList, - betaTag, - linkSVG -} from "./elements.js"; - -let com = getCommitInfo(); - -let enabledServices = Object.keys(s).filter(p => s[p].enabled).sort().map((p) => { - return `
• ${s[p].alias ? s[p].alias : p}` -}).join('').substring(4) - -let donate = `` -let donateLinks = `` -let audioFormats = supportedAudio.map((p) => { - return { "action": p } -}) -audioFormats.unshift({ "action": "best" }) -for (let i in donations["links"]) { - donateLinks += `REPLACEME ${i}` -} -let extr = '' -for (let i in donations["crypto"]) { - donate += `
${i} (REPLACEME)
${donations["crypto"][i]}
` - extr = ' top-margin' -} - -export default function(obj) { - const t = (str, replace) => { - return loc(obj.lang, str, replace) - } - - audioFormats[0]["text"] = t('SettingsAudioFormatBest'); - - try { - return ` - - - - - - - ${t("AppTitleCobalt")} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${env.plausibleHostname ? - `` - : ''} - - - - ${multiPagePopup({ - name: "about", - closeAria: t('AccessibilityGoBack'), - tabs: [{ - name: "about", - title: `${emoji("๐Ÿฒ")} ${t('AboutTab')}`, - content: popup({ - name: "about", - header: { - aboveTitle: { - text: t('MadeWithLove'), - url: repo - }, - closeAria: t('AccessibilityGoBack'), - title: `${emoji("๐Ÿ”ฎ", 30)} ${t('TitlePopupAbout')}` - }, - body: [{ - text: t('AboutSummary') - }, { - text: collapsibleList([{ - name: "services", - title: `${emoji("๐Ÿ”—")} ${t("CollapseServices")}`, - body: `${enabledServices}` - + `
${t("SupportNotAffiliated")}` - + `${obj.lang === "ru" ? `
${t("SupportMetaNoticeRU")}` : ''}` - + `
` - + `${t("ServicesNote")}` - }, { - name: "keyboard", - title: `${emoji("โŒจ")} ${t("CollapseKeyboard")}`, - body: - `${t("KeyboardShortcutsIntro")} - ${keyboardShortcuts([{ - items: [{ - combo: "Shift+D", - name: t("PasteFromClipboard") - }, { - combo: "Shift+K", - name: t("ModeToggleAuto") - }, { - combo: "Shift+L", - name: t("ModeToggleAudio") - }] - }, { - items: [{ - combo: "โŒ˜/Ctrl+V", - name: t("KeyboardShortcutQuickPaste") - }, { - combo: "Esc", - name: t("KeyboardShortcutClear") - }, { - combo: "Esc", - name: t("KeyboardShortcutClosePopup") - }] - }, { - items: [{ - combo: "Shift+B", - name: t("AboutTab") - }, { - combo: "Shift+N", - name: t("ChangelogTab") - }, { - combo: "Shift+M", - name: t("TitlePopupSettings") - }] - }])}` - }, { - name: "support", - title: `${emoji("โค๏ธโ€๐Ÿฉน")} ${t("CollapseSupport")}`, - body: `${t("SupportSelfTroubleshooting")}` - + `${socialLink(emoji("๐Ÿ“ข"), t("StatusPage"), links.statusPage)}` - + `${socialLink(emoji("๐Ÿ”ง"), t("TroubleshootingGuide"), links.troubleshootingGuide)}` - + `
` - + `${t("FollowSupport")}` - + `${socialLinks(obj.lang)}` - + `
` - + `${t("SourceCode")}` - + `${socialLink(emoji("๐Ÿ™"), repo.replace("https://github.com/", ''), repo)}` - }, { - name: "privacy", - title: `${emoji("๐Ÿ”’")} ${t("CollapsePrivacy")}`, - body: t("PrivacyPolicy") + `${ - env.plausibleHostname ? `

${t("AnalyticsDescription")}` : '' - }` - }, { - name: "legal", - title: `${emoji("๐Ÿ“‘")} ${t("CollapseLegal")}`, - body: t("FairUse") - }]) - }, - ...(env.showSponsors ? - [{ - text: t("SponsoredBy"), - classes: ["sponsored-by-text"], - nopadding: true - }, { - text: sponsoredList(), - raw: true - }] : [] - )] - }) - }, { - name: "changelog", - title: `${emoji("๐ŸŽ‰")} ${t('ChangelogTab')}`, - content: popup({ - name: "changelog", - header: { - closeAria: t('AccessibilityGoBack'), - title: `${emoji("๐Ÿช„", 30)} ${t('TitlePopupChangelog')}` - }, - body: [{ - text: `
${t('ChangelogLastMajor')}
`, - raw: true - }, { - text: (() => { - const banner = changelogManager('banner'); - if (!banner) return ''; - return `
- -
`; - })(), - raw: true - }, { - text: changelogManager("version"), - classes: ["changelog-tags"], - nopadding: true - }, { - text: changelogManager("title"), - classes: ["changelog-subtitle"], - nopadding: true - }, { - text: changelogManager("content") - }, { - text: sep(), - raw: true - },{ - text: `#${obj.hash}`, - classes: ["changelog-tags"], - nopadding: true - }, { - text: com[0], - classes: ["changelog-subtitle"], - nopadding: true - }, { - text: com[1] - }, { - text: `
${t('ChangelogOlder')}
`, - raw: true - }, { - text: ` -
- -
`, - raw: true - }] - }) - }, { - name: "donate", - title: `${emoji("๐Ÿ’–")} ${t('DonationsTab')}`, - content: popup({ - name: "donate", - header: { - closeAria: t('AccessibilityGoBack'), - title: emoji("๐Ÿ’ธ", 30) + t('TitlePopupDonate') - }, - body: [{ - text: `
${t('DonateSub')}
`, - raw: true - }, { - text: ` -
- -
`, - raw: true - }, { - text: t('DonateExplanation') - }, { - text: donateLinks.replace(/REPLACEME/g, t('DonateVia')), - raw: true - }, { - text: t('DonateLinksDescription'), - classes: ["explanation"] - }, { - text: sep(), - raw: true - }, { - text: donate.replace(/REPLACEME/g, t('ClickToCopy')), - classes: ["desc-padding"] - }] - }) - }], - })} - ${multiPagePopup({ - name: "settings", - closeAria: t('AccessibilityGoBack'), - header: { - aboveTitle: { - text: `v.${version}-${obj.hash} (${obj.branch})`, - url: `${repo}/commit/${obj.hash}` - }, - title: `${emoji("โš™๏ธ", 30)} ${t('TitlePopupSettings')}` - }, - tabs: [{ - name: "video", - title: `${emoji("๐ŸŽฌ")} ${t('SettingsVideoTab')}`, - content: settingsCategory({ - name: "downloads", - title: t('SettingsQualitySubtitle'), - body: switcher({ - name: "vQuality", - explanation: t('SettingsQualityDescription'), - items: [{ - action: "max", - text: "8k+" - }, { - action: "2160", - text: "4k" - }, { - action: "1440", - text: "1440p" - }, { - action: "1080", - text: "1080p" - }, { - action: "720", - text: "720p" - }, { - action: "480", - text: "480p" - }, { - action: "360", - text: "360p" - }, { - action: "240", - text: "240p" - }, { - action: "144", - text: "144p" - }] - }) - }) - + settingsCategory({ - name: "codec", - title: t('SettingsCodecSubtitle'), - body: switcher({ - name: "vCodec", - explanation: t('SettingsCodecDescription'), - items: [{ - action: "h264", - text: "h264 (mp4)" - }, { - action: "av1", - text: "av1 (mp4)" - }, { - action: "vp9", - text: "vp9 (webm)" - }] - }) - }) - + settingsCategory({ - name: "twitter", - title: "twitter", - body: checkbox([{ - action: "twitterGif", - name: t("SettingsTwitterGif"), - padding: "no-margin" - }]) - + explanation(t('SettingsTwitterGifDescription')) - }) - + settingsCategory({ - name: "tiktok", - title: "tiktok", - body: checkbox([{ - action: "tiktokH265", - name: t("SettingsTikTokH265"), - padding: "no-margin" - }]) - + explanation(t('SettingsTikTokH265Description')) - }) - }, { - name: "audio", - title: `${emoji("๐ŸŽถ")} ${t('SettingsAudioTab')}`, - content: settingsCategory({ - name: "general", - title: t('SettingsFormatSubtitle'), - body: switcher({ - name: "aFormat", - explanation: t('SettingsAudioFormatDescription'), - items: audioFormats - }) - + sep(0) - + checkbox([{ - action: "muteAudio", - name: t("SettingsVideoMute"), - padding: "no-margin" - }]) - + explanation(t('SettingsVideoMuteExplanation')) - }) - + settingsCategory({ - name: "youtube-dub", - title: t("SettingsAudioDub"), - body: checkbox([{ - action: "ytDub", - name: t("SettingsYoutubeDub"), - padding: "no-margin" - }]) - + explanation(t('SettingsYoutubeDubDescription')) - }) - + settingsCategory({ - name: "tiktok-audio", - title: "tiktok", - body: checkbox([{ - action: "fullTikTokAudio", - name: t("SettingsAudioFullTikTok"), - padding: "no-margin" - }]) - + explanation(t('SettingsAudioFullTikTokDescription')) - }) - }, { - name: "other", - title: `${emoji("๐Ÿช…")} ${t('SettingsOtherTab')}`, - content: settingsCategory({ - name: "appearance", - title: t('SettingsAppearanceSubtitle'), - body: switcher({ - name: "theme", - items: [{ - action: "auto", - text: t('SettingsThemeAuto') - }, { - action: "dark", - text: t('SettingsThemeDark') - }, { - action: "light", - text: t('SettingsThemeLight') - }] - }) - }) - + settingsCategory({ - name: "filename", - title: t('FilenameTitle'), - body: switcher({ - name: "filenamePattern", - items: [{ - action: "classic", - text: t('FilenamePatternClassic') - }, { - action: "basic", - text: t('FilenamePatternBasic') - }, { - action: "pretty", - text: t('FilenamePatternPretty') - }, { - action: "nerdy", - text: t('FilenamePatternNerdy') - }] - }) - + `
-
- ${emoji('๐ŸŽž๏ธ', 32, 1, 1)} -
-
${t('Preview')}
-
-
-
-
- ${emoji('๐ŸŽง', 32, 1, 1)} -
-
${t('Preview')}
-
-
-
-
` - + explanation(t('FilenameDescription')) - }) - + settingsCategory({ - name: "accessibility", - title: t('Accessibility'), - body: checkbox([{ - action: "alwaysVisibleButton", - name: t("SettingsKeepDownloadButton"), - aria: t("AccessibilityKeepDownloadButton") - }, { - action: "reduceTransparency", - name: t("SettingsReduceTransparency") - }, { - action: "disableAnimations", - name: t("SettingsDisableAnimations"), - padding: "no-margin" - }]) - }) - + (() => { - if (env.plausibleHostname) { - return settingsCategory({ - name: "privacy", - title: t('PrivateAnalytics'), - body: checkbox([{ - action: "plausible_ignore", - name: t("SettingsDisableAnalytics"), - padding: "no-margin" - }]) - + explanation(t('SettingsAnalyticsExplanation')) - }) - } - return '' - })() - + settingsCategory({ - name: "miscellaneous", - title: t('Miscellaneous'), - body: checkbox([{ - action: "downloadPopup", - name: t("SettingsEnableDownloadPopup"), - aria: t("AccessibilityEnableDownloadPopup") - }, { - action: "disableMetadata", - name: t("SettingsDisableMetadata") - }]) - }) - }] - })} - ${popupWithBottomButtons({ - name: "picker", - closeAria: t('AccessibilityGoBack'), - header: { - title: `${emoji("๐Ÿงฎ", 30)}
`, - explanation: `
`, - }, - buttons: [`${t('ImagePickerDownloadAudio')}`], - content: '
' - })} - - - - - - - - -` - } catch (err) { - return `${t('ErrorPageRenderFail', obj.hash)}`; - } -}