2
0

♻️ Add shared eslint config

This commit is contained in:
Baptiste Arnaud
2022-11-21 11:12:43 +01:00
parent e09adf5c64
commit 451ffbcacf
123 changed files with 1151 additions and 1523 deletions

View File

@@ -1,29 +1,4 @@
module.exports = {
ignorePatterns: ['node_modules'],
env: {
browser: true,
es6: true,
},
extends: [
'plugin:@typescript-eslint/recommended',
'plugin:react/recommended',
'next/core-web-vitals',
],
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaVersion: 2018, // Allows for the parsing of modern ECMAScript features
sourceType: 'module', // Allows for the use of imports
ecmaFeatures: {
jsx: true, // Allows for the parsing of JSX
},
},
settings: {
react: {
version: 'detect', // Tells eslint-plugin-react to automatically detect the version of React to use
},
},
plugins: ['react', '@typescript-eslint'],
rules: {
'react/no-unescaped-entities': [0],
},
root: true,
extends: ['custom'],
}

View File

@@ -38,7 +38,7 @@ export const EasyEmbed = () => {
>
Embedding your typebot in your applications is a walk in the park.
Typebot gives you several step-by-step platform-specific
instructions. Your typebot will always feel "native".
instructions. Your typebot will always feel "native".
</Text>
<Flex data-aos="fade">
<Button

View File

@@ -67,8 +67,8 @@ export const RealTimeResults = () => {
data-aos="fade"
>
One of the main advantage of a chat application is that you collect
the user's responses on each question.{' '}
<strong>You won't loose any valuable data.</strong>
the user&apos;s responses on each question.{' '}
<strong>You won&apos;t loose any valuable data.</strong>
</Text>
<Flex>
<Button

View File

@@ -10,7 +10,7 @@ export const Testimonials = () => {
<Flex as="section" justify="center">
<VStack spacing={12} pt={'52'} px="4">
<Heading textAlign={'center'} data-aos="fade">
They've tried, they never looked back. 💙
They&apos;ve tried, they never looked back. 💙
</Heading>
<Stack
direction={{ base: 'column', xl: 'row' }}

View File

@@ -92,7 +92,6 @@ const components = {
},
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const theme: any = extendTheme({
fonts,
components,

View File

@@ -5,6 +5,7 @@
"dev": "ENVSH_ENV=.env.local bash ../../env.sh next dev -p 3002",
"start": "next start",
"build": "next build",
"lint": "next lint",
"analyze": "cross-env ANALYZE=true next build"
},
"dependencies": {
@@ -30,16 +31,14 @@
"@types/aos": "3.0.4",
"@types/node": "18.11.9",
"@types/react": "18.0.25",
"@typescript-eslint/eslint-plugin": "5.43.0",
"@typescript-eslint/parser": "5.43.0",
"autoprefixer": "10.4.13",
"cross-env": "7.0.3",
"eslint": "8.27.0",
"eslint-config-next": "13.0.3",
"eslint-plugin-react": "7.31.10",
"eslint": "8.28.0",
"eslint-config-custom": "workspace:*",
"next-transpile-modules": "10.0.0",
"postcss": "8.4.19",
"prettier": "2.7.1",
"typescript": "4.8.4"
"typescript": "4.8.4",
"tsconfig": "workspace:*"
}
}

View File

@@ -21,12 +21,12 @@ const AboutPage = () => {
textAlign="justify"
>
<Flex w="full">
<Heading as="h1">Typebot's story</Heading>
<Heading as="h1">Typebot&apos;s story</Heading>
</Flex>
<Text>
Typebot's team is composed of only me, Baptiste Arnaud, a Software
Engineer based in France.
Typebot&apos;s team is composed of only me, Baptiste Arnaud, a
Software Engineer based in France.
</Text>
<Flex w="full" justify="center">
<Box as="figure" maxW="200px">
@@ -35,13 +35,13 @@ const AboutPage = () => {
</Flex>
<Text>
I'm passionate about great product UX and, during the first COVID
I&apos;m passionate about great product UX and, during the first COVID
lockdown, I decided to create my own Typeform alternative.
</Text>
<Text>
Typebot was launched in July 2020. It is completely independent,
self-funded, and bootstrapped. At the current stage, I'm not
self-funded, and bootstrapped. At the current stage, I&apos;m not
interested in raising funds or taking investments.
</Text>
<Text>
@@ -55,15 +55,16 @@ const AboutPage = () => {
With Typebot, I want to create the best bot-building experience. My
goal is to empower you as a user and help you build great user
experiences. Also, privacy comes first. While using Typebot, you
aren't tracked by some third-party analytics tool.
aren&apos;t tracked by some third-party analytics tool.
</Text>
<Text>
I'm working hard on making a living from Typebot with a simple
I&apos;m working hard on making a living from Typebot with a simple
business model: <br />
<br /> You can use the tool for free but your forms will contain a
"Made with Typebot" small badge that potentially gets people to know
about the product. If you want to remove it and also have access to
other advanced features, you have to subscribe for $39 per month.
&quot;Made with Typebot&quot; small badge that potentially gets people
to know about the product. If you want to remove it and also have
access to other advanced features, you have to subscribe for $39 per
month.
</Text>
<Text>
If you have any questions, feel free to reach out to me at{' '}

View File

@@ -56,7 +56,7 @@ const Pricing = () => {
<VStack>
<Heading fontSize="6xl">Plans fit for you</Heading>
<Text maxW="900px" fontSize="xl" textAlign="center">
Whether you're a{' '}
Whether you&apos;re a{' '}
<Text as="span" color="orange.200" fontWeight="bold">
solo business owner
</Text>{' '}
@@ -100,7 +100,7 @@ const Pricing = () => {
<Text fontSize="lg">
Need custom limits? Specific features?{' '}
<TextLink href={'https://typebot.io/enterprise-lead-form'}>
Let's chat!
Let&apos;s chat!
</TextLink>
</Text>
</Stack>
@@ -155,9 +155,9 @@ const Faq = () => {
<AccordionPanel pb={4}>
You will receive an email notification once you reached 80% of this
limit. Then, once you reach 100%, your users will still be able to
chat with your bot but their uploads won't be stored anymore. You will
need to upgrade the limit or free up some space to continue collecting
your users' files.
chat with your bot but their uploads won&apos;t be stored anymore. You
will need to upgrade the limit or free up some space to continue
collecting your users&apos; files.
</AccordionPanel>
</AccordionItem>
<AccordionItem>
@@ -189,7 +189,7 @@ const Faq = () => {
<TextLink href="mailto:baptiste@typebot.io">
shoot me an email
</TextLink>{' '}
and we'll figure things out 😀
and we&apos;ll figure things out 😀
</AccordionPanel>
</AccordionItem>
</Accordion>

View File

@@ -1,22 +1,10 @@
{
"extends": "tsconfig/nextjs.json",
"compilerOptions": {
"target": "es5",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noEmit": true,
"incremental": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
"baseUrl": ".",
"composite": true
"paths": {
"@/*": ["src/*"]
}
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
"exclude": ["node_modules"]
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"]
}