UNPKG

chowa

Version:

UI component library based on React

49 lines (48 loc) 3.52 kB
/** * @license chowa v1.1.3 * * Copyright (c) Chowa Techonlogies Co.,Ltd.(http://www.chowa.cn). * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const React = require("react"); const moment = require("moment"); const i18n_1 = require("../../i18n"); const icon_1 = require("../../icon"); const utils_1 = require("../../utils"); const calendar_mode_1 = require("../calendar-mode"); const MinHeader = (props) => { const { mode, each, display, time, updateDisplay, updateMode, updateEach } = props; return (React.createElement("div", { className: utils_1.preClass('min-calendar-header') }, mode !== calendar_mode_1.TIME_MODE && React.createElement("button", { onClick: mode === calendar_mode_1.YEAR_MODE ? updateEach.bind(this, each.clone().subtract(12, 'year').startOf('month')) : updateDisplay.bind(this, display.clone().subtract(1, 'year').startOf('month')), className: utils_1.preClass('min-calendar-header-btn') }, React.createElement(icon_1.default, { type: 'arrow-left-double' })), mode === calendar_mode_1.DAY_MODE && React.createElement("button", { onClick: updateDisplay.bind(this, display.clone().subtract(1, 'month').startOf('month')), className: utils_1.preClass('min-calendar-header-btn') }, React.createElement(icon_1.default, { type: 'arrow-left' })), React.createElement("div", { className: utils_1.preClass('min-calendar-header-display') }, (mode === calendar_mode_1.DAY_MODE || mode === calendar_mode_1.MONTH_MODE) && React.createElement("button", { onClick: mode === calendar_mode_1.YEAR_MODE ? null : updateMode.bind(this, calendar_mode_1.YEAR_MODE), className: utils_1.preClass('min-calendar-header-year') }, React.createElement(i18n_1.I18nReceiver, { module: 'Calendar' }, (i18n) => moment.isMoment(display) ? display.format(i18n.yearFormat) : '')), mode === calendar_mode_1.DAY_MODE && React.createElement("button", { onClick: updateMode.bind(this, calendar_mode_1.MONTH_MODE), className: utils_1.preClass('min-calendar-header-month') }, React.createElement(i18n_1.I18nReceiver, { module: 'Calendar' }, (i18n) => i18n.months[display.month()])), mode === calendar_mode_1.TIME_MODE && React.createElement("span", { className: utils_1.preClass('min-calendar-header-time') }, moment.isMoment(time) ? time.format('HH:mm:ss') : '')), mode === calendar_mode_1.DAY_MODE && React.createElement("button", { onClick: updateDisplay.bind(this, display.clone().add(1, 'month').startOf('month')), className: utils_1.preClass('min-calendar-header-btn') }, React.createElement(icon_1.default, { type: 'arrow-right' })), mode !== calendar_mode_1.TIME_MODE && React.createElement("button", { onClick: mode === calendar_mode_1.YEAR_MODE ? updateEach.bind(this, each.clone().add(12, 'year').startOf('month')) : updateDisplay.bind(this, display.clone().add(1, 'year').startOf('month')), className: utils_1.preClass('min-calendar-header-btn') }, React.createElement(icon_1.default, { type: 'arrow-right-double' })))); }; exports.default = MinHeader;