code7-leia 0.1.26 → 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.
@@ -11,6 +11,7 @@ var PropTypes = _interopDefault(require('prop-types'));
11
11
  var cc = _interopDefault(require('classcat'));
12
12
  var styled = _interopDefault(require('styled-components'));
13
13
  var fa = require('react-icons/fa');
14
+ var unorm = _interopDefault(require('unorm'));
14
15
 
15
16
  function _extends() {
16
17
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -271,12 +272,16 @@ Table$1.propTypes = {
271
272
  var SearchInput = function SearchInput(_ref) {
272
273
  var placeholder = _ref.placeholder,
273
274
  files = _ref.files,
274
- setFiles = _ref.setFiles;
275
+ setFiles = _ref.setFiles,
276
+ initialFiles = _ref.initialFiles;
275
277
  var searchName = function searchName(e) {
278
+ var searchTerm = e.target.value.trim();
279
+ var normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();
276
280
  var newFiles = files.filter(function (file) {
277
- return file.name.includes(e.target.value);
281
+ var normalizedFileName = unorm.nfkd(file.name).toLowerCase();
282
+ return normalizedFileName.includes(normalizedSearchTerm);
278
283
  });
279
- setFiles(newFiles);
284
+ setFiles(searchTerm !== '' ? newFiles : initialFiles);
280
285
  };
281
286
  return React__default.createElement("div", {
282
287
  style: {
@@ -310,6 +315,9 @@ var FileArea = function FileArea() {
310
315
  var _useState = React.useState([]),
311
316
  files = _useState[0],
312
317
  setFiles = _useState[1];
318
+ var _useState2 = React.useState([]),
319
+ initialFiles = _useState2[0],
320
+ setInitialFiles = _useState2[1];
313
321
  var _useLocation = reactRouterDom.useLocation(),
314
322
  pathname = _useLocation.pathname;
315
323
  var id = pathname.split('/')[4];
@@ -328,6 +336,19 @@ var FileArea = function FileArea() {
328
336
  "name": "[GUIA PRÁTICO] Como criar o chatbot perfeito",
329
337
  "tags": "ebook, code7"
330
338
  }]);
339
+ setInitialFiles([{
340
+ "name": "Documentação conceitual Code7_v3",
341
+ "tags": "boteria, code7"
342
+ }, {
343
+ "name": "PAE_Programa_Apoio_ao_Empregado",
344
+ "tags": "pae, vr"
345
+ }, {
346
+ "name": "Vidalink",
347
+ "tags": "vidalink, vr"
348
+ }, {
349
+ "name": "[GUIA PRÁTICO] Como criar o chatbot perfeito",
350
+ "tags": "ebook, code7"
351
+ }]);
331
352
  }, []);
332
353
  React.useEffect(function () {
333
354
  console.log('files, id, t: ', files, id, t);
@@ -351,7 +372,8 @@ var FileArea = function FileArea() {
351
372
  }, React__default.createElement(SearchInput, {
352
373
  placeholder: t.fileArea.search,
353
374
  files: files,
354
- setFiles: setFiles
375
+ setFiles: setFiles,
376
+ initialFiles: initialFiles
355
377
  }), React__default.createElement("button", null, React__default.createElement(fa.FaUpload, null), " ", t.fileArea.fileUpload))), React__default.createElement(Table$1, null, React__default.createElement("thead", null, React__default.createElement("tr", null, React__default.createElement("th", {
356
378
  className: "th_file_name"
357
379
  }, t.fileArea.fileName), React__default.createElement("th", {
@@ -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 { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n files: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles }) => {\n\n const searchName = (e: any) => {\n const newFiles = files.filter(file => file.name.includes(e.target.value));\n setFiles(newFiles);\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 { 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\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}></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","searchName","e","newFiles","filter","file","name","includes","target","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","_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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,IAAMA,QAAQ,gBAAGC,MAAM,CAACC,EAAE,CAAAC,eAAA,KAAAA,eAAA,gBAAAC,2BAAA,yHAKhC;AAEM,IAAMC,GAAG,gBAAGJ,MAAM,CAACK,EAAE,CAAAC,gBAAA,KAAAA,gBAAA,gBAAAH,2BAAA,8lBAkC3B;;;;ACrDD,AAkBO,IAAMC,KAAG,GAAG,SAANA,KAAGA,CAAAG,IAAA;MAAMC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAKC,IAAI,GAAAC,6BAAA,CAAAJ,IAAA,EAAAK,SAAA;EAC7C,OACEC,6BAACC,GAAK;IAACC,SAAS,EAAEC,EAAE,CAAC;MAAER,MAAM,EAANA;KAAQ;KAAOE,IAAI,GACvCD,QAAQ,CACH;AAEZ,CAAC;AAEDL,KAAG,CAACa,SAAS,GAAG;EACdR,QAAQ,eAAES,SAAS,CAACC,SAAS,CAAC,CAC5BD,SAAS,CAACE,MAAM,EAChBF,SAAS,CAACG,OAAO,EACjBH,SAAS,CAACI,IAAI,CACf,CAAC,CAACC,UAAU;EACbC,QAAQ,EAAEN,SAAS,CAACO,IAAI;EACxBC,KAAK,EAAER,SAAS,CAACE,MAAM;EACvBZ,MAAM,EAAEU,SAAS,CAACS;CACnB;AAEDvB,KAAG,CAACwB,YAAY,GAAG;EACjBJ,QAAQ,EAAE,SAAAA,aAAQ;EAClBE,KAAK,EAAE,EAAE;EACTlB,MAAM,EAAE;CACT;AAED,AAAO,IAAMqB,IAAI,GAAG,SAAPA,IAAIA,CAAAC,KAAA;MAAgBC,YAAY,GAAAD,KAAA,CAAtBrB,QAAQ;IAAgBiB,KAAK,GAAAI,KAAA,CAALJ,KAAK;IAAEF,QAAQ,GAAAM,KAAA,CAARN,QAAQ;IAAKd,IAAI,GAAAC,6BAAA,CAAAmB,KAAA,EAAAE,UAAA;EACrE,IAAMvB,QAAQ,GAAGI,cAAK,CAACoB,QAAQ,CAACC,GAAG,CAACH,YAAY,EAAE,UAACI,KAAK;;IACtD,IAAI,CAACtB,cAAK,CAACuB,cAAc,CAACD,KAAK,CAAC,EAAE;MAChC,OAAO,IAAI;;IAGb,IAAIE,KAAK,CAACC,OAAO,EAAAC,YAAA,GAACJ,KAAK,CAACK,KAAK,qBAAXD,YAAA,CAAa9B,QAAQ,CAAC,EAAE;MAAA,IAAAgC,aAAA;MACxC,OAAO5B,cAAK,CAAC6B,YAAY,CAACP,KAAgC,EAAE;QAC1D3B,MAAM,EAAE,EAAAiC,aAAA,GAAAN,KAAK,CAACK,KAAK,qBAAXC,aAAA,CAAaf,KAAK,MAAKA,KAAK;QACpCA,KAAK,EAALA,KAAK;QACLF,QAAQ,EAARA;OACD,CAAC;;IAGJ,OAAOX,cAAK,CAAC6B,YAAY,CAACP,KAAgC,EAAE;MAC1D3B,MAAM,EAAE,EAAAmC,aAAA,GAAAR,KAAK,CAACK,KAAK,qBAAXG,aAAA,CAAajB,KAAK,MAAKA,KAAK;MACpCkB,OAAO,EAAE,SAAAA;QAAA,IAAAC,aAAA;QAAA,OAAMrB,QAAQ,EAAAqB,aAAA,GAACV,KAAK,CAACK,KAAK,qBAAXK,aAAA,CAAanB,KAAK,CAAC;;KAC5C,CAAC;GACH,CAAC;EAEF,OAAOb,6BAACC,QAAU,oBAAKJ,IAAI,GAAGD,QAAQ,CAAc;AACtD,CAAC;AAEDoB,IAAI,CAACZ,SAAS,GAAG;EACfR,QAAQ,EAAES,SAAS,CAACI,IAAI,CAACC,UAAU;EACnCG,KAAK,eAAER,SAAS,CAACC,SAAS,CAAC,CAACD,SAAS,CAACE,MAAM,EAAEF,SAAS,CAAC4B,MAAM,CAAC,CAAC,CAACvB,UAAU;EAC3EC,QAAQ,EAAEN,SAAS,CAACO,IAAI,CAACF;CAC1B;;ACnED,IAAMwB,eAAe,GAAa;EAChCC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE;IACRC,WAAW,EAAE,qBAAqB;IAClCC,QAAQ,EAAE,WAAW;IACrBC,OAAO,EAAE,SAAS;IAClBC,OAAO,EAAE,SAAS;IAClBC,MAAM,EAAE,QAAQ;IAChBC,UAAU,EAAE,aAAa;IACzBC,UAAU,EAAE;MACVC,KAAK,EAAE,SAAS;MAChBP,WAAW,EAAE;KACd;IACDQ,KAAK,EAAE;MACLC,iBAAiB,EAAE,6BAA6B;MAChDC,UAAU,EAAE;;GAEf;EACDC,OAAO,EAAE;IACPC,MAAM,EAAE,QAAQ;IAChBC,IAAI,EAAE,MAAM;IACZ,UAAQ,QAAQ;IAChBf,IAAI,EAAE;GACP;EACDgB,QAAQ,EAAE;IACRd,WAAW,EAAE,qBAAqB;IAClCe,YAAY,EAAE,iBAAiB;IAC/BC,aAAa,EAAE,kBAAkB;IACjCC,aAAa,EAAE,kBAAkB;IACjCX,UAAU,EAAE;MACVC,KAAK,EAAE,sBAAsB;MAC7BP,WAAW,EAAE;;;CAGlB;AAED,AAAO,IAAMkB,WAAW,GAAG,SAAdA,WAAWA,CAAIC,QAAuD;EACjF,IAAMC,SAAS,GAAG;IAChBC,EAAE,EAAEzB,eAAe;IACnB,OAAO,EAAE;MACPC,KAAK,EAAE,UAAU;MACjBC,IAAI,EAAE,OAAO;MACbC,QAAQ,EAAAuB,QAAA,KACH1B,eAAe,CAACG,QAAQ;QAC3BE,QAAQ,EAAE,iBAAiB;QAC3BC,OAAO,EAAE,SAAS;QAClBC,OAAO,EAAE,OAAO;QAChBC,MAAM,EAAE,WAAW;QACnBC,UAAU,EAAE,mBAAmB;QAC/BC,UAAU,EAAAgB,QAAA,KACL1B,eAAe,CAACG,QAAQ,CAACO,UAAU;UACtCC,KAAK,EAAE;UACR;QACDC,KAAK,EAAAc,QAAA,KACA1B,eAAe,CAACG,QAAQ,CAACS,KAAK;UACjCC,iBAAiB,EAAE,qCAAqC;UACxDC,UAAU,EAAE;;QAEf;MACDC,OAAO,EAAAW,QAAA,KACF1B,eAAe,CAACe,OAAO;QAC1BC,MAAM,EAAE,UAAU;QAClBC,IAAI,EAAE,QAAQ;QACd,UAAQ,SAAS;QACjBf,IAAI,EAAE;QACP;MACDgB,QAAQ,EAAAQ,QAAA,KACH1B,eAAe,CAACkB,QAAQ;QAC3Bd,WAAW,EAAE,qBAAqB;QAClCe,YAAY,EAAE,kBAAkB;QAChCC,aAAa,EAAE,uBAAuB;QACtCC,aAAa,EAAE,4BAA4B;QAC3CX,UAAU,EAAAgB,QAAA,KACL1B,eAAe,CAACkB,QAAQ,CAACR,UAAU;UACtCC,KAAK,EAAE,wBAAwB;UAC/BP,WAAW,EAAE;;;KAGlB;IACDuB,EAAE,EAAAD,QAAA,KACG1B,eAAe;MAClBC,KAAK,EAAE,UAAU;MACjBC,IAAI,EAAE,QAAQ;MACdC,QAAQ,EAAAuB,QAAA,KACH1B,eAAe,CAACG,QAAQ;QAC3BE,QAAQ,EAAE,oBAAoB;QAC9BC,OAAO,EAAE,SAAS;QAClBC,OAAO,EAAE,UAAU;QACnBC,MAAM,EAAE,QAAQ;QAChBC,UAAU,EAAE,mBAAmB;QAC/BC,UAAU,EAAAgB,QAAA,KACL1B,eAAe,CAACG,QAAQ,CAACO,UAAU;UACtCC,KAAK,EAAE;UACR;QACDC,KAAK,EAAAc,QAAA,KACA1B,eAAe,CAACG,QAAQ,CAACS,KAAK;UACjCC,iBAAiB,EAAE,uCAAuC;UAC1DC,UAAU,EAAE;;QAEf;MACDC,OAAO,EAAAW,QAAA,KACF1B,eAAe,CAACe,OAAO;QAC1BC,MAAM,EAAE,UAAU;QAClBC,IAAI,EAAE,QAAQ;QACd,UAAQ,UAAU;QAClBf,IAAI,EAAE;QACP;MACDgB,QAAQ,EAAAQ,QAAA,KACH1B,eAAe,CAACkB,QAAQ;QAC3Bd,WAAW,EAAE,qBAAqB;QAClCe,YAAY,EAAE,qBAAqB;QACnCC,aAAa,EAAE,yBAAyB;QACxCC,aAAa,EAAE,8CAA8C;QAC7DX,UAAU,EAAAgB,QAAA,KACL1B,eAAe,CAACkB,QAAQ,CAACR,UAAU;UACtCC,KAAK,EAAE,4BAA4B;UACnCP,WAAW,EAAE;;;;GAIpB;EAED,OAAOoB,SAAS,CAACD,QAAQ,CAAC,IAAIvB,eAAe;AAC/C,CAAC;;;AC/HD,AAEO,IAAM4B,SAAS,gBAAG3E,MAAM,CAAC4E,GAAG,CAAA1E,iBAAA,KAAAA,iBAAA,gBAAAC,2BAAA,qeA8BlC;AAED,AAAO,IAAM0E,MAAM,gBAAG7E,MAAM,CAAC4E,GAAG,CAAAtE,kBAAA,KAAAA,kBAAA,gBAAAH,2BAAA,6cA+B/B;;;ACjED,AAEO,IAAM2E,YAAY,gBAAG9E,MAAM,CAAC4E,GAAG,CAAA1E,iBAAA,KAAAA,iBAAA,gBAAAC,2BAAA,8FAKrC;AAED,AAAO,IAAM4E,KAAK,gBAAG/E,MAAM,CAACgF,KAAK,CAAA1E,kBAAA,KAAAA,kBAAA,gBAAAH,2BAAA,wjBAsChC;AAED,AAAO,IAAM8E,mBAAmB,gBAAGjF,MAAM,CAAC4E,GAAG,CAAAM,gBAAA,KAAAA,gBAAA,gBAAA/E,2BAAA,yLAU5C;;;AC3DD,AAEO,IAAMgF,cAAc,gBAAGnF,MAAM,CAACoF,IAAI,CAAAlF,iBAAA,KAAAA,iBAAA,gBAAAC,2BAAA,09BAgCrB,UAACqC,KAAK;EAAA,kBAAcA,KAAK,CAAC6C,KAAK;AAAA,CAAG,CAwBrD;;ACnDD,IAAMC,OAAO,GAA2B,SAAlCA,OAAOA,CAAA/E,IAAA;wBAA8B8E,KAAK;IAALA,KAAK,GAAAE,UAAA,cAAG,WAAW,GAAAA,UAAA;IAAAC,SAAA,GAAAjF,IAAA,CAAEkF,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,IAAI,GAAAA,SAAA;IAAEzE,SAAS,GAAAR,IAAA,CAATQ,SAAS;EACpF,OACEF,6BAACC,cAAgB;IACfuE,KAAK,EAAEA,KAAK;IACZtE,SAAS,EAAEC,EAAE,CAAC,eAAayE,IAAI,EAAI1E,SAAS,CAAC;KAE7CF,0CAAQ,EACRA,0CAAQ,EACRA,0CAAQ,EACRA,0CAAQ,CACS;AAEvB,CAAC;;;ACnBD,AASA,IAAMkE,OAAK,gBAAGW,gBAAU,CACtB,UAAAnF,IAAA,EAAyFoF,GAA0B;uBAAhHF,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,QAAQ,GAAAA,SAAA;IAAE/E,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAAmF,cAAA,GAAArF,IAAA,CAAEsF,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAAAE,cAAA,GAAAvF,IAAA,CAAEQ,SAAS;IAATA,SAAS,GAAA+E,cAAA,cAAG,EAAE,GAAAA,cAAA;IAAKtD,KAAK,GAAA7B,6BAAA,CAAAJ,IAAA,EAAAK,WAAA;EACvE,OACEC,6BAACC,YAAc;IAACC,SAAS,EAAEA;KACxB8E,SAAS,GACRhF,6BAACC,mBAAqB,QACpBD,6BAACyE,OAAO,OAAG,CACW,GACtB,IAAI,EACRzE,6BAACC,KAAO;IAACC,SAAS,EAAEC,EAAE,CAAC,CAACyE,IAAI,CAAC,CAAC;IAAEE,GAAG,EAAEA;KAASnD,KAAK,GAChD/B,QAAQ,CACD,CACK;AAErB,CAAC,CACF;AAEDsE,OAAK,CAAC9D,SAAS,GAAG;EAChBR,QAAQ,EAAES,SAAS,CAACI,IAAI,CAACC,UAAU;EACnCR,SAAS,EAAEG,SAAS,CAACE,MAAM;EAC3BqE,IAAI,eAAEvE,SAAS,CAAC6E,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;EACnDF,SAAS,EAAE3E,SAAS,CAACS;CACtB;;ACrBD,IAAMqE,WAAW,GAA+B,SAA1CA,WAAWA,CAAAzF,IAAA;MAAkC0F,WAAW,GAAA1F,IAAA,CAAX0F,WAAW;IAAEjD,KAAK,GAAAzC,IAAA,CAALyC,KAAK;IAAEkD,QAAQ,GAAA3F,IAAA,CAAR2F,QAAQ;EAE7E,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,CAAM;IACxB,IAAMC,QAAQ,GAAGrD,KAAK,CAACsD,MAAM,CAAC,UAAAC,IAAI;MAAA,OAAIA,IAAI,CAACC,IAAI,CAACC,QAAQ,CAACL,CAAC,CAACM,MAAM,CAAChF,KAAK,CAAC;MAAC;IACzEwE,QAAQ,CAACG,QAAQ,CAAC;GACnB;EAGD,OACExF;IAAK8F,KAAK,EAAE;MAAEC,QAAQ,EAAE,UAAU;MAAEC,KAAK,EAAE;;KACzChG;IACEiG,IAAI,EAAC,MAAM;IACXtF,QAAQ,EAAE,SAAAA,SAAC4E,CAAC;MAAA,OAAKD,UAAU,CAACC,CAAC,CAAC;;IAC9BH,WAAW,EAAEA,WAAW;IACxBU,KAAK,EAAE;MACLI,WAAW,EAAE,MAAM;MACnBC,YAAY,EAAE,KAAK;MACnBC,MAAM,EAAE,gBAAgB;MACxBC,MAAM,EAAE,MAAM;MACdL,KAAK,EAAE;;IAET,EACFhG;IACE8F,KAAK,EAAE;MACLC,QAAQ,EAAE,UAAU;MACpBO,GAAG,EAAE,MAAM;MACXC,IAAI,EAAE,MAAM;MACZC,aAAa,EAAE;;KAGjBxG,6BAACyG,WAAQ,OAAG,CACR,CACF;AAEV,CAAC;;AC5BM,IAAMC,QAAQ,GAAG,SAAXA,QAAQA;EACnB,IAAAC,SAAA,GAA0BC,cAAQ,CAAa,EAAE,CAAC;IAA3CzE,KAAK,GAAAwE,SAAA;IAAEtB,QAAQ,GAAAsB,SAAA;EACtB,IAAAE,YAAA,GAAqBC,0BAAW,EAAE;IAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;EAChB,IAAMC,EAAE,GAAGD,QAAQ,CAACE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EACjC,IAAMC,CAAC,GAAG1D,WAAW,CAAC,OAAO,CAAC;EAE9B2D,eAAS,CAAC;IACR9B,QAAQ,CAAC,CACL;MACE,MAAM,EAAE,kCAAkC;MAC1C,MAAM,EAAE;KACT,EACD;MACE,MAAM,EAAE,iCAAiC;MACzC,MAAM,EAAE;KACT,EACD;MACE,MAAM,EAAE,UAAU;MAClB,MAAM,EAAE;KACT,EACD;MACE,MAAM,EAAE,8CAA8C;MACtD,MAAM,EAAE;KACT,CACF,CAAC;GACL,EAAE,EAAE,CAAC;EAEN8B,eAAS,CAAC;IACRC,OAAO,CAACC,GAAG,CAAC,gBAAgB,EAAElF,KAAK,EAAE6E,EAAE,EAAEE,CAAC,CAAC;GAC5C,EAAE,CAAC/E,KAAK,CAAC,CAAC;EAEX,IAAMK,OAAO,GAAG,SAAVA,OAAOA,CAAI8E,IAAY;IAC3B,IAAMC,SAAS,GAAGD,IAAI,CAACL,KAAK,CAAC,GAAG,CAAC;IACjC,IAAIO,IAAI,GAAG,EAAE;IAEbA,IAAI,IAAID,SAAS,CAAClG,GAAG,CAAC,UAAAoG,GAAG;MACvB,2BAAyBA,GAAG;KAC7B,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC;IAEX,OAAOF,IAAI;GACd;EAEC,IAAMG,WAAW,GAAG,SAAdA,WAAWA;IACf,IAAIxF,KAAK,CAACyF,MAAM,KAAK,CAAC,EAAE;MACtB,OAAO,IAAI;;IAGb,OACE5H,6BAACC,SAAW,QACVD,6BAACC,MAAQ,QACPD;MAAKE,SAAS,EAAC;OACbF,yCAAKkH,CAAC,CAAC/E,KAAK,CAAM,EAClBnC,wCAAIkH,CAAC,CAAC7E,QAAQ,CAACC,WAAW,CAAK,CAC3B,EACNtC;MAAKE,SAAS,EAAC;OACbF,6BAAC6H,WAAM;MAACzC,WAAW,EAAE8B,CAAC,CAAC7E,QAAQ,CAACK,MAAM;MAAEP,KAAK,EAAEA,KAAK;MAAEkD,QAAQ,EAAEA;MAAmB,EACnFrF,6CAAQA,6BAAC8H,WAAQ,OAAG,OAAEZ,CAAC,CAAC7E,QAAQ,CAACM,UAAU,CAAU,CACjD,CACG,EACX3C,6BAACkE,OAAK,QACJlE,4CACEA,yCACEA;MAAIE,SAAS,EAAC;OACXgH,CAAC,CAAC7E,QAAQ,CAACE,QAAQ,CACjB,EACLvC;MAAIE,SAAS,EAAC;OACbgH,CAAC,CAAC7E,QAAQ,CAACG,OAAO,CACd,EACLxC;MAAIE,SAAS,EAAC;OACbgH,CAAC,CAAC7E,QAAQ,CAACI,OAAO,CACd,CACF,CACC,EAERzC,4CACGmC,KAAK,CAACd,GAAG,CAAC,UAAC0G,MAAM;MAAA,OAChB/H,yCACEA,yCAAK+H,MAAM,CAACpC,IAAI,CAAM,EACtB3F;QAAIE,SAAS,EAAC,MAAM;QAAC8H,uBAAuB,EAAE;UAAEC,MAAM,EAAEzF,OAAO,CAACuF,MAAM,CAACT,IAAI;;QAAO,EAClFtH,yCACEA;QAAKE,SAAS,EAAC;SACbF;QAAQE,SAAS,EAAC;SAAgBgH,CAAC,CAACjE,OAAO,UAAO,CAAU,CACxD,CACH,CACF;KACN,CAAC,CACI,CACF,CACI;GAEjB;EAED,OACEjD,6BAACC,SAAW,QACT0H,WAAW,EAAE,CACF;AAElB,CAAC;;AC/GM,IAAMO,QAAQ,GAAG,SAAXA,QAAQA;EACnB,OACElI,0CACEA,qDAAiB,CAEb;AAEV,CAAC;;ACGM,IAAMmI,IAAI,GAAG,SAAPA,IAAIA,CAAIxG,KAAY;EAC/B,IAAMyG,KAAK,GAAGC,4BAAa,EAAE;EAC7B,IAAAxB,YAAA,GAAqBC,0BAAW,EAAE;IAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;EAChB,IAAMuB,OAAO,GAAGC,yBAAU,EAAE;EAE5B,IAAMrB,CAAC,GAAG1D,WAAW,CAAC7B,KAAK,CAAC8B,QAAQ,CAAC;EAErC,IAAM+E,SAAS,GAAGC,aAAO,CAAC;IACxB,OAAO1B,QAAQ,CAACE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO;GACzC,EAAE,CAACF,QAAQ,CAAC,CAAC;EAEd,OACE/G,4DACEA,6BAACgB,IAAI;IACHH,KAAK,EAAE2H,SAAS;IAChB7H,QAAQ,EAAE,SAAAA,SAACE,KAAK;MAAA,OAAKyH,OAAO,CAACI,IAAI,CAAIN,KAAK,CAACO,GAAG,SAAI9H,KAAO,CAAC;;KAE1Db,6BAACT,KAAG;IAACsB,KAAK,EAAC;KAASqG,CAAC,CAAC/E,KAAK,CAAO,EAClCnC,6BAACT,KAAG;IAACsB,KAAK,EAAC;KAAQqG,CAAC,CAAC9E,IAAI,CAAO,CAC3B,EACPpC,6BAAC4I,cAAQ;IAACC,QAAQ,EAAElH,KAAK,CAACmH;KACxB9I,6BAAC+I,qBAAW,QACV/I,6BAACgJ,oBAAK;IAACC,IAAI,OAAKb,KAAK,CAACa,IAAM;IAAEC,KAAK;IAACC,SAAS,EAAEzC;IAAY,EAC3D1G,6BAACgJ,oBAAK;IAACC,IAAI,EAAKb,KAAK,CAACa,IAAI,WAAQ;IAAEE,SAAS,EAAEzC;IAAY,EAC3D1G,6BAACgJ,oBAAK;IAACC,IAAI,EAAKb,KAAK,CAACa,IAAI,UAAO;IAAEE,SAAS,EAAEjB;IAAY,CAC9C,CACL,CACV;AAEP,CAAC;;SC9BekB,KAAKA,CAACzH,KAAY;EAChC,OAAO3B,6BAACmI,IAAI,oBAAKxG,KAAK,EAAI;AAC5B;;;;"}
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"),l=e(a),r=require("react-router-dom"),i=e(require("prop-types")),o=e(require("classcat")),s=e(require("styled-components")),c=require("react-icons/fa");function d(){return(d=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 p(e,n){if(null==e)return{};var t,a,l={},r=Object.keys(e);for(a=0;a<r.length;a++)n.indexOf(t=r[a])>=0||(l[t]=e[t]);return l}function u(e,n){return n||(n=e.slice(0)),e.raw=n,e}var m=s.ul(n||(n=u(["\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n"]))),f=s.li(t||(t=u(["\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"]))),h=["active","children"],b=["children","value","onChange"],g=function(e){var n=e.active,t=e.children,a=p(e,h);return l.createElement(f,Object.assign({className:o({active:n})},a),t)};g.propTypes={children:i.oneOfType([i.string,i.element,i.node]).isRequired,onChange:i.func,value:i.string,active:i.bool},g.defaultProps={onChange:function(){},value:"",active:!1};var v=function(e){var n=e.children,t=e.value,a=e.onChange,r=p(e,b),i=l.Children.map(n,(function(e){var n,r,i;return l.isValidElement(e)?Array.isArray(null==(n=e.props)?void 0:n.children)?l.cloneElement(e,{active:(null==(i=e.props)?void 0:i.value)===t,value:t,onChange:a}):l.cloneElement(e,{active:(null==(r=e.props)?void 0:r.value)===t,onClick:function(){var n;return a(null==(n=e.props)?void 0:n.value)}}):null}));return l.createElement(m,Object.assign({},r),i)};v.propTypes={children:i.node.isRequired,value:i.oneOfType([i.string,i.number]).isRequired,onChange:i.func.isRequired};var x,E,y,A,S,N,q={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.'}}},P=function(e){return{en:q,"pt-br":{files:"Arquivos",test:"Teste",fileArea:d({},q.fileArea,{fileName:"Nome do arquivo",presset:"Presset",actions:"Ações",search:"Pesquisar",fileUpload:"Upload de arquivo",emptyState:d({},q.fileArea.emptyState,{title:"Sem dados"}),modal:d({},q.fileArea.modal,{descriptionUpload:"Arraste e solte os arquivos aqui ou",chooseFile:"Escolha um arquivo"})}),buttons:d({},q.buttons,{cancel:"Cancelar",send:"Enviar",delete:"Excluir",test:"Testar"}),testArea:d({},q.testArea,{description:"bla bla bla bla bla",typeSentence:"Digite uma frase",selectPersona:"Selecione uma Persona",selectPresset:"Selecione uma predefinição",emptyState:d({},q.testArea.emptyState,{title:"Sem dados para análise",description:'Faça uma pesquisa, clique no botão "Teste".'})})},es:d({},q,{files:"Archivos",test:"Prueba",fileArea:d({},q.fileArea,{fileName:"Nombre del archivo",presset:"Presset",actions:"Acciones",search:"Buscar",fileUpload:"Carga de archivos",emptyState:d({},q.fileArea.emptyState,{title:"Sin datos"}),modal:d({},q.fileArea.modal,{descriptionUpload:"Arrastre y suelte los archivos aquí o",chooseFile:"Elegir un archivo"})}),buttons:d({},q.buttons,{cancel:"Cancelar",send:"Enviar",delete:"Eliminar",test:"Probar"}),testArea:d({},q.testArea,{description:"bla bla bla bla bla",typeSentence:"Escribe una oración",selectPersona:"Seleccionar una Persona",selectPresset:"Seleccionar una configuración preestablecida",emptyState:d({},q.testArea.emptyState,{title:"Sin datos para el análisis",description:'Realiza una búsqueda, haz clic en el botón "Prueba".'})})})}[e]||q},C=s.div(x||(x=u(["\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"]))),k=s.div(E||(E=u(["\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"]))),w=s.div(y||(y=u(["\n width: 100%;\n height: max-content;\n min-height: 50px;\n position: relative;\n"]))),j=s.table(A||(A=u(["\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(S||(S=u(["\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(N||(N=u(["\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+")"})),z=function(e){var n=e.color,t=e.size;return l.createElement(T,{color:void 0===n?"neutral-3":n,className:o(["spinner--"+(void 0===t?"md":t),e.className])},l.createElement("span",null),l.createElement("span",null),l.createElement("span",null),l.createElement("span",null))},F=["size","children","isLoading","className"],R=a.forwardRef((function(e,n){var t=e.size,a=void 0===t?"medium":t,r=e.children,i=e.isLoading,s=void 0!==i&&i,c=e.className,d=void 0===c?"":c,u=p(e,F);return l.createElement(w,{className:d},s?l.createElement(O,null,l.createElement(z,null)):null,l.createElement(j,Object.assign({className:o([a]),ref:n},u),r))}));R.propTypes={children:i.node.isRequired,className:i.string,size:i.oneOf(["small","medium","large"]),isLoading:i.bool};var _=function(e){var n=e.files,t=e.setFiles;return l.createElement("div",{style:{position:"relative",width:"300px"}},l.createElement("input",{type:"text",onChange:function(e){return function(e){var a=n.filter((function(n){return n.name.includes(e.target.value)}));t(a)}(e)},placeholder:e.placeholder,style:{paddingLeft:"40px",borderRadius:"5px",border:"1px solid #ccc",height:"40px",width:"100%"}}),l.createElement("div",{style:{position:"absolute",top:"10px",left:"10px",pointerEvents:"none"}},l.createElement(c.FaSearch,null)))},D=function(){var e=a.useState([]),n=e[0],t=e[1],i=r.useLocation().pathname.split("/")[4],o=P("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"}])}),[]),a.useEffect((function(){console.log("files, id, t: ",n,i,o)}),[n]),l.createElement(C,null,0===n.length?null:l.createElement(C,null,l.createElement(k,null,l.createElement("div",{className:"infos"},l.createElement("h2",null,o.files),l.createElement("p",null,o.fileArea.description)),l.createElement("div",{className:"actions"},l.createElement(_,{placeholder:o.fileArea.search,files:n,setFiles:t}),l.createElement("button",null,l.createElement(c.FaUpload,null)," ",o.fileArea.fileUpload))),l.createElement(R,null,l.createElement("thead",null,l.createElement("tr",null,l.createElement("th",{className:"th_file_name"},o.fileArea.fileName),l.createElement("th",{className:"th_pressets"},o.fileArea.presset),l.createElement("th",{className:"th_actions"},o.fileArea.actions))),l.createElement("tbody",null,n.map((function(e){return l.createElement("tr",null,l.createElement("td",null,e.name),l.createElement("td",{className:"tags",dangerouslySetInnerHTML:{__html:(n=e.tags,t="",t+=n.split(",").map((function(e){return"<p class='tag'>"+e+"</p>"})).join(""))}}),l.createElement("td",null,l.createElement("div",{className:"divDelete"},l.createElement("button",{className:"buttonDelete"},o.buttons.delete))));var n,t}))))))},U=function(){return l.createElement("div",null,l.createElement("p",null,"Teste Area"))},L=function(e){var n=r.useRouteMatch(),t=r.useLocation().pathname,i=r.useHistory(),o=P(e.language),s=a.useMemo((function(){return t.split("/")[5]||"files"}),[t]);return l.createElement(l.Fragment,null,l.createElement(v,{value:s,onChange:function(e){return i.push(n.url+"/"+e)}},l.createElement(g,{value:"files"},o.files),l.createElement(g,{value:"test"},o.test)),l.createElement(a.Suspense,{fallback:e.loading},l.createElement(r.Switch,null,l.createElement(r.Route,{path:""+n.path,exact:!0,component:D}),l.createElement(r.Route,{path:n.path+"/files",component:D}),l.createElement(r.Route,{path:n.path+"/test",component:U}))))};exports.Code7=function(e){return l.createElement(L,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 { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n files: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles }) => {\n\n const searchName = (e: any) => {\n const newFiles = files.filter(file => file.name.includes(e.target.value));\n setFiles(newFiles);\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 { 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\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}></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","style","position","width","type","e","newFiles","filter","file","name","includes","target","searchName","placeholder","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","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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"}
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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"}
@@ -4,6 +4,7 @@ import PropTypes from 'prop-types';
4
4
  import cc from 'classcat';
5
5
  import styled from 'styled-components';
6
6
  import { FaSearch, FaUpload } from 'react-icons/fa';
7
+ import unorm from 'unorm';
7
8
 
8
9
  function _extends() {
9
10
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -264,12 +265,16 @@ Table$1.propTypes = {
264
265
  var SearchInput = function SearchInput(_ref) {
265
266
  var placeholder = _ref.placeholder,
266
267
  files = _ref.files,
267
- setFiles = _ref.setFiles;
268
+ setFiles = _ref.setFiles,
269
+ initialFiles = _ref.initialFiles;
268
270
  var searchName = function searchName(e) {
271
+ var searchTerm = e.target.value.trim();
272
+ var normalizedSearchTerm = unorm.nfkd(searchTerm).toLowerCase();
269
273
  var newFiles = files.filter(function (file) {
270
- return file.name.includes(e.target.value);
274
+ var normalizedFileName = unorm.nfkd(file.name).toLowerCase();
275
+ return normalizedFileName.includes(normalizedSearchTerm);
271
276
  });
272
- setFiles(newFiles);
277
+ setFiles(searchTerm !== '' ? newFiles : initialFiles);
273
278
  };
274
279
  return React.createElement("div", {
275
280
  style: {
@@ -303,6 +308,9 @@ var FileArea = function FileArea() {
303
308
  var _useState = useState([]),
304
309
  files = _useState[0],
305
310
  setFiles = _useState[1];
311
+ var _useState2 = useState([]),
312
+ initialFiles = _useState2[0],
313
+ setInitialFiles = _useState2[1];
306
314
  var _useLocation = useLocation(),
307
315
  pathname = _useLocation.pathname;
308
316
  var id = pathname.split('/')[4];
@@ -321,6 +329,19 @@ var FileArea = function FileArea() {
321
329
  "name": "[GUIA PRÁTICO] Como criar o chatbot perfeito",
322
330
  "tags": "ebook, code7"
323
331
  }]);
332
+ setInitialFiles([{
333
+ "name": "Documentação conceitual Code7_v3",
334
+ "tags": "boteria, code7"
335
+ }, {
336
+ "name": "PAE_Programa_Apoio_ao_Empregado",
337
+ "tags": "pae, vr"
338
+ }, {
339
+ "name": "Vidalink",
340
+ "tags": "vidalink, vr"
341
+ }, {
342
+ "name": "[GUIA PRÁTICO] Como criar o chatbot perfeito",
343
+ "tags": "ebook, code7"
344
+ }]);
324
345
  }, []);
325
346
  useEffect(function () {
326
347
  console.log('files, id, t: ', files, id, t);
@@ -344,7 +365,8 @@ var FileArea = function FileArea() {
344
365
  }, React.createElement(SearchInput, {
345
366
  placeholder: t.fileArea.search,
346
367
  files: files,
347
- setFiles: setFiles
368
+ setFiles: setFiles,
369
+ initialFiles: initialFiles
348
370
  }), React.createElement("button", null, React.createElement(FaUpload, null), " ", t.fileArea.fileUpload))), React.createElement(Table$1, null, React.createElement("thead", null, React.createElement("tr", null, React.createElement("th", {
349
371
  className: "th_file_name"
350
372
  }, t.fileArea.fileName), React.createElement("th", {
@@ -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 { FaSearch } from 'react-icons/fa';\nimport type { FileData } from '../../../../interface/FileData'\n\ninterface SearchInputProps {\n placeholder: string;\n files: FileData[]\n setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;\n}\n\nconst SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles }) => {\n\n const searchName = (e: any) => {\n const newFiles = files.filter(file => file.name.includes(e.target.value));\n setFiles(newFiles);\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 { 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\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}></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","searchName","e","newFiles","filter","file","name","includes","target","style","position","width","type","paddingLeft","borderRadius","border","height","top","left","pointerEvents","FaSearch","FileArea","_useState","useState","_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
+ {"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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"}
@@ -3,6 +3,7 @@ import type { FileData } from '../../../../interface/FileData';
3
3
  interface SearchInputProps {
4
4
  placeholder: string;
5
5
  files: FileData[];
6
+ initialFiles: FileData[];
6
7
  setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;
7
8
  }
8
9
  declare const SearchInput: React.FC<SearchInputProps>;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.26",
2
+ "version": "0.1.28",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -53,21 +53,23 @@
53
53
  "@size-limit/preset-small-lib": "^11.0.2",
54
54
  "@types/react": "^18.2.48",
55
55
  "@types/react-dom": "^18.2.18",
56
+ "@types/react-router-dom": "^5.3.3",
57
+ "@types/unorm": "^1.3.31",
56
58
  "husky": "^9.0.6",
57
59
  "react": "^18.2.0",
58
60
  "react-dom": "^18.2.0",
61
+ "react-router-dom": "^5.2.0",
59
62
  "size-limit": "^11.0.2",
60
63
  "tsdx": "^0.14.1",
61
64
  "tslib": "^2.6.2",
62
- "typescript": "^5.3.3",
63
- "@types/react-router-dom": "^5.3.3",
64
- "react-router-dom": "^5.2.0"
65
+ "typescript": "^5.3.3"
65
66
  },
66
67
  "dependencies": {
67
68
  "axios": "^1.6.7",
68
69
  "classcat": "^5.0.4",
69
70
  "react-icons": "^5.0.1",
70
71
  "react-router-dom": "^5.2.0",
71
- "styled-components": "^6.1.8"
72
+ "styled-components": "^6.1.8",
73
+ "unorm": "^1.6.0"
72
74
  }
73
75
  }
@@ -1,19 +1,28 @@
1
1
  import React from 'react';
2
+ import unorm from 'unorm';
2
3
  import { FaSearch } from 'react-icons/fa';
3
4
  import type { FileData } from '../../../../interface/FileData'
4
5
 
5
6
  interface SearchInputProps {
6
7
  placeholder: string;
7
8
  files: FileData[]
9
+ initialFiles: FileData[]
8
10
  setFiles: React.Dispatch<React.SetStateAction<FileData[]>>;
9
11
  }
10
12
 
11
- const SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles }) => {
13
+ const SearchInput: React.FC<SearchInputProps> = ({ placeholder, files, setFiles, initialFiles }) => {
12
14
 
13
- const searchName = (e: any) => {
14
- const newFiles = files.filter(file => file.name.includes(e.target.value));
15
- setFiles(newFiles);
16
- }
15
+ const searchName = (e: React.ChangeEvent<HTMLInputElement>) => {
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);
25
+ }
17
26
 
18
27
 
19
28
  return (
@@ -16,6 +16,7 @@ import Search from './components/Search';
16
16
 
17
17
  export const FileArea = () => {
18
18
  const [files, setFiles] = useState<FileData[]>([]);
19
+ const [initialFiles, setInitialFiles] = useState<FileData[]>([]);
19
20
  const { pathname } = useLocation();
20
21
  const id = pathname.split('/')[4]
21
22
  const t = getLanguage('pt-br')
@@ -39,6 +40,25 @@ export const FileArea = () => {
39
40
  "tags": "ebook, code7"
40
41
  }
41
42
  ])
43
+
44
+ setInitialFiles([
45
+ {
46
+ "name": "Documentação conceitual Code7_v3",
47
+ "tags": "boteria, code7"
48
+ },
49
+ {
50
+ "name": "PAE_Programa_Apoio_ao_Empregado",
51
+ "tags": "pae, vr"
52
+ },
53
+ {
54
+ "name": "Vidalink",
55
+ "tags": "vidalink, vr"
56
+ },
57
+ {
58
+ "name": "[GUIA PRÁTICO] Como criar o chatbot perfeito",
59
+ "tags": "ebook, code7"
60
+ }
61
+ ])
42
62
  }, [])
43
63
 
44
64
  useEffect(() => {
@@ -69,7 +89,7 @@ export const FileArea = () => {
69
89
  <p>{t.fileArea.description}</p>
70
90
  </div>
71
91
  <div className='actions'>
72
- <Search placeholder={t.fileArea.search} files={files} setFiles={setFiles}></Search>
92
+ <Search placeholder={t.fileArea.search} files={files} setFiles={setFiles} initialFiles={initialFiles}></Search>
73
93
  <button><FaUpload /> {t.fileArea.fileUpload}</button>
74
94
  </div>
75
95
  </S.Header>