You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nextcloud/dist/oauth2-oauth2.js.map

1 line
43 KiB
Plaintext

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

{"version":3,"file":"oauth2-oauth2.js?v=75ac40719222ab57893f","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/oauth2/src/components/OAuthItem.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/oauth2/src/components/OAuthItem.vue","webpack://nextcloud/./apps/oauth2/src/components/OAuthItem.vue?2854","webpack://nextcloud/./apps/oauth2/src/components/OAuthItem.vue?7546","webpack://nextcloud/./apps/oauth2/src/components/OAuthItem.vue?098f","webpack:///nextcloud/apps/oauth2/src/App.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/oauth2/src/App.vue","webpack://nextcloud/./apps/oauth2/src/App.vue?1a14","webpack://nextcloud/./apps/oauth2/src/App.vue?8831","webpack://nextcloud/./apps/oauth2/src/App.vue?40c9","webpack:///nextcloud/apps/oauth2/src/main.js","webpack:///nextcloud/apps/oauth2/src/App.vue?vue&type=style&index=0&id=28d94e7c&prod&scoped=true&lang=css&","webpack:///nextcloud/apps/oauth2/src/components/OAuthItem.vue?vue&type=style&index=0&id=75e22bc6&prod&scoped=true&lang=css&","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OAuthItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OAuthItem.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>\n -\n - @author Roeland Jago Douma <roeland@famdouma.nl>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n<template>\n\t<tr>\n\t\t<td>\n\t\t\t<table class=\"inline\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td>{{ t('oauth2', 'Name') }}</td>\n\t\t\t\t\t<td>{{ name }}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td>{{ t('oauth2', 'Redirection URI') }}</td>\n\t\t\t\t\t<td>{{ redirectUri }}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td>{{ t('oauth2', 'Client Identifier') }}</td>\n\t\t\t\t\t<td><code>{{ clientId }}</code></td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td>{{ t('oauth2', 'Secret') }}</td>\n\t\t\t\t\t<td><code>{{ renderedSecret }}</code><a class=\"icon-toggle has-tooltip\" :title=\"t('oauth2', 'Show client secret')\" @click=\"toggleSecret\" /></td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</td>\n\t\t<td class=\"action-column\">\n\t\t\t<NcButton type=\"tertiary-no-background\"\n\t\t\t\t:aria-label=\"t('oauth2', 'Delete')\"\n\t\t\t\t@click=\"$emit('delete', id)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\"\n\t\t\t\t\t\t:title=\"t('oauth2', 'Delete')\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t</td>\n\t</tr>\n</template>\n\n<script>\n\nimport Delete from 'vue-material-design-icons/Delete'\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton'\n\nexport default {\n\tname: 'OAuthItem',\n\tcomponents: {\n\t\tDelete,\n\t\tNcButton,\n\t},\n\tprops: {\n\t\tclient: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tid: this.client.id,\n\t\t\tname: this.client.name,\n\t\t\tredirectUri: this.client.redirectUri,\n\t\t\tclientId: this.client.clientId,\n\t\t\tclientSecret: this.client.clientSecret,\n\t\t\trenderSecret: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\trenderedSecret() {\n\t\t\tif (this.renderSecret) {\n\t\t\t\treturn this.clientSecret\n\t\t\t} else {\n\t\t\t\treturn '****'\n\t\t\t}\n\t\t},\n\t},\n\tmethods: {\n\t\ttoggleSecret() {\n\t\t\tthis.renderSecret = !this.renderSecret\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n\t.icon-toggle,\n\t.icon-delete {\n\t\tdisplay: inline-block;\n\t\twidth: 16px;\n\t\theight: 16px;\n\t\tpadding: 10px;\n\t\tvertical-align: middle;\n\t}\n\ttd code {\n\t\tdisplay: inline-block;\n\t\tvertical-align: middle;\n\t}\n\ttable.inline td {\n\t\tborder: none;\n\t\tpadding: 5px;\n\t}\n</style>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OAuthItem.vue?vue&type=style&index=0&id=75e22bc6&prod&scoped=true&lang=css&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OAuthItem.vue?vue&type=style&index=0&id=75e22bc6&prod&scoped=true&lang=css&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./OAuthItem.vue?vue&type=template&id=75e22bc6&scoped=true&\"\nimport script from \"./OAuthItem.vue?vue&type=script&lang=js&\"\nexport * from \"./OAuthItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OAuthItem.vue?vue&type=style&index=0&id=75e22bc6&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"75e22bc6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td',[_c('table',{staticClass:\"inline\"},[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.t('oauth2', 'Name')))]),_vm._v(\" \"),_c('td',[_vm._v(_vm._s(_vm.name))])]),_vm._v(\" \"),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.t('oauth2', 'Redirection URI')))]),_vm._v(\" \"),_c('td',[_vm._v(_vm._s(_vm.redirectUri))])]),_vm._v(\" \"),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.t('oauth2', 'Client Identifier')))]),_vm._v(\" \"),_c('td',[_c('code',[_vm._v(_vm._s(_vm.clientId))])])]),_vm._v(\" \"),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.t('oauth2', 'Secret')))]),_vm._v(\" \"),_c('td',[_c('code',[_vm._v(_vm._s(_vm.renderedSecret))]),_c('a',{staticClass:\"icon-toggle has-tooltip\",attrs:{\"title\":_vm.t('oauth2', 'Show client secret')},on:{\"click\":_vm.toggleSecret}})])])])]),_vm._v(\" \"),_c('td',{staticClass:\"action-column\"},[_c('NcButton',{attrs:{\"type\":\"tertiary-no-background\",\"aria-label\":_vm.t('oauth2', 'Delete')},on:{\"click\":function($event){return _vm.$emit('delete', _vm.id)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Delete',{attrs:{\"size\":20,\"title\":_vm.t('oauth2', 'Delete')}})]},proxy:true}])})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>\n -\n - @author Roeland Jago Douma <roeland@famdouma.nl>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n<template>\n\t<NcSettingsSection :title=\"t('oauth2', 'OAuth 2.0 clients')\"\n\t\t:description=\"t('oauth2', 'OAuth 2.0 allows external services to request access to {instanceName}.', { instanceName })\"\n\t\t:doc-url=\"oauthDocLink\">\n\t\t<table v-if=\"clients.length > 0\" class=\"grid\">\n\t\t\t<thead>\n\t\t\t\t<tr>\n\t\t\t\t\t<th id=\"headerContent\" />\n\t\t\t\t\t<th id=\"headerRemove\">\n&nbsp;\n\t\t\t\t\t</th>\n\t\t\t\t</tr>\n\t\t\t</thead>\n\t\t\t<tbody>\n\t\t\t\t<OAuthItem v-for=\"client in clients\"\n\t\t\t\t\t:key=\"client.id\"\n\t\t\t\t\t:client=\"client\"\n\t\t\t\t\t@delete=\"deleteClient\" />\n\t\t\t</tbody>\n\t\t</table>\n\n\t\t<br>\n\t\t<h3>{{ t('oauth2', 'Add client') }}</h3>\n\t\t<span v-if=\"newClient.error\" class=\"msg error\">{{ newClient.errorMsg }}</span>\n\t\t<form @submit.prevent=\"addClient\">\n\t\t\t<input id=\"name\"\n\t\t\t\tv-model=\"newClient.name\"\n\t\t\t\ttype=\"text\"\n\t\t\t\tname=\"name\"\n\t\t\t\t:placeholder=\"t('oauth2', 'Name')\">\n\t\t\t<input id=\"redirectUri\"\n\t\t\t\tv-model=\"newClient.redirectUri\"\n\t\t\t\ttype=\"url\"\n\t\t\t\tname=\"redirectUri\"\n\t\t\t\t:placeholder=\"t('oauth2', 'Redirection URI')\">\n\t\t\t<NcButton native-type=\"submit\" class=\"inline-button\">\n\t\t\t\t{{ t('oauth2', 'Add') }}\n\t\t\t</NcButton>\n\t\t</form>\n\t</NcSettingsSection>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nimport OAuthItem from './components/OAuthItem'\nimport { generateUrl } from '@nextcloud/router'\nimport { getCapabilities } from '@nextcloud/capabilities'\nimport NcSettingsSection from '@nextcloud/vue/dist/Components/NcSettingsSection'\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton'\nimport { loadState } from '@nextcloud/initial-state'\n\nexport default {\n\tname: 'App',\n\tcomponents: {\n\t\tOAuthItem,\n\t\tNcSettingsSection,\n\t\tNcButton,\n\t},\n\tprops: {\n\t\tclients: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tnewClient: {\n\t\t\t\tname: '',\n\t\t\t\tredirectUri: '',\n\t\t\t\terrorMsg: '',\n\t\t\t\terror: false,\n\t\t\t},\n\t\t\toauthDocLink: loadState('oauth2', 'oauth2-doc-link'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tinstanceName() {\n\t\t\treturn getCapabilities().theming.name\n\t\t},\n\t},\n\tmethods: {\n\t\tdeleteClient(id) {\n\t\t\taxios.delete(generateUrl('apps/oauth2/clients/{id}', { id }))\n\t\t\t\t.then((response) => {\n\t\t\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\t\t\tthis.clients = this.clients.filter(client => client.id !== id)\n\t\t\t\t})\n\t\t},\n\t\taddClient() {\n\t\t\tthis.newClient.error = false\n\n\t\t\taxios.post(\n\t\t\t\tgenerateUrl('apps/oauth2/clients'),\n\t\t\t\t{\n\t\t\t\t\tname: this.newClient.name,\n\t\t\t\t\tredirectUri: this.newClient.redirectUri,\n\t\t\t\t}\n\t\t\t).then(response => {\n\t\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\t\tthis.clients.push(response.data)\n\n\t\t\t\tthis.newClient.name = ''\n\t\t\t\tthis.newClient.redirectUri = ''\n\t\t\t}).catch(reason => {\n\t\t\t\tthis.newClient.error = true\n\t\t\t\tthis.newClient.errorMsg = reason.response.data.message\n\t\t\t})\n\t\t},\n\t},\n}\n</script>\n<style scoped>\n\ttable {\n\t\tmax-width: 800px;\n\t}\n\n\t/** Overwrite button height and position to be aligned with the text input */\n\t.inline-button {\n\t\tmin-height: 34px !important;\n\t\tdisplay: inline-flex !important;\n\t}\n</style>\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=28d94e7c&prod&scoped=true&lang=css&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=28d94e7c&prod&scoped=true&lang=css&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=28d94e7c&scoped=true&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=28d94e7c&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28d94e7c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcSettingsSection',{attrs:{\"title\":_vm.t('oauth2', 'OAuth 2.0 clients'),\"description\":_vm.t('oauth2', 'OAuth 2.0 allows external services to request access to {instanceName}.', { instanceName: _vm.instanceName }),\"doc-url\":_vm.oauthDocLink}},[(_vm.clients.length > 0)?_c('table',{staticClass:\"grid\"},[_c('thead',[_c('tr',[_c('th',{attrs:{\"id\":\"headerContent\"}}),_vm._v(\" \"),_c('th',{attrs:{\"id\":\"headerRemove\"}},[_vm._v(\"\\n \\n\\t\\t\\t\\t\\t\")])])]),_vm._v(\" \"),_c('tbody',_vm._l((_vm.clients),function(client){return _c('OAuthItem',{key:client.id,attrs:{\"client\":client},on:{\"delete\":_vm.deleteClient}})}),1)]):_vm._e(),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('h3',[_vm._v(_vm._s(_vm.t('oauth2', 'Add client')))]),_vm._v(\" \"),(_vm.newClient.error)?_c('span',{staticClass:\"msg error\"},[_vm._v(_vm._s(_vm.newClient.errorMsg))]):_vm._e(),_vm._v(\" \"),_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.addClient.apply(null, arguments)}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newClient.name),expression:\"newClient.name\"}],attrs:{\"id\":\"name\",\"type\":\"text\",\"name\":\"name\",\"placeholder\":_vm.t('oauth2', 'Name')},domProps:{\"value\":(_vm.newClient.name)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.newClient, \"name\", $event.target.value)}}}),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newClient.redirectUri),expression:\"newClient.redirectUri\"}],attrs:{\"id\":\"redirectUri\",\"type\":\"url\",\"name\":\"redirectUri\",\"placeholder\":_vm.t('oauth2', 'Redirection URI')},domProps:{\"value\":(_vm.newClient.redirectUri)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.newClient, \"redirectUri\", $event.target.value)}}}),_vm._v(\" \"),_c('NcButton',{staticClass:\"inline-button\",attrs:{\"native-type\":\"submit\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('oauth2', 'Add'))+\"\\n\\t\\t\\t\")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport App from './App.vue'\nimport { loadState } from '@nextcloud/initial-state'\n\nVue.prototype.t = t\nVue.prototype.OC = OC\n\nconst clients = loadState('oauth2', 'clients')\n\nconst View = Vue.extend(App)\nconst oauth = new View({\n\tpropsData: {\n\t\tclients,\n\t},\n})\noauth.$mount('#oauth2')\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\ntable[data-v-28d94e7c] {\\n\\tmax-width: 800px;\\n}\\n\\n/** Overwrite button height and position to be aligned with the text input */\\n.inline-button[data-v-28d94e7c] {\\n\\tmin-height: 34px !important;\\n\\tdisplay: inline-flex !important;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/oauth2/src/App.vue\"],\"names\":[],\"mappings\":\";AAgJA;CACA,gBAAA;AACA;;AAEA,4EAAA;AACA;CACA,2BAAA;CACA,+BAAA;AACA\",\"sourcesContent\":[\"<!--\\n - @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>\\n -\\n - @author Roeland Jago Douma <roeland@famdouma.nl>\\n -\\n - @license GNU AGPL version 3 or any later version\\n -\\n - This program is free software: you can redistribute it and/or modify\\n - it under the terms of the GNU Affero General Public License as\\n - published by the Free Software Foundation, either version 3 of the\\n - License, or (at your option) any later version.\\n -\\n - This program is distributed in the hope that it will be useful,\\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n - GNU Affero General Public License for more details.\\n -\\n - You should have received a copy of the GNU Affero General Public License\\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\\n -\\n -->\\n<template>\\n\\t<NcSettingsSection :title=\\\"t('oauth2', 'OAuth 2.0 clients')\\\"\\n\\t\\t:description=\\\"t('oauth2', 'OAuth 2.0 allows external services to request access to {instanceName}.', { instanceName })\\\"\\n\\t\\t:doc-url=\\\"oauthDocLink\\\">\\n\\t\\t<table v-if=\\\"clients.length > 0\\\" class=\\\"grid\\\">\\n\\t\\t\\t<thead>\\n\\t\\t\\t\\t<tr>\\n\\t\\t\\t\\t\\t<th id=\\\"headerContent\\\" />\\n\\t\\t\\t\\t\\t<th id=\\\"headerRemove\\\">\\n&nbsp;\\n\\t\\t\\t\\t\\t</th>\\n\\t\\t\\t\\t</tr>\\n\\t\\t\\t</thead>\\n\\t\\t\\t<tbody>\\n\\t\\t\\t\\t<OAuthItem v-for=\\\"client in clients\\\"\\n\\t\\t\\t\\t\\t:key=\\\"client.id\\\"\\n\\t\\t\\t\\t\\t:client=\\\"client\\\"\\n\\t\\t\\t\\t\\t@delete=\\\"deleteClient\\\" />\\n\\t\\t\\t</tbody>\\n\\t\\t</table>\\n\\n\\t\\t<br>\\n\\t\\t<h3>{{ t('oauth2', 'Add client') }}</h3>\\n\\t\\t<span v-if=\\\"newClient.error\\\" class=\\\"msg error\\\">{{ newClient.errorMsg }}</span>\\n\\t\\t<form @submit.prevent=\\\"addClient\\\">\\n\\t\\t\\t<input id=\\\"name\\\"\\n\\t\\t\\t\\tv-model=\\\"newClient.name\\\"\\n\\t\\t\\t\\ttype=\\\"text\\\"\\n\\t\\t\\t\\tname=\\\"name\\\"\\n\\t\\t\\t\\t:placeholder=\\\"t('oauth2', 'Name')\\\">\\n\\t\\t\\t<input id=\\\"redirectUri\\\"\\n\\t\\t\\t\\tv-model=\\\"newClient.redirectUri\\\"\\n\\t\\t\\t\\ttype=\\\"url\\\"\\n\\t\\t\\t\\tname=\\\"redirectUri\\\"\\n\\t\\t\\t\\t:placeholder=\\\"t('oauth2', 'Redirection URI')\\\">\\n\\t\\t\\t<NcButton native-type=\\\"submit\\\" class=\\\"inline-button\\\">\\n\\t\\t\\t\\t{{ t('oauth2', 'Add') }}\\n\\t\\t\\t</NcButton>\\n\\t\\t</form>\\n\\t</NcSettingsSection>\\n</template>\\n\\n<script>\\nimport axios from '@nextcloud/axios'\\nimport OAuthItem from './components/OAuthItem'\\nimport { generateUrl } from '@nextcloud/router'\\nimport { getCapabilities } from '@nextcloud/capabilities'\\nimport NcSettingsSection from '@nextcloud/vue/dist/Components/NcSettingsSection'\\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton'\\nimport { loadState } from '@nextcloud/initial-state'\\n\\nexport default {\\n\\tname: 'App',\\n\\tcomponents: {\\n\\t\\tOAuthItem,\\n\\t\\tNcSettingsSection,\\n\\t\\tNcButton,\\n\\t},\\n\\tprops: {\\n\\t\\tclients: {\\n\\t\\t\\ttype: Array,\\n\\t\\t\\trequired: true,\\n\\t\\t},\\n\\t},\\n\\tdata() {\\n\\t\\treturn {\\n\\t\\t\\tnewClient: {\\n\\t\\t\\t\\tname: '',\\n\\t\\t\\t\\tredirectUri: '',\\n\\t\\t\\t\\terrorMsg: '',\\n\\t\\t\\t\\terror: false,\\n\\t\\t\\t},\\n\\t\\t\\toauthDocLink: loadState('oauth2', 'oauth2-doc-link'),\\n\\t\\t}\\n\\t},\\n\\tcomputed: {\\n\\t\\tinstanceName() {\\n\\t\\t\\treturn getCapabilities().theming.name\\n\\t\\t},\\n\\t},\\n\\tmethods: {\\n\\t\\tdeleteClient(id) {\\n\\t\\t\\taxios.delete(generateUrl('apps/oauth2/clients/{id}', { id }))\\n\\t\\t\\t\\t.then((response) => {\\n\\t\\t\\t\\t\\t// eslint-disable-next-line vue/no-mutating-props\\n\\t\\t\\t\\t\\tthis.clients = this.clients.filter(client => client.id !== id)\\n\\t\\t\\t\\t})\\n\\t\\t},\\n\\t\\taddClient() {\\n\\t\\t\\tthis.newClient.error = false\\n\\n\\t\\t\\taxios.post(\\n\\t\\t\\t\\tgenerateUrl('apps/oauth2/clients'),\\n\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\tname: this.newClient.name,\\n\\t\\t\\t\\t\\tredirectUri: this.newClient.redirectUri,\\n\\t\\t\\t\\t}\\n\\t\\t\\t).then(response => {\\n\\t\\t\\t\\t// eslint-disable-next-line vue/no-mutating-props\\n\\t\\t\\t\\tthis.clients.push(response.data)\\n\\n\\t\\t\\t\\tthis.newClient.name = ''\\n\\t\\t\\t\\tthis.newClient.redirectUri = ''\\n\\t\\t\\t}).catch(reason => {\\n\\t\\t\\t\\tthis.newClient.error = true\\n\\t\\t\\t\\tthis.newClient.errorMsg = reason.response.data.message\\n\\t\\t\\t})\\n\\t\\t},\\n\\t},\\n}\\n</script>\\n<style scoped>\\n\\ttable {\\n\\t\\tmax-width: 800px;\\n\\t}\\n\\n\\t/** Overwrite button height and position to be aligned with the text input */\\n\\t.inline-button {\\n\\t\\tmin-height: 34px !important;\\n\\t\\tdisplay: inline-flex !important;\\n\\t}\\n</style>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.icon-toggle[data-v-75e22bc6],\\n.icon-delete[data-v-75e22bc6] {\\n\\tdisplay: inline-block;\\n\\twidth: 16px;\\n\\theight: 16px;\\n\\tpadding: 10px;\\n\\tvertical-align: middle;\\n}\\ntd code[data-v-75e22bc6] {\\n\\tdisplay: inline-block;\\n\\tvertical-align: middle;\\n}\\ntable.inline td[data-v-75e22bc6] {\\n\\tborder: none;\\n\\tpadding: 5px;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/oauth2/src/components/OAuthItem.vue\"],\"names\":[],\"mappings\":\";AAuHA;;CAEA,qBAAA;CACA,WAAA;CACA,YAAA;CACA,aAAA;CACA,sBAAA;AACA;AACA;CACA,qBAAA;CACA,sBAAA;AACA;AACA;CACA,YAAA;CACA,YAAA;AACA\",\"sourcesContent\":[\"<!--\\n - @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>\\n -\\n - @author Roeland Jago Douma <roeland@famdouma.nl>\\n -\\n - @license GNU AGPL version 3 or any later version\\n -\\n - This program is free software: you can redistribute it and/or modify\\n - it under the terms of the GNU Affero General Public License as\\n - published by the Free Software Foundation, either version 3 of the\\n - License, or (at your option) any later version.\\n -\\n - This program is distributed in the hope that it will be useful,\\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n - GNU Affero General Public License for more details.\\n -\\n - You should have received a copy of the GNU Affero General Public License\\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\\n -\\n -->\\n<template>\\n\\t<tr>\\n\\t\\t<td>\\n\\t\\t\\t<table class=\\\"inline\\\">\\n\\t\\t\\t\\t<tr>\\n\\t\\t\\t\\t\\t<td>{{ t('oauth2', 'Name') }}</td>\\n\\t\\t\\t\\t\\t<td>{{ name }}</td>\\n\\t\\t\\t\\t</tr>\\n\\t\\t\\t\\t<tr>\\n\\t\\t\\t\\t\\t<td>{{ t('oauth2', 'Redirection URI') }}</td>\\n\\t\\t\\t\\t\\t<td>{{ redirectUri }}</td>\\n\\t\\t\\t\\t</tr>\\n\\t\\t\\t\\t<tr>\\n\\t\\t\\t\\t\\t<td>{{ t('oauth2', 'Client Identifier') }}</td>\\n\\t\\t\\t\\t\\t<td><code>{{ clientId }}</code></td>\\n\\t\\t\\t\\t</tr>\\n\\t\\t\\t\\t<tr>\\n\\t\\t\\t\\t\\t<td>{{ t('oauth2', 'Secret') }}</td>\\n\\t\\t\\t\\t\\t<td><code>{{ renderedSecret }}</code><a class=\\\"icon-toggle has-tooltip\\\" :title=\\\"t('oauth2', 'Show client secret')\\\" @click=\\\"toggleSecret\\\" /></td>\\n\\t\\t\\t\\t</tr>\\n\\t\\t\\t</table>\\n\\t\\t</td>\\n\\t\\t<td class=\\\"action-column\\\">\\n\\t\\t\\t<NcButton type=\\\"tertiary-no-background\\\"\\n\\t\\t\\t\\t:aria-label=\\\"t('oauth2', 'Delete')\\\"\\n\\t\\t\\t\\t@click=\\\"$emit('delete', id)\\\">\\n\\t\\t\\t\\t<template #icon>\\n\\t\\t\\t\\t\\t<Delete :size=\\\"20\\\"\\n\\t\\t\\t\\t\\t\\t:title=\\\"t('oauth2', 'Delete')\\\" />\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t</NcButton>\\n\\t\\t</td>\\n\\t</tr>\\n</template>\\n\\n<script>\\n\\nimport Delete from 'vue-material-design-icons/Delete'\\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton'\\n\\nexport default {\\n\\tname: 'OAuthItem',\\n\\tcomponents: {\\n\\t\\tDelete,\\n\\t\\tNcButton,\\n\\t},\\n\\tprops: {\\n\\t\\tclient: {\\n\\t\\t\\ttype: Object,\\n\\t\\t\\trequired: true,\\n\\t\\t},\\n\\t},\\n\\tdata() {\\n\\t\\treturn {\\n\\t\\t\\tid: this.client.id,\\n\\t\\t\\tname: this.client.name,\\n\\t\\t\\tredirectUri: this.client.redirectUri,\\n\\t\\t\\tclientId: this.client.clientId,\\n\\t\\t\\tclientSecret: this.client.clientSecret,\\n\\t\\t\\trenderSecret: false,\\n\\t\\t}\\n\\t},\\n\\tcomputed: {\\n\\t\\trenderedSecret() {\\n\\t\\t\\tif (this.renderSecret) {\\n\\t\\t\\t\\treturn this.clientSecret\\n\\t\\t\\t} else {\\n\\t\\t\\t\\treturn '****'\\n\\t\\t\\t}\\n\\t\\t},\\n\\t},\\n\\tmethods: {\\n\\t\\ttoggleSecret() {\\n\\t\\t\\tthis.renderSecret = !this.renderSecret\\n\\t\\t},\\n\\t},\\n}\\n</script>\\n\\n<style scoped>\\n\\t.icon-toggle,\\n\\t.icon-delete {\\n\\t\\tdisplay: inline-block;\\n\\t\\twidth: 16px;\\n\\t\\theight: 16px;\\n\\t\\tpadding: 10px;\\n\\t\\tvertical-align: middle;\\n\\t}\\n\\ttd code {\\n\\t\\tdisplay: inline-block;\\n\\t\\tvertical-align: middle;\\n\\t}\\n\\ttable.inline td {\\n\\t\\tborder: none;\\n\\t\\tpadding: 5px;\\n\\t}\\n</style>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(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__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(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};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 5053;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t5053: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(8078); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","name","components","Delete","NcButton","props","client","type","required","data","id","redirectUri","clientId","clientSecret","renderSecret","computed","renderedSecret","methods","toggleSecret","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_c","_self","staticClass","_v","_s","t","attrs","on","$event","$emit","scopedSlots","_u","key","fn","proxy","OAuthItem","NcSettingsSection","clients","newClient","errorMsg","error","oauthDocLink","instanceName","deleteClient","axios","then","addClient","generateUrl","length","_l","_e","preventDefault","apply","arguments","directives","rawName","value","expression","domProps","target","composing","$set","Vue","OC","loadState","App","propsData","$mount","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","O","result","chunkIds","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","document","baseURI","self","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""}