diff --git a/js/dist/forum.js b/js/dist/forum.js index 16d2acb..0adc667 100644 --- a/js/dist/forum.js +++ b/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 n in o)t.o(o,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:o[n]})},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";function o(t,e){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},o(t,e)}function n(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,o(t,e)}t.r(e);const a=flarum.core.compat["forum/components/IndexPage"];var r=t.n(a);const i=flarum.core.compat["common/helpers/icon"];var s=t.n(i);const c=flarum.core.compat["common/components/Page"];var p=t.n(c);const u=flarum.core.compat["common/components/LoadingIndicator"];var l=t.n(u);const d=flarum.core.compat["common/utils/classList"];var f=t.n(d);const h=flarum.core.compat["common/app"];var g=t.n(h);const y=flarum.core.compat["common/Component"];var v=t.n(y);const b=flarum.core.compat["common/components/Link"];var P=t.n(b);const H=flarum.core.compat["common/utils/ItemList"];var w=t.n(H);const N=flarum.core.compat["common/helpers/listItems"];var O=t.n(N),_=function(t){function e(){return t.apply(this,arguments)||this}n(e,t);var o=e.prototype;return o.view=function(){return m("header",{className:"Hero PageHero"},m("div",{className:"container"},m("ul",{className:"PageHero-items"},O()(this.items().toArray()))))},o.items=function(){var t=new(w()),e=this.attrs.page;return t.add("title",m("h1",{className:"PageHero-title"},m(P(),{href:g().route.page(e)},e.title()))),t},e}(v()),j=function(t){function e(){return t.apply(this,arguments)||this}n(e,t);var o=e.prototype;return o.oninit=function(e){t.prototype.oninit.call(this,e),this.page=null,this.loadPage(),this.bodyClass="App--page"},o.view=function(){var t=this.page;return m("div",{className:f()("Pages",t.isHtml()&&"Pages--isHtml"),"data-id":t.id(),"data-slug":t.slug()},m("div",{className:"Pages-page"},t?[this.hero(),m("div",{className:"Pages-container container"},m("div",{className:"Post-body"},this.content()))]:l().component({className:"LoadingIndicator--block"})))},o.show=function(t){this.page=t,app.history.push("page",t.title()),app.setTitle(t.title()),m.redraw()},o.hero=function(){return _.component({page:this.page})},o.content=function(){return m.trust(this.page.contentHtml())},o.id=function(){var t=m.route.param("id").split("-")[0];return isNaN(parseInt(t))?m.route.param("id"):t},o.loadPage=function(){var t=this,e=this.id(),o=app.preloadedApiDocument(),n=!Array.isArray(o)&&o||app.store.getById("pages",e);n?this.show(n):Promise.all([app.store.find("pages",e).then((function(e){t.show(e)})),m.redraw()])},e}(p()),I=function(t){function e(){return t.apply(this,arguments)||this}n(e,t);var o=e.prototype;return o.oninit=function(e){t.prototype.oninit.call(this,e),app.history.push("homePage",s()("fas fa-home")),app.drawer.hide(),app.modal.close()},o.show=function(t){this.page=t,app.setTitle(""),m.redraw()},o.hero=function(){return r().prototype.hero()},o.id=function(){return app.data["fof-pages.home"]},e}(j);const A=flarum.core.compat.app;var T=t.n(A);const L=flarum.core.compat["common/Model"];var S=t.n(L);const M=flarum.core.compat["common/utils/computed"];var C=t.n(M);const D=flarum.core.compat["common/utils/string"],R=flarum.core.compat["common/components/Badge"];var k=t.n(R),x=function(t){function e(){for(var e,o=arguments.length,n=new Array(o),a=0;a{var t={n:e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return t.d(o,{a:o}),o},d:(e,o)=>{for(var n in o)t.o(o,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:o[n]})},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";function o(t,e){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},o(t,e)}function n(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,o(t,e)}t.r(e);const a=flarum.core.compat["forum/components/IndexPage"];var r=t.n(a);const i=flarum.core.compat["common/helpers/icon"];var s=t.n(i);const c=flarum.core.compat["common/components/Page"];var p=t.n(c);const u=flarum.core.compat["common/components/LoadingIndicator"];var l=t.n(u);const d=flarum.core.compat["common/utils/classList"];var f=t.n(d);const h=flarum.core.compat["common/app"];var g=t.n(h);const v=flarum.core.compat["common/Component"];var y=t.n(v);const b=flarum.core.compat["common/components/Link"];var P=t.n(b);const H=flarum.core.compat["common/utils/ItemList"];var w=t.n(H);const N=flarum.core.compat["common/helpers/listItems"];var O=t.n(N),_=function(t){function e(){return t.apply(this,arguments)||this}n(e,t);var o=e.prototype;return o.view=function(){return m("header",{className:"Hero PageHero"},m("div",{className:"container"},m("ul",{className:"PageHero-items"},O()(this.items().toArray()))))},o.items=function(){var t=new(w()),e=this.attrs.page;return t.add("title",m("h1",{className:"PageHero-title"},m(P(),{href:g().route.page(e)},e.title()))),t},e}(y()),j=function(t){function e(){return t.apply(this,arguments)||this}n(e,t);var o=e.prototype;return o.oninit=function(e){t.prototype.oninit.call(this,e),this.page=null,this.loadPage(),this.bodyClass="App--page"},o.view=function(){var t=this.page;return m("div",{className:f()("Pages",(null==t?void 0:t.isHtml())&&"Pages--isHtml"),"data-id":null==t?void 0:t.id(),"data-slug":null==t?void 0:t.slug()},m("div",{className:"Pages-page"},t?[this.hero(),m("div",{className:"Pages-container container"},m("div",{className:"Post-body"},this.content()))]:l().component({className:"LoadingIndicator--block"})))},o.show=function(t){this.page=t,app.history.push("page",t.title()),app.setTitle(t.title()),m.redraw()},o.hero=function(){return _.component({page:this.page})},o.content=function(){return m.trust(this.page.contentHtml())},o.id=function(){var t=m.route.param("id").split("-")[0];return isNaN(parseInt(t))?m.route.param("id"):t},o.loadPage=function(){var t=this,e=this.id(),o=app.preloadedApiDocument(),n=!Array.isArray(o)&&o||app.store.getById("pages",e);n?this.show(n):Promise.all([app.store.find("pages",e).then((function(e){t.show(e)})),m.redraw()])},e}(p()),I=function(t){function e(){return t.apply(this,arguments)||this}n(e,t);var o=e.prototype;return o.oninit=function(e){t.prototype.oninit.call(this,e),app.history.push("homePage",s()("fas fa-home")),app.drawer.hide(),app.modal.close()},o.show=function(t){this.page=t,app.setTitle(""),m.redraw()},o.hero=function(){return r().prototype.hero()},o.id=function(){return app.data["fof-pages.home"]},e}(j);const A=flarum.core.compat.app;var T=t.n(A);const L=flarum.core.compat["common/Model"];var S=t.n(L);const M=flarum.core.compat["common/utils/computed"];var C=t.n(M);const D=flarum.core.compat["common/utils/string"],R=flarum.core.compat["common/components/Badge"];var k=t.n(R),x=function(t){function e(){for(var e,o=arguments.length,n=new Array(o),a=0;a {\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};","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['forum/components/IndexPage'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/icon'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Page'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/LoadingIndicator'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/classList'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/app'];","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/utils/ItemList'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/listItems'];","import app from 'flarum/common/app';\nimport Component from 'flarum/common/Component';\nimport Link from 'flarum/common/components/Link';\nimport ItemList from 'flarum/common/utils/ItemList';\nimport listItems from 'flarum/common/helpers/listItems';\n\n/**\n * The `PageHero` component displays the hero on a page page.\n *\n * ### Props\n *\n * - `page`\n */\nexport default class PageHero extends Component {\n view() {\n return (\n
\n
\n
    {listItems(this.items().toArray())}
\n
\n
\n );\n }\n\n /**\n * Build an item list for the contents of the page hero.\n *\n * @return {ItemList}\n */\n items() {\n const items = new ItemList();\n const page = this.attrs.page;\n\n items.add(\n 'title',\n

\n {page.title()}\n

\n );\n\n return items;\n }\n}\n","import Page from 'flarum/common/components/Page';\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\nimport classList from 'flarum/common/utils/classList';\n\nimport PageHero from './PageHero';\n\nexport default class PagePage extends Page {\n oninit(vnode) {\n super.oninit(vnode);\n\n /**\n * The page that is being viewed.\n *\n * @type {fof/pages/models/Page}\n */\n this.page = null;\n\n this.loadPage();\n\n this.bodyClass = 'App--page';\n }\n\n view() {\n const page = this.page;\n\n return (\n
\n
\n {page\n ? [\n this.hero(),\n
\n
{this.content()}
\n
,\n ]\n : LoadingIndicator.component({ className: 'LoadingIndicator--block' })}\n
\n
\n );\n }\n\n /**\n * Initialize page.\n *\n * @param {fof/pages/models/Page} page\n * @protected\n */\n show(page) {\n this.page = page;\n\n app.history.push('page', page.title());\n app.setTitle(page.title());\n\n m.redraw();\n }\n\n /**\n * Get the hero of current page.\n */\n hero() {\n return PageHero.component({ page: this.page });\n }\n\n /**\n * Get the content of page.\n */\n content() {\n return m.trust(this.page.contentHtml());\n }\n\n /**\n * Get current page id from route.\n *\n * @return string\n */\n id() {\n const id = m.route.param('id').split('-')[0];\n if (!isNaN(parseInt(id))) {\n return id;\n } else {\n return m.route.param('id');\n }\n }\n\n /**\n * Load page from the store, or make a request\n * if we don't have it yet. Then initialize the page.\n */\n loadPage() {\n const id = this.id();\n\n const preloaded = app.preloadedApiDocument();\n const page = (!Array.isArray(preloaded) && preloaded) || app.store.getById('pages', id);\n\n if (page) {\n this.show(page);\n } else {\n Promise.all([\n app.store.find('pages', id).then((result) => {\n this.show(result);\n }),\n m.redraw(),\n ]);\n }\n }\n}\n","import IndexPage from 'flarum/forum/components/IndexPage';\nimport icon from 'flarum/common/helpers/icon';\n\nimport PagePage from './PagePage';\n\nexport default class HomePage extends PagePage {\n oninit(vnode) {\n super.oninit(vnode);\n\n app.history.push('homePage', icon('fas fa-home'));\n app.drawer.hide();\n app.modal.close();\n }\n\n show(page) {\n this.page = page;\n app.setTitle('');\n m.redraw();\n }\n\n hero() {\n return IndexPage.prototype.hero();\n }\n\n id() {\n return app.data['fof-pages.home'];\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['app'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/Model'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/computed'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/string'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Badge'];","import app from 'flarum/app';\nimport Model from 'flarum/common/Model';\nimport computed from 'flarum/common/utils/computed';\nimport { getPlainContent } from 'flarum/common/utils/string';\nimport ItemList from 'flarum/common/utils/ItemList';\nimport Badge from 'flarum/common/components/Badge';\n\nexport default class Page extends Model {\n title = Model.attribute('title');\n time = Model.attribute('time', Model.transformDate);\n editTime = Model.attribute('editTime', Model.transformDate);\n content = Model.attribute('content');\n contentHtml = Model.attribute('contentHtml');\n contentPlain = computed('contentHtml', getPlainContent);\n slug = Model.attribute('slug');\n isHidden = Model.attribute('isHidden');\n isRestricted = Model.attribute('isRestricted');\n isHtml = Model.attribute('isHtml');\n\n badges() {\n const items = new ItemList();\n\n if (this.isHidden()) {\n items.add(\n 'hidden',\n Badge.component({\n type: 'hidden',\n icon: 'fas fa-trash',\n label: app.translator.trans('fof-pages.admin.badges.hidden'),\n })\n );\n }\n\n if (this.isRestricted()) {\n items.add(\n 'restricted',\n Badge.component({\n type: 'restricted',\n icon: 'fas fa-user-shield',\n label: app.translator.trans('fof-pages.admin.badges.restricted'),\n })\n );\n }\n\n return items;\n }\n}\n","import HomePage from './components/HomePage';\nimport PagePage from './components/PagePage';\nimport Page from '../common/models/Page';\n\napp.initializers.add('fof-pages', (app) => {\n app.routes.homePage = { path: '/pages/home', component: HomePage };\n\n app.routes.page = { path: '/p/:id', component: PagePage };\n app.store.models.pages = Page;\n\n /**\n * Generate a URL to a page.\n *\n * @param {../common/models/Page} page\n * @return {String}\n */\n app.route.page = (page) => {\n return app.route('page', {\n id: page.id() + '-' + page.slug(),\n });\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","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_inheritsLoose","subClass","superClass","create","constructor","flarum","core","compat","PageHero","_Component","apply","arguments","_proto","view","m","className","listItems","this","items","toArray","ItemList","page","attrs","add","Link","href","app","title","Component","PagePage","_Page","oninit","vnode","loadPage","bodyClass","classList","isHtml","id","slug","hero","content","LoadingIndicator","show","history","push","setTitle","redraw","component","trust","contentHtml","route","param","split","isNaN","parseInt","_this","preloaded","preloadedApiDocument","Array","isArray","store","getById","Promise","all","find","then","result","Page","HomePage","_PagePage","icon","drawer","hide","modal","close","IndexPage","data","_Model","_len","length","args","_key","concat","Model","time","editTime","contentPlain","computed","getPlainContent","isHidden","isRestricted","badges","Badge","type","label","trans","initializers","routes","homePage","path","models","pages"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@fof/pages/webpack/bootstrap","webpack://@fof/pages/webpack/runtime/compat get default export","webpack://@fof/pages/webpack/runtime/define property getters","webpack://@fof/pages/webpack/runtime/hasOwnProperty shorthand","webpack://@fof/pages/webpack/runtime/make namespace object","webpack://@fof/pages/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@fof/pages/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@fof/pages/external root \"flarum.core.compat['forum/components/IndexPage']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/helpers/icon']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/components/Page']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/components/LoadingIndicator']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/utils/classList']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/app']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/Component']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/components/Link']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/utils/ItemList']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/helpers/listItems']\"","webpack://@fof/pages/./src/forum/components/PageHero.js","webpack://@fof/pages/./src/forum/components/PagePage.js","webpack://@fof/pages/./src/forum/components/HomePage.js","webpack://@fof/pages/external root \"flarum.core.compat['app']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/Model']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/utils/computed']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/utils/string']\"","webpack://@fof/pages/external root \"flarum.core.compat['common/components/Badge']\"","webpack://@fof/pages/./src/common/models/Page.js","webpack://@fof/pages/./src/forum/index.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};","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['forum/components/IndexPage'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/icon'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Page'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/LoadingIndicator'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/classList'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/app'];","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/utils/ItemList'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/listItems'];","import app from 'flarum/common/app';\nimport Component from 'flarum/common/Component';\nimport Link from 'flarum/common/components/Link';\nimport ItemList from 'flarum/common/utils/ItemList';\nimport listItems from 'flarum/common/helpers/listItems';\n\n/**\n * The `PageHero` component displays the hero on a page page.\n *\n * ### Props\n *\n * - `page`\n */\nexport default class PageHero extends Component {\n view() {\n return (\n
\n
\n
    {listItems(this.items().toArray())}
\n
\n
\n );\n }\n\n /**\n * Build an item list for the contents of the page hero.\n *\n * @return {ItemList}\n */\n items() {\n const items = new ItemList();\n const page = this.attrs.page;\n\n items.add(\n 'title',\n

\n {page.title()}\n

\n );\n\n return items;\n }\n}\n","import Page from 'flarum/common/components/Page';\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\nimport classList from 'flarum/common/utils/classList';\n\nimport PageHero from './PageHero';\n\nexport default class PagePage extends Page {\n oninit(vnode) {\n super.oninit(vnode);\n\n /**\n * The page that is being viewed.\n *\n * @type {fof/pages/models/Page}\n */\n this.page = null;\n\n this.loadPage();\n\n this.bodyClass = 'App--page';\n }\n\n view() {\n const page = this.page;\n\n return (\n
\n
\n {page\n ? [\n this.hero(),\n
\n
{this.content()}
\n
,\n ]\n : LoadingIndicator.component({ className: 'LoadingIndicator--block' })}\n
\n
\n );\n }\n\n /**\n * Initialize page.\n *\n * @param {fof/pages/models/Page} page\n * @protected\n */\n show(page) {\n this.page = page;\n\n app.history.push('page', page.title());\n app.setTitle(page.title());\n\n m.redraw();\n }\n\n /**\n * Get the hero of current page.\n */\n hero() {\n return PageHero.component({ page: this.page });\n }\n\n /**\n * Get the content of page.\n */\n content() {\n return m.trust(this.page.contentHtml());\n }\n\n /**\n * Get current page id from route.\n *\n * @return string\n */\n id() {\n const id = m.route.param('id').split('-')[0];\n if (!isNaN(parseInt(id))) {\n return id;\n } else {\n return m.route.param('id');\n }\n }\n\n /**\n * Load page from the store, or make a request\n * if we don't have it yet. Then initialize the page.\n */\n loadPage() {\n const id = this.id();\n\n const preloaded = app.preloadedApiDocument();\n const page = (!Array.isArray(preloaded) && preloaded) || app.store.getById('pages', id);\n\n if (page) {\n this.show(page);\n } else {\n Promise.all([\n app.store.find('pages', id).then((result) => {\n this.show(result);\n }),\n m.redraw(),\n ]);\n }\n }\n}\n","import IndexPage from 'flarum/forum/components/IndexPage';\nimport icon from 'flarum/common/helpers/icon';\n\nimport PagePage from './PagePage';\n\nexport default class HomePage extends PagePage {\n oninit(vnode) {\n super.oninit(vnode);\n\n app.history.push('homePage', icon('fas fa-home'));\n app.drawer.hide();\n app.modal.close();\n }\n\n show(page) {\n this.page = page;\n app.setTitle('');\n m.redraw();\n }\n\n hero() {\n return IndexPage.prototype.hero();\n }\n\n id() {\n return app.data['fof-pages.home'];\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['app'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/Model'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/computed'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/string'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Badge'];","import app from 'flarum/app';\nimport Model from 'flarum/common/Model';\nimport computed from 'flarum/common/utils/computed';\nimport { getPlainContent } from 'flarum/common/utils/string';\nimport ItemList from 'flarum/common/utils/ItemList';\nimport Badge from 'flarum/common/components/Badge';\n\nexport default class Page extends Model {\n title = Model.attribute('title');\n time = Model.attribute('time', Model.transformDate);\n editTime = Model.attribute('editTime', Model.transformDate);\n content = Model.attribute('content');\n contentHtml = Model.attribute('contentHtml');\n contentPlain = computed('contentHtml', getPlainContent);\n slug = Model.attribute('slug');\n isHidden = Model.attribute('isHidden');\n isRestricted = Model.attribute('isRestricted');\n isHtml = Model.attribute('isHtml');\n\n badges() {\n const items = new ItemList();\n\n if (this.isHidden()) {\n items.add(\n 'hidden',\n Badge.component({\n type: 'hidden',\n icon: 'fas fa-trash',\n label: app.translator.trans('fof-pages.admin.badges.hidden'),\n })\n );\n }\n\n if (this.isRestricted()) {\n items.add(\n 'restricted',\n Badge.component({\n type: 'restricted',\n icon: 'fas fa-user-shield',\n label: app.translator.trans('fof-pages.admin.badges.restricted'),\n })\n );\n }\n\n return items;\n }\n}\n","import HomePage from './components/HomePage';\nimport PagePage from './components/PagePage';\nimport Page from '../common/models/Page';\n\napp.initializers.add('fof-pages', (app) => {\n app.routes.homePage = { path: '/pages/home', component: HomePage };\n\n app.routes.page = { path: '/p/:id', component: PagePage };\n app.store.models.pages = Page;\n\n /**\n * Generate a URL to a page.\n *\n * @param {../common/models/Page} page\n * @return {String}\n */\n app.route.page = (page) => {\n return app.route('page', {\n id: page.id() + '-' + page.slug(),\n });\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","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_inheritsLoose","subClass","superClass","create","constructor","flarum","core","compat","PageHero","_Component","apply","arguments","_proto","view","m","className","listItems","this","items","toArray","ItemList","page","attrs","add","Link","href","app","title","Component","PagePage","_Page","oninit","vnode","loadPage","bodyClass","classList","isHtml","id","slug","hero","content","LoadingIndicator","show","history","push","setTitle","redraw","component","trust","contentHtml","route","param","split","isNaN","parseInt","_this","preloaded","preloadedApiDocument","Array","isArray","store","getById","Promise","all","find","then","result","Page","HomePage","_PagePage","icon","drawer","hide","modal","close","IndexPage","data","_Model","_len","length","args","_key","concat","Model","time","editTime","contentPlain","computed","getPlainContent","isHidden","isRestricted","badges","Badge","type","label","trans","initializers","routes","homePage","path","models","pages"],"sourceRoot":""} \ No newline at end of file