
    @'h                     r    d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	m
Z
mZ ddlmZ ddlmZ  G d d	e      Zy
)zFlat reader.    )AbstractFileSystemLocalFileSystem)Path)AnyDictListOptional)
BaseReader)Documentc            
       ~     e Zd ZdZdededdf fdZ	 ddedee   defd	Z		 	 dded
ee
   dee   dee   fdZ xZS )
FlatReaderzZFlat reader.

    Extract raw text from a file and save the file type in the metadata
    argskwargsreturnNc                 $    t        |   |i | y)zInit params.N)super__init__)selfr   r   	__class__s      i/home/kushmeetdev/Regenta/Chatbot/venv/lib/python3.12/site-packages/llama_index/readers/file/flat/base.pyr   zFlatReader.__init__   s     	$)&)    filefsc                     |
t               }|S Nr   )r   r   r   s      r   _get_fszFlatReader._get_fs   s     : "B	r   
extra_infoc                     | j                  ||      }|j                  |d      5 }|j                         }ddd       |j                  |j                  d}|ri ||}t        |      gS # 1 sw Y   8xY w)zParse file into string.zutf-8)encodingN)filename	extension)textmetadata)r   openreadnamesuffixr   )r   r   r   r   fcontentr$   s          r   	load_datazFlatReader.load_data    sz     \\$#WWTGW, 	ffhG	 $		D1(1j1Hg9::	 	s   A..A7r   )NN)__name__
__module____qualname____doc__r   r   r   r
   r   r   r   r	   r   r+   __classcell__)r   s   @r   r   r      s    
** * 
	* >B&'9:	 &*+/	;; TN; '(	;
 
h;r   r   N)r/   fsspecr   fsspec.implementations.localr   pathlibr   typingr   r   r	   r
   llama_index.core.readers.baser   llama_index.core.schemar   r    r   r   <module>r8      s)     % 8  , , 4 ,#; #;r   