Files
famdone/proxy/dist/index.js
T

35 lines
1.5 KiB
JavaScript

import { serve } from '@hono/node-server';
import { Hono } from 'hono';
const PB_URL = process.env.PB_URL || 'http://127.0.0.1:8090';
const PB_EMAIL = process.env.PB_SUPERUSER_EMAIL || '';
const PB_PASSWORD = process.env.PB_SUPERUSER_PASSWORD || '';
const DEBUG_RECORD_ID = process.env.DEBUG_RECORD_ID || '';
const app = new Hono();
app.get('/api/health', (c) => c.json({ status: 'ok' }));
app.post('/api/debug/increment-hono', async (c) => {
const auth = await fetch(`${PB_URL}/api/collections/_superusers/auth-with-password`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ identity: PB_EMAIL, password: PB_PASSWORD })
});
const { token } = await auth.json();
const record = await fetch(`${PB_URL}/api/collections/debug/records/${DEBUG_RECORD_ID}`, {
headers: { Authorization: `Bearer ${token}` }
});
const data = await record.json();
const current = data.hono_count || 0;
await fetch(`${PB_URL}/api/collections/debug/records/${DEBUG_RECORD_ID}`, {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${token}`
},
body: JSON.stringify({ hono_count: current + 1 })
});
return c.json({ ok: true });
});
const port = parseInt(process.env.PROXY_PORT || '3456', 10);
serve({ fetch: app.fetch, port }, (info) => {
console.log(`Hono proxy listening on http://localhost:${info.port}`);
});
//# sourceMappingURL=index.js.map