From eee1d1483d8e3ebd467d37de1011492ed555e571 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Fri, 28 May 2021 00:17:39 +0200 Subject: [fastmail] Context isolation support --- recipes/fastmail/package.json | 2 +- recipes/fastmail/webview-unsafe.js | 10 ++++++++++ recipes/fastmail/webview.js | 16 ++++------------ 3 files changed, 15 insertions(+), 13 deletions(-) create mode 100644 recipes/fastmail/webview-unsafe.js diff --git a/recipes/fastmail/package.json b/recipes/fastmail/package.json index 165a164..18a126a 100644 --- a/recipes/fastmail/package.json +++ b/recipes/fastmail/package.json @@ -1,7 +1,7 @@ { "id": "fastmail", "name": "FastMail", - "version": "1.0.2", + "version": "2.0.0", "description": "Email, calendars and contacts done right.", "main": "index.js", "author": "Alan Plum ", diff --git a/recipes/fastmail/webview-unsafe.js b/recipes/fastmail/webview-unsafe.js new file mode 100644 index 0000000..7588988 --- /dev/null +++ b/recipes/fastmail/webview-unsafe.js @@ -0,0 +1,10 @@ +const interval = setInterval(() => { + if (!window.O || !window.O.WindowController) return; + window.O.WindowController.openExternal = function (href) { + const temp = document.createElement('a'); + temp.setAttribute('href', href); + temp.setAttribute('target', '_blank'); + temp.click(); + }; + clearInterval(interval); +}, 200); diff --git a/recipes/fastmail/webview.js b/recipes/fastmail/webview.js index ca5cc9d..df39728 100644 --- a/recipes/fastmail/webview.js +++ b/recipes/fastmail/webview.js @@ -1,16 +1,8 @@ 'use strict'; -module.exports = (Franz, options) => { - var interval = setInterval(function () { - if (!window.O || !window.O.WindowController) return; - window.O.WindowController.openExternal = function (href) { - var temp = document.createElement('a'); - temp.setAttribute('href', href); - temp.setAttribute('target', '_blank'); - temp.click(); - }; - clearInterval(interval); - }, 200); +const path = require('path'); + +module.exports = (Franz) => { const getMessages = () => { const inbox = document.querySelector(".v-MailboxSource--inbox .v-MailboxSource-badge"); if (!inbox) { @@ -22,6 +14,6 @@ module.exports = (Franz, options) => { } }; + Franz.injectJSUnsafe(path.join(__dirname, 'webview-unsafe.js')); Franz.loop(getMessages); }; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZhc3RtYWlsL3dlYnZpZXcuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIkZyYW56Iiwib3B0aW9ucyIsImludGVydmFsIiwic2V0SW50ZXJ2YWwiLCJ3aW5kb3ciLCJPIiwiV2luZG93Q29udHJvbGxlciIsIm9wZW5FeHRlcm5hbCIsImhyZWYiLCJ0ZW1wIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50Iiwic2V0QXR0cmlidXRlIiwiY2xpY2siLCJjbGVhckludGVydmFsIiwiZ2V0TWVzc2FnZXMiLCJpbmJveCIsInF1ZXJ5U2VsZWN0b3IiLCJtZXNzYWdlcyIsIk51bWJlciIsImlubmVyVGV4dCIsImlzTmFOIiwic2V0QmFkZ2UiLCJsb29wIl0sIm1hcHBpbmdzIjoiOztBQUFBQSxPQUFPQyxPQUFQLEdBQWlCLENBQUNDLEtBQUQsRUFBUUMsT0FBUixLQUFvQjtBQUNuQyxNQUFJQyxXQUFXQyxZQUFZLFlBQVk7QUFDckMsUUFBSSxDQUFDQyxPQUFPQyxDQUFSLElBQWEsQ0FBQ0QsT0FBT0MsQ0FBUCxDQUFTQyxnQkFBM0IsRUFBNkM7QUFDN0NGLFdBQU9DLENBQVAsQ0FBU0MsZ0JBQVQsQ0FBMEJDLFlBQTFCLEdBQXlDLFVBQVVDLElBQVYsRUFBZ0I7QUFDdkQsVUFBSUMsT0FBT0MsU0FBU0MsYUFBVCxDQUF1QixHQUF2QixDQUFYO0FBQ0FGLFdBQUtHLFlBQUwsQ0FBa0IsTUFBbEIsRUFBMEJKLElBQTFCO0FBQ0FDLFdBQUtHLFlBQUwsQ0FBa0IsUUFBbEIsRUFBNEIsUUFBNUI7QUFDQUgsV0FBS0ksS0FBTDtBQUNELEtBTEQ7QUFNQUMsa0JBQWNaLFFBQWQ7QUFDRCxHQVRjLEVBU1osR0FUWSxDQUFmO0FBVUEsUUFBTWEsY0FBYyxNQUFNO0FBQ3hCLFVBQU1DLFFBQVFOLFNBQVNPLGFBQVQsQ0FBdUIsOENBQXZCLENBQWQ7QUFDQSxRQUFJLENBQUNELEtBQUwsRUFBWTtBQUNWO0FBQ0Q7QUFDRCxVQUFNRSxXQUFXQyxPQUFPSCxNQUFNSSxTQUFiLENBQWpCO0FBQ0EsUUFBSSxDQUFDRCxPQUFPRSxLQUFQLENBQWFILFFBQWIsQ0FBTCxFQUE2QjtBQUMzQmxCLFlBQU1zQixRQUFOLENBQWVKLFFBQWY7QUFDRDtBQUNGLEdBVEQ7O0FBV0FsQixRQUFNdUIsSUFBTixDQUFXUixXQUFYO0FBQ0QsQ0F2QkQiLCJmaWxlIjoiZmFzdG1haWwvd2Vidmlldy5qcyIsInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gKEZyYW56LCBvcHRpb25zKSA9PiB7XG4gIHZhciBpbnRlcnZhbCA9IHNldEludGVydmFsKGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoIXdpbmRvdy5PIHx8ICF3aW5kb3cuTy5XaW5kb3dDb250cm9sbGVyKSByZXR1cm47XG4gICAgd2luZG93Lk8uV2luZG93Q29udHJvbGxlci5vcGVuRXh0ZXJuYWwgPSBmdW5jdGlvbiAoaHJlZikge1xuICAgICAgdmFyIHRlbXAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICB0ZW1wLnNldEF0dHJpYnV0ZSgnaHJlZicsIGhyZWYpO1xuICAgICAgdGVtcC5zZXRBdHRyaWJ1dGUoJ3RhcmdldCcsICdfYmxhbmsnKTtcbiAgICAgIHRlbXAuY2xpY2soKTtcbiAgICB9O1xuICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xuICB9LCAyMDApO1xuICBjb25zdCBnZXRNZXNzYWdlcyA9ICgpID0+IHtcbiAgICBjb25zdCBpbmJveCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXCIudi1Gb2xkZXJTb3VyY2UtLWluYm94Pi52LUZvbGRlclNvdXJjZS1iYWRnZVwiKTtcbiAgICBpZiAoIWluYm94KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG1lc3NhZ2VzID0gTnVtYmVyKGluYm94LmlubmVyVGV4dCk7XG4gICAgaWYgKCFOdW1iZXIuaXNOYU4obWVzc2FnZXMpKSB7XG4gICAgICBGcmFuei5zZXRCYWRnZShtZXNzYWdlcyk7XG4gICAgfVxuICB9XG5cbiAgRnJhbnoubG9vcChnZXRNZXNzYWdlcyk7XG59XG4iXX0= \ No newline at end of file -- cgit v1.2.3-54-g00ecf