mirror of
https://github.com/flarum/framework.git
synced 2025-02-19 07:13:24 +08:00
1 line
35 KiB
Plaintext
Generated
1 line
35 KiB
Plaintext
Generated
{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@flarum/flags/webpack/bootstrap","webpack://@flarum/flags/webpack/runtime/compat get default export","webpack://@flarum/flags/webpack/runtime/define property getters","webpack://@flarum/flags/webpack/runtime/hasOwnProperty shorthand","webpack://@flarum/flags/webpack/runtime/make namespace object","webpack://@flarum/flags/external root \"flarum.core.compat['forum/app']\"","webpack://@flarum/flags/./src/forum/states/FlagListState.js","webpack://@flarum/flags/external root \"flarum.core.compat['common/extend']\"","webpack://@flarum/flags/external root \"flarum.core.compat['forum/utils/PostControls']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/components/Button']\"","webpack://@flarum/flags/../../../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@flarum/flags/../../../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@flarum/flags/external root \"flarum.core.compat['common/components/Modal']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/utils/Stream']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/utils/withAttr']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/utils/ItemList']\"","webpack://@flarum/flags/./src/forum/components/FlagPostModal.js","webpack://@flarum/flags/./src/forum/addFlagControl.js","webpack://@flarum/flags/external root \"flarum.core.compat['forum/components/HeaderSecondary']\"","webpack://@flarum/flags/external root \"flarum.core.compat['forum/components/NotificationsDropdown']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/Component']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/components/Link']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/components/LoadingIndicator']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/helpers/avatar']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/helpers/username']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/helpers/icon']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/helpers/humanTime']\"","webpack://@flarum/flags/./src/forum/components/FlagList.js","webpack://@flarum/flags/./src/forum/components/FlagsDropdown.js","webpack://@flarum/flags/./src/forum/addFlagsDropdown.js","webpack://@flarum/flags/external root \"flarum.core.compat['forum/components/Post']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/utils/humanTime']\"","webpack://@flarum/flags/./src/forum/addFlagsToPosts.js","webpack://@flarum/flags/external root \"flarum.core.compat['common/extenders']\"","webpack://@flarum/flags/external root \"flarum.core.compat['common/models/Post']\"","webpack://@flarum/flags/external root \"flarum.core.compat['components/Page']\"","webpack://@flarum/flags/./src/forum/components/FlagsPage.js","webpack://@flarum/flags/external root \"flarum.core.compat['common/Model']\"","webpack://@flarum/flags/./src/forum/models/Flag.ts","webpack://@flarum/flags/./src/forum/extend.ts","webpack://@flarum/flags/./src/forum/compat.js","webpack://@flarum/flags/external assign \"flarum.core\"","webpack://@flarum/flags/./src/forum/index.ts"],"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.core.compat['forum/app'];","export default class FlagListState {\n constructor(app) {\n this.app = app;\n\n /**\n * Whether or not the flags are loading.\n *\n * @type {Boolean}\n */\n this.loading = false;\n }\n\n /**\n * Load flags into the application's cache if they haven't already\n * been loaded.\n */\n load() {\n if (this.cache && !this.app.session.user.attribute('newFlagCount')) {\n return;\n }\n\n this.loading = true;\n m.redraw();\n\n this.app.store\n .find('flags')\n .then((flags) => {\n this.app.session.user.pushAttributes({ newFlagCount: 0 });\n this.cache = flags.sort((a, b) => b.createdAt() - a.createdAt());\n })\n .catch(() => {})\n .then(() => {\n this.loading = false;\n m.redraw();\n });\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/extend'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/utils/PostControls'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Button'];","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Modal'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/Stream'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/withAttr'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/ItemList'];","import app from 'flarum/forum/app';\nimport Modal from 'flarum/common/components/Modal';\nimport Button from 'flarum/common/components/Button';\n\nimport Stream from 'flarum/common/utils/Stream';\nimport withAttr from 'flarum/common/utils/withAttr';\nimport ItemList from 'flarum/common/utils/ItemList';\n\nexport default class FlagPostModal extends Modal {\n oninit(vnode) {\n super.oninit(vnode);\n\n this.success = false;\n\n this.reason = Stream('');\n this.reasonDetail = Stream('');\n }\n\n className() {\n return 'FlagPostModal Modal--medium';\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 <div className=\"Modal-body\">\n <div className=\"Form Form--centered\">\n <p className=\"helpText\">{app.translator.trans('flarum-flags.forum.flag_post.confirmation_message')}</p>\n <div className=\"Form-group\">\n <Button className=\"Button Button--primary Button--block\" onclick={this.hide.bind(this)}>\n {app.translator.trans('flarum-flags.forum.flag_post.dismiss_button')}\n </Button>\n </div>\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"Modal-body\">\n <div className=\"Form Form--centered\">\n <div className=\"Form-group\">\n <div>{this.flagReasons().toArray()}</div>\n </div>\n\n <div className=\"Form-group\">\n <Button className=\"Button Button--primary Button--block\" type=\"submit\" loading={this.loading} disabled={!this.reason()}>\n {app.translator.trans('flarum-flags.forum.flag_post.submit_button')}\n </Button>\n </div>\n </div>\n </div>\n );\n }\n\n flagReasons() {\n const items = new ItemList();\n const guidelinesUrl = app.forum.attribute('guidelinesUrl');\n\n items.add(\n 'off-topic',\n <label className=\"checkbox\">\n <input type=\"radio\" name=\"reason\" checked={this.reason() === 'off_topic'} value=\"off_topic\" onclick={withAttr('value', this.reason)} />\n <strong>{app.translator.trans('flarum-flags.forum.flag_post.reason_off_topic_label')}</strong>\n {app.translator.trans('flarum-flags.forum.flag_post.reason_off_topic_text')}\n {this.reason() === 'off_topic' && (\n <textarea\n className=\"FormControl\"\n placeholder={app.translator.trans('flarum-flags.forum.flag_post.reason_details_placeholder')}\n value={this.reasonDetail()}\n oninput={withAttr('value', this.reasonDetail)}\n ></textarea>\n )}\n </label>,\n 70\n );\n\n items.add(\n 'inappropriate',\n <label className=\"checkbox\">\n <input\n type=\"radio\"\n name=\"reason\"\n checked={this.reason() === 'inappropriate'}\n value=\"inappropriate\"\n onclick={withAttr('value', this.reason)}\n />\n <strong>{app.translator.trans('flarum-flags.forum.flag_post.reason_inappropriate_label')}</strong>\n {app.translator.trans('flarum-flags.forum.flag_post.reason_inappropriate_text', {\n a: guidelinesUrl ? <a href={guidelinesUrl} target=\"_blank\" /> : undefined,\n })}\n {this.reason() === 'inappropriate' && (\n <textarea\n className=\"FormControl\"\n placeholder={app.translator.trans('flarum-flags.forum.flag_post.reason_details_placeholder')}\n value={this.reasonDetail()}\n oninput={withAttr('value', this.reasonDetail)}\n ></textarea>\n )}\n </label>,\n 60\n );\n\n items.add(\n 'spam',\n <label className=\"checkbox\">\n <input type=\"radio\" name=\"reason\" checked={this.reason() === 'spam'} value=\"spam\" onclick={withAttr('value', this.reason)} />\n <strong>{app.translator.trans('flarum-flags.forum.flag_post.reason_spam_label')}</strong>\n {app.translator.trans('flarum-flags.forum.flag_post.reason_spam_text')}\n {this.reason() === 'spam' && (\n <textarea\n className=\"FormControl\"\n placeholder={app.translator.trans('flarum-flags.forum.flag_post.reason_details_placeholder')}\n value={this.reasonDetail()}\n oninput={withAttr('value', this.reasonDetail)}\n ></textarea>\n )}\n </label>,\n 50\n );\n\n items.add(\n 'other',\n <label className=\"checkbox\">\n <input type=\"radio\" name=\"reason\" checked={this.reason() === 'other'} value=\"other\" onclick={withAttr('value', this.reason)} />\n <strong>{app.translator.trans('flarum-flags.forum.flag_post.reason_other_label')}</strong>\n {this.reason() === 'other' && (\n <textarea className=\"FormControl\" value={this.reasonDetail()} oninput={withAttr('value', this.reasonDetail)}></textarea>\n )}\n </label>,\n 10\n );\n\n return items;\n }\n\n onsubmit(e) {\n e.preventDefault();\n\n this.loading = true;\n\n app.store\n .createRecord('flags')\n .save(\n {\n reason: this.reason() === 'other' ? null : this.reason(),\n reasonDetail: this.reasonDetail(),\n relationships: {\n user: app.session.user,\n post: this.attrs.post,\n },\n },\n { errorHandler: this.onerror.bind(this) }\n )\n .then(() => (this.success = true))\n .catch(() => {})\n .then(this.loaded.bind(this));\n }\n}\n","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport PostControls from 'flarum/forum/utils/PostControls';\nimport Button from 'flarum/common/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()) return;\n\n items.add(\n 'flag',\n <Button icon=\"fas fa-flag\" onclick={() => app.modal.show(FlagPostModal, { post })}>\n {app.translator.trans('flarum-flags.forum.post_controls.flag_button')}\n </Button>\n );\n });\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/HeaderSecondary'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/NotificationsDropdown'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/Component'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Link'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/LoadingIndicator'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/avatar'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/username'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/icon'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/humanTime'];","import app from 'flarum/forum/app';\nimport Component from 'flarum/common/Component';\nimport Link from 'flarum/common/components/Link';\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\nimport avatar from 'flarum/common/helpers/avatar';\nimport username from 'flarum/common/helpers/username';\nimport icon from 'flarum/common/helpers/icon';\nimport humanTime from 'flarum/common/helpers/humanTime';\n\nexport default class FlagList extends Component {\n oninit(vnode) {\n super.oninit(vnode);\n this.state = this.attrs.state;\n }\n\n view() {\n const flags = this.state.cache || [];\n\n return (\n <div className=\"NotificationList FlagList\">\n <div className=\"NotificationList-header\">\n <h4 className=\"App-titleControl App-titleControl--text\">{app.translator.trans('flarum-flags.forum.flagged_posts.title')}</h4>\n </div>\n <div className=\"NotificationList-content\">\n <ul className=\"NotificationGroup-content\">\n {flags.length ? (\n flags.map((flag) => {\n const post = flag.post();\n\n return (\n <li>\n <Link\n href={app.route.post(post)}\n className=\"Notification Flag\"\n onclick={(e) => {\n app.flags.index = post;\n e.redraw = false;\n }}\n >\n {avatar(post.user())}\n {icon('fas fa-flag', { className: 'Notification-icon' })}\n <span className=\"Notification-content\">\n {app.translator.trans('flarum-flags.forum.flagged_posts.item_text', {\n username: username(post.user()),\n em: <em />,\n discussion: post.discussion().title(),\n })}\n </span>\n {humanTime(flag.createdAt())}\n <div className=\"Notification-excerpt\">{post.contentPlain()}</div>\n </Link>\n </li>\n );\n })\n ) : !this.state.loading ? (\n <div className=\"NotificationList-empty\">{app.translator.trans('flarum-flags.forum.flagged_posts.empty_text')}</div>\n ) : (\n <LoadingIndicator className=\"LoadingIndicator--block\" />\n )}\n </ul>\n </div>\n </div>\n );\n }\n}\n","import app from 'flarum/forum/app';\nimport NotificationsDropdown from 'flarum/forum/components/NotificationsDropdown';\n\nimport FlagList from './FlagList';\n\nexport default class FlagsDropdown extends NotificationsDropdown {\n static initAttrs(attrs) {\n attrs.label = attrs.label || app.translator.trans('flarum-flags.forum.flagged_posts.tooltip');\n attrs.icon = attrs.icon || 'fas fa-flag';\n\n super.initAttrs(attrs);\n }\n\n getMenu() {\n return (\n <div className={'Dropdown-menu ' + this.attrs.menuClassName} onclick={this.menuClick.bind(this)}>\n {this.showing && <FlagList state={this.attrs.state} />}\n </div>\n );\n }\n\n goToRoute() {\n m.route.set(app.route('flags'));\n }\n\n getUnreadCount() {\n return app.flags.cache ? app.flags.cache.length : app.forum.attribute('flagCount');\n }\n\n getNewCount() {\n return app.session.user.attribute('newFlagCount');\n }\n}\n","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport HeaderSecondary from 'flarum/forum/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', <FlagsDropdown state={app.flags} />, 15);\n }\n });\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/Post'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/humanTime'];","import { extend } from 'flarum/common/extend';\nimport app from 'flarum/forum/app';\nimport Post from 'flarum/forum/components/Post';\nimport Button from 'flarum/common/components/Button';\nimport ItemList from 'flarum/common/utils/ItemList';\nimport PostControls from 'flarum/forum/utils/PostControls';\nimport humanTime from 'flarum/common/utils/humanTime';\n\nexport default function () {\n extend(Post.prototype, 'elementAttrs', function (attrs) {\n if (this.attrs.post.flags().length) {\n attrs.className += ' Post--flagged';\n }\n });\n\n Post.prototype.dismissFlag = function (body) {\n const post = this.attrs.post;\n\n delete post.data.relationships.flags;\n\n this.subtree.invalidate();\n\n if (app.flags.cache) {\n app.flags.cache.some((flag, i) => {\n if (flag.post() === post) {\n app.flags.cache.splice(i, 1);\n\n if (app.flags.index === post) {\n let next = app.flags.cache[i];\n\n if (!next) next = app.flags.cache[0];\n\n if (next) {\n const nextPost = next.post();\n app.flags.index = nextPost;\n m.route.set(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 body,\n });\n };\n\n Post.prototype.flagActionItems = function () {\n const items = new ItemList();\n\n const controls = PostControls.destructiveControls(this.attrs.post);\n\n Object.keys(controls.items).forEach((k) => {\n const attrs = controls.get(k).attrs;\n\n attrs.className = 'Button';\n\n extend(attrs, 'onclick', () => this.dismissFlag());\n });\n\n items.add('controls', <div className=\"ButtonGroup\">{controls.toArray()}</div>);\n\n items.add(\n 'dismiss',\n <Button className=\"Button\" icon=\"far fa-eye-slash\" onclick={this.dismissFlag.bind(this)}>\n {app.translator.trans('flarum-flags.forum.post.dismiss_flag_button')}\n </Button>,\n -100\n );\n\n return items;\n };\n\n extend(Post.prototype, 'content', function (vdom) {\n const post = this.attrs.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 <div className=\"Post-flagged\">\n <div className=\"Post-flagged-flags\">\n {flags.map((flag) => (\n <div className=\"Post-flagged-flag\">{this.flagReason(flag)}</div>\n ))}\n </div>\n <div className=\"Post-flagged-actions\">{this.flagActionItems().toArray()}</div>\n </div>\n );\n });\n\n Post.prototype.flagReason = function (flag) {\n if (flag.type() === 'user') {\n const user = flag.user();\n const reason = flag.reason() ? app.translator.trans(`flarum-flags.forum.flag_post.reason_${flag.reason()}_label`) : null;\n const detail = flag.reasonDetail();\n const time = humanTime(flag.createdAt());\n\n return [\n app.translator.trans(reason ? 'flarum-flags.forum.post.flagged_by_with_reason_text' : 'flarum-flags.forum.post.flagged_by_text', {\n time,\n user,\n reason,\n }),\n !!detail && <span className=\"Post-flagged-detail\">{detail}</span>,\n ];\n }\n };\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/extenders'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/models/Post'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['components/Page'];","import app from 'flarum/forum/app';\nimport 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 oninit(vnode) {\n super.oninit(vnode);\n\n app.history.push('flags');\n\n app.flags.load();\n\n this.bodyClass = 'App--flags';\n }\n\n view() {\n return (\n <div className=\"FlagsPage\">\n <FlagList state={app.flags}></FlagList>\n </div>\n );\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/Model'];","import Model from 'flarum/common/Model';\nimport type Post from 'flarum/common/models/Post';\nimport type User from 'flarum/common/models/User';\n\nexport default class Flag extends Model {\n type() {\n return Model.attribute<string>('type').call(this);\n }\n reason() {\n return Model.attribute<string | null>('reason').call(this);\n }\n reasonDetail() {\n return Model.attribute<string | null>('reasonDetail').call(this);\n }\n createdAt() {\n return Model.attribute('createdAt', Model.transformDate).call(this);\n }\n\n post() {\n return Model.hasOne<Post>('post').call(this);\n }\n user() {\n return Model.hasOne<User | null>('user').call(this);\n }\n}\n","import Extend from 'flarum/common/extenders';\nimport Post from 'flarum/common/models/Post';\nimport FlagsPage from './components/FlagsPage';\nimport Flag from './models/Flag';\n\nexport default [\n new Extend.Routes() //\n .add('flags', '/flags', FlagsPage),\n\n new Extend.Store() //\n .add('flags', Flag),\n\n new Extend.Model(Post) //\n .hasMany<Flag>('flags')\n .attribute<boolean>('canFlag'),\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","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core;","import app from 'flarum/forum/app';\n\nimport FlagListState from './states/FlagListState';\nimport addFlagControl from './addFlagControl';\nimport addFlagsDropdown from './addFlagsDropdown';\nimport addFlagsToPosts from './addFlagsToPosts';\n\nexport { default as extend } from './extend';\n\napp.initializers.add('flarum-flags', () => {\n app.flags = new FlagListState(app);\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"],"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","core","compat","FlagListState","app","this","loading","load","cache","session","user","attribute","m","redraw","store","find","then","flags","pushAttributes","newFlagCount","sort","b","createdAt","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_inheritsLoose","subClass","superClass","create","constructor","FlagPostModal","oninit","vnode","success","reason","Stream","reasonDetail","className","title","content","onclick","hide","flagReasons","toArray","type","disabled","items","ItemList","guidelinesUrl","add","name","checked","withAttr","placeholder","oninput","href","target","undefined","onsubmit","e","preventDefault","save","relationships","post","attrs","errorHandler","onerror","loaded","Modal","extend","PostControls","isHidden","contentType","canFlag","icon","FlagList","state","view","length","map","flag","avatar","username","em","discussion","humanTime","contentPlain","Component","FlagsDropdown","initAttrs","label","getMenu","menuClassName","menuClick","showing","goToRoute","route","set","getUnreadCount","getNewCount","NotificationsDropdown","HeaderSecondary","Post","body","data","subtree","invalidate","i","next","nextPost","url","apiEndpoint","method","controls","keys","forEach","k","dismissFlag","vdom","revealContent","unshift","flagReason","flagActionItems","detail","time","FlagsPage","bodyClass","Page","Flag","Model","Extend","hasMany","addFlagsToPosts","addFlagControl","addFlagsDropdown","assign","flagsCompat"],"sourceRoot":""} |