
    j                    N    d Z ddlmZ ddlmZ  edd       G d d             Zy)	zFValidated exact-address configuration for the private physique wizard.    )annotations)	dataclassT)frozenslotsc                  `    e Zd ZU dZded<   ded<   ded<   ded<   ded	<   ded
<   edd       Zy)PhysiqueCheckinConfigz@Explicit security boundary required before the wizard can exist.strowner_idchat_idtopic_idintexpires_secondsboolallow_anonymous_sender_chatcoaching_feedback_enabledc           
        t        |t              sy|j                  d      }t        |t              r|j                  d      duryt        |j                  dd            j	                         }t        |j                  dd            j	                         }t        |j                  dd            j	                         }|r|r|sy|j                  d	      
|d	   |gk7  ry|j                  d
      
|d
   |gk7  ry|j                  dd      dury	 t        |j                  dd            }d|cxk  rdk  sy y | |||||j                  d      du |j                  d      du       S # t        t        f$ r Y yw xY w)zHParse the profile feature flag only when every supplied boundary agrees.Nphysique_checkinenabledTr
    r   r   allowed_chatsallowed_topicsrequire_mentionFr   i  <   iQ r   r   )
isinstancedictgetr	   stripr   	TypeError
ValueError)clsextrarawownerchattopicexpirys          h/home/cube/projects/richard/.worktrees/nutricoach-v140-impl/gateway/platforms/physique_checkin_config.py
from_extraz PhysiqueCheckinConfig.from_extra   s    %&ii*+#t$	(:$(FCGGJ+,2243779b)*002CGGJ+,224D77?#/C4HTF4R77#$0S9I5Jug5U77$e,E9	!2E:;F V%v% &GG12d:GG/0D8
 	
	 :& 		s   E- -E?>E?N)r!   objectreturnzPhysiqueCheckinConfig | None)__name__
__module____qualname____doc____annotations__classmethodr(        r'   r   r      s8    JMLM!%%##
 
r2   r   N)r.   
__future__r   dataclassesr   r   r1   r2   r'   <module>r5      s.    L " ! $d#*
 *
 $*
r2   