code7-leia 0.2.28 → 0.2.30

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/styles.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/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/components/TextArea/styles.tsx","../src/components/TestArea/components/TextArea/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../src/store/modules/reducer.ts","../src/service/Api.ts","../src/service/ApiHml.ts","../src/service/ApiDev.ts","../src/utils/getApi.tsx","../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 status: 'Status',\n presset: 'Presset',\n actions: 'Actions',\n search: 'Search',\n fileUpload: 'File upload',\n training: 'Train preset',\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 trainingTitle: 'Presset Training',\n trainingDescription: 'Select one or more pressets to be trained. Note: If none are selected, Le-IA will train all pressets.'\n },\n },\n buttons: {\n cancel: 'Cancel',\n send: 'Send',\n delete: 'Delete',\n test: 'Test',\n addNewPresset: 'Add new presset',\n addPresset: 'Add presset',\n training: 'Training'\n },\n testArea: {\n description: 'Type a sentence to test artificial intelligence',\n typeSentence: 'Type a sentence',\n typePrompt: 'Insert a custom prompt here',\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 Train: {\n fail: {\n title: 'Failure',\n description: 'Error training Le-IA'\n },\n success: {\n title: 'Success',\n description: 'Le-IA is in the training process!'\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 status: 'Status',\n presset: 'Predefinição',\n actions: 'Ações',\n search: 'Pesquisar',\n fileUpload: 'Enviar arquivo',\n training: 'Treinar predefinição',\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 trainingTitle: 'Treinamento de predefinição',\n trainingDescription: 'Selecione um ou mais predefinições para serem treinadas. Obs: Caso não selecionada nenhuma a Le-IA irá treinar todas as predefinições'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Excluir',\n test: 'Teste',\n addNewPresset: 'Adicionar nova predefinição',\n addPresset: 'Adicionar predefinição',\n training: 'Treinamento'\n },\n testArea: {\n description: 'Digite uma frase para testar a inteligência artificial.',\n typeSentence: 'Digite uma frase',\n typePrompt: 'Insira aqui um prompt personalizado',\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 Train: {\n fail: {\n title: 'Falha',\n description: 'Erro ao treinar a Le-IA'\n },\n success: {\n title: 'Sucesso',\n description: 'A Le-IA está em processo de treinamento!'\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 status: 'Status',\n presset: 'Preconfiguración',\n actions: 'Acciones',\n search: 'Buscar',\n fileUpload: 'Subir archivo',\n training: 'Entrenar preconfiguración',\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 trainingTitle: 'Entrenamiento de preconfiguración',\n trainingDescription: 'Seleccione una o más preconfiguracións para ser entrenadas. Nota: Si no se selecciona ninguna, Le-IA entrenará todas las preconfiguracións.'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Eliminar',\n test: 'Prueba',\n addNewPresset: 'Agregar nueva preconfiguración',\n addPresset: 'Agregar preconfiguración',\n training: 'Capacitación'\n },\n testArea: {\n description: 'Escribe una frase para probar la inteligencia artificial.',\n typeSentence: 'Escribe una oración',\n typePrompt: 'Inserte un prompt personalizado aquí',\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 Train: {\n fail: {\n title: 'Error',\n description: 'Error al entrenar Le-IA'\n },\n success: {\n title: 'Éxito',\n description: '¡Le-IA está en proceso de entrenamiento!'\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 #5a5d68; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 13px;\n height: 13px;\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 display: flex;\n justify-content: center;\n align-items: center;\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: flex-start;\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 .buttonTraining {\n color: #023906;\n background: #e3f8cc;\n padding: 12px 20px;\n border-radius: 4px;\n margin-right: 10px;\n }\n\n .buttonTraining:hover {\n background: #90d665;\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 p {\n font-size: 14px;\n font-weight: 600;\n padding: 4px 0;\n }\n }\n\n #warning {\n padding: 10px;\n background: #FAE0D2;\n color: #871821;\n }\n\n #info {\n padding: 10px;\n background: #c7f9ed;\n color: #00344e;\n }\n\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n\n #button-upload {\n margin-right: 10px;\n }\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 styled from 'styled-components';\n\nexport const InputContainer = styled.div`\n position: relative;\n width: 300px;\n`;\n\nexport const Input = styled.input`\n padding-left: 40px;\n border-radius: 5px;\n border: 1px solid #ccc;\n height: 45px;\n width: 100%;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n`;\n\nexport const IconContainer = styled.div`\n position: absolute;\n top: 14px;\n left: 10px;\n pointer-events: none;\n`;\n","import React from 'react';\nimport unorm from 'unorm';\nimport { FaSearch } from 'react-icons/fa';\nimport { InputContainer, Input, IconContainer } from './styles';\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> = ({\n placeholder,\n setFiles,\n 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 return (\n <InputContainer>\n <Input\n type=\"text\"\n onChange={(e: any) => searchName(e)}\n placeholder={placeholder}\n />\n <IconContainer>\n <FaSearch />\n </IconContainer>\n </InputContainer>\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 p {\n margin: 10px 0;\n }\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 button {\n background: #102693;\n color: white;\n width: fit-content;\n padding: 10px 20px;\n border-radius: 4px;\n }\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 {iconButton} {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: 100%;\n height: 45px;\n`;\n\nexport const SelectBox = styled.div`\n position: relative;\n\n select {\n width: 100%;\n font-weight: bold;\n height: 45px;\n border-radius: 4px;\n }\n`;\n\nexport const OverSelect = styled.div`\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n display: flex;\n\n input {\n height: 43px;\n width: calc(100% - 30px);\n border: none;\n margin: 1px;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n }\n`;\n\nexport const Checkboxes = styled.div`\n display: none;\n background: white;\n position: absolute;\n width: 95%;\n z-index: 10;\n\n label {\n padding: 10px 5px;\n }\n`;\n\nexport const CheckboxLabel = styled.label`\n display: block;\n\n &:hover {\n background-color: #6690ff;\n }\n`;\n\nexport const SelectedValues = styled.div`\n position: absolute;\n top: 9px;\n display: flex;\n flex-wrap: wrap;\n margin-left: 5px;\n right: 30px;\n`;\n\nexport const SelectedValue = styled.div`\n background-color: #254EDB;\n color: white;\n border-radius: 15px;\n padding: 5px 10px;\n margin-right: 5px;\n margin-bottom: 5px;\n white-space: nowrap;\n`;","import React, { useEffect, useState } from 'react';\nimport * as S from './styles';\nimport { getLanguage } from '../../utils/getLanguage'\nimport { Language } from '../../interface/Language';\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 setOptions: React.Dispatch<React.SetStateAction<Option[]>>;\n modal: boolean;\n hasAddNewOptions: boolean;\n language: keyof Record<'en' | 'pt-br' | 'es', Language>;\n}\n\nconst MultiSelect: React.FC<MultiSelectProps> = ({ options, presset, setPresset, setOptions, modal, language, hasAddNewOptions }) => {\n const [expanded, setExpanded] = useState(false);\n const [newOption, setNewOption] = useState('');\n const t = getLanguage(language)\n\n useEffect(() => {\n setExpanded(false)\n }, [modal])\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' && hasAddNewOptions) {\n event.preventDefault();\n const trimmedOption = newOption.trim();\n if (trimmedOption !== '' && !options.some(option => option.value === trimmedOption)) {\n setOptions(prevOptions => [...prevOptions, { label: trimmedOption, 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 {options.map((option, index) => (\n <option key={index} value={option.value}>{option.label}</option>\n ))}\n </select>\n <S.OverSelect>\n <S.SelectedValues>\n {presset.map((value, index) => (\n <S.SelectedValue key={index}>{value}</S.SelectedValue>\n ))}\n </S.SelectedValues>\n <input\n type=\"text\"\n placeholder={hasAddNewOptions ? t.buttons.addNewPresset : t.buttons.addPresset}\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 {(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 React, { createContext, useContext, useEffect, useState } from 'react';\nimport { getApi } from 'src/utils/getApi';\n\ninterface Props {\n id: string;\n language: \"en\" | \"pt-br\" | \"es\";\n propTags: { tags: [] }\n personas: [{ name: string, description: string }];\n token: string;\n env: 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, language, env } = props;\n const [tags, setTags] = useState<any>(null);\n const [personas, setPersonas] = useState<any>(null);\n const api = getApi(env)\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?language=${language}`);\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 TRAINING_REQUEST: 'TRAINING_REQUEST',\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, token: string, env: string) => {\n return {\n type: types.GET_FILES_REQUEST,\n payload: { id, token, env }\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, token: string, env: string) => {\n return {\n type: types.DELETE_FILES_REQUEST,\n payload: { name, id, language, token, env }\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, token: string, env: string) => {\n return {\n type: types.UPLOAD_FILES_REQUEST,\n payload: { file, id, pressets, language, token, env }\n }\n}\n\nexport const uploadFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.UPLOAD_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const trainingAction = (id: string, pressets: string[], language: string, token: string, env: string) => {\n return {\n type: types.TRAINING_REQUEST,\n payload: { id, pressets, language, token, env }\n }\n}\n\nexport const testAction = (question: string, prompt:string, profile: string, presset: string, files_directory: string, token: string, env: string) => {\n return {\n type: types.TEST_REQUEST,\n payload: { question, prompt, profile, presset, files_directory, token, env }\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';\nimport { renderToString } from 'react-dom/server';\n\nimport { FaUpload, FaList, FaCheck, FaFile } from 'react-icons/fa';\nimport { GiWeightLiftingUp } from \"react-icons/gi\";\nimport { TiDelete } from \"react-icons/ti\";\n\nimport type { FileData, tag } 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, trainingAction } from '../../store/modules/actions';\n\nexport const FileArea = () => {\n const { id, language, propTags, token, env } = 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 [modalTraining, setModalTraining] = useState(false)\n const [fileDelete, setFileDelete] = useState('')\n const [optionsPresset, setOptionsPresset] = useState<{ label: any; value: any; }[]>([])\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, token, env))\n }, [id])\n\n useEffect(() => {\n if(tags.length > 0){\n const options = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n setOptionsPresset(options)\n }else if(optionsPresset.length > 0){\n setOptionsPresset([])\n }\n \n }, [tags])\n\n useEffect(() => {\n if(!modal){\n const options = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n setOptionsPresset(options)\n }\n }, [modal])\n\n useEffect(() => {\n if(!!initFiles){\n setFiles(initFiles)\n setInitialFiles(initFiles)\n }\n }, [initFiles])\n\n const pressetTag = (tags: [tag]) => {\n let html = '';\n \n html += tags.map(tag => {\n const checkIcon = tag.trained ? '' : renderToString(<TiDelete size={14} />);\n const tagClass = tag.trained ? 'trained' : '';\n return `<p class='tag ${tagClass}'>${tag.name} ${checkIcon}</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)\n setModalDelete(!modalDelete)\n }\n\n const handleOpenModalTraining = (tags?: [tag]) => {\n let pressets: string[] = [] \n tags?.map((tag) => {\n if(!tag.trained){\n pressets.push(tag.name)\n }\n })\n setPresset(pressets)\n setModalTraining(!modalTraining)\n }\n\n const deleteFile = () => {\n dispatch(deleteFilesAction(fileDelete, id, language, token, env))\n setModalDelete(false)\n }\n\n const handleUploadFile = () => {\n dispatch(uploadFilesAction(uploadFile, id, presset, language, token, env))\n setModal(false)\n setUploadFile(undefined)\n setPresset([])\n };\n\n const handleTrain = () => {\n dispatch(trainingAction(id, presset, language, token, env))\n setModalTraining(false)\n setPresset([])\n };\n\n const viewFile = (link: string, name: string) => {\n if(link){\n const checkIcon = renderToString(<FaFile size={14} />);\n return `<a href='${link}' target='_blank'>${checkIcon}</a> ${name}`;\n }\n return name\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 <div> \n <button id='button-upload' onClick={handleOpenModal}><FaUpload size={14} /> {t.fileArea.fileUpload}</button>\n <button onClick={() => handleOpenModalTraining(undefined)}><GiWeightLiftingUp size={14} /> {t.fileArea.training}</button>\n </div>\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 iconButton={<button id='button-upload' onClick={handleOpenModal}><FaUpload size={14} /> {t.fileArea.fileUpload}</button>}\n descriptionButton={t.fileArea.fileUpload}\n widthButton=\"230px\"\n />\n ) : <Table>\n <thead>\n <tr>\n <th key=\"th_file_name\" className=\"th_file_name\">\n {t.fileArea.fileName}\n </th>\n <th key=\"th_file_name\" className=\"th_status\">\n {t.fileArea.status}\n </th>\n <th key=\"th_pressets\" className=\"th_pressets\">\n {t.fileArea.presset}\n </th>\n <th key=\"th_actions\" className=\"th_actions\">\n {t.fileArea.actions}\n </th>\n </tr>\n </thead>\n\n <tbody>\n {files.map((object) => (\n <tr>\n <td dangerouslySetInnerHTML={{ __html: viewFile(object.link, object.name) }} />\n <td>{object.trained ? <FaCheck size={14} style={{ color: 'green' }} /> : <TiDelete size={14} style={{ color: 'red' }} />}</td>\n <td className='tags' dangerouslySetInnerHTML={{ __html: pressetTag(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonTraining' onClick={() => handleOpenModalTraining(object.tags)}>{t.buttons.training}</button>\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>{t.fileArea.presset}</p>\n <MultiSelect setOptions={setOptionsPresset} options={optionsPresset} presset={presset} setPresset={setPresset} modal={modal} language={language} hasAddNewOptions={true} />\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 <Modal\n isopen={modalTraining}\n maxwidth=\"600px\"\n maxheight=\"max-content\"\n onClose={() => handleOpenModalTraining(undefined)}\n title={t.fileArea.modal.trainingTitle}\n >\n <ModalContent>\n <p id='info'>{t.fileArea.modal.trainingDescription}</p>\n <div className='presset'>\n <p>{t.fileArea.presset}</p>\n <MultiSelect setOptions={setOptionsPresset} options={optionsPresset} presset={presset} setPresset={setPresset} modal={modal} language={language} hasAddNewOptions={false} />\n </div>\n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={() => handleOpenModalTraining(undefined)}>\n {t.buttons.cancel}\n </button>\n <button onClick={() => handleTrain()} className='button send' type=\"submit\" form=\"form-tts\">\n {t.buttons.send}\n </button>\n </ModalFooter>\n \n </Modal>\n </S.Container>\n );\n }\n\n return (\n <SharedPropsProvider id={id} language={language} token={token} env={env} propTags={{ tags: [] }} personas={[{name: '', description: ''}]}>\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 #5a5d68; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 13px;\n height: 13px;\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: inline-flex;\n justify-content: space-between;\n margin-bottom: 10px;\n width: 725px;\n margin-right: 500px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n width: 190px;\n height: 45px;\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\n .custom-select {\n position: relative;\n width: 100%;\n cursor: pointer;\n\n .selected-option {\n padding: 12px;\n border-radius: 4px;\n border: 1px solid #979AA5;\n height: 45px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n font-size: 14px;\n }\n\n .options {\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n border: 1px solid #979AA5;\n border-top: none;\n border-radius: 0 0 4px 4px;\n background-color: #fff;\n z-index: 9;\n\n .option {\n padding: 12px;\n cursor: pointer;\n transition: background-color 0.1s;\n letter-spacing: 0.5px;\n font-size: 14px;\n\n &:hover {\n background-color: #6690ff;\n color: white;\n }\n }\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 CustomSelect: React.FC<SelectProps> = ({ options, onSelect, placeholder }) => {\n const [isOpen, setIsOpen] = useState(false);\n const [selectedValue, setSelectedValue] = useState<string | number>('');\n\n const handleSelectOption = (value: string | number) => {\n const selected = String(value);\n setSelectedValue(selected);\n onSelect(selected);\n setIsOpen(false);\n };\n\n return (\n <S.Container>\n <div className=\"custom-select\" onClick={() => setIsOpen(!isOpen)}>\n <div className=\"selected-option\">\n {selectedValue || placeholder}\n <span className=\"arrow\">&#9660;</span>\n </div>\n {isOpen && (\n <div className=\"options\">\n {options.map(option => (\n <div\n key={option.value}\n style={{ background: option.value === selectedValue ? '#a0b7f5' : undefined,\n color: option.value === selectedValue ? 'white' : undefined }}\n className=\"option\"\n onClick={() => handleSelectOption(option.value)}\n >\n {option.label}\n </div>\n ))}\n </div>\n )}\n </div>\n </S.Container>\n );\n};\n\nexport default CustomSelect;\n","import styled from 'styled-components';\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: 45px;\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: 14px;\n right: 10px;\n cursor: pointer;\n`;\n","import React from 'react';\nimport * as S from './styles';\n\ninterface InputTestProps {\n placeholder: string;\n onChange: (value: string) => void;\n}\n\nconst InputTest: React.FC<InputTestProps> = ({ placeholder, onChange }) => {\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.Container>\n );\n};\n\nexport default InputTest;\n","import styled from 'styled-components';\n\ntype ContainerProps = {\n marginBottom?: string;\n};\n\nexport const Container = styled.div<ContainerProps>`\n display: flex;\n flex-flow: column;\n margin-bottom: ${({ marginBottom }) => marginBottom};\n`;\n\nexport const InputWrapper = styled.div`\n display: flex;\n align-items: center;\n position: relative;\n margin-right: 5px;\n width: 725px;\n\n .icon {\n position: absolute;\n color: #5a5d68;\n\n &.start-icon {\n left: 12px;\n }\n &.end-icon {\n right: 12px;\n }\n }\n\n & .pass-view {\n position: absolute;\n right: 0;\n top: 0;\n bottom: 0;\n padding: 14px;\n font-size: 1rem;\n color: #5a5d68;\n }\n`;\n\nexport const LabelWrapper = styled.label`\n margin-bottom: 8px;\n\n .label {\n display: block;\n color: #5a5d68;\n\n font-style: normal;\n font-weight: 600;\n font-size: 0.875rem;\n line-height: 114%;\n letter-spacing: -0.02em;\n }\n\n .description {\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n color: #5a5d68;\n display: block;\n }\n`;\n\nexport const CustomTextArea = styled.textarea`\n font-family: 'Monospace', -apple-system, BlinkMacSystemFont, sans-serif;\n font-size: 0.875rem;\n font-style: normal;\n font-weight: 500;\n line-height: 20px;\n text-align: left;\n letter-spacing: -0.02em;\n resize: vertical;\n padding: 8px 12px;\n\n border-radius: 4px;\n border: 1px solid #979aa5;\n color: #5a5d68 !important;\n width: 100%;\n\n background: #ffffff;\n transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out,\n border 0.2s ease-in-out;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n &:hover {\n border: 1px solid #102693;\n }\n &:active {\n border: 1px solid #102693;\n }\n &:disabled {\n border: 1px solid #dadce3;\n background: #f3f5f9;\n color: #dadce3;\n }\n\n &.small {\n height: 32px;\n }\n\n &.medium {\n height: 120px;\n }\n\n &.large {\n height: 48px;\n font-size: 1rem;\n }\n\n &.success {\n background: #e3f8cc;\n border: 1px solid #19660a;\n color: #19660a;\n }\n\n &.danger {\n background: #fae0d2;\n border: 1px solid #871821;\n color: #871821;\n }\n\n &.error {\n background: #fae0d2;\n border: 1px solid #871821;\n color: #871821;\n }\n\n &.has-start-icon {\n padding-left: 40px;\n }\n &.has-end-icon {\n padding-right: 40px;\n }\n`;\n\nexport const Helper = styled.div`\n &.helper {\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n color: #5a5d68;\n display: block;\n margin-top: 4px;\n\n &.success {\n color: #19660a;\n }\n\n &.danger {\n color: #871821;\n }\n }\n`;\n\nexport const Error = styled.div`\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n display: block;\n margin-top: 4px;\n color: #871821;\n`;\n","import React, { forwardRef, ReactNode } from 'react';\nimport cc from 'classcat';\n\nimport {\n Container,\n LabelWrapper,\n CustomTextArea,\n InputWrapper,\n Helper,\n Error,\n} from './styles';\n\ntype TextAreaProps = {\n id?: string;\n label?: string;\n placeholder?: string;\n className?: string;\n description?: string;\n helper?: string;\n error?: string;\n color?: '' | 'danger' | 'success';\n size?: 'small' | 'medium' | 'large';\n startIcon?: string | ReactNode;\n endIcon?: string | ReactNode;\n disabled?: boolean;\n marginBottom?: string;\n rows?: number;\n} & React.TextareaHTMLAttributes<HTMLTextAreaElement>;\n\nconst TextArea: React.FC<TextAreaProps> = forwardRef<HTMLTextAreaElement, TextAreaProps>(\n (\n {\n id,\n label,\n description,\n helper,\n error,\n placeholder,\n className,\n size = 'medium',\n color = '',\n disabled = false,\n startIcon,\n endIcon,\n marginBottom = '3px',\n rows = 4,\n ...props\n },\n ref\n ) => {\n const selfId = id || `input__${Math.random().toString(36).substr(2, 9)}`;\n\n return (\n <Container className={className} marginBottom={marginBottom}>\n {label && (\n <LabelWrapper htmlFor={selfId}>\n <span className=\"label\">{label}</span>\n {description && <span className=\"description\">{description}</span>}\n </LabelWrapper>\n )}\n\n <InputWrapper className={cc({ hasLabel: Boolean(label) })}>\n <CustomTextArea\n className={cc([\n 'input',\n size,\n color,\n {\n error: Boolean(error),\n 'has-start-icon': Boolean(startIcon),\n 'has-end-icon': Boolean(endIcon),\n },\n ])}\n id={selfId}\n placeholder={placeholder}\n disabled={disabled}\n rows={rows}\n ref={ref}\n {...props}\n />\n {startIcon && (\n <span className={cc(['icon', 'start-icon'])}>{startIcon}</span>\n )}\n {endIcon && (\n <span className={cc(['icon', 'end-icon'])}>{endIcon}</span>\n )}\n </InputWrapper>\n\n {helper && <Helper className={cc(['helper', color])}>{helper}</Helper>}\n\n {error && <Error className={cc(['error'])}>{error}</Error>}\n </Container>\n );\n }\n);\n\nexport default TextArea;\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 TextArea from './components/TextArea'\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, token, env } = 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 [prompt, setPrompt] = useState('');\n const [profile, setProfile] = useState('');\n const [presset, setPresset] = useState('');\n const dispatch = useDispatch();\n const tags = propTags ? propTags.tags : [];\n\n\n const optionsPersona = personas && 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 handlePrompt = (value: string) => {\n setPrompt(value);\n };\n\n const handleTest = () => {\n dispatch(testAction(search, prompt, profile, presset, id, token, env))\n };\n\n const returnTest = () => { \n return (\n <S.Container isloading={isloading}>\n <div id='loading' />\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} />\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 <S.Inputs>\n {profile === \"Custom\" && <TextArea className=\"textarea-message\" placeholder={t.testArea.typePrompt} value={prompt} onChange={(e) => { handlePrompt(e.target.value); }} />}\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} token={token} language={language} env={env} propTags={{ tags: [] }} personas={[{name: '', description: ''}]}>\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: [] }} env='' 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 axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'https://api.leia.digitalcontact.cloud';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","import axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'https://api-hml.leia.digitalcontact.cloud';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","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 api from '../service/Api'\nimport apiHml from '../service/ApiHml'\nimport apiDev from '../service/ApiDev'\n\nexport const getApi = (env: string) => {\n switch (env.toLowerCase()) {\n case 'dev':\n return apiDev;\n case 'prod':\n return api;\n case 'test':\n return apiHml;\n default:\n return api;\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 { getApi } from '../../utils/getApi'\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, token, env } = action.payload\n const api = getApi(env)\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\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, token, env } = action.payload\n const api = getApi(env)\n yield call(api.delete, `/delete/${id}/${name}?token=${token}`);\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\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, prompt, profile, presset, files_directory, token, env } = action.payload\n const api = getApi(env)\n const { data } = yield call(api.post, `/ask`, { question, description: prompt, profile, tag: presset, files_directory, token });\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, token, env } = action.payload;\n const api = getApi(env)\n const blob = new Blob([file.content]);\n const formData = new FormData();\n const sanitizedPath = file.properties.path.replace(/^\\/+|\\/+$/g, '');\n formData.append('file', blob, sanitizedPath || 'default_filename');\n\n const queryParams = pressets.length\n ? new URLSearchParams({ tags: pressets.join(',') }).toString()\n : '';\n\n const url = queryParams\n ? `/upload/${id}?token=${token}&${queryParams}`\n : `/upload/${id}?token=${token}`;\n\n yield call(api.post, url, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n } catch (error) {\n toast.error({\n title: t.toast.uploadFile.fail.title,\n description: t.toast.uploadFile.fail.description,\n });\n console.log('-----------uploadFilesSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\n\nexport function* TrainingSaga(action: any) {\n const t = getLanguage(action.payload.language)\n try {\n yield put(commonLoadingStart());\n const { id, pressets, token, env } = action.payload;\n const tag = pressets.join(',');\n const api = getApi(env)\n const queryParams = new URLSearchParams({ tag }).toString();\n\n yield call(api.post, pressets.length > 0 ? `/training?${queryParams}` : `/training`,{ files_directory: id, token });\n\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n toast.success({title: t.toast.Train.success.title, description: t.toast.Train.success.description});\n } catch (error) {\n toast.error({title: t.toast.Train.fail.title, description: t.toast.Train.fail.description});\n console.log('-----------TrainingSaga.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 takeLatest(Types.TRAINING_REQUEST, TrainingSaga)\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 token: string;\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","status","presset","actions","search","fileUpload","training","emptyState","title","modal","descriptionUpload","chooseFile","uploadFile","deleteFileTitle","deleteFile","trainingTitle","trainingDescription","buttons","cancel","send","addNewPresset","addPresset","testArea","typeSentence","typePrompt","selectPersona","selectPresset","toast","success","fail","Test","Train","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","InputContainer","Input","input","IconContainer","SearchInput","placeholder","setFiles","initialFiles","searchName","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","normalizedFileName","name","includes","type","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","style","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","backgroundIcon","backgroundColor","MultiSelectWrapper","SelectBox","OverSelect","Checkboxes","CheckboxLabel","label","SelectedValues","SelectedValue","MultiSelect","options","setPresset","setOptions","hasAddNewOptions","_useState","useState","expanded","setExpanded","_useState2","newOption","setNewOption","t","handleCheckboxChange","prevPresset","val","concat","showCheckboxes","handleInputChange","event","handleInputKeyPress","key","trimmedOption","some","option","prevOptions","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","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","arrayOf","object","removeItem","hasListFiles","SharedPropsContext","createContext","undefined","useSharedProps","context","useContext","Error","SharedPropsProvider","env","tags","setTags","personas","setPersonas","api","getApi","fetchData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$api$get","data","wrap","_callee$","_context","prev","next","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","TRAINING_REQUEST","TEST_REQUEST","TEST_SUCCESS","LOADING_START","LOADING_FINISH","CHANGING_START","CHANGING_FINISH","NETWORK_ONLINE","NETWORK_OFFLINE","getFilesAction","token","types","payload","getFilesActionSuccess","deleteFilesAction","deleteFilesActionSuccess","uploadFilesAction","pressets","uploadFilesActionSuccess","trainingAction","testAction","question","prompt","profile","files_directory","testActionSuccess","message","commonLoadingStart","commonLoadingFinish","FileArea","_useSharedProps","setInitialFiles","_useState3","setUploadFile","_useState4","setModal","_useState5","modalDelete","setModalDelete","_useState6","modalTraining","setModalTraining","_useState7","fileDelete","setFileDelete","_useState8","optionsPresset","setOptionsPresset","_useState9","dispatch","useDispatch","initFiles","useSelector","state","tag","pressetTag","html","checkIcon","trained","renderToString","TiDelete","tagClass","join","handleOpenModal","handleOpenModalDelete","handleOpenModalTraining","push","handleUploadFile","handleTrain","viewFile","link","FaFile","renderFiles","Search","FaUpload","GiWeightLiftingUp","FaList","dangerouslySetInnerHTML","__html","FaCheck","form","Inputs","Result","CustomSelect","onSelect","isOpen","setIsOpen","selectedValue","setSelectedValue","handleSelectOption","selected","background","StyledInput","InputTest","marginBottom","InputWrapper","LabelWrapper","CustomTextArea","textarea","Helper","TextArea","helper","_ref$disabled","disabled","startIcon","endIcon","_ref$marginBottom","_ref$rows","rows","selfId","Math","random","toString","substr","hasLabel","Boolean","TestArea","results","setSearch","setPrompt","setProfile","optionsPersona","persona","handleSelectPersona","handleSelectPresset","handleSearch","handlePrompt","handleTest","returnTest","Select","PiWaveformBold","MdPerson2","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","activeTab","useMemo","split","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","INITIAL_STATE","isChanging","isOffline","filesReducer","action","produce","draft","axios","defaults","baseURL","create","apiDev","apiHml","CustomToastContent","_default","reactToast","warn","getFilesSaga","_marked2","deleteFilesSaga","_marked3","testSaga","_marked4","uploadFilesSaga","_marked5","TrainingSaga","_marked6","filesSagas","_action$payload","_yield$call","getFilesSaga$","put","call","log","finish","_marked","_action$payload2","_yield$call2","deleteFilesSaga$","_action$payload3","_yield$call3","testSaga$","_context3","post","_action$payload4","blob","formData","sanitizedPath","queryParams","_yield$call4","uploadFilesSaga$","_context4","Blob","FormData","replace","append","URLSearchParams","headers","_action$payload5","_yield$call5","TrainingSaga$","_context5","filesSagas$","_context6","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/styles.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/service/ApiHml.ts","../src/service/ApiDev.ts","../src/utils/getApi.tsx","../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/components/TextArea/styles.tsx","../src/components/TestArea/components/TextArea/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 status: 'Status',\n presset: 'Presset',\n actions: 'Actions',\n search: 'Search',\n fileUpload: 'File upload',\n training: 'Train preset',\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 trainingTitle: 'Presset Training',\n trainingDescription: 'Select one or more pressets to be trained. Note: If none are selected, Le-IA will train all pressets.'\n },\n },\n buttons: {\n cancel: 'Cancel',\n send: 'Send',\n delete: 'Delete',\n test: 'Test',\n addNewPresset: 'Add new presset',\n addPresset: 'Add presset',\n training: 'Training'\n },\n testArea: {\n description: 'Type a sentence to test artificial intelligence',\n typeSentence: 'Type a sentence',\n typePrompt: 'Insert a custom prompt here',\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 Train: {\n fail: {\n title: 'Failure',\n description: 'Error training Le-IA'\n },\n success: {\n title: 'Success',\n description: 'Le-IA is in the training process!'\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 status: 'Status',\n presset: 'Predefinição',\n actions: 'Ações',\n search: 'Pesquisar',\n fileUpload: 'Enviar arquivo',\n training: 'Treinar predefinição',\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 trainingTitle: 'Treinamento de predefinição',\n trainingDescription: 'Selecione um ou mais predefinições para serem treinadas. Obs: Caso não selecionada nenhuma a Le-IA irá treinar todas as predefinições'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Excluir',\n test: 'Teste',\n addNewPresset: 'Adicionar nova predefinição',\n addPresset: 'Adicionar predefinição',\n training: 'Treinamento'\n },\n testArea: {\n description: 'Digite uma frase para testar a inteligência artificial.',\n typeSentence: 'Digite uma frase',\n typePrompt: 'Insira aqui um prompt personalizado',\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 Train: {\n fail: {\n title: 'Falha',\n description: 'Erro ao treinar a Le-IA'\n },\n success: {\n title: 'Sucesso',\n description: 'A Le-IA está em processo de treinamento!'\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 status: 'Status',\n presset: 'Preconfiguración',\n actions: 'Acciones',\n search: 'Buscar',\n fileUpload: 'Subir archivo',\n training: 'Entrenar preconfiguración',\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 trainingTitle: 'Entrenamiento de preconfiguración',\n trainingDescription: 'Seleccione una o más preconfiguracións para ser entrenadas. Nota: Si no se selecciona ninguna, Le-IA entrenará todas las preconfiguracións.'\n },\n },\n buttons: {\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Eliminar',\n test: 'Prueba',\n addNewPresset: 'Agregar nueva preconfiguración',\n addPresset: 'Agregar preconfiguración',\n training: 'Capacitación'\n },\n testArea: {\n description: 'Escribe una frase para probar la inteligencia artificial.',\n typeSentence: 'Escribe una oración',\n typePrompt: 'Inserte un prompt personalizado aquí',\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 Train: {\n fail: {\n title: 'Error',\n description: 'Error al entrenar Le-IA'\n },\n success: {\n title: 'Éxito',\n description: '¡Le-IA está en proceso de entrenamiento!'\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 #5a5d68; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 13px;\n height: 13px;\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 display: flex;\n justify-content: center;\n align-items: center;\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: flex-start;\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 .buttonTraining {\n color: #023906;\n background: #e3f8cc;\n padding: 12px 20px;\n border-radius: 4px;\n margin-right: 10px;\n }\n\n .buttonTraining:hover {\n background: #90d665;\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 p {\n font-size: 14px;\n font-weight: 600;\n padding: 4px 0;\n }\n }\n\n #warning {\n padding: 10px;\n background: #FAE0D2;\n color: #871821;\n }\n\n #info {\n padding: 10px;\n background: #c7f9ed;\n color: #00344e;\n }\n\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n\n #button-upload {\n margin-right: 10px;\n }\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 }\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 styled from 'styled-components';\n\nexport const InputContainer = styled.div`\n position: relative;\n width: 300px;\n`;\n\nexport const Input = styled.input`\n padding-left: 40px;\n border-radius: 5px;\n border: 1px solid #ccc;\n height: 45px;\n width: 100%;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n`;\n\nexport const IconContainer = styled.div`\n position: absolute;\n top: 14px;\n left: 10px;\n pointer-events: none;\n`;\n","import React from 'react';\nimport unorm from 'unorm';\nimport { FaSearch } from 'react-icons/fa';\nimport { InputContainer, Input, IconContainer } from './styles';\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> = ({\n placeholder,\n setFiles,\n 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 return (\n <InputContainer>\n <Input\n type=\"text\"\n onChange={(e: any) => searchName(e)}\n placeholder={placeholder}\n />\n <IconContainer>\n <FaSearch />\n </IconContainer>\n </InputContainer>\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 p {\n margin: 10px 0;\n }\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 button {\n background: #102693;\n color: white;\n width: fit-content;\n padding: 10px 20px;\n border-radius: 4px;\n }\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 {iconButton} {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: 100%;\n height: 45px;\n`;\n\nexport const SelectBox = styled.div`\n position: relative;\n\n select {\n width: 100%;\n font-weight: bold;\n height: 45px;\n border-radius: 4px;\n }\n`;\n\nexport const OverSelect = styled.div`\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n display: flex;\n\n input {\n height: 43px;\n width: calc(100% - 30px);\n border: none;\n margin: 1px;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n }\n`;\n\nexport const Checkboxes = styled.div`\n display: none;\n background: white;\n position: absolute;\n width: 95%;\n z-index: 10;\n\n label {\n padding: 10px 5px;\n }\n`;\n\nexport const CheckboxLabel = styled.label`\n display: block;\n\n &:hover {\n background-color: #6690ff;\n }\n`;\n\nexport const SelectedValues = styled.div`\n position: absolute;\n top: 9px;\n display: flex;\n flex-wrap: wrap;\n margin-left: 5px;\n right: 30px;\n`;\n\nexport const SelectedValue = styled.div`\n background-color: #254EDB;\n color: white;\n border-radius: 15px;\n padding: 5px 10px;\n margin-right: 5px;\n margin-bottom: 5px;\n white-space: nowrap;\n`;","import React, { useEffect, useState } from 'react';\nimport * as S from './styles';\nimport { getLanguage } from '../../utils/getLanguage'\nimport { Language } from '../../interface/Language';\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 setOptions: React.Dispatch<React.SetStateAction<Option[]>>;\n modal: boolean;\n hasAddNewOptions: boolean;\n language: keyof Record<'en' | 'pt-br' | 'es', Language>;\n}\n\nconst MultiSelect: React.FC<MultiSelectProps> = ({ options, presset, setPresset, setOptions, modal, language, hasAddNewOptions }) => {\n const [expanded, setExpanded] = useState(false);\n const [newOption, setNewOption] = useState('');\n const t = getLanguage(language)\n\n useEffect(() => {\n setExpanded(false)\n }, [modal])\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' && hasAddNewOptions) {\n event.preventDefault();\n const trimmedOption = newOption.trim();\n if (trimmedOption !== '' && !options.some(option => option.value === trimmedOption)) {\n setOptions(prevOptions => [...prevOptions, { label: trimmedOption, 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 {options.map((option, index) => (\n <option key={index} value={option.value}>{option.label}</option>\n ))}\n </select>\n <S.OverSelect>\n <S.SelectedValues>\n {presset.map((value, index) => (\n <S.SelectedValue key={index}>{value}</S.SelectedValue>\n ))}\n </S.SelectedValues>\n <input\n type=\"text\"\n placeholder={hasAddNewOptions ? t.buttons.addNewPresset : t.buttons.addPresset}\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 {(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 = 'https://api.leia.digitalcontact.cloud';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","import axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'https://api-hml.leia.digitalcontact.cloud';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","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 api from '../service/Api'\nimport apiHml from '../service/ApiHml'\nimport apiDev from '../service/ApiDev'\n\nexport const getApi = (env: string) => {\n switch (env.toLowerCase()) {\n case 'dev':\n return apiDev;\n case 'prod':\n return api;\n case 'test':\n return apiHml;\n default:\n return api;\n }\n};","import React, { createContext, useContext, useEffect, useState } from 'react';\nimport { getApi } from '../utils/getApi';\n\ninterface Props {\n id: string;\n language: \"en\" | \"pt-br\" | \"es\";\n propTags: { tags: [] }\n personas: [{ name: string, description: string }];\n token: string;\n env: 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, language, env } = props;\n const [tags, setTags] = useState<any>(null);\n const [personas, setPersonas] = useState<any>(null);\n const api = getApi(env)\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?language=${language}`);\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 TRAINING_REQUEST: 'TRAINING_REQUEST',\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, token: string, env: string) => {\n return {\n type: types.GET_FILES_REQUEST,\n payload: { id, token, env }\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, token: string, env: string) => {\n return {\n type: types.DELETE_FILES_REQUEST,\n payload: { name, id, language, token, env }\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, token: string, env: string) => {\n return {\n type: types.UPLOAD_FILES_REQUEST,\n payload: { file, id, pressets, language, token, env }\n }\n}\n\nexport const uploadFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.UPLOAD_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const trainingAction = (id: string, pressets: string[], language: string, token: string, env: string) => {\n return {\n type: types.TRAINING_REQUEST,\n payload: { id, pressets, language, token, env }\n }\n}\n\nexport const testAction = (question: string, prompt:string, profile: string, presset: string, files_directory: string, token: string, env: string) => {\n return {\n type: types.TEST_REQUEST,\n payload: { question, prompt, profile, presset, files_directory, token, env }\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';\nimport { renderToString } from 'react-dom/server';\n\nimport { FaUpload, FaList, FaCheck, FaFile } from 'react-icons/fa';\nimport { GiWeightLiftingUp } from \"react-icons/gi\";\nimport { TiDelete } from \"react-icons/ti\";\n\nimport type { FileData, tag } 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, trainingAction } from '../../store/modules/actions';\n\nexport const FileArea = () => {\n const { id, language, propTags, token, env } = 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 [modalTraining, setModalTraining] = useState(false)\n const [fileDelete, setFileDelete] = useState('')\n const [optionsPresset, setOptionsPresset] = useState<{ label: any; value: any; }[]>([])\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, token, env))\n }, [id])\n\n useEffect(() => {\n if(tags.length > 0){\n const options = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n setOptionsPresset(options)\n }else if(optionsPresset.length > 0){\n setOptionsPresset([])\n }\n \n }, [tags])\n\n useEffect(() => {\n if(!modal){\n const options = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n setOptionsPresset(options)\n }\n }, [modal])\n\n useEffect(() => {\n if(!!initFiles){\n setFiles(initFiles)\n setInitialFiles(initFiles)\n }\n }, [initFiles])\n\n const pressetTag = (tags: [tag]) => {\n let html = '';\n \n html += tags.map(tag => {\n const checkIcon = tag.trained ? '' : renderToString(<TiDelete size={14} />);\n const tagClass = tag.trained ? 'trained' : '';\n return `<p class='tag ${tagClass}'>${tag.name} ${checkIcon}</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)\n setModalDelete(!modalDelete)\n }\n\n const handleOpenModalTraining = (tags?: [tag]) => {\n let pressets: string[] = [] \n tags?.map((tag) => {\n if(!tag.trained){\n pressets.push(tag.name)\n }\n })\n setPresset(pressets)\n setModalTraining(!modalTraining)\n }\n\n const deleteFile = () => {\n dispatch(deleteFilesAction(fileDelete, id, language, token, env))\n setModalDelete(false)\n }\n\n const handleUploadFile = () => {\n dispatch(uploadFilesAction(uploadFile, id, presset, language, token, env))\n setModal(false)\n setUploadFile(undefined)\n setPresset([])\n };\n\n const handleTrain = () => {\n dispatch(trainingAction(id, presset, language, token, env))\n setModalTraining(false)\n setPresset([])\n };\n\n const viewFile = (link: string, name: string) => {\n if(link){\n const checkIcon = renderToString(<FaFile size={14} />);\n return `<a href='${link}' target='_blank'>${checkIcon}</a> ${name}`;\n }\n return name\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 <div> \n <button id='button-upload' onClick={handleOpenModal}><FaUpload size={14} /> {t.fileArea.fileUpload}</button>\n <button onClick={() => handleOpenModalTraining(undefined)}><GiWeightLiftingUp size={14} /> {t.fileArea.training}</button>\n </div>\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 iconButton={<button id='button-upload' onClick={handleOpenModal}><FaUpload size={14} /> {t.fileArea.fileUpload}</button>}\n descriptionButton={t.fileArea.fileUpload}\n widthButton=\"230px\"\n />\n ) : <Table>\n <thead>\n <tr>\n <th key=\"th_file_name\" className=\"th_file_name\">\n {t.fileArea.fileName}\n </th>\n <th key=\"th_file_name\" className=\"th_status\">\n {t.fileArea.status}\n </th>\n <th key=\"th_pressets\" className=\"th_pressets\">\n {t.fileArea.presset}\n </th>\n <th key=\"th_actions\" className=\"th_actions\">\n {t.fileArea.actions}\n </th>\n </tr>\n </thead>\n\n <tbody>\n {files.map((object) => (\n <tr>\n <td dangerouslySetInnerHTML={{ __html: viewFile(object.link, object.name) }} />\n <td>{object.trained ? <FaCheck size={14} style={{ color: 'green' }} /> : <TiDelete size={14} style={{ color: 'red' }} />}</td>\n <td className='tags' dangerouslySetInnerHTML={{ __html: pressetTag(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonTraining' onClick={() => handleOpenModalTraining(object.tags)}>{t.buttons.training}</button>\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>{t.fileArea.presset}</p>\n <MultiSelect setOptions={setOptionsPresset} options={optionsPresset} presset={presset} setPresset={setPresset} modal={modal} language={language} hasAddNewOptions={true} />\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 <Modal\n isopen={modalTraining}\n maxwidth=\"600px\"\n maxheight=\"max-content\"\n onClose={() => handleOpenModalTraining(undefined)}\n title={t.fileArea.modal.trainingTitle}\n >\n <ModalContent>\n <p id='info'>{t.fileArea.modal.trainingDescription}</p>\n <div className='presset'>\n <p>{t.fileArea.presset}</p>\n <MultiSelect setOptions={setOptionsPresset} options={optionsPresset} presset={presset} setPresset={setPresset} modal={modal} language={language} hasAddNewOptions={false} />\n </div>\n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={() => handleOpenModalTraining(undefined)}>\n {t.buttons.cancel}\n </button>\n <button onClick={() => handleTrain()} className='button send' type=\"submit\" form=\"form-tts\">\n {t.buttons.send}\n </button>\n </ModalFooter>\n \n </Modal>\n </S.Container>\n );\n }\n\n return (\n <SharedPropsProvider id={id} language={language} token={token} env={env} propTags={{ tags: [] }} personas={[{name: '', description: ''}]}>\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 #5a5d68; /* Cor do símbolo de carregamento */\n border-radius: 50%;\n width: 13px;\n height: 13px;\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: inline-flex;\n justify-content: space-between;\n margin-bottom: 10px;\n width: 725px;\n margin-right: 500px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n width: 190px;\n height: 45px;\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\n .custom-select {\n position: relative;\n width: 100%;\n cursor: pointer;\n\n .selected-option {\n padding: 12px;\n border-radius: 4px;\n border: 1px solid #979AA5;\n height: 45px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n font-size: 14px;\n }\n\n .options {\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n border: 1px solid #979AA5;\n border-top: none;\n border-radius: 0 0 4px 4px;\n background-color: #fff;\n z-index: 9;\n\n .option {\n padding: 12px;\n cursor: pointer;\n transition: background-color 0.1s;\n letter-spacing: 0.5px;\n font-size: 14px;\n\n &:hover {\n background-color: #6690ff;\n color: white;\n }\n }\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 CustomSelect: React.FC<SelectProps> = ({ options, onSelect, placeholder }) => {\n const [isOpen, setIsOpen] = useState(false);\n const [selectedValue, setSelectedValue] = useState<string | number>('');\n\n const handleSelectOption = (value: string | number) => {\n const selected = String(value);\n setSelectedValue(selected);\n onSelect(selected);\n setIsOpen(false);\n };\n\n return (\n <S.Container>\n <div className=\"custom-select\" onClick={() => setIsOpen(!isOpen)}>\n <div className=\"selected-option\">\n {selectedValue || placeholder}\n <span className=\"arrow\">&#9660;</span>\n </div>\n {isOpen && (\n <div className=\"options\">\n {options.map(option => (\n <div\n key={option.value}\n style={{ background: option.value === selectedValue ? '#a0b7f5' : undefined,\n color: option.value === selectedValue ? 'white' : undefined }}\n className=\"option\"\n onClick={() => handleSelectOption(option.value)}\n >\n {option.label}\n </div>\n ))}\n </div>\n )}\n </div>\n </S.Container>\n );\n};\n\nexport default CustomSelect;\n","import styled from 'styled-components';\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: 45px;\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: 14px;\n right: 10px;\n cursor: pointer;\n`;\n","import React from 'react';\nimport * as S from './styles';\n\ninterface InputTestProps {\n placeholder: string;\n onChange: (value: string) => void;\n}\n\nconst InputTest: React.FC<InputTestProps> = ({ placeholder, onChange }) => {\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.Container>\n );\n};\n\nexport default InputTest;\n","import styled from 'styled-components';\n\ntype ContainerProps = {\n marginBottom?: string;\n};\n\nexport const Container = styled.div<ContainerProps>`\n display: flex;\n flex-flow: column;\n margin-bottom: ${({ marginBottom }) => marginBottom};\n`;\n\nexport const InputWrapper = styled.div`\n display: flex;\n align-items: center;\n position: relative;\n margin-right: 5px;\n width: 725px;\n\n .icon {\n position: absolute;\n color: #5a5d68;\n\n &.start-icon {\n left: 12px;\n }\n &.end-icon {\n right: 12px;\n }\n }\n\n & .pass-view {\n position: absolute;\n right: 0;\n top: 0;\n bottom: 0;\n padding: 14px;\n font-size: 1rem;\n color: #5a5d68;\n }\n`;\n\nexport const LabelWrapper = styled.label`\n margin-bottom: 8px;\n\n .label {\n display: block;\n color: #5a5d68;\n\n font-style: normal;\n font-weight: 600;\n font-size: 0.875rem;\n line-height: 114%;\n letter-spacing: -0.02em;\n }\n\n .description {\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n color: #5a5d68;\n display: block;\n }\n`;\n\nexport const CustomTextArea = styled.textarea`\n font-family: 'Monospace', -apple-system, BlinkMacSystemFont, sans-serif;\n font-size: 0.875rem;\n font-style: normal;\n font-weight: 500;\n line-height: 20px;\n text-align: left;\n letter-spacing: -0.02em;\n resize: vertical;\n padding: 8px 12px;\n\n border-radius: 4px;\n border: 1px solid #979aa5;\n color: #5a5d68 !important;\n width: 100%;\n\n background: #ffffff;\n transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out,\n border 0.2s ease-in-out;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n &:hover {\n border: 1px solid #102693;\n }\n &:active {\n border: 1px solid #102693;\n }\n &:disabled {\n border: 1px solid #dadce3;\n background: #f3f5f9;\n color: #dadce3;\n }\n\n &.small {\n height: 32px;\n }\n\n &.medium {\n height: 120px;\n }\n\n &.large {\n height: 48px;\n font-size: 1rem;\n }\n\n &.success {\n background: #e3f8cc;\n border: 1px solid #19660a;\n color: #19660a;\n }\n\n &.danger {\n background: #fae0d2;\n border: 1px solid #871821;\n color: #871821;\n }\n\n &.error {\n background: #fae0d2;\n border: 1px solid #871821;\n color: #871821;\n }\n\n &.has-start-icon {\n padding-left: 40px;\n }\n &.has-end-icon {\n padding-right: 40px;\n }\n`;\n\nexport const Helper = styled.div`\n &.helper {\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n color: #5a5d68;\n display: block;\n margin-top: 4px;\n\n &.success {\n color: #19660a;\n }\n\n &.danger {\n color: #871821;\n }\n }\n`;\n\nexport const Error = styled.div`\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n display: block;\n margin-top: 4px;\n color: #871821;\n`;\n","import React, { forwardRef, ReactNode } from 'react';\nimport cc from 'classcat';\n\nimport {\n Container,\n LabelWrapper,\n CustomTextArea,\n InputWrapper,\n Helper,\n Error,\n} from './styles';\n\ntype TextAreaProps = {\n id?: string;\n label?: string;\n placeholder?: string;\n className?: string;\n description?: string;\n helper?: string;\n error?: string;\n color?: '' | 'danger' | 'success';\n size?: 'small' | 'medium' | 'large';\n startIcon?: string | ReactNode;\n endIcon?: string | ReactNode;\n disabled?: boolean;\n marginBottom?: string;\n rows?: number;\n} & React.TextareaHTMLAttributes<HTMLTextAreaElement>;\n\nconst TextArea: React.FC<TextAreaProps> = forwardRef<HTMLTextAreaElement, TextAreaProps>(\n (\n {\n id,\n label,\n description,\n helper,\n error,\n placeholder,\n className,\n size = 'medium',\n color = '',\n disabled = false,\n startIcon,\n endIcon,\n marginBottom = '3px',\n rows = 4,\n ...props\n },\n ref\n ) => {\n const selfId = id || `input__${Math.random().toString(36).substr(2, 9)}`;\n\n return (\n <Container className={className} marginBottom={marginBottom}>\n {label && (\n <LabelWrapper htmlFor={selfId}>\n <span className=\"label\">{label}</span>\n {description && <span className=\"description\">{description}</span>}\n </LabelWrapper>\n )}\n\n <InputWrapper className={cc({ hasLabel: Boolean(label) })}>\n <CustomTextArea\n className={cc([\n 'input',\n size,\n color,\n {\n error: Boolean(error),\n 'has-start-icon': Boolean(startIcon),\n 'has-end-icon': Boolean(endIcon),\n },\n ])}\n id={selfId}\n placeholder={placeholder}\n disabled={disabled}\n rows={rows}\n ref={ref}\n {...props}\n />\n {startIcon && (\n <span className={cc(['icon', 'start-icon'])}>{startIcon}</span>\n )}\n {endIcon && (\n <span className={cc(['icon', 'end-icon'])}>{endIcon}</span>\n )}\n </InputWrapper>\n\n {helper && <Helper className={cc(['helper', color])}>{helper}</Helper>}\n\n {error && <Error className={cc(['error'])}>{error}</Error>}\n </Container>\n );\n }\n);\n\nexport default TextArea;\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 TextArea from './components/TextArea'\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, token, env } = 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 [prompt, setPrompt] = useState('');\n const [profile, setProfile] = useState('');\n const [presset, setPresset] = useState('');\n const dispatch = useDispatch();\n const tags = propTags ? propTags.tags : [];\n\n\n const optionsPersona = personas && 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 handlePrompt = (value: string) => {\n setPrompt(value);\n };\n\n const handleTest = () => {\n dispatch(testAction(search, prompt, profile, presset, id, token, env))\n };\n\n const returnTest = () => { \n return (\n <S.Container isloading={isloading}>\n <div id='loading' />\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} />\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 <S.Inputs>\n {profile === \"Custom\" && <TextArea className=\"textarea-message\" placeholder={t.testArea.typePrompt} value={prompt} onChange={(e) => { handlePrompt(e.target.value); }} />}\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} token={token} language={language} env={env} propTags={{ tags: [] }} personas={[{name: '', description: ''}]}>\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: [] }} env='' 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 { getApi } from '../../utils/getApi'\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, token, env } = action.payload\n const api = getApi(env)\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\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, token, env } = action.payload\n const api = getApi(env)\n yield call(api.delete, `/delete/${id}/${name}?token=${token}`);\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\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, prompt, profile, presset, files_directory, token, env } = action.payload\n const api = getApi(env)\n const { data } = yield call(api.post, `/ask`, { question, description: prompt, profile, tag: presset, files_directory, token });\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, token, env } = action.payload;\n const api = getApi(env)\n const blob = new Blob([file.content]);\n const formData = new FormData();\n const sanitizedPath = file.properties.path.replace(/^\\/+|\\/+$/g, '');\n formData.append('file', blob, sanitizedPath || 'default_filename');\n\n const queryParams = pressets.length\n ? new URLSearchParams({ tags: pressets.join(',') }).toString()\n : '';\n\n const url = queryParams\n ? `/upload/${id}?token=${token}&${queryParams}`\n : `/upload/${id}?token=${token}`;\n\n yield call(api.post, url, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n } catch (error) {\n toast.error({\n title: t.toast.uploadFile.fail.title,\n description: t.toast.uploadFile.fail.description,\n });\n console.log('-----------uploadFilesSaga.error------------------->', error);\n } finally {\n yield put(commonLoadingFinish());\n }\n}\n\n\nexport function* TrainingSaga(action: any) {\n const t = getLanguage(action.payload.language)\n try {\n yield put(commonLoadingStart());\n const { id, pressets, token, env } = action.payload;\n const tag = pressets.join(',');\n const api = getApi(env)\n const queryParams = new URLSearchParams({ tag }).toString();\n\n yield call(api.post, pressets.length > 0 ? `/training?${queryParams}` : `/training`,{ files_directory: id, token });\n\n const { data } = yield call(api.get, `/training/${id}?token=${token}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n toast.success({title: t.toast.Train.success.title, description: t.toast.Train.success.description});\n } catch (error) {\n toast.error({title: t.toast.Train.fail.title, description: t.toast.Train.fail.description});\n console.log('-----------TrainingSaga.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 takeLatest(Types.TRAINING_REQUEST, TrainingSaga)\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 token: string;\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","status","presset","actions","search","fileUpload","training","emptyState","title","modal","descriptionUpload","chooseFile","uploadFile","deleteFileTitle","deleteFile","trainingTitle","trainingDescription","buttons","cancel","send","addNewPresset","addPresset","testArea","typeSentence","typePrompt","selectPersona","selectPresset","toast","success","fail","Test","Train","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","InputContainer","Input","input","IconContainer","SearchInput","placeholder","setFiles","initialFiles","searchName","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","normalizedFileName","name","includes","type","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","style","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","backgroundIcon","backgroundColor","MultiSelectWrapper","SelectBox","OverSelect","Checkboxes","CheckboxLabel","label","SelectedValues","SelectedValue","MultiSelect","options","setPresset","setOptions","hasAddNewOptions","_useState","useState","expanded","setExpanded","_useState2","newOption","setNewOption","t","handleCheckboxChange","prevPresset","val","concat","showCheckboxes","handleInputChange","event","handleInputKeyPress","key","trimmedOption","some","option","prevOptions","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","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","arrayOf","object","removeItem","hasListFiles","url","axios","defaults","baseURL","create","getApi","env","apiDev","api","apiHml","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","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","TRAINING_REQUEST","TEST_REQUEST","TEST_SUCCESS","LOADING_START","LOADING_FINISH","CHANGING_START","CHANGING_FINISH","NETWORK_ONLINE","NETWORK_OFFLINE","getFilesAction","token","types","payload","getFilesActionSuccess","deleteFilesAction","deleteFilesActionSuccess","uploadFilesAction","pressets","uploadFilesActionSuccess","trainingAction","testAction","question","prompt","profile","files_directory","testActionSuccess","message","commonLoadingStart","commonLoadingFinish","FileArea","_useSharedProps","setInitialFiles","_useState3","setUploadFile","_useState4","setModal","_useState5","modalDelete","setModalDelete","_useState6","modalTraining","setModalTraining","_useState7","fileDelete","setFileDelete","_useState8","optionsPresset","setOptionsPresset","_useState9","dispatch","useDispatch","initFiles","useSelector","state","tag","pressetTag","html","checkIcon","trained","renderToString","TiDelete","tagClass","join","handleOpenModal","handleOpenModalDelete","handleOpenModalTraining","push","handleUploadFile","handleTrain","viewFile","link","FaFile","renderFiles","Search","FaUpload","GiWeightLiftingUp","FaList","dangerouslySetInnerHTML","__html","FaCheck","form","Inputs","Result","CustomSelect","onSelect","isOpen","setIsOpen","selectedValue","setSelectedValue","handleSelectOption","selected","background","StyledInput","InputTest","marginBottom","InputWrapper","LabelWrapper","CustomTextArea","textarea","Helper","TextArea","helper","_ref$disabled","disabled","startIcon","endIcon","_ref$marginBottom","_ref$rows","rows","selfId","Math","random","toString","substr","hasLabel","Boolean","TestArea","results","setSearch","setPrompt","setProfile","optionsPersona","persona","handleSelectPersona","handleSelectPresset","handleSearch","handlePrompt","handleTest","returnTest","Select","PiWaveformBold","MdPerson2","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","activeTab","useMemo","split","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","TrainingSaga","_marked6","filesSagas","_action$payload","_yield$call","getFilesSaga$","put","call","log","finish","_marked","_action$payload2","_yield$call2","deleteFilesSaga$","_action$payload3","_yield$call3","testSaga$","_context3","post","_action$payload4","blob","formData","sanitizedPath","queryParams","_yield$call4","uploadFilesSaga$","_context4","Blob","FormData","replace","append","URLSearchParams","headers","_action$payload5","_yield$call5","TrainingSaga$","_context5","filesSagas$","_context6","all","takeLatest","sagaMiddleware","createSagaMiddleware","store","createStore","Reducer","applyMiddleware","run","Sagas","Code7"],"mappings":"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"}