code7-leia 0.1.107 → 0.1.109

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.
@@ -1159,6 +1159,16 @@ var deleteFilesActionSuccess = function deleteFilesActionSuccess(_ref2) {
1159
1159
  }
1160
1160
  };
1161
1161
  };
1162
+ var uploadFilesAction = function uploadFilesAction(file, id, pressets) {
1163
+ return {
1164
+ type: Types.UPLOAD_FILES_REQUEST,
1165
+ payload: {
1166
+ file: file,
1167
+ id: id,
1168
+ pressets: pressets
1169
+ }
1170
+ };
1171
+ };
1162
1172
  var uploadFilesActionSuccess = function uploadFilesActionSuccess(_ref3) {
1163
1173
  var files = _ref3.files;
1164
1174
  return {
@@ -1256,7 +1266,7 @@ var FileArea = function FileArea() {
1256
1266
  dispatch(deleteFilesAction(fileDelete, id));
1257
1267
  };
1258
1268
  var handleUploadFile = function handleUploadFile() {
1259
- console.log('uploadFile: ', uploadFile, 'presset: ', presset, 'id: ', id);
1269
+ dispatch(uploadFilesAction(uploadFile, id, [presset]));
1260
1270
  };
1261
1271
  var renderFiles = function renderFiles() {
1262
1272
  return React__default.createElement(Container, null, React__default.createElement(Header, null, React__default.createElement("div", {
@@ -1646,7 +1656,7 @@ function uploadFilesSaga(action) {
1646
1656
  _action$payload3 = action.payload, id = _action$payload3.id, file = _action$payload3.file, pressets = _action$payload3.pressets;
1647
1657
  tags = pressets.join(',');
1648
1658
  formData = new FormData();
1649
- formData.append('file', file);
1659
+ formData.append('file', file.data);
1650
1660
  queryParams = new URLSearchParams({
1651
1661
  tags: tags
1652
1662
  }).toString();
@@ -1672,7 +1682,7 @@ function uploadFilesSaga(action) {
1672
1682
  case 16:
1673
1683
  _context4.prev = 16;
1674
1684
  _context4.t0 = _context4["catch"](0);
1675
- console.log('-----------uploadFilesSaga.error------------------->', _context4.t0);
1685
+ console.log('-----------deleteFilesSaga.error------------------->', _context4.t0);
1676
1686
  case 19:
1677
1687
  case "end":
1678
1688
  return _context4.stop();
@@ -1 +1 @@
1
- {"version":3,"file":"code7-leia.cjs.development.js","sources":["../src/components/Tabs/styles.tsx","../src/components/Tabs/index.tsx","../src/utils/getLanguage.tsx","../src/components/FileArea/styles.tsx","../src/components/FileArea/components/Table/styles.tsx","../src/components/FileArea/components/Spinner/styles.tsx","../src/components/FileArea/components/Spinner/index.tsx","../src/components/FileArea/components/Table/index.tsx","../src/components/FileArea/components/Search/index.tsx","../src/components/FileArea/components/Modal/styles.tsx","../src/components/FileArea/components/Modal/ModalFooter.tsx","../src/components/FileArea/components/Modal/ModalContent.tsx","../src/components/FileArea/components/Modal/index.tsx","../src/components/EmptyState/styles.tsx","../src/components/EmptyState/index.tsx","../src/components/Select/styles.tsx","../src/components/Select/index.tsx","../src/components/FileArea/components/AreaUpload/styles.tsx","../src/components/FileArea/components/AreaUpload/index.tsx","../src/service/Api.ts","../src/contexts/SharedPropsProvider.tsx","../src/store/modules/types.ts","../src/store/modules/actions.ts","../src/components/FileArea/index.tsx","../src/components/TestArea/styles.tsx","../src/components/TestArea/components/InputTest/styles.tsx","../src/components/TestArea/components/InputTest/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../src/store/modules/reducer.ts","../src/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","\nimport { Language } from '../interface/Language'\n\nconst defaultLanguage: Language = {\n files: 'Files',\n test: 'Test',\n fileArea: {\n description: 'bla bla bla bla bla',\n fileName: 'File name',\n presset: 'Presset',\n actions: 'Actions',\n search: 'Search',\n fileUpload: 'File upload',\n emptyState: {\n title: 'No data',\n description: 'bla bla bla bla bla',\n },\n modal: {\n descriptionUpload: 'Drag and drop files here or',\n chooseFile: 'Choose a file',\n uploadFile: 'Upload a file',\n deleteFileTitle: 'Delete a file',\n deleteFile: 'Important! By deleting this file, you will lose all its information and will not be able to recover it.'\n },\n },\n buttons: {\n cancel: 'Cancel',\n send: 'Send',\n delete: 'Delete',\n test: 'Test',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Type a sentence',\n selectPersona: 'Select a Persona',\n selectPresset: 'Select a presset',\n emptyState: {\n title: 'No data for analysis',\n description: 'Do a search, click the \"Test\" button.',\n },\n },\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages = {\n en: defaultLanguage,\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n fileArea: {\n ...defaultLanguage.fileArea,\n fileName: 'Nome do arquivo',\n presset: 'Presset',\n actions: 'Ações',\n search: 'Pesquisar',\n fileUpload: 'Upload de arquivo',\n emptyState: {\n ...defaultLanguage.fileArea.emptyState,\n title: 'Sem dados',\n },\n modal: {\n ...defaultLanguage.fileArea.modal,\n descriptionUpload: 'Arraste e solte os arquivos aqui ou',\n chooseFile: 'Escolha um arquivo',\n uploadFile: 'Enviar um arquivo',\n deleteFileTitle: 'Deletar um arquivo',\n deleteFile: 'Importante! Ao deletar esse arquivo você perderá todas as informações dele e não terá como recuperá-las.'\n },\n },\n buttons: {\n ...defaultLanguage.buttons,\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Excluir',\n test: 'Testar',\n },\n testArea: {\n ...defaultLanguage.testArea,\n description: 'Digite uma frase para testar a inteligência artificial.',\n typeSentence: 'Digite uma frase',\n selectPersona: 'Selecione uma Persona',\n selectPresset: 'Selecione uma predefinição',\n emptyState: {\n ...defaultLanguage.testArea.emptyState,\n title: 'Sem dados para análise',\n description: 'Faça uma pesquisa, clique no botão \"Teste\".',\n },\n },\n },\n es: {\n ...defaultLanguage,\n files: 'Archivos',\n test: 'Prueba',\n fileArea: {\n ...defaultLanguage.fileArea,\n fileName: 'Nombre del archivo',\n presset: 'Presset',\n actions: 'Acciones',\n search: 'Buscar',\n fileUpload: 'Carga de archivos',\n emptyState: {\n ...defaultLanguage.fileArea.emptyState,\n title: 'Sin datos',\n },\n modal: {\n ...defaultLanguage.fileArea.modal,\n descriptionUpload: 'Arrastre y suelte los archivos aquí o',\n chooseFile: 'Elegir un archivo',\n deleteFileTitle: 'Eliminar un archivo',\n deleteFile: '¡Importante! Al borrar este archivo perderás toda la información contenida en él y no podrás recuperarla.'\n },\n },\n buttons: {\n ...defaultLanguage.buttons,\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Eliminar',\n test: 'Probar',\n },\n testArea: {\n ...defaultLanguage.testArea,\n description: 'bla bla bla bla bla',\n typeSentence: 'Escribe una oración',\n selectPersona: 'Seleccionar una Persona',\n selectPresset: 'Seleccionar una configuración preestablecida',\n emptyState: {\n ...defaultLanguage.testArea.emptyState,\n title: 'Sin datos para el análisis',\n description: 'Realiza una búsqueda, haz clic en el botón \"Prueba\".',\n },\n },\n },\n };\n\n return languages[language] || defaultLanguage;\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n .tag {\n padding: 4px 8px 4px 8px;\n background: #C7F9ED;\n border-radius: 4px;\n }\n\n .tags {\n display: flex;\n justify-content: left;\n gap: 4px;\n }\n\n .divDelete {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n }\n\n .buttonDelete {\n color: #5b0a1f;\n background: #fae0d2;\n padding: 12px 20px;\n border-radius: 4px;\n }\n\n .buttonDelete:hover {\n background: #f5bba7;\n }\n\n .button {\n padding: 8px 16px 8px 16px;\n border-radius: 4px;\n gap: 10px;\n }\n\n .cancel {\n background: #F3F5F9;\n color: #5A5D68;\n }\n\n .send {\n background: #102693;\n color: white;\n }\n\n .delete {\n background: #871821;\n color: white;\n }\n\n .presset {\n padding-top: 10px;\n display: flex;\n flex-direction: column;\n }\n\n #warning {\n padding: 10px;\n background: #FAE0D2;\n color: #871821;\n }\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n\n .actions {\n display: flex;\n justify-content: space-between;\n padding-bottom: 14px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n }\n }\n\n`\n","import styled from 'styled-components';\n\nexport const TableWrapper = styled.div`\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n`;\n\nexport const Table = styled.table`\n font-size: 14px;\n line-height: 143%;\n color: black;\n width: 100%;\n border-collapse: collapse;\n border-radius: 4px;\n\n th {\n font-weight: 600;\n font-size: 14px;\n line-height: 143%;\n letter-spacing: 0.018em;\n color: #5A5D68;\n text-align: left;\n padding: 8px;\n border-radius: 4px;\n }\n\n thead tr {\n background: #dadce3;\n }\n\n tbody tr {\n border: 1px solid #dadce3;\n }\n\n &.small td {\n padding: 4px;\n }\n\n &.medium td {\n padding: 8px;\n }\n\n &.large td {\n padding: 16px;\n }\n`;\n\nexport const TableLoadingWrapper = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: #f3f5f961;\n`;\n","import styled from 'styled-components';\n\nexport const SpinnerWrapper = styled.span`\n display: inline-block;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &.spinner--sm {\n width: 24px;\n height: 24px;\n }\n\n &.spinner--md {\n width: 32px;\n height: 32px;\n }\n\n &.spinner--lg {\n width: 60px;\n height: 60px;\n }\n\n span {\n box-sizing: border-box;\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n margin: 8px;\n border: 4px solid #fff;\n border-radius: 50%;\n animation: rotateSpinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;\n border-color: ${(props) => `var(--${props.color})`} transparent transparent\n transparent;\n }\n\n & span:nth-child(1) {\n animation-delay: -0.45s;\n }\n\n & span:nth-child(2) {\n animation-delay: -0.3s;\n }\n\n & span:nth-child(3) {\n animation-delay: -0.15s;\n }\n\n @keyframes rotateSpinner {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n`;\n","import React from 'react';\nimport cc from 'classcat';\n\nimport * as S from './styles';\n\nimport { SpinnerProps } from '../../../../interface/Table'\n\nconst Spinner: React.FC<SpinnerProps> = ({ color = 'neutral-3', size = 'md', className }) => {\n return (\n <S.SpinnerWrapper\n color={color}\n className={cc([`spinner--${size}`, className])}\n >\n <span />\n <span />\n <span />\n <span />\n </S.SpinnerWrapper>\n );\n};\n\nexport default Spinner;\n","import React, { forwardRef, Ref } from 'react';\nimport PropTypes from 'prop-types';\nimport cc from 'classcat';\n\nimport * as S from './styles';\nimport Spinner from '../Spinner';\n\nimport { TableProps } from '../../../../interface/Table'\n\nconst Table = forwardRef(\n ({ size = 'medium', children, isLoading = false, className = '', ...props }: TableProps, ref: Ref<HTMLTableElement>) => {\n return (\n <S.TableWrapper className={className}>\n {isLoading ? (\n <S.TableLoadingWrapper>\n <Spinner />\n </S.TableLoadingWrapper>\n ) : null}\n <S.Table className={cc([size])} ref={ref} {...props}>\n {children}\n </S.Table>\n </S.TableWrapper>\n );\n }\n);\n\nTable.propTypes = {\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n isLoading: PropTypes.bool,\n};\n\nexport default Table;\n","import React from 'react';\nimport unorm from 'unorm';\nimport { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = e.target.value.trim();\n const normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();\n \n const newFiles = initialFiles.filter(file => {\n const normalizedFileName = unorm.nfkd(file.name).toLowerCase();\n return normalizedFileName.includes(normalizedSearchTerm);\n });\n \n setFiles(searchTerm !== '' ? newFiles : initialFiles);\n}\n \n\n return (\n <div style={{ position: 'relative', width: '300px' }}>\n <input\n type=\"text\"\n onChange={(e) => searchName(e)}\n placeholder={placeholder}\n style={{\n paddingLeft: '40px',\n borderRadius: '5px',\n border: '1px solid #ccc',\n height: '40px',\n width: '100%',\n }}\n />\n <div\n style={{\n position: 'absolute',\n top: '10px',\n left: '10px',\n pointerEvents: 'none', \n }}\n >\n <FaSearch />\n </div>\n </div>\n );\n};\n\nexport default SearchInput;\n","import styled from 'styled-components';\n\ninterface FullScreenProps {\n isOpen: number;\n isFixed: number;\n zIndex: number;\n}\n\nexport const FullScreen = styled.div<FullScreenProps>`\n display: ${({ isOpen }) => (isOpen === 1 ? 'flex' : 'none')};\n cursor: ${({ isFixed }) => (isFixed === 0 ? 'pointer' : 'default')};\n\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n justify-content: center;\n align-items: center;\n z-index: ${({ zIndex }) => zIndex};\n animation: fadeIn 380ms ease-in-out 1;\n background-color: #2f3845b8;\n backdrop-filter: blur(2px);\n\n @keyframes fadeIn {\n from {\n background-color: #2f384521;\n }\n to {\n background-color: #2f3845b8;\n }\n }\n`;\n\ninterface ModalProps {\n maxWidth?: string;\n maxHeight?: string;\n}\n\nexport const Modal = styled.div<ModalProps>`\n background-color: #fff;\n border-radius: 3px;\n position: relative;\n cursor: default;\n width: 100%;\n max-width: ${({ maxWidth }) => maxWidth};\n animation: slideIn 350ms cubic-bezier(0.42, 0, 0.21, 1) 1;\n\n @keyframes slideIn {\n from {\n transform: translateY(-120px);\n opacity: 0;\n }\n\n 20% {\n opacity: 0;\n }\n\n to {\n transform: translateY(0);\n opacity: 1;\n }\n }\n`;\n\ninterface ModalContainerProps {\n maxHeight?: string;\n}\n\nexport const ModalContainer = styled.div<ModalContainerProps>`\n width: 100%;\n overflow-y: auto;\n max-height: ${({ maxHeight }) => maxHeight};\n`;\n\nexport const ModalHeader = styled.header`\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid #dadce3;\n padding: var(--spacement-medium);\n`;\n\nexport const ModalTitle = styled.div`\n font-style: normal;\n font-weight: normal;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: 0.0075em;\n color: var(--neutral-4);\n`;\n\nexport const ModalButtonClose = styled.button`\n outline: none;\n cursor: pointer;\n\n :hover {\n opacity: 0.7;\n }\n`;\n\ninterface ModalContentWrapperProps {\n overflowY?: string;\n maxHeight?: string;\n}\n\nexport const ModalContentWrapper = styled.div<ModalContentWrapperProps>`\n width: 100%;\n overflow-y: ${({ overflowY }) => overflowY};\n max-height: ${({ maxHeight }) => maxHeight};\n padding: var(--spacement-medium);\n`;\n\nexport const ModalFooterWrapper = styled.div`\n padding: var(--spacement-medium);\n background: var(--neutral-0);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--spacement-medium);\n`;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalFooterWrapper } from './styles';\n\ninterface ModalFooterProps {\n children: ReactNode;\n}\n\nconst ModalFooter: React.FC<ModalFooterProps> = ({ children, ...rest }) => {\n return <ModalFooterWrapper {...rest}>{children}</ModalFooterWrapper>;\n};\n\nModalFooter.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ModalFooter;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalContentWrapper } from './styles';\n\ninterface ModalContentProps {\n children: ReactNode;\n maxHeight?: string;\n overflowY?: string;\n}\n\nconst ModalContent: React.FC<ModalContentProps> = ({ children, maxHeight = 'max-content', overflowY = 'initial', ...rest }) => {\n return (\n <ModalContentWrapper maxHeight={maxHeight} overflowY={overflowY} {...rest}>\n {children}\n </ModalContentWrapper>\n );\n};\n\nModalContent.propTypes = {\n children: PropTypes.node.isRequired,\n maxHeight: PropTypes.string,\n overflowY: PropTypes.string,\n};\n\nexport default ModalContent;\n","import React, { useEffect, useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { MdClose } from 'react-icons/md';\n\nimport * as S from './styles';\nimport ModalFooter from './ModalFooter';\nimport ModalContent from './ModalContent';\nimport ModalHeader from './ModalHeader';\nimport ModalTitle from './ModalTitle';\nimport ModalButtonClose from './ModalButtonClose';\n\ninterface ModalProps {\n isOpen: boolean;\n style?: React.CSSProperties;\n maxWidth?: string;\n maxHeight?: string;\n className?: string;\n title?: string | React.ReactElement | React.ComponentType;\n children: React.ReactNode;\n onClose?: () => void;\n contentStyle?: React.CSSProperties;\n isFixed?: boolean;\n zIndex?: number;\n}\n\nconst Modal: React.FC<ModalProps> = ({\n isOpen,\n style,\n maxWidth,\n maxHeight,\n className,\n title,\n children,\n onClose,\n contentStyle,\n isFixed,\n zIndex,\n}) => {\n const modalRef = useRef<HTMLDivElement>(null);\n\n const handleKeyUp = useCallback(\n (e: KeyboardEvent) => {\n const keys: { [key: number]: () => void } = {\n // ESC Key\n 27: () => {\n e.preventDefault();\n if (!isFixed && onClose) {\n onClose();\n }\n window.removeEventListener('keyup', handleKeyUp, false);\n },\n };\n\n if (keys[e.keyCode] && isOpen) {\n keys[e.keyCode]();\n }\n },\n [onClose, isOpen, isFixed]\n );\n\n const handleOutsideClick = useCallback(\n (e: MouseEvent) => {\n if (modalRef.current && modalRef.current.parentNode === e.target) {\n if (!isFixed && onClose) {\n onClose();\n }\n document.removeEventListener('click', handleOutsideClick, false);\n }\n },\n [onClose, isFixed]\n );\n\n useEffect(() => {\n window.addEventListener('keyup', handleKeyUp, false);\n document.addEventListener('click', handleOutsideClick, false);\n\n return () => {\n window.removeEventListener('keyup', handleKeyUp, false);\n document.removeEventListener('click', handleOutsideClick, false);\n };\n }, [handleKeyUp, handleOutsideClick]);\n\n return (\n <S.FullScreen isFixed={isFixed ? 1 : 0} isOpen={isOpen ? 1 : 0} zIndex={zIndex ?? 0}>\n <S.Modal ref={modalRef} style={style} maxWidth={maxWidth} className={className}>\n <S.ModalContainer className=\"styleOverlay\" maxHeight={maxHeight} style={contentStyle}>\n <S.ModalHeader>\n <S.ModalTitle>{String(title)}</S.ModalTitle>\n <S.ModalButtonClose type=\"button\" onClick={onClose}>\n <MdClose color=\"#5A5D68\" size={16} />\n </S.ModalButtonClose>\n </S.ModalHeader>\n {children}\n </S.ModalContainer>\n </S.Modal>\n </S.FullScreen>\n );\n};\n\nModal.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.string,\n PropTypes.func,\n ]),\n children: PropTypes.node.isRequired,\n onClose: PropTypes.func,\n style: PropTypes.objectOf(PropTypes.any),\n contentStyle: PropTypes.objectOf(PropTypes.any),\n className: PropTypes.string,\n maxWidth: PropTypes.string,\n maxHeight: PropTypes.string,\n isFixed: PropTypes.bool,\n zIndex: PropTypes.number,\n};\n\nModal.defaultProps = {\n title: '',\n style: {},\n contentStyle: {},\n className: '',\n maxWidth: '360px',\n maxHeight: 'max-content',\n isFixed: false,\n onClose: () => {},\n zIndex: 9999,\n};\n\nexport { ModalHeader, ModalTitle, ModalButtonClose, ModalContent, ModalFooter };\nexport default Modal;\n","import styled from 'styled-components';\n\ninterface ContainerProps {\n hasBorder?: boolean;\n backgroundColor?: string;\n backgroundIcon?: string;\n}\n\nexport const Container = styled.div<ContainerProps>`\n width: 100%;\n display: flex;\n justify-content: center;\n padding: 24px 0;\n height: 193px;\n\n background: ${({ hasBorder }) =>\n hasBorder &&\n `linear-gradient(\n to right,\n #dadce3 50%,\n rgba(255, 255, 255, 0) 0%\n ),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, #dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%)`};\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: 40px 1px, 1px 40px;\n background-color: ${({ backgroundColor }) => backgroundColor};\n\n & .content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n & > .icon {\n background-color: ${({ backgroundIcon }) => backgroundIcon};\n border-radius: 16px;\n width: 145px;\n height: 145px;\n\n display: flex;\n justify-content: center;\n\n & svg {\n width: 100%;\n height: 70%;\n margin: 20px;\n }\n }\n\n & .description {\n max-width: 600px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 8px 0 8px 24px;\n\n .button-add {\n cursor: pointer;\n }\n\n .start-icon {\n display: flex;\n align-items: center;\n }\n }\n }\n`;\n","import React, { FC, ReactElement } from 'react';\nimport PropTypes from 'prop-types';\nimport * as S from './styles';\n\ninterface EmptyStateProps {\n icon?: string | ReactElement;\n title?: string;\n description?: string;\n activeButton?: boolean;\n iconButton?: ReactElement;\n descriptionButton?: string;\n widthButton?: string;\n button?: ReactElement;\n backgroundIcon?: string;\n backgroundColor?: string;\n hasBorder?: boolean;\n}\n\nconst EmptyState: FC<EmptyStateProps> = ({\n icon,\n title,\n description,\n activeButton,\n iconButton,\n descriptionButton,\n widthButton,\n button,\n backgroundIcon,\n backgroundColor,\n hasBorder,\n ...rest\n}) => {\n return (\n <S.Container\n backgroundIcon={backgroundIcon}\n backgroundColor={backgroundColor}\n hasBorder={hasBorder}\n {...rest}\n >\n <div className=\"content\">\n <div className=\"icon\">\n {icon}\n </div>\n <div className=\"description\">\n <h5> {title}</h5>\n\n <p>{description}</p>\n\n {activeButton ? (\n <button>\n {descriptionButton}\n </button>\n ) : null}\n\n {button}\n </div>\n </div>\n </S.Container>\n );\n};\n\nEmptyState.propTypes = {\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n title: PropTypes.string,\n description: PropTypes.string,\n activeButton: PropTypes.bool,\n iconButton: PropTypes.element,\n descriptionButton: PropTypes.string,\n widthButton: PropTypes.string,\n button: PropTypes.element,\n backgroundIcon: PropTypes.string,\n backgroundColor: PropTypes.string,\n hasBorder: PropTypes.bool,\n};\n\nEmptyState.defaultProps = {\n icon: '',\n title: '',\n description: '',\n activeButton: false,\n descriptionButton: '',\n widthButton: '140px',\n backgroundIcon: 'var(--neutral-0)',\n backgroundColor: 'var(--absolute-white)',\n hasBorder: true,\n};\n\nexport default EmptyState;\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n position: relative;\n width: 50%;\n margin-right: 5px;\n select {\n padding: 12px;\n border-radius: 4px;\n border: 1px solid #979AA5;\n width: 100%;\n height: 40px;\n \n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n option {\n background: white;\n font-size: 14px;\n color: #5a5d68;\n }\n\n option:checked, option:hover {\n background: #6690ff;\n font-size: 14px;\n color: white;\n }\n }\n`;\n","import React, { useState } from 'react';\nimport * as S from './styles';\n\ninterface SelectOption {\n value: string | number;\n label: string;\n}\n\ninterface SelectProps {\n options: SelectOption[];\n onSelect: (value: string) => void;\n placeholder?: string;\n}\n\nconst Select: React.FC<SelectProps> = ({ options, onSelect, placeholder }) => {\n const [selectedValue, setSelectedValue] = useState<string | number>('');\n\n const handleSelectChange = (event: React.ChangeEvent<HTMLSelectElement>) => {\n const selectedOption = event.target.value;\n setSelectedValue(selectedOption);\n onSelect(selectedOption);\n };\n\n return (\n <S.Container>\n <select value={selectedValue} onChange={handleSelectChange}>\n <option value=\"\" disabled hidden>\n {placeholder}\n </option>\n {options.map(option => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n </S.Container>\n );\n};\n\nexport default Select;\n","import styled from 'styled-components';\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 ? (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <input {...getInputProps()} />\n\n <span>\n <p>\n {t.fileArea.modal.descriptionUpload}\n </p>\n </span>\n <button type=\"button\" onClick={open}>\n {t.fileArea.modal.chooseFile}\n </button>\n </Container>\n ) : (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <p>{file}</p>\n </Container>\n )}\n </>\n );\n};\n\nAreaUpload.propTypes = {\n formatFile: PropTypes.string,\n multipleFile: PropTypes.bool,\n initialFiles: PropTypes.arrayOf(PropTypes.object as any),\n removeItem: PropTypes.func,\n setFile: PropTypes.func,\n onChange: PropTypes.func,\n hasListFiles: PropTypes.bool,\n};\n\nAreaUpload.defaultProps = {\n formatFile: 'application/json',\n multipleFile: false,\n initialFiles: [],\n removeItem: () => {},\n setFile: () => {},\n onChange: () => {},\n hasListFiles: true,\n};\n\nexport default AreaUpload;\n","import axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'http://localhost:5000';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","import React, { createContext, useContext, useEffect, useState } from 'react';\nimport api from '../service/Api';\n\ninterface Props {\n id: string;\n language: \"en\" | \"pt-br\" | \"es\";\n propTags: { tags: [] }\n personas: [{ name: string, description: string }]\n children?: React.ReactNode;\n}\n\ninterface SharedPropsContextType {\n props: Props;\n}\n\nconst SharedPropsContext = createContext<SharedPropsContextType | undefined>(undefined);\n\nexport const useSharedProps = () => {\n const context = useContext(SharedPropsContext);\n if (!context) {\n throw new Error('useSharedProps deve ser usado dentro de um SharedPropsProvider');\n }\n return context.props;\n};\n\nexport const SharedPropsProvider: React.FC<Props> = ({ children, ...props }) => {\n const { id } = props;\n const [tags, setTags] = useState<any>(null);\n const [personas, setPersonas] = useState<any>(null);\n\n useEffect(() => {\n const fetchData = async () => {\n try {\n const { data } = await api.get(`/tags/${id}`);\n\n if (data) {\n setTags(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n const personas = async () => {\n try {\n const { data } = await api.get(`/personas`);\n\n if (data) {\n setPersonas(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n fetchData();\n personas();\n }, [id]);\n\n const sharedProps = {\n ...props,\n propTags: tags,\n personas,\n };\n\n return (\n <SharedPropsContext.Provider value={{ props: sharedProps }}>\n {children}\n </SharedPropsContext.Provider>\n );\n};\n","const Types = {\n GET_FILES_REQUEST: 'GET_FILES_REQUEST',\n GET_FILES_SUCCESS: 'GET_FILES_SUCCESS',\n DELETE_FILES_REQUEST: 'DELETE_FILES_REQUEST',\n DELETE_FILES_SUCCESS: 'DELETE_FILES_SUCCESS',\n UPLOAD_FILES_REQUEST: 'UPLOAD_FILES_REQUEST',\n UPLOAD_FILES_SUCCESS: 'UPLOAD_FILES_SUCCESS',\n TEST_REQUEST: 'TEST_REQUEST',\n TEST_SUCCESS: 'TEST_SUCCESS'\n};\n\nexport default Types;\n","import types from './types'\n\nexport const getFilesAction = (id: string) => {\n return {\n type: types.GET_FILES_REQUEST,\n payload: { id }\n }\n}\n\nexport const getFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.GET_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const deleteFilesAction = (name: string, id: string) => {\n return {\n type: types.DELETE_FILES_REQUEST,\n payload: { name, id }\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]) => {\n return {\n type: types.UPLOAD_FILES_REQUEST,\n payload: { file, id, pressets }\n }\n}\n\nexport const uploadFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.UPLOAD_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const testAction = (question: string, profile: string, presset: string, files_directory: string) => {\n return {\n type: types.TEST_REQUEST,\n payload: { question, profile, presset, files_directory }\n }\n}\n\nexport const testActionSuccess = ({ message }: any) => {\n return {\n type: types.TEST_SUCCESS,\n payload: { message }\n }\n}","import React, { useEffect, useState} from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport { FaUpload, FaList, FaPlus } from 'react-icons/fa';\n\nimport type { FileData } from '../../interface/FileData'\n\nimport { getLanguage } from '../../utils/getLanguage'\n\nimport * as S from './styles';\nimport Table from './components/Table';\nimport Search from './components/Search';\nimport Modal from './components/Modal'\nimport ModalFooter from './components/Modal/ModalFooter'\nimport ModalContent from './components/Modal/ModalContent'\nimport EmptyState from '../EmptyState';\nimport Select from '../Select'\nimport AreaUpload from './components/AreaUpload';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { deleteFilesAction, getFilesAction } from '../../store/modules/actions';\n\nexport const FileArea = () => {\n const { id, language, propTags, personas } = useSharedProps();\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const [uploadFile, setUploadFile] = useState<{ content: ArrayBuffer | string; properties: File }>();\n const [modal, setModal] = useState(false)\n const [modalDelete, setModalDelete] = useState(false)\n const [fileDelete, setFileDelete] = useState('')\n const [presset, setPresset] = useState('');\n const t = getLanguage(language)\n const dispatch = useDispatch();\n const initFiles = useSelector((state: any) => state.files);\n const tags = propTags ? propTags.tags : [];\n\n useEffect(() => {\n dispatch(getFilesAction(id))\n }, [id])\n\n useEffect(() => {\n if(!!initFiles){\n setFiles(initFiles)\n setInitialFiles(initFiles)\n }\n }, [initFiles])\n\n const optionsPresset = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n\n const pressetTag = (tags: string) => {\n const tagsSplit = tags.split(',');\n let html = '';\n\n html += tagsSplit.map(tag => {\n return `<p class='tag'>${tag}</p>`;\n }).join('');\n\n return html;\n }\n\n const handleOpenModal = () => {\n setModal(!modal)\n }\n\n const handleOpenModalDelete = (name: string) => {\n setFileDelete(name + '.pdf')\n setModalDelete(!modalDelete)\n\n }\n\n const deleteFile = () => {\n dispatch(deleteFilesAction(fileDelete, id))\n }\n\n const handleUploadFile = () => {\n console.log('uploadFile: ', uploadFile, 'presset: ', presset, 'id: ', id);\n };\n\n const renderFiles = () => { \n return (\n <S.Container>\n <S.Header>\n <div className='infos'>\n <h2>{t.files}</h2>\n <p>{t.fileArea.description}</p>\n </div>\n <div className='actions'>\n <Search placeholder={t.fileArea.search} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button onClick={handleOpenModal}><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\n {\n files.length === 0 ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.fileArea.emptyState.title}\n description={t.fileArea.emptyState.description}\n activeButton\n iconButton={<FaPlus style={{ width: '15px', height: '15px' }} />}\n descriptionButton={t.fileArea.modal.chooseFile}\n widthButton=\"230px\"\n />\n ) : <Table>\n <thead>\n <tr>\n <th className=\"th_file_name\">\n {t.fileArea.fileName}\n </th>\n <th className=\"th_pressets\">\n {t.fileArea.presset}\n </th>\n <th className=\"th_actions\">\n {t.fileArea.actions}\n </th>\n </tr>\n </thead>\n\n <tbody>\n {files.map((object) => (\n <tr>\n <td>{object.name}</td>\n <td className='tags' dangerouslySetInnerHTML={{ __html: pressetTag(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete' onClick={() => handleOpenModalDelete(object.name)}>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n }\n <Modal\n isOpen={modal}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={handleOpenModal}\n title={t.fileArea.modal.uploadFile}\n >\n <ModalContent>\n <div className='choose-file'>\n <AreaUpload\n setFile={setUploadFile}\n file={uploadFile?.properties.name}\n />\n </div>\n <div className='presset'>\n <p>Presset</p>\n <Select placeholder={t.testArea.selectPresset} options={optionsPresset} onSelect={setPresset} />\n </div> \n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={handleOpenModal}>\n {t.buttons.cancel}\n </button>\n <button onClick={() => handleUploadFile()} className='button send' type=\"submit\" form=\"form-tts\">\n {t.buttons.send}\n </button>\n </ModalFooter>\n \n </Modal>\n <Modal\n isOpen={modalDelete}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={() => handleOpenModalDelete('')}\n title={t.fileArea.modal.deleteFileTitle}\n >\n <ModalContent>\n <p id='warning'>{t.fileArea.modal.deleteFile}</p>\n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={() => handleOpenModalDelete('')}>\n {t.buttons.cancel}\n </button>\n <button className='button delete' type=\"submit\" form=\"form-tts\" onClick={deleteFile}>\n {t.buttons.delete}\n </button>\n </ModalFooter>\n </Modal>\n </S.Container>\n );\n }\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n {renderFiles()}\n </S.Container>\n </SharedPropsProvider>\n );\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n`\n\nexport const Inputs = styled.div`\n display: flex;\n justify-content: space-between;\n margin-bottom: 10px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n width: 190px;\n height: 40px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n width: 23px;\n height: 23px;\n }\n }\n`\n\nexport const Result = styled.div`\n display: flex;\n justify-content: left;\n background: #F3F5F9;\n padding: 15px;\n border-radius: 5px;\n margin-top: 15px;\n\n .text{\n margin-left: 5px;\n font-size: 14px;\n line-height: 1.5;\n }\n\n .icon {\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: 5px;\n\n svg {\n width: 35px;\n height: 35px;\n }\n }\n\n`","import styled from 'styled-components';\nimport { FaMicrophone } from 'react-icons/fa';\n\nexport const Container = styled.div`\n position: relative;\n width: 100%;\n margin-right: 5px;\n`;\n\nexport const StyledInput = styled.input`\n padding-left: 10px;\n padding-right: 40px;\n border-radius: 5px;\n border: 1px solid #ccc;\n height: 40px;\n width: 100%;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n`;\n\nexport const RecordAudioButton = styled.div`\n position: absolute;\n top: 10px;\n right: 10px;\n cursor: pointer;\n`;\n\nexport const StyledMicrophoneIcon = styled(FaMicrophone)`\n pointer-events: none;\n`;\n","import React from 'react';\nimport * as S from './styles';\n\ninterface InputTestProps {\n placeholder: string;\n onChange: (value: string) => void;\n onRecordAudio: () => void;\n}\n\nconst InputTest: React.FC<InputTestProps> = ({ placeholder, onChange, onRecordAudio }) => {\n return (\n <S.Container>\n <S.StyledInput\n type=\"text\"\n onChange={(e: any) => onChange(e.target.value)}\n placeholder={placeholder}\n />\n <S.RecordAudioButton onClick={onRecordAudio}>\n <S.StyledMicrophoneIcon />\n </S.RecordAudioButton>\n </S.Container>\n );\n};\n\nexport default InputTest;\n","import React, { useState } from 'react';\nimport { getLanguage } from '../../utils/getLanguage'\nimport * as S from './styles';\nimport Select from '../Select'\nimport InputTest from './components/InputTest'\nimport { PiWaveformBold } from 'react-icons/pi';\nimport { FaList } from 'react-icons/fa';\nimport EmptyState from '../EmptyState';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { MdPerson2 } from \"react-icons/md\";\nimport { useDispatch, useSelector } from 'react-redux';\nimport { testAction } from '../../store/modules/actions';\n\nexport const TestArea = () => {\n const { id, language, personas, propTags } = useSharedProps();\n const t = getLanguage(language)\n const results = useSelector((state: any) => state.message);\n const [search, setSearch] = useState('');\n const [profile, setProfile] = useState('');\n const [presset, setPresset] = useState('');\n const dispatch = useDispatch();\n const tags = propTags ? propTags.tags : [];\n\n const optionsPersona = personas.map(persona => {\n return { label: persona.name, value: persona.name }\n })\n\n const optionsPresset = tags.map(tag => {\n return { label: tag, value: tag }\n })\n\n const handleSelectPersona = (value: string) => {\n setProfile(value);\n };\n\n const handleSelectPresset = (value: string) => {\n setPresset(value);\n };\n\n const handleSearch = (value: string) => {\n setSearch(value);\n };\n\n const handleRecordAudio = () => {\n console.log('Iniciando gravação de áudio...');\n };\n\n const handleTest = () => {\n dispatch(testAction(search, profile, presset, id))\n };\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n <S.Header>\n <div className='infos'>\n <h2>{t.test}</h2>\n <p>{t.testArea.description}</p>\n </div>\n </S.Header>\n <S.Inputs>\n <InputTest placeholder={t.testArea.typeSentence} onChange={handleSearch} onRecordAudio={handleRecordAudio} />\n <Select placeholder={t.testArea.selectPersona} options={optionsPersona} onSelect={handleSelectPersona} />\n <Select placeholder={t.testArea.selectPresset} options={optionsPresset} onSelect={handleSelectPresset} />\n <button onClick={handleTest}><PiWaveformBold /> {t.buttons.test}</button>\n </S.Inputs>\n {\n !results ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.testArea.emptyState.title}\n description={t.testArea.emptyState.description}\n activeButton={false}\n />\n ) : <S.Result>\n <div className='icon'>\n <MdPerson2 />\n </div>\n <div className='text'>{results}</div>\n </S.Result>\n }\n </S.Container>\n </SharedPropsProvider>\n );\n};","import React, { useMemo, Suspense } from 'react';\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\nimport { getLanguage } from './utils/getLanguage'\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\n\nimport { SharedPropsProvider } from './contexts/SharedPropsProvider';\n\nexport const Leia = (props: Props) => {\n const match = useRouteMatch();\n const { pathname } = useLocation();\n const history = useHistory();\n\n const t = getLanguage(props.language)\n\n const activeTab = useMemo(() => {\n return pathname.split('/')[5] || 'files';\n }, [pathname]);\n\n return (\n <SharedPropsProvider propTags={{ tags: [] }} personas={[{name: '', description: ''}]} {...props}>\n <>\n <Tabs\n value={activeTab}\n onChange={(value) => history.push(`${match.url}/${value}`)}\n >\n <Tab value=\"files\">{t.files}</Tab>\n <Tab value=\"test\">{t.test}</Tab>\n </Tabs>\n <Suspense fallback={props.loading}>\n <SwitchRoute>\n <Route path={`${match.path}`} exact component={FileArea} />\n <Route path={`${match.path}/files`} component={FileArea} />\n <Route path={`${match.path}/test`} component={TestArea} />\n </SwitchRoute>\n </Suspense>\n </>\n </SharedPropsProvider>\n );\n};\n","import { produce } from 'immer';\nimport types from './types'\n\nconst INITIAL_STATE = {\n files: [],\n message: ''\n}\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 default:\n return action.payload;\n }\n });\n}\n","import { takeLatest, all, put, call } from 'redux-saga/effects';\nimport api from '../../service/Api'\nimport Types from './types'\nimport { getFilesActionSuccess, deleteFilesActionSuccess, testActionSuccess, uploadFilesActionSuccess } from './actions'\n\nexport function* getFilesSaga(action: any) {\n try {\n const { id } = action.payload\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(getFilesActionSuccess({ files: data.files}));\n } catch (error) {\n console.log('-----------getFiles.error------------------->', error);\n }\n}\n\nexport function* deleteFilesSaga(action: any) {\n try {\n const { id, name } = action.payload\n yield call(api.delete, `/delete/${id}/${name}`);\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(deleteFilesActionSuccess({ files: data.files }));\n } catch (error) {\n console.log('-----------deleteFilesSaga.error------------------->', error);\n }\n}\n\nexport function* testSaga(action: any) {\n try {\n const { question, profile, presset, files_directory } = action.payload\n const { data } = yield call(api.post, `/ask`, { question, profile, tag: presset, files_directory });\n yield put(testActionSuccess({ message: data.message }));\n } catch (error) {\n console.log('-----------testSaga.error------------------->', error);\n }\n}\n\nexport function* uploadFilesSaga(action: any) {\n try {\n const { id, file, pressets } = action.payload;\n const tags = pressets.join(',');\n \n const formData = new FormData();\n formData.append('file', file); \n \n const queryParams = new URLSearchParams({ tags }).toString();\n\n yield call(api.post, `/upload/${id}?${queryParams}`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n } catch (error) {\n console.log('-----------uploadFilesSaga.error------------------->', error);\n }\n}\n\nexport default function* filesSagas() {\n yield all([\n takeLatest(Types.GET_FILES_REQUEST, getFilesSaga),\n takeLatest(Types.DELETE_FILES_REQUEST, deleteFilesSaga),\n takeLatest(Types.UPLOAD_FILES_REQUEST, uploadFilesSaga),\n takeLatest(Types.TEST_REQUEST, testSaga)\n ]);\n}\n","import { createStore, applyMiddleware } from 'redux';\nimport createSagaMiddleware from 'redux-saga';\nimport Reducer from './modules/reducer';\nimport Sagas from './modules/sagas';\n\nconst sagaMiddleware = createSagaMiddleware();\n\nconst store = createStore(Reducer, applyMiddleware(sagaMiddleware));\n\nsagaMiddleware.run(Sagas);\n\nexport default store;\n\n","import type { PropsWithChildren, ReactElement } from 'react';\nimport { Provider } from 'react-redux';\nimport React from 'react';\nimport { Leia } from './Leia';\nimport store from './store';\n\nexport type Props = PropsWithChildren<{\n id: string;\n activeTab: string;\n language: \"en\" | \"pt-br\" | \"es\";\n loading: ReactElement\n}>;\n\nexport function Code7(props: Props) {\n return <Provider store={store}>\n <Leia {...props} />\n </Provider>;\n}"],"names":["TabsPane","styled","ul","_templateObject","_taggedTemplateLiteralLoose","Tab","li","_templateObject2","_ref","active","children","rest","_objectWithoutPropertiesLoose","_excluded","React","S","className","cc","propTypes","PropTypes","oneOfType","string","element","node","isRequired","onChange","func","value","bool","defaultProps","Tabs","_ref2","childrenProp","_excluded2","Children","map","child","isValidElement","Array","isArray","_child$props","props","_child$props2","cloneElement","_child$props3","onClick","_child$props4","number","defaultLanguage","files","test","fileArea","description","fileName","presset","actions","search","fileUpload","emptyState","title","modal","descriptionUpload","chooseFile","uploadFile","deleteFileTitle","deleteFile","buttons","cancel","send","testArea","typeSentence","selectPersona","selectPresset","getLanguage","language","languages","en","_extends","es","Container","div","Header","TableWrapper","Table","table","TableLoadingWrapper","_templateObject3","SpinnerWrapper","span","color","Spinner","_ref$color","_ref$size","size","forwardRef","ref","_ref$isLoading","isLoading","_ref$className","oneOf","SearchInput","placeholder","setFiles","initialFiles","searchName","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","normalizedFileName","name","includes","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FullScreen","isOpen","isFixed","_ref3","zIndex","Modal","_ref4","maxWidth","ModalContainer","_ref5","maxHeight","ModalHeader","header","_templateObject4","ModalTitle","_templateObject5","ModalButtonClose","button","_templateObject6","ModalContentWrapper","_templateObject7","_ref6","overflowY","_ref7","ModalFooterWrapper","_templateObject8","ModalFooter","ModalContent","_ref$maxHeight","_ref$overflowY","onClose","contentStyle","modalRef","useRef","handleKeyUp","useCallback","keys","_","preventDefault","window","removeEventListener","keyCode","handleOutsideClick","current","parentNode","document","useEffect","addEventListener","String","MdClose","objectOf","any","hasBorder","backgroundColor","backgroundIcon","EmptyState","icon","activeButton","iconButton","descriptionButton","widthButton","Select","options","onSelect","_useState","useState","selectedValue","setSelectedValue","handleSelectChange","event","selectedOption","disabled","hidden","option","key","label","getColor","isDragAccept","isDragReject","isDragActive","AreaUpload","formatFile","_ref$formatFile","_ref$multipleFile","multipleFile","_ref$initialFiles","_ref$setFile","setFile","_ref$file","_ref$onChange","myFiles","setMyFiles","t","concat","onDrop","acceptedFiles","fileRejections","length","console","error","filesWithId","item","index","id","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","SharedPropsContext","createContext","undefined","useSharedProps","context","useContext","Error","SharedPropsProvider","tags","setTags","_useState2","personas","setPersonas","fetchData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$api$get","data","wrap","_callee$","_context","prev","next","api","get","sent","t0","stop","apply","arguments","_callee2","_yield$api$get2","_callee2$","_context2","sharedProps","propTags","Provider","Types","GET_FILES_REQUEST","GET_FILES_SUCCESS","DELETE_FILES_REQUEST","DELETE_FILES_SUCCESS","UPLOAD_FILES_REQUEST","UPLOAD_FILES_SUCCESS","TEST_REQUEST","TEST_SUCCESS","getFilesAction","types","payload","getFilesActionSuccess","deleteFilesAction","deleteFilesActionSuccess","uploadFilesActionSuccess","testAction","question","profile","files_directory","testActionSuccess","message","FileArea","_useSharedProps","setInitialFiles","_useState3","setUploadFile","_useState4","setModal","_useState5","modalDelete","setModalDelete","_useState6","fileDelete","setFileDelete","_useState7","setPresset","dispatch","useDispatch","initFiles","useSelector","state","optionsPresset","tag","pressetTag","tagsSplit","split","html","join","handleOpenModal","handleOpenModalDelete","handleUploadFile","log","renderFiles","Search","FaUpload","FaList","FaPlus","dangerouslySetInnerHTML","__html","form","Inputs","Result","StyledInput","input","RecordAudioButton","StyledMicrophoneIcon","FaMicrophone","InputTest","onRecordAudio","TestArea","results","setSearch","setProfile","optionsPersona","persona","handleSelectPersona","handleSelectPresset","handleSearch","handleRecordAudio","handleTest","PiWaveformBold","MdPerson2","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","activeTab","useMemo","push","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","INITIAL_STATE","filesReducer","action","produce","draft","getFilesSaga","_marked2","deleteFilesSaga","_marked3","testSaga","_marked4","uploadFilesSaga","_marked5","filesSagas","_yield$call","getFilesSaga$","call","put","_marked","_action$payload","_yield$call2","deleteFilesSaga$","_action$payload2","_yield$call3","testSaga$","_context3","post","_action$payload3","pressets","formData","queryParams","_yield$call4","uploadFilesSaga$","_context4","FormData","append","URLSearchParams","toString","headers","filesSagas$","_context5","all","takeLatest","sagaMiddleware","createSagaMiddleware","store","createStore","Reducer","applyMiddleware","run","Sagas","Code7"],"mappings":"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"}
1
+ {"version":3,"file":"code7-leia.cjs.development.js","sources":["../src/components/Tabs/styles.tsx","../src/components/Tabs/index.tsx","../src/utils/getLanguage.tsx","../src/components/FileArea/styles.tsx","../src/components/FileArea/components/Table/styles.tsx","../src/components/FileArea/components/Spinner/styles.tsx","../src/components/FileArea/components/Spinner/index.tsx","../src/components/FileArea/components/Table/index.tsx","../src/components/FileArea/components/Search/index.tsx","../src/components/FileArea/components/Modal/styles.tsx","../src/components/FileArea/components/Modal/ModalFooter.tsx","../src/components/FileArea/components/Modal/ModalContent.tsx","../src/components/FileArea/components/Modal/index.tsx","../src/components/EmptyState/styles.tsx","../src/components/EmptyState/index.tsx","../src/components/Select/styles.tsx","../src/components/Select/index.tsx","../src/components/FileArea/components/AreaUpload/styles.tsx","../src/components/FileArea/components/AreaUpload/index.tsx","../src/service/Api.ts","../src/contexts/SharedPropsProvider.tsx","../src/store/modules/types.ts","../src/store/modules/actions.ts","../src/components/FileArea/index.tsx","../src/components/TestArea/styles.tsx","../src/components/TestArea/components/InputTest/styles.tsx","../src/components/TestArea/components/InputTest/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../src/store/modules/reducer.ts","../src/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","\nimport { Language } from '../interface/Language'\n\nconst defaultLanguage: Language = {\n files: 'Files',\n test: 'Test',\n fileArea: {\n description: 'bla bla bla bla bla',\n fileName: 'File name',\n presset: 'Presset',\n actions: 'Actions',\n search: 'Search',\n fileUpload: 'File upload',\n emptyState: {\n title: 'No data',\n description: 'bla bla bla bla bla',\n },\n modal: {\n descriptionUpload: 'Drag and drop files here or',\n chooseFile: 'Choose a file',\n uploadFile: 'Upload a file',\n deleteFileTitle: 'Delete a file',\n deleteFile: 'Important! By deleting this file, you will lose all its information and will not be able to recover it.'\n },\n },\n buttons: {\n cancel: 'Cancel',\n send: 'Send',\n delete: 'Delete',\n test: 'Test',\n },\n testArea: {\n description: 'bla bla bla bla bla',\n typeSentence: 'Type a sentence',\n selectPersona: 'Select a Persona',\n selectPresset: 'Select a presset',\n emptyState: {\n title: 'No data for analysis',\n description: 'Do a search, click the \"Test\" button.',\n },\n },\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages = {\n en: defaultLanguage,\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n fileArea: {\n ...defaultLanguage.fileArea,\n fileName: 'Nome do arquivo',\n presset: 'Presset',\n actions: 'Ações',\n search: 'Pesquisar',\n fileUpload: 'Upload de arquivo',\n emptyState: {\n ...defaultLanguage.fileArea.emptyState,\n title: 'Sem dados',\n },\n modal: {\n ...defaultLanguage.fileArea.modal,\n descriptionUpload: 'Arraste e solte os arquivos aqui ou',\n chooseFile: 'Escolha um arquivo',\n uploadFile: 'Enviar um arquivo',\n deleteFileTitle: 'Deletar um arquivo',\n deleteFile: 'Importante! Ao deletar esse arquivo você perderá todas as informações dele e não terá como recuperá-las.'\n },\n },\n buttons: {\n ...defaultLanguage.buttons,\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Excluir',\n test: 'Testar',\n },\n testArea: {\n ...defaultLanguage.testArea,\n description: 'Digite uma frase para testar a inteligência artificial.',\n typeSentence: 'Digite uma frase',\n selectPersona: 'Selecione uma Persona',\n selectPresset: 'Selecione uma predefinição',\n emptyState: {\n ...defaultLanguage.testArea.emptyState,\n title: 'Sem dados para análise',\n description: 'Faça uma pesquisa, clique no botão \"Teste\".',\n },\n },\n },\n es: {\n ...defaultLanguage,\n files: 'Archivos',\n test: 'Prueba',\n fileArea: {\n ...defaultLanguage.fileArea,\n fileName: 'Nombre del archivo',\n presset: 'Presset',\n actions: 'Acciones',\n search: 'Buscar',\n fileUpload: 'Carga de archivos',\n emptyState: {\n ...defaultLanguage.fileArea.emptyState,\n title: 'Sin datos',\n },\n modal: {\n ...defaultLanguage.fileArea.modal,\n descriptionUpload: 'Arrastre y suelte los archivos aquí o',\n chooseFile: 'Elegir un archivo',\n deleteFileTitle: 'Eliminar un archivo',\n deleteFile: '¡Importante! Al borrar este archivo perderás toda la información contenida en él y no podrás recuperarla.'\n },\n },\n buttons: {\n ...defaultLanguage.buttons,\n cancel: 'Cancelar',\n send: 'Enviar',\n delete: 'Eliminar',\n test: 'Probar',\n },\n testArea: {\n ...defaultLanguage.testArea,\n description: 'bla bla bla bla bla',\n typeSentence: 'Escribe una oración',\n selectPersona: 'Seleccionar una Persona',\n selectPresset: 'Seleccionar una configuración preestablecida',\n emptyState: {\n ...defaultLanguage.testArea.emptyState,\n title: 'Sin datos para el análisis',\n description: 'Realiza una búsqueda, haz clic en el botón \"Prueba\".',\n },\n },\n },\n };\n\n return languages[language] || defaultLanguage;\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n .tag {\n padding: 4px 8px 4px 8px;\n background: #C7F9ED;\n border-radius: 4px;\n }\n\n .tags {\n display: flex;\n justify-content: left;\n gap: 4px;\n }\n\n .divDelete {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n }\n\n .buttonDelete {\n color: #5b0a1f;\n background: #fae0d2;\n padding: 12px 20px;\n border-radius: 4px;\n }\n\n .buttonDelete:hover {\n background: #f5bba7;\n }\n\n .button {\n padding: 8px 16px 8px 16px;\n border-radius: 4px;\n gap: 10px;\n }\n\n .cancel {\n background: #F3F5F9;\n color: #5A5D68;\n }\n\n .send {\n background: #102693;\n color: white;\n }\n\n .delete {\n background: #871821;\n color: white;\n }\n\n .presset {\n padding-top: 10px;\n display: flex;\n flex-direction: column;\n }\n\n #warning {\n padding: 10px;\n background: #FAE0D2;\n color: #871821;\n }\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n\n .actions {\n display: flex;\n justify-content: space-between;\n padding-bottom: 14px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n }\n }\n\n`\n","import styled from 'styled-components';\n\nexport const TableWrapper = styled.div`\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n`;\n\nexport const Table = styled.table`\n font-size: 14px;\n line-height: 143%;\n color: black;\n width: 100%;\n border-collapse: collapse;\n border-radius: 4px;\n\n th {\n font-weight: 600;\n font-size: 14px;\n line-height: 143%;\n letter-spacing: 0.018em;\n color: #5A5D68;\n text-align: left;\n padding: 8px;\n border-radius: 4px;\n }\n\n thead tr {\n background: #dadce3;\n }\n\n tbody tr {\n border: 1px solid #dadce3;\n }\n\n &.small td {\n padding: 4px;\n }\n\n &.medium td {\n padding: 8px;\n }\n\n &.large td {\n padding: 16px;\n }\n`;\n\nexport const TableLoadingWrapper = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: #f3f5f961;\n`;\n","import styled from 'styled-components';\n\nexport const SpinnerWrapper = styled.span`\n display: inline-block;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &.spinner--sm {\n width: 24px;\n height: 24px;\n }\n\n &.spinner--md {\n width: 32px;\n height: 32px;\n }\n\n &.spinner--lg {\n width: 60px;\n height: 60px;\n }\n\n span {\n box-sizing: border-box;\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n margin: 8px;\n border: 4px solid #fff;\n border-radius: 50%;\n animation: rotateSpinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;\n border-color: ${(props) => `var(--${props.color})`} transparent transparent\n transparent;\n }\n\n & span:nth-child(1) {\n animation-delay: -0.45s;\n }\n\n & span:nth-child(2) {\n animation-delay: -0.3s;\n }\n\n & span:nth-child(3) {\n animation-delay: -0.15s;\n }\n\n @keyframes rotateSpinner {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n`;\n","import React from 'react';\nimport cc from 'classcat';\n\nimport * as S from './styles';\n\nimport { SpinnerProps } from '../../../../interface/Table'\n\nconst Spinner: React.FC<SpinnerProps> = ({ color = 'neutral-3', size = 'md', className }) => {\n return (\n <S.SpinnerWrapper\n color={color}\n className={cc([`spinner--${size}`, className])}\n >\n <span />\n <span />\n <span />\n <span />\n </S.SpinnerWrapper>\n );\n};\n\nexport default Spinner;\n","import React, { forwardRef, Ref } from 'react';\nimport PropTypes from 'prop-types';\nimport cc from 'classcat';\n\nimport * as S from './styles';\nimport Spinner from '../Spinner';\n\nimport { TableProps } from '../../../../interface/Table'\n\nconst Table = forwardRef(\n ({ size = 'medium', children, isLoading = false, className = '', ...props }: TableProps, ref: Ref<HTMLTableElement>) => {\n return (\n <S.TableWrapper className={className}>\n {isLoading ? (\n <S.TableLoadingWrapper>\n <Spinner />\n </S.TableLoadingWrapper>\n ) : null}\n <S.Table className={cc([size])} ref={ref} {...props}>\n {children}\n </S.Table>\n </S.TableWrapper>\n );\n }\n);\n\nTable.propTypes = {\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n isLoading: PropTypes.bool,\n};\n\nexport default Table;\n","import React from 'react';\nimport unorm from 'unorm';\nimport { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = e.target.value.trim();\n const normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();\n \n const newFiles = initialFiles.filter(file => {\n const normalizedFileName = unorm.nfkd(file.name).toLowerCase();\n return normalizedFileName.includes(normalizedSearchTerm);\n });\n \n setFiles(searchTerm !== '' ? newFiles : initialFiles);\n}\n \n\n return (\n <div style={{ position: 'relative', width: '300px' }}>\n <input\n type=\"text\"\n onChange={(e) => searchName(e)}\n placeholder={placeholder}\n style={{\n paddingLeft: '40px',\n borderRadius: '5px',\n border: '1px solid #ccc',\n height: '40px',\n width: '100%',\n }}\n />\n <div\n style={{\n position: 'absolute',\n top: '10px',\n left: '10px',\n pointerEvents: 'none', \n }}\n >\n <FaSearch />\n </div>\n </div>\n );\n};\n\nexport default SearchInput;\n","import styled from 'styled-components';\n\ninterface FullScreenProps {\n isOpen: number;\n isFixed: number;\n zIndex: number;\n}\n\nexport const FullScreen = styled.div<FullScreenProps>`\n display: ${({ isOpen }) => (isOpen === 1 ? 'flex' : 'none')};\n cursor: ${({ isFixed }) => (isFixed === 0 ? 'pointer' : 'default')};\n\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n justify-content: center;\n align-items: center;\n z-index: ${({ zIndex }) => zIndex};\n animation: fadeIn 380ms ease-in-out 1;\n background-color: #2f3845b8;\n backdrop-filter: blur(2px);\n\n @keyframes fadeIn {\n from {\n background-color: #2f384521;\n }\n to {\n background-color: #2f3845b8;\n }\n }\n`;\n\ninterface ModalProps {\n maxWidth?: string;\n maxHeight?: string;\n}\n\nexport const Modal = styled.div<ModalProps>`\n background-color: #fff;\n border-radius: 3px;\n position: relative;\n cursor: default;\n width: 100%;\n max-width: ${({ maxWidth }) => maxWidth};\n animation: slideIn 350ms cubic-bezier(0.42, 0, 0.21, 1) 1;\n\n @keyframes slideIn {\n from {\n transform: translateY(-120px);\n opacity: 0;\n }\n\n 20% {\n opacity: 0;\n }\n\n to {\n transform: translateY(0);\n opacity: 1;\n }\n }\n`;\n\ninterface ModalContainerProps {\n maxHeight?: string;\n}\n\nexport const ModalContainer = styled.div<ModalContainerProps>`\n width: 100%;\n overflow-y: auto;\n max-height: ${({ maxHeight }) => maxHeight};\n`;\n\nexport const ModalHeader = styled.header`\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid #dadce3;\n padding: var(--spacement-medium);\n`;\n\nexport const ModalTitle = styled.div`\n font-style: normal;\n font-weight: normal;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: 0.0075em;\n color: var(--neutral-4);\n`;\n\nexport const ModalButtonClose = styled.button`\n outline: none;\n cursor: pointer;\n\n :hover {\n opacity: 0.7;\n }\n`;\n\ninterface ModalContentWrapperProps {\n overflowY?: string;\n maxHeight?: string;\n}\n\nexport const ModalContentWrapper = styled.div<ModalContentWrapperProps>`\n width: 100%;\n overflow-y: ${({ overflowY }) => overflowY};\n max-height: ${({ maxHeight }) => maxHeight};\n padding: var(--spacement-medium);\n`;\n\nexport const ModalFooterWrapper = styled.div`\n padding: var(--spacement-medium);\n background: var(--neutral-0);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--spacement-medium);\n`;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalFooterWrapper } from './styles';\n\ninterface ModalFooterProps {\n children: ReactNode;\n}\n\nconst ModalFooter: React.FC<ModalFooterProps> = ({ children, ...rest }) => {\n return <ModalFooterWrapper {...rest}>{children}</ModalFooterWrapper>;\n};\n\nModalFooter.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ModalFooter;\n","import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ModalContentWrapper } from './styles';\n\ninterface ModalContentProps {\n children: ReactNode;\n maxHeight?: string;\n overflowY?: string;\n}\n\nconst ModalContent: React.FC<ModalContentProps> = ({ children, maxHeight = 'max-content', overflowY = 'initial', ...rest }) => {\n return (\n <ModalContentWrapper maxHeight={maxHeight} overflowY={overflowY} {...rest}>\n {children}\n </ModalContentWrapper>\n );\n};\n\nModalContent.propTypes = {\n children: PropTypes.node.isRequired,\n maxHeight: PropTypes.string,\n overflowY: PropTypes.string,\n};\n\nexport default ModalContent;\n","import React, { useEffect, useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { MdClose } from 'react-icons/md';\n\nimport * as S from './styles';\nimport ModalFooter from './ModalFooter';\nimport ModalContent from './ModalContent';\nimport ModalHeader from './ModalHeader';\nimport ModalTitle from './ModalTitle';\nimport ModalButtonClose from './ModalButtonClose';\n\ninterface ModalProps {\n isOpen: boolean;\n style?: React.CSSProperties;\n maxWidth?: string;\n maxHeight?: string;\n className?: string;\n title?: string | React.ReactElement | React.ComponentType;\n children: React.ReactNode;\n onClose?: () => void;\n contentStyle?: React.CSSProperties;\n isFixed?: boolean;\n zIndex?: number;\n}\n\nconst Modal: React.FC<ModalProps> = ({\n isOpen,\n style,\n maxWidth,\n maxHeight,\n className,\n title,\n children,\n onClose,\n contentStyle,\n isFixed,\n zIndex,\n}) => {\n const modalRef = useRef<HTMLDivElement>(null);\n\n const handleKeyUp = useCallback(\n (e: KeyboardEvent) => {\n const keys: { [key: number]: () => void } = {\n // ESC Key\n 27: () => {\n e.preventDefault();\n if (!isFixed && onClose) {\n onClose();\n }\n window.removeEventListener('keyup', handleKeyUp, false);\n },\n };\n\n if (keys[e.keyCode] && isOpen) {\n keys[e.keyCode]();\n }\n },\n [onClose, isOpen, isFixed]\n );\n\n const handleOutsideClick = useCallback(\n (e: MouseEvent) => {\n if (modalRef.current && modalRef.current.parentNode === e.target) {\n if (!isFixed && onClose) {\n onClose();\n }\n document.removeEventListener('click', handleOutsideClick, false);\n }\n },\n [onClose, isFixed]\n );\n\n useEffect(() => {\n window.addEventListener('keyup', handleKeyUp, false);\n document.addEventListener('click', handleOutsideClick, false);\n\n return () => {\n window.removeEventListener('keyup', handleKeyUp, false);\n document.removeEventListener('click', handleOutsideClick, false);\n };\n }, [handleKeyUp, handleOutsideClick]);\n\n return (\n <S.FullScreen isFixed={isFixed ? 1 : 0} isOpen={isOpen ? 1 : 0} zIndex={zIndex ?? 0}>\n <S.Modal ref={modalRef} style={style} maxWidth={maxWidth} className={className}>\n <S.ModalContainer className=\"styleOverlay\" maxHeight={maxHeight} style={contentStyle}>\n <S.ModalHeader>\n <S.ModalTitle>{String(title)}</S.ModalTitle>\n <S.ModalButtonClose type=\"button\" onClick={onClose}>\n <MdClose color=\"#5A5D68\" size={16} />\n </S.ModalButtonClose>\n </S.ModalHeader>\n {children}\n </S.ModalContainer>\n </S.Modal>\n </S.FullScreen>\n );\n};\n\nModal.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.string,\n PropTypes.func,\n ]),\n children: PropTypes.node.isRequired,\n onClose: PropTypes.func,\n style: PropTypes.objectOf(PropTypes.any),\n contentStyle: PropTypes.objectOf(PropTypes.any),\n className: PropTypes.string,\n maxWidth: PropTypes.string,\n maxHeight: PropTypes.string,\n isFixed: PropTypes.bool,\n zIndex: PropTypes.number,\n};\n\nModal.defaultProps = {\n title: '',\n style: {},\n contentStyle: {},\n className: '',\n maxWidth: '360px',\n maxHeight: 'max-content',\n isFixed: false,\n onClose: () => {},\n zIndex: 9999,\n};\n\nexport { ModalHeader, ModalTitle, ModalButtonClose, ModalContent, ModalFooter };\nexport default Modal;\n","import styled from 'styled-components';\n\ninterface ContainerProps {\n hasBorder?: boolean;\n backgroundColor?: string;\n backgroundIcon?: string;\n}\n\nexport const Container = styled.div<ContainerProps>`\n width: 100%;\n display: flex;\n justify-content: center;\n padding: 24px 0;\n height: 193px;\n\n background: ${({ hasBorder }) =>\n hasBorder &&\n `linear-gradient(\n to right,\n #dadce3 50%,\n rgba(255, 255, 255, 0) 0%\n ),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, #dadce3 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(#dadce3 50%, rgba(255, 255, 255, 0) 0%)`};\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: 40px 1px, 1px 40px;\n background-color: ${({ backgroundColor }) => backgroundColor};\n\n & .content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n & > .icon {\n background-color: ${({ backgroundIcon }) => backgroundIcon};\n border-radius: 16px;\n width: 145px;\n height: 145px;\n\n display: flex;\n justify-content: center;\n\n & svg {\n width: 100%;\n height: 70%;\n margin: 20px;\n }\n }\n\n & .description {\n max-width: 600px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 8px 0 8px 24px;\n\n .button-add {\n cursor: pointer;\n }\n\n .start-icon {\n display: flex;\n align-items: center;\n }\n }\n }\n`;\n","import React, { FC, ReactElement } from 'react';\nimport PropTypes from 'prop-types';\nimport * as S from './styles';\n\ninterface EmptyStateProps {\n icon?: string | ReactElement;\n title?: string;\n description?: string;\n activeButton?: boolean;\n iconButton?: ReactElement;\n descriptionButton?: string;\n widthButton?: string;\n button?: ReactElement;\n backgroundIcon?: string;\n backgroundColor?: string;\n hasBorder?: boolean;\n}\n\nconst EmptyState: FC<EmptyStateProps> = ({\n icon,\n title,\n description,\n activeButton,\n iconButton,\n descriptionButton,\n widthButton,\n button,\n backgroundIcon,\n backgroundColor,\n hasBorder,\n ...rest\n}) => {\n return (\n <S.Container\n backgroundIcon={backgroundIcon}\n backgroundColor={backgroundColor}\n hasBorder={hasBorder}\n {...rest}\n >\n <div className=\"content\">\n <div className=\"icon\">\n {icon}\n </div>\n <div className=\"description\">\n <h5> {title}</h5>\n\n <p>{description}</p>\n\n {activeButton ? (\n <button>\n {descriptionButton}\n </button>\n ) : null}\n\n {button}\n </div>\n </div>\n </S.Container>\n );\n};\n\nEmptyState.propTypes = {\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n title: PropTypes.string,\n description: PropTypes.string,\n activeButton: PropTypes.bool,\n iconButton: PropTypes.element,\n descriptionButton: PropTypes.string,\n widthButton: PropTypes.string,\n button: PropTypes.element,\n backgroundIcon: PropTypes.string,\n backgroundColor: PropTypes.string,\n hasBorder: PropTypes.bool,\n};\n\nEmptyState.defaultProps = {\n icon: '',\n title: '',\n description: '',\n activeButton: false,\n descriptionButton: '',\n widthButton: '140px',\n backgroundIcon: 'var(--neutral-0)',\n backgroundColor: 'var(--absolute-white)',\n hasBorder: true,\n};\n\nexport default EmptyState;\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n position: relative;\n width: 50%;\n margin-right: 5px;\n select {\n padding: 12px;\n border-radius: 4px;\n border: 1px solid #979AA5;\n width: 100%;\n height: 40px;\n \n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n option {\n background: white;\n font-size: 14px;\n color: #5a5d68;\n }\n\n option:checked, option:hover {\n background: #6690ff;\n font-size: 14px;\n color: white;\n }\n }\n`;\n","import React, { useState } from 'react';\nimport * as S from './styles';\n\ninterface SelectOption {\n value: string | number;\n label: string;\n}\n\ninterface SelectProps {\n options: SelectOption[];\n onSelect: (value: string) => void;\n placeholder?: string;\n}\n\nconst Select: React.FC<SelectProps> = ({ options, onSelect, placeholder }) => {\n const [selectedValue, setSelectedValue] = useState<string | number>('');\n\n const handleSelectChange = (event: React.ChangeEvent<HTMLSelectElement>) => {\n const selectedOption = event.target.value;\n setSelectedValue(selectedOption);\n onSelect(selectedOption);\n };\n\n return (\n <S.Container>\n <select value={selectedValue} onChange={handleSelectChange}>\n <option value=\"\" disabled hidden>\n {placeholder}\n </option>\n {options.map(option => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n </S.Container>\n );\n};\n\nexport default Select;\n","import styled from 'styled-components';\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 ? (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <input {...getInputProps()} />\n\n <span>\n <p>\n {t.fileArea.modal.descriptionUpload}\n </p>\n </span>\n <button type=\"button\" onClick={open}>\n {t.fileArea.modal.chooseFile}\n </button>\n </Container>\n ) : (\n <Container\n {...getRootProps({ isDragActive, isDragAccept, isDragReject })}\n >\n <p>{file}</p>\n </Container>\n )}\n </>\n );\n};\n\nAreaUpload.propTypes = {\n formatFile: PropTypes.string,\n multipleFile: PropTypes.bool,\n initialFiles: PropTypes.arrayOf(PropTypes.object as any),\n removeItem: PropTypes.func,\n setFile: PropTypes.func,\n onChange: PropTypes.func,\n hasListFiles: PropTypes.bool,\n};\n\nAreaUpload.defaultProps = {\n formatFile: 'application/json',\n multipleFile: false,\n initialFiles: [],\n removeItem: () => {},\n setFile: () => {},\n onChange: () => {},\n hasListFiles: true,\n};\n\nexport default AreaUpload;\n","import axios from 'axios';\n\nexport const API_TOKEN = 'API_TOKEN';\n\nconst url = 'http://localhost:5000';\n\naxios.defaults.baseURL = `${url}`;\n\nexport default axios.create();","import React, { createContext, useContext, useEffect, useState } from 'react';\nimport api from '../service/Api';\n\ninterface Props {\n id: string;\n language: \"en\" | \"pt-br\" | \"es\";\n propTags: { tags: [] }\n personas: [{ name: string, description: string }]\n children?: React.ReactNode;\n}\n\ninterface SharedPropsContextType {\n props: Props;\n}\n\nconst SharedPropsContext = createContext<SharedPropsContextType | undefined>(undefined);\n\nexport const useSharedProps = () => {\n const context = useContext(SharedPropsContext);\n if (!context) {\n throw new Error('useSharedProps deve ser usado dentro de um SharedPropsProvider');\n }\n return context.props;\n};\n\nexport const SharedPropsProvider: React.FC<Props> = ({ children, ...props }) => {\n const { id } = props;\n const [tags, setTags] = useState<any>(null);\n const [personas, setPersonas] = useState<any>(null);\n\n useEffect(() => {\n const fetchData = async () => {\n try {\n const { data } = await api.get(`/tags/${id}`);\n\n if (data) {\n setTags(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n const personas = async () => {\n try {\n const { data } = await api.get(`/personas`);\n\n if (data) {\n setPersonas(data);\n } else {\n console.error('Erro ao fazer a solicitação');\n }\n } catch (error) {\n console.error('Erro ao fazer a solicitação:', error);\n }\n };\n\n fetchData();\n personas();\n }, [id]);\n\n const sharedProps = {\n ...props,\n propTags: tags,\n personas,\n };\n\n return (\n <SharedPropsContext.Provider value={{ props: sharedProps }}>\n {children}\n </SharedPropsContext.Provider>\n );\n};\n","const Types = {\n GET_FILES_REQUEST: 'GET_FILES_REQUEST',\n GET_FILES_SUCCESS: 'GET_FILES_SUCCESS',\n DELETE_FILES_REQUEST: 'DELETE_FILES_REQUEST',\n DELETE_FILES_SUCCESS: 'DELETE_FILES_SUCCESS',\n UPLOAD_FILES_REQUEST: 'UPLOAD_FILES_REQUEST',\n UPLOAD_FILES_SUCCESS: 'UPLOAD_FILES_SUCCESS',\n TEST_REQUEST: 'TEST_REQUEST',\n TEST_SUCCESS: 'TEST_SUCCESS'\n};\n\nexport default Types;\n","import types from './types'\n\nexport const getFilesAction = (id: string) => {\n return {\n type: types.GET_FILES_REQUEST,\n payload: { id }\n }\n}\n\nexport const getFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.GET_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const deleteFilesAction = (name: string, id: string) => {\n return {\n type: types.DELETE_FILES_REQUEST,\n payload: { name, id }\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]) => {\n return {\n type: types.UPLOAD_FILES_REQUEST,\n payload: { file, id, pressets }\n }\n}\n\nexport const uploadFilesActionSuccess = ({ files }: any) => {\n return {\n type: types.UPLOAD_FILES_SUCCESS,\n payload: { files }\n }\n}\n\nexport const testAction = (question: string, profile: string, presset: string, files_directory: string) => {\n return {\n type: types.TEST_REQUEST,\n payload: { question, profile, presset, files_directory }\n }\n}\n\nexport const testActionSuccess = ({ message }: any) => {\n return {\n type: types.TEST_SUCCESS,\n payload: { message }\n }\n}","import React, { useEffect, useState} from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport { FaUpload, FaList, FaPlus } from 'react-icons/fa';\n\nimport type { FileData } from '../../interface/FileData'\n\nimport { getLanguage } from '../../utils/getLanguage'\n\nimport * as S from './styles';\nimport Table from './components/Table';\nimport Search from './components/Search';\nimport Modal from './components/Modal'\nimport ModalFooter from './components/Modal/ModalFooter'\nimport ModalContent from './components/Modal/ModalContent'\nimport EmptyState from '../EmptyState';\nimport Select from '../Select'\nimport AreaUpload from './components/AreaUpload';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { deleteFilesAction, getFilesAction, uploadFilesAction } from '../../store/modules/actions';\n\nexport const FileArea = () => {\n const { id, language, propTags, personas } = useSharedProps();\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const [uploadFile, setUploadFile] = useState<{ content: ArrayBuffer | string; properties: File }>();\n const [modal, setModal] = useState(false)\n const [modalDelete, setModalDelete] = useState(false)\n const [fileDelete, setFileDelete] = useState('')\n const [presset, setPresset] = useState('');\n const t = getLanguage(language)\n const dispatch = useDispatch();\n const initFiles = useSelector((state: any) => state.files);\n const tags = propTags ? propTags.tags : [];\n\n useEffect(() => {\n dispatch(getFilesAction(id))\n }, [id])\n\n useEffect(() => {\n if(!!initFiles){\n setFiles(initFiles)\n setInitialFiles(initFiles)\n }\n }, [initFiles])\n\n const optionsPresset = tags.map((tag: any) => {\n return { label: tag, value: tag }\n })\n\n const pressetTag = (tags: string) => {\n const tagsSplit = tags.split(',');\n let html = '';\n\n html += tagsSplit.map(tag => {\n return `<p class='tag'>${tag}</p>`;\n }).join('');\n\n return html;\n }\n\n const handleOpenModal = () => {\n setModal(!modal)\n }\n\n const handleOpenModalDelete = (name: string) => {\n setFileDelete(name + '.pdf')\n setModalDelete(!modalDelete)\n\n }\n\n const deleteFile = () => {\n dispatch(deleteFilesAction(fileDelete, id))\n }\n\n const handleUploadFile = () => {\n dispatch(uploadFilesAction(uploadFile, id, [presset]))\n };\n\n const renderFiles = () => { \n return (\n <S.Container>\n <S.Header>\n <div className='infos'>\n <h2>{t.files}</h2>\n <p>{t.fileArea.description}</p>\n </div>\n <div className='actions'>\n <Search placeholder={t.fileArea.search} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button onClick={handleOpenModal}><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\n {\n files.length === 0 ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.fileArea.emptyState.title}\n description={t.fileArea.emptyState.description}\n activeButton\n iconButton={<FaPlus style={{ width: '15px', height: '15px' }} />}\n descriptionButton={t.fileArea.modal.chooseFile}\n widthButton=\"230px\"\n />\n ) : <Table>\n <thead>\n <tr>\n <th className=\"th_file_name\">\n {t.fileArea.fileName}\n </th>\n <th className=\"th_pressets\">\n {t.fileArea.presset}\n </th>\n <th className=\"th_actions\">\n {t.fileArea.actions}\n </th>\n </tr>\n </thead>\n\n <tbody>\n {files.map((object) => (\n <tr>\n <td>{object.name}</td>\n <td className='tags' dangerouslySetInnerHTML={{ __html: pressetTag(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete' onClick={() => handleOpenModalDelete(object.name)}>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n }\n <Modal\n isOpen={modal}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={handleOpenModal}\n title={t.fileArea.modal.uploadFile}\n >\n <ModalContent>\n <div className='choose-file'>\n <AreaUpload\n setFile={setUploadFile}\n file={uploadFile?.properties.name}\n />\n </div>\n <div className='presset'>\n <p>Presset</p>\n <Select placeholder={t.testArea.selectPresset} options={optionsPresset} onSelect={setPresset} />\n </div> \n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={handleOpenModal}>\n {t.buttons.cancel}\n </button>\n <button onClick={() => handleUploadFile()} className='button send' type=\"submit\" form=\"form-tts\">\n {t.buttons.send}\n </button>\n </ModalFooter>\n \n </Modal>\n <Modal\n isOpen={modalDelete}\n maxWidth=\"600px\"\n maxHeight=\"max-content\"\n onClose={() => handleOpenModalDelete('')}\n title={t.fileArea.modal.deleteFileTitle}\n >\n <ModalContent>\n <p id='warning'>{t.fileArea.modal.deleteFile}</p>\n </ModalContent>\n <ModalFooter>\n <button className='button cancel' onClick={() => handleOpenModalDelete('')}>\n {t.buttons.cancel}\n </button>\n <button className='button delete' type=\"submit\" form=\"form-tts\" onClick={deleteFile}>\n {t.buttons.delete}\n </button>\n </ModalFooter>\n </Modal>\n </S.Container>\n );\n }\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n {renderFiles()}\n </S.Container>\n </SharedPropsProvider>\n );\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n\n`;\n\nexport const Header = styled.div`\n display: flex;\n flex-direction: column;\n .infos {\n display: flex;\n flex-direction: column;\n padding: 14px 0;\n\n h2 {\n font-size: 20px\n }\n\n p {\n font-size: 14px\n }\n }\n`\n\nexport const Inputs = styled.div`\n display: flex;\n justify-content: space-between;\n margin-bottom: 10px;\n\n button {\n background: #102693;\n padding: 10px 20px;\n color: white;\n border-radius: 4px;\n width: 190px;\n height: 40px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n width: 23px;\n height: 23px;\n }\n }\n`\n\nexport const Result = styled.div`\n display: flex;\n justify-content: left;\n background: #F3F5F9;\n padding: 15px;\n border-radius: 5px;\n margin-top: 15px;\n\n .text{\n margin-left: 5px;\n font-size: 14px;\n line-height: 1.5;\n }\n\n .icon {\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: 5px;\n\n svg {\n width: 35px;\n height: 35px;\n }\n }\n\n`","import styled from 'styled-components';\nimport { FaMicrophone } from 'react-icons/fa';\n\nexport const Container = styled.div`\n position: relative;\n width: 100%;\n margin-right: 5px;\n`;\n\nexport const StyledInput = styled.input`\n padding-left: 10px;\n padding-right: 40px;\n border-radius: 5px;\n border: 1px solid #ccc;\n height: 40px;\n width: 100%;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n`;\n\nexport const RecordAudioButton = styled.div`\n position: absolute;\n top: 10px;\n right: 10px;\n cursor: pointer;\n`;\n\nexport const StyledMicrophoneIcon = styled(FaMicrophone)`\n pointer-events: none;\n`;\n","import React from 'react';\nimport * as S from './styles';\n\ninterface InputTestProps {\n placeholder: string;\n onChange: (value: string) => void;\n onRecordAudio: () => void;\n}\n\nconst InputTest: React.FC<InputTestProps> = ({ placeholder, onChange, onRecordAudio }) => {\n return (\n <S.Container>\n <S.StyledInput\n type=\"text\"\n onChange={(e: any) => onChange(e.target.value)}\n placeholder={placeholder}\n />\n <S.RecordAudioButton onClick={onRecordAudio}>\n <S.StyledMicrophoneIcon />\n </S.RecordAudioButton>\n </S.Container>\n );\n};\n\nexport default InputTest;\n","import React, { useState } from 'react';\nimport { getLanguage } from '../../utils/getLanguage'\nimport * as S from './styles';\nimport Select from '../Select'\nimport InputTest from './components/InputTest'\nimport { PiWaveformBold } from 'react-icons/pi';\nimport { FaList } from 'react-icons/fa';\nimport EmptyState from '../EmptyState';\nimport { SharedPropsProvider, useSharedProps } from '../../contexts/SharedPropsProvider';\nimport { MdPerson2 } from \"react-icons/md\";\nimport { useDispatch, useSelector } from 'react-redux';\nimport { testAction } from '../../store/modules/actions';\n\nexport const TestArea = () => {\n const { id, language, personas, propTags } = useSharedProps();\n const t = getLanguage(language)\n const results = useSelector((state: any) => state.message);\n const [search, setSearch] = useState('');\n const [profile, setProfile] = useState('');\n const [presset, setPresset] = useState('');\n const dispatch = useDispatch();\n const tags = propTags ? propTags.tags : [];\n\n const optionsPersona = personas.map(persona => {\n return { label: persona.name, value: persona.name }\n })\n\n const optionsPresset = tags.map(tag => {\n return { label: tag, value: tag }\n })\n\n const handleSelectPersona = (value: string) => {\n setProfile(value);\n };\n\n const handleSelectPresset = (value: string) => {\n setPresset(value);\n };\n\n const handleSearch = (value: string) => {\n setSearch(value);\n };\n\n const handleRecordAudio = () => {\n console.log('Iniciando gravação de áudio...');\n };\n\n const handleTest = () => {\n dispatch(testAction(search, profile, presset, id))\n };\n\n return (\n <SharedPropsProvider id={id} language={language} propTags={{ tags: [] }} personas={personas}>\n <S.Container>\n <S.Header>\n <div className='infos'>\n <h2>{t.test}</h2>\n <p>{t.testArea.description}</p>\n </div>\n </S.Header>\n <S.Inputs>\n <InputTest placeholder={t.testArea.typeSentence} onChange={handleSearch} onRecordAudio={handleRecordAudio} />\n <Select placeholder={t.testArea.selectPersona} options={optionsPersona} onSelect={handleSelectPersona} />\n <Select placeholder={t.testArea.selectPresset} options={optionsPresset} onSelect={handleSelectPresset} />\n <button onClick={handleTest}><PiWaveformBold /> {t.buttons.test}</button>\n </S.Inputs>\n {\n !results ? (\n <EmptyState\n icon={<FaList></FaList>}\n title={t.testArea.emptyState.title}\n description={t.testArea.emptyState.description}\n activeButton={false}\n />\n ) : <S.Result>\n <div className='icon'>\n <MdPerson2 />\n </div>\n <div className='text'>{results}</div>\n </S.Result>\n }\n </S.Container>\n </SharedPropsProvider>\n );\n};","import React, { useMemo, Suspense } from 'react';\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\nimport { getLanguage } from './utils/getLanguage'\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\n\nimport { SharedPropsProvider } from './contexts/SharedPropsProvider';\n\nexport const Leia = (props: Props) => {\n const match = useRouteMatch();\n const { pathname } = useLocation();\n const history = useHistory();\n\n const t = getLanguage(props.language)\n\n const activeTab = useMemo(() => {\n return pathname.split('/')[5] || 'files';\n }, [pathname]);\n\n return (\n <SharedPropsProvider propTags={{ tags: [] }} personas={[{name: '', description: ''}]} {...props}>\n <>\n <Tabs\n value={activeTab}\n onChange={(value) => history.push(`${match.url}/${value}`)}\n >\n <Tab value=\"files\">{t.files}</Tab>\n <Tab value=\"test\">{t.test}</Tab>\n </Tabs>\n <Suspense fallback={props.loading}>\n <SwitchRoute>\n <Route path={`${match.path}`} exact component={FileArea} />\n <Route path={`${match.path}/files`} component={FileArea} />\n <Route path={`${match.path}/test`} component={TestArea} />\n </SwitchRoute>\n </Suspense>\n </>\n </SharedPropsProvider>\n );\n};\n","import { produce } from 'immer';\nimport types from './types'\n\nconst INITIAL_STATE = {\n files: [],\n message: ''\n}\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 default:\n return action.payload;\n }\n });\n}\n","import { takeLatest, all, put, call } from 'redux-saga/effects';\nimport api from '../../service/Api'\nimport Types from './types'\nimport { getFilesActionSuccess, deleteFilesActionSuccess, testActionSuccess, uploadFilesActionSuccess } from './actions'\n\nexport function* getFilesSaga(action: any) {\n try {\n const { id } = action.payload\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(getFilesActionSuccess({ files: data.files}));\n } catch (error) {\n console.log('-----------getFiles.error------------------->', error);\n }\n}\n\nexport function* deleteFilesSaga(action: any) {\n try {\n const { id, name } = action.payload\n yield call(api.delete, `/delete/${id}/${name}`);\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(deleteFilesActionSuccess({ files: data.files }));\n } catch (error) {\n console.log('-----------deleteFilesSaga.error------------------->', error);\n }\n}\n\nexport function* testSaga(action: any) {\n try {\n const { question, profile, presset, files_directory } = action.payload\n const { data } = yield call(api.post, `/ask`, { question, profile, tag: presset, files_directory });\n yield put(testActionSuccess({ message: data.message }));\n } catch (error) {\n console.log('-----------testSaga.error------------------->', error);\n }\n}\n\nexport function* uploadFilesSaga(action: any) {\n try {\n const { id, file, pressets } = action.payload;\n const tags = pressets.join(',');\n \n const formData = new FormData();\n formData.append('file', file.data); \n \n\n const queryParams = new URLSearchParams({ tags }).toString();\n\n \n yield call(api.post, `/upload/${id}?${queryParams}`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n const { data } = yield call(api.get, `/files/${id}`);\n yield put(uploadFilesActionSuccess({ files: data.files }));\n } catch (error) {\n console.log('-----------deleteFilesSaga.error------------------->', error);\n }\n}\n\nexport default function* filesSagas() {\n yield all([\n takeLatest(Types.GET_FILES_REQUEST, getFilesSaga),\n takeLatest(Types.DELETE_FILES_REQUEST, deleteFilesSaga),\n takeLatest(Types.UPLOAD_FILES_REQUEST, uploadFilesSaga),\n takeLatest(Types.TEST_REQUEST, testSaga)\n ]);\n}\n","import { createStore, applyMiddleware } from 'redux';\nimport createSagaMiddleware from 'redux-saga';\nimport Reducer from './modules/reducer';\nimport Sagas from './modules/sagas';\n\nconst sagaMiddleware = createSagaMiddleware();\n\nconst store = createStore(Reducer, applyMiddleware(sagaMiddleware));\n\nsagaMiddleware.run(Sagas);\n\nexport default store;\n\n","import type { PropsWithChildren, ReactElement } from 'react';\nimport { Provider } from 'react-redux';\nimport React from 'react';\nimport { Leia } from './Leia';\nimport store from './store';\n\nexport type Props = PropsWithChildren<{\n id: string;\n activeTab: string;\n language: \"en\" | \"pt-br\" | \"es\";\n loading: ReactElement\n}>;\n\nexport function Code7(props: Props) {\n return <Provider store={store}>\n <Leia {...props} />\n </Provider>;\n}"],"names":["TabsPane","styled","ul","_templateObject","_taggedTemplateLiteralLoose","Tab","li","_templateObject2","_ref","active","children","rest","_objectWithoutPropertiesLoose","_excluded","React","S","className","cc","propTypes","PropTypes","oneOfType","string","element","node","isRequired","onChange","func","value","bool","defaultProps","Tabs","_ref2","childrenProp","_excluded2","Children","map","child","isValidElement","Array","isArray","_child$props","props","_child$props2","cloneElement","_child$props3","onClick","_child$props4","number","defaultLanguage","files","test","fileArea","description","fileName","presset","actions","search","fileUpload","emptyState","title","modal","descriptionUpload","chooseFile","uploadFile","deleteFileTitle","deleteFile","buttons","cancel","send","testArea","typeSentence","selectPersona","selectPresset","getLanguage","language","languages","en","_extends","es","Container","div","Header","TableWrapper","Table","table","TableLoadingWrapper","_templateObject3","SpinnerWrapper","span","color","Spinner","_ref$color","_ref$size","size","forwardRef","ref","_ref$isLoading","isLoading","_ref$className","oneOf","SearchInput","placeholder","setFiles","initialFiles","searchName","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","normalizedFileName","name","includes","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FullScreen","isOpen","isFixed","_ref3","zIndex","Modal","_ref4","maxWidth","ModalContainer","_ref5","maxHeight","ModalHeader","header","_templateObject4","ModalTitle","_templateObject5","ModalButtonClose","button","_templateObject6","ModalContentWrapper","_templateObject7","_ref6","overflowY","_ref7","ModalFooterWrapper","_templateObject8","ModalFooter","ModalContent","_ref$maxHeight","_ref$overflowY","onClose","contentStyle","modalRef","useRef","handleKeyUp","useCallback","keys","_","preventDefault","window","removeEventListener","keyCode","handleOutsideClick","current","parentNode","document","useEffect","addEventListener","String","MdClose","objectOf","any","hasBorder","backgroundColor","backgroundIcon","EmptyState","icon","activeButton","iconButton","descriptionButton","widthButton","Select","options","onSelect","_useState","useState","selectedValue","setSelectedValue","handleSelectChange","event","selectedOption","disabled","hidden","option","key","label","getColor","isDragAccept","isDragReject","isDragActive","AreaUpload","formatFile","_ref$formatFile","_ref$multipleFile","multipleFile","_ref$initialFiles","_ref$setFile","setFile","_ref$file","_ref$onChange","myFiles","setMyFiles","t","concat","onDrop","acceptedFiles","fileRejections","length","console","error","filesWithId","item","index","id","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","SharedPropsContext","createContext","undefined","useSharedProps","context","useContext","Error","SharedPropsProvider","tags","setTags","_useState2","personas","setPersonas","fetchData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$api$get","data","wrap","_callee$","_context","prev","next","api","get","sent","t0","stop","apply","arguments","_callee2","_yield$api$get2","_callee2$","_context2","sharedProps","propTags","Provider","Types","GET_FILES_REQUEST","GET_FILES_SUCCESS","DELETE_FILES_REQUEST","DELETE_FILES_SUCCESS","UPLOAD_FILES_REQUEST","UPLOAD_FILES_SUCCESS","TEST_REQUEST","TEST_SUCCESS","getFilesAction","types","payload","getFilesActionSuccess","deleteFilesAction","deleteFilesActionSuccess","uploadFilesAction","pressets","uploadFilesActionSuccess","testAction","question","profile","files_directory","testActionSuccess","message","FileArea","_useSharedProps","setInitialFiles","_useState3","setUploadFile","_useState4","setModal","_useState5","modalDelete","setModalDelete","_useState6","fileDelete","setFileDelete","_useState7","setPresset","dispatch","useDispatch","initFiles","useSelector","state","optionsPresset","tag","pressetTag","tagsSplit","split","html","join","handleOpenModal","handleOpenModalDelete","handleUploadFile","renderFiles","Search","FaUpload","FaList","FaPlus","dangerouslySetInnerHTML","__html","form","Inputs","Result","StyledInput","input","RecordAudioButton","StyledMicrophoneIcon","FaMicrophone","InputTest","onRecordAudio","TestArea","results","setSearch","setProfile","optionsPersona","persona","handleSelectPersona","handleSelectPresset","handleSearch","handleRecordAudio","log","handleTest","PiWaveformBold","MdPerson2","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","activeTab","useMemo","push","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","INITIAL_STATE","filesReducer","action","produce","draft","getFilesSaga","_marked2","deleteFilesSaga","_marked3","testSaga","_marked4","uploadFilesSaga","_marked5","filesSagas","_yield$call","getFilesSaga$","call","put","_marked","_action$payload","_yield$call2","deleteFilesSaga$","_action$payload2","_yield$call3","testSaga$","_context3","post","_action$payload3","formData","queryParams","_yield$call4","uploadFilesSaga$","_context4","FormData","append","URLSearchParams","toString","headers","filesSagas$","_context5","all","takeLatest","sagaMiddleware","createSagaMiddleware","store","createStore","Reducer","applyMiddleware","run","Sagas","Code7"],"mappings":"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"}