{"version":3,"sources":["webpack://@flarum/flags/webpack/bootstrap","webpack://@flarum/flags/external \"flarum.core.compat['app']\"","webpack://@flarum/flags/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@flarum/flags/external \"flarum.core.compat['extend']\"","webpack://@flarum/flags/external \"flarum.core.compat['Model']\"","webpack://@flarum/flags/./node_modules/@babel/runtime/helpers/esm/extends.js","webpack://@flarum/flags/external \"flarum.core.compat['components/Button']\"","webpack://@flarum/flags/external \"flarum.core.compat['components/Post']\"","webpack://@flarum/flags/external \"flarum.core\"","webpack://@flarum/flags/external \"flarum.core.compat['utils/PostControls']\"","webpack://@flarum/flags/external \"flarum.core.compat['components/Page']\"","webpack://@flarum/flags/external \"flarum.core.compat['Component']\"","webpack://@flarum/flags/external \"flarum.core.compat['components/LoadingIndicator']\"","webpack://@flarum/flags/external \"flarum.core.compat['helpers/avatar']\"","webpack://@flarum/flags/external \"flarum.core.compat['helpers/username']\"","webpack://@flarum/flags/external \"flarum.core.compat['helpers/icon']\"","webpack://@flarum/flags/external \"flarum.core.compat['helpers/humanTime']\"","webpack://@flarum/flags/external \"flarum.core.compat['components/Modal']\"","webpack://@flarum/flags/external \"flarum.core.compat['components/HeaderSecondary']\"","webpack://@flarum/flags/external \"flarum.core.compat['components/NotificationsDropdown']\"","webpack://@flarum/flags/external \"flarum.core.compat['utils/ItemList']\"","webpack://@flarum/flags/./src/forum/models/Flag.js","webpack://@flarum/flags/./src/forum/components/FlagList.js","webpack://@flarum/flags/./src/forum/components/FlagsPage.js","webpack://@flarum/flags/./src/forum/components/FlagPostModal.js","webpack://@flarum/flags/./src/forum/addFlagControl.js","webpack://@flarum/flags/./src/forum/components/FlagsDropdown.js","webpack://@flarum/flags/./src/forum/addFlagsDropdown.js","webpack://@flarum/flags/./src/forum/addFlagsToPosts.js","webpack://@flarum/flags/./src/forum/compat.js","webpack://@flarum/flags/./src/forum/index.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__","__webpack_exports__","_extends","assign","target","arguments","length","source","apply","this","Flag","Model","esm_extends","type","attribute","reason","reasonDetail","createdAt","transformDate","post","hasOne","user","FlagList","init","loading","view","flags","app","cache","className","translator","trans","map","flag","href","route","config","element","isInitialized","$","on","flagIndex","avatar","icon","username","em","discussion","title","humanTime","contentPlain","LoadingIndicator","component","load","_this","session","redraw","store","find","then","pushAttributes","newFlagCount","sort","a","b","catch","Component","FlagsPage","_Page","history","push","list","bodyClass","render","Page","FlagPostModal","_Modal","success","prop","content","Button_default","onclick","hide","guidelinesUrl","forum","checked","withAttr","undefined","oninput","disabled","onsubmit","e","preventDefault","createRecord","save","relationships","props","loaded","Modal","addFlagControl","extend","PostControls","items","isHidden","contentType","canFlag","add","modal","show","FlagsDropdown","initProps","label","_NotificationsDropdow","goToRoute","getUnreadCount","getNewCount","NotificationsDropdown","addFlagsDropdown","HeaderSecondary","FlagsDropdown_FlagsDropdown","addFlagsToPosts","Post","attrs","dismissFlag","data","subtree","invalidate","some","splice","next","nextPost","request","url","apiEndpoint","method","flagActionItems","ItemList","controls","destructiveControls","keys","forEach","k","toArray","vdom","_this2","revealContent","unshift","flagReason","detail","flags/addFlagsToPosts","flags/addFlagControl","flags/addFlagsDropdown","flags/models/Flag","flags/components/FlagList","flags/components/FlagPostModal","flags/components/FlagsPage","flags/components/FlagsDropdown","initializers","models","posts","hasMany","routes","path","FlagsPage_FlagsPage","flagsCompat"],"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 = 22);\n","module.exports = flarum.core.compat['app'];","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","module.exports = flarum.core.compat['extend'];","module.exports = flarum.core.compat['Model'];","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","module.exports = flarum.core.compat['components/Button'];","module.exports = flarum.core.compat['components/Post'];","module.exports = flarum.core;","module.exports = flarum.core.compat['utils/PostControls'];","module.exports = flarum.core.compat['components/Page'];","module.exports = flarum.core.compat['Component'];","module.exports = flarum.core.compat['components/LoadingIndicator'];","module.exports = flarum.core.compat['helpers/avatar'];","module.exports = flarum.core.compat['helpers/username'];","module.exports = flarum.core.compat['helpers/icon'];","module.exports = flarum.core.compat['helpers/humanTime'];","module.exports = flarum.core.compat['components/Modal'];","module.exports = flarum.core.compat['components/HeaderSecondary'];","module.exports = flarum.core.compat['components/NotificationsDropdown'];","module.exports = flarum.core.compat['utils/ItemList'];","import Model from 'flarum/Model';\n\nclass Flag extends Model {}\n\nObject.assign(Flag.prototype, {\n type: Model.attribute('type'),\n reason: Model.attribute('reason'),\n reasonDetail: Model.attribute('reasonDetail'),\n createdAt: Model.attribute('createdAt', Model.transformDate),\n\n post: Model.hasOne('post'),\n user: Model.hasOne('user')\n});\n\nexport default Flag;\n","import Component from 'flarum/Component';\nimport LoadingIndicator from 'flarum/components/LoadingIndicator';\nimport avatar from 'flarum/helpers/avatar';\nimport username from 'flarum/helpers/username';\nimport icon from 'flarum/helpers/icon';\nimport humanTime from 'flarum/helpers/humanTime';\n\nexport default class FlagList extends Component {\n init() {\n /**\n * Whether or not the notifications are loading.\n *\n * @type {Boolean}\n */\n this.loading = false;\n }\n\n view() {\n const flags = app.cache.flags || [];\n\n return (\n
\n
\n

{app.translator.trans('flarum-flags.forum.flagged_posts.title')}

\n
\n
\n \n
\n
\n );\n }\n\n /**\n * Load flags into the application's cache if they haven't already\n * been loaded.\n */\n load() {\n if (app.cache.flags && !app.session.user.attribute('newFlagCount')) {\n return;\n }\n\n this.loading = true;\n m.redraw();\n\n app.store.find('flags')\n .then(flags => {\n app.session.user.pushAttributes({newFlagCount: 0});\n app.cache.flags = flags.sort((a, b) => b.createdAt() - a.createdAt());\n })\n .catch(() => {})\n .then(() => {\n this.loading = false;\n m.redraw();\n });\n }\n}\n","import Page from 'flarum/components/Page';\n\nimport FlagList from './FlagList';\n\n/**\n * The `FlagsPage` component shows the flags list. It is only\n * used on mobile devices where the flags dropdown is within the drawer.\n */\nexport default class FlagsPage extends Page {\n init() {\n super.init();\n\n app.history.push('flags');\n\n this.list = new FlagList();\n this.list.load();\n\n this.bodyClass = 'App--flags';\n }\n\n view() {\n return
{this.list.render()}
;\n }\n}\n","import Modal from 'flarum/components/Modal';\nimport Button from 'flarum/components/Button';\n\nexport default class FlagPostModal extends Modal {\n init() {\n super.init();\n\n this.success = false;\n\n this.reason = m.prop('');\n this.reasonDetail = m.prop('');\n }\n\n className() {\n return 'FlagPostModal Modal--small';\n }\n\n title() {\n return app.translator.trans('flarum-flags.forum.flag_post.title');\n }\n\n content() {\n if (this.success) {\n return (\n
\n
\n

{app.translator.trans('flarum-flags.forum.flag_post.confirmation_message')}

\n
\n \n
\n
\n
\n );\n }\n\n const guidelinesUrl = app.forum.attribute('guidelinesUrl');\n\n return (\n
\n
\n
\n
\n \n\n \n\n \n\n \n
\n
\n\n
\n \n {app.translator.trans('flarum-flags.forum.flag_post.submit_button')}\n \n
\n
\n
\n );\n }\n\n onsubmit(e) {\n e.preventDefault();\n\n this.loading = true;\n\n app.store.createRecord('flags').save({\n reason: this.reason() === 'other' ? null : this.reason(),\n reasonDetail: this.reasonDetail(),\n relationships: {\n user: app.session.user,\n post: this.props.post\n }\n })\n .then(() => this.success = true)\n .catch(() => {})\n .then(this.loaded.bind(this));\n }\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport PostControls from 'flarum/utils/PostControls';\nimport Button from 'flarum/components/Button';\n\nimport FlagPostModal from './components/FlagPostModal';\n\nexport default function() {\n extend(PostControls, 'userControls', function(items, post) {\n if (post.isHidden() || post.contentType() !== 'comment' || !post.canFlag() || post.user() === app.session.user) return;\n\n items.add('flag',\n \n );\n });\n}\n","import NotificationsDropdown from 'flarum/components/NotificationsDropdown';\n\nimport FlagList from './FlagList';\n\nexport default class FlagsDropdown extends NotificationsDropdown {\n static initProps(props) {\n props.label = props.label || app.translator.trans('flarum-flags.forum.flagged_posts.tooltip');\n props.icon = props.icon || 'fas fa-flag';\n\n super.initProps(props);\n }\n\n init() {\n super.init();\n\n this.list = new FlagList();\n }\n\n goToRoute() {\n m.route(app.route('flags'));\n }\n\n getUnreadCount() {\n return app.cache.flags ? app.cache.flags.length : app.forum.attribute('flagCount');\n }\n\n getNewCount() {\n return app.session.user.attribute('newFlagCount');\n }\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport HeaderSecondary from 'flarum/components/HeaderSecondary';\nimport FlagsDropdown from './components/FlagsDropdown';\n\nexport default function() {\n extend(HeaderSecondary.prototype, 'items', function(items) {\n if (app.forum.attribute('canViewFlags')) {\n items.add('flags', , 15);\n }\n });\n}\n","import { extend } from 'flarum/extend';\nimport app from 'flarum/app';\nimport Post from 'flarum/components/Post';\nimport Button from 'flarum/components/Button';\nimport ItemList from 'flarum/utils/ItemList';\nimport PostControls from 'flarum/utils/PostControls';\n\nexport default function() {\n extend(Post.prototype, 'attrs', function(attrs) {\n if (this.props.post.flags().length) {\n attrs.className += ' Post--flagged';\n }\n });\n\n Post.prototype.dismissFlag = function(data) {\n const post = this.props.post;\n\n delete post.data.relationships.flags;\n\n this.subtree.invalidate();\n\n if (app.cache.flags) {\n app.cache.flags.some((flag, i) => {\n if (flag.post() === post) {\n app.cache.flags.splice(i, 1);\n\n if (app.cache.flagIndex === post) {\n let next = app.cache.flags[i];\n\n if (!next) next = app.cache.flags[0];\n\n if (next) {\n const nextPost = next.post();\n app.cache.flagIndex = nextPost;\n m.route(app.route.post(nextPost));\n }\n }\n\n return true;\n }\n });\n }\n\n return app.request({\n url: app.forum.attribute('apiUrl') + post.apiEndpoint() + '/flags',\n method: 'DELETE',\n data\n });\n };\n\n Post.prototype.flagActionItems = function() {\n const items = new ItemList();\n\n const controls = PostControls.destructiveControls(this.props.post);\n\n Object.keys(controls.items).forEach(k => {\n const props = controls.get(k).props;\n\n props.className = 'Button';\n\n extend(props, 'onclick', () => this.dismissFlag());\n });\n\n items.add('controls', (\n
\n {controls.toArray()}\n
\n ));\n\n items.add('dismiss', (\n \n ), -100);\n\n return items;\n };\n\n extend(Post.prototype, 'content', function(vdom) {\n const post = this.props.post;\n const flags = post.flags();\n\n if (!flags.length) return;\n\n if (post.isHidden()) this.revealContent = true;\n\n vdom.unshift(\n
\n
\n {flags.map(flag =>\n
\n {this.flagReason(flag)}\n
\n )}\n
\n
\n {this.flagActionItems().toArray()}\n
\n
\n );\n });\n\n Post.prototype.flagReason = function(flag) {\n if (flag.type() === 'user') {\n const user = flag.user();\n const reason = flag.reason();\n const detail = flag.reasonDetail();\n\n return [\n app.translator.trans(reason ? 'flarum-flags.forum.post.flagged_by_with_reason_text' : 'flarum-flags.forum.post.flagged_by_text', {user, reason}),\n detail ? {detail} : ''\n ];\n }\n };\n}\n","import addFlagsToPosts from './addFlagsToPosts';\nimport addFlagControl from './addFlagControl';\nimport addFlagsDropdown from './addFlagsDropdown';\nimport Flag from './models/Flag';\nimport FlagList from './components/FlagList';\nimport FlagPostModal from './components/FlagPostModal';\nimport FlagsPage from './components/FlagsPage';\nimport FlagsDropdown from './components/FlagsDropdown';\n\nexport default {\n 'flags/addFlagsToPosts': addFlagsToPosts,\n 'flags/addFlagControl': addFlagControl,\n 'flags/addFlagsDropdown': addFlagsDropdown,\n 'flags/models/Flag': Flag,\n 'flags/components/FlagList': FlagList,\n 'flags/components/FlagPostModal': FlagPostModal,\n 'flags/components/FlagsPage': FlagsPage,\n 'flags/components/FlagsDropdown': FlagsDropdown,\n};\n","import app from 'flarum/app';\nimport Model from 'flarum/Model';\n\nimport Flag from './models/Flag';\nimport FlagsPage from './components/FlagsPage';\nimport addFlagControl from './addFlagControl';\nimport addFlagsDropdown from './addFlagsDropdown';\nimport addFlagsToPosts from './addFlagsToPosts';\n\napp.initializers.add('flarum-flags', () => {\n app.store.models.posts.prototype.flags = Model.hasMany('flags');\n app.store.models.posts.prototype.canFlag = Model.attribute('canFlag');\n\n app.store.models.flags = Flag;\n\n app.routes.flags = {path: '/flags', component: };\n\n addFlagControl();\n addFlagsDropdown();\n addFlagsToPosts();\n});\n\n// Expose compat API\nimport flagsCompat from './compat';\nimport { compat } from '@flarum/core/forum';\n\nObject.assign(compat, flagsCompat);\n"],"sourceRoot":""}