{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@foskym/flarum-oauth-center/webpack/bootstrap","webpack://@foskym/flarum-oauth-center/webpack/runtime/compat get default export","webpack://@foskym/flarum-oauth-center/webpack/runtime/define property getters","webpack://@foskym/flarum-oauth-center/webpack/runtime/hasOwnProperty shorthand","webpack://@foskym/flarum-oauth-center/webpack/runtime/make namespace object","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/extenders']\"","webpack://@foskym/flarum-oauth-center/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@foskym/flarum-oauth-center/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/Model']\"","webpack://@foskym/flarum-oauth-center/./src/common/models/Client.js","webpack://@foskym/flarum-oauth-center/./src/common/models/Scope.js","webpack://@foskym/flarum-oauth-center/./src/common/extend.js","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['forum/app']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/extend']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['forum/components/UserPage']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/components/LinkButton']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/components/Page']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['forum/components/IndexPage']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['forum/components/LogInModal']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/utils/extractText']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/components/Tooltip']\"","webpack://@foskym/flarum-oauth-center/external root \"flarum.core.compat['common/components/Button']\"","webpack://@foskym/flarum-oauth-center/./src/forum/components/oauth/AuthorizePage.js","webpack://@foskym/flarum-oauth-center/./src/forum/components/user/AuthorizedPage.js","webpack://@foskym/flarum-oauth-center/./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};","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/extenders'];","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/Model'];","import Model from 'flarum/common/Model';\n\nexport default class Client extends Model {\n client_id = Model.attribute('client_id');\n client_secret = Model.attribute('client_secret');\n redirect_uri = Model.attribute('redirect_uri');\n grant_types = Model.attribute('grant_types');\n scope = Model.attribute('scope');\n user_id = Model.attribute('user_id');\n client_name = Model.attribute('client_name');\n client_icon = Model.attribute('client_icon');\n client_desc = Model.attribute('client_desc');\n client_home = Model.attribute('client_home');\n}\n","import Model from 'flarum/common/Model';\n\nexport default class Scope extends Model {\n scope = Model.attribute('scope');\n resource_path = Model.attribute('resource_path');\n method = Model.attribute('method');\n is_default = Model.attribute('is_default');\n scope_name = Model.attribute('scope_name');\n scope_icon = Model.attribute('scope_icon');\n scope_desc = Model.attribute('scope_desc');\n}\n","import Extend from 'flarum/common/extenders';\nimport Client from \"./models/Client\";\nimport Scope from \"./models/Scope\";\n\nexport default [\n new Extend.Store()\n .add('oauth-clients', Client)\n .add('oauth-scopes', Scope),\n];\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/app'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/extend'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/UserPage'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/LinkButton'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Page'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/IndexPage'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/LogInModal'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/extractText'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Tooltip'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Button'];","import app from 'flarum/forum/app';\nimport {extend} from 'flarum/common/extend';\nimport Page from 'flarum/common/components/Page';\nimport IndexPage from 'flarum/forum/components/IndexPage';\nimport LogInModal from 'flarum/forum/components/LogInModal';\nimport extractText from 'flarum/common/utils/extractText';\nimport Tooltip from 'flarum/common/components/Tooltip';\nimport Button from 'flarum/common/components/Button';\n\nexport default class AuthorizePage extends IndexPage {\n params = [];\n client = null;\n scopes = null;\n client_scope = [];\n loading = true;\n is_authorized = false;\n submit_loading = false;\n\n oninit(vnode) {\n super.oninit(vnode);\n if (!app.session.user) {\n setTimeout(() => app.modal.show(LogInModal), 500);\n }\n\n const params = m.route.param();\n\n if (params.client_id == null || params.response_type == null || params.redirect_uri == null) {\n m.route.set('/');\n } else {\n this.params = params;\n app.store.find('oauth-clients', params.client_id).then(client => {\n if (client.length === 0) {\n m.route.set('/');\n } else {\n this.client = client[0];\n let uris = null;\n if (this.client.redirect_uri().indexOf(' ') > -1) {\n uris = this.client.redirect_uri().split(' ');\n } else {\n uris = [this.client.redirect_uri()];\n }\n\n if (app.forum.attribute('foskym-oauth-center.require_exact_redirect_uri') && uris.indexOf(params.redirect_uri) == -1) {\n m.route.set('/');\n }\n if (app.forum.attribute('foskym-oauth-center.allow_implicit') && params.response_type == 'token') {\n m.route.set('/');\n }\n if (app.forum.attribute('foskym-oauth-center.enforce_state') && params.enforce_state == null) {\n m.route.set('/');\n }\n\n app.store.find('oauth-scopes').then((scopes) => {\n this.scopes = scopes\n let scope = params.scope;\n\n if (params.scope == null) {\n scope = this.client.scope();\n }\n\n let scopes_temp = [];\n if (scope == null) {\n scopes_temp = [];\n } else if (scope.indexOf(' ') > -1) {\n scopes_temp = scope.split(' ');\n } else {\n scopes_temp = [scope];\n }\n\n let default_scopes = [];\n this.scopes.map(scope => {\n if (scope.is_default() === 1) {\n default_scopes.push(scope);\n }\n });\n\n scopes_temp = scopes_temp.concat(default_scopes);\n\n this.client_scope = scopes_temp.filter((scope, index) => scopes_temp.indexOf(scope) === index);\n console.log(this.client_scope);\n this.loading = false;\n m.redraw();\n });\n\n\n }\n });\n }\n }\n\n setTitle() {\n app.setTitle(extractText(app.translator.trans('foskym-oauth-center.forum.page.title.authorize')));\n app.setTitleCount(0);\n }\n\n view() {\n if (!this.client) {\n return '';\n }\n return (\n !this.loading &&
\n
\n
\n
\n
\n

{app.forum.attribute('title')}

\n

\n {app.translator.trans('foskym-oauth-center.forum.authorize.access')} {this.client.client_name()}\n

\n\n
\n
\n\n
\n \n \n \n \n \n
\n
\n {\n this.client_scope.length > 0 && this.client_scope.map(scope => {\n let scope_info = null;\n this.scopes.map(s => {\n if (s.scope() === scope.scope()) {\n scope_info = s;\n }\n });\n if (scope_info == null) {\n return '';\n }\n return (\n
\n
\n {\n (scope_info.scope_icon().indexOf('fa-') > -1) ?\n :\n \n }\n
\n
\n
\n {scope_info.scope_name()}\n
\n \n {\n scope_info.scope_desc()\n .replace('{client_name}', this.client.client_name())\n .replace('{user}', app.session.user.attribute('displayName'))\n }\n \n
\n
\n );\n })\n }\n
\n
\n {/* \n \n \n \n */}\n \n
\n \n \n
\n
\n\n\n
\n
\n
\n
\n
\n );\n }\n deny(e) {\n this.is_authorized = false;\n }\n agree(e) {\n this.is_authorized = true;\n }\n\n onsubmit(e) {\n e.preventDefault();\n app.request({\n method: 'POST',\n url: '/oauth/authorize',\n body: {\n response_type: this.params.response_type,\n client_id: this.params.client_id,\n redirect_uri: this.params.redirect_uri,\n state: this.params.state,\n scope: this.params.scope,\n is_authorized: this.is_authorized,\n }\n }).then((params) => {\n let arr = []\n for (let k in params) {\n arr.push(`${k}=${params[k]}`)\n }\n let url = `${this.params.redirect_uri }?${arr.join('&')}`;\n window.location.href = url;\n });\n\n // Some form handling logic here\n }\n}\n","import UserPage from 'flarum/forum/components/UserPage';\nexport default class AuthorizedPage extends UserPage {\n oninit(vnode) {\n super.oninit(vnode);\n this.loadUser(m.route.param('username'));\n }\n content() {\n return (\n
\n
\n );\n }\n}\n","import app from 'flarum/forum/app';\nimport {extend} from 'flarum/common/extend';\nimport UserPage from 'flarum/forum/components/UserPage';\nimport LinkButton from 'flarum/common/components/LinkButton';\nimport AuthorizePage from \"./components/oauth/AuthorizePage\";\nimport AuthorizedPage from \"./components/user/AuthorizedPage\";\napp.initializers.add('foskym/flarum-oauth-center', () => {\n app.routes['oauth.authorize'] = {\n path: '/oauth/authorize',\n component: AuthorizePage\n };\n\n app.routes['user.authorized'] = {\n path: '/u/:username/authorized',\n component: AuthorizedPage\n };\n extend(UserPage.prototype, 'navItems', function (items) {\n if (app.session.user && app.session.user.id() === this.user.id()) {\n items.add(\n 'authorized',\n LinkButton.component(\n {\n href: app.route('user.authorized', { username: this.user.username() }),\n icon: 'fas fa-user-friends',\n },\n [\n app.translator.trans('foskym-oauth-center.forum.page.label.authorized'),\n // this.user.moderatorNoteCount() > 0 ? {this.user.moderatorNoteCount()} : '',\n ]\n ),\n -110\n );\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","flarum","core","compat","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_inheritsLoose","subClass","superClass","create","constructor","Client","_Model","_this","_len","arguments","length","args","Array","_key","apply","concat","client_id","Model","client_secret","redirect_uri","grant_types","scope","user_id","client_name","client_icon","client_desc","client_home","Scope","resource_path","method","is_default","scope_name","scope_icon","scope_desc","Extend","add","AuthorizePage","_IndexPage","params","client","scopes","client_scope","loading","is_authorized","submit_loading","_proto","oninit","vnode","_this2","app","user","setTimeout","show","LogInModal","m","route","param","response_type","set","this","find","then","uris","indexOf","split","attribute","enforce_state","scopes_temp","default_scopes","map","push","filter","index","console","log","redraw","setTitle","extractText","trans","view","_this3","className","class","href","target","src","Tooltip","text","scope_info","s","style","replace","id","onsubmit","type","name","Button","onclick","deny","agree","e","_this4","preventDefault","url","body","state","arr","k","join","window","location","IndexPage","AuthorizedPage","_UserPage","loadUser","content","UserPage","path","component","extend","items","LinkButton","username","icon"],"sourceRoot":""}