From 58612392fd73ad512df7387abf51a7175f7661aa Mon Sep 17 00:00:00 2001 From: flarum-bot Date: Fri, 21 Sep 2018 01:58:54 +0000 Subject: [PATCH] Bundled output for commit e038aebfa091935c3916ddbfd817e7615e82cffd [skip ci] --- extensions/likes/js/dist/forum.js | 2 +- extensions/likes/js/dist/forum.js.map | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/extensions/likes/js/dist/forum.js b/extensions/likes/js/dist/forum.js index 59cf9d515..11aabb4ca 100644 --- a/extensions/likes/js/dist/forum.js +++ b/extensions/likes/js/dist/forum.js @@ -1,2 +1,2 @@ -module.exports=function(t){var e={};function o(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=t,o.c=e,o.d=function(t,e,n){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)o.d(n,r,function(e){return t[e]}.bind(null,r));return n},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=14)}([function(t,e){t.exports=flarum.core.compat.app},function(t,e){t.exports=flarum.core.compat.extend},function(t,e){t.exports=flarum.core.compat["helpers/username"]},function(t,e){t.exports=flarum.core.compat["components/CommentPost"]},function(t,e){t.exports=flarum.core.compat["helpers/punctuateSeries"]},function(t,e){t.exports=flarum.core.compat["models/Post"]},function(t,e){t.exports=flarum.core.compat.Model},function(t,e){t.exports=flarum.core.compat["components/NotificationGrid"]},function(t,e){t.exports=flarum.core.compat["components/Button"]},function(t,e){t.exports=flarum.core.compat["helpers/icon"]},function(t,e){t.exports=flarum.core.compat["components/Modal"]},function(t,e){t.exports=flarum.core.compat["helpers/avatar"]},function(t,e){t.exports=flarum.core.compat["components/Notification"]},,function(t,e,o){"use strict";o.r(e);var n=o(1),r=o(0),a=o.n(r),i=o(5),s=o.n(i),u=o(6),c=o.n(u),l=o(7),p=o.n(l),f=o(8),d=o.n(f),h=o(3),k=o.n(h),y=o(4),x=o.n(y),b=o(2),v=o.n(b),_=o(9),g=o.n(_);function j(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var M=o(10),O=o.n(M),P=o(11),L=o.n(P),C=function(t){function e(){return t.apply(this,arguments)||this}j(e,t);var o=e.prototype;return o.className=function(){return"PostLikesModal Modal--small"},o.title=function(){return app.translator.trans("flarum-likes.forum.post_likes.title")},o.content=function(){return m("div",{className:"Modal-body"},m("ul",{className:"PostLikesModal-list"},this.props.post.likes().map(function(t){return m("li",null,m("a",{href:app.route.user(t),config:m.route},L()(t)," "," ",v()(t)))})))},e}(O.a),N=o(12),S=function(t){function e(){return t.apply(this,arguments)||this}j(e,t);var o=e.prototype;return o.icon=function(){return"far fa-thumbs-up"},o.href=function(){return app.route.post(this.props.notification.subject())},o.content=function(){var t=this.props.notification,e=t.fromUser(),o=t.additionalUnreadCount();return app.translator.transChoice("flarum-likes.forum.notifications.post_liked_text",o+1,{user:e,username:o?x()([v()(e),app.translator.transChoice("flarum-likes.forum.notifications.others_text",o,{count:o})]):void 0})},o.excerpt=function(){return this.props.notification.subject().contentPlain()},e}(o.n(N).a);a.a.initializers.add("flarum-likes",function(){a.a.notificationComponents.postLiked=S,s.a.prototype.canLike=c.a.attribute("canLike"),s.a.prototype.likes=c.a.hasMany("likes"),Object(n.extend)(k.a.prototype,"actionItems",function(t){var e=this.props.post;if(!e.isHidden()&&e.canLike()){var o=a.a.session.user&&e.likes().some(function(t){return t===a.a.session.user});t.add("like",d.a.component({children:a.a.translator.trans(o?"flarum-likes.forum.post.unlike_link":"flarum-likes.forum.post.like_link"),className:"Button Button--link",onclick:function(){o=!o,e.save({isLiked:o});var t=e.data.relationships.likes.data;t.some(function(e,o){if(e.id===a.a.session.user.id())return t.splice(o,1),!0}),o&&t.unshift({type:"users",id:a.a.session.user.id()})}}))}}),Object(n.extend)(k.a.prototype,"footerItems",function(t){var e=this.props.post,o=e.likes();if(o&&o.length){var n=o.length>4,r=o.sort(function(t){return t===a.a.session.user?-1:1}).slice(0,n?3:4).map(function(t){return m("a",{href:a.a.route.user(t),config:m.route},t===a.a.session.user?a.a.translator.trans("flarum-likes.forum.post.you_text"):v()(t))});if(n){var i=o.length-r.length;r.push(m("a",{href:"#",onclick:function(t){t.preventDefault(),a.a.modal.show(new C({post:e}))}},a.a.translator.transChoice("flarum-likes.forum.post.others_link",i,{count:i})))}t.add("liked",m("div",{className:"Post-likedBy"},g()("far fa-thumbs-up"),a.a.translator.transChoice("flarum-likes.forum.post.liked_by"+(o[0]===a.a.session.user?"_self":"")+"_text",r.length,{count:r.length,users:x()(r)})))}}),Object(n.extend)(p.a.prototype,"notificationTypes",function(t){t.add("postLiked",{name:"postLiked",icon:"far fa-thumbs-up",label:a.a.translator.trans("flarum-likes.forum.settings.notify_post_liked_label")})})})}]); +module.exports=function(t){var e={};function o(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=t,o.c=e,o.d=function(t,e,n){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)o.d(n,r,function(e){return t[e]}.bind(null,r));return n},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=14)}([function(t,e){t.exports=flarum.core.compat.app},function(t,e){t.exports=flarum.core.compat.extend},function(t,e){t.exports=flarum.core.compat["components/CommentPost"]},function(t,e){t.exports=flarum.core.compat["helpers/username"]},function(t,e){t.exports=flarum.core.compat["models/Post"]},function(t,e){t.exports=flarum.core.compat.Model},function(t,e){t.exports=flarum.core.compat["components/NotificationGrid"]},function(t,e){t.exports=flarum.core.compat["components/Button"]},function(t,e){t.exports=flarum.core.compat["helpers/punctuateSeries"]},function(t,e){t.exports=flarum.core.compat["helpers/icon"]},function(t,e){t.exports=flarum.core.compat["components/Modal"]},function(t,e){t.exports=flarum.core.compat["helpers/avatar"]},function(t,e){t.exports=flarum.core.compat["components/Notification"]},,function(t,e,o){"use strict";o.r(e);var n=o(1),r=o(0),s=o.n(r),i=o(4),a=o.n(i),u=o(5),c=o.n(u),l=o(6),p=o.n(l),f=o(7),d=o.n(f),k=o(2),h=o.n(k),y=o(8),b=o.n(y),x=o(3),v=o.n(x),_=o(9),g=o.n(_);function j(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var M=o(10),O=o.n(M),P=o(11),L=o.n(P),N=function(t){function e(){return t.apply(this,arguments)||this}j(e,t);var o=e.prototype;return o.className=function(){return"PostLikesModal Modal--small"},o.title=function(){return app.translator.trans("flarum-likes.forum.post_likes.title")},o.content=function(){return m("div",{className:"Modal-body"},m("ul",{className:"PostLikesModal-list"},this.props.post.likes().map(function(t){return m("li",null,m("a",{href:app.route.user(t),config:m.route},L()(t)," "," ",v()(t)))})))},e}(O.a),S=o(12),C=function(t){function e(){return t.apply(this,arguments)||this}j(e,t);var o=e.prototype;return o.icon=function(){return"far fa-thumbs-up"},o.href=function(){return app.route.post(this.props.notification.subject())},o.content=function(){var t=this.props.notification.fromUser();return app.translator.transChoice("flarum-likes.forum.notifications.post_liked_text",1,{user:t})},o.excerpt=function(){return this.props.notification.subject().contentPlain()},e}(o.n(S).a);s.a.initializers.add("flarum-likes",function(){s.a.notificationComponents.postLiked=C,a.a.prototype.canLike=c.a.attribute("canLike"),a.a.prototype.likes=c.a.hasMany("likes"),Object(n.extend)(h.a.prototype,"actionItems",function(t){var e=this.props.post;if(!e.isHidden()&&e.canLike()){var o=s.a.session.user&&e.likes().some(function(t){return t===s.a.session.user});t.add("like",d.a.component({children:s.a.translator.trans(o?"flarum-likes.forum.post.unlike_link":"flarum-likes.forum.post.like_link"),className:"Button Button--link",onclick:function(){o=!o,e.save({isLiked:o});var t=e.data.relationships.likes.data;t.some(function(e,o){if(e.id===s.a.session.user.id())return t.splice(o,1),!0}),o&&t.unshift({type:"users",id:s.a.session.user.id()})}}))}}),Object(n.extend)(h.a.prototype,"footerItems",function(t){var e=this.props.post,o=e.likes();if(o&&o.length){var n=o.length>4,r=o.sort(function(t){return t===s.a.session.user?-1:1}).slice(0,n?3:4).map(function(t){return m("a",{href:s.a.route.user(t),config:m.route},t===s.a.session.user?s.a.translator.trans("flarum-likes.forum.post.you_text"):v()(t))});if(n){var i=o.length-r.length;r.push(m("a",{href:"#",onclick:function(t){t.preventDefault(),s.a.modal.show(new N({post:e}))}},s.a.translator.transChoice("flarum-likes.forum.post.others_link",i,{count:i})))}t.add("liked",m("div",{className:"Post-likedBy"},g()("far fa-thumbs-up"),s.a.translator.transChoice("flarum-likes.forum.post.liked_by"+(o[0]===s.a.session.user?"_self":"")+"_text",r.length,{count:r.length,users:b()(r)})))}}),Object(n.extend)(p.a.prototype,"notificationTypes",function(t){t.add("postLiked",{name:"postLiked",icon:"far fa-thumbs-up",label:s.a.translator.trans("flarum-likes.forum.settings.notify_post_liked_label")})})})}]); //# sourceMappingURL=forum.js.map \ No newline at end of file diff --git a/extensions/likes/js/dist/forum.js.map b/extensions/likes/js/dist/forum.js.map index 7aa6767b2..773228e77 100644 --- a/extensions/likes/js/dist/forum.js.map +++ b/extensions/likes/js/dist/forum.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://@flarum/flarum-ext-likes/webpack/bootstrap","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['app']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['extend']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/username']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/CommentPost']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/punctuateSeries']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['models/Post']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['Model']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/NotificationGrid']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/Button']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/icon']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/Modal']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/avatar']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/Notification']\"","webpack://@flarum/flarum-ext-likes/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@flarum/flarum-ext-likes/./src/forum/components/PostLikesModal.js","webpack://@flarum/flarum-ext-likes/./src/forum/components/PostLikedNotification.js","webpack://@flarum/flarum-ext-likes/./src/forum/index.js","webpack://@flarum/flarum-ext-likes/./src/forum/addLikeAction.js","webpack://@flarum/flarum-ext-likes/./src/forum/addLikesList.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","flarum","core","compat","_inheritsLoose","subClass","superClass","constructor","__proto__","PostLikesModal","className","title","app","translator","trans","content","this","props","post","likes","map","user","href","route","config","avatar","username","Modal","PostLikedNotification","icon","notification","subject","fromUser","auc","additionalUnreadCount","transChoice","punctuateSeries","count","undefined","excerpt","contentPlain","Notification","initializers","add","notificationComponents","postLiked","Post","canLike","Model","attribute","hasMany","extend","CommentPost","items","isHidden","isLiked","session","some","Button","component","children","onclick","save","data","relationships","like","id","splice","unshift","type","length","overLimit","names","sort","a","slice","limit","push","e","preventDefault","modal","show","users","NotificationGrid","label"],"mappings":"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","file":"forum.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 14);\n","module.exports = flarum.core.compat['app'];","module.exports = flarum.core.compat['extend'];","module.exports = flarum.core.compat['helpers/username'];","module.exports = flarum.core.compat['components/CommentPost'];","module.exports = flarum.core.compat['helpers/punctuateSeries'];","module.exports = flarum.core.compat['models/Post'];","module.exports = flarum.core.compat['Model'];","module.exports = flarum.core.compat['components/NotificationGrid'];","module.exports = flarum.core.compat['components/Button'];","module.exports = flarum.core.compat['helpers/icon'];","module.exports = flarum.core.compat['components/Modal'];","module.exports = flarum.core.compat['helpers/avatar'];","module.exports = flarum.core.compat['components/Notification'];","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","import Modal from 'flarum/components/Modal';\nimport avatar from 'flarum/helpers/avatar';\nimport username from 'flarum/helpers/username';\n\nexport default class PostLikesModal extends Modal {\n className() {\n return 'PostLikesModal Modal--small';\n }\n\n title() {\n return app.translator.trans('flarum-likes.forum.post_likes.title');\n }\n\n content() {\n return (\n
\n \n
\n );\n }\n}\n","import Notification from 'flarum/components/Notification';\nimport username from 'flarum/helpers/username';\nimport punctuateSeries from 'flarum/helpers/punctuateSeries';\n\nexport default class PostLikedNotification extends Notification {\n icon() {\n return 'far fa-thumbs-up';\n }\n\n href() {\n return app.route.post(this.props.notification.subject());\n }\n\n content() {\n const notification = this.props.notification;\n const user = notification.fromUser();\n const auc = notification.additionalUnreadCount();\n\n return app.translator.transChoice('flarum-likes.forum.notifications.post_liked_text', auc + 1, {\n user,\n username: auc ? punctuateSeries([\n username(user),\n app.translator.transChoice('flarum-likes.forum.notifications.others_text', auc, {count: auc})\n ]) : undefined\n });\n }\n\n excerpt() {\n return this.props.notification.subject().contentPlain();\n }\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport Post from 'flarum/models/Post';\nimport Model from 'flarum/Model';\nimport NotificationGrid from 'flarum/components/NotificationGrid';\n\nimport addLikeAction from './addLikeAction';\nimport addLikesList from './addLikesList';\nimport PostLikedNotification from './components/PostLikedNotification';\n\napp.initializers.add('flarum-likes', () => {\n app.notificationComponents.postLiked = PostLikedNotification;\n\n Post.prototype.canLike = Model.attribute('canLike');\n Post.prototype.likes = Model.hasMany('likes');\n\n addLikeAction();\n addLikesList();\n\n extend(NotificationGrid.prototype, 'notificationTypes', function (items) {\n items.add('postLiked', {\n name: 'postLiked',\n icon: 'far fa-thumbs-up',\n label: app.translator.trans('flarum-likes.forum.settings.notify_post_liked_label')\n });\n });\n});\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport Button from 'flarum/components/Button';\nimport CommentPost from 'flarum/components/CommentPost';\n\nexport default function() {\n extend(CommentPost.prototype, 'actionItems', function(items) {\n const post = this.props.post;\n\n if (post.isHidden() || !post.canLike()) return;\n\n let isLiked = app.session.user && post.likes().some(user => user === app.session.user);\n\n items.add('like',\n Button.component({\n children: app.translator.trans(isLiked ? 'flarum-likes.forum.post.unlike_link' : 'flarum-likes.forum.post.like_link'),\n className: 'Button Button--link',\n onclick: () => {\n isLiked = !isLiked;\n\n post.save({isLiked});\n\n // We've saved the fact that we do or don't like the post, but in order\n // to provide instantaneous feedback to the user, we'll need to add or\n // remove the like from the relationship data manually.\n const data = post.data.relationships.likes.data;\n data.some((like, i) => {\n if (like.id === app.session.user.id()) {\n data.splice(i, 1);\n return true;\n }\n });\n\n if (isLiked) {\n data.unshift({type: 'users', id: app.session.user.id()});\n }\n }\n })\n );\n });\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport CommentPost from 'flarum/components/CommentPost';\nimport punctuateSeries from 'flarum/helpers/punctuateSeries';\nimport username from 'flarum/helpers/username';\nimport icon from 'flarum/helpers/icon';\n\nimport PostLikesModal from './components/PostLikesModal';\n\nexport default function() {\n extend(CommentPost.prototype, 'footerItems', function(items) {\n const post = this.props.post;\n const likes = post.likes();\n\n if (likes && likes.length) {\n const limit = 4;\n const overLimit = likes.length > limit;\n\n // Construct a list of names of users who have liked this post. Make sure the\n // current user is first in the list, and cap a maximum of 4 items.\n const names = likes.sort(a => a === app.session.user ? -1 : 1)\n .slice(0, overLimit ? limit - 1 : limit)\n .map(user => {\n return (\n \n {user === app.session.user ? app.translator.trans('flarum-likes.forum.post.you_text') : username(user)}\n \n );\n });\n\n // If there are more users that we've run out of room to display, add a \"x\n // others\" name to the end of the list. Clicking on it will display a modal\n // with a full list of names.\n if (overLimit) {\n const count = likes.length - names.length;\n\n names.push(\n {\n e.preventDefault();\n app.modal.show(new PostLikesModal({post}));\n }}>\n {app.translator.transChoice('flarum-likes.forum.post.others_link', count, {count})}\n \n );\n }\n\n items.add('liked', (\n
\n {icon('far fa-thumbs-up')}\n {app.translator.transChoice('flarum-likes.forum.post.liked_by' + (likes[0] === app.session.user ? '_self' : '') + '_text', names.length, {\n count: names.length,\n users: punctuateSeries(names)\n })}\n
\n ));\n }\n });\n}\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://@flarum/flarum-ext-likes/webpack/bootstrap","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['app']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['extend']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/CommentPost']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/username']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['models/Post']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['Model']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/NotificationGrid']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/Button']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/punctuateSeries']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/icon']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/Modal']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['helpers/avatar']\"","webpack://@flarum/flarum-ext-likes/external \"flarum.core.compat['components/Notification']\"","webpack://@flarum/flarum-ext-likes/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@flarum/flarum-ext-likes/./src/forum/components/PostLikesModal.js","webpack://@flarum/flarum-ext-likes/./src/forum/components/PostLikedNotification.js","webpack://@flarum/flarum-ext-likes/./src/forum/index.js","webpack://@flarum/flarum-ext-likes/./src/forum/addLikeAction.js","webpack://@flarum/flarum-ext-likes/./src/forum/addLikesList.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","flarum","core","compat","_inheritsLoose","subClass","superClass","constructor","__proto__","PostLikesModal","className","title","app","translator","trans","content","this","props","post","likes","map","user","href","route","config","avatar","username","Modal","PostLikedNotification","icon","notification","subject","fromUser","transChoice","excerpt","contentPlain","Notification","initializers","add","notificationComponents","postLiked","Post","canLike","Model","attribute","hasMany","extend","CommentPost","items","isHidden","isLiked","session","some","Button","component","children","onclick","save","data","relationships","like","id","splice","unshift","type","length","overLimit","names","sort","a","slice","limit","count","push","e","preventDefault","modal","show","users","punctuateSeries","NotificationGrid","label"],"mappings":"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","file":"forum.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 14);\n","module.exports = flarum.core.compat['app'];","module.exports = flarum.core.compat['extend'];","module.exports = flarum.core.compat['components/CommentPost'];","module.exports = flarum.core.compat['helpers/username'];","module.exports = flarum.core.compat['models/Post'];","module.exports = flarum.core.compat['Model'];","module.exports = flarum.core.compat['components/NotificationGrid'];","module.exports = flarum.core.compat['components/Button'];","module.exports = flarum.core.compat['helpers/punctuateSeries'];","module.exports = flarum.core.compat['helpers/icon'];","module.exports = flarum.core.compat['components/Modal'];","module.exports = flarum.core.compat['helpers/avatar'];","module.exports = flarum.core.compat['components/Notification'];","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","import Modal from 'flarum/components/Modal';\nimport avatar from 'flarum/helpers/avatar';\nimport username from 'flarum/helpers/username';\n\nexport default class PostLikesModal extends Modal {\n className() {\n return 'PostLikesModal Modal--small';\n }\n\n title() {\n return app.translator.trans('flarum-likes.forum.post_likes.title');\n }\n\n content() {\n return (\n
\n \n
\n );\n }\n}\n","import Notification from 'flarum/components/Notification';\n\nexport default class PostLikedNotification extends Notification {\n icon() {\n return 'far fa-thumbs-up';\n }\n\n href() {\n return app.route.post(this.props.notification.subject());\n }\n\n content() {\n const notification = this.props.notification;\n const user = notification.fromUser();\n\n return app.translator.transChoice('flarum-likes.forum.notifications.post_liked_text', 1, {user});\n }\n\n excerpt() {\n return this.props.notification.subject().contentPlain();\n }\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport Post from 'flarum/models/Post';\nimport Model from 'flarum/Model';\nimport NotificationGrid from 'flarum/components/NotificationGrid';\n\nimport addLikeAction from './addLikeAction';\nimport addLikesList from './addLikesList';\nimport PostLikedNotification from './components/PostLikedNotification';\n\napp.initializers.add('flarum-likes', () => {\n app.notificationComponents.postLiked = PostLikedNotification;\n\n Post.prototype.canLike = Model.attribute('canLike');\n Post.prototype.likes = Model.hasMany('likes');\n\n addLikeAction();\n addLikesList();\n\n extend(NotificationGrid.prototype, 'notificationTypes', function (items) {\n items.add('postLiked', {\n name: 'postLiked',\n icon: 'far fa-thumbs-up',\n label: app.translator.trans('flarum-likes.forum.settings.notify_post_liked_label')\n });\n });\n});\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport Button from 'flarum/components/Button';\nimport CommentPost from 'flarum/components/CommentPost';\n\nexport default function() {\n extend(CommentPost.prototype, 'actionItems', function(items) {\n const post = this.props.post;\n\n if (post.isHidden() || !post.canLike()) return;\n\n let isLiked = app.session.user && post.likes().some(user => user === app.session.user);\n\n items.add('like',\n Button.component({\n children: app.translator.trans(isLiked ? 'flarum-likes.forum.post.unlike_link' : 'flarum-likes.forum.post.like_link'),\n className: 'Button Button--link',\n onclick: () => {\n isLiked = !isLiked;\n\n post.save({isLiked});\n\n // We've saved the fact that we do or don't like the post, but in order\n // to provide instantaneous feedback to the user, we'll need to add or\n // remove the like from the relationship data manually.\n const data = post.data.relationships.likes.data;\n data.some((like, i) => {\n if (like.id === app.session.user.id()) {\n data.splice(i, 1);\n return true;\n }\n });\n\n if (isLiked) {\n data.unshift({type: 'users', id: app.session.user.id()});\n }\n }\n })\n );\n });\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport CommentPost from 'flarum/components/CommentPost';\nimport punctuateSeries from 'flarum/helpers/punctuateSeries';\nimport username from 'flarum/helpers/username';\nimport icon from 'flarum/helpers/icon';\n\nimport PostLikesModal from './components/PostLikesModal';\n\nexport default function() {\n extend(CommentPost.prototype, 'footerItems', function(items) {\n const post = this.props.post;\n const likes = post.likes();\n\n if (likes && likes.length) {\n const limit = 4;\n const overLimit = likes.length > limit;\n\n // Construct a list of names of users who have liked this post. Make sure the\n // current user is first in the list, and cap a maximum of 4 items.\n const names = likes.sort(a => a === app.session.user ? -1 : 1)\n .slice(0, overLimit ? limit - 1 : limit)\n .map(user => {\n return (\n \n {user === app.session.user ? app.translator.trans('flarum-likes.forum.post.you_text') : username(user)}\n \n );\n });\n\n // If there are more users that we've run out of room to display, add a \"x\n // others\" name to the end of the list. Clicking on it will display a modal\n // with a full list of names.\n if (overLimit) {\n const count = likes.length - names.length;\n\n names.push(\n {\n e.preventDefault();\n app.modal.show(new PostLikesModal({post}));\n }}>\n {app.translator.transChoice('flarum-likes.forum.post.others_link', count, {count})}\n \n );\n }\n\n items.add('liked', (\n
\n {icon('far fa-thumbs-up')}\n {app.translator.transChoice('flarum-likes.forum.post.liked_by' + (likes[0] === app.session.user ? '_self' : '') + '_text', names.length, {\n count: names.length,\n users: punctuateSeries(names)\n })}\n
\n ));\n }\n });\n}\n"],"sourceRoot":""} \ No newline at end of file