UNPKG

@3mo/data-grid

Version:
49 lines (48 loc) 1.81 kB
import { __decorate } from "tslib"; import { property } from '@a11d/lit'; import { DataGridColumnComponent } from '../DataGridColumnComponent.js'; import { DataGridColumn } from '../../DataGridColumn.js'; export class DataGridColumnNumberBase extends DataGridColumnComponent { constructor() { super(...arguments); this.sumHeading = undefined; this.textAlign = 'end'; } getMin(data) { return this.min ?? (this.minDataSelector ? KeyPath.get(data, this.minDataSelector) : undefined); } getMax(data) { return this.max ?? (this.maxDataSelector ? KeyPath.get(data, this.maxDataSelector) : undefined); } getStep(data) { return this.step ?? (this.stepDataSelector ? KeyPath.get(data, this.stepDataSelector) : undefined); } get column() { return new DataGridColumn({ ...super.column, sumHeading: this.sumHeading, getSumTemplate: this.getSumTemplate.bind(this), }); } getNumber(value) { return Number.isFinite(value) ? value : undefined; } } __decorate([ property() ], DataGridColumnNumberBase.prototype, "sumHeading", void 0); __decorate([ property() ], DataGridColumnNumberBase.prototype, "textAlign", void 0); __decorate([ property({ type: Number }) ], DataGridColumnNumberBase.prototype, "min", void 0); __decorate([ property() ], DataGridColumnNumberBase.prototype, "minDataSelector", void 0); __decorate([ property({ type: Number }) ], DataGridColumnNumberBase.prototype, "max", void 0); __decorate([ property() ], DataGridColumnNumberBase.prototype, "maxDataSelector", void 0); __decorate([ property({ type: Number }) ], DataGridColumnNumberBase.prototype, "step", void 0); __decorate([ property() ], DataGridColumnNumberBase.prototype, "stepDataSelector", void 0);