UNPKG

@vidal-community/vidal-web-components

Version:

Vidal Web Components

87 lines (84 loc) 2.9 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; import { html, LitElement, css } from 'lit'; import { customElement, property } from 'lit/decorators.js'; let TimelineScaleSelector = class TimelineScaleSelector extends LitElement { constructor() { super(...arguments); this.selectedZoom = 'year'; this.valueChangeEvent = (value) => console.log(value); } onChange(value) { this.selectedZoom = value.zoom; this.valueChangeEvent(value); } render() { return html ` <div class="selector-container"> <span class="${this.selectedZoom === 'year' ? 'selected' : ''}" @click="${() => this.onChange({ zoom: 'year', scale: { label: 'month', step: 1 } })}" >Année</span > <span class="${this.selectedZoom === 'semester' ? 'selected' : ''}" @click="${() => this.onChange({ zoom: 'semester', scale: { label: 'month', step: 1 } })}" >Semestre</span > <span class="${this.selectedZoom === 'month' ? 'selected' : ''}" @click="${() => this.onChange({ zoom: 'month', scale: { label: 'day', step: 7 } })}" >Mois</span > </div>`; } }; TimelineScaleSelector.styles = css ` :host { height: 30px; width: 35%; display: flex; justify-content: center; align-items: center; border-radius: 12px; box-shadow: rgb(0 0 0) 0px 0px 7px 0px inset; font-family: Roboto, sans-serif; background: white; } .selector-container { height: 100%; width: 100%; display: flex; flex-direction: row; justify-content: space-between; align-items: center; } .selector-container span { width: 30%; height: 100%; font-weight: bold; display: flex; justify-content: center; align-items: center; cursor: pointer; border-radius: 12px; } .selected { background: #434343; color: white; } `; __decorate([ property() ], TimelineScaleSelector.prototype, "selectedZoom", void 0); __decorate([ property() ], TimelineScaleSelector.prototype, "valueChangeEvent", void 0); TimelineScaleSelector = __decorate([ customElement('timeline-scale-selector') ], TimelineScaleSelector); export { TimelineScaleSelector }; //# sourceMappingURL=timeline-scale-selector.js.map