PageSourceSearch

https://www.unionen.se/_nuxt/CzfiSSy3.js

js unionen.se collected 2026-09-24 17:17:12 UTC 9,061 bytes, 120 lines download raw bytes

1import{P as e,St as t,f as n}from"./82eqqkYy.js";import{g as r}from"./AYldlSiK.js";import{p as i}from"./CLD1paPK.js";import{i as a}from"./BNqa9wDI.js";import{t as o}from"./D9n7Oern.js";import{t as s}from"./Cq9Aqw5K.js";import{a as c,n as l}from"./CL7Uu-9A.js";import{n as u,r as d,t as f}from"./DU7vJwm-.js";import{a as p}from"./DXLrD4t_.js";import{a as m,r as h}from"./-aphUgPd.js";import{i as g}from"./CiIoPtQ7.js";var _=f`
2    fragment userFragment on User {
3  __typename
4  type
5  personId
6  givenName
7  familyName
8  isElectedMember
9  hashedPid
10  kind
11  metadata {
12    userTemplate
13    personTemplate
14  }
15  segmentationGroups {
16    __typename
17    name
18    id
19  }
20  authMethod
21  invalidAfter
22  personalNumber
23  email
24  regionName
25  regionId
26  version
27}
28    `,v=f`
29    fragment lastActivity on UserActivity {
30  remainingTime
31  lastActivity
32}
33    `,y=f`
34    fragment address on Address {
35  country
36  line1
37  line2
38  postalCode
39  postalRegion
40}
41    `,b=f`
42    fragment currentUserFull on FullUser {
43  addressHome {
44    ...address
45  }
46  age
47  educationLevel
48  educationLevelCode
49  email
50  familyName
51  givenName
52  personalNumber
53  phone
54  pid
55  privateConflictEmail
56  privateConflictPhone
57  protectedIdentity
58  regionId
59  regionName
60  sex
61  memberFrom
62}
63    `,x=f`
64    query currentUser {
65  currentUser {
66    ...userFragment
67  }
68}
69    ${_}`,S=f`
70    query currentUserFull {
71  currentUserFull {
72    ...currentUserFull
73  }
74}
75    ${b}
76${y}`,C=f`
77    query loginInitiated($authorizeUrl: String!, $returnUrl: String) {
78  loginInitiated(authorizeUrl: $authorizeUrl, returnUrl: $returnUrl) {
79    __typename
80    intent
81    redirectUrl
82  }
83}
84    `,w=f`
85    query getLastActivity {
86  lastActivity {
87    ...lastActivity
88  }
89}
90    ${v}`,T=f`
91    mutation setLastActivity($lastActive: String!) {
92  lastActivity(lastActive: $lastActive) {
93    ...lastActivity
94  }
95}
96    ${v}`,E=f`
97    mutation userAuthorize($authorizeInput: AuthorizeInput!) {
98  postApiUserAuthorize(authorizeInput: $authorizeInput) {
99    __typename
100    redirectUrl
101    rejectAfter
102    user {
103      ...userFragment
104    }
105  }
106}
107    ${_}`,D=f`
108    mutation userLogout($logoutRequestInput: LogoutRequestInput!) {
109  postApiUserLogout(logoutRequestInput: $logoutRequestInput) {
110    __typename
111    redirectUrl
112  }
113}
114    `,O=f`
115    mutation expireMe {
116  expireMeIn30Seconds {
117    ...lastActivity
118  }
119}
120    ${v}`,k=(e,t={})=>u({operationType:`query`,operation:x,clientId:`nuxtloginmicroservice`,variables:e},{...t,server:!0}),A=e=>d({operationType:`query`,operation:S,clientId:`nuxtloginmicroservice`,variables:e}),j=e=>d({operationType:`query`,operation:C,clientId:`nuxtloginmicroservice`,variables:e}),M=e=>d({operationType:`query`,operation:w,clientId:`nuxtloginmicroservice`,variables:e}),N=(e,t)=>u({operationType:`mutation`,operation:T,clientId:`nuxtloginmicroservice`,variables:e},t),P=(e,t)=>u({operationType:`mutation`,operation:E,clientId:`nuxtloginmicroservice`,variables:e},t),F=(e,t)=>u({operationType:`mutation`,operation:D,clientId:`nuxtloginmicroservice`,variables:e},t),I=(e,t)=>u({operationType:`mutation`,operation:O,clientId:`nuxtloginmicroservice`,variables:e},t),L=o.withTag(`user store`);function R(e){return t=>t!==null&&t.name===e}var z=3e4,B={kontaktuppgifter_medlem_uppdatera:`all`,anstallning_medlem_uppdatera:`user`,anstallning_medlem_avsluta:`user`,agarskap_medlem_avsluta:`user`,agarskap_medlem_uppdatera:`user`,arbetsmarknadsstatus_medlem_uppdatera:`user`,medlemskap_student_yrkesverksam_konvertera:`user`,utbildningsniva_medlem_uppdatera:`fullUser`},V={0:`anonymous`,1:`employable`,3:`pensioner`,4:`student`,8:`tria_student`,10:`self_employed`,11:`guest`,non_member:`none`},H=[`0`,`11`,`non_member`],U={0:`Anonym`,1:`Yrkesverksam`,3:`Pensionär`,4:`Studerande`,8:`Tria-studerande`,10:`Egenföretagare`,11:`Gästmedlem`,non_member:`none`},W=l(`user`,()=>{let o=t(null),l=t(null),u=t(``),d=t(`idle`),f=t([]);function _(e){u.value=e,d.value=`pending`,e&&L.log(`initiateLogin has intent set`)}function v(e,t){if(e.type===`0`){w(),d.value=`success`;return}if(!e.personId&&!H.includes(e.type)&&e.kind!==`mock`)throw L.error(`Cannot update user without personId`),Error(`Cannot update user without personId`);o.value=e,u.value=``,L.log(`intent reset by updateUser`),t?(d.value=`partial`,setTimeout(()=>{if(d.value===`partial`)throw w(),d.value=`error`,Error(`Did not manage to fulfill login in time!`)},t),N().catch(e=>{e.name!==`AbortError`&&L.error(`Failed to initialize user`,e)})):d.value=`success`}function y(e){return!!(o.value?.segmentationGroups??[]).find(R(e))}async function b(){try{d.value===`idle`&&await e(),await r(d).toMatch(e=>e!==`pending`&&e!==`partial`,{timeout:z,throwOnTimeout:!0})}catch(e){throw d.value=`error`,Error(`Reached max wait time to confirm user`,{cause:e})}}async function x(){try{await r(l).toBeTruthy({timeout:z,throwOnTimeout:!0})}catch(e){throw d.value=`error`,Error(`Reached max wait time to load full user data`,{cause:e})}}function S(e){f.value.push(e)}async function C(t=!1){if(!o.value?.authMethod&&!t)return;d.value=`pending`;let n=F({logoutRequestInput:{redirectUrl:`/`}});
120try{f.value.forEach(e=>{if(typeof e!=`function`){L.error(`Invalid logout listener`);return}e()})}catch(e){L.error(`Caught error in logout listeners`,e)}h(),await g(n.status,[`error`,`success`]);let{redirectUrl:r=`https://login.unionen.se/adfs/ls?wa=wsignout1.0&wreply=string`}=n.data.value?.postApiUserLogout??{};w(),d.value=`success`,i(),localStorage.setItem(`user`,JSON.stringify({"user-has-logged-out":!0})),await e(),a(r,{external:!0})}function w(){o.value=null,l.value=null,u.value=``,d.value=`idle`,f.value=[],L.log(`userStore reset, intent value reset`)}let{status:T,data:E,error:D,execute:O}=k({},{immediate:!1}),j=async()=>{try{if(d.value=`pending`,await O(),T.value===`error`&&(D.value&&L.error(JSON.stringify(D.value)),await O()),T.value!==`success`||!E.value?.currentUser){D.value&&L.error(JSON.stringify(D.value)),w(),d.value=`error`;return}v(E.value.currentUser)}catch(e){L.error(`Something went wrong fetching user login`),e&&L.error(JSON.stringify(e)),w(),d.value=`error`;return}L.debug(`user data fetched`)},M=async()=>A({}).then(e=>{e?.currentUserFull&&(l.value=e.currentUserFull),L.debug(`full user data fetched`)}).catch(e=>{L.error(`Failed to load full user object. Error: ${JSON.stringify(e)}`)});async function N(){if(await e(),u.value){L.log(`Have intent set, early return from user init`);return}try{if((d.value===`idle`||d.value===`partial`)&&await j(),o.value?.kind===`mock`&&o.value?.personId!==`mock`)throw Error(`Nuxt backend failed to set mock personId!`);if(!I.value||!K.value||!o.value?.personId)return;let e=p({includeSettled:!1}).then(e=>{e?.pendingForms&&m().initRequests(e.pendingForms)}).catch(e=>{throw L.error(`Failed to load pending forms for user. Error: ${JSON.stringify(e)}`),e});await Promise.all([M(),e])}catch(e){L.error(`Something went wrong fetching user login`),e&&L.error(e),w(),o.value=null,d.value=`error`,a(`/mitt-unionen/ej-medlem`,{external:!0})}L.debug(`user initialize done`)}let P=n(()=>d.value!==`pending`&&d.value!==`partial`&&(!o.value||o.value.type===`0`)),I=n(()=>d.value===`success`&&!!o.value?.authMethod||d.value===`partial`),W=n(()=>{if(d.value===`success`&&!o.value)return`anonymous`;if(d.value===`pending`||d.value===`idle`||!o.value)return`none`;if(o.value.type){let e=o.value?.type.toLowerCase();if(!Object.keys(V).includes(e))throw Error(`Unhandled member type "${o.value.type}"`);return V[e]}return`none`}),G=n(()=>{if(d.value===`success`&&!o.value)return`Anonym`;if(d.value===`pending`||d.value===`idle`||!o.value)return`none`;if(o.value.type){let e=o.value.type.toLowerCase();if(!Object.keys(U).includes(e))throw Error(`Unhandled member type sv "${o.value.type}"`);return U[e]}return`none`}),K=n(()=>d.value!==`pending`&&W.value!==`none`&&W.value!==`anonymous`),q=n(()=>o.value?.kind===`mock`),J=n(()=>(d.value===`partial`||d.value===`success`)&&!!o.value?.isElectedMember),Y=n(()=>d.value===`partial`||d.value===`success`&&o.value?.authMethod?o.value:null),X=n(()=>o.value?.authMethod&&typeof o.value.personId==`string`?s(o.value.personId):``),Z=n(()=>J.value?`Förtroendevald`:K.value?`Vanlig medlem`:`anonymous`);return N().catch(e=>{e.name!==`AbortError`&&L.error(`Failed to initialize user`,e)}),{user:o,userFull:c(l),intent:u,status:d,logoutListeners:c(f),initiateLogin:_,updateUser:v,hasGroup:y,waitForData:b,waitForFullUser:x,registerLogoutListener:S,logout:C,$reset:w,$updateOnFormServiceStatusChange:e=>{!e||e&&!B[e]||(B[e]===`user`?j():B[e]===`fullUser`?M():B[e]===`all`&&(j(),M()))},isAnonymous:P,hasLoggedIn:I,isMember:K,isMock:q,hasAssignment:J,authenticatedUser:Y,encryptedId:X,memberRole:Z,memberType:W,memberTypeSv:G}},{persist:{pick:[`intent`],afterHydrate(e){e.store.$state.intent.value&&e.store.$state.status.value===`error`?(e.store.$state.intent.value=``,L.log(`intent reset in userStore afterHydrate`)):e.store.$state.intent.value&&L.log(`intent set in userStore afterHydrate`)}},share:{enable:!0},formServiceDependencies:B});export{N as a,j as i,I as n,P as o,M as r,W as t};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.