@lxlib/seed
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.1.1.
213 lines • 13.6 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: error-collect.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { __assign, __decorate, __metadata } from "tslib";
import { DOCUMENT } from '@angular/common';
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Inject, Input, ViewEncapsulation, } from '@angular/core';
import { InputNumber } from '@lxlib/util';
import { ErrorCollectConfig } from './error-collect.config';
var ErrorCollectComponent = /** @class */ (function () {
function ErrorCollectComponent(cog, el, cdr, doc) {
this.el = el;
this.cdr = cdr;
this.doc = doc;
this.$time = null;
this._hiden = true;
this.count = 0;
Object.assign(this, __assign(__assign({}, new ErrorCollectConfig()), cog));
}
Object.defineProperty(ErrorCollectComponent.prototype, "errEls", {
get: /**
* @private
* @return {?}
*/
function () {
return (/** @type {?} */ (this.formEl)).querySelectorAll('.ant-form-item-has-error');
},
enumerable: true,
configurable: true
});
/**
* @private
* @return {?}
*/
ErrorCollectComponent.prototype.update = /**
* @private
* @return {?}
*/
function () {
/** @type {?} */
var count = this.errEls.length;
if (count === this.count)
return;
this.count = count;
this._hiden = count === 0;
this.cdr.markForCheck();
};
/**
* @return {?}
*/
ErrorCollectComponent.prototype._click = /**
* @return {?}
*/
function () {
if (this.count === 0)
return false;
// nz-form-control
/** @type {?} */
var els = this.errEls;
/** @type {?} */
var formItemEl = this.findParent(els[0], '[nz-form-control]') || els[0];
formItemEl.scrollIntoView(true);
// fix header height
this.doc.documentElement.scrollTop -= this.offsetTop;
return true;
};
/**
* @private
* @return {?}
*/
ErrorCollectComponent.prototype.install = /**
* @private
* @return {?}
*/
function () {
var _this = this;
this.uninstall();
this.$time = setInterval((/**
* @return {?}
*/
function () { return _this.update(); }), this.freq);
this.update();
};
/**
* @private
* @return {?}
*/
ErrorCollectComponent.prototype.uninstall = /**
* @private
* @return {?}
*/
function () {
clearInterval((/** @type {?} */ (this.$time)));
};
/**
* @private
* @param {?} el
* @param {?} selector
* @return {?}
*/
ErrorCollectComponent.prototype.findParent = /**
* @private
* @param {?} el
* @param {?} selector
* @return {?}
*/
function (el, selector) {
/** @type {?} */
var retEl = null;
while (el) {
if (el.querySelector(selector)) {
retEl = (/** @type {?} */ (el));
break;
}
el = (/** @type {?} */ (el.parentElement));
}
return retEl;
};
/**
* @return {?}
*/
ErrorCollectComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
this.formEl = this.findParent(this.el.nativeElement, 'form');
if (this.formEl === null)
throw new Error('No found form element');
this.install();
};
/**
* @return {?}
*/
ErrorCollectComponent.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
this.uninstall();
};
ErrorCollectComponent.decorators = [
{ type: Component, args: [{
selector: 'error-collect, [error-collect]',
exportAs: 'errorCollect',
template: "\n <i nz-icon nzType=\"exclamation-circle\"></i>\n <span class=\"pl-sm\">{{ count }}</span>\n ",
host: {
'[class.error-collect]': 'true',
'[class.d-none]': '_hiden',
'(click)': '_click()',
},
preserveWhitespaces: false,
changeDetection: ChangeDetectionStrategy.OnPush,
encapsulation: ViewEncapsulation.None
}] }
];
/** @nocollapse */
ErrorCollectComponent.ctorParameters = function () { return [
{ type: ErrorCollectConfig },
{ type: ElementRef },
{ type: ChangeDetectorRef },
{ type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
]; };
ErrorCollectComponent.propDecorators = {
freq: [{ type: Input }],
offsetTop: [{ type: Input }]
};
__decorate([
InputNumber(),
__metadata("design:type", Number)
], ErrorCollectComponent.prototype, "freq", void 0);
__decorate([
InputNumber(),
__metadata("design:type", Number)
], ErrorCollectComponent.prototype, "offsetTop", void 0);
return ErrorCollectComponent;
}());
export { ErrorCollectComponent };
if (false) {
/**
* @type {?}
* @private
*/
ErrorCollectComponent.prototype.$time;
/**
* @type {?}
* @private
*/
ErrorCollectComponent.prototype.formEl;
/** @type {?} */
ErrorCollectComponent.prototype.freq;
/** @type {?} */
ErrorCollectComponent.prototype.offsetTop;
/** @type {?} */
ErrorCollectComponent.prototype._hiden;
/** @type {?} */
ErrorCollectComponent.prototype.count;
/**
* @type {?}
* @private
*/
ErrorCollectComponent.prototype.el;
/**
* @type {?}
* @private
*/
ErrorCollectComponent.prototype.cdr;
/**
* @type {?}
* @private
*/
ErrorCollectComponent.prototype.doc;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItY29sbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbHhsaWIvc2VlZC9lcnJvci1jb2xsZWN0LyIsInNvdXJjZXMiOlsiZXJyb3ItY29sbGVjdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU1RDtJQTJCRSwrQkFBWSxHQUF1QixFQUFVLEVBQWMsRUFBVSxHQUFzQixFQUE0QixHQUFRO1FBQWxGLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUE0QixRQUFHLEdBQUgsR0FBRyxDQUFLO1FBVnZILFVBQUssR0FBZSxJQUFJLENBQUM7UUFNakMsV0FBTSxHQUFHLElBQUksQ0FBQztRQUVkLFVBQUssR0FBRyxDQUFDLENBQUM7UUFHUixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksd0JBQU8sSUFBSSxrQkFBa0IsRUFBRSxHQUFLLEdBQUcsRUFBRyxDQUFDO0lBQy9ELENBQUM7SUFFRCxzQkFBWSx5Q0FBTTs7Ozs7UUFBbEI7WUFDRSxPQUFPLG1CQUFBLElBQUksQ0FBQyxNQUFNLEVBQUMsQ0FBQyxnQkFBZ0IsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ25FLENBQUM7OztPQUFBOzs7OztJQUVPLHNDQUFNOzs7O0lBQWQ7O1lBQ1EsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTtRQUNoQyxJQUFJLEtBQUssS0FBSyxJ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QUU7OzREQUFtQjtJQWdFNUMsNEJBQUM7Q0FBQSxBQXJGRCxJQXFGQztTQXJFWSxxQkFBcUI7Ozs7OztJQUNoQyxzQ0FBaUM7Ozs7O0lBQ2pDLHVDQUF1Qzs7SUFFdkMscUNBQXFDOztJQUNyQywwQ0FBMEM7O0lBRTFDLHVDQUFjOztJQUVkLHNDQUFVOzs7OztJQUUyQixtQ0FBc0I7Ozs7O0lBQUUsb0NBQThCOzs7OztJQUFFLG9DQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5wdXROdW1iZXIgfSBmcm9tICdAbHhsaWIvdXRpbCc7XG5pbXBvcnQgeyBFcnJvckNvbGxlY3RDb25maWcgfSBmcm9tICcuL2Vycm9yLWNvbGxlY3QuY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXJyb3ItY29sbGVjdCwgW2Vycm9yLWNvbGxlY3RdJyxcbiAgZXhwb3J0QXM6ICdlcnJvckNvbGxlY3QnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpIG56LWljb24gbnpUeXBlPVwiZXhjbGFtYXRpb24tY2lyY2xlXCI+PC9pPlxuICAgIDxzcGFuIGNsYXNzPVwicGwtc21cIj57eyBjb3VudCB9fTwvc3Bhbj5cbiAgYCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZXJyb3ItY29sbGVjdF0nOiAndHJ1ZScsXG4gICAgJ1tjbGFzcy5kLW5vbmVdJzogJ19oaWRlbicsXG4gICAgJyhjbGljayknOiAnX2NsaWNrKCknLFxuICB9LFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yQ29sbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSAkdGltZTogYW55IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgZm9ybUVsOiBIVE1MRm9ybUVsZW1lbnQgfCBudWxsO1xuXG4gIEBJbnB1dCgpIEBJbnB1dE51bWJlcigpIGZyZXE6IG51bWJlcjtcbiAgQElucHV0KCkgQElucHV0TnVtYmVyKCkgb2Zmc2V0VG9wOiBudW1iZXI7XG5cbiAgX2hpZGVuID0gdHJ1ZTtcblxuICBjb3VudCA9IDA7XG5cbiAgY29uc3RydWN0b3IoY29nOiBFcnJvckNvbGxlY3RDb25maWcsIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2M6IGFueSkge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgeyAuLi5uZXcgRXJyb3JDb2xsZWN0Q29uZmlnKCksIC4uLmNvZyB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGVyckVscygpOiBOb2RlTGlzdE9mPEhUTUxFbGVtZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybUVsIS5xdWVyeVNlbGVjdG9yQWxsKCcuYW50LWZvcm0taXRlbS1oYXMtZXJyb3InKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvdW50ID0gdGhpcy5lcnJFbHMubGVuZ3RoO1xuICAgIGlmIChjb3VudCA9PT0gdGhpcy5jb3VudCkgcmV0dXJuO1xuICAgIHRoaXMuY291bnQgPSBjb3VudDtcbiAgICB0aGlzLl9oaWRlbiA9IGNvdW50ID09PSAwO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgX2NsaWNrKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmNvdW50ID09PSAwKSByZXR1cm4gZmFsc2U7XG4gICAgLy8gbnotZm9ybS1jb250cm9sXG4gICAgY29uc3QgZWxzID0gdGhpcy5lcnJFbHM7XG4gICAgY29uc3QgZm9ybUl0ZW1FbCA9IHRoaXMuZmluZFBhcmVudChlbHNbMF0sICdbbnotZm9ybS1jb250cm9sXScpIHx8IGVsc1swXTtcbiAgICBmb3JtSXRlbUVsLnNjcm9sbEludG9WaWV3KHRydWUpO1xuICAgIC8vIGZpeCBoZWFkZXIgaGVpZ2h0XG4gICAgdGhpcy5kb2MuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCAtPSB0aGlzLm9mZnNldFRvcDtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgaW5zdGFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLnVuaW5zdGFsbCgpO1xuICAgIHRoaXMuJHRpbWUgPSBzZXRJbnRlcnZhbCgoKSA9PiB0aGlzLnVwZGF0ZSgpLCB0aGlzLmZyZXEpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIHVuaW5zdGFsbCgpOiB2b2lkIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuJHRpbWUhKTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZFBhcmVudChlbDogRWxlbWVudCwgc2VsZWN0b3I6IHN0cmluZyk6IEhUTUxGb3JtRWxlbWVudCB8IG51bGwge1xuICAgIGxldCByZXRFbDogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gICAgd2hpbGUgKGVsKSB7XG4gICAgICBpZiAoZWwucXVlcnlTZWxlY3RvcihzZWxlY3RvcikpIHtcbiAgICAgICAgcmV0RWwgPSBlbCBhcyBIVE1MRm9ybUVsZW1lbnQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZWwgPSBlbC5wYXJlbnRFbGVtZW50IGFzIEhUTUxGb3JtRWxlbWVudDtcbiAgICB9XG4gICAgcmV0dXJuIHJldEVsO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtRWwgPSB0aGlzLmZpbmRQYXJlbnQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnZm9ybScpO1xuICAgIGlmICh0aGlzLmZvcm1FbCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCdObyBmb3VuZCBmb3JtIGVsZW1lbnQnKTtcbiAgICB0aGlzLmluc3RhbGwoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMudW5pbnN0YWxsKCk7XG4gIH1cbn1cbiJdfQ==