From 6f5e4a00588aefdda7a5a1cfe70935870e7e234a Mon Sep 17 00:00:00 2001 From: Bennett Date: Tue, 22 Sep 2020 20:56:48 +0200 Subject: Unpack recipes and update recipes icons (#292) Co-authored-by: Amine Mouafik --- recipes/hipchat/README.md | 5 +++++ recipes/hipchat/icon.png | Bin 0 -> 79505 bytes recipes/hipchat/icon.svg | 23 +++++++++++++++++++++++ recipes/hipchat/index.js | 30 ++++++++++++++++++++++++++++++ recipes/hipchat/package.json | 18 ++++++++++++++++++ recipes/hipchat/webview.js | 13 +++++++++++++ 6 files changed, 89 insertions(+) create mode 100644 recipes/hipchat/README.md create mode 100644 recipes/hipchat/icon.png create mode 100644 recipes/hipchat/icon.svg create mode 100644 recipes/hipchat/index.js create mode 100644 recipes/hipchat/package.json create mode 100644 recipes/hipchat/webview.js (limited to 'recipes/hipchat') diff --git a/recipes/hipchat/README.md b/recipes/hipchat/README.md new file mode 100644 index 0000000..9c0ed8c --- /dev/null +++ b/recipes/hipchat/README.md @@ -0,0 +1,5 @@ +# HipChat for Franz +This is the official Franz recipe for HipChat + +### How to create your own Franz recipes: +* [Read the documentation](https://github.com/meetfranz/plugins) diff --git a/recipes/hipchat/icon.png b/recipes/hipchat/icon.png new file mode 100644 index 0000000..8ea4e58 Binary files /dev/null and b/recipes/hipchat/icon.png differ diff --git a/recipes/hipchat/icon.svg b/recipes/hipchat/icon.svg new file mode 100644 index 0000000..4541703 --- /dev/null +++ b/recipes/hipchat/icon.svg @@ -0,0 +1,23 @@ + + + + hipchat + Created with Sketch. + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/recipes/hipchat/index.js b/recipes/hipchat/index.js new file mode 100644 index 0000000..f90186a --- /dev/null +++ b/recipes/hipchat/index.js @@ -0,0 +1,30 @@ +'use strict'; + +function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } + +module.exports = Franz => class HipChat extends Franz { + validateUrl(url) { + return _asyncToGenerator(function* () { + try { + const resp = yield window.fetch(`${url}/api/features`, { + method: 'GET', + headers: { + 'Content-Type': 'application/json' + } + }); + const data = yield resp.json(); + + return Object.hasOwnProperty.call(data, 'features'); + } catch (err) { + console.error(err); + } + + return false; + })(); + } + + buildUrl(url) { + return `${url}/chat`; + } +}; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhpcGNoYXQvaW5kZXguanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIkZyYW56IiwiSGlwQ2hhdCIsInZhbGlkYXRlVXJsIiwidXJsIiwicmVzcCIsIndpbmRvdyIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImRhdGEiLCJqc29uIiwiT2JqZWN0IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwiYnVpbGRVcmwiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQUEsT0FBT0MsT0FBUCxHQUFpQkMsU0FBUyxNQUFNQyxPQUFOLFNBQXNCRCxLQUF0QixDQUE0QjtBQUM5Q0UsYUFBTixDQUFrQkMsR0FBbEIsRUFBdUI7QUFBQTtBQUNyQixVQUFJO0FBQ0YsY0FBTUMsT0FBTyxNQUFNQyxPQUFPQyxLQUFQLENBQWMsR0FBRUgsR0FBSSxlQUFwQixFQUFvQztBQUNyREksa0JBQVEsS0FENkM7QUFFckRDLG1CQUFTO0FBQ1AsNEJBQWdCO0FBRFQ7QUFGNEMsU0FBcEMsQ0FBbkI7QUFNQSxjQUFNQyxPQUFPLE1BQU1MLEtBQUtNLElBQUwsRUFBbkI7O0FBRUEsZUFBT0MsT0FBT0MsY0FBUCxDQUFzQkMsSUFBdEIsQ0FBMkJKLElBQTNCLEVBQWlDLFVBQWpDLENBQVA7QUFDRCxPQVZELENBVUUsT0FBT0ssR0FBUCxFQUFZO0FBQ1pDLGdCQUFRQyxLQUFSLENBQWNGLEdBQWQ7QUFDRDs7QUFFRCxhQUFPLEtBQVA7QUFmcUI7QUFnQnRCOztBQUVERyxXQUFTZCxHQUFULEVBQWM7QUFDWixXQUFRLEdBQUVBLEdBQUksT0FBZDtBQUNEO0FBckJtRCxDQUF0RCIsImZpbGUiOiJoaXBjaGF0L2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsibW9kdWxlLmV4cG9ydHMgPSBGcmFueiA9PiBjbGFzcyBIaXBDaGF0IGV4dGVuZHMgRnJhbnoge1xuICBhc3luYyB2YWxpZGF0ZVVybCh1cmwpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcCA9IGF3YWl0IHdpbmRvdy5mZXRjaChgJHt1cmx9L2FwaS9mZWF0dXJlc2AsIHtcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwLmpzb24oKTtcblxuICAgICAgcmV0dXJuIE9iamVjdC5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRhdGEsICdmZWF0dXJlcycpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGJ1aWxkVXJsKHVybCkge1xuICAgIHJldHVybiBgJHt1cmx9L2NoYXRgO1xuICB9XG59O1xuIl19 \ No newline at end of file diff --git a/recipes/hipchat/package.json b/recipes/hipchat/package.json new file mode 100644 index 0000000..08f5876 --- /dev/null +++ b/recipes/hipchat/package.json @@ -0,0 +1,18 @@ +{ + "id": "hipchat", + "name": "HipChat", + "version": "1.0.1", + "description": "HipChat", + "main": "index.js", + "author": "Stefan Malzner ", + "license": "MIT", + "config": { + "serviceURL": "https://{teamId}.hipchat.com/chat", + "hasNotificationSound": true, + "hasDirectMessages": true, + "hasIndirectMessages": true, + "hasTeamId": true, + "hasCustomUrl": true, + "urlInputSuffix": ".hipchat.com" + } +} diff --git a/recipes/hipchat/webview.js b/recipes/hipchat/webview.js new file mode 100644 index 0000000..1f072eb --- /dev/null +++ b/recipes/hipchat/webview.js @@ -0,0 +1,13 @@ +'use strict'; + +module.exports = Franz => { + const getMessages = function getMessages() { + const directMessages = document.querySelectorAll('.hc-mention').length; + const allMessages = document.querySelectorAll('.aui-badge:not(.hc-mention)').length - directMessages; + + // set Franz badge + Franz.setBadge(directMessages, allMessages); + }; + Franz.loop(getMessages); +}; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhpcGNoYXQvd2Vidmlldy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwiRnJhbnoiLCJnZXRNZXNzYWdlcyIsImRpcmVjdE1lc3NhZ2VzIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwibGVuZ3RoIiwiYWxsTWVzc2FnZXMiLCJzZXRCYWRnZSIsImxvb3AiXSwibWFwcGluZ3MiOiI7O0FBQUFBLE9BQU9DLE9BQVAsR0FBa0JDLEtBQUQsSUFBVztBQUMxQixRQUFNQyxjQUFjLFNBQVNBLFdBQVQsR0FBdUI7QUFDekMsVUFBTUMsaUJBQWlCQyxTQUFTQyxnQkFBVCxDQUEwQixhQUExQixFQUF5Q0MsTUFBaEU7QUFDQSxVQUFNQyxjQUFjSCxTQUFTQyxnQkFBVCxDQUEwQiw2QkFBMUIsRUFBeURDLE1BQXpELEdBQWtFSCxjQUF0Rjs7QUFFQTtBQUNBRixVQUFNTyxRQUFOLENBQWVMLGNBQWYsRUFBK0JJLFdBQS9CO0FBQ0QsR0FORDtBQU9BTixRQUFNUSxJQUFOLENBQVdQLFdBQVg7QUFDRCxDQVREIiwiZmlsZSI6ImhpcGNoYXQvd2Vidmlldy5qcyIsInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gKEZyYW56KSA9PiB7XG4gIGNvbnN0IGdldE1lc3NhZ2VzID0gZnVuY3Rpb24gZ2V0TWVzc2FnZXMoKSB7XG4gICAgY29uc3QgZGlyZWN0TWVzc2FnZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuaGMtbWVudGlvbicpLmxlbmd0aDtcbiAgICBjb25zdCBhbGxNZXNzYWdlcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5hdWktYmFkZ2U6bm90KC5oYy1tZW50aW9uKScpLmxlbmd0aCAtIGRpcmVjdE1lc3NhZ2VzO1xuXG4gICAgLy8gc2V0IEZyYW56IGJhZGdlXG4gICAgRnJhbnouc2V0QmFkZ2UoZGlyZWN0TWVzc2FnZXMsIGFsbE1lc3NhZ2VzKTtcbiAgfTtcbiAgRnJhbnoubG9vcChnZXRNZXNzYWdlcyk7XG59O1xuIl19 \ No newline at end of file -- cgit v1.2.3-70-g09d2