From 130237814193235c7c527d5416a7d8b312eb424f Mon Sep 17 00:00:00 2001 From: flarum-bot Date: Tue, 14 May 2024 20:13:28 +0000 Subject: [PATCH] Bundled output for commit 29ede5aa27e368020e8f786df3c17aebaa36c928 Includes transpiled JS/TS, and Typescript declaration files (typings). [skip ci] --- extensions/likes/js/dist/forum.js | 2 +- extensions/likes/js/dist/forum.js.map | 2 +- extensions/lock/js/dist/forum.js | 2 +- extensions/lock/js/dist/forum.js.map | 2 +- extensions/mentions/js/dist/forum.js | 2 +- extensions/mentions/js/dist/forum.js.map | 2 +- extensions/subscriptions/js/dist/forum.js | 2 +- extensions/subscriptions/js/dist/forum.js.map | 2 +- extensions/suspend/js/dist/forum.js | 2 +- extensions/suspend/js/dist/forum.js.map | 2 +- .../common/extenders/Notification.d.ts | 14 ++++++++++++++ .../js/dist-typings/common/extenders/index.d.ts | 2 ++ framework/core/js/dist/admin.js | 2 +- framework/core/js/dist/admin.js.map | 2 +- framework/core/js/dist/forum.js | 2 +- framework/core/js/dist/forum.js.map | 2 +- 16 files changed, 30 insertions(+), 14 deletions(-) create mode 100644 framework/core/js/dist-typings/common/extenders/Notification.d.ts diff --git a/extensions/likes/js/dist/forum.js b/extensions/likes/js/dist/forum.js index 2b86c47d1..32a7beb2d 100644 --- a/extensions/likes/js/dist/forum.js +++ b/extensions/likes/js/dist/forum.js @@ -1,2 +1,2 @@ -(()=>{var t={n:e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return t.d(o,{a:o}),o},d:(e,o)=>{for(var s in o)t.o(o,s)&&!t.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:o[s]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};(()=>{"use strict";t.r(e),t.d(e,{extend:()=>J});const o=flarum.reg.get("core","common/extend"),s=flarum.reg.get("core","forum/app");var r=t.n(s);const n=flarum.reg.get("core","common/components/Button");var a=t.n(n);const i=flarum.reg.get("core","forum/components/CommentPost");var l=t.n(i);const u=flarum.reg.get("core","common/components/Link");var c=t.n(u);const f=flarum.reg.get("core","common/helpers/punctuateSeries");var d=t.n(f);const p=flarum.reg.get("core","common/helpers/username");var g=t.n(p);const k=flarum.reg.get("core","common/components/Icon");var h=t.n(k);const v=flarum.reg.get("core","common/components/Modal");var b=t.n(v);const y=flarum.reg.get("core","common/components/Avatar");var _=t.n(y);const x=flarum.reg.get("core","common/states/PaginatedListState");var L=t.n(x);class P extends(L()){constructor(t,e){void 0===e&&(e=1),t.page={...t.page||{},limit:10},super(t,e,10)}get type(){return"users"}}flarum.reg.add("flarum-likes","forum/states/PostLikesModalState",P);const N=flarum.reg.get("core","common/components/LoadingIndicator");var M=t.n(N);const B=flarum.reg.get("core","common/components/Form");var S=t.n(B);class j extends(b()){oninit(t){super.oninit(t),this.state=new P({filter:{liked:this.attrs.post.id()}}),this.state.refresh()}className(){return"PostLikesModal Modal--small"}title(){return r().translator.trans("flarum-likes.forum.post_likes.title")}content(){return m("[",null,m("div",{className:"Modal-body"},this.state.isInitialLoading()?m(M(),null):m("ul",{className:"PostLikesModal-list"},this.state.getPages().map((t=>t.items.map((t=>m("li",null,m(c(),{href:r().route.user(t)},m(_(),{user:t})," ",g()(t))))))))),this.state.hasNext()?m("div",{className:"Modal-footer"},m(S(),{className:"Form--centered"},m("div",{className:"Form-group"},m(a(),{className:"Button Button--block",onclick:()=>this.state.loadNext(),loading:this.state.isLoadingNext()},r().translator.trans("flarum-likes.forum.post_likes.load_more_button"))))):null)}}flarum.reg.add("flarum-likes","forum/components/PostLikesModal",j);const I=flarum.reg.get("core","forum/components/Notification");var w=t.n(I);const C=flarum.reg.get("core","common/utils/string");class O extends(w()){icon(){return"far fa-thumbs-up"}href(){return r().route.post(this.attrs.notification.subject())}content(){const t=this.attrs.notification.fromUser();return r().translator.trans("flarum-likes.forum.notifications.post_liked_text",{user:t,count:1})}excerpt(){return(0,C.truncate)(this.attrs.notification.subject().contentPlain(),200)}}flarum.reg.add("flarum-likes","forum/components/PostLikedNotification",O);const U=flarum.reg.get("core","forum/components/UserPage");var F=t.n(U);const T=flarum.reg.get("core","common/components/LinkButton");var A=t.n(T);const R=flarum.reg.get("core","common/extenders");var z=t.n(R);const D=flarum.reg.get("core","common/models/Post");var G=t.n(D);const H=flarum.reg.get("core","forum/components/PostsUserPage");var q=t.n(H);class E extends(q()){loadResults(t){return r().store.find("posts",{filter:{type:"comment",likedBy:this.user.id()},page:{offset:t,limit:this.loadLimit},sort:"-createdAt"})}}flarum.reg.add("flarum-likes","forum/components/LikesUserPage",E);const J=[(new(z().Routes)).add("user.likes","/u/:username/likes",E),new(z().Model)(G()).hasMany("likes").attribute("likesCount").attribute("canLike")];r().initializers.add("flarum-likes",(()=>{r().notificationComponents.postLiked=O,(0,o.extend)(l().prototype,"actionItems",(function(t){const e=this.attrs.post;if(e.isHidden()||!e.canLike())return;const o=e.likes();let s=r().session.user&&o&&o.some((t=>t===r().session.user));t.add("like",m(a(),{className:"Button Button--link",onclick:()=>{s=!s,e.save({isLiked:s});const t=e.data.relationships.likes.data;t.some(((e,o)=>{if(e.id===r().session.user.id())return t.splice(o,1),!0})),s&&t.unshift({type:"users",id:r().session.user.id()})}},r().translator.trans(s?"flarum-likes.forum.post.unlike_link":"flarum-likes.forum.post.like_link")))})),(0,o.extend)(l().prototype,"footerItems",(function(t){const e=this.attrs.post,o=e.likes();if(o&&o.length){const s=4,n=e.likesCount()>s,i=o.sort((t=>t===r().session.user?-1:1)).slice(0,n?s-1:s).map((t=>m(c(),{href:r().route.user(t)},t===r().session.user?r().translator.trans("flarum-likes.forum.post.you_text"):g()(t))));if(n){const t=e.likesCount()-i.length,o=r().translator.trans("flarum-likes.forum.post.others_link",{count:t});r().forum.attribute("canSearchUsers")?i.push(m(a(),{className:"Button Button--ua-reset Button--text",onclick:t=>{t.preventDefault(),r().modal.show(j,{post:e})}},o)):i.push(m("span",null,o))}t.add("liked",m("div",{className:"Post-likedBy"},m(h(),{name:"far fa-thumbs-up"}),r().translator.trans("flarum-likes.forum.post.liked_by".concat(o[0]===r().session.user?"_self":"","_text"),{count:i.length,users:d()(i)})))}})),(0,o.extend)(F().prototype,"navItems",(function(t){const e=this.user;t.add("likes",m(A(),{href:r().route("user.likes",{username:null==e?void 0:e.slug()}),icon:"far fa-thumbs-up"},r().translator.trans("flarum-likes.forum.user.likes_link")),88)})),(0,o.extend)("flarum/forum/components/NotificationGrid","notificationTypes",(function(t){t.add("postLiked",{name:"postLiked",icon:"far fa-thumbs-up",label:r().translator.trans("flarum-likes.forum.settings.notify_post_liked_label")})}))}))})(),module.exports=e})(); +(()=>{var t={n:e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return t.d(o,{a:o}),o},d:(e,o)=>{for(var s in o)t.o(o,s)&&!t.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:o[s]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};(()=>{"use strict";t.r(e),t.d(e,{extend:()=>J});const o=flarum.reg.get("core","common/extend"),s=flarum.reg.get("core","forum/app");var r=t.n(s);const n=flarum.reg.get("core","common/components/Button");var a=t.n(n);const i=flarum.reg.get("core","forum/components/CommentPost");var l=t.n(i);const u=flarum.reg.get("core","common/components/Link");var c=t.n(u);const f=flarum.reg.get("core","common/helpers/punctuateSeries");var d=t.n(f);const p=flarum.reg.get("core","common/helpers/username");var g=t.n(p);const k=flarum.reg.get("core","common/components/Icon");var h=t.n(k);const v=flarum.reg.get("core","common/components/Modal");var b=t.n(v);const y=flarum.reg.get("core","common/components/Avatar");var _=t.n(y);const x=flarum.reg.get("core","common/states/PaginatedListState");var L=t.n(x);class P extends(L()){constructor(t,e){void 0===e&&(e=1),t.page={...t.page||{},limit:10},super(t,e,10)}get type(){return"users"}}flarum.reg.add("flarum-likes","forum/states/PostLikesModalState",P);const N=flarum.reg.get("core","common/components/LoadingIndicator");var M=t.n(N);const B=flarum.reg.get("core","common/components/Form");var S=t.n(B);class j extends(b()){oninit(t){super.oninit(t),this.state=new P({filter:{liked:this.attrs.post.id()}}),this.state.refresh()}className(){return"PostLikesModal Modal--small"}title(){return r().translator.trans("flarum-likes.forum.post_likes.title")}content(){return m("[",null,m("div",{className:"Modal-body"},this.state.isInitialLoading()?m(M(),null):m("ul",{className:"PostLikesModal-list"},this.state.getPages().map((t=>t.items.map((t=>m("li",null,m(c(),{href:r().route.user(t)},m(_(),{user:t})," ",g()(t))))))))),this.state.hasNext()?m("div",{className:"Modal-footer"},m(S(),{className:"Form--centered"},m("div",{className:"Form-group"},m(a(),{className:"Button Button--block",onclick:()=>this.state.loadNext(),loading:this.state.isLoadingNext()},r().translator.trans("flarum-likes.forum.post_likes.load_more_button"))))):null)}}flarum.reg.add("flarum-likes","forum/components/PostLikesModal",j);const w=flarum.reg.get("core","forum/components/UserPage");var I=t.n(w);const O=flarum.reg.get("core","common/components/LinkButton");var U=t.n(O);const C=flarum.reg.get("core","common/extenders");var F=t.n(C);const T=flarum.reg.get("core","common/models/Post");var A=t.n(T);const R=flarum.reg.get("core","forum/components/PostsUserPage");var z=t.n(R);class D extends(z()){loadResults(t){return r().store.find("posts",{filter:{type:"comment",likedBy:this.user.id()},page:{offset:t,limit:this.loadLimit},sort:"-createdAt"})}}flarum.reg.add("flarum-likes","forum/components/LikesUserPage",D);const G=flarum.reg.get("core","forum/components/Notification");var H=t.n(G);const q=flarum.reg.get("core","common/utils/string");class E extends(H()){icon(){return"far fa-thumbs-up"}href(){return r().route.post(this.attrs.notification.subject())}content(){const t=this.attrs.notification.fromUser();return r().translator.trans("flarum-likes.forum.notifications.post_liked_text",{user:t,count:1})}excerpt(){return(0,q.truncate)(this.attrs.notification.subject().contentPlain(),200)}}flarum.reg.add("flarum-likes","forum/components/PostLikedNotification",E);const J=[(new(F().Routes)).add("user.likes","/u/:username/likes",D),(new(F().Notification)).add("postLiked",E),new(F().Model)(A()).hasMany("likes").attribute("likesCount").attribute("canLike")];r().initializers.add("flarum-likes",(()=>{(0,o.extend)(l().prototype,"actionItems",(function(t){const e=this.attrs.post;if(e.isHidden()||!e.canLike())return;const o=e.likes();let s=r().session.user&&o&&o.some((t=>t===r().session.user));t.add("like",m(a(),{className:"Button Button--link",onclick:()=>{s=!s,e.save({isLiked:s});const t=e.data.relationships.likes.data;t.some(((e,o)=>{if(e.id===r().session.user.id())return t.splice(o,1),!0})),s&&t.unshift({type:"users",id:r().session.user.id()})}},r().translator.trans(s?"flarum-likes.forum.post.unlike_link":"flarum-likes.forum.post.like_link")))})),(0,o.extend)(l().prototype,"footerItems",(function(t){const e=this.attrs.post,o=e.likes();if(o&&o.length){const s=4,n=e.likesCount()>s,i=o.sort((t=>t===r().session.user?-1:1)).slice(0,n?s-1:s).map((t=>m(c(),{href:r().route.user(t)},t===r().session.user?r().translator.trans("flarum-likes.forum.post.you_text"):g()(t))));if(n){const t=e.likesCount()-i.length,o=r().translator.trans("flarum-likes.forum.post.others_link",{count:t});r().forum.attribute("canSearchUsers")?i.push(m(a(),{className:"Button Button--ua-reset Button--text",onclick:t=>{t.preventDefault(),r().modal.show(j,{post:e})}},o)):i.push(m("span",null,o))}t.add("liked",m("div",{className:"Post-likedBy"},m(h(),{name:"far fa-thumbs-up"}),r().translator.trans("flarum-likes.forum.post.liked_by".concat(o[0]===r().session.user?"_self":"","_text"),{count:i.length,users:d()(i)})))}})),(0,o.extend)(I().prototype,"navItems",(function(t){const e=this.user;t.add("likes",m(U(),{href:r().route("user.likes",{username:null==e?void 0:e.slug()}),icon:"far fa-thumbs-up"},r().translator.trans("flarum-likes.forum.user.likes_link")),88)})),(0,o.extend)("flarum/forum/components/NotificationGrid","notificationTypes",(function(t){t.add("postLiked",{name:"postLiked",icon:"far fa-thumbs-up",label:r().translator.trans("flarum-likes.forum.settings.notify_post_liked_label")})}))}))})(),module.exports=e})(); //# 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 754c84eca..006c3e741 100644 --- a/extensions/likes/js/dist/forum.js.map +++ b/extensions/likes/js/dist/forum.js.map @@ -1 +1 @@ -{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@flarum/likes/webpack/bootstrap","webpack://@flarum/likes/webpack/runtime/compat get default export","webpack://@flarum/likes/webpack/runtime/define property getters","webpack://@flarum/likes/webpack/runtime/hasOwnProperty shorthand","webpack://@flarum/likes/webpack/runtime/make namespace object","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/extend')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/app')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Button')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/CommentPost')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Link')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/helpers/punctuateSeries')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/helpers/username')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Icon')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Modal')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Avatar')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/states/PaginatedListState')\"","webpack://@flarum/likes/./src/forum/states/PostLikesModalState.ts","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/LoadingIndicator')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Form')\"","webpack://@flarum/likes/./src/forum/components/PostLikesModal.tsx","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/Notification')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/utils/string')\"","webpack://@flarum/likes/./src/forum/components/PostLikedNotification.js","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/UserPage')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/LinkButton')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/extenders')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/models/Post')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/PostsUserPage')\"","webpack://@flarum/likes/./src/forum/components/LikesUserPage.tsx","webpack://@flarum/likes/./src/forum/extend.ts","webpack://@flarum/likes/./src/forum/index.js","webpack://@flarum/likes/./src/forum/addLikeAction.js","webpack://@flarum/likes/./src/forum/addLikesList.js","webpack://@flarum/likes/./src/forum/addLikesTabToUserProfile.tsx"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extend');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/app');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Button');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/CommentPost');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Link');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/helpers/punctuateSeries');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/helpers/username');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Icon');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Modal');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Avatar');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/states/PaginatedListState');","import PaginatedListState from 'flarum/common/states/PaginatedListState';\nexport default class PostLikesModalState extends PaginatedListState {\n constructor(params, page) {\n if (page === void 0) {\n page = 1;\n }\n const limit = 10;\n params.page = {\n ...(params.page || {}),\n limit\n };\n super(params, page, limit);\n }\n get type() {\n return 'users';\n }\n}\nflarum.reg.add('flarum-likes', 'forum/states/PostLikesModalState', PostLikesModalState);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/LoadingIndicator');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Form');","import app from 'flarum/forum/app';\nimport Modal from 'flarum/common/components/Modal';\nimport Link from 'flarum/common/components/Link';\nimport Avatar from 'flarum/common/components/Avatar';\nimport username from 'flarum/common/helpers/username';\nimport PostLikesModalState from '../states/PostLikesModalState';\nimport Button from 'flarum/common/components/Button';\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\nimport Form from 'flarum/common/components/Form';\nexport default class PostLikesModal extends Modal {\n oninit(vnode) {\n super.oninit(vnode);\n this.state = new PostLikesModalState({\n filter: {\n liked: this.attrs.post.id()\n }\n });\n this.state.refresh();\n }\n className() {\n return 'PostLikesModal Modal--small';\n }\n title() {\n return app.translator.trans('flarum-likes.forum.post_likes.title');\n }\n content() {\n return m('[', null, m(\"div\", {\n className: \"Modal-body\"\n }, this.state.isInitialLoading() ? m(LoadingIndicator, null) : m(\"ul\", {\n className: \"PostLikesModal-list\"\n }, this.state.getPages().map(page => page.items.map(user => m(\"li\", null, m(Link, {\n href: app.route.user(user)\n }, m(Avatar, {\n user: user\n }), \" \", username(user))))))), this.state.hasNext() ? m(\"div\", {\n className: \"Modal-footer\"\n }, m(Form, {\n className: \"Form--centered\"\n }, m(\"div\", {\n className: \"Form-group\"\n }, m(Button, {\n className: \"Button Button--block\",\n onclick: () => this.state.loadNext(),\n loading: this.state.isLoadingNext()\n }, app.translator.trans('flarum-likes.forum.post_likes.load_more_button'))))) : null);\n }\n}\nflarum.reg.add('flarum-likes', 'forum/components/PostLikesModal', PostLikesModal);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/Notification');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/utils/string');","import app from 'flarum/forum/app';\nimport Notification from 'flarum/forum/components/Notification';\nimport { truncate } from 'flarum/common/utils/string';\nexport default class PostLikedNotification extends Notification {\n icon() {\n return 'far fa-thumbs-up';\n }\n href() {\n return app.route.post(this.attrs.notification.subject());\n }\n content() {\n const notification = this.attrs.notification;\n const user = notification.fromUser();\n return app.translator.trans('flarum-likes.forum.notifications.post_liked_text', {\n user,\n count: 1\n });\n }\n excerpt() {\n return truncate(this.attrs.notification.subject().contentPlain(), 200);\n }\n}\nflarum.reg.add('flarum-likes', 'forum/components/PostLikedNotification', PostLikedNotification);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/UserPage');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/LinkButton');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extenders');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/models/Post');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/PostsUserPage');","import app from 'flarum/forum/app';\nimport PostsUserPage from 'flarum/forum/components/PostsUserPage';\n\n/**\n * The `LikesUserPage` component shows posts which user the user liked.\n */\nexport default class LikesUserPage extends PostsUserPage {\n /**\n * Load a new page of the user's activity feed.\n *\n * @param offset The position to start getting results from.\n * @protected\n */\n loadResults(offset) {\n return app.store.find('posts', {\n filter: {\n type: 'comment',\n likedBy: this.user.id()\n },\n page: {\n offset,\n limit: this.loadLimit\n },\n sort: '-createdAt'\n });\n }\n}\nflarum.reg.add('flarum-likes', 'forum/components/LikesUserPage', LikesUserPage);","import Extend from 'flarum/common/extenders';\nimport Post from 'flarum/common/models/Post';\nimport LikesUserPage from './components/LikesUserPage';\nexport default [new Extend.Routes() //\n.add('user.likes', '/u/:username/likes', LikesUserPage), new Extend.Model(Post) //\n.hasMany('likes').attribute('likesCount').attribute('canLike')];","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport addLikeAction from './addLikeAction';\nimport addLikesList from './addLikesList';\nimport PostLikedNotification from './components/PostLikedNotification';\nimport addLikesTabToUserProfile from './addLikesTabToUserProfile';\nexport { default as extend } from './extend';\napp.initializers.add('flarum-likes', () => {\n app.notificationComponents.postLiked = PostLikedNotification;\n addLikeAction();\n addLikesList();\n addLikesTabToUserProfile();\n extend('flarum/forum/components/NotificationGrid', '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});","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport Button from 'flarum/common/components/Button';\nimport CommentPost from 'flarum/forum/components/CommentPost';\nexport default function () {\n extend(CommentPost.prototype, 'actionItems', function (items) {\n const post = this.attrs.post;\n if (post.isHidden() || !post.canLike()) return;\n const likes = post.likes();\n let isLiked = app.session.user && likes && likes.some(user => user === app.session.user);\n items.add('like', m(Button, {\n className: \"Button Button--link\",\n onclick: () => {\n isLiked = !isLiked;\n post.save({\n isLiked\n });\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 if (isLiked) {\n data.unshift({\n type: 'users',\n id: app.session.user.id()\n });\n }\n }\n }, app.translator.trans(isLiked ? 'flarum-likes.forum.post.unlike_link' : 'flarum-likes.forum.post.like_link')));\n });\n}","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport CommentPost from 'flarum/forum/components/CommentPost';\nimport Link from 'flarum/common/components/Link';\nimport punctuateSeries from 'flarum/common/helpers/punctuateSeries';\nimport username from 'flarum/common/helpers/username';\nimport Icon from 'flarum/common/components/Icon';\nimport Button from 'flarum/common/components/Button';\nimport PostLikesModal from './components/PostLikesModal';\nexport default function () {\n extend(CommentPost.prototype, 'footerItems', function (items) {\n const post = this.attrs.post;\n const likes = post.likes();\n if (likes && likes.length) {\n const limit = 4;\n const overLimit = post.likesCount() > 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).slice(0, overLimit ? limit - 1 : limit).map(user => {\n return m(Link, {\n href: app.route.user(user)\n }, user === app.session.user ? app.translator.trans('flarum-likes.forum.post.you_text') : username(user));\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 = post.likesCount() - names.length;\n const label = app.translator.trans('flarum-likes.forum.post.others_link', {\n count\n });\n if (app.forum.attribute('canSearchUsers')) {\n names.push(m(Button, {\n className: \"Button Button--ua-reset Button--text\",\n onclick: e => {\n e.preventDefault();\n app.modal.show(PostLikesModal, {\n post\n });\n }\n }, label));\n } else {\n names.push(m(\"span\", null, label));\n }\n }\n items.add('liked', m(\"div\", {\n className: \"Post-likedBy\"\n }, m(Icon, {\n name: 'far fa-thumbs-up'\n }), app.translator.trans(\"flarum-likes.forum.post.liked_by\".concat(likes[0] === app.session.user ? '_self' : '', \"_text\"), {\n count: names.length,\n users: punctuateSeries(names)\n })));\n }\n });\n}","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport UserPage from 'flarum/forum/components/UserPage';\nimport LinkButton from 'flarum/common/components/LinkButton';\nexport default function addLikesTabToUserProfile() {\n extend(UserPage.prototype, 'navItems', function (items) {\n const user = this.user;\n items.add('likes', m(LinkButton, {\n href: app.route('user.likes', {\n username: user == null ? void 0 : user.slug()\n }),\n icon: \"far fa-thumbs-up\"\n }, app.translator.trans('flarum-likes.forum.user.likes_link')), 88);\n });\n}"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","flarum","reg","PostLikesModalState","constructor","params","page","limit","super","type","add","PostLikesModal","oninit","vnode","this","state","filter","liked","attrs","post","id","refresh","className","title","content","m","isInitialLoading","getPages","map","items","user","href","hasNext","onclick","loadNext","loading","isLoadingNext","PostLikedNotification","icon","notification","subject","fromUser","count","excerpt","truncate","contentPlain","LikesUserPage","loadResults","offset","likedBy","loadLimit","sort","hasMany","attribute","extend","isHidden","canLike","likes","isLiked","some","save","data","relationships","like","i","splice","unshift","length","overLimit","likesCount","names","slice","label","push","e","preventDefault","name","concat","users","username","slug"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@flarum/likes/webpack/bootstrap","webpack://@flarum/likes/webpack/runtime/compat get default export","webpack://@flarum/likes/webpack/runtime/define property getters","webpack://@flarum/likes/webpack/runtime/hasOwnProperty shorthand","webpack://@flarum/likes/webpack/runtime/make namespace object","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/extend')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/app')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Button')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/CommentPost')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Link')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/helpers/punctuateSeries')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/helpers/username')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Icon')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Modal')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Avatar')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/states/PaginatedListState')\"","webpack://@flarum/likes/./src/forum/states/PostLikesModalState.ts","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/LoadingIndicator')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/Form')\"","webpack://@flarum/likes/./src/forum/components/PostLikesModal.tsx","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/UserPage')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/components/LinkButton')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/extenders')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/models/Post')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/PostsUserPage')\"","webpack://@flarum/likes/./src/forum/components/LikesUserPage.tsx","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'forum/components/Notification')\"","webpack://@flarum/likes/external root \"flarum.reg.get('core', 'common/utils/string')\"","webpack://@flarum/likes/./src/forum/components/PostLikedNotification.js","webpack://@flarum/likes/./src/forum/extend.ts","webpack://@flarum/likes/./src/forum/index.js","webpack://@flarum/likes/./src/forum/addLikeAction.js","webpack://@flarum/likes/./src/forum/addLikesList.js","webpack://@flarum/likes/./src/forum/addLikesTabToUserProfile.tsx"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extend');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/app');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Button');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/CommentPost');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Link');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/helpers/punctuateSeries');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/helpers/username');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Icon');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Modal');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Avatar');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/states/PaginatedListState');","import PaginatedListState from 'flarum/common/states/PaginatedListState';\nexport default class PostLikesModalState extends PaginatedListState {\n constructor(params, page) {\n if (page === void 0) {\n page = 1;\n }\n const limit = 10;\n params.page = {\n ...(params.page || {}),\n limit\n };\n super(params, page, limit);\n }\n get type() {\n return 'users';\n }\n}\nflarum.reg.add('flarum-likes', 'forum/states/PostLikesModalState', PostLikesModalState);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/LoadingIndicator');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Form');","import app from 'flarum/forum/app';\nimport Modal from 'flarum/common/components/Modal';\nimport Link from 'flarum/common/components/Link';\nimport Avatar from 'flarum/common/components/Avatar';\nimport username from 'flarum/common/helpers/username';\nimport PostLikesModalState from '../states/PostLikesModalState';\nimport Button from 'flarum/common/components/Button';\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\nimport Form from 'flarum/common/components/Form';\nexport default class PostLikesModal extends Modal {\n oninit(vnode) {\n super.oninit(vnode);\n this.state = new PostLikesModalState({\n filter: {\n liked: this.attrs.post.id()\n }\n });\n this.state.refresh();\n }\n className() {\n return 'PostLikesModal Modal--small';\n }\n title() {\n return app.translator.trans('flarum-likes.forum.post_likes.title');\n }\n content() {\n return m('[', null, m(\"div\", {\n className: \"Modal-body\"\n }, this.state.isInitialLoading() ? m(LoadingIndicator, null) : m(\"ul\", {\n className: \"PostLikesModal-list\"\n }, this.state.getPages().map(page => page.items.map(user => m(\"li\", null, m(Link, {\n href: app.route.user(user)\n }, m(Avatar, {\n user: user\n }), \" \", username(user))))))), this.state.hasNext() ? m(\"div\", {\n className: \"Modal-footer\"\n }, m(Form, {\n className: \"Form--centered\"\n }, m(\"div\", {\n className: \"Form-group\"\n }, m(Button, {\n className: \"Button Button--block\",\n onclick: () => this.state.loadNext(),\n loading: this.state.isLoadingNext()\n }, app.translator.trans('flarum-likes.forum.post_likes.load_more_button'))))) : null);\n }\n}\nflarum.reg.add('flarum-likes', 'forum/components/PostLikesModal', PostLikesModal);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/UserPage');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/LinkButton');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extenders');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/models/Post');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/PostsUserPage');","import app from 'flarum/forum/app';\nimport PostsUserPage from 'flarum/forum/components/PostsUserPage';\n\n/**\n * The `LikesUserPage` component shows posts which user the user liked.\n */\nexport default class LikesUserPage extends PostsUserPage {\n /**\n * Load a new page of the user's activity feed.\n *\n * @param offset The position to start getting results from.\n * @protected\n */\n loadResults(offset) {\n return app.store.find('posts', {\n filter: {\n type: 'comment',\n likedBy: this.user.id()\n },\n page: {\n offset,\n limit: this.loadLimit\n },\n sort: '-createdAt'\n });\n }\n}\nflarum.reg.add('flarum-likes', 'forum/components/LikesUserPage', LikesUserPage);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/Notification');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/utils/string');","import app from 'flarum/forum/app';\nimport Notification from 'flarum/forum/components/Notification';\nimport { truncate } from 'flarum/common/utils/string';\nexport default class PostLikedNotification extends Notification {\n icon() {\n return 'far fa-thumbs-up';\n }\n href() {\n return app.route.post(this.attrs.notification.subject());\n }\n content() {\n const notification = this.attrs.notification;\n const user = notification.fromUser();\n return app.translator.trans('flarum-likes.forum.notifications.post_liked_text', {\n user,\n count: 1\n });\n }\n excerpt() {\n return truncate(this.attrs.notification.subject().contentPlain(), 200);\n }\n}\nflarum.reg.add('flarum-likes', 'forum/components/PostLikedNotification', PostLikedNotification);","import Extend from 'flarum/common/extenders';\nimport Post from 'flarum/common/models/Post';\nimport LikesUserPage from './components/LikesUserPage';\nimport PostLikedNotification from './components/PostLikedNotification';\nexport default [new Extend.Routes() //\n.add('user.likes', '/u/:username/likes', LikesUserPage), new Extend.Notification() //\n.add('postLiked', PostLikedNotification), new Extend.Model(Post) //\n.hasMany('likes').attribute('likesCount').attribute('canLike')];","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport addLikeAction from './addLikeAction';\nimport addLikesList from './addLikesList';\nimport addLikesTabToUserProfile from './addLikesTabToUserProfile';\nexport { default as extend } from './extend';\napp.initializers.add('flarum-likes', () => {\n addLikeAction();\n addLikesList();\n addLikesTabToUserProfile();\n extend('flarum/forum/components/NotificationGrid', '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});","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport Button from 'flarum/common/components/Button';\nimport CommentPost from 'flarum/forum/components/CommentPost';\nexport default function () {\n extend(CommentPost.prototype, 'actionItems', function (items) {\n const post = this.attrs.post;\n if (post.isHidden() || !post.canLike()) return;\n const likes = post.likes();\n let isLiked = app.session.user && likes && likes.some(user => user === app.session.user);\n items.add('like', m(Button, {\n className: \"Button Button--link\",\n onclick: () => {\n isLiked = !isLiked;\n post.save({\n isLiked\n });\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 if (isLiked) {\n data.unshift({\n type: 'users',\n id: app.session.user.id()\n });\n }\n }\n }, app.translator.trans(isLiked ? 'flarum-likes.forum.post.unlike_link' : 'flarum-likes.forum.post.like_link')));\n });\n}","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport CommentPost from 'flarum/forum/components/CommentPost';\nimport Link from 'flarum/common/components/Link';\nimport punctuateSeries from 'flarum/common/helpers/punctuateSeries';\nimport username from 'flarum/common/helpers/username';\nimport Icon from 'flarum/common/components/Icon';\nimport Button from 'flarum/common/components/Button';\nimport PostLikesModal from './components/PostLikesModal';\nexport default function () {\n extend(CommentPost.prototype, 'footerItems', function (items) {\n const post = this.attrs.post;\n const likes = post.likes();\n if (likes && likes.length) {\n const limit = 4;\n const overLimit = post.likesCount() > 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).slice(0, overLimit ? limit - 1 : limit).map(user => {\n return m(Link, {\n href: app.route.user(user)\n }, user === app.session.user ? app.translator.trans('flarum-likes.forum.post.you_text') : username(user));\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 = post.likesCount() - names.length;\n const label = app.translator.trans('flarum-likes.forum.post.others_link', {\n count\n });\n if (app.forum.attribute('canSearchUsers')) {\n names.push(m(Button, {\n className: \"Button Button--ua-reset Button--text\",\n onclick: e => {\n e.preventDefault();\n app.modal.show(PostLikesModal, {\n post\n });\n }\n }, label));\n } else {\n names.push(m(\"span\", null, label));\n }\n }\n items.add('liked', m(\"div\", {\n className: \"Post-likedBy\"\n }, m(Icon, {\n name: 'far fa-thumbs-up'\n }), app.translator.trans(\"flarum-likes.forum.post.liked_by\".concat(likes[0] === app.session.user ? '_self' : '', \"_text\"), {\n count: names.length,\n users: punctuateSeries(names)\n })));\n }\n });\n}","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport UserPage from 'flarum/forum/components/UserPage';\nimport LinkButton from 'flarum/common/components/LinkButton';\nexport default function addLikesTabToUserProfile() {\n extend(UserPage.prototype, 'navItems', function (items) {\n const user = this.user;\n items.add('likes', m(LinkButton, {\n href: app.route('user.likes', {\n username: user == null ? void 0 : user.slug()\n }),\n icon: \"far fa-thumbs-up\"\n }, app.translator.trans('flarum-likes.forum.user.likes_link')), 88);\n });\n}"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","flarum","reg","PostLikesModalState","constructor","params","page","limit","super","type","add","PostLikesModal","oninit","vnode","this","state","filter","liked","attrs","post","id","refresh","className","title","content","m","isInitialLoading","getPages","map","items","user","href","hasNext","onclick","loadNext","loading","isLoadingNext","LikesUserPage","loadResults","offset","likedBy","loadLimit","sort","PostLikedNotification","icon","notification","subject","fromUser","count","excerpt","truncate","contentPlain","hasMany","attribute","extend","isHidden","canLike","likes","isLiked","some","save","data","relationships","like","i","splice","unshift","length","overLimit","likesCount","names","slice","label","push","e","preventDefault","name","concat","users","username","slug"],"sourceRoot":""} \ No newline at end of file diff --git a/extensions/lock/js/dist/forum.js b/extensions/lock/js/dist/forum.js index 68f564d67..0c47abe18 100644 --- a/extensions/lock/js/dist/forum.js +++ b/extensions/lock/js/dist/forum.js @@ -1,2 +1,2 @@ -(()=>{var o={n:e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},d:(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o:(o,e)=>Object.prototype.hasOwnProperty.call(o,e),r:o=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})}},e={};(()=>{"use strict";o.r(e),o.d(e,{extend:()=>D});const t=flarum.reg.get("core","common/extend"),n=flarum.reg.get("core","forum/app");var r=o.n(n);const s=flarum.reg.get("core","forum/components/Notification");var c=o.n(s);class a extends(c()){icon(){return"fas fa-lock"}href(){const o=this.attrs.notification;return r().route.discussion(o.subject(),o.content().postNumber)}content(){return r().translator.trans("flarum-lock.forum.notifications.discussion_locked_text",{user:this.attrs.notification.fromUser()})}excerpt(){return null}}flarum.reg.add("flarum-lock","forum/components/DiscussionLockedNotification",a);const i=flarum.reg.get("core","common/models/Discussion");var l=o.n(i);const u=flarum.reg.get("core","common/components/Badge");var d=o.n(u);const f=flarum.reg.get("core","forum/utils/DiscussionControls");var k=o.n(f);const g=flarum.reg.get("core","forum/components/DiscussionPage");var p=o.n(g);const b=flarum.reg.get("core","common/components/Button");var y=o.n(b);const _=flarum.reg.get("core","common/extenders");var v=o.n(_);const x=flarum.reg.get("core","forum/components/EventPost");var L=o.n(x);class h extends(L()){icon(){return this.attrs.post.content().locked?"fas fa-lock":"fas fa-unlock"}descriptionKey(){return this.attrs.post.content().locked?"flarum-lock.forum.post_stream.discussion_locked_text":"flarum-lock.forum.post_stream.discussion_unlocked_text"}}flarum.reg.add("flarum-lock","forum/components/DiscussionLockedPost",h);const P=flarum.reg.get("core","common/query/IGambit"),S=flarum.reg.get("core","common/app");var j=o.n(S);class w extends P.BooleanGambit{key(){return j().translator.trans("flarum-lock.lib.gambits.discussions.locked.key",{},!0)}filterKey(){return"locked"}}flarum.reg.add("flarum-lock","common/query/discussions/LockedGambit",w);const D=[(new(v().Search)).gambit("discussions",w),(new(v().PostTypes)).add("discussionLocked",h),new(v().Model)(l()).attribute("isLocked").attribute("canLock")];r().initializers.add("flarum-lock",(()=>{r().notificationComponents.discussionLocked=a,(0,t.extend)(l().prototype,"badges",(function(o){this.isLocked()&&o.add("locked",m(d(),{type:"locked",label:r().translator.trans("flarum-lock.forum.badge.locked_tooltip"),icon:"fas fa-lock"}))})),(0,t.extend)(k(),"moderationControls",(function(o,e){e.canLock()&&o.add("lock",m(y(),{icon:"fas fa-lock",onclick:this.lockAction.bind(e)},r().translator.trans("flarum-lock.forum.discussion_controls.".concat(e.isLocked()?"unlock":"lock","_button"))))})),k().lockAction=function(){this.save({isLocked:!this.isLocked()}).then((()=>{r().current.matches(p())&&r().current.get("stream").update(),m.redraw()}))},(0,t.extend)("flarum/forum/components/NotificationGrid","notificationTypes",(function(o){o.add("discussionLocked",{name:"discussionLocked",icon:"fas fa-lock",label:r().translator.trans("flarum-lock.forum.settings.notify_discussion_locked_label")})}))}))})(),module.exports=e})(); +(()=>{var o={n:e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},d:(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o:(o,e)=>Object.prototype.hasOwnProperty.call(o,e),r:o=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})}},e={};(()=>{"use strict";o.r(e),o.d(e,{extend:()=>N});const t=flarum.reg.get("core","common/extend"),n=flarum.reg.get("core","forum/app");var r=o.n(n);const s=flarum.reg.get("core","common/models/Discussion");var c=o.n(s);const a=flarum.reg.get("core","common/components/Badge");var i=o.n(a);const l=flarum.reg.get("core","forum/utils/DiscussionControls");var u=o.n(l);const d=flarum.reg.get("core","forum/components/DiscussionPage");var f=o.n(d);const k=flarum.reg.get("core","common/components/Button");var g=o.n(k);const p=flarum.reg.get("core","common/extenders");var b=o.n(p);const y=flarum.reg.get("core","forum/components/EventPost");var _=o.n(y);class v extends(_()){icon(){return this.attrs.post.content().locked?"fas fa-lock":"fas fa-unlock"}descriptionKey(){return this.attrs.post.content().locked?"flarum-lock.forum.post_stream.discussion_locked_text":"flarum-lock.forum.post_stream.discussion_unlocked_text"}}flarum.reg.add("flarum-lock","forum/components/DiscussionLockedPost",v);const x=flarum.reg.get("core","common/query/IGambit"),L=flarum.reg.get("core","common/app");var h=o.n(L);class P extends x.BooleanGambit{key(){return h().translator.trans("flarum-lock.lib.gambits.discussions.locked.key",{},!0)}filterKey(){return"locked"}}flarum.reg.add("flarum-lock","common/query/discussions/LockedGambit",P);const w=[(new(b().Search)).gambit("discussions",P)],S=flarum.reg.get("core","forum/components/Notification");var j=o.n(S);class D extends(j()){icon(){return"fas fa-lock"}href(){const o=this.attrs.notification;return r().route.discussion(o.subject(),o.content().postNumber)}content(){return r().translator.trans("flarum-lock.forum.notifications.discussion_locked_text",{user:this.attrs.notification.fromUser()})}excerpt(){return null}}flarum.reg.add("flarum-lock","forum/components/DiscussionLockedNotification",D);const N=[...w,(new(b().PostTypes)).add("discussionLocked",v),(new(b().Notification)).add("discussionLocked",D),new(b().Model)(c()).attribute("isLocked").attribute("canLock")];r().initializers.add("flarum-lock",(()=>{(0,t.extend)(c().prototype,"badges",(function(o){this.isLocked()&&o.add("locked",m(i(),{type:"locked",label:r().translator.trans("flarum-lock.forum.badge.locked_tooltip"),icon:"fas fa-lock"}))})),(0,t.extend)(u(),"moderationControls",(function(o,e){e.canLock()&&o.add("lock",m(g(),{icon:"fas fa-lock",onclick:this.lockAction.bind(e)},r().translator.trans("flarum-lock.forum.discussion_controls.".concat(e.isLocked()?"unlock":"lock","_button"))))})),u().lockAction=function(){this.save({isLocked:!this.isLocked()}).then((()=>{r().current.matches(f())&&r().current.get("stream").update(),m.redraw()}))},(0,t.extend)("flarum/forum/components/NotificationGrid","notificationTypes",(function(o){o.add("discussionLocked",{name:"discussionLocked",icon:"fas fa-lock",label:r().translator.trans("flarum-lock.forum.settings.notify_discussion_locked_label")})}))}))})(),module.exports=e})(); //# sourceMappingURL=forum.js.map \ No newline at end of file diff --git a/extensions/lock/js/dist/forum.js.map b/extensions/lock/js/dist/forum.js.map index 00e50cf7d..db0875186 100644 --- a/extensions/lock/js/dist/forum.js.map +++ b/extensions/lock/js/dist/forum.js.map @@ -1 +1 @@ -{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@flarum/lock/webpack/bootstrap","webpack://@flarum/lock/webpack/runtime/compat get default export","webpack://@flarum/lock/webpack/runtime/define property getters","webpack://@flarum/lock/webpack/runtime/hasOwnProperty shorthand","webpack://@flarum/lock/webpack/runtime/make namespace object","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/extend')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/app')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/components/Notification')\"","webpack://@flarum/lock/./src/forum/components/DiscussionLockedNotification.js","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/models/Discussion')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/components/Badge')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/utils/DiscussionControls')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/components/DiscussionPage')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/components/Button')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/extenders')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/components/EventPost')\"","webpack://@flarum/lock/./src/forum/components/DiscussionLockedPost.js","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/query/IGambit')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/app')\"","webpack://@flarum/lock/./src/common/query/discussions/LockedGambit.ts","webpack://@flarum/lock/./src/common/extend.ts","webpack://@flarum/lock/./src/forum/extend.ts","webpack://@flarum/lock/./src/forum/index.js","webpack://@flarum/lock/./src/forum/addLockBadge.js","webpack://@flarum/lock/./src/forum/addLockControl.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extend');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/app');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/Notification');","import app from 'flarum/forum/app';\nimport Notification from 'flarum/forum/components/Notification';\nexport default class DiscussionLockedNotification extends Notification {\n icon() {\n return 'fas fa-lock';\n }\n href() {\n const notification = this.attrs.notification;\n return app.route.discussion(notification.subject(), notification.content().postNumber);\n }\n content() {\n return app.translator.trans('flarum-lock.forum.notifications.discussion_locked_text', {\n user: this.attrs.notification.fromUser()\n });\n }\n excerpt() {\n return null;\n }\n}\nflarum.reg.add('flarum-lock', 'forum/components/DiscussionLockedNotification', DiscussionLockedNotification);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/models/Discussion');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Badge');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/utils/DiscussionControls');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/DiscussionPage');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Button');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extenders');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/EventPost');","import EventPost from 'flarum/forum/components/EventPost';\nexport default class DiscussionLockedPost extends EventPost {\n icon() {\n return this.attrs.post.content().locked ? 'fas fa-lock' : 'fas fa-unlock';\n }\n descriptionKey() {\n return this.attrs.post.content().locked ? 'flarum-lock.forum.post_stream.discussion_locked_text' : 'flarum-lock.forum.post_stream.discussion_unlocked_text';\n }\n}\nflarum.reg.add('flarum-lock', 'forum/components/DiscussionLockedPost', DiscussionLockedPost);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/query/IGambit');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/app');","import { BooleanGambit } from 'flarum/common/query/IGambit';\nimport app from 'flarum/common/app';\nexport default class LockedGambit extends BooleanGambit {\n key() {\n return app.translator.trans('flarum-lock.lib.gambits.discussions.locked.key', {}, true);\n }\n filterKey() {\n return 'locked';\n }\n}\nflarum.reg.add('flarum-lock', 'common/query/discussions/LockedGambit', LockedGambit);","import Extend from 'flarum/common/extenders';\nimport LockedGambit from './query/discussions/LockedGambit';\nexport default [new Extend.Search() //\n.gambit('discussions', LockedGambit)];","import Extend from 'flarum/common/extenders';\nimport Discussion from 'flarum/common/models/Discussion';\nimport DiscussionLockedPost from './components/DiscussionLockedPost';\nimport commonExtend from '../common/extend';\nexport default [...commonExtend, new Extend.PostTypes() //\n.add('discussionLocked', DiscussionLockedPost), new Extend.Model(Discussion) //\n.attribute('isLocked').attribute('canLock')];","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport DiscussionLockedNotification from './components/DiscussionLockedNotification';\nimport addLockBadge from './addLockBadge';\nimport addLockControl from './addLockControl';\nexport { default as extend } from './extend';\napp.initializers.add('flarum-lock', () => {\n app.notificationComponents.discussionLocked = DiscussionLockedNotification;\n addLockBadge();\n addLockControl();\n extend('flarum/forum/components/NotificationGrid', 'notificationTypes', function (items) {\n items.add('discussionLocked', {\n name: 'discussionLocked',\n icon: 'fas fa-lock',\n label: app.translator.trans('flarum-lock.forum.settings.notify_discussion_locked_label')\n });\n });\n});","import app from 'flarum/forum/app';\nimport { extend } from 'flarum/common/extend';\nimport Discussion from 'flarum/common/models/Discussion';\nimport Badge from 'flarum/common/components/Badge';\nexport default function addLockBadge() {\n extend(Discussion.prototype, 'badges', function (badges) {\n if (this.isLocked()) {\n badges.add('locked', m(Badge, {\n type: \"locked\",\n label: app.translator.trans('flarum-lock.forum.badge.locked_tooltip'),\n icon: \"fas fa-lock\"\n }));\n }\n });\n}","import app from 'flarum/forum/app';\nimport { extend } from 'flarum/common/extend';\nimport DiscussionControls from 'flarum/forum/utils/DiscussionControls';\nimport DiscussionPage from 'flarum/forum/components/DiscussionPage';\nimport Button from 'flarum/common/components/Button';\nexport default function addLockControl() {\n extend(DiscussionControls, 'moderationControls', function (items, discussion) {\n if (discussion.canLock()) {\n items.add('lock', m(Button, {\n icon: \"fas fa-lock\",\n onclick: this.lockAction.bind(discussion)\n }, app.translator.trans(\"flarum-lock.forum.discussion_controls.\".concat(discussion.isLocked() ? 'unlock' : 'lock', \"_button\"))));\n }\n });\n DiscussionControls.lockAction = function () {\n this.save({\n isLocked: !this.isLocked()\n }).then(() => {\n if (app.current.matches(DiscussionPage)) {\n app.current.get('stream').update();\n }\n m.redraw();\n });\n };\n}"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","flarum","reg","DiscussionLockedNotification","icon","href","notification","this","attrs","subject","content","postNumber","user","fromUser","excerpt","add","DiscussionLockedPost","post","locked","descriptionKey","LockedGambit","BooleanGambit","filterKey","gambit","attribute","extend","badges","isLocked","m","type","label","items","discussion","canLock","onclick","lockAction","bind","concat","save","then","update","redraw","name"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@flarum/lock/webpack/bootstrap","webpack://@flarum/lock/webpack/runtime/compat get default export","webpack://@flarum/lock/webpack/runtime/define property getters","webpack://@flarum/lock/webpack/runtime/hasOwnProperty shorthand","webpack://@flarum/lock/webpack/runtime/make namespace object","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/extend')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/app')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/models/Discussion')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/components/Badge')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/utils/DiscussionControls')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/components/DiscussionPage')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/components/Button')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/extenders')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/components/EventPost')\"","webpack://@flarum/lock/./src/forum/components/DiscussionLockedPost.js","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/query/IGambit')\"","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'common/app')\"","webpack://@flarum/lock/./src/common/query/discussions/LockedGambit.ts","webpack://@flarum/lock/./src/common/extend.ts","webpack://@flarum/lock/external root \"flarum.reg.get('core', 'forum/components/Notification')\"","webpack://@flarum/lock/./src/forum/components/DiscussionLockedNotification.js","webpack://@flarum/lock/./src/forum/extend.ts","webpack://@flarum/lock/./src/forum/index.js","webpack://@flarum/lock/./src/forum/addLockBadge.js","webpack://@flarum/lock/./src/forum/addLockControl.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extend');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/app');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/models/Discussion');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Badge');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/utils/DiscussionControls');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/DiscussionPage');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/components/Button');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/extenders');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/EventPost');","import EventPost from 'flarum/forum/components/EventPost';\nexport default class DiscussionLockedPost extends EventPost {\n icon() {\n return this.attrs.post.content().locked ? 'fas fa-lock' : 'fas fa-unlock';\n }\n descriptionKey() {\n return this.attrs.post.content().locked ? 'flarum-lock.forum.post_stream.discussion_locked_text' : 'flarum-lock.forum.post_stream.discussion_unlocked_text';\n }\n}\nflarum.reg.add('flarum-lock', 'forum/components/DiscussionLockedPost', DiscussionLockedPost);","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/query/IGambit');","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'common/app');","import { BooleanGambit } from 'flarum/common/query/IGambit';\nimport app from 'flarum/common/app';\nexport default class LockedGambit extends BooleanGambit {\n key() {\n return app.translator.trans('flarum-lock.lib.gambits.discussions.locked.key', {}, true);\n }\n filterKey() {\n return 'locked';\n }\n}\nflarum.reg.add('flarum-lock', 'common/query/discussions/LockedGambit', LockedGambit);","import Extend from 'flarum/common/extenders';\nimport LockedGambit from './query/discussions/LockedGambit';\nexport default [new Extend.Search() //\n.gambit('discussions', LockedGambit)];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.reg.get('core', 'forum/components/Notification');","import app from 'flarum/forum/app';\nimport Notification from 'flarum/forum/components/Notification';\nexport default class DiscussionLockedNotification extends Notification {\n icon() {\n return 'fas fa-lock';\n }\n href() {\n const notification = this.attrs.notification;\n return app.route.discussion(notification.subject(), notification.content().postNumber);\n }\n content() {\n return app.translator.trans('flarum-lock.forum.notifications.discussion_locked_text', {\n user: this.attrs.notification.fromUser()\n });\n }\n excerpt() {\n return null;\n }\n}\nflarum.reg.add('flarum-lock', 'forum/components/DiscussionLockedNotification', DiscussionLockedNotification);","import Extend from 'flarum/common/extenders';\nimport Discussion from 'flarum/common/models/Discussion';\nimport DiscussionLockedPost from './components/DiscussionLockedPost';\nimport commonExtend from '../common/extend';\nimport DiscussionLockedNotification from './components/DiscussionLockedNotification';\nexport default [...commonExtend, new Extend.PostTypes() //\n.add('discussionLocked', DiscussionLockedPost), new Extend.Notification() //\n.add('discussionLocked', DiscussionLockedNotification), new Extend.Model(Discussion) //\n.attribute('isLocked').attribute('canLock')];","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport addLockBadge from './addLockBadge';\nimport addLockControl from './addLockControl';\nexport { default as extend } from './extend';\napp.initializers.add('flarum-lock', () => {\n addLockBadge();\n addLockControl();\n extend('flarum/forum/components/NotificationGrid', 'notificationTypes', function (items) {\n items.add('discussionLocked', {\n name: 'discussionLocked',\n icon: 'fas fa-lock',\n label: app.translator.trans('flarum-lock.forum.settings.notify_discussion_locked_label')\n });\n });\n});","import app from 'flarum/forum/app';\nimport { extend } from 'flarum/common/extend';\nimport Discussion from 'flarum/common/models/Discussion';\nimport Badge from 'flarum/common/components/Badge';\nexport default function addLockBadge() {\n extend(Discussion.prototype, 'badges', function (badges) {\n if (this.isLocked()) {\n badges.add('locked', m(Badge, {\n type: \"locked\",\n label: app.translator.trans('flarum-lock.forum.badge.locked_tooltip'),\n icon: \"fas fa-lock\"\n }));\n }\n });\n}","import app from 'flarum/forum/app';\nimport { extend } from 'flarum/common/extend';\nimport DiscussionControls from 'flarum/forum/utils/DiscussionControls';\nimport DiscussionPage from 'flarum/forum/components/DiscussionPage';\nimport Button from 'flarum/common/components/Button';\nexport default function addLockControl() {\n extend(DiscussionControls, 'moderationControls', function (items, discussion) {\n if (discussion.canLock()) {\n items.add('lock', m(Button, {\n icon: \"fas fa-lock\",\n onclick: this.lockAction.bind(discussion)\n }, app.translator.trans(\"flarum-lock.forum.discussion_controls.\".concat(discussion.isLocked() ? 'unlock' : 'lock', \"_button\"))));\n }\n });\n DiscussionControls.lockAction = function () {\n this.save({\n isLocked: !this.isLocked()\n }).then(() => {\n if (app.current.matches(DiscussionPage)) {\n app.current.get('stream').update();\n }\n m.redraw();\n });\n };\n}"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","flarum","reg","DiscussionLockedPost","icon","this","attrs","post","content","locked","descriptionKey","add","LockedGambit","BooleanGambit","filterKey","gambit","DiscussionLockedNotification","href","notification","subject","postNumber","user","fromUser","excerpt","attribute","extend","badges","isLocked","m","type","label","items","discussion","canLock","onclick","lockAction","bind","concat","save","then","update","redraw","name"],"sourceRoot":""} \ No newline at end of file diff --git a/extensions/mentions/js/dist/forum.js b/extensions/mentions/js/dist/forum.js index 141fca393..ee2b9c1b2 100644 --- a/extensions/mentions/js/dist/forum.js +++ b/extensions/mentions/js/dist/forum.js @@ -1,2 +1,2 @@ -(()=>{var t={n:e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},d:(e,n)=>{for(var o in n)t.o(n,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};(()=>{"use strict";t.r(e),t.d(e,{extend:()=>Ot,filterGroupMentions:()=>Yt,filterPostMentions:()=>Qt,filterTagMentions:()=>Vt,filterUserMentions:()=>Jt,postFilterGroupMentions:()=>Kt,postFilterPostMentions:()=>Xt,postFilterTagMentions:()=>Zt,postFilterUserMentions:()=>zt});const n=flarum.reg.get("core","common/extend"),o=flarum.reg.get("core","forum/app");var s=t.n(o);const r=flarum.reg.get("core","common/utils/string"),i=flarum.reg.get("core","common/helpers/textContrastClass");var a=t.n(i);const u=flarum.reg.get("core","forum/components/Post");var l=t.n(u);const c=flarum.reg.get("core","forum/components/CommentPost");var d=t.n(c);const f=flarum.reg.get("core","forum/components/PostPreview");var p=t.n(f);const h=flarum.reg.get("core","common/components/LoadingIndicator");var g=t.n(h);const b=flarum.reg.get("core","common/components/Link");var y=t.n(b);const v=flarum.reg.get("core","common/helpers/punctuateSeries");var w=t.n(v);const M=flarum.reg.get("core","common/helpers/username");var x=t.n(M);const P=flarum.reg.get("core","common/components/Icon");var C=t.n(P);const A=flarum.reg.get("core","common/components/Button");var T=t.n(A);const B=flarum.reg.get("core","common/components/Modal");var D=t.n(B);const _=flarum.reg.get("core","common/states/PaginatedListState");var S=t.n(_);class N extends(S()){constructor(t,e){void 0===e&&(e=1),t.page={...t.page||{},limit:10},super(t,e,10)}get type(){return"posts"}}flarum.reg.add("flarum-mentions","forum/state/MentionedByModalState",N);const k=flarum.reg.get("core","common/components/Form");var F=t.n(k);class I extends(D()){oninit(t){super.oninit(t),this.state=new N({filter:{mentionedPost:this.attrs.post.id()},sort:"number"}),this.state.refresh()}className(){return"MentionedByModal"}title(){return s().translator.trans("flarum-mentions.forum.mentioned_by.title")}content(){return m("[",null,m("div",{className:"Modal-body"},this.state.isInitialLoading()?m(g(),null):m("[",null,m("ul",{className:"MentionedByModal-list Dropdown-menu Dropdown-menu--inline Post-mentionedBy-preview"},this.state.getPages().map((t=>t.items.map((t=>m("li",{"data-number":t.number()},m(p(),{post:t,onclick:()=>s().modal.close()}))))))))),this.state.hasNext()&&m("div",{className:"Modal-footer"},m(F(),{className:"Form--centered"},m("div",{className:"Form-group"},m(T(),{className:"Button Button--block",onclick:()=>this.state.loadNext(),loading:this.state.isLoadingNext()},s().translator.trans("flarum-mentions.forum.mentioned_by.load_more_button"))))))}}flarum.reg.add("flarum-mentions","forum/components/MentionedByModal",I);const R=flarum.reg.get("core","forum/utils/DiscussionControls");var L=t.n(R);function U(t,e,n){return new Promise((o=>{const r=s().mentionFormats.mentionable("post").replacement(t)+" ";e.fields.content()||(e.body.attrs.originalContent=r);const i=e.editor.getSelectionRange()[0],a=e.fields.content().slice(0,i),m=0==a.length?0:3-a.match(/(\n{0,2})$/)[0].length;return e.editor.insertAtCursor(Array(m).join("\n")+(n?"> "+r+n.trim().replace(/\n/g,"\n> ")+"\n\n":r),!1),o(e)}))}function j(t,e){const n=flarum.reg.checkModule("core","forum/components/EditPostComposer");return n&&s().composer.bodyMatches(n)&&s().composer.body.attrs.post.discussion()===t.discussion()?U(t,s().composer,e):L().replyAction.call(t.discussion()).then((n=>U(t,n,e)))}flarum.reg.add("flarum-mentions","forum/utils/reply",j);const E=flarum.reg.get("core","common/Fragment");var H=t.n(E);class G extends(H()){constructor(t){super(),this.post=t}view(){return m("button",{className:"Button PostQuoteButton",onclick:()=>{j(this.post,this.content)}},m(C(),{name:"fas fa-quote-left",className:"Button-icon"}),s().translator.trans("flarum-mentions.forum.post.quote_button"))}show(t,e){const n=this.$().show(),o=n.offsetParent().offset();n.css("left",t-o.left).css("top",e-o.top),this.hideHandler=this.hide.bind(this),$(document).on("mouseup",this.hideHandler)}showStart(t,e){const n=this.$();this.show(t,$(window).scrollTop()+e-n.outerHeight()-5)}showEnd(t,e){const n=this.$();this.show(t-n.outerWidth(),$(window).scrollTop()+e+5)}hide(){this.$().hide(),$(document).off("mouseup",this.hideHandler)}}function W(t){const e=window.getSelection();if(!e.isCollapsed){const n=e.getRangeAt(0),o=n.commonAncestorContainer;if(t[0]===o||$.contains(t[0],o)){const t=$("
").append(n.cloneContents());return t.find("img.emoji").replaceWith((function(){return this.alt})),t.find("img").replaceWith((function(){return"![](".concat(this.src,")")})),t.find("a").replaceWith((function(){return"[".concat(this.innerText,"](").concat(this.href,")")})),t.text()}}return""}flarum.reg.add("flarum-mentions","forum/fragments/PostQuoteButton",G),flarum.reg.add("flarum-mentions","forum/utils/selectedText",W);const q=flarum.reg.get("core","common/components/TextEditorButton");var O=t.n(q);const J=flarum.reg.get("core","common/utils/KeyboardNavigatable");var z=t.n(J);const Q=flarum.reg.get("core","common/utils/AutocompleteReader");var X=t.n(Q);const Y=flarum.reg.get("core","common/utils/throttleDebounce");function K(t){return K="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},K(t)}function V(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==K(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,e);if("object"!==K(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t,"string");return"symbol"===K(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class Z extends(H()){constructor(){super(...arguments),V(this,"items",[]),V(this,"active",!1),V(this,"index",0),V(this,"keyWasJustPressed",!1)}view(){return m("ul",{className:"Dropdown-menu MentionsDropdown"},this.items.map((t=>m("li",null,t))))}show(t,e){this.$().show().css({left:t+"px",top:e+"px"}),this.active=!0}hide(){this.$().hide(),this.active=!1}navigate(t){this.keyWasJustPressed=!0,this.setIndex(this.index+t,!0),clearTimeout(this.keyWasJustPressedTimeout),this.keyWasJustPressedTimeout=setTimeout((()=>this.keyWasJustPressed=!1),500)}complete(){this.$("li").eq(this.index).find("button").click()}setIndex(t,e){if(this.keyWasJustPressed&&!e)return;const n=this.$(),o=n.find("li");let s=t;s<0?s=o.length-1:s>=o.length&&(s=0),this.index=s;const r=o.removeClass("active").eq(s).addClass("active");if(e){const t=n.scrollTop(),e=n.offset().top,o=e+n.outerHeight(),s=r.offset().top,i=s+r.outerHeight();let a;so&&(a=t-o+i+parseInt(n.css("padding-bottom"),10)),void 0!==a&&n.stop(!0).animate({scrollTop:a},100)}}}flarum.reg.add("flarum-mentions","forum/fragments/AutocompleteDropdown",Z);const tt=flarum.reg.get("core","common/Component");var et=t.n(tt);const nt=flarum.reg.get("core","common/utils/classList");var ot=t.n(nt);class st extends(et()){view(t){const{mentionable:e,...n}=this.attrs,o=ot()("MentionsDropdownItem","PostPreview","MentionsDropdown-".concat(e.type()));return m("button",Object.assign({className:o},n),m("span",{className:"PostPreview-content"},t.children))}}flarum.reg.add("flarum-mentions","forum/components/MentionsDropdownItem",st);class rt{constructor(t){V(this,"mentionables",void 0),V(this,"results",{}),V(this,"typed",null),V(this,"searched",[]),V(this,"dropdownItemAttrs",{}),V(this,"search",(async()=>{if(!this.typed||this.typed.length<=1)return;const t=this.typed.toLowerCase();if(!this.searched.includes(t)){for(const e of this.mentionables)for(const n of await e.search(t))this.results[e.type()].has(n.id())||this.results[e.type()].set(n.id(),n);return this.searched.push(t),Promise.resolve()}})),this.dropdownItemAttrs=t}init(t){this.typed=null,this.mentionables=t;for(const t of this.mentionables)this.results[t.type()]=new Map(t.initialResults().map((t=>[t.id(),t])))}matches(t,e){var n;return t.matches(e,(null==(n=this.typed)?void 0:n.toLowerCase())||"")}makeSuggestion(t,e){const n=t.suggestion(e,this.typed),o=t.replacement(e),{onclick:s,...r}=this.dropdownItemAttrs;return m(st,Object.assign({mentionable:t,onclick:()=>s(o)},r),n)}buildSuggestions(){const t=[];for(const e of this.mentionables){if(!e.enabled())continue;let n=Array.from(this.results[e.type()].values()).filter((t=>this.matches(e,t)));const o=e.maxStoreMatchedResults();o&&(n=n.splice(0,o));for(const o of n){const n=this.makeSuggestion(e,o);t.push(n)}}return t}}flarum.reg.add("flarum-mentions","forum/mentionables/MentionableModels",rt);const it=flarum.reg.get("core","forum/components/Notification");var at=t.n(it);class mt extends(at()){icon(){return"fas fa-reply"}href(){const t=this.attrs.notification,e=t.subject(),n=t.content();return s().route.discussion(e.discussion(),n&&n.replyNumber)}content(){const t=this.attrs.notification.fromUser();return s().translator.trans("flarum-mentions.forum.notifications.post_mentioned_text",{user:t,count:1})}excerpt(){return(0,r.truncate)(this.attrs.notification.subject().contentPlain()||"",200)}}flarum.reg.add("flarum-mentions","forum/components/PostMentionedNotification",mt);class ut extends(at()){icon(){return"fas fa-at"}href(){const t=this.attrs.notification.subject();return s().route.discussion(t.discussion(),t.number())}content(){const t=this.attrs.notification.fromUser();return s().translator.trans("flarum-mentions.forum.notifications.user_mentioned_text",{user:t})}excerpt(){return(0,r.truncate)(this.attrs.notification.subject().contentPlain(),200)}}flarum.reg.add("flarum-mentions","forum/components/UserMentionedNotification",ut);class lt extends(at()){icon(){return"fas fa-at"}href(){const t=this.attrs.notification.subject();return s().route.discussion(t.discussion(),t.number())}content(){const t=this.attrs.notification.fromUser();return s().translator.trans("flarum-mentions.forum.notifications.group_mentioned_text",{user:t})}excerpt(){return(0,r.truncate)(this.attrs.notification.subject().contentPlain(),200)}}flarum.reg.add("flarum-mentions","forum/components/GroupMentionedNotification",lt);class ct{constructor(){V(this,"instances",void 0),V(this,"mentionables",void 0),V(this,"extendable",void 0)}makeMentionables(){var t;return null!=(t=this.instances)?t:this.instances=this.mentionables.map((t=>new t(this)))}getMentionable(t){var e;return null!=(e=this.makeMentionables().find((e=>e.type()===t)))?e:null}extend(t){if(!this.extendable)throw new Error("This mention format does not allow extending.");this.mentionables.push(t)}}flarum.reg.add("flarum-mentions","forum/mentionables/formats/MentionFormat",ct);const dt=flarum.reg.get("core","common/components/Avatar");var ft=t.n(dt);const pt=flarum.reg.get("core","common/helpers/highlight");var ht=t.n(pt);class gt{constructor(t){V(this,"format",void 0),this.format=t}}flarum.reg.add("flarum-mentions","forum/mentionables/MentionableModel",gt);const bt=flarum.reg.get("core","common/utils/extractText");var yt=t.n(bt);const vt=()=>yt()(s().translator.trans("core.lib.username.deleted_text"));function wt(t,e){return void 0===e&&(e=!0),t?((e?t.displayName():t.username())||vt()).replace(/"#[a-z]{0,3}[0-9]+/,"_"):vt().replace(/"#[a-z]{0,3}[0-9]+/,"_")}flarum.reg.add("flarum-mentions","forum/utils/getCleanDisplayName",wt);class Mt extends gt{type(){return"user"}initialResults(){return Array.from(s().store.all("users"))}replacement(t){if(s().forum.attribute("allowUsernameMentionFormat")){const e=wt(t,!1);return this.format.format(e)}const e=wt(t);return this.format.format(e,"",t.id())}suggestion(t,e){const n=x()(t,(t=>ht()(t,e)));return m("[",null,m(ft(),{user:t}),n)}matches(t,e){return!!e&&[t.username(),t.displayName()].some((t=>t.toLowerCase().substr(0,e.length)===e))}maxStoreMatchedResults(){return null}async search(t){return await s().store.find("users",{filter:{q:t},page:{limit:5}})}enabled(){return!0}}flarum.reg.add("flarum-mentions","forum/mentionables/UserMention",Mt);class xt extends gt{type(){return"post"}initialResults(){const t=flarum.reg.checkModule("core","forum/components/EditPostComposer"),e=flarum.reg.checkModule("core","forum/components/ReplyComposer");if(!(e&&s().composer.bodyMatches(e)||t&&s().composer.bodyMatches(t)))return[];const n=s().composer.body.attrs,o=n.post;return(o&&o.discussion()||n.discussion).posts().filter((t=>t&&"comment"===t.contentType()&&(!o||t.number()e.createdAt().getTime()-t.createdAt().getTime()))}replacement(t){const e=wt(t.user());return this.format.format(e,"p",t.id())}suggestion(t,e){var n;const o=t.user()||null,i=x()(o,(t=>ht()(t,e)));return m("[",null,m(ft(),{user:o}),i,[s().translator.trans("flarum-mentions.forum.composer.reply_to_post_text",{number:t.number()})," — ",(0,r.truncate)(null!=(n=t.contentPlain())?n:"",200)])}matches(t,e){const n=t.user(),o=s().mentionFormats.mentionable("user");return!e||n&&o.matches(n,e)}maxStoreMatchedResults(){return 5}search(t){return Promise.resolve([])}enabled(){return!0}}flarum.reg.add("flarum-mentions","forum/mentionables/PostMention",xt);const Pt=flarum.reg.get("core","common/models/Group");var Ct=t.n(Pt);const At=flarum.reg.get("core","common/components/Badge");var Tt=t.n(At);class Bt extends gt{type(){return"group"}initialResults(){return Array.from(s().store.all("groups").filter((t=>t.id()!==Ct().GUEST_ID&&t.id()!==Ct().MEMBER_ID)))}replacement(t){return this.format.format(t.namePlural(),"g",t.id())}suggestion(t,e){let n=t.namePlural();return e&&(n=ht()(n,e)),m("[",null,m(Tt(),{className:"Avatar Badge Badge--group--".concat(t.id()," Badge-icon"),color:t.color(),type:"group",icon:t.icon()}),m("span",{className:"username"},n))}matches(t,e){return!!e&&[t.namePlural().toLowerCase(),t.nameSingular().toLowerCase()].some((t=>t.toLowerCase().substr(0,e.length)===e))}maxStoreMatchedResults(){return null}search(t){return Promise.resolve([])}enabled(){var t,e,n;return null!=(t=null==(e=s().session)||null==(n=e.user)?void 0:n.canMentionGroups())&&t}}flarum.reg.add("flarum-mentions","forum/mentionables/GroupMention",Bt);class $t extends ct{constructor(){super(...arguments),V(this,"mentionables",[Mt,xt,Bt]),V(this,"extendable",!0)}trigger(){return"@"}queryFromTyped(t){const e=t.match(/^["“]?((?:(?!"#).)+)$/);return e?e[1]:null}format(t,e,n){return void 0===e&&(e=""),void 0===n&&(n=null),{simple:"@".concat(t),safe:'@"'.concat(t,'"#').concat(e).concat(n)}[n?"safe":"simple"]}}flarum.reg.add("flarum-mentions","forum/mentionables/formats/AtMentionFormat",$t);class Dt extends gt{type(){return"tag"}initialResults(){return Array.from(s().store.all("tags"))}replacement(t){return this.format.format(t.slug())}matches(t,e){return!!e&&[t.name().toLowerCase()].some((t=>t.toLowerCase().substr(0,e.length)===e))}maxStoreMatchedResults(){return null}async search(t){return await s().store.find("tags",{filter:{q:t},page:{limit:5}})}suggestion(t,e){let n=t.name();return e&&(n=ht()(n,e)),m("[",null,m(Tt(),{className:"Avatar",icon:t.icon(),color:t.color(),type:"tag"}),m("span",{className:"username"},n))}enabled(){return"flarum-tags"in flarum.extensions}}flarum.reg.add("flarum-mentions","forum/mentionables/TagMention",Dt);class _t extends ct{constructor(){super(...arguments),V(this,"mentionables",[Dt]),V(this,"extendable",!0)}trigger(){return"#"}queryFromTyped(t){const e=t.match(/^[-_\p{L}\p{N}\p{M}]+$/giu);return e?e[0]:null}format(t){return"#".concat(t)}}flarum.reg.add("flarum-mentions","forum/mentionables/formats/HashMentionFormat",_t);class St{constructor(){V(this,"formats",[new $t,new _t])}get(t){var e;return null!=(e=this.formats.find((e=>e.trigger()===t)))?e:null}mentionable(t){for(const e of this.formats){const n=e.getMentionable(t);if(n)return n}return null}extend(t){this.formats.push(new t)}}flarum.reg.add("flarum-mentions","forum/mentionables/formats/MentionFormats",St);const Nt=flarum.reg.get("core","forum/components/UserPage");var kt=t.n(Nt);const Ft=flarum.reg.get("core","common/components/LinkButton");var It=t.n(Ft);const Rt=flarum.reg.get("core","common/extenders");var Lt=t.n(Rt);const Ut=flarum.reg.get("core","common/models/Post");var jt=t.n(Ut);const Et=flarum.reg.get("core","common/models/User");var Ht=t.n(Et);const Gt=flarum.reg.get("core","forum/components/PostsUserPage");var Wt=t.n(Gt);class qt extends(Wt()){loadResults(t){return s().store.find("posts",{filter:{type:"comment",mentioned:this.user.id()},page:{offset:t,limit:this.loadLimit},sort:"-createdAt"})}}flarum.reg.add("flarum-mentions","forum/components/MentionsUserPage",qt);const Ot=[(new(Lt().Routes)).add("user.mentions","/u/:username/mentions",qt),new(Lt().Model)(jt()).hasMany("mentionedBy").attribute("mentionedByCount"),new(Lt().Model)(Ht()).attribute("canMentionGroups")];function Jt(t){let e;if(s().forum.attribute("allowUsernameMentionFormat")&&t.hasAttribute("username")?e=s().store.getBy("users","username",t.getAttribute("username")):t.hasAttribute("id")&&(e=s().store.getById("users",t.getAttribute("id"))),e)return t.setAttribute("id",e.id()),t.setAttribute("slug",e.slug()),t.setAttribute("displayname",yt()(x()(e))),!0;t.invalidate()}function zt(t){t.setAttribute("deleted",!1)}function Qt(t){const e=s().store.getById("posts",t.getAttribute("id"));if(e)return t.setAttribute("discussionid",e.discussion().id()),t.setAttribute("number",e.number()),t.setAttribute("displayname",yt()(x()(e.user()))),!0}function Xt(t){t.setAttribute("deleted",!1)}function Yt(t){var e,n;if(null!=(e=s().session)&&null!=(n=e.user)&&n.canMentionGroups()){const e=s().store.getById("groups",t.getAttribute("id"));if(e)return t.setAttribute("groupname",yt()(e.namePlural())),!0}t.invalidate()}function Kt(t){var e,n;if(null!=(e=s().session)&&null!=(n=e.user)&&n.canMentionGroups()){const e=s().store.getById("groups",t.getAttribute("id"));t.setAttribute("color",e.color()),t.setAttribute("icon",e.icon()),t.setAttribute("deleted",!1)}}function Vt(t){if("flarum-tags"in flarum.extensions){const e=s().store.getBy("tags","slug",t.getAttribute("slug"));if(e)return t.setAttribute("id",e.id()),t.setAttribute("tagname",e.name()),!0}t.invalidate()}function Zt(t){if("flarum-tags"in flarum.extensions){const e=s().store.getBy("tags","slug",t.getAttribute("slug"));t.setAttribute("icon",e.icon()),t.setAttribute("color",e.color()),t.setAttribute("deleted",!1)}}flarum.reg.add("flarum-mentions","forum/utils/textFormatter",{filterUserMentions:Jt,postFilterUserMentions:zt,filterPostMentions:Qt,postFilterPostMentions:Xt,filterGroupMentions:Yt,postFilterGroupMentions:Kt,filterTagMentions:Vt,postFilterTagMentions:Zt}),flarum.reg.add("flarum-mentions","forum/extenders/Mentionables",class{constructor(){V(this,"formats",[]),V(this,"mentionables",{})}format(t){return this.formats.push(t),this}mentionable(t,e){return this.mentionables[t]||(this.mentionables[t]=[]),this.mentionables[t].push(e),this}extend(t){for(const e of this.formats)t.mentionFormats.extend(e);for(const e in this.mentionables){const n=t.mentionFormats.get(e);if(n)for(const t of this.mentionables[e])n.extend(t)}}}),s().mentionFormats=new St,s().initializers.add("flarum-mentions",(function(){!function(){function t(){const t=this.attrs.post.contentHtml();if(t===this.oldPostContentHtml||this.isEditing())return;this.oldPostContentHtml=t;const e=this.attrs.post,n=this.$();this.$().on("click",".UserMention:not(.UserMention--deleted), .PostMention:not(.PostMention--deleted), .TagMention:not(.TagMention--deleted)",(function(t){m.route.set(this.getAttribute("href")),t.preventDefault()})),this.$(".PostMention:not(.PostMention--deleted)").each((function(){const t=$(this),o=t.data("id");let s;const r=$('