From f93488aa71fdd22e0183bb78b0bd8b0ba7989bba Mon Sep 17 00:00:00 2001 From: Sonika Date: Fri, 15 Dec 2023 12:26:53 +0530 Subject: [PATCH] project shifted from .js to .tsx --- jsconfig.json | 7 ---- package-lock.json | 12 +++--- package.json | 3 ++ public/config/config.json | 42 +++++++++++++++++++ ...ets.js => getAutoLinkedProjectsAssets.tsx} | 2 +- ...tLinkedProject.js => getLinkedProject.tsx} | 2 +- .../{getProject.js => getProject.tsx} | 4 +- ...shedProject.js => getPublishedProject.tsx} | 2 +- ...inkedProject.js => getUnlinkedProject.tsx} | 2 +- src/APIs/{getProject.js => getProject.tsx} | 0 src/{App.js => App.tsx} | 6 +-- .../{Dashboard.js => Dashboard.tsx} | 16 ++++--- src/components/{Header.js => Header.tsx} | 4 +- .../projects/{Projects.js => Projects.tsx} | 23 ++++++++-- .../{ProjectsList.js => ProjectsList.tsx} | 18 ++++---- tsconfig.json | 11 +++++ 16 files changed, 110 insertions(+), 44 deletions(-) delete mode 100644 jsconfig.json create mode 100644 public/config/config.json rename src/APIs/ProjectScreenAPIs/{getAutoLinkedProjectsAssets.js => getAutoLinkedProjectsAssets.tsx} (79%) rename src/APIs/ProjectScreenAPIs/{getLinkedProject.js => getLinkedProject.tsx} (80%) rename src/APIs/ProjectScreenAPIs/{getProject.js => getProject.tsx} (59%) rename src/APIs/ProjectScreenAPIs/{getPublishedProject.js => getPublishedProject.tsx} (79%) rename src/APIs/ProjectScreenAPIs/{getUnlinkedProject.js => getUnlinkedProject.tsx} (79%) rename src/APIs/{getProject.js => getProject.tsx} (100%) rename src/{App.js => App.tsx} (82%) rename src/components/{Dashboard.js => Dashboard.tsx} (78%) rename src/components/{Header.js => Header.tsx} (98%) rename src/components/projects/{Projects.js => Projects.tsx} (90%) rename src/components/projects/{ProjectsList.js => ProjectsList.tsx} (92%) create mode 100644 tsconfig.json diff --git a/jsconfig.json b/jsconfig.json deleted file mode 100644 index 5e662ae..0000000 --- a/jsconfig.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": "./src", - "checkJs": true, - "jsx": "react" - } - } \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 35e280c..b6f942d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,6 +24,9 @@ "react-router-dom": "^6.19.0", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" + }, + "devDependencies": { + "typescript": "^5.3.3" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -17428,16 +17431,15 @@ } }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "peer": true, + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=4.2.0" + "node": ">=14.17" } }, "node_modules/unbox-primitive": { diff --git a/package.json b/package.json index 036c957..207754a 100644 --- a/package.json +++ b/package.json @@ -43,5 +43,8 @@ "last 1 firefox version", "last 1 safari version" ] + }, + "devDependencies": { + "typescript": "^5.3.3" } } diff --git a/public/config/config.json b/public/config/config.json new file mode 100644 index 0000000..f9b84f1 --- /dev/null +++ b/public/config/config.json @@ -0,0 +1,42 @@ +{ + "userName" : "Vipeesh", + "apiUrl" : "http://localhost:8080/SonyMusicRights", + "facebook" : "https://www.facebook.com", + "twiter" : "https://twitter.com", + "instagram" : "https://www.instagram.com", + "youtube" : "https://www.youtube.com", + "downloadRole": "admin", + "projectLevelDataDownloadFileName": "Project data", + "assetLevelDataDownloadFileName": "Project and Asset data", + "menuList" : [{ + "name": "Home", + "link": "/SonyMusicRights", + "type": "intern" + }, + { + "name": "Projects", + "link": "/SonyMusicRights/projects", + "type": "intern" + }, + { + "name": "Search", + "link": "/SonyMusicRights/search", + "type": "intern" + }, + { + "name": "Admin", + "link": "/SonyMusicRights/admin", + "type": "intern" + }, + { + "name": "Manage Users", + "link": "/SonyMusicRights/user-management", + "type": "intern" + }, + { + "name": "Intranet Users", + "link": "/SonyMusicRights/intranet-user-management", + "type": "intern" + } + ] +} \ No newline at end of file diff --git a/src/APIs/ProjectScreenAPIs/getAutoLinkedProjectsAssets.js b/src/APIs/ProjectScreenAPIs/getAutoLinkedProjectsAssets.tsx similarity index 79% rename from src/APIs/ProjectScreenAPIs/getAutoLinkedProjectsAssets.js rename to src/APIs/ProjectScreenAPIs/getAutoLinkedProjectsAssets.tsx index 69ea2d2..6e5d2a8 100644 --- a/src/APIs/ProjectScreenAPIs/getAutoLinkedProjectsAssets.js +++ b/src/APIs/ProjectScreenAPIs/getAutoLinkedProjectsAssets.tsx @@ -1,7 +1,7 @@ import { useQuery } from '@tanstack/react-query'; import axios from 'axios'; -export const fetchPublishedProjects = (searchBy, config) => { +export const fetchAutolinkedAssets = (searchBy:any, config:any) => { const fetchData = async () => { const response = await axios.get(`${config.apiUrl}/autolinked-assets`, { params: { diff --git a/src/APIs/ProjectScreenAPIs/getLinkedProject.js b/src/APIs/ProjectScreenAPIs/getLinkedProject.tsx similarity index 80% rename from src/APIs/ProjectScreenAPIs/getLinkedProject.js rename to src/APIs/ProjectScreenAPIs/getLinkedProject.tsx index c230057..929f701 100644 --- a/src/APIs/ProjectScreenAPIs/getLinkedProject.js +++ b/src/APIs/ProjectScreenAPIs/getLinkedProject.tsx @@ -1,7 +1,7 @@ import { useQuery } from '@tanstack/react-query'; import axios from 'axios'; -export const fetchLinkedProjects = (searchBy, config) => { +export const fetchLinkedProjects = (searchBy:any, config:any) => { const fetchData = async () => { const response = await axios.get(`${config.apiUrl}/linked-project`, { params: { diff --git a/src/APIs/ProjectScreenAPIs/getProject.js b/src/APIs/ProjectScreenAPIs/getProject.tsx similarity index 59% rename from src/APIs/ProjectScreenAPIs/getProject.js rename to src/APIs/ProjectScreenAPIs/getProject.tsx index 914b8c5..16769cb 100644 --- a/src/APIs/ProjectScreenAPIs/getProject.js +++ b/src/APIs/ProjectScreenAPIs/getProject.tsx @@ -1,9 +1,9 @@ import { useQuery } from '@tanstack/react-query'; import axios from 'axios'; -export const fetchProjects = (searchBy, config) => { +export const fetchProjects = (searchBy:any, config:any) => { const fetchData = async () => { - const response = await axios.get(`${config.apiUrl}/project-list`, { + const response = await axios.post(`${config.apiUrl}/project-list`, { params: { searchBy } diff --git a/src/APIs/ProjectScreenAPIs/getPublishedProject.js b/src/APIs/ProjectScreenAPIs/getPublishedProject.tsx similarity index 79% rename from src/APIs/ProjectScreenAPIs/getPublishedProject.js rename to src/APIs/ProjectScreenAPIs/getPublishedProject.tsx index 76bab4d..f528a36 100644 --- a/src/APIs/ProjectScreenAPIs/getPublishedProject.js +++ b/src/APIs/ProjectScreenAPIs/getPublishedProject.tsx @@ -1,7 +1,7 @@ import { useQuery } from '@tanstack/react-query'; import axios from 'axios'; -export const fetchPublishedProjects = (searchBy, config) => { +export const fetchPublishedProjects = (searchBy:any, config:any) => { const fetchData = async () => { const response = await axios.get(`${config.apiUrl}/published-project`, { params: { diff --git a/src/APIs/ProjectScreenAPIs/getUnlinkedProject.js b/src/APIs/ProjectScreenAPIs/getUnlinkedProject.tsx similarity index 79% rename from src/APIs/ProjectScreenAPIs/getUnlinkedProject.js rename to src/APIs/ProjectScreenAPIs/getUnlinkedProject.tsx index 21c5288..8389f8f 100644 --- a/src/APIs/ProjectScreenAPIs/getUnlinkedProject.js +++ b/src/APIs/ProjectScreenAPIs/getUnlinkedProject.tsx @@ -1,7 +1,7 @@ import { useQuery } from '@tanstack/react-query'; import axios from 'axios'; -export const fetchUnlinkedProjects = (searchBy, config) => { +export const fetchUnlinkedProjects = (searchBy:any, config:any) => { const fetchData = async () => { const response = await axios.get(`${config.apiUrl}/unlinked-project`, { params: { diff --git a/src/APIs/getProject.js b/src/APIs/getProject.tsx similarity index 100% rename from src/APIs/getProject.js rename to src/APIs/getProject.tsx diff --git a/src/App.js b/src/App.tsx similarity index 82% rename from src/App.js rename to src/App.tsx index 07006ae..00e3a66 100644 --- a/src/App.js +++ b/src/App.tsx @@ -1,13 +1,11 @@ -import logo from './logo.svg'; import './App.css'; import Header from './components/Header'; import React from 'react'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { Container } from '@mui/material'; import { BrowserRouter as Router, Routes, Route, BrowserRouter} from 'react-router-dom' -import Dashboard from 'components/Dashboard'; -import { Counter } from 'components/counterC'; -import Projects from 'components/projects/Projects'; +import Dashboard from './components/Dashboard'; +import Projects from './components/projects/Projects'; function App() { diff --git a/src/components/Dashboard.js b/src/components/Dashboard.tsx similarity index 78% rename from src/components/Dashboard.js rename to src/components/Dashboard.tsx index 57d8ffa..8aed77e 100644 --- a/src/components/Dashboard.js +++ b/src/components/Dashboard.tsx @@ -1,15 +1,14 @@ import { Box, Card, CardContent, Grid, Paper, Typography, styled } from "@mui/material"; import React, { useEffect } from "react"; -import { getLinkedProjects, useGetLinkedProjects } from "APIs/getLinkedProjects"; -import { useGetUnlinkedProjects } from "APIs/getUnlinkedProjects"; -import { useGetProjectData } from "APIs/getProject"; +// import { getLinkedProjects, useGetLinkedProjects } from "APIs/getLinkedProjects"; +// import { useGetUnlinkedProjects } from "APIs/getUnlinkedProjects"; +// import { useGetProjectData } from "APIs/getProject"; export default function Dashboard(){ const [linkedProjectData, setLinkedProjectData] = React.useState() - const { data: getLinkedProjectList } = useGetLinkedProjects(); - const { data: getUnlinkedProjectList } = useGetUnlinkedProjects(); - const { data: getProjectDataList } = useGetProjectData(); +// const { data: getLinkedProjectList } = useGetLinkedProjects(); +// const { data: getUnlinkedProjectList } = useGetUnlinkedProjects(); const Item = styled(Paper)(({ theme }) => ({ backgroundColor: '#1e1e1e', @@ -18,7 +17,6 @@ export default function Dashboard(){ textAlign: 'left', })); - console.log('sdfsds',getProjectDataList) return ( @@ -29,7 +27,7 @@ export default function Dashboard(){ - {getUnlinkedProjectList && getUnlinkedProjectList.length} + {/* {getUnlinkedProjectList && getUnlinkedProjectList.length} */} @@ -45,7 +43,7 @@ export default function Dashboard(){ - {getLinkedProjectList && getLinkedProjectList.length} + {/* {getLinkedProjectList && getLinkedProjectList.length} */} diff --git a/src/components/Header.js b/src/components/Header.tsx similarity index 98% rename from src/components/Header.js rename to src/components/Header.tsx index 7e38a83..99948b5 100644 --- a/src/components/Header.js +++ b/src/components/Header.tsx @@ -22,10 +22,10 @@ function Header() { const [anchorElNav, setAnchorElNav] = React.useState(null); const [anchorElUser, setAnchorElUser] = React.useState(null); - const handleOpenNavMenu = (event) => { + const handleOpenNavMenu = (event:any) => { setAnchorElNav(event.currentTarget); }; - const handleOpenUserMenu = (event) => { + const handleOpenUserMenu = (event:any) => { setAnchorElUser(event.currentTarget); }; diff --git a/src/components/projects/Projects.js b/src/components/projects/Projects.tsx similarity index 90% rename from src/components/projects/Projects.js rename to src/components/projects/Projects.tsx index c656416..1be269b 100644 --- a/src/components/projects/Projects.js +++ b/src/components/projects/Projects.tsx @@ -1,17 +1,32 @@ import React from "react"; import ProjectList from "./ProjectsList"; -import { useGetProjectData } from "APIs/getProject"; -import ProjectFilter from "./ProjectFilter"; +import { useGetProjectData } from "../../APIs/getProject"; +// import ProjectFilter from "./ProjectFilter"; import { useState } from "react"; import { useEffect } from "react"; import { Box, Card, CardContent, FormControl, Grid, InputLabel, MenuItem, Paper, Select, TextField } from "@mui/material"; +import { useMutation } from "@tanstack/react-query"; +// import { fetchProjects } from "APIs/ProjectScreenAPIs/getProject"; +// import { useGetProjectData } from 'APIs/getProject'; export default function Projects(){ const { data: getProjectDataList } = useGetProjectData(); - const [selectedContractFilter, setSelectedContractFilter] = useState('All'); + const [selectedContractFilter, setSelectedContractFilter] = useState('All'); const [searchBy, setSearchBy] = useState(''); - + + // const { mutate } = useMutation(fetchProjects, { + // onSuccess: (data) => { + // }, + // onError: () => { + // alert('There was an error'); + // }, + // onSettled: () => {}, + // }); + + // useEffect(()=>{ + + // }) // useEffect(() => { // setSelectedContractFilter(props.location.state ? props.location.state.type : 'All'); // setSearchBy(''); diff --git a/src/components/projects/ProjectsList.js b/src/components/projects/ProjectsList.tsx similarity index 92% rename from src/components/projects/ProjectsList.js rename to src/components/projects/ProjectsList.tsx index f90aa32..f5c22f8 100644 --- a/src/components/projects/ProjectsList.js +++ b/src/components/projects/ProjectsList.tsx @@ -37,7 +37,7 @@ const columns = [ { id: 'term', label: 'Term', - Cell: ({ row }) => ( + Cell: (row:any) => ( (row.perpetuity !== '' && row.perpetuity !== null) ? (row.perpetuity !== "Yes" ? {row.effective_from1} - {row.effective_to1} : `${row.effective_from1} - Perpetual`) : "" @@ -46,7 +46,7 @@ const columns = [ { id: 'link', label: 'Link', - Cell: ({ row }) => ( + Cell: (row:any) => ( (row.cid === null || row.cid === 0 || row.effective_from1 === null) ? : (row.published === 1 @@ -59,16 +59,20 @@ const columns = [ }, ]; +type Props={ + projectData:any +} -export default function ProjectList({projectData}) { + +export default function ProjectList({projectData}:Props) { const [page, setPage] = React.useState(0); const [rowsPerPage, setRowsPerPage] = React.useState(10); - const handleChangePage = (event, newPage) => { + const handleChangePage = (event:any, newPage:any) => { setPage(newPage); }; - const handleChangeRowsPerPage = (event) => { + const handleChangeRowsPerPage = (event:any) => { setRowsPerPage(+event.target.value); setPage(0); }; @@ -95,10 +99,10 @@ export default function ProjectList({projectData}) { {projectData && projectData .slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage) - .map((row) => { + .map((row:any) => { return ( - {columns.map((column) => { + {columns.map((column:any) => { const value = row[column.id]; return (