mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-14 08:42:08 +10:00
updates to app
This commit is contained in:
@ -9,70 +9,74 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@beam-australia/react-env": "^3.1.1",
|
"@beam-australia/react-env": "^3.1.1",
|
||||||
|
"@date-io/dayjs": "^2.14.0",
|
||||||
"@emotion/css": "^11.9.0",
|
"@emotion/css": "^11.9.0",
|
||||||
"@emotion/react": "^11.9.0",
|
"@emotion/react": "^11.9.3",
|
||||||
"@emotion/styled": "^11.8.1",
|
"@emotion/styled": "^11.9.3",
|
||||||
"@hookform/resolvers": "2.8.8",
|
"@hookform/resolvers": "2.9.1",
|
||||||
"@monaco-editor/react": "^4.4.4",
|
"@monaco-editor/react": "^4.4.5",
|
||||||
"@mui/icons-material": "^5.6.2",
|
"@mui/icons-material": "^5.8.4",
|
||||||
"@mui/lab": "^5.0.0-alpha.79",
|
"@mui/lab": "^5.0.0-alpha.86",
|
||||||
"@mui/material": "^5.6.3",
|
"@mui/material": "^5.8.4",
|
||||||
"@reduxjs/toolkit": "^1.8.1",
|
"@mui/system": "^5.8.4",
|
||||||
|
"@mui/x-date-pickers": "5.0.0-alpha.6",
|
||||||
|
"@next/env": "^12.1.6",
|
||||||
|
"@reduxjs/toolkit": "^1.8.2",
|
||||||
"axios": "^0.27.2",
|
"axios": "^0.27.2",
|
||||||
"clsx": "^1.1.1",
|
"clsx": "^1.1.1",
|
||||||
"dayjs": "^1.11.1",
|
"dayjs": "^1.11.3",
|
||||||
"downloadjs": "^1.4.7",
|
"downloadjs": "^1.4.7",
|
||||||
"joi": "^17.6.0",
|
"joi": "^17.6.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"md5-hex": "^4.0.0",
|
"md5-hex": "^4.0.0",
|
||||||
"monaco-editor": "^0.33.0",
|
"monaco-editor": "^0.33.0",
|
||||||
"nanoid": "^3.3.3",
|
"nanoid": "^3.3.4",
|
||||||
"next": "12.1.5",
|
"next": "12.1.6",
|
||||||
"next-i18next": "^11.0.0",
|
"next-i18next": "^11.0.0",
|
||||||
"react": "17.0.2",
|
"react": "18.2.0",
|
||||||
"react-beautiful-dnd": "^13.1.0",
|
"react-beautiful-dnd": "^13.1.0",
|
||||||
"react-colorful": "^5.5.1",
|
"react-colorful": "^5.5.1",
|
||||||
"react-dnd": "15.1.2",
|
"react-dnd": "16.0.1",
|
||||||
"react-dnd-html5-backend": "15.1.3",
|
"react-dnd-html5-backend": "16.0.1",
|
||||||
"react-dom": "17.0.2",
|
"react-dom": "18.2.0",
|
||||||
"react-hook-form": "^7.30.0",
|
"react-hook-form": "^7.32.2",
|
||||||
"react-hot-toast": "2.2.0",
|
"react-hot-toast": "2.2.0",
|
||||||
"react-hotkeys-hook": "^3.4.4",
|
"react-hotkeys-hook": "^3.4.6",
|
||||||
"react-icons": "^4.3.1",
|
"react-icons": "^4.4.0",
|
||||||
"react-markdown": "^8.0.3",
|
"react-markdown": "^8.0.3",
|
||||||
"react-query": "^3.38.1",
|
"react-query": "^3.39.1",
|
||||||
"react-redux": "^8.0.1",
|
"react-redux": "^8.0.2",
|
||||||
"react-zoom-pan-pinch": "^2.1.3",
|
"react-zoom-pan-pinch": "^2.1.3",
|
||||||
"redux": "^4.2.0",
|
"redux": "^4.2.0",
|
||||||
"redux-persist": "^6.0.0",
|
"redux-persist": "^6.0.0",
|
||||||
"redux-saga": "^1.1.3",
|
"redux-saga": "^1.1.3",
|
||||||
"remark-gfm": "^3.0.1",
|
"remark-gfm": "^3.0.1",
|
||||||
"sharp": "^0.30.4",
|
"sharp": "^0.30.6",
|
||||||
"uuid": "^8.3.2",
|
"uuid": "^8.3.2",
|
||||||
"webfontloader": "^1.6.28"
|
"webfontloader": "^1.6.28"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "^7.17.10",
|
"@babel/core": "^7.18.5",
|
||||||
"@reactive-resume/schema": "workspace:*",
|
"@reactive-resume/schema": "workspace:*",
|
||||||
"@tailwindcss/typography": "^0.5.2",
|
"@tailwindcss/typography": "^0.5.2",
|
||||||
"@types/downloadjs": "^1.4.3",
|
"@types/downloadjs": "^1.4.3",
|
||||||
"@types/lodash": "^4.14.182",
|
"@types/lodash": "^4.14.182",
|
||||||
"@types/node": "17.0.31",
|
"@types/node": "18.0.0",
|
||||||
"@types/react": "17.0.2",
|
"@types/react": "18.0.14",
|
||||||
"@types/react-beautiful-dnd": "^13.1.2",
|
"@types/react-beautiful-dnd": "^13.1.2",
|
||||||
"@types/react-redux": "^7.1.24",
|
"@types/react-redux": "^7.1.24",
|
||||||
"@types/tailwindcss": "^3.0.10",
|
"@types/tailwindcss": "^3.0.10",
|
||||||
"@types/uuid": "^8.3.4",
|
"@types/uuid": "^8.3.4",
|
||||||
"@types/webfontloader": "^1.6.34",
|
"@types/webfontloader": "^1.6.34",
|
||||||
"autoprefixer": "^10.4.6",
|
"autoprefixer": "^10.4.7",
|
||||||
"csstype": "^3.0.11",
|
"csstype": "^3.1.0",
|
||||||
"eslint": "^8.14.0",
|
"eslint": "^8.18.0",
|
||||||
"eslint-config-next": "12.1.5",
|
"eslint-config-next": "12.1.6",
|
||||||
"next-sitemap": "^2.5.20",
|
"next-sitemap": "^3.1.1",
|
||||||
"postcss": "^8.4.13",
|
"postcss": "^8.4.14",
|
||||||
"prettier": "^2.6.2",
|
"prettier": "^2.7.1",
|
||||||
"sass": "^1.51.0",
|
"sass": "^1.52.3",
|
||||||
"tailwindcss": "^3.0.24",
|
"tailwindcss": "^3.1.3",
|
||||||
"typescript": "^4.6.4"
|
"typescript": "^4.7.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import '@/styles/globals.scss';
|
import '@/styles/globals.scss';
|
||||||
|
|
||||||
import DateAdapter from '@mui/lab/AdapterDayjs';
|
import DayjsAdapter from '@date-io/dayjs';
|
||||||
import LocalizationProvider from '@mui/lab/LocalizationProvider';
|
import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
|
||||||
import type { AppProps } from 'next/app';
|
import type { AppProps } from 'next/app';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Script from 'next/script';
|
import Script from 'next/script';
|
||||||
@ -32,7 +32,7 @@ const App: React.FC<AppProps> = ({ Component, pageProps }) => {
|
|||||||
</Head>
|
</Head>
|
||||||
|
|
||||||
<ReduxProvider store={store}>
|
<ReduxProvider store={store}>
|
||||||
<LocalizationProvider dateAdapter={DateAdapter}>
|
<LocalizationProvider dateAdapter={DayjsAdapter}>
|
||||||
<PersistGate loading={null} persistor={persistor}>
|
<PersistGate loading={null} persistor={persistor}>
|
||||||
<QueryClientProvider client={queryClient}>
|
<QueryClientProvider client={queryClient}>
|
||||||
<WrapperRegistry>
|
<WrapperRegistry>
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import {
|
|||||||
FaHackerrank,
|
FaHackerrank,
|
||||||
FaInstagram,
|
FaInstagram,
|
||||||
FaLinkedinIn,
|
FaLinkedinIn,
|
||||||
|
FaMedium,
|
||||||
FaSkype,
|
FaSkype,
|
||||||
FaSoundcloud,
|
FaSoundcloud,
|
||||||
FaStackOverflow,
|
FaStackOverflow,
|
||||||
@ -30,6 +31,7 @@ const profileIconMap: Record<string, JSX.Element> = {
|
|||||||
hackerrank: <FaHackerrank />,
|
hackerrank: <FaHackerrank />,
|
||||||
instagram: <FaInstagram />,
|
instagram: <FaInstagram />,
|
||||||
linkedin: <FaLinkedinIn />,
|
linkedin: <FaLinkedinIn />,
|
||||||
|
medium: <FaMedium />,
|
||||||
skype: <FaSkype />,
|
skype: <FaSkype />,
|
||||||
soundcloud: <FaSoundcloud />,
|
soundcloud: <FaSoundcloud />,
|
||||||
stackoverflow: <FaStackOverflow />,
|
stackoverflow: <FaStackOverflow />,
|
||||||
|
|||||||
@ -14,14 +14,14 @@
|
|||||||
"write-heading-ids": "docusaurus write-heading-ids"
|
"write-heading-ids": "docusaurus write-heading-ids"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@algolia/client-search": "^4.13.0",
|
"@algolia/client-search": "^4.13.1",
|
||||||
"@docusaurus/core": "2.0.0-beta.18",
|
"@docusaurus/core": "2.0.0-beta.21",
|
||||||
"@docusaurus/preset-classic": "2.0.0-beta.18",
|
"@docusaurus/preset-classic": "2.0.0-beta.21",
|
||||||
"@mdx-js/react": "1.6.22",
|
"@mdx-js/react": "2.1.2",
|
||||||
"clsx": "^1.1.1",
|
"clsx": "^1.1.1",
|
||||||
"prism-react-renderer": "^1.3.1",
|
"prism-react-renderer": "^1.3.3",
|
||||||
"react": "17.0.2",
|
"react": ">=16.13.1 <17.0.0 || >=17.0.0 <18.0.0",
|
||||||
"react-dom": "17.0.2"
|
"react-dom": ">=16.8.4 <17.0.0 || >=17.0.0 <18.0.0"
|
||||||
},
|
},
|
||||||
"browserslist": {
|
"browserslist": {
|
||||||
"production": [
|
"production": [
|
||||||
@ -36,7 +36,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/react": "17.0.2",
|
"@types/react": ">=16.8.0 <19.0.0",
|
||||||
"typescript": "^4.6.4"
|
"typescript": "^4.7.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
5407
pnpm-lock.yaml
generated
5407
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@ -9,7 +9,7 @@
|
|||||||
"lint": "eslint --fix --ext .ts ./src"
|
"lint": "eslint --fix --ext .ts ./src"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"eslint": "^8.14.0",
|
"eslint": "^8.18.0",
|
||||||
"typescript": "^4.6.4"
|
"typescript": "^4.7.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,62 +10,63 @@
|
|||||||
"lint": "eslint --fix --ext .ts ./src"
|
"lint": "eslint --fix --ext .ts ./src"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-s3": "^3.81.0",
|
"@aws-sdk/client-s3": "^3.113.0",
|
||||||
"@nestjs/axios": "^0.0.7",
|
"@nestjs/axios": "^0.0.8",
|
||||||
"@nestjs/common": "^8.4.4",
|
"@nestjs/common": "^8.4.7",
|
||||||
"@nestjs/config": "^2.0.0",
|
"@nestjs/config": "^2.1.0",
|
||||||
"@nestjs/core": "^8.4.4",
|
"@nestjs/core": "^8.4.7",
|
||||||
"@nestjs/jwt": "^8.0.0",
|
"@nestjs/jwt": "^8.0.1",
|
||||||
"@nestjs/mapped-types": "^1.0.1",
|
"@nestjs/mapped-types": "^1.0.1",
|
||||||
"@nestjs/passport": "^8.2.1",
|
"@nestjs/passport": "^8.2.2",
|
||||||
"@nestjs/platform-express": "^8.4.4",
|
"@nestjs/platform-express": "^8.4.7",
|
||||||
"@nestjs/schedule": "^1.1.0",
|
"@nestjs/schedule": "^2.0.1",
|
||||||
"@nestjs/serve-static": "^2.2.2",
|
"@nestjs/serve-static": "^2.2.2",
|
||||||
"@nestjs/terminus": "^8.0.6",
|
"@nestjs/terminus": "^8.0.8",
|
||||||
"@nestjs/typeorm": "^8.0.3",
|
"@nestjs/typeorm": "^8.1.4",
|
||||||
"@sendgrid/mail": "^7.6.2",
|
"@sendgrid/mail": "^7.7.0",
|
||||||
"@types/passport": "^1.0.7",
|
"@types/passport": "^1.0.9",
|
||||||
"bcrypt": "^5.0.1",
|
"bcrypt": "^5.0.1",
|
||||||
"cache-manager": "^3.6.1",
|
"cache-manager": "^4.0.1",
|
||||||
"class-transformer": "^0.5.1",
|
"class-transformer": "^0.5.1",
|
||||||
"class-validator": "^0.13.2",
|
"class-validator": "^0.13.2",
|
||||||
"cookie-parser": "^1.4.6",
|
"cookie-parser": "^1.4.6",
|
||||||
"csvtojson": "^2.0.10",
|
"csvtojson": "^2.0.10",
|
||||||
"dayjs": "^1.11.1",
|
"dayjs": "^1.11.3",
|
||||||
"google-auth-library": "^8.0.2",
|
"google-auth-library": "^8.0.2",
|
||||||
"joi": "^17.6.0",
|
"joi": "^17.6.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"multer": "^1.4.4",
|
"multer": "^1.4.4",
|
||||||
"nanoid": "^3.3.3",
|
"nanoid": "^3.3.4",
|
||||||
"node-stream-zip": "^1.15.0",
|
"node-stream-zip": "^1.15.0",
|
||||||
"passport": "^0.5.2",
|
"passport": "^0.6.0",
|
||||||
"passport-jwt": "^4.0.0",
|
"passport-jwt": "^4.0.0",
|
||||||
"passport-local": "^1.0.0",
|
"passport-local": "^1.0.0",
|
||||||
"pdf-lib": "^1.17.1",
|
"pdf-lib": "^1.17.1",
|
||||||
"pg": "^8.7.3",
|
"pg": "^8.7.3",
|
||||||
"playwright-chromium": "^1.21.1",
|
"playwright-chromium": "^1.22.2",
|
||||||
"reflect-metadata": "^0.1.13",
|
"reflect-metadata": "^0.1.13",
|
||||||
"rimraf": "^3.0.2",
|
"rimraf": "^3.0.2",
|
||||||
"rxjs": "^7.5.5",
|
"rxjs": "^7.5.5",
|
||||||
"typeorm": "0.2.45",
|
"typeorm": "0.3.6",
|
||||||
"uuid": "^8.3.2"
|
"uuid": "^8.3.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@nestjs/cli": "^8.2.5",
|
"@nestjs/cli": "^8.2.6",
|
||||||
"@nestjs/schematics": "^8.0.10",
|
"@nestjs/schematics": "^8.0.11",
|
||||||
"@reactive-resume/schema": "workspace:*",
|
"@reactive-resume/schema": "workspace:*",
|
||||||
"@types/bcrypt": "^5.0.0",
|
"@types/bcrypt": "^5.0.0",
|
||||||
"@types/cookie-parser": "^1.4.3",
|
"@types/cookie-parser": "^1.4.3",
|
||||||
"@types/express": "^4.17.13",
|
"@types/express": "^4.17.13",
|
||||||
|
"@types/lodash": "^4.14.182",
|
||||||
"@types/multer": "^1.4.7",
|
"@types/multer": "^1.4.7",
|
||||||
"@types/node": "^17.0.31",
|
"@types/node": "^18.0.0",
|
||||||
"eslint": "^8.14.0",
|
"eslint": "^8.18.0",
|
||||||
"prettier": "^2.6.2",
|
"prettier": "^2.7.1",
|
||||||
"source-map-support": "^0.5.21",
|
"source-map-support": "^0.5.21",
|
||||||
"ts-loader": "^9.3.0",
|
"ts-loader": "^9.3.0",
|
||||||
"ts-node": "^10.7.0",
|
"ts-node": "^10.8.1",
|
||||||
"tsconfig-paths": "^3.14.1",
|
"tsconfig-paths": "^4.0.0",
|
||||||
"typescript": "^4.6.4",
|
"typescript": "^4.7.4",
|
||||||
"webpack": "^5.72.0"
|
"webpack": "^5.73.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -108,11 +108,11 @@ export class ResumeService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
findAllByUser(userId: number) {
|
findAllByUser(userId: number) {
|
||||||
return this.resumeRepository.find({ user: { id: userId } });
|
return this.resumeRepository.find({ where: { user: { id: userId } } });
|
||||||
}
|
}
|
||||||
|
|
||||||
async findOne(id: number, userId?: number) {
|
async findOne(id: number, userId?: number) {
|
||||||
const resume = await this.resumeRepository.findOne(id);
|
const resume = await this.resumeRepository.findOne({ where: { id } });
|
||||||
|
|
||||||
if (!resume) {
|
if (!resume) {
|
||||||
throw new HttpException('The resume you are looking does not exist, or maybe never did?', HttpStatus.NOT_FOUND);
|
throw new HttpException('The resume you are looking does not exist, or maybe never did?', HttpStatus.NOT_FOUND);
|
||||||
@ -129,7 +129,7 @@ export class ResumeService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async findOneByShortId(shortId: string, userId?: number, secretKey?: string) {
|
async findOneByShortId(shortId: string, userId?: number, secretKey?: string) {
|
||||||
const resume = await this.resumeRepository.findOne({ shortId });
|
const resume = await this.resumeRepository.findOne({ where: { shortId } });
|
||||||
|
|
||||||
if (!resume) {
|
if (!resume) {
|
||||||
throw new HttpException('The resume you are looking does not exist, or maybe never did?', HttpStatus.NOT_FOUND);
|
throw new HttpException('The resume you are looking does not exist, or maybe never did?', HttpStatus.NOT_FOUND);
|
||||||
@ -147,7 +147,7 @@ export class ResumeService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async findOneByIdentifier(username: string, slug: string, userId?: number, secretKey?: string) {
|
async findOneByIdentifier(username: string, slug: string, userId?: number, secretKey?: string) {
|
||||||
const resume = await this.resumeRepository.findOne({ user: { username }, slug });
|
const resume = await this.resumeRepository.findOne({ where: { user: { username }, slug } });
|
||||||
|
|
||||||
if (!resume) {
|
if (!resume) {
|
||||||
throw new HttpException('The resume you are looking does not exist, or maybe never did?', HttpStatus.NOT_FOUND);
|
throw new HttpException('The resume you are looking does not exist, or maybe never did?', HttpStatus.NOT_FOUND);
|
||||||
|
|||||||
@ -23,7 +23,7 @@ export class UsersService {
|
|||||||
) {}
|
) {}
|
||||||
|
|
||||||
async findById(id: number): Promise<User> {
|
async findById(id: number): Promise<User> {
|
||||||
const user = await this.userRepository.findOne({ id });
|
const user = await this.userRepository.findOne({ where: { id } });
|
||||||
|
|
||||||
if (user) {
|
if (user) {
|
||||||
return user;
|
return user;
|
||||||
@ -33,7 +33,7 @@ export class UsersService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async findByEmail(email: string): Promise<User> {
|
async findByEmail(email: string): Promise<User> {
|
||||||
const user = await this.userRepository.findOne({ email });
|
const user = await this.userRepository.findOne({ where: { email } });
|
||||||
|
|
||||||
if (user) {
|
if (user) {
|
||||||
return user;
|
return user;
|
||||||
@ -55,7 +55,7 @@ export class UsersService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async findByResetToken(resetToken: string): Promise<User> {
|
async findByResetToken(resetToken: string): Promise<User> {
|
||||||
const user = await this.userRepository.findOne({ resetToken });
|
const user = await this.userRepository.findOne({ where: { resetToken } });
|
||||||
|
|
||||||
if (user) {
|
if (user) {
|
||||||
return user;
|
return user;
|
||||||
|
|||||||
Reference in New Issue
Block a user