aboutsummaryrefslogtreecommitdiffstats
path: root/recipes
diff options
context:
space:
mode:
Diffstat (limited to 'recipes')
-rw-r--r--recipes/OVHCloud/webview.js2
-rw-r--r--recipes/TickTick/package.json2
-rw-r--r--recipes/TickTick/webview.js2
-rw-r--r--recipes/air-droid/package.json2
-rw-r--r--recipes/air-droid/webview.js2
-rw-r--r--recipes/amazon-web-services/webview.js2
-rw-r--r--recipes/android-messages/package.json2
-rw-r--r--recipes/android-messages/webview.js2
-rw-r--r--recipes/asana/package.json2
-rw-r--r--recipes/asana/webview.js2
-rw-r--r--recipes/binance/webview.js2
-rw-r--r--recipes/bip/package.json2
-rw-r--r--recipes/bip/webview.js2
-rw-r--r--recipes/bitwarden/webview.js2
-rw-r--r--recipes/campuswire/package.json2
-rw-r--r--recipes/campuswire/webview.js2
-rw-r--r--recipes/canvas/package.json2
-rw-r--r--recipes/canvas/webview.js2
-rw-r--r--recipes/chatwork/package.json2
-rw-r--r--recipes/chatwork/webview.js2
-rw-r--r--recipes/ciscospark/package.json2
-rw-r--r--recipes/ciscospark/webview.js2
-rw-r--r--recipes/clickup/package.json2
-rw-r--r--recipes/clickup/webview.js3
-rw-r--r--recipes/cliq/package.json2
-rw-r--r--recipes/cliq/webview.js2
-rw-r--r--recipes/clockify/package.json2
-rw-r--r--recipes/clockify/webview.js3
-rw-r--r--recipes/clubhouse/package.json2
-rw-r--r--recipes/clubhouse/webview.js2
-rw-r--r--recipes/devRant/package.json2
-rw-r--r--recipes/devRant/webview.js2
-rw-r--r--recipes/dialpad/package.json2
-rw-r--r--recipes/dialpad/webview.js2
-rw-r--r--recipes/dingtalk/package.json2
-rw-r--r--recipes/dingtalk/webview.js4
-rw-r--r--recipes/discord/package.json2
-rw-r--r--recipes/discord/webview.js2
-rw-r--r--recipes/disqus/package.json2
-rw-r--r--recipes/disqus/webview.js12
-rw-r--r--recipes/dockerhub/webview.js2
-rw-r--r--recipes/drive/package.json2
-rw-r--r--recipes/drive/webview.js8
-rw-r--r--recipes/element/package.json2
-rw-r--r--recipes/element/webview.js2
-rw-r--r--recipes/erepublik/package.json2
-rw-r--r--recipes/erepublik/webview.js2
-rw-r--r--recipes/facebookpages/package.json2
-rw-r--r--recipes/facebookpages/webview.js4
-rw-r--r--recipes/fastmail/package.json2
-rw-r--r--recipes/fastmail/webview.js2
-rw-r--r--recipes/feedbin/package.json2
-rw-r--r--recipes/feedbin/webview.js2
-rw-r--r--recipes/feedly/package.json2
-rw-r--r--recipes/feedly/webview.js2
-rw-r--r--recipes/fleep/package.json2
-rw-r--r--recipes/fleep/webview.js2
-rw-r--r--recipes/flowdock/package.json2
-rw-r--r--recipes/flowdock/webview.js2
-rw-r--r--recipes/freshdesk/package.json2
-rw-r--r--recipes/freshdesk/webview.js2
-rw-r--r--recipes/github/package.json2
-rw-r--r--recipes/github/webview.js2
-rw-r--r--recipes/gitter/package.json2
-rw-r--r--recipes/gitter/webview.js4
-rw-r--r--recipes/glowing-bear/package.json2
-rw-r--r--recipes/glowing-bear/webview.js2
-rw-r--r--recipes/gmail/package.json2
-rw-r--r--recipes/gmail/webview.js2
-rw-r--r--recipes/google-translate/webview.js2
-rw-r--r--recipes/google-voice/package.json2
-rw-r--r--recipes/google-voice/webview.js2
-rw-r--r--recipes/googleclassroom/package.json2
-rw-r--r--recipes/googleclassroom/webview.js2
-rw-r--r--recipes/googlemeet/package.json2
-rw-r--r--recipes/googlemeet/webview.js2
-rw-r--r--recipes/grape/package.json2
-rw-r--r--recipes/grape/webview.js2
-rw-r--r--recipes/groupme/package.json2
-rw-r--r--recipes/groupme/webview.js2
-rw-r--r--recipes/guilded/package.json2
-rw-r--r--recipes/guilded/webview.js4
-rwxr-xr-xrecipes/habitica/package.json2
-rwxr-xr-xrecipes/habitica/webview.js2
-rw-r--r--recipes/hackmd/package.json2
-rw-r--r--recipes/hackmd/webview.js2
-rw-r--r--recipes/hangouts/package.json2
-rw-r--r--recipes/hangouts/webview.js2
-rw-r--r--recipes/hangoutschat/package.json2
-rw-r--r--recipes/hangoutschat/webview.js2
-rw-r--r--recipes/hey/package.json2
-rw-r--r--recipes/hey/webview.js2
-rw-r--r--recipes/hipchat/package.json2
-rw-r--r--recipes/hipchat/webview.js2
-rw-r--r--recipes/icq/package.json2
-rw-r--r--recipes/icq/webview.js2
-rw-r--r--recipes/idobata/package.json2
-rw-r--r--recipes/idobata/webview.js2
-rw-r--r--recipes/infomaniak-mail/package.json2
-rw-r--r--recipes/infomaniak-mail/webview.js2
-rw-r--r--recipes/instagram/package.json2
-rw-r--r--recipes/instagram/webview.js2
-rw-r--r--recipes/intercom/package.json2
-rw-r--r--recipes/intercom/webview.js2
-rw-r--r--recipes/irccloud/package.json2
-rw-r--r--recipes/irccloud/webview.js2
-rw-r--r--recipes/jira/package.json2
-rw-r--r--recipes/jira/webview.js2
-rw-r--r--recipes/jollor/package.json2
-rw-r--r--recipes/jollor/webview.js2
-rw-r--r--recipes/kaizala/package.json2
-rw-r--r--recipes/kaizala/webview.js2
-rw-r--r--recipes/kimaicloud/package.json2
-rw-r--r--recipes/kimaicloud/webview.js4
-rw-r--r--recipes/lark/package.json2
-rw-r--r--recipes/lark/webview.js2
-rw-r--r--recipes/lastpass/package.json2
-rw-r--r--recipes/lastpass/webview.js2
-rw-r--r--recipes/linkedin/package.json2
-rw-r--r--recipes/linkedin/webview.js2
-rw-r--r--recipes/mailbox.org/package.json2
-rw-r--r--recipes/mailbox.org/webview.js2
-rw-r--r--recipes/mastodon/package.json2
-rw-r--r--recipes/mastodon/webview.js2
-rw-r--r--recipes/mattermost/package.json2
-rw-r--r--recipes/mattermost/webview.js2
-rw-r--r--recipes/messenger/package.json2
-rw-r--r--recipes/messenger/webview.js2
-rw-r--r--recipes/mewe/package.json2
-rw-r--r--recipes/mewe/webview.js10
-rw-r--r--recipes/misskey/package.json2
-rw-r--r--recipes/misskey/webview.js2
-rw-r--r--recipes/monday/package.json2
-rwxr-xr-xrecipes/monday/webview.js2
-rw-r--r--recipes/mstodo/package.json2
-rw-r--r--recipes/mstodo/webview.js2
-rw-r--r--recipes/mysms/package.json2
-rw-r--r--recipes/mysms/webview.js2
-rw-r--r--recipes/nextcloud-calendar/package.json2
-rw-r--r--recipes/nextcloud-calendar/webview.js2
-rw-r--r--recipes/nextcloud-carnet/package.json2
-rw-r--r--recipes/nextcloud-carnet/webview.js2
-rw-r--r--recipes/nextcloud-cospend/package.json2
-rw-r--r--recipes/nextcloud-cospend/webview.js2
-rw-r--r--recipes/nextcloud-talk/package.json2
-rw-r--r--recipes/nextcloud-talk/webview.js2
-rw-r--r--recipes/nextcloud-tasks/package.json2
-rw-r--r--recipes/nextcloud-tasks/webview.js2
-rw-r--r--recipes/nextcloud/package.json2
-rw-r--r--recipes/nextcloud/webview.js2
-rw-r--r--recipes/nextdoor/package.json2
-rw-r--r--recipes/nextdoor/webview.js4
-rw-r--r--recipes/notion/package.json2
-rw-r--r--recipes/notion/webview.js2
-rw-r--r--recipes/office365-owa/package.json2
-rw-r--r--recipes/office365-owa/webview.js2
-rw-r--r--recipes/pipefy/package.json2
-rw-r--r--recipes/pipefy/webview.js2
-rw-r--r--recipes/pivotal-tracker/package.json2
-rw-r--r--recipes/pivotal-tracker/webview.js2
-rw-r--r--recipes/plurk/package.json2
-rw-r--r--recipes/plurk/webview.js2
-rw-r--r--recipes/producthunt/package.json2
-rw-r--r--recipes/producthunt/webview.js2
-rw-r--r--recipes/proton-mail/package.json2
-rw-r--r--recipes/proton-mail/webview.js4
-rw-r--r--recipes/pulsesms/package.json2
-rw-r--r--recipes/pulsesms/webview.js2
-rw-r--r--recipes/reddit/package.json2
-rw-r--r--recipes/reddit/webview.js2
-rw-r--r--recipes/riseup/package.json2
-rw-r--r--recipes/riseup/webview.js4
-rw-r--r--recipes/rocketchat/package.json2
-rw-r--r--recipes/rocketchat/webview.js2
-rw-r--r--recipes/roundcube/package.json4
-rw-r--r--recipes/roundcube/webview.js2
-rw-r--r--recipes/scrumpy/package.json2
-rw-r--r--recipes/scrumpy/webview.js2
-rw-r--r--recipes/simplenote/package.json2
-rw-r--r--recipes/simplenote/webview.js2
-rw-r--r--recipes/skype/package.json2
-rw-r--r--recipes/skype/webview.js2
-rw-r--r--recipes/slite/package.json2
-rw-r--r--recipes/slite/webview.js2
-rw-r--r--recipes/sococo/package.json2
-rw-r--r--recipes/sococo/webview.js2
-rw-r--r--recipes/stackoverflow/package.json2
-rw-r--r--recipes/stackoverflow/webview.js2
-rw-r--r--recipes/steamchat/package.json2
-rw-r--r--recipes/steamchat/webview.js2
-rw-r--r--recipes/stride/package.json2
-rw-r--r--recipes/stride/webview.js2
-rw-r--r--recipes/teamleader/package.json2
-rw-r--r--recipes/teamleader/webview.js2
-rw-r--r--recipes/teamwork-projects/package.json2
-rw-r--r--recipes/teamwork-projects/webview.js2
-rw-r--r--recipes/telegram-react/package.json2
-rw-r--r--recipes/telegram-react/webview.js2
-rw-r--r--recipes/telegram/package.json2
-rw-r--r--recipes/telegram/webview.js2
-rw-r--r--recipes/thelounge/package.json2
-rw-r--r--recipes/thelounge/webview.js2
-rw-r--r--recipes/threema/package.json2
-rw-r--r--recipes/threema/webview.js2
-rw-r--r--recipes/tinder/package.json2
-rw-r--r--recipes/tinder/webview.js1
-rw-r--r--recipes/trello/package.json2
-rw-r--r--recipes/trello/webview.js2
-rw-r--r--recipes/tweetdeck/package.json2
-rw-r--r--recipes/tweetdeck/webview.js2
-rw-r--r--recipes/twist/package.json2
-rw-r--r--recipes/twist/webview.js2
-rw-r--r--recipes/twitter-dm/package.json2
-rw-r--r--recipes/twitter-dm/webview.js2
-rw-r--r--recipes/twitter/package.json2
-rw-r--r--recipes/twitter/webview.js4
-rw-r--r--recipes/udemy/package.json2
-rw-r--r--recipes/udemy/webview.js2
-rw-r--r--recipes/vk/package.json2
-rw-r--r--recipes/vk/webview.js2
-rw-r--r--recipes/voxer/package.json2
-rw-r--r--recipes/voxer/webview.js2
-rw-r--r--recipes/wakatime/package.json2
-rw-r--r--recipes/wakatime/webview.js4
-rw-r--r--recipes/webex-teams/package.json2
-rw-r--r--recipes/webex-teams/webview.js2
-rw-r--r--recipes/wechat/package.json2
-rw-r--r--recipes/wechat/webview.js2
-rw-r--r--recipes/weekplan/package.json2
-rw-r--r--recipes/weekplan/webview.js2
-rw-r--r--recipes/whatsapp/package.json2
-rw-r--r--recipes/whatsapp/webview.js2
-rw-r--r--recipes/whereby/package.json2
-rw-r--r--recipes/whereby/webview.js2
-rw-r--r--recipes/wire/package.json2
-rw-r--r--recipes/wire/webview.js2
-rw-r--r--recipes/wrike/package.json2
-rw-r--r--recipes/wrike/webview.js2
-rw-r--r--recipes/yahoo-mail/package.json2
-rw-r--r--recipes/yahoo-mail/webview.js2
-rw-r--r--recipes/yammer/package.json2
-rw-r--r--recipes/yammer/webview.js2
-rw-r--r--recipes/yandex-mail/package.json2
-rw-r--r--recipes/yandex-mail/webview.js2
-rw-r--r--recipes/youtrack/package.json2
-rw-r--r--recipes/youtrack/webview.js2
-rw-r--r--recipes/zalo/package.json2
-rw-r--r--recipes/zalo/webview.js3
-rw-r--r--recipes/zimbra/package.json2
-rw-r--r--recipes/zimbra/webview.js2
-rw-r--r--recipes/zulip/package.json2
-rw-r--r--recipes/zulip/webview.js2
252 files changed, 276 insertions, 276 deletions
diff --git a/recipes/OVHCloud/webview.js b/recipes/OVHCloud/webview.js
index ee7d8aa..1d4a8b3 100644
--- a/recipes/OVHCloud/webview.js
+++ b/recipes/OVHCloud/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 // TODO: If your ovh-cloud service has unread messages, uncomment these lines to implement the logic for updating the badges 6 // TODO: If your ovh-cloud service has unread messages, uncomment these lines to implement the logic for updating the badges
7 // const getMessages = function getMessages() { 7 // const getMessages = () => {
8 // // TODO: Insert your notification-finding code here 8 // // TODO: Insert your notification-finding code here
9 // Ferdi.setBadge(0, 0); 9 // Ferdi.setBadge(0, 0);
10 // }; 10 // };
diff --git a/recipes/TickTick/package.json b/recipes/TickTick/package.json
index c7d3b58..3b5156c 100644
--- a/recipes/TickTick/package.json
+++ b/recipes/TickTick/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "TickTick", 2 "id": "TickTick",
3 "name": "TickTick", 3 "name": "TickTick",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.ticktick.com/#p/inbox/tasks" 7 "serviceURL": "https://www.ticktick.com/#p/inbox/tasks"
diff --git a/recipes/TickTick/webview.js b/recipes/TickTick/webview.js
index 927bb08..ae3265b 100644
--- a/recipes/TickTick/webview.js
+++ b/recipes/TickTick/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 // all overdue items are being counted 3 // all overdue items are being counted
4 const count = document.querySelectorAll('.duedate-overdue').length; 4 const count = document.querySelectorAll('.duedate-overdue').length;
5 5
diff --git a/recipes/air-droid/package.json b/recipes/air-droid/package.json
index a307c31..fe72a8d 100644
--- a/recipes/air-droid/package.json
+++ b/recipes/air-droid/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "air-droid", 2 "id": "air-droid",
3 "name": "air-droid", 3 "name": "air-droid",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "http://web.airdroid.com/", 7 "serviceURL": "http://web.airdroid.com/",
diff --git a/recipes/air-droid/webview.js b/recipes/air-droid/webview.js
index 160a9f3..9bbcdb6 100644
--- a/recipes/air-droid/webview.js
+++ b/recipes/air-droid/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 const count = {}; 3 const count = {};
4 const data = document.querySelector('#FranzMessages').dataset; 4 const data = document.querySelector('#FranzMessages').dataset;
5 if (data) { 5 if (data) {
diff --git a/recipes/amazon-web-services/webview.js b/recipes/amazon-web-services/webview.js
index 6deb036..d024c70 100644
--- a/recipes/amazon-web-services/webview.js
+++ b/recipes/amazon-web-services/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 // TODO: If your amazon-web-services service has unread messages, uncomment these lines to implement the logic for updating the badges 6 // TODO: If your amazon-web-services service has unread messages, uncomment these lines to implement the logic for updating the badges
7 // const getMessages = function getMessages() { 7 // const getMessages = () => {
8 // // TODO: Insert your notification-finding code here 8 // // TODO: Insert your notification-finding code here
9 // Ferdi.setBadge(0, 0); 9 // Ferdi.setBadge(0, 0);
10 // }; 10 // };
diff --git a/recipes/android-messages/package.json b/recipes/android-messages/package.json
index 962eb2b..3a080ba 100644
--- a/recipes/android-messages/package.json
+++ b/recipes/android-messages/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "android-messages", 2 "id": "android-messages",
3 "name": "Android Messages", 3 "name": "Android Messages",
4 "version": "2.2.2", 4 "version": "2.2.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://messages.google.com/web", 7 "serviceURL": "https://messages.google.com/web",
diff --git a/recipes/android-messages/webview.js b/recipes/android-messages/webview.js
index db65de6..9195de0 100644
--- a/recipes/android-messages/webview.js
+++ b/recipes/android-messages/webview.js
@@ -8,7 +8,7 @@ setTimeout(() => {
8}, 1000); 8}, 1000);
9 9
10module.exports = (Ferdi, settings) => { 10module.exports = (Ferdi, settings) => {
11 function getMessages() { 11 const getMessages = () => {
12 const messages = document.querySelectorAll('.text-content.unread').length; 12 const messages = document.querySelectorAll('.text-content.unread').length;
13 Ferdi.setBadge(messages); 13 Ferdi.setBadge(messages);
14 } 14 }
diff --git a/recipes/asana/package.json b/recipes/asana/package.json
index 5963557..1ab14e9 100644
--- a/recipes/asana/package.json
+++ b/recipes/asana/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "asana", 2 "id": "asana",
3 "name": "Asana", 3 "name": "Asana",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.asana.com", 7 "serviceURL": "https://app.asana.com",
diff --git a/recipes/asana/webview.js b/recipes/asana/webview.js
index 2f544db..257c7e1 100644
--- a/recipes/asana/webview.js
+++ b/recipes/asana/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const hasNotification = document.querySelectorAll('.SidebarTopNavLinks-notificationsButton--hasNewNotifications'); 7 const hasNotification = document.querySelectorAll('.SidebarTopNavLinks-notificationsButton--hasNewNotifications');
8 Ferdi.setBadge(hasNotification.length > 0 ? 1 : 0); 8 Ferdi.setBadge(hasNotification.length > 0 ? 1 : 0);
9 }; 9 };
diff --git a/recipes/binance/webview.js b/recipes/binance/webview.js
index 2b16247..c9d1047 100644
--- a/recipes/binance/webview.js
+++ b/recipes/binance/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 // TODO: If your binance service has unread messages, uncomment these lines to implement the logic for updating the badges 6 // TODO: If your binance service has unread messages, uncomment these lines to implement the logic for updating the badges
7 // const getMessages = function getMessages() { 7 // const getMessages = () => {
8 // // TODO: Insert your notification-finding code here 8 // // TODO: Insert your notification-finding code here
9 // Ferdi.setBadge(0, 0); 9 // Ferdi.setBadge(0, 0);
10 // }; 10 // };
diff --git a/recipes/bip/package.json b/recipes/bip/package.json
index 3bc6898..d42c72a 100644
--- a/recipes/bip/package.json
+++ b/recipes/bip/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "bip", 2 "id": "bip",
3 "name": "BiP", 3 "name": "BiP",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.bip.com/", 7 "serviceURL": "https://web.bip.com/",
diff --git a/recipes/bip/webview.js b/recipes/bip/webview.js
index 89668d7..ea8fa5f 100644
--- a/recipes/bip/webview.js
+++ b/recipes/bip/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elements = document.querySelectorAll('.contact-list__message__unread-badge-counter'); 7 const elements = document.querySelectorAll('.contact-list__message__unread-badge-counter');
8 let count = 0; 8 let count = 0;
9 for (let i = 0; i < elements.length; i++) { 9 for (let i = 0; i < elements.length; i++) {
diff --git a/recipes/bitwarden/webview.js b/recipes/bitwarden/webview.js
index 3d2e783..9048e1a 100644
--- a/recipes/bitwarden/webview.js
+++ b/recipes/bitwarden/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 // TODO: If your bitwarden service has unread messages, uncomment these lines to implement the logic for updating the badges 6 // TODO: If your bitwarden service has unread messages, uncomment these lines to implement the logic for updating the badges
7 // const getMessages = function getMessages() { 7 // const getMessages = () => {
8 // // TODO: Insert your notification-finding code here 8 // // TODO: Insert your notification-finding code here
9 // Ferdi.setBadge(0, 0); 9 // Ferdi.setBadge(0, 0);
10 // }; 10 // };
diff --git a/recipes/campuswire/package.json b/recipes/campuswire/package.json
index 334061f..ede4dfb 100644
--- a/recipes/campuswire/package.json
+++ b/recipes/campuswire/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "campuswire", 2 "id": "campuswire",
3 "name": "Campuswire", 3 "name": "Campuswire",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://campuswire.com/c", 7 "serviceURL": "https://campuswire.com/c",
diff --git a/recipes/campuswire/webview.js b/recipes/campuswire/webview.js
index 34878f3..9837030 100644
--- a/recipes/campuswire/webview.js
+++ b/recipes/campuswire/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = document.querySelectorAll('._5fx8:not(._569x),._1ht3:not(._569x)').length; 3 let count = document.querySelectorAll('._5fx8:not(._569x),._1ht3:not(._569x)').length;
4 const messageRequestsElement = document.querySelector('._5nxf'); 4 const messageRequestsElement = document.querySelector('._5nxf');
5 5
diff --git a/recipes/canvas/package.json b/recipes/canvas/package.json
index f4500d1..7e856c5 100644
--- a/recipes/canvas/package.json
+++ b/recipes/canvas/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "canvas", 2 "id": "canvas",
3 "name": "Canvas", 3 "name": "Canvas",
4 "version": "1.0.2", 4 "version": "1.0.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.instructure.com/", 7 "serviceURL": "https://{teamId}.instructure.com/",
diff --git a/recipes/canvas/webview.js b/recipes/canvas/webview.js
index 1bd3c84..a70f448 100644
--- a/recipes/canvas/webview.js
+++ b/recipes/canvas/webview.js
@@ -4,7 +4,7 @@ module.exports = Ferdi => {
4 4
5 const MessageElement = document.querySelector('[id=global_nav_conversations_link]'); 5 const MessageElement = document.querySelector('[id=global_nav_conversations_link]');
6 if (MessageElement) { 6 if (MessageElement) {
7 direct += MessageElement.innerHTML; 7 direct += Ferdi.safeParseInt(MessageElement.innerHTML);
8 } 8 }
9 9
10 Ferdi.setBadge(direct); 10 Ferdi.setBadge(direct);
diff --git a/recipes/chatwork/package.json b/recipes/chatwork/package.json
index 52cbf02..6cba86e 100644
--- a/recipes/chatwork/package.json
+++ b/recipes/chatwork/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "chatwork", 2 "id": "chatwork",
3 "name": "ChatWork", 3 "name": "ChatWork",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/hideosasaki/recipe-chatwork", 6 "repository": "https://github.com/hideosasaki/recipe-chatwork",
7 "config": { 7 "config": {
diff --git a/recipes/chatwork/webview.js b/recipes/chatwork/webview.js
index cc40834..05e1912 100644
--- a/recipes/chatwork/webview.js
+++ b/recipes/chatwork/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 let directCount = 0; 3 let directCount = 0;
4 let indirectCount = 0; 4 let indirectCount = 0;
5 const roomInfoContainer = document.querySelectorAll('li.sc-dnqmqq'); 5 const roomInfoContainer = document.querySelectorAll('li.sc-dnqmqq');
diff --git a/recipes/ciscospark/package.json b/recipes/ciscospark/package.json
index dbf031e..06e05eb 100644
--- a/recipes/ciscospark/package.json
+++ b/recipes/ciscospark/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "ciscospark", 2 "id": "ciscospark",
3 "name": "Cisco Spark", 3 "name": "Cisco Spark",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.ciscospark.com", 7 "serviceURL": "https://web.ciscospark.com",
diff --git a/recipes/ciscospark/webview.js b/recipes/ciscospark/webview.js
index 8de5b8d..9cc66b2 100644
--- a/recipes/ciscospark/webview.js
+++ b/recipes/ciscospark/webview.js
@@ -5,7 +5,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const UNREAD_BADGE_SELECTOR = '.navigation-item--badgeCount'; 6 const UNREAD_BADGE_SELECTOR = '.navigation-item--badgeCount';
7 7
8 const getMessages = function getMessages() { 8 const getMessages = () => {
9 let directCount = 0; 9 let directCount = 0;
10 let indirectCount = 0; 10 let indirectCount = 0;
11 11
diff --git a/recipes/clickup/package.json b/recipes/clickup/package.json
index cebcd93..4a33492 100644
--- a/recipes/clickup/package.json
+++ b/recipes/clickup/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "clickup", 2 "id": "clickup",
3 "name": "ClickUp", 3 "name": "ClickUp",
4 "version": "2.2.0", 4 "version": "2.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.clickup.com", 7 "serviceURL": "https://app.clickup.com",
diff --git a/recipes/clickup/webview.js b/recipes/clickup/webview.js
index 420ca5a..8dc8d26 100644
--- a/recipes/clickup/webview.js
+++ b/recipes/clickup/webview.js
@@ -1,6 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const elements = document.querySelectorAll('.unreadCount');
4 const unread = document.querySelector('.cu-notification-alert__dot'); 3 const unread = document.querySelector('.cu-notification-alert__dot');
5 Ferdi.setBadge(unread ? 1 : 0); 4 Ferdi.setBadge(unread ? 1 : 0);
6 }; 5 };
diff --git a/recipes/cliq/package.json b/recipes/cliq/package.json
index ecb01f5..95c07af 100644
--- a/recipes/cliq/package.json
+++ b/recipes/cliq/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "cliq", 2 "id": "cliq",
3 "name": "Cliq", 3 "name": "Cliq",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "repository": "https://github.com/cliqgeek/recipe-cliq", 5 "repository": "https://github.com/cliqgeek/recipe-cliq",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.zoho.com/cliq/login.html", 7 "serviceURL": "https://www.zoho.com/cliq/login.html",
diff --git a/recipes/cliq/webview.js b/recipes/cliq/webview.js
index 067ea5b..0c6e550 100644
--- a/recipes/cliq/webview.js
+++ b/recipes/cliq/webview.js
@@ -1,6 +1,6 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = () => { 2 const getMessages = () => {
3 Ferdi.setBadge(ConversationsList.getUnreadBadgeCount()); 3 // Ferdi.setBadge(ConversationsList.getUnreadBadgeCount());
4 }; 4 };
5 5
6 Ferdi.loop(getMessages); 6 Ferdi.loop(getMessages);
diff --git a/recipes/clockify/package.json b/recipes/clockify/package.json
index c48e32b..6150326 100644
--- a/recipes/clockify/package.json
+++ b/recipes/clockify/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "clockify", 2 "id": "clockify",
3 "name": "Clockify", 3 "name": "Clockify",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://clockify.me/tracker", 7 "serviceURL": "https://clockify.me/tracker",
diff --git a/recipes/clockify/webview.js b/recipes/clockify/webview.js
index 252b3e3..9fbb613 100644
--- a/recipes/clockify/webview.js
+++ b/recipes/clockify/webview.js
@@ -1,7 +1,6 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const notifications = document.querySelectorAll('.notification--number'); 3 const notifications = document.querySelectorAll('.notification--number');
4
5 Ferdi.setBadge(0, notifications.length >= 1 ? 1 : 0); 4 Ferdi.setBadge(0, notifications.length >= 1 ? 1 : 0);
6 }; 5 };
7 6
diff --git a/recipes/clubhouse/package.json b/recipes/clubhouse/package.json
index 1fe2000..55e5aa8 100644
--- a/recipes/clubhouse/package.json
+++ b/recipes/clubhouse/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "clubhouse", 2 "id": "clubhouse",
3 "name": "Clubhouse", 3 "name": "Clubhouse",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/dnlnrs/ferdi-recipe-clubhouse", 6 "repository": "https://github.com/dnlnrs/ferdi-recipe-clubhouse",
7 "config": { 7 "config": {
diff --git a/recipes/clubhouse/webview.js b/recipes/clubhouse/webview.js
index be02ac0..ae92c04 100644
--- a/recipes/clubhouse/webview.js
+++ b/recipes/clubhouse/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 const hasNotifications = document.querySelector('#notifications-link .badge').classList.contains('visible'); 3 const hasNotifications = document.querySelector('#notifications-link .badge').classList.contains('visible');
4 Ferdi.setBadge(0, hasNotifications ? 1 : 0); 4 Ferdi.setBadge(0, hasNotifications ? 1 : 0);
5 } 5 }
diff --git a/recipes/devRant/package.json b/recipes/devRant/package.json
index 6dee2d6..061328a 100644
--- a/recipes/devRant/package.json
+++ b/recipes/devRant/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "devRant", 2 "id": "devRant",
3 "name": "devRant", 3 "name": "devRant",
4 "version": "1.0.1", 4 "version": "1.0.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/emamut/recipe-devrant", 6 "repository": "https://github.com/emamut/recipe-devrant",
7 "config": { 7 "config": {
diff --git a/recipes/devRant/webview.js b/recipes/devRant/webview.js
index 62a47e6..6a30b3a 100644
--- a/recipes/devRant/webview.js
+++ b/recipes/devRant/webview.js
@@ -10,7 +10,7 @@ setTimeout(() => {
10}, 1000); 10}, 1000);
11 11
12module.exports = (Ferdi) => { 12module.exports = (Ferdi) => {
13 const getMessages = function getMessages() { 13 const getMessages = () => {
14 const elements = document.querySelectorAll('.CxUIE, .unread, ._0LqQ'); 14 const elements = document.querySelectorAll('.CxUIE, .unread, ._0LqQ');
15 let count = 0; 15 let count = 0;
16 for (let i = 0; i < elements.length; i += 1) { 16 for (let i = 0; i < elements.length; i += 1) {
diff --git a/recipes/dialpad/package.json b/recipes/dialpad/package.json
index d2a97d2..14ca8e3 100644
--- a/recipes/dialpad/package.json
+++ b/recipes/dialpad/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "dialpad", 2 "id": "dialpad",
3 "name": "Dialpad", 3 "name": "Dialpad",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/TheKevJames/franz-recipe-dialpad", 6 "repository": "https://github.com/TheKevJames/franz-recipe-dialpad",
7 "config": { 7 "config": {
diff --git a/recipes/dialpad/webview.js b/recipes/dialpad/webview.js
index 2bf23f3..a5c6e4a 100644
--- a/recipes/dialpad/webview.js
+++ b/recipes/dialpad/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 function getMessages() { 6 const getMessages = () => {
7 var unreadCount = 0; 7 var unreadCount = 0;
8 $.each($('[data-qa-has-unreads]'), (idx, item) => unreadCount += Ferdi.safeParseInt(item.attributes["data-qa-has-unreads"].value)); 8 $.each($('[data-qa-has-unreads]'), (idx, item) => unreadCount += Ferdi.safeParseInt(item.attributes["data-qa-has-unreads"].value));
9 9
diff --git a/recipes/dingtalk/package.json b/recipes/dingtalk/package.json
index 2cf0474..4a20a26 100644
--- a/recipes/dingtalk/package.json
+++ b/recipes/dingtalk/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "dingtalk", 2 "id": "dingtalk",
3 "name": "Dingtalk", 3 "name": "Dingtalk",
4 "version": "1.0.24", 4 "version": "1.0.25",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://im.dingtalk.com/", 7 "serviceURL": "https://im.dingtalk.com/",
diff --git a/recipes/dingtalk/webview.js b/recipes/dingtalk/webview.js
index 68de1b6..aa5f2a3 100644
--- a/recipes/dingtalk/webview.js
+++ b/recipes/dingtalk/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 let checkIsRun = false; 6 let checkIsRun = false;
7 checkHeightAction = () => { 7 const checkHeightAction = () => {
8 checkIsRun = true; 8 checkIsRun = true;
9 let checkHeight = setInterval(() => { 9 let checkHeight = setInterval(() => {
10 let menuPanel = document.getElementById('menu-pannel') 10 let menuPanel = document.getElementById('menu-pannel')
@@ -25,7 +25,7 @@ module.exports = (Ferdi) => {
25 } 25 }
26 }); 26 });
27 27
28 const getMessages = function getMessages() { 28 const getMessages = () => {
29 const x = document.querySelectorAll('.unread-num em.ng-binding') 29 const x = document.querySelectorAll('.unread-num em.ng-binding')
30 Ferdi.setBadge(x.length > 0 ? x[0].innerHTML : 0); 30 Ferdi.setBadge(x.length > 0 ? x[0].innerHTML : 0);
31 }; 31 };
diff --git a/recipes/discord/package.json b/recipes/discord/package.json
index 243e64b..ae1ba0c 100644
--- a/recipes/discord/package.json
+++ b/recipes/discord/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "discord", 2 "id": "discord",
3 "name": "Discord", 3 "name": "Discord",
4 "version": "1.4.2", 4 "version": "1.4.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://discordapp.com/login", 7 "serviceURL": "https://discordapp.com/login",
diff --git a/recipes/discord/webview.js b/recipes/discord/webview.js
index 3134221..5a9f55a 100644
--- a/recipes/discord/webview.js
+++ b/recipes/discord/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi, settings) => { 5module.exports = (Ferdi, settings) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 let count = 0; 7 let count = 0;
8 const container = document.querySelector('[role="tablist"] > [title="Chats"] > div'); 8 const container = document.querySelector('[role="tablist"] > [title="Chats"] > div');
9 9
diff --git a/recipes/disqus/package.json b/recipes/disqus/package.json
index 73f9a24..11ce689 100644
--- a/recipes/disqus/package.json
+++ b/recipes/disqus/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "disqus", 2 "id": "disqus",
3 "name": "Disqus", 3 "name": "Disqus",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://disqus.com/home/" 7 "serviceURL": "https://disqus.com/home/"
diff --git a/recipes/disqus/webview.js b/recipes/disqus/webview.js
index b5c1902..a79f5e7 100644
--- a/recipes/disqus/webview.js
+++ b/recipes/disqus/webview.js
@@ -1,10 +1,10 @@
1const getInnerInt = selector => {
2 const element = document.querySelector(selector);
3 return element && Ferdi.safeParseInt(element.innerText);
4};
5
6module.exports = Ferdi => { 1module.exports = Ferdi => {
7 const getMessages = function getMessages() { 2 const getInnerInt = selector => {
3 const element = document.querySelector(selector);
4 return element && Ferdi.safeParseInt(element.innerText);
5 };
6
7 const getMessages = () => {
8 const direct = ( 8 const direct = (
9 getInnerInt("header div[data-role='unread-notification-count']") || 9 getInnerInt("header div[data-role='unread-notification-count']") ||
10 getInnerInt('a.has-notifs div.notif-count') || 10 getInnerInt('a.has-notifs div.notif-count') ||
diff --git a/recipes/dockerhub/webview.js b/recipes/dockerhub/webview.js
index 1fd69e8..04d0413 100644
--- a/recipes/dockerhub/webview.js
+++ b/recipes/dockerhub/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 // TODO: If your docker hub service has unread messages, uncomment these lines to implement the logic for updating the badges 6 // TODO: If your docker hub service has unread messages, uncomment these lines to implement the logic for updating the badges
7 // const getMessages = function getMessages() { 7 // const getMessages = () => {
8 // // TODO: Insert your notification-finding code here 8 // // TODO: Insert your notification-finding code here
9 // Ferdi.setBadge(0, 0); 9 // Ferdi.setBadge(0, 0);
10 // }; 10 // };
diff --git a/recipes/drive/package.json b/recipes/drive/package.json
index dd936f1..3bb9c85 100644
--- a/recipes/drive/package.json
+++ b/recipes/drive/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "drive", 2 "id": "drive",
3 "name": "Drive", 3 "name": "Drive",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/gaspergrom/Franz-services", 6 "repository": "https://github.com/gaspergrom/Franz-services",
7 "config": { 7 "config": {
diff --git a/recipes/drive/webview.js b/recipes/drive/webview.js
index ed32d8e..cc1ed84 100644
--- a/recipes/drive/webview.js
+++ b/recipes/drive/webview.js
@@ -2,8 +2,8 @@ const _path = _interopRequireDefault(require('path'));
2 2
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Franz) => { 5module.exports = (Ferdi) => {
6 function getMessages() { 6 const getMessages = () => {
7 let direct = 0; 7 let direct = 0;
8 let indirect = 0; 8 let indirect = 0;
9 const data = document.querySelector('#FranzMessages').dataset; 9 const data = document.querySelector('#FranzMessages').dataset;
@@ -12,9 +12,9 @@ module.exports = (Franz) => {
12 indirect = data.indirect; 12 indirect = data.indirect;
13 } 13 }
14 14
15 Franz.setBadge(direct, indirect); 15 Ferdi.setBadge(direct, indirect);
16 } 16 }
17 17
18 Franz.loop(getMessages); 18 Ferdi.loop(getMessages);
19 Ferdi.injectCSS(_path.default.join(__dirname, 'service.css')); 19 Ferdi.injectCSS(_path.default.join(__dirname, 'service.css'));
20} 20}
diff --git a/recipes/element/package.json b/recipes/element/package.json
index d4cf96d..5e50330 100644
--- a/recipes/element/package.json
+++ b/recipes/element/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "element", 2 "id": "element",
3 "name": "Element", 3 "name": "Element",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "aliases": [ 6 "aliases": [
7 "Riot.im", 7 "Riot.im",
diff --git a/recipes/element/webview.js b/recipes/element/webview.js
index c1fdea3..7baa623 100644
--- a/recipes/element/webview.js
+++ b/recipes/element/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 function getMessages() { 2 const getMessages = () => {
3 const badges = document.querySelectorAll('.mx_RoomSublist:not(.mx_RoomSublist_hidden) .mx_RoomSublist_badgeContainer'); 3 const badges = document.querySelectorAll('.mx_RoomSublist:not(.mx_RoomSublist_hidden) .mx_RoomSublist_badgeContainer');
4 4
5 // Number of messages from People 5 // Number of messages from People
diff --git a/recipes/erepublik/package.json b/recipes/erepublik/package.json
index c8efaab..2e8356a 100644
--- a/recipes/erepublik/package.json
+++ b/recipes/erepublik/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "erepublik", 2 "id": "erepublik",
3 "name": "eRepublik", 3 "name": "eRepublik",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://erepublik.com" 7 "serviceURL": "https://erepublik.com"
diff --git a/recipes/erepublik/webview.js b/recipes/erepublik/webview.js
index 7c24532..6a105e1 100644
--- a/recipes/erepublik/webview.js
+++ b/recipes/erepublik/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elementNotify = document.getElementsByClassName('notify'); 7 const elementNotify = document.getElementsByClassName('notify');
8 const elementFeed = document.getElementsByClassName('unreadCounter ng-binding ng-scope'); 8 const elementFeed = document.getElementsByClassName('unreadCounter ng-binding ng-scope');
9 9
diff --git a/recipes/facebookpages/package.json b/recipes/facebookpages/package.json
index 28f06ec..313e11b 100644
--- a/recipes/facebookpages/package.json
+++ b/recipes/facebookpages/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "facebookpages", 2 "id": "facebookpages",
3 "name": "Facebook Pages", 3 "name": "Facebook Pages",
4 "version": "1.2.2", 4 "version": "1.2.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://facebook.com/{teamId}/", 7 "serviceURL": "https://facebook.com/{teamId}/",
diff --git a/recipes/facebookpages/webview.js b/recipes/facebookpages/webview.js
index 1cc75c6..45f4e95 100644
--- a/recipes/facebookpages/webview.js
+++ b/recipes/facebookpages/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi, options) => { 1module.exports = (Ferdi, options) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let messages = 0; 3 let messages = 0;
4 const element = document.querySelector('[data-testid="message_count"] span'); 4 const element = document.querySelector('[data-testid="message_count"] span');
5 5
@@ -19,7 +19,7 @@ module.exports = (Ferdi, options) => {
19 localStorage.removeItem('franz-needsRedirect'); 19 localStorage.removeItem('franz-needsRedirect');
20 } 20 }
21 } else { 21 } else {
22 localStorage.setItem('franz-needsRedirect', true); 22 localStorage.setItem('franz-needsRedirect', 'true');
23 } 23 }
24 }, 500); 24 }, 500);
25}; 25};
diff --git a/recipes/fastmail/package.json b/recipes/fastmail/package.json
index 7a73acb..61a9587 100644
--- a/recipes/fastmail/package.json
+++ b/recipes/fastmail/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "fastmail", 2 "id": "fastmail",
3 "name": "FastMail", 3 "name": "FastMail",
4 "version": "2.1.0", 4 "version": "2.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.fastmail.com/mail/", 7 "serviceURL": "https://www.fastmail.com/mail/",
diff --git a/recipes/fastmail/webview.js b/recipes/fastmail/webview.js
index 46bad0d..42883e8 100644
--- a/recipes/fastmail/webview.js
+++ b/recipes/fastmail/webview.js
@@ -8,7 +8,7 @@ module.exports = (Ferdi) => {
8 if (!inbox) { 8 if (!inbox) {
9 return; 9 return;
10 } 10 }
11 const messages = Number(inbox.innerText); 11 const messages = Ferdi.safeParseInt(inbox.innerText);
12 Ferdi.setBadge(messages); 12 Ferdi.setBadge(messages);
13 }; 13 };
14 14
diff --git a/recipes/feedbin/package.json b/recipes/feedbin/package.json
index 7a38ad3..a93cb1e 100644
--- a/recipes/feedbin/package.json
+++ b/recipes/feedbin/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "feedbin", 2 "id": "feedbin",
3 "name": "feedbin", 3 "name": "feedbin",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://feedbin.com/login", 7 "serviceURL": "https://feedbin.com/login",
diff --git a/recipes/feedbin/webview.js b/recipes/feedbin/webview.js
index a5c9b7b..5c08892 100644
--- a/recipes/feedbin/webview.js
+++ b/recipes/feedbin/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 const count = feedbin.count_data.unread_entries.length || 0; 3 const count = feedbin.count_data.unread_entries.length || 0;
4 Ferdi.setBadge(count); 4 Ferdi.setBadge(count);
5 } 5 }
diff --git a/recipes/feedly/package.json b/recipes/feedly/package.json
index 0ff3f70..70442bc 100644
--- a/recipes/feedly/package.json
+++ b/recipes/feedly/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "feedly", 2 "id": "feedly",
3 "name": "Feedly", 3 "name": "Feedly",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://feedly.com" 7 "serviceURL": "https://feedly.com"
diff --git a/recipes/feedly/webview.js b/recipes/feedly/webview.js
index 09f4209..1c313e7 100644
--- a/recipes/feedly/webview.js
+++ b/recipes/feedly/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 getMessages = () => { 2 const getMessages = () => {
3 const newsDOM = document.querySelectorAll("div[title='All'] > .LeftnavListRow__count")[0].innerHTML; 3 const newsDOM = document.querySelectorAll("div[title='All'] > .LeftnavListRow__count")[0].innerHTML;
4 let counter = Ferdi.safeParseInt(newsDOM); 4 let counter = Ferdi.safeParseInt(newsDOM);
5 5
diff --git a/recipes/fleep/package.json b/recipes/fleep/package.json
index 3510738..a03d7a4 100644
--- a/recipes/fleep/package.json
+++ b/recipes/fleep/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "fleep", 2 "id": "fleep",
3 "name": "Fleep", 3 "name": "Fleep",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://fleep.io/chat" 7 "serviceURL": "https://fleep.io/chat"
diff --git a/recipes/fleep/webview.js b/recipes/fleep/webview.js
index e760af8..85b5365 100644
--- a/recipes/fleep/webview.js
+++ b/recipes/fleep/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 // Count number of conversations or teams with unread messages 7 // Count number of conversations or teams with unread messages
8 const count = document.querySelectorAll('.unread-count').length; 8 const count = document.querySelectorAll('.unread-count').length;
9 Ferdi.setBadge(count, 0); 9 Ferdi.setBadge(count, 0);
diff --git a/recipes/flowdock/package.json b/recipes/flowdock/package.json
index 8fd8966..3c59ed3 100644
--- a/recipes/flowdock/package.json
+++ b/recipes/flowdock/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "flowdock", 2 "id": "flowdock",
3 "name": "Flowdock", 3 "name": "Flowdock",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.flowdock.com/app/", 7 "serviceURL": "https://www.flowdock.com/app/",
diff --git a/recipes/flowdock/webview.js b/recipes/flowdock/webview.js
index 86db60f..9af36c3 100644
--- a/recipes/flowdock/webview.js
+++ b/recipes/flowdock/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directMessages = document.querySelectorAll('.activity-indicator-mentions').length; 3 const directMessages = document.querySelectorAll('.activity-indicator-mentions').length;
4 const indirectMessages = document.querySelectorAll('.activity-indicator-chat').length; 4 const indirectMessages = document.querySelectorAll('.activity-indicator-chat').length;
5 5
diff --git a/recipes/freshdesk/package.json b/recipes/freshdesk/package.json
index 0fc9faa..d47554c 100644
--- a/recipes/freshdesk/package.json
+++ b/recipes/freshdesk/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "freshdesk", 2 "id": "freshdesk",
3 "name": "Freshdesk", 3 "name": "Freshdesk",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/fisknils/recipe-freshdesk", 6 "repository": "https://github.com/fisknils/recipe-freshdesk",
7 "config": { 7 "config": {
diff --git a/recipes/freshdesk/webview.js b/recipes/freshdesk/webview.js
index 884bfb6..e1911d0 100644
--- a/recipes/freshdesk/webview.js
+++ b/recipes/freshdesk/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 $.get('/api/_/tickets?filter=unresolved', (data) => { 3 $.get('/api/_/tickets?filter=unresolved', (data) => {
4 Ferdi.setBadge(data.tickets.length); 4 Ferdi.setBadge(data.tickets.length);
5 }); 5 });
diff --git a/recipes/github/package.json b/recipes/github/package.json
index 573f743..0f9bb51 100644
--- a/recipes/github/package.json
+++ b/recipes/github/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "github", 2 "id": "github",
3 "name": "GitHub", 3 "name": "GitHub",
4 "version": "2.2.0", 4 "version": "2.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://github.com/notifications", 7 "serviceURL": "https://github.com/notifications",
diff --git a/recipes/github/webview.js b/recipes/github/webview.js
index fdc65a8..36d98a6 100644
--- a/recipes/github/webview.js
+++ b/recipes/github/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directCountElement = document.querySelector('.filter-list .count'); 3 const directCountElement = document.querySelector('.filter-list .count');
4 let directCount = 0; 4 let directCount = 0;
5 if (directCountElement) { 5 if (directCountElement) {
diff --git a/recipes/gitter/package.json b/recipes/gitter/package.json
index 0713c24..c543c09 100644
--- a/recipes/gitter/package.json
+++ b/recipes/gitter/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "gitter", 2 "id": "gitter",
3 "name": "Gitter", 3 "name": "Gitter",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://gitter.im", 7 "serviceURL": "https://gitter.im",
diff --git a/recipes/gitter/webview.js b/recipes/gitter/webview.js
index 402f01a..e78cadf 100644
--- a/recipes/gitter/webview.js
+++ b/recipes/gitter/webview.js
@@ -3,11 +3,11 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 // get unread messages 7 // get unread messages
8 let count = 0; 8 let count = 0;
9 document.querySelectorAll('div.unread-indicator').forEach((node) => { 9 document.querySelectorAll('div.unread-indicator').forEach((node) => {
10 count += Number(node.innerText); 10 count += Ferdi.safeParseInt(node.innerText);
11 }); 11 });
12 12
13 // set Ferdi badge 13 // set Ferdi badge
diff --git a/recipes/glowing-bear/package.json b/recipes/glowing-bear/package.json
index b586117..f210952 100644
--- a/recipes/glowing-bear/package.json
+++ b/recipes/glowing-bear/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "glowing-bear", 2 "id": "glowing-bear",
3 "name": "glowing-bear", 3 "name": "glowing-bear",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.glowing-bear.org", 7 "serviceURL": "https://www.glowing-bear.org",
diff --git a/recipes/glowing-bear/webview.js b/recipes/glowing-bear/webview.js
index 0780357..6abd69a 100644
--- a/recipes/glowing-bear/webview.js
+++ b/recipes/glowing-bear/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const indirectElements = document.querySelectorAll('.badge:not(.danger)'); 3 const indirectElements = document.querySelectorAll('.badge:not(.danger)');
4 const direct = document.querySelectorAll('.badge.danger').length - 1; 4 const direct = document.querySelectorAll('.badge.danger').length - 1;
5 let indirect = -1; 5 let indirect = -1;
diff --git a/recipes/gmail/package.json b/recipes/gmail/package.json
index 97029b4..93610cb 100644
--- a/recipes/gmail/package.json
+++ b/recipes/gmail/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "gmail", 2 "id": "gmail",
3 "name": "Gmail", 3 "name": "Gmail",
4 "version": "1.4.1", 4 "version": "1.4.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mail.google.com" 7 "serviceURL": "https://mail.google.com"
diff --git a/recipes/gmail/webview.js b/recipes/gmail/webview.js
index 8c78bb6..23b1382 100644
--- a/recipes/gmail/webview.js
+++ b/recipes/gmail/webview.js
@@ -8,7 +8,7 @@ module.exports = (Ferdi) => {
8 location.href = 'https://accounts.google.com/AccountChooser?service=mail&continue=https://mail.google.com/mail/'; 8 location.href = 'https://accounts.google.com/AccountChooser?service=mail&continue=https://mail.google.com/mail/';
9 } 9 }
10 10
11 const getMessages = function getMessages() { 11 const getMessages = () => {
12 let count = 0; 12 let count = 0;
13 13
14 const inboxLinks = document.getElementsByClassName('J-Ke n0'); 14 const inboxLinks = document.getElementsByClassName('J-Ke n0');
diff --git a/recipes/google-translate/webview.js b/recipes/google-translate/webview.js
index 9875d8e..41aa5e0 100644
--- a/recipes/google-translate/webview.js
+++ b/recipes/google-translate/webview.js
@@ -4,7 +4,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 // TODO: If your google-translate service has unread messages, uncomment these lines to implement the logic for updating the badges 6 // TODO: If your google-translate service has unread messages, uncomment these lines to implement the logic for updating the badges
7 // const getMessages = function getMessages() { 7 // const getMessages = () => {
8 // // TODO: Insert your notification-finding code here 8 // // TODO: Insert your notification-finding code here
9 // Ferdi.setBadge(0, 0); 9 // Ferdi.setBadge(0, 0);
10 // }; 10 // };
diff --git a/recipes/google-voice/package.json b/recipes/google-voice/package.json
index 20661e3..5fc56ff 100644
--- a/recipes/google-voice/package.json
+++ b/recipes/google-voice/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "google-voice", 2 "id": "google-voice",
3 "name": "google-voice", 3 "name": "google-voice",
4 "version": "0.4.1", 4 "version": "0.4.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/BehindTheMath/franz-recipe-google-voice", 6 "repository": "https://github.com/BehindTheMath/franz-recipe-google-voice",
7 "config": { 7 "config": {
diff --git a/recipes/google-voice/webview.js b/recipes/google-voice/webview.js
index 53d34a1..7cada87 100644
--- a/recipes/google-voice/webview.js
+++ b/recipes/google-voice/webview.js
@@ -4,7 +4,7 @@ module.exports = Ferdi => {
4 return el && Ferdi.safeParseInt(el.innerHTML); 4 return el && Ferdi.safeParseInt(el.innerHTML);
5 } 5 }
6 6
7 function getMessages() { 7 const getMessages = () => {
8 const el = document.querySelector('.msgCount'); 8 const el = document.querySelector('.msgCount');
9 let count; 9 let count;
10 10
diff --git a/recipes/googleclassroom/package.json b/recipes/googleclassroom/package.json
index 84c7e24..5dc3ef8 100644
--- a/recipes/googleclassroom/package.json
+++ b/recipes/googleclassroom/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "googleclassroom", 2 "id": "googleclassroom",
3 "name": "Google Classroom", 3 "name": "Google Classroom",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/TanZng/ferdi-googleclassroom", 6 "repository": "https://github.com/TanZng/ferdi-googleclassroom",
7 "config": { 7 "config": {
diff --git a/recipes/googleclassroom/webview.js b/recipes/googleclassroom/webview.js
index c634b35..0f24597 100644
--- a/recipes/googleclassroom/webview.js
+++ b/recipes/googleclassroom/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let homework = 0; 3 let homework = 0;
4 const upcomingAssignment = document.getElementsByClassName('hrUpcomingAssignmentGroup'); 4 const upcomingAssignment = document.getElementsByClassName('hrUpcomingAssignmentGroup');
5 if (upcomingAssignment.length != 0) { 5 if (upcomingAssignment.length != 0) {
diff --git a/recipes/googlemeet/package.json b/recipes/googlemeet/package.json
index 731de9d..9b16d5a 100644
--- a/recipes/googlemeet/package.json
+++ b/recipes/googlemeet/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "googlemeet", 2 "id": "googlemeet",
3 "name": "Google Meet", 3 "name": "Google Meet",
4 "version": "2.2.2", 4 "version": "2.2.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://meet.google.com", 7 "serviceURL": "https://meet.google.com",
diff --git a/recipes/googlemeet/webview.js b/recipes/googlemeet/webview.js
index ac186ab..4ccee3e 100644
--- a/recipes/googlemeet/webview.js
+++ b/recipes/googlemeet/webview.js
@@ -11,7 +11,7 @@ window.onload = () => {
11}; 11};
12 12
13module.exports = Ferdi => { 13module.exports = Ferdi => {
14 const getMessages = function getMessages() { 14 const getMessages = () => {
15 const elements = document.querySelectorAll('.CxUIE, .unread'); 15 const elements = document.querySelectorAll('.CxUIE, .unread');
16 let count = 0; 16 let count = 0;
17 17
diff --git a/recipes/grape/package.json b/recipes/grape/package.json
index 75cc43d..fa557f8 100644
--- a/recipes/grape/package.json
+++ b/recipes/grape/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "grape", 2 "id": "grape",
3 "name": "Grape", 3 "name": "Grape",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.chatgrape.com/chat", 7 "serviceURL": "https://{teamId}.chatgrape.com/chat",
diff --git a/recipes/grape/webview.js b/recipes/grape/webview.js
index 349846c..9c69aa2 100644
--- a/recipes/grape/webview.js
+++ b/recipes/grape/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directMessages = document.querySelectorAll('.c0120').length; 3 const directMessages = document.querySelectorAll('.c0120').length;
4 const indirectMessages = document.querySelectorAll('.c0121').length; 4 const indirectMessages = document.querySelectorAll('.c0121').length;
5 5
diff --git a/recipes/groupme/package.json b/recipes/groupme/package.json
index 5f5d836..d7ba067 100644
--- a/recipes/groupme/package.json
+++ b/recipes/groupme/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "groupme", 2 "id": "groupme",
3 "name": "GroupMe", 3 "name": "GroupMe",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.groupme.com", 7 "serviceURL": "https://web.groupme.com",
diff --git a/recipes/groupme/webview.js b/recipes/groupme/webview.js
index 4f225b3..6bd7ea8 100644
--- a/recipes/groupme/webview.js
+++ b/recipes/groupme/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directMessages = document.querySelectorAll('.badge-count:not(.ng-hide)').length; 3 const directMessages = document.querySelectorAll('.badge-count:not(.ng-hide)').length;
4 4
5 // set Ferdi badge 5 // set Ferdi badge
diff --git a/recipes/guilded/package.json b/recipes/guilded/package.json
index 7cef02e..94fc32f 100644
--- a/recipes/guilded/package.json
+++ b/recipes/guilded/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "guilded", 2 "id": "guilded",
3 "name": "Guilded", 3 "name": "Guilded",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.guilded.gg/", 7 "serviceURL": "https://www.guilded.gg/",
diff --git a/recipes/guilded/webview.js b/recipes/guilded/webview.js
index 5d56d39..c8d33f2 100644
--- a/recipes/guilded/webview.js
+++ b/recipes/guilded/webview.js
@@ -1,10 +1,10 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let unread = 0; 3 let unread = 0;
4 const notificationBadge = document.getElementsByClassName('NavSelectorItem-unread-badge')[0]; 4 const notificationBadge = document.getElementsByClassName('NavSelectorItem-unread-badge')[0];
5 if (notificationBadge != undefined) { 5 if (notificationBadge != undefined) {
6 const innerBadge = notificationBadge.getElementsByClassName('BadgeV2-count')[0]; 6 const innerBadge = notificationBadge.getElementsByClassName('BadgeV2-count')[0];
7 unread = innerBadge.innerText; 7 unread = Ferdi.safeParseInt(innerBadge.innerText);
8 } 8 }
9 Ferdi.setBadge(unread); 9 Ferdi.setBadge(unread);
10 }; 10 };
diff --git a/recipes/habitica/package.json b/recipes/habitica/package.json
index 574a5d8..dad1a93 100755
--- a/recipes/habitica/package.json
+++ b/recipes/habitica/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "habitica", 2 "id": "habitica",
3 "name": "Habitica", 3 "name": "Habitica",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/lmnet/franz-recipe-notion", 6 "repository": "https://github.com/lmnet/franz-recipe-notion",
7 "config": { 7 "config": {
diff --git a/recipes/habitica/webview.js b/recipes/habitica/webview.js
index 3b443c5..c856fca 100755
--- a/recipes/habitica/webview.js
+++ b/recipes/habitica/webview.js
@@ -3,7 +3,7 @@ module.exports = (Ferdi) => {
3 let count = 0; 3 let count = 0;
4 const element = document.querySelector('.message-count'); 4 const element = document.querySelector('.message-count');
5 if (element) { 5 if (element) {
6 count = Number(element.innerText); 6 count = Ferdi.safeParseInt(element.innerText);
7 } 7 }
8 Ferdi.setBadge(count); 8 Ferdi.setBadge(count);
9 }; 9 };
diff --git a/recipes/hackmd/package.json b/recipes/hackmd/package.json
index 708da11..6a58405 100644
--- a/recipes/hackmd/package.json
+++ b/recipes/hackmd/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "hackmd", 2 "id": "hackmd",
3 "name": "HackMd", 3 "name": "HackMd",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://hackmd.io", 7 "serviceURL": "https://hackmd.io",
diff --git a/recipes/hackmd/webview.js b/recipes/hackmd/webview.js
index 82ce58d..9ccf912 100644
--- a/recipes/hackmd/webview.js
+++ b/recipes/hackmd/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 // get unread messages 7 // get unread messages
8 const count = document.querySelectorAll('.guilds-wrapper .badge').length; 8 const count = document.querySelectorAll('.guilds-wrapper .badge').length;
9 9
diff --git a/recipes/hangouts/package.json b/recipes/hangouts/package.json
index cad4216..8e9f55f 100644
--- a/recipes/hangouts/package.json
+++ b/recipes/hangouts/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "hangouts", 2 "id": "hangouts",
3 "name": "Hangouts", 3 "name": "Hangouts",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://hangouts.google.com", 7 "serviceURL": "https://hangouts.google.com",
diff --git a/recipes/hangouts/webview.js b/recipes/hangouts/webview.js
index 41fced1..a87893d 100644
--- a/recipes/hangouts/webview.js
+++ b/recipes/hangouts/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 // get unread messages 3 // get unread messages
4 const count = document.querySelector('#hangout-landing-chat iframe').contentWindow.document.querySelectorAll('.ee').length; 4 const count = document.querySelector('#hangout-landing-chat iframe').contentWindow.document.querySelectorAll('.ee').length;
5 5
diff --git a/recipes/hangoutschat/package.json b/recipes/hangoutschat/package.json
index 6bbfba4..57f6e13 100644
--- a/recipes/hangoutschat/package.json
+++ b/recipes/hangoutschat/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "hangoutschat", 2 "id": "hangoutschat",
3 "name": "Hangouts Chat", 3 "name": "Hangouts Chat",
4 "version": "1.5.0", 4 "version": "1.5.1",
5 "license": "MIT", 5 "license": "MIT",
6 "aliases": [ 6 "aliases": [
7 "google-chat", 7 "google-chat",
diff --git a/recipes/hangoutschat/webview.js b/recipes/hangoutschat/webview.js
index 0244d33..c8aa952 100644
--- a/recipes/hangoutschat/webview.js
+++ b/recipes/hangoutschat/webview.js
@@ -5,7 +5,7 @@ module.exports = (Ferdi) => {
5 // class corresponding to the bold text that is visible for room messages 5 // class corresponding to the bold text that is visible for room messages
6 const indirectMessageSelector = 'div.V6.CL.V2.X9.Y2 span.akt span.XU'; 6 const indirectMessageSelector = 'div.V6.CL.V2.X9.Y2 span.akt span.XU';
7 7
8 const getMessages = function getMessages() { 8 const getMessages = () => {
9 // get unread direct messages 9 // get unread direct messages
10 const directCount = Number(document.querySelector(directMessageSelector).innerText); 10 const directCount = Number(document.querySelector(directMessageSelector).innerText);
11 11
diff --git a/recipes/hey/package.json b/recipes/hey/package.json
index 02b1334..f681f80 100644
--- a/recipes/hey/package.json
+++ b/recipes/hey/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "hey", 2 "id": "hey",
3 "name": "Hey", 3 "name": "Hey",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "repository": "https://github.com/cpwood/recipe-hey", 5 "repository": "https://github.com/cpwood/recipe-hey",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.hey.com", 7 "serviceURL": "https://app.hey.com",
diff --git a/recipes/hey/webview.js b/recipes/hey/webview.js
index d3227af..686e811 100644
--- a/recipes/hey/webview.js
+++ b/recipes/hey/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 if (document.location.href == "https://app.hey.com/") { 3 if (document.location.href == "https://app.hey.com/") {
4 let screener = 0; 4 let screener = 0;
5 let unread = 0; 5 let unread = 0;
diff --git a/recipes/hipchat/package.json b/recipes/hipchat/package.json
index dbcc059..b0437f6 100644
--- a/recipes/hipchat/package.json
+++ b/recipes/hipchat/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "hipchat", 2 "id": "hipchat",
3 "name": "HipChat", 3 "name": "HipChat",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.hipchat.com/chat", 7 "serviceURL": "https://{teamId}.hipchat.com/chat",
diff --git a/recipes/hipchat/webview.js b/recipes/hipchat/webview.js
index c201f00..8748926 100644
--- a/recipes/hipchat/webview.js
+++ b/recipes/hipchat/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directMessages = document.querySelectorAll('.hc-mention').length; 3 const directMessages = document.querySelectorAll('.hc-mention').length;
4 const allMessages = document.querySelectorAll('.aui-badge:not(.hc-mention)').length - directMessages; 4 const allMessages = document.querySelectorAll('.aui-badge:not(.hc-mention)').length - directMessages;
5 5
diff --git a/recipes/icq/package.json b/recipes/icq/package.json
index 35de4bb..1dee7f0 100644
--- a/recipes/icq/package.json
+++ b/recipes/icq/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "icq", 2 "id": "icq",
3 "name": "ICQ", 3 "name": "ICQ",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/meetfranz/recipe-icq", 6 "repository": "https://github.com/meetfranz/recipe-icq",
7 "config": { 7 "config": {
diff --git a/recipes/icq/webview.js b/recipes/icq/webview.js
index 653dc69..1bffd27 100644
--- a/recipes/icq/webview.js
+++ b/recipes/icq/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let directs = 0; 3 let directs = 0;
4 const elements = document.getElementsByClassName('nwa-msg-counter icq-recent_state-read'); 4 const elements = document.getElementsByClassName('nwa-msg-counter icq-recent_state-read');
5 for (let i = 0; i < elements.length; i++) { 5 for (let i = 0; i < elements.length; i++) {
diff --git a/recipes/idobata/package.json b/recipes/idobata/package.json
index f2b8768..ed97f93 100644
--- a/recipes/idobata/package.json
+++ b/recipes/idobata/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "idobata", 2 "id": "idobata",
3 "name": "Idobata", 3 "name": "Idobata",
4 "version": "0.2.0", 4 "version": "0.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://idobata.io", 7 "serviceURL": "https://idobata.io",
diff --git a/recipes/idobata/webview.js b/recipes/idobata/webview.js
index dde264e..075316d 100644
--- a/recipes/idobata/webview.js
+++ b/recipes/idobata/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 function getMessages() { 2 const getMessages = () => {
3 const title = document.querySelector('title').innerHTML.match(/\d+/); 3 const title = document.querySelector('title').innerHTML.match(/\d+/);
4 const count = title !== null ? title[0] : 0; 4 const count = title !== null ? title[0] : 0;
5 5
diff --git a/recipes/infomaniak-mail/package.json b/recipes/infomaniak-mail/package.json
index b991467..7f1d1c0 100644
--- a/recipes/infomaniak-mail/package.json
+++ b/recipes/infomaniak-mail/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "infomaniak-mail", 2 "id": "infomaniak-mail",
3 "name": "Infomaniak Mail", 3 "name": "Infomaniak Mail",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mail.infomaniak.com/" 7 "serviceURL": "https://mail.infomaniak.com/"
diff --git a/recipes/infomaniak-mail/webview.js b/recipes/infomaniak-mail/webview.js
index 0022949..04ac42d 100644
--- a/recipes/infomaniak-mail/webview.js
+++ b/recipes/infomaniak-mail/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 function getMessages() { 2 const getMessages = () => {
3 const count = document.querySelector('.ws-tree-node-badge').innerText; 3 const count = document.querySelector('.ws-tree-node-badge').innerText;
4 Ferdi.setBadge(count ? Number(count.substring(1, count.length - 1)) : 0); 4 Ferdi.setBadge(count ? Number(count.substring(1, count.length - 1)) : 0);
5 } 5 }
diff --git a/recipes/instagram/package.json b/recipes/instagram/package.json
index 8396da4..f804a11 100644
--- a/recipes/instagram/package.json
+++ b/recipes/instagram/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "instagram", 2 "id": "instagram",
3 "name": "Instagram", 3 "name": "Instagram",
4 "version": "2.2.1", 4 "version": "2.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://instagram.com/direct/inbox", 7 "serviceURL": "https://instagram.com/direct/inbox",
diff --git a/recipes/instagram/webview.js b/recipes/instagram/webview.js
index 8db5852..b971021 100644
--- a/recipes/instagram/webview.js
+++ b/recipes/instagram/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const element = document.querySelector('a[href^="/direct/inbox"]'); 7 const element = document.querySelector('a[href^="/direct/inbox"]');
8 Ferdi.setBadge(element ? Ferdi.safeParseInt(element.innerText) : 0); 8 Ferdi.setBadge(element ? Ferdi.safeParseInt(element.innerText) : 0);
9 }; 9 };
diff --git a/recipes/intercom/package.json b/recipes/intercom/package.json
index e599308..2fc2e39 100644
--- a/recipes/intercom/package.json
+++ b/recipes/intercom/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "intercom", 2 "id": "intercom",
3 "name": "Intercom", 3 "name": "Intercom",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.intercom.io/", 7 "serviceURL": "https://app.intercom.io/",
diff --git a/recipes/intercom/webview.js b/recipes/intercom/webview.js
index a29db21..1ccf8a0 100644
--- a/recipes/intercom/webview.js
+++ b/recipes/intercom/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 const numMessages = Ferdi.safeParseInt(document.querySelector('.left-nav [data-content="Inbox"] .unread__container .unread').innerHTML); 3 const numMessages = Ferdi.safeParseInt(document.querySelector('.left-nav [data-content="Inbox"] .unread__container .unread').innerHTML);
4 Ferdi.setBadge(numMessages); 4 Ferdi.setBadge(numMessages);
5 } 5 }
diff --git a/recipes/irccloud/package.json b/recipes/irccloud/package.json
index 89292b0..47e137b 100644
--- a/recipes/irccloud/package.json
+++ b/recipes/irccloud/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "irccloud", 2 "id": "irccloud",
3 "name": "IRCCloud", 3 "name": "IRCCloud",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/albertomurillo/recipe-irccloud", 6 "repository": "https://github.com/albertomurillo/recipe-irccloud",
7 "config": { 7 "config": {
diff --git a/recipes/irccloud/webview.js b/recipes/irccloud/webview.js
index 8ae318d..0c46c46 100644
--- a/recipes/irccloud/webview.js
+++ b/recipes/irccloud/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directMessages = document.getElementsByClassName('buffer conversation active unread activeBadge').length; 3 const directMessages = document.getElementsByClassName('buffer conversation active unread activeBadge').length;
4 const indirectMessages = document.getElementsByClassName('buffer channel active unread').length; 4 const indirectMessages = document.getElementsByClassName('buffer channel active unread').length;
5 5
diff --git a/recipes/jira/package.json b/recipes/jira/package.json
index 23d77a1..4e70918 100644
--- a/recipes/jira/package.json
+++ b/recipes/jira/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "jira", 2 "id": "jira",
3 "name": "Jira", 3 "name": "Jira",
4 "version": "1.3.1", 4 "version": "1.3.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.atlassian.net", 7 "serviceURL": "https://{teamId}.atlassian.net",
diff --git a/recipes/jira/webview.js b/recipes/jira/webview.js
index d39f91e..246511e 100644
--- a/recipes/jira/webview.js
+++ b/recipes/jira/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 // get unread messages 3 // get unread messages
4 const element = document.querySelector('#atlassian-navigation-notification-count span'); 4 const element = document.querySelector('#atlassian-navigation-notification-count span');
5 Ferdi.setBadge(element ? element.innerText : 0); 5 Ferdi.setBadge(element ? element.innerText : 0);
diff --git a/recipes/jollor/package.json b/recipes/jollor/package.json
index 40c32b5..88a08e3 100644
--- a/recipes/jollor/package.json
+++ b/recipes/jollor/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "jollor", 2 "id": "jollor",
3 "name": "jollor", 3 "name": "jollor",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://jollor.com", 7 "serviceURL": "https://jollor.com",
diff --git a/recipes/jollor/webview.js b/recipes/jollor/webview.js
index 5982ece..695a7fa 100644
--- a/recipes/jollor/webview.js
+++ b/recipes/jollor/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 function getMessages() { 6 const getMessages = () => {
7 const count = document.querySelector('.user-menu-message-item-count').innerHTML; 7 const count = document.querySelector('.user-menu-message-item-count').innerHTML;
8 Ferdi.setBadge(count); 8 Ferdi.setBadge(count);
9 } 9 }
diff --git a/recipes/kaizala/package.json b/recipes/kaizala/package.json
index fc18119..2d7399a 100644
--- a/recipes/kaizala/package.json
+++ b/recipes/kaizala/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "kaizala", 2 "id": "kaizala",
3 "name": "Microsoft Kaizala", 3 "name": "Microsoft Kaizala",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/meetfranz/recipe-microsoft-kaizala", 6 "repository": "https://github.com/meetfranz/recipe-microsoft-kaizala",
7 "config": { 7 "config": {
diff --git a/recipes/kaizala/webview.js b/recipes/kaizala/webview.js
index 17ead54..c8bdd51 100644
--- a/recipes/kaizala/webview.js
+++ b/recipes/kaizala/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const count = document.querySelectorAll('.unseen-msg-count').length; 3 const count = document.querySelectorAll('.unseen-msg-count').length;
4 Ferdi.setBadge(count); 4 Ferdi.setBadge(count);
5 }; 5 };
diff --git a/recipes/kimaicloud/package.json b/recipes/kimaicloud/package.json
index f4c1dcf..902c2a3 100644
--- a/recipes/kimaicloud/package.json
+++ b/recipes/kimaicloud/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "kimaicloud", 2 "id": "kimaicloud",
3 "name": "Kimai Cloud", 3 "name": "Kimai Cloud",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/kimai-cloud/recipe-kimaicloud", 6 "repository": "https://github.com/kimai-cloud/recipe-kimaicloud",
7 "config": { 7 "config": {
diff --git a/recipes/kimaicloud/webview.js b/recipes/kimaicloud/webview.js
index f4e2e9f..975b53d 100644
--- a/recipes/kimaicloud/webview.js
+++ b/recipes/kimaicloud/webview.js
@@ -1,11 +1,11 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 4
5 // get amount of running timesheets 5 // get amount of running timesheets
6 const label = document.querySelector('.main-header .navbar .dropdown.messages-menu .ticktac span.label'); 6 const label = document.querySelector('.main-header .navbar .dropdown.messages-menu .ticktac span.label');
7 if (label !== undefined) { 7 if (label !== undefined) {
8 count = label.textContent; 8 count = Ferdi.safeParseInt(label.textContent);
9 } 9 }
10 10
11 // set Ferdi badge 11 // set Ferdi badge
diff --git a/recipes/lark/package.json b/recipes/lark/package.json
index a1144e3..eaba10e 100644
--- a/recipes/lark/package.json
+++ b/recipes/lark/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "lark", 2 "id": "lark",
3 "name": "Lark", 3 "name": "Lark",
4 "version": "0.1.1", 4 "version": "0.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.larksuite.com/messenger/", 7 "serviceURL": "https://{teamId}.larksuite.com/messenger/",
diff --git a/recipes/lark/webview.js b/recipes/lark/webview.js
index 33d0fc9..4e3a614 100644
--- a/recipes/lark/webview.js
+++ b/recipes/lark/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const ele = document.querySelectorAll('.larkc-badge-count.navbarMenu-badge'); 7 const ele = document.querySelectorAll('.larkc-badge-count.navbarMenu-badge');
8 if (!ele.length) { 8 if (!ele.length) {
9 Ferdi.setBadge(0); 9 Ferdi.setBadge(0);
diff --git a/recipes/lastpass/package.json b/recipes/lastpass/package.json
index eed8f9e..cb0d15b 100644
--- a/recipes/lastpass/package.json
+++ b/recipes/lastpass/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "lastpass", 2 "id": "lastpass",
3 "name": "LastPass", 3 "name": "LastPass",
4 "version": "2.2.2", 4 "version": "2.2.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://lastpass.com/?ac=1&lpnorefresh=1", 7 "serviceURL": "https://lastpass.com/?ac=1&lpnorefresh=1",
diff --git a/recipes/lastpass/webview.js b/recipes/lastpass/webview.js
index 96e92ff..e50ad38 100644
--- a/recipes/lastpass/webview.js
+++ b/recipes/lastpass/webview.js
@@ -9,7 +9,7 @@ setTimeout(() => {
9}, 1000); 9}, 1000);
10 10
11module.exports = Ferdi => { 11module.exports = Ferdi => {
12 const getMessages = function getMessages() { 12 const getMessages = () => {
13 const elements = document.querySelectorAll('.CxUIE, .unread'); 13 const elements = document.querySelectorAll('.CxUIE, .unread');
14 let count = 0; 14 let count = 0;
15 15
diff --git a/recipes/linkedin/package.json b/recipes/linkedin/package.json
index 2c9bdd2..2d3ad0e 100644
--- a/recipes/linkedin/package.json
+++ b/recipes/linkedin/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "linkedin", 2 "id": "linkedin",
3 "name": "LinkedIn", 3 "name": "LinkedIn",
4 "version": "1.2.1", 4 "version": "1.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.linkedin.com/messaging" 7 "serviceURL": "https://www.linkedin.com/messaging"
diff --git a/recipes/linkedin/webview.js b/recipes/linkedin/webview.js
index 1017d26..8d1afc8 100644
--- a/recipes/linkedin/webview.js
+++ b/recipes/linkedin/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 4
5 if (window.location.pathname.includes('messaging')) { 5 if (window.location.pathname.includes('messaging')) {
diff --git a/recipes/mailbox.org/package.json b/recipes/mailbox.org/package.json
index c99d244..1d425d2 100644
--- a/recipes/mailbox.org/package.json
+++ b/recipes/mailbox.org/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "mailbox.org", 2 "id": "mailbox.org",
3 "name": "mailbox.org", 3 "name": "mailbox.org",
4 "version": "1.3.0", 4 "version": "1.3.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://office.mailbox.org/appsuite/#!!&app=io.ox/portal" 7 "serviceURL": "https://office.mailbox.org/appsuite/#!!&app=io.ox/portal"
diff --git a/recipes/mailbox.org/webview.js b/recipes/mailbox.org/webview.js
index 489dc94..d0fbfd0 100644
--- a/recipes/mailbox.org/webview.js
+++ b/recipes/mailbox.org/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const count = document.querySelectorAll('.new-item').length; 3 const count = document.querySelectorAll('.new-item').length;
4 4
5 Ferdi.setBadge(count); 5 Ferdi.setBadge(count);
diff --git a/recipes/mastodon/package.json b/recipes/mastodon/package.json
index 825fbc5..c77d834 100644
--- a/recipes/mastodon/package.json
+++ b/recipes/mastodon/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "name": "Mastodon", 2 "name": "Mastodon",
3 "id": "mastodon", 3 "id": "mastodon",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "hasNotificationSound": true, 7 "hasNotificationSound": true,
diff --git a/recipes/mastodon/webview.js b/recipes/mastodon/webview.js
index b349220..4b450a1 100644
--- a/recipes/mastodon/webview.js
+++ b/recipes/mastodon/webview.js
@@ -9,7 +9,7 @@ module.exports = (Ferdi) => {
9 latestNotify = $($('.notification__message span').get(0)).text(); 9 latestNotify = $($('.notification__message span').get(0)).text();
10 }); 10 });
11 11
12 function getMessages() { 12 const getMessages = () => {
13 let reply = 0; 13 let reply = 0;
14 const ln = $($('.notification__message span').get(0)).text(); 14 const ln = $($('.notification__message span').get(0)).text();
15 if (ln != latestNotify) { 15 if (ln != latestNotify) {
diff --git a/recipes/mattermost/package.json b/recipes/mattermost/package.json
index befe718..c9e6c16 100644
--- a/recipes/mattermost/package.json
+++ b/recipes/mattermost/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "mattermost", 2 "id": "mattermost",
3 "name": "Mattermost", 3 "name": "Mattermost",
4 "version": "1.3.0", 4 "version": "1.3.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "hasNotificationSound": true, 7 "hasNotificationSound": true,
diff --git a/recipes/mattermost/webview.js b/recipes/mattermost/webview.js
index 88d1b80..179a43a 100644
--- a/recipes/mattermost/webview.js
+++ b/recipes/mattermost/webview.js
@@ -5,7 +5,7 @@ module.exports = Ferdi => {
5 const ALL_MESSAGES = '#sidebar-left .unread-title'; 5 const ALL_MESSAGES = '#sidebar-left .unread-title';
6 const ALL_MESSAGES_LEGACY = '#sidebar-left .unread-title'; 6 const ALL_MESSAGES_LEGACY = '#sidebar-left .unread-title';
7 7
8 const getMessages = function getMessages() { 8 const getMessages = () => {
9 const directMessagesSelector = [DIRECT_MESSAGES_LEGACY, DIRECT_MESSAGES_INDIVIDUAL, DIRECT_MESSAGES_GROUP].join(', '); 9 const directMessagesSelector = [DIRECT_MESSAGES_LEGACY, DIRECT_MESSAGES_INDIVIDUAL, DIRECT_MESSAGES_GROUP].join(', ');
10 const directMessages = document.querySelectorAll(directMessagesSelector).length; 10 const directMessages = document.querySelectorAll(directMessagesSelector).length;
11 11
diff --git a/recipes/messenger/package.json b/recipes/messenger/package.json
index 1f58796..2d1cddc 100644
--- a/recipes/messenger/package.json
+++ b/recipes/messenger/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "messenger", 2 "id": "messenger",
3 "name": "Messenger", 3 "name": "Messenger",
4 "version": "1.3.2", 4 "version": "1.3.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://messenger.com", 7 "serviceURL": "https://messenger.com",
diff --git a/recipes/messenger/webview.js b/recipes/messenger/webview.js
index c147df8..954f843 100644
--- a/recipes/messenger/webview.js
+++ b/recipes/messenger/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 4
5 const isNotification = /^\((\d+)\)/.test(document.title); 5 const isNotification = /^\((\d+)\)/.test(document.title);
diff --git a/recipes/mewe/package.json b/recipes/mewe/package.json
index 73a4c9e..ec966cb 100644
--- a/recipes/mewe/package.json
+++ b/recipes/mewe/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "mewe", 2 "id": "mewe",
3 "name": "MeWe", 3 "name": "MeWe",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mewe.com/chat", 7 "serviceURL": "https://mewe.com/chat",
diff --git a/recipes/mewe/webview.js b/recipes/mewe/webview.js
index f22803c..fcf5918 100644
--- a/recipes/mewe/webview.js
+++ b/recipes/mewe/webview.js
@@ -2,12 +2,12 @@ const _path = _interopRequireDefault(require('path'));
2 2
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5const calculateTotalDirectMessages = () =>
6 Array.from(document.getElementsByClassName('chats-list-element'))
7 .map(el => Ferdi.safeParseInt(el.querySelector('.m-indicator .number').innerHTML))
8 .reduce((curr, prev) => curr + prev, 0);
9
10module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const calculateTotalDirectMessages = () =>
7 Array.from(document.getElementsByClassName('chats-list-element'))
8 .map(el => Ferdi.safeParseInt(el.querySelector('.m-indicator .number').innerHTML))
9 .reduce((curr, prev) => curr + prev, 0);
10
11 Ferdi.loop(() => Ferdi.setBadge(calculateTotalDirectMessages())); 11 Ferdi.loop(() => Ferdi.setBadge(calculateTotalDirectMessages()));
12 Ferdi.injectCSS(_path.default.join(__dirname, 'service.css')); 12 Ferdi.injectCSS(_path.default.join(__dirname, 'service.css'));
13}; 13};
diff --git a/recipes/misskey/package.json b/recipes/misskey/package.json
index 66bdd3c..056e9b6 100644
--- a/recipes/misskey/package.json
+++ b/recipes/misskey/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "misskey", 2 "id": "misskey",
3 "name": "Misskey", 3 "name": "Misskey",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/sharkpp/franz-recipe-misskey", 6 "repository": "https://github.com/sharkpp/franz-recipe-misskey",
7 "config": { 7 "config": {
diff --git a/recipes/misskey/webview.js b/recipes/misskey/webview.js
index b024ce1..c174266 100644
--- a/recipes/misskey/webview.js
+++ b/recipes/misskey/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 // check notification badge for Ferdi badge 3 // check notification badge for Ferdi badge
4 let hasNotification = !!document.querySelector('#app div.notifications > button > i.circle'); 4 let hasNotification = !!document.querySelector('#app div.notifications > button > i.circle');
5 Ferdi.setBadge(0, hasNotification ? 1 : 0); 5 Ferdi.setBadge(0, hasNotification ? 1 : 0);
diff --git a/recipes/monday/package.json b/recipes/monday/package.json
index 5b6af2f..c29e7a8 100644
--- a/recipes/monday/package.json
+++ b/recipes/monday/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "monday", 2 "id": "monday",
3 "name": "Monday", 3 "name": "Monday",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.monday.com", 7 "serviceURL": "https://{teamId}.monday.com",
diff --git a/recipes/monday/webview.js b/recipes/monday/webview.js
index 924c071..15f6335 100755
--- a/recipes/monday/webview.js
+++ b/recipes/monday/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 let count = 0; 7 let count = 0;
8 8
9 const counters = document.querySelectorAll('.surface-control-component .item-counter, .surface-control-component .view-item-counter'); 9 const counters = document.querySelectorAll('.surface-control-component .item-counter, .surface-control-component .view-item-counter');
diff --git a/recipes/mstodo/package.json b/recipes/mstodo/package.json
index c4fae20..2d12e1a 100644
--- a/recipes/mstodo/package.json
+++ b/recipes/mstodo/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "mstodo", 2 "id": "mstodo",
3 "name": "Microsoft To Do", 3 "name": "Microsoft To Do",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://to-do.live.com/tasks/", 7 "serviceURL": "https://to-do.live.com/tasks/",
diff --git a/recipes/mstodo/webview.js b/recipes/mstodo/webview.js
index 1fd8795..9f4efef 100644
--- a/recipes/mstodo/webview.js
+++ b/recipes/mstodo/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elements = document.querySelectorAll('.taskItem'); 7 const elements = document.querySelectorAll('.taskItem');
8 let count = 0; 8 let count = 0;
9 9
diff --git a/recipes/mysms/package.json b/recipes/mysms/package.json
index 9030285..a88baf3 100644
--- a/recipes/mysms/package.json
+++ b/recipes/mysms/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "mysms", 2 "id": "mysms",
3 "name": "MySMS", 3 "name": "MySMS",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.mysms.com" 7 "serviceURL": "https://app.mysms.com"
diff --git a/recipes/mysms/webview.js b/recipes/mysms/webview.js
index a0b4ea6..3f3415a 100644
--- a/recipes/mysms/webview.js
+++ b/recipes/mysms/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const elements = document.getElementsByClassName('unread'); 3 const elements = document.getElementsByClassName('unread');
4 4
5 let count = 0; 5 let count = 0;
diff --git a/recipes/nextcloud-calendar/package.json b/recipes/nextcloud-calendar/package.json
index 02218d9..6783f7b 100644
--- a/recipes/nextcloud-calendar/package.json
+++ b/recipes/nextcloud-calendar/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextcloud-calendar", 2 "id": "nextcloud-calendar",
3 "name": "Nextcloud Calendar", 3 "name": "Nextcloud Calendar",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-calendar", 6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-calendar",
7 "config": { 7 "config": {
diff --git a/recipes/nextcloud-calendar/webview.js b/recipes/nextcloud-calendar/webview.js
index 34efa7c..2d932c0 100644
--- a/recipes/nextcloud-calendar/webview.js
+++ b/recipes/nextcloud-calendar/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const direct = document.querySelectorAll( 7 const direct = document.querySelectorAll(
8 '.notifications .notification-wrapper .notification[object_type="dav"]', 8 '.notifications .notification-wrapper .notification[object_type="dav"]',
9 ).length; 9 ).length;
diff --git a/recipes/nextcloud-carnet/package.json b/recipes/nextcloud-carnet/package.json
index 264cbd9..6d59dc8 100644
--- a/recipes/nextcloud-carnet/package.json
+++ b/recipes/nextcloud-carnet/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextcloud-carnet", 2 "id": "nextcloud-carnet",
3 "name": "Carnet (Nextcloud)", 3 "name": "Carnet (Nextcloud)",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-carnet", 6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-carnet",
7 "config": { 7 "config": {
diff --git a/recipes/nextcloud-carnet/webview.js b/recipes/nextcloud-carnet/webview.js
index 8152a24..cecd453 100644
--- a/recipes/nextcloud-carnet/webview.js
+++ b/recipes/nextcloud-carnet/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const direct = document.querySelectorAll( 7 const direct = document.querySelectorAll(
8 '.app-navigation-entry-utils-counter.highlighted', 8 '.app-navigation-entry-utils-counter.highlighted',
9 ).length; 9 ).length;
diff --git a/recipes/nextcloud-cospend/package.json b/recipes/nextcloud-cospend/package.json
index 58d9782..43691ad 100644
--- a/recipes/nextcloud-cospend/package.json
+++ b/recipes/nextcloud-cospend/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextcloud-cospend", 2 "id": "nextcloud-cospend",
3 "name": "Nextcloud Cospend", 3 "name": "Nextcloud Cospend",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-cospend", 6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-cospend",
7 "config": { 7 "config": {
diff --git a/recipes/nextcloud-cospend/webview.js b/recipes/nextcloud-cospend/webview.js
index 8152a24..cecd453 100644
--- a/recipes/nextcloud-cospend/webview.js
+++ b/recipes/nextcloud-cospend/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const direct = document.querySelectorAll( 7 const direct = document.querySelectorAll(
8 '.app-navigation-entry-utils-counter.highlighted', 8 '.app-navigation-entry-utils-counter.highlighted',
9 ).length; 9 ).length;
diff --git a/recipes/nextcloud-talk/package.json b/recipes/nextcloud-talk/package.json
index 553376c..445780d 100644
--- a/recipes/nextcloud-talk/package.json
+++ b/recipes/nextcloud-talk/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextcloud-talk", 2 "id": "nextcloud-talk",
3 "name": "Nextcloud Talk", 3 "name": "Nextcloud Talk",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "hasNotificationSound": true, 7 "hasNotificationSound": true,
diff --git a/recipes/nextcloud-talk/webview.js b/recipes/nextcloud-talk/webview.js
index b368d7c..1b55203 100644
--- a/recipes/nextcloud-talk/webview.js
+++ b/recipes/nextcloud-talk/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 let direct = 0; 7 let direct = 0;
8 const notificationWrapper = document.querySelector( 8 const notificationWrapper = document.querySelector(
9 '.notifications .notification-wrapper', 9 '.notifications .notification-wrapper',
diff --git a/recipes/nextcloud-tasks/package.json b/recipes/nextcloud-tasks/package.json
index 89a9b95..e57d2b8 100644
--- a/recipes/nextcloud-tasks/package.json
+++ b/recipes/nextcloud-tasks/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextcloud-tasks", 2 "id": "nextcloud-tasks",
3 "name": "Nextcloud Tasks", 3 "name": "Nextcloud Tasks",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-tasks", 6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud-tasks",
7 "config": { 7 "config": {
diff --git a/recipes/nextcloud-tasks/webview.js b/recipes/nextcloud-tasks/webview.js
index 8152a24..cecd453 100644
--- a/recipes/nextcloud-tasks/webview.js
+++ b/recipes/nextcloud-tasks/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const direct = document.querySelectorAll( 7 const direct = document.querySelectorAll(
8 '.app-navigation-entry-utils-counter.highlighted', 8 '.app-navigation-entry-utils-counter.highlighted',
9 ).length; 9 ).length;
diff --git a/recipes/nextcloud/package.json b/recipes/nextcloud/package.json
index f4e6a52..409ebc9 100644
--- a/recipes/nextcloud/package.json
+++ b/recipes/nextcloud/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextcloud", 2 "id": "nextcloud",
3 "name": "Nextcloud", 3 "name": "Nextcloud",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud", 6 "repository": "https://github.com/eandersons/ferdi-recipe-nextcloud",
7 "config": { 7 "config": {
diff --git a/recipes/nextcloud/webview.js b/recipes/nextcloud/webview.js
index 9779a40..9072ecf 100644
--- a/recipes/nextcloud/webview.js
+++ b/recipes/nextcloud/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const direct = document.querySelectorAll( 3 const direct = document.querySelectorAll(
4 '.notifications .notification-container .notification-wrapper li .notification', 4 '.notifications .notification-container .notification-wrapper li .notification',
5 ).length; 5 ).length;
diff --git a/recipes/nextdoor/package.json b/recipes/nextdoor/package.json
index 2b40f9d..b028c19 100644
--- a/recipes/nextdoor/package.json
+++ b/recipes/nextdoor/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "nextdoor", 2 "id": "nextdoor",
3 "name": "Nextdoor", 3 "name": "Nextdoor",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://nextdoor.co.uk/inbox/" 7 "serviceURL": "https://nextdoor.co.uk/inbox/"
diff --git a/recipes/nextdoor/webview.js b/recipes/nextdoor/webview.js
index fbac111..503d9a4 100644
--- a/recipes/nextdoor/webview.js
+++ b/recipes/nextdoor/webview.js
@@ -1,9 +1,9 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let unread = 0; 3 let unread = 0;
4 const notificationBadge = document.getElementsByClassName('notification-badge')[0]; 4 const notificationBadge = document.getElementsByClassName('notification-badge')[0];
5 if (notificationBadge != undefined) { 5 if (notificationBadge != undefined) {
6 unread = notificationBadge.innerText; 6 unread = Ferdi.safeParseInt(notificationBadge.innerText);
7 } 7 }
8 Ferdi.setBadge(unread); 8 Ferdi.setBadge(unread);
9 }; 9 };
diff --git a/recipes/notion/package.json b/recipes/notion/package.json
index 1cefed4..4db4a65 100644
--- a/recipes/notion/package.json
+++ b/recipes/notion/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "notion", 2 "id": "notion",
3 "name": "Notion", 3 "name": "Notion",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/TanZng/ferdi-notion", 6 "repository": "https://github.com/TanZng/ferdi-notion",
7 "config": { 7 "config": {
diff --git a/recipes/notion/webview.js b/recipes/notion/webview.js
index aa8eaec..cd8f566 100644
--- a/recipes/notion/webview.js
+++ b/recipes/notion/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 let direct = 0; 3 let direct = 0;
4 const badgeDiv = document.querySelector('.notion-sidebar-container > div > div > div > :nth-child(4) > :nth-child(2) > div > :nth-child(3) > div > div'); 4 const badgeDiv = document.querySelector('.notion-sidebar-container > div > div > div > :nth-child(4) > :nth-child(2) > div > :nth-child(3) > div > div');
5 if (badgeDiv) { 5 if (badgeDiv) {
diff --git a/recipes/office365-owa/package.json b/recipes/office365-owa/package.json
index bd3ca9c..354578d 100644
--- a/recipes/office365-owa/package.json
+++ b/recipes/office365-owa/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "office365-owa", 2 "id": "office365-owa",
3 "name": "Office 365 Outlook", 3 "name": "Office 365 Outlook",
4 "version": "1.4.5", 4 "version": "1.4.6",
5 "license": "MIT", 5 "license": "MIT",
6 "aliases": [ 6 "aliases": [
7 "live.com" 7 "live.com"
diff --git a/recipes/office365-owa/webview.js b/recipes/office365-owa/webview.js
index 82c7dfd..0ac258c 100644
--- a/recipes/office365-owa/webview.js
+++ b/recipes/office365-owa/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 function getMessages() { 2 const getMessages = () => {
3 let directUnreadCount = 0; 3 let directUnreadCount = 0;
4 let indirectUnreadCount = 0; 4 let indirectUnreadCount = 0;
5 5
diff --git a/recipes/pipefy/package.json b/recipes/pipefy/package.json
index 42cb92b..0403f39 100644
--- a/recipes/pipefy/package.json
+++ b/recipes/pipefy/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "pipefy", 2 "id": "pipefy",
3 "name": "Pipefy", 3 "name": "Pipefy",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.pipefy.com/", 7 "serviceURL": "https://app.pipefy.com/",
diff --git a/recipes/pipefy/webview.js b/recipes/pipefy/webview.js
index a3564c0..48904e6 100644
--- a/recipes/pipefy/webview.js
+++ b/recipes/pipefy/webview.js
@@ -5,7 +5,7 @@ function _interopRequireDefault(obj) {
5} 5}
6 6
7module.exports = Ferdi => { 7module.exports = Ferdi => {
8 const getMessages = function getMessages() { 8 const getMessages = () => {
9 const getNotificationButton = document.querySelector( 9 const getNotificationButton = document.querySelector(
10 '#notifications_button', 10 '#notifications_button',
11 ); 11 );
diff --git a/recipes/pivotal-tracker/package.json b/recipes/pivotal-tracker/package.json
index b9164e1..5b2357a 100644
--- a/recipes/pivotal-tracker/package.json
+++ b/recipes/pivotal-tracker/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "pivotal-tracker", 2 "id": "pivotal-tracker",
3 "name": "pivotal-tracker", 3 "name": "pivotal-tracker",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.pivotaltracker.com/signin", 7 "serviceURL": "https://www.pivotaltracker.com/signin",
diff --git a/recipes/pivotal-tracker/webview.js b/recipes/pivotal-tracker/webview.js
index cfc2ae4..e4899a5 100644
--- a/recipes/pivotal-tracker/webview.js
+++ b/recipes/pivotal-tracker/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 const bell = document.querySelectorAll('#view65 > span')[0]; 3 const bell = document.querySelectorAll('#view65 > span')[0];
4 if (bell) { 4 if (bell) {
5 Ferdi.setBadge(bell.innerText); 5 Ferdi.setBadge(bell.innerText);
diff --git a/recipes/plurk/package.json b/recipes/plurk/package.json
index 6167c53..d9d3fb5 100644
--- a/recipes/plurk/package.json
+++ b/recipes/plurk/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "plurk", 2 "id": "plurk",
3 "name": "Plurk", 3 "name": "Plurk",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.plurk.com" 7 "serviceURL": "https://www.plurk.com"
diff --git a/recipes/plurk/webview.js b/recipes/plurk/webview.js
index 0136c24..c79853d 100644
--- a/recipes/plurk/webview.js
+++ b/recipes/plurk/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 function getMessages() { 2 const getMessages = () => {
3 let direct = 0; 3 let direct = 0;
4 4
5 const np = document.querySelector('#noti_np_count'); 5 const np = document.querySelector('#noti_np_count');
diff --git a/recipes/producthunt/package.json b/recipes/producthunt/package.json
index 293f110..6f4bfb9 100644
--- a/recipes/producthunt/package.json
+++ b/recipes/producthunt/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "producthunt", 2 "id": "producthunt",
3 "name": "Product Hunt", 3 "name": "Product Hunt",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/alexdevero/franz-producthunt-recipe", 6 "repository": "https://github.com/alexdevero/franz-producthunt-recipe",
7 "config": { 7 "config": {
diff --git a/recipes/producthunt/webview.js b/recipes/producthunt/webview.js
index 69dcc95..c03de9b 100644
--- a/recipes/producthunt/webview.js
+++ b/recipes/producthunt/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 Ferdi.setBadge(document.querySelector('[class*=header_] [class*=content_] [class*=actions_] [class*=notificationsButton_]').innerText) 3 Ferdi.setBadge(document.querySelector('[class*=header_] [class*=content_] [class*=actions_] [class*=notificationsButton_]').innerText)
4 } 4 }
5 5
diff --git a/recipes/proton-mail/package.json b/recipes/proton-mail/package.json
index 9cb0d99..ab09207 100644
--- a/recipes/proton-mail/package.json
+++ b/recipes/proton-mail/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "proton-mail", 2 "id": "proton-mail",
3 "name": "ProtonMail", 3 "name": "ProtonMail",
4 "version": "1.3.0", 4 "version": "1.3.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mail.protonmail.com/login" 7 "serviceURL": "https://mail.protonmail.com/login"
diff --git a/recipes/proton-mail/webview.js b/recipes/proton-mail/webview.js
index 10319f2..ed66db5 100644
--- a/recipes/proton-mail/webview.js
+++ b/recipes/proton-mail/webview.js
@@ -1,11 +1,11 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 function getMessages() { 2 const getMessages = () => {
3 const element = document.querySelector('.navigationItem-counter'); 3 const element = document.querySelector('.navigationItem-counter');
4 if (!element) { 4 if (!element) {
5 return; 5 return;
6 } 6 }
7 const text = element.innerText; 7 const text = element.innerText;
8 const count = Number(text.substring(1, text.length - 1)); 8 const count = Ferdi.safeParseInt(text.substring(1, text.length - 1));
9 Ferdi.setBadge(count); 9 Ferdi.setBadge(count);
10 } 10 }
11 11
diff --git a/recipes/pulsesms/package.json b/recipes/pulsesms/package.json
index a939717..a980b56 100644
--- a/recipes/pulsesms/package.json
+++ b/recipes/pulsesms/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "pulsesms", 2 "id": "pulsesms",
3 "name": "PulseSMS", 3 "name": "PulseSMS",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://pulsesms.app", 7 "serviceURL": "https://pulsesms.app",
diff --git a/recipes/pulsesms/webview.js b/recipes/pulsesms/webview.js
index 6904fbc..48bb2ad 100644
--- a/recipes/pulsesms/webview.js
+++ b/recipes/pulsesms/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 Ferdi.setBadge(document.querySelector('#unread_count').innerHTML.replace(/\s/g, '')); 3 Ferdi.setBadge(document.querySelector('#unread_count').innerHTML.replace(/\s/g, ''));
4 } 4 }
5 5
diff --git a/recipes/reddit/package.json b/recipes/reddit/package.json
index b1e9399..e570e01 100644
--- a/recipes/reddit/package.json
+++ b/recipes/reddit/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "reddit", 2 "id": "reddit",
3 "name": "Reddit", 3 "name": "Reddit",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/getferdi/recipes", 6 "repository": "https://github.com/getferdi/recipes",
7 "config": { 7 "config": {
diff --git a/recipes/reddit/webview.js b/recipes/reddit/webview.js
index ad2c83e..327bd89 100644
--- a/recipes/reddit/webview.js
+++ b/recipes/reddit/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elements = document.querySelectorAll('#HeaderUserActions--Messages > a > span'); 7 const elements = document.querySelectorAll('#HeaderUserActions--Messages > a > span');
8 let count = 0; 8 let count = 0;
9 9
diff --git a/recipes/riseup/package.json b/recipes/riseup/package.json
index 82689aa..fa26c13 100644
--- a/recipes/riseup/package.json
+++ b/recipes/riseup/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "riseup", 2 "id": "riseup",
3 "name": "Riseup.net", 3 "name": "Riseup.net",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mail.riseup.net" 7 "serviceURL": "https://mail.riseup.net"
diff --git a/recipes/riseup/webview.js b/recipes/riseup/webview.js
index 7cbb736..0fb21f8 100644
--- a/recipes/riseup/webview.js
+++ b/recipes/riseup/webview.js
@@ -1,9 +1,9 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let unread = 0; 3 let unread = 0;
4 const notificationBadge = document.getElementsByClassName('unreadcount')[0]; 4 const notificationBadge = document.getElementsByClassName('unreadcount')[0];
5 if (notificationBadge != undefined) { 5 if (notificationBadge != undefined) {
6 unread = notificationBadge.innerText; 6 unread = Ferdi.safeParseInt(notificationBadge.innerText);
7 } 7 }
8 Ferdi.setBadge(unread); 8 Ferdi.setBadge(unread);
9 }; 9 };
diff --git a/recipes/rocketchat/package.json b/recipes/rocketchat/package.json
index f2c6374..2bf5722 100644
--- a/recipes/rocketchat/package.json
+++ b/recipes/rocketchat/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "rocketchat", 2 "id": "rocketchat",
3 "name": "Rocket.Chat", 3 "name": "Rocket.Chat",
4 "version": "1.2.1", 4 "version": "1.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.rocket.chat", 7 "serviceURL": "https://{teamId}.rocket.chat",
diff --git a/recipes/rocketchat/webview.js b/recipes/rocketchat/webview.js
index 159adea..24d784a 100644
--- a/recipes/rocketchat/webview.js
+++ b/recipes/rocketchat/webview.js
@@ -1,6 +1,6 @@
1 1
2module.exports = Ferdi => { 2module.exports = Ferdi => {
3 const getMessages = function getMessages() { 3 const getMessages = () => {
4 const directMessages = document.querySelectorAll('.rcx-badge'); 4 const directMessages = document.querySelectorAll('.rcx-badge');
5 5
6 let directMessagesCount = 0; 6 let directMessagesCount = 0;
diff --git a/recipes/roundcube/package.json b/recipes/roundcube/package.json
index d36a816..362b48e 100644
--- a/recipes/roundcube/package.json
+++ b/recipes/roundcube/package.json
@@ -1,9 +1,9 @@
1{ 1{
2 "id": "roundcube", 2 "id": "roundcube",
3 "name": "Roundcube", 3 "name": "Roundcube",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "repository": "https://github.com/jonathanjuursema/franz-roundcube",
6 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/jonathanjuursema/franz-roundcube",
7 "config": { 7 "config": {
8 "hasCustomUrl": true 8 "hasCustomUrl": true
9 } 9 }
diff --git a/recipes/roundcube/webview.js b/recipes/roundcube/webview.js
index ce9872a..c59da2f 100644
--- a/recipes/roundcube/webview.js
+++ b/recipes/roundcube/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const directElements = document.querySelectorAll('.unreadcount'); 3 const directElements = document.querySelectorAll('.unreadcount');
4 let direct = 0; 4 let direct = 0;
5 for (let i = 0; i < directElements.length; i += 1) { 5 for (let i = 0; i < directElements.length; i += 1) {
diff --git a/recipes/scrumpy/package.json b/recipes/scrumpy/package.json
index 33dcb5b..b3ee954 100644
--- a/recipes/scrumpy/package.json
+++ b/recipes/scrumpy/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "scrumpy", 2 "id": "scrumpy",
3 "name": "Scrumpy", 3 "name": "Scrumpy",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/scrumpy/franz-recipe-scrumpy", 6 "repository": "https://github.com/scrumpy/franz-recipe-scrumpy",
7 "config": { 7 "config": {
diff --git a/recipes/scrumpy/webview.js b/recipes/scrumpy/webview.js
index b53404b..5c762e4 100644
--- a/recipes/scrumpy/webview.js
+++ b/recipes/scrumpy/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const notifications = document.querySelector('.c-notifications-dropdown__count') 3 const notifications = document.querySelector('.c-notifications-dropdown__count')
4 Ferdi.setBadge(notifications.innerText); 4 Ferdi.setBadge(notifications.innerText);
5 }; 5 };
diff --git a/recipes/simplenote/package.json b/recipes/simplenote/package.json
index a4867b9..cd13d5c 100644
--- a/recipes/simplenote/package.json
+++ b/recipes/simplenote/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "simplenote", 2 "id": "simplenote",
3 "name": "Simplenote", 3 "name": "Simplenote",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.simplenote.com/" 7 "serviceURL": "https://app.simplenote.com/"
diff --git a/recipes/simplenote/webview.js b/recipes/simplenote/webview.js
index 1017d26..8d1afc8 100644
--- a/recipes/simplenote/webview.js
+++ b/recipes/simplenote/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 4
5 if (window.location.pathname.includes('messaging')) { 5 if (window.location.pathname.includes('messaging')) {
diff --git a/recipes/skype/package.json b/recipes/skype/package.json
index 5d23929..d824a57 100644
--- a/recipes/skype/package.json
+++ b/recipes/skype/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "skype", 2 "id": "skype",
3 "name": "Skype", 3 "name": "Skype",
4 "version": "3.2.0", 4 "version": "3.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.skype.com/", 7 "serviceURL": "https://web.skype.com/",
diff --git a/recipes/skype/webview.js b/recipes/skype/webview.js
index dd867ea..18b63a5 100644
--- a/recipes/skype/webview.js
+++ b/recipes/skype/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi, settings) => { 5module.exports = (Ferdi, settings) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 let count = 0; 7 let count = 0;
8 const container = document.querySelector('[role="tablist"] > [title="Chats"] > div'); 8 const container = document.querySelector('[role="tablist"] > [title="Chats"] > div');
9 9
diff --git a/recipes/slite/package.json b/recipes/slite/package.json
index 44ec123..4f1b753 100644
--- a/recipes/slite/package.json
+++ b/recipes/slite/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "slite", 2 "id": "slite",
3 "name": "Slite", 3 "name": "Slite",
4 "version": "1.0.4", 4 "version": "1.0.5",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.slite.com", 7 "serviceURL": "https://{teamId}.slite.com",
diff --git a/recipes/slite/webview.js b/recipes/slite/webview.js
index a044399..d54b2d3 100644
--- a/recipes/slite/webview.js
+++ b/recipes/slite/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const element = document.querySelector("#app button[data-test-id='notificationsCount']"); 3 const element = document.querySelector("#app button[data-test-id='notificationsCount']");
4 Ferdi.setBadge(element ? Ferdi.safeParseInt(element.innerText) : 0); 4 Ferdi.setBadge(element ? Ferdi.safeParseInt(element.innerText) : 0);
5 }; 5 };
diff --git a/recipes/sococo/package.json b/recipes/sococo/package.json
index f68b52d..6bdeb58 100644
--- a/recipes/sococo/package.json
+++ b/recipes/sococo/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "sococo", 2 "id": "sococo",
3 "name": "Sococo", 3 "name": "Sococo",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/klcodanr/recipe-sococo", 6 "repository": "https://github.com/klcodanr/recipe-sococo",
7 "config": { 7 "config": {
diff --git a/recipes/sococo/webview.js b/recipes/sococo/webview.js
index 14561cd..4f7e045 100644
--- a/recipes/sococo/webview.js
+++ b/recipes/sococo/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let indirect = document.querySelectorAll('.new-messages'); 3 let indirect = document.querySelectorAll('.new-messages');
4 let direct = 0; 4 let direct = 0;
5 document.querySelectorAll('.people-pane .badge').forEach(function(badge){ 5 document.querySelectorAll('.people-pane .badge').forEach(function(badge){
diff --git a/recipes/stackoverflow/package.json b/recipes/stackoverflow/package.json
index 6b41dd5..e785703 100644
--- a/recipes/stackoverflow/package.json
+++ b/recipes/stackoverflow/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "stackoverflow", 2 "id": "stackoverflow",
3 "name": "Stackoverflow", 3 "name": "Stackoverflow",
4 "version": "0.0.1", 4 "version": "0.0.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/christianascone/franz-recipe-stackoverflow", 6 "repository": "https://github.com/christianascone/franz-recipe-stackoverflow",
7 "config": { 7 "config": {
diff --git a/recipes/stackoverflow/webview.js b/recipes/stackoverflow/webview.js
index 4d20768..437fb49 100644
--- a/recipes/stackoverflow/webview.js
+++ b/recipes/stackoverflow/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elements = document.querySelectorAll('.CxUIE, .unread'); 7 const elements = document.querySelectorAll('.CxUIE, .unread');
8 let count = 0; 8 let count = 0;
9 for (let i = 0; i < elements.length; i += 1) { 9 for (let i = 0; i < elements.length; i += 1) {
diff --git a/recipes/steamchat/package.json b/recipes/steamchat/package.json
index 12da5b9..d06d543 100644
--- a/recipes/steamchat/package.json
+++ b/recipes/steamchat/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "steamchat", 2 "id": "steamchat",
3 "name": "SteamChat", 3 "name": "SteamChat",
4 "version": "1.3.0", 4 "version": "1.3.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://steamcommunity.com/chat", 7 "serviceURL": "https://steamcommunity.com/chat",
diff --git a/recipes/steamchat/webview.js b/recipes/steamchat/webview.js
index 63f002f..d1d3d15 100644
--- a/recipes/steamchat/webview.js
+++ b/recipes/steamchat/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 // get new msg count 3 // get new msg count
4 let count = 0; 4 let count = 0;
5 const counters = document.querySelectorAll('[class*=FriendMessageCount]'); 5 const counters = document.querySelectorAll('[class*=FriendMessageCount]');
diff --git a/recipes/stride/package.json b/recipes/stride/package.json
index fa0d367..d36bb19 100644
--- a/recipes/stride/package.json
+++ b/recipes/stride/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "stride", 2 "id": "stride",
3 "name": "Stride", 3 "name": "Stride",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.stride.com", 7 "serviceURL": "https://app.stride.com",
diff --git a/recipes/stride/webview.js b/recipes/stride/webview.js
index 6b1300f..6b62e08 100644
--- a/recipes/stride/webview.js
+++ b/recipes/stride/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 // get all message badges 7 // get all message badges
8 const allBadges = document.querySelectorAll('.activity-indicator'); 8 const allBadges = document.querySelectorAll('.activity-indicator');
9 let directCount = 0; 9 let directCount = 0;
diff --git a/recipes/teamleader/package.json b/recipes/teamleader/package.json
index 60f917a..5b971da 100644
--- a/recipes/teamleader/package.json
+++ b/recipes/teamleader/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "teamleader", 2 "id": "teamleader",
3 "name": "teamleader", 3 "name": "teamleader",
4 "version": "1.1.2", 4 "version": "1.1.3",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.teamleader.eu/?gotologin", 7 "serviceURL": "https://app.teamleader.eu/?gotologin",
diff --git a/recipes/teamleader/webview.js b/recipes/teamleader/webview.js
index d341016..241d787 100644
--- a/recipes/teamleader/webview.js
+++ b/recipes/teamleader/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 let notifications = 0; 7 let notifications = 0;
8 let indirectNotifications = 0; 8 let indirectNotifications = 0;
9 9
diff --git a/recipes/teamwork-projects/package.json b/recipes/teamwork-projects/package.json
index 50810b0..bbb203a 100644
--- a/recipes/teamwork-projects/package.json
+++ b/recipes/teamwork-projects/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "teamwork-projects", 2 "id": "teamwork-projects",
3 "name": "Teamwork Projects", 3 "name": "Teamwork Projects",
4 "version": "0.2.1", 4 "version": "0.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.teamwork.com/", 7 "serviceURL": "https://{teamId}.teamwork.com/",
diff --git a/recipes/teamwork-projects/webview.js b/recipes/teamwork-projects/webview.js
index 734eb4f..aa3e7be 100644
--- a/recipes/teamwork-projects/webview.js
+++ b/recipes/teamwork-projects/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 let indirectCount = 0; 3 let indirectCount = 0;
4 const badge = document.getElementById('numNotifs2'); 4 const badge = document.getElementById('numNotifs2');
5 5
diff --git a/recipes/telegram-react/package.json b/recipes/telegram-react/package.json
index b3dbde6..11ae14f 100644
--- a/recipes/telegram-react/package.json
+++ b/recipes/telegram-react/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "telegram-react", 2 "id": "telegram-react",
3 "name": "Telegram React", 3 "name": "Telegram React",
4 "version": "1.2.1", 4 "version": "1.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://webk.telegram.org", 7 "serviceURL": "https://webk.telegram.org",
diff --git a/recipes/telegram-react/webview.js b/recipes/telegram-react/webview.js
index c6111ee..bf41404 100644
--- a/recipes/telegram-react/webview.js
+++ b/recipes/telegram-react/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 const elements = document.querySelectorAll('.chatlist > li:not(.is-muted)'); 4 const elements = document.querySelectorAll('.chatlist > li:not(.is-muted)');
5 if (elements) { 5 if (elements) {
diff --git a/recipes/telegram/package.json b/recipes/telegram/package.json
index 024190f..adb6de6 100644
--- a/recipes/telegram/package.json
+++ b/recipes/telegram/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "telegram", 2 "id": "telegram",
3 "name": "Telegram", 3 "name": "Telegram",
4 "version": "3.2.1", 4 "version": "3.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.telegram.org", 7 "serviceURL": "https://web.telegram.org",
diff --git a/recipes/telegram/webview.js b/recipes/telegram/webview.js
index a2be19b..3b36483 100644
--- a/recipes/telegram/webview.js
+++ b/recipes/telegram/webview.js
@@ -5,7 +5,7 @@ const _path = _interopRequireDefault(require('path'));
5function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 5function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6 6
7module.exports = Ferdi => { 7module.exports = Ferdi => {
8 const getMessages = function getMessages() { 8 const getMessages = () => {
9 let count = 0; 9 let count = 0;
10 let count_sec = 0; 10 let count_sec = 0;
11 const elements = document.querySelectorAll('.rp'); 11 const elements = document.querySelectorAll('.rp');
diff --git a/recipes/thelounge/package.json b/recipes/thelounge/package.json
index a954b43..a3f833b 100644
--- a/recipes/thelounge/package.json
+++ b/recipes/thelounge/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "thelounge", 2 "id": "thelounge",
3 "name": "The Lounge", 3 "name": "The Lounge",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "hasCustomUrl": true, 7 "hasCustomUrl": true,
diff --git a/recipes/thelounge/webview.js b/recipes/thelounge/webview.js
index 7174749..28f647c 100644
--- a/recipes/thelounge/webview.js
+++ b/recipes/thelounge/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const indirectElements = document.querySelectorAll('.badge:not(.highlight)'); 3 const indirectElements = document.querySelectorAll('.badge:not(.highlight)');
4 const direct = document.querySelectorAll('.badge.highlight').length; 4 const direct = document.querySelectorAll('.badge.highlight').length;
5 let indirect = 0; 5 let indirect = 0;
diff --git a/recipes/threema/package.json b/recipes/threema/package.json
index 365c1d8..f0a774d 100644
--- a/recipes/threema/package.json
+++ b/recipes/threema/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "threema", 2 "id": "threema",
3 "name": "Threema", 3 "name": "Threema",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/Arany/franz-recipe-threema", 6 "repository": "https://github.com/Arany/franz-recipe-threema",
7 "config": { 7 "config": {
diff --git a/recipes/threema/webview.js b/recipes/threema/webview.js
index d303b1b..40f5203 100644
--- a/recipes/threema/webview.js
+++ b/recipes/threema/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elements = document.querySelectorAll('.badge.unread-count:not(.ng-hide)'); 7 const elements = document.querySelectorAll('.badge.unread-count:not(.ng-hide)');
8 let count = 0; 8 let count = 0;
9 9
diff --git a/recipes/tinder/package.json b/recipes/tinder/package.json
index 88791f0..6404122 100644
--- a/recipes/tinder/package.json
+++ b/recipes/tinder/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "tinder", 2 "id": "tinder",
3 "name": "Tinder", 3 "name": "Tinder",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://tinder.com" 7 "serviceURL": "https://tinder.com"
diff --git a/recipes/tinder/webview.js b/recipes/tinder/webview.js
index 46ab212..0a6434d 100644
--- a/recipes/tinder/webview.js
+++ b/recipes/tinder/webview.js
@@ -3,6 +3,5 @@ var _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6
7 Ferdi.injectCSS(_path.default.join(__dirname, 'service.css')); 6 Ferdi.injectCSS(_path.default.join(__dirname, 'service.css'));
8}; 7};
diff --git a/recipes/trello/package.json b/recipes/trello/package.json
index ceefe8f..b3dce40 100644
--- a/recipes/trello/package.json
+++ b/recipes/trello/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "trello", 2 "id": "trello",
3 "name": "Trello", 3 "name": "Trello",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://trello.com/" 7 "serviceURL": "https://trello.com/"
diff --git a/recipes/trello/webview.js b/recipes/trello/webview.js
index a6c107d..d9749b0 100644
--- a/recipes/trello/webview.js
+++ b/recipes/trello/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const notifications = document.querySelectorAll('[class*=_3W-zkl4-bnVKzJ]'); 3 const notifications = document.querySelectorAll('[class*=_3W-zkl4-bnVKzJ]');
4 Ferdi.setBadge(0, notifications.length >= 1 ? 1 : 0); 4 Ferdi.setBadge(0, notifications.length >= 1 ? 1 : 0);
5 }; 5 };
diff --git a/recipes/tweetdeck/package.json b/recipes/tweetdeck/package.json
index 5400bac..2fc57fd 100644
--- a/recipes/tweetdeck/package.json
+++ b/recipes/tweetdeck/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "tweetdeck", 2 "id": "tweetdeck",
3 "name": "Tweetdeck", 3 "name": "Tweetdeck",
4 "version": "1.2.1", 4 "version": "1.2.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://tweetdeck.twitter.com/", 7 "serviceURL": "https://tweetdeck.twitter.com/",
diff --git a/recipes/tweetdeck/webview.js b/recipes/tweetdeck/webview.js
index 54b7997..9bdc2be 100644
--- a/recipes/tweetdeck/webview.js
+++ b/recipes/tweetdeck/webview.js
@@ -4,7 +4,7 @@ module.exports = Ferdi => {
4 window.location.assign(url); 4 window.location.assign(url);
5 }); 5 });
6 6
7 const getMessages = function getMessages() { 7 const getMessages = () => {
8 const elements = document.querySelectorAll('.msg-unread-count'); 8 const elements = document.querySelectorAll('.msg-unread-count');
9 let count = 0; 9 let count = 0;
10 if (elements[0]) { 10 if (elements[0]) {
diff --git a/recipes/twist/package.json b/recipes/twist/package.json
index 45f411b..6d3e32b 100644
--- a/recipes/twist/package.json
+++ b/recipes/twist/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "twist", 2 "id": "twist",
3 "name": "twist", 3 "name": "twist",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://twistapp.com/login", 7 "serviceURL": "https://twistapp.com/login",
diff --git a/recipes/twist/webview.js b/recipes/twist/webview.js
index c877d29..52b67b5 100644
--- a/recipes/twist/webview.js
+++ b/recipes/twist/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const count = document.querySelectorAll('.switch_pane>.unread').length; 3 const count = document.querySelectorAll('.switch_pane>.unread').length;
4 Ferdi.setBadge(count); 4 Ferdi.setBadge(count);
5 }; 5 };
diff --git a/recipes/twitter-dm/package.json b/recipes/twitter-dm/package.json
index 066e699..f40d6d9 100644
--- a/recipes/twitter-dm/package.json
+++ b/recipes/twitter-dm/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "twitter-dm", 2 "id": "twitter-dm",
3 "name": "Twitter DM", 3 "name": "Twitter DM",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mobile.twitter.com/messages", 7 "serviceURL": "https://mobile.twitter.com/messages",
diff --git a/recipes/twitter-dm/webview.js b/recipes/twitter-dm/webview.js
index d255ae9..ac47134 100644
--- a/recipes/twitter-dm/webview.js
+++ b/recipes/twitter-dm/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 const elem = document.querySelector('a[href="/messages"] div div'); 4 const elem = document.querySelector('a[href="/messages"] div div');
5 if (elem) { 5 if (elem) {
diff --git a/recipes/twitter/package.json b/recipes/twitter/package.json
index cb840a5..83cf0fa 100644
--- a/recipes/twitter/package.json
+++ b/recipes/twitter/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "twitter", 2 "id": "twitter",
3 "name": "Twitter", 3 "name": "Twitter",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/getferdi/recipes", 6 "repository": "https://github.com/getferdi/recipes",
7 "config": { 7 "config": {
diff --git a/recipes/twitter/webview.js b/recipes/twitter/webview.js
index 39a704e..dfd06d1 100644
--- a/recipes/twitter/webview.js
+++ b/recipes/twitter/webview.js
@@ -6,11 +6,11 @@ module.exports = Ferdi => {
6 // "unread items". Sum the values for direct badge. 6 // "unread items". Sum the values for direct badge.
7 const notificationsElement = document.querySelector('[data-testid=AppTabBar_Notifications_Link] div div div'); 7 const notificationsElement = document.querySelector('[data-testid=AppTabBar_Notifications_Link] div div div');
8 if (notificationsElement) { 8 if (notificationsElement) {
9 direct += notificationsElement.innerHTML; 9 direct += Ferdi.safeParseInt(notificationsElement.innerHTML);
10 } 10 }
11 const DMElement = document.querySelector('[data-testid=AppTabBar_DirectMessage_Link] div div div'); 11 const DMElement = document.querySelector('[data-testid=AppTabBar_DirectMessage_Link] div div div');
12 if (DMElement) { 12 if (DMElement) {
13 direct += DMElement.innerHTML; 13 direct += Ferdi.safeParseInt(DMElement.innerHTML);
14 } 14 }
15 15
16 Ferdi.setBadge(direct); 16 Ferdi.setBadge(direct);
diff --git a/recipes/udemy/package.json b/recipes/udemy/package.json
index 32c5031..4563e36 100644
--- a/recipes/udemy/package.json
+++ b/recipes/udemy/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "udemy", 2 "id": "udemy",
3 "name": "Udemy", 3 "name": "Udemy",
4 "version": "1.0.4", 4 "version": "1.0.5",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/gaspergrom/Franz-services/tree/master/udemy", 6 "repository": "https://github.com/gaspergrom/Franz-services/tree/master/udemy",
7 "config": { 7 "config": {
diff --git a/recipes/udemy/webview.js b/recipes/udemy/webview.js
index f440fe5..6120e54 100644
--- a/recipes/udemy/webview.js
+++ b/recipes/udemy/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 let direct = 0; 3 let direct = 0;
4 let indirect = 0; 4 let indirect = 0;
5 Ferdi.setBadge(direct, indirect); 5 Ferdi.setBadge(direct, indirect);
diff --git a/recipes/vk/package.json b/recipes/vk/package.json
index b46622d..e4b7dfa 100644
--- a/recipes/vk/package.json
+++ b/recipes/vk/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "vk", 2 "id": "vk",
3 "name": "VK", 3 "name": "VK",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/meetfranz/recipe-vk", 6 "repository": "https://github.com/meetfranz/recipe-vk",
7 "config": { 7 "config": {
diff --git a/recipes/vk/webview.js b/recipes/vk/webview.js
index 05d703e..aeab0ec 100644
--- a/recipes/vk/webview.js
+++ b/recipes/vk/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let directs = 0; 3 let directs = 0;
4 const element = document.getElementsByClassName('left_count'); 4 const element = document.getElementsByClassName('left_count');
5 if (element.length > 0) { 5 if (element.length > 0) {
diff --git a/recipes/voxer/package.json b/recipes/voxer/package.json
index b755c5c..cfa41ea 100644
--- a/recipes/voxer/package.json
+++ b/recipes/voxer/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "voxer", 2 "id": "voxer",
3 "name": "Voxer", 3 "name": "Voxer",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.voxer.com", 7 "serviceURL": "https://web.voxer.com",
diff --git a/recipes/voxer/webview.js b/recipes/voxer/webview.js
index 23910e0..5092eb9 100644
--- a/recipes/voxer/webview.js
+++ b/recipes/voxer/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const count = document.querySelectorAll('.unconsumed-badge').length; 7 const count = document.querySelectorAll('.unconsumed-badge').length;
8 8
9 // set Ferdi badge 9 // set Ferdi badge
diff --git a/recipes/wakatime/package.json b/recipes/wakatime/package.json
index 2923701..a386b4d 100644
--- a/recipes/wakatime/package.json
+++ b/recipes/wakatime/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "wakatime", 2 "id": "wakatime",
3 "name": "Wakatime", 3 "name": "Wakatime",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://wakatime.com/login" 7 "serviceURL": "https://wakatime.com/login"
diff --git a/recipes/wakatime/webview.js b/recipes/wakatime/webview.js
index d18a37d..e1e18ee 100644
--- a/recipes/wakatime/webview.js
+++ b/recipes/wakatime/webview.js
@@ -1,3 +1,7 @@
1const _path = _interopRequireDefault(require('path'));
2
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4
1module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
2 Ferdi.injectCSS(_path.default.join(__dirname, "service.css")); 6 Ferdi.injectCSS(_path.default.join(__dirname, "service.css"));
3}; 7};
diff --git a/recipes/webex-teams/package.json b/recipes/webex-teams/package.json
index d39962f..7bef37a 100644
--- a/recipes/webex-teams/package.json
+++ b/recipes/webex-teams/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "webex-teams", 2 "id": "webex-teams",
3 "name": "Webex Teams", 3 "name": "Webex Teams",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.webex.com", 7 "serviceURL": "https://web.webex.com",
diff --git a/recipes/webex-teams/webview.js b/recipes/webex-teams/webview.js
index 4b66233..d29bed9 100644
--- a/recipes/webex-teams/webview.js
+++ b/recipes/webex-teams/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 4
5 let span = document.getElementsByClassName('navigation-list-item--badgeCount'); 5 let span = document.getElementsByClassName('navigation-list-item--badgeCount');
diff --git a/recipes/wechat/package.json b/recipes/wechat/package.json
index b8af764..8024008 100644
--- a/recipes/wechat/package.json
+++ b/recipes/wechat/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "wechat", 2 "id": "wechat",
3 "name": "WeChat", 3 "name": "WeChat",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/koma-private/recipe-wechat", 6 "repository": "https://github.com/koma-private/recipe-wechat",
7 "config": { 7 "config": {
diff --git a/recipes/wechat/webview.js b/recipes/wechat/webview.js
index b1d8e31..d75bd72 100644
--- a/recipes/wechat/webview.js
+++ b/recipes/wechat/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = (Ferdi) => { 5module.exports = (Ferdi) => {
6 function getMessages() { 6 const getMessages = () => {
7 let directCount = 0; 7 let directCount = 0;
8 let indirectCount = 0; 8 let indirectCount = 0;
9 const chat_item = document.querySelectorAll('div.chat_item'); 9 const chat_item = document.querySelectorAll('div.chat_item');
diff --git a/recipes/weekplan/package.json b/recipes/weekplan/package.json
index c395363..e3c0139 100644
--- a/recipes/weekplan/package.json
+++ b/recipes/weekplan/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "weekplan", 2 "id": "weekplan",
3 "name": "Weekplan", 3 "name": "Weekplan",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/minipada/recipe-weekplan", 6 "repository": "https://github.com/minipada/recipe-weekplan",
7 "config": { 7 "config": {
diff --git a/recipes/weekplan/webview.js b/recipes/weekplan/webview.js
index 5a8a8fb..f08859d 100644
--- a/recipes/weekplan/webview.js
+++ b/recipes/weekplan/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 getMessages = () => { 2 const getMessages = () => {
3 const events = document.querySelectorAll(".today")[0].getElementsByClassName('list')[0].getElementsByClassName('task-list')[0].getElementsByClassName('event-section')[0].getElementsByClassName('droppable')[0].children[0].childElementCount 3 const events = document.querySelectorAll(".today")[0].getElementsByClassName('list')[0].getElementsByClassName('task-list')[0].getElementsByClassName('event-section')[0].getElementsByClassName('droppable')[0].children[0].childElementCount
4 const tasks = document.querySelectorAll(".today")[0].getElementsByClassName('list')[0].getElementsByClassName('task-list')[0].getElementsByClassName('task-section')[0].getElementsByClassName('droppable')[0].children[0].childElementCount 4 const tasks = document.querySelectorAll(".today")[0].getElementsByClassName('list')[0].getElementsByClassName('task-list')[0].getElementsByClassName('task-section')[0].getElementsByClassName('droppable')[0].children[0].childElementCount
5 5
diff --git a/recipes/whatsapp/package.json b/recipes/whatsapp/package.json
index a364a1f..4cec6a6 100644
--- a/recipes/whatsapp/package.json
+++ b/recipes/whatsapp/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "whatsapp", 2 "id": "whatsapp",
3 "name": "WhatsApp", 3 "name": "WhatsApp",
4 "version": "3.3.3", 4 "version": "3.3.4",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://web.whatsapp.com", 7 "serviceURL": "https://web.whatsapp.com",
diff --git a/recipes/whatsapp/webview.js b/recipes/whatsapp/webview.js
index fb1a20b..293e413 100644
--- a/recipes/whatsapp/webview.js
+++ b/recipes/whatsapp/webview.js
@@ -3,7 +3,7 @@ const _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 let count = 0; 7 let count = 0;
8 let indirectCount = 0; 8 let indirectCount = 0;
9 9
diff --git a/recipes/whereby/package.json b/recipes/whereby/package.json
index 5ca5c17..2a7af3f 100644
--- a/recipes/whereby/package.json
+++ b/recipes/whereby/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "whereby", 2 "id": "whereby",
3 "name": "whereby.com", 3 "name": "whereby.com",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://whereby.com/{teamId}", 7 "serviceURL": "https://whereby.com/{teamId}",
diff --git a/recipes/whereby/webview.js b/recipes/whereby/webview.js
index 0e5529e..52d6d7b 100644
--- a/recipes/whereby/webview.js
+++ b/recipes/whereby/webview.js
@@ -3,7 +3,7 @@ var _path = _interopRequireDefault(require('path'));
3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4 4
5module.exports = Ferdi => { 5module.exports = Ferdi => {
6 const getMessages = function getMessages() { 6 const getMessages = () => {
7 const elements = document.querySelectorAll('.CxUIE, .unread'); 7 const elements = document.querySelectorAll('.CxUIE, .unread');
8 let count = 0; 8 let count = 0;
9 9
diff --git a/recipes/wire/package.json b/recipes/wire/package.json
index 4a85ade..e0e2136 100644
--- a/recipes/wire/package.json
+++ b/recipes/wire/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "wire", 2 "id": "wire",
3 "name": "Wire", 3 "name": "Wire",
4 "version": "1.0.3", 4 "version": "1.0.4",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://app.wire.com/", 7 "serviceURL": "https://app.wire.com/",
diff --git a/recipes/wire/webview.js b/recipes/wire/webview.js
index b099eee..55720da 100644
--- a/recipes/wire/webview.js
+++ b/recipes/wire/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 let direct = 0; 3 let direct = 0;
4 let indirect = 0; 4 let indirect = 0;
5 5
diff --git a/recipes/wrike/package.json b/recipes/wrike/package.json
index 5eb0f04..1e298cf 100644
--- a/recipes/wrike/package.json
+++ b/recipes/wrike/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "wrike", 2 "id": "wrike",
3 "name": "Wrike", 3 "name": "Wrike",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "repository": "https://github.com/koma-private/recipe-wrike", 6 "repository": "https://github.com/koma-private/recipe-wrike",
7 "config": { 7 "config": {
diff --git a/recipes/wrike/webview.js b/recipes/wrike/webview.js
index 39e293d..e09407d 100644
--- a/recipes/wrike/webview.js
+++ b/recipes/wrike/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 function getMessages() { 2 const getMessages = () => {
3 let directCount = 0; 3 let directCount = 0;
4 const element = document.querySelector('.ws-navigation-button__indicator.ws-navigation-button-indicator'); 4 const element = document.querySelector('.ws-navigation-button__indicator.ws-navigation-button-indicator');
5 if (element) { 5 if (element) {
diff --git a/recipes/yahoo-mail/package.json b/recipes/yahoo-mail/package.json
index 4bb2901..7a3b274 100644
--- a/recipes/yahoo-mail/package.json
+++ b/recipes/yahoo-mail/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "yahoo-mail", 2 "id": "yahoo-mail",
3 "name": "Yahoo Mail", 3 "name": "Yahoo Mail",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mail.yahoo.com", 7 "serviceURL": "https://mail.yahoo.com",
diff --git a/recipes/yahoo-mail/webview.js b/recipes/yahoo-mail/webview.js
index fc47f26..17ea298 100644
--- a/recipes/yahoo-mail/webview.js
+++ b/recipes/yahoo-mail/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const count = document.querySelector('a[data-test-folder-name="Inbox"]').getAttribute('data-test-unread-count'); 3 const count = document.querySelector('a[data-test-folder-name="Inbox"]').getAttribute('data-test-unread-count');
4 Ferdi.setBadge(count); 4 Ferdi.setBadge(count);
5 }; 5 };
diff --git a/recipes/yammer/package.json b/recipes/yammer/package.json
index f0a20d6..da90bec 100644
--- a/recipes/yammer/package.json
+++ b/recipes/yammer/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "yammer", 2 "id": "yammer",
3 "name": "Yammer", 3 "name": "Yammer",
4 "version": "1.1.1", 4 "version": "1.1.2",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://www.yammer.com/login", 7 "serviceURL": "https://www.yammer.com/login",
diff --git a/recipes/yammer/webview.js b/recipes/yammer/webview.js
index 79d428f..d3a94da 100644
--- a/recipes/yammer/webview.js
+++ b/recipes/yammer/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let directMessages = 0; 3 let directMessages = 0;
4 let indirectMessages = 0; 4 let indirectMessages = 0;
5 const notificationElement = document.querySelector('.yj-notifications-indicator-count'); 5 const notificationElement = document.querySelector('.yj-notifications-indicator-count');
diff --git a/recipes/yandex-mail/package.json b/recipes/yandex-mail/package.json
index 356c1b9..0e5bbfb 100644
--- a/recipes/yandex-mail/package.json
+++ b/recipes/yandex-mail/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "yandex-mail", 2 "id": "yandex-mail",
3 "name": "Yandex Mail", 3 "name": "Yandex Mail",
4 "version": "1.0.0", 4 "version": "1.0.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://mail.yandex.ru" 7 "serviceURL": "https://mail.yandex.ru"
diff --git a/recipes/yandex-mail/webview.js b/recipes/yandex-mail/webview.js
index 2c039a1..7a937a7 100644
--- a/recipes/yandex-mail/webview.js
+++ b/recipes/yandex-mail/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 let count = 0; 3 let count = 0;
4 4
5 if (document.getElementsByClassName('mail-LabelList-Item_count').length > 1) { 5 if (document.getElementsByClassName('mail-LabelList-Item_count').length > 1) {
diff --git a/recipes/youtrack/package.json b/recipes/youtrack/package.json
index fe51ad3..f31b70d 100644
--- a/recipes/youtrack/package.json
+++ b/recipes/youtrack/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "youtrack", 2 "id": "youtrack",
3 "name": "YouTrack", 3 "name": "YouTrack",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://{teamId}.myjetbrains.com/youtrack/", 7 "serviceURL": "https://{teamId}.myjetbrains.com/youtrack/",
diff --git a/recipes/youtrack/webview.js b/recipes/youtrack/webview.js
index 071b300..286046a 100644
--- a/recipes/youtrack/webview.js
+++ b/recipes/youtrack/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const unread = document.querySelectorAll('.header__bell-wrapper_unread'); 3 const unread = document.querySelectorAll('.header__bell-wrapper_unread');
4 Ferdi.setBadge(unread.length > 0 ? 1 : 0); 4 Ferdi.setBadge(unread.length > 0 ? 1 : 0);
5 }; 5 };
diff --git a/recipes/zalo/package.json b/recipes/zalo/package.json
index ddbbbcd..5b96163 100644
--- a/recipes/zalo/package.json
+++ b/recipes/zalo/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "zalo", 2 "id": "zalo",
3 "name": "Zalo", 3 "name": "Zalo",
4 "version": "1.2.0", 4 "version": "1.2.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "serviceURL": "https://chat.zalo.me/", 7 "serviceURL": "https://chat.zalo.me/",
diff --git a/recipes/zalo/webview.js b/recipes/zalo/webview.js
index 2966ca1..a79e29b 100644
--- a/recipes/zalo/webview.js
+++ b/recipes/zalo/webview.js
@@ -1,6 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const unread = 0;
4 const notificationBadge = document.getElementsByClassName('tab-red-dot').length; 3 const notificationBadge = document.getElementsByClassName('tab-red-dot').length;
5 Ferdi.setBadge(notificationBadge); 4 Ferdi.setBadge(notificationBadge);
6 }; 5 };
diff --git a/recipes/zimbra/package.json b/recipes/zimbra/package.json
index 0fc0fc4..665776e 100644
--- a/recipes/zimbra/package.json
+++ b/recipes/zimbra/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "zimbra", 2 "id": "zimbra",
3 "name": "Zimbra", 3 "name": "Zimbra",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "hasNotificationSound": true, 7 "hasNotificationSound": true,
diff --git a/recipes/zimbra/webview.js b/recipes/zimbra/webview.js
index e2cf890..d4b8a97 100644
--- a/recipes/zimbra/webview.js
+++ b/recipes/zimbra/webview.js
@@ -1,5 +1,5 @@
1module.exports = Ferdi => { 1module.exports = Ferdi => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const { title } = document; 3 const { title } = document;
4 const regex = /\d+/; 4 const regex = /\d+/;
5 Ferdi.setBadge(regex.test(title) ? Number(regex.exec(title)[0]) : 0); 5 Ferdi.setBadge(regex.test(title) ? Number(regex.exec(title)[0]) : 0);
diff --git a/recipes/zulip/package.json b/recipes/zulip/package.json
index 21b2d44..2dd209a 100644
--- a/recipes/zulip/package.json
+++ b/recipes/zulip/package.json
@@ -1,7 +1,7 @@
1{ 1{
2 "id": "zulip", 2 "id": "zulip",
3 "name": "Zulip", 3 "name": "Zulip",
4 "version": "1.1.0", 4 "version": "1.1.1",
5 "license": "MIT", 5 "license": "MIT",
6 "config": { 6 "config": {
7 "hasNotificationSound": true, 7 "hasNotificationSound": true,
diff --git a/recipes/zulip/webview.js b/recipes/zulip/webview.js
index 09e999d..3de6c90 100644
--- a/recipes/zulip/webview.js
+++ b/recipes/zulip/webview.js
@@ -1,5 +1,5 @@
1module.exports = (Ferdi) => { 1module.exports = (Ferdi) => {
2 const getMessages = function getMessages() { 2 const getMessages = () => {
3 const allMessages = Math.round(document.querySelectorAll('#global_filters .top_left_all_messages .count .value')[0].innerText); 3 const allMessages = Math.round(document.querySelectorAll('#global_filters .top_left_all_messages .count .value')[0].innerText);
4 Ferdi.setBadge(allMessages); 4 Ferdi.setBadge(allMessages);
5 }; 5 };