{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/store/actions.ts","webpack:///./src/store/index.ts","webpack:///./src/pages/UserDelete.vue?a11b","webpack:///./src/components/SectionTitle.ts","webpack:///./src/components/icons/WokIconWarningC64.vue?e953","webpack:///./src/components/icons/WokIconWarningC64.vue?a4e6","webpack:///./src/components/icons/WokIconWarningC64.vue?af07","webpack:///./src/components/icons/WokIconWarningC64.vue","webpack:///./src/pages/UserDelete.vue","webpack:///./src/components/ButtonsCollection.ts","webpack:///./src/components/components.ts","webpack:///./src/pages/Register.vue?a236","webpack:///./src/platform-checker.ts","webpack:///./src/pages/Register.vue?1e57","webpack:///./src/pages/Register.vue?da10","webpack:///./src/pages/Register.vue","webpack:///./src/pages/RegisterConfirm.vue?9e12","webpack:///./src/pages/RegisterConfirm.vue?cbce","webpack:///./src/pages/RegisterConfirm.vue?52d9","webpack:///./src/pages/RegisterConfirm.vue","webpack:///./src/pages/SignIn.vue?1d3f","webpack:///./src/pages/SignIn.vue?73ea","webpack:///./src/pages/SignIn.vue?4cc4","webpack:///./src/pages/SignIn.vue","webpack:///./src/pages/Sharing.vue?9a59","webpack:///./src/pages/Sharing.vue?62c4","webpack:///./src/pages/Sharing.vue?1cce","webpack:///./src/pages/Sharing.vue","webpack:///./src/pages/PasswordRecovery.vue?8f8c","webpack:///./src/pages/PasswordRecovery.vue?1ce8","webpack:///./src/pages/PasswordRecovery.vue?56aa","webpack:///./src/pages/PasswordRecovery.vue","webpack:///./src/pages/PasswordUpdate.vue?c0af","webpack:///./src/pages/PasswordUpdate.vue?3d7a","webpack:///./src/pages/PasswordUpdate.vue?2698","webpack:///./src/pages/PasswordUpdate.vue","webpack:///./src/pages/PasswordUpdateConfirm.vue?4df9","webpack:///./src/pages/PasswordUpdateConfirm.vue?bd32","webpack:///./src/pages/PasswordUpdateConfirm.vue?8fe2","webpack:///./src/pages/PasswordUpdateConfirm.vue","webpack:///./src/pages/UserDashboard.vue?855d","webpack:///./src/pages/UserDashboard.vue?452d","webpack:///./src/pages/UserDashboard.vue?a737","webpack:///./src/pages/UserDashboard.vue","webpack:///./src/pages/privacy/PrivacyPolicy.vue?aec6","webpack:///./src/pages/privacy/privacy-en.md","webpack:///./src/pages/privacy/privacy-it.md","webpack:///./src/pages/privacy/privacy-de.md","webpack:///./src/pages/privacy/privacy-es.md","webpack:///./src/pages/privacy/privacy-fr.md","webpack:///./src/pages/privacy/privacy-pt.md","webpack:///./src/pages/privacy/PrivacyPolicy.vue?0ca0","webpack:///./src/pages/privacy/PrivacyPolicy.vue?ea32","webpack:///./src/pages/privacy/PrivacyPolicy.vue","webpack:///./src/router.ts","webpack:///./src/components/SectionSubtitle.ts","webpack:///./src/components/SectionSummary.ts","webpack:///./src/pages/UserDelete.vue?85f7","webpack:///./src/components/WokNotification.ts","webpack:///./src/i18n.ts","webpack:///./src/pages/Consent.vue?936e","webpack:///./src/client-checker.ts","webpack:///./src/components/LabelDivider.ts","webpack:///./src/pages/Consent.vue","webpack:///./src/components/SplitPage.ts","webpack:///./src/components/vue-utils.ts","webpack:///./src/components/index.ts","webpack:///./src/helpers/filters.ts","webpack:///./src/App.vue?5429","webpack:///./src/App.vue?6ba4","webpack:///./src/App.vue?98d7","webpack:///./src/App.vue","webpack:///./src/main.ts","webpack:///./src/components/icons/WokIconCheckC64.vue?965f","webpack:///./src/components/icons/WokIconCheckC64.vue?19d1","webpack:///./src/components/icons/WokIconCheckC64.vue?b589","webpack:///./src/components/icons/WokIconCheckC64.vue","webpack:///./src/pages/Consent.vue?2df3","webpack:///./src/pages/Consent.vue?d577","webpack:///./src/pages/UserDelete.vue?7c32","webpack:///./src/helpers/api.ts"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","register","ctx","endpoint","then","res","signIn","signInOidc","consentInfo","consent","signOut","commit","user","passwordSendUpdateEmail","passwordUpdate","emailSendConfirmEmail","emailConfirm","signInWithToken","token","authenticationCheck","state","isAuthenticated","getUserPlants","plantsInfo","deleteUser","console","log","verifyTokenInfo","actions","setLoading","loading","isLoading","setLang","lang","setSnackbar","snackbar","clearSnackbar","setTheme","theme","setClientApp","app","clientApp","setIsDevelopment","isDevelopment","invalidateCache","keys","cacheControl","updateAuthentication","update","loggedUser","userPlants","updateUserPlants","updateSharingInfo","info","shareInfo","share","status","updateSharingStatus","OPTIONS","mutations","getters","store","getStore","Store","showSnackbar","text","message","showSnackbarSuccess","kind","showSnackbarError","hideSnackbar","setThemeLight","setThemeLightAlt","setThemeDark","setThemeDarkAlt","componentName","functional","render","h","class","staticClass","slots","_h","_vm","_c","attrs","_v","_s","props","title","secondaryfill","fill","staticRenderFns","type","String","default","component","__awaiter","this","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","step","next","e","rejected","done","__generator","body","f","y","g","_","label","sent","trys","ops","verb","iterator","v","op","TypeError","pop","composition_api_1","require","api_1","router_1","store_1","defineComponent","setup","_this","router","useRouter","reactive","deleteAccountErrorGeneric","deleteAccountErrorPassword","deleteAccountProgress","accountDeleteSuccess","form","password","computed","onCancel","replace","query","currentRoute","onDeleteAccount","_a","dispatch","checkResult","resultCode","wrapperClasses","forceAlign","validator","test","undefined","WokIconWarningC64","WokIconCheckC64","WokNotification","SectionSummary","SectionSubtitle","SectionTitle","LabelDivider","ButtonsCollection","SplitPage","SplitPage_1","ButtonsCollection_1","LabelDivider_1","SectionTitle_1","SectionSubtitle_1","SectionSummary_1","WokNotification_1","WokIconCheckC64_vue_1","WokIconWarningC64_vue_1","$createElement","_self","slot","$t","registrationSent","scopedSlots","_u","fn","email","proxy","on","$event","registrationErrorNotification","onRegisterApple","_e","onRegisterGoogle","onRegisterFacebook","model","callback","$$v","$set","expression","privacyPolicyHref","registrationProgress","submitEnabled","onCreateAccountClick","signinRoute","getPlatform","navigator","userAgent","MSStream","usePlatformChecker","platformIsAndroid","platformIsIos","platformIsWeb","context","route","platform","client","i18n","givenName","lastName","language","privacy","useExternalRegisterMethods","clientIsToolbox","clientIsYou","useExternalRegisterMethodGoogle","useExternalRegisterMethodFacebook","useExternalRegisterMethodApple","clientId","client_id","returnUrl","response","privacyPolicyRoute","locale","qs","location","search","assign","tokenError","onContinueAppAndroid","openAndroidText","onContinueAppIos","openIosText","onContinueWeb","checkToken","userId","u","code","error","appName","clientIsBliss2","clientIsBliss","clientIsYesly","showAppLink","appUrl","showNotification","introTitle","signInErrorNotification","onSignInApple","onSignInGoogle","onSignInFacebook","passwordRecoveryRoute","signInProgress","onSignIn","registerRoute","useExternalSigninMethods","useExternalSigninMethodGoogle","useExternalSigninMethodFacebook","useExternalSigninMethodApple","impersonateUsername","impersonate","clientIsGoogleBliss","clientIsGoogleYesly","clientIsGoogleYou","args","username","trim","senderFullName","shareStatus","shareError","shareProcess","onAccept","onReject","style","fullName","sendRequest","endPoint","actionName","x","newStatus","passwordRecoveryError","passwordRecoverySent","passwordRecoveryProgress","onPasswordRecoveryClick","passwordUpdateError","passwordUpdateProgress","onPasswordUpdateClick","passwordConfirm","isRegistration","signOutProgress","onSignOut","signOutErrorNotification","plants","_l","plant","plantHandle","onDeleteAccountClick","markdownContent","params","URLSearchParams","use","basePath","routes","path","redirect","Register","meta","treeLevel","htmlTitle","RegisterConfirm","SignIn","beforeEnter","to","from","authorized","Consent","PasswordRecovery","PasswordUpdate","PasswordUpdateConfirm","PrivacyPolicy","UserDashboard","authorize","UserDelete","Sharing","init","scrollBehavior","savedPosition","beforeEach","document","matched","filter","map","access","icon","appropriateIcon","size","show","Boolean","canHide","onHideClick","listeners","subtitle","click","loadTranslations","translations","en","it","de","es","fr","hu","pl","pt","ro","nl","ru","cs","sl","loadTranslation","storage","section","prefix","screens","screen","toLocaleUpperCase","substring","getDateFnsLocale","fallbackLocale","getPrivacyPolicyLocalizedUrl","getYouPrivacyPolicyLocalizedUrl","getGenericPrivacyPolicyLocalizedUrl","split","find","qsReturnUrl","messages","useI18n","notificationTitle","notificationSubTitle","identityScopes","idScope","idScopeIndex","consentScopeDisplayText","resourceScopes","resScope","resScopeIndex","consentProgress","onDeny","allowDisabled","onAllow","useClientChecker","href","indexOf","clientIsBabel","clientIsAlexaYesly","clientIsAlexaBliss","clientIsAdmin","clientIsIftttYou","clientIsAlexaYou","i18n_1","client_checker_1","showConsentScopesCheckboxList","ref","forEach","scopesConsented","concat","checked","consentScope","displayName","te","some","required","appropriateIdentitySrc","isToolbox","isYesly","isBliss","textVariant","toString","beforecontent","content","aftercontent","src","registerComponents","Vue","components","includeComponents","includes","registerComponent","kebabize","toLowerCase","install","options","Array","isArray","currency","precision","parseInt","Math","abs","toFixed","substr","localizedDate","dt","nullValue","date","Date","format","extendedDate","day","dayName","dayNameShort","monthName","filters","themeClasses","identityClasses","wrapperScrollable","pageTransition","onStartTransition","onEndTransition","config","productionTip","noHeaderId","mixin","authenticationClientId","App","$mount","apiFailure","err","base","checkVersionHeader","authenticationEndPoint","serializeParameters","k","encodeURIComponent","join","http","a","paramsSerializer","initAction","protocol","host","interceptors","headers","endsWith","reload","buildRequest","url","parameters","getTime","discardableRequests","is401","addAuthorization","Authorization","isDiscardable","cts","cancel","CancelToken","source","method","cancelToken","request","getAsDataURL","responseType","reader","FileReader","onloadend","onerror","readAsDataURL","post","put","del"],"mappings":"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","file":"js/app.c79c945d.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { ActionContext } from 'vuex';\nimport { get, post, ApiResult, checkResult } from '../helpers/api';\nimport { State } from './abstractions';\nimport { PlantInfo, User, UserShareInfo } from '../model';\n\ntype RegisterResult = ApiResult;\ntype AuthenticationResult = ApiResult<{ user?: User, next?: string }>;\ntype UserPlantsResult = ApiResult<{ plantsInfo?: PlantInfo[], next?: string }>;\ntype ShareInfoResult = ApiResult;\n\nasync function register(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/register`;\n\n let result: RegisterResult = await post(endpoint, data).then(res => res.data);\n\n return result;\n}\n\nasync function signIn(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/signin`;\n\n let res = await post(endpoint, data).then(res => res.data) as AuthenticationResult;\n if (res && res.result == 'OK') {\n return res.data;\n }\n}\n\nasync function signInOidc(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/signin-oidc`;\n\n let res = await post(endpoint, data).then(res => res.data) as AuthenticationResult;\n if (res && res.result == 'OK') {\n return res.data;\n }\n}\n\nasync function consentInfo(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/consent`;\n\n let result: AuthenticationResult = await get(endpoint, data).then(res => res.data);\n\n return result;\n}\n\nasync function consent(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/consent`;\n\n let result: AuthenticationResult = await post(endpoint, data).then(res => res.data);\n\n return result;\n}\n\nasync function signOut(ctx: ActionContext) {\n const endpoint = `/_api/v1/auth/logout`;\n\n let result: AuthenticationResult = await post(endpoint).then(res => res.data);\n\n ctx.commit('updateAuthentication', { result: result.result, user: null });\n\n return result;\n}\n\nfunction passwordSendUpdateEmail(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/password/send-update-email`;\n\n return post(endpoint, data).then(res => res.data);\n}\n\nfunction passwordUpdate(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/password/update`;\n\n return post(endpoint, data).then(res => res.data);\n}\n\nfunction emailSendConfirmEmail(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/email/send-confirm-email`;\n\n return post(endpoint, data).then(res => res.data);\n}\n\nfunction emailConfirm(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/email/confirm`;\n\n return post(endpoint, data).then(res => res.data);\n}\n\nasync function signInWithToken(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/sign-in-with-token`;\n\n let result: AuthenticationResult = await post(endpoint, data, data.token)\n .then(res => res.data);\n\n return checkResult(result);\n}\n\nasync function authenticationCheck(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/check`;\n\n if (!ctx.state.isAuthenticated) {\n let result: AuthenticationResult = await get(endpoint)\n .then(res => res.data);\n\n ctx.commit('updateAuthentication', { result: result.result, user: result.data && result.data.user });\n\n return checkResult(result);\n }\n else {\n return true;\n }\n}\n\nasync function getUserPlants(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/user-plants`;\n\n let result: UserPlantsResult = await get(endpoint, null)\n .then(res => res.data);\n\n ctx.commit('updateUserPlants', { result: result.result, plantsInfo: result.data && result.data.plantsInfo });\n\n return result;\n}\n\nasync function deleteUser(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/auth/delete-user`;\n\n console.log(\"DELETE DATA\", data);\n\n let result: AuthenticationResult = await post(endpoint, data)\n .then(res => res.data);\n\n return result;\n}\n\nasync function verifyTokenInfo(ctx: ActionContext, data: any) {\n const endpoint = `/_api/v1/sharing/info`;\n\n console.log(\"VERIFY TOKEN\", data);\n try {\n let result: ShareInfoResult = await get(endpoint, null, data.token)\n .then(res => res.data);\n\n if (result.result != 'OK') {\n ctx.commit('updateSharingStatus', 'INVALID')\n return null;\n }\n\n ctx.commit('updateSharingInfo', result.data)\n ctx.commit('updateSharingStatus', 'PENDING')\n\n return result.data;\n } catch {\n ctx.commit('updateSharingStatus', 'INVALID')\n return null;\n }\n\n\n}\n\nexport const actions = {\n register,\n signIn,\n signInOidc,\n signOut,\n authenticationCheck,\n passwordSendUpdateEmail,\n passwordUpdate,\n emailSendConfirmEmail,\n emailConfirm,\n consentInfo,\n consent,\n getUserPlants,\n signInWithToken,\n deleteUser,\n verifyTokenInfo,\n}","import Vuex, { Store, StoreOptions, Getter, ActionContext } from 'vuex';\nimport { computed } from '@vue/composition-api';\nimport { State } from './abstractions';\n\n// Mutations\n\nfunction setLoading(state: State, loading: boolean) {\n if (state == null) { return }\n\n if (loading) {\n state.isLoading += 1;\n }\n else {\n state.isLoading -= 1;\n }\n}\n\nfunction setLang(state: State, lang: string) {\n if (state == null) { return }\n\n state.lang = lang;\n}\n\nfunction setSnackbar(state: State, snackbar: any) {\n if (state == null) { return }\n\n state.snackbar = snackbar;\n}\n\nfunction clearSnackbar(state: State) {\n if (state == null) { return }\n\n state.snackbar = null;\n}\n\nfunction setTheme(state: State, theme: string) {\n if (state == null) { return }\n\n state.theme = theme;\n}\n\nfunction setClientApp(state: State, app: string) {\n if (state == null) { return }\n\n state.clientApp = app;\n}\n\nfunction setIsDevelopment(state: State, isDevelopment: boolean) {\n if (state == null) { return }\n\n state.isDevelopment = isDevelopment;\n}\n\nfunction invalidateCache(state: State, keys: string[]) {\n if (state == null) { return }\n\n for (let key of keys) {\n state.cacheControl[key] = 'reload';\n }\n}\n\nfunction updateAuthentication(state: State, update: { result: 'OK' | 'ERROR', user: User }) {\n if (update.result == 'OK' && !!update.user) {\n state.isAuthenticated = true;\n state.loggedUser = update.user;\n }\n else {\n state.isAuthenticated = false;\n state.loggedUser = null;\n state.userPlants = null;\n }\n}\n\nfunction updateUserPlants(state: State, update: { result: 'OK' | 'ERROR', plantsInfo: PlantInfo[] }) {\n if (update.result == 'OK' && !!update.plantsInfo) {\n state.userPlants = update.plantsInfo;\n }\n else {\n state.userPlants = null;\n }\n}\n\nfunction updateSharingInfo(state: State, info: UserShareInfo) {\n if (!state.shareInfo) {\n state.shareInfo = {\n user: null,\n share: {\n status: null\n }\n }\n }\n state.shareInfo.user = info\n}\n\nfunction updateSharingStatus(state: State, status: string) {\n if (!state.shareInfo) {\n state.shareInfo = {\n user: null,\n share: {\n status: null\n }\n }\n }\n state.shareInfo.share.status = status;\n console.log(state)\n}\n\n// Initial state and store options\n\nconst state: State = {\n isDevelopment: true,\n isLoading: 0,\n\n lang: 'it',\n snackbar: null,\n theme: 'light-alt',\n\n cacheControl: {},\n\n isAuthenticated: false,\n loggedUser: null,\n\n userPlants: null,\n\n clientApp: null,\n shareInfo: null\n}\n\nimport { actions as mainActions } from './actions';\nimport { PlantInfo, ShareInfo, User, UserShareInfo } from '@/model';\n\nconst OPTIONS: StoreOptions = {\n state,\n actions: {\n ...mainActions\n },\n mutations: {\n setLoading,\n setIsDevelopment,\n setLang,\n setSnackbar,\n setClientApp,\n clearSnackbar,\n setTheme,\n invalidateCache,\n updateAuthentication,\n updateUserPlants,\n updateSharingInfo,\n updateSharingStatus\n },\n getters: {\n }\n}\n\nlet store: Store = null;\n\nexport function getStore() {\n if (store == null) {\n store = new Vuex.Store(OPTIONS);\n }\n return store;\n}\n\n// Snackbar utilities\n\nexport function showSnackbar(text: string) {\n store.commit('setSnackbar', {\n message: text\n });\n}\n\nexport function showSnackbarSuccess(text: string) {\n store.commit('setSnackbar', {\n kind: 'success',\n message: text\n });\n}\n\nexport function showSnackbarError(text: string) {\n store.commit('setSnackbar', {\n kind: 'error',\n message: text\n });\n}\n\nexport function hideSnackbar() {\n store.commit('clearSnackbar');\n}\n\n// Theme utilities\n\nexport function setThemeLight() {\n store.commit('setTheme', 'light');\n}\n\nexport function setThemeLightAlt() {\n store.commit('setTheme', 'light-alt');\n}\n\nexport function setThemeDark() {\n store.commit('setTheme', 'dark');\n}\n\nexport function setThemeDarkAlt() {\n store.commit('setTheme', 'dark-alt');\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserDelete.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserDelete.vue?vue&type=script&lang=ts&\"","import Vue, { FunctionalComponentOptions, CreateElement, RenderContext } from 'vue';\n\nconst componentName = 'section-title';\n\nexport default {\n name: componentName,\n\n functional: true,\n\n render: function(h: CreateElement, ctx: RenderContext) {\n return h(\n 'h1', { class: ['section-title', ctx.data.staticClass] }, [\n ctx.slots().default\n ]\n )\n }\n}","var render = function (_h,_vm) {var _c=_vm._c;return _c('svg',{staticClass:\"wok--icon--64\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 64 64\"}},[_c('title',[_vm._v(_vm._s(_vm.props.title))]),_c('g',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"fill\":_vm.props.secondaryfill || _vm.props.fill,\"stroke\":_vm.props.secondaryfill || _vm.props.fill}},[_c('circle',{attrs:{\"cx\":\"32\",\"cy\":\"32\",\"r\":\"29\",\"fill\":\"none\",\"stroke-miterlimit\":\"10\",\"stroke\":_vm.props.fill}}),_c('line',{attrs:{\"x1\":\"32\",\"y1\":\"14\",\"x2\":\"32\",\"y2\":\"39\",\"fill\":\"none\",\"stroke-miterlimit\":\"10\"}}),_c('circle',{attrs:{\"cx\":\"32\",\"cy\":\"47\",\"r\":\"1\",\"fill\":\"none\",\"stroke-miterlimit\":\"10\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport default {\n props: {\n title: { type: String, default: 'warning icon' },\n\t\tfill: { type: String, default: 'currentColor' },\n\t\tsecondaryfill: { type: String, default: '' }\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WokIconWarningC64.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WokIconWarningC64.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WokIconWarningC64.vue?vue&type=template&id=111a85f4&functional=true&\"\nimport script from \"./WokIconWarningC64.vue?vue&type=script&lang=ts&\"\nexport * from \"./WokIconWarningC64.vue?vue&type=script&lang=ts&\"\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 true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar composition_api_1 = require(\"@vue/composition-api\");\nvar api_1 = require(\"../helpers/api\");\nvar router_1 = require(\"../router\");\nvar store_1 = require(\"../store\");\nvar componentName = 'UserDelete';\nexports.default = composition_api_1.defineComponent({\n name: componentName,\n setup: function () {\n var _this = this;\n var store = store_1.getStore(), router = router_1.useRouter().router;\n var state = composition_api_1.reactive({\n deleteAccountErrorGeneric: false,\n deleteAccountErrorPassword: false,\n deleteAccountProgress: false,\n accountDeleteSuccess: false\n });\n var form = composition_api_1.reactive({\n password: ''\n });\n var user = composition_api_1.computed(function () { return store.state.loggedUser; });\n var onCancel = function () {\n router.replace({ name: 'user-dashboard', query: router.currentRoute.query });\n };\n var onDeleteAccount = function () { return __awaiter(_this, void 0, void 0, function () {\n var res;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n state.deleteAccountErrorGeneric = false;\n state.deleteAccountErrorPassword = false;\n state.deleteAccountProgress = true;\n return [4 /*yield*/, store.dispatch('deleteUser', { password: form.password })];\n case 1:\n res = _a.sent();\n console.log(\"DELETE RES\", res);\n state.deleteAccountProgress = false;\n if (api_1.checkResult(res)) {\n state.accountDeleteSuccess = true;\n }\n else {\n if (res.resultCode == 'WRONG-PASSWORD') {\n state.deleteAccountErrorPassword = true;\n }\n else {\n state.deleteAccountErrorGeneric = true;\n }\n }\n return [2 /*return*/];\n }\n });\n }); };\n return {\n state: state,\n form: form,\n user: user,\n onCancel: onCancel,\n onDeleteAccount: onDeleteAccount\n };\n },\n});\n","import Vue, { FunctionalComponentOptions, CreateElement, RenderContext } from 'vue';\n\nconst componentName = 'buttons-collection';\n\nexport default {\n name: componentName,\n\n functional: true,\n\n props: {\n kind: {\n type: String,\n default: 'single',\n validator: (v: string) => v == '' || /(single|double|multiple|vertical)/.test(v)\n },\n forceAlign: {\n type: String,\n default: undefined,\n validator: (v: string) => v == '' || /(left|center|right)/.test(v)\n }\n },\n\n render: function(h: CreateElement, ctx: RenderContext) {\n return h(\n 'div', { class: [ wrapperClasses(ctx), ctx.data.staticClass]}, [\n ctx.slots().title && h('p', { class: 'buttons-collection__title wok--body-short-02' }, [\n ctx.slots().title\n ]),\n h('div', { class: 'buttons-collection' }, [\n ctx.slots().actions\n ])\n ]\n )\n }\n}\n\nfunction wrapperClasses(ctx: RenderContext) {\n return {\n 'buttons-collection__wrapper': true,\n [`buttons-collection--${ctx.props.kind}`]: ctx.props.kind,\n [`buttons-collection--${ctx.props.forceAlign}`]: ctx.props.forceAlign\n }\n}","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WokIconWarningC64 = exports.WokIconCheckC64 = exports.WokNotification = exports.SectionSummary = exports.SectionSubtitle = exports.SectionTitle = exports.LabelDivider = exports.ButtonsCollection = exports.SplitPage = void 0;\nvar SplitPage_1 = require(\"./SplitPage\");\nexports.SplitPage = SplitPage_1.default;\nvar ButtonsCollection_1 = require(\"./ButtonsCollection\");\nexports.ButtonsCollection = ButtonsCollection_1.default;\nvar LabelDivider_1 = require(\"./LabelDivider\");\nexports.LabelDivider = LabelDivider_1.default;\nvar SectionTitle_1 = require(\"./SectionTitle\");\nexports.SectionTitle = SectionTitle_1.default;\nvar SectionSubtitle_1 = require(\"./SectionSubtitle\");\nexports.SectionSubtitle = SectionSubtitle_1.default;\nvar SectionSummary_1 = require(\"./SectionSummary\");\nexports.SectionSummary = SectionSummary_1.default;\nvar WokNotification_1 = require(\"./WokNotification\");\nexports.WokNotification = WokNotification_1.default;\nvar WokIconCheckC64_vue_1 = require(\"./icons/WokIconCheckC64.vue\");\nexports.WokIconCheckC64 = WokIconCheckC64_vue_1.default;\nvar WokIconWarningC64_vue_1 = require(\"./icons/WokIconWarningC64.vue\");\nexports.WokIconWarningC64 = WokIconWarningC64_vue_1.default;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t(\"accessRegisterTitle\")))])],1),(!_vm.state.registrationSent)?[_c('template',{slot:\"content\"},[_c('wok-notification',{attrs:{\"show\":_vm.state.registrationErrorNotification,\"kind\":\"danger\",\"canHide\":true},on:{\"hide-request\":function($event){_vm.state.registrationErrorNotification = false}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterErrorTitle\"))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterErrorSubTitle\"))+\" \")])],2),(_vm.state.useExternalRegisterMethods)?_c('buttons-collection',{attrs:{\"kind\":\"multiple\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterExternalTitle\"))+\" \")]),_c('template',{slot:\"actions\"},[(_vm.state.useExternalRegisterMethodApple)?_c('wok-button',{attrs:{\"variant\":\"apple\",\"icon\":\"wok-icon-apple-16\"},on:{\"click\":_vm.onRegisterApple}}):_vm._e(),(_vm.state.useExternalRegisterMethodGoogle)?_c('wok-button',{attrs:{\"variant\":\"google\",\"icon\":\"wok-icon-google-16\"},on:{\"click\":_vm.onRegisterGoogle}}):_vm._e(),(_vm.state.useExternalRegisterMethodFacebook)?_c('wok-button',{attrs:{\"variant\":\"facebook\",\"icon\":\"wok-icon-facebook-16\"},on:{\"click\":_vm.onRegisterFacebook}}):_vm._e()],1)],2):_vm._e(),(_vm.state.useExternalRegisterMethods)?_c('label-divider',[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterDividerLabel\"))+\" \")]):_vm._e(),_c('wok-form',{attrs:{\"kind\":\"light\"}},[_c('wok-form-row',[_c('wok-input-text',{attrs:{\"name\":\"givenName\",\"span\":\"6\",\"label\":_vm.$t('accessRegisterInputFormGivenNameLabel'),\"placeholder\":_vm.$t('accessRegisterInputFormGivenNamePlaceholder'),\"data-input\":\"given-name\"},model:{value:(_vm.state.form.givenName),callback:function ($$v) {_vm.$set(_vm.state.form, \"givenName\", $$v)},expression:\"state.form.givenName\"}}),_c('wok-input-text',{attrs:{\"name\":\"lastName\",\"span\":\"6\",\"label\":_vm.$t('accessRegisterInputFormLastNameLabel'),\"placeholder\":_vm.$t('accessRegisterInputFormLastNamePlaceholder'),\"data-input\":\"last-name\"},model:{value:(_vm.state.form.lastName),callback:function ($$v) {_vm.$set(_vm.state.form, \"lastName\", $$v)},expression:\"state.form.lastName\"}})],1),_c('wok-form-row',[_c('wok-input-text',{attrs:{\"name\":\"email\",\"span\":\"12\",\"label\":_vm.$t('accessRegisterInputFormEmailLabel'),\"placeholder\":_vm.$t('accessRegisterInputFormEmailPlaceholder'),\"data-input\":\"email\"},model:{value:(_vm.state.form.email),callback:function ($$v) {_vm.$set(_vm.state.form, \"email\", $$v)},expression:\"state.form.email\"}})],1),_c('wok-form-row',[_c('wok-select-native',{attrs:{\"name\":\"language\",\"span\":\"12\",\"label\":_vm.$t('accessRegisterInputFormLanguageLabel'),\"data-input\":\"language\"},model:{value:(_vm.state.form.language),callback:function ($$v) {_vm.$set(_vm.state.form, \"language\", $$v)},expression:\"state.form.language\"}},[_c('option',{attrs:{\"value\":\"en\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionEn\"))+\" \")]),_c('option',{attrs:{\"value\":\"it\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionIt\"))+\" \")]),_c('option',{attrs:{\"value\":\"de\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionDe\"))+\" \")]),_c('option',{attrs:{\"value\":\"es\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionEs\"))+\" \")]),_c('option',{attrs:{\"value\":\"fr\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionFr\"))+\" \")]),_c('option',{attrs:{\"value\":\"hu\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionHu\"))+\" \")]),_c('option',{attrs:{\"value\":\"nl\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionNl\"))+\" \")]),_c('option',{attrs:{\"value\":\"pl\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionPl\"))+\" \")]),_c('option',{attrs:{\"value\":\"pt\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionPt\"))+\" \")]),_c('option',{attrs:{\"value\":\"ro\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionRo\"))+\" \")]),_c('option',{attrs:{\"value\":\"ru\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionRu\"))+\" \")]),_c('option',{attrs:{\"value\":\"sr\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionSr\"))+\" \")]),_c('option',{attrs:{\"value\":\"cs\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionCs\"))+\" \")]),_c('option',{attrs:{\"value\":\"sk\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionSk\"))+\" \")]),_c('option',{attrs:{\"value\":\"sl\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterInputFormLanguageOptionSl\"))+\" \")])])],1),_c('wok-form-row',[_c('wok-checkbox-group',{attrs:{\"layout\":\"vertical\"}},[_c('template',{slot:\"content\"},[_c('wok-input-checkbox',{attrs:{\"name\":\"privacy\",\"data-input\":\"privacy\"},model:{value:(_vm.state.form.privacy),callback:function ($$v) {_vm.$set(_vm.state.form, \"privacy\", $$v)},expression:\"state.form.privacy\"}},[_c('template',{slot:\"label\"},[_c('i18n',{attrs:{\"path\":\"accessRegisterPrivacyPrompt\",\"tag\":false},scopedSlots:_vm._u([{key:\"link\",fn:function(){return [_c('a',{attrs:{\"href\":_vm.privacyPolicyHref,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.$t(\"accessRegisterPrivacyPromptLink\")))])]},proxy:true}],null,false,1198482752)})],1)],2)],1)],2)],1)],1),_c('buttons-collection',[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-user-add-16\",\"isLoading\":_vm.state.registrationProgress,\"disabled\":!_vm.submitEnabled,\"data-action\":\"create-account\"},on:{\"click\":_vm.onCreateAccountClick}},[_vm._v(_vm._s(_vm.$t(\"accessRegisterCreateAccountAction\")))])],1)],2)],1),_c('template',{slot:\"aftercontent\"},[_c('wok-button',{attrs:{\"to\":_vm.signinRoute,\"kind\":\"ghost\"}},[_c('i18n',{staticClass:\"wok--text-text-01\",attrs:{\"path\":\"accessRegisterSignInAlternative\",\"tag\":\"span\"},scopedSlots:_vm._u([{key:\"arg\",fn:function(){return [_c('strong',{staticClass:\"wok--text-interactive-04\"},[_vm._v(_vm._s(_vm.$t(\"accessRegisterSignInAlternativeArg\")))])]},proxy:true}],null,false,1379536855)})],1)],1)]:_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-email-48\",\"data-message\":\"register-ok\"}},[_vm._v(_vm._s(_vm.$t(\"accessRegisterRegistrationSentSubTitle\")))]),_c('section-summary',[_c('i18n',{attrs:{\"path\":\"accessRegisterRegistrationSentSummaryPartOne\",\"tag\":false},scopedSlots:_vm._u([{key:\"email\",fn:function(){return [_c('strong',[_vm._v(_vm._s(_vm.state.form.email))])]},proxy:true}])})],1),_c('section-summary',[_c('i18n',{attrs:{\"path\":\"accessRegisterRegistrationSentSummaryPartTwo\",\"tag\":false},scopedSlots:_vm._u([{key:\"button\",fn:function(){return [_c('button',{on:{\"click\":function($event){_vm.state.registrationSent = false}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessRegisterRegistrationSentTryAgainAction\"))+\" \")])]},proxy:true}])})],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { computed } from '@vue/composition-api';\n\nfunction getPlatform() {\n if (/android/i.test(navigator.userAgent)) {\n return 'android';\n }\n else if (/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream) {\n return'ios';\n }\n return 'web';\n}\n\nexport function usePlatformChecker() {\n return {\n getPlatform: computed(() => getPlatform()),\n platformIsAndroid: computed(() => getPlatform() == 'android'),\n platformIsIos: computed(() => getPlatform() == 'ios'),\n platformIsWeb: computed(() => getPlatform() == 'web')\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\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, reactive, computed } from \"@vue/composition-api\";\nimport { getStore } from \"../store\";\nimport { useRouter } from \"../router\";\nimport { useI18n, getPrivacyPolicyLocalizedUrl } from \"../i18n\";\nimport { usePlatformChecker } from \"../platform-checker\";\nimport { useClientChecker } from \"../client-checker\";\n\nconst componentName = \"Register\";\n\nexport default defineComponent({\n\tname: componentName,\n\n\tsetup(context) {\n\t\tconst store = getStore(),\n\t\t\t{ router, route } = useRouter(),\n\t\t\tplatform = usePlatformChecker(),\n\t\t\tclient = useClientChecker(),\n\t\t\ti18n = useI18n();\n\n\t\tconst state = reactive({\n\t\t\tform: {\n\t\t\t\tgivenName: \"\",\n\t\t\t\tlastName: \"\",\n\t\t\t\temail: \"\",\n\t\t\t\tlanguage: route.value.query.language ?? \"en\",\n\t\t\t\tprivacy: false,\n\t\t\t},\n\t\t\tregistrationProgress: false,\n\t\t\tregistrationSent: false,\n\t\t\tregistrationErrorNotification: false,\n\t\t\tuseExternalRegisterMethods:\n\t\t\t\t!client.clientIsToolbox.value && !client.clientIsYou.value,\n\t\t\tuseExternalRegisterMethodGoogle: true,\n\t\t\tuseExternalRegisterMethodFacebook: true,\n\t\t\tuseExternalRegisterMethodApple: false,\n\t\t});\n\n\t\tconst submitEnabled = computed(() => {\n\t\t\treturn (\n\t\t\t\t!!state.form.email &&\n\t\t\t\t!!state.form.givenName &&\n\t\t\t\t!!state.form.lastName &&\n\t\t\t\tstate.form.privacy\n\t\t\t);\n\t\t});\n\n\t\tconst onCreateAccountClick = async () => {\n\t\t\tstate.registrationProgress = true;\n\n\t\t\tconst clientId = route.value.query.client_id;\n\t\t\tconst returnUrl = route.value.query.returnUrl;\n\t\t\tlet response = await store.dispatch(\"register\", {\n\t\t\t\t...state.form,\n\t\t\t\tclientId: clientId,\n\t\t\t\treturnUrl: returnUrl,\n\t\t\t\tplatform: platform.getPlatform.value,\n\t\t\t});\n\n\t\t\tif (response && response.result == \"OK\") {\n\t\t\t\tstate.registrationSent = true;\n\t\t\t} else {\n\t\t\t\tstate.registrationErrorNotification = true;\n\t\t\t}\n\n\t\t\tstate.registrationProgress = false;\n\t\t};\n\n\t\tconst signinRoute = computed(() => {\n\t\t\treturn { name: \"access-signin\", query: route.value.query };\n\t\t});\n\n\t\tconst privacyPolicyRoute = computed(() => {\n\t\t\treturn { name: \"privacy-policy\", query: route.value.query };\n\t\t});\n\n\t\tconst privacyPolicyHref = computed(() => getPrivacyPolicyLocalizedUrl(i18n.locale));\n\n\t\tconst onRegisterGoogle = () => {\n\t\t\tlet qs =\n\t\t\t\t(window.location.search && `${window.location.search}®istration=1`) ||\n\t\t\t\t\"?registration=1\";\n\t\t\twindow.location.assign(`/account/signin-external-google${qs}`);\n\t\t};\n\n\t\tconst onRegisterFacebook = () => {\n\t\t\tlet qs =\n\t\t\t\t(window.location.search && `${window.location.search}®istration=1`) ||\n\t\t\t\t\"?registration=1\";\n\t\t\twindow.location.assign(`/account/signin-external-facebook${qs}`);\n\t\t};\n\n\t\tconst onRegisterApple = () => {\n\t\t\tlet qs =\n\t\t\t\t(window.location.search && `${window.location.search}®istration=1`) ||\n\t\t\t\t\"?registration=1\";\n\t\t\twindow.location.assign(`/account/signin-external-apple${qs}`);\n\t\t};\n\n\t\treturn {\n\t\t\tstate,\n\t\t\tonCreateAccountClick,\n\t\t\tsubmitEnabled,\n\t\t\tsigninRoute,\n\t\t\tprivacyPolicyRoute,\n\t\t\tprivacyPolicyHref,\n\t\t\tonRegisterGoogle,\n\t\t\tonRegisterFacebook,\n\t\t\tonRegisterApple,\n\t\t};\n\t},\n});\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Register.vue?vue&type=template&id=78a2b3a6&\"\nimport script from \"./Register.vue?vue&type=script&lang=ts&\"\nexport * from \"./Register.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[(!_vm.tokenError)?_c('section-title',[_vm._v(_vm._s(_vm.$t('accessRegisterConfirmTitle')))]):_c('section-title',[_vm._v(_vm._s(_vm.$t('accessRegisterConfirmErrorTitle')))])],1),(!_vm.tokenError)?_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-privacy-48\"}},[_vm._v(_vm._s(_vm.$t('accessRegisterConfirmSubTitle')))]),(_vm.showAppLink)?[(_vm.platform == 'ios' || _vm.platform == 'android')?_c('buttons-collection',{attrs:{\"kind\":\"single\"}},[_c('template',{slot:\"actions\"},[(_vm.platform == 'android')?_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-android-app\"},on:{\"click\":_vm.onContinueAppAndroid}},[_vm._v(_vm._s(_vm.openAndroidText))]):_vm._e(),(_vm.platform == 'ios')?_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-ios-app\"},on:{\"click\":_vm.onContinueAppIos}},[_vm._v(_vm._s(_vm.openIosText))]):_vm._e()],1)],2):_c('buttons-collection',{attrs:{\"kind\":\"vertical\"}},[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-android-app\"},on:{\"click\":_vm.onContinueAppAndroid}},[_vm._v(_vm._s(_vm.openAndroidText))]),_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-ios-app\"},on:{\"click\":_vm.onContinueAppIos}},[_vm._v(_vm._s(_vm.openIosText))])],1)],2)]:[_c('buttons-collection',{attrs:{\"kind\":\"single\"}},[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-arrow-right-16\",\"data-action\":\"continue-web\"},on:{\"click\":_vm.onContinueWeb}},[_vm._v(_vm._s(_vm.$t('accessRegisterConfirmContinueOnlyWeb')))])],1)],2)]],2):_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-privacy-48\"}},[_vm._v(_vm._s(_vm.$t('accessRegisterConfirmErrorSubTitle')))])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\nimport { defineComponent, reactive, computed, ref } from '@vue/composition-api';\nimport { getStore } from '../store';\nimport { useRouter } from '../router';\nimport { useClientChecker } from '../client-checker';\nimport { useI18n } from '../i18n';\n\nconst componentName = 'RegisterConfirm';\n\nexport default defineComponent({\n name: componentName,\n\n setup(context) {\n const store = getStore(), { router, route } = useRouter(), client = useClientChecker(), i18n = useI18n();\n\n const platform = route.value.query.platform;\n const clientId = route.value.query.client_id;\n const returnUrl = route.value.query.returnUrl;\n\n const tokenError = ref(false);\n\n async function checkToken() {\n let response = await store.dispatch('emailConfirm', {\n userId: route.value.query.u,\n code: route.value.query.c\n }).catch((error: any) => {\n tokenError.value = true;\n throw error;\n });\n if (response.result != 'OK') {\n tokenError.value = true;\n }\n }\n\n checkToken();\n\n const appName = () => {\n if (client.clientIsBliss2.value) {\n return 'Bliss 2';\n }\n if (client.clientIsBliss.value) {\n return 'Bliss';\n }\n if (client.clientIsToolbox.value) {\n return 'Toolbox NFC';\n }\n if (client.clientIsYesly.value) {\n return 'Yesly';\n }\n };\n\n const openAndroidText = i18n.t('accessRegisterConfirmOpenAppAndroid', { app: appName() }) as string;\n const openIosText = i18n.t('accessRegisterConfirmOpenAppIos', { app: appName() }) as string;\n\n const showAppLink = computed(() => {\n return client.clientIsBliss2.value ||\n client.clientIsBliss.value ||\n client.clientIsToolbox.value ||\n client.clientIsYesly.value;\n });\n\n const onContinueWeb = () => router.replace({ name: 'access-signin', query: route.value.query });\n\n const onContinueAppAndroid = () => {\n let appUrl = '';\n if (client.clientIsBliss2.value) {\n appUrl = 'market://details?id=com.findernet.Bliss2';\n }\n else if(client.clientIsBliss.value) {\n appUrl = 'market://details?id=com.findernet.appcrono';\n }\n else if(client.clientIsToolbox.value) {\n appUrl = 'market://details?id=com.findernet.ToolboxNFC';\n }\n else if(client.clientIsYesly.value) {\n appUrl = 'market://details?id=com.findernet.FinderHome';\n }\n window.location.replace(appUrl);\n }\n\n const onContinueAppIos = () => {\n let appUrl = '';\n if (client.clientIsBliss2.value) {\n appUrl = 'com.findernet.Bliss2://';\n }\n else if(client.clientIsBliss.value) {\n appUrl = 'com.findernet.Bliss2://';\n }\n else if(client.clientIsToolbox.value) {\n appUrl = 'finder://';\n }\n else if(client.clientIsYesly.value) {\n appUrl = 'itms-apps://apps.apple.com/it/app/yesly/id1398780077';\n }\n window.location.replace(appUrl);\n }\n\n return {\n platform,\n tokenError,\n openAndroidText,\n openIosText,\n showAppLink,\n onContinueWeb,\n onContinueAppAndroid,\n onContinueAppIos\n }\n }\n})\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegisterConfirm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegisterConfirm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RegisterConfirm.vue?vue&type=template&id=3227977c&\"\nimport script from \"./RegisterConfirm.vue?vue&type=script&lang=ts&\"\nexport * from \"./RegisterConfirm.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t(\"accessSignInTitle\")))])],1),_c('template',{slot:\"content\"},[_c('wok-notification',{attrs:{\"show\":_vm.showNotification}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.introTitle)+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessSignInIntroSubTitle\"))+\" \")])],2),_c('wok-notification',{attrs:{\"show\":_vm.state.signInErrorNotification,\"kind\":\"danger\",\"canHide\":true,\"data-message\":\"signin-error\"},on:{\"hide-request\":function($event){_vm.state.signInErrorNotification = false}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessSignInNotificationErrorTitle\"))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessSignInNotificationErrorSubTitle\"))+\" \")])],2),(_vm.state.useExternalSigninMethods)?[_c('buttons-collection',{attrs:{\"kind\":\"multiple\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"accessSignInExternalTitle\"))+\" \")]),_c('template',{slot:\"actions\"},[(_vm.state.useExternalSigninMethodApple)?_c('wok-button',{attrs:{\"variant\":\"apple\",\"icon\":\"wok-icon-apple-16\",\"data-action\":\"signin-apple\"},on:{\"click\":_vm.onSignInApple}}):_vm._e(),(_vm.state.useExternalSigninMethodGoogle)?_c('wok-button',{attrs:{\"variant\":\"google\",\"icon\":\"wok-icon-google-16\",\"data-action\":\"signin-google\"},on:{\"click\":_vm.onSignInGoogle}}):_vm._e(),(_vm.state.useExternalSigninMethodFacebook)?_c('wok-button',{attrs:{\"variant\":\"facebook\",\"icon\":\"wok-icon-facebook-16\",\"data-action\":\"signin-facebook\"},on:{\"click\":_vm.onSignInFacebook}}):_vm._e()],1)],2),_c('label-divider',[_vm._v(_vm._s(_vm.$t(\"accessSignInDividerLabel\")))])]:_vm._e(),_c('wok-form',{attrs:{\"kind\":\"light\"}},[_c('wok-form-row',[_c('wok-input-text',{attrs:{\"name\":\"email\",\"span\":\"12\",\"label\":_vm.$t('accessSignInInputFormEmailLabel'),\"placeholder\":_vm.$t('accessSignInInputFormEmailPlaceholder'),\"data-input\":\"email\"},model:{value:(_vm.form.email),callback:function ($$v) {_vm.$set(_vm.form, \"email\", $$v)},expression:\"form.email\"}})],1),_c('wok-form-row',[_c('wok-input-password',{attrs:{\"name\":\"password\",\"span\":\"12\",\"label\":_vm.$t('accessSignInInputFormPasswordLabel'),\"placeholder\":_vm.$t('accessSignInInputFormPasswordPlaceholder'),\"data-input\":\"password\"},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}})],1),(_vm.impersonate)?_c('wok-form-row',[_c('wok-input-text',{attrs:{\"name\":\"impesonate\",\"span\":\"12\",\"label\":_vm.$t('Impersonate'),\"placeholder\":_vm.$t('accessSignInInputFormEmailPlaceholder'),\"data-input\":\"impersonateUsername\"},model:{value:(_vm.form.impersonateUsername),callback:function ($$v) {_vm.$set(_vm.form, \"impersonateUsername\", $$v)},expression:\"form.impersonateUsername\"}})],1):_vm._e()],1),_c('buttons-collection',[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"to\":_vm.passwordRecoveryRoute,\"kind\":\"ghost\",\"size\":\"small\",\"data-action\":\"forgot-password\"}},[_vm._v(_vm._s(_vm.$t(\"accessSignInForgotPasswordAction\")))])],1)],2),_c('buttons-collection',[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-arrow-right-16\",\"isLoading\":_vm.state.signInProgress,\"disabled\":!_vm.submitEnabled,\"data-action\":\"login-finder\"},on:{\"click\":_vm.onSignIn}},[_vm._v(_vm._s(_vm.$t(\"accessSignInSignInAction\")))])],1)],2)],2),_c('template',{slot:\"aftercontent\"},[_c('wok-button',{attrs:{\"to\":_vm.registerRoute,\"kind\":\"ghost\",\"data-action\":\"register\"}},[_c('span',{staticClass:\"wok--text-text-01\"},[_vm._v(_vm._s(_vm.$t(\"accessSignInNoAccountText\")))]),_c('strong',{staticClass:\"wok--text-interactive-04\"},[_vm._v(_vm._s(_vm.$t(\"accessSignInNoAccountRegisterAction\")))])])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\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\nimport { defineComponent, reactive, computed, ref } from \"@vue/composition-api\";\nimport { getStore } from \"../store\";\nimport { useRouter } from \"../router\";\nimport { useI18n } from \"../i18n\";\nimport { useClientChecker } from \"../client-checker\";\n\nconst componentName = \"SignIn\";\n\nexport default defineComponent({\n\tname: componentName,\n\n\tsetup(context) {\n\t\tconst store = getStore(),\n\t\t\t{ router, route } = useRouter(),\n\t\t\tclient = useClientChecker(),\n\t\t\ti18n = useI18n();\n\n\t\tconst state = reactive({\n\t\t\tsignInErrorNotification: false,\n\t\t\tsignInProgress: false,\n\t\t\tuseExternalSigninMethods:\n\t\t\t\t!client.clientIsToolbox.value && !client.clientIsYou.value,\n\t\t\tuseExternalSigninMethodGoogle: true,\n\t\t\tuseExternalSigninMethodFacebook: true,\n\t\t\tuseExternalSigninMethodApple: false,\n\t\t});\n\n\t\tconst form = reactive({\n\t\t\temail: \"\",\n\t\t\tpassword: \"\",\n\t\t\timpersonateUsername: null,\n\t\t});\n\n\t\tconst introTitle = ref(\"\");\n\t\tconst showNotification = ref(false);\n\n\t\tconst impersonate = computed(() => !!route.value.query.impersonate);\n\n\t\tif (\n\t\t\tclient.clientIsGoogleBliss.value ||\n\t\t\tclient.clientIsGoogleYesly.value ||\n\t\t\tclient.clientIsGoogleYou.value\n\t\t) {\n\t\t\tintroTitle.value = i18n.t(\"accessSignInIntroGoogleTitle\");\n\t\t\tshowNotification.value = true;\n\t\t}\n\t\t// else if (client.clientIsAlexaBliss.value || client.clientIsAlexaYesly.value || client.clientIsAlexaYou.value) {\n\t\t// introTitle.value = i18n.t('accessSignInIntroAlexaTitle');\n\t\t// showNotification.value = true;\n\t\t// }\n\t\telse {\n\t\t\tintroTitle.value = i18n.t(\"accessSignInIntroGenericTitle\");\n\t\t}\n\n\t\tconst onSignIn = async () => {\n\t\t\tstate.signInErrorNotification = false;\n\t\t\tstate.signInProgress = true;\n\n\t\t\tlet args = {\n\t\t\t\tclientId: route.value.query.client_id,\n\t\t\t\treturnUrl: route.value.query.returnUrl,\n\t\t\t\tusername: form.email.trim(),\n\t\t\t\tpassword: form.password,\n\t\t\t\tlanguage: route.value.query.language,\n\t\t\t\timpersonateUsername: form.impersonateUsername,\n\t\t\t};\n\n\t\t\tlet res = route.value.query.returnUrl\n\t\t\t\t? await store.dispatch(\"signInOidc\", args)\n\t\t\t\t: await store.dispatch(\"signIn\", args);\n\n\t\t\tstate.signInProgress = false;\n\n\t\t\tif (res) {\n\t\t\t\tif (res.next) {\n\t\t\t\t\twindow.location.assign(res.next);\n\t\t\t\t} else {\n\t\t\t\t\trouter.push({ name: \"user-dashboard\" });\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tstate.signInErrorNotification = true;\n\t\t\t}\n\t\t};\n\n\t\tconst onSignInGoogle = () => {\n\t\t\twindow.location.assign(\n\t\t\t\t`/account/signin-external-google${window.location.search}`\n\t\t\t);\n\t\t};\n\n\t\tconst onSignInFacebook = () => {\n\t\t\twindow.location.assign(\n\t\t\t\t`/account/signin-external-facebook${window.location.search}`\n\t\t\t);\n\t\t};\n\n\t\tconst onSignInApple = () => {\n\t\t\twindow.location.assign(`/account/signin-external-apple${window.location.search}`);\n\t\t};\n\n\t\tconst passwordRecoveryRoute = computed(() => {\n\t\t\treturn { name: \"access-password-recovery\", query: route.value.query };\n\t\t});\n\n\t\tconst registerRoute = computed(() => {\n\t\t\treturn { name: \"access-register\", query: route.value.query };\n\t\t});\n\n\t\tconst submitEnabled = computed(() => {\n\t\t\treturn !!form.email && !!form.password;\n\t\t});\n\n\t\treturn {\n\t\t\tstate,\n\t\t\tform,\n\t\t\tonSignIn,\n\t\t\tonSignInGoogle,\n\t\t\tonSignInFacebook,\n\t\t\tonSignInApple,\n\t\t\tintroTitle,\n\t\t\tshowNotification,\n\t\t\tpasswordRecoveryRoute,\n\t\t\tregisterRoute,\n\t\t\tsubmitEnabled,\n\t\t\timpersonate,\n\t\t};\n\t},\n});\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SignIn.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SignIn.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SignIn.vue?vue&type=template&id=0e870663&\"\nimport script from \"./SignIn.vue?vue&type=script&lang=ts&\"\nexport * from \"./SignIn.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[(_vm.shareInfo.user)?[_c('div',{staticClass:\"wok--p-spacing-03 wok--space-y-spacing-07 md:wok--p-0\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingTitle\", [_vm.senderFullName]))+\" \")]),_c('div',{staticClass:\"\\n wok--flex wok--flex-col wok--py-spacing-07\\n wok--border-t wok--border-b wok--border-gray-400\\n md:wok--flex-row md:wok--items-center\\n \"},[(_vm.shareStatus == 'PENDING')?[_c('div',{staticClass:\"wok--space-y-spacing-07\"},[_c('div',{staticClass:\"wok--space-y-spacing-06\"},[_c('p',{staticClass:\"md:wok--text-base md:wok--leading-5\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingParagraph1\", [_vm.senderFullName]))+\" \")]),_c('p',{staticClass:\"md:wok--text-base md:wok--leading-5\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingParagraph2\"))+\" \")]),_c('p',{staticClass:\"md:wok--text-base md:wok--leading-5\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingParagraph3\", [_vm.senderFullName]))+\" \")])]),_c('wok-notification',{attrs:{\"show\":_vm.state.shareError,\"kind\":\"danger\",\"canHide\":true},on:{\"hide-request\":function($event){_vm.state.shareError = null}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingErrorTitle\"))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingErrorSummary\"))+\" \")])],2),_c('div',{staticClass:\"\\n wok--flex wok--flex-col wok--space-y-spacing-04\\n md:wok--flex-row md:wok--justify-center md:wok--space-y-0 md:wok--space-x-spacing-04\\n \"},[_c('wok-button',{staticClass:\"md:wok--flex-1\",attrs:{\"icon\":\"wok-icon-check-c-16\",\"isLoading\":_vm.state.shareProcess == 'accept',\"disabled\":!!_vm.state.shareProcess},on:{\"click\":_vm.onAccept}},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingAccept\"))+\" \")]),_c('wok-button',{staticClass:\"md:wok--flex-1\",attrs:{\"icon\":\"wok-icon-trash-16\",\"kind\":\"secondary\",\"isLoading\":_vm.state.shareProcess == 'reject',\"disabled\":!!_vm.state.shareProcess},on:{\"click\":_vm.onReject}},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingIgnore\"))+\" \")])],1)],1)]:_vm._e()],2)],1)]:_vm._e(),(_vm.shareStatus == 'INVALID')?[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingInvalidTitle\"))+\" \")])],1),_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-link-broken-48\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingInvalidSummary\"))+\" \")])],1)]:_vm._e(),(_vm.shareStatus == 'ACCEPTED')?[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingInvitationAcceptedTitle\"))+\" \")])],1),_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-check-c-64\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingInvitationAcceptedSummary\"))+\" \")])],1)]:_vm._e(),(_vm.shareStatus == 'REJECTED')?[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingInvitationRejectedTitle\"))+\" \")])],1),_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-check-c-64\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingInvitationRejectedSummary\"))+\" \")])],1)]:_vm._e(),_c('template',{slot:\"aftercontent\"},[_c('div',{staticClass:\"wok--flex wok--flex-col wok--items-center wok--space-y-spacing-06\"},[_c('p',{staticClass:\"wok--text-text-02 md:wok--text-base md:wok--leading-5\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"sharingSharingNoAppYet\"))+\" \")]),_c('div',{staticClass:\"wok--flex wok--space-x-spacing-04\"},[_c('a',{staticClass:\"badge-button badge-button--gpb\",style:(\"background-image: url(/google-badges/gpb_en.svg);\"),attrs:{\"title\":\"Google Play\"}}),_c('a',{staticClass:\"badge-button badge-button--asb\",style:(\"background-image: url(/apple-badges/asb_en.svg);\"),attrs:{\"title\":\"App Store\"}})])])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\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\nimport { computed, defineComponent, reactive } from \"@vue/composition-api\";\nimport { ApiResult, post } from \"../helpers/api\";\nimport { useRouter } from \"../router\";\nimport { getStore } from \"../store\";\n\nconst componentName = \"Sharing\";\n\nexport default defineComponent({\n name: componentName,\n\n setup(context) {\n const { route } = useRouter();\n\n const state = reactive({\n shareProcess: null,\n shareError: null\n });\n\n const store = getStore();\n\n const shareStatus = computed(() => store.state.shareInfo?.share?.status);\n\n const senderFullName = computed(() => {\n if (store.state.shareInfo.user) {\n let fullName = `${store.state.shareInfo.user.givenName || \"\"} ${\n store.state.shareInfo.user.lastName || \"\"\n }`.trim();\n\n if (fullName == \"\") {\n fullName = store.state.shareInfo.user.email;\n }\n\n return fullName;\n }\n return \"\";\n });\n\n const sendRequest = async (\n endPoint: string,\n actionName: \"accept\" | \"reject\"\n ) => {\n state.shareProcess = actionName;\n\n try {\n const result = (await post(\n endPoint,\n null,\n route.value.query.c as string\n ).then((x) => x.data)) as ApiResult;\n\n state.shareProcess = \"\";\n store.commit(\"updateSharingInfo\", null);\n\n if (result.result == \"OK\") {\n const newStatus = actionName == \"accept\" ? \"ACCEPTED\" : \"REJECTED\";\n store.commit(\"updateSharingStatus\", newStatus);\n }\n else {\n state.shareError = \"INVALID\";\n }\n }\n catch {\n state.shareProcess = \"\";\n state.shareError = \"SERVER-ERROR\";\n store.commit(\"updateSharingInfo\", null);\n }\n };\n\n const onAccept = () => {\n sendRequest(\"/_api/v1/sharing/accept\", \"accept\");\n };\n\n const onReject = () => {\n sendRequest(\"/_api/v1/sharing/reject\", \"reject\");\n };\n\n const shareInfo = computed(() => store.state.shareInfo);\n\n return {\n state,\n shareStatus,\n senderFullName,\n shareInfo,\n\n onAccept,\n onReject\n };\n }\n});\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sharing.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sharing.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Sharing.vue?vue&type=template&id=ccd70706&\"\nimport script from \"./Sharing.vue?vue&type=script&lang=ts&\"\nexport * from \"./Sharing.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t('accessPasswordRecoveryTitle')))])],1),_c('template',{slot:\"content\"},[_c('wok-notification',{attrs:{\"show\":_vm.state.passwordRecoveryError,\"kind\":\"danger\",\"canHide\":true,\"data-message\":\"password-recovery-error\"},on:{\"hide-request\":function($event){_vm.state.passwordRecoveryError = false}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessPasswordRecoveryErrorTitle'))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessPasswordRecoveryErrorSubTitle'))+\" \")])],2),(!_vm.state.passwordRecoverySent)?[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-lock-48\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordRecoverySubTitle')))]),_c('wok-form',{attrs:{\"kind\":\"light\"}},[_c('wok-form-row',[_c('wok-input-text',{attrs:{\"name\":\"email\",\"span\":\"12\",\"label\":_vm.$t('accessPasswordRecoveryInputFormEmailLabel'),\"placeholder\":_vm.$t('accessPasswordRecoveryInputFormEmailPlaceholder'),\"data-input\":\"email\"},model:{value:(_vm.state.form.email),callback:function ($$v) {_vm.$set(_vm.state.form, \"email\", $$v)},expression:\"state.form.email\"}})],1)],1),_c('buttons-collection',[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-email-16\",\"isLoading\":_vm.state.passwordRecoveryProgress,\"data-action\":\"send-email\"},on:{\"click\":_vm.onPasswordRecoveryClick}},[_vm._v(_vm._s(_vm.$t('accessPasswordRecoverySendEmailAction')))])],1)],2)]:[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-email-48\",\"data-message\":\"password-recovery-email-sent\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordRecoveryEmailSentSubTitle')))]),_c('section-summary',[_c('i18n',{attrs:{\"path\":\"accessPasswordRecoveryEmailSentSummaryPartOne\",\"tag\":false},scopedSlots:_vm._u([{key:\"email\",fn:function(){return [_c('strong',[_vm._v(_vm._s(_vm.state.form.email))])]},proxy:true}])})],1),_c('section-summary',[_c('i18n',{attrs:{\"path\":\"accessPasswordRecoveryEmailSentSummaryPartTwo\",\"tag\":false},scopedSlots:_vm._u([{key:\"button\",fn:function(){return [_c('button',{on:{\"click\":function($event){_vm.state.passwordRecoverySent = false}}},[_vm._v(_vm._s(_vm.$t('accessPasswordRecoveryEmailSentTryAgainAction')))])]},proxy:true}])})],1)]],2),_c('template',{slot:\"aftercontent\"},[_c('wok-button',{attrs:{\"to\":_vm.signinRoute,\"icon\":\"wok-icon-arrow-left-16\",\"iconPosition\":\"left\",\"kind\":\"ghost\",\"data-action\":\"back-signin\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordRecoveryBackToSignInAction')))])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\nimport { defineComponent, reactive, computed } from '@vue/composition-api';\nimport { getStore } from '../store';\nimport { useRouter } from '../router';\nimport { usePlatformChecker } from '../platform-checker';\n\nconst componentName = 'PasswordRecovery';\n\nexport default defineComponent({\n name: componentName,\n \n setup(context) {\n const store = getStore(), { router, route } = useRouter(), platform = usePlatformChecker();\n\n const state = reactive({\n form: {\n email: ''\n },\n passwordRecoverySent: false,\n passwordRecoveryError: false,\n passwordRecoveryProgress: false\n });\n\n const onPasswordRecoveryClick = async () => {\n state.passwordRecoveryError = false;\n state.passwordRecoveryProgress = true;\n\n const clientId = route.value.query.client_id;\n const returnUrl = route.value.query.returnUrl;\n let res = await store.dispatch('passwordSendUpdateEmail', {\n email: state.form.email,\n clientId: clientId,\n language: route.value.query.language || 'en',\n returnUrl: returnUrl,\n platform: platform.getPlatform.value\n });\n\n state.passwordRecoveryProgress = false;\n\n if (res && res.result == 'OK') {\n state.passwordRecoverySent = true;\n }\n else {\n state.passwordRecoveryError = true;\n }\n }\n\n const signinRoute = computed(() => {\n return { name: 'access-signin', query: route.value.query };\n });\n\n return {\n state,\n onPasswordRecoveryClick,\n signinRoute\n }\n }\n})\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordRecovery.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordRecovery.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordRecovery.vue?vue&type=template&id=2bfeb7af&\"\nimport script from \"./PasswordRecovery.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordRecovery.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateTitle')))])],1),_c('template',{slot:\"content\"},[(!_vm.state.passwordUpdateError)?[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-lock-48\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateSubTitle')))]),_c('wok-form',{attrs:{\"kind\":\"light\"}},[_c('wok-form-row',[_c('wok-input-password',{attrs:{\"name\":\"password\",\"span\":\"12\",\"label\":_vm.$t('accessPasswordUpdateInputFormPasswordLabel'),\"placeholder\":_vm.$t('accessPasswordUpdateInputFormPasswordPlaceholder'),\"data-input\":\"password\"},model:{value:(_vm.state.form.password),callback:function ($$v) {_vm.$set(_vm.state.form, \"password\", $$v)},expression:\"state.form.password\"}})],1),_c('wok-form-row',[_c('wok-input-password',{attrs:{\"name\":\"passwordConfirm\",\"span\":\"12\",\"label\":_vm.$t('accessPasswordUpdateInputFormPassword2Label'),\"placeholder\":_vm.$t('accessPasswordUpdateInputFormPassword2Placeholder'),\"data-input\":\"password-confirm\"},model:{value:(_vm.state.form.passwordConfirm),callback:function ($$v) {_vm.$set(_vm.state.form, \"passwordConfirm\", $$v)},expression:\"state.form.passwordConfirm\"}})],1)],1),_c('buttons-collection',[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-key-16\",\"isLoading\":_vm.state.passwordUpdateProgress,\"disabled\":!_vm.submitEnabled,\"data-action\":\"save\"},on:{\"click\":_vm.onPasswordUpdateClick}},[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateSaveAction')))])],1)],2)]:[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-link-broken-48\",\"data-message\":\"password-update-error\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateErrorSubTitle')))]),_c('section-summary',[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateErrorSummary')))]),_c('buttons-collection',[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"to\":_vm.passwordRecoveryRoute,\"icon\":\"wok-icon-arrow-right-16\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateErrorPasswordRecoveryAction')))])],1)],2)]],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\nimport { defineComponent, reactive, computed } from '@vue/composition-api';\nimport { getStore } from '../store';\nimport { useRouter } from '../router';\n\nconst componentName = 'PasswordUpdate';\n\nexport default defineComponent({\n name: componentName,\n \n setup(context) {\n const store = getStore(), { router, route } = useRouter();\n\n const state = reactive({\n form: {\n password: '',\n passwordConfirm: ''\n },\n passwordUpdateError: false,\n passwordUpdateProgress: false\n });\n\n const isRegistration = computed( () => {\n return route.value.query.r == '1';\n });\n\n const onPasswordUpdateClick = async () => {\n state.passwordUpdateProgress = true;\n\n const clientId = route.value.query.client_id;\n const returnUrl = route.value.query.returnUrl;\n let response = await store.dispatch('passwordUpdate', {\n userId: route.value.query.u,\n code: route.value.query.c,\n password: state.form.password\n });\n\n state.passwordUpdateProgress = false;\n\n if (response.result == 'OK') {\n router.replace({ name: 'access-password-update-confirm', query: route.value.query });\n }\n else {\n state.passwordUpdateError = true;\n }\n };\n\n const submitEnabled = computed(() => {\n return !!state.form.password && state.form.password == state.form.passwordConfirm;\n });\n\n const passwordRecoveryRoute = computed(() => {\n return { name: 'access-password-recovery', query: route.value.query };\n });\n\n return {\n state,\n onPasswordUpdateClick,\n isRegistration,\n submitEnabled,\n passwordRecoveryRoute\n }\n }\n})\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordUpdate.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordUpdate.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordUpdate.vue?vue&type=template&id=4385e83a&\"\nimport script from \"./PasswordUpdate.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordUpdate.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateConfirmTitle')))])],1),_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-privacy-48\"}},[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateConfirmSubTitle')))]),(_vm.showAppLink)?[(_vm.platform == 'ios' || _vm.platform == 'android')?_c('buttons-collection',{attrs:{\"kind\":\"single\"}},[_c('template',{slot:\"actions\"},[(_vm.platform == 'android')?_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-android-app\"},on:{\"click\":_vm.onContinueAppAndroid}},[_vm._v(_vm._s(_vm.openAndroidText))]):_vm._e(),(_vm.platform == 'ios')?_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-ios-app\"},on:{\"click\":_vm.onContinueAppIos}},[_vm._v(_vm._s(_vm.openIosText))]):_vm._e()],1)],2):_c('buttons-collection',{attrs:{\"kind\":\"vertical\"}},[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-android-app\"},on:{\"click\":_vm.onContinueAppAndroid}},[_vm._v(_vm._s(_vm.openAndroidText))]),_c('wok-button',{attrs:{\"icon\":\"wok-icon-export-16\",\"data-action\":\"open-ios-app\"},on:{\"click\":_vm.onContinueAppIos}},[_vm._v(_vm._s(_vm.openIosText))])],1)],2)]:[_c('buttons-collection',{attrs:{\"kind\":\"single\"}},[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"icon\":\"wok-icon-arrow-right-16\",\"data-action\":\"continue-web\"},on:{\"click\":_vm.onContinueWeb}},[_vm._v(_vm._s(_vm.$t('accessPasswordUpdateConfirmContinueOnlyWeb')))])],1)],2)]],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\nimport { defineComponent, reactive, computed } from '@vue/composition-api';\nimport { getStore } from '../store';\nimport { useRouter } from '../router';\nimport { useClientChecker } from '../client-checker';\nimport { useI18n } from '../i18n';\n\nconst componentName = 'PasswordUpdateConfirm';\n\nexport default defineComponent({\n name: componentName,\n \n setup(context) {\n const store = getStore(), { router, route } = useRouter(), client = useClientChecker(), i18n = useI18n();\n\n const platform = route.value.query.platform;\n\n const appName = () => {\n if (client.clientIsBliss2.value) {\n return 'Bliss 2';\n }\n if (client.clientIsBliss.value) {\n return 'Bliss';\n }\n if (client.clientIsToolbox.value) {\n return 'Toolbox NFC';\n }\n if (client.clientIsYesly.value) {\n return 'Yesly';\n }\n };\n\n const openAndroidText = i18n.t('accessPasswordUpdateConfirmOpenAppAndroid', { app: appName() }) as string;\n const openIosText = i18n.t('accessPasswordUpdateConfirmOpenAppIos', { app: appName() }) as string;\n\n const showAppLink = computed(() => {\n return client.clientIsBliss2.value ||\n client.clientIsBliss.value ||\n client.clientIsToolbox.value ||\n client.clientIsYesly.value;\n });\n\n const onContinueWeb = () => router.replace({ name: 'access-signin', query: route.value.query });\n\n const onContinueAppAndroid = () => {\n let appUrl = '';\n if (client.clientIsBliss2.value) {\n appUrl = 'market://details?id=com.findernet.Bliss2';\n }\n else if(client.clientIsBliss.value) {\n appUrl = 'market://details?id=com.findernet.appcrono';\n }\n else if(client.clientIsToolbox.value) {\n appUrl = 'market://details?id=com.findernet.ToolboxNFC';\n }\n else if(client.clientIsYesly.value) {\n appUrl = 'market://details?id=com.findernet.FinderHome';\n }\n window.location.replace(appUrl);\n }\n\n const onContinueAppIos = () => {\n let appUrl = '';\n if (client.clientIsBliss2.value) {\n appUrl = 'com.findernet.Bliss2://';\n }\n else if(client.clientIsBliss.value) {\n appUrl = 'com.findernet.Bliss2://';\n }\n else if(client.clientIsToolbox.value) {\n appUrl = 'finder://';\n }\n else if(client.clientIsYesly.value) {\n appUrl = 'itms-apps://apps.apple.com/it/app/yesly/id1398780077';\n }\n window.location.replace(appUrl);\n }\n\n return {\n platform,\n openAndroidText,\n openIosText,\n showAppLink,\n onContinueWeb,\n onContinueAppAndroid,\n onContinueAppIos\n }\n }\n})\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordUpdateConfirm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordUpdateConfirm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordUpdateConfirm.vue?vue&type=template&id=a7ef0818&\"\nimport script from \"./PasswordUpdateConfirm.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordUpdateConfirm.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('div',{staticClass:\"wok--p-spacing-03 wok--space-y-spacing-07 md:wok--p-0\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardTitle'))+\" \")]),_c('div',{staticClass:\"\\n wok--flex wok--flex-col wok--py-spacing-06\\n wok--border-t wok--border-b wok--border-gray-400\\n md:wok--flex-row md:wok--items-center\\n \"},[_c('div',{staticClass:\"wok--flex-1 wok--overflow-hidden\"},[_c('h6',{staticClass:\"wok--font-normal wok--text-gray-600 leading\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardUserLabel'))+\" \")]),_c('h3',{staticClass:\"wok--break-words\"},[_vm._v(\" \"+_vm._s(_vm.user.email)+\" \")])]),_c('div',{staticClass:\"\\n wok--flex-shrink-0 wok--pt-spacing-06\\n md:wok--pt-0 md:wok--pl-spacing-06\\n \"},[_c('wok-button',{staticClass:\"wok--w-full md:wok--w-auto\",attrs:{\"icon\":\"wok-icon-export-16\",\"isLoading\":_vm.state.signOutProgress},on:{\"click\":_vm.onSignOut}},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardLogOutAction'))+\" \")])],1)]),_c('wok-notification',{attrs:{\"show\":_vm.state.signOutErrorNotification,\"kind\":\"danger\",\"canHide\":true},on:{\"hide-request\":function($event){_vm.state.signOutErrorNotification = false}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardNotificationErrorTitle'))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardNotificationErrorSubTitle'))+\" \")])],2),(_vm.plants.length > 0)?_c('div',[_c('table',[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('accessUserDashboardPlantListTitle')))])])]),_c('tbody',_vm._l((_vm.plants),function(plant){return _c('tr',{key:plant.plantHandle},[_c('td',[_vm._v(_vm._s(plant.name))])])}),0)])]):_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('accessUserDashboardNoPlantsTitle')))])]),_c('div',{staticClass:\"wok--pt-spacing-06 wok--border-t wok--border-gray-400\"},[_c('div',{staticClass:\"\\n wok--flex wok--items-center wok--p-spacing-06 wok--bg-ui-01 wok--rounded-2xl\\n wok--transition-colors wok--duration-moderate-01 wok--ease-entrance\\n hover:wok--bg-gray-100\\n \",attrs:{\"role\":\"button\"},on:{\"click\":_vm.onDeleteAccountClick}},[_c('div',{staticClass:\"wok--flex-1\"},[_c('h5',[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardDeleteAccountTitle'))+\" \")]),_c('p',{staticClass:\"wok--text-gray-600\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardDeleteAccountDescription'))+\" \")])]),_c('div',{staticClass:\"wok--flex-shrink-0 wok--pl-spacing-06 wok--text-gray-700\"},[_c('i',[_c('wok-icon-arrow-right-16')],1)])])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\nimport { computed, defineComponent, reactive } from '@vue/composition-api';\nimport { useRouter } from '../router';\nimport { getStore } from '../store';\n\nconst componentName = 'UserDashboard';\n\nexport default defineComponent({\n name: componentName,\n\n setup() {\n const store = getStore(), { router } = useRouter();\n\n const state = reactive({\n signOutErrorNotification: false,\n signOutProgress: false\n });\n\n const user = computed(() => store.state.loggedUser);\n\n const plants = computed(() => store.state.userPlants);\n\n const onSignOut = async () => {\n state.signOutErrorNotification = false;\n state.signOutProgress = true;\n\n let res = await store.dispatch('signOut');\n\n state.signOutProgress = false;\n\n if (res) {\n router.replace({ name: 'access-signin'});\n }\n else {\n state.signOutErrorNotification = true;\n }\n };\n\n const onDeleteAccountClick = () => {\n router.push({ name: 'user-delete', query: router.currentRoute.query });\n }\n\n return {\n state,\n user,\n plants,\n\n onSignOut,\n onDeleteAccountClick\n };\n }\n});\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserDashboard.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserDashboard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserDashboard.vue?vue&type=template&id=33e376e0&\"\nimport script from \"./UserDashboard.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserDashboard.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',{attrs:{\"textVariant\":\"true\"}},[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t('privacyPolicyTitle')))]),_c('section-subtitle',[_vm._v(_vm._s(_vm.$t('privacyPolicyVersion')))])],1),_c('template',{slot:\"content\"},[_c('vue-showdown',{staticClass:\"split-page__text-block\",attrs:{\"markdown\":_vm.markdownContent}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default \"### Data Controller\\n\\nThe controller for the processing of your data is Finder S.p.A. con unico socio (hereinafter referred to as “**we**”).\\n\\nIf you have any question you can write us at our address Via Drubiaglio, 14 - 10040 Almese (Torino) - ITALY or to the email [privacy@findernet.com](mailto:privacy@findernet.com).\\n\\nWe hereby inform you that we will process your data lawfully and fairly in full respect of your rights and, in particular, your privacy, according to Regulation (EU) 2016/679 (hereinafter “**Regulation**”) and other applicable laws and regulations.\\n\\n##### Data\\n\\nWe will process the following data:\\n\\n**Registration form data** - When you register to the Yesly or BLISS application we acquire your personal data (name and surname, e-mail, plant address, coarse location).\\n\\n**Yesly and BLISS Smart Home Devices Data** - When you configure a Yesly or BLISS device and register it, we store the following data:\\n\\n- unique identifiers of the devices to be monitored\\n- type of devices to be controlled (lights, shutters, thermostat, etc.)\\n- specific device configuration parameters\\n- name assigned by the user to the devices to be controlled\\n- name assigned by the user to the plants and rooms where devices are located\\n- names of the configured scenarios\\n- thermostat position\\n- smartphone position for geo-fencing functions\\n- names and email addresses of the people with whom the devices or systems are shared\\n\\n**Browsing data** - When you connect to our system, this will automatically record information that your device sends us. This information may relate to the content loaded, the steps taken, the IP address and MAC address from which you are connecting, the operating system and the language of your device, date and time of your connection, your position.\\n\\n**Contact information and communications** - When you send us your contact details (email, etc.) and an email or other communication, we will record your contact details and communication.\\n\\nCookies\\\\*\\\\* - When you use our services, we can send to your device one or more cookies (small text files containing a string of alphanumeric characters):\\n\\n- Technical cookies, that is navigation or session cookies, strictly necessary for the operation of the site or to allow you to enjoy that content and the services that you requested.\\n- Analytics cookies, that is cookies that allow us to understand how the site is used by users by processing information in aggregate and anonymous form.\\n- Third-party cookies, that is cookies of sites or web servers other than the one hosting our service, used, with your consent, for own purposes of such third parties.\\n\\n### Purposes and legal bases for the processing\\n\\nYour personal data will be processed with the following purposes:\\n\\n- To provide you with our services, including the service of managing Yesly or BLISS smart home devices according to point (b) of Article 6(1) of the Regulation.\\n- To evaluate and improve our services and develop new ones, pursuing this legitimate interest according to point (f) of Article 6(1) of the Regulation.\\n- To protect the technical functioning of our system, pursuing this legitimate interest according to point (f) of Article 6(1) of the Regulation.\\n- To fulfill legal obligations and/or comply with orders from public authorities, including the judicial authorities, according to point (c) of Article 6(1) of the Regulation.\\n- To process and diffuse statistics and graphic representations but only in aggregate and anonymous form, pursuing this legitimate interest according to point (f) of Article 6(1) of the Regulation.\\n\\nWe will also process your personal data to inform you about our services and news on our site, pursuing this legitimate interest according to point (f) of Article 6(1) of the Regulation.\\n\\n**Communication to Google Inc. (\\\"Google\\\") via Google Action**\\n\\nWhen you request to link your Yesly or BLISS account to Google Action we perform an account linking operation and in particular we communicate to Google:\\n\\n- name and surname\\n- email\\n- unique identifiers of the devices to be monitored\\n- type of devices to be controlled (lights, shutters, thermostat, etc.)\\n- name assigned by the user to the devices to be controlled\\n- names of the configured scenarios\\n\\nThis way you can interact with Google Assitant to control Yesly and BLISS devices.\\n\\n**Communication toAmazon Digital Services LLC, Amazon Media EU S.a.r.l., and/or their affiliates (\\\"Amazon\\\") via Alexa Skills**\\n\\nWhen you request to link your Yesly or BLISS account to Alexa with the Yesly or BLISS Skill we perform an account linking operation and in particular we communicate to Amazon:\\n\\n- name and surname\\n- email\\n- unique identifiers of the devices to be monitored\\n- type of devices to be controlled (lights, shutters, thermostat, etc.)\\n- name assigned by the user to the devices to be controlled\\n- names of the configured scenarios\\n\\nThis way you can interact with Alexa to control Yesly and BLISS devices.\\n\\n### Communication to other third parties\\n\\nWe may communicate your your data:\\n\\n- To third parties who work with us and deal with phases of the processes necessary for the proper performance of our activities.\\n- To third parties to comply with legal obligations, to comply with orders from public authorities, including the judicial authorities, and / or to protect ours rights or third parties under law.\\n\\n### Period of storing\\n\\nYour contact details and communications will be stored for the time necessary to meet your request and for any additional time necessary to use the data to protect your and/or our rights, and / or rights of third parties.\\n\\nYour browsing data will be stored for up to 24 hours.\\n\\nThe technical cookies will be stored for the duration of the session.\\n\\n### Rights\\n\\nWe remind you that, according to the Regulation, you are entitled:\\n\\n- To obtain access to your personal data according to Article 15 of the Regulation.\\n- To obtain the correction of your personal data according to Article 16 of the Regulation.\\n- To obtain the erasure of your personal data according to Article 17 of the Regulation.\\n- To obtain restriction of processing of your personal data according to Article 18 of the Regulation.\\n- To object to processing of your personal data based on point (f) of Article 6(1) of the Regulation (to evaluate and improve services and to develop new ones, to protect the technical functioning of our system) according to Article 21 of the Regulation.\\n- The portability of your personal data according to Article 20 of the Regulation.\\n- To lodge a complaint with the Italian Privacy Authority according to Article 77 of the Regulation.\\n\\n### About cookies\\n\\nYou can control and / or delete the cookies as you like - to learn more, please visit the website [www.allaboutcookies.org](http://www.allaboutcookies.org/).\\n\\nYou can select which cookies to enable through the appropriate procedure provided below, as well as delete cookies already on your device and set most browsers to block its installation.\\n\\nMost browsers allow you to:\\n\\n- View the cookies and delete them individually.\\n- Block third-party cookies.\\n- Block cookies for particular sites.\\n- Block the installation of all cookies.\\n- Delete all cookies when you close your browser.\\n\\nFor more information on how to set preferences on the use of cookies through your web browser, you can look at the relevant instructions:\\n\\n- Internet Explorer.\\n- Firefox.\\n- Chrome.\\n- Opera.\\n- Safari.\\n\\nIf you choose to remove or not to enable:\\n\\n- Technical cookies, you may not be able to use the site, to view the contents and make use of its services.\\n- The other cookie (analytics and/or third-party cookies), certain services or certain features of the site may not be available or not work properly and you could be forced to change or manually enter some information or preferences each time you visit the site.\\n\\n### Third party services that install cookies\\n\\nWe may use the following services that use cookies to process your data. **Google Analytics** – A web analytics service provided by Google Inc. (\\\"Google\\\"), that allows us to analyze how users use the site and that makes use of cookies. The information generated by the cookies about your use of the site - standard log information used on the Internet (including your IP address) and anonymous information about your behavior - are transmitted to Google and stored by Google on servers in the United States. Google will make anonymous any information conveyed by deleting the last octet of your IP address before storage. According to the terms of the Google Analytics service, Google will use this information for the purpose of evaluating your use of the site and compiling reports on site activity for us.\\n\\nWe will not use or allow third parties to use the statistical analysis tools to find or collect identifiable information about you. Google may transfer to third parties the information collected by Google Analytics where required to do so by law, or where such third parties process the information on Google's behalf. According to the terms of the Google Analytics service, Google will not associate your IP address with any other data held by Google.\\n\\nYou may refuse the use of Google Analytics cookies downloading and installing the browser add-on for Google Analytics Opt-out ([tools.google.com/dlpage/gaoptout?hl=it](https://tools.google.com/dlpage/gaoptout?hl=it)). The add-on communicates with the Google Analytics JavaScript (ga.js) to indicate that the data on the website visit should not be sent to Google Analytics.\\n\\nFor more information see the page \\\"How Google uses data when you use our partners' sites or apps\\\" ([www.google.com/policies/privacy/partners](https://www.google.com/policies/privacy/partners/)), privacy policy ([support.google.com/analytics/answer/6004245?hl=en](https://support.google.com/analytics/answer/6004245?hl=en)) and conditions of the Google Analytics service ([www.google.com/analytics/terms/us.html](https://www.google.com/analytics/terms/us.html)).\\n\\n**Google Maps widget** – Map visualization service provided by Google that uses cookies and allows Google to collect, store and process data on the use of the service according to the terms of its Privacy Policy ([www.google.it/intl/it/policies/privacy](https://www.google.it/intl/it/policies/privacy/)).\\n\\n**Youtube widget** – Video player service provided by Google that uses cookies and allows Google to collect, store and process data on the use of the service according to the terms of its Privacy Policy ([www.google.it/intl/it/policies/privacy](https://www.google.it/intl/it/policies/privacy/)).\\n\\n\";","export default \"### Titolare del trattamento\\n\\nIl titolare del trattamento dei dati è Finder S.p.A. con socio unico (di seguito \\\"**noi**\\\").\\n\\nSe hai qualche domanda puoi scriverci al nostro indirizzo Via Drubiaglio, 14 - 10040 Almese (Torino) - ITALIA o all'indirizzo e-mail [privacy@findernet.com](mailto:privacy@findernet.com).\\n\\nCon la presente informiamo che tratteremo i tuoi dati in modo lecito e corretto nel pieno rispetto dei tuoi diritti e, in particolare, della tua privacy, in conformità al Regolamento (UE) 2016/679 (di seguito **\\\"Regolamento\\\"**) e ad altre leggi applicabili e regolamenti.\\n\\n### Dati\\n\\nTratteremo i seguenti dati:\\n\\n**Dati del modulo di registrazione** - Quando ti registri all'applicazione Yesly o BLISS, acquisiamo i tuoi dati personali (nome e cognome, e-mail, indirizzo dell'impianto, posizione grossolana).\\n\\n**Dati dei dispositivi Smart Home della serie Yesly e BLISS** - Quando configuri un dispositivo Yesly o BLISS e lo registri, archiviamo i seguenti dati:\\n\\n- identificatori univoci dei dispositivi da monitorare\\n- tipo di dispositivi da controllare (luci, tapparelle, termostato, ecc.)\\n- parametri di configurazione specifici del dispositivo\\n- nome assegnato dall'utente ai dispositivi da controllare\\n- nome assegnato dall'utente agli impianti/case e alle stanze in cui si trovano i dispositivi\\n- nomi degli scenari configurati\\n- posizione di installazione del termostato\\n- posizione registrata dal telefono per le funzioni geo-fencing\\n- nomi e gli indirizzi email delle persone con cui si condividono i dispositivi o gli impianti\\n\\n**Dati di navigazione** - Quando ti connetti al nostro sistema, questo registrerà automaticamente le informazioni che il tuo dispositivo ci invia. Queste informazioni possono riguardare il contenuto caricato, i passi di navigazione compiuti, l'indirizzo IP e l'indirizzo MAC dal quale ti stai connettendo, il sistema operativo e la lingua del dispositivo, la data e l'ora della connessione, la tua posizione.\\n\\n**Informazioni di contatto e comunicazioni** - Quando ci invii i tuoi dati di contatto (e-mail, ecc.) e un'e-mail o altra comunicazione, registreremo i tuoi dati di contatto e le comunicazioni.\\n\\n**Cookies** - Quando utilizzi i nostri servizi, possiamo inviare al tuo dispositivo uno o più cookie (piccoli file di testo contenenti una stringa di caratteri alfanumerici):\\n\\n- Cookie tecnici, ovvero cookie di navigazione o di sessione, strettamente necessari al funzionamento del sito o per consentire all'utente di fruire di tali contenuti e dei servizi richiesti.\\n- Cookie analitici, ovvero cookie che ci consentono di comprendere come il sito viene utilizzato dagli utenti elaborando le informazioni in forma aggregata e anonima.\\n- cookie di terze parti, ovvero cookie di siti o server web diversi da quello che ospita il nostro servizio, utilizzati, con il tuo consenso, per fini propri di tali terze parti.\\n\\n### Finalità e basi legali del trattamento\\n\\nI tuoi dati personali saranno trattati con i seguenti scopi:\\n\\n- Fornire i nostri servizi, compreso il servizio di gestione dei dispositivi smart home della serie Yesly e BLISS conformemente all'articolo 6, paragrafo 1, lettera b), del Regolamento.\\n- Valutare e migliorare i nostri servizi e svilupparne di nuovi, perseguendo tale legittimo interesse ai sensi dell'articolo 6, paragrafo 1, lettera f), del Regolamento.\\n- Proteggere il funzionamento tecnico del nostro sistema, perseguendo tale legittimo interesse ai sensi dell'articolo 6, paragrafo 1, lettera f), del Regolamento.\\n- Adempiere agli obblighi di legge e / o rispettare gli ordini delle autorità pubbliche, comprese le autorità giudiziarie, ai sensi dell'articolo 6, paragrafo 1, lettera c), del Regolamento.\\n- Elaborare e diffondere statistiche e rappresentazioni grafiche, ma solo in forma aggregata e anonima, perseguendo tale legittimo interesse ai sensi dell'articolo 6, paragrafo 1, lettera f), del Regolamento.\\n\\nTratteremo inoltre i tuoi dati personali per informarti sui nostri servizi e le novità sul nostro sito, perseguendo questo legittimo interesse ai sensi dell'articolo 6, paragrafo 1, lettera f), del Regolamento.\\n\\n**Comunicazione dei dati a Google Inc. (\\\"Google\\\") tramite Google Action**\\n\\nQuando richiedi il collegamento del tuo account Yesly o BLISS a Google Action eseguiamo un'operazione di collegamento dell'account ovvero di \\\"account linking\\\" e in particolare comunichiamo a Google:\\n\\n- nome e cognome\\n- e-mail\\n- identificatori univoci dei dispositivi da monitorare\\n- tipo di dispositivi da controllare (luci, persiane, termostato, ecc.)\\n- nome assegnato dall'utente ai dispositivi da controllare\\n- nomi degli scenari configurati\\n\\nIn questo modo puoi interagire con Google Assitant per controllare i dispositivi Yesly e BLISS.\\n\\n**Comunicazione dei dati a Amazon Digital Services LLC, Amazon Media EU S.a.r.l. e / o loro affiliati (\\\"Amazon\\\") tramite Alexa Skills**\\n\\nQuando richiedi di collegare il tuo account Yesly o BLISS ad Alexa con lo Skill Yesly o BLISS, eseguiamo un'operazione di collegamento dell'account ovvero di \\\"account linking\\\" e in particolare comunichiamo ad Amazon:\\n\\n- nome e cognome\\n- e-mail\\n- identificatori univoci dei dispositivi da monitorare\\n- tipo di dispositivi da controllare (luci, persiane, termostato, ecc.)\\n- nome assegnato dall'utente ai dispositivi da controllare\\n- nomi degli scenari configurati\\n\\nIn questo modo puoi interagire con Alexa per controllare i dispositivi Yesly e BLISS.\\n\\n### Comunicazione ad altre terze parti\\n\\nPotremmo comunicare i tuoi dati:\\n\\n- A terze parti che lavorano con noi e si occupano delle fasi dei processi necessari per il corretto svolgimento delle nostre attività.\\n- a terzi per adempiere agli obblighi di legge, per rispettare gli ordini delle autorità pubbliche, comprese le autorità giudiziarie, e / o per proteggere i nostri diritti o di terze parti ai sensi di legge.\\n\\n### Periodo di conservazione\\n\\nI tuoi dati di contatto e le tue comunicazioni saranno conservati per il tempo necessario a soddisfare la tua richiesta e per il tempo necessario necessario per utilizzare i dati per proteggere i tuoi e / o i nostri diritti e / o diritti di terze parti.\\n\\nI tuoi dati di navigazione verranno archiviati per un massimo di 24 ore.\\n\\nI cookie tecnici verranno memorizzati per tutta la durata della sessione.\\n\\n### Diritti\\n\\nTi ricordiamo che, secondo il Regolamento, hai diritto:\\n\\n- Di ottenere l'accesso ai dati personali ai sensi dell'articolo 15 del Regolamento.\\n- Di ottenere la correzione dei dati personali in base all'articolo 16 del Regolamento.\\n- Di ottenere la cancellazione dei dati personali ai sensi dell'articolo 17 del Regolamento.\\n- Di ottenere la restrizione del trattamento dei dati personali ai sensi dell'articolo 18 del Regolamento.\\n- Di opporti al trattamento dei dati personali in base all'articolo 6, paragrafo 1, lettera f), del Regolamento (valutare e migliorare i servizi e svilupparne di nuovi, proteggere il funzionamento tecnico del nostro sistema) ai sensi dell'articolo 21 del Regolamento.\\n- Alla portabilità dei dati personali ai sensi dell'articolo 20 del Regolamento.\\n- A presentare un reclamo all'Autorità sulla privacy in base all'articolo 77 del Regolamento.\\n\\n### Informazioni sui cookie\\n\\nPuoi controllare e / o eliminare i cookie come preferisci. Per saperne di più, visita il sito web [[www.allaboutcookies.org](http://www.allaboutcookies.org)] ([http://www.allaboutcookies.org/](http://www.allaboutcookies.org/)).\\n\\nÈ possibile selezionare quali cookie abilitare tramite la procedura appropriata fornita di seguito, nonché eliminare i cookie già presenti sul dispositivo e impostare la maggior parte dei browser per bloccarne l'installazione.\\n\\nLa maggior parte dei browser ti consente di:\\n\\n- Visualizzare i cookie e cancellarli singolarmente.\\n- Bloccare i cookie di terze parti.\\n- Bloccare i cookie per determinati siti.\\n- Bloccare l'installazione di tutti i cookie.\\n- Eliminare tutti i cookie quando chiudi il browser.\\n\\nPer ulteriori informazioni su come impostare le preferenze sull'uso dei cookie tramite il browser Web, è possibile consultare le istruzioni pertinenti:\\n\\n- Internet Explorer.\\n- Firefox.\\n- Chrome.\\n- Musica lirica.\\n- Safari.\\n\\nSe si sceglie di rimuovere o non abilitare:\\n\\n- Cookie tecnici, potresti non essere in grado di utilizzare il sito, visualizzare i contenuti e utilizzare i suoi servizi.\\n- Altri cookie (analytics e / o cookie di terze parti), alcuni servizi o alcune funzionalità del sito potrebbero non essere disponibili o non funzionare correttamente e si potrebbe essere costretti a modificare o immettere manualmente alcune informazioni o preferenze ogni volta che si visita il sito.\\n\\n### Servizi di terze parti che installano i cookie\\n\\nPossiamo utilizzare i seguenti servizi che utilizzano i cookie per elaborare i tuoi dati. **Google Analytics** - Un servizio di analisi web fornito da Google Inc. (\\\"Google\\\"), che ci consente di analizzare come gli utenti utilizzano il sito e fa uso di cookie. Le informazioni generate dai cookie sull'utilizzo del sito - le informazioni standard utilizzate su Internet (incluso il tuo indirizzo IP) e le informazioni anonime sul tuo comportamento - sono trasmesse a Google e archiviate da Google sui server negli Stati Uniti. Google renderà anonimo qualsiasi informazione trasmessa eliminando l'ultimo ottetto del tuo indirizzo IP prima della memorizzazione. In base ai termini del servizio Google Analytics, Google utilizzerà queste informazioni allo scopo di valutare l'utilizzo del sito e compilare report sull'attività del sito per noi.\\n\\nNon useremo o consentiremo a terzi di utilizzare gli strumenti di analisi statistica per trovare o raccogliere informazioni che permettano di identificarti. Google può trasferire a terzi le informazioni raccolte da Google Analytics ove richiesto dalla legge o laddove tali terze parti elaborino le informazioni per conto di Google. Secondo i termini del servizio Google Analytics, Google non assocerà il tuo indirizzo IP a nessun altro dato posseduto da Google.\\n\\nPuoi rifiutare l'uso dei cookie di Google Analytics scaricando e installando il componente aggiuntivo del browser per la disattivazione di Google Analytics ([tools.google.com/dlpage/gaoptout?hl=it](https://tools.google.com/%20dlpage%20/%20gaoptout?%20hl%20=%20it)). Il componente aggiuntivo comunica con il codice JavaScript di Google Analytics (ga.js) per indicare che i dati sulla visita del sito Web non devono essere inviati a Google Analytics.\\n\\nPer maggiori informazioni consulta la pagina \\\"Come Google utilizza i dati quando usi i siti o le app dei nostri partner\\\" ([www.google.com/policies/privacy/partners](https://www.google.com/policies/privacy/%20partner%20/)), informativa sulla privacy ([support.google.com/analytics/answer/6004245?hl=it](https://support.google.com/analytics/answer/6004245?hl=it)) e condizioni di il servizio di Google Analytics ([www.google.com/analytics/terms/us.html](https://www.google.com/analytics/terms/us.html)).\\n\\n**Widget di Google Maps** - Servizio di visualizzazione mappe fornito da Google che utilizza i cookie e consente a Google di raccogliere, archiviare ed elaborare i dati sull'utilizzo del servizio in base ai termini della sua Informativa sulla privacy ([www.google.it/intl/it/policies/privacy](https://www.google.it/intl/it/policies/privacy/)).\\n\\n**Widget Youtube** - Servizio di video player fornito da Google che utilizza i cookie e consente a Google di raccogliere, archiviare ed elaborare i dati sull'utilizzo del servizio in base ai termini della sua Informativa sulla privacy ([https://www.google.it/intl/it/policies/privacy/](https://www.google.it/intl/it/policies/privacy/)).\\n\\n\";","export default \"### Verantwortlicher:\\n\\nDer Verantwortliche der Datenverarbeitung ist Finder S.p.A. mit Alleingesellschafter (nachfolgend „**wir**“).\\n\\nBei Fragen können Sie sich an unsere Adresse Via Drubiaglio, 14 - 10040 Almese (Torino) - ITALIEN oder an die E-Mail-Adresse [privacy@findernet.com](mailto:privacy@findernet.com) wenden.\\n\\nWir weisen Sie darauf hin, dass wir Ihre Daten rechtmäßig und ordnungsgemäß unter vollständiger Wahrung Ihrer Rechte, insbesondere Ihrer Privatsphäre, in Übereinstimmung mit der Verordnung (EU) 2016/679 (nachfolgend **„Verordnung“**) und anderen geltenden Gesetzen und Vorschriften verarbeiten werden.\\n\\n### Daten\\n\\nWir werden die folgenden Daten verarbeiten:\\n\\n**Daten des Registrierungsformulars** - Wenn Sie sich für die YESLY-Anwendung registrieren, erfassen wir Ihre personenbezogenen Daten (Vor- und Nachname, E-Mail-Adresse, Werksadresse, ungefährer Standort).\\n\\n**Daten der Smart-Home-Geräte der Serie Yesly** - Wenn Sie ein Yesly-Gerät konfigurieren und registrieren, speichern wir die folgenden Daten:\\n\\n- eindeutige Identifikatoren der zu überwachenden Geräte\\n- Art der zu steuernden Geräte (Lichter, Rollläden usw.)\\n- gerätespezifische Konfigurationsparameter\\n- Name, der vom Nutzer den zu steuernden Geräten zugewiesen wird\\n- Name, der vom Nutzer den Anlagen/Häusern und Räumen, in denen sich die Geräte befinden, zugewiesen wird\\n- Namen der konfigurierten Szenarien\\n\\n**Navigationsdaten** - Wenn Sie sich mit unserem System verbinden, werden automatisch die Informationen aufgezeichnet, die Ihr Gerät an uns sendet. Diese Informationen können sich auf den hochgeladenen Inhalt, die durchgeführten Navigationsschritte, die IP-Adresse und die MAC-Adresse, von der aus Sie sich verbinden, das Betriebssystem und die Sprache des Gerätes, das Datum und die Uhrzeit der Verbindung und auf Ihren Standort beziehen.\\n\\n**Kontaktinformationen und Mitteilungen** - Wenn Sie uns Ihre Kontaktinformationen (E-Mail, etc.) und eine E-Mail oder eine andere Mitteilung zusenden, werden wir Ihre Kontaktinformationen und Mitteilungen aufzeichnen.\\n\\n**Cookies** - Wenn Sie unsere Dienste nutzen, können wir einen oder mehrere Cookies (kleine Textdateien mit einer Kette von alphanumerischen Zeichen) an Ihr Gerät senden:\\n\\n- Technische Cookies, d. h. Navigations- oder Sitzungscookies, die für den Betrieb der Website unbedingt erforderlich sind oder es dem Nutzer ermöglichen, die gewünschten Inhalte und Dienste zu nutzen.\\n- Analyse-Cookies, d. h. Cookies, die es uns ermöglichen zu verstehen, wie die Website von den Nutzern genutzt wird, indem sie Informationen in zusammengefasster und anonymer Form verarbeiten.\\n- Cookies von Dritten, d. h. Cookies von anderen Websites oder Webservern als dem, der unseren Dienst anbietet, die mit Ihrer Einwilligung für die Zwecke dieser Dritten verwendet werden.\\n\\n### Zweck und Rechtsgrundlage der Verarbeitung\\n\\nIhre personenbezogenen Daten werden für die folgenden Zwecke verarbeitet:\\n\\n- Erbringung unserer Dienstleistungen, einschließlich des Managementdienstes für Smart-Home-Geräte der Yesly-Serie gemäß Artikel 6 Absatz 1 Buchstabe b) der Verordnung.\\n- Bewertung und Verbesserung unserer Dienstleistungen und Entwicklung neuer Dienstleistungen, wobei dieses berechtigte Interesse gemäß Artikel 6 Absatz 1 Buchstabe f) der Verordnung verfolgt wird.\\n- Den technischen Betrieb unseres Systems zu schützen, wobei dieses berechtigte Interesse gemäß Artikel 6 Absatz 1 Buchstabe f) der Verordnung verfolgt wird.\\n- Erfüllung gesetzlicher Verpflichtungen bzw. Erfüllung von Anordnungen von Behörden, einschließlich Justizbehörden, gemäß Artikel 6 Absatz 1 Buchstabe c) der Verordnung.\\n- Verarbeitung und Verbreitung von Statistiken und grafischen Darstellungen, jedoch nur in zusammengefasster und anonymer Form, wobei dieses berechtigte Interesse gemäß Artikel 6 Absatz 1 Buchstabe f) der Verordnung verfolgt wird.\\n\\nWir verarbeiten Ihre personenbezogenen Daten auch, um Sie über unsere Dienstleistungen und Neuheiten auf unserer Website zu informieren, wobei dieses berechtigte Interesse gemäß Artikel 6 Absatz 1 Buchstabe f) der Verordnung verfolgt wird.\\n\\n**Übermittlung von Daten an die Google Inc. („Google“) mittels Google Aktion**\\n\\nWenn Sie die Verknüpfung Ihres Yesly-Accounts mit Google Action beantragen, führen wir eine Verknüpfung des Accounts, d. h. ein „Account Linking“, durch und teilen Google insbesondere Folgendes mit:\\n\\n- Vor- und Nachname\\n- E-Mail\\n- eindeutige Identifikatoren der zu überwachenden Geräte\\n- Art der zu steuernden Geräte (Lichter, Jalousien usw.)\\n- Name, der vom Nutzer den zu steuernden Geräten zugewiesen wird\\n- Namen der konfigurierten Szenarien\\n\\nAuf diese Weise können Sie mit dem Google Assistant interagieren, um die Yesly-Geräte zu steuern.\\n\\n**Übermittlung von Daten an Amazon Digital Services LLC, Amazon Media EU S.a.r.l. bzw. deren Tochtergesellschaften („Amazon“) mittels Alexa Skills**\\n\\nWenn Sie die Verknüpfung Ihres Yesly-Accounts mit Alexa mit dem Skill Yesly beantragen, führen wir eine Verknüpfung des Accounts, d. h. ein „Account Linking“, durch und teilen Amazon insbesondere Folgendes mit:\\n\\n- Vor- und Nachname\\n- E-Mail\\n- eindeutige Identifikatoren der zu überwachenden Geräte\\n- Art der zu steuernden Geräte (Lichter, Jalousien usw.)\\n- Name, der vom Nutzer den zu steuernden Geräten zugewiesen wird\\n- Namen der konfigurierten Szenarien\\n\\nAuf diese Weise können Sie mit Alexa interagieren, um die Yesly-Geräte zu steuern.\\n\\n### Mitteilungen an andere Dritte\\n\\nWir können Ihre Daten weitergeben:\\n\\n- An Dritte, die mit uns zusammenarbeiten und sich um die Phasen der Prozesse kümmern, die für die ordnungsgemäße Durchführung unserer Aktivitäten notwendig sind.\\n- an Dritte, um gesetzlichen Verpflichtungen nachzukommen, Anordnungen von Behörden, einschließlich Justizbehörden, zu erfüllen bzw. unsere Rechte oder die Rechte Dritter gemäß dem Gesetz zu schützen.\\n\\n### Speicherfrist\\n\\nIhre Kontaktdaten und Mitteilungen werden so lange aufbewahrt, wie es für die Erfüllung Ihrer Anfrage und für die Verwendung der Daten zum Schutz Ihrer bzw. unserer Rechte bzw. der Rechte Dritter erforderlich ist.\\n\\nIhre Navigationsdaten werden höchstens bis zu 24 Stunden lang gespeichert.\\n\\nTechnische Cookies werden für die Dauer der Sitzung gespeichert.\\n\\n### Rechte\\n\\nWir weisen Sie darauf hin, dass Sie entsprechend der Verordnung das Recht dazu haben:\\n\\n- Gemäß Artikel 15 der Verordnung Zugang zu den personenbezogenen Daten zu erhalten.\\n- Gemäß Artikel 16 der Verordnung die Berichtigung der personenbezogenen Daten zu erreichen.\\n- Gemäß Artikel 17 der Verordnung die Löschung der personenbezogenen Daten zu erreichen.\\n- Gemäß Artikel 18 der Verordnung die Einschränkung der Verarbeitung personenbezogener Daten zu erreichen.\\n- Sich gemäß Artikel 21 der Verordnung der Verarbeitung der personenbezogenen Daten auf der Grundlage von Artikel 6 Absatz 1 Buchstabe f) der Verordnung (Bewertung und Verbesserung der Dienstleistungen und Entwicklung neuer Dienstleistungen, Schutz des technischen Betriebs unseres Systems) zu widersetzen.\\n- Gemäß Artikel 20 der Verordnung die Übertragbarkeit der personenbezogenen Daten zu erreichen.\\n- Gemäß Artikel 77 der Verordnung eine Beschwerde bei der Datenschutzbehörde einzureichen.\\n\\n### Informationen über Cookies\\n\\nSie können Cookies nach Ihren Wünschen kontrollieren bzw. löschen. Weitere Informationen finden Sie auf der Website [[www.allaboutcookies.org](http://www.allaboutcookies.org/)] ([http://www.allaboutcookies.org/](http://www.allaboutcookies.org/)).\\n\\nSie können auswählen, welche Cookies Sie mit der entsprechenden nachfolgend dargestellten Vorgehensweise aktivieren möchten, sowie bereits auf Ihrem Gerät vorhandene Cookies löschen und die meisten Browser so einstellen, dass sie deren Installation sperren.\\n\\nDie meisten Browser erlauben es Ihnen:\\n\\n- Die Cookies anzuzeigen und sie einzeln zu löschen.\\n- Die Cookies von Drittanbietern zu sperren.\\n- Die Cookies für bestimmte Websites zu sperren.\\n- Die Installation aller Cookies zu sperren.\\n- Alle Cookies zu löschen, wenn Sie Ihren Browser schließen.\\n\\nWeitere Informationen darüber, wie Sie Ihre Einstellungen für die Verwendung von Cookies über Ihren Webbrowser vornehmen, finden Sie in den entsprechenden Anweisungen von:\\n\\n- Internet Explorer.\\n- Firefox.\\n- Chrome.\\n- Lyrische Musik.\\n- Safari.\\n\\nWenn Sie sich dafür entscheiden:\\n\\n- Technische Cookies zu entfernen oder nicht zu aktivieren, können Sie möglicherweise nicht die Website nutzen, Inhalte anzeigen und ihre Dienste nutzen.\\n- Andere Cookies (Analytics bzw. Cookies von Drittanbietern) zu entfernen oder nicht zu aktivieren, können bestimmte Dienste oder gewisse Funktionen der Website möglicherweise nicht verfügbar sein oder ordnungsgemäß funktionieren und Sie sind möglicherweise gezwungen, bei jedem Besuch der Website bestimmte Informationen oder Einstellungen zu ändern oder manuell einzugeben.\\n\\n### Dienste von Drittanbietern, die Cookies installieren\\n\\nWir können die folgenden Dienste nutzen, die Cookies zur Verarbeitung Ihrer Daten verwenden. **Google Analytics** - Ein Webanalysedienst von Google Inc. („Google“), der es uns ermöglicht, zu analysieren, wie Nutzer die Website nutzen und welche Cookies verwendet werden. Die durch die Cookies erzeugten Informationen über Ihre Nutzung dieser Website - die im Internet verwendeten Standardinformationen (einschließlich Ihrer IP-Adresse) und anonyme Informationen über Ihr Verhalten - werden an Google übermittelt und von Google auf Servern in den USA gespeichert. Google wird jede übermittelte Information anonymisieren, indem das letzte Oktett Ihrer IP-Adresse vor der Speicherung gelöscht wird. In Übereinstimmung mit den Bestimmungen des Google Analytics Service wird Google diese Informationen verwenden, um Ihre Nutzung der Website auszuwerten und um für uns Berichte über die Website-Aktivitäten zusammenzustellen.\\n\\nWir werden keine statistischen Analyseinstrumente verwenden oder dies Dritten gestatten, um personenbezogenen Daten von Ihnen zu finden oder zu sammeln, die es ermögliche, Sie zu identifizieren. Google kann die von Google Analytics gesammelten Informationen an Dritte weitergeben, wenn dies gesetzlich vorgeschrieben ist oder wenn diese Dritten die Informationen im Auftrag von Google verarbeiten. Google wird im Rahmen des Dienstes Google Analytics Ihre IP-Adresse nicht mit anderen Daten von Google verknüpfen.\\n\\nSie können die Verwendung von Google Analytics-Cookies ablehnen, indem Sie das Browser-Add-on zur Deaktivierung von Google Analytics herunterladen und installieren ([tools.google.com/dlpage/gaoptout?hl=de](https://tools.google.com/dlpage/gaoptout?hl=de)). Das Add-on kommuniziert mit dem JavaScript-Code von Google Analytics (ga.js), um anzuzeigen, dass die Daten über den Besuch der Website nicht an Google Analytics gesendet werden dürfen.\\n\\nWeitere Informationen finden Sie auf der Seite „Wie Google die Daten verwendet, wenn Sie die Websites oder Apps unserer Partner nutzen“ ([](https://policies.google.com/technologies/partner-sites?hl=de)policies.google.com/technologies/partner-sites)Datenschutzerklärung ([support.google.com/analytics/answer/6004245?hl=de](https://support.google.com/analytics/answer/6004245?hl=de)) und Allgemeine Geschäftsbedingungen von Google Analytics ([https://marketingplatform.google.com/about/analytics/terms/de/](https://marketingplatform.google.com/about/analytics/terms/de/)).\\n\\n**Widget von Google Maps** - Ein von Google bereitgestellter Kartendarstellungsdienst, der Cookies verwendet und es Google ermöglicht, Daten über Ihre Nutzung des Dienstes in Übereinstimmung mit den Bestimmungen der eigenen Datenschutzerklärung ([policies.google.com/privacy](https://policies.google.com/privacy?hl=de≷=de)) zu sammeln, zu speichern und zu verarbeiten.\\n\\n**Youtube-Widget** - Ein Videoplayer-Service von Google, der Cookies verwendet und es Google ermöglicht, Daten über Ihre Nutzung des Dienstes in Übereinstimmung mit den Bestimmungen seiner Datenschutzerklärung ([policies.google.com/privacy](https://policies.google.com/privacy?hl=de≷=de)) zu sammeln, zu speichern und zu verarbeiten.\\n\\n\";","export default \"### Responsable del tratamiento\\n\\nEl responsable del tratamiento de los datos es Finder S.p.A. unipersonal (en adelante, \\\"**nosotros**\\\").\\n\\nSi tienes alguna pregunta, puedes escribirnos por correo postal a Via Drubiaglio, 14 - 10040 Almese (Turín) - ITALIA, o bien por correo electrónico [privacy@findernet.com](mailto:privacy@findernet.com).\\n\\nPor este medio te informamos que trataremos tus datos de forma legal y correcta, respetando plenamente tus derechos y, en particular, tu confidencialidad, de conformidad con el Reglamento (UE) 2016/679 (en adelante, **\\\"Reglamento\\\"**) y con otras leyes y reglamentos aplicables.\\n\\n### Datos\\n\\nTrataremos los siguientes datos:\\n\\n**Datos del formulario de registro** - Cuando te registras en la aplicación YESLY, adquirimos tus datos personales (nombre y apellidos, correo electrónico, dirección de la planta, ubicación aproximada).\\n\\n**Datos de los dispositivos Smart Home de la serie Yesly** - Cuando configuras un dispositivo Yesly y lo registras, almacenamos los siguientes datos:\\n\\n- identificadores únicos de los dispositivos a controlar\\n- tipo de dispositivos a controlar (luces, persianas, etc.)\\n- parámetros de configuración específicos del dispositivo\\n- nombre asignado por el usuario a los dispositivos a controlar\\n- nombre asignado por el usuario a los sistemas/casas y habitaciones donde se encuentran los dispositivos\\n- nombres de los escenarios configurados\\n\\n**Datos de navegación** - Cuando te conectes a nuestro sistema, este registra automáticamente la información que nos envía tu dispositivo. Esta información puede estar relacionada con el contenido cargado, los pasos de navegación realizados, la dirección IP y la dirección MAC desde la que te estás conectando, el sistema operativo y el idioma del dispositivo, la fecha y hora de la conexión, tu ubicación.\\n\\n**Información de contacto y comunicaciones** - Cuando nos envías tu información de contacto (correo electrónico, etc.) y un correo electrónico u otra comunicación, registramos tu información de contacto y las comunicaciones.\\n\\n***Cookies*** - Cuando utilizas nuestros servicios, podemos enviar una o más *cookies* (pequeños archivos de texto que contienen una cadena de caracteres alfanuméricos) a tu dispositivo:\\n\\n- *Cookies* técnicas, es decir, *cookies* de navegación o de sesión, estrictamente necesarias para el funcionamiento del sitio web o para permitir al usuario disfrutar de los contenidos y servicios solicitados.\\n- *Cookies* analíticas, es decir, *cookies* que nos permiten entender cómo los usuarios utilizan el sitio web mediante el procesamiento de información de forma agregada y anónima.\\n- *Cookies* de terceros, es decir, *cookies* de sitios web o servidores web distintos del que alberga nuestro servicio, que se utilizan, con tu consentimiento, para los fines de dichos terceros.\\n\\n### Fines y bases jurídicas del tratamiento\\n\\nTus datos personales serán tratados para los siguientes fines:\\n\\n- Prestar nuestros servicios, incluido el servicio de gestión de los dispositivos Smart Home de la serie Yesly, de conformidad con el artículo 6, apartado 1, letra b), del Reglamento.\\n- Evaluar y mejorar nuestros servicios y desarrollar otros nuevos, persiguiendo este interés legítimo de conformidad con el artículo 6, apartado 1, letra f), del Reglamento.\\n- Proteger el funcionamiento técnico de nuestro sistema persiguiendo este interés legítimo de conformidad con el artículo 6, apartado 1, letra f), del Reglamento.\\n- Cumplir las obligaciones legales y/o las órdenes de las autoridades públicas, incluidas las autoridades judiciales, de conformidad con el artículo 6, apartado 1, letra c), del Reglamento.\\n- Elaborar y difundir estadísticas y representaciones gráficas, pero solo de forma agregada y anónima, persiguiendo este interés legítimo de conformidad con el artículo 6, apartado 1, letra f), del Reglamento.\\n\\nTambién trataremos tus datos personales para informarte acerca de nuestros servicios y de las novedades en nuestro sitio web, persiguiendo este interés legítimo de conformidad con el artículo 6, apartado 1, letra f), del Reglamento.\\n\\n**Comunicación de datos a Google Inc. (\\\"Google\\\") mediante Google Action**\\n\\nCuando solicitas la vinculación de tu cuenta de Yesly a Google Action, realizamos una operación de vinculación de la cuenta (\\\"account linking\\\") y, en particular, comunicamos a Google:\\n\\n- nombre y apellidos\\n- correo electrónico\\n- identificadores únicos de los dispositivos a controlar\\n- tipo de dispositivos a controlar (luces, celosías, etc.)\\n- nombre asignado por el usuario a los dispositivos a controlar\\n- nombres de los escenarios configurados\\n\\nDe esta manera, puedes interactuar con el Asistente de Google para controlar los dispositivos Yesly.\\n\\n**Comunicación de datos a Amazon Digital Services LLC, Amazon Media EU S.a.r.l. y/o sus afiliados (\\\"Amazon\\\") a través de Alexa Skills**\\n\\nCuando solicitas la vinculación de tu cuenta de Yesly a Alexa con Skill Yesly, realizamos una operación de vinculación de la cuenta (\\\"account linking\\\") y, en particular, comunicamos a Amazon:\\n\\n- nombre y apellidos\\n- correo electrónico\\n- identificadores únicos de los dispositivos a controlar\\n- tipo de dispositivos a controlar (luces, celosías, etc.)\\n- nombre asignado por el usuario a los dispositivos a controlar\\n- nombres de los escenarios configurados\\n\\nDe esta manera, puedes interactuar con Alexa para controlar los dispositivos Yesly.\\n\\n### Comunicación a otros terceros\\n\\nPodemos comunicar tus datos:\\n\\n- A terceros que trabajan con nosotros y se encargan de las fases de los procesos necesarios para el correcto desarrollo de nuestras actividades.\\n- A terceros para cumplir las obligaciones legales y las órdenes de las autoridades públicas, incluidas las autoridades judiciales, o bien para proteger nuestros derechos o los de terceros en virtud de la ley.\\n\\n### Periodo de conservación\\n\\nTus datos de contacto y comunicaciones se conservarán durante el tiempo que sea necesario para satisfacer tu solicitud y durante el tiempo que sea necesario para utilizar los datos a fin de proteger derechos tuyos, nuestros o de terceros.\\n\\nTus datos de navegación se almacenarán durante un máximo de 24 horas.\\n\\nLas *cookies* técnicas se memorizarán durante toda la sesión.\\n\\n### Derechos\\n\\nTe recordamos que, según el Reglamento, tienes derecho a:\\n\\n- Obtener el acceso a los datos personales en virtud del artículo 15 del Reglamento.\\n- Obtener la corrección de los datos personales en virtud del artículo 16 del Reglamento.\\n- Obtener la supresión de los datos personales en virtud del artículo 17 del Reglamento.\\n- Obtener la restricción del tratamiento de los datos personales en virtud del artículo 18 del Reglamento.\\n- Oponerte al tratamiento de los datos personales sobre la base del artículo 6, apartado 1, letra f), del Reglamento (evaluar y mejorar los servicios y desarrollar otros nuevos, proteger el funcionamiento técnico de nuestro sistema), en virtud del artículo 21 del Reglamento.\\n- La portabilidad de los datos personales en virtud del artículo 20 del Reglamento.\\n- Presentar una reclamación ante el Supervisor de Control de Datos en virtud del artículo 77 del Reglamento.\\n\\n### Información acerca de las *cookies*\\n\\nPuedes controlar y/o eliminar las *cookies* como prefieras. Para más información, visita el sitio web [[www.allaboutcookies.org](http://www.allaboutcookies.org)] ([http://www.allaboutcookies.org/](http://www.allaboutcookies.org)).\\n\\nEs posible seleccionar qué *cookies* deseas habilitar mediante el procedimiento descrito a continuación, así como eliminar las *cookies* que ya se encuentren en tu dispositivo y configurar la mayoría de los navegadores para que bloqueen su instalación.\\n\\nLa mayoría de los navegadores te permiten:\\n\\n- Mostrar las *cookies* y borrarlas individualmente.\\n- Bloquear las *cookies* de terceros.\\n- Bloquear las *cookies* para ciertos sitios web.\\n- Bloquear la instalación de todas las *cookies*.\\n- Eliminar todas las *cookies* al cerrar el navegador.\\n\\nPara obtener más información sobre cómo configurar tus preferencias sobre el uso de las *cookies* a través del navegador web, puedes consultar las instrucciones correspondientes:\\n\\n- Internet Explorer.\\n- Firefox.\\n- Chrome.\\n- Musica lirica.\\n- Safari.\\n\\nSi eliges eliminar o no habilitar:\\n\\n- *Cookies* técnicas, es posible que no puedas utilizar el sitio web, ver el contenido y utilizar sus servicios.\\n- Otras *cookies* (analíticas y/o *cookies* de terceros), ciertos servicios o funciones del sitio web podrían no estar disponibles o no funcionar correctamente y podrías verte obligado a cambiar o ingresar manualmente ciertas informaciones o preferencias cada vez que visites el sitio web.\\n\\n### Servicios de terceros que instalan *cookies*\\n\\nPodemos usar los siguientes servicios que utilizan *cookies* para procesar tus datos. **Google Analytics** - Un servicio de analítica web prestado por Google Inc. (\\\"Google\\\") que nos permite analizar cómo los usuarios utilizan el sitio web y hacen uso de las *cookies*. La información generada por las *cookies* sobre tu uso del sitio web —la información estándar utilizada en Internet (incluida su dirección IP) y la información anónima sobre tu comportamiento— se transmite a Google y se almacena en los servidores de Google en Estados Unidos. Google anonimizará cualquier información transmitida borrando el último octeto de tu dirección IP antes de almacenarla. De acuerdo con las condiciones del servicio Google Analytics, Google utilizará esta información con el fin de evaluar el uso del sitio web y recopilar informes sobre la actividad del sitio web para nosotros.\\n\\nNo utilizaremos ni permitiremos que terceros utilicen herramientas de análisis estadístico para encontrar o recopilar información que permita identificarte. Google puede transferir a terceros la información recopilada por Google Analytics cuando así lo requiera la ley, o bien cuando dichos terceros procesen la información por cuenta de Google. Según las condiciones del servicio Google Analytics, Google no asociará tu dirección IP con ningún otro dato que Google posea.\\n\\nPuedes rechazar el uso de las *cookies* de Google Analytics descargando e instalando el complemento del navegador para desactivar Google Analytics ([tools.google.com/dlpage/gaoptout?hl=es](https://tools.google.com/dlpage/gaoptout?hl=es)). El complemento se comunica con el código JavaScript de Google Analytics (ga.js) para indicar que los datos sobre la visita al sitio web no deben enviarse a Google Analytics.\\n\\nPara obtener más información, consulta la página \\\"Cómo utiliza Google los datos cuando usas los sitios web o aplicaciones de nuestros socios\\\" ([www.google.com/policies/privacy/partners](https://policies.google.com/technologies/partner-sites?hl=es)), la declaración de confidencialidad (support.google.com/analytics/answer/6004245?hl=es) y las condiciones del servicio de Google Analytics (www.google.com/analytics/terms/us.html).\\n\\n**Widget de Google Maps** - Servicio de visualización de mapas ofrecido por Google que utiliza *cookies* y permite a Google recopilar, almacenar y procesar datos sobre el uso del servicio de acuerdo con los términos de su declaración de confidencialidad ([policies.google.com/privacy](https://policies.google.com/privacy?hl=es≷=it)).\\n\\n**Widget Youtube** - Servicio de reproducción de vídeo ofrecido por Google que utiliza *cookies* y permite a Google recopilar, almacenar y procesar datos sobre el uso del servicio de acuerdo con los términos de su declaración de confidencialidad ([policies.google.com/privacy](https://www.google.it/intl/it/policies/privacy/)).\\n\\n\";","export default \"### Responsable du traitement\\n\\nLe responsable du traitement des données est Finder S.p.A. À associé unique (appelée ci-dessous **«nous»**).\\n\\nSi vous avez des questions, vous pouvez nous écrire à l’adresse Via Drubiaglio, 14 - 10040 Almese (Torino) - ITALIE ou à l'adresse e-mail [privacy@findernet.com](mailto:privacy@findernet.com).\\n\\nPar la présente, nous vous informons que nous traiterons vos données de manière licite et correcte dans le respect de vos droits et, en particulier, de votre vie privée, conformément au Règlement (UE) 2016/679 (appelé ci-dessous **«Règlement»**) et aux autres lois et règlements applicables.\\n\\n### Données\\n\\nNous traiterons les données suivantes :\\n\\n**Données du formulaire d'inscription** - Lorsque vous vous inscrivez sur l'application YESLY, nous collectons vos données à caractère personnel (nom et prénom, e-mail, adresse de l'usine, emplacement approximatif).\\n\\n**Données des appareils Smart Home de la série Yesly** - Lorsque vous configurez un appareil Yesly et que vous l'enregistrez, nous enregistrons les données suivantes :\\n\\n- les identificateurs uniques des appareils à surveiller\\n- le type d’appareils à contrôler (éclairage, volets, etc.)\\n- les paramètres de configuration spécifiques de l'appareil\\n- le nom attribué par l'utilisateur aux appareils à contrôler\\n- le nom attribué par l'utilisateur aux systèmes/maisons et pièces dans lesquels se trouvent les appareils\\n- les noms des scénarios configurés\\n\\n**Données de navigation** - Lorsque vous vous connectez à notre système, celui-ci enregistre automatiquement les informations que votre appareil nous envoie. Ces informations peuvent concerner le contenu téléchargé, les étapes de navigation effectuées, l'adresse IP et l'adresse MAC à partir de laquelle vous vous connectez, le système d'exploitation, la langue du périphérique, la date et l'heure de la connexion, votre position.\\n\\n**Coordonnées et communications** - Lorsque vous nous envoyez vos coordonnées (adresse e-mail, etc.), un e-mail ou une autre communication, nous enregistrons vos coordonnées et vos communications.\\n\\n**Cookies** - Lorsque vous utilisez nos services, nous pouvons envoyer un ou plusieurs cookies (petits fichiers texte contenant une chaîne de caractères alphanumériques) à votre appareil :\\n\\n- Les cookies techniques, ou cookies de navigation ou de session, sont strictement nécessaires au fonctionnement du site ou pour permettre à l'utilisateur d’utiliser ces contenus et services demandés.\\n- Les cookies analytiques, sont des cookies qui nous permettent de comprendre comment le site est utilisé par les utilisateurs en traitant les informations sous forme agrégée et anonyme.\\n- Les cookies tiers, à savoir les cookies de sites ou de serveurs Web différents de ceux hébergeant notre service, sont utilisés, avec votre consentement, pour les finalités personnelles de la tierce partie.\\n\\n### Finalités et base juridique du traitement\\n\\nVos données à caractère personnel seront traitées pour les finalités suivantes :\\n\\n- Fournir nos services, y compris le service de gestion des appareils smart home de la série Yesly conformément à l'article 6, paragraphe 1, point b), du Règlement.\\n- Évaluer et améliorer nos services et en développer de nouveaux, en poursuivant cet intérêt légitime conformément à l'article 6, paragraphe 1, point f), du Règlement.\\n- Protéger le fonctionnement technique de notre système en poursuivant cet intérêt légitime conformément à l'article 6, paragraphe 1, point f), du Règlement.\\n- Respecter les obligations légales et/ou se conformer aux ordres des autorités publiques, y compris les autorités judiciaires, conformément à l'article 6, paragraphe 1, point c), du Règlement.\\n- Traiter et diffuser des statistiques et des représentations graphiques, mais uniquement sous forme agrégée et anonyme, en poursuivant cet intérêt légitime conformément à l'article 6, paragraphe 1, point f), du Règlement.\\n\\nNous traiterons également vos données à caractère personnel afin de vous informer de nos services et de l'actualité de notre site, en poursuivant cet intérêt légitime conformément à l'article 6, paragraphe 1, lettre f), du Règlement.\\n\\n**Communication des données à Google Inc. (« Google ») via Google Action**\\n\\nLorsque vous demandez l’association de votre compte Yesly à Google Action, nous effectuons une opération d’association de compte et, en particulier, nous communiquons à Google :\\n\\n- prénom et nom de famille\\n- e-mail\\n- les identificateurs uniques des appareils à surveiller\\n- le type d’appareils à contrôler (éclairage, volets, etc.)\\n- le nom attribué par l'utilisateur aux appareils à contrôler\\n- les noms des scénarios configurés\\n\\nDe cette façon, vous pouvez interagir avec Google Assistant pour contrôler les appareils Yesly.\\n\\n**Communication de données à Amazon Digital Services LLC, Amazon Media EU S.a.r.l. et/ou à leurs filiales (« Amazon ») via Alexa Skills**\\n\\nLorsque vous demandez l’association de votre compte Yesly à Alexa avec le Skill Yesly, nous effectuons une opération d’association de compte et, en particulier, nous communiquons à Amazon :\\n\\n- prénom et nom de famille\\n- e-mail\\n- les identificateurs uniques des appareils à surveiller\\n- le type d’appareils à contrôler (éclairage, volets, etc.)\\n- le nom attribué par l'utilisateur aux appareils à contrôler\\n- les noms des scénarios configurés\\n\\nDe cette façon, vous pouvez interagir avec Alexa pour contrôler les appareils Yesly.\\n\\n### Communication à des tiers\\n\\nNous pourrions communiquer vos données :\\n\\n- Aux tiers qui travaillent avec nous et qui s'occupent des phases des processus nécessaires au bon déroulement de nos activités.\\n- Aux tiers pour respecter les obligations légales, les ordres des autorités publiques, y compris les autorités judiciaires, et/ou pour protéger nos droits ou ceux des tiers conformément à la loi.\\n\\n### Période de conservation\\n\\nVos coordonnées et communications seront conservées aussi longtemps que nécessaire pour répondre à votre demande et pour utiliser les données afin de protéger vos et/ou nos droits et/ou ceux des tiers.\\n\\nVos données de navigation sont archivées pendant maximum 24 heures.\\n\\nLes cookies techniques seront stockés pendant toute la durée de la session.\\n\\n### Droits\\n\\nNous vous rappelons que, conformément au Règlement, vous avez le droit :\\n\\n- D’obtenir l'accès aux données à caractère personnel conformément à l'article 15 du Règlement.\\n- D’obtenir la correction des données à caractère personnel conformément à l'article 16 du Règlement.\\n- D’obtenir l'effacement des données à caractère personnel conformément à l'article 17 du Règlement.\\n- D’obtenir la limitation du traitement des données à caractère personnel conformément à l'article 18 du Règlement.\\n- De vous opposer au traitement des données à caractère personnel sur la base de l'article 6, paragraphe 1, point f), du Règlement (évaluer et améliorer les services et en développer de nouveaux, protéger le fonctionnement technique de notre système) conformément à l'article 21 du Règlement.\\n- À la portabilité des données à caractère personnel conformément à l'article 20 du Règlement.\\n- D’introduire une réclamation auprès de l'Autorité de contrôle conformément à l'article 77 du Règlement.\\n\\n### À propos des cookies\\n\\nVous pouvez contrôler et/ou supprimer les cookies comme vous le souhaitez. Pour plus d’informations, rendez-vous sur [[www.allaboutcookies.org](http://www.allaboutcookies.org)] ([http://www.allaboutcookies.org/](http://www.allaboutcookies.org/)).\\n\\nVous pouvez sélectionner les cookies à activer en utilisant la procédure appropriée mentionnée ci-dessous, supprimer les cookies déjà présents sur votre appareil et configurer la plupart des navigateurs pour bloquer leur installation.\\n\\nLa plupart des navigateurs vous permettent :\\n\\n- D’afficher les cookies et de les supprimer individuellement.\\n- De bloquer les cookies tiers.\\n- De bloquer les cookies pour certains sites.\\n- De bloquer l'installation de tous les cookies.\\n- De supprimer tous les cookies lorsque vous fermez votre navigateur.\\n\\nPour plus d'informations sur la manière de définir vos préférences concernant l'utilisation des cookies via votre navigateur Web, vous pouvez consulter les instructions relatives :\\n\\n- Internet Explorer.\\n- Firefox.\\n- Chrome.\\n- Musica lirica.\\n- Safari.\\n\\nSi vous choisissez de supprimer ou de ne pas activer :\\n\\n- Les cookies techniques, vous pouvez ne pas être en mesure d'utiliser le site, de visualiser son contenu et d'utiliser ses services.\\n- Les autres cookies (analytiques et/ou cookies tiers), certains services ou certaines fonctionnalités du site pourraient ne pas être disponibles ou ne pas fonctionner correctement, et vous pourriez être contraint de modifier ou de saisir manuellement certaines informations ou préférences à chaque fois que vous visitez le site.\\n\\n### Services tiers qui installent les cookies\\n\\nNous pouvons utiliser les services suivants, qui utilisent des cookies, pour traiter vos données. **Google Analytics** - Un service d'analyse web fourni par Google Inc. (« Google »), qui nous permet d'analyser comment les utilisateurs utilisent le site et qui utilise des cookies. Les informations générées par les cookies concernant votre utilisation du site - les informations standard utilisées sur Internet (y compris votre adresse IP) et les informations anonymes concernant votre comportement - sont transmises à Google et archivées par Google sur des serveurs situés aux États-Unis. Google rendra anonyme toute information transmise en supprimant le dernier octet de votre adresse IP avant le stockage. Conformément aux conditions du service Google Analytics, Google utilisera ces informations dans le but d'évaluer votre utilisation du site et d'établir des rapports sur l'activité du site pour nous.\\n\\nNous n'utiliserons pas et ne permettrons à aucun tiers d'utiliser des outils d'analyse statistique pour trouver ou recueillir des informations personnelles qui permettent de vous identifier. Google est susceptible de transmettre les informations collectées par Google Analytics à des tiers si la loi l’exige ou lorsque ces tiers traitent ces informations pour le compte de Google. Dans le cadre du service Google Analytics, Google n'associera votre adresse IP à aucune autre donnée détenue par Google.\\n\\nVous pouvez refuser l'utilisation des cookies Google Analytics en téléchargeant et en installant le module complémentaire du navigateur pour désactiver Google Analytics ([tools.google.com/dlpage/gaoptout?hl=fr](https://tools.google.com/dlpage/gaoptout?hl=fr)). Le module complémentaire communique avec le code JavaScript de Google Analytics (ga.js) pour indiquer que les données concernant la visite du site Web ne doivent pas être envoyées à Google Analytics.\\n\\nPour plus d'informations, veuillez consulter la page « Comment utilisons-nous les informations collectées via les site ou applications qui font appel à nos services » ([policies.google.com/technologies/partner-sites](https://policies.google.com/technologies/partner-sites?hl=fr)), la politique de confidentialité ([](https://support.google.com/analytics/answer/6004245?hl=fr)support.google.com/analytics/answer/6004245?hl=fr) et les conditions de service de Google Analytics ([marketingplatform.google.com/about/analytics/terms/fr/](https://marketingplatform.google.com/about/analytics/terms/fr/)).\\n\\n**Widget de Google Maps** - Service d'affichage de cartes fourni par Google qui utilise des cookies et permet à Google de collecter, archiver et traiter les données relatives à l’utilisation du service conformément à la note d'information sur la confidentialité ([policies.google.com/privacy](https://policies.google.com/privacy?hl=fr≷=fr)).\\n\\n**Widget Youtube** - Un service de lecteur vidéo fourni par Google qui utilise des cookies et permet à Google de collecter, archiver et traiter des données relatives à l’utilisation du service conformément à la note d'information sur la confidentialité ([policies.google.com/privacy](https://policies.google.com/privacy?hl=fr≷=fr)).\\n\\n\";","export default \"### Responsável pelo tratamento de dados\\n\\nO responsável pelo tratamento de dados é a Finder S.p.A. com único sócio (a seguir \\\"**nós**\\\").\\n\\nPara qualquer esclarecimento ou informação, escreva-nos para a nossa morada em Via Drubiaglio, 14 - 10040 Almese (Torino) - ITÁLIA ou para o endereço de e-mail [privacy@findernet.com](mailto:privacy@findernet.com).\\n\\nPela presente, informamos que trataremos os seus dados de modo lícito e correto no pleno respeito dos seus direitos e, em particular, da sua privacidade, em conformidade com o Regulamento (UE) 2016/679 (a seguir **\\\"Regulamento\\\"**) e outras leis aplicáveis e regulamentos.\\n\\n### Dados \\n\\nTrataremos os seguintes dados:\\n\\n**Dados do formulário de registo** - Quando você se regista no aplicativo YESLY, recolhemos os seus dados pessoais (nome e apelido, e-mail, morada da instalação, posição aproximada).\\n\\n**Dados dos dispositivos Smart Home da série Yesly** - Quando você configura e regista um dispositivo Yesly, arquivamos os seguintes dados:\\n\\n- identificadores unívocos dos dispositivos a monitorar\\n- tipo de dispositivo a controlar (luzes, cortinas, etc.)\\n- parâmetros de configuração específicos do dispositivo\\n- nome atribuído pelo utilizador aos dispositivos a controlar\\n- nome atribuído pelo utilizador às instalações/moradias e aos quartos onde os dispositivos se encontram\\n- nomes dos cenários configurados\\n\\n**Dados de navegação** - Quando você se coneta ao nosso sistema, ele regista automaticamente as informações que o seu dispositivo nos envia. Estas informações podem referir-se ao conteúdo carregado, aos passos de navegação concluídos, ao endereço IP e ao endereço MAC do qual você se está a conetar, ao sistema operativo e ao idioma do dispositivo, à data e à hora de conexão e à sua localização.\\n\\n**Informações de contacto e comunicações** - Quando você nos envia os seus dados de contacto (e-mail, etc.) e um e-mail ou outra comunicação, os dados fornecidos são recolhidos e registados por nós.\\n\\n**Cookies** - Quando você utiliza os nossos serviços, poderemos enviar para o seu computador ou dispositivo móvel um ou mais cookies (pequenos ficheiros de texto com uma sequência de dígitos alfanuméricos):\\n\\n- Cookies técnicos, ou cookies de navegação ou de sessão, estritamente necessários para o funcionamento do site ou para permitir ao utilizador uma segura e eficiente navegação e fruição dos conteúdos e dos serviços oferecidos. \\n- Cookies analíticos, ou cookies que nos permitem compreender como o site é utilizado pelos utilizadores processando as informações de forma agregada e anónima.\\n- Cookies de terceiros, ou cookies de sites ou servidores  diferentes daquele que hospeda o nosso serviço, utilizados, com o seu consentimento, para fins próprios desses terceiros.\\n\\n### Finalidades e bases jurídicas do tratamento\\n\\nOs seus dados pessoais serão tratados com as seguintes finalidades:\\n\\n- Fornecer os nossos serviços, incluindo o serviço de gestão dos dispositivos smart home da série Yesly em conformidade com o artigo 6, parágrafo 1, alínea b) do Regulamento.\\n- Avaliar e melhorar os nossos serviços e desenvolver outros novos, para efeito dos interesses legítimos prosseguidos, nos termos do artigo 6, parágrafo 1, alínea f) do Regulamento.\\n- Proteger o funcionamento técnico do nosso sistema, para efeito dos interesses legítimos prosseguidos, nos termos do artigo 6, parágrafo 1, alínea f) do Regulamento.\\n- Cumprir uma obrigação jurídica e / ou respeitar uma ordem de autoridade pública, incluindo autoridades judiciárias, nos termos do artigo 6, parágrafo 1, alínea c) do Regulamento.\\n- Processar e difundir estatísticas e representações gráficas, mas somente de forma agregada e anónima, nos termos do artigo 6, parágrafo 1, alínea f) do Regulamento.\\n\\nTrataremos também os seus dados pessoais para informar-lhe sobre os nossos serviços e as novidades sobre o nosso site, nos termos do artigo 6, parágrafo 1, alínea f) do Regulamento.\\n\\n**Transmissão dos dados a Google Inc. (\\\"Google\\\") mediante o Google Action**\\n\\nQuando vincular a sua conta Yesly ao Google Action, efetuamos uma operação de vinculação de conta (Account linking) e em particular transmitimos ao Google:\\n\\n- nome e apelido\\n- e-mail\\n- identificadores unívocos dos dispositivos a monitorar\\n- tipo de dispositivos a controlar (luzes, cortinas, etc.)\\n- nome atribuído pelo utilizador aos dispositivos a controlar\\n- nomes dos cenários configurados\\n\\nDeste modo poderá interagir com o Google Assistant para controlar os dispositivos Yesly.\\n\\n**Transmissão de dados ao Amazon Digital Services LLC, Amazon Media EU S.a.r.l. e / ou seus afiliados (\\\"Amazon\\\") mediante Alexa Skills**\\n\\nQuando vincular a sua conta Yesly a Alexa com o Skill Yesly, efetuamos uma operação de vinculação de conta (Account linking) e em particular transmitimos ao Amazon:\\n\\n- nome e apelido\\n- e-mail\\n- identificadores unívocos dos dispositivos a monitorar\\n- tipo de dispositivos a controlar (luzes, cortinas, etc.)\\n- nome atribuído pelo utilizador aos dispositivos a controlar\\n- nomes dos cenários configurados\\n\\nDeste modo poderá interagir com Alexa para controlar os dispositivos Yesly.\\n\\n### Transmissão a terceiros\\n\\nPoderemos transmitir os seus dados:\\n\\n- a terceiros que trabalham com nós e se ocupam das fases dos processos necessários para o correto exercício das nossas atividades.\\n- a terceiros para cumprir obrigações jurídicas, para respeitar ordens de autoridades públicas, incluindo autoridades judiciárias, e / ou para proteger os nossos direitos ou de terceiros nos termos da lei.\\n\\n### Período de conservação dos dados\\n\\nOs seus dados de contacto e as suas comunicações serão conservados pelo tempo necessário para satisfazer o seu pedido e pelo tempo necessário para utilizar os dados para proteger os seus e / ou nossos direitos e / ou direitos de terceiros.\\n\\nOs seus dados de navegação serão arquivados por um máximo de 24 horas.\\n\\nOs cookies técnicos serão armazenados por toda a duração da sessão.\\n\\n### Direitos\\n\\nLembramos que, segundo o Regulamento, terá direito:\\n\\n- de obter o acesso aos seus dados pessoais, nos termos do artigo 15 do Regulamento.\\n- de obter a retificação dos seus dados pessoais com base no artigo 16 do Regulamento.\\n- de obter o apagamento dos seus dados pessoais, nos termos do artigo 17 do Regulamento.\\n- de obter a limitação do tratamento dos seus dados pessoais, nos termos do artigo 18 do Regulamento.\\n- de se opor ao tratamento dos seus dados pessoais com base no artigo 6, parágrafo 1, alínea f) do Regulamento (avaliar e melhorar os serviços e desenvolver novos, proteger o funcionamento técnico do nosso sistema) nos termos do artigo 21 do Regulamento.\\n- de portabilidade dos seus dados pessoais, nos termos do artigo 20 do Regulamento.\\n- de apresentar uma reclamação a uma Autoridade de controlo com base no artigo 77 do Regulamento.\\n\\n### Informações sobre os cookies\\n\\nPoderá controlar e/ou eliminar os cookies como preferir. Para mais informações, visite o site [[www.allaboutcookies.org](http://www.allaboutcookies.org)] ([http://www.allaboutcookies.org/](http://www.allaboutcookies.org)).\\n\\nÉ possível selecionar que cookies ativar mediante o procedimento apropriado fornecido a seguir, bem como eliminar os cookies já presentes no dispositivo e configurar a maioria dos navegadores para bloquear a sua instalação.\\n\\nA maioria dos navegadores permite-lhe:\\n\\n- Visualizar os cookies e eliminá-los um por um.\\n- Bloquear os cookies de terceiros.\\n- Bloquear os cookies para determinados sites.\\n- Bloquear a instalação de todos os cookies.\\n- Eliminar todos os cookies quando fechar o seu navegador.\\n\\nPara mais informações sobre como configurar o uso de cookies pelo navegador, é possível ler as instruções pertinentes em:\\n\\n- Internet Explorer.\\n- Firefox.\\n- Chrome.\\n- Opera.\\n- Safari.\\n\\nSe desejar remover ou desativar:\\n\\n- Cookies técnicos, poderá não ser capaz de utilizar o site, visualizar os conteúdos e utilizar os seus serviços.\\n- Outros cookies (analíticos e/ou cookies de terceiros), alguns serviços ou algumas funcionalidades do site poderiam não estar disponíveis ou não funcionar corretamente e poderá ter de modificar ou introduzir manualmente algumas informações ou preferências todas as vezes que entrar no site.\\n\\n### Serviços de terceiros que instalam cookies\\n\\nPodemos utilizar os seguintes serviços que utilizam os cookies para processar os seus dados. **Google Analytics** - Um serviço de análise web fornecido pelo Google Inc. (\\\"Google\\\"), que nos permite analisar como os utilizadores utilizam o site e usam os cookies. As informações geradas pelos cookies sobre a utilização do site - as informações standard utilizadas na internet (incluindo o seu endereço IP) e as informações anónimas sobre o seu comportamento - são transmitidas ao Google e arquivadas pelo Google nos servidores dos Estados Unidos. O Google tornará anónima qualquer informação transmitida eliminando o último octeto do seu endereço IP antes da memorização. Com base nos termos do serviço do Google Analytics, o Google utilizará estas informações a fim de avaliar a utilização do site e preencher os relatórios sobre a atividade do site para nós.\\n\\nNão usaremos ou autorizaremos terceiros a utilizar as ferramentas de análise estatística para encontrar ou recolher informações que permitam identificá-lo. O Google poderá transmitir a terceiros as informações recolhidas pelo Google Analytics onde exigido por lei ou onde tais terceiros processem as informações por conta do Google. Segundo os termos do serviço do Google Analytics, o Google não associará o seu endereço IP a nenhum outro dado possuído pelo Google.\\n\\nPoderá opor-se ao uso dos cookies do Google Analytics baixando e instalando o componente adicional do navegador para a desativação do Google Analytics ([tools.google.com/dlpage/gaoptout?hl=pt](https://tools.google.com/dlpage/gaoptout?hl=pt)). O componente adicional comunica com o código JavaScript do Google Analytics (ga.js) para indicar que os dados de acesso ao site não devem ser enviados ao Google Analytics.\\n\\nPara mais informações, consulte a página \\\"Como o Google utiliza os seus dados quando você visita os sites ou os aplicativos dos nossos parceiros\\\" ([policies.google.com/technologies/partner-sites](https://policies.google.com/technologies/partner-sites?hl=pt)), política de privacidade ([support.google.com/analytics/answer/6004245?hl=pt](https://support.google.com/analytics/answer/6004245?hl=pt)) e condições de serviço do Google Analytics ([marketingplatform.google.com/about/analytics/terms/pt/](https://marketingplatform.google.com/about/analytics/terms/pt/)).\\n\\n**Widget do Google Maps** - Serviço de visualização de mapas fornecido pelo Google, que utiliza os cookies e permite ao Google recolher, arquivar e processar os dados sobre a utilização do serviço com base nos termos da sua Política de Privacidade ([policies.google.com/privacy](https://policies.google.com/privacy?hl=pt≷=it)).\\n\\n**Widget Youtube** - Serviço de compartilhamento de vídeos fornecido pelo Google, que utiliza os cookies e permite ao Google recolher, arquivar e processar os dados sobre a utilização do serviço com base nos termos da sua Política de Privacidade ([policies.google.com/privacy](https://policies.google.com/privacy?hl=pt≷=it)).\\n\\n\";","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api';\nimport { useRouter } from '../../router';\nimport PrivacyPolicyEN from './privacy-en.md';\nimport PrivacyPolicyIT from './privacy-it.md';\nimport PrivacyPolicyDE from './privacy-de.md';\nimport PrivacyPolicyES from './privacy-es.md';\nimport PrivacyPolicyFR from './privacy-fr.md';\nimport PrivacyPolicyPT from './privacy-pt.md';\n\nconst componentName = 'PrivacyPolicy';\n\nexport default defineComponent({\n name: componentName,\n \n setup(context) {\n const { router, route } = useRouter();\n\n let language = 'en';\n if (route.value.query.returnUrl) {\n const params = new URLSearchParams(route.value.query.returnUrl as string);\n if (params) {\n language = params.get('language') ?? 'en';\n }\n }\n \n let markdownContent = PrivacyPolicyEN;\n switch (language) {\n case 'it':\n markdownContent = PrivacyPolicyIT;\n break;\n case 'en':\n markdownContent = PrivacyPolicyEN;\n break;\n case 'de':\n markdownContent = PrivacyPolicyDE;\n break;\n case 'fr':\n markdownContent = PrivacyPolicyFR;\n break;\n case 'es':\n markdownContent = PrivacyPolicyES;\n break;\n case 'pt':\n markdownContent = PrivacyPolicyPT;\n break;\n }\n\n return {\n markdownContent,\n }\n }\n})\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrivacyPolicy.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrivacyPolicy.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PrivacyPolicy.vue?vue&type=template&id=7dd16368&\"\nimport script from \"./PrivacyPolicy.vue?vue&type=script&lang=ts&\"\nexport * from \"./PrivacyPolicy.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport VueRouter, { Route } from 'vue-router';\nimport { ref, Ref } from '@vue/composition-api';\n\nVue.use(VueRouter);\n\nimport { authorize } from './router-utils';\nimport { getStore, setThemeDark } from './store/index';\nimport { init as initI18n } from './i18n';\n\nimport Register from './pages/Register.vue';\nimport RegisterConfirm from './pages/RegisterConfirm.vue';\nimport SignIn from './pages/SignIn.vue';\nimport Sharing from './pages/Sharing.vue';\nimport Consent from './pages/Consent.vue';\nimport PasswordRecovery from './pages/PasswordRecovery.vue';\nimport PasswordUpdate from './pages/PasswordUpdate.vue';\nimport PasswordUpdateConfirm from './pages/PasswordUpdateConfirm.vue';\nimport UserDashboard from './pages/UserDashboard.vue';\nimport UserDelete from './pages/UserDelete.vue';\nimport PrivacyPolicy from './pages/privacy/PrivacyPolicy.vue';\nimport VueI18n from 'vue-i18n';\n\nconst basePath = '/';\n\nconst routes = [\n {\n path: basePath,\n redirect: 'access/signin'\n },\n {\n path: basePath + 'access/register',\n name: 'access-register',\n component: Register,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessRegisterHtmlTitle')\n },\n },\n {\n path: basePath + 'access/email-confirm',\n name: 'access-email-confirm',\n component: RegisterConfirm,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessRegisterConfirmHtmlTitle')\n }\n },\n {\n path: basePath + 'access/signin',\n name: 'access-signin',\n component: SignIn,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessSignInHtmlTitle')\n },\n beforeEnter: async (to: Route, from: Route, next: Function) => {\n const store = getStore();\n\n const authorized = await store.dispatch('authenticationCheck');\n\n if (authorized) {\n next({ name: 'user-dashboard' });\n }\n else {\n next();\n }\n },\n },\n {\n path: basePath + 'access/consent',\n name: 'access-consent',\n component: Consent,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessConsentHtmlTitle')\n }\n },\n {\n path: basePath + 'access/password-recovery',\n name: 'access-password-recovery',\n component: PasswordRecovery,\n meta: {\n treeLevel: 1,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessPasswordRecoveryHtmlTitle')\n }\n },\n {\n path: basePath + 'access/password-update',\n name: 'access-password-update',\n component: PasswordUpdate,\n meta: {\n treeLevel: 1,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessPasswordUpdateHtmlTitle')\n }\n },\n {\n path: basePath + 'access/password-update/confirm',\n name: 'access-password-update-confirm',\n component: PasswordUpdateConfirm,\n meta: {\n treeLevel: 2,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessPasswordUpdateHtmlTitle')\n }\n },\n {\n path: basePath + 'privacy-policy',\n name: 'privacy-policy',\n component: PrivacyPolicy,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessPrivacyPolicyHtmlTitle')\n }\n },\n {\n path: basePath + 'user/dashboard',\n name: 'user-dashboard',\n component: UserDashboard,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessUserDashboardHtmlTitle'),\n authorize: true,\n },\n beforeEnter: async (to: Route, from: Route, next: Function) => {\n const store = getStore();\n if (await store.dispatch('getUserPlants', { token: to.query.token })) {\n next();\n }\n else {\n next()\n }\n },\n },\n {\n path: basePath + 'user/dashboard/delete',\n name: 'user-delete',\n component: UserDelete,\n meta: {\n treeLevel: 1,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessUserDeleteHtmlTitle'),\n authorize: true,\n },\n beforeEnter: async (to: Route, from: Route, next: Function) => {\n const store = getStore();\n\n if (!store.state.userPlants) {\n if (await store.dispatch('getUserPlants')) {\n next();\n }\n }\n else {\n next();\n }\n },\n },\n {\n path: basePath + 'sharing/',\n name: 'sharing',\n component: Sharing,\n meta: {\n treeLevel: 0,\n htmlTitle: (i18n: VueI18n) => i18n.t('accessSharingHtmlTitle')\n },\n\n beforeEnter: async (to: Route, from: Route, next: Function) => {\n const store = getStore();\n const { route } = useRouter();\n\n store.commit('setClientApp', route.value.query.client ?? 'com.findernet.You');\n\n await store.dispatch('verifyTokenInfo', { token: route.value.query.c })\n next();\n },\n },\n]\n\nlet router: VueRouter, route: Ref;\n\nexport function init() {\n let store = getStore();\n\n if (router == null) {\n router = new VueRouter({\n mode: 'history',\n scrollBehavior(to, from, savedPosition) {\n if (savedPosition) {\n return savedPosition;\n }\n else {\n return { x: 0, y: 0 };\n }\n },\n routes\n });\n\n router.beforeEach(async (to: Route, from: Route, next: Function) => {\n const i18n = initI18n();\n document.title = to.meta.htmlTitle ? `Finder Accounts - ${to.meta.htmlTitle(i18n)}` : 'Finder Accounts';\n\n route.value = to;\n\n const authorize = to.matched.filter(x => !!x.meta.authorize).map(x => x.meta.authorize);\n\n if (authorize.length > 0) {\n let authorized = false;\n\n if (!authorized) {\n authorized = await store.dispatch('authenticationCheck', null);\n }\n\n if (!authorized) {\n next({ name: 'access-signin' });\n return;\n }\n\n if (authorized && to.matched.filter(x => !!x.meta.access).length > 0) {\n next();\n return;\n }\n }\n\n next();\n });\n\n route = ref(null);\n }\n\n return router;\n}\n\nexport function useRouter() {\n return { router, route }\n}\n\n","import Vue, { FunctionalComponentOptions, CreateElement, RenderContext } from 'vue';\n\nconst componentName = 'section-subtitle';\n\nexport default {\n name: componentName,\n\n functional: true,\n\n props: {\n icon: {\n type: String,\n default: undefined\n }\n },\n\n render: function(h: CreateElement, ctx: RenderContext) {\n return h(\n 'div', { class: ['section-subtitle__wrapper', ctx.data.staticClass],\n attrs: { 'data-message': ctx.data.attrs && ctx.data.attrs['data-message'] } }, [\n ctx.props.icon && h('i', { class: 'section-subtitle__icon' }, [\n h(ctx.props.icon, { props: {\n fill: 'var(--color-icon-02)',\n secondaryfill: 'var(--color-interactive-04)'\n }})\n ]),\n h('h4', { class: 'section-subtitle' }, [\n ctx.slots().default\n ])\n ]\n )\n }\n}","import Vue, { FunctionalComponentOptions, CreateElement, RenderContext } from 'vue';\n\nconst componentName = 'section-summary';\n\nexport default {\n name: componentName,\n\n functional: true,\n\n render: function(h: CreateElement, ctx: RenderContext) {\n return h(\n 'p', { class: ['section-summary wok--body-long-02', ctx.data.staticClass] }, [\n ctx.slots().default\n ]\n )\n }\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[(!_vm.state.accountDeleteSuccess)?[_c('div',{staticClass:\"wok--p-spacing-03 wok--space-y-spacing-07 md:wok--p-0\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteTitle'))+\" \")]),_c('div',{staticClass:\"wok--flex wok--items-center wok--p-spacing-06 wok--bg-ui-01 wok--rounded-2xl\"},[_c('div',{staticClass:\"wok--flex-1 wok--overflow-hidden\"},[_c('h6',{staticClass:\"wok--font-normal wok--text-gray-600\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDashboardUserLabel'))+\" \")]),_c('h3',{staticClass:\"wok--break-words\"},[_vm._v(\" \"+_vm._s(_vm.user.email)+\" \")])])]),_c('p',{staticClass:\"md:wok--text-base md:wok--leading-5\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteDescription'))+\" \")]),_c('p',{staticClass:\"md:wok--text-base md:wok--leading-5\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteInsertPassword'))+\" \")]),_c('wok-form',[_c('wok-form-row',[_c('wok-input-password',{attrs:{\"name\":\"password\",\"span\":\"12\",\"label\":_vm.$t('accessSignInInputFormPasswordLabel'),\"placeholder\":_vm.$t('accessSignInInputFormPasswordPlaceholder'),\"data-input\":\"password\"},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}})],1)],1),_c('wok-notification',{attrs:{\"show\":_vm.state.deleteAccountErrorGeneric,\"kind\":\"danger\",\"canHide\":true},on:{\"hide-request\":function($event){_vm.state.deleteAccountErrorGeneric = false}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteNotificationErrorGenericTitle'))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteNotificationErrorGenericSubTitle'))+\" \")])],2),_c('wok-notification',{attrs:{\"show\":_vm.state.deleteAccountErrorPassword,\"kind\":\"danger\",\"canHide\":true},on:{\"hide-request\":function($event){_vm.state.deleteAccountErrorPassword = false}}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteNotificationErrorPasswordTitle'))+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteNotificationErrorPasswordSubTitle'))+\" \")])],2),_c('div',{staticClass:\"\\n wok--flex wok--flex-col wok--items-center wok--pt-spacing-06\\n wok--border-t wok--border-gray-400\\n md:wok--flex-row md:wok--justify-end md:wok--space-x-spacing-06\\n \"},[_c('wok-button',{staticClass:\"\\n wok--mt-spacing-06 wok--order-last\\n md:wok--mt-0 md:wok--order-none\\n \",attrs:{\"kind\":\"ghost\"},on:{\"click\":_vm.onCancel}},[_vm._v(\" \"+_vm._s(_vm.$t('globalButtonsCancelAction'))+\" \")]),_c('wok-button',{staticClass:\"wok--w-full md:wok--w-auto\",attrs:{\"icon\":\"wok-icon-trash-16\",\"kind\":\"danger\",\"isLoading\":_vm.state.deleteAccountProgress},on:{\"click\":_vm.onDeleteAccount}},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteAction'))+\" \")])],1)],1)]:[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteSuccessTitle'))+\" \")])],1),_c('template',{slot:\"content\"},[_c('section-subtitle',{attrs:{\"icon\":\"wok-icon-privacy-48\"}},[_vm._v(\" \"+_vm._s(_vm.$t('accessUserDeleteSuccessDescription'))+\" \")])],1)]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue, { FunctionalComponentOptions, CreateElement, RenderContext } from 'vue';\n\nconst componentName = 'wok-notification';\n\nexport default {\n name: componentName,\n \n functional: true,\n\n props: {\n icon: {\n type: String,\n default: undefined\n },\n kind: {\n type: String,\n default: 'info',\n validator: (v: string) => v == '' || /(info|danger|success|warning)/.test(v)\n },\n size: {\n type: String,\n default: 'default',\n validator: (v: string) => v == '' || /(default|compact)/.test(v)\n },\n show: {\n type: Boolean,\n default: false\n },\n canHide: {\n type: Boolean,\n default: false\n }\n },\n\n render: function(h: CreateElement, ctx: RenderContext) {\n const onHideClick = ctx.listeners['hide-request'] || [];\n \n return h(\n 'transition', { props: { name: 'fade' }}, [\n ctx.props.show && h('div', {\n class: [\n 'wok--notification__wrapper',\n `wok--notification--${ctx.props.kind}`,\n `wok--notification--${ctx.props.size}`, \n ctx.data.staticClass\n ],\n attrs: { 'data-message': ctx.data.attrs && ctx.data.attrs['data-message'] }\n }, [\n appropriateIcon(ctx) && h('i', { class: 'wok--notification__icon' }, [\n h(appropriateIcon(ctx))\n ]),\n h('div', { class: 'wok--notification__text' }, [\n ctx.slots().title && h('p', { class: 'wok--notification__title wok--heading-06' }, [\n ctx.slots().title\n ]),\n ctx.slots().subtitle && h('p', { class: 'wok--notification__subtitle wok--body-short-01' }, [\n ctx.slots().subtitle\n ])\n ]),\n ctx.props.canHide && h('button', { \n class: 'wok--notification__hide',\n attrs: { type: 'button' },\n on: { click: onHideClick }\n }, [\n h('i', { class: 'wok--notification__hide-icon' }, [\n h('wok-icon-close-sm-16')\n ])\n ])\n ])\n ]\n )\n }\n}\n\nfunction appropriateIcon(ctx: RenderContext) {\n if (ctx.props.icon) {\n return ctx.props.icon;\n }\n if (ctx.props.kind == 'success') {\n return 'wok-icon-check-c-16';\n }\n if (ctx.props.kind == 'warning') {\n return 'wok-icon-warning-c-16';\n }\n if (ctx.props.kind == 'danger') {\n return 'wok-icon-warning-c-16';\n }\n return undefined;\n}","import Vue from 'vue';\nimport VueI18n from 'vue-i18n';\n\nVue.use(VueI18n);\n\nimport { useClientChecker } from './client-checker';\n\n// EN\nimport enSectionGlobal from '../../i18n/en/global.json';\nimport enSectionSharing from '../../i18n/en/sharing.json';\nimport enSectionAccess from '../../i18n/en/access.json';\nimport enSectionPrivacyPolicy from '../../i18n/en/privacyPolicy.json';\n// IT\nimport itSectionGlobal from '../../i18n/it/global.json';\nimport itSectionSharing from '../../i18n/it/sharing.json';\nimport itSectionAccess from '../../i18n/it/access.json';\nimport itSectionPrivacyPolicy from '../../i18n/it/privacyPolicy.json';\n// DE\nimport deSectionGlobal from '../../i18n/de/global.json';\nimport deSectionSharing from '../../i18n/de/sharing.json';\nimport deSectionAccess from '../../i18n/de/access.json';\nimport deSectionPrivacyPolicy from '../../i18n/de/privacyPolicy.json';\n// ES\nimport esSectionGlobal from '../../i18n/es/global.json';\nimport esSectionSharing from '../../i18n/es/sharing.json';\nimport esSectionAccess from '../../i18n/es/access.json';\nimport esSectionPrivacyPolicy from '../../i18n/es/privacyPolicy.json';\n// FR\nimport frSectionGlobal from '../../i18n/fr/global.json';\nimport frSectionSharing from '../../i18n/fr/sharing.json';\nimport frSectionAccess from '../../i18n/fr/access.json';\nimport frSectionPrivacyPolicy from '../../i18n/fr/privacyPolicy.json';\n// HU\nimport huSectionGlobal from '../../i18n/hu/global.json';\nimport huSectionSharing from '../../i18n/hu/sharing.json';\nimport huSectionAccess from '../../i18n/hu/access.json';\nimport huSectionPrivacyPolicy from '../../i18n/hu/privacyPolicy.json';\n// PL\nimport plSectionGlobal from '../../i18n/pl/global.json';\nimport plSectionSharing from '../../i18n/pl/sharing.json';\nimport plSectionAccess from '../../i18n/pl/access.json';\nimport plSectionPrivacyPolicy from '../../i18n/pl/privacyPolicy.json';\n// PT\nimport ptSectionGlobal from '../../i18n/pt/global.json';\nimport ptSectionSharing from '../../i18n/pt/sharing.json';\nimport ptSectionAccess from '../../i18n/pt/access.json';\nimport ptSectionPrivacyPolicy from '../../i18n/pt/privacyPolicy.json';\n// RO\nimport roSectionGlobal from '../../i18n/ro/global.json';\nimport roSectionSharing from '../../i18n/ro/sharing.json';\nimport roSectionAccess from '../../i18n/ro/access.json';\nimport roSectionPrivacyPolicy from '../../i18n/ro/privacyPolicy.json';\n// NL\nimport nlSectionGlobal from '../../i18n/nl/global.json';\nimport nlSectionSharing from '../../i18n/nl/sharing.json';\nimport nlSectionAccess from '../../i18n/nl/access.json';\nimport nlSectionPrivacyPolicy from '../../i18n/nl/privacyPolicy.json';\n// RU\nimport ruSectionGlobal from '../../i18n/ru/global.json';\nimport ruSectionSharing from '../../i18n/ru/sharing.json';\nimport ruSectionAccess from '../../i18n/ru/access.json';\nimport ruSectionPrivacyPolicy from '../../i18n/ru/privacyPolicy.json';\n// CS\nimport csSectionGlobal from '../../i18n/cs/global.json';\nimport csSectionSharing from '../../i18n/cs/sharing.json';\nimport csSectionAccess from '../../i18n/cs/access.json';\nimport csSectionPrivacyPolicy from '../../i18n/cs/privacyPolicy.json';\n// SL\nimport slSectionGlobal from '../../i18n/sl/global.json';\nimport slSectionSharing from '../../i18n/sl/sharing.json';\nimport slSectionAccess from '../../i18n/sl/access.json';\nimport slSectionPrivacyPolicy from '../../i18n/sl/privacyPolicy.json';\n\nimport en_US from 'date-fns/locale/en-US';\nimport de from 'date-fns/locale/de';\nimport es from 'date-fns/locale/es';\nimport fr from 'date-fns/locale/fr';\nimport hu from 'date-fns/locale/hu';\nimport it from 'date-fns/locale/it';\nimport nl from 'date-fns/locale/nl';\nimport pl from 'date-fns/locale/pl';\nimport pt from 'date-fns/locale/pt';\nimport ro from 'date-fns/locale/ro';\nimport ru from 'date-fns/locale/ru';\nimport cs from 'date-fns/locale/cs';\nimport sl from 'date-fns/locale/sl';\n\nexport function loadTranslations() {\n let translations = {\n en: {},\n it: {},\n de: {},\n es: {},\n fr: {},\n hu: {},\n pl: {},\n pt: {},\n ro: {},\n nl: {},\n ru: {},\n cs: {},\n sl: {},\n };\n\n loadTranslation(translations.en, enSectionGlobal);\n loadTranslation(translations.en, enSectionSharing);\n loadTranslation(translations.en, enSectionAccess);\n loadTranslation(translations.en, enSectionPrivacyPolicy);\n\n loadTranslation(translations.it, itSectionGlobal);\n loadTranslation(translations.it, itSectionSharing);\n loadTranslation(translations.it, itSectionAccess);\n loadTranslation(translations.it, itSectionPrivacyPolicy);\n\n loadTranslation(translations.de, deSectionGlobal);\n loadTranslation(translations.de, deSectionSharing);\n loadTranslation(translations.de, deSectionAccess);\n loadTranslation(translations.de, deSectionPrivacyPolicy);\n\n loadTranslation(translations.es, esSectionGlobal);\n loadTranslation(translations.es, esSectionSharing);\n loadTranslation(translations.es, esSectionAccess);\n loadTranslation(translations.es, esSectionPrivacyPolicy);\n\n loadTranslation(translations.fr, frSectionGlobal);\n loadTranslation(translations.fr, frSectionSharing);\n loadTranslation(translations.fr, frSectionAccess);\n loadTranslation(translations.fr, frSectionPrivacyPolicy);\n\n loadTranslation(translations.hu, huSectionGlobal);\n loadTranslation(translations.hu, huSectionSharing);\n loadTranslation(translations.hu, huSectionAccess);\n loadTranslation(translations.hu, huSectionPrivacyPolicy);\n\n loadTranslation(translations.pl, plSectionGlobal);\n loadTranslation(translations.pl, plSectionSharing);\n loadTranslation(translations.pl, plSectionAccess);\n loadTranslation(translations.pl, plSectionPrivacyPolicy);\n\n loadTranslation(translations.pt, ptSectionGlobal);\n loadTranslation(translations.pt, ptSectionSharing);\n loadTranslation(translations.pt, ptSectionAccess);\n loadTranslation(translations.pt, ptSectionPrivacyPolicy);\n\n loadTranslation(translations.ro, roSectionGlobal);\n loadTranslation(translations.ro, roSectionSharing);\n loadTranslation(translations.ro, roSectionAccess);\n loadTranslation(translations.ro, roSectionPrivacyPolicy);\n\n loadTranslation(translations.nl, nlSectionGlobal);\n loadTranslation(translations.nl, nlSectionSharing);\n loadTranslation(translations.nl, nlSectionAccess);\n loadTranslation(translations.nl, nlSectionPrivacyPolicy);\n\n loadTranslation(translations.ru, ruSectionGlobal);\n loadTranslation(translations.ru, ruSectionSharing);\n loadTranslation(translations.ru, ruSectionAccess);\n loadTranslation(translations.ru, ruSectionPrivacyPolicy);\n\n loadTranslation(translations.cs, csSectionGlobal);\n loadTranslation(translations.cs, csSectionSharing);\n loadTranslation(translations.cs, csSectionAccess);\n loadTranslation(translations.cs, csSectionPrivacyPolicy);\n\n loadTranslation(translations.sl, slSectionGlobal);\n loadTranslation(translations.sl, slSectionSharing);\n loadTranslation(translations.sl, slSectionAccess);\n loadTranslation(translations.sl, slSectionPrivacyPolicy);\n\n return translations;\n}\n\nfunction loadTranslation(storage: any, section: any) {\n let prefix = section.section;\n\n for (let screen of section.screens) {\n for (let key in screen.keys) {\n let name = `${prefix}${key[0].toLocaleUpperCase()}${key.substring(1)}`;\n storage[name] = typeof screen.keys[key] == 'string' ? screen.keys[key] : screen.keys[key] && screen.keys[key].text;\n }\n }\n}\n\nexport function getDateFnsLocale(locale: string, fallbackLocale: string) {\n function get(l: string) {\n switch (locale.substring(0, 2)) {\n case 'en':\n case 'en-US':\n return en_US;\n\n case 'de':\n return de;\n\n case 'es':\n return es;\n\n case 'fr':\n return fr;\n\n case 'hu':\n return hu;\n\n case 'it':\n return it;\n\n case 'nl':\n return nl;\n\n case 'pl':\n return pl;\n\n case 'pt':\n return pt;\n\n case 'ro':\n return ro;\n\n case 'ru':\n return ru;\n\n case 'cs':\n return cs;\n\n case 'sl':\n return sl;\n\n default:\n return null;\n }\n }\n\n return get(locale)\n || get(locale.substring(0, 2))\n || (fallbackLocale && get(fallbackLocale))\n || (fallbackLocale && get(fallbackLocale.substring(0, 2)));\n}\n\nexport function getPrivacyPolicyLocalizedUrl(locale: string) {\n var client = useClientChecker();\n\n if (client.clientIsYou.value) {\n return getYouPrivacyPolicyLocalizedUrl(locale);\n }\n\n return getGenericPrivacyPolicyLocalizedUrl(locale);\n}\n\nfunction getYouPrivacyPolicyLocalizedUrl(locale: string) {\n switch (locale.substring(0, 2)) {\n case 'de':\n return 'https://www.findernet.com/de/deutschland/datenschutzerklarung-von-finder-apps/';\n\n case 'es':\n return 'https://www.findernet.com/es/espana/politica-de-privacidad-delle-app-finder/';\n\n case 'fr':\n return 'https://www.findernet.com/fr/france/politique-de-confidentialite-de-lapplication-finder/';\n\n case 'hu':\n return 'https://www.findernet.com/hu/magyarorszag/finder-apps-privacy-policy/';\n\n case 'it':\n return 'https://www.findernet.com/it/italia/privacy-policy-finder-you/';\n\n case 'nl':\n return 'https://www.findernet.com/nl/nederland/finder-apps-privacy-policy/';\n\n case 'pl':\n return 'https://www.findernet.com/pl/polska/finder-apps-privacy-policy/';\n\n case 'pt':\n return 'https://www.findernet.com/pt/brasil/politica-de-privacidade-app/';\n\n case 'ro':\n return 'https://www.findernet.com/ro/romania/finder-apps-privacy-policy/';\n\n case 'cs':\n return 'https://www.findernet.com/cs/ceska-republika/finder-apps-privacy-policy/';\n\n case 'sl':\n return 'https://www.findernet.com/sl/slovenija/finder-apps-privacy-policy/';\n\n case 'ru':\n case 'en':\n default:\n return 'https://www.findernet.com/en/worldwide/privacy-policy-finder-you/';\n }\n}\n\nfunction getGenericPrivacyPolicyLocalizedUrl(locale: string) {\n switch (locale.substring(0, 2)) {\n case 'de':\n return 'https://www.findernet.com/de/deutschland/datenschutzerklarung-von-finder-apps/';\n\n case 'es':\n return 'https://www.findernet.com/es/espana/politica-de-privacidad-delle-app-finder/';\n\n case 'fr':\n return 'https://www.findernet.com/fr/france/politique-de-confidentialite-de-lapplication-finder/';\n\n case 'hu':\n return 'https://www.findernet.com/hu/magyarorszag/finder-apps-privacy-policy/';\n\n case 'it':\n return 'https://www.findernet.com/it/italia/privacy-policy-app/';\n\n case 'nl':\n return 'https://www.findernet.com/nl/nederland/finder-apps-privacy-policy/';\n\n case 'pl':\n return 'https://www.findernet.com/pl/polska/finder-apps-privacy-policy/';\n\n case 'pt':\n return 'https://www.findernet.com/pt/brasil/politica-de-privacidade-app/';\n\n case 'ro':\n return 'https://www.findernet.com/ro/romania/finder-apps-privacy-policy/';\n\n case 'cs':\n return 'https://www.findernet.com/cs/ceska-republika/finder-apps-privacy-policy/';\n\n case 'sl':\n return 'https://www.findernet.com/sl/slovenija/finder-apps-privacy-policy/';\n\n case 'ru':\n case 'en':\n default:\n return 'https://www.findernet.com/en/worldwide/finder-apps-privacy-policy/';\n }\n}\n\nlet i18n: VueI18n;\n\nexport function init() {\n\n if (i18n == null) {\n let qs = window.location.search.split('&').map(x => { let p = x.split('='); return [p[0].replace('?', ''), p[1]]; });\n let language = qs.find(x => x[0] == 'language') && qs.find(x => x[0] == 'language')[1];\n if (!language) {\n let returnUrl = qs.find(x => x[0] == 'returnUrl') && qs.find(x => x[0] == 'returnUrl')[1];\n if (returnUrl) {\n let qsReturnUrl = returnUrl.split('%26').map(x => { let p = x.split('%3D'); return [p[0].replace('%3F', ''), p[1]]; });\n language = qsReturnUrl.find(x => x[0] == 'language') && qsReturnUrl.find(x => x[0] == 'language')[1];\n }\n }\n\n i18n = new VueI18n({\n locale: language || navigator?.language || 'en',\n fallbackLocale: 'en',\n messages: loadTranslations()\n });\n }\n\n return i18n;\n}\n\nexport function useI18n() {\n return i18n;\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('split-page',[_c('template',{slot:\"beforecontent\"},[_c('section-title',[_vm._v(_vm._s(_vm.$t('accessConsentTitle')))])],1),_c('template',{slot:\"content\"},[_c('wok-notification',{attrs:{\"show\":true}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.notificationTitle)+\" \")]),_c('template',{slot:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.notificationSubTitle)+\" \")])],2),(_vm.showConsentScopesCheckboxList)?_c('wok-form',{attrs:{\"kind\":\"light\"}},[_c('wok-form-row',[_c('wok-checkbox-group',{attrs:{\"layout\":\"vertical\"}},[_c('template',{slot:\"legend\"},[_vm._v(\" \"+_vm._s(_vm.$t('accessConsentFormLegend'))+\" \")]),_c('template',{slot:\"content\"},[_vm._l((_vm.state.consentInfo && _vm.state.consentInfo.identityScopes || []),function(idScope,idScopeIndex){return _c('wok-input-checkbox',{key:(\"identityScopes_\" + idScopeIndex),attrs:{\"name\":idScope.name,\"data-input\":(\"input-consent-\" + (idScope.name))},model:{value:(idScope.checked),callback:function ($$v) {_vm.$set(idScope, \"checked\", $$v)},expression:\"idScope.checked\"}},[_c('template',{slot:\"label\"},[_vm._v(_vm._s(_vm.consentScopeDisplayText(idScope)))])],2)}),_vm._l((_vm.state.consentInfo && _vm.state.consentInfo.resourceScopes || []),function(resScope,resScopeIndex){return _c('wok-input-checkbox',{key:(\"resourceScopes_\" + resScopeIndex),attrs:{\"name\":resScope.name,\"data-input\":(\"input-consent-\" + (resScope.name))},model:{value:(resScope.checked),callback:function ($$v) {_vm.$set(resScope, \"checked\", $$v)},expression:\"resScope.checked\"}},[_c('template',{slot:\"label\"},[_vm._v(_vm._s(_vm.consentScopeDisplayText(resScope)))])],2)})],2)],2)],1),_c('wok-form-row',[_c('wok-checkbox-group',{attrs:{\"layout\":\"vertical\"}},[_c('template',{slot:\"content\"},[_c('wok-input-checkbox',{attrs:{\"name\":\"privacy\",\"data-input\":\"privacy\"},model:{value:(_vm.state.form.privacy),callback:function ($$v) {_vm.$set(_vm.state.form, \"privacy\", $$v)},expression:\"state.form.privacy\"}},[_c('template',{slot:\"label\"},[_c('i18n',{attrs:{\"path\":\"accessConsentPrivacyPrompt\",\"tag\":false},scopedSlots:_vm._u([{key:\"link\",fn:function(){return [_c('a',{attrs:{\"href\":_vm.privacyPolicyHref,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.$t(\"accessConsentPrivacyPromptLink\")))])]},proxy:true}],null,false,2546540135)})],1)],2)],1)],2)],1)],1):_vm._e(),_c('buttons-collection',{attrs:{\"kind\":\"double\"}},[_c('template',{slot:\"actions\"},[_c('wok-button',{attrs:{\"data-action\":\"deny\",\"icon\":\"wok-icon-ban-16\",\"kind\":\"tertiary\",\"isLoading\":_vm.state.consentProgress},on:{\"click\":_vm.onDeny}},[_vm._v(_vm._s(_vm.$t('accessConsentFormDenyAction')))]),_c('wok-button',{attrs:{\"data-action\":\"allow\",\"icon\":\"wok-icon-check-c-16\",\"isLoading\":_vm.state.consentProgress,\"disabled\":_vm.allowDisabled},on:{\"click\":_vm.onAllow}},[_vm._v(_vm._s(_vm.$t('accessConsentFormAllowAction')))])],1)],2)],1),_c('template',{slot:\"aftercontent\"},[_c('wok-button',{attrs:{\"to\":_vm.signinRoute,\"kind\":\"ghost\"}},[_c('i18n',{attrs:{\"path\":\"accessConsentBackToSigninAction\",\"tag\":false},scopedSlots:_vm._u([{key:\"notYou\",fn:function(){return [_c('span',{staticClass:\"wok--text-text-01\"},[_vm._v(_vm._s(_vm.$t('accessConsentBackToSigninNotYou')))])]},proxy:true},{key:\"signIn\",fn:function(){return [_c('strong',{staticClass:\"wok--text-interactive-04\"},[_vm._v(_vm._s(_vm.$t('accessConsentBackToSigninSignin')))])]},proxy:true}])})],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { computed } from '@vue/composition-api';\n\nexport function useClientChecker() {\n return {\n clientIsToolbox: computed(() => window.location.href.indexOf('com.findernet.Toolbox') >= 0),\n\n clientIsBabel: computed(() => window.location.href.indexOf('com.findernet.Babel') >= 0),\n\n clientIsYesly: computed(() => window.location.href.indexOf('com.findernet.Yesly') >= 0),\n clientIsGoogleYesly: computed(() => window.location.href.indexOf('com.google.actions.yesly') >= 0),\n clientIsAlexaYesly: computed(() => window.location.href.indexOf('com.amazon.skills.yesly') >= 0),\n\n clientIsBliss: computed(() => window.location.href.indexOf('com.findernet.bliss') >= 0),\n clientIsBliss2: computed(() => window.location.href.indexOf('com.findernet.Bliss2') >= 0),\n clientIsGoogleBliss: computed(() => window.location.href.indexOf('com.google.actions.bliss') >= 0),\n clientIsAlexaBliss: computed(() => window.location.href.indexOf('com.amazon.skills.bliss') >= 0),\n\n clientIsAdmin: computed(() => window.location.href.indexOf('com.findernet.Admin') >= 0),\n\n clientIsYou: computed(() => window.location.href.indexOf('com.findernet.You') >= 0),\n clientIsIftttYou: computed(() => window.location.href.indexOf('com.ifttt.skills.you') >= 0),\n clientIsGoogleYou: computed(() => window.location.href.indexOf('com.google.actions.you') >= 0),\n clientIsAlexaYou: computed(() => window.location.href.indexOf('com.amazon.skills.you') >= 0),\n }\n}\n","import Vue, { FunctionalComponentOptions, CreateElement, RenderContext } from 'vue';\n\nconst componentName = 'label-divider';\n\nexport default {\n name: componentName,\n\n functional: true,\n\n render: function(h: CreateElement, ctx: RenderContext) {\n return h(\n 'div', { class: ['label-divider__wrapper', ctx.data.staticClass] }, [\n h('span', { class: 'label-divider__label wok--body-short-02' }, [\n ctx.slots().default\n ]),\n h('hr', { class: 'label-divider__divider' })\n ]\n )\n }\n}","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar composition_api_1 = require(\"@vue/composition-api\");\nvar store_1 = require(\"../store\");\nvar i18n_1 = require(\"../i18n\");\nvar client_checker_1 = require(\"../client-checker\");\nvar router_1 = require(\"../router\");\nvar componentName = 'Consent';\nexports.default = composition_api_1.defineComponent({\n name: componentName,\n setup: function (context) {\n var _this = this;\n var store = store_1.getStore(), _a = router_1.useRouter(), router = _a.router, route = _a.route, i18n = i18n_1.useI18n();\n var client = client_checker_1.useClientChecker();\n var state = composition_api_1.reactive({\n consentInfo: null,\n consentProgress: false,\n form: {\n privacy: false,\n },\n });\n var showConsentScopesCheckboxList = composition_api_1.computed(function () {\n return !(client.clientIsGoogleBliss.value ||\n client.clientIsGoogleYesly.value ||\n client.clientIsAlexaBliss.value ||\n client.clientIsAlexaYesly.value ||\n client.clientIsAlexaYou.value ||\n client.clientIsGoogleYou.value ||\n client.clientIsIftttYou.value);\n });\n var notificationTitle = composition_api_1.ref('');\n var notificationSubTitle = composition_api_1.ref('');\n if (client.clientIsGoogleYesly.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationGoogleTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationGoogleYeslySubTitle');\n }\n else if (client.clientIsAlexaYesly.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationAlexaTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationAlexaYeslySubTitle');\n }\n else if (client.clientIsGoogleBliss.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationGoogleTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationGoogleBlissSubTitle');\n }\n else if (client.clientIsAlexaBliss.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationAlexaTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationAlexaBlissSubTitle');\n }\n else if (client.clientIsAlexaYou.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationAlexaTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationAlexaYouSubTitle');\n }\n else if (client.clientIsGoogleYou.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationGoogleTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationGoogleYouSubTitle');\n }\n else if (client.clientIsIftttYou.value) {\n notificationTitle.value = i18n.t('accessConsentNotificationIftttTitle');\n notificationSubTitle.value = i18n.t('accessConsentNotificationIftttYouSubTitle');\n }\n else {\n notificationTitle.value = i18n.t('accessConsentNotificationGenericTitle');\n if (!showConsentScopesCheckboxList.value) {\n notificationSubTitle.value = i18n.t('accessConsentNotificationGenericSubTitle');\n }\n }\n var clientId = route.value.query.client_id;\n var returnUrl = route.value.query.returnUrl;\n if (returnUrl) {\n store.dispatch('consentInfo', { returnUrl: returnUrl })\n .then(function (response) {\n if (response.result == 'OK') {\n if (response.data.identityScopes) {\n response.data.identityScopes.forEach(function (e) { return e['checked'] = false; });\n }\n if (response.data.resourceScopes) {\n response.data.resourceScopes.forEach(function (e) { return e['checked'] = false; });\n }\n state.consentInfo = response.data;\n }\n });\n }\n var onAllow = function () { return __awaiter(_this, void 0, void 0, function () {\n var scopesConsented, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n scopesConsented = [];\n if (showConsentScopesCheckboxList.value) {\n if (state.consentInfo.identityScopes) {\n scopesConsented = scopesConsented.concat(state.consentInfo.identityScopes.filter(function (s) { return s.checked; }).map(function (s) { return s.name; }));\n }\n if (state.consentInfo.resourceScopes) {\n scopesConsented = scopesConsented.concat(state.consentInfo.resourceScopes.filter(function (s) { return s.checked; }).map(function (s) { return s.name; }));\n }\n }\n else {\n scopesConsented = ['openid', 'api.v1.2.google-actions', 'api.v1.2.alexa-actions', 'offline_access', 'api.v1.2.ifttt-actions'];\n }\n if (!returnUrl) return [3 /*break*/, 2];\n state.consentProgress = true;\n return [4 /*yield*/, store.dispatch('consent', {\n scopesConsented: scopesConsented,\n returnUrl: returnUrl\n })];\n case 1:\n response = _a.sent();\n state.consentProgress = false;\n if (response.result == 'OK') {\n window.location.href = response.data.next;\n return [2 /*return*/];\n }\n _a.label = 2;\n case 2: return [2 /*return*/];\n }\n });\n }); };\n var onDeny = function () { return __awaiter(_this, void 0, void 0, function () {\n var response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!returnUrl) return [3 /*break*/, 2];\n state.consentProgress = true;\n return [4 /*yield*/, store.dispatch('consent', {\n scopesConsented: [], returnUrl: returnUrl\n })];\n case 1:\n response = _a.sent();\n state.consentProgress = false;\n if (response.result == 'OK') {\n window.location.href = response.data.next;\n return [2 /*return*/];\n }\n _a.label = 2;\n case 2: return [2 /*return*/];\n }\n });\n }); };\n var signinRoute = composition_api_1.computed(function () {\n return { name: 'access-signin', query: route.value.query };\n });\n var consentScopeDisplayText = function (consentScope) {\n if (!consentScope.name) {\n return consentScope.displayName;\n }\n var key = \"accessConsent\" + consentScope.name[0].toLocaleUpperCase() + consentScope.name.substring(1);\n return i18n.te(key) ? i18n.t(key) : consentScope.displayName;\n };\n var allowDisabled = composition_api_1.computed(function () {\n if (showConsentScopesCheckboxList.value) {\n if (state.consentInfo && state.consentInfo.identityScopes &&\n state.consentInfo.identityScopes.some(function (s) { return s.required && !s.checked; })) {\n return true;\n }\n if (state.consentInfo && state.consentInfo.resourceScopes &&\n state.consentInfo.resourceScopes.some(function (s) { return s.required && !s.checked; })) {\n return true;\n }\n }\n return false;\n });\n var privacyPolicyHref = composition_api_1.computed(function () { return i18n_1.getPrivacyPolicyLocalizedUrl(i18n.locale); });\n return {\n state: state,\n onAllow: onAllow,\n onDeny: onDeny,\n notificationTitle: notificationTitle,\n notificationSubTitle: notificationSubTitle,\n signinRoute: signinRoute,\n consentScopeDisplayText: consentScopeDisplayText,\n allowDisabled: allowDisabled,\n showConsentScopesCheckboxList: showConsentScopesCheckboxList,\n privacyPolicyHref: privacyPolicyHref,\n };\n }\n});\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar client_checker_1 = require(\"../client-checker\");\nvar componentName = 'split-page';\nexports.default = {\n name: componentName,\n functional: true,\n props: {\n textVariant: {\n type: [Boolean, String],\n default: false\n }\n },\n render: function (h, ctx) {\n var client = client_checker_1.useClientChecker();\n var textVariant = ctx.props.textVariant.toString() == 'true';\n return h('div', {\n class: [\n 'split-page__wrapper',\n { 'split-page__wrapper--text': textVariant },\n ctx.data.staticClass\n ],\n }, [\n h('main', { class: 'split-page__main-wrapper' }, [\n h('div', { class: 'split-page__main' }, [\n h('div', { class: 'split-page__content-wrapper' }, [\n ctx.slots().default,\n ctx.slots().beforecontent && h('div', { class: 'split-page__before-content' }, [\n ctx.slots().beforecontent\n ]),\n ctx.slots().content && h('div', { class: 'split-page__content' }, [\n ctx.slots().content\n ]),\n ctx.slots().aftercontent && h('div', { class: 'split-page__after-content' }, [\n ctx.slots().aftercontent\n ])\n ])\n ])\n ]),\n h('div', { class: 'split-page__identity' }, [\n h('img', { attrs: { src: appropriateIdentitySrc(client) } })\n ])\n ]);\n }\n};\nfunction appropriateIdentitySrc(client) {\n var isToolbox = client.clientIsToolbox.value;\n var isYesly = client.clientIsYesly.value || client.clientIsGoogleYesly.value || client.clientIsAlexaYesly.value;\n var isBliss = client.clientIsBliss.value || client.clientIsBliss2.value || client.clientIsGoogleBliss.value || client.clientIsAlexaBliss.value;\n if (isToolbox) {\n return '/images/logo-toolbox.svg';\n }\n else if (isYesly) {\n return '/images/logo-yesly-white.svg';\n }\n else if (isBliss) {\n return '/images/logo-bliss-white.svg';\n }\n else {\n return '/images/logo-finder-white.svg';\n }\n}\n","export function registerComponents(Vue: any, components: object, includeComponents?: string[]) {\n for (let key in components) {\n if (!includeComponents || includeComponents.includes(key)) {\n registerComponent(Vue, key, (components)[key]);\n }\n }\n}\n\nexport function registerComponent(Vue: any, key: string, component: any) {\n Vue.component(component.name || kebabize(key), component);\n}\n\nfunction kebabize(key: string) {\n let s = \"\", n = false;\n\n for (let i = 0 ; i < key.length ; i++) {\n if (key[i].toLowerCase() != key[i] || (/\\d/.test(key[i]) && !n)) {\n s += \"-\";\n s+= key[i].toLowerCase();\n }\n else {\n s += key[i];\n }\n\n n = /\\d/.test(key[i]);\n }\n\n return s.replace(/(^-+|-+$)/g, '');\n}\n","import { registerComponents } from './vue-utils';\nimport * as components from './components';\n\n// Export the components as a Vue plugin.\nexport default {\n install(Vue: any, options?: { components?: string[] }) {\n const includeComponents = options != null && Array.isArray(options.components) && options.components || undefined;\n registerComponents(Vue, components, includeComponents);\n }\n}\n","import { format } from 'date-fns';\n\nexport function currency(value: any, d = ',', t = '.', precision = 2) {\n let v = value ? value : 0;\n let s = v < 0 ? '-' : '';\n let i = parseInt(Math.abs(v.toFixed(precision)) + '', 10) + '';\n let j = i.length > 3 ? i.length % 3 : 0;\n return s + (j ? i.substr(0, j) + t : '')\n + i.substr(j).replace(/(\\d{3})(?=\\d)/g, '$1' + t)\n + (precision ? d + Math.abs(v - parseInt(s + i, 10)).toFixed(precision).slice(precision) : '');\n}\n\nexport function localizedDate(dt: Date | string | null, locale = null, nullValue = ''): string {\n\tif (!dt) { return nullValue }\n\n\tvar date: Date = (dt instanceof Date) ? dt : new Date(dt);\n\n\treturn format(date, 'P', { locale });\n}\n\nexport function extendedDate(dt: Date | string | null, locale = null, nullValue = ''): string {\n\tif (!dt) { return nullValue }\n\n\tvar date: Date = (dt instanceof Date) ? dt : new Date(dt);\n\n\treturn format(date, 'iiii d MMMM yyyy', { locale });\n}\n\nexport function day(dt: Date | string | null, locale = null, nullValue = ''): string {\n\tif (!dt) { return nullValue }\n\n\tvar date: Date = (dt instanceof Date) ? dt : new Date(dt);\n\n\treturn format(date, 'd', { locale });\n}\n\nexport function dayName(dt: Date | string | null, locale = null, nullValue = ''): string {\n\tif (!dt) { return nullValue }\n\n\tvar date: Date = (dt instanceof Date) ? dt : new Date(dt);\n\n\treturn format(date, 'iiii', { locale });\n}\n\nexport function dayNameShort(dt: Date | string | null, locale = null, nullValue = ''): string {\n\tif (!dt) { return nullValue }\n\n\tvar date: Date = (dt instanceof Date) ? dt : new Date(dt);\n\n\treturn format(date, 'iii', { locale });\n}\n\nexport function monthName(dt: Date | string | null, locale = null, nullValue = ''): string {\n\tif (!dt) { return nullValue }\n\n\tvar date: Date = (dt instanceof Date) ? dt : new Date(dt);\n\n\treturn format(date, 'MMMM', { locale });\n}\n\n\nexport const filters = {\n currency,\n localizedDate,\n extendedDate,\n day,\n\tdayName,\n\tdayNameShort,\n monthName,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[_vm.wrapperClasses, _vm.themeClasses, _vm.identityClasses],attrs:{\"id\":\"app\"}},[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, watch, ref } from '@vue/composition-api';\nimport { getStore } from './store';\nimport { useRouter } from './router';\nimport { useClientChecker } from './client-checker';\n/* import SnackbarPopup from './components/modal/SnackbarPopup.vue'; */\n\nexport default defineComponent({\n /* components: { SnackbarPopup }, */\n\n setup(context) {\n const wrapperScrollable = ref(true);\n\n const { router, route } = useRouter();\n\n const store = getStore();\n\n const client = useClientChecker();\n\n const pageTransition = ref('');\n\n /* watch(route, (newRoute, oldRoute) => { \n if (!newRoute || !oldRoute) { \n return; \n }\n\n if (newRoute.meta.treeLevel < oldRoute.meta.treeLevel) {\n pageTransition.value = 'page-slide-right';\n }\n else {\n pageTransition.value = 'page-slide-left';\n }\n }); */\n\n const onStartTransition = () => {\n wrapperScrollable.value = false;\n };\n\n const onEndTransition = () => {\n wrapperScrollable.value = true;\n }\n\n const identityClasses = computed(() => {\n if (client.clientIsToolbox.value) {\n return 'identity--toolbox';\n }\n else if (client.clientIsYesly.value) {\n return 'identity--yesly';\n }\n else if (client.clientIsGoogleYesly.value) {\n return 'identity--yesly identity--yesly-google';\n }\n else if (client.clientIsAlexaYesly.value) {\n return 'identity--yesly identity--alexa-google';\n }\n else if (client.clientIsBliss2.value) {\n return 'identity--bliss';\n }\n else if (client.clientIsBliss.value) {\n return 'identity--bliss identity--bliss-legacy';\n }\n else if (client.clientIsGoogleBliss.value) {\n return 'identity--bliss identity--bliss-google';\n }\n else if (client.clientIsAlexaBliss.value) {\n return 'identity--bliss identity--bliss-alexa';\n }\n else {\n return null;\n }\n });\n\n const themeClasses = computed(() => {\n if (store.state.theme) {\n return `theme--${store.state.theme}`;\n }\n return null;\n });\n\n const wrapperClasses = computed(() => {\n return {\n 'antialiased text-text-01': true,\n 'overflow-hidden': !wrapperScrollable.value\n };\n });\n\n return {\n pageTransition,\n wrapperClasses,\n identityClasses,\n themeClasses,\n onStartTransition,\n onEndTransition\n };\n }\n});\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=226a2165&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport VueCompositionApi from \"@vue/composition-api\";\nimport VueShowdown from 'vue-showdown';\nimport WokComponents from 'wok-components/src/index';\nimport Components from './components';\n\nVue.config.productionTip = false;\nVue.use(VueCompositionApi);\nVue.use(Vuex);\nVue.use(WokComponents);\nVue.use(Components);\nVue.use(VueShowdown, {\n options: {\n noHeaderId: true\n }\n});\n\nimport { filters } from './helpers/filters';\n\nVue.mixin({ filters });\n\nimport { init as initRouter } from './router';\nimport { init as initI18n } from './i18n';\nimport { init as initApi } from './helpers/api';\nimport { getStore } from './store';\n\nimport App from './App.vue';\n\ninitApi(options => {\n options.authenticationClientId = 'finder-accounts';\n});\n\nnew Vue({\n store: getStore(),\n router: initRouter(),\n i18n: initI18n(),\n render: h => h(App)\n}).$mount('#app')\n\n// Generate CSS\nimport '../styles/main.pcss';\n","var render = function (_h,_vm) {var _c=_vm._c;return _c('svg',{staticClass:\"wok--icon--64\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 64 64\"}},[_c('title',[_vm._v(_vm._s(_vm.props.title))]),_c('g',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"fill\":_vm.props.secondaryfill || _vm.props.fill,\"stroke\":_vm.props.secondaryfill || _vm.props.fill}},[_c('polyline',{attrs:{\"points\":\"18 34 26 42 46 22\",\"fill\":\"none\",\"stroke-miterlimit\":\"10\"}}),_c('circle',{attrs:{\"cx\":\"32\",\"cy\":\"32\",\"r\":\"29\",\"fill\":\"none\",\"stroke-miterlimit\":\"10\",\"stroke\":_vm.props.fill}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport default {\n props: {\n title: { type: String, default: 'check icon' },\n\t\tfill: { type: String, default: 'currentColor' },\n\t\tsecondaryfill: { type: String, default: '' }\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WokIconCheckC64.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WokIconCheckC64.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WokIconCheckC64.vue?vue&type=template&id=6c2713b2&functional=true&\"\nimport script from \"./WokIconCheckC64.vue?vue&type=script&lang=ts&\"\nexport * from \"./WokIconCheckC64.vue?vue&type=script&lang=ts&\"\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 true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./Consent.vue?vue&type=template&id=a53166ea&\"\nimport script from \"./Consent.vue?vue&type=script&lang=ts&\"\nexport * from \"./Consent.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Consent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Consent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserDelete.vue?vue&type=template&id=65c490e4&\"\nimport script from \"./UserDelete.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserDelete.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","import axios, { CancelTokenSource } from 'axios';\nimport { ActionContext } from 'vuex';\n\nexport interface ApiResult {\n result: string;\n resultCode?: string;\n data?: T;\n}\n\nexport function apiFailure(err?: any): ApiResult {\n if (err) {\n console.log(err);\n }\n return { result: 'ERROR' };\n}\n\nexport interface ApiOptions {\n base: string;\n checkVersionHeader: boolean;\n authenticationEndPoint: string;\n authenticationClientId: string;\n}\n\nconst options: ApiOptions = {\n base: '',\n checkVersionHeader: true,\n authenticationEndPoint: '',\n authenticationClientId: ''\n}\n\nfunction serializeParameters(params: any) {\n let search = [];\n for (let k in params) {\n let v = params[k];\n if (v && Array.isArray(v)) {\n search.push(...v.map(x => `${k}=${encodeURIComponent(x)}`));\n }\n else {\n search.push(`${k}=${encodeURIComponent(v)}`);\n }\n }\n return search.join('&');\n}\n\nconst http = axios.create({\n paramsSerializer: serializeParameters\n});\n\nexport function init(initAction: (options: ApiOptions) => void) {\n if (window) {\n let l = window.location;\n options.base = `${l.protocol}//${l.host}`\n }\n\n if (initAction) {\n initAction(options);\n }\n\n if (options.checkVersionHeader) {\n http.interceptors.response.use(function (res) {\n let c = VERSION;\n let s = res.headers[\"x-application-version\"];\n if (s && c && s != c && !s.endsWith('DEVEL')) {\n window.location.reload(true);\n console.log(`Version mismatch (s:${s} != c:${c}): reloading application ...`);\n }\n return res;\n });\n }\n}\n\nfunction buildRequest(url: string, volatile: boolean, parameters?: any): any {\n url = url[0] == '/' ? `${options.base}${url}` : url;\n\n let params: any = {};\n if (parameters) {\n for (let k in parameters) {\n if (k == '__volatile') {\n volatile = true;\n }\n else {\n params[k] = parameters[k];\n }\n }\n }\n if (volatile) {\n params['__t'] = new Date().getTime();\n }\n\n // Return ready to go Axios options.\n return { url, params };\n}\n\nconst discardableRequests: { [url: string]: CancelTokenSource } = {};\n\nfunction is401(error: any) {\n console.log(error)\n if (error.response && error.response.status == 401) {\n if (window) {\n window.location.href = \"/\";\n }\n return true;\n }\n return false;\n}\n\nasync function addAuthorization(token?: string) {\n const headers: any = {};\n if (token) {\n headers.Authorization = `Bearer ${token}`;\n }\n \n return headers;\n}\n\nexport async function get(url: string, parameters?: any, token: string = null, isDiscardable = false) {\n let cts: CancelTokenSource;\n\n if (parameters === true || isDiscardable) {\n cts = discardableRequests[url];\n if (cts) {\n cts.cancel();\n }\n cts = discardableRequests[url] = axios.CancelToken.source();\n }\n\n return http\n .request({\n method: 'GET',\n cancelToken: cts && cts.token || null,\n headers: await addAuthorization(token),\n ...buildRequest(url, true, parameters)\n })\n .catch((error: any) => {\n if (is401(error)) {\n return error.response;\n }\n throw error;\n });\n}\n\nexport async function getAsDataURL(url: string, parameters?: any): Promise {\n return http\n .request({\n method: 'GET',\n responseType: 'blob',\n ...buildRequest(url, true, parameters) })\n .then(res => new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject\n reader.readAsDataURL(res.data)\n }))\n .catch((error: any) => {\n if (is401(error)) {\n return error.response;\n }\n throw error;\n });\n}\n\nexport async function post(url: string, data?: any, token?: string) {\n return http\n .request({\n method: 'POST',\n data,\n headers: await addAuthorization(token),\n ...buildRequest(url, false)\n })\n .catch((error: any) => {\n if (is401(error)) {\n return error.response;\n }\n throw error;\n });\n}\n\nexport async function put(url: string, data?: any, headers?: any) {\n return http\n .request({ method: 'PUT', data, headers, ...buildRequest(url, false) })\n .catch((error: any) => {\n if (is401(error)) {\n return error.response;\n }\n throw error;\n });\n}\n\nexport async function del(url: string, parameters?: any, headers?: any) {\n return http\n .request({ method: 'DELETE', headers, ...buildRequest(url, false, parameters) })\n .catch((error: any) => {\n if (is401(error)) {\n return error.response;\n }\n throw error;\n });\n}\n\nexport function checkResult(result: ApiResult, ctx?: ActionContext): boolean;\n\nexport function checkResult(result: ApiResult, ctx?: ActionContext): T | false;\n\nexport function checkResult(result: ApiResult, ctx?: ActionContext) {\n if (result) {\n if (result.result == \"OK\") {\n return result.data || true;\n }\n else {\n if (result.result == \"ERROR\") {\n //ctx.dispatch('showError', result);\n }\n }\n }\n return false;\n}"],"sourceRoot":""}