\n {app.translator.trans('ianm-html-head.admin.modal.text')}
\n\n \n {app.translator.trans('ianm-html-head.admin.modal.description_label')} \n \n
\n\n \n {app.translator.trans('ianm-html-head.admin.modal.header_label')} \n \n
\n\n \n \n {app.translator.trans('ianm-html-head.admin.modal.save_button')}\n \n
\n \n );\n }\n\n onsubmit(e) {\n e.preventDefault();\n\n if (!this.header()) return;\n\n this.loading = true;\n\n const attrs = {\n description: this.description(),\n header: this.header(),\n };\n\n this.item.save(attrs).then(this.hide.bind(this), this.onerror.bind(this), this.loaded.bind(this));\n }\n}\n","import Component from 'flarum/Component';\nimport Button from 'flarum/components/Button';\nimport Switch from 'flarum/components/Switch';\nimport CreateHeadItemModal from './CreateHeadItemModal';\n\nexport default class HeadItemListItem extends Component {\n oninit(vnode) {\n super.oninit(vnode);\n\n this.item = this.attrs.headItem;\n }\n\n view() {\n return (\n \n {this.item.description()} \n \n {this.item.header()}
\n \n \n {Switch.component({\n state: this.item.data.attributes.active,\n onchange: (value) => {\n this.activeLoading = true;\n\n app.request({\n method: 'PATCH',\n url: `${app.forum.attribute('apiUrl')}/html-headers/${this.item.id()}`,\n body: {\n active: value,\n },\n }).then((response) => {\n this.item.data = response.data;\n this.activeLoading = false;\n\n m.redraw();\n });\n },\n loading: this.activeLoading,\n })}\n \n \n \n {Button.component(\n {\n className: 'Button Button--secondary',\n onclick: () => app.modal.show(CreateHeadItemModal, {item: this.item}),\n },\n app.translator.trans('ianm-html-head.admin.table.edit_button')\n )}\n {Button.component(\n {\n className: 'Button Button--danger',\n onclick: () => {\n this.deleting = true;\n this.item.delete().then(() => {\n this.deleting = false;\n m.redraw();\n });\n },\n loading: this.deleting,\n },\n app.translator.trans('ianm-html-head.admin.table.delete_button')\n )}\n
\n \n \n );\n }\n}\n","import Component from 'flarum/Component';\nimport LoadingIndicator from 'flarum/components/LoadingIndicator';\nimport Placeholder from 'flarum/components/Placeholder';\nimport Button from 'flarum/components/Button';\nimport HeadItemListItem from './HeadItemListItem';\nimport CreateHeadItemModal from './CreateHeadItemModal';\n\nexport default class HeadItemList extends Component {\n oninit(vnode) {\n super.oninit(vnode);\n\n this.loading = true;\n\n this.page = 0;\n this.pageSize = 20;\n }\n\n oncreate(vnode) {\n super.oncreate(vnode);\n\n this.refresh();\n }\n\n view() {\n let next, prev;\n\n if (this.nextResults === true) {\n next = Button.component({\n className: 'Button Button--PageList-next',\n icon: 'fas fa-angle-right',\n onclick: this.loadNext.bind(this),\n });\n }\n\n if (this.prevResults === true) {\n prev = Button.component({\n className: 'Button Button--PageList-prev',\n icon: 'fas fa-angle-left',\n onclick: this.loadPrev.bind(this),\n });\n }\n\n return (\n \n
\n {Button.component(\n {\n className: 'Button Button--primary',\n icon: 'fas fa-plus',\n onclick: () => app.modal.show(CreateHeadItemModal),\n },\n app.translator.trans('ianm-html-head.admin.create_button')\n )}\n
\n
\n
\n {this.loading ? (\n LoadingIndicator.component()\n ) : app.store.all('html-headers').length ? (\n
\n \n \n {app.translator.trans('ianm-html-head.admin.table.description_label')} \n {app.translator.trans('ianm-html-head.admin.table.header_label')} \n {app.translator.trans('ianm-html-head.admin.table.active_label')} \n \n \n \n \n {app.store\n .all('html-headers')\n .slice(this.page, this.page + this.pageSize)\n .map((headItem) => HeadItemListItem.component({ headItem }))}\n \n
\n ) : (\n
{Placeholder.component({ text: app.translator.trans('ianm-html-head.admin.table.empty_text') })}
\n )}\n
\n
\n {next}\n {prev}\n
\n
\n );\n }\n\n refresh() {\n return this.loadResults().then(this.parseResults.bind(this));\n }\n\n /**\n * Load a new page of HeadItem results.\n *\n * @param {Integer} page number.\n * @return {Promise}\n */\n loadResults() {\n const offset = this.page * this.pageSize;\n\n return app.store.find('html-headers', { page: { offset, limit: this.pageSize } });\n }\n\n /**\n * Load the next page of results.\n *\n * @public\n */\n loadNext() {\n if (this.nextResults === true) {\n this.page++;\n this.refresh();\n }\n }\n\n /**\n * Load the previous page of results.\n *\n * @public\n */\n loadPrev() {\n if (this.prevResults === true) {\n this.page--;\n this.refresh();\n }\n }\n\n /**\n * Parse results and append them to the page list.\n *\n * @param {Page[]} results\n * @return {Page[]}\n */\n parseResults(results) {\n this.loading = false;\n\n this.nextResults = !!results.payload.links.next;\n this.prevResults = !!results.payload.links.prev;\n\n m.redraw();\n }\n}\n","import ExtensionPage from 'flarum/components/ExtensionPage';\nimport HeadItem from './components/HeadItemList';\n\nexport default class HtmlHeadSettingsPage extends ExtensionPage {\n oninit(vnode) {\n super.oninit(vnode);\n }\n\n content() {\n return [\n \n
{HeadItem.component()}
\n
,\n ];\n }\n}\n","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import Model from 'flarum/Model';\n\nexport default class HeadItem extends Model {\n id = Model.attribute('id');\n description = Model.attribute('description');\n header = Model.attribute('header');\n active = Model.attribute('active');\n}\n","import app from 'flarum/app';\nimport HtmlHeadSettingsPage from './htmlHeadSettingsPage';\nimport HeadItem from './model/HeadItem';\n\napp.initializers.add('ianm-html-head', () => {\n app.store.models['html-headers'] = HeadItem;\n app.extensionData.for('ianm-html-head').registerPage(HtmlHeadSettingsPage);\n});\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack://@ianm/html-head/webpack/bootstrap","webpack://@ianm/html-head/external \"flarum.core.compat['common/components/Button']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/Model']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/Component']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/app']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/utils/Stream']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/components/ExtensionPage']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/components/LoadingIndicator']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/components/Placeholder']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/components/Switch']\"","webpack://@ianm/html-head/external \"flarum.core.compat['common/components/Modal']\"","webpack://@ianm/html-head/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@ianm/html-head/./src/admin/components/CreateHeadItemModal.js","webpack://@ianm/html-head/./src/admin/components/HeadItemListItem.js","webpack://@ianm/html-head/./src/admin/components/HeadItemList.js","webpack://@ianm/html-head/./src/admin/htmlHeadSettingsPage.js","webpack://@ianm/html-head/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://@ianm/html-head/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://@ianm/html-head/./src/admin/model/HeadItem.js","webpack://@ianm/html-head/./src/admin/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__","CreateHeadItemModal","oninit","vnode","this","item","attrs","app","store","createRecord","description","Stream","header","loading","className","title","exists","translator","trans","content","type","bidi","required","placeholder","onsubmit","e","preventDefault","save","then","hide","onerror","loaded","Modal","HeadItemListItem","headItem","view","Switch","component","state","data","attributes","active","onchange","activeLoading","request","method","url","forum","attribute","id","body","response","redraw","Button","onclick","modal","show","deleting","Component","HeadItemList","page","pageSize","oncreate","refresh","next","prev","nextResults","icon","loadNext","prevResults","loadPrev","LoadingIndicator","all","length","style","width","textAlign","slice","map","Placeholder","text","loadResults","parseResults","offset","find","limit","results","payload","links","HtmlHeadSettingsPage","HeadItem","ExtensionPage","_assertThisInitialized","self","ReferenceError","_defineProperty","obj","configurable","writable","Model","initializers","add","models","extensionData","registerPage"],"mappings":"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","file":"admin.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 = 10);\n","module.exports = flarum.core.compat['common/components/Button'];","module.exports = flarum.core.compat['common/Model'];","module.exports = flarum.core.compat['common/Component'];","module.exports = flarum.core.compat['common/app'];","module.exports = flarum.core.compat['common/utils/Stream'];","module.exports = flarum.core.compat['common/components/ExtensionPage'];","module.exports = flarum.core.compat['common/components/LoadingIndicator'];","module.exports = flarum.core.compat['common/components/Placeholder'];","module.exports = flarum.core.compat['common/components/Switch'];","module.exports = flarum.core.compat['common/components/Modal'];","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","import Modal from 'flarum/common/components/Modal';\nimport Button from 'flarum/common/components/Button';\nimport Stream from 'flarum/common/utils/Stream';\n\nexport default class CreateHeadItemModal extends Modal {\n oninit(vnode) {\n super.oninit(vnode);\n\n this.item = this.attrs.item || app.store.createRecord('html-headers');\n\n this.description = Stream(this.item.description() || '');\n this.header = Stream(this.item.header() || '');\n\n this.loading = false;\n }\n\n className() {\n return 'Modal--medium';\n }\n\n title() {\n return this.item.exists\n ? app.translator.trans('ianm-html-head.admin.modal.edit_title')\n : app.translator.trans('ianm-html-head.admin.modal.create_title');\n }\n\n content() {\n return (\n \n
{app.translator.trans('ianm-html-head.admin.modal.text')}
\n\n
\n {app.translator.trans('ianm-html-head.admin.modal.description_label')} \n \n
\n\n
\n {app.translator.trans('ianm-html-head.admin.modal.header_label')} \n \n
\n\n
\n \n {app.translator.trans('ianm-html-head.admin.modal.save_button')}\n \n
\n
\n );\n }\n\n onsubmit(e) {\n e.preventDefault();\n\n if (!this.header()) return;\n\n this.loading = true;\n\n const attrs = {\n description: this.description(),\n header: this.header(),\n };\n\n this.item.save(attrs).then(this.hide.bind(this), this.onerror.bind(this), this.loaded.bind(this));\n }\n}\n","import Component from 'flarum/common/Component';\nimport Button from 'flarum/common/components/Button';\nimport Switch from 'flarum/common/components/Switch';\nimport CreateHeadItemModal from './CreateHeadItemModal';\n\nexport default class HeadItemListItem extends Component {\n oninit(vnode) {\n super.oninit(vnode);\n\n this.item = this.attrs.headItem;\n }\n\n view() {\n return (\n \n {this.item.description()} \n \n {this.item.header()}
\n \n \n {Switch.component({\n state: this.item.data.attributes.active,\n onchange: (value) => {\n this.activeLoading = true;\n\n app.request({\n method: 'PATCH',\n url: `${app.forum.attribute('apiUrl')}/html-headers/${this.item.id()}`,\n body: {\n active: value,\n },\n }).then((response) => {\n this.item.data = response.data;\n this.activeLoading = false;\n\n m.redraw();\n });\n },\n loading: this.activeLoading,\n })}\n \n \n \n {Button.component(\n {\n className: 'Button Button--secondary',\n onclick: () => app.modal.show(CreateHeadItemModal, { item: this.item }),\n },\n app.translator.trans('ianm-html-head.admin.table.edit_button')\n )}\n {Button.component(\n {\n className: 'Button Button--danger',\n onclick: () => {\n this.deleting = true;\n this.item.delete().then(() => {\n this.deleting = false;\n m.redraw();\n });\n },\n loading: this.deleting,\n },\n app.translator.trans('ianm-html-head.admin.table.delete_button')\n )}\n
\n \n \n );\n }\n}\n","import Component from 'flarum/common/Component';\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\nimport Placeholder from 'flarum/common/components/Placeholder';\nimport Button from 'flarum/common/components/Button';\nimport HeadItemListItem from './HeadItemListItem';\nimport CreateHeadItemModal from './CreateHeadItemModal';\n\nexport default class HeadItemList extends Component {\n oninit(vnode) {\n super.oninit(vnode);\n\n this.loading = true;\n\n this.page = 0;\n this.pageSize = 20;\n }\n\n oncreate(vnode) {\n super.oncreate(vnode);\n\n this.refresh();\n }\n\n view() {\n let next, prev;\n\n if (this.nextResults === true) {\n next = Button.component({\n className: 'Button Button--PageList-next',\n icon: 'fas fa-angle-right',\n onclick: this.loadNext.bind(this),\n });\n }\n\n if (this.prevResults === true) {\n prev = Button.component({\n className: 'Button Button--PageList-prev',\n icon: 'fas fa-angle-left',\n onclick: this.loadPrev.bind(this),\n });\n }\n\n return (\n \n
\n {Button.component(\n {\n className: 'Button Button--primary',\n icon: 'fas fa-plus',\n onclick: () => app.modal.show(CreateHeadItemModal),\n },\n app.translator.trans('ianm-html-head.admin.create_button')\n )}\n
\n
\n
\n {this.loading ? (\n LoadingIndicator.component()\n ) : app.store.all('html-headers').length ? (\n
\n \n \n {app.translator.trans('ianm-html-head.admin.table.description_label')} \n {app.translator.trans('ianm-html-head.admin.table.header_label')} \n {app.translator.trans('ianm-html-head.admin.table.active_label')} \n \n \n \n \n {app.store\n .all('html-headers')\n .slice(this.page, this.page + this.pageSize)\n .map((headItem) => HeadItemListItem.component({ headItem }))}\n \n
\n ) : (\n
{Placeholder.component({ text: app.translator.trans('ianm-html-head.admin.table.empty_text') })}
\n )}\n
\n
\n {next}\n {prev}\n
\n
\n );\n }\n\n refresh() {\n return this.loadResults().then(this.parseResults.bind(this));\n }\n\n /**\n * Load a new page of HeadItem results.\n *\n * @param {Integer} page number.\n * @return {Promise}\n */\n loadResults() {\n const offset = this.page * this.pageSize;\n\n return app.store.find('html-headers', { page: { offset, limit: this.pageSize } });\n }\n\n /**\n * Load the next page of results.\n *\n * @public\n */\n loadNext() {\n if (this.nextResults === true) {\n this.page++;\n this.refresh();\n }\n }\n\n /**\n * Load the previous page of results.\n *\n * @public\n */\n loadPrev() {\n if (this.prevResults === true) {\n this.page--;\n this.refresh();\n }\n }\n\n /**\n * Parse results and append them to the page list.\n *\n * @param {Page[]} results\n * @return {Page[]}\n */\n parseResults(results) {\n this.loading = false;\n\n this.nextResults = !!results.payload.links.next;\n this.prevResults = !!results.payload.links.prev;\n\n m.redraw();\n }\n}\n","import ExtensionPage from 'flarum/common/components/ExtensionPage';\nimport HeadItem from './components/HeadItemList';\n\nexport default class HtmlHeadSettingsPage extends ExtensionPage {\n oninit(vnode) {\n super.oninit(vnode);\n }\n\n content() {\n return [\n \n
{HeadItem.component()}
\n
,\n ];\n }\n}\n","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import Model from 'flarum/common/Model';\n\nexport default class HeadItem extends Model {\n id = Model.attribute('id');\n description = Model.attribute('description');\n header = Model.attribute('header');\n active = Model.attribute('active');\n}\n","import app from 'flarum/common/app';\nimport HtmlHeadSettingsPage from './htmlHeadSettingsPage';\nimport HeadItem from './model/HeadItem';\n\napp.initializers.add('ianm-html-head', () => {\n app.store.models['html-headers'] = HeadItem;\n app.extensionData.for('ianm-html-head').registerPage(HtmlHeadSettingsPage);\n});\n"],"sourceRoot":""}
\ No newline at end of file