Added API endpoints for navbar and themes
This commit is contained in:
parent
fd298c90d1
commit
bb76b00506
4 changed files with 102 additions and 0 deletions
15
pages/api/v1/navbar.tsx
Normal file
15
pages/api/v1/navbar.tsx
Normal file
|
@ -0,0 +1,15 @@
|
|||
import fsPromises from 'fs/promises'
|
||||
import path from 'path'
|
||||
|
||||
export default async function Navbar(req: any, res: any) {
|
||||
try {
|
||||
const filePath = path.join(process.cwd(), '/public/data/navbar.json')
|
||||
const jsonData = await fsPromises.readFile(filePath)
|
||||
const data = JSON.parse(jsonData.toString())
|
||||
res.status(200).json(data)
|
||||
}
|
||||
catch (error) {
|
||||
console.log(error)
|
||||
res.status(500).json({error: 'Error reading data'})
|
||||
}
|
||||
}
|
15
pages/api/v1/themes.tsx
Normal file
15
pages/api/v1/themes.tsx
Normal file
|
@ -0,0 +1,15 @@
|
|||
import fsPromises from 'fs/promises'
|
||||
import path from 'path'
|
||||
|
||||
export default async function Navbar(req: any, res: any) {
|
||||
try {
|
||||
const filePath = path.join(process.cwd(), '/public/data/themes.json')
|
||||
const jsonData = await fsPromises.readFile(filePath)
|
||||
const data = JSON.parse(jsonData.toString())
|
||||
res.status(200).json(data)
|
||||
}
|
||||
catch (error) {
|
||||
console.log(error)
|
||||
res.status(500).json({error: 'Error reading data'})
|
||||
}
|
||||
}
|
20
public/data/navbar.json
Normal file
20
public/data/navbar.json
Normal file
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"links": [
|
||||
{
|
||||
"name": "Home",
|
||||
"href": "/"
|
||||
},
|
||||
{
|
||||
"name": "About",
|
||||
"href": "/about"
|
||||
},
|
||||
{
|
||||
"name": "Games",
|
||||
"href": "/games"
|
||||
},
|
||||
{
|
||||
"name": "Services",
|
||||
"href": "/services"
|
||||
}
|
||||
]
|
||||
}
|
52
public/data/themes.json
Normal file
52
public/data/themes.json
Normal file
|
@ -0,0 +1,52 @@
|
|||
{
|
||||
"themes": [
|
||||
{
|
||||
"themeName": "Light Theme",
|
||||
"themeId": 0,
|
||||
"colors": {
|
||||
"background": "#ffffff",
|
||||
"primary": "#00aaff",
|
||||
"secondary": "#ff5300",
|
||||
"online": "#00ff00",
|
||||
"loading": "#ff5300",
|
||||
"offline": "#ff0000"
|
||||
}
|
||||
},
|
||||
{
|
||||
"themeName": "Dark Theme",
|
||||
"themeId": 1,
|
||||
"colors": {
|
||||
"background": "#1f1f1f",
|
||||
"primary": "#00aaff",
|
||||
"secondary": "#ff5300",
|
||||
"online": "#00ff00",
|
||||
"loading": "#ff5300",
|
||||
"offline": "#ff0000"
|
||||
}
|
||||
},
|
||||
{
|
||||
"themeName": "AMOLED Theme",
|
||||
"themeId": 2,
|
||||
"colors": {
|
||||
"background": "#000000",
|
||||
"primary": "#00aaff",
|
||||
"secondary": "#ff5300",
|
||||
"online": "#00ff00",
|
||||
"loading": "#ff5300",
|
||||
"offline": "#ff0000"
|
||||
}
|
||||
},
|
||||
{
|
||||
"themeName": "AMOLED Theme 2",
|
||||
"themeId": 3,
|
||||
"colors": {
|
||||
"background": "#000000",
|
||||
"primary": "#00ffaa",
|
||||
"secondary": "#aa00ff",
|
||||
"online": "#00ff00",
|
||||
"loading": "#ff5300",
|
||||
"offline": "#ff0000"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue