import express from 'express';
import sqlite3 from 'sqlite3';
import path from 'path';
import { fileURLToPath } from 'url';
import { asyncDatabaseRead, asyncDatabaseWrite } from './utils/asyncDatabase.js';
const app = express();
const port = 3001;
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
app.use(express.urlencoded({ extended: true }));
app.use(express.static(path.join(__dirname, 'pages')));
app.use(express.static(path.join(__dirname, "../assets")));
app.use(express.static(path.join(__dirname, "../public")));
app.get('/api/news-list', async (request, response) => {
const database = new sqlite3.Database(path.join(__dirname, "../assets/databases/news.db"));
const sqlQuery = `SELECT * FROM news;`;
try {
const result = await asyncDatabaseRead(database, sqlQuery, (rows) => {
let ret = "";
for (const entry of rows) {
ret = ret + "
\n";
for (const data in entry) {
if (data == "article" || data == "coverImagePath" || data == "linkPath") continue;
if (data == "entryType") {
ret = ret + `
${entry[data] == 0 ? "Article" : "Tweet"}
\n`;
continue;
}
if (data == "date") {
ret = ret + `