a
    Dgi                     @   sD   d dl mZ d dlmZ d dlmZ d dlmZ G dd deZdS )    )ImproperlyConfigured)cached_property)ChooserBlock)resolve_model_stringc                       sH   e Zd ZdgZ fddZedd Zedd ZG dd	 d	Z  Z	S )
SnippetChooserBlockiconc                    s   t  jf i | || _d S N)super__init___target_model)selftarget_modelkwargs	__class__ V/var/www/lab.imftr.de/x/nb_venv/lib/python3.9/site-packages/wagtail/snippets/blocks.pyr
      s    zSnippetChooserBlock.__init__c                 C   s
   t | jS r   )r   r   )r   r   r   r   r      s    z SnippetChooserBlock.target_modelc              
   C   sr   ddl m} z| jjj}W n6 tyP } ztd| j |W Y d }~n
d }~0 0 | d|i || j| jjdS )Nr   )AdminSnippetChooserz6Cannot use SnippetChooserBlock with non-snippet model r   )r   )	Zwagtail.snippets.widgetsr   r   Zsnippet_viewsetr   AttributeErrorr   Zset_meta_optionsmeta)r   r   r   er   r   r   widget   s    
zSnippetChooserBlock.widgetc                   @   s   e Zd ZdZdS )zSnippetChooserBlock.MetaZsnippetN)__name__
__module____qualname__r   r   r   r   r   Meta&   s   r   )
r   r   r   ZMUTABLE_META_ATTRIBUTESr
   r   r   r   r   __classcell__r   r   r   r   r      s   

r   N)	Zdjango.core.exceptionsr   Zdjango.utils.functionalr   Zwagtail.blocksr   Zwagtail.coreutilsr   r   r   r   r   r   <module>   s   