ftable
Version:
Angular 6/7 Tables
51 lines • 4.22 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from '@angular/core';
import { Output } from '@angular/core';
import { EventEmitter } from '@angular/core';
var FSorterComponent = /** @class */ (function () {
function FSorterComponent() {
this.order = new EventEmitter();
this.nextState = 0;
this.currentIcon = 0;
this.states = ['', 'Asc', 'Desc'];
}
/**
* @return {?}
*/
FSorterComponent.prototype.next = /**
* @return {?}
*/
function () {
this.nextState = (this.nextState + 1) % 3;
this.currentIcon = this.nextState;
this.order.emit({ state: this.states[this.nextState] });
};
FSorterComponent.decorators = [
{ type: Component, args: [{
selector: 'ft-fsorter',
template: "<button class=\"ft-b ft-b-fsorter\" (click)=\"next()\" title=\"{{states[nextState]}}\"><span [ngClass]=\"{'ft-sort-neutral': currentIcon == 0, 'ft-sort-asc': currentIcon == 1, 'ft-sort-desc': currentIcon == 2}\"></span></button>",
styles: [""]
}] }
];
/** @nocollapse */
FSorterComponent.ctorParameters = function () { return []; };
FSorterComponent.propDecorators = {
order: [{ type: Output }]
};
return FSorterComponent;
}());
export { FSorterComponent };
if (false) {
/** @type {?} */
FSorterComponent.prototype.order;
/** @type {?} */
FSorterComponent.prototype.states;
/** @type {?} */
FSorterComponent.prototype.nextState;
/** @type {?} */
FSorterComponent.prototype.currentIcon;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnNvcnRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9mdGFibGUvIiwic291cmNlcyI6WyJsaWIvZnNvcnRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdDO0lBY0k7UUFOVSxVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFPekQsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7OztJQUVELCtCQUFJOzs7SUFBSjtRQUNJLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7O2dCQXhCSixTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLGdQQUF1Qzs7aUJBRzFDOzs7Ozt3QkFHSSxNQUFNOztJQWtCWCx1QkFBQztDQUFBLEFBMUJELElBMEJDO1NBbkJZLGdCQUFnQjs7O0lBQ3pCLGlDQUE2RDs7SUFFN0Qsa0NBQXdCOztJQUN4QixxQ0FBeUI7O0lBQ3pCLHVDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmdC1mc29ydGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZnNvcnRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZnNvcnRlci5jb21wb25lbnQuc2NzcyddLFxuXG59KVxuXG5leHBvcnQgY2xhc3MgRlNvcnRlckNvbXBvbmVudCB7XG4gICAgQE91dHB1dCgpIG9yZGVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgcHVibGljIHN0YXRlczogc3RyaW5nW107XG4gICAgcHVibGljIG5leHRTdGF0ZTogbnVtYmVyO1xuICAgIHB1YmxpYyBjdXJyZW50SWNvbjogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMubmV4dFN0YXRlID0gMDtcbiAgICAgICAgdGhpcy5jdXJyZW50SWNvbiA9IDA7XG4gICAgICAgIHRoaXMuc3RhdGVzID0gWycnLCAnQXNjJywgJ0Rlc2MnXTtcbiAgICB9XG5cbiAgICBuZXh0KCkge1xuICAgICAgICB0aGlzLm5leHRTdGF0ZSA9ICh0aGlzLm5leHRTdGF0ZSArIDEpICUgMztcbiAgICAgICAgdGhpcy5jdXJyZW50SWNvbiA9IHRoaXMubmV4dFN0YXRlO1xuICAgICAgICB0aGlzLm9yZGVyLmVtaXQoeyBzdGF0ZTogdGhpcy5zdGF0ZXNbdGhpcy5uZXh0U3RhdGVdIH0pO1xuICAgIH1cblxufVxuIl19