code7-leia 0.1.10 → 0.1.11

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.
@@ -113,11 +113,12 @@ var getLanguage = function getLanguage(language) {
113
113
  var _templateObject$1;
114
114
  var Container = /*#__PURE__*/styled.div(_templateObject$1 || (_templateObject$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n"])));
115
115
 
116
- var FileArea = function FileArea(_ref) {
117
- var id = _ref.id;
116
+ var FileArea = function FileArea() {
118
117
  var _useState = React.useState({}),
119
118
  files = _useState[0],
120
119
  setFiles = _useState[1];
120
+ var _useLocation = reactRouterDom.useLocation(),
121
+ pathname = _useLocation.pathname;
121
122
  React.useEffect(function () {
122
123
  // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))
123
124
  setFiles({
@@ -135,8 +136,12 @@ var FileArea = function FileArea(_ref) {
135
136
  "tags": "ebook, code7"
136
137
  }]
137
138
  });
139
+ console.log(files);
138
140
  }, []);
139
- return React__default.createElement(Container, null, React__default.createElement("div", null, "File Area $", id, " / $", files));
141
+ React.useEffect(function () {
142
+ console.log(files);
143
+ }, [files]);
144
+ return React__default.createElement(Container, null, React__default.createElement("div", null, "File Area $", pathname, " /"));
140
145
  };
141
146
 
142
147
  var TestArea = function TestArea() {
@@ -164,21 +169,12 @@ var Leia = function Leia(props) {
164
169
  }, t.test)), React__default.createElement(React.Suspense, {
165
170
  fallback: props.loading
166
171
  }, React__default.createElement(reactRouterDom.Switch, null, React__default.createElement(reactRouterDom.Route, {
167
- path: match.path,
172
+ path: "" + match.path,
168
173
  exact: true,
169
- render: function render(routeProps) {
170
- return React__default.createElement(FileArea, Object.assign({}, routeProps, {
171
- id: props.id
172
- }));
173
- }
174
+ component: FileArea
174
175
  }), React__default.createElement(reactRouterDom.Route, {
175
176
  path: match.path + "/files",
176
- exact: true,
177
- render: function render(routeProps) {
178
- return React__default.createElement(FileArea, Object.assign({}, routeProps, {
179
- id: props.id
180
- }));
181
- }
177
+ component: FileArea
182
178
  }), React__default.createElement(reactRouterDom.Route, {
183
179
  path: match.path + "/test",
184
180
  component: TestArea
@@ -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/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","type Language = {\n files: string;\n test: string;\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages: Record<'en' | 'pt-br' | 'es', Language> = {\n en: {\n files: 'Files',\n test: 'Test',\n },\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n },\n es: {\n files: 'Archivos',\n test: 'Prueba',\n }\n };\n\n return languages[language] || languages['pt-br'];\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n display: flex;\n justify-content: center;\n`;\n","import React, { useEffect, useState} from 'react';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport * as S from './styles';\n\nexport const FileArea = ({ id }: any) => {\n const [files, setFiles] = useState({});\n\n useEffect(() => {\n // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))\n setFiles({\n \"files\": [\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\n return (\n <S.Container>\n <div>File Area ${id} / ${files}</div>\n \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\n path={match.path}\n exact\n render={(routeProps) => <FileArea {...routeProps} id={props.id} />}\n />\n <Route\n path={`${match.path}/files`}\n exact\n render={(routeProps) => <FileArea {...routeProps} id={props.id} />}\n />\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","getLanguage","language","languages","en","files","test","es","Container","div","FileArea","id","_useState","useState","setFiles","useEffect","TestArea","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","t","activeTab","useMemo","split","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","render","routeProps","component","Code7"],"mappings":"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"}
1
+ {"version":3,"file":"code7-leia.cjs.development.js","sources":["../src/components/Tabs/styles.tsx","../src/components/Tabs/index.tsx","../src/utils/getLanguage.tsx","../src/components/FileArea/styles.tsx","../src/components/FileArea/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","type Language = {\n files: string;\n test: string;\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages: Record<'en' | 'pt-br' | 'es', Language> = {\n en: {\n files: 'Files',\n test: 'Test',\n },\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n },\n es: {\n files: 'Archivos',\n test: 'Prueba',\n }\n };\n\n return languages[language] || languages['pt-br'];\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n display: flex;\n justify-content: center;\n`;\n","import React, { useEffect, useState} from 'react';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\n\nimport * as S from './styles';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState({});\n const { pathname } = useLocation();\n\n useEffect(() => {\n // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))\n setFiles({\n \"files\": [\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 console.log(files)\n }, [])\n\n useEffect(() => {\n console.log(files)\n }, [files])\n\n return (\n <S.Container>\n <div>File Area ${pathname} /</div>\n \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","getLanguage","language","languages","en","files","test","es","Container","div","FileArea","_useState","useState","setFiles","_useLocation","useLocation","pathname","useEffect","console","log","TestArea","Leia","match","useRouteMatch","history","useHistory","t","activeTab","useMemo","split","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,r=require("react"),a=e(r),i=require("react-router-dom"),l=e(require("prop-types")),o=e(require("classcat")),u=e(require("styled-components"));function c(e,n){if(null==e)return{};var t,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n.indexOf(t=i[r])>=0||(a[t]=e[t]);return a}function s(e,n){return n||(n=e.slice(0)),e.raw=n,e}var p=u.ul(n||(n=s(["\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n"]))),d=u.li(t||(t=s(["\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"]))),v=["active","children"],m=["children","value","onChange"],f=function(e){var n=e.active,t=e.children,r=c(e,v);return a.createElement(d,Object.assign({className:o({active:n})},r),t)};f.propTypes={children:l.oneOfType([l.string,l.element,l.node]).isRequired,onChange:l.func,value:l.string,active:l.bool},f.defaultProps={onChange:function(){},value:"",active:!1};var g=function(e){var n=e.children,t=e.value,r=e.onChange,i=c(e,m),l=a.Children.map(n,(function(e){var n,i,l;return a.isValidElement(e)?Array.isArray(null==(n=e.props)?void 0:n.children)?a.cloneElement(e,{active:(null==(l=e.props)?void 0:l.value)===t,value:t,onChange:r}):a.cloneElement(e,{active:(null==(i=e.props)?void 0:i.value)===t,onClick:function(){var n;return r(null==(n=e.props)?void 0:n.value)}}):null}));return a.createElement(p,Object.assign({},i),l)};g.propTypes={children:l.node.isRequired,value:l.oneOfType([l.string,l.number]).isRequired,onChange:l.func.isRequired};var h,E=u.div(h||(h=s(["\n display: flex;\n justify-content: center;\n"]))),b=function(e){var n=e.id,t=r.useState({}),i=t[0],l=t[1];return r.useEffect((function(){l({files:[{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.createElement(E,null,a.createElement("div",null,"File Area $",n," / $",i))},y=function(){return a.createElement("div",null,a.createElement("p",null,"Teste Area"))},x=function(e){var n,t=i.useRouteMatch(),l=i.useLocation().pathname,o=i.useHistory(),u=(n={en:{files:"Files",test:"Test"},"pt-br":{files:"Arquivos",test:"Teste"},es:{files:"Archivos",test:"Prueba"}})[e.language]||n["pt-br"],c=r.useMemo((function(){return l.split("/")[5]||"files"}),[l]);return a.createElement(a.Fragment,null,a.createElement(g,{value:c,onChange:function(e){return o.push(t.url+"/"+e)}},a.createElement(f,{value:"files"},u.files),a.createElement(f,{value:"test"},u.test)),a.createElement(r.Suspense,{fallback:e.loading},a.createElement(i.Switch,null,a.createElement(i.Route,{path:t.path,exact:!0,render:function(n){return a.createElement(b,Object.assign({},n,{id:e.id}))}}),a.createElement(i.Route,{path:t.path+"/files",exact:!0,render:function(n){return a.createElement(b,Object.assign({},n,{id:e.id}))}}),a.createElement(i.Route,{path:t.path+"/test",component:y}))))};exports.Code7=function(e){return a.createElement(x,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,r=require("react"),a=e(r),l=require("react-router-dom"),o=e(require("prop-types")),i=e(require("classcat")),u=e(require("styled-components"));function c(e,n){if(null==e)return{};var t,r,a={},l=Object.keys(e);for(r=0;r<l.length;r++)n.indexOf(t=l[r])>=0||(a[t]=e[t]);return a}function s(e,n){return n||(n=e.slice(0)),e.raw=n,e}var p=u.ul(n||(n=s(["\n width: max-content;\n display: flex;\n align-items: center;\n border-bottom: 1px solid var(--neutral-1);\n"]))),v=u.li(t||(t=s(["\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"]))),m=["active","children"],f=["children","value","onChange"],d=function(e){var n=e.active,t=e.children,r=c(e,m);return a.createElement(v,Object.assign({className:i({active:n})},r),t)};d.propTypes={children:o.oneOfType([o.string,o.element,o.node]).isRequired,onChange:o.func,value:o.string,active:o.bool},d.defaultProps={onChange:function(){},value:"",active:!1};var g=function(e){var n=e.children,t=e.value,r=e.onChange,l=c(e,f),o=a.Children.map(n,(function(e){var n,l,o;return a.isValidElement(e)?Array.isArray(null==(n=e.props)?void 0:n.children)?a.cloneElement(e,{active:(null==(o=e.props)?void 0:o.value)===t,value:t,onChange:r}):a.cloneElement(e,{active:(null==(l=e.props)?void 0:l.value)===t,onClick:function(){var n;return r(null==(n=e.props)?void 0:n.value)}}):null}));return a.createElement(p,Object.assign({},l),o)};g.propTypes={children:o.node.isRequired,value:o.oneOfType([o.string,o.number]).isRequired,onChange:o.func.isRequired};var h,E=u.div(h||(h=s(["\n display: flex;\n justify-content: center;\n"]))),b=function(){var e=r.useState({}),n=e[0],t=e[1],o=l.useLocation().pathname;return r.useEffect((function(){t({files:[{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"}]}),console.log(n)}),[]),r.useEffect((function(){console.log(n)}),[n]),a.createElement(E,null,a.createElement("div",null,"File Area $",o," /"))},y=function(){return a.createElement("div",null,a.createElement("p",null,"Teste Area"))},C=function(e){var n,t=l.useRouteMatch(),o=l.useLocation().pathname,i=l.useHistory(),u=(n={en:{files:"Files",test:"Test"},"pt-br":{files:"Arquivos",test:"Teste"},es:{files:"Archivos",test:"Prueba"}})[e.language]||n["pt-br"],c=r.useMemo((function(){return o.split("/")[5]||"files"}),[o]);return a.createElement(a.Fragment,null,a.createElement(g,{value:c,onChange:function(e){return i.push(t.url+"/"+e)}},a.createElement(d,{value:"files"},u.files),a.createElement(d,{value:"test"},u.test)),a.createElement(r.Suspense,{fallback:e.loading},a.createElement(l.Switch,null,a.createElement(l.Route,{path:""+t.path,exact:!0,component:b}),a.createElement(l.Route,{path:t.path+"/files",component:b}),a.createElement(l.Route,{path:t.path+"/test",component:y}))))};exports.Code7=function(e){return a.createElement(C,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/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","type Language = {\n files: string;\n test: string;\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages: Record<'en' | 'pt-br' | 'es', Language> = {\n en: {\n files: 'Files',\n test: 'Test',\n },\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n },\n es: {\n files: 'Archivos',\n test: 'Prueba',\n }\n };\n\n return languages[language] || languages['pt-br'];\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n display: flex;\n justify-content: center;\n`;\n","import React, { useEffect, useState} from 'react';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport * as S from './styles';\n\nexport const FileArea = ({ id }: any) => {\n const [files, setFiles] = useState({});\n\n useEffect(() => {\n // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))\n setFiles({\n \"files\": [\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\n return (\n <S.Container>\n <div>File Area ${id} / ${files}</div>\n \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\n path={match.path}\n exact\n render={(routeProps) => <FileArea {...routeProps} id={props.id} />}\n />\n <Route\n path={`${match.path}/files`}\n exact\n render={(routeProps) => <FileArea {...routeProps} id={props.id} />}\n />\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","Container","div","FileArea","id","_useState","useState","files","setFiles","useEffect","name","tags","TestArea","Leia","languages","match","useRouteMatch","pathname","useLocation","history","useHistory","t","en","test","pt-br","es","language","activeTab","useMemo","split","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","render","routeProps","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/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","type Language = {\n files: string;\n test: string;\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages: Record<'en' | 'pt-br' | 'es', Language> = {\n en: {\n files: 'Files',\n test: 'Test',\n },\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n },\n es: {\n files: 'Archivos',\n test: 'Prueba',\n }\n };\n\n return languages[language] || languages['pt-br'];\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n display: flex;\n justify-content: center;\n`;\n","import React, { useEffect, useState} from 'react';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\n\nimport * as S from './styles';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState({});\n const { pathname } = useLocation();\n\n useEffect(() => {\n // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))\n setFiles({\n \"files\": [\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 console.log(files)\n }, [])\n\n useEffect(() => {\n console.log(files)\n }, [files])\n\n return (\n <S.Container>\n <div>File Area ${pathname} /</div>\n \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","Container","div","FileArea","_useState","useState","files","setFiles","pathname","useLocation","useEffect","name","tags","console","log","TestArea","Leia","languages","match","useRouteMatch","history","useHistory","t","en","test","pt-br","es","language","activeTab","useMemo","split","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import React, { useState, useEffect, useMemo, Suspense } from 'react';
2
- import { useRouteMatch, useLocation, useHistory, Switch, Route } from 'react-router-dom';
2
+ import { useLocation, useRouteMatch, useHistory, Switch, Route } from 'react-router-dom';
3
3
  import PropTypes from 'prop-types';
4
4
  import cc from 'classcat';
5
5
  import styled from 'styled-components';
@@ -106,11 +106,12 @@ var getLanguage = function getLanguage(language) {
106
106
  var _templateObject$1;
107
107
  var Container = /*#__PURE__*/styled.div(_templateObject$1 || (_templateObject$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n"])));
108
108
 
109
- var FileArea = function FileArea(_ref) {
110
- var id = _ref.id;
109
+ var FileArea = function FileArea() {
111
110
  var _useState = useState({}),
112
111
  files = _useState[0],
113
112
  setFiles = _useState[1];
113
+ var _useLocation = useLocation(),
114
+ pathname = _useLocation.pathname;
114
115
  useEffect(function () {
115
116
  // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))
116
117
  setFiles({
@@ -128,8 +129,12 @@ var FileArea = function FileArea(_ref) {
128
129
  "tags": "ebook, code7"
129
130
  }]
130
131
  });
132
+ console.log(files);
131
133
  }, []);
132
- return React.createElement(Container, null, React.createElement("div", null, "File Area $", id, " / $", files));
134
+ useEffect(function () {
135
+ console.log(files);
136
+ }, [files]);
137
+ return React.createElement(Container, null, React.createElement("div", null, "File Area $", pathname, " /"));
133
138
  };
134
139
 
135
140
  var TestArea = function TestArea() {
@@ -157,21 +162,12 @@ var Leia = function Leia(props) {
157
162
  }, t.test)), React.createElement(Suspense, {
158
163
  fallback: props.loading
159
164
  }, React.createElement(Switch, null, React.createElement(Route, {
160
- path: match.path,
165
+ path: "" + match.path,
161
166
  exact: true,
162
- render: function render(routeProps) {
163
- return React.createElement(FileArea, Object.assign({}, routeProps, {
164
- id: props.id
165
- }));
166
- }
167
+ component: FileArea
167
168
  }), React.createElement(Route, {
168
169
  path: match.path + "/files",
169
- exact: true,
170
- render: function render(routeProps) {
171
- return React.createElement(FileArea, Object.assign({}, routeProps, {
172
- id: props.id
173
- }));
174
- }
170
+ component: FileArea
175
171
  }), React.createElement(Route, {
176
172
  path: match.path + "/test",
177
173
  component: TestArea
@@ -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/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","type Language = {\n files: string;\n test: string;\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages: Record<'en' | 'pt-br' | 'es', Language> = {\n en: {\n files: 'Files',\n test: 'Test',\n },\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n },\n es: {\n files: 'Archivos',\n test: 'Prueba',\n }\n };\n\n return languages[language] || languages['pt-br'];\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n display: flex;\n justify-content: center;\n`;\n","import React, { useEffect, useState} from 'react';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport * as S from './styles';\n\nexport const FileArea = ({ id }: any) => {\n const [files, setFiles] = useState({});\n\n useEffect(() => {\n // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))\n setFiles({\n \"files\": [\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\n return (\n <S.Container>\n <div>File Area ${id} / ${files}</div>\n \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\n path={match.path}\n exact\n render={(routeProps) => <FileArea {...routeProps} id={props.id} />}\n />\n <Route\n path={`${match.path}/files`}\n exact\n render={(routeProps) => <FileArea {...routeProps} id={props.id} />}\n />\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","getLanguage","language","languages","en","files","test","es","Container","div","FileArea","id","_useState","useState","setFiles","useEffect","TestArea","Leia","match","useRouteMatch","_useLocation","useLocation","pathname","history","useHistory","t","activeTab","useMemo","split","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","render","routeProps","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/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","type Language = {\n files: string;\n test: string;\n};\n\nexport const getLanguage = (language: keyof Record<'en' | 'pt-br' | 'es', Language>): Language => {\n const languages: Record<'en' | 'pt-br' | 'es', Language> = {\n en: {\n files: 'Files',\n test: 'Test',\n },\n 'pt-br': {\n files: 'Arquivos',\n test: 'Teste',\n },\n es: {\n files: 'Archivos',\n test: 'Prueba',\n }\n };\n\n return languages[language] || languages['pt-br'];\n};\n","import styled from 'styled-components';\n\nexport const Container = styled.div`\n display: flex;\n justify-content: center;\n`;\n","import React, { useEffect, useState} from 'react';\n\n// import { formatAxios } from '../../utils/formatAxios'\n\nimport { useLocation } from 'react-router-dom';\n\nimport * as S from './styles';\n\nexport const FileArea = () => {\n const [files, setFiles] = useState({});\n const { pathname } = useLocation();\n\n useEffect(() => {\n // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))\n setFiles({\n \"files\": [\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 console.log(files)\n }, [])\n\n useEffect(() => {\n console.log(files)\n }, [files])\n\n return (\n <S.Container>\n <div>File Area ${pathname} /</div>\n \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","getLanguage","language","languages","en","files","test","es","Container","div","FileArea","_useState","useState","setFiles","_useLocation","useLocation","pathname","useEffect","console","log","TestArea","Leia","match","useRouteMatch","history","useHistory","t","activeTab","useMemo","split","push","url","Suspense","fallback","loading","SwitchRoute","Route","path","exact","component","Code7"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import React from 'react';
2
- export declare const FileArea: ({ id }: any) => React.JSX.Element;
2
+ export declare const FileArea: () => React.JSX.Element;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.10",
2
+ "version": "0.1.11",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
package/src/Leia.tsx CHANGED
@@ -32,16 +32,8 @@ export const Leia = (props: Props) => {
32
32
  </Tabs>
33
33
  <Suspense fallback={props.loading}>
34
34
  <SwitchRoute>
35
- <Route
36
- path={match.path}
37
- exact
38
- render={(routeProps) => <FileArea {...routeProps} id={props.id} />}
39
- />
40
- <Route
41
- path={`${match.path}/files`}
42
- exact
43
- render={(routeProps) => <FileArea {...routeProps} id={props.id} />}
44
- />
35
+ <Route path={`${match.path}`} exact component={FileArea} />
36
+ <Route path={`${match.path}/files`} component={FileArea} />
45
37
  <Route path={`${match.path}/test`} component={TestArea} />
46
38
  </SwitchRoute>
47
39
  </Suspense>
@@ -2,10 +2,13 @@ import React, { useEffect, useState} from 'react';
2
2
 
3
3
  // import { formatAxios } from '../../utils/formatAxios'
4
4
 
5
+ import { useLocation } from 'react-router-dom';
6
+
5
7
  import * as S from './styles';
6
8
 
7
- export const FileArea = ({ id }: any) => {
9
+ export const FileArea = () => {
8
10
  const [files, setFiles] = useState({});
11
+ const { pathname } = useLocation();
9
12
 
10
13
  useEffect(() => {
11
14
  // setFiles(await formatAxios('get', `http://127.0.0.1:5000/files/${id}`, false, ''))
@@ -29,11 +32,17 @@ export const FileArea = ({ id }: any) => {
29
32
  }
30
33
  ]
31
34
  })
35
+
36
+ console.log(files)
32
37
  }, [])
33
38
 
39
+ useEffect(() => {
40
+ console.log(files)
41
+ }, [files])
42
+
34
43
  return (
35
44
  <S.Container>
36
- <div>File Area ${id} / ${files}</div>
45
+ <div>File Area ${pathname} /</div>
37
46
 
38
47
  </S.Container>
39
48
  );