UNPKG

igniteui-angular

Version:

Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps

172 lines • 13.8 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Directive, ElementRef, forwardRef, HostListener, Inject } from '@angular/core'; import { IgxGridBaseComponent } from './grid-base.component'; import { first, tap } from 'rxjs/operators'; import { IgxGridNavigationService } from './grid-navigation.service'; /** * @hidden */ var IgxRowEditTemplateDirective = /** @class */ (function () { function IgxRowEditTemplateDirective() { } IgxRowEditTemplateDirective.decorators = [ { type: Directive, args: [{ selector: '[igxRowEdit]' },] } ]; return IgxRowEditTemplateDirective; }()); export { IgxRowEditTemplateDirective }; /** * @hidden */ var IgxRowEditTextDirective = /** @class */ (function () { function IgxRowEditTextDirective() { } IgxRowEditTextDirective.decorators = [ { type: Directive, args: [{ selector: '[igxRowEditText]' },] } ]; return IgxRowEditTextDirective; }()); export { IgxRowEditTextDirective }; /** * @hidden */ var IgxRowEditActionsDirective = /** @class */ (function () { function IgxRowEditActionsDirective() { } IgxRowEditActionsDirective.decorators = [ { type: Directive, args: [{ selector: '[igxRowEditActions]' },] } ]; return IgxRowEditActionsDirective; }()); export { IgxRowEditActionsDirective }; // TODO: Refactor circular ref, deps and logic /** * @hidden */ var IgxRowEditTabStopDirective = /** @class */ (function () { function IgxRowEditTabStopDirective(grid, element, navigationService) { this.element = element; this.grid = grid; this.navigationService = navigationService; this.navigationService.grid = grid; } Object.defineProperty(IgxRowEditTabStopDirective.prototype, "allTabs", { get: /** * @private * @return {?} */ function () { return this.grid.rowEditTabs; }, enumerable: true, configurable: true }); /** * @param {?} event * @return {?} */ IgxRowEditTabStopDirective.prototype.handleTab = /** * @param {?} event * @return {?} */ function (event) { event.stopPropagation(); if (this.allTabs.length > 1) { if ((this.allTabs.last === this && !event.shiftKey) || (this.allTabs.first === this && event.shiftKey)) { this.move(event); } } else { this.move(event); } }; /** * @private * @param {?} rowIndex * @param {?} cellIndex * @return {?} */ IgxRowEditTabStopDirective.prototype.focusNextCell = /** * @private * @param {?} rowIndex * @param {?} cellIndex * @return {?} */ function (rowIndex, cellIndex) { /** @type {?} */ var grid = (/** @type {?} */ (this.grid)); grid.parentVirtDir.onChunkLoad.pipe(first(), tap(function () { return grid.markForCheck(); })).subscribe(function () { grid.rowInEditMode.cells.find(function (c) { return c.visibleColumnIndex === cellIndex; }).element.nativeElement.focus(); }); }; /** * @private * @param {?} event * @return {?} */ IgxRowEditTabStopDirective.prototype.move = /** * @private * @param {?} event * @return {?} */ function (event) { event.preventDefault(); /** @type {?} */ var horizontalScroll = this.grid.parentVirtDir.getHorizontalScroll(); /** @type {?} */ var targetIndex = event.shiftKey ? this.grid.lastEditableColumnIndex : this.grid.firstEditableColumnIndex; /** @type {?} */ var targetCell = this.grid.rowInEditMode.cells.find(function (e) { return e.visibleColumnIndex === targetIndex; }); if (!targetCell || !this.navigationService.isColumnFullyVisible(targetIndex) || !this.navigationService.isColumnLeftFullyVisible(targetIndex)) { this.focusNextCell(this.grid.rowInEditMode.index, targetIndex); horizontalScroll.scrollLeft = this.grid.rowInEditMode.virtDirRow.getColumnScrollLeft(this.navigationService.getColumnUnpinnedIndex(targetIndex)); } else { targetCell.nativeElement.focus(); } }; IgxRowEditTabStopDirective.decorators = [ { type: Directive, args: [{ selector: "[igxRowEditTabStop]" },] } ]; /** @nocollapse */ IgxRowEditTabStopDirective.ctorParameters = function () { return [ { type: undefined, decorators: [{ type: Inject, args: [forwardRef(function () { return IgxGridBaseComponent; }),] }] }, { type: ElementRef }, { type: undefined, decorators: [{ type: Inject, args: [forwardRef(function () { return IgxGridNavigationService; }),] }] } ]; }; IgxRowEditTabStopDirective.propDecorators = { handleTab: [{ type: HostListener, args: ['keydown.Tab', ["$event"],] }, { type: HostListener, args: ['keydown.Shift.Tab', ["$event"],] }] }; return IgxRowEditTabStopDirective; }()); export { IgxRowEditTabStopDirective }; if (false) { /** * @type {?} * @private */ IgxRowEditTabStopDirective.prototype.grid; /** * @type {?} * @private */ IgxRowEditTabStopDirective.prototype.navigationService; /** @type {?} */ IgxRowEditTabStopDirective.prototype.element; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5yb3dFZGl0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2lnbml0ZXVpLWFuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvZ3JpZHMvZ3JpZC5yb3dFZGl0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQUdyRTtJQUFBO0lBRzJDLENBQUM7O2dCQUgzQyxTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLGNBQWM7aUJBQzNCOztJQUMwQyxrQ0FBQztDQUFBLEFBSDVDLElBRzRDO1NBQS9CLDJCQUEyQjs7OztBQUd4QztJQUFBO0lBR3VDLENBQUM7O2dCQUh2QyxTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0I7O0lBQ3NDLDhCQUFDO0NBQUEsQUFIeEMsSUFHd0M7U0FBM0IsdUJBQXVCOzs7O0FBR3BDO0lBQUE7SUFHMEMsQ0FBQzs7Z0JBSDFDLFNBQVMsU0FBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO2lCQUNsQzs7SUFDeUMsaUNBQUM7Q0FBQSxBQUgzQyxJQUcyQztTQUE5QiwwQkFBMEI7Ozs7O0FBS3ZDO0lBV0ksb0NBQ29ELElBQUksRUFDN0MsT0FBbUIsRUFDMEIsaUJBQWlCO1FBRDlELFlBQU8sR0FBUCxPQUFPLENBQVk7UUFFdEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzNDLElBQUksQ0FB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QyxjQUFNLE9BQUEsb0JBQW9CLEVBQXBCLENBQW9CLENBQUM7Z0JBdENsQyxVQUFVO2dEQXdDckIsTUFBTSxTQUFDLFVBQVUsQ0FBQyxjQUFNLE9BQUEsd0JBQXdCLEVBQXhCLENBQXdCLENBQUM7Ozs0QkFLckQsWUFBWSxTQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxjQUN0QyxZQUFZLFNBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7O0lBa0NqRCxpQ0FBQztDQUFBLEFBdERELElBc0RDO1NBbkRZLDBCQUEwQjs7Ozs7O0lBS25DLDBDQUFtQzs7Ozs7SUFDbkMsdURBQW9EOztJQUloRCw2Q0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElneEdyaWRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9ncmlkLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IGZpcnN0LCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJZ3hHcmlkTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuL2dyaWQtbmF2aWdhdGlvbi5zZXJ2aWNlJztcblxuLyoqIEBoaWRkZW4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2lneFJvd0VkaXRdJ1xufSlcbmV4cG9ydCBjbGFzcyBJZ3hSb3dFZGl0VGVtcGxhdGVEaXJlY3RpdmUgeyB9XG5cbi8qKiBAaGlkZGVuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tpZ3hSb3dFZGl0VGV4dF0nXG59KVxuZXhwb3J0IGNsYXNzIElneFJvd0VkaXRUZXh0RGlyZWN0aXZlIHsgfVxuXG4vKiogQGhpZGRlbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbaWd4Um93RWRpdEFjdGlvbnNdJ1xufSlcbmV4cG9ydCBjbGFzcyBJZ3hSb3dFZGl0QWN0aW9uc0RpcmVjdGl2ZSB7IH1cblxuXG4vLyBUT0RPOiBSZWZhY3RvciBjaXJjdWxhciByZWYsIGRlcHMgYW5kIGxvZ2ljXG4vKiogQGhpZGRlbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGBbaWd4Um93RWRpdFRhYlN0b3BdYFxufSlcbmV4cG9ydCBjbGFzcyBJZ3hSb3dFZGl0VGFiU3RvcERpcmVjdGl2ZSB7XG4gICAgcHJpdmF0ZSBnZXQgYWxsVGFicygpOiBRdWVyeUxpc3Q8SWd4Um93RWRpdFRhYlN0b3BEaXJlY3RpdmU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JpZC5yb3dFZGl0VGFicztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdyaWQ6IElneEdyaWRCYXNlQ29tcG9uZW50O1xuICAgIHByaXZhdGUgbmF2aWdhdGlvblNlcnZpY2U6IElneEdyaWROYXZpZ2F0aW9uU2VydmljZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gSWd4R3JpZEJhc2VDb21wb25lbnQpKSBncmlkLFxuICAgICAgICBwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IElneEdyaWROYXZpZ2F0aW9uU2VydmljZSkpIG5hdmlnYXRpb25TZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLmdyaWQgPSBncmlkO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0aW9uU2VydmljZSA9IG5hdmlnYXRpb25TZXJ2aWNlO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0aW9uU2VydmljZS5ncmlkID0gZ3JpZDtcbiAgICAgICAgfVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uVGFiJywgW2AkZXZlbnRgXSlcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLlNoaWZ0LlRhYicsIFtgJGV2ZW50YF0pXG4gICAgcHVibGljIGhhbmRsZVRhYihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgaWYgKHRoaXMuYWxsVGFicy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICBpZiAoKHRoaXMuYWxsVGFicy5sYXN0ID09PSAgdGhpcyAmJiAhZXZlbnQuc2hpZnRLZXkpIHx8XG4gICAgICAgICAgICAgICAgKHRoaXMuYWxsVGFicy5maXJzdCA9PT0gIHRoaXMgJiYgZXZlbnQuc2hpZnRLZXkpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmUoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tb3ZlKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcml2YXRlIGZvY3VzTmV4dENlbGwocm93SW5kZXgsIGNlbGxJbmRleCkge1xuICAgICAgICBjb25zdCBncmlkID0gdGhpcy5ncmlkIGFzIGFueTtcbiAgICAgICAgZ3JpZC5wYXJlbnRWaXJ0RGlyLm9uQ2h1bmtMb2FkLnBpcGUoZmlyc3QoKSwgdGFwKCgpID0+IGdyaWQubWFya0ZvckNoZWNrKCkpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgZ3JpZC5yb3dJbkVkaXRNb2RlLmNlbGxzLmZpbmQoYyA9PiBjLnZpc2libGVDb2x1bW5JbmRleCA9PT0gY2VsbEluZGV4KS5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgbW92ZShldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBob3Jpem9udGFsU2Nyb2xsID0gdGhpcy5ncmlkLnBhcmVudFZpcnREaXIuZ2V0SG9yaXpvbnRhbFNjcm9sbCgpO1xuICAgICAgICBjb25zdCB0YXJnZXRJbmRleCA9IGV2ZW50LnNoaWZ0S2V5ID8gdGhpcy5ncmlkLmxhc3RFZGl0YWJsZUNvbHVtbkluZGV4IDogdGhpcy5ncmlkLmZpcnN0RWRpdGFibGVDb2x1bW5JbmRleDtcbiAgICAgICAgY29uc3QgdGFyZ2V0Q2VsbCA9IHRoaXMuZ3JpZC5yb3dJbkVkaXRNb2RlLmNlbGxzLmZpbmQoZSA9PiBlLnZpc2libGVDb2x1bW5JbmRleCA9PT0gdGFyZ2V0SW5kZXgpO1xuICAgICAgICBpZiAoIXRhcmdldENlbGwgfHxcbiAgICAgICAgICAgICF0aGlzLm5hdmlnYXRpb25TZXJ2aWNlLmlzQ29sdW1uRnVsbHlWaXNpYmxlKHRhcmdldEluZGV4KVxuICAgICAgICAgICAgfHwgIXRoaXMubmF2aWdhdGlvblNlcnZpY2UuaXNDb2x1bW5MZWZ0RnVsbHlWaXNpYmxlKHRhcmdldEluZGV4KSkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c05leHRDZWxsKHRoaXMuZ3JpZC5yb3dJbkVkaXRNb2RlLmluZGV4LCB0YXJnZXRJbmRleCk7XG4gICAgICAgICAgICBob3Jpem9udGFsU2Nyb2xsLnNjcm9sbExlZnQgPVxuICAgICAgICAgICAgdGhpcy5ncmlkLnJvd0luRWRpdE1vZGUudmlydERpclJvdy5nZXRDb2x1bW5TY3JvbGxMZWZ0KHRoaXMubmF2aWdhdGlvblNlcnZpY2UuZ2V0Q29sdW1uVW5waW5uZWRJbmRleCh0YXJnZXRJbmRleCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGFyZ2V0Q2VsbC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=