
    j                         d Z ddlmZ ddlmZ ddlmZ ddddZ ed	d	
       G d d             Zdd	 	 	 	 	 	 	 	 	 ddZ	ddZ
y)zHValue-free Korean prompt cards for the private physique check-in wizard.    )annotations)Callable)	dataclass)u   체중
bodyweightu   수면 시간sleep_durationu
   수면 질sleep_qualityu	   컨디션	conditionu   통증painu	   칼로리calories)u   오늘 운동training_planu   특이사항optional_note))u   운동 결과
completion)u   실제 훈련training_summary)u
   운동 질workout_qualityr   )r   r   )u	   탄단지macros)u   식사meals)u   수분waterr   r
   )u   소화	digestionr   )u   식욕·스트레스appetite_stress)u   운동r   r   )morningworkoutnutrition_dailyT)frozenslotsc                  8    e Zd ZU dZded<   dZded<   dZded<   y	)
WizardPromptzGRendered text and opaque callback addresses; never user-entered values.strtext ztuple[tuple[str, str], ...]buttonsz'tuple[tuple[tuple[str, str], ...], ...]button_rowsN)__name__
__module____qualname____doc____annotations__r'   r(   r&       i/home/cube/projects/richard/.worktrees/nutricoach-v140-impl/gateway/platforms/physique_checkin_prompts.pyr#   r#   *   s     Q
I+-G(-;=K8=r.   r#   r   )flowc                 	 |rt        |       S | dk(  rt        d      S | dk(  rt        d      S | dv r1dddd	}t        ||    t        fd
t        dd      D                    S | dk(  rt        dd d      fd d      ff      S | dk(  rpd d      fd d      fd d      fd d      fd d      fd d      fd d      fd  d!      fd" d#      ff		t        d$	t        d% 	D                    S | d&k(  rt        d'      S | d(k(  r't        d)d* d      fd+ d      fd, d      ff      S | d-k(  r9|d.k(  rd d      fd/ d      ffnd0 d      fd1 d      ff	t        d2	      S | d3k(  r't        d4d5 d      fd6 d      fd7 d      ff      S | d8k(  r|d.k(  rt        d9d: d      ff      S | d8k(  rt        d;      S | d<k(  rt        d=d> d      ff      S | d?k(  rV|d.k(  rd@ d      fdA d      fdB d      ffndC d      fdD d      fdE d      ff	|d.k(  rdFndG}t        |		f      S | dHk(  rt        j                  |t        dI         }t        fdJt        |      D              	t        	fdKt        dLt        	      dM      D              }dN |d.k(  rdOndP      f}t        dQ	|fz   ||ffz         S t        dR      S )Sz?Render the exact field question or its bounded-choice keyboard.r   J   기상 직후 체중을 kg 단위 숫자로 입력해 주세요. 예: 70.2r	   M   어제 수면 시간을 시간 단위 숫자로 입력해 주세요. 예: 7.5>   r   r   r   ug   어제 수면의 질을 골라 주세요.
1은 매우 나쁨, 3은 보통, 5는 매우 좋음입니다.uc   오늘 컨디션을 골라 주세요.
1은 매우 나쁨, 3은 보통, 5는 매우 좋음입니다.u]   운동 수행 질 점수 (1=매우 나쁨 · 3=보통 · 5=매우 좋음)를 골라주세요.)r   r   r   c              3  J   K   | ]  }t        |       d |       f  yw)aN)r$   ).0indexcallbacks     r/   	<genexpr>z&build_wizard_prompt.<locals>.<genexpr>M   s)     /malX]UX%k=R0Sals    #      r   u7   ④ 통증·이상 신호가 있으면 알려주세요.u   없음a0u   있음 · 입력a1r   u   1 · 딱딱한 알갱이u   2 · 울퉁불퉁한 소시지u   3 · 갈라진 소시지a2u   4 · 매끈하고 부드러움a3u   5 · 부드러운 덩어리a4u   6 · 묽고 풀어진 변a5u   7 · 완전한 물변a6u   가스·복부 팽만a7u   기타 · 직접 입력a8u   어제 배변 상태를 골라 주세요.
가스가 차거나 배가 더부룩했다면 ‘가스 또는 복부 팽만’을 눌러 주세요.c              3  "   K   | ]  }|f 	 y w)Nr&   )r6   buttons     r/   r9   z&build_wizard_prompt.<locals>.<genexpr>_   s     2'6)'s   r   R   어제 먹은 총칼로리를 kcal 단위 숫자로 입력해 주세요. 예: 2350r   u,   ⑥ 오늘 훈련 계획을 골라주세요.u   휴식 예정u   미정u   운동 입력r   r   u   직접 입력u   없음 · 계속u   입력u.   특이사항이 있으면 입력해 주세요.r   u/   계획 대비 훈련 결과를 골라주세요.u   완료u   부분 완료u   휴식으로 변경r   u3   오늘 운동 내용을 직접 입력해 주세요.u   운동 내용 입력u/   실제 훈련 내용을 짧게 적어주세요.
safety_ackuT   운동 처방을 중단했습니다. 필요한 진료를 먼저 확인해 주세요.u   확인summaryu   체크인 저장u   입력 수정u   나중에 저장u   저장u   수정u   임시저장uu   오늘 체크인 내용을 확인해 주세요.
‘체크인 저장’을 누르면 오늘 기록을 제출합니다.u$   오늘 체크인을 저장할까요?	edit_menur   c              3  D   K   | ]  \  }\  }}| d |       f  yw)eNr&   )r6   r7   label_r8   s       r/   r9   z&build_wizard_prompt.<locals>.<genexpr>   s-     bPa;L5*5!1UG 56Pas    c              3  .   K   | ]  }||d z      yw)   Nr&   )r6   r7   r'   s     r/   r9   z&build_wizard_prompt.<locals>.<genexpr>   s     U;T%WU519-;Ts   r   rP   u   요약으로 돌아가기e12e11u!   어느 항목을 수정할까요?u(   체크인을 다시 시작해 주세요.)_typed_promptr#   tuplerange_EDITABLE_FIELDSget	enumeratelen)
stepawaiting_textr8   r0   labelsr%   fieldsrowsbackr'   s
     `      @r/   build_wizard_promptr`   3   s    T""|hiikll@@PP  

 F4L%/mafghjkal/m*mnnv~l+dhprz{  sA  hB  EW  Ya  bf  Yg  Dh  gi  j  j{'$8-x~>'$8-x~>*HTN;((4.9$htn5$htn5&7

 s2'22	
 	
 zpqq|4bfuw  AE  xF  fG  JR  T\  ]a  Tb  Ic  fu  w  @D  wE  eF  eG  (H  !H (( '/8D>)JK%x~68D>8RS 	
 LgVV|L1bfnpxy}p~e  CR  T\  ]a  Tb  Bc  f{  }E  FJ  }K  eL  eM  %N  N!!d.?&?A$htn57
 	
 !!,7h*i#i|L  2H  LT  V^  _c  Vd  Ke  Jg  %h  hy ((	 $Xd^4 (4.1#Xd^4 8D>*8D>*$0 	  ((T 8	 	 D'G:66{!%%d,<Y,GHbPYZ`PabbU5CLRS;TUU+XtGX?Xe^c-de?D7ARTX]a\c[eTeffBCCr.   c                V    ddddddddd	d
ddd}t        |j                  | d            S )Nr2   r3   u@   통증 위치, 강도(0~10), 언제부터인지 적어주세요.u=   오늘 할 운동 부위와 종목을 짧게 적어주세요.u.   오늘 특이사항을 짧게 적어주세요.u_   어제 별도로 한 운동이 있다면 부위·종목·세트 수·시간을 적어주세요.rG   u   어제 탄수화물, 단백질, 지방을 g 단위로 입력해 주세요.
순서는 탄수화물 단백질 지방입니다. 예: 280 150 65u  어제 먹은 식사를 끼니별로 입력해 주세요. 각 끼니를 Meal 1, Meal 2처럼 시작해 주세요.
예: Meal 1 달걀 3개·밥 / Meal 2 닭가슴살·밥 / Meal 3 외식(국밥)
간식과 계획에서 벗어난 식사도 포함해 주세요.uL   어제 마신 물의 양을 L 단위 숫자로 입력해 주세요. 예: 2.5u@   배변 상태나 소화 불편을 편하게 입력해 주세요.u   어제 하루 평균 식욕과 스트레스를 각각 1부터 5까지 입력해 주세요.
1은 거의 없음, 3은 보통, 5는 매우 높음입니다.
예: 식욕 3, 스트레스 2)r   r	   r   r   r   r   r   r   r   r   r   r   u"   다음 답을 입력해 주세요.)r#   rW   )rZ   	questionss     r/   rS   rS      sQ    biRXI}hPN
 `W,+I4 	d,PQRRr.   N)
rZ   r$   r[   boolr8   zCallable[[str], str]r0   r$   returnr#   )rZ   r$   rd   r#   )r,   
__future__r   collections.abcr   dataclassesr   rV   r#   r`   rS   r&   r.   r/   <module>rh      s    N " $ !	# D $d#> > $> [D
[D[D #[D
 [D [D|Sr.   