From 896b77068d1cd1a477b1b0fd19807eeec7a838c5 Mon Sep 17 00:00:00 2001 From: Mohammad Riyan Date: Wed, 14 Feb 2024 16:49:48 +0500 Subject: [PATCH 1/2] feat: upgrade to next14 with src directory --- .commitlintrc.json | 21 + .env.example | 1 - .eslintrc | 169 - .eslintrc.json | 79 + .gitignore | 29 +- .husky/commit-msg | 6 +- .husky/pre-commit | 7 +- .prettierignore | 8 +- .prettierrc | 29 - .prettierrc.json | 8 + .vscode/css.code-snippets | 10 - .vscode/extensions.json | 21 - .vscode/settings.json | 71 - .vscode/typescriptreact.code-snippets | 194 - LICENSE | 21 - README.md | 193 +- STACK.md | 9 - __mocks__/next/router.ts | 6 - app/Footer.tsx | 7 - app/about/page.tsx | 8 - app/layout.tsx | 39 - app/page.tsx | 8 - app/pricing/page.tsx | 8 - assets.d.ts | 9 - commitlint.config.js | 1 - cypress.config.js | 8 - cypress/e2e/Navigation.cy.ts | 45 - cypress/e2e/SeoMetadata.cy.ts | 27 - cypress/fixtures/example.json | 5 - cypress/support/e2e.ts | 22 - cypress/tsconfig.json | 12 - jest.config.js | 35 - jest.setup.js | 3 - lint-staged.config.js | 1 - next-sitemap.config.js | 5 - next.config.js | 32 - next.config.mjs | 4 + package.json | 136 +- postcss.config.js | 4 - prettier.config.js | 4 - public/apple-touch-icon.png | Bin 8459 -> 0 bytes public/assets/aws.png | Bin 0 -> 7367 bytes .../assets/images/nextjs-starter-banner.png | Bin 259601 -> 0 bytes public/assets/oracle.png | Bin 0 -> 2571 bytes public/assets/sap.png | Bin 0 -> 13234 bytes public/assets/saphana.png | Bin 0 -> 7238 bytes public/assets/snowflake.png | Bin 0 -> 217363 bytes public/assets/svg/Arrow1.svg | 3 + public/assets/svg/CalenderIcon.tsx | 21 + public/assets/svg/DownArrowIcon.tsx | 14 + public/assets/svg/GoogleIcon.tsx | 38 + public/assets/svg/MaxIcon.tsx | 32 + public/assets/svg/MenuIcon.tsx | 20 + public/assets/svg/MoonIcon.tsx | 22 + public/assets/svg/PencilIcon.tsx | 15 + public/assets/svg/QAI.svg | 3 + public/assets/svg/QuantexAILogo.tsx | 18 + public/assets/svg/SignOutIcon.tsx | 18 + public/assets/svg/SunIcon.tsx | 51 + public/assets/svg/UserAvatar.svg | 18 + public/assets/svg/avatar.svg | 17 + public/assets/svg/maximize1.svg | 9 + public/assets/svg/refresh1.svg | 9 + public/assets/svg/share1.svg | 9 + public/assets/svgs/logo.svg | 1 - public/assets/webp/authImage.webp | Bin 0 -> 25244 bytes public/assets/webp/chatIcon.webp | Bin 0 -> 330 bytes public/assets/webp/conversionIcon.webp | Bin 0 -> 328 bytes public/assets/webp/default-avatar.webp | Bin 0 -> 1764 bytes public/assets/webp/integrationIcon.webp | Bin 0 -> 296 bytes public/assets/webp/promptIcon.webp | Bin 0 -> 262 bytes public/assets/webp/templateIcon.webp | Bin 0 -> 254 bytes public/assets/webp/userAvatar.webp | Bin 0 -> 298 bytes public/favicon-16x16.png | Bin 445 -> 0 bytes public/favicon-32x32.png | Bin 1001 -> 0 bytes public/favicon.ico | Bin 15406 -> 0 bytes public/next.svg | 1 + public/vercel.svg | 1 + src/app/(auth)/signin/page.tsx | 3 + src/app/(auth)/signup/page.tsx | 3 + src/app/favicon.ico | Bin 0 -> 15406 bytes src/app/globals.css | 15 + src/app/layout.tsx | 28 + src/app/page.tsx | 3 + src/components/Button.tsx | 3 - src/components/Container.tsx | 17 - {app => src/components}/Header.tsx | 30 +- src/components/index.ts | 3 + src/config/env.ts | 14 - src/constants/common.ts | 3 - src/constants/content.json | 11 - src/constants/index.ts | 84 + src/middleware.ts | 14 + src/routes.ts | 3 + src/styles/global.css | 12 - src/types/interface.ts | 0 src/utils/common.ts | 5 - src/utils/jsonparse.ts | 7 - tailwind.config.js | 47 - tailwind.config.ts | 70 + tsconfig.json | 58 +- yarn.lock | 9513 ++++------------- 102 files changed, 2627 insertions(+), 8944 deletions(-) create mode 100644 .commitlintrc.json delete mode 100644 .env.example delete mode 100644 .eslintrc create mode 100644 .eslintrc.json delete mode 100644 .prettierrc create mode 100644 .prettierrc.json delete mode 100644 .vscode/css.code-snippets delete mode 100644 .vscode/extensions.json delete mode 100644 .vscode/settings.json delete mode 100644 .vscode/typescriptreact.code-snippets delete mode 100644 LICENSE delete mode 100644 STACK.md delete mode 100644 __mocks__/next/router.ts delete mode 100644 app/Footer.tsx delete mode 100644 app/about/page.tsx delete mode 100644 app/layout.tsx delete mode 100644 app/page.tsx delete mode 100644 app/pricing/page.tsx delete mode 100644 assets.d.ts delete mode 100644 commitlint.config.js delete mode 100644 cypress.config.js delete mode 100644 cypress/e2e/Navigation.cy.ts delete mode 100644 cypress/e2e/SeoMetadata.cy.ts delete mode 100644 cypress/fixtures/example.json delete mode 100644 cypress/support/e2e.ts delete mode 100644 cypress/tsconfig.json delete mode 100644 jest.config.js delete mode 100644 jest.setup.js delete mode 100644 next-sitemap.config.js delete mode 100644 next.config.js create mode 100644 next.config.mjs delete mode 100644 prettier.config.js delete mode 100755 public/apple-touch-icon.png create mode 100644 public/assets/aws.png delete mode 100644 public/assets/images/nextjs-starter-banner.png create mode 100644 public/assets/oracle.png create mode 100644 public/assets/sap.png create mode 100644 public/assets/saphana.png create mode 100644 public/assets/snowflake.png create mode 100644 public/assets/svg/Arrow1.svg create mode 100644 public/assets/svg/CalenderIcon.tsx create mode 100644 public/assets/svg/DownArrowIcon.tsx create mode 100644 public/assets/svg/GoogleIcon.tsx create mode 100644 public/assets/svg/MaxIcon.tsx create mode 100644 public/assets/svg/MenuIcon.tsx create mode 100644 public/assets/svg/MoonIcon.tsx create mode 100644 public/assets/svg/PencilIcon.tsx create mode 100644 public/assets/svg/QAI.svg create mode 100644 public/assets/svg/QuantexAILogo.tsx create mode 100644 public/assets/svg/SignOutIcon.tsx create mode 100644 public/assets/svg/SunIcon.tsx create mode 100644 public/assets/svg/UserAvatar.svg create mode 100644 public/assets/svg/avatar.svg create mode 100644 public/assets/svg/maximize1.svg create mode 100644 public/assets/svg/refresh1.svg create mode 100644 public/assets/svg/share1.svg delete mode 100644 public/assets/svgs/logo.svg create mode 100644 public/assets/webp/authImage.webp create mode 100644 public/assets/webp/chatIcon.webp create mode 100644 public/assets/webp/conversionIcon.webp create mode 100644 public/assets/webp/default-avatar.webp create mode 100644 public/assets/webp/integrationIcon.webp create mode 100644 public/assets/webp/promptIcon.webp create mode 100644 public/assets/webp/templateIcon.webp create mode 100644 public/assets/webp/userAvatar.webp delete mode 100755 public/favicon-16x16.png delete mode 100755 public/favicon-32x32.png delete mode 100755 public/favicon.ico create mode 100644 public/next.svg create mode 100644 public/vercel.svg create mode 100644 src/app/(auth)/signin/page.tsx create mode 100644 src/app/(auth)/signup/page.tsx create mode 100644 src/app/favicon.ico create mode 100644 src/app/globals.css create mode 100644 src/app/layout.tsx create mode 100644 src/app/page.tsx delete mode 100644 src/components/Button.tsx delete mode 100644 src/components/Container.tsx rename {app => src/components}/Header.tsx (55%) create mode 100644 src/components/index.ts delete mode 100644 src/config/env.ts delete mode 100644 src/constants/common.ts delete mode 100644 src/constants/content.json create mode 100644 src/constants/index.ts create mode 100644 src/middleware.ts create mode 100644 src/routes.ts delete mode 100644 src/styles/global.css create mode 100644 src/types/interface.ts delete mode 100644 src/utils/common.ts delete mode 100644 src/utils/jsonparse.ts delete mode 100644 tailwind.config.js create mode 100644 tailwind.config.ts diff --git a/.commitlintrc.json b/.commitlintrc.json new file mode 100644 index 000000000..95be83dcc --- /dev/null +++ b/.commitlintrc.json @@ -0,0 +1,21 @@ +{ + "extends": ["@commitlint/config-conventional"], + "rules": { + "type-enum": [ + 2, + "always", + [ + "ci", + "chore", + "docs", + "ticket", + "feat", + "fix", + "perf", + "refactor", + "revert", + "style" + ] + ] + } +} diff --git a/.env.example b/.env.example deleted file mode 100644 index eebfe7e5a..000000000 --- a/.env.example +++ /dev/null @@ -1 +0,0 @@ -# REACT_APP_SERVER_URL= \ No newline at end of file diff --git a/.eslintrc b/.eslintrc deleted file mode 100644 index 47c3ef457..000000000 --- a/.eslintrc +++ /dev/null @@ -1,169 +0,0 @@ -{ - "env": { - "node": true, - "browser": true, - "es6": true, - "jest": true - }, - "extends": [ - "airbnb-base", - "next/core-web-vitals", // Needed to avoid warning in next.js build: 'The Next.js plugin was not detected in your ESLint configuration' - "eslint:recommended", - "plugin:prettier/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:@typescript-eslint/eslint-recommended", - "plugin:@typescript-eslint/recommended", - "prettier" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "ecmaVersion": "latest", - "sourceType": "module" - }, - "plugins": [ - "react", - "react-hooks", - "prettier", - "@typescript-eslint", - "unused-imports", - "tailwindcss", - "simple-import-sort" - ], - "rules": { - // https://eslint.org/docs/latest/rules/ - "@typescript-eslint/no-empty-function": "off", - "@typescript-eslint/no-explicit-any": "error", - "@typescript-eslint/prefer-optional-chain": "error", - "@typescript-eslint/no-unused-vars": "error", - "react-hooks/exhaustive-deps": "off", - "prefer-template": "error", - "react/prop-types": "off", - "react/react-in-jsx-scope": "off", - "comma-dangle": "off", - "camelcase": "error", - "spaced-comment": "warn", - "quotes": ["error", "single", { "avoidEscape": true }], - "no-duplicate-imports": "error", - "react-hooks/rules-of-hooks": "error", - "no-constant-binary-expression": "error", - "no-await-in-loop": "error", - "prefer-arrow-callback": ["error", { "allowUnboundThis": false }], - "prefer-const": "error", - "prefer-destructuring": "warn", - "prefer-spread": "warn", - "no-self-compare": "error", - "no-template-curly-in-string": "warn", - "dot-notation": "error", - "eqeqeq": "error", - "no-alert": "error", - "no-console": ["warn", { "allow": ["warn", "error"] }], - "no-else-return": "error", - "no-nested-ternary": "error", - "no-var": "error", - "require-await": "error", - "@next/next/no-img-element": "off", // We currently not using next/image because it isn't supported with SSG mode - "no-restricted-syntax": [ - "error", - "ForInStatement", - "LabeledStatement", - "WithStatement" - ], // Overrides Airbnb configuration and enable no-restricted-syntax - "import/extensions": "off", - "import/prefer-default-export": "off", // Named export is easier to refactor automatically - "unused-imports/no-unused-imports": "error", - "unused-imports/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }], - "simple-import-sort/imports": "error", // Import configuration for `eslint-plugin-simple-import-sort` - "simple-import-sort/exports": "error", // Export configuration for `eslint-plugin-simple-import-sort` - "no-restricted-imports": [ - "error", - { - "paths": [ - { - "name": "reactstrap", - "importNames": [ - "Modal", - "ModalHeader", - "ModalBody", - "ModalFooter", - "Button" - ], - "message": "Restricted `react-modal` imports:\n\n[Modal]\n Please use `` from `react-modal` for consistency.\n\n[ModalHeader, ModalBody, ModalFooter]\n Please use the modal subcomponents from `src/components/modal` for consistency.\n\n[Button]\nPlease use `