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