usage:
- create cookies.json file somewhere, preferrably outside cobalt directory
- in docker, you can bind mount it (`volumes` in composefile)
- if you don't want cobalt to update the cookies, set it to `:ro` (cobalt will print a warning about this, ignore it)
- set COOKIE_PATH to the absolute path of this file
- enjoy?
usage in services: probably the simplest api ever
- import { getCookie, updateCookie } from '../../cookie/manager.js';
- const cookie = getCookie('<service_name>');
- add this to headers - `headers: { cookie }`
- after fetch is done, save potential cookie updates: updateCookie(cookie, fetch.headers)
- see instagram.js for example usage
- fixed streamable downloads in safari
- added background blur to popup backdrop
- reduced shadow blur for popups
- fixed content going out of corners in picker
- added support for x.com urls
- removed del shortcut for clearing url input area because it was causing regular typing issues
- added info about no liability
- fixed donate button glow and text backdrop padding
- updated donation and privacy policy texts for more clarity in both english and russian
- made cors question in setup script to take yes as answer, not just 'y'
- text-to-copy now has proper rounding when highlighted
- home screen now smoothly fades in instead of popping in
new in this commit:
- rounded corners everywhere! cobalt is now safe for everyone who can't handle sharp objects.
- proper banner loading. no more jumping text!
- proper banner error handling. if banner wasn't loaded, it'll simply go grey instead of disappearing.
- links are no longer italic and are instead underlined.
- collapsible lists now have corresponding emoji.
- donate button is now highlighted with magenta instead of white.
- added a list of keyboard shortcuts to about tab.
- centered old changelog loader.
- remade error and save popups. both are now properly located and sized on mobile screens. this is the first step in modernizing cobalt ui!
- fixed >> button getting stuck in error state.
- removed ip verification and updated privacy policy to reflect this change.
- streamable links now last for 20 seconds instead of 2 minutes.
- cleaned up stream verification algorithm. now the same function isn't run 4 times in a row.
- removed deprecated way of hosting a cobalt instance.
in this commit:
- enhanced css (hover border, less annoying donate highlight, checkbox width fix for mobile, more consistent color scheme)
- addition of an urgent notice (in this case it mentions all issues related to old infra being fixed)
- updated twitter picker test
- changelog for 6.0
- removed partial translations
- padding (everywhere) has been slightly reduced to fit in more content.
- padding is now consistent across ui.
- added more info to the "how to save" popup for ios devices.
- crypto wallet press-to-copy buttons now look like buttons.
- improved looks for smallest screens (iphone 5, 5s, se, etc).
- remember celebratory emoji changes? they've been fixed, and are now dynamically loaded!
- changelog history now lets you try to load it again if first attempt failed for whatever reason.
- added glow to the donation button to make it more visible.
- cleaned up frontend js a little bit.
- updated some links in tests.
- updated readme: added info about new services, sorted the list alphabetically, replaced emoji with checkmarks, added info about ncsd (#101), and more.
- fixed typos in vk and setup modules.
- removed unused variables from css.
- you can now share video links directly from cobalt!
- cobalt is now using nanoid for stream ids instead of giant sha256 hashes
- one more fix to address the copy animation, this time on pc
- moved clipboard button to right, added left-handed layout toggle for those who prefer to have it on left.
- removed button hover highlights on phones.
- added proper checkbox icon for better clarity.
- checkboxes are now stretched edge-to-edge on phone to be easier to manage for right-handed people.
- added support for retweet links
- updated spaces endpoint
- bumped up the user agent version
- new clipboard icon
- new clipboard + auto mode layout on mobile, less wasted space
- fixed button press animations for safari on mobile
- tons of localization improvements for english and russian
- bumped up youtubei.js to 4.1.0
- page render caching
- onDemand block caching
- page html minify
- better rate limiting
- minor cobalt.js clean up
- page render platform indication in settings popup
all these changes are aimed to improve performance and responsiveness
!! not final version of 5.2 !!
- finished writing tests for all services
- fixed douyin support
- fixed tiktok picker that was broken by previous commit
- temporarily removed douyin photos from list of supported services
- fixed support for "user view" vk clip links
- slightly improved the testing script
- rewrote and/or optimized all service modules
- rewrote matching and processing modules to optimize readability and performance
- added support for reddit gifs
- fixed various issues with twitter error explanations
- code optimizations and enhancements (such as finally getting rid of ==, prettier and more readable formatting, etc)
- added branch information
- all functions in currentCommit submodule run only once and cache received data
- added a test script. only twitter and soundcloud are 100% covered and tested atm, will add tests (and probably fixes) for the rest of services in next commits
- changed some localization strings for russian
- added more clarity to rate limit message
- moved services folder into processing folder
- added duration check to vimeo module
- fixed quality picking in vimeo module for progressive video type
- dropping requests from ie users instead of redirecting
- probably something else but i forgot to be honest
- it's now possible to download full audios from tiktok videos, you just have to turn that on in settings.
- tiktok audios are better in quality when it's possible to get exact audio used in video and not the full version of it.
- cleaned up the way user preference stuff is passed over between modules, should be way more flexible now.
- added audio ignore list to services config json instead of hardcoding it.
- fixed neighbor quality picking for youtube videos
- webm is now default for youtube downloads for all platforms except for ios
- even more readme changes
- a tiny bit of clean up
- preparing stuff for next major update
- added support for tiktok (images won't work, they're only accessible through the app)
- hopefully main input bar is now not rounded on ios, i fucking hate apple
- if service is not supported, a correlating error will appear, not generic one
- removed duplicates from config that are present in package json already
- tiny bit of clean up
- new localization system: fast, dynamic, way more organized
- localization strings are WAY more descriptive
- it's now easier to add support for other languages (just one loc file instead of five)
- localization now falls back to english if localized string isnt available
- got rid of all static language selectors (probably)
- slightly updated english and russian strings
- miscellaneous settings items have been bundled together and moved to the bottom, cause they're used the least
- bottom links should no longer touch the popup border on overflow
- rearranged popup order in the rendered page
- bumped version up to 2.2.5
if you see strings that are like this: !!EXAMPLE!! or withoutspace please file an issue on github
- remade config module
- renamed loc to i18n because that's what all developers do
- moved code to src to make repo look cleaner
- fixed some i18n strings
- added download popup to solve the issue with downloads on ios
- merged big and small popups into one
- made buttons in donation menu act like buttons
- began to clean up localisation
- added ability to embed repo url into localisation strings
- moved ffmpeg args to config for more flexibility (and hopefully future changes)
- removed error response in stream that could result in a crash
- removed notice for ios users from about cause it's no longer relevant
- made error popup look and act like the rest
- a tiny bit of clean up
- ill do better changelog tomorrow i think