From 6f5e4a00588aefdda7a5a1cfe70935870e7e234a Mon Sep 17 00:00:00 2001 From: Bennett Date: Tue, 22 Sep 2020 20:56:48 +0200 Subject: Unpack recipes and update recipes icons (#292) Co-authored-by: Amine Mouafik --- recipes/reddit/webview.js | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 recipes/reddit/webview.js (limited to 'recipes/reddit/webview.js') diff --git a/recipes/reddit/webview.js b/recipes/reddit/webview.js new file mode 100644 index 0000000..df5b929 --- /dev/null +++ b/recipes/reddit/webview.js @@ -0,0 +1,47 @@ +var _path = _interopRequireDefault(require("path")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (Franz) => { + const getMessages = function getMessages() { + const elements = document.querySelectorAll('#HeaderUserActions--Messages > a > span'); + let count = 0 + + if (elements[0]) { + count = parseInt(elements[0].innerHTML, 10); + } + + console.log(count) + Franz.setBadge(count) + } + + if (document.querySelectorAll('.promotedlink').length > 0) { + document.querySelectorAll('.promotedlink').forEach((sponsoredLink) => { + sponsoredLink.parentElement.parentElement.style.display = 'none' + }) + } + + Franz.loop(getMessages) + + // Use CSS to hide Google Ads + Franz.injectCSS(_path.default.join(__dirname, 'service.css')) + + Franz.handleDarkMode((isEnabled, config) => { + // Open dropdown menu if not already open + const menu = document.querySelector('#USER_DROPDOWN_ID'); + if (menu.getAttribute('aria-expanded') === 'false') { + menu.click(); + } + + setTimeout(() => { + // Check if service is already in right mode + const btn = document.querySelector('[role=menu] button button'); + const checked = btn.getAttribute('aria-checked') === 'true'; + + if ((checked && !isEnabled) || (!checked && isEnabled)) { + // Click the button to switch between modes + btn.click(); + } + }, 50); + }); +} -- cgit v1.2.3-54-g00ecf