code7-leia 0.1.27 → 0.1.28
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.
- package/dist/code7-leia.cjs.development.js +5 -3
- package/dist/code7-leia.cjs.development.js.map +1 -1
- package/dist/code7-leia.cjs.production.min.js +1 -1
- package/dist/code7-leia.cjs.production.min.js.map +1 -1
- package/dist/code7-leia.esm.js +5 -3
- package/dist/code7-leia.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/FileArea/components/Search/index.tsx +9 -3
|
@@ -275,11 +275,13 @@ var SearchInput = function SearchInput(_ref) {
|
|
|
275
275
|
setFiles = _ref.setFiles,
|
|
276
276
|
initialFiles = _ref.initialFiles;
|
|
277
277
|
var searchName = function searchName(e) {
|
|
278
|
-
var searchTerm =
|
|
278
|
+
var searchTerm = e.target.value.trim();
|
|
279
|
+
var normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();
|
|
279
280
|
var newFiles = files.filter(function (file) {
|
|
280
|
-
|
|
281
|
+
var normalizedFileName = unorm.nfkd(file.name).toLowerCase();
|
|
282
|
+
return normalizedFileName.includes(normalizedSearchTerm);
|
|
281
283
|
});
|
|
282
|
-
setFiles(
|
|
284
|
+
setFiles(searchTerm !== '' ? newFiles : initialFiles);
|
|
283
285
|
};
|
|
284
286
|
return React__default.createElement("div", {
|
|
285
287
|
style: {
|
|
@@ -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/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../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 },\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 },\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: 'bla bla bla bla bla',\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 },\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\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 files: FileData[]\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = unorm.nfkd(e.target.value).toLowerCase();\n const newFiles = files.filter(file => unorm.nfkd(file.name).toLowerCase().includes(searchTerm));\n setFiles(newFiles.length > 0 ? 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 React, { useEffect, useState} from 'react';\n\nimport { FaUpload } from 'react-icons/fa';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\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';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const { pathname } = useLocation();\n const id = pathname.split('/')[4]\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n\n setInitialFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n }, [])\n\n useEffect(() => {\n console.log('files, id, t: ', files, id, t)\n }, [files])\n\n const presset = (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 renderFiles = () => {\n if (files.length === 0) {\n return null;\n }\n \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} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\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: presset(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete'>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n </S.Container>\n );\n }\n\n return (\n <S.Container>\n {renderFiles()}\n </S.Container>\n );\n};","import React from 'react';\n\nexport const TestArea = () => {\n return (\n <div>\n <p>Teste Area</p>\n \n </div>\n );\n};","import React, { useMemo, Suspense } from 'react';\n\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\n\nimport { getLanguage } from './utils/getLanguage'\n\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\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 <>\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 );\n};","import type { PropsWithChildren, ReactElement } from 'react';\nimport React from 'react';\nimport { Leia } from './Leia';\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 <Leia {...props} />;\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","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","unorm","nfkd","target","toLowerCase","newFiles","filter","file","name","includes","length","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","_useState2","setInitialFiles","_useLocation","useLocation","pathname","id","split","t","useEffect","console","log","tags","tagsSplit","html","tag","join","renderFiles","Search","FaUpload","object","dangerouslySetInnerHTML","__html","TestArea","Leia","match","useRouteMatch","history","useHistory","activeTab","useMemo","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","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/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../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 },\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 },\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: 'bla bla bla bla bla',\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 },\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\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 files: FileData[]\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, 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 = files.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 React, { useEffect, useState} from 'react';\n\nimport { FaUpload } from 'react-icons/fa';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\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';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const { pathname } = useLocation();\n const id = pathname.split('/')[4]\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n\n setInitialFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n }, [])\n\n useEffect(() => {\n console.log('files, id, t: ', files, id, t)\n }, [files])\n\n const presset = (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 renderFiles = () => {\n if (files.length === 0) {\n return null;\n }\n \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} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\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: presset(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete'>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n </S.Container>\n );\n }\n\n return (\n <S.Container>\n {renderFiles()}\n </S.Container>\n );\n};","import React from 'react';\n\nexport const TestArea = () => {\n return (\n <div>\n <p>Teste Area</p>\n \n </div>\n );\n};","import React, { useMemo, Suspense } from 'react';\n\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\n\nimport { getLanguage } from './utils/getLanguage'\n\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\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 <>\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 );\n};","import type { PropsWithChildren, ReactElement } from 'react';\nimport React from 'react';\nimport { Leia } from './Leia';\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 <Leia {...props} />;\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","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","FileArea","_useState","useState","_useState2","setInitialFiles","_useLocation","useLocation","pathname","id","split","t","useEffect","console","log","tags","tagsSplit","html","tag","join","renderFiles","length","Search","FaUpload","object","dangerouslySetInnerHTML","__html","TestArea","Leia","match","useRouteMatch","history","useHistory","activeTab","useMemo","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","Code7"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,t,a=require("react"),r=e(a),l=require("react-router-dom"),i=e(require("prop-types")),o=e(require("classcat")),s=e(require("styled-components")),c=require("react-icons/fa"),d=e(require("unorm"));function p(){return(p=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e}).apply(this,arguments)}function u(e,n){if(null==e)return{};var t,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)n.indexOf(t=l[a])>=0||(r[t]=e[t]);return r}function m(e,n){return n||(n=e.slice(0)),e.raw=n,e}var f=s.ul(n||(n=m(["\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n"]))),h=s.li(t||(t=m(["\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"]))),b=["active","children"],g=["children","value","onChange"],v=function(e){var n=e.active,t=e.children,a=u(e,b);return r.createElement(h,Object.assign({className:o({active:n})},a),t)};v.propTypes={children:i.oneOfType([i.string,i.element,i.node]).isRequired,onChange:i.func,value:i.string,active:i.bool},v.defaultProps={onChange:function(){},value:"",active:!1};var x=function(e){var n=e.children,t=e.value,a=e.onChange,l=u(e,g),i=r.Children.map(n,(function(e){var n,l,i;return r.isValidElement(e)?Array.isArray(null==(n=e.props)?void 0:n.children)?r.cloneElement(e,{active:(null==(i=e.props)?void 0:i.value)===t,value:t,onChange:a}):r.cloneElement(e,{active:(null==(l=e.props)?void 0:l.value)===t,onClick:function(){var n;return a(null==(n=e.props)?void 0:n.value)}}):null}));return r.createElement(f,Object.assign({},l),i)};x.propTypes={children:i.node.isRequired,value:i.oneOfType([i.string,i.number]).isRequired,onChange:i.func.isRequired};var E,y,A,S,C,P,N={files:"Files",test:"Test",fileArea:{description:"bla bla bla bla bla",fileName:"File name",presset:"Presset",actions:"Actions",search:"Search",fileUpload:"File upload",emptyState:{title:"No data",description:"bla bla bla bla bla"},modal:{descriptionUpload:"Drag and drop files here or",chooseFile:"Choose a file"}},buttons:{cancel:"Cancel",send:"Send",delete:"Delete",test:"Test"},testArea:{description:"bla bla bla bla bla",typeSentence:"Type a sentence",selectPersona:"Select a Persona",selectPresset:"Select a presset",emptyState:{title:"No data for analysis",description:'Do a search, click the "Test" button.'}}},k=function(e){return{en:N,"pt-br":{files:"Arquivos",test:"Teste",fileArea:p({},N.fileArea,{fileName:"Nome do arquivo",presset:"Presset",actions:"Ações",search:"Pesquisar",fileUpload:"Upload de arquivo",emptyState:p({},N.fileArea.emptyState,{title:"Sem dados"}),modal:p({},N.fileArea.modal,{descriptionUpload:"Arraste e solte os arquivos aqui ou",chooseFile:"Escolha um arquivo"})}),buttons:p({},N.buttons,{cancel:"Cancelar",send:"Enviar",delete:"Excluir",test:"Testar"}),testArea:p({},N.testArea,{description:"bla bla bla bla bla",typeSentence:"Digite uma frase",selectPersona:"Selecione uma Persona",selectPresset:"Selecione uma predefinição",emptyState:p({},N.testArea.emptyState,{title:"Sem dados para análise",description:'Faça uma pesquisa, clique no botão "Teste".'})})},es:p({},N,{files:"Archivos",test:"Prueba",fileArea:p({},N.fileArea,{fileName:"Nombre del archivo",presset:"Presset",actions:"Acciones",search:"Buscar",fileUpload:"Carga de archivos",emptyState:p({},N.fileArea.emptyState,{title:"Sin datos"}),modal:p({},N.fileArea.modal,{descriptionUpload:"Arrastre y suelte los archivos aquí o",chooseFile:"Elegir un archivo"})}),buttons:p({},N.buttons,{cancel:"Cancelar",send:"Enviar",delete:"Eliminar",test:"Probar"}),testArea:p({},N.testArea,{description:"bla bla bla bla bla",typeSentence:"Escribe una oración",selectPersona:"Seleccionar una Persona",selectPresset:"Seleccionar una configuración preestablecida",emptyState:p({},N.testArea.emptyState,{title:"Sin datos para el análisis",description:'Realiza una búsqueda, haz clic en el botón "Prueba".'})})})}[e]||N},q=s.div(E||(E=m(["\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"]))),w=s.div(y||(y=m(["\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"]))),_=s.div(A||(A=m(["\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n"]))),j=s.table(S||(S=m(["\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"]))),O=s.div(C||(C=m(["\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"]))),T=s.span(P||(P=m(["\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: "," 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"])),(function(e){return"var(--"+e.color+")"})),F=function(e){var n=e.color,t=e.size;return r.createElement(T,{color:void 0===n?"neutral-3":n,className:o(["spinner--"+(void 0===t?"md":t),e.className])},r.createElement("span",null),r.createElement("span",null),r.createElement("span",null),r.createElement("span",null))},R=["size","children","isLoading","className"],z=a.forwardRef((function(e,n){var t=e.size,a=void 0===t?"medium":t,l=e.children,i=e.isLoading,s=void 0!==i&&i,c=e.className,d=void 0===c?"":c,p=u(e,R);return r.createElement(_,{className:d},s?r.createElement(O,null,r.createElement(F,null)):null,r.createElement(j,Object.assign({className:o([a]),ref:n},p),l))}));z.propTypes={children:i.node.isRequired,className:i.string,size:i.oneOf(["small","medium","large"]),isLoading:i.bool};var D=function(e){var n=e.files,t=e.setFiles,a=e.initialFiles;return r.createElement("div",{style:{position:"relative",width:"300px"}},r.createElement("input",{type:"text",onChange:function(e){return function(e){var r=d.nfkd(e.target.value).toLowerCase(),l=n.filter((function(e){return d.nfkd(e.name).toLowerCase().includes(r)}));t(l.length>0?l:a)}(e)},placeholder:e.placeholder,style:{paddingLeft:"40px",borderRadius:"5px",border:"1px solid #ccc",height:"40px",width:"100%"}}),r.createElement("div",{style:{position:"absolute",top:"10px",left:"10px",pointerEvents:"none"}},r.createElement(c.FaSearch,null)))},U=function(){var e=a.useState([]),n=e[0],t=e[1],i=a.useState([]),o=i[0],s=i[1],d=l.useLocation().pathname.split("/")[4],p=k("pt-br");return a.useEffect((function(){t([{name:"Documentação conceitual Code7_v3",tags:"boteria, code7"},{name:"PAE_Programa_Apoio_ao_Empregado",tags:"pae, vr"},{name:"Vidalink",tags:"vidalink, vr"},{name:"[GUIA PRÁTICO] Como criar o chatbot perfeito",tags:"ebook, code7"}]),s([{name:"Documentação conceitual Code7_v3",tags:"boteria, code7"},{name:"PAE_Programa_Apoio_ao_Empregado",tags:"pae, vr"},{name:"Vidalink",tags:"vidalink, vr"},{name:"[GUIA PRÁTICO] Como criar o chatbot perfeito",tags:"ebook, code7"}])}),[]),a.useEffect((function(){console.log("files, id, t: ",n,d,p)}),[n]),r.createElement(q,null,0===n.length?null:r.createElement(q,null,r.createElement(w,null,r.createElement("div",{className:"infos"},r.createElement("h2",null,p.files),r.createElement("p",null,p.fileArea.description)),r.createElement("div",{className:"actions"},r.createElement(D,{placeholder:p.fileArea.search,files:n,setFiles:t,initialFiles:o}),r.createElement("button",null,r.createElement(c.FaUpload,null)," ",p.fileArea.fileUpload))),r.createElement(z,null,r.createElement("thead",null,r.createElement("tr",null,r.createElement("th",{className:"th_file_name"},p.fileArea.fileName),r.createElement("th",{className:"th_pressets"},p.fileArea.presset),r.createElement("th",{className:"th_actions"},p.fileArea.actions))),r.createElement("tbody",null,n.map((function(e){return r.createElement("tr",null,r.createElement("td",null,e.name),r.createElement("td",{className:"tags",dangerouslySetInnerHTML:{__html:(n=e.tags,t="",t+=n.split(",").map((function(e){return"<p class='tag'>"+e+"</p>"})).join(""))}}),r.createElement("td",null,r.createElement("div",{className:"divDelete"},r.createElement("button",{className:"buttonDelete"},p.buttons.delete))));var n,t}))))))},L=function(){return r.createElement("div",null,r.createElement("p",null,"Teste Area"))},I=function(e){var n=l.useRouteMatch(),t=l.useLocation().pathname,i=l.useHistory(),o=k(e.language),s=a.useMemo((function(){return t.split("/")[5]||"files"}),[t]);return r.createElement(r.Fragment,null,r.createElement(x,{value:s,onChange:function(e){return i.push(n.url+"/"+e)}},r.createElement(v,{value:"files"},o.files),r.createElement(v,{value:"test"},o.test)),r.createElement(a.Suspense,{fallback:e.loading},r.createElement(l.Switch,null,r.createElement(l.Route,{path:""+n.path,exact:!0,component:U}),r.createElement(l.Route,{path:n.path+"/files",component:U}),r.createElement(l.Route,{path:n.path+"/test",component:L}))))};exports.Code7=function(e){return r.createElement(I,Object.assign({},e))};
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,t,a=require("react"),r=e(a),l=require("react-router-dom"),i=e(require("prop-types")),o=e(require("classcat")),s=e(require("styled-components")),c=require("react-icons/fa"),d=e(require("unorm"));function p(){return(p=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e}).apply(this,arguments)}function u(e,n){if(null==e)return{};var t,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)n.indexOf(t=l[a])>=0||(r[t]=e[t]);return r}function m(e,n){return n||(n=e.slice(0)),e.raw=n,e}var f=s.ul(n||(n=m(["\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n"]))),h=s.li(t||(t=m(["\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"]))),b=["active","children"],g=["children","value","onChange"],v=function(e){var n=e.active,t=e.children,a=u(e,b);return r.createElement(h,Object.assign({className:o({active:n})},a),t)};v.propTypes={children:i.oneOfType([i.string,i.element,i.node]).isRequired,onChange:i.func,value:i.string,active:i.bool},v.defaultProps={onChange:function(){},value:"",active:!1};var x=function(e){var n=e.children,t=e.value,a=e.onChange,l=u(e,g),i=r.Children.map(n,(function(e){var n,l,i;return r.isValidElement(e)?Array.isArray(null==(n=e.props)?void 0:n.children)?r.cloneElement(e,{active:(null==(i=e.props)?void 0:i.value)===t,value:t,onChange:a}):r.cloneElement(e,{active:(null==(l=e.props)?void 0:l.value)===t,onClick:function(){var n;return a(null==(n=e.props)?void 0:n.value)}}):null}));return r.createElement(f,Object.assign({},l),i)};x.propTypes={children:i.node.isRequired,value:i.oneOfType([i.string,i.number]).isRequired,onChange:i.func.isRequired};var E,y,A,S,C,P,N={files:"Files",test:"Test",fileArea:{description:"bla bla bla bla bla",fileName:"File name",presset:"Presset",actions:"Actions",search:"Search",fileUpload:"File upload",emptyState:{title:"No data",description:"bla bla bla bla bla"},modal:{descriptionUpload:"Drag and drop files here or",chooseFile:"Choose a file"}},buttons:{cancel:"Cancel",send:"Send",delete:"Delete",test:"Test"},testArea:{description:"bla bla bla bla bla",typeSentence:"Type a sentence",selectPersona:"Select a Persona",selectPresset:"Select a presset",emptyState:{title:"No data for analysis",description:'Do a search, click the "Test" button.'}}},k=function(e){return{en:N,"pt-br":{files:"Arquivos",test:"Teste",fileArea:p({},N.fileArea,{fileName:"Nome do arquivo",presset:"Presset",actions:"Ações",search:"Pesquisar",fileUpload:"Upload de arquivo",emptyState:p({},N.fileArea.emptyState,{title:"Sem dados"}),modal:p({},N.fileArea.modal,{descriptionUpload:"Arraste e solte os arquivos aqui ou",chooseFile:"Escolha um arquivo"})}),buttons:p({},N.buttons,{cancel:"Cancelar",send:"Enviar",delete:"Excluir",test:"Testar"}),testArea:p({},N.testArea,{description:"bla bla bla bla bla",typeSentence:"Digite uma frase",selectPersona:"Selecione uma Persona",selectPresset:"Selecione uma predefinição",emptyState:p({},N.testArea.emptyState,{title:"Sem dados para análise",description:'Faça uma pesquisa, clique no botão "Teste".'})})},es:p({},N,{files:"Archivos",test:"Prueba",fileArea:p({},N.fileArea,{fileName:"Nombre del archivo",presset:"Presset",actions:"Acciones",search:"Buscar",fileUpload:"Carga de archivos",emptyState:p({},N.fileArea.emptyState,{title:"Sin datos"}),modal:p({},N.fileArea.modal,{descriptionUpload:"Arrastre y suelte los archivos aquí o",chooseFile:"Elegir un archivo"})}),buttons:p({},N.buttons,{cancel:"Cancelar",send:"Enviar",delete:"Eliminar",test:"Probar"}),testArea:p({},N.testArea,{description:"bla bla bla bla bla",typeSentence:"Escribe una oración",selectPersona:"Seleccionar una Persona",selectPresset:"Seleccionar una configuración preestablecida",emptyState:p({},N.testArea.emptyState,{title:"Sin datos para el análisis",description:'Realiza una búsqueda, haz clic en el botón "Prueba".'})})})}[e]||N},q=s.div(E||(E=m(["\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"]))),w=s.div(y||(y=m(["\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"]))),_=s.div(A||(A=m(["\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n"]))),j=s.table(S||(S=m(["\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"]))),O=s.div(C||(C=m(["\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"]))),T=s.span(P||(P=m(["\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: "," 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"])),(function(e){return"var(--"+e.color+")"})),F=function(e){var n=e.color,t=e.size;return r.createElement(T,{color:void 0===n?"neutral-3":n,className:o(["spinner--"+(void 0===t?"md":t),e.className])},r.createElement("span",null),r.createElement("span",null),r.createElement("span",null),r.createElement("span",null))},R=["size","children","isLoading","className"],z=a.forwardRef((function(e,n){var t=e.size,a=void 0===t?"medium":t,l=e.children,i=e.isLoading,s=void 0!==i&&i,c=e.className,d=void 0===c?"":c,p=u(e,R);return r.createElement(_,{className:d},s?r.createElement(O,null,r.createElement(F,null)):null,r.createElement(j,Object.assign({className:o([a]),ref:n},p),l))}));z.propTypes={children:i.node.isRequired,className:i.string,size:i.oneOf(["small","medium","large"]),isLoading:i.bool};var D=function(e){var n=e.files,t=e.setFiles,a=e.initialFiles;return r.createElement("div",{style:{position:"relative",width:"300px"}},r.createElement("input",{type:"text",onChange:function(e){return function(e){var r=e.target.value.trim(),l=d.nfkd(r).toLowerCase(),i=n.filter((function(e){return d.nfkd(e.name).toLowerCase().includes(l)}));t(""!==r?i:a)}(e)},placeholder:e.placeholder,style:{paddingLeft:"40px",borderRadius:"5px",border:"1px solid #ccc",height:"40px",width:"100%"}}),r.createElement("div",{style:{position:"absolute",top:"10px",left:"10px",pointerEvents:"none"}},r.createElement(c.FaSearch,null)))},U=function(){var e=a.useState([]),n=e[0],t=e[1],i=a.useState([]),o=i[0],s=i[1],d=l.useLocation().pathname.split("/")[4],p=k("pt-br");return a.useEffect((function(){t([{name:"Documentação conceitual Code7_v3",tags:"boteria, code7"},{name:"PAE_Programa_Apoio_ao_Empregado",tags:"pae, vr"},{name:"Vidalink",tags:"vidalink, vr"},{name:"[GUIA PRÁTICO] Como criar o chatbot perfeito",tags:"ebook, code7"}]),s([{name:"Documentação conceitual Code7_v3",tags:"boteria, code7"},{name:"PAE_Programa_Apoio_ao_Empregado",tags:"pae, vr"},{name:"Vidalink",tags:"vidalink, vr"},{name:"[GUIA PRÁTICO] Como criar o chatbot perfeito",tags:"ebook, code7"}])}),[]),a.useEffect((function(){console.log("files, id, t: ",n,d,p)}),[n]),r.createElement(q,null,0===n.length?null:r.createElement(q,null,r.createElement(w,null,r.createElement("div",{className:"infos"},r.createElement("h2",null,p.files),r.createElement("p",null,p.fileArea.description)),r.createElement("div",{className:"actions"},r.createElement(D,{placeholder:p.fileArea.search,files:n,setFiles:t,initialFiles:o}),r.createElement("button",null,r.createElement(c.FaUpload,null)," ",p.fileArea.fileUpload))),r.createElement(z,null,r.createElement("thead",null,r.createElement("tr",null,r.createElement("th",{className:"th_file_name"},p.fileArea.fileName),r.createElement("th",{className:"th_pressets"},p.fileArea.presset),r.createElement("th",{className:"th_actions"},p.fileArea.actions))),r.createElement("tbody",null,n.map((function(e){return r.createElement("tr",null,r.createElement("td",null,e.name),r.createElement("td",{className:"tags",dangerouslySetInnerHTML:{__html:(n=e.tags,t="",t+=n.split(",").map((function(e){return"<p class='tag'>"+e+"</p>"})).join(""))}}),r.createElement("td",null,r.createElement("div",{className:"divDelete"},r.createElement("button",{className:"buttonDelete"},p.buttons.delete))));var n,t}))))))},L=function(){return r.createElement("div",null,r.createElement("p",null,"Teste Area"))},I=function(e){var n=l.useRouteMatch(),t=l.useLocation().pathname,i=l.useHistory(),o=k(e.language),s=a.useMemo((function(){return t.split("/")[5]||"files"}),[t]);return r.createElement(r.Fragment,null,r.createElement(x,{value:s,onChange:function(e){return i.push(n.url+"/"+e)}},r.createElement(v,{value:"files"},o.files),r.createElement(v,{value:"test"},o.test)),r.createElement(a.Suspense,{fallback:e.loading},r.createElement(l.Switch,null,r.createElement(l.Route,{path:""+n.path,exact:!0,component:U}),r.createElement(l.Route,{path:n.path+"/files",component:U}),r.createElement(l.Route,{path:n.path+"/test",component:L}))))};exports.Code7=function(e){return r.createElement(I,Object.assign({},e))};
|
|
2
2
|
//# sourceMappingURL=code7-leia.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code7-leia.cjs.production.min.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/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../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 },\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 },\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: 'bla bla bla bla bla',\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 },\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\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 files: FileData[]\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = unorm.nfkd(e.target.value).toLowerCase();\n const newFiles = files.filter(file => unorm.nfkd(file.name).toLowerCase().includes(searchTerm));\n setFiles(newFiles.length > 0 ? 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 React, { useEffect, useState} from 'react';\n\nimport { FaUpload } from 'react-icons/fa';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\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';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const { pathname } = useLocation();\n const id = pathname.split('/')[4]\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n\n setInitialFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n }, [])\n\n useEffect(() => {\n console.log('files, id, t: ', files, id, t)\n }, [files])\n\n const presset = (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 renderFiles = () => {\n if (files.length === 0) {\n return null;\n }\n \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} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\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: presset(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete'>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n </S.Container>\n );\n }\n\n return (\n <S.Container>\n {renderFiles()}\n </S.Container>\n );\n};","import React from 'react';\n\nexport const TestArea = () => {\n return (\n <div>\n <p>Teste Area</p>\n \n </div>\n );\n};","import React, { useMemo, Suspense } from 'react';\n\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\n\nimport { getLanguage } from './utils/getLanguage'\n\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\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 <>\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 );\n};","import type { PropsWithChildren, ReactElement } from 'react';\nimport React from 'react';\nimport { Leia } from './Leia';\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 <Leia {...props} />;\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","_child$props2","isValidElement","Array","isArray","_child$props","props","cloneElement","_child$props3","onClick","_child$props4","number","defaultLanguage","files","test","fileArea","description","fileName","presset","actions","search","fileUpload","emptyState","title","modal","descriptionUpload","chooseFile","buttons","cancel","send","delete","testArea","typeSentence","selectPersona","selectPresset","getLanguage","language","en","pt-br","_extends","es","Container","div","Header","TableWrapper","Table","table","TableLoadingWrapper","_templateObject3","SpinnerWrapper","span","color","Spinner","_ref$size","size","_ref$color","forwardRef","ref","_ref$isLoading","isLoading","_ref$className","oneOf","SearchInput","setFiles","initialFiles","style","position","width","type","e","searchTerm","unorm","nfkd","target","toLowerCase","newFiles","filter","file","name","includes","length","searchName","placeholder","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","_useState2","setInitialFiles","id","useLocation","pathname","split","t","useEffect","tags","console","log","Search","FaUpload","object","dangerouslySetInnerHTML","__html","html","tag","join","TestArea","Leia","match","useRouteMatch","history","useHistory","activeTab","useMemo","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"code7-leia.cjs.production.min.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/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../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 },\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 },\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: 'bla bla bla bla bla',\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 },\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\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 files: FileData[]\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, 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 = files.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 React, { useEffect, useState} from 'react';\n\nimport { FaUpload } from 'react-icons/fa';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\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';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const { pathname } = useLocation();\n const id = pathname.split('/')[4]\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n\n setInitialFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n }, [])\n\n useEffect(() => {\n console.log('files, id, t: ', files, id, t)\n }, [files])\n\n const presset = (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 renderFiles = () => {\n if (files.length === 0) {\n return null;\n }\n \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} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\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: presset(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete'>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n </S.Container>\n );\n }\n\n return (\n <S.Container>\n {renderFiles()}\n </S.Container>\n );\n};","import React from 'react';\n\nexport const TestArea = () => {\n return (\n <div>\n <p>Teste Area</p>\n \n </div>\n );\n};","import React, { useMemo, Suspense } from 'react';\n\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\n\nimport { getLanguage } from './utils/getLanguage'\n\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\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 <>\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 );\n};","import type { PropsWithChildren, ReactElement } from 'react';\nimport React from 'react';\nimport { Leia } from './Leia';\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 <Leia {...props} />;\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","_child$props2","isValidElement","Array","isArray","_child$props","props","cloneElement","_child$props3","onClick","_child$props4","number","defaultLanguage","files","test","fileArea","description","fileName","presset","actions","search","fileUpload","emptyState","title","modal","descriptionUpload","chooseFile","buttons","cancel","send","delete","testArea","typeSentence","selectPersona","selectPresset","getLanguage","language","en","pt-br","_extends","es","Container","div","Header","TableWrapper","Table","table","TableLoadingWrapper","_templateObject3","SpinnerWrapper","span","color","Spinner","_ref$size","size","_ref$color","forwardRef","ref","_ref$isLoading","isLoading","_ref$className","oneOf","SearchInput","setFiles","initialFiles","style","position","width","type","e","searchTerm","target","trim","normalizedSearchTerm","unorm","nfkd","toLowerCase","newFiles","filter","file","name","includes","searchName","placeholder","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","_useState2","setInitialFiles","id","useLocation","pathname","split","t","useEffect","tags","console","log","length","Search","FaUpload","object","dangerouslySetInnerHTML","__html","html","tag","join","TestArea","Leia","match","useRouteMatch","history","useHistory","activeTab","useMemo","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component"],"mappings":"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"}
|
package/dist/code7-leia.esm.js
CHANGED
|
@@ -268,11 +268,13 @@ var SearchInput = function SearchInput(_ref) {
|
|
|
268
268
|
setFiles = _ref.setFiles,
|
|
269
269
|
initialFiles = _ref.initialFiles;
|
|
270
270
|
var searchName = function searchName(e) {
|
|
271
|
-
var searchTerm =
|
|
271
|
+
var searchTerm = e.target.value.trim();
|
|
272
|
+
var normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();
|
|
272
273
|
var newFiles = files.filter(function (file) {
|
|
273
|
-
|
|
274
|
+
var normalizedFileName = unorm.nfkd(file.name).toLowerCase();
|
|
275
|
+
return normalizedFileName.includes(normalizedSearchTerm);
|
|
274
276
|
});
|
|
275
|
-
setFiles(
|
|
277
|
+
setFiles(searchTerm !== '' ? newFiles : initialFiles);
|
|
276
278
|
};
|
|
277
279
|
return React.createElement("div", {
|
|
278
280
|
style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code7-leia.esm.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/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../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 },\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 },\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: 'bla bla bla bla bla',\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 },\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\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 files: FileData[]\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles, initialFiles }) => {\n\n const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchTerm = unorm.nfkd(e.target.value).toLowerCase();\n const newFiles = files.filter(file => unorm.nfkd(file.name).toLowerCase().includes(searchTerm));\n setFiles(newFiles.length > 0 ? 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 React, { useEffect, useState} from 'react';\n\nimport { FaUpload } from 'react-icons/fa';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\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';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const { pathname } = useLocation();\n const id = pathname.split('/')[4]\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n\n setInitialFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n }, [])\n\n useEffect(() => {\n console.log('files, id, t: ', files, id, t)\n }, [files])\n\n const presset = (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 renderFiles = () => {\n if (files.length === 0) {\n return null;\n }\n \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} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\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: presset(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete'>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n </S.Container>\n );\n }\n\n return (\n <S.Container>\n {renderFiles()}\n </S.Container>\n );\n};","import React from 'react';\n\nexport const TestArea = () => {\n return (\n <div>\n <p>Teste Area</p>\n \n </div>\n );\n};","import React, { useMemo, Suspense } from 'react';\n\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\n\nimport { getLanguage } from './utils/getLanguage'\n\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\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 <>\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 );\n};","import type { PropsWithChildren, ReactElement } from 'react';\nimport React from 'react';\nimport { Leia } from './Leia';\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 <Leia {...props} />;\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","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","unorm","nfkd","target","toLowerCase","newFiles","filter","file","name","includes","length","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","_useState2","setInitialFiles","_useLocation","useLocation","pathname","id","split","t","useEffect","console","log","tags","tagsSplit","html","tag","join","renderFiles","Search","FaUpload","object","dangerouslySetInnerHTML","__html","TestArea","Leia","match","useRouteMatch","history","useHistory","activeTab","useMemo","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","Code7"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"code7-leia.esm.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/index.tsx","../src/components/TestArea/index.tsx","../src/Leia.tsx","../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 },\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 },\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: 'bla bla bla bla bla',\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 },\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\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 files: FileData[]\n initialFiles: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, 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 = files.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 React, { useEffect, useState} from 'react';\n\nimport { FaUpload } from 'react-icons/fa';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\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';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState<FileData[]>([]);\n const [initialFiles, setInitialFiles] = useState<FileData[]>([]);\n const { pathname } = useLocation();\n const id = pathname.split('/')[4]\n const t = getLanguage('pt-br')\n\n useEffect(() => {\n setFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n\n setInitialFiles([\n {\n \"name\": \"Documentação conceitual Code7_v3\",\n \"tags\": \"boteria, code7\"\n },\n {\n \"name\": \"PAE_Programa_Apoio_ao_Empregado\",\n \"tags\": \"pae, vr\"\n },\n {\n \"name\": \"Vidalink\",\n \"tags\": \"vidalink, vr\"\n },\n {\n \"name\": \"[GUIA PRÁTICO] Como criar o chatbot perfeito\",\n \"tags\": \"ebook, code7\"\n }\n ])\n }, [])\n\n useEffect(() => {\n console.log('files, id, t: ', files, id, t)\n }, [files])\n\n const presset = (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 renderFiles = () => {\n if (files.length === 0) {\n return null;\n }\n \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} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>\n <button><FaUpload /> {t.fileArea.fileUpload}</button>\n </div>\n </S.Header>\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: presset(object.tags) }} />\n <td>\n <div className='divDelete'>\n <button className='buttonDelete'>{t.buttons.delete}</button>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </Table>\n </S.Container>\n );\n }\n\n return (\n <S.Container>\n {renderFiles()}\n </S.Container>\n );\n};","import React from 'react';\n\nexport const TestArea = () => {\n return (\n <div>\n <p>Teste Area</p>\n \n </div>\n );\n};","import React, { useMemo, Suspense } from 'react';\n\nimport { Route, useLocation, useRouteMatch, useHistory, Switch as SwitchRoute } from 'react-router-dom';\n\nimport type { Props } from './index';\nimport { Tab, Tabs } from './components/Tabs'\n\nimport { getLanguage } from './utils/getLanguage'\n\nimport { FileArea } from './components/FileArea';\nimport { TestArea } from './components/TestArea';\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 <>\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 );\n};","import type { PropsWithChildren, ReactElement } from 'react';\nimport React from 'react';\nimport { Leia } from './Leia';\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 <Leia {...props} />;\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","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","FileArea","_useState","useState","_useState2","setInitialFiles","_useLocation","useLocation","pathname","id","split","t","useEffect","console","log","tags","tagsSplit","html","tag","join","renderFiles","length","Search","FaUpload","object","dangerouslySetInnerHTML","__html","TestArea","Leia","match","useRouteMatch","history","useHistory","activeTab","useMemo","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","Code7"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -13,9 +13,15 @@ interface SearchInputProps {
|
|
|
13
13
|
const SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles, initialFiles }) => {
|
|
14
14
|
|
|
15
15
|
const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {
|
|
16
|
-
const searchTerm =
|
|
17
|
-
const
|
|
18
|
-
|
|
16
|
+
const searchTerm = e.target.value.trim();
|
|
17
|
+
const normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();
|
|
18
|
+
|
|
19
|
+
const newFiles = files.filter(file => {
|
|
20
|
+
const normalizedFileName = unorm.nfkd(file.name).toLowerCase();
|
|
21
|
+
return normalizedFileName.includes(normalizedSearchTerm);
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
setFiles(searchTerm !== '' ? newFiles : initialFiles);
|
|
19
25
|
}
|
|
20
26
|
|
|
21
27
|
|