├── .babelrc ├── .env-example ├── .eslintrc.json ├── .gitignore ├── .prettierrc ├── README.md ├── components ├── atoms │ ├── CartProduct │ │ └── CartProduct.tsx │ ├── CheckoutProduct │ │ └── CheckoutProduct.tsx │ ├── ProductTile │ │ └── ProductTile.tsx │ └── ThemeSwitch │ │ └── ThemeSwitch.tsx ├── molecules │ ├── CartList │ │ ├── CartList.spec.tsx │ │ └── CartList.tsx │ ├── CheckoutList │ │ ├── CheckoutList.spec.tsx │ │ └── CheckoutList.tsx │ ├── Header │ │ └── Header.tsx │ ├── HomeBanner │ │ └── HomeBanner.tsx │ ├── Preferences │ │ └── Preferences.tsx │ ├── ProductsList │ │ ├── ProductsList.spec.tsx │ │ └── ProductsList.tsx │ └── SizeSelect │ │ ├── SizeSelect.spec.tsx │ │ └── SizeSelect.tsx └── organisms │ ├── AuthChecker │ ├── AuthChecker.spec.tsx │ └── AuthChecker.tsx │ ├── Layout │ └── Layout.tsx │ ├── Loader │ └── Loader.tsx │ ├── LoginForm │ ├── LoginForm.spec.tsx │ └── LoginForm.tsx │ ├── Main │ └── Main.tsx │ ├── ProductView │ └── ProductView.tsx │ └── RegisterForm │ ├── RegisterForm.spec.tsx │ └── RegisterForm.tsx ├── context ├── CartContext.tsx ├── MainContext.tsx └── ProductContext.tsx ├── cypress.json ├── cypress ├── e2e │ └── e2e.spec.tsx ├── fixtures │ └── example.json ├── plugins │ └── index.js └── support │ ├── commands.js │ └── index.js ├── jest.config.js ├── jest.setup.ts ├── lib ├── datocms │ └── index.ts ├── firebase │ └── index.ts └── utils │ ├── consts.ts │ ├── hooks.ts │ └── methods.ts ├── next-env.d.ts ├── next.config.js ├── package.json ├── pages ├── _app.tsx ├── _document.tsx ├── checkout.tsx ├── index.tsx ├── login.tsx ├── products │ └── [id].tsx └── register.tsx ├── public ├── apple-touch-icon-120x120.png ├── apple-touch-icon-152x152.png ├── apple-touch-icon-167x167.png ├── apple-touch-icon-180x180.png ├── apple-touch-icon-60x60.png ├── apple-touch-icon-76x76.png ├── browserconfig.xml ├── coast-228x228.png ├── favicon-128x128.png ├── favicon-16x16.png ├── favicon-256x256.png ├── favicon-32x32.png ├── favicon-48x48.png ├── favicon-64x64.png ├── favicon-96x96.png ├── favicon.ico ├── logo_lg.png ├── manifest.json ├── pwa-192x192.png ├── pwa-512x512.png ├── tile150x150.png ├── tile310x150.png ├── tile310x310.png └── tile70x70.png ├── styles └── globals.scss ├── test └── setupEnv.ts ├── tsconfig.json ├── types └── index.ts └── yarn.lock /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["next/babel"] 3 | } 4 | -------------------------------------------------------------------------------- /.env-example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/.env-example -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/.prettierrc -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/README.md -------------------------------------------------------------------------------- /components/atoms/CartProduct/CartProduct.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/atoms/CartProduct/CartProduct.tsx -------------------------------------------------------------------------------- /components/atoms/CheckoutProduct/CheckoutProduct.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/atoms/CheckoutProduct/CheckoutProduct.tsx -------------------------------------------------------------------------------- /components/atoms/ProductTile/ProductTile.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/atoms/ProductTile/ProductTile.tsx -------------------------------------------------------------------------------- /components/atoms/ThemeSwitch/ThemeSwitch.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/atoms/ThemeSwitch/ThemeSwitch.tsx -------------------------------------------------------------------------------- /components/molecules/CartList/CartList.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/CartList/CartList.spec.tsx -------------------------------------------------------------------------------- /components/molecules/CartList/CartList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/CartList/CartList.tsx -------------------------------------------------------------------------------- /components/molecules/CheckoutList/CheckoutList.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/CheckoutList/CheckoutList.spec.tsx -------------------------------------------------------------------------------- /components/molecules/CheckoutList/CheckoutList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/CheckoutList/CheckoutList.tsx -------------------------------------------------------------------------------- /components/molecules/Header/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/Header/Header.tsx -------------------------------------------------------------------------------- /components/molecules/HomeBanner/HomeBanner.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/HomeBanner/HomeBanner.tsx -------------------------------------------------------------------------------- /components/molecules/Preferences/Preferences.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/Preferences/Preferences.tsx -------------------------------------------------------------------------------- /components/molecules/ProductsList/ProductsList.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/ProductsList/ProductsList.spec.tsx -------------------------------------------------------------------------------- /components/molecules/ProductsList/ProductsList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/ProductsList/ProductsList.tsx -------------------------------------------------------------------------------- /components/molecules/SizeSelect/SizeSelect.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/SizeSelect/SizeSelect.spec.tsx -------------------------------------------------------------------------------- /components/molecules/SizeSelect/SizeSelect.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/molecules/SizeSelect/SizeSelect.tsx -------------------------------------------------------------------------------- /components/organisms/AuthChecker/AuthChecker.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/AuthChecker/AuthChecker.spec.tsx -------------------------------------------------------------------------------- /components/organisms/AuthChecker/AuthChecker.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/AuthChecker/AuthChecker.tsx -------------------------------------------------------------------------------- /components/organisms/Layout/Layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/Layout/Layout.tsx -------------------------------------------------------------------------------- /components/organisms/Loader/Loader.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/Loader/Loader.tsx -------------------------------------------------------------------------------- /components/organisms/LoginForm/LoginForm.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/LoginForm/LoginForm.spec.tsx -------------------------------------------------------------------------------- /components/organisms/LoginForm/LoginForm.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/LoginForm/LoginForm.tsx -------------------------------------------------------------------------------- /components/organisms/Main/Main.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/Main/Main.tsx -------------------------------------------------------------------------------- /components/organisms/ProductView/ProductView.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/ProductView/ProductView.tsx -------------------------------------------------------------------------------- /components/organisms/RegisterForm/RegisterForm.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/RegisterForm/RegisterForm.spec.tsx -------------------------------------------------------------------------------- /components/organisms/RegisterForm/RegisterForm.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/components/organisms/RegisterForm/RegisterForm.tsx -------------------------------------------------------------------------------- /context/CartContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/context/CartContext.tsx -------------------------------------------------------------------------------- /context/MainContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/context/MainContext.tsx -------------------------------------------------------------------------------- /context/ProductContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/context/ProductContext.tsx -------------------------------------------------------------------------------- /cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/cypress.json -------------------------------------------------------------------------------- /cypress/e2e/e2e.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/cypress/e2e/e2e.spec.tsx -------------------------------------------------------------------------------- /cypress/fixtures/example.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/cypress/fixtures/example.json -------------------------------------------------------------------------------- /cypress/plugins/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/cypress/plugins/index.js -------------------------------------------------------------------------------- /cypress/support/commands.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/cypress/support/commands.js -------------------------------------------------------------------------------- /cypress/support/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/cypress/support/index.js -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/jest.config.js -------------------------------------------------------------------------------- /jest.setup.ts: -------------------------------------------------------------------------------- 1 | import "@testing-library/jest-dom"; 2 | -------------------------------------------------------------------------------- /lib/datocms/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/lib/datocms/index.ts -------------------------------------------------------------------------------- /lib/firebase/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/lib/firebase/index.ts -------------------------------------------------------------------------------- /lib/utils/consts.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/lib/utils/consts.ts -------------------------------------------------------------------------------- /lib/utils/hooks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/lib/utils/hooks.ts -------------------------------------------------------------------------------- /lib/utils/methods.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/lib/utils/methods.ts -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/next-env.d.ts -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/package.json -------------------------------------------------------------------------------- /pages/_app.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/_app.tsx -------------------------------------------------------------------------------- /pages/_document.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/_document.tsx -------------------------------------------------------------------------------- /pages/checkout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/checkout.tsx -------------------------------------------------------------------------------- /pages/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/index.tsx -------------------------------------------------------------------------------- /pages/login.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/login.tsx -------------------------------------------------------------------------------- /pages/products/[id].tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/products/[id].tsx -------------------------------------------------------------------------------- /pages/register.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/pages/register.tsx -------------------------------------------------------------------------------- /public/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /public/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /public/apple-touch-icon-167x167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/apple-touch-icon-167x167.png -------------------------------------------------------------------------------- /public/apple-touch-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/apple-touch-icon-180x180.png -------------------------------------------------------------------------------- /public/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /public/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /public/browserconfig.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/browserconfig.xml -------------------------------------------------------------------------------- /public/coast-228x228.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/coast-228x228.png -------------------------------------------------------------------------------- /public/favicon-128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-128x128.png -------------------------------------------------------------------------------- /public/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-16x16.png -------------------------------------------------------------------------------- /public/favicon-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-256x256.png -------------------------------------------------------------------------------- /public/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-32x32.png -------------------------------------------------------------------------------- /public/favicon-48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-48x48.png -------------------------------------------------------------------------------- /public/favicon-64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-64x64.png -------------------------------------------------------------------------------- /public/favicon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon-96x96.png -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/logo_lg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/logo_lg.png -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/manifest.json -------------------------------------------------------------------------------- /public/pwa-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/pwa-192x192.png -------------------------------------------------------------------------------- /public/pwa-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/pwa-512x512.png -------------------------------------------------------------------------------- /public/tile150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/tile150x150.png -------------------------------------------------------------------------------- /public/tile310x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/tile310x150.png -------------------------------------------------------------------------------- /public/tile310x310.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/tile310x310.png -------------------------------------------------------------------------------- /public/tile70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/public/tile70x70.png -------------------------------------------------------------------------------- /styles/globals.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/styles/globals.scss -------------------------------------------------------------------------------- /test/setupEnv.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/test/setupEnv.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/tsconfig.json -------------------------------------------------------------------------------- /types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/types/index.ts -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/simicoder/ecommerce/HEAD/yarn.lock --------------------------------------------------------------------------------