diff --git a/packages/web/.eslintrc.json b/packages/web/.eslintrc.json index a15ce02..874c71a 100644 --- a/packages/web/.eslintrc.json +++ b/packages/web/.eslintrc.json @@ -25,13 +25,42 @@ "ecmaVersion": 11, "sourceType": "module" }, - "plugins": ["react", "react-hooks", "@typescript-eslint"], + "plugins": ["react", "react-hooks", "import", "@typescript-eslint"], "rules": { "react-hooks/rules-of-hooks": "error", "react-hooks/exhaustive-deps": "warn", "react/prop-types": "off", "react/react-in-jsx-scope": "off", "@typescript-eslint/explicit-module-boundary-types": "off", - "@typescript-eslint/no-namespace": "off" + "@typescript-eslint/no-namespace": "off", + "import/order": [ + "error", + { + "newlines-between": "always", + "groups": [ + "external", + "index", + "sibling", + "parent", + "internal", + "builtin", + "object", + "type" + ], + "pathGroups": [ + { + "pattern": "react", + "group": "external", + "position": "before" + }, + { + "pattern": "{next,next/**}", + "group": "external", + "position": "before" + } + ], + "pathGroupsExcludedImportTypes": [] + } + ] } } diff --git a/packages/web/.storybook/preview.js b/packages/web/.storybook/preview.js index 3f141eb..67b0370 100644 --- a/packages/web/.storybook/preview.js +++ b/packages/web/.storybook/preview.js @@ -1,4 +1,4 @@ -import GlobalStyles from '../src/styles/global' +import { GlobalStyles } from '../src/styles/global' export const decorators = [ (Story) => ( diff --git a/packages/web/package.json b/packages/web/package.json index 3b661fa..ed2d4b8 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -47,6 +47,7 @@ "babel-loader": "^8.2.3", "eslint": "7.21.0", "eslint-config-prettier": "8.1.0", + "eslint-plugin-import": "^2.25.4", "eslint-plugin-prettier": "3.3.1", "eslint-plugin-react": "7.22.0", "eslint-plugin-react-hooks": "4.2.0", diff --git "a/packages/web/src/components/AutoComp\304\272ete/index.tsx" b/packages/web/src/components/AutoComplete/index.tsx similarity index 92% rename from "packages/web/src/components/AutoComp\304\272ete/index.tsx" rename to packages/web/src/components/AutoComplete/index.tsx index 431f07a..a80d26c 100644 --- "a/packages/web/src/components/AutoComp\304\272ete/index.tsx" +++ b/packages/web/src/components/AutoComplete/index.tsx @@ -18,7 +18,7 @@ export type AutoCompleteProps = { onBlur?: () => void } -const AutoComplete: React.FC = ({ +export const AutoComplete: React.FC = ({ id, defaultValue = '', onChange = () => '', @@ -48,5 +48,3 @@ const AutoComplete: React.FC = ({ ) } - -export default AutoComplete diff --git "a/packages/web/src/components/AutoComp\304\272ete/stories.tsx" b/packages/web/src/components/AutoComplete/stories.tsx similarity index 71% rename from "packages/web/src/components/AutoComp\304\272ete/stories.tsx" rename to packages/web/src/components/AutoComplete/stories.tsx index 071a50e..37cb487 100644 --- "a/packages/web/src/components/AutoComp\304\272ete/stories.tsx" +++ b/packages/web/src/components/AutoComplete/stories.tsx @@ -1,15 +1,15 @@ import { Story, Meta } from '@storybook/react/types-6-0' -import AutoCompĺete from '.' +import { AutoComplete } from '.' export default { - title: 'AutoCompĺete', - component: AutoCompĺete, + title: 'AutoComplete', + component: AutoComplete, args: {} } as Meta export const Default: Story = () => ( - ) => ( = ({ title, schedule }) => { +export const BusSchedule: React.FC = ({ + title, + schedule +}) => { const scheduleMap = BusScheduleViewModel.parse(schedule) as ScheduleMapNonNull return ( @@ -40,5 +43,3 @@ const BusSchedule: React.FC = ({ title, schedule }) => { ) } - -export default BusSchedule diff --git a/packages/web/src/components/BusSchedule/stories.tsx b/packages/web/src/components/BusSchedule/stories.tsx index ef5f01b..cfc58f7 100644 --- a/packages/web/src/components/BusSchedule/stories.tsx +++ b/packages/web/src/components/BusSchedule/stories.tsx @@ -1,7 +1,7 @@ import { Story, Meta } from '@storybook/react/types-6-0' import { BusTime, Time } from 'models' -import BusSchedule from '.' +import { BusSchedule } from '.' export default { title: 'BusSchedule', diff --git a/packages/web/src/components/Dialog/provider.tsx b/packages/web/src/components/Dialog/provider.tsx index 56e887d..9596a61 100644 --- a/packages/web/src/components/Dialog/provider.tsx +++ b/packages/web/src/components/Dialog/provider.tsx @@ -1,6 +1,7 @@ -import { ContextOutsideProviderError } from 'errors' import React, { useState, createContext, useContext } from 'react' +import { ContextOutsideProviderError } from 'errors' + import { Dialog } from '.' type openDialogParam = React.FC<{ close: () => void }> @@ -51,8 +52,3 @@ export const useDialog = () => { return context } - -export default { - DialogProvider, - useDialog -} diff --git a/packages/web/src/components/Footer/index.tsx b/packages/web/src/components/Footer/index.tsx index fbec0b5..8f5b9c5 100644 --- a/packages/web/src/components/Footer/index.tsx +++ b/packages/web/src/components/Footer/index.tsx @@ -1,5 +1,7 @@ -import { Text } from 'components/Text' import React from 'react' + +import { Text } from 'components' + import * as S from './styles' export const Footer: React.FC = () => { diff --git a/packages/web/src/components/Footer/styles.ts b/packages/web/src/components/Footer/styles.ts index d763dfd..8113bda 100644 --- a/packages/web/src/components/Footer/styles.ts +++ b/packages/web/src/components/Footer/styles.ts @@ -1,4 +1,4 @@ -import { TextStyles } from 'components/Text' +import * as TextStyles from 'components/Text/styles' import styled from 'styled-components' export const Content = styled.div` diff --git a/packages/web/src/components/LabelsLegend/index.tsx b/packages/web/src/components/LabelsLegend/index.tsx index 7a2ae64..c4ff573 100644 --- a/packages/web/src/components/LabelsLegend/index.tsx +++ b/packages/web/src/components/LabelsLegend/index.tsx @@ -1,5 +1,5 @@ import { BusModifiers } from 'models' -import { modifiersMap } from 'components/ModifiersTooltip' +import { modifiersMap } from 'components' import * as S from './styles' @@ -7,7 +7,7 @@ export type LabelsLegendProps = { labels: { [key in BusModifiers]?: string } } -const LabelsLegend: React.FC = ({ labels }) => { +export const LabelsLegend: React.FC = ({ labels }) => { const labelsEntries = Object.entries(labels) if (labelsEntries.length === 0) return <> @@ -23,5 +23,3 @@ const LabelsLegend: React.FC = ({ labels }) => { ) } - -export default LabelsLegend diff --git a/packages/web/src/components/Loader/index.tsx b/packages/web/src/components/Loader/index.tsx index 27f6421..6e18eb1 100644 --- a/packages/web/src/components/Loader/index.tsx +++ b/packages/web/src/components/Loader/index.tsx @@ -1,6 +1,6 @@ import * as S from './styles' -const Loader: React.FC = () => { +export const Loader: React.FC = () => { return (
@@ -9,5 +9,3 @@ const Loader: React.FC = () => {
) } - -export default Loader diff --git a/packages/web/src/components/ModifiersTooltip/styles.ts b/packages/web/src/components/ModifiersTooltip/styles.ts index f2149f7..b8bf808 100644 --- a/packages/web/src/components/ModifiersTooltip/styles.ts +++ b/packages/web/src/components/ModifiersTooltip/styles.ts @@ -1,5 +1,5 @@ import styled from 'styled-components' -import Tooltip from 'components/Tooltip' +import { Tooltip } from 'components/Tooltip' type WidgetProps = { color?: string diff --git a/packages/web/src/components/Text/index.tsx b/packages/web/src/components/Text/index.tsx index 623912d..f2a5b12 100644 --- a/packages/web/src/components/Text/index.tsx +++ b/packages/web/src/components/Text/index.tsx @@ -1,9 +1,8 @@ import React from 'react' + import * as S from './styles' import { ValidHtmlTextTags } from './types' -export * as TextStyles from './styles' - export type TextVariants = | 'default' | 'title' diff --git a/packages/web/src/components/Text/stories.tsx b/packages/web/src/components/Text/stories.tsx index 0e74d4c..bb0734d 100644 --- a/packages/web/src/components/Text/stories.tsx +++ b/packages/web/src/components/Text/stories.tsx @@ -1,4 +1,5 @@ import React from 'react' + import { ComponentStory, ComponentMeta } from '@storybook/react' import { Text } from '.' diff --git a/packages/web/src/components/Text/styles.ts b/packages/web/src/components/Text/styles.ts index 04fd2be..d2c8bed 100644 --- a/packages/web/src/components/Text/styles.ts +++ b/packages/web/src/components/Text/styles.ts @@ -1,4 +1,5 @@ import styled, { css, FlattenSimpleInterpolation } from 'styled-components' + import { TextVariants } from '.' type VariantsDecorators = { [key in TextVariants]: FlattenSimpleInterpolation } diff --git a/packages/web/src/components/Toolbar/index.tsx b/packages/web/src/components/Toolbar/index.tsx index 92eace2..3bd6904 100644 --- a/packages/web/src/components/Toolbar/index.tsx +++ b/packages/web/src/components/Toolbar/index.tsx @@ -1,6 +1,9 @@ -import { useRouter } from 'next/router' import React from 'react' + +import { useRouter } from 'next/router' + import { IoMdArrowBack } from 'react-icons/io' + import * as S from './styles' export interface ToolbarProps { diff --git a/packages/web/src/components/Tooltip/index.tsx b/packages/web/src/components/Tooltip/index.tsx index fc74ac5..3277069 100644 --- a/packages/web/src/components/Tooltip/index.tsx +++ b/packages/web/src/components/Tooltip/index.tsx @@ -1,4 +1,5 @@ import React from 'react' + import * as S from './styles' export interface TooltipProps { @@ -8,7 +9,7 @@ export interface TooltipProps { position?: 'top' | 'bottom' } -const Tooltip = ({ +export const Tooltip = ({ className, children, text, @@ -22,5 +23,3 @@ const Tooltip = ({ ) } - -export default Tooltip diff --git a/packages/web/src/components/Tooltip/stories.tsx b/packages/web/src/components/Tooltip/stories.tsx index 595451b..3d0dc56 100644 --- a/packages/web/src/components/Tooltip/stories.tsx +++ b/packages/web/src/components/Tooltip/stories.tsx @@ -1,5 +1,6 @@ import { Story, Meta } from '@storybook/react/types-6-0' -import Tooltip, { TooltipProps } from '.' + +import { Tooltip, TooltipProps } from '.' export default { title: 'Tooltip', diff --git a/packages/web/src/components/index.ts b/packages/web/src/components/index.ts new file mode 100644 index 0000000..a8cdee8 --- /dev/null +++ b/packages/web/src/components/index.ts @@ -0,0 +1,11 @@ +export * from './AlertBanner' +export * from './AutoComplete' +export * from './BusSchedule' +export * from './Dialog' +export * from './Footer' +export * from './LabelsLegend' +export * from './Loader' +export * from './ModifiersTooltip' +export * from './Text' +export * from './Toolbar' +export * from './Tooltip' diff --git a/packages/web/src/configs/index.ts b/packages/web/src/configs/index.ts new file mode 100644 index 0000000..daf5311 --- /dev/null +++ b/packages/web/src/configs/index.ts @@ -0,0 +1,11 @@ +export const configs = { + busValues: { + external_bus_value: 'R$ 7,65', + + internal_bus_value: 'R$ 5,30', + internal_integration_value: 'R$ 2,35', + + municipal_bus_value: 'R$ 4,25', + municipal_integration_value: 'R$ 3,40' + } +} diff --git a/packages/web/src/pages/404.tsx b/packages/web/src/pages/404.tsx index 3fe87e0..83c20cc 100644 --- a/packages/web/src/pages/404.tsx +++ b/packages/web/src/pages/404.tsx @@ -1,7 +1,9 @@ -import Loader from 'components/Loader' -import { useRouter } from 'next/router' import { useEffect } from 'react' +import { useRouter } from 'next/router' + +import { Loader } from 'components' + export default function Page404() { const router = useRouter() diff --git a/packages/web/src/pages/500.tsx b/packages/web/src/pages/500.tsx index 440eb03..07a70c3 100644 --- a/packages/web/src/pages/500.tsx +++ b/packages/web/src/pages/500.tsx @@ -1,7 +1,9 @@ -import Loader from 'components/Loader' -import { useRouter } from 'next/router' import { useEffect } from 'react' +import { useRouter } from 'next/router' + +import { Loader } from 'components' + export default function Page500() { const router = useRouter() diff --git a/packages/web/src/pages/_app.tsx b/packages/web/src/pages/_app.tsx index 0f325fb..d614e4e 100644 --- a/packages/web/src/pages/_app.tsx +++ b/packages/web/src/pages/_app.tsx @@ -1,9 +1,9 @@ import { AppProps } from 'next/app' import Head from 'next/head' -import GlobalStyles from 'styles/global' +import { GlobalStyles } from 'styles/global' -function App({ Component, pageProps }: AppProps) { +export default function App({ Component, pageProps }: AppProps) { return ( <> @@ -22,5 +22,3 @@ function App({ Component, pageProps }: AppProps) { ) } - -export default App diff --git a/packages/web/src/pages/_document.tsx b/packages/web/src/pages/_document.tsx index 4fcdb8c..1459666 100644 --- a/packages/web/src/pages/_document.tsx +++ b/packages/web/src/pages/_document.tsx @@ -5,6 +5,7 @@ import Document, { NextScript, DocumentContext } from 'next/document' + import { ServerStyleSheet } from 'styled-components' export default class MyDocument extends Document { diff --git a/packages/web/src/pages/index.tsx b/packages/web/src/pages/index.tsx index 05db003..d3465e2 100644 --- a/packages/web/src/pages/index.tsx +++ b/packages/web/src/pages/index.tsx @@ -1,3 +1,3 @@ -import HomePage from 'screens/home' +import { HomePage } from 'screens' export default HomePage diff --git a/packages/web/src/pages/linhas/[id].tsx b/packages/web/src/pages/linhas/[id].tsx index 652a534..b4c4ab7 100644 --- a/packages/web/src/pages/linhas/[id].tsx +++ b/packages/web/src/pages/linhas/[id].tsx @@ -1,7 +1,4 @@ -import { - BusScheduleDetailsPage, - getServerSideProps -} from 'screens/bus-schedule-details' +import { BusScheduleDetailsPage, getServerSideProps } from 'screens' export { getServerSideProps } diff --git a/packages/web/src/pages/politicas-de-privacidade/index.tsx b/packages/web/src/pages/politicas-de-privacidade/index.tsx index d57f7ff..1004249 100644 --- a/packages/web/src/pages/politicas-de-privacidade/index.tsx +++ b/packages/web/src/pages/politicas-de-privacidade/index.tsx @@ -1,3 +1,3 @@ -import PrivacyPoliciesPage from 'screens/privacy-policies' +import { PrivacyPoliciesPage } from 'screens' export default PrivacyPoliciesPage diff --git a/packages/web/src/screens/bus-schedule-details/index.tsx b/packages/web/src/screens/bus-schedule-details/index.tsx index 311e99b..b4cc4de 100644 --- a/packages/web/src/screens/bus-schedule-details/index.tsx +++ b/packages/web/src/screens/bus-schedule-details/index.tsx @@ -4,19 +4,19 @@ import { GetServerSidePropsContext } from 'next' import { useRouter } from 'next/router' import Head from 'next/head' -import AutoCompĺete from 'components/AutoCompĺete' -import BusSchedule from 'components/BusSchedule' -import Loader from 'components/Loader' -import LabelsLegend from 'components/LabelsLegend' - import { getBusLines } from 'use-cases/get-bus-lines' import { getBusSchedule } from 'use-cases/get-bus-schedule' - import { BusScheduleOperations, RawBusSchedule } from 'models' +import { + AutoComplete, + BusSchedule, + Loader, + LabelsLegend, + Toolbar, + Footer +} from 'components' import * as S from './styles' -import { Toolbar } from 'components/Toolbar' -import { Footer } from 'components/Footer' type BusScheduleDetailsPageProps = { busLines: { id: string; name: string }[] @@ -75,7 +75,7 @@ export const BusScheduleDetailsPage: React.FC = ({
- { +export const HomePage: React.FC = () => { const router = useRouter() const [busOptions, setBusOptions] = useState([]) @@ -59,7 +57,7 @@ const HomePage: React.FC = () => {
Horários de ônibus do Terminal de Ibirité - { ) } - -export default HomePage diff --git a/packages/web/src/screens/home/styles.ts b/packages/web/src/screens/home/styles.ts index 900e298..de9299c 100644 --- a/packages/web/src/screens/home/styles.ts +++ b/packages/web/src/screens/home/styles.ts @@ -1,4 +1,4 @@ -import { TextStyles } from 'components/Text' +import * as TextStyles from 'components/Text/styles' import styled, { css } from 'styled-components' export const Wrapper = styled.div` diff --git a/packages/web/src/screens/index.ts b/packages/web/src/screens/index.ts new file mode 100644 index 0000000..b1351fa --- /dev/null +++ b/packages/web/src/screens/index.ts @@ -0,0 +1,3 @@ +export * from './bus-schedule-details' +export * from './home' +export * from './privacy-policies' diff --git a/packages/web/src/screens/privacy-policies/index.tsx b/packages/web/src/screens/privacy-policies/index.tsx index a4a9f23..3712548 100644 --- a/packages/web/src/screens/privacy-policies/index.tsx +++ b/packages/web/src/screens/privacy-policies/index.tsx @@ -1,11 +1,10 @@ -import { Footer } from 'components/Footer' -import Loader from 'components/Loader' -import { Text } from 'components/Text' -import { Toolbar } from 'components/Toolbar' import { useState } from 'react' + +import { Footer, Loader, Text, Toolbar } from 'components' + import * as S from './styles' -const PrivacyPoliciesPage: React.FC = () => { +export const PrivacyPoliciesPage: React.FC = () => { const [loading, setLoading] = useState(false) return ( @@ -214,5 +213,3 @@ const PrivacyPoliciesPage: React.FC = () => { ) } - -export default PrivacyPoliciesPage diff --git a/packages/web/src/screens/privacy-policies/styles.ts b/packages/web/src/screens/privacy-policies/styles.ts index 33c0a56..ee0b426 100644 --- a/packages/web/src/screens/privacy-policies/styles.ts +++ b/packages/web/src/screens/privacy-policies/styles.ts @@ -1,4 +1,4 @@ -import { TextStyles } from 'components/Text' +import * as TextStyles from 'components/Text/styles' import styled from 'styled-components' export const Wrapper = styled.div` diff --git a/packages/web/src/styles/global.ts b/packages/web/src/styles/global.ts index 76924d1..9b1aa9f 100644 --- a/packages/web/src/styles/global.ts +++ b/packages/web/src/styles/global.ts @@ -1,6 +1,6 @@ import { createGlobalStyle } from 'styled-components' -const GlobalStyles = createGlobalStyle` +export const GlobalStyles = createGlobalStyle` :root { --lighter-gray: #f4f4f4; --ligth-gray: #DDDDDD; @@ -34,5 +34,3 @@ const GlobalStyles = createGlobalStyle` font-family: 'Noto Sans JP', sans-serif; } ` - -export default GlobalStyles diff --git a/packages/web/src/use-cases/get-bus-lines/memory.ts b/packages/web/src/use-cases/get-bus-lines/memory.ts index 082569e..4af8b3e 100644 --- a/packages/web/src/use-cases/get-bus-lines/memory.ts +++ b/packages/web/src/use-cases/get-bus-lines/memory.ts @@ -1,4 +1,5 @@ import { busesMemory } from 'services/memory' + import { GetBusLines } from './types' export const getBusLines: GetBusLines = async () => { diff --git a/packages/web/src/use-cases/get-bus-schedule/memory.ts b/packages/web/src/use-cases/get-bus-schedule/memory.ts index a6ef047..7ab8bba 100644 --- a/packages/web/src/use-cases/get-bus-schedule/memory.ts +++ b/packages/web/src/use-cases/get-bus-schedule/memory.ts @@ -1,6 +1,7 @@ import { BusNotFoundError } from 'errors' import { BusModifiers, BusScheduleOperations } from 'models' import { busesMemory } from 'services/memory' + import { GetBusSchedule } from './types' export const getBusSchedule: GetBusSchedule = async ({ busId }) => { diff --git a/packages/web/src/view-model/bus-schedule.test.ts b/packages/web/src/view-model/bus-schedule.test.ts index 15ff848..19ef843 100644 --- a/packages/web/src/view-model/bus-schedule.test.ts +++ b/packages/web/src/view-model/bus-schedule.test.ts @@ -1,4 +1,5 @@ import { BusTime, Time } from 'models' + import { BusScheduleViewModel } from './bus-schedule' describe('BusScheduleViewModel', () => { diff --git a/packages/web/yarn.lock b/packages/web/yarn.lock index 8720e38..97b86c9 100644 --- a/packages/web/yarn.lock +++ b/packages/web/yarn.lock @@ -2798,6 +2798,11 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= + "@types/mdast@^3.0.0": version "3.0.10" resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" @@ -3505,7 +3510,7 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= -array-includes@^3.0.3, array-includes@^3.1.1, array-includes@^3.1.3: +array-includes@^3.0.3, array-includes@^3.1.1, array-includes@^3.1.3, array-includes@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== @@ -3538,7 +3543,7 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= -array.prototype.flat@^1.2.1: +array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" integrity sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg== @@ -4941,7 +4946,7 @@ data-urls@^2.0.0: whatwg-mimetype "^2.3.0" whatwg-url "^8.0.0" -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -4955,7 +4960,7 @@ debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.3: dependencies: ms "2.1.2" -debug@^3.0.0: +debug@^3.0.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== @@ -5470,6 +5475,41 @@ eslint-config-prettier@8.1.0: resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6" integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw== +eslint-import-resolver-node@^0.3.6: + version "0.3.6" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" + integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== + dependencies: + debug "^3.2.7" + resolve "^1.20.0" + +eslint-module-utils@^2.7.2: + version "2.7.3" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz#ad7e3a10552fdd0642e1e55292781bd6e34876ee" + integrity sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ== + dependencies: + debug "^3.2.7" + find-up "^2.1.0" + +eslint-plugin-import@^2.25.4: + version "2.25.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz#322f3f916a4e9e991ac7af32032c25ce313209f1" + integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA== + dependencies: + array-includes "^3.1.4" + array.prototype.flat "^1.2.5" + debug "^2.6.9" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.6" + eslint-module-utils "^2.7.2" + has "^1.0.3" + is-core-module "^2.8.0" + is-glob "^4.0.3" + minimatch "^3.0.4" + object.values "^1.1.5" + resolve "^1.20.0" + tsconfig-paths "^3.12.0" + eslint-plugin-prettier@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.1.tgz#7079cfa2497078905011e6f82e8dd8453d1371b7" @@ -5951,6 +5991,13 @@ find-root@^1.1.0: resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -6911,7 +6958,7 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" -is-core-module@^2.8.1: +is-core-module@^2.8.0, is-core-module@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== @@ -7019,7 +7066,7 @@ is-glob@^3.0.0, is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -8058,6 +8105,14 @@ loader-utils@^2.0.0: emojis-list "^3.0.0" json5 "^2.1.2" +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -8820,7 +8875,7 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -object.values@^1.1.0, object.values@^1.1.1: +object.values@^1.1.0, object.values@^1.1.1, object.values@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg== @@ -8928,6 +8983,13 @@ p-finally@^1.0.0: resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -8942,6 +9004,13 @@ p-limit@^3.0.2, p-limit@^3.1.0: dependencies: yocto-queue "^0.1.0" +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + p-locate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" @@ -8989,6 +9058,11 @@ p-timeout@^3.1.0: dependencies: p-finally "^1.0.0" +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -10806,6 +10880,11 @@ strip-ansi@^7.0.1: dependencies: ansi-regex "^6.0.1" +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + strip-bom@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" @@ -11217,6 +11296,16 @@ ts-pnp@^1.1.6: resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== +tsconfig-paths@^3.12.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz#19769aca6ee8f6a1a341e38c8fa45dd9fb18899b" + integrity sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.1" + minimist "^1.2.0" + strip-bom "^3.0.0" + tslib@^1.8.1: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"