1import{z as k,h as q,b as z,A as F,r as e,i as P,H as Q,j as o,B as S,L as E}from"./index-MBthoxJu.js";import{A as H,T as x,g as O,b as R,S as V}from"./study-Cz2odjcQ.js";import{A as G}from"./index-BH3lFIQp.js";import{q as J,S as K}from"./index-Bk2G0Xht.js";import{u as W,M as X,N as Y,S as Z}from"./index-tpAujqLd.js";import{u as $}from"./activities-Sxp5L9zm.js";import{u as tt,a as ot}from"./data-sources-CL6jkmfN.js";import{u as it}from"./user-info-BukOBq4I.js";import{u as st}from"./useMutation-Ka6RvnWm.js";import{u as et}from"./study-CcksejXR.js";import"./index-CNmKxZ54.js";import"./traditional-C6VIU1yI.js";import"./session-5kINOpwU.js";import"./track-DmDqRDuB.js";import"./functions-DbNeI56R.js";import"./numbers-C11L_IDE.js";import"./evaluate-criteria-D48ZvTBq.js";import"./constants-CESkvmK3.js";import"./useQuery-Mpn1wWGO.js";import"./upload-file-D_bBqedR.js";import"./vanilla-m3Xdu9cz.js";import"./index-CMWmLCCs.js";import"./env-CpqAHx0w.js";import"./index-ekwC5MO3.js";import"./style-C7I1yBwt.js";import"./en-US-0ZQFvYS7.js";import"./buildMatchPatternFn-gl_-3tNL.js";import"./startOfWeek-Bstetzs9.js";import"./fetch-study-activities-DNBjIxzw.js";import"./fetch-study-data-sources-C558icxp.js";import"./misc-DDu84iZh.js";const nt=n=>{const p=k(),{notify:u}=q(),g=z(),{mutateAsync:s,isPending:m}=st({mutationFn:async({studyId:r})=>J(r),onError:r=>{u("error",r.message)},onSuccess:()=>{p.resetQueries(),g(F.ParticipantDashboard.Home,{replace:!0})}}),y=e.useCallback(async()=>{n!=null&&!Number.isNaN(n)&&n>0&&await s({studyId:n})},[s,n]);return{isPending:m,quitStudy:y}},rt="_container_1l48d_8",at="_title_1l48d_17",ut="_dropoutButton_1l48d_26",ct="_dialogText_1l48d_31",dt="_dialogActions_1l48d_39",l={container:rt,title:at,dropoutButton:ut,dialogText:ct,dialogActions:dt},lt=()=>{const[n,p]=e.useState(!1),[u,g]=e.useState(),s=W(t=>t.activeStudyId),{dataSources:m,isFetching:y}=tt(s),{dataSourceCategoriesById:r,isFetching:D}=ot(),{device:I}=it(),{activities:_}=$(s),{study:c}=et(s),{name:T,description:M,organizationName:b,startTimeMs:f,endTimeMs:j}=c,{quitStudy:v,isPending:A}=nt(s),{t:a}=P(),i=e.useMemo(()=>_.find(t=>t.type===H.Survey&&t.triggeringLogics.some(d=>d.type===x.Dropout)),[_]),N=e.useMemo(()=>c?O(c.startTimeMs,c.endTimeMs):null,[c]),C=e.useCallback(t=>{if(i&&i.triggeringLogics.length>0){t();const d=Date.now(),h=crypto.randomUUID();g({studyId:i.studyId,activityId:i.id,uuid:h,sessionUuid:h,tlTypeId:R.Dropout,tlId:i.triggeringLogics.find(U=>U.type===x.Dropout)?.id,pTimeMs:d,sTimeMs:d,version:i.version,...i.expiryDurationMs?{expiryTimeMs:d+i.expiryDurationMs}:{}}),p(!0)}else v()},[i,v]),{dialog:w,showDialog:L}=Q({title:a("activity_study_settings_leave_study_header"),size:"md",content:o.jsx("p",{className:l.dialogText,children:a("activity_study_settings_leave_study_desc")}),footer:({hideDialog:t})=>o.jsxs("div",{className:l.dialogActions,children:[o.jsx(S,{onClick:t,"data-testid":"dropout-cancel-button",children:a("no")}),o.jsx(S,{color:"warning",loading:A,onClick:()=>C(t),"data-testid":"dropout-confirm-button",children:a("yes")})]})}),B=e.useMemo(()=>m.map(t=>({id:t.id,icon:t.icon,description:t.description??"",label:t.label??"",category:{id:t.categoryId,label:r[t.categoryId]?.label??""}})),[m,r]);return y||D?o.jsx(E,{}):n&&i&&u?o.jsx(X,{children:o.jsx(G,{name:i.name,children:o.jsx(K,{sessionUUID:u.uuid,surveyVersion:i.version,sessionInfo:u,participantRegistrationTime:f??null,deviceId:I.deviceId??void 0})})}):o.jsxs(Y,{children:[o.jsxs("div",{className:l.container,children:[o.jsx("h2",{className:l.title,children:a("about_study")}),o.jsx(Z,{name:T,description:M,organization:b,startTimeMs:f,endTimeMs:j,dataSources:B}),N===V.Ongoing&&o.jsx(S,{className:l.dropoutButton,color:"warning",disabled:s==null,onClick:L,"data-testid":"dropout-button",children:a("activity_study_settings_leave_study_header")})]}),w]})},Ot=e.memo(lt);export{Ot as CurrentStudyInfo};
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.