ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
143 lines (142 loc) • 10.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Component, ViewEncapsulation, Input, Output, EventEmitter, TemplateRef } from '@angular/core';
import { takeUntil } from 'rxjs/operators';
import { Subject } from 'rxjs';
import { LocaleProviderService } from '../locale-provider/locale-provider.service';
var PaginationComponent = /** @class */ (function () {
function PaginationComponent(_localeProviderService) {
this._localeProviderService = _localeProviderService;
this.prefixCls = 'am-pagination';
this._locale = {};
this._unsubscribe$ = new Subject();
this.mode = 'button';
this.current = 1;
this.total = 0;
this.simple = false;
this.disabled = false;
this.onChange = new EventEmitter();
}
Object.defineProperty(PaginationComponent.prototype, "locale", {
get: /**
* @return {?}
*/
function () {
return this._locale;
},
set: /**
* @param {?} v
* @return {?}
*/
function (v) {
this._locale = v;
this._unsubscribe$.next();
this._unsubscribe$.complete();
},
enumerable: true,
configurable: true
});
/**
* @param {?} key
* @return {?}
*/
PaginationComponent.prototype.isTemplateRef = /**
* @param {?} key
* @return {?}
*/
function (key) {
return /** @type {?} */ (key) instanceof TemplateRef;
};
/**
* @param {?} p
* @return {?}
*/
PaginationComponent.prototype.onClick = /**
* @param {?} p
* @return {?}
*/
function (p) {
this.current = p;
this.onChange.emit(p);
};
/**
* @param {?} p
* @return {?}
*/
PaginationComponent.prototype.getNumber = /**
* @param {?} p
* @return {?}
*/
function (p) {
return new Array(p);
};
/**
* @return {?}
*/
PaginationComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
var _this = this;
this._localeProviderService.localeChange.pipe(takeUntil(this._unsubscribe$)).subscribe(function (_) {
_this._locale = _this._localeProviderService.getLocaleSubObj('Pagination');
});
};
/**
* @return {?}
*/
PaginationComponent.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
this._unsubscribe$.next();
this._unsubscribe$.complete();
};
PaginationComponent.decorators = [
{ type: Component, args: [{
selector: 'Pagination, nzm-pagination',
template: "<div class=\"{{prefixCls}} {{prefixCls}}-align-center\">\n <Flex *ngIf=\"mode === 'button'\">\n <FlexItem class=\"{{prefixCls}}-wrap-btn {{prefixCls}}-wrap-btn-prev\">\n <a Button [inline]=\"true\" [disabled]=\"current <= 1\" (onClick)=\"onClick(current - 1)\">\n <ng-container *ngIf=\"!isTemplateRef(locale.prevText)\">\n {{locale.prevText}}\n </ng-container>\n <ng-template *ngIf=\"isTemplateRef(locale.prevText)\" [ngTemplateOutlet]=\"locale.prevText\"></ng-template>\n </a>\n </FlexItem>\n <FlexItem class=\"{{prefixCls}}-wrap\" aria-live=\"assertive\" *ngIf=\"!simple\">\n <span class=\"active\">{{current}}</span>/\n <span>{{total}}</span>\n </FlexItem>\n <FlexItem class=\"{{prefixCls}}-wrap-btn {{prefixCls}}-wrap-btn-next\">\n <a Button [inline]=\"true\" [disabled]=\"current>= total\" (onClick)=\"onClick(current + 1)\">\n <ng-container *ngIf=\"!isTemplateRef(locale.nextText)\">\n {{locale.nextText}}\n </ng-container>\n <ng-template *ngIf=\"isTemplateRef(locale.nextText)\" [ngTemplateOutlet]=\"locale.nextText\"></ng-template>\n </a>\n </FlexItem>\n </Flex>\n\n <div class=\"{{prefixCls}}-wrap\" *ngIf=\"mode === 'number'\">\n <span class=\"active\">{{current}}</span>/<span>{{total}}</span>\n </div>\n\n <div class=\"{{prefixCls}}-wrap\" *ngIf=\"mode === 'pointer'\">\n <div *ngFor=\"let number of getNumber(total); let i = index\" class=\"{{prefixCls}}-wrap-dot {{current === i+1 ? (prefixCls + '-wrap-dot-active') : ''}}\">\n <span></span>\n </div>\n </div>\n</div>\n",
encapsulation: ViewEncapsulation.None
}] }
];
/** @nocollapse */
PaginationComponent.ctorParameters = function () { return [
{ type: LocaleProviderService }
]; };
PaginationComponent.propDecorators = {
mode: [{ type: Input }],
current: [{ type: Input }],
total: [{ type: Input }],
simple: [{ type: Input }],
disabled: [{ type: Input }],
locale: [{ type: Input }],
onChange: [{ type: Output }]
};
return PaginationComponent;
}());
export { PaginationComponent };
if (false) {
/** @type {?} */
PaginationComponent.prototype.prefixCls;
/** @type {?} */
PaginationComponent.prototype._locale;
/** @type {?} */
PaginationComponent.prototype._unsubscribe$;
/** @type {?} */
PaginationComponent.prototype.mode;
/** @type {?} */
PaginationComponent.prototype.current;
/** @type {?} */
PaginationComponent.prototype.total;
/** @type {?} */
PaginationComponent.prototype.simple;
/** @type {?} */
PaginationComponent.prototype.disabled;
/** @type {?} */
PaginationComponent.prototype.onChange;
/** @type {?} */
PaginationComponent.prototype._localeProviderService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy16b3Jyby1hbnRkLW1vYmlsZS8iLCJzb3VyY2VzIjpbInBhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBQ2pCLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFdBQVcsRUFFWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7SUFtQ2pGLDZCQUFvQixzQkFBNkM7UUFBN0MsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1Qjt5QkEzQnJELGVBQWU7dUJBRUQsRUFBRTs2QkFDVyxJQUFJLE9BQU8sRUFBUTtvQkFHM0MsUUFBUTt1QkFFTCxDQUFDO3FCQUVILENBQUM7c0JBRUMsS0FBSzt3QkFFSCxLQUFLO3dCQVdLLElBQUksWUFBWSxFQUFPO0tBRWdCO0lBWnJFLHNCQUNJLHVDQUFNOzs7O1FBRFY7WUFFRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDckI7Ozs7O1FBQ0QsVUFBVyxDQUFDO1lBQ1YsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQy9COzs7T0FMQTs7Ozs7SUFXRCwyQ0FBYTs7OztJQUFiLFVBQWMsR0FBRztRQUNmLHlCQUFZLEdBQUcsYUFBWSxXQUFXLENBQUM7S0FDeEM7Ozs7O0lBRUQscUNBQU87Ozs7SUFBUCxVQUFRLENBQVM7UUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN2Qjs7Ozs7SUFFRCx1Q0FBUzs7OztJQUFULFVBQVUsQ0FBUztRQUNqQixPQUFPLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3JCOzs7O0lBRUQsc0NBQVE7OztJQUFSO1FBQUEsaUJBSUM7UUFIQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFVBQUEsQ0FBQztZQUN0RixLQUFJLENBQUMsT0FBTyxHQUFHLEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDMUUsQ0FBQyxDQUFDO0tBQ0o7Ozs7SUFFRCx5Q0FBVzs7O0lBQVg7UUFDRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7S0FDL0I7O2dCQXpERixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsdWxEQUEwQztvQkFDMUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzs7O2dCQU5RLHFCQUFxQjs7O3VCQWEzQixLQUFLOzBCQUVMLEtBQUs7d0JBRUwsS0FBSzt5QkFFTCxLQUFLOzJCQUVMLEtBQUs7eUJBRUwsS0FBSzsyQkFTTCxNQUFNOzs4QkE1Q1Q7O1NBbUJhLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBUZW1wbGF0ZVJlZixcbiAgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTG9jYWxlUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbG9jYWxlLXByb3ZpZGVyL2xvY2FsZS1wcm92aWRlci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnUGFnaW5hdGlvbiwgbnptLXBhZ2luYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJlZml4Q2xzID0gJ2FtLXBhZ2luYXRpb24nO1xuXG4gIHByaXZhdGUgX2xvY2FsZTogb2JqZWN0ID0ge307XG4gIHByaXZhdGUgX3Vuc3Vic2NyaWJlJDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgQElucHV0KClcbiAgbW9kZTogc3RyaW5nID0gJ2J1dHRvbic7XG4gIEBJbnB1dCgpXG4gIGN1cnJlbnQ6IG51bWJlciA9IDE7XG4gIEBJbnB1dCgpXG4gIHRvdGFsOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKVxuICBzaW1wbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgZ2V0IGxvY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9jYWxlO1xuICB9XG4gIHNldCBsb2NhbGUodikge1xuICAgIHRoaXMuX2xvY2FsZSA9IHY7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICB0aGlzLl91bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxuICBAT3V0cHV0KClcbiAgb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbG9jYWxlUHJvdmlkZXJTZXJ2aWNlOiBMb2NhbGVQcm92aWRlclNlcnZpY2UpIHt9XG5cbiAgaXNUZW1wbGF0ZVJlZihrZXkpIHtcbiAgICByZXR1cm4gPGFueT5rZXkgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZjtcbiAgfVxuXG4gIG9uQ2xpY2socDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50ID0gcDtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQocCk7XG4gIH1cblxuICBnZXROdW1iZXIocDogbnVtYmVyKTogQXJyYXk8bnVtYmVyPiB7XG4gICAgcmV0dXJuIG5ldyBBcnJheShwKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX2xvY2FsZVByb3ZpZGVyU2VydmljZS5sb2NhbGVDaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgdGhpcy5fbG9jYWxlID0gdGhpcy5fbG9jYWxlUHJvdmlkZXJTZXJ2aWNlLmdldExvY2FsZVN1Yk9iaignUGFnaW5hdGlvbicpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICB0aGlzLl91bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19