import { NoHydration, getRequestEvent, ssr } from "solid-js/web";
import { TopErrorBoundary } from "../../shared/ErrorBoundary";
import { renderAsset } from "../renderAsset";
const docType = ssr("<!DOCTYPE html>");
/**
 *
 * Read more: https://docs.solidjs.com/solid-start/reference/server/start-server
 */
export function StartServer(props) {
    const context = getRequestEvent();
    // @ts-ignore
    const nonce = context.nonce;
    return (<NoHydration>
      {docType}
      <TopErrorBoundary>
        <props.document assets={<>{context.assets.map((m) => renderAsset(m))}</>} scripts={nonce ? (<>
                <script nonce={nonce} innerHTML={`window.manifest = ${JSON.stringify(context.manifest)}`}/>
                <script type="module" src={import.meta.env.MANIFEST["client"].inputs[import.meta.env.MANIFEST["client"].handler].output.path}/>
              </>) : (<>
                <script innerHTML={`window.manifest = ${JSON.stringify(context.manifest)}`}/>
                <script type="module" src={import.meta.env.MANIFEST["client"].inputs[import.meta.env.MANIFEST["client"].handler].output.path}/>
              </>)}/>
      </TopErrorBoundary>
    </NoHydration>);
}
