import React from 'react';
import { createRoot } from 'react-dom/client';
import App from './web/App';
import type { NewsCategory } from './web/Subscribe';

const container = document.getElementById('app');
if (container) {
    const page = container.dataset.page ?? 'home';
    let props: Record<string, unknown> = {};
    try {
        props = JSON.parse(document.getElementById('page-props')?.textContent ?? '{}');
    } catch {
        // ignore
    }
    let site: { newsCategories?: NewsCategory[] } = {};
    try {
        site = JSON.parse(document.getElementById('site-props')?.textContent ?? '{}');
    } catch {
        // ignore
    }
    createRoot(container).render(
        <React.StrictMode>
            <App page={page} props={props} categories={site.newsCategories ?? []} />
        </React.StrictMode>
    );
}
