@true-directive/grid
Version:
Angular Data Grid from Yopsilon.
93 lines • 10.9 kB
JavaScript
import * as tslib_1 from "tslib";
/**
* Copyright (c) 2018-2019 Aleksey Melnikov, True Directive Company.
* @link https://truedirective.com/
* @license MIT
*/
import { Component, Output, EventEmitter, ViewChild } from '@angular/core';
import { Keys } from '@true-directive/base';
var EditorSelectComponent = /** @class */ (function () {
function EditorSelectComponent() {
this.ie = false;
this.value = "";
this.height = 0;
this.commit = new EventEmitter();
this.cancel = new EventEmitter();
this.change = new EventEmitter();
}
EditorSelectComponent.prototype.init = function (value, valueChanged, height, ie, wasShown) {
if (ie === void 0) { ie = false; }
if (wasShown === void 0) { wasShown = false; }
this.ie = ie;
this.value = value;
this.height = height;
};
EditorSelectComponent.prototype.setValueAndFocus = function (value, selectAll) {
if (selectAll === void 0) { selectAll = false; }
this.input.nativeElement.focus();
};
EditorSelectComponent.prototype.inputMouseDown = function (e) {
e.stopPropagation();
};
EditorSelectComponent.prototype.processKey = function (keyEvent) {
//
};
EditorSelectComponent.prototype.inputKeyDown = function (e) {
if (e.keyCode === Keys.TAB) {
return;
}
e.stopPropagation();
if (e.keyCode === Keys.ESCAPE) {
this.cancel.emit(false);
return;
}
if (e.keyCode === Keys.ENTER) {
this.commit.emit(this.value);
return;
}
};
EditorSelectComponent.prototype.inputBlur = function (e) {
this.cancel.emit(true);
};
// Если у нас есть информация о высоте строки - берем её и не
// назначаем никакого класса
EditorSelectComponent.prototype.getClass = function () {
if ((this.height !== null && this.height > 0))
return '';
if (this.ie)
return 'true-grid-editor-ie';
else
return 'true-grid-editor-100p';
};
EditorSelectComponent.prototype.getH = function () {
if (this.height !== null && this.height > 0)
return this.height + 'px';
return '100%';
};
tslib_1.__decorate([
ViewChild('input', { static: true }),
tslib_1.__metadata("design:type", Object)
], EditorSelectComponent.prototype, "input", void 0);
tslib_1.__decorate([
Output("commit"),
tslib_1.__metadata("design:type", EventEmitter)
], EditorSelectComponent.prototype, "commit", void 0);
tslib_1.__decorate([
Output("cancel"),
tslib_1.__metadata("design:type", EventEmitter)
], EditorSelectComponent.prototype, "cancel", void 0);
tslib_1.__decorate([
Output("change"),
tslib_1.__metadata("design:type", EventEmitter)
], EditorSelectComponent.prototype, "change", void 0);
EditorSelectComponent = tslib_1.__decorate([
Component({
selector: 'true-editor-select',
template: "<select #input\n class=\"true-grid-input\"\n [(ngModel)]=\"value\"\n [style.height]=\"getH()\"\n [ngClass]=\"getClass()\"\n (mousedown)=\"inputMouseDown($event)\"\n (keydown)=\"inputKeyDown($event)\"\n (blur)=\"inputBlur($event)\">\n <option value=\"CELL\">CELL</option>\n <option value=\"ROW\">ROW</option>\n </select>\n ",
styles: ["\n :host {\n padding: 0;\n }\n "]
})
], EditorSelectComponent);
return EditorSelectComponent;
}());
export { EditorSelectComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdHJ1ZS1kaXJlY3RpdmUvZ3JpZC8iLCJzb3VyY2VzIjpbInNyYy9lZGl0b3JzL2VkaXRvci1zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7OztFQUlFO0FBQ0YsT0FBTyxFQUFFLFNBQVMsRUFBUyxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlsRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFzQjVDO0lBcEJBO1FBc0JFLE9BQUUsR0FBWSxLQUFLLENBQUM7UUFDcEIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBVW5CLFdBQU0sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUcvQyxXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFHL0MsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBMkRqRCxDQUFDO0lBekRDLG9DQUFJLEdBQUosVUFBSyxLQUFVLEVBQUUsWUFBcUIsRUFBRSxNQUFjLEVBQUUsRUFBbUIsRUFBRSxRQUF5QjtRQUE5QyxtQkFBQSxFQUFBLFVBQW1CO1FBQUUseUJBQUEsRUFBQSxnQkFBeUI7UUFDcEcsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsZ0RBQWdCLEdBQWhCLFVBQWlCLEtBQVUsRUFBRSxTQUEwQjtRQUExQiwwQkFBQSxFQUFBLGlCQUEwQjtRQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsOENBQWMsR0FBZCxVQUFlLENBQU07UUFDbkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCwwQ0FBVSxHQUFWLFVBQVcsUUFBYTtRQUN0QixFQUFFO0lBQ0osQ0FBQztJQUVELDRDQUFZLEdBQVosVUFBYSxDQUFNO1FBRWpCLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzFCLE9BQU87U0FDUjtRQUVELENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLEtBQUssRUFBRTtZQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0IsT0FBTztTQUNSO0lBQ0gsQ0FBQztJQUVELHlDQUFTLEdBQVQsVUFBVSxDQUFNO1FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCw0QkFBNEI7SUFDNUIsd0NBQVEsR0FBUjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUMzQyxPQUFPLEVBQUUsQ0FBQztRQUNaLElBQUksSUFBSSxDQUFDLEVBQUU7WUFDVCxPQUFPLHFCQUFxQixDQUFDOztZQUU3QixPQUFPLHVCQUF1QixDQUFDO0lBQ25DLENBQUM7SUFFRCxvQ0FBSSxHQUFKO1FBQ0UsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDekMsT0FBTyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUM1QixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBeEVtQztRQUFuQyxTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyxDQUFDOzt3REFBWTtJQVEvQztRQURDLE1BQU0sQ0FBQyxRQUFRLENBQUM7MENBQ1QsWUFBWTt5REFBMkI7SUFHL0M7UUFEQyxNQUFNLENBQUMsUUFBUSxDQUFDOzBDQUNULFlBQVk7eURBQTJCO0lBRy9DO1FBREMsTUFBTSxDQUFDLFFBQVEsQ0FBQzswQ0FDVCxZQUFZO3lEQUEyQjtJQXBCcEMscUJBQXFCO1FBcEJqQyxTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFFBQVEsRUFBRSx1ZkFXTztxQkFDUiwrQ0FJTjtTQUNGLENBQUM7T0FDUyxxQkFBcUIsQ0ErRWpDO0lBQUQsNEJBQUM7Q0FBQSxBQS9FRCxJQStFQztTQS9FWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMTkgQWxla3NleSBNZWxuaWtvdiwgVHJ1ZSBEaXJlY3RpdmUgQ29tcGFueS5cclxuICogQGxpbmsgaHR0cHM6Ly90cnVlZGlyZWN0aXZlLmNvbS9cclxuICogQGxpY2Vuc2UgTUlUXHJcbiovXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IENvbHVtbiB9IGZyb20gJ0B0cnVlLWRpcmVjdGl2ZS9iYXNlJztcclxuaW1wb3J0IHsgR3JpZFN0YXRlU2VydmljZSB9IGZyb20gJy4uL2dyaWQtc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEtleXMgfSBmcm9tICdAdHJ1ZS1kaXJlY3RpdmUvYmFzZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RydWUtZWRpdG9yLXNlbGVjdCcsXHJcbiAgdGVtcGxhdGU6IGA8c2VsZWN0ICNpbnB1dFxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInRydWUtZ3JpZC1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cImdldEgoKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImdldENsYXNzKClcIlxyXG4gICAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cImlucHV0TW91c2VEb3duKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJpbnB1dEtleURvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIChibHVyKT1cImlucHV0Qmx1cigkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ0VMTFwiPkNFTEw8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJST1dcIj5ST1c8L29wdGlvbj5cclxuICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgYCxcclxuICBzdHlsZXM6IFtgXHJcbiAgICA6aG9zdCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgICBgXVxyXG4gIH0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JTZWxlY3RDb21wb25lbnQgIHtcclxuXHJcbiAgaWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB2YWx1ZTogc3RyaW5nID0gXCJcIjtcclxuICBoZWlnaHQ6IG51bWJlciA9IDA7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0Jywge3N0YXRpYzogdHJ1ZX0pIGlucHV0OiBhbnk7XHJcblxyXG4gIC8vIEltcGxlbWVudGF0aW9uIG9mIElFZGl0b3JcclxuICBzdGF0ZTogR3JpZFN0YXRlU2VydmljZTtcclxuICBjb2x1bW46IENvbHVtbjtcclxuICByb3c6IGFueTtcclxuXHJcbiAgQE91dHB1dChcImNvbW1pdFwiKVxyXG4gIGNvbW1pdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoXCJjYW5jZWxcIilcclxuICBjYW5jZWw6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KFwiY2hhbmdlXCIpXHJcbiAgY2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgaW5pdCh2YWx1ZTogYW55LCB2YWx1ZUNoYW5nZWQ6IGJvb2xlYW4sIGhlaWdodDogbnVtYmVyLCBpZTogYm9vbGVhbiA9IGZhbHNlLCB3YXNTaG93bjogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICB0aGlzLmllID0gaWU7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLmhlaWdodCA9IGhlaWdodDtcclxuICB9XHJcblxyXG4gIHNldFZhbHVlQW5kRm9jdXModmFsdWU6IGFueSwgc2VsZWN0QWxsOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgaW5wdXRNb3VzZURvd24oZTogYW55KSB7XHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHJvY2Vzc0tleShrZXlFdmVudDogYW55KSB7XHJcbiAgICAvL1xyXG4gIH1cclxuXHJcbiAgaW5wdXRLZXlEb3duKGU6IGFueSkge1xyXG5cclxuICAgIGlmIChlLmtleUNvZGUgPT09IEtleXMuVEFCKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGlmIChlLmtleUNvZGUgPT09IEtleXMuRVNDQVBFKSB7XHJcbiAgICAgIHRoaXMuY2FuY2VsLmVtaXQoZmFsc2UpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGUua2V5Q29kZSA9PT0gS2V5cy5FTlRFUikge1xyXG4gICAgICB0aGlzLmNvbW1pdC5lbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbnB1dEJsdXIoZTogYW55KSB7XHJcbiAgICB0aGlzLmNhbmNlbC5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLy8g0JXRgdC70Lgg0YMg0L3QsNGBINC10YHRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INCy0YvRgdC+0YLQtSDRgdGC0YDQvtC60LggLSDQsdC10YDQtdC8INC10ZEg0Lgg0L3QtVxyXG4gIC8vINC90LDQt9C90LDRh9Cw0LXQvCDQvdC40LrQsNC60L7Qs9C+INC60LvQsNGB0YHQsFxyXG4gIGdldENsYXNzKCkge1xyXG4gICAgaWYgKCh0aGlzLmhlaWdodCAhPT0gbnVsbCAmJiB0aGlzLmhlaWdodCA+IDApKVxyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICBpZiAodGhpcy5pZSlcclxuICAgICAgcmV0dXJuICd0cnVlLWdyaWQtZWRpdG9yLWllJztcclxuICAgIGVsc2VcclxuICAgICAgcmV0dXJuICd0cnVlLWdyaWQtZWRpdG9yLTEwMHAnO1xyXG4gIH1cclxuXHJcbiAgZ2V0SCgpIHtcclxuICAgIGlmICh0aGlzLmhlaWdodCAhPT0gbnVsbCAmJiB0aGlzLmhlaWdodCA+IDApXHJcbiAgICAgIHJldHVybiB0aGlzLmhlaWdodCArICdweCc7XHJcbiAgICByZXR1cm4gJzEwMCUnO1xyXG4gIH1cclxufVxyXG4iXX0=