63 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import {
 | 
						|
  customElement,
 | 
						|
  DeesElement,
 | 
						|
  property,
 | 
						|
  html,
 | 
						|
  cssManager,
 | 
						|
  unsafeCSS,
 | 
						|
  css,
 | 
						|
  type TemplateResult,
 | 
						|
} from '@design.estate/dees-element';
 | 
						|
 | 
						|
@customElement('default-header')
 | 
						|
export class DefaultHeader extends DeesElement {
 | 
						|
  @property()
 | 
						|
  public someProperty = 'someProperty';
 | 
						|
 | 
						|
  constructor() {
 | 
						|
    super();
 | 
						|
  }
 | 
						|
 | 
						|
  public static styles = [
 | 
						|
    cssManager.defaultStyles,
 | 
						|
    css`
 | 
						|
      :host {
 | 
						|
        display: block;
 | 
						|
        height: 100px;
 | 
						|
      }
 | 
						|
      :host([hidden]) {
 | 
						|
        display: none;
 | 
						|
      }
 | 
						|
 | 
						|
      .headerMain {
 | 
						|
        background: var(--background-accent);
 | 
						|
        color: #fff;
 | 
						|
        position: relative;
 | 
						|
        z-index: 1;
 | 
						|
        height: 100px;
 | 
						|
      }
 | 
						|
      .headerMain:after {
 | 
						|
        background: inherit;
 | 
						|
        bottom: 0;
 | 
						|
        content: '';
 | 
						|
        display: block;
 | 
						|
        height: 60%;
 | 
						|
        left: 0;
 | 
						|
        position: absolute;
 | 
						|
        right: 0;
 | 
						|
        transform: skewY(-2deg);
 | 
						|
        transform-origin: 100%;
 | 
						|
        z-index: -1;
 | 
						|
      }
 | 
						|
    `,
 | 
						|
  ];
 | 
						|
 | 
						|
  public render(): TemplateResult {
 | 
						|
    return html`
 | 
						|
      <style></style>
 | 
						|
      <div class="headerMain">${this.someProperty}</div>
 | 
						|
      <slot></slot>
 | 
						|
    `;
 | 
						|
  }
 | 
						|
}
 |