summaryrefslogtreecommitdiffstats
path: root/dist/twofactor_backupcodes-settings.js.map
blob: dce8f9618d5366a96aa85a02f57e5f857013e673 (plain)
1
{"version":3,"file":"twofactor_backupcodes-settings.js?v=86433b537a1c086b2dec","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/twofactor_backupcodes/src/views/PersonalSettings.vue","webpack:///nextcloud/apps/twofactor_backupcodes/src/views/PersonalSettings.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/twofactor_backupcodes/src/service/PrintService.js","webpack://nextcloud/./apps/twofactor_backupcodes/src/views/PersonalSettings.vue?3ed4","webpack://nextcloud/./apps/twofactor_backupcodes/src/views/PersonalSettings.vue?81a7","webpack://nextcloud/./apps/twofactor_backupcodes/src/views/PersonalSettings.vue?0c03","webpack:///nextcloud/apps/twofactor_backupcodes/src/store.js","webpack:///nextcloud/apps/twofactor_backupcodes/src/service/BackupCodesService.js","webpack:///nextcloud/apps/twofactor_backupcodes/src/settings.js","webpack:///nextcloud/apps/twofactor_backupcodes/src/views/PersonalSettings.vue?vue&type=style&index=0&id=142ef146&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/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","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/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (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((key) => (__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};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","<template>\n\t<div>\n\t\t<button v-if=\"!enabled\"\n\t\t\tid=\"generate-backup-codes\"\n\t\t\t:disabled=\"generatingCodes\"\n\t\t\t@click=\"generateBackupCodes\">\n\t\t\t{{ t('twofactor_backupcodes', 'Generate backup codes') }}\n\t\t\t<span :class=\"{'icon-loading-small': generatingCodes}\" />\n\t\t</button>\n\t\t<template v-else>\n\t\t\t<p>\n\t\t\t\t<template v-if=\"!haveCodes\">\n\t\t\t\t\t{{ t('twofactor_backupcodes', 'Backup codes have been generated. {used} of {total} codes have been used.', {used, total}) }}\n\t\t\t\t</template>\n\t\t\t\t<template v-else>\n\t\t\t\t\t{{ t('twofactor_backupcodes', 'These are your backup codes. Please save and/or print them as you will not be able to read the codes again later') }}\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t<li v-for=\"code in codes\" :key=\"code\" class=\"backup-code\">\n\t\t\t\t\t\t\t{{ code }}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t\t<a :href=\"downloadUrl\"\n\t\t\t\t\t\tclass=\"button primary\"\n\t\t\t\t\t\t:download=\"downloadFilename\">{{ t('twofactor_backupcodes', 'Save backup codes') }}</a>\n\t\t\t\t\t<button class=\"button\"\n\t\t\t\t\t\t@click=\"printCodes\">\n\t\t\t\t\t\t{{ t('twofactor_backupcodes', 'Print backup codes') }}\n\t\t\t\t\t</button>\n\t\t\t\t</template>\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t<button id=\"generate-backup-codes\"\n\t\t\t\t\t@click=\"generateBackupCodes\">\n\t\t\t\t\t{{ t('twofactor_backupcodes', 'Regenerate backup codes') }}\n\t\t\t\t</button>\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t<em>\n\t\t\t\t\t{{ t('twofactor_backupcodes', 'If you regenerate backup codes, you automatically invalidate old codes.') }}\n\t\t\t\t</em>\n\t\t\t</p>\n\t\t</template>\n\t</div>\n</template>\n\n<script>\nimport { confirmPassword } from '@nextcloud/password-confirmation'\nimport '@nextcloud/password-confirmation/dist/style.css'\nimport { print } from '../service/PrintService.js'\n\nexport default {\n\tname: 'PersonalSettings',\n\tdata() {\n\t\treturn {\n\t\t\tgeneratingCodes: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tdownloadUrl() {\n\t\t\tif (!this.codes) {\n\t\t\t\treturn ''\n\t\t\t}\n\t\t\treturn 'data:text/plain,' + encodeURIComponent(this.codes.reduce((prev, code) => {\n\t\t\t\treturn prev + code + '\\r\\n'\n\t\t\t}, ''))\n\t\t},\n\t\tdownloadFilename() {\n\t\t\tconst name = OC.theme.name || 'Nextcloud'\n\t\t\treturn name + '-backup-codes.txt'\n\t\t},\n\t\tenabled() {\n\t\t\treturn this.$store.state.enabled\n\t\t},\n\t\ttotal() {\n\t\t\treturn this.$store.state.total\n\t\t},\n\t\tused() {\n\t\t\treturn this.$store.state.used\n\t\t},\n\t\tcodes() {\n\t\t\treturn this.$store.state.codes\n\t\t},\n\t\tname() {\n\t\t\treturn OC.theme.name || 'Nextcloud'\n\t\t},\n\t\thaveCodes() {\n\t\t\treturn this.codes && this.codes.length > 0\n\t\t},\n\t},\n\tmethods: {\n\t\tgenerateBackupCodes() {\n\t\t\tconfirmPassword().then(() => {\n\t\t\t\t// Hide old codes\n\t\t\t\tthis.generatingCodes = true\n\n\t\t\t\tthis.$store.dispatch('generate').then(data => {\n\t\t\t\t\tthis.generatingCodes = false\n\t\t\t\t}).catch(err => {\n\t\t\t\t\tOC.Notification.showTemporary(t('twofactor_backupcodes', 'An error occurred while generating your backup codes'))\n\t\t\t\t\tthis.generatingCodes = false\n\t\t\t\t\tthrow err\n\t\t\t\t})\n\t\t\t}).catch(console.error.bind(this))\n\t\t},\n\n\t\tgetPrintData(codes) {\n\t\t\tif (!codes) {\n\t\t\t\treturn ''\n\t\t\t}\n\t\t\treturn codes.reduce((prev, code) => {\n\t\t\t\treturn prev + code + '<br>'\n\t\t\t}, '')\n\t\t},\n\n\t\tprintCodes() {\n\t\t\tprint(this.getPrintData(this.codes))\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n\t.backup-code {\n\t\tfont-family: monospace;\n\t\tletter-spacing: 0.02em;\n\t\tfont-size: 1.2em;\n\t}\n\t.button {\n\t\tdisplay: inline-block;\n\t}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PersonalSettings.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!./PersonalSettings.vue?vue&type=script&lang=js\"","/**\n * @copyright Copyright (c) 2016 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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\n/**\n * @param {any} data -\n */\nexport function print(data) {\n\tconst name = OC.theme.name || 'Nextcloud'\n\tconst newTab = window.open('', t('twofactor_backupcodes', '{name} backup codes', { name }))\n\tnewTab.document.write('<h1>' + t('twofactor_backupcodes', '{name} backup codes', { name }) + '</h1>')\n\tnewTab.document.write('<pre>' + data + '</pre>')\n\tnewTab.print()\n\tnewTab.close()\n}\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!./PersonalSettings.vue?vue&type=style&index=0&id=142ef146&prod&scoped=true&lang=css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./PersonalSettings.vue?vue&type=style&index=0&id=142ef146&prod&scoped=true&lang=css\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./PersonalSettings.vue?vue&type=template&id=142ef146&scoped=true\"\nimport script from \"./PersonalSettings.vue?vue&type=script&lang=js\"\nexport * from \"./PersonalSettings.vue?vue&type=script&lang=js\"\nimport style0 from \"./PersonalSettings.vue?vue&type=style&index=0&id=142ef146&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  \"142ef146\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.enabled)?_c('button',{attrs:{\"id\":\"generate-backup-codes\",\"disabled\":_vm.generatingCodes},on:{\"click\":_vm.generateBackupCodes}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('twofactor_backupcodes', 'Generate backup codes'))+\"\\n\\t\\t\"),_c('span',{class:{'icon-loading-small': _vm.generatingCodes}})]):[_c('p',[(!_vm.haveCodes)?[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('twofactor_backupcodes', 'Backup codes have been generated. {used} of {total} codes have been used.', {used: _vm.used, total: _vm.total}))+\"\\n\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('twofactor_backupcodes', 'These are your backup codes. Please save and/or print them as you will not be able to read the codes again later'))+\"\\n\\t\\t\\t\\t\"),_c('ul',_vm._l((_vm.codes),function(code){return _c('li',{key:code,staticClass:\"backup-code\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(code)+\"\\n\\t\\t\\t\\t\\t\")])}),0),_vm._v(\" \"),_c('a',{staticClass:\"button primary\",attrs:{\"href\":_vm.downloadUrl,\"download\":_vm.downloadFilename}},[_vm._v(_vm._s(_vm.t('twofactor_backupcodes', 'Save backup codes')))]),_vm._v(\" \"),_c('button',{staticClass:\"button\",on:{\"click\":_vm.printCodes}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('twofactor_backupcodes', 'Print backup codes'))+\"\\n\\t\\t\\t\\t\")])]],2),_vm._v(\" \"),_c('p',[_c('button',{attrs:{\"id\":\"generate-backup-codes\"},on:{\"click\":_vm.generateBackupCodes}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('twofactor_backupcodes', 'Regenerate backup codes'))+\"\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('p',[_c('em',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('twofactor_backupcodes', 'If you regenerate backup codes, you automatically invalidate old codes.'))+\"\\n\\t\\t\\t\")])])]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2019 Roeland Jago Douma <roeland@famdouma.nl>\n *\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 Vuex, { Store } from 'vuex'\nimport { generateCodes } from './service/BackupCodesService.js'\n\nVue.use(Vuex)\n\nconst state = {\n\tenabled: false,\n\ttotal: 0,\n\tused: 0,\n\tcodes: [],\n}\n\nconst mutations = {\n\tsetEnabled(state, enabled) {\n\t\tVue.set(state, 'enabled', enabled)\n\t},\n\tsetTotal(state, total) {\n\t\tVue.set(state, 'total', total)\n\t},\n\tsetUsed(state, used) {\n\t\tVue.set(state, 'used', used)\n\t},\n\tsetCodes(state, codes) {\n\t\tVue.set(state, 'codes', codes)\n\t},\n}\n\nconst actions = {\n\tgenerate({ commit }) {\n\t\tcommit('setEnabled', false)\n\n\t\treturn generateCodes().then(({ codes, state }) => {\n\t\t\tcommit('setEnabled', state.enabled)\n\t\t\tcommit('setTotal', state.total)\n\t\t\tcommit('setUsed', state.used)\n\t\t\tcommit('setCodes', codes)\n\t\t\treturn true\n\t\t})\n\t},\n}\n\nexport default new Store({\n\tstrict: process.env.NODE_ENV !== 'production',\n\tstate,\n\tmutations,\n\tactions,\n})\n","/**\n * @copyright Copyright (c) 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\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 Axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\n\n/**\n *\n */\nexport function generateCodes() {\n\tconst url = generateUrl('/apps/twofactor_backupcodes/settings/create')\n\n\treturn Axios.post(url, {}).then(resp => resp.data)\n}\n","/**\n * @copyright Copyright (c) 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\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 { loadState } from '@nextcloud/initial-state'\nimport Vue from 'vue'\n\nimport PersonalSettings from './views/PersonalSettings.vue'\nimport store from './store.js'\n\nVue.prototype.t = t\n\nconst initialState = loadState('twofactor_backupcodes', 'state')\nstore.replaceState(initialState)\n\nconst View = Vue.extend(PersonalSettings)\nnew View({\n\tstore,\n}).$mount('#twofactor-backupcodes-settings')\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.backup-code[data-v-142ef146] {\n\tfont-family: monospace;\n\tletter-spacing: 0.02em;\n\tfont-size: 1.2em;\n}\n.button[data-v-142ef146] {\n\tdisplay: inline-block;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/twofactor_backupcodes/src/views/PersonalSettings.vue\"],\"names\":[],\"mappings\":\";AAoIA;CACA,sBAAA;CACA,sBAAA;CACA,gBAAA;AACA;AACA;CACA,qBAAA;AACA\",\"sourcesContent\":[\"<template>\\n\\t<div>\\n\\t\\t<button v-if=\\\"!enabled\\\"\\n\\t\\t\\tid=\\\"generate-backup-codes\\\"\\n\\t\\t\\t:disabled=\\\"generatingCodes\\\"\\n\\t\\t\\t@click=\\\"generateBackupCodes\\\">\\n\\t\\t\\t{{ t('twofactor_backupcodes', 'Generate backup codes') }}\\n\\t\\t\\t<span :class=\\\"{'icon-loading-small': generatingCodes}\\\" />\\n\\t\\t</button>\\n\\t\\t<template v-else>\\n\\t\\t\\t<p>\\n\\t\\t\\t\\t<template v-if=\\\"!haveCodes\\\">\\n\\t\\t\\t\\t\\t{{ t('twofactor_backupcodes', 'Backup codes have been generated. {used} of {total} codes have been used.', {used, total}) }}\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t\\t<template v-else>\\n\\t\\t\\t\\t\\t{{ t('twofactor_backupcodes', 'These are your backup codes. Please save and/or print them as you will not be able to read the codes again later') }}\\n\\t\\t\\t\\t\\t<ul>\\n\\t\\t\\t\\t\\t\\t<li v-for=\\\"code in codes\\\" :key=\\\"code\\\" class=\\\"backup-code\\\">\\n\\t\\t\\t\\t\\t\\t\\t{{ code }}\\n\\t\\t\\t\\t\\t\\t</li>\\n\\t\\t\\t\\t\\t</ul>\\n\\t\\t\\t\\t\\t<a :href=\\\"downloadUrl\\\"\\n\\t\\t\\t\\t\\t\\tclass=\\\"button primary\\\"\\n\\t\\t\\t\\t\\t\\t:download=\\\"downloadFilename\\\">{{ t('twofactor_backupcodes', 'Save backup codes') }}</a>\\n\\t\\t\\t\\t\\t<button class=\\\"button\\\"\\n\\t\\t\\t\\t\\t\\t@click=\\\"printCodes\\\">\\n\\t\\t\\t\\t\\t\\t{{ t('twofactor_backupcodes', 'Print backup codes') }}\\n\\t\\t\\t\\t\\t</button>\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t</p>\\n\\t\\t\\t<p>\\n\\t\\t\\t\\t<button id=\\\"generate-backup-codes\\\"\\n\\t\\t\\t\\t\\t@click=\\\"generateBackupCodes\\\">\\n\\t\\t\\t\\t\\t{{ t('twofactor_backupcodes', 'Regenerate backup codes') }}\\n\\t\\t\\t\\t</button>\\n\\t\\t\\t</p>\\n\\t\\t\\t<p>\\n\\t\\t\\t\\t<em>\\n\\t\\t\\t\\t\\t{{ t('twofactor_backupcodes', 'If you regenerate backup codes, you automatically invalidate old codes.') }}\\n\\t\\t\\t\\t</em>\\n\\t\\t\\t</p>\\n\\t\\t</template>\\n\\t</div>\\n</template>\\n\\n<script>\\nimport { confirmPassword } from '@nextcloud/password-confirmation'\\nimport '@nextcloud/password-confirmation/dist/style.css'\\nimport { print } from '../service/PrintService.js'\\n\\nexport default {\\n\\tname: 'PersonalSettings',\\n\\tdata() {\\n\\t\\treturn {\\n\\t\\t\\tgeneratingCodes: false,\\n\\t\\t}\\n\\t},\\n\\tcomputed: {\\n\\t\\tdownloadUrl() {\\n\\t\\t\\tif (!this.codes) {\\n\\t\\t\\t\\treturn ''\\n\\t\\t\\t}\\n\\t\\t\\treturn 'data:text/plain,' + encodeURIComponent(this.codes.reduce((prev, code) => {\\n\\t\\t\\t\\treturn prev + code + '\\\\r\\\\n'\\n\\t\\t\\t}, ''))\\n\\t\\t},\\n\\t\\tdownloadFilename() {\\n\\t\\t\\tconst name = OC.theme.name || 'Nextcloud'\\n\\t\\t\\treturn name + '-backup-codes.txt'\\n\\t\\t},\\n\\t\\tenabled() {\\n\\t\\t\\treturn this.$store.state.enabled\\n\\t\\t},\\n\\t\\ttotal() {\\n\\t\\t\\treturn this.$store.state.total\\n\\t\\t},\\n\\t\\tused() {\\n\\t\\t\\treturn this.$store.state.used\\n\\t\\t},\\n\\t\\tcodes() {\\n\\t\\t\\treturn this.$store.state.codes\\n\\t\\t},\\n\\t\\tname() {\\n\\t\\t\\treturn OC.theme.name || 'Nextcloud'\\n\\t\\t},\\n\\t\\thaveCodes() {\\n\\t\\t\\treturn this.codes && this.codes.length > 0\\n\\t\\t},\\n\\t},\\n\\tmethods: {\\n\\t\\tgenerateBackupCodes() {\\n\\t\\t\\tconfirmPassword().then(() => {\\n\\t\\t\\t\\t// Hide old codes\\n\\t\\t\\t\\tthis.generatingCodes = true\\n\\n\\t\\t\\t\\tthis.$store.dispatch('generate').then(data => {\\n\\t\\t\\t\\t\\tthis.generatingCodes = false\\n\\t\\t\\t\\t}).catch(err => {\\n\\t\\t\\t\\t\\tOC.Notification.showTemporary(t('twofactor_backupcodes', 'An error occurred while generating your backup codes'))\\n\\t\\t\\t\\t\\tthis.generatingCodes = false\\n\\t\\t\\t\\t\\tthrow err\\n\\t\\t\\t\\t})\\n\\t\\t\\t}).catch(console.error.bind(this))\\n\\t\\t},\\n\\n\\t\\tgetPrintData(codes) {\\n\\t\\t\\tif (!codes) {\\n\\t\\t\\t\\treturn ''\\n\\t\\t\\t}\\n\\t\\t\\treturn codes.reduce((prev, code) => {\\n\\t\\t\\t\\treturn prev + code + '<br>'\\n\\t\\t\\t}, '')\\n\\t\\t},\\n\\n\\t\\tprintCodes() {\\n\\t\\t\\tprint(this.getPrintData(this.codes))\\n\\t\\t},\\n\\t},\\n}\\n</script>\\n\\n<style scoped>\\n\\t.backup-code {\\n\\t\\tfont-family: monospace;\\n\\t\\tletter-spacing: 0.02em;\\n\\t\\tfont-size: 1.2em;\\n\\t}\\n\\t.button {\\n\\t\\tdisplay: inline-block;\\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 = (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__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"2441\":\"bd6d3dc836e836cd4795\",\"5775\":\"bdb5a44b157eaff757ea\",\"5862\":\"18c97d281a8207f0ce8d\"}[chunkId] + \"\";\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 = (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};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4423;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__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\t4423: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(27342)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","name","data","generatingCodes","computed","downloadUrl","codes","encodeURIComponent","reduce","prev","code","downloadFilename","OC","theme","enabled","$store","state","total","used","haveCodes","length","methods","generateBackupCodes","confirmPassword","then","dispatch","catch","err","Notification","showTemporary","t","console","error","bind","getPrintData","printCodes","newTab","window","open","document","write","print","close","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_vm","this","_c","_self","_v","_s","_l","key","staticClass","attrs","on","class","Vue","use","Vuex","mutations","setEnabled","setTotal","setUsed","setCodes","actions","generate","_ref","commit","url","generateUrl","Axios","post","resp","generateCodes","_ref2","Store","strict","process","prototype","initialState","loadState","store","replaceState","extend","PersonalSettings","$mount","___CSS_LOADER_EXPORT___","push","module","id","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","promises","u","g","globalThis","Function","obj","prop","hasOwnProperty","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","type","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","replace","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}