code7-leia 0.1.122 → 0.1.124

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"code7-leia.cjs.development.js","sources":["../src/components/Tabs/styles.tsx","../src/components/Tabs/index.tsx","../src/utils/languages/en.ts","../src/utils/languages/pt-br.ts","../src/utils/languages/es.ts","../src/utils/getLanguage.tsx","../src/components/FileArea/styles.tsx","../src/components/FileArea/components/Table/styles.tsx","../src/components/FileArea/components/Spinner/styles.tsx","../src/components/FileArea/components/Spinner/index.tsx","../src/components/FileArea/components/Table/index.tsx","../src/components/FileArea/components/Search/index.tsx","../src/components/FileArea/components/Modal/styles.tsx","../src/components/FileArea/components/Modal/ModalFooter.tsx","../src/components/FileArea/components/Modal/ModalContent.tsx","../src/components/FileArea/components/Modal/index.tsx","../src/components/EmptyState/styles.tsx","../src/components/EmptyState/index.tsx","../src/components/MultiSelect/styles.tsx","../src/components/MultiSelect/index.tsx","../src/components/FileArea/components/AreaUpload/styles.tsx","../src/components/FileArea/components/AreaUpload/index.tsx","../src/service/Api.ts","../src/contexts/SharedPropsProvider.tsx","../src/store/modules/types.ts","../src/store/modules/actions.ts","../src/components/FileArea/index.tsx","../src/components/TestArea/styles.tsx","../src/components/Select/styles.tsx","../src/components/Select/index.tsx","../src/components/TestArea/components/InputTest/styles.tsx","../src/components/TestArea/components/InputTest/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../src/store/modules/reducer.ts","../src/components/CustomToast/index.tsx","../src/store/modules/sagas.ts","../src/store/index.ts","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { ReactNode } from 'react';\n\ninterface TabProps {\n children: ReactNode;\n}\n\ninterface OptionProps {\n children: ReactNode;\n onClick: () => void;\n}\n\nexport const TabsPane = styled.ul`\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n`;\n\nexport const Tab = styled.li<TabProps>`\n padding: 12px;\n color: var(--neutral-3);\n font-size: 0.875rem;\n font-weight: normal;\n position: relative;\n cursor: pointer;\n\n svg {\n fill: var(--neutral-3) !important;\n margin-left: 8px;\n }\n\n &.active {\n color: var(--primary-700-light);\n\n svg {\n fill: var(--primary-700-light) !important;\n }\n\n ::after {\n content: '';\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 2px;\n background-color: var(--primary-700-light);\n }\n }\n\n &:not(:last-child) {\n margin-right: 8px;\n }\n`;\n\nexport const DropdownContainer = styled.div`\n position: absolute;\n left: 0px;\n top: 40px;\n display: flex;\n flex-direction: column;\n\n background: #ffffff;\n\n border: 1px solid #979aa5;\n box-sizing: border-box;\n box-shadow: 0px 6px 12px -6px rgba(24, 39, 75, 0.12),\n 0px 8px 24px -4px rgba(24, 39, 75, 0.08);\n border-radius: 4px;\n padding: 8px;\n z-index: 2;\n`;\n\nexport const Option = styled.div<OptionProps>`\n padding: 8px;\n font-size: 14px;\n border-radius: 4px;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n &:hover {\n background-color: var(--primary-800-light);\n color: white;\n }\n`;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\nimport cc from 'classcat';\n\nimport * as S from './styles';\n\ninterface TabProps {\n children: ReactNode;\n active?: boolean;\n}\n\ninterface ITabsProps {\n children: ReactNode;\n value: string | number;\n onChange: (e: any) => void;\n active?: boolean;\n}\n\nexport const Tab = ({ active, children, ...rest }: TabProps) => {\n return (\n <S.Tab className={cc({ active })} {...rest}>\n {children}\n </S.Tab>\n );\n};\n\nTab.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element,\n PropTypes.node,\n ]).isRequired,\n onChange: PropTypes.func,\n value: PropTypes.string,\n active: PropTypes.bool,\n};\n\nTab.defaultProps = {\n onChange: () => {},\n value: '',\n active: false,\n};\n\nexport const Tabs = ({ children: childrenProp, value, onChange, ...rest }: ITabsProps) => {\n const children = React.Children.map(childrenProp, (child) => {\n if (!React.isValidElement(child)) {\n return null;\n }\n\n if (Array.isArray(child.props?.children)) {\n return React.cloneElement(child as React.ReactElement<any>, {\n active: child.props?.value === value,\n value,\n onChange,\n });\n }\n\n return React.cloneElement(child as React.ReactElement<any>, {\n active: child.props?.value === value,\n onClick: () => onChange(child.props?.value),\n });\n });\n\n return <S.TabsPane {...rest}>{children}</S.TabsPane>;\n};\n\nTabs.propTypes = {\n children: PropTypes.node.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n onChange: PropTypes.func.isRequired,\n};\n","import { Language } from \"../../interface/Language\";\n\nexport const enTranslation: Language = {\n files: 'Files',\n test: 'Test',\n fileArea: {\n description: 'Manage your files with ease! Add new ones and delete old ones as desired.',\n fileName: 'File name',\n presset: 'Presset',\n actions: 'Actions',\n search: 'Search',\n fileUpload: 'File upload',\n emptyState: {\n title: 'No data',\n description: 'No files uploaded yet. Start by adding your documents now!',\n },\n modal: {\n descriptionUpload: 'Drag and drop files here or',\n chooseFile: 'Choose a file',\n uploadFile: 'Upload a file',\n deleteFileTitle: 'Delete a file',\n deleteFile: 'Important! By deleting this file, you will lose all its information and will not be able to recover it.'\n },\n },\n buttons: {\n cancel: 'Cancel',\n send: 'Send',\n delete: 'Delete',\n test: 'Test',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Type a sentence',\n selectPersona: 'Select a Persona',\n selectPresset: 'Select a presset',\n emptyState: {\n title: 'No data for analysis',\n description: 'Do a search, click the \"Test\" button.',\n },\n },\n toast: {\n deleteFile: {\n success: {\n title: 'Success',\n description: 'File deleted successfully!'\n },\n fail: {\n title: 'Failure',\n description: 'Error deleting the file!'\n }\n },\n uploadFile: {\n success: {\n title: 'Success',\n description: 'File uploaded successfully!'\n },\n fail: {\n title: 'Failure',\n description: 'Error uploading the file!'\n }\n },\n Test: {\n fail: {\n title: 'Failure',\n description: 'Error testing Le-IA'\n }\n }\n }\n};","import { Language } from \"../../interface/Language\";\n\nexport const ptTranslation: Language = {\n files: 'Arquivos',\n test: 'Teste',\n fileArea: {\n description: 'Gerencie seus arquivos com facilidade! Adicione novos e exclua os antigos conforme desejar.',\n fileName: 'Nome do arquivo',\n presset: 'Predefinição',\n actions: 'Ações',\n search: 'Pesquisar',\n fileUpload: 'Enviar arquivo',\n emptyState: {\n title: 'Sem dados',\n description: 'Nenhum arquivo enviado ainda. Comece adicionando seus documentos agora!',\n },\n modal: {\n descriptionUpload: 'Arraste e solte os arquivos aqui ou',\n chooseFile: 'Escolha um arquivo',\n uploadFile: 'Enviar um arquivo',\n deleteFileTitle: 'Excluir um arquivo',\n deleteFile: 'Importante! Ao excluir este arquivo, você perderá todas as suas informações e não poderá recuperá-las.'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Excluir',\n test: 'Teste',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Digite uma frase',\n selectPersona: 'Selecione uma Persona',\n selectPresset: 'Selecione uma predefinição',\n emptyState: {\n title: 'Sem dados para análise',\n description: 'Faça uma pesquisa, clique no botão \"Teste\".',\n },\n },\n toast: {\n deleteFile: {\n success: {\n title: 'Sucesso',\n description: 'Arquivo excluído com sucesso!'\n },\n fail: {\n title: 'Falha',\n description: 'Erro ao excluir o arquivo!'\n }\n },\n uploadFile: {\n success: {\n title: 'Sucesso',\n description: 'Arquivo enviado com sucesso!'\n },\n fail: {\n title: 'Falha',\n description: 'Erro ao enviar o arquivo!'\n }\n },\n Test: {\n fail: {\n title: 'Falha',\n description: 'Erro ao testar Le-IA'\n }\n }\n }\n};\n","import { Language } from \"../../interface/Language\";\n\nexport const esTranslation: Language = {\n files: 'Archivos',\n test: 'Prueba',\n fileArea: {\n description: '¡Administre sus archivos fácilmente! Agregue nuevos y elimine los antiguos según desee.',\n fileName: 'Nombre del archivo',\n presset: 'Preconfiguración',\n actions: 'Acciones',\n search: 'Buscar',\n fileUpload: 'Subir archivo',\n emptyState: {\n title: 'Sin datos',\n description: 'Aún no se han subido archivos. ¡Comience agregando sus documentos ahora!',\n },\n modal: {\n descriptionUpload: 'Arrastre y suelte los archivos aquí o',\n chooseFile: 'Elegir un archivo',\n uploadFile: 'Subir un archivo',\n deleteFileTitle: 'Eliminar un archivo',\n deleteFile: '¡Importante! Al eliminar este archivo, perderá toda su información y no podrá recuperarla.'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Eliminar',\n test: 'Prueba',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Escribe una oración',\n selectPersona: 'Seleccionar una Persona',\n selectPresset: 'Seleccionar una preconfiguración',\n emptyState: {\n title: 'Sin datos para el análisis',\n description: 'Realice una búsqueda, haga clic en el botón \"Prueba\".',\n },\n },\n toast: {\n deleteFile: {\n success: {\n title: 'Éxito',\n description: '¡Archivo eliminado correctamente!'\n },\n fail: {\n title: 'Error',\n description: 'Error al eliminar el archivo!'\n }\n },\n uploadFile: {\n success: {\n title: 'Éxito',\n description: '¡Archivo subido correctamente!'\n },\n fail: {\n title: 'Error',\n description: 'Error al subir el archivo!'\n }\n },\n Test: {\n fail: {\n title: 'Error',\n description: 'Error al probar Le-IA'\n }\n }\n }\n};\n","import { Language } from '../interface/Language';\nimport { enTranslation } from './languages/en';\nimport { ptTranslation } from './languages/pt-br';\nimport { esTranslation } from './languages/es';\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n switch (language) {\n case 'en':\n return enTranslation;\n case 'pt-br':\n return ptTranslation;\n case 'es':\n return esTranslation;\n default:\n return enTranslation;\n }\n};","import styled, { css } from 'styled-components';\n\ninterface ContainerProps {\n isLoading?: boolean;\n}\n\nexport const Container = styled.div<ContainerProps>`\n ${(props) =>\n props.isLoading &&\n css`\n #loading {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgb(151,154,165, 0.7);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 9999;\n }\n\n #loading::after {\n content: \"\";\n border: 4px solid #f3f3f3; /* Cor do símbolo de carregamento */\n border-top: 4px solid #3498db; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 30px;\n height: 30px;\n animation: spin 1s linear infinite;\n }\n\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n `}\n\n\n .tag {\n padding: 4px 8px 4px 8px;\n background: #C7F9ED;\n border-radius: 4px;\n }\n\n .tags {\n display: flex;\n justify-content: left;\n gap: 4px;\n }\n\n .divDelete {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n }\n\n .buttonDelete {\n color: #5b0a1f;\n background: #fae0d2;\n padding: 12px 20px;\n border-radius: 4px;\n }\n\n .buttonDelete:hover {\n background: #f5bba7;\n }\n\n .button {\n padding: 8px 16px 8px 16px;\n border-radius: 4px;\n gap: 10px;\n }\n\n .cancel {\n background: #F3F5F9;\n color: #5A5D68;\n }\n\n .send {\n background: #102693;\n color: white;\n }\n\n .delete {\n background: #871821;\n color: white;\n }\n\n .presset {\n padding-top: 10px;\n display: flex;\n flex-direction: column;\n }\n\n #warning {\n padding: 10px;\n background: #FAE0D2;\n color: #871821;\n }\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n\n .actions {\n display: flex;\n justify-content: space-between;\n padding-bottom: 14px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n }\n }\n\n`\n","import styled from 'styled-components';\n\nexport const TableWrapper = styled.div`\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n`;\n\nexport const Table = styled.table`\n font-size: 14px;\n line-height: 143%;\n color: black;\n width: 100%;\n border-collapse: collapse;\n border-radius: 4px;\n\n th {\n font-weight: 600;\n font-size: 14px;\n line-height: 143%;\n letter-spacing: 0.018em;\n color: #5A5D68;\n text-align: left;\n padding: 8px;\n border-radius: 4px;\n }\n\n thead tr {\n background: #dadce3;\n }\n\n tbody tr {\n border: 1px solid #dadce3;\n }\n\n &.small td {\n padding: 4px;\n }\n\n &.medium td {\n padding: 8px;\n }\n\n &.large td {\n padding: 16px;\n }\n`;\n\nexport const TableLoadingWrapper = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: #f3f5f961;\n`;\n","import styled from 'styled-components';\n\nexport const SpinnerWrapper = styled.span`\n display: inline-block;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &.spinner--sm {\n width: 24px;\n height: 24px;\n }\n\n &.spinner--md {\n width: 32px;\n height: 32px;\n }\n\n &.spinner--lg {\n width: 60px;\n height: 60px;\n }\n\n span {\n box-sizing: border-box;\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n margin: 8px;\n border: 4px solid #fff;\n border-radius: 50%;\n animation: rotateSpinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;\n border-color: ${(props) => `var(--${props.color})`} transparent transparent\n transparent;\n }\n\n & span:nth-child(1) {\n animation-delay: -0.45s;\n }\n\n & span:nth-child(2) {\n animation-delay: -0.3s;\n }\n\n & span:nth-child(3) {\n animation-delay: -0.15s;\n }\n\n @keyframes rotateSpinner {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n`;\n","import React from 'react';\nimport cc from 'classcat';\n\nimport * as S from './styles';\n\nimport { SpinnerProps } from '../../../../interface/Table'\n\nconst Spinner: React.FC<SpinnerProps> = ({ color = 'neutral-3', size = 'md', className }) => {\n return (\n <S.SpinnerWrapper\n color={color}\n className={cc([`spinner--${size}`, className])}\n >\n <span />\n <span />\n <span />\n <span />\n </S.SpinnerWrapper>\n );\n};\n\nexport default Spinner;\n","import React, { forwardRef, Ref } from 'react';\nimport PropTypes from 'prop-types';\nimport cc from 'classcat';\n\nimport * as S from './styles';\nimport Spinner from '../Spinner';\n\nimport { TableProps } from '../../../../interface/Table'\n\nconst Table = forwardRef(\n ({ size = 'medium', children, isLoading = false, className = '', ...props }: TableProps, ref: Ref<HTMLTableElement>) => {\n return (\n <S.TableWrapper className={className}>\n {isLoading ? (\n <S.TableLoadingWrapper>\n <Spinner />\n </S.TableLoadingWrapper>\n ) : null}\n <S.Table className={cc([size])} ref={ref} {...props}>\n {children}\n </S.Table>\n </S.TableWrapper>\n );\n }\n);\n\nTable.propTypes = {\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n isLoading: PropTypes.bool,\n};\n\nexport default Table;\n","import React from 'react';\nimport unorm from 'unorm';\nimport { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = e.target.value.trim();\n const normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();\n \n const newFiles = initialFiles.filter(file => {\n const normalizedFileName = unorm.nfkd(file.name).toLowerCase();\n return normalizedFileName.includes(normalizedSearchTerm);\n });\n \n setFiles(searchTerm !== '' ? newFiles : initialFiles);\n}\n \n\n return (\n <div style={{ position: 'relative', width: '300px' }}>\n <input\n type=\"text\"\n onChange={(e) => searchName(e)}\n placeholder={placeholder}\n style={{\n paddingLeft: '40px',\n borderRadius: '5px',\n border: '1px solid #ccc',\n height: '40px',\n width: '100%',\n }}\n />\n <div\n style={{\n position: 'absolute',\n top: '10px',\n left: '10px',\n pointerEvents: 'none', \n }}\n >\n <FaSearch />\n </div>\n </div>\n );\n};\n\nexport default SearchInput;\n","import styled from 'styled-components';\n\ninterface FullScreenProps {\n isOpen: number;\n isFixed: number;\n zIndex: number;\n}\n\nexport const FullScreen = styled.div<FullScreenProps>`\n display: ${({ isOpen }) => (isOpen === 1 ? 'flex' : 'none')};\n cursor: ${({ isFixed }) => (isFixed === 0 ? 'pointer' : 'default')};\n\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n justify-content: center;\n align-items: center;\n z-index: ${({ zIndex }) => zIndex};\n animation: fadeIn 380ms ease-in-out 1;\n background-color: #2f3845b8;\n backdrop-filter: blur(2px);\n\n @keyframes fadeIn {\n from {\n background-color: #2f384521;\n }\n to {\n background-color: #2f3845b8;\n }\n }\n`;\n\ninterface ModalProps {\n maxWidth?: string;\n maxHeight?: string;\n}\n\nexport const Modal = styled.div<ModalProps>`\n background-color: #fff;\n border-radius: 3px;\n position: relative;\n cursor: default;\n width: 100%;\n max-width: ${({ maxWidth }) => maxWidth};\n animation: slideIn 350ms cubic-bezier(0.42, 0, 0.21, 1) 1;\n\n @keyframes slideIn {\n from {\n transform: translateY(-120px);\n opacity: 0;\n }\n\n 20% {\n opacity: 0;\n }\n\n to {\n transform: translateY(0);\n opacity: 1;\n }\n }\n`;\n\ninterface ModalContainerProps {\n maxHeight?: string;\n}\n\nexport const ModalContainer = styled.div<ModalContainerProps>`\n width: 100%;\n overflow-y: auto;\n max-height: ${({ maxHeight }) => maxHeight};\n`;\n\nexport const ModalHeader = styled.header`\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid #dadce3;\n padding: var(--spacement-medium);\n`;\n\nexport const ModalTitle = styled.div`\n font-style: normal;\n font-weight: normal;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: 0.0075em;\n color: var(--neutral-4);\n`;\n\nexport const ModalButtonClose = styled.button`\n outline: none;\n cursor: pointer;\n\n :hover {\n opacity: 0.7;\n }\n`;\n\ninterface ModalContentWrapperProps {\n overflowY?: string;\n maxHeight?: string;\n}\n\nexport const ModalContentWrapper = styled.div<ModalContentWrapperProps>`\n width: 100%;\n overflow-y: ${({ overflowY }) => overflowY};\n max-height: ${({ maxHeight }) => maxHeight};\n padding: var(--spacement-medium);\n`;\n\nexport const ModalFooterWrapper = styled.div`\n padding: var(--spacement-medium);\n background: var(--neutral-0);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--spacement-medium);\n`;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalFooterWrapper } from './styles';\n\ninterface ModalFooterProps {\n children: ReactNode;\n}\n\nconst ModalFooter: React.FC<ModalFooterProps> = ({ children, ...rest }) => {\n return <ModalFooterWrapper {...rest}>{children}</ModalFooterWrapper>;\n};\n\nModalFooter.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ModalFooter;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalContentWrapper } from './styles';\n\ninterface ModalContentProps {\n children: ReactNode;\n maxHeight?: string;\n overflowY?: string;\n}\n\nconst ModalContent: React.FC<ModalContentProps> = ({ children, maxHeight = 'max-content', overflowY = 'initial', ...rest }) => {\n return (\n <ModalContentWrapper maxHeight={maxHeight} overflowY={overflowY} {...rest}>\n {children}\n </ModalContentWrapper>\n );\n};\n\nModalContent.propTypes = {\n children: PropTypes.node.isRequired,\n maxHeight: PropTypes.string,\n overflowY: PropTypes.string,\n};\n\nexport default ModalContent;\n","import React, { useEffect, useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { MdClose } from 'react-icons/md';\n\nimport * as S from './styles';\nimport ModalFooter from './ModalFooter';\nimport ModalContent from './ModalContent';\nimport ModalHeader from './ModalHeader';\nimport ModalTitle from './ModalTitle';\nimport ModalButtonClose from './ModalButtonClose';\n\ninterface ModalProps {\n isOpen: boolean;\n style?: React.CSSProperties;\n maxWidth?: string;\n maxHeight?: string;\n className?: string;\n title?: string | React.ReactElement | React.ComponentType;\n children: React.ReactNode;\n onClose?: () => void;\n contentStyle?: React.CSSProperties;\n isFixed?: boolean;\n zIndex?: number;\n}\n\nconst Modal: React.FC<ModalProps> = ({\n isOpen,\n style,\n maxWidth,\n maxHeight,\n className,\n title,\n children,\n onClose,\n contentStyle,\n isFixed,\n zIndex,\n}) => {\n const modalRef = useRef<HTMLDivElement>(null);\n\n const handleKeyUp = useCallback(\n (e: KeyboardEvent) => {\n const keys: { [key: number]: () => void } = {\n // ESC Key\n 27: () => {\n e.preventDefault();\n if (!isFixed && onClose) {\n onClose();\n }\n window.removeEventListener('keyup', handleKeyUp, false);\n },\n };\n\n if (keys[e.keyCode] && isOpen) {\n keys[e.keyCode]();\n }\n },\n [onClose, isOpen, isFixed]\n );\n\n const handleOutsideClick = useCallback(\n (e: MouseEvent) => {\n if (modalRef.current && modalRef.current.parentNode === e.target) {\n if (!isFixed && onClose) {\n onClose();\n }\n document.removeEventListener('click', handleOutsideClick, false);\n }\n },\n [onClose, isFixed]\n );\n\n useEffect(() => {\n window.addEventListener('keyup', handleKeyUp, false);\n document.addEventListener('click', handleOutsideClick, false);\n\n return () => {\n window.removeEventListener('keyup', handleKeyUp, false);\n document.removeEventListener('click', handleOutsideClick, false);\n };\n }, [handleKeyUp, handleOutsideClick]);\n\n return (\n <S.FullScreen isFixed={isFixed ? 1 : 0} isOpen={isOpen ? 1 : 0} zIndex={zIndex ?? 0}>\n <S.Modal ref={modalRef} style={style} maxWidth={maxWidth} className={className}>\n <S.ModalContainer className=\"styleOverlay\" maxHeight={maxHeight} style={contentStyle}>\n <S.ModalHeader>\n <S.ModalTitle>{String(title)}</S.ModalTitle>\n <S.ModalButtonClose type=\"button\" onClick={onClose}>\n <MdClose color=\"#5A5D68\" size={16} />\n </S.ModalButtonClose>\n </S.ModalHeader>\n {children}\n </S.ModalContainer>\n </S.Modal>\n </S.FullScreen>\n );\n};\n\nModal.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.string,\n PropTypes.func,\n ]),\n children: PropTypes.node.isRequired,\n onClose: PropTypes.func,\n style: PropTypes.objectOf(PropTypes.any),\n contentStyle: PropTypes.objectOf(PropTypes.any),\n className: PropTypes.string,\n maxWidth: PropTypes.string,\n maxHeight: PropTypes.string,\n isFixed: PropTypes.bool,\n zIndex: PropTypes.number,\n};\n\nModal.defaultProps = {\n title: '',\n style: {},\n contentStyle: {},\n className: '',\n maxWidth: '360px',\n maxHeight: 'max-content',\n isFixed: false,\n onClose: () => {},\n zIndex: 9999,\n};\n\nexport { ModalHeader, ModalTitle, ModalButtonClose, ModalContent, ModalFooter };\nexport default Modal;\n","import styled from 'styled-components';\n\ninterface ContainerProps {\n hasBorder?: boolean;\n backgroundColor?: string;\n backgroundIcon?: string;\n}\n\nexport const Container = styled.div<ContainerProps>`\n width: 100%;\n display: flex;\n justify-content: center;\n padding: 24px 0;\n height: 193px;\n\n background: ${({ hasBorder }) =>\n hasBorder &&\n `linear-gradient(\n to right,\n #dadce3 50%,\n rgba(255, 255, 255, 0) 0%\n ),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, #dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%)`};\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: 40px 1px, 1px 40px;\n background-color: ${({ backgroundColor }) => backgroundColor};\n\n & .content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n & > .icon {\n background-color: ${({ backgroundIcon }) => backgroundIcon};\n border-radius: 16px;\n width: 145px;\n height: 145px;\n\n display: flex;\n justify-content: center;\n\n & svg {\n width: 100%;\n height: 70%;\n margin: 20px;\n }\n }\n\n & .description {\n max-width: 600px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 8px 0 8px 24px;\n\n .button-add {\n cursor: pointer;\n }\n\n .start-icon {\n display: flex;\n align-items: center;\n }\n }\n }\n`;\n","import React, { FC, ReactElement } from 'react';\nimport PropTypes from 'prop-types';\nimport * as S from './styles';\n\ninterface EmptyStateProps {\n icon?: string | ReactElement;\n title?: string;\n description?: string;\n activeButton?: boolean;\n iconButton?: ReactElement;\n descriptionButton?: string;\n widthButton?: string;\n button?: ReactElement;\n backgroundIcon?: string;\n backgroundColor?: string;\n hasBorder?: boolean;\n}\n\nconst EmptyState: FC<EmptyStateProps> = ({\n icon,\n title,\n description,\n activeButton,\n iconButton,\n descriptionButton,\n widthButton,\n button,\n backgroundIcon,\n backgroundColor,\n hasBorder,\n ...rest\n}) => {\n return (\n <S.Container\n backgroundIcon={backgroundIcon}\n backgroundColor={backgroundColor}\n hasBorder={hasBorder}\n {...rest}\n >\n <div className=\"content\">\n <div className=\"icon\">\n {icon}\n </div>\n <div className=\"description\">\n <h5> {title}</h5>\n\n <p>{description}</p>\n\n {activeButton ? (\n <button>\n {descriptionButton}\n </button>\n ) : null}\n\n {button}\n </div>\n </div>\n </S.Container>\n );\n};\n\nEmptyState.propTypes = {\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n title: PropTypes.string,\n description: PropTypes.string,\n activeButton: PropTypes.bool,\n iconButton: PropTypes.element,\n descriptionButton: PropTypes.string,\n widthButton: PropTypes.string,\n button: PropTypes.element,\n backgroundIcon: PropTypes.string,\n backgroundColor: PropTypes.string,\n hasBorder: PropTypes.bool,\n};\n\nEmptyState.defaultProps = {\n icon: '',\n title: '',\n description: '',\n activeButton: false,\n descriptionButton: '',\n widthButton: '140px',\n backgroundIcon: 'var(--neutral-0)',\n backgroundColor: 'var(--absolute-white)',\n hasBorder: true,\n};\n\nexport default EmptyState;\n","import styled from 'styled-components';\n\nexport const MultiSelectWrapper = styled.div`\n width: 200px;\n`;\n\nexport const SelectBox = styled.div`\n position: relative;\n\n select {\n width: 100%;\n font-weight: bold;\n }\n`;\n\nexport const OverSelect = styled.div`\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n`;\n\nexport const Checkboxes = styled.div`\n display: none;\n border: 1px #dadada solid;\n`;\n\nexport const CheckboxLabel = styled.label`\n display: block;\n\n &:hover {\n background-color: #1e90ff;\n }\n`;\n","import React, { useState } from 'react';\nimport * as S from './styles';\n\ninterface Option {\n label: string;\n value: string;\n}\n\ninterface MultiSelectProps {\n options: Option[];\n presset: string[];\n setPresset: React.Dispatch<React.SetStateAction<string[]>>;\n}\n\nconst MultiSelect: React.FC<MultiSelectProps> = ({ options, presset, setPresset }) => {\n const [expanded, setExpanded] = useState(false);\n\n const handleCheckboxChange = (value: string) => {\n setPresset(prevPresset => {\n if (prevPresset.includes(value)) {\n return prevPresset.filter(val => val !== value);\n } else {\n return [...prevPresset, value];\n }\n });\n }\n\n const showCheckboxes = () => {\n if (!expanded) {\n setExpanded(true);\n } else {\n setExpanded(false);\n }\n }\n\n return (\n <form>\n <S.MultiSelectWrapper>\n <S.SelectBox onClick={showCheckboxes}>\n <select>\n <option>Select an option</option>\n </select>\n <S.OverSelect />\n </S.SelectBox>\n <S.Checkboxes style={{ display: expanded ? 'block' : 'none' }}>\n {options.map((option, index) => (\n <S.CheckboxLabel key={index} htmlFor={option.value}>\n <input\n type=\"checkbox\"\n id={option.value}\n checked={presset.includes(option.value)}\n onChange={() => handleCheckboxChange(option.value)}\n />\n {option.label}\n </S.CheckboxLabel>\n ))}\n </S.Checkboxes>\n </S.MultiSelectWrapper>\n </form>\n );\n}\n\nexport default MultiSelect;\n","import styled from 'styled-components';\n\ninterface ContainerProps {\n isDragAccept?: boolean;\n isDragReject?: boolean;\n isDragActive?: boolean;\n}\n\nconst getColor = (props: ContainerProps) => {\n if (props.isDragAccept) {\n return '#6690ff';\n }\n if (props.isDragReject) {\n return '#e18976';\n }\n if (props.isDragActive) {\n return '#6690ff';\n }\n return '#979aa5';\n};\n\nexport const Container = styled.div<ContainerProps>`\n background-color: #f3f5f9;\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n padding: 20px;\n border-width: 2px;\n border-radius: 4px;\n border-color: var(${(props) => getColor(props)});\n border-style: dashed;\n color: #5a5d68;\n outline: none;\n transition: border 0.24s ease-in-out;\n\n & > span {\n margin: 8px 10px 0 0;\n display: flex;\n }\n\n button {\n padding: 8px 16px 8px 16px;\n border-radius: 4px;\n border: 2px #102693 solid;\n margin-top: 10px;\n }\n`;\n\nexport const ListFiles = styled.div`\n &.horizontal-itens {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n & button {\n margin: 4px;\n white-space: nowrap;\n }\n\n .tag-file {\n display: flex;\n gap: 8px;\n padding: 10px 24px !important;\n color: #102693 !important;\n font-size: 14px;\n letter-spacing: 0px;\n }\n\n .tag-icon {\n cursor: pointer;\n }\n }\n`;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { getLanguage } from '../../../../utils/getLanguage'\nimport { useDropzone, FileRejection } from 'react-dropzone';\nimport PropTypes from 'prop-types';\n\nimport { Container} from './styles';\n\ninterface FileProperties {\n id: number;\n lastModified: number;\n lastModifiedDate: Date;\n name: string;\n size: number;\n type: string;\n}\n\ninterface AreaUploadProps {\n formatFile?: string;\n multipleFile?: boolean;\n initialFiles?: File[];\n removeItem?: (file: FileProperties) => void;\n setFile?: (file: { content: ArrayBuffer | string; properties: File }) => void;\n file: string | undefined;\n onChange?: (files: File[]) => void;\n hasListFiles?: boolean;\n}\n\nconst AreaUpload: React.FC<AreaUploadProps> = ({\n formatFile = 'application/pdf',\n multipleFile = false,\n initialFiles = [],\n setFile = () => {},\n file = '',\n onChange = () => {},\n}) => {\n const [myFiles, setMyFiles] = useState<File[]>([]);\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setMyFiles([...initialFiles, ...myFiles]);\n }, []);\n\n const onDrop = useCallback(\n (acceptedFiles: File[], fileRejections: FileRejection[]) => {\n if (fileRejections && fileRejections.length > 0) {\n console.error('Arquivos rejeitados:', fileRejections);\n }\n\n onChange(acceptedFiles);\n\n const files = [...myFiles, ...acceptedFiles];\n const filesWithId = files.map((item, index) => ({\n id: index + 1,\n lastModified: item.lastModified,\n name: item.name,\n size: item.size,\n type: item.type,\n }));\n setMyFiles(filesWithId as unknown as File[]);\n\n acceptedFiles.forEach((file) => {\n const reader = new FileReader();\n\n reader.onload = () => {\n const binaryStr = reader.result;\n setFile({ content: binaryStr as ArrayBuffer, properties: file });\n };\n reader.readAsArrayBuffer(file);\n });\n },\n [myFiles]\n );\n\n const {\n getRootProps,\n getInputProps,\n open,\n isDragActive,\n isDragAccept,\n isDragReject,\n } = useDropzone({\n accept: formatFile as any,\n noClick: true,\n noKeyboard: true,\n multiple: multipleFile,\n onDrop,\n });\n\n return (\n <>\n {console.log('!!file: ', !!file)}\n {console.log('file: ', file)}\n {(multipleFile || myFiles?.length === 0) || !!file ? (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <input {...getInputProps()} />\n\n <span>\n <p>\n {t.fileArea.modal.descriptionUpload}\n </p>\n </span>\n <button type=\"button\" onClick={open}>\n {t.fileArea.modal.chooseFile}\n </button>\n </Container>\n ) : (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <p>{file}</p>\n </Container>\n )}\n </>\n );\n};\n\nAreaUpload.propTypes = {\n formatFile: PropTypes.string,\n multipleFile: PropTypes.bool,\n initialFiles: PropTypes.arrayOf(PropTypes.object as any),\n removeItem: PropTypes.func,\n setFile: PropTypes.func,\n onChange: PropTypes.func,\n hasListFiles: PropTypes.bool,\n};\n\nAreaUpload.defaultProps = {\n formatFile: 'application/json',\n multipleFile: false,\n initialFiles: [],\n removeItem: () => {},\n setFile: () => {},\n onChange: () => {},\n hasListFiles: true,\n};\n\nexport default AreaUpload;\n","import axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'http://localhost:5000';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","import React, { createContext, useContext, useEffect, useState } from 'react';\nimport api from '../service/Api';\n\ninterface Props {\n id: string;\n language: \"en\" | \"pt-br\" | \"es\";\n propTags: { tags: [] }\n personas: [{ name: string, description: string }]\n children?: React.ReactNode;\n}\n\ninterface SharedPropsContextType {\n props: Props;\n}\n\nconst SharedPropsContext = createContext<SharedPropsContextType | undefined>(undefined);\n\nexport const useSharedProps = () => {\n const context = useContext(SharedPropsContext);\n if (!context) {\n throw new Error('useSharedProps deve ser usado dentro de um SharedPropsProvider');\n }\n return context.props;\n};\n\nexport const SharedPropsProvider: React.FC<Props> = ({ children, ...props }) => {\n const { id } = props;\n const [tags, setTags] = useState<any>(null);\n const [personas, setPersonas] = useState<any>(null);\n\n useEffect(() => {\n const fetchData = async () => {\n try {\n const { data } = await api.get(`/tags/${id}`);\n\n if (data) {\n setTags(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n const personas = async () => {\n try {\n const { data } = await api.get(`/personas`);\n\n if (data) {\n setPersonas(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n fetchData();\n personas();\n }, [id]);\n\n const sharedProps = {\n ...props,\n propTags: tags,\n personas,\n };\n\n return (\n <SharedPropsContext.Provider value={{ props: sharedProps }}>\n {children}\n </SharedPropsContext.Provider>\n );\n};\n","const Types = {\n GET_FILES_REQUEST: 'GET_FILES_REQUEST',\n GET_FILES_SUCCESS: 'GET_FILES_SUCCESS',\n DELETE_FILES_REQUEST: 'DELETE_FILES_REQUEST',\n DELETE_FILES_SUCCESS: 'DELETE_FILES_SUCCESS',\n UPLOAD_FILES_REQUEST: 'UPLOAD_FILES_REQUEST',\n UPLOAD_FILES_SUCCESS: 'UPLOAD_FILES_SUCCESS',\n TEST_REQUEST: 'TEST_REQUEST',\n TEST_SUCCESS: 'TEST_SUCCESS',\n LOADING_START: 'LOADING_START',\n LOADING_FINISH: 'LOADING_FINISH',\n CHANGING_START: 'CHANGING_START',\n CHANGING_FINISH: 'CHANGING_FINISH',\n NETWORK_ONLINE: 'NETWORK_ONLINE',\n NETWORK_OFFLINE: 'NETWORK_OFFLINE',\n};\n\nexport default Types;\n","import types from './types'\n\nexport const getFilesAction = (id: string) => {\n return {\n type: types.GET_FILES_REQUEST,\n payload: { id }\n }\n}\n\nexport const getFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.GET_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const deleteFilesAction = (name: string, id: string, language: string) => {\n return {\n type: types.DELETE_FILES_REQUEST,\n payload: { name, id, language }\n }\n}\n\nexport const deleteFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.DELETE_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const uploadFilesAction = (file: any, id: string, pressets: string[], language: string) => {\n return {\n type: types.UPLOAD_FILES_REQUEST,\n payload: { file, id, pressets, language }\n }\n}\n\nexport const uploadFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.UPLOAD_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const testAction = (question: string, profile: string, presset: string, files_directory: string) => {\n return {\n type: types.TEST_REQUEST,\n payload: { question, profile, presset, files_directory }\n }\n}\n\nexport const testActionSuccess = ({ message }: any) => {\n return {\n type: types.TEST_SUCCESS,\n payload: { message }\n }\n}\n\nexport const commonLoadingStart = () => ({\n type: types.LOADING_START,\n });\n \n export const commonLoadingFinish = () => ({\n type: types.LOADING_FINISH,\n });\n \n export const commonChangingStart = () => ({\n type: types.CHANGING_START,\n });\n \n export const commonChangingFinish = () => ({\n type: types.CHANGING_FINISH,\n });\n \n export const commonNetworkOnline = () => ({\n type: types.NETWORK_ONLINE,\n });\n \n export const commonNetworkOffline = () => ({\n type: types.NETWORK_OFFLINE,\n });","import React, { useEffect, useState} from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport { FaUpload, FaList, FaPlus } from 'react-icons/fa';\n\nimport type { FileData } from '../../interface/FileData'\n\nimport { getLanguage } from '../../utils/getLanguage'\n\nimport * as S from './styles';\nimport Table from './components/Table';\nimport Search from './components/Search';\nimport Modal from './components/Modal'\nimport ModalFooter from './components/Modal/ModalFooter'\nimport ModalContent from './components/Modal/ModalContent'\nimport EmptyState from '../EmptyState';\nimport MultiSelect from '../MultiSelect';\nimport AreaUpload from './components/AreaUpload';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { deleteFilesAction, getFilesAction, uploadFilesAction } from '../../store/modules/actions';\n\nexport const FileArea = () => {\n const { id, language, propTags, personas } = useSharedProps();\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const [uploadFile, setUploadFile] = useState<{ content: ArrayBuffer | string; properties: File }>();\n const [modal, setModal] = useState(false)\n const [modalDelete, setModalDelete] = useState(false)\n const [fileDelete, setFileDelete] = useState('')\n const [presset, setPresset] = useState<string[]>([]);\n const t = getLanguage(language)\n const dispatch = useDispatch();\n const initFiles = useSelector((state: any) => state.files);\n const isLoading = useSelector((state: any) => state.isLoading);\n const tags = propTags ? propTags.tags : [];\n\n useEffect(() => {\n dispatch(getFilesAction(id))\n }, [id])\n\n useEffect(() => {\n if(!!initFiles){\n setFiles(initFiles)\n setInitialFiles(initFiles)\n }\n }, [initFiles])\n\n const optionsPresset = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n\n const pressetTag = (tags: string) => {\n const tagsSplit = tags.split(',');\n let html = '';\n\n html += tagsSplit.map(tag => {\n return `<p class='tag'>${tag}</p>`;\n }).join('');\n\n return html;\n }\n\n const handleOpenModal = () => {\n if(modal){\n setUploadFile(undefined)\n setPresset([])\n }\n setModal(!modal)\n }\n\n const handleOpenModalDelete = (name: string) => {\n setFileDelete(name + '.pdf')\n setModalDelete(!modalDelete)\n }\n\n const deleteFile = () => {\n dispatch(deleteFilesAction(fileDelete, id, language))\n setModalDelete(false)\n }\n\n const handleUploadFile = () => {\n console.log('presset: ', presset)\n dispatch(uploadFilesAction(uploadFile, id, presset, language))\n setModal(false)\n setUploadFile(undefined)\n setPresset([])\n };\n\n const renderFiles = () => { \n return (\n <S.Container isLoading={isLoading}>\n <div id='loading' />\n <S.Header>\n <div className='infos'>\n <h2>{t.files}</h2>\n <p>{t.fileArea.description}</p>\n </div>\n <div className='actions'>\n <Search placeholder={t.fileArea.search} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button onClick={handleOpenModal}><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\n {\n files.length === 0 ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.fileArea.emptyState.title}\n description={t.fileArea.emptyState.description}\n activeButton\n iconButton={<FaPlus style={{ width: '15px', height: '15px' }} />}\n descriptionButton={t.fileArea.modal.chooseFile}\n widthButton=\"230px\"\n />\n ) : <Table>\n <thead>\n <tr>\n <th className=\"th_file_name\">\n {t.fileArea.fileName}\n </th>\n <th className=\"th_pressets\">\n {t.fileArea.presset}\n </th>\n <th className=\"th_actions\">\n {t.fileArea.actions}\n </th>\n </tr>\n </thead>\n\n <tbody>\n {files.map((object) => (\n <tr>\n <td>{object.name}</td>\n <td className='tags' dangerouslySetInnerHTML={{ __html: pressetTag(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete' onClick={() => handleOpenModalDelete(object.name)}>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n }\n <Modal\n isOpen={modal}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={handleOpenModal}\n title={t.fileArea.modal.uploadFile}\n >\n <ModalContent>\n <div className='choose-file'>\n <AreaUpload\n setFile={setUploadFile}\n file={uploadFile?.properties.name}\n />\n </div>\n <div className='presset'>\n <p>Presset</p>\n <MultiSelect options={optionsPresset} presset={presset} setPresset={setPresset} />\n </div> \n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={handleOpenModal}>\n {t.buttons.cancel}\n </button>\n <button onClick={() => handleUploadFile()} className='button send' type=\"submit\" form=\"form-tts\">\n {t.buttons.send}\n </button>\n </ModalFooter>\n \n </Modal>\n <Modal\n isOpen={modalDelete}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={() => handleOpenModalDelete('')}\n title={t.fileArea.modal.deleteFileTitle}\n >\n <ModalContent>\n <p id='warning'>{t.fileArea.modal.deleteFile}</p>\n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={() => handleOpenModalDelete('')}>\n {t.buttons.cancel}\n </button>\n <button className='button delete' type=\"submit\" form=\"form-tts\" onClick={deleteFile}>\n {t.buttons.delete}\n </button>\n </ModalFooter>\n </Modal>\n </S.Container>\n );\n }\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n {renderFiles()}\n </S.Container>\n </SharedPropsProvider>\n );\n};\n","import styled, { css } from 'styled-components';\n\ninterface ContainerProps {\n isLoading?: boolean;\n}\n\n\nexport const Container = styled.div<ContainerProps>`\n ${(props) =>\n props.isLoading &&\n css`\n #loading {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgb(151,154,165, 0.7);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 9999;\n }\n\n #loading::after {\n content: \"\";\n border: 4px solid #f3f3f3; /* Cor do símbolo de carregamento */\n border-top: 4px solid #3498db; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 30px;\n height: 30px;\n animation: spin 1s linear infinite;\n }\n\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n `}\n\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n`\n\nexport const Inputs = styled.div`\n display: flex;\n justify-content: space-between;\n margin-bottom: 10px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n width: 190px;\n height: 40px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n width: 23px;\n height: 23px;\n }\n }\n`\n\nexport const Result = styled.div`\n display: flex;\n justify-content: left;\n background: #F3F5F9;\n padding: 15px;\n border-radius: 5px;\n margin-top: 15px;\n\n .text{\n margin-left: 5px;\n font-size: 14px;\n line-height: 1.5;\n }\n\n .icon {\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: 5px;\n\n svg {\n width: 35px;\n height: 35px;\n }\n }\n\n`","import styled from 'styled-components';\n\nexport const Container = styled.div`\n position: relative;\n width: 50%;\n margin-right: 5px;\n select {\n padding: 12px;\n border-radius: 4px;\n border: 1px solid #979AA5;\n width: 100%;\n height: 40px;\n \n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n option {\n background: white;\n font-size: 14px;\n color: #5a5d68;\n }\n\n option:checked, option:hover {\n background: #6690ff;\n font-size: 14px;\n color: white;\n }\n }\n`;\n","import React, { useState } from 'react';\nimport * as S from './styles';\n\ninterface SelectOption {\n value: string | number;\n label: string;\n}\n\ninterface SelectProps {\n options: SelectOption[];\n onSelect: (value: string) => void;\n placeholder?: string;\n}\n\nconst Select: React.FC<SelectProps> = ({ options, onSelect, placeholder }) => {\n const [selectedValue, setSelectedValue] = useState<string | number>('');\n\n const handleSelectChange = (event: React.ChangeEvent<HTMLSelectElement>) => {\n const selectedOption = event.target.value;\n setSelectedValue(selectedOption);\n onSelect(selectedOption);\n };\n\n return (\n <S.Container>\n <select value={selectedValue} onChange={handleSelectChange}>\n <option value=\"\" disabled hidden>\n {placeholder}\n </option>\n {options.map(option => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n </S.Container>\n );\n};\n\nexport default Select;\n","import styled from 'styled-components';\nimport { FaMicrophone } from 'react-icons/fa';\n\nexport const Container = styled.div`\n position: relative;\n width: 100%;\n margin-right: 5px;\n`;\n\nexport const StyledInput = styled.input`\n padding-left: 10px;\n padding-right: 40px;\n border-radius: 5px;\n border: 1px solid #ccc;\n height: 40px;\n width: 100%;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n`;\n\nexport const RecordAudioButton = styled.div`\n position: absolute;\n top: 10px;\n right: 10px;\n cursor: pointer;\n`;\n\nexport const StyledMicrophoneIcon = styled(FaMicrophone)`\n pointer-events: none;\n`;\n","import React from 'react';\nimport * as S from './styles';\n\ninterface InputTestProps {\n placeholder: string;\n onChange: (value: string) => void;\n onRecordAudio: () => void;\n}\n\nconst InputTest: React.FC<InputTestProps> = ({ placeholder, onChange, onRecordAudio }) => {\n return (\n <S.Container>\n <S.StyledInput\n type=\"text\"\n onChange={(e: any) => onChange(e.target.value)}\n placeholder={placeholder}\n />\n <S.RecordAudioButton onClick={onRecordAudio}>\n <S.StyledMicrophoneIcon />\n </S.RecordAudioButton>\n </S.Container>\n );\n};\n\nexport default InputTest;\n","import React, { useState } from 'react';\nimport { getLanguage } from '../../utils/getLanguage'\nimport * as S from './styles';\nimport Select from '../Select'\nimport InputTest from './components/InputTest'\nimport { PiWaveformBold } from 'react-icons/pi';\nimport { FaList } from 'react-icons/fa';\nimport EmptyState from '../EmptyState';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { MdPerson2 } from \"react-icons/md\";\nimport { useDispatch, useSelector } from 'react-redux';\nimport { testAction } from '../../store/modules/actions';\n\nexport const TestArea = () => {\n const { id, language, personas, propTags } = useSharedProps();\n const t = getLanguage(language)\n const results = useSelector((state: any) => state.message);\n const isLoading = useSelector((state: any) => state.isLoading);\n const [search, setSearch] = useState('');\n const [profile, setProfile] = useState('');\n const [presset, setPresset] = useState('');\n const dispatch = useDispatch();\n const tags = propTags ? propTags.tags : [];\n\n const optionsPersona = personas.map(persona => {\n return { label: persona.name, value: persona.name }\n })\n\n const optionsPresset = tags.map(tag => {\n return { label: tag, value: tag }\n })\n\n const handleSelectPersona = (value: string) => {\n setProfile(value);\n };\n\n const handleSelectPresset = (value: string) => {\n setPresset(value);\n };\n\n const handleSearch = (value: string) => {\n setSearch(value);\n };\n\n const handleRecordAudio = () => {\n console.log('Iniciando gravação de áudio...');\n };\n\n const handleTest = () => {\n dispatch(testAction(search, profile, presset, id))\n };\n\n const returnTest = () => { \n return (\n <S.Container isLoading={isLoading}>\n <S.Header>\n <div className='infos'>\n <h2>{t.test}</h2>\n <p>{t.testArea.description}</p>\n </div>\n </S.Header>\n <S.Inputs>\n <InputTest placeholder={t.testArea.typeSentence} onChange={handleSearch} onRecordAudio={handleRecordAudio} />\n <Select placeholder={t.testArea.selectPersona} options={optionsPersona} onSelect={handleSelectPersona} />\n <Select placeholder={t.testArea.selectPresset} options={optionsPresset} onSelect={handleSelectPresset} />\n <button onClick={handleTest}><PiWaveformBold /> {t.buttons.test}</button>\n </S.Inputs>\n {\n !results ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.testArea.emptyState.title}\n description={t.testArea.emptyState.description}\n activeButton={false}\n />\n ) : <S.Result>\n <div className='icon'>\n <MdPerson2 />\n </div>\n <div className='text'>{results}</div>\n </S.Result>\n }\n </S.Container>\n )\n }\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n {returnTest()}\n </S.Container>\n </SharedPropsProvider>\n );\n};","import React, { useMemo, Suspense } from 'react';\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\nimport { getLanguage } from './utils/getLanguage'\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\n\nimport { SharedPropsProvider } from './contexts/SharedPropsProvider';\n\nexport const Leia = (props: Props) => {\n const match = useRouteMatch();\n const { pathname } = useLocation();\n const history = useHistory();\n\n const t = getLanguage(props.language)\n\n const activeTab = useMemo(() => {\n return pathname.split('/')[5] || 'files';\n }, [pathname]);\n\n return (\n <SharedPropsProvider propTags={{ tags: [] }} personas={[{name: '', description: ''}]} {...props}>\n <>\n <Tabs\n value={activeTab}\n onChange={(value) => history.push(`${match.url}/${value}`)}\n >\n <Tab value=\"files\">{t.files}</Tab>\n <Tab value=\"test\">{t.test}</Tab>\n </Tabs>\n <Suspense fallback={props.loading}>\n <SwitchRoute>\n <Route path={`${match.path}`} exact component={FileArea} />\n <Route path={`${match.path}/files`} component={FileArea} />\n <Route path={`${match.path}/test`} component={TestArea} />\n </SwitchRoute>\n </Suspense>\n </>\n </SharedPropsProvider>\n );\n};\n","import { produce } from 'immer';\nimport types from './types'\n\nconst INITIAL_STATE = {\n files: [],\n message: '',\n isLoading: false,\n isChanging: false,\n isOffline: true,\n}\n\nexport default function filesReducer(state = INITIAL_STATE, action: any) {\n return produce(state, (draft) => {\n switch (action.type) {\n case types.GET_FILES_SUCCESS:\n draft.files = action.payload.files;\n break;\n case types.DELETE_FILES_SUCCESS:\n draft.files = action.payload.files;\n break;\n case types.TEST_SUCCESS:\n draft.message = action.payload.message;\n break;\n case types.LOADING_START:\n draft.isLoading = true;\n break;\n case types.LOADING_FINISH:\n draft.isLoading = false;\n break;\n case types.CHANGING_START:\n draft.isChanging = true;\n break;\n case types.CHANGING_FINISH:\n draft.isChanging = false;\n break;\n case types.NETWORK_ONLINE:\n draft.isOffline = false;\n break;\n case types.NETWORK_OFFLINE:\n draft.isOffline = true;\n break;\n default:\n return action.payload;\n }\n });\n}\n","import React from 'react';\nimport { toast as reactToast } from 'react-toastify';\n\nimport { CustomContainerToast } from './styles';\n\ninterface CustomToastContentProps {\n title: String;\n description?: String;\n}\n\nconst CustomToastContent: React.FC<CustomToastContentProps> = ({\n title,\n description\n}) => {\n return (\n <>\n <div className=\"custom-toastify-content\">\n <strong className=\"custom-toastify-title\">{title}</strong>\n {description && (\n <p className=\"custom-toastify-description\">{description}</p>\n )}\n </div>\n </>\n );\n};\n\nconst toast = {\n default: ({ title, description }: CustomToastContentProps) =>\n reactToast(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n success: ({ title, description }: CustomToastContentProps) =>\n reactToast.success(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n error: ({ title, description }: CustomToastContentProps) =>\n reactToast.error(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n warn: ({ title, description }: CustomToastContentProps) =>\n reactToast.warn(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n};\n\nconst ContainerToast: React.FC = () => {\n return <CustomContainerToast autoClose={4000} />;\n};\n\nexport { ContainerToast, toast };\n","import { takeLatest, all, put, call } from 'redux-saga/effects';\nimport api from '../../service/Api'\nimport Types from './types'\nimport { getFilesActionSuccess, \n deleteFilesActionSuccess, \n testActionSuccess, \n uploadFilesActionSuccess, \n commonLoadingStart,\n commonLoadingFinish, } from './actions'\nimport { toast } from '../../components/CustomToast'\nimport { getLanguage } from '../../utils/getLanguage'\n\nexport function* getFilesSaga(action: any) {\n try {\n yield put(commonLoadingStart());\n const { id } = action.payload\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(getFilesActionSuccess({ files: data.files}));\n } catch (error) {\n console.log('-----------getFiles.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport function* deleteFilesSaga(action: any) {\n const t = getLanguage(action.payload.language)\n try {\n yield put(commonLoadingStart());\n const { id, name } = action.payload\n\n yield call(api.delete, `/delete/${id}/${name}`);\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(deleteFilesActionSuccess({ files: data.files, success: true }));\n } catch (error) {\n toast.error({title: t.toast.deleteFile.fail.title, description: t.toast.deleteFile.fail.description});\n console.log('-----------deleteFilesSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport function* testSaga(action: any) {\n try {\n yield put(commonLoadingStart());\n const { question, profile, presset, files_directory } = action.payload\n const { data } = yield call(api.post, `/ask`, { question, profile, tag: presset, files_directory });\n yield put(testActionSuccess({ message: data.message }));\n } catch (error) {\n console.log('-----------testSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport function* uploadFilesSaga(action: any) {\n const t = getLanguage(action.payload.language)\n try {\n yield put(commonLoadingStart());\n const { id, file, pressets } = action.payload;\n const tags = pressets.join(',');\n\n const blob = new Blob([file.content]);\n\n const formData = new FormData();\n formData.append('file', blob, file.properties.path);\n\n const queryParams = new URLSearchParams({ tags }).toString();\n\n yield call(api.post, `/upload/${id}?${queryParams}`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n } catch (error) {\n toast.error({title: t.toast.uploadFile.fail.title, description: t.toast.uploadFile.fail.description});\n console.log('-----------uploadFilesSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport default function* filesSagas() {\n yield all([\n takeLatest(Types.GET_FILES_REQUEST, getFilesSaga),\n takeLatest(Types.DELETE_FILES_REQUEST, deleteFilesSaga),\n takeLatest(Types.UPLOAD_FILES_REQUEST, uploadFilesSaga),\n takeLatest(Types.TEST_REQUEST, testSaga)\n ]);\n}\n","import { createStore, applyMiddleware } from 'redux';\nimport createSagaMiddleware from 'redux-saga';\nimport Reducer from './modules/reducer';\nimport Sagas from './modules/sagas';\n\nconst sagaMiddleware = createSagaMiddleware();\n\nconst store = createStore(Reducer, applyMiddleware(sagaMiddleware));\n\nsagaMiddleware.run(Sagas);\n\nexport default store;\n\n","import type { PropsWithChildren, ReactElement } from 'react';\nimport { Provider } from 'react-redux';\nimport React from 'react';\nimport { Leia } from './Leia';\nimport store from './store';\n\nexport type Props = PropsWithChildren<{\n id: string;\n activeTab: string;\n language: \"en\" | \"pt-br\" | \"es\";\n loading: ReactElement\n}>;\n\nexport function Code7(props: Props) {\n return <Provider store={store}>\n <Leia {...props} />\n </Provider>;\n}"],"names":["TabsPane","styled","ul","_templateObject","_taggedTemplateLiteralLoose","Tab","li","_templateObject2","_ref","active","children","rest","_objectWithoutPropertiesLoose","_excluded","React","S","className","cc","propTypes","PropTypes","oneOfType","string","element","node","isRequired","onChange","func","value","bool","defaultProps","Tabs","_ref2","childrenProp","_excluded2","Children","map","child","isValidElement","Array","isArray","_child$props","props","_child$props2","cloneElement","_child$props3","onClick","_child$props4","number","enTranslation","files","test","fileArea","description","fileName","presset","actions","search","fileUpload","emptyState","title","modal","descriptionUpload","chooseFile","uploadFile","deleteFileTitle","deleteFile","buttons","cancel","send","testArea","typeSentence","selectPersona","selectPresset","toast","success","fail","Test","ptTranslation","esTranslation","getLanguage","language","Container","div","isLoading","css","Header","_templateObject3","TableWrapper","Table","table","TableLoadingWrapper","SpinnerWrapper","span","color","Spinner","_ref$color","_ref$size","size","forwardRef","ref","_ref$isLoading","_ref$className","oneOf","SearchInput","placeholder","setFiles","initialFiles","searchName","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","normalizedFileName","name","includes","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FullScreen","isOpen","isFixed","_ref3","zIndex","Modal","_ref4","maxWidth","ModalContainer","_ref5","maxHeight","ModalHeader","header","_templateObject4","ModalTitle","_templateObject5","ModalButtonClose","button","_templateObject6","ModalContentWrapper","_templateObject7","_ref6","overflowY","_ref7","ModalFooterWrapper","_templateObject8","ModalFooter","ModalContent","_ref$maxHeight","_ref$overflowY","onClose","contentStyle","modalRef","useRef","handleKeyUp","useCallback","keys","_","preventDefault","window","removeEventListener","keyCode","handleOutsideClick","current","parentNode","document","useEffect","addEventListener","String","MdClose","objectOf","any","hasBorder","backgroundColor","backgroundIcon","EmptyState","icon","activeButton","iconButton","descriptionButton","widthButton","MultiSelectWrapper","SelectBox","OverSelect","Checkboxes","CheckboxLabel","label","MultiSelect","options","setPresset","_useState","useState","expanded","setExpanded","handleCheckboxChange","prevPresset","val","concat","showCheckboxes","display","option","index","key","htmlFor","id","checked","getColor","isDragAccept","isDragReject","isDragActive","AreaUpload","formatFile","_ref$formatFile","_ref$multipleFile","multipleFile","_ref$initialFiles","_ref$setFile","setFile","_ref$file","_ref$onChange","myFiles","setMyFiles","t","onDrop","acceptedFiles","fileRejections","length","console","error","filesWithId","item","lastModified","forEach","reader","FileReader","onload","binaryStr","result","content","properties","readAsArrayBuffer","_useDropzone","useDropzone","accept","noClick","noKeyboard","multiple","getRootProps","getInputProps","open","log","arrayOf","object","removeItem","hasListFiles","url","axios","defaults","baseURL","create","SharedPropsContext","createContext","undefined","useSharedProps","context","useContext","Error","SharedPropsProvider","tags","setTags","_useState2","personas","setPersonas","fetchData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$api$get","data","wrap","_callee$","_context","prev","next","api","get","sent","t0","stop","apply","arguments","_callee2","_yield$api$get2","_callee2$","_context2","sharedProps","_extends","propTags","Provider","Types","GET_FILES_REQUEST","GET_FILES_SUCCESS","DELETE_FILES_REQUEST","DELETE_FILES_SUCCESS","UPLOAD_FILES_REQUEST","UPLOAD_FILES_SUCCESS","TEST_REQUEST","TEST_SUCCESS","LOADING_START","LOADING_FINISH","CHANGING_START","CHANGING_FINISH","NETWORK_ONLINE","NETWORK_OFFLINE","getFilesAction","types","payload","getFilesActionSuccess","deleteFilesAction","deleteFilesActionSuccess","uploadFilesAction","pressets","uploadFilesActionSuccess","testAction","question","profile","files_directory","testActionSuccess","message","commonLoadingStart","commonLoadingFinish","FileArea","_useSharedProps","setInitialFiles","_useState3","setUploadFile","_useState4","setModal","_useState5","modalDelete","setModalDelete","_useState6","fileDelete","setFileDelete","_useState7","dispatch","useDispatch","initFiles","useSelector","state","optionsPresset","tag","pressetTag","tagsSplit","split","html","join","handleOpenModal","handleOpenModalDelete","handleUploadFile","renderFiles","Search","FaUpload","FaList","FaPlus","dangerouslySetInnerHTML","__html","form","Inputs","Result","Select","onSelect","selectedValue","setSelectedValue","handleSelectChange","event","selectedOption","disabled","hidden","StyledInput","input","RecordAudioButton","StyledMicrophoneIcon","FaMicrophone","InputTest","onRecordAudio","TestArea","results","setSearch","setProfile","optionsPersona","persona","handleSelectPersona","handleSelectPresset","handleSearch","handleRecordAudio","handleTest","returnTest","PiWaveformBold","MdPerson2","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","activeTab","useMemo","push","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","INITIAL_STATE","isChanging","isOffline","filesReducer","action","produce","draft","CustomToastContent","_default","reactToast","warn","getFilesSaga","_marked2","deleteFilesSaga","_marked3","testSaga","_marked4","uploadFilesSaga","_marked5","filesSagas","_yield$call","getFilesSaga$","put","call","finish","_marked","_action$payload","_yield$call2","deleteFilesSaga$","_action$payload2","_yield$call3","testSaga$","_context3","post","_action$payload3","blob","formData","queryParams","_yield$call4","uploadFilesSaga$","_context4","Blob","FormData","append","URLSearchParams","toString","headers","filesSagas$","_context5","all","takeLatest","sagaMiddleware","createSagaMiddleware","store","createStore","Reducer","applyMiddleware","run","Sagas","Code7"],"mappings":"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"}
1
+ {"version":3,"file":"code7-leia.cjs.development.js","sources":["../src/components/Tabs/styles.tsx","../src/components/Tabs/index.tsx","../src/utils/languages/en.ts","../src/utils/languages/pt-br.ts","../src/utils/languages/es.ts","../src/utils/getLanguage.tsx","../src/components/FileArea/styles.tsx","../src/components/FileArea/components/Table/styles.tsx","../src/components/FileArea/components/Spinner/styles.tsx","../src/components/FileArea/components/Spinner/index.tsx","../src/components/FileArea/components/Table/index.tsx","../src/components/FileArea/components/Search/index.tsx","../src/components/FileArea/components/Modal/styles.tsx","../src/components/FileArea/components/Modal/ModalFooter.tsx","../src/components/FileArea/components/Modal/ModalContent.tsx","../src/components/FileArea/components/Modal/index.tsx","../src/components/EmptyState/styles.tsx","../src/components/EmptyState/index.tsx","../src/components/MultiSelect/styles.tsx","../src/components/MultiSelect/index.tsx","../src/components/FileArea/components/AreaUpload/styles.tsx","../src/components/FileArea/components/AreaUpload/index.tsx","../src/service/Api.ts","../src/contexts/SharedPropsProvider.tsx","../src/store/modules/types.ts","../src/store/modules/actions.ts","../src/components/FileArea/index.tsx","../src/components/TestArea/styles.tsx","../src/components/Select/styles.tsx","../src/components/Select/index.tsx","../src/components/TestArea/components/InputTest/styles.tsx","../src/components/TestArea/components/InputTest/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../src/store/modules/reducer.ts","../src/components/CustomToast/index.tsx","../src/store/modules/sagas.ts","../src/store/index.ts","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { ReactNode } from 'react';\n\ninterface TabProps {\n children: ReactNode;\n}\n\ninterface OptionProps {\n children: ReactNode;\n onClick: () => void;\n}\n\nexport const TabsPane = styled.ul`\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n`;\n\nexport const Tab = styled.li<TabProps>`\n padding: 12px;\n color: var(--neutral-3);\n font-size: 0.875rem;\n font-weight: normal;\n position: relative;\n cursor: pointer;\n\n svg {\n fill: var(--neutral-3) !important;\n margin-left: 8px;\n }\n\n &.active {\n color: var(--primary-700-light);\n\n svg {\n fill: var(--primary-700-light) !important;\n }\n\n ::after {\n content: '';\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 2px;\n background-color: var(--primary-700-light);\n }\n }\n\n &:not(:last-child) {\n margin-right: 8px;\n }\n`;\n\nexport const DropdownContainer = styled.div`\n position: absolute;\n left: 0px;\n top: 40px;\n display: flex;\n flex-direction: column;\n\n background: #ffffff;\n\n border: 1px solid #979aa5;\n box-sizing: border-box;\n box-shadow: 0px 6px 12px -6px rgba(24, 39, 75, 0.12),\n 0px 8px 24px -4px rgba(24, 39, 75, 0.08);\n border-radius: 4px;\n padding: 8px;\n z-index: 2;\n`;\n\nexport const Option = styled.div<OptionProps>`\n padding: 8px;\n font-size: 14px;\n border-radius: 4px;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n &:hover {\n background-color: var(--primary-800-light);\n color: white;\n }\n`;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\nimport cc from 'classcat';\n\nimport * as S from './styles';\n\ninterface TabProps {\n children: ReactNode;\n active?: boolean;\n}\n\ninterface ITabsProps {\n children: ReactNode;\n value: string | number;\n onChange: (e: any) => void;\n active?: boolean;\n}\n\nexport const Tab = ({ active, children, ...rest }: TabProps) => {\n return (\n <S.Tab className={cc({ active })} {...rest}>\n {children}\n </S.Tab>\n );\n};\n\nTab.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element,\n PropTypes.node,\n ]).isRequired,\n onChange: PropTypes.func,\n value: PropTypes.string,\n active: PropTypes.bool,\n};\n\nTab.defaultProps = {\n onChange: () => {},\n value: '',\n active: false,\n};\n\nexport const Tabs = ({ children: childrenProp, value, onChange, ...rest }: ITabsProps) => {\n const children = React.Children.map(childrenProp, (child) => {\n if (!React.isValidElement(child)) {\n return null;\n }\n\n if (Array.isArray(child.props?.children)) {\n return React.cloneElement(child as React.ReactElement<any>, {\n active: child.props?.value === value,\n value,\n onChange,\n });\n }\n\n return React.cloneElement(child as React.ReactElement<any>, {\n active: child.props?.value === value,\n onClick: () => onChange(child.props?.value),\n });\n });\n\n return <S.TabsPane {...rest}>{children}</S.TabsPane>;\n};\n\nTabs.propTypes = {\n children: PropTypes.node.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n onChange: PropTypes.func.isRequired,\n};\n","import { Language } from \"../../interface/Language\";\n\nexport const enTranslation: Language = {\n files: 'Files',\n test: 'Test',\n fileArea: {\n description: 'Manage your files with ease! Add new ones and delete old ones as desired.',\n fileName: 'File name',\n presset: 'Presset',\n actions: 'Actions',\n search: 'Search',\n fileUpload: 'File upload',\n emptyState: {\n title: 'No data',\n description: 'No files uploaded yet. Start by adding your documents now!',\n },\n modal: {\n descriptionUpload: 'Drag and drop files here or',\n chooseFile: 'Choose a file',\n uploadFile: 'Upload a file',\n deleteFileTitle: 'Delete a file',\n deleteFile: 'Important! By deleting this file, you will lose all its information and will not be able to recover it.'\n },\n },\n buttons: {\n cancel: 'Cancel',\n send: 'Send',\n delete: 'Delete',\n test: 'Test',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Type a sentence',\n selectPersona: 'Select a Persona',\n selectPresset: 'Select a presset',\n emptyState: {\n title: 'No data for analysis',\n description: 'Do a search, click the \"Test\" button.',\n },\n },\n toast: {\n deleteFile: {\n success: {\n title: 'Success',\n description: 'File deleted successfully!'\n },\n fail: {\n title: 'Failure',\n description: 'Error deleting the file!'\n }\n },\n uploadFile: {\n success: {\n title: 'Success',\n description: 'File uploaded successfully!'\n },\n fail: {\n title: 'Failure',\n description: 'Error uploading the file!'\n }\n },\n Test: {\n fail: {\n title: 'Failure',\n description: 'Error testing Le-IA'\n }\n }\n }\n};","import { Language } from \"../../interface/Language\";\n\nexport const ptTranslation: Language = {\n files: 'Arquivos',\n test: 'Teste',\n fileArea: {\n description: 'Gerencie seus arquivos com facilidade! Adicione novos e exclua os antigos conforme desejar.',\n fileName: 'Nome do arquivo',\n presset: 'Predefinição',\n actions: 'Ações',\n search: 'Pesquisar',\n fileUpload: 'Enviar arquivo',\n emptyState: {\n title: 'Sem dados',\n description: 'Nenhum arquivo enviado ainda. Comece adicionando seus documentos agora!',\n },\n modal: {\n descriptionUpload: 'Arraste e solte os arquivos aqui ou',\n chooseFile: 'Escolha um arquivo',\n uploadFile: 'Enviar um arquivo',\n deleteFileTitle: 'Excluir um arquivo',\n deleteFile: 'Importante! Ao excluir este arquivo, você perderá todas as suas informações e não poderá recuperá-las.'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Excluir',\n test: 'Teste',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Digite uma frase',\n selectPersona: 'Selecione uma Persona',\n selectPresset: 'Selecione uma predefinição',\n emptyState: {\n title: 'Sem dados para análise',\n description: 'Faça uma pesquisa, clique no botão \"Teste\".',\n },\n },\n toast: {\n deleteFile: {\n success: {\n title: 'Sucesso',\n description: 'Arquivo excluído com sucesso!'\n },\n fail: {\n title: 'Falha',\n description: 'Erro ao excluir o arquivo!'\n }\n },\n uploadFile: {\n success: {\n title: 'Sucesso',\n description: 'Arquivo enviado com sucesso!'\n },\n fail: {\n title: 'Falha',\n description: 'Erro ao enviar o arquivo!'\n }\n },\n Test: {\n fail: {\n title: 'Falha',\n description: 'Erro ao testar Le-IA'\n }\n }\n }\n};\n","import { Language } from \"../../interface/Language\";\n\nexport const esTranslation: Language = {\n files: 'Archivos',\n test: 'Prueba',\n fileArea: {\n description: '¡Administre sus archivos fácilmente! Agregue nuevos y elimine los antiguos según desee.',\n fileName: 'Nombre del archivo',\n presset: 'Preconfiguración',\n actions: 'Acciones',\n search: 'Buscar',\n fileUpload: 'Subir archivo',\n emptyState: {\n title: 'Sin datos',\n description: 'Aún no se han subido archivos. ¡Comience agregando sus documentos ahora!',\n },\n modal: {\n descriptionUpload: 'Arrastre y suelte los archivos aquí o',\n chooseFile: 'Elegir un archivo',\n uploadFile: 'Subir un archivo',\n deleteFileTitle: 'Eliminar un archivo',\n deleteFile: '¡Importante! Al eliminar este archivo, perderá toda su información y no podrá recuperarla.'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Eliminar',\n test: 'Prueba',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Escribe una oración',\n selectPersona: 'Seleccionar una Persona',\n selectPresset: 'Seleccionar una preconfiguración',\n emptyState: {\n title: 'Sin datos para el análisis',\n description: 'Realice una búsqueda, haga clic en el botón \"Prueba\".',\n },\n },\n toast: {\n deleteFile: {\n success: {\n title: 'Éxito',\n description: '¡Archivo eliminado correctamente!'\n },\n fail: {\n title: 'Error',\n description: 'Error al eliminar el archivo!'\n }\n },\n uploadFile: {\n success: {\n title: 'Éxito',\n description: '¡Archivo subido correctamente!'\n },\n fail: {\n title: 'Error',\n description: 'Error al subir el archivo!'\n }\n },\n Test: {\n fail: {\n title: 'Error',\n description: 'Error al probar Le-IA'\n }\n }\n }\n};\n","import { Language } from '../interface/Language';\nimport { enTranslation } from './languages/en';\nimport { ptTranslation } from './languages/pt-br';\nimport { esTranslation } from './languages/es';\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n switch (language) {\n case 'en':\n return enTranslation;\n case 'pt-br':\n return ptTranslation;\n case 'es':\n return esTranslation;\n default:\n return enTranslation;\n }\n};","import styled, { css } from 'styled-components';\n\ninterface ContainerProps {\n isLoading?: boolean;\n}\n\nexport const Container = styled.div<ContainerProps>`\n ${(props) =>\n props.isLoading &&\n css`\n #loading {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgb(151,154,165, 0.7);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 9999;\n }\n\n #loading::after {\n content: \"\";\n border: 4px solid #f3f3f3; /* Cor do símbolo de carregamento */\n border-top: 4px solid #3498db; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 30px;\n height: 30px;\n animation: spin 1s linear infinite;\n }\n\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n `}\n\n\n .tag {\n padding: 4px 8px 4px 8px;\n background: #C7F9ED;\n border-radius: 4px;\n }\n\n .tags {\n display: flex;\n justify-content: left;\n gap: 4px;\n }\n\n .divDelete {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n }\n\n .buttonDelete {\n color: #5b0a1f;\n background: #fae0d2;\n padding: 12px 20px;\n border-radius: 4px;\n }\n\n .buttonDelete:hover {\n background: #f5bba7;\n }\n\n .button {\n padding: 8px 16px 8px 16px;\n border-radius: 4px;\n gap: 10px;\n }\n\n .cancel {\n background: #F3F5F9;\n color: #5A5D68;\n }\n\n .send {\n background: #102693;\n color: white;\n }\n\n .delete {\n background: #871821;\n color: white;\n }\n\n .presset {\n padding-top: 10px;\n display: flex;\n flex-direction: column;\n }\n\n #warning {\n padding: 10px;\n background: #FAE0D2;\n color: #871821;\n }\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n\n .actions {\n display: flex;\n justify-content: space-between;\n padding-bottom: 14px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n }\n }\n\n`\n","import styled from 'styled-components';\n\nexport const TableWrapper = styled.div`\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n`;\n\nexport const Table = styled.table`\n font-size: 14px;\n line-height: 143%;\n color: black;\n width: 100%;\n border-collapse: collapse;\n border-radius: 4px;\n\n th {\n font-weight: 600;\n font-size: 14px;\n line-height: 143%;\n letter-spacing: 0.018em;\n color: #5A5D68;\n text-align: left;\n padding: 8px;\n border-radius: 4px;\n }\n\n thead tr {\n background: #dadce3;\n }\n\n tbody tr {\n border: 1px solid #dadce3;\n }\n\n &.small td {\n padding: 4px;\n }\n\n &.medium td {\n padding: 8px;\n }\n\n &.large td {\n padding: 16px;\n }\n`;\n\nexport const TableLoadingWrapper = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: #f3f5f961;\n`;\n","import styled from 'styled-components';\n\nexport const SpinnerWrapper = styled.span`\n display: inline-block;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &.spinner--sm {\n width: 24px;\n height: 24px;\n }\n\n &.spinner--md {\n width: 32px;\n height: 32px;\n }\n\n &.spinner--lg {\n width: 60px;\n height: 60px;\n }\n\n span {\n box-sizing: border-box;\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n margin: 8px;\n border: 4px solid #fff;\n border-radius: 50%;\n animation: rotateSpinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;\n border-color: ${(props) => `var(--${props.color})`} transparent transparent\n transparent;\n }\n\n & span:nth-child(1) {\n animation-delay: -0.45s;\n }\n\n & span:nth-child(2) {\n animation-delay: -0.3s;\n }\n\n & span:nth-child(3) {\n animation-delay: -0.15s;\n }\n\n @keyframes rotateSpinner {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n`;\n","import React from 'react';\nimport cc from 'classcat';\n\nimport * as S from './styles';\n\nimport { SpinnerProps } from '../../../../interface/Table'\n\nconst Spinner: React.FC<SpinnerProps> = ({ color = 'neutral-3', size = 'md', className }) => {\n return (\n <S.SpinnerWrapper\n color={color}\n className={cc([`spinner--${size}`, className])}\n >\n <span />\n <span />\n <span />\n <span />\n </S.SpinnerWrapper>\n );\n};\n\nexport default Spinner;\n","import React, { forwardRef, Ref } from 'react';\nimport PropTypes from 'prop-types';\nimport cc from 'classcat';\n\nimport * as S from './styles';\nimport Spinner from '../Spinner';\n\nimport { TableProps } from '../../../../interface/Table'\n\nconst Table = forwardRef(\n ({ size = 'medium', children, isLoading = false, className = '', ...props }: TableProps, ref: Ref<HTMLTableElement>) => {\n return (\n <S.TableWrapper className={className}>\n {isLoading ? (\n <S.TableLoadingWrapper>\n <Spinner />\n </S.TableLoadingWrapper>\n ) : null}\n <S.Table className={cc([size])} ref={ref} {...props}>\n {children}\n </S.Table>\n </S.TableWrapper>\n );\n }\n);\n\nTable.propTypes = {\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n isLoading: PropTypes.bool,\n};\n\nexport default Table;\n","import React from 'react';\nimport unorm from 'unorm';\nimport { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = e.target.value.trim();\n const normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();\n \n const newFiles = initialFiles.filter(file => {\n const normalizedFileName = unorm.nfkd(file.name).toLowerCase();\n return normalizedFileName.includes(normalizedSearchTerm);\n });\n \n setFiles(searchTerm !== '' ? newFiles : initialFiles);\n}\n \n\n return (\n <div style={{ position: 'relative', width: '300px' }}>\n <input\n type=\"text\"\n onChange={(e) => searchName(e)}\n placeholder={placeholder}\n style={{\n paddingLeft: '40px',\n borderRadius: '5px',\n border: '1px solid #ccc',\n height: '40px',\n width: '100%',\n }}\n />\n <div\n style={{\n position: 'absolute',\n top: '10px',\n left: '10px',\n pointerEvents: 'none', \n }}\n >\n <FaSearch />\n </div>\n </div>\n );\n};\n\nexport default SearchInput;\n","import styled from 'styled-components';\n\ninterface FullScreenProps {\n isOpen: number;\n isFixed: number;\n zIndex: number;\n}\n\nexport const FullScreen = styled.div<FullScreenProps>`\n display: ${({ isOpen }) => (isOpen === 1 ? 'flex' : 'none')};\n cursor: ${({ isFixed }) => (isFixed === 0 ? 'pointer' : 'default')};\n\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n justify-content: center;\n align-items: center;\n z-index: ${({ zIndex }) => zIndex};\n animation: fadeIn 380ms ease-in-out 1;\n background-color: #2f3845b8;\n backdrop-filter: blur(2px);\n\n @keyframes fadeIn {\n from {\n background-color: #2f384521;\n }\n to {\n background-color: #2f3845b8;\n }\n }\n`;\n\ninterface ModalProps {\n maxWidth?: string;\n maxHeight?: string;\n}\n\nexport const Modal = styled.div<ModalProps>`\n background-color: #fff;\n border-radius: 3px;\n position: relative;\n cursor: default;\n width: 100%;\n max-width: ${({ maxWidth }) => maxWidth};\n animation: slideIn 350ms cubic-bezier(0.42, 0, 0.21, 1) 1;\n\n @keyframes slideIn {\n from {\n transform: translateY(-120px);\n opacity: 0;\n }\n\n 20% {\n opacity: 0;\n }\n\n to {\n transform: translateY(0);\n opacity: 1;\n }\n }\n`;\n\ninterface ModalContainerProps {\n maxHeight?: string;\n}\n\nexport const ModalContainer = styled.div<ModalContainerProps>`\n width: 100%;\n overflow-y: auto;\n max-height: ${({ maxHeight }) => maxHeight};\n`;\n\nexport const ModalHeader = styled.header`\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid #dadce3;\n padding: var(--spacement-medium);\n`;\n\nexport const ModalTitle = styled.div`\n font-style: normal;\n font-weight: normal;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: 0.0075em;\n color: var(--neutral-4);\n`;\n\nexport const ModalButtonClose = styled.button`\n outline: none;\n cursor: pointer;\n\n :hover {\n opacity: 0.7;\n }\n`;\n\ninterface ModalContentWrapperProps {\n overflowY?: string;\n maxHeight?: string;\n}\n\nexport const ModalContentWrapper = styled.div<ModalContentWrapperProps>`\n width: 100%;\n overflow-y: ${({ overflowY }) => overflowY};\n max-height: ${({ maxHeight }) => maxHeight};\n padding: var(--spacement-medium);\n`;\n\nexport const ModalFooterWrapper = styled.div`\n padding: var(--spacement-medium);\n background: var(--neutral-0);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--spacement-medium);\n`;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalFooterWrapper } from './styles';\n\ninterface ModalFooterProps {\n children: ReactNode;\n}\n\nconst ModalFooter: React.FC<ModalFooterProps> = ({ children, ...rest }) => {\n return <ModalFooterWrapper {...rest}>{children}</ModalFooterWrapper>;\n};\n\nModalFooter.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ModalFooter;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalContentWrapper } from './styles';\n\ninterface ModalContentProps {\n children: ReactNode;\n maxHeight?: string;\n overflowY?: string;\n}\n\nconst ModalContent: React.FC<ModalContentProps> = ({ children, maxHeight = 'max-content', overflowY = 'initial', ...rest }) => {\n return (\n <ModalContentWrapper maxHeight={maxHeight} overflowY={overflowY} {...rest}>\n {children}\n </ModalContentWrapper>\n );\n};\n\nModalContent.propTypes = {\n children: PropTypes.node.isRequired,\n maxHeight: PropTypes.string,\n overflowY: PropTypes.string,\n};\n\nexport default ModalContent;\n","import React, { useEffect, useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { MdClose } from 'react-icons/md';\n\nimport * as S from './styles';\nimport ModalFooter from './ModalFooter';\nimport ModalContent from './ModalContent';\nimport ModalHeader from './ModalHeader';\nimport ModalTitle from './ModalTitle';\nimport ModalButtonClose from './ModalButtonClose';\n\ninterface ModalProps {\n isOpen: boolean;\n style?: React.CSSProperties;\n maxWidth?: string;\n maxHeight?: string;\n className?: string;\n title?: string | React.ReactElement | React.ComponentType;\n children: React.ReactNode;\n onClose?: () => void;\n contentStyle?: React.CSSProperties;\n isFixed?: boolean;\n zIndex?: number;\n}\n\nconst Modal: React.FC<ModalProps> = ({\n isOpen,\n style,\n maxWidth,\n maxHeight,\n className,\n title,\n children,\n onClose,\n contentStyle,\n isFixed,\n zIndex,\n}) => {\n const modalRef = useRef<HTMLDivElement>(null);\n\n const handleKeyUp = useCallback(\n (e: KeyboardEvent) => {\n const keys: { [key: number]: () => void } = {\n // ESC Key\n 27: () => {\n e.preventDefault();\n if (!isFixed && onClose) {\n onClose();\n }\n window.removeEventListener('keyup', handleKeyUp, false);\n },\n };\n\n if (keys[e.keyCode] && isOpen) {\n keys[e.keyCode]();\n }\n },\n [onClose, isOpen, isFixed]\n );\n\n const handleOutsideClick = useCallback(\n (e: MouseEvent) => {\n if (modalRef.current && modalRef.current.parentNode === e.target) {\n if (!isFixed && onClose) {\n onClose();\n }\n document.removeEventListener('click', handleOutsideClick, false);\n }\n },\n [onClose, isFixed]\n );\n\n useEffect(() => {\n window.addEventListener('keyup', handleKeyUp, false);\n document.addEventListener('click', handleOutsideClick, false);\n\n return () => {\n window.removeEventListener('keyup', handleKeyUp, false);\n document.removeEventListener('click', handleOutsideClick, false);\n };\n }, [handleKeyUp, handleOutsideClick]);\n\n return (\n <S.FullScreen isFixed={isFixed ? 1 : 0} isOpen={isOpen ? 1 : 0} zIndex={zIndex ?? 0}>\n <S.Modal ref={modalRef} style={style} maxWidth={maxWidth} className={className}>\n <S.ModalContainer className=\"styleOverlay\" maxHeight={maxHeight} style={contentStyle}>\n <S.ModalHeader>\n <S.ModalTitle>{String(title)}</S.ModalTitle>\n <S.ModalButtonClose type=\"button\" onClick={onClose}>\n <MdClose color=\"#5A5D68\" size={16} />\n </S.ModalButtonClose>\n </S.ModalHeader>\n {children}\n </S.ModalContainer>\n </S.Modal>\n </S.FullScreen>\n );\n};\n\nModal.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.string,\n PropTypes.func,\n ]),\n children: PropTypes.node.isRequired,\n onClose: PropTypes.func,\n style: PropTypes.objectOf(PropTypes.any),\n contentStyle: PropTypes.objectOf(PropTypes.any),\n className: PropTypes.string,\n maxWidth: PropTypes.string,\n maxHeight: PropTypes.string,\n isFixed: PropTypes.bool,\n zIndex: PropTypes.number,\n};\n\nModal.defaultProps = {\n title: '',\n style: {},\n contentStyle: {},\n className: '',\n maxWidth: '360px',\n maxHeight: 'max-content',\n isFixed: false,\n onClose: () => {},\n zIndex: 9999,\n};\n\nexport { ModalHeader, ModalTitle, ModalButtonClose, ModalContent, ModalFooter };\nexport default Modal;\n","import styled from 'styled-components';\n\ninterface ContainerProps {\n hasBorder?: boolean;\n backgroundColor?: string;\n backgroundIcon?: string;\n}\n\nexport const Container = styled.div<ContainerProps>`\n width: 100%;\n display: flex;\n justify-content: center;\n padding: 24px 0;\n height: 193px;\n\n background: ${({ hasBorder }) =>\n hasBorder &&\n `linear-gradient(\n to right,\n #dadce3 50%,\n rgba(255, 255, 255, 0) 0%\n ),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, #dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%)`};\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: 40px 1px, 1px 40px;\n background-color: ${({ backgroundColor }) => backgroundColor};\n\n & .content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n & > .icon {\n background-color: ${({ backgroundIcon }) => backgroundIcon};\n border-radius: 16px;\n width: 145px;\n height: 145px;\n\n display: flex;\n justify-content: center;\n\n & svg {\n width: 100%;\n height: 70%;\n margin: 20px;\n }\n }\n\n & .description {\n max-width: 600px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 8px 0 8px 24px;\n\n .button-add {\n cursor: pointer;\n }\n\n .start-icon {\n display: flex;\n align-items: center;\n }\n }\n }\n`;\n","import React, { FC, ReactElement } from 'react';\nimport PropTypes from 'prop-types';\nimport * as S from './styles';\n\ninterface EmptyStateProps {\n icon?: string | ReactElement;\n title?: string;\n description?: string;\n activeButton?: boolean;\n iconButton?: ReactElement;\n descriptionButton?: string;\n widthButton?: string;\n button?: ReactElement;\n backgroundIcon?: string;\n backgroundColor?: string;\n hasBorder?: boolean;\n}\n\nconst EmptyState: FC<EmptyStateProps> = ({\n icon,\n title,\n description,\n activeButton,\n iconButton,\n descriptionButton,\n widthButton,\n button,\n backgroundIcon,\n backgroundColor,\n hasBorder,\n ...rest\n}) => {\n return (\n <S.Container\n backgroundIcon={backgroundIcon}\n backgroundColor={backgroundColor}\n hasBorder={hasBorder}\n {...rest}\n >\n <div className=\"content\">\n <div className=\"icon\">\n {icon}\n </div>\n <div className=\"description\">\n <h5> {title}</h5>\n\n <p>{description}</p>\n\n {activeButton ? (\n <button>\n {descriptionButton}\n </button>\n ) : null}\n\n {button}\n </div>\n </div>\n </S.Container>\n );\n};\n\nEmptyState.propTypes = {\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n title: PropTypes.string,\n description: PropTypes.string,\n activeButton: PropTypes.bool,\n iconButton: PropTypes.element,\n descriptionButton: PropTypes.string,\n widthButton: PropTypes.string,\n button: PropTypes.element,\n backgroundIcon: PropTypes.string,\n backgroundColor: PropTypes.string,\n hasBorder: PropTypes.bool,\n};\n\nEmptyState.defaultProps = {\n icon: '',\n title: '',\n description: '',\n activeButton: false,\n descriptionButton: '',\n widthButton: '140px',\n backgroundIcon: 'var(--neutral-0)',\n backgroundColor: 'var(--absolute-white)',\n hasBorder: true,\n};\n\nexport default EmptyState;\n","import styled from 'styled-components';\n\nexport const MultiSelectWrapper = styled.div`\n width: 200px;\n`;\n\nexport const SelectBox = styled.div`\n position: relative;\n\n select {\n width: 100%;\n font-weight: bold;\n }\n`;\n\nexport const OverSelect = styled.div`\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n`;\n\nexport const Checkboxes = styled.div`\n display: none;\n border: 1px #dadada solid;\n`;\n\nexport const CheckboxLabel = styled.label`\n display: block;\n\n &:hover {\n background-color: #1e90ff;\n }\n`;\n","import React, { useState } from 'react';\nimport * as S from './styles';\n\ninterface Option {\n label: string;\n value: string;\n}\n\ninterface MultiSelectProps {\n options: Option[];\n presset: string[];\n setPresset: React.Dispatch<React.SetStateAction<string[]>>;\n}\n\nconst MultiSelect: React.FC<MultiSelectProps> = ({ options, presset, setPresset }) => {\n const [expanded, setExpanded] = useState(false);\n const [newOption, setNewOption] = useState('');\n\n const handleCheckboxChange = (value: string) => {\n setPresset(prevPresset => {\n if (prevPresset.includes(value)) {\n return prevPresset.filter(val => val !== value);\n } else {\n return [...prevPresset, value];\n }\n });\n }\n\n const showCheckboxes = () => {\n setExpanded(!expanded);\n }\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setNewOption(event.target.value);\n }\n\n const handleInputKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n const trimmedOption = newOption.trim();\n if (trimmedOption !== '' && !options.some(option => option.value === trimmedOption)) {\n setPresset(prevPresset => [...prevPresset, trimmedOption]);\n }\n setNewOption('');\n }\n }\n\n return (\n <form>\n <S.MultiSelectWrapper>\n <S.SelectBox onClick={showCheckboxes}>\n <select>\n {presset.map((option, index) => (\n <option key={index} value={option}>{option}</option>\n ))}\n </select>\n <S.OverSelect>\n <input\n type=\"text\"\n placeholder=\"Add new option\"\n value={newOption}\n onChange={handleInputChange}\n onKeyPress={handleInputKeyPress}\n />\n </S.OverSelect>\n </S.SelectBox>\n <S.Checkboxes style={{ display: expanded ? 'block' : 'none' }}>\n {options.map((option, index) => (\n <S.CheckboxLabel key={index} htmlFor={option.value}>\n <input\n type=\"checkbox\"\n id={option.value}\n checked={presset.includes(option.value)}\n onChange={() => handleCheckboxChange(option.value)}\n />\n {option.label}\n </S.CheckboxLabel>\n ))}\n </S.Checkboxes>\n </S.MultiSelectWrapper>\n </form>\n );\n}\n\nexport default MultiSelect;\n","import styled from 'styled-components';\n\ninterface ContainerProps {\n isDragAccept?: boolean;\n isDragReject?: boolean;\n isDragActive?: boolean;\n}\n\nconst getColor = (props: ContainerProps) => {\n if (props.isDragAccept) {\n return '#6690ff';\n }\n if (props.isDragReject) {\n return '#e18976';\n }\n if (props.isDragActive) {\n return '#6690ff';\n }\n return '#979aa5';\n};\n\nexport const Container = styled.div<ContainerProps>`\n background-color: #f3f5f9;\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n padding: 20px;\n border-width: 2px;\n border-radius: 4px;\n border-color: var(${(props) => getColor(props)});\n border-style: dashed;\n color: #5a5d68;\n outline: none;\n transition: border 0.24s ease-in-out;\n\n & > span {\n margin: 8px 10px 0 0;\n display: flex;\n }\n\n button {\n padding: 8px 16px 8px 16px;\n border-radius: 4px;\n border: 2px #102693 solid;\n margin-top: 10px;\n }\n`;\n\nexport const ListFiles = styled.div`\n &.horizontal-itens {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n & button {\n margin: 4px;\n white-space: nowrap;\n }\n\n .tag-file {\n display: flex;\n gap: 8px;\n padding: 10px 24px !important;\n color: #102693 !important;\n font-size: 14px;\n letter-spacing: 0px;\n }\n\n .tag-icon {\n cursor: pointer;\n }\n }\n`;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { getLanguage } from '../../../../utils/getLanguage'\nimport { useDropzone, FileRejection } from 'react-dropzone';\nimport PropTypes from 'prop-types';\n\nimport { Container} from './styles';\n\ninterface FileProperties {\n id: number;\n lastModified: number;\n lastModifiedDate: Date;\n name: string;\n size: number;\n type: string;\n}\n\ninterface AreaUploadProps {\n formatFile?: string;\n multipleFile?: boolean;\n initialFiles?: File[];\n removeItem?: (file: FileProperties) => void;\n setFile?: (file: { content: ArrayBuffer | string; properties: File }) => void;\n file: string | undefined;\n onChange?: (files: File[]) => void;\n hasListFiles?: boolean;\n}\n\nconst AreaUpload: React.FC<AreaUploadProps> = ({\n formatFile = 'application/pdf',\n multipleFile = false,\n initialFiles = [],\n setFile = () => {},\n file = '',\n onChange = () => {},\n}) => {\n const [myFiles, setMyFiles] = useState<File[]>([]);\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setMyFiles([...initialFiles, ...myFiles]);\n }, []);\n\n const onDrop = useCallback(\n (acceptedFiles: File[], fileRejections: FileRejection[]) => {\n if (fileRejections && fileRejections.length > 0) {\n console.error('Arquivos rejeitados:', fileRejections);\n }\n\n onChange(acceptedFiles);\n\n const files = [...myFiles, ...acceptedFiles];\n const filesWithId = files.map((item, index) => ({\n id: index + 1,\n lastModified: item.lastModified,\n name: item.name,\n size: item.size,\n type: item.type,\n }));\n setMyFiles(filesWithId as unknown as File[]);\n\n acceptedFiles.forEach((file) => {\n const reader = new FileReader();\n\n reader.onload = () => {\n const binaryStr = reader.result;\n setFile({ content: binaryStr as ArrayBuffer, properties: file });\n };\n reader.readAsArrayBuffer(file);\n });\n },\n [myFiles]\n );\n\n const {\n getRootProps,\n getInputProps,\n open,\n isDragActive,\n isDragAccept,\n isDragReject,\n } = useDropzone({\n accept: formatFile as any,\n noClick: true,\n noKeyboard: true,\n multiple: multipleFile,\n onDrop,\n });\n\n return (\n <>\n {console.log('!!file: ', !!file)}\n {console.log('file: ', file)}\n {(multipleFile || myFiles?.length === 0) || !!file ? (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <input {...getInputProps()} />\n\n <span>\n <p>\n {t.fileArea.modal.descriptionUpload}\n </p>\n </span>\n <button type=\"button\" onClick={open}>\n {t.fileArea.modal.chooseFile}\n </button>\n </Container>\n ) : (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <p>{file}</p>\n </Container>\n )}\n </>\n );\n};\n\nAreaUpload.propTypes = {\n formatFile: PropTypes.string,\n multipleFile: PropTypes.bool,\n initialFiles: PropTypes.arrayOf(PropTypes.object as any),\n removeItem: PropTypes.func,\n setFile: PropTypes.func,\n onChange: PropTypes.func,\n hasListFiles: PropTypes.bool,\n};\n\nAreaUpload.defaultProps = {\n formatFile: 'application/json',\n multipleFile: false,\n initialFiles: [],\n removeItem: () => {},\n setFile: () => {},\n onChange: () => {},\n hasListFiles: true,\n};\n\nexport default AreaUpload;\n","import axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'http://localhost:5000';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","import React, { createContext, useContext, useEffect, useState } from 'react';\nimport api from '../service/Api';\n\ninterface Props {\n id: string;\n language: \"en\" | \"pt-br\" | \"es\";\n propTags: { tags: [] }\n personas: [{ name: string, description: string }]\n children?: React.ReactNode;\n}\n\ninterface SharedPropsContextType {\n props: Props;\n}\n\nconst SharedPropsContext = createContext<SharedPropsContextType | undefined>(undefined);\n\nexport const useSharedProps = () => {\n const context = useContext(SharedPropsContext);\n if (!context) {\n throw new Error('useSharedProps deve ser usado dentro de um SharedPropsProvider');\n }\n return context.props;\n};\n\nexport const SharedPropsProvider: React.FC<Props> = ({ children, ...props }) => {\n const { id } = props;\n const [tags, setTags] = useState<any>(null);\n const [personas, setPersonas] = useState<any>(null);\n\n useEffect(() => {\n const fetchData = async () => {\n try {\n const { data } = await api.get(`/tags/${id}`);\n\n if (data) {\n setTags(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n const personas = async () => {\n try {\n const { data } = await api.get(`/personas`);\n\n if (data) {\n setPersonas(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n fetchData();\n personas();\n }, [id]);\n\n const sharedProps = {\n ...props,\n propTags: tags,\n personas,\n };\n\n return (\n <SharedPropsContext.Provider value={{ props: sharedProps }}>\n {children}\n </SharedPropsContext.Provider>\n );\n};\n","const Types = {\n GET_FILES_REQUEST: 'GET_FILES_REQUEST',\n GET_FILES_SUCCESS: 'GET_FILES_SUCCESS',\n DELETE_FILES_REQUEST: 'DELETE_FILES_REQUEST',\n DELETE_FILES_SUCCESS: 'DELETE_FILES_SUCCESS',\n UPLOAD_FILES_REQUEST: 'UPLOAD_FILES_REQUEST',\n UPLOAD_FILES_SUCCESS: 'UPLOAD_FILES_SUCCESS',\n TEST_REQUEST: 'TEST_REQUEST',\n TEST_SUCCESS: 'TEST_SUCCESS',\n LOADING_START: 'LOADING_START',\n LOADING_FINISH: 'LOADING_FINISH',\n CHANGING_START: 'CHANGING_START',\n CHANGING_FINISH: 'CHANGING_FINISH',\n NETWORK_ONLINE: 'NETWORK_ONLINE',\n NETWORK_OFFLINE: 'NETWORK_OFFLINE',\n};\n\nexport default Types;\n","import types from './types'\n\nexport const getFilesAction = (id: string) => {\n return {\n type: types.GET_FILES_REQUEST,\n payload: { id }\n }\n}\n\nexport const getFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.GET_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const deleteFilesAction = (name: string, id: string, language: string) => {\n return {\n type: types.DELETE_FILES_REQUEST,\n payload: { name, id, language }\n }\n}\n\nexport const deleteFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.DELETE_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const uploadFilesAction = (file: any, id: string, pressets: string[], language: string) => {\n return {\n type: types.UPLOAD_FILES_REQUEST,\n payload: { file, id, pressets, language }\n }\n}\n\nexport const uploadFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.UPLOAD_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const testAction = (question: string, profile: string, presset: string, files_directory: string) => {\n return {\n type: types.TEST_REQUEST,\n payload: { question, profile, presset, files_directory }\n }\n}\n\nexport const testActionSuccess = ({ message }: any) => {\n return {\n type: types.TEST_SUCCESS,\n payload: { message }\n }\n}\n\nexport const commonLoadingStart = () => ({\n type: types.LOADING_START,\n });\n \n export const commonLoadingFinish = () => ({\n type: types.LOADING_FINISH,\n });\n \n export const commonChangingStart = () => ({\n type: types.CHANGING_START,\n });\n \n export const commonChangingFinish = () => ({\n type: types.CHANGING_FINISH,\n });\n \n export const commonNetworkOnline = () => ({\n type: types.NETWORK_ONLINE,\n });\n \n export const commonNetworkOffline = () => ({\n type: types.NETWORK_OFFLINE,\n });","import React, { useEffect, useState} from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport { FaUpload, FaList, FaPlus } from 'react-icons/fa';\n\nimport type { FileData } from '../../interface/FileData'\n\nimport { getLanguage } from '../../utils/getLanguage'\n\nimport * as S from './styles';\nimport Table from './components/Table';\nimport Search from './components/Search';\nimport Modal from './components/Modal'\nimport ModalFooter from './components/Modal/ModalFooter'\nimport ModalContent from './components/Modal/ModalContent'\nimport EmptyState from '../EmptyState';\nimport MultiSelect from '../MultiSelect';\nimport AreaUpload from './components/AreaUpload';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { deleteFilesAction, getFilesAction, uploadFilesAction } from '../../store/modules/actions';\n\nexport const FileArea = () => {\n const { id, language, propTags, personas } = useSharedProps();\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const [uploadFile, setUploadFile] = useState<{ content: ArrayBuffer | string; properties: File }>();\n const [modal, setModal] = useState(false)\n const [modalDelete, setModalDelete] = useState(false)\n const [fileDelete, setFileDelete] = useState('')\n const [presset, setPresset] = useState<string[]>([]);\n const t = getLanguage(language)\n const dispatch = useDispatch();\n const initFiles = useSelector((state: any) => state.files);\n const isLoading = useSelector((state: any) => state.isLoading);\n const tags = propTags ? propTags.tags : [];\n\n useEffect(() => {\n dispatch(getFilesAction(id))\n }, [id])\n\n useEffect(() => {\n if(!!initFiles){\n setFiles(initFiles)\n setInitialFiles(initFiles)\n }\n }, [initFiles])\n\n const optionsPresset = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n\n const pressetTag = (tags: string) => {\n const tagsSplit = tags.split(',');\n let html = '';\n\n html += tagsSplit.map(tag => {\n return `<p class='tag'>${tag}</p>`;\n }).join('');\n\n return html;\n }\n\n const handleOpenModal = () => {\n if(modal){\n setUploadFile(undefined)\n setPresset([])\n }\n setModal(!modal)\n }\n\n const handleOpenModalDelete = (name: string) => {\n setFileDelete(name + '.pdf')\n setModalDelete(!modalDelete)\n }\n\n const deleteFile = () => {\n dispatch(deleteFilesAction(fileDelete, id, language))\n setModalDelete(false)\n }\n\n const handleUploadFile = () => {\n console.log('presset: ', presset)\n dispatch(uploadFilesAction(uploadFile, id, presset, language))\n setModal(false)\n setUploadFile(undefined)\n setPresset([])\n };\n\n const renderFiles = () => { \n return (\n <S.Container isLoading={isLoading}>\n <div id='loading' />\n <S.Header>\n <div className='infos'>\n <h2>{t.files}</h2>\n <p>{t.fileArea.description}</p>\n </div>\n <div className='actions'>\n <Search placeholder={t.fileArea.search} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button onClick={handleOpenModal}><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\n {\n files.length === 0 ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.fileArea.emptyState.title}\n description={t.fileArea.emptyState.description}\n activeButton\n iconButton={<FaPlus style={{ width: '15px', height: '15px' }} />}\n descriptionButton={t.fileArea.modal.chooseFile}\n widthButton=\"230px\"\n />\n ) : <Table>\n <thead>\n <tr>\n <th className=\"th_file_name\">\n {t.fileArea.fileName}\n </th>\n <th className=\"th_pressets\">\n {t.fileArea.presset}\n </th>\n <th className=\"th_actions\">\n {t.fileArea.actions}\n </th>\n </tr>\n </thead>\n\n <tbody>\n {files.map((object) => (\n <tr>\n <td>{object.name}</td>\n <td className='tags' dangerouslySetInnerHTML={{ __html: pressetTag(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete' onClick={() => handleOpenModalDelete(object.name)}>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n }\n <Modal\n isOpen={modal}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={handleOpenModal}\n title={t.fileArea.modal.uploadFile}\n >\n <ModalContent>\n <div className='choose-file'>\n <AreaUpload\n setFile={setUploadFile}\n file={uploadFile?.properties.name}\n />\n </div>\n <div className='presset'>\n <p>Presset</p>\n <MultiSelect options={optionsPresset} presset={presset} setPresset={setPresset} />\n </div> \n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={handleOpenModal}>\n {t.buttons.cancel}\n </button>\n <button onClick={() => handleUploadFile()} className='button send' type=\"submit\" form=\"form-tts\">\n {t.buttons.send}\n </button>\n </ModalFooter>\n \n </Modal>\n <Modal\n isOpen={modalDelete}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={() => handleOpenModalDelete('')}\n title={t.fileArea.modal.deleteFileTitle}\n >\n <ModalContent>\n <p id='warning'>{t.fileArea.modal.deleteFile}</p>\n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={() => handleOpenModalDelete('')}>\n {t.buttons.cancel}\n </button>\n <button className='button delete' type=\"submit\" form=\"form-tts\" onClick={deleteFile}>\n {t.buttons.delete}\n </button>\n </ModalFooter>\n </Modal>\n </S.Container>\n );\n }\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n {renderFiles()}\n </S.Container>\n </SharedPropsProvider>\n );\n};\n","import styled, { css } from 'styled-components';\n\ninterface ContainerProps {\n isLoading?: boolean;\n}\n\n\nexport const Container = styled.div<ContainerProps>`\n ${(props) =>\n props.isLoading &&\n css`\n #loading {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgb(151,154,165, 0.7);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 9999;\n }\n\n #loading::after {\n content: \"\";\n border: 4px solid #f3f3f3; /* Cor do símbolo de carregamento */\n border-top: 4px solid #3498db; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 30px;\n height: 30px;\n animation: spin 1s linear infinite;\n }\n\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n `}\n\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n`\n\nexport const Inputs = styled.div`\n display: flex;\n justify-content: space-between;\n margin-bottom: 10px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n width: 190px;\n height: 40px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n width: 23px;\n height: 23px;\n }\n }\n`\n\nexport const Result = styled.div`\n display: flex;\n justify-content: left;\n background: #F3F5F9;\n padding: 15px;\n border-radius: 5px;\n margin-top: 15px;\n\n .text{\n margin-left: 5px;\n font-size: 14px;\n line-height: 1.5;\n }\n\n .icon {\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: 5px;\n\n svg {\n width: 35px;\n height: 35px;\n }\n }\n\n`","import styled from 'styled-components';\n\nexport const Container = styled.div`\n position: relative;\n width: 50%;\n margin-right: 5px;\n select {\n padding: 12px;\n border-radius: 4px;\n border: 1px solid #979AA5;\n width: 100%;\n height: 40px;\n \n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n option {\n background: white;\n font-size: 14px;\n color: #5a5d68;\n }\n\n option:checked, option:hover {\n background: #6690ff;\n font-size: 14px;\n color: white;\n }\n }\n`;\n","import React, { useState } from 'react';\nimport * as S from './styles';\n\ninterface SelectOption {\n value: string | number;\n label: string;\n}\n\ninterface SelectProps {\n options: SelectOption[];\n onSelect: (value: string) => void;\n placeholder?: string;\n}\n\nconst Select: React.FC<SelectProps> = ({ options, onSelect, placeholder }) => {\n const [selectedValue, setSelectedValue] = useState<string | number>('');\n\n const handleSelectChange = (event: React.ChangeEvent<HTMLSelectElement>) => {\n const selectedOption = event.target.value;\n setSelectedValue(selectedOption);\n onSelect(selectedOption);\n };\n\n return (\n <S.Container>\n <select value={selectedValue} onChange={handleSelectChange}>\n <option value=\"\" disabled hidden>\n {placeholder}\n </option>\n {options.map(option => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n </S.Container>\n );\n};\n\nexport default Select;\n","import styled from 'styled-components';\nimport { FaMicrophone } from 'react-icons/fa';\n\nexport const Container = styled.div`\n position: relative;\n width: 100%;\n margin-right: 5px;\n`;\n\nexport const StyledInput = styled.input`\n padding-left: 10px;\n padding-right: 40px;\n border-radius: 5px;\n border: 1px solid #ccc;\n height: 40px;\n width: 100%;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n`;\n\nexport const RecordAudioButton = styled.div`\n position: absolute;\n top: 10px;\n right: 10px;\n cursor: pointer;\n`;\n\nexport const StyledMicrophoneIcon = styled(FaMicrophone)`\n pointer-events: none;\n`;\n","import React from 'react';\nimport * as S from './styles';\n\ninterface InputTestProps {\n placeholder: string;\n onChange: (value: string) => void;\n onRecordAudio: () => void;\n}\n\nconst InputTest: React.FC<InputTestProps> = ({ placeholder, onChange, onRecordAudio }) => {\n return (\n <S.Container>\n <S.StyledInput\n type=\"text\"\n onChange={(e: any) => onChange(e.target.value)}\n placeholder={placeholder}\n />\n <S.RecordAudioButton onClick={onRecordAudio}>\n <S.StyledMicrophoneIcon />\n </S.RecordAudioButton>\n </S.Container>\n );\n};\n\nexport default InputTest;\n","import React, { useState } from 'react';\nimport { getLanguage } from '../../utils/getLanguage'\nimport * as S from './styles';\nimport Select from '../Select'\nimport InputTest from './components/InputTest'\nimport { PiWaveformBold } from 'react-icons/pi';\nimport { FaList } from 'react-icons/fa';\nimport EmptyState from '../EmptyState';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { MdPerson2 } from \"react-icons/md\";\nimport { useDispatch, useSelector } from 'react-redux';\nimport { testAction } from '../../store/modules/actions';\n\nexport const TestArea = () => {\n const { id, language, personas, propTags } = useSharedProps();\n const t = getLanguage(language)\n const results = useSelector((state: any) => state.message);\n const isLoading = useSelector((state: any) => state.isLoading);\n const [search, setSearch] = useState('');\n const [profile, setProfile] = useState('');\n const [presset, setPresset] = useState('');\n const dispatch = useDispatch();\n const tags = propTags ? propTags.tags : [];\n\n const optionsPersona = personas.map(persona => {\n return { label: persona.name, value: persona.name }\n })\n\n const optionsPresset = tags.map(tag => {\n return { label: tag, value: tag }\n })\n\n const handleSelectPersona = (value: string) => {\n setProfile(value);\n };\n\n const handleSelectPresset = (value: string) => {\n setPresset(value);\n };\n\n const handleSearch = (value: string) => {\n setSearch(value);\n };\n\n const handleRecordAudio = () => {\n console.log('Iniciando gravação de áudio...');\n };\n\n const handleTest = () => {\n dispatch(testAction(search, profile, presset, id))\n };\n\n const returnTest = () => { \n return (\n <S.Container isLoading={isLoading}>\n <S.Header>\n <div className='infos'>\n <h2>{t.test}</h2>\n <p>{t.testArea.description}</p>\n </div>\n </S.Header>\n <S.Inputs>\n <InputTest placeholder={t.testArea.typeSentence} onChange={handleSearch} onRecordAudio={handleRecordAudio} />\n <Select placeholder={t.testArea.selectPersona} options={optionsPersona} onSelect={handleSelectPersona} />\n <Select placeholder={t.testArea.selectPresset} options={optionsPresset} onSelect={handleSelectPresset} />\n <button onClick={handleTest}><PiWaveformBold /> {t.buttons.test}</button>\n </S.Inputs>\n {\n !results ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.testArea.emptyState.title}\n description={t.testArea.emptyState.description}\n activeButton={false}\n />\n ) : <S.Result>\n <div className='icon'>\n <MdPerson2 />\n </div>\n <div className='text'>{results}</div>\n </S.Result>\n }\n </S.Container>\n )\n }\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n {returnTest()}\n </S.Container>\n </SharedPropsProvider>\n );\n};","import React, { useMemo, Suspense } from 'react';\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\nimport { getLanguage } from './utils/getLanguage'\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\n\nimport { SharedPropsProvider } from './contexts/SharedPropsProvider';\n\nexport const Leia = (props: Props) => {\n const match = useRouteMatch();\n const { pathname } = useLocation();\n const history = useHistory();\n\n const t = getLanguage(props.language)\n\n const activeTab = useMemo(() => {\n return pathname.split('/')[5] || 'files';\n }, [pathname]);\n\n return (\n <SharedPropsProvider propTags={{ tags: [] }} personas={[{name: '', description: ''}]} {...props}>\n <>\n <Tabs\n value={activeTab}\n onChange={(value) => history.push(`${match.url}/${value}`)}\n >\n <Tab value=\"files\">{t.files}</Tab>\n <Tab value=\"test\">{t.test}</Tab>\n </Tabs>\n <Suspense fallback={props.loading}>\n <SwitchRoute>\n <Route path={`${match.path}`} exact component={FileArea} />\n <Route path={`${match.path}/files`} component={FileArea} />\n <Route path={`${match.path}/test`} component={TestArea} />\n </SwitchRoute>\n </Suspense>\n </>\n </SharedPropsProvider>\n );\n};\n","import { produce } from 'immer';\nimport types from './types'\n\nconst INITIAL_STATE = {\n files: [],\n message: '',\n isLoading: false,\n isChanging: false,\n isOffline: true,\n}\n\nexport default function filesReducer(state = INITIAL_STATE, action: any) {\n return produce(state, (draft) => {\n switch (action.type) {\n case types.GET_FILES_SUCCESS:\n draft.files = action.payload.files;\n break;\n case types.DELETE_FILES_SUCCESS:\n draft.files = action.payload.files;\n break;\n case types.TEST_SUCCESS:\n draft.message = action.payload.message;\n break;\n case types.LOADING_START:\n draft.isLoading = true;\n break;\n case types.LOADING_FINISH:\n draft.isLoading = false;\n break;\n case types.CHANGING_START:\n draft.isChanging = true;\n break;\n case types.CHANGING_FINISH:\n draft.isChanging = false;\n break;\n case types.NETWORK_ONLINE:\n draft.isOffline = false;\n break;\n case types.NETWORK_OFFLINE:\n draft.isOffline = true;\n break;\n default:\n return action.payload;\n }\n });\n}\n","import React from 'react';\nimport { toast as reactToast } from 'react-toastify';\n\nimport { CustomContainerToast } from './styles';\n\ninterface CustomToastContentProps {\n title: String;\n description?: String;\n}\n\nconst CustomToastContent: React.FC<CustomToastContentProps> = ({\n title,\n description\n}) => {\n return (\n <>\n <div className=\"custom-toastify-content\">\n <strong className=\"custom-toastify-title\">{title}</strong>\n {description && (\n <p className=\"custom-toastify-description\">{description}</p>\n )}\n </div>\n </>\n );\n};\n\nconst toast = {\n default: ({ title, description }: CustomToastContentProps) =>\n reactToast(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n success: ({ title, description }: CustomToastContentProps) =>\n reactToast.success(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n error: ({ title, description }: CustomToastContentProps) =>\n reactToast.error(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n warn: ({ title, description }: CustomToastContentProps) =>\n reactToast.warn(\n <CustomToastContent\n title={title}\n description={description}\n />\n ),\n};\n\nconst ContainerToast: React.FC = () => {\n return <CustomContainerToast autoClose={4000} />;\n};\n\nexport { ContainerToast, toast };\n","import { takeLatest, all, put, call } from 'redux-saga/effects';\nimport api from '../../service/Api'\nimport Types from './types'\nimport { getFilesActionSuccess, \n deleteFilesActionSuccess, \n testActionSuccess, \n uploadFilesActionSuccess, \n commonLoadingStart,\n commonLoadingFinish, } from './actions'\nimport { toast } from '../../components/CustomToast'\nimport { getLanguage } from '../../utils/getLanguage'\n\nexport function* getFilesSaga(action: any) {\n try {\n yield put(commonLoadingStart());\n const { id } = action.payload\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(getFilesActionSuccess({ files: data.files}));\n } catch (error) {\n console.log('-----------getFiles.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport function* deleteFilesSaga(action: any) {\n const t = getLanguage(action.payload.language)\n try {\n yield put(commonLoadingStart());\n const { id, name } = action.payload\n\n yield call(api.delete, `/delete/${id}/${name}`);\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(deleteFilesActionSuccess({ files: data.files, success: true }));\n } catch (error) {\n toast.error({title: t.toast.deleteFile.fail.title, description: t.toast.deleteFile.fail.description});\n console.log('-----------deleteFilesSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport function* testSaga(action: any) {\n try {\n yield put(commonLoadingStart());\n const { question, profile, presset, files_directory } = action.payload\n const { data } = yield call(api.post, `/ask`, { question, profile, tag: presset, files_directory });\n yield put(testActionSuccess({ message: data.message }));\n } catch (error) {\n console.log('-----------testSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport function* uploadFilesSaga(action: any) {\n const t = getLanguage(action.payload.language)\n try {\n yield put(commonLoadingStart());\n const { id, file, pressets } = action.payload;\n const tags = pressets.join(',');\n\n const blob = new Blob([file.content]);\n\n const formData = new FormData();\n formData.append('file', blob, file.properties.path);\n\n const queryParams = new URLSearchParams({ tags }).toString();\n\n yield call(api.post, `/upload/${id}?${queryParams}`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n } catch (error) {\n toast.error({title: t.toast.uploadFile.fail.title, description: t.toast.uploadFile.fail.description});\n console.log('-----------uploadFilesSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\nexport default function* filesSagas() {\n yield all([\n takeLatest(Types.GET_FILES_REQUEST, getFilesSaga),\n takeLatest(Types.DELETE_FILES_REQUEST, deleteFilesSaga),\n takeLatest(Types.UPLOAD_FILES_REQUEST, uploadFilesSaga),\n takeLatest(Types.TEST_REQUEST, testSaga)\n ]);\n}\n","import { createStore, applyMiddleware } from 'redux';\nimport createSagaMiddleware from 'redux-saga';\nimport Reducer from './modules/reducer';\nimport Sagas from './modules/sagas';\n\nconst sagaMiddleware = createSagaMiddleware();\n\nconst store = createStore(Reducer, applyMiddleware(sagaMiddleware));\n\nsagaMiddleware.run(Sagas);\n\nexport default store;\n\n","import type { PropsWithChildren, ReactElement } from 'react';\nimport { Provider } from 'react-redux';\nimport React from 'react';\nimport { Leia } from './Leia';\nimport store from './store';\n\nexport type Props = PropsWithChildren<{\n id: string;\n activeTab: string;\n language: \"en\" | \"pt-br\" | \"es\";\n loading: ReactElement\n}>;\n\nexport function Code7(props: Props) {\n return <Provider store={store}>\n <Leia {...props} />\n </Provider>;\n}"],"names":["TabsPane","styled","ul","_templateObject","_taggedTemplateLiteralLoose","Tab","li","_templateObject2","_ref","active","children","rest","_objectWithoutPropertiesLoose","_excluded","React","S","className","cc","propTypes","PropTypes","oneOfType","string","element","node","isRequired","onChange","func","value","bool","defaultProps","Tabs","_ref2","childrenProp","_excluded2","Children","map","child","isValidElement","Array","isArray","_child$props","props","_child$props2","cloneElement","_child$props3","onClick","_child$props4","number","enTranslation","files","test","fileArea","description","fileName","presset","actions","search","fileUpload","emptyState","title","modal","descriptionUpload","chooseFile","uploadFile","deleteFileTitle","deleteFile","buttons","cancel","send","testArea","typeSentence","selectPersona","selectPresset","toast","success","fail","Test","ptTranslation","esTranslation","getLanguage","language","Container","div","isLoading","css","Header","_templateObject3","TableWrapper","Table","table","TableLoadingWrapper","SpinnerWrapper","span","color","Spinner","_ref$color","_ref$size","size","forwardRef","ref","_ref$isLoading","_ref$className","oneOf","SearchInput","placeholder","setFiles","initialFiles","searchName","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","normalizedFileName","name","includes","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FullScreen","isOpen","isFixed","_ref3","zIndex","Modal","_ref4","maxWidth","ModalContainer","_ref5","maxHeight","ModalHeader","header","_templateObject4","ModalTitle","_templateObject5","ModalButtonClose","button","_templateObject6","ModalContentWrapper","_templateObject7","_ref6","overflowY","_ref7","ModalFooterWrapper","_templateObject8","ModalFooter","ModalContent","_ref$maxHeight","_ref$overflowY","onClose","contentStyle","modalRef","useRef","handleKeyUp","useCallback","keys","_","preventDefault","window","removeEventListener","keyCode","handleOutsideClick","current","parentNode","document","useEffect","addEventListener","String","MdClose","objectOf","any","hasBorder","backgroundColor","backgroundIcon","EmptyState","icon","activeButton","iconButton","descriptionButton","widthButton","MultiSelectWrapper","SelectBox","OverSelect","Checkboxes","CheckboxLabel","label","MultiSelect","options","setPresset","_useState","useState","expanded","setExpanded","_useState2","newOption","setNewOption","handleCheckboxChange","prevPresset","val","concat","showCheckboxes","handleInputChange","event","handleInputKeyPress","key","trimmedOption","some","option","index","onKeyPress","display","htmlFor","id","checked","getColor","isDragAccept","isDragReject","isDragActive","AreaUpload","formatFile","_ref$formatFile","_ref$multipleFile","multipleFile","_ref$initialFiles","_ref$setFile","setFile","_ref$file","_ref$onChange","myFiles","setMyFiles","t","onDrop","acceptedFiles","fileRejections","length","console","error","filesWithId","item","lastModified","forEach","reader","FileReader","onload","binaryStr","result","content","properties","readAsArrayBuffer","_useDropzone","useDropzone","accept","noClick","noKeyboard","multiple","getRootProps","getInputProps","open","log","arrayOf","object","removeItem","hasListFiles","url","axios","defaults","baseURL","create","SharedPropsContext","createContext","undefined","useSharedProps","context","useContext","Error","SharedPropsProvider","tags","setTags","personas","setPersonas","fetchData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$api$get","data","wrap","_callee$","_context","prev","next","api","get","sent","t0","stop","apply","arguments","_callee2","_yield$api$get2","_callee2$","_context2","sharedProps","_extends","propTags","Provider","Types","GET_FILES_REQUEST","GET_FILES_SUCCESS","DELETE_FILES_REQUEST","DELETE_FILES_SUCCESS","UPLOAD_FILES_REQUEST","UPLOAD_FILES_SUCCESS","TEST_REQUEST","TEST_SUCCESS","LOADING_START","LOADING_FINISH","CHANGING_START","CHANGING_FINISH","NETWORK_ONLINE","NETWORK_OFFLINE","getFilesAction","types","payload","getFilesActionSuccess","deleteFilesAction","deleteFilesActionSuccess","uploadFilesAction","pressets","uploadFilesActionSuccess","testAction","question","profile","files_directory","testActionSuccess","message","commonLoadingStart","commonLoadingFinish","FileArea","_useSharedProps","setInitialFiles","_useState3","setUploadFile","_useState4","setModal","_useState5","modalDelete","setModalDelete","_useState6","fileDelete","setFileDelete","_useState7","dispatch","useDispatch","initFiles","useSelector","state","optionsPresset","tag","pressetTag","tagsSplit","split","html","join","handleOpenModal","handleOpenModalDelete","handleUploadFile","renderFiles","Search","FaUpload","FaList","FaPlus","dangerouslySetInnerHTML","__html","form","Inputs","Result","Select","onSelect","selectedValue","setSelectedValue","handleSelectChange","selectedOption","disabled","hidden","StyledInput","input","RecordAudioButton","StyledMicrophoneIcon","FaMicrophone","InputTest","onRecordAudio","TestArea","results","setSearch","setProfile","optionsPersona","persona","handleSelectPersona","handleSelectPresset","handleSearch","handleRecordAudio","handleTest","returnTest","PiWaveformBold","MdPerson2","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","activeTab","useMemo","push","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","INITIAL_STATE","isChanging","isOffline","filesReducer","action","produce","draft","CustomToastContent","_default","reactToast","warn","getFilesSaga","_marked2","deleteFilesSaga","_marked3","testSaga","_marked4","uploadFilesSaga","_marked5","filesSagas","_yield$call","getFilesSaga$","put","call","finish","_marked","_action$payload","_yield$call2","deleteFilesSaga$","_action$payload2","_yield$call3","testSaga$","_context3","post","_action$payload3","blob","formData","queryParams","_yield$call4","uploadFilesSaga$","_context4","Blob","FormData","append","URLSearchParams","toString","headers","filesSagas$","_context5","all","takeLatest","sagaMiddleware","createSagaMiddleware","store","createStore","Reducer","applyMiddleware","run","Sagas","Code7"],"mappings":"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"}