{"version":3,"sources":["webpack:///./node_modules/@capacitor/core/dist/index.js","webpack:///./node_modules/capacitor-native-biometric/dist/esm/definitions.js","webpack:///./node_modules/capacitor-native-biometric/dist/esm/index.js","webpack:///./src/layout/assets/img/biobank-logo.png","webpack:///./src/modules/auth/components/Login.vue?9b92","webpack:///./src/modules/auth/components/Login.vue?0390","webpack:///./src/modules/auth/authMixin.ts","webpack:///./src/modules/auth/components/Login.vue","webpack:///./src/modules/auth/components/Login.vue?73f3","webpack:///./src/modules/auth/components/Login.vue?0d1a"],"names":["createCapacitorPlatforms","win","defaultPlatformMap","Map","set","name","capPlatforms","CapacitorPlatforms","currentPlatform","platforms","addPlatform","platform","setPlatform","has","get","initPlatforms","globalThis","self","window","global","ExceptionCode","CapacitorException","Error","message","code","super","this","getPlatformId","_a","_b","androidBridge","webkit","messageHandlers","bridge","createCapacitor","_c","_d","_e","capCustomPlatform","CapacitorCustomPlatform","cap","Capacitor","Plugins","defaultGetPlatform","getPlatform","defaultIsNativePlatform","isNativePlatform","defaultIsPluginAvailable","pluginName","plugin","registeredPlugins","getPluginHeader","isPluginAvailable","defaultGetPluginHeader","PluginHeaders","find","h","handleError","err","console","error","pluginMethodNoop","_target","prop","Promise","reject","defaultRegisterPlugin","jsImplementations","registeredPlugin","warn","proxy","pluginHeader","jsImplementation","loadPluginImplementation","async","createPluginMethod","impl","bind","Unimplemented","methodHeader","methods","m","rtype","options","nativePromise","toString","callback","nativeCallback","createPluginMethodWrapper","remove","wrapper","args","p","then","fn","Object","defineProperty","value","writable","configurable","addListener","removeListener","addListenerNative","eventName","call","callbackId","resolve","Proxy","_","Set","keys","registerPlugin","convertFileSrc","filePath","Exception","DEBUG","isLoggingEnabled","isNative","initCapacitorGlobal","WebPlugin","config","listeners","windowListeners","listenerFunc","push","windowListener","registered","addWindowListener","listener","removeWindowListener","data","forEach","length","windowEventName","pluginEventName","handler","event","notifyListeners","msg","Unavailable","index","indexOf","splice","handle","addEventListener","removeEventListener","BiometryType","NativeBiometric","web","NativeBiometricWeb","module","exports","render","_vm","_h","$createElement","_self","attrs","staticClass","scopedSlots","_u","key","_v","_s","isMobileDevice","$translator","language","auth","login","helper","forgottenPassword","nativeOn","$event","type","_k","keyCode","validMail","sendMailMotDePasseOublie","model","$$v","expression","rules","required","email","mailMotDePasseOublie","valid","on","loginForm","$set","showPW","password","ref","hover","directives","rawName","loginBiometric","deleteCredentials","staticRenderFns","routeMixin","extend","credentialsBiometrics","init","$auth","logout","isAvailable","server","verifyIdentity","reason","title","subtitle","description","a","username","$loader","go","$http","api","post","asLoginModel","x","stop","authentify","token","refreshtoken","$database","account","feed","save","$swal","toast","success","navigateToHome","catch","errorApi","getCredentials","cred","confirm","yesCancel","isConfirmed","setCredentials","finally","baseUrl","mounted","authMixin","mobileTypeMixin","validationMixin","props","component"],"mappings":"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","file":"js/chunk-86ee7b40.ec328ecb.js","sourcesContent":["/*! Capacitor: https://capacitorjs.com/ - MIT License */\nconst createCapacitorPlatforms = (win) => {\n const defaultPlatformMap = new Map();\n defaultPlatformMap.set('web', { name: 'web' });\n const capPlatforms = win.CapacitorPlatforms || {\n currentPlatform: { name: 'web' },\n platforms: defaultPlatformMap,\n };\n const addPlatform = (name, platform) => {\n capPlatforms.platforms.set(name, platform);\n };\n const setPlatform = (name) => {\n if (capPlatforms.platforms.has(name)) {\n capPlatforms.currentPlatform = capPlatforms.platforms.get(name);\n }\n };\n capPlatforms.addPlatform = addPlatform;\n capPlatforms.setPlatform = setPlatform;\n return capPlatforms;\n};\nconst initPlatforms = (win) => (win.CapacitorPlatforms = createCapacitorPlatforms(win));\n/**\n * @deprecated Set `CapacitorCustomPlatform` on the window object prior to runtime executing in the web app instead\n */\nconst CapacitorPlatforms = /*#__PURE__*/ initPlatforms((typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {}));\n/**\n * @deprecated Set `CapacitorCustomPlatform` on the window object prior to runtime executing in the web app instead\n */\nconst addPlatform = CapacitorPlatforms.addPlatform;\n/**\n * @deprecated Set `CapacitorCustomPlatform` on the window object prior to runtime executing in the web app instead\n */\nconst setPlatform = CapacitorPlatforms.setPlatform;\n\nconst legacyRegisterWebPlugin = (cap, webPlugin) => {\n var _a;\n const config = webPlugin.config;\n const Plugins = cap.Plugins;\n if (!config || !config.name) {\n // TODO: add link to upgrade guide\n throw new Error(`Capacitor WebPlugin is using the deprecated \"registerWebPlugin()\" function, but without the config. Please use \"registerPlugin()\" instead to register this web plugin.\"`);\n }\n // TODO: add link to upgrade guide\n console.warn(`Capacitor plugin \"${config.name}\" is using the deprecated \"registerWebPlugin()\" function`);\n if (!Plugins[config.name] || ((_a = config === null || config === void 0 ? void 0 : config.platforms) === null || _a === void 0 ? void 0 : _a.includes(cap.getPlatform()))) {\n // Add the web plugin into the plugins registry if there already isn't\n // an existing one. If it doesn't already exist, that means\n // there's no existing native implementation for it.\n // - OR -\n // If we already have a plugin registered (meaning it was defined in the native layer),\n // then we should only overwrite it if the corresponding web plugin activates on\n // a certain platform. For example: Geolocation uses the WebPlugin on Android but not iOS\n Plugins[config.name] = webPlugin;\n }\n};\n\nvar ExceptionCode;\n(function (ExceptionCode) {\n /**\n * API is not implemented.\n *\n * This usually means the API can't be used because it is not implemented for\n * the current platform.\n */\n ExceptionCode[\"Unimplemented\"] = \"UNIMPLEMENTED\";\n /**\n * API is not available.\n *\n * This means the API can't be used right now because:\n * - it is currently missing a prerequisite, such as network connectivity\n * - it requires a particular platform or browser version\n */\n ExceptionCode[\"Unavailable\"] = \"UNAVAILABLE\";\n})(ExceptionCode || (ExceptionCode = {}));\nclass CapacitorException extends Error {\n constructor(message, code) {\n super(message);\n this.message = message;\n this.code = code;\n }\n}\nconst getPlatformId = (win) => {\n var _a, _b;\n if (win === null || win === void 0 ? void 0 : win.androidBridge) {\n return 'android';\n }\n else if ((_b = (_a = win === null || win === void 0 ? void 0 : win.webkit) === null || _a === void 0 ? void 0 : _a.messageHandlers) === null || _b === void 0 ? void 0 : _b.bridge) {\n return 'ios';\n }\n else {\n return 'web';\n }\n};\n\nconst createCapacitor = (win) => {\n var _a, _b, _c, _d, _e;\n const capCustomPlatform = win.CapacitorCustomPlatform || null;\n const cap = win.Capacitor || {};\n const Plugins = (cap.Plugins = cap.Plugins || {});\n /**\n * @deprecated Use `capCustomPlatform` instead, default functions like registerPlugin will function with the new object.\n */\n const capPlatforms = win.CapacitorPlatforms;\n const defaultGetPlatform = () => {\n return capCustomPlatform !== null\n ? capCustomPlatform.name\n : getPlatformId(win);\n };\n const getPlatform = ((_a = capPlatforms === null || capPlatforms === void 0 ? void 0 : capPlatforms.currentPlatform) === null || _a === void 0 ? void 0 : _a.getPlatform) || defaultGetPlatform;\n const defaultIsNativePlatform = () => getPlatform() !== 'web';\n const isNativePlatform = ((_b = capPlatforms === null || capPlatforms === void 0 ? void 0 : capPlatforms.currentPlatform) === null || _b === void 0 ? void 0 : _b.isNativePlatform) || defaultIsNativePlatform;\n const defaultIsPluginAvailable = (pluginName) => {\n const plugin = registeredPlugins.get(pluginName);\n if (plugin === null || plugin === void 0 ? void 0 : plugin.platforms.has(getPlatform())) {\n // JS implementation available for the current platform.\n return true;\n }\n if (getPluginHeader(pluginName)) {\n // Native implementation available.\n return true;\n }\n return false;\n };\n const isPluginAvailable = ((_c = capPlatforms === null || capPlatforms === void 0 ? void 0 : capPlatforms.currentPlatform) === null || _c === void 0 ? void 0 : _c.isPluginAvailable) ||\n defaultIsPluginAvailable;\n const defaultGetPluginHeader = (pluginName) => { var _a; return (_a = cap.PluginHeaders) === null || _a === void 0 ? void 0 : _a.find(h => h.name === pluginName); };\n const getPluginHeader = ((_d = capPlatforms === null || capPlatforms === void 0 ? void 0 : capPlatforms.currentPlatform) === null || _d === void 0 ? void 0 : _d.getPluginHeader) || defaultGetPluginHeader;\n const handleError = (err) => win.console.error(err);\n const pluginMethodNoop = (_target, prop, pluginName) => {\n return Promise.reject(`${pluginName} does not have an implementation of \"${prop}\".`);\n };\n const registeredPlugins = new Map();\n const defaultRegisterPlugin = (pluginName, jsImplementations = {}) => {\n const registeredPlugin = registeredPlugins.get(pluginName);\n if (registeredPlugin) {\n console.warn(`Capacitor plugin \"${pluginName}\" already registered. Cannot register plugins twice.`);\n return registeredPlugin.proxy;\n }\n const platform = getPlatform();\n const pluginHeader = getPluginHeader(pluginName);\n let jsImplementation;\n const loadPluginImplementation = async () => {\n if (!jsImplementation && platform in jsImplementations) {\n jsImplementation =\n typeof jsImplementations[platform] === 'function'\n ? (jsImplementation = await jsImplementations[platform]())\n : (jsImplementation = jsImplementations[platform]);\n }\n else if (capCustomPlatform !== null &&\n !jsImplementation &&\n 'web' in jsImplementations) {\n jsImplementation =\n typeof jsImplementations['web'] === 'function'\n ? (jsImplementation = await jsImplementations['web']())\n : (jsImplementation = jsImplementations['web']);\n }\n return jsImplementation;\n };\n const createPluginMethod = (impl, prop) => {\n var _a, _b;\n if (pluginHeader) {\n const methodHeader = pluginHeader === null || pluginHeader === void 0 ? void 0 : pluginHeader.methods.find(m => prop === m.name);\n if (methodHeader) {\n if (methodHeader.rtype === 'promise') {\n return (options) => cap.nativePromise(pluginName, prop.toString(), options);\n }\n else {\n return (options, callback) => cap.nativeCallback(pluginName, prop.toString(), options, callback);\n }\n }\n else if (impl) {\n return (_a = impl[prop]) === null || _a === void 0 ? void 0 : _a.bind(impl);\n }\n }\n else if (impl) {\n return (_b = impl[prop]) === null || _b === void 0 ? void 0 : _b.bind(impl);\n }\n else {\n throw new CapacitorException(`\"${pluginName}\" plugin is not implemented on ${platform}`, ExceptionCode.Unimplemented);\n }\n };\n const createPluginMethodWrapper = (prop) => {\n let remove;\n const wrapper = (...args) => {\n const p = loadPluginImplementation().then(impl => {\n const fn = createPluginMethod(impl, prop);\n if (fn) {\n const p = fn(...args);\n remove = p === null || p === void 0 ? void 0 : p.remove;\n return p;\n }\n else {\n throw new CapacitorException(`\"${pluginName}.${prop}()\" is not implemented on ${platform}`, ExceptionCode.Unimplemented);\n }\n });\n if (prop === 'addListener') {\n p.remove = async () => remove();\n }\n return p;\n };\n // Some flair ✨\n wrapper.toString = () => `${prop.toString()}() { [capacitor code] }`;\n Object.defineProperty(wrapper, 'name', {\n value: prop,\n writable: false,\n configurable: false,\n });\n return wrapper;\n };\n const addListener = createPluginMethodWrapper('addListener');\n const removeListener = createPluginMethodWrapper('removeListener');\n const addListenerNative = (eventName, callback) => {\n const call = addListener({ eventName }, callback);\n const remove = async () => {\n const callbackId = await call;\n removeListener({\n eventName,\n callbackId,\n }, callback);\n };\n const p = new Promise(resolve => call.then(() => resolve({ remove })));\n p.remove = async () => {\n console.warn(`Using addListener() without 'await' is deprecated.`);\n await remove();\n };\n return p;\n };\n const proxy = new Proxy({}, {\n get(_, prop) {\n switch (prop) {\n // https://github.com/facebook/react/issues/20030\n case '$$typeof':\n return undefined;\n case 'toJSON':\n return () => ({});\n case 'addListener':\n return pluginHeader ? addListenerNative : addListener;\n case 'removeListener':\n return removeListener;\n default:\n return createPluginMethodWrapper(prop);\n }\n },\n });\n Plugins[pluginName] = proxy;\n registeredPlugins.set(pluginName, {\n name: pluginName,\n proxy,\n platforms: new Set([\n ...Object.keys(jsImplementations),\n ...(pluginHeader ? [platform] : []),\n ]),\n });\n return proxy;\n };\n const registerPlugin = ((_e = capPlatforms === null || capPlatforms === void 0 ? void 0 : capPlatforms.currentPlatform) === null || _e === void 0 ? void 0 : _e.registerPlugin) || defaultRegisterPlugin;\n // Add in convertFileSrc for web, it will already be available in native context\n if (!cap.convertFileSrc) {\n cap.convertFileSrc = filePath => filePath;\n }\n cap.getPlatform = getPlatform;\n cap.handleError = handleError;\n cap.isNativePlatform = isNativePlatform;\n cap.isPluginAvailable = isPluginAvailable;\n cap.pluginMethodNoop = pluginMethodNoop;\n cap.registerPlugin = registerPlugin;\n cap.Exception = CapacitorException;\n cap.DEBUG = !!cap.DEBUG;\n cap.isLoggingEnabled = !!cap.isLoggingEnabled;\n // Deprecated props\n cap.platform = cap.getPlatform();\n cap.isNative = cap.isNativePlatform();\n return cap;\n};\nconst initCapacitorGlobal = (win) => (win.Capacitor = createCapacitor(win));\n\nconst Capacitor = /*#__PURE__*/ initCapacitorGlobal(typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {});\nconst registerPlugin = Capacitor.registerPlugin;\n/**\n * @deprecated Provided for backwards compatibility for Capacitor v2 plugins.\n * Capacitor v3 plugins should import the plugin directly. This \"Plugins\"\n * export is deprecated in v3, and will be removed in v4.\n */\nconst Plugins = Capacitor.Plugins;\n/**\n * Provided for backwards compatibility. Use the registerPlugin() API\n * instead, and provide the web plugin as the \"web\" implmenetation.\n * For example\n *\n * export const Example = registerPlugin('Example', {\n * web: () => import('./web').then(m => new m.Example())\n * })\n *\n * @deprecated Deprecated in v3, will be removed from v4.\n */\nconst registerWebPlugin = (plugin) => legacyRegisterWebPlugin(Capacitor, plugin);\n\n/**\n * Base class web plugins should extend.\n */\nclass WebPlugin {\n constructor(config) {\n this.listeners = {};\n this.windowListeners = {};\n if (config) {\n // TODO: add link to upgrade guide\n console.warn(`Capacitor WebPlugin \"${config.name}\" config object was deprecated in v3 and will be removed in v4.`);\n this.config = config;\n }\n }\n addListener(eventName, listenerFunc) {\n const listeners = this.listeners[eventName];\n if (!listeners) {\n this.listeners[eventName] = [];\n }\n this.listeners[eventName].push(listenerFunc);\n // If we haven't added a window listener for this event and it requires one,\n // go ahead and add it\n const windowListener = this.windowListeners[eventName];\n if (windowListener && !windowListener.registered) {\n this.addWindowListener(windowListener);\n }\n const remove = async () => this.removeListener(eventName, listenerFunc);\n const p = Promise.resolve({ remove });\n Object.defineProperty(p, 'remove', {\n value: async () => {\n console.warn(`Using addListener() without 'await' is deprecated.`);\n await remove();\n },\n });\n return p;\n }\n async removeAllListeners() {\n this.listeners = {};\n for (const listener in this.windowListeners) {\n this.removeWindowListener(this.windowListeners[listener]);\n }\n this.windowListeners = {};\n }\n notifyListeners(eventName, data) {\n const listeners = this.listeners[eventName];\n if (listeners) {\n listeners.forEach(listener => listener(data));\n }\n }\n hasListeners(eventName) {\n return !!this.listeners[eventName].length;\n }\n registerWindowListener(windowEventName, pluginEventName) {\n this.windowListeners[pluginEventName] = {\n registered: false,\n windowEventName,\n pluginEventName,\n handler: event => {\n this.notifyListeners(pluginEventName, event);\n },\n };\n }\n unimplemented(msg = 'not implemented') {\n return new Capacitor.Exception(msg, ExceptionCode.Unimplemented);\n }\n unavailable(msg = 'not available') {\n return new Capacitor.Exception(msg, ExceptionCode.Unavailable);\n }\n async removeListener(eventName, listenerFunc) {\n const listeners = this.listeners[eventName];\n if (!listeners) {\n return;\n }\n const index = listeners.indexOf(listenerFunc);\n this.listeners[eventName].splice(index, 1);\n // If there are no more listeners for this type of event,\n // remove the window listener\n if (!this.listeners[eventName].length) {\n this.removeWindowListener(this.windowListeners[eventName]);\n }\n }\n addWindowListener(handle) {\n window.addEventListener(handle.windowEventName, handle.handler);\n handle.registered = true;\n }\n removeWindowListener(handle) {\n if (!handle) {\n return;\n }\n window.removeEventListener(handle.windowEventName, handle.handler);\n handle.registered = false;\n }\n}\n\nconst WebView = /*#__PURE__*/ registerPlugin('WebView');\n\nexport { Capacitor, CapacitorException, CapacitorPlatforms, ExceptionCode, Plugins, WebPlugin, WebView, addPlatform, registerPlugin, registerWebPlugin, setPlatform };\n//# sourceMappingURL=index.js.map\n","export var BiometryType;\n(function (BiometryType) {\n BiometryType[BiometryType[\"NONE\"] = 0] = \"NONE\";\n BiometryType[BiometryType[\"TOUCH_ID\"] = 1] = \"TOUCH_ID\";\n BiometryType[BiometryType[\"FACE_ID\"] = 2] = \"FACE_ID\";\n BiometryType[BiometryType[\"FINGERPRINT\"] = 3] = \"FINGERPRINT\";\n BiometryType[BiometryType[\"FACE_AUTHENTICATION\"] = 4] = \"FACE_AUTHENTICATION\";\n BiometryType[BiometryType[\"IRIS_AUTHENTICATION\"] = 5] = \"IRIS_AUTHENTICATION\";\n})(BiometryType || (BiometryType = {}));\n//# sourceMappingURL=definitions.js.map","import { registerPlugin } from '@capacitor/core';\nconst NativeBiometric = registerPlugin('NativeBiometric', {\n web: () => import('./web').then(m => new m.NativeBiometricWeb()),\n});\nexport * from './definitions';\nexport { NativeBiometric };\n//# sourceMappingURL=index.js.map","module.exports = __webpack_public_path__ + \"img/biobank-logo.9ec947ac.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=2465aa64&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{attrs:{\"name\":\"Login\"}},[_c('v-app-bar',{staticClass:\"rounded-tl-xl\",attrs:{\"height\":\"200\",\"dark\":\"\",\"flat\":\"\",\"color\":\"primary\",\"extended\":\"\"},scopedSlots:_vm._u([{key:\"extension\",fn:function(){return [_c('v-spacer'),_c('h2',{staticClass:\"text-uppercase\"},[_vm._v(\"Connexion \"+_vm._s(_vm.isMobileDevice() ? '' : \" à l'application\"))]),_c('v-spacer')]},proxy:true}])},[_c('v-spacer'),_c('v-img',{staticClass:\"img--logo--border rounded-tl-xl rounded-br-xl\",attrs:{\"max-width\":_vm.isMobileDevice() ? '100%' : '60%',\"src\":require('@/layout/assets/img/biobank-logo.png')}}),_c('v-spacer')],1),_c('v-card-subtitle',[_c('v-icon',[_vm._v(\"mdi-information-variant\")]),_vm._v(\" \"+_vm._s(_vm.$translator.language.data.auth.login.helper)+\" \")],1),_c('v-card-text',[_c('v-row',{attrs:{\"dense\":\"\",\"no-gutters\":\"\",\"justify\":\"center\"}},[(!_vm.forgottenPassword)?_c('v-col',{attrs:{\"cols\":_vm.isMobileDevice() ? 11 : 8}},[_c('v-form',{model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-text-field',{attrs:{\"type\":\"email\",\"rules\":[_vm.rules.required, _vm.rules.email],\"label\":_vm.$translator.language.data.auth.login.email,\"outlined\":\"\",\"rounded\":\"\",\"color\":\"primary\",\"autofocus\":\"\",\"prepend-inner-icon\":\"mdi-at\",\"name\":\"email\",\"required\":\"\",\"data-cy\":\"signinEmailField\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.loginForm($event)}},model:{value:(_vm.model.email),callback:function ($$v) {_vm.$set(_vm.model, \"email\", $$v)},expression:\"model.email\"}}),_c('v-text-field',{attrs:{\"type\":_vm.showPW ? 'text' : 'password',\"required\":\"\",\"rules\":[_vm.rules.required],\"label\":_vm.$translator.language.data.auth.login.password,\"color\":\"primary\",\"prepend-inner-icon\":\"mdi-lock\",\"append-icon\":_vm.showPW ? 'mdi-eye' : 'mdi-eye-off',\"name\":\"password\",\"data-cy\":\"signinPasswordField\",\"outlined\":\"\",\"rounded\":\"\"},on:{\"click:append\":function($event){_vm.showPW = !_vm.showPW},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.loginForm($event)}},model:{value:(_vm.model.password),callback:function ($$v) {_vm.$set(_vm.model, \"password\", $$v)},expression:\"model.password\"}})],1),_c('a',{staticClass:\"text-center mt-3\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){_vm.forgottenPassword = !_vm.forgottenPassword}}},[_vm._v(_vm._s(_vm.$translator.language.data.auth.login.forgottenPassword)+\" ?\")])],1):_c('v-col',{attrs:{\"cols\":_vm.isMobileDevice() ? 11 : 8}},[_c('v-card-subtitle',{staticClass:\"text-center my-4\"},[_vm._v(\" Saisissez le mail de votre compte. \"),_c('br'),_vm._v(\" Nous enverrons un mail vous permettant de réinitialiser le mot de passe. \")]),_c('v-form',{nativeOn:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.validMail && _vm.sendMailMotDePasseOublie}},model:{value:(_vm.validMail),callback:function ($$v) {_vm.validMail=$$v},expression:\"validMail\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.email],\"color\":\"primary\",\"outlined\":\"\",\"rounded\":\"\",\"autofocus\":\"\",\"prepend-inner-icon\":\"mdi-at\",\"name\":\"email\",\"label\":\"Mail\",\"type\":\"email\"},model:{value:(_vm.mailMotDePasseOublie),callback:function ($$v) {_vm.mailMotDePasseOublie=$$v},expression:\"mailMotDePasseOublie\"}})],1)],1)],1)],1),_c('v-card-actions',{staticClass:\"my-5\"},[_c('v-spacer'),(_vm.forgottenPassword)?_c('div',[_c('v-hover',{scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [_c('v-btn',{staticClass:\"mr-5\",attrs:{\"color\":\"primary\",\"outlined\":!hover,\"dark\":\"\",\"rounded\":\"\"},on:{\"click\":function($event){_vm.forgottenPassword = !_vm.forgottenPassword}}},[_vm._v(\" Retour \")])]}}],null,false,1008635457)}),_c('v-hover',{scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [_c('v-btn',{attrs:{\"color\":\"primary\",\"outlined\":!hover,\"dark\":\"\",\"rounded\":\"\"},on:{\"click\":_vm.sendMailMotDePasseOublie}},[_c('v-icon',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.validMail),expression:\"validMail\"}],attrs:{\"left\":\"\",\"color\":\"success\"}},[_vm._v(\"mdi-check\")]),_vm._v(\" Envoyer mail \")],1)]}}],null,false,84679252)})],1):_c('div',[_c('v-hover',{scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [_c('v-btn',{staticClass:\"mb-2\",attrs:{\"data-cy\":\"signinSubmitBtn\",\"color\":\"primary\",\"outlined\":!hover,\"dark\":\"\",\"rounded\":\"\"},on:{\"click\":_vm.loginForm}},[_c('v-icon',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.valid),expression:\"valid\"}],attrs:{\"left\":\"\",\"color\":\"success\"}},[_vm._v(\"mdi-check\")]),_vm._v(\" Connexion \")],1)]}}])}),(_vm.credentialsBiometrics)?_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"primary\",\"outlined\":\"\",\"dark\":\"\",\"rounded\":\"\"},on:{\"click\":_vm.loginBiometric}},[_c('v-icon',{attrs:{\"left\":\"\",\"color\":\"success\"}},[_vm._v(\"mdi-fingerprint\")]),_vm._v(\" Connexion biométrique \")],1):_vm._e(),(_vm.credentialsBiometrics)?_c('v-btn',{attrs:{\"outlined\":\"\",\"rounded\":\"\"},on:{\"click\":_vm.deleteCredentials}},[_vm._v(\" Supprimer infos biométriques \")]):_vm._e()],1),_c('v-spacer')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import RegisterModel from './model/registerModel'\r\nimport mixins from 'vue-typed-mixins'\r\nimport routeMixin from '@/router/routeMixin'\r\nimport { Credentials, NativeBiometric } from 'capacitor-native-biometric'\r\nimport { Capacitor } from '@capacitor/core'\r\n\r\nexport default mixins(routeMixin).extend({\r\n data() {\r\n return {\r\n mailMotDePasseOublie: '',\r\n credentialsBiometrics : null as null | Credentials\r\n }\r\n },\r\n methods: {\r\n init() {\r\n this.$auth.logout()\r\n },\r\n deleteCredentials() {\r\n NativeBiometric.isAvailable().then(value => {\r\n if (value.isAvailable) {\r\n NativeBiometric.deleteCredentials({\r\n server: 'recette.biobank.id3i.fr'\r\n })\r\n this.credentialsBiometrics = null\r\n }\r\n })\r\n },\r\n loginBiometric(){\r\n if(this.credentialsBiometrics){\r\n NativeBiometric.verifyIdentity({\r\n reason: 'For easy log in',\r\n title: 'Log in',\r\n subtitle: 'Maybe add subtitle here?',\r\n description: 'Maybe a description too?'\r\n })\r\n .then(a => {\r\n const model = new RegisterModel()\r\n // @ts-ignore\r\n model.password = this.credentialsBiometrics.password\r\n // @ts-ignore\r\n model.email = this.credentialsBiometrics.username\r\n this.login(model)\r\n })\r\n }\r\n },\r\n login(model: RegisterModel): Promise {\r\n this.$loader.go()\r\n return this.$http\r\n .api('authentification', true)\r\n .post(model.asLoginModel())\r\n .then(x => {\r\n this.$loader.stop()\r\n const login = () => {\r\n this.$auth.authentify(x.data.token, x.data.refreshtoken)\r\n\r\n return this.$http\r\n .api('user/current')\r\n .get()\r\n .then(x => {\r\n this.$database.account.feed(x.data)\r\n this.$database.save()\r\n\r\n this.$swal.toast.success()\r\n this.navigateToHome()\r\n\r\n return true\r\n })\r\n .catch(x => {\r\n this.$auth.logout()\r\n this.$swal.toast.errorApi(x)\r\n return false\r\n })\r\n }\r\n\r\n if (Capacitor.getPlatform() != 'web') {\r\n return NativeBiometric.isAvailable().then(value => {\r\n if (value.isAvailable) {\r\n return NativeBiometric.getCredentials({\r\n server: 'recette.biobank.id3i.fr'\r\n })\r\n .then(cred => login())\r\n .catch(cred => {\r\n const message =\r\n \"Voulez-vous sauvegarder les informations de connexion dans l'application ? Cela permettra de se connecter et de valider certaines actions sensibles via la reconnaissance biométrique de votre appareil (empreinte digitale ou reconnaissance faciale).\"\r\n const title = 'Sauvegarde identifiant connexion'\r\n return this.$swal.confirm.yesCancel(title, message, 'Sauvegarder').then(x => {\r\n if (x.isConfirmed) {\r\n NativeBiometric.setCredentials({\r\n username: model.email,\r\n password: model.password,\r\n server: 'recette.biobank.id3i.fr'\r\n })\r\n }\r\n return login()\r\n })\r\n })\r\n } else {\r\n return login()\r\n }\r\n })\r\n } else return login()\r\n })\r\n .catch(x => {\r\n this.$swal.toast.errorApi(x)\r\n return false\r\n })\r\n .finally(() => {\r\n this.$loader.stop()\r\n return false\r\n })\r\n },\r\n sendMailMotDePasseOublie() {\r\n this.$http\r\n .api('account/forgotpassword', true)\r\n .post({ email: this.mailMotDePasseOublie, baseUrl: this.baseUrl() })\r\n .then(() => {\r\n this.$swal.toast.success('Un email vous a été envoyé avec le lien de re-définition du mot de passe')\r\n this.mailMotDePasseOublie = ''\r\n })\r\n .catch(x => this.$swal.toast.errorApi(x))\r\n }\r\n },\r\n mounted: function() {\r\n NativeBiometric.isAvailable().then(value => {\r\n if (value.isAvailable) {\r\n NativeBiometric.getCredentials({\r\n server: 'recette.biobank.id3i.fr'\r\n }).then(cred => {\r\n this.credentialsBiometrics = cred\r\n })\r\n }\r\n })\r\n }\r\n})\r\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\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\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\n\n\n\n\n\n\n\r\nimport mixins from 'vue-typed-mixins'\r\nimport mobileTypeMixin from '@/plugins/mixins/mobileTypeMixin'\r\nimport validationMixin from '@/plugins/mixins/validationMixin'\r\nimport authMixin from '../authMixin'\r\nimport RegisterModel from '../model/registerModel'\r\n\r\nexport default mixins(authMixin, mobileTypeMixin, validationMixin).extend({\r\n props: { model: RegisterModel },\r\n data() {\r\n return {\r\n valid: false,\r\n validMail: false,\r\n forgottenPassword: false,\r\n showPW: false,\r\n }\r\n },\r\n methods: {\r\n loginForm() {\r\n this.login(this.model)\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=2465aa64&scoped=true&\"\nimport script from \"./Login.vue?vue&type=script&lang=ts&\"\nexport * from \"./Login.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=2465aa64&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 \"2465aa64\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}