Files
milinda-pitch/js/components/site-header.js
rubberducky 49d22484c0 feature/site-header (#1)
Co-authored-by: Tim Rijkse <trijkse@gmail.com>
Reviewed-on: #1
2026-01-15 07:49:01 +00:00

40 lines
812 B
JavaScript

/**
* Site Header Component
* Sticky header container that holds top-bar, navigation, and search
*/
class SiteHeader extends HTMLElement {
constructor() {
super();
this.attachShadow({ mode: "open" });
}
connectedCallback() {
this.render();
}
render() {
this.shadowRoot.innerHTML = `
<style>
:host {
display: block;
position: sticky;
top: 0;
z-index: 100;
background-color: var(--color-background, #ffffff);
}
.header {
display: flex;
flex-direction: column;
border-bottom: 1px solid var(--color-border, #e2e8f0);
}
</style>
<header class="header">
<slot></slot>
</header>
`;
}
}
customElements.define("site-header", SiteHeader);