{{/*
    Projects surface — v0.37.16: Card grid + detail with inline chat.
*/}}

{{define "surface-projects"}}
<div id="projects-mount" style="height:100%;overflow:hidden;"></div>
{{end}}

{{define "css-projects"}}
<link rel="stylesheet" href="{{.BasePath}}/css/sw-projects-surface.css?v={{.Version}}">
{{end}}

{{define "scripts-projects"}}
<script nonce="{{.CSPNonce}}">
    window.__PROJECT_ID__ = '{{.Data.ProjectID}}';
</script>

<script type="module" nonce="{{.CSPNonce}}">
    const { h, render } = await import('{{.BasePath}}/js/sw/vendor/preact.module.js');
    const hooksModule = await import('{{.BasePath}}/js/sw/vendor/hooks.module.js');
    const { default: htm } = await import('{{.BasePath}}/js/sw/vendor/htm.module.js');
    const html = htm.bind(h);
    window.preact = window.preact || { h, render };
    window.hooks = window.hooks || hooksModule;
    window.html = window.html || html;

    const { boot } = await import('{{.BasePath}}/js/sw/sdk/index.js?v={{.Version}}');
    await boot();

    await import('{{.BasePath}}/js/sw/surfaces/projects/index.js?v={{.Version}}');
</script>
{{end}}
