diff --git a/.eslintrc.js b/.eslintrc.js index b3e65ae8c..59ed1e1f4 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,6 +1,6 @@ module.exports = { - extends: ['next', 'prettier'], - plugins: ['unicorn'], + extends: ['next', 'prettier', 'plugin:tailwindcss/recommended'], + plugins: ['unicorn', 'prettier', 'tailwindcss', 'unused-imports'], rules: { 'no-unused-vars': [ 'error', @@ -18,6 +18,32 @@ module.exports = { { case: 'kebabCase' } + ], + "prettier/prettier": "warn", + "@typescript-eslint/no-unused-vars": "off", + "unused-imports/no-unused-imports": "error", + "no-template-curly-in-string": "error", + "unused-imports/no-unused-vars": [ + "warn", + { + "vars": "all", + "varsIgnorePattern": "^_", + "args": "after-used", + "argsIgnorePattern": "^_" + } + ] + }, + "settings": { + "tailwindcss": { + "config": "./tailwind.config.js", + "callees": ["cx"] + }, + "tailwindcss/classnames-order": [ + true, + { + "callees": ["cx"], + "config": "./tailwind.config.js" + } ] } }; diff --git a/.vscode/settings.json b/.vscode/settings.json index 3fbb4ab25..35e8e7691 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,6 +3,7 @@ "typescript.enablePromptUseWorkspaceTsdk": true, "editor.codeActionsOnSave": { "source.fixAll": true, + "source.addMissingImports": true, "source.organizeImports": true, "source.sortMembers": true } diff --git a/.yarn/cache/eslint-plugin-tailwindcss-npm-3.13.0-3743eff042-0ed226300b.zip b/.yarn/cache/eslint-plugin-tailwindcss-npm-3.13.0-3743eff042-0ed226300b.zip new file mode 100644 index 000000000..12d0d4f66 Binary files /dev/null and b/.yarn/cache/eslint-plugin-tailwindcss-npm-3.13.0-3743eff042-0ed226300b.zip differ diff --git a/.yarn/cache/eslint-plugin-unused-imports-npm-3.0.0-3e2e896a7c-51666f62cc.zip b/.yarn/cache/eslint-plugin-unused-imports-npm-3.0.0-3e2e896a7c-51666f62cc.zip new file mode 100644 index 000000000..06b5d5c61 Binary files /dev/null and b/.yarn/cache/eslint-plugin-unused-imports-npm-3.0.0-3e2e896a7c-51666f62cc.zip differ diff --git a/.yarn/cache/eslint-rule-composer-npm-0.3.0-0188afafaa-c2f57cded8.zip b/.yarn/cache/eslint-rule-composer-npm-0.3.0-0188afafaa-c2f57cded8.zip new file mode 100644 index 000000000..8c6482449 Binary files /dev/null and b/.yarn/cache/eslint-rule-composer-npm-0.3.0-0188afafaa-c2f57cded8.zip differ diff --git a/.yarn/cache/prettier-plugin-organize-imports-npm-3.2.3-7f40e110b3-e97dd707ce.zip b/.yarn/cache/prettier-plugin-organize-imports-npm-3.2.3-7f40e110b3-e97dd707ce.zip new file mode 100644 index 000000000..e06752ebf Binary files /dev/null and b/.yarn/cache/prettier-plugin-organize-imports-npm-3.2.3-7f40e110b3-e97dd707ce.zip differ diff --git a/app/layout.tsx b/app/layout.tsx index 7256fb488..b5aebc472 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -37,11 +37,13 @@ const inter = Inter({ export default async function RootLayout({ children }: { children: ReactNode }) { return ( - - - -
{children}
-
+ +
+ + +
{children}
+
+
); diff --git a/app/page.tsx b/app/page.tsx index 4e001326f..47d7c1604 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,6 +1,8 @@ import { Carousel } from 'components/carousel'; import { ThreeItemGrid } from 'components/grid/three-items'; import Footer from 'components/layout/footer'; +import Image from 'next/image'; +import Namemark from 'public/assets/images/namemark.png'; import { Suspense } from 'react'; export const runtime = 'edge'; @@ -15,6 +17,9 @@ export const metadata = { export default async function HomePage() { return ( <> +
+ narai by suginomori brewery +
diff --git a/components/cart/open-cart.tsx b/components/cart/open-cart.tsx index fa8226ab5..3164d3a5a 100644 --- a/components/cart/open-cart.tsx +++ b/components/cart/open-cart.tsx @@ -1,4 +1,4 @@ -import { ShoppingCartIcon } from '@heroicons/react/24/outline'; +import { ShoppingBagIcon } from '@heroicons/react/24/outline'; import clsx from 'clsx'; export default function OpenCart({ @@ -9,13 +9,17 @@ export default function OpenCart({ quantity?: number; }) { return ( -
- + {quantity ? ( -
+
{quantity}
) : null} diff --git a/components/icons/logo.tsx b/components/icons/logo.tsx index 46fa02464..234a1cbd7 100644 --- a/components/icons/logo.tsx +++ b/components/icons/logo.tsx @@ -1,16 +1,25 @@ -import clsx from 'clsx'; - export default function LogoIcon(props: React.ComponentProps<'svg'>) { return ( - - + + + ); } diff --git a/components/icons/menu.tsx b/components/icons/menu.tsx new file mode 100644 index 000000000..1aeba9a54 --- /dev/null +++ b/components/icons/menu.tsx @@ -0,0 +1,18 @@ +export default function MenuIcon(props: React.ComponentProps<'svg'>) { + return ( + + + + ); +} diff --git a/components/layout/footer.tsx b/components/layout/footer.tsx index 918345bda..c5a150c0c 100644 --- a/components/layout/footer.tsx +++ b/components/layout/footer.tsx @@ -15,10 +15,10 @@ export default async function Footer() { const copyrightName = COMPANY_NAME || SITE_NAME || ''; return ( -