diff --git a/.babelrc b/.babelrc index 53e4d9b24..32e0a1de8 100644 --- a/.babelrc +++ b/.babelrc @@ -10,5 +10,7 @@ } } ] + ], + "plugins": [ ] } diff --git a/.eslintignore b/.eslintignore index 089752554..f9554580c 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1 +1,3 @@ -public/serviceWorker.js \ No newline at end of file +public/serviceWorker.js + +./app/styles/globals.css \ No newline at end of file diff --git a/.eslintrc.json b/.eslintrc.json index d229e86f2..f9989922d 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,4 +1,12 @@ { "extends": "next/core-web-vitals", - "plugins": ["prettier"] + "plugins": [ + "prettier" + ], + "parserOptions": { + "ecmaFeatures": { + "legacyDecorators": true + } + }, + "ignorePatterns": ["globals.css"] } diff --git a/.prettierrc.js b/.prettierrc.js index 95cc75ffa..756a2fab1 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -7,4 +7,6 @@ module.exports = { trailingComma: 'all', bracketSpacing: true, arrowParens: 'always', + plugins: [ + ], }; diff --git a/app/components/Search/index.module.scss b/app/components/Search/index.module.scss new file mode 100644 index 000000000..922746e29 --- /dev/null +++ b/app/components/Search/index.module.scss @@ -0,0 +1,24 @@ +.search { + display: flex; + max-width: 460px; + height: 50px; + padding: 16px; + align-items: center; + gap: 8px; + flex-shrink: 0; + + border-radius: 16px; + border: 1px solid var(--Light-Text-Black, #18182A); + background: var(--light-opacity-white-70, rgba(255, 255, 255, 0.70)); + box-shadow: 0px 8px 40px 0px rgba(60, 68, 255, 0.12); + + .icon { + height: 20px; + width: 20px; + flex: 0 0; + } + .input { + height: 18px; + flex: 1 1; + } +} \ No newline at end of file diff --git a/app/components/Search/index.tsx b/app/components/Search/index.tsx new file mode 100644 index 000000000..681c7ce2a --- /dev/null +++ b/app/components/Search/index.tsx @@ -0,0 +1,30 @@ +import styles from "./index.module.scss"; +import SearchIcon from "@/app/icons/search.svg"; + +export interface SearchProps { + value?: string; + onSearch?: (v: string) => void; + placeholder?: string; +} + +const Search = (props: SearchProps) => { + const { placeholder = "", value, onSearch } = props; + return ( +