ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
145 lines (144 loc) • 10.5 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Component, ViewEncapsulation, Input, HostBinding } from '@angular/core';
import { formatDate } from '../util/index';
/**
* @record
*/
export function ConfirmPanelPropsType() { }
/** @type {?|undefined} */
ConfirmPanelPropsType.prototype.type;
/** @type {?} */
ConfirmPanelPropsType.prototype.locale;
/** @type {?|undefined} */
ConfirmPanelPropsType.prototype.onlyConfirm;
/** @type {?|undefined} */
ConfirmPanelPropsType.prototype.disableBtn;
/** @type {?|undefined} */
ConfirmPanelPropsType.prototype.startDateTime;
/** @type {?|undefined} */
ConfirmPanelPropsType.prototype.endDateTime;
/** @type {?|undefined} */
ConfirmPanelPropsType.prototype.formatStr;
/** @type {?} */
ConfirmPanelPropsType.prototype.onConfirm;
export class ConfirmPanelComponent {
constructor() {
this.props = /** @type {?} */ ({
formatStr: 'yyyy-MM-dd hh:mm'
});
this.confirmPane = true;
this.triggerConfirm = () => {
const { onConfirm, disableBtn } = this.props;
!disableBtn && onConfirm();
};
}
/**
* @param {?} value
* @return {?}
*/
set propsData(value) {
this.props = Object.assign({}, this.props, value);
}
/**
* @param {?} value
* @return {?}
*/
set disableBtn(value) {
this.props.disableBtn = value;
}
/**
* @param {?} value
* @return {?}
*/
set formatStr(value) {
this.props.formatStr = value;
}
/**
* @param {?} value
* @return {?}
*/
set startDateTime(value) {
this.props.startDateTime = value;
this.formatTime();
}
/**
* @param {?} value
* @return {?}
*/
set endDateTime(value) {
this.props.endDateTime = value;
this.formatTime();
}
/**
* @param {?} value
* @return {?}
*/
set onConfirm(value) {
this.props.onConfirm = value;
}
/**
* @return {?}
*/
formatTime() {
const { type, locale, disableBtn } = this.props;
let { startDateTime, endDateTime } = this.props;
if (startDateTime && endDateTime && +startDateTime > +endDateTime) {
/** @type {?} */
const tmp = startDateTime;
startDateTime = endDateTime;
endDateTime = tmp;
}
this.startTimeStr = startDateTime ? this.selfFormatDate(startDateTime) : locale.noChoose;
this.endTimeStr = endDateTime ? this.selfFormatDate(endDateTime) : locale.noChoose;
/** @type {?} */
let btnCls = disableBtn ? 'button button-disable' : 'button';
if (type === 'one') {
btnCls += ' button-full';
}
this.btnCls = btnCls;
}
/**
* @param {?} date
* @return {?}
*/
selfFormatDate(date) {
const { formatStr = '', locale } = this.props;
return formatDate(date, formatStr, locale);
}
}
ConfirmPanelComponent.decorators = [
{ type: Component, args: [{
selector: 'CalendarConfirmPanel, nzm-calendar-confirm-panel',
template: "<div *ngIf=\"props.type === 'range'\" class=\"info\">\n <p>{{props.locale.start}}: <span class=\"{{!props.startDateTime ? 'grey' : ''}}\">{{startTimeStr}}</span></p>\n <p>{{props.locale.end}}: <span class=\"{{!props.endDateTime ? 'grey' : ''}}\">{{endTimeStr}}</span></p>\n</div>\n<div [ngClass]=\"btnCls\" (click)=\"triggerConfirm()\">\n {{props.locale.confirm}}\n</div>\n",
encapsulation: ViewEncapsulation.None
}] }
];
/** @nocollapse */
ConfirmPanelComponent.ctorParameters = () => [];
ConfirmPanelComponent.propDecorators = {
propsData: [{ type: Input }],
disableBtn: [{ type: Input }],
formatStr: [{ type: Input }],
startDateTime: [{ type: Input }],
endDateTime: [{ type: Input }],
onConfirm: [{ type: Input }],
confirmPane: [{ type: HostBinding, args: ['class.confirm-panel',] }]
};
if (false) {
/** @type {?} */
ConfirmPanelComponent.prototype.props;
/** @type {?} */
ConfirmPanelComponent.prototype.startTimeStr;
/** @type {?} */
ConfirmPanelComponent.prototype.endTimeStr;
/** @type {?} */
ConfirmPanelComponent.prototype.btnCls;
/** @type {?} */
ConfirmPanelComponent.prototype.confirmPane;
/** @type {?} */
ConfirmPanelComponent.prototype.triggerConfirm;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy16b3Jyby1hbnRkLW1vYmlsZS8iLCJzb3VyY2VzIjpbImNhbGVuZGFyL2NvbmZpcm0tcGFuZWwvY29uZmlybS1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQjNDLE1BQU07SUF3Q0o7dUNBdkNRO1lBQ04sU0FBUyxFQUFFLGtCQUFrQjtTQUNMOzJCQW1DaUMsSUFBSTs4QkFzQjlDLEdBQUcsRUFBRTtZQUNwQixNQUFNLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDN0MsQ0FBQyxVQUFVLElBQUksU0FBUyxFQUFFLENBQUM7U0FDNUI7S0F2QmU7Ozs7O0lBaENoQixJQUNJLFNBQVMsQ0FBQyxLQUFLO1FBQ2pCLElBQUksQ0FBQyxLQUFLLHFCQUNMLElBQUksQ0FBQyxLQUFLLEVBQ1YsS0FBSyxDQUNULENBQUM7S0FDSDs7Ozs7SUFDRCxJQUNJLFVBQVUsQ0FBQyxLQUFLO1FBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztLQUMvQjs7Ozs7SUFDRCxJQUNJLFNBQVMsQ0FBQyxLQUFLO1FBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztLQUM5Qjs7Ozs7SUFDRCxJQUNJLGFBQWEsQ0FBQyxLQUFLO1FBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUNqQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7S0FDbkI7Ozs7O0lBQ0QsSUFDSSxXQUFXLENBQUMsS0FBSztRQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDL0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0tBQ25COzs7OztJQUNELElBQ0ksU0FBUyxDQUFDLEtBQUs7UUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0tBQzlCOzs7O0lBTUQsVUFBVTtRQUNSLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDaEQsSUFBSSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ2hELElBQUksYUFBYSxJQUFJLFdBQVcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLFdBQVcsRUFBRTs7WUFDakUsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDO1lBQzFCLGFBQWEsR0FBRyxXQUFXLENBQUM7WUFDNUIsV0FBVyxHQUFHLEdBQUcsQ0FBQztTQUNuQjtRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ3pGLElBQUksQ0FBQyxVQUFVLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDOztRQUNuRixJQUFJLE1BQU0sR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDN0QsSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFO1lBQ2xCLE1BQU0sSUFBSSxjQUFjLENBQUM7U0FDMUI7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztLQUN0Qjs7Ozs7SUFPRCxjQUFjLENBQUMsSUFBVTtRQUN2QixNQUFNLEVBQUUsU0FBUyxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQzlDLE9BQU8sVUFBVSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDNUM7OztZQTFFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtEQUFrRDtnQkFDNUQsb1lBQTZDO2dCQUM3QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7Ozs7d0JBVUUsS0FBSzt5QkFPTCxLQUFLO3dCQUlMLEtBQUs7NEJBSUwsS0FBSzswQkFLTCxLQUFLO3dCQUtMLEtBQUs7MEJBS0wsV0FBVyxTQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIElucHV0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gJy4uL3V0aWwvaW5kZXgnO1xuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi4vZGF0ZS9EYXRhVHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpcm1QYW5lbFByb3BzVHlwZSB7XG4gIHR5cGU/OiAnb25lJyB8ICdyYW5nZSc7XG4gIGxvY2FsZTogTW9kZWxzLkxvY2FsZTtcbiAgb25seUNvbmZpcm0/OiBib29sZWFuO1xuICBkaXNhYmxlQnRuPzogYm9vbGVhbjtcbiAgc3RhcnREYXRlVGltZT86IERhdGU7XG4gIGVuZERhdGVUaW1lPzogRGF0ZTtcbiAgZm9ybWF0U3RyPzogc3RyaW5nO1xuICBvbkNvbmZpcm06ICgpID0+IHZvaWQ7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ0NhbGVuZGFyQ29uZmlybVBhbmVsLCBuem0tY2FsZW5kYXItY29uZmlybS1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcblxuZXhwb3J0IGNsYXNzIENvbmZpcm1QYW5lbENvbXBvbmVudCB7XG4gIHByb3BzID0ge1xuICAgIGZvcm1hdFN0cjogJ3l5eXktTU0tZGQgaGg6bW0nXG4gIH0gYXMgQ29uZmlybVBhbmVsUHJvcHNUeXBlO1xuICBzdGFydFRpbWVTdHI6IHN0cmluZztcbiAgZW5kVGltZVN0cjogc3RyaW5nO1xuICBidG5DbHM6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzZXQgcHJvcHNEYXRhKHZhbHVlKSB7XG4gICAgdGhpcy5wcm9wcyA9IHtcbiAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgICAuLi52YWx1ZVxuICAgIH07XG4gIH1cbiAgQElucHV0KClcbiAgc2V0IGRpc2FibGVCdG4odmFsdWUpIHtcbiAgICB0aGlzLnByb3BzLmRpc2FibGVCdG4gPSB2YWx1ZTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgZm9ybWF0U3RyKHZhbHVlKSB7XG4gICAgdGhpcy5wcm9wcy5mb3JtYXRTdHIgPSB2YWx1ZTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgc3RhcnREYXRlVGltZSh2YWx1ZSkge1xuICAgIHRoaXMucHJvcHMuc3RhcnREYXRlVGltZSA9IHZhbHVlO1xuICAgIHRoaXMuZm9ybWF0VGltZSgpO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBlbmREYXRlVGltZSh2YWx1ZSkge1xuICAgIHRoaXMucHJvcHMuZW5kRGF0ZVRpbWUgPSB2YWx1ZTtcbiAgICB0aGlzLmZvcm1hdFRpbWUoKTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgb25Db25maXJtKHZhbHVlKSB7XG4gICAgdGhpcy5wcm9wcy5vbkNvbmZpcm0gPSB2YWx1ZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY29uZmlybS1wYW5lbCcpIGNvbmZpcm1QYW5lOiBib29sZWFuID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgZm9ybWF0VGltZSgpIHtcbiAgICBjb25zdCB7IHR5cGUsIGxvY2FsZSwgZGlzYWJsZUJ0biB9ID0gdGhpcy5wcm9wcztcbiAgICBsZXQgeyBzdGFydERhdGVUaW1lLCBlbmREYXRlVGltZSB9ID0gdGhpcy5wcm9wcztcbiAgICBpZiAoc3RhcnREYXRlVGltZSAmJiBlbmREYXRlVGltZSAmJiArc3RhcnREYXRlVGltZSA+ICtlbmREYXRlVGltZSkge1xuICAgICAgY29uc3QgdG1wID0gc3RhcnREYXRlVGltZTtcbiAgICAgIHN0YXJ0RGF0ZVRpbWUgPSBlbmREYXRlVGltZTtcbiAgICAgIGVuZERhdGVUaW1lID0gdG1wO1xuICAgIH1cblxuICAgIHRoaXMuc3RhcnRUaW1lU3RyID0gc3RhcnREYXRlVGltZSA/IHRoaXMuc2VsZkZvcm1hdERhdGUoc3RhcnREYXRlVGltZSkgOiBsb2NhbGUubm9DaG9vc2U7XG4gICAgdGhpcy5lbmRUaW1lU3RyID0gZW5kRGF0ZVRpbWUgPyB0aGlzLnNlbGZGb3JtYXREYXRlKGVuZERhdGVUaW1lKSA6IGxvY2FsZS5ub0Nob29zZTtcbiAgICBsZXQgYnRuQ2xzID0gZGlzYWJsZUJ0biA/ICdidXR0b24gYnV0dG9uLWRpc2FibGUnIDogJ2J1dHRvbic7XG4gICAgaWYgKHR5cGUgPT09ICdvbmUnKSB7XG4gICAgICBidG5DbHMgKz0gJyBidXR0b24tZnVsbCc7XG4gICAgfVxuICAgIHRoaXMuYnRuQ2xzID0gYnRuQ2xzO1xuICB9XG5cbiAgdHJpZ2dlckNvbmZpcm0gPSAoKSA9PiB7XG4gICAgY29uc3QgeyBvbkNvbmZpcm0sIGRpc2FibGVCdG4gfSA9IHRoaXMucHJvcHM7XG4gICAgIWRpc2FibGVCdG4gJiYgb25Db25maXJtKCk7XG4gIH1cblxuICBzZWxmRm9ybWF0RGF0ZShkYXRlOiBEYXRlKSB7XG4gICAgY29uc3QgeyBmb3JtYXRTdHIgPSAnJywgbG9jYWxlIH0gPSB0aGlzLnByb3BzO1xuICAgIHJldHVybiBmb3JtYXREYXRlKGRhdGUsIGZvcm1hdFN0ciwgbG9jYWxlKTtcbiAgfVxufVxuIl19