diff --git a/package.json b/package.json
index 304fa9eb..fb1abc15 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "cobalt",
"description": "save what you love",
- "version": "7.4",
+ "version": "7.5",
"author": "wukko",
"exports": "./src/cobalt.js",
"type": "module",
@@ -30,6 +30,7 @@
"express": "^4.18.1",
"express-rate-limit": "^6.3.0",
"ffmpeg-static": "^5.1.0",
+ "hls-parser": "^0.10.7",
"nanoid": "^4.0.2",
"node-cache": "^5.1.2",
"set-cookie-parser": "2.6.0",
diff --git a/src/config.json b/src/config.json
index 1537223b..10e3286d 100644
--- a/src/config.json
+++ b/src/config.json
@@ -7,17 +7,22 @@
"link": "https://wukko.me/",
"contact": "https://wukko.me/contacts",
"support": {
- "twitter": {
- "url": "https://twitter.com/justusecobalt",
- "handle": "@justusecobalt"
- },
- "mastodon": {
- "url": "https://wetdry.world/@cobalt",
- "handle": "@cobalt@wetdry.world"
- },
- "discord": {
- "url": "https://discord.gg/pQPt8HBUPu",
- "handle": "cobalt community server"
+ "default": {
+ "twitter": {
+ "emoji": "🐦",
+ "url": "https://twitter.com/justusecobalt",
+ "handle": "@justusecobalt"
+ },
+ "mastodon": {
+ "emoji": "🐘",
+ "url": "https://wetdry.world/@cobalt",
+ "handle": "@cobalt@wetdry.world"
+ },
+ "discord": {
+ "emoji": "👾",
+ "url": "https://discord.gg/pQPt8HBUPu",
+ "handle": "cobalt community server"
+ }
}
}
},
@@ -40,6 +45,7 @@
"02-17": "😺",
"02-22": "😺",
"03-01": "😺",
+ "03-08": "💪",
"05-26": "🎂",
"08-08": "😺",
"08-26": "🐶",
@@ -59,8 +65,7 @@
"12-28": "🎄",
"12-29": "🎄",
"12-30": "🎄",
- "12-31": "🎄",
- "03-08": "💪"
+ "12-31": "🎄"
},
"supportedAudio": ["mp3", "ogg", "wav", "opus"],
"ffmpegArgs": {
diff --git a/src/front/cobalt.css b/src/front/cobalt.css
index 3c838ef2..e0e5322e 100644
--- a/src/front/cobalt.css
+++ b/src/front/cobalt.css
@@ -604,6 +604,10 @@ button:active,
line-height: 1.3rem!important;
color: var(--accent-subtext);
}
+.explanation.embedded {
+ margin-top: 0.825rem;
+ margin-bottom: 0.825rem;
+}
.subtext {
color: var(--accent-subtext);
}
diff --git a/src/front/emoji/newspaper.svg b/src/front/emoji/newspaper.svg
new file mode 100644
index 00000000..ebe0b5fd
--- /dev/null
+++ b/src/front/emoji/newspaper.svg
@@ -0,0 +1,5 @@
+
\ No newline at end of file
diff --git a/src/localization/languages/en.json b/src/localization/languages/en.json
index 7025f222..a0dc8f60 100644
--- a/src/localization/languages/en.json
+++ b/src/localization/languages/en.json
@@ -143,6 +143,7 @@
"NewDomainWelcomeTitle": "hey there!",
"NewDomainWelcome": "cobalt is moving! same features, same owner, simply a more rememberable domain. and still no ads.\n\ncobalt.tools is the new main domain, aka where you are now. make sure to update your bookmarks and reinstall the web app!",
"DataTransferSuccess": "btw, your settings have been transferred automatically :)",
- "DataTransferError": "something went wrong when transferring your preferences. you'll have to open settings and configure cobalt by hand."
+ "DataTransferError": "something went wrong when transferring your preferences. you'll have to open settings and configure cobalt by hand.",
+ "SupportNotAffiliated": "cobalt is not affiliated with any services listed above."
}
}
diff --git a/src/localization/languages/ru.json b/src/localization/languages/ru.json
index 7bd78e8b..ef9ddc43 100644
--- a/src/localization/languages/ru.json
+++ b/src/localization/languages/ru.json
@@ -102,8 +102,8 @@
"CollapseServices": "что поддерживается?",
"CollapseSupport": "поддержка и исходный код",
"CollapsePrivacy": "политика конфиденциальности",
- "ServicesNote": "этот список далеко не финальный и постоянно пополняется. заглядывай сюда почаще, тогда точно будешь знать, что поддерживается!",
- "FollowSupport": "оставайтесь на связи с кобальтом для новостей, поддержки, участия в опросах, и многого другого:",
+ "ServicesNote": "этот список далеко не финальный и постоянно пополняется, заглядывай сюда почаще!",
+ "FollowSupport": "подписывайся на соц.сети кобальта для новостей, поддержки, участия в опросах, и многого другого:",
"SupportNote": "так как я занимаюсь разработкой и поддержкой в одиночку, время ожидания ответа может достигать нескольких часов. но я отвечаю всем, так что не стесняйся.",
"SourceCode": "пиши о проблемах, шарься в исходнике, или же форкай репозиторий:",
"PrivacyPolicy": "политика конфиденциальности кобальта довольно проста: никакие данные о тебе никогда не собираются и не хранятся. нуль, ноль, нада, ничего.\nто, что ты скачиваешь, - твоё личное дело, а не чьё-либо ещё.\n\nесли твоей загрузке требуется лайв рендер, то некоторые неотслеживаемые данные временно держатся в ОЗУ сервера. это необходимо для работы данной функции.\n\nв этом случае данные о запрошенном контенте хранятся в течение 20 секунд. по истечении этого времени всё стирается. ни у кого (даже у меня) нет доступа к временно хранящимся данным, так как официальная кодовая база кобальта не предусматривает возможности их чтения вне функций обработки.\n\nты всегда можешь посмотреть исходный код кобальта и убедиться, что всё так, как заявлено.",
@@ -144,6 +144,8 @@
"NewDomainWelcomeTitle": "привет!",
"NewDomainWelcome": "кобальт переезжает! те же функции, тот же владелец, просто более запоминающийся домен. по-прежнему без рекламы.\n\ncobalt.tools - новый основной домен, т.е. где ты сейчас находишься. не забудь обновить закладки и переустановить веб-приложение!",
"DataTransferSuccess": "кстати, твои настройки были перенесены автоматически :)",
- "DataTransferError": "при переносе настроек что-то пошло не так. придётся зайти в настройки и настроить кобальт вручную."
+ "DataTransferError": "при переносе настроек что-то пошло не так. придётся зайти в настройки и настроить кобальт вручную.",
+ "SupportNotAffiliated": "кобальт не аффилирован ни с одним из перечисленных выше сервисов.",
+ "SupportMetaNoticeRU": "деятельность meta platforms inc. (владелец instagram) запрещена на территории россии."
}
}
diff --git a/src/modules/emoji.js b/src/modules/emoji.js
index 068e6bdb..04e053f0 100644
--- a/src/modules/emoji.js
+++ b/src/modules/emoji.js
@@ -34,7 +34,8 @@ const names = {
"⌨": "keyboard",
"📑": "boring_document",
"🧮": "abacus",
- "😸": "cat_grin"
+ "😸": "cat_grin",
+ "📰": "newspaper"
}
let sizing = {
18: 0.8,
diff --git a/src/modules/pageRender/elements.js b/src/modules/pageRender/elements.js
index 824814e6..65f96699 100644
--- a/src/modules/pageRender/elements.js
+++ b/src/modules/pageRender/elements.js
@@ -1,4 +1,4 @@
-import { celebrations } from "../config.js";
+import { authorInfo, celebrations } from "../config.js";
import emoji from "../emoji.js";
export const backButtonSVG = `