UNPKG

7.75 kBSource Map (JSON)View Raw
1{"version":3,"sources":["date-picker/WeeksView.js"],"names":["React","moment","classNames","noop","DaysView","ViewMode","FieldType","$l","stopEvent","WeeksView","prefixCls","e","altKey","changeViewMode","month","changeSelectedDate","getCloneDate","subtract","add","props","date","renderer","renderCell","selected","clone","firstDay","getFirstDay","lastDay","rows","cells","isBefore","currentDate","className","isSame","text","String","dayProps","key","format","children","renderInner","length","weekProps","push","getWeekCell","week","createElement","onClick","handleCellClick","bind","startOf","disabledNow","footerProps","choose","displayName","type"],"mappings":"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","sourcesContent":["import React from 'react';\nimport moment from 'moment';\nimport classNames from 'classnames';\nimport noop from 'lodash/noop';\nimport DaysView from './DaysView';\nimport { ViewMode } from './enum';\nimport { FieldType } from '../data-set/enum';\nimport { $l } from '../locale-context';\nimport { stopEvent } from '../_util/EventManager';\nexport default class WeeksView extends DaysView {\n getViewClassName() {\n const { prefixCls } = this;\n return `${prefixCls}-week`;\n }\n handleKeyDownLeft(e) {\n stopEvent(e);\n if (e.altKey) {\n this.changeViewMode(ViewMode.month);\n }\n else {\n this.changeSelectedDate(this.getCloneDate().subtract(1, 'M'));\n }\n }\n handleKeyDownRight(e) {\n stopEvent(e);\n if (!e.altKey) {\n this.changeSelectedDate(this.getCloneDate().add(1, 'M'));\n }\n }\n renderPanelBody() {\n const { prefixCls, props: { date, renderer = this.renderCell }, } = this;\n const selected = date.clone();\n const firstDay = this.getFirstDay(date);\n const lastDay = firstDay.clone().add(42, 'd');\n const rows = [];\n let cells = [];\n while (firstDay.isBefore(lastDay)) {\n const currentDate = firstDay.clone();\n const className = classNames(`${prefixCls}-cell`, {\n [`${prefixCls}-selected`]: firstDay.isSame(selected, 'w'),\n });\n const text = String(currentDate.date());\n const dayProps = {\n key: firstDay.format('M_D'),\n className,\n children: this.renderInner(text),\n };\n if (cells.length === 0) {\n const weekProps = {\n key: firstDay.format('Wo'),\n className: `${className} ${prefixCls}-week-cell`,\n };\n cells.push(this.getWeekCell(weekProps, firstDay.week()));\n }\n cells.push(renderer(dayProps, text, currentDate, selected));\n if (cells.length === 8) {\n rows.push(React.createElement(\"tr\", { onClick: this.handleCellClick.bind(this, currentDate), key: firstDay.format('M_D') }, cells));\n cells = [];\n }\n firstDay.add(1, 'd');\n }\n return rows;\n }\n choose(date) {\n super.choose(date.startOf('W'));\n }\n getPanelClass() {\n return `${this.prefixCls}-week-panel`;\n }\n renderFooter() {\n const { prefixCls, props: { disabledNow } } = this;\n const footerProps = {\n className: classNames(`${prefixCls}-footer-now-btn`, {\n [`${prefixCls}-now-disabled`]: disabledNow,\n }),\n onClick: !disabledNow ? this.choose.bind(this, moment()) : noop,\n };\n return (React.createElement(\"div\", { className: `${prefixCls}-footer` },\n React.createElement(\"a\", Object.assign({}, footerProps), $l('DatePicker', 'this_week'))));\n }\n getWeekCell(props, text) {\n const { prefixCls } = this;\n return (React.createElement(\"td\", Object.assign({}, props),\n React.createElement(\"div\", { className: `${prefixCls}-cell-inner` },\n \"W\",\n text)));\n }\n getDaysOfWeek() {\n return [React.createElement(\"th\", { key: \"null\" }, \"\\u00A0\"), ...super.getDaysOfWeek()];\n }\n}\nWeeksView.displayName = 'WeeksView';\nWeeksView.type = FieldType.week;\n"],"file":"WeeksView.js"}
\No newline at end of file